diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 09c3b2a4c26a85..df11b24c9b0edb 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -171,6 +171,9 @@ /src/permission/* @nodejs/security-wg /test/parallel/test-permission-* @nodejs/security-wg +# Security Release +/doc/contributing/security-release-process.md @nodejs/security-stewards + # Dependency Update Tools /.github/workflows/tools.yml @nodejs/security-wg diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 33aaa6304fee00..b9770e23a2e353 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,7 +8,7 @@ updates: interval: monthly commit-message: prefix: meta - open-pull-requests-limit: 10 + open-pull-requests-limit: ${{secrets.OPEN_PR_LIMIT}} - package-ecosystem: npm directory: /tools/eslint @@ -16,7 +16,7 @@ updates: interval: monthly commit-message: prefix: tools - open-pull-requests-limit: 10 + open-pull-requests-limit: ${{secrets.OPEN_PR_LIMIT}} groups: eslint: applies-to: version-updates @@ -29,7 +29,7 @@ updates: interval: monthly commit-message: prefix: tools - open-pull-requests-limit: 10 + open-pull-requests-limit: ${{secrets.OPEN_PR_LIMIT}} groups: lint-md: applies-to: version-updates diff --git a/.github/workflows/build-tarball.yml b/.github/workflows/build-tarball.yml index 7d8b38a21f8831..2ed30ba0c6c568 100644 --- a/.github/workflows/build-tarball.yml +++ b/.github/workflows/build-tarball.yml @@ -105,4 +105,4 @@ jobs: - name: Test run: | cd $TAR_DIR - make run-ci -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9" + make run-ci -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=./test/common/test-error-reporter.js' --measure-flakiness 9" diff --git a/.github/workflows/coverage-linux-without-intl.yml b/.github/workflows/coverage-linux-without-intl.yml index 1977eda3f97e03..e88310dc414cab 100644 --- a/.github/workflows/coverage-linux-without-intl.yml +++ b/.github/workflows/coverage-linux-without-intl.yml @@ -68,7 +68,7 @@ jobs: # TODO(bcoe): fix the couple tests that fail with the inspector enabled. # The cause is most likely coverage's use of the inspector. - name: Test - run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9" || exit 0 + run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=./test/common/test-error-reporter.js' --measure-flakiness 9" || exit 0 - name: Report JS run: npx c8 report --check-coverage env: diff --git a/.github/workflows/coverage-linux.yml b/.github/workflows/coverage-linux.yml index 164c0b540a9f45..770205a317088c 100644 --- a/.github/workflows/coverage-linux.yml +++ b/.github/workflows/coverage-linux.yml @@ -68,7 +68,7 @@ jobs: # TODO(bcoe): fix the couple tests that fail with the inspector enabled. # The cause is most likely coverage's use of the inspector. - name: Test - run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=spec' --measure-flakiness 9" || exit 0 + run: NODE_V8_COVERAGE=coverage/tmp make test-cov -j4 V=1 TEST_CI_ARGS="-p dots --node-args='--test-reporter=./test/common/test-error-reporter.js' --measure-flakiness 9" || exit 0 - name: Report JS run: npx c8 report --check-coverage env: diff --git a/.github/workflows/create-release-proposal.yml b/.github/workflows/create-release-proposal.yml index f3add22090cbc0..0b580eab81ac76 100644 --- a/.github/workflows/create-release-proposal.yml +++ b/.github/workflows/create-release-proposal.yml @@ -61,7 +61,7 @@ jobs: - name: Set up ghauth config (Ubuntu) run: | mkdir -p "${XDG_CONFIG_HOME:-~/.config}/changelog-maker" - echo '{}' | jq '{user: env.GITHUB_ACTOR, token: env.TOKEN}' > "${XDG_CONFIG_HOME:-~/.config}/changelog-maker/config.json" + jq --null-input '{user: env.GITHUB_ACTOR, token: env.TOKEN}' > "${XDG_CONFIG_HOME:-~/.config}/changelog-maker/config.json" env: TOKEN: ${{ github.token }} @@ -73,9 +73,8 @@ jobs: - name: Start git node release prepare # The curl command is to make sure we run the version of the script corresponding to the current workflow. run: | - git update-index --assume-unchanged tools/actions/create-release.sh - curl -fsSLo tools/actions/create-release.sh https://github.com/${GITHUB_REPOSITORY}/raw/${GITHUB_SHA}/tools/actions/create-release.sh - ./tools/actions/create-release.sh "${RELEASE_DATE}" "${RELEASE_LINE}" "${GITHUB_ACTOR}" + curl -fsSL https://github.com/${GITHUB_REPOSITORY}/raw/${GITHUB_SHA}/tools/actions/create-release-proposal.sh |\ + sh -s -- "${RELEASE_DATE}" "${RELEASE_LINE}" "${GITHUB_ACTOR}" env: GH_TOKEN: ${{ github.token }} # We want the bot to push the push the release commit so CI runs on it. diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml index 5ab4277879ecb9..c86d0c5822f82f 100644 --- a/.github/workflows/doc.yml +++ b/.github/workflows/doc.yml @@ -40,4 +40,4 @@ jobs: name: docs path: out/doc - name: Test - run: NODE=$(command -v node) make test-doc-ci TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" + run: NODE=$(command -v node) make test-doc-ci TEST_CI_ARGS="-p actions --node-args='--test-reporter=./test/common/test-error-reporter.js' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" diff --git a/.github/workflows/lint-release-proposal.yml b/.github/workflows/lint-release-proposal.yml index 1ea2b4b1b173e2..9d8ba5998a7a5c 100644 --- a/.github/workflows/lint-release-proposal.yml +++ b/.github/workflows/lint-release-proposal.yml @@ -19,6 +19,8 @@ permissions: jobs: lint-release-commit: runs-on: ubuntu-latest + permissions: + pull-requests: read steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: @@ -33,30 +35,43 @@ jobs: echo "COMMIT_SUBJECT=$COMMIT_SUBJECT" >> "$GITHUB_ENV" - name: Lint release commit message trailers run: | - EXPECTED_TRAILER="^PR-URL: $GITHUB_SERVER_URL/$GITHUB_REPOSITORY/pull/[[:digit:]]+\$" + EXPECTED_TRAILER="^$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/pull/[[:digit:]]+\$" echo "Expected trailer format: $EXPECTED_TRAILER" - ACTUAL="$(git --no-pager log -1 --format=%b | git interpret-trailers --parse --no-divider)" + PR_URL="$(git --no-pager log -1 --format='%(trailers:key=PR-URL,valueonly)')" echo "Actual: $ACTUAL" - echo "$ACTUAL" | grep -E -q "$EXPECTED_TRAILER" + echo "$PR_URL" | grep -E -q "$EXPECTED_TRAILER" - PR_URL="${ACTUAL:8}" PR_HEAD="$(gh pr view "$PR_URL" --json headRefOid -q .headRefOid)" echo "Head of $PR_URL: $PR_HEAD" echo "Current commit: $GITHUB_SHA" [ "$PR_HEAD" = "$GITHUB_SHA" ] env: GH_TOKEN: ${{ github.token }} + - name: Verify it's release-ready + run: | + SKIP_XZ=1 make release-only - name: Validate CHANGELOG id: releaser-info run: | EXPECTED_CHANGELOG_TITLE_INTRO="## $COMMIT_SUBJECT, @" echo "Expected CHANGELOG section title: $EXPECTED_CHANGELOG_TITLE_INTRO" - CHANGELOG_TITLE="$(grep "$EXPECTED_CHANGELOG_TITLE_INTRO" "doc/changelogs/CHANGELOG_V${COMMIT_SUBJECT:20:2}.md")" + MAJOR="$(awk '/^#define NODE_MAJOR_VERSION / { print $3 }' src/node_version.h)" + CHANGELOG_PATH="doc/changelogs/CHANGELOG_V${MAJOR}.md" + CHANGELOG_TITLE="$(grep "$EXPECTED_CHANGELOG_TITLE_INTRO" "$CHANGELOG_PATH")" echo "Actual: $CHANGELOG_TITLE" [ "${CHANGELOG_TITLE%%@*}@" = "$EXPECTED_CHANGELOG_TITLE_INTRO" ] - - name: Verify NODE_VERSION_IS_RELEASE bit is correctly set - run: | - grep -q '^#define NODE_VERSION_IS_RELEASE 1$' src/node_version.h - - name: Check for placeholders in documentation - run: | - ! grep "REPLACEME" doc/api/*.md + gh api \ + -H "Accept: application/vnd.github+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + --jq '.commits.[] | { smallSha: .sha[0:10] } + (.commit.message|capture("^(?.+)\n\n(.*\n)*PR-URL: (?<prURL>.+)\n"))' \ + "/repos/${GITHUB_REPOSITORY}/compare/v${MAJOR}.x...$GITHUB_SHA" --paginate \ + | node tools/actions/lint-release-proposal-commit-list.mjs "$CHANGELOG_PATH" "$GITHUB_SHA" \ + | while IFS= read -r PR_URL; do + LABEL="dont-land-on-v${MAJOR}.x" gh pr view \ + --json labels,url \ + --jq 'if (.labels|map(.name==env.LABEL)|any) then error("\(.url) has the \(env.LABEL) label, forbidding it to be in this release proposal") end' \ + "$PR_URL" > /dev/null + done + shell: bash # See https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#exit-codes-and-error-action-preference, we want the pipefail option. + env: + GH_TOKEN: ${{ github.token }} diff --git a/.github/workflows/test-asan.yml b/.github/workflows/test-asan.yml index d918fa7d87300b..e579e9e2fd2275 100644 --- a/.github/workflows/test-asan.yml +++ b/.github/workflows/test-asan.yml @@ -63,4 +63,4 @@ jobs: - name: Build run: make build-ci -j4 V=1 - name: Test - run: make run-ci -j4 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' -t 300 --measure-flakiness 9" + run: make run-ci -j4 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=./test/common/test-error-reporter.js' --node-args='--test-reporter-destination=stdout' -t 300 --measure-flakiness 9" diff --git a/.github/workflows/test-linux.yml b/.github/workflows/test-linux.yml index 24cf47f9b376bd..e899e12fdfdefe 100644 --- a/.github/workflows/test-linux.yml +++ b/.github/workflows/test-linux.yml @@ -40,6 +40,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: persist-credentials: false + path: node - name: Set up Python ${{ env.PYTHON_VERSION }} uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: @@ -51,6 +52,13 @@ jobs: - name: Environment Information run: npx envinfo - name: Build - run: make build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn" + run: make -C node build-ci -j4 V=1 CONFIG_FLAGS="--error-on-warn" - name: Test - run: make run-ci -j4 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" + run: make -C node run-ci -j4 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=./test/common/test-error-reporter.js' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" + - name: Re-run test in a folder whose name contains unusual chars + run: | + mv node "$DIR" + cd "$DIR" + ./tools/test.py --flaky-tests keep_retrying -p actions -j 4 + env: + DIR: dir%20with $unusual"chars?'åß∂ƒ©∆¬…` diff --git a/.github/workflows/test-macos.yml b/.github/workflows/test-macos.yml index 6bb22265032605..94d0d1585bfc87 100644 --- a/.github/workflows/test-macos.yml +++ b/.github/workflows/test-macos.yml @@ -38,7 +38,11 @@ permissions: jobs: test-macOS: if: github.event.pull_request.draft == false - runs-on: macos-14 + strategy: + fail-fast: false + matrix: + macos-version: [macos-13, macos-14] + runs-on: ${{ matrix.macos-version }} env: CC: sccache gcc CXX: sccache g++ @@ -47,6 +51,7 @@ jobs: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: persist-credentials: false + path: node - name: Set up Python ${{ env.PYTHON_VERSION }} uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: @@ -64,7 +69,7 @@ jobs: # happen anymore running this step here first, that's also useful # information.) - name: tools/doc/node_modules workaround - run: make tools/doc/node_modules + run: make -C node tools/doc/node_modules # This is needed due to https://github.com/nodejs/build/issues/3878 - name: Cleanup run: | @@ -80,8 +85,15 @@ jobs: df -h echo "::endgroup::" - name: Build - run: make build-ci -j$(getconf _NPROCESSORS_ONLN) V=1 CONFIG_FLAGS="--error-on-warn" + run: make -C node build-ci -j$(getconf _NPROCESSORS_ONLN) V=1 CONFIG_FLAGS="--error-on-warn" - name: Free Space After Build run: df -h - name: Test - run: make run-ci -j$(getconf _NPROCESSORS_ONLN) V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" + run: make -C node run-ci -j$(getconf _NPROCESSORS_ONLN) V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=./test/common/test-error-reporter.js' --node-args='--test-reporter-destination=stdout' --measure-flakiness 9" + - name: Re-run test in a folder whose name contains unusual chars + run: | + mv node "$DIR" + cd "$DIR" + ./tools/test.py --flaky-tests keep_retrying -p actions -j 4 + env: + DIR: dir%20with $unusual"chars?'åß∂ƒ©∆¬…` diff --git a/.github/workflows/test-ubsan.yml b/.github/workflows/test-ubsan.yml index 9f33fa670b8231..3587e9d3125666 100644 --- a/.github/workflows/test-ubsan.yml +++ b/.github/workflows/test-ubsan.yml @@ -64,4 +64,4 @@ jobs: - name: Build run: make build-ci -j2 V=1 - name: Test - run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=spec' --node-args='--test-reporter-destination=stdout' -t 300 --measure-flakiness 9" + run: make run-ci -j2 V=1 TEST_CI_ARGS="-p actions --node-args='--test-reporter=./test/common/test-error-reporter.js' --node-args='--test-reporter-destination=stdout' -t 300 --measure-flakiness 9" diff --git a/.github/workflows/tools.yml b/.github/workflows/tools.yml index ea8aa33868fdf9..b768638d9d9cbd 100644 --- a/.github/workflows/tools.yml +++ b/.github/workflows/tools.yml @@ -22,7 +22,6 @@ on: - cjs-module-lexer - corepack - doc - - github_reporter - googletest - gyp-next - histogram @@ -135,14 +134,6 @@ jobs: npm install --ignore-scripts $NEW_VERSION npm install --ignore-scripts fi - - id: github_reporter - subsystem: tools - label: tools - run: | - ./tools/dep_updaters/update-github-reporter.sh > temp-output - cat temp-output - tail -n1 temp-output | grep "NEW_VERSION=" >> "$GITHUB_ENV" || true - rm temp-output - id: googletest subsystem: deps label: dependencies, test @@ -293,6 +284,10 @@ jobs: tail -n1 temp-output | grep "NEW_VERSION=" >> "$GITHUB_ENV" || true rm temp-output steps: + - name: Setup Git config + run: | + git config --global user.name "Node.js GitHub Bot" + git config --global user.email "github-bot@iojs.org" - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 if: github.event_name == 'schedule' || inputs.id == 'all' || inputs.id == matrix.id with: @@ -310,17 +305,15 @@ jobs: if: env.COMMIT_MSG == '' && (github.event_name == 'schedule' || inputs.id == 'all' || inputs.id == matrix.id) run: | echo "COMMIT_MSG=${{ matrix.subsystem }}: update ${{ matrix.id }} to ${{ env.NEW_VERSION }}" >> "$GITHUB_ENV" - - uses: gr2m/create-or-update-pull-request-action@86ec1766034c8173518f61d2075cc2a173fb8c97 # v1.9.4 + - uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5 if: github.event_name == 'schedule' || inputs.id == 'all' || inputs.id == matrix.id # Creates a PR or update the Action's existing PR, or # no-op if the base branch is already up-to-date. - env: - GITHUB_TOKEN: ${{ secrets.GH_USER_TOKEN }} with: - author: Node.js GitHub Bot <github-bot@iojs.org> - body: This is an automated update of ${{ matrix.id }} to ${{ env.NEW_VERSION }}. + token: ${{ secrets.GH_USER_TOKEN }} branch: actions/tools-update-${{ matrix.id }} # Custom branch *just* for this Action. + delete-branch: true commit-message: ${{ env.COMMIT_MSG }} labels: ${{ matrix.label }} title: '${{ matrix.subsystem }}: update ${{ matrix.id }} to ${{ env.NEW_VERSION }}' - update-pull-request-title-and-body: true + body: This is an automated update of ${{ matrix.id }} to ${{ env.NEW_VERSION }}. diff --git a/BUILDING.md b/BUILDING.md index 7dc0e07fd4008c..5cf1dfb28e4866 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -169,8 +169,8 @@ Binaries at <https://nodejs.org/download/release/> are produced on: | Binary package | Platform and Toolchain | | ----------------------- | ----------------------------------------------------------------------------------------------------------- | | aix-ppc64 | AIX 7.2 TL04 on PPC64BE with GCC 10 | -| darwin-x64 | macOS 11, Xcode 13 with -mmacosx-version-min=11.0 | -| darwin-arm64 (and .pkg) | macOS 11 (arm64), Xcode 13 with -mmacosx-version-min=11.0 | +| darwin-x64 | macOS 13, Xcode 16 with -mmacosx-version-min=11.0 | +| darwin-arm64 (and .pkg) | macOS 13 (arm64), Xcode 14 with -mmacosx-version-min=11.0 | | linux-arm64 | RHEL 8 with GCC 10[^6] | | linux-armv7l | Cross-compiled on RHEL 8 x64 with [custom GCC toolchain](https://github.com/rvagg/rpi-newer-crosstools)[^7] | | linux-ppc64le | RHEL 8 with gcc-toolset-10[^6] | @@ -244,7 +244,7 @@ Consult previous versions of this document for older versions of Node.js: Installation via Linux package manager can be achieved with: -* Ubuntu, Debian: `sudo apt-get install python3 g++ make python3-pip` +* Ubuntu, Debian: `sudo apt-get install python3 g++-12 gcc-12 make python3-pip` * Fedora: `sudo dnf install python3 gcc-c++ make python3-pip` * CentOS and RHEL: `sudo yum install python3 gcc-c++ make python3-pip` * OpenSUSE: `sudo zypper install python3 gcc-c++ make python3-pip` @@ -272,6 +272,7 @@ fail. To build Node.js: ```bash +export CXX=g++-12 ./configure make -j4 ``` diff --git a/CHANGELOG.md b/CHANGELOG.md index 1954006dc8a15c..c707f0fefc6d64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,7 +38,8 @@ release. </tr> <tr> <td valign="top"> -<b><a href="doc/changelogs/CHANGELOG_V22.md#22.13.1">22.13.1</a></b><br/> +<b><a href="doc/changelogs/CHANGELOG_V22.md#22.14.0">22.14.0</a></b><br/> +<a href="doc/changelogs/CHANGELOG_V22.md#22.13.1">22.13.1</a><br/> <a href="doc/changelogs/CHANGELOG_V22.md#22.13.0">22.13.0</a><br/> <a href="doc/changelogs/CHANGELOG_V22.md#22.12.0">22.12.0</a><br/> <a href="doc/changelogs/CHANGELOG_V22.md#22.11.0">22.11.0</a><br/> diff --git a/LICENSE b/LICENSE index cedb4caec177f4..41585ea6c97d5a 100644 --- a/LICENSE +++ b/LICENSE @@ -2098,7 +2098,7 @@ The externally maintained libraries used by Node.js are: OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ -- inspector_protocol, located at tools/inspector_protocol, is licensed as follows: +- inspector_protocol, located at deps/inspector_protocol, is licensed as follows: """ // Copyright 2016 The Chromium Authors. All rights reserved. // diff --git a/Makefile b/Makefile index cf9bc749b722b5..7b7a6746d338d1 100644 --- a/Makefile +++ b/Makefile @@ -294,7 +294,6 @@ coverage-report-js: ## Report JavaScript coverage results. cctest: all ## Run the C++ tests using the built `cctest` executable. @out/$(BUILDTYPE)/$@ --gtest_filter=$(GTEST_FILTER) $(NODE) ./test/embedding/test-embedding.js - $(NODE) ./test/sqlite/test-sqlite-extensions.mjs .PHONY: list-gtests list-gtests: ## List all available C++ gtests. @@ -312,7 +311,7 @@ v8: ## Build deps/v8. tools/make-v8.sh $(V8_ARCH).$(BUILDTYPE_LOWER) $(V8_BUILD_OPTIONS) .PHONY: jstest -jstest: build-addons build-js-native-api-tests build-node-api-tests ## Run addon tests and JS tests. +jstest: build-addons build-js-native-api-tests build-node-api-tests build-sqlite-tests ## Run addon tests and JS tests. $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) \ $(TEST_CI_ARGS) \ --skip-tests=$(CI_SKIP_TESTS) \ @@ -338,6 +337,7 @@ test: all ## Run default tests, linters, and build docs. $(MAKE) -s build-addons $(MAKE) -s build-js-native-api-tests $(MAKE) -s build-node-api-tests + $(MAKE) -s build-sqlite-tests $(MAKE) -s cctest $(MAKE) -s jstest @@ -346,6 +346,7 @@ test-only: all ## Run default tests, without linters or building the docs. $(MAKE) build-addons $(MAKE) build-js-native-api-tests $(MAKE) build-node-api-tests + $(MAKE) build-sqlite-tests $(MAKE) cctest $(MAKE) jstest $(MAKE) tooltest @@ -356,6 +357,7 @@ test-cov: all ## Run coverage tests. $(MAKE) build-addons $(MAKE) build-js-native-api-tests $(MAKE) build-node-api-tests + $(MAKE) build-sqlite-tests $(MAKE) cctest CI_SKIP_TESTS=$(COV_SKIP_TESTS) $(MAKE) jstest @@ -501,6 +503,23 @@ benchmark/napi/.buildstamp: $(ADDONS_PREREQS) \ $(BENCHMARK_NAPI_BINDING_GYPS) $(BENCHMARK_NAPI_BINDING_SOURCES) @$(call run_build_addons,"$$PWD/benchmark/napi",$@) +SQLITE_BINDING_GYPS := $(wildcard test/sqlite/*/binding.gyp) + +SQLITE_BINDING_SOURCES := \ + $(wildcard test/sqlite/*/*.c) + +# Implicitly depends on $(NODE_EXE), see the build-sqlite-tests rule for rationale. +test/sqlite/.buildstamp: $(ADDONS_PREREQS) \ + $(SQLITE_BINDING_GYPS) $(SQLITE_BINDING_SOURCES) + @$(call run_build_addons,"$$PWD/test/sqlite",$@) + +.PHONY: build-sqlite-tests +# .buildstamp needs $(NODE_EXE) but cannot depend on it +# directly because it calls make recursively. The parent make cannot know +# if the subprocess touched anything so it pessimistically assumes that +# .buildstamp is out of date and need a rebuild. +build-sqlite-tests: | $(NODE_EXE) test/sqlite/.buildstamp ## Build SQLite tests. + .PHONY: clear-stalled clear-stalled: ## Clear any stalled processes. $(info Clean up any leftover processes but don't error if found.) @@ -511,7 +530,7 @@ clear-stalled: ## Clear any stalled processes. fi .PHONY: test-build -test-build: | all build-addons build-js-native-api-tests build-node-api-tests ## Build all tests. +test-build: | all build-addons build-js-native-api-tests build-node-api-tests build-sqlite-tests ## Build all tests. .PHONY: test-build-js-native-api test-build-js-native-api: all build-js-native-api-tests ## Build JS Native-API tests. @@ -519,6 +538,10 @@ test-build-js-native-api: all build-js-native-api-tests ## Build JS Native-API t .PHONY: test-build-node-api test-build-node-api: all build-node-api-tests ## Build Node-API tests. +.PHONY: test-build-sqlite +test-build-sqlite: all build-sqlite-tests ## Build SQLite tests. + + .PHONY: test-all test-all: test-build ## Run default tests with both Debug and Release builds. $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=debug,release @@ -546,7 +569,7 @@ endif # Related CI job: node-test-commit-arm-fanned test-ci-native: LOGLEVEL := info ## Build and test addons without building anything else. -test-ci-native: | benchmark/napi/.buildstamp test/addons/.buildstamp test/js-native-api/.buildstamp test/node-api/.buildstamp +test-ci-native: | benchmark/napi/.buildstamp test/addons/.buildstamp test/js-native-api/.buildstamp test/node-api/.buildstamp test/sqlite/.buildstamp $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ --mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \ $(TEST_CI_ARGS) $(CI_NATIVE_SUITES) @@ -569,13 +592,12 @@ test-ci-js: | clear-stalled ## Build and test JavaScript with building anything .PHONY: test-ci # Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned test-ci: LOGLEVEL := info ## Build and test everything (CI). -test-ci: | clear-stalled bench-addons-build build-addons build-js-native-api-tests build-node-api-tests doc-only +test-ci: | clear-stalled bench-addons-build build-addons build-js-native-api-tests build-node-api-tests build-sqlite-tests doc-only out/Release/cctest --gtest_output=xml:out/junit/cctest.xml $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ --mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \ $(TEST_CI_ARGS) $(CI_JS_SUITES) $(CI_NATIVE_SUITES) $(CI_DOC) $(NODE) ./test/embedding/test-embedding.js - $(NODE) ./test/sqlite/test-sqlite-extensions.mjs $(info Clean up any leftover processes, error if found.) ps awwx | grep Release/node | grep -v grep | cat @PS_OUT=`ps awwx | grep Release/node | grep -v grep | awk '{print $$1}'`; \ @@ -609,6 +631,10 @@ test-debug: BUILDTYPE_LOWER=debug ## Run tests on a debug build. test-release test-debug: test-build ## Run tests on a release or debug build. $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) +.PHONY: test-test426 +test-test426: all ## Run the Web Platform Tests. + $(PYTHON) tools/test.py $(PARALLEL_ARGS) test426 + .PHONY: test-wpt test-wpt: all ## Run the Web Platform Tests. $(PYTHON) tools/test.py $(PARALLEL_ARGS) wpt @@ -677,6 +703,16 @@ test-node-api-clean: ## Remove Node-API testing artifacts. $(RM) -r test/node-api/*/build $(RM) test/node-api/.buildstamp +.PHONY: test-sqlite +test-sqlite: test-build-sqlite ## Run SQLite tests. + $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) sqlite + +.PHONY: test-sqlite-clean +.NOTPARALLEL: test-sqlite-clean +test-sqlite-clean: ## Remove SQLite testing artifacts. + $(RM) -r test/sqlite/*/build + $(RM) test/sqlite/.buildstamp + .PHONY: test-addons test-addons: test-build test-js-native-api test-node-api ## Run addon tests. $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) addons @@ -1442,7 +1478,7 @@ LINT_CPP_FILES = $(filter-out $(LINT_CPP_EXCLUDE), $(wildcard \ test/cctest/*.h \ test/embedding/*.cc \ test/embedding/*.h \ - test/sqlite/*.c \ + test/sqlite/*/*.c \ test/fixtures/*.c \ test/js-native-api/*/*.cc \ test/node-api/*/*.cc \ @@ -1466,6 +1502,7 @@ FORMAT_CPP_FILES += $(wildcard \ test/js-native-api/*/*.h \ test/node-api/*/*.c \ test/node-api/*/*.h \ + test/sqlite/*/*.c \ ) # Code blocks don't have newline at the end, diff --git a/README.md b/README.md index 35a30716eb668c..c66bc8a36231e0 100644 --- a/README.md +++ b/README.md @@ -180,8 +180,6 @@ For information about the governance of the Node.js project, see **Matteo Collina** <<matteo.collina@gmail.com>> (he/him) * [mhdawson](https://github.com/mhdawson) - **Michael Dawson** <<midawson@redhat.com>> (he/him) -* [MoLow](https://github.com/MoLow) - - **Moshe Atlow** <<moshe@atlow.co.il>> (he/him) * [RafaelGSS](https://github.com/RafaelGSS) - **Rafael Gonzaga** <<rafael.nunu@hotmail.com>> (he/him) * [richardlau](https://github.com/richardlau) - @@ -199,8 +197,6 @@ For information about the governance of the Node.js project, see #### TSC regular members -* [apapirovski](https://github.com/apapirovski) - - **Anatoli Papirovski** <<apapirovski@mac.com>> (he/him) * [BethGriggs](https://github.com/BethGriggs) - **Beth Griggs** <<bethanyngriggs@gmail.com>> (she/her) * [bnoordhuis](https://github.com/bnoordhuis) - @@ -211,6 +207,8 @@ For information about the governance of the Node.js project, see **Shelley Vohr** <<shelley.vohr@gmail.com>> (she/her) * [GeoffreyBooth](https://github.com/GeoffreyBooth) - **Geoffrey Booth** <<webadmin@geoffreybooth.com>> (he/him) +* [MoLow](https://github.com/MoLow) - + **Moshe Atlow** <<moshe@atlow.co.il>> (he/him) * [Trott](https://github.com/Trott) - **Rich Trott** <<rtrott@gmail.com>> (he/him) @@ -222,6 +220,8 @@ For information about the governance of the Node.js project, see * [addaleax](https://github.com/addaleax) - **Anna Henningsen** <<anna@addaleax.net>> (she/her) +* [apapirovski](https://github.com/apapirovski) - + **Anatoli Papirovski** <<apapirovski@mac.com>> (he/him) * [ChALkeR](https://github.com/ChALkeR) - **Сковорода Никита Андреевич** <<chalkerx@gmail.com>> (he/him) * [chrisdickinson](https://github.com/chrisdickinson) - @@ -291,8 +291,6 @@ For information about the governance of the Node.js project, see **Antoine du Hamel** <<duhamelantoine1995@gmail.com>> (he/him) - [Support me](https://github.com/sponsors/aduh95) * [anonrig](https://github.com/anonrig) - **Yagiz Nizipli** <<yagiz@nizipli.com>> (he/him) - [Support me](https://github.com/sponsors/anonrig) -* [apapirovski](https://github.com/apapirovski) - - **Anatoli Papirovski** <<apapirovski@mac.com>> (he/him) * [atlowChemi](https://github.com/atlowChemi) - **Chemi Atlow** <<chemi@atlow.co.il>> (he/him) * [Ayase-252](https://github.com/Ayase-252) - @@ -451,8 +449,6 @@ For information about the governance of the Node.js project, see **Vladimir Morozov** <<vmorozov@microsoft.com>> (he/him) * [VoltrexKeyva](https://github.com/VoltrexKeyva) - **Mohammed Keyvanzadeh** <<mohammadkeyvanzade94@gmail.com>> (he/him) -* [watilde](https://github.com/watilde) - - **Daijiro Wachi** <<daijiro.wachi@gmail.com>> (he/him) * [zcbenz](https://github.com/zcbenz) - **Cheng Zhao** <<zcbenz@gmail.com>> (he/him) * [ZYSzys](https://github.com/ZYSzys) - @@ -477,6 +473,8 @@ For information about the governance of the Node.js project, see **Anna M. Kedzierska** <<anna.m.kedzierska@gmail.com>> * [antsmartian](https://github.com/antsmartian) - **Anto Aravinth** <<anto.aravinth.cse@gmail.com>> (he/him) +* [apapirovski](https://github.com/apapirovski) - + **Anatoli Papirovski** <<apapirovski@mac.com>> (he/him) * [aqrln](https://github.com/aqrln) - **Alexey Orlenko** <<eaglexrlnk@gmail.com>> (he/him) * [AshCripps](https://github.com/AshCripps) - @@ -707,6 +705,8 @@ For information about the governance of the Node.js project, see **Vladimir Kurchatkin** <<vladimir.kurchatkin@gmail.com>> * [vsemozhetbyt](https://github.com/vsemozhetbyt) - **Vse Mozhet Byt** <<vsemozhetbyt@gmail.com>> (he/him) +* [watilde](https://github.com/watilde) - + **Daijiro Wachi** <<daijiro.wachi@gmail.com>> (he/him) * [watson](https://github.com/watson) - **Thomas Watson** <<w@tson.dk>> * [whitlockjc](https://github.com/whitlockjc) - diff --git a/SECURITY.md b/SECURITY.md index 19e876939f0f55..b8f54307d5ed5b 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -82,23 +82,23 @@ Vulnerabilities related to this case may be fixed by a documentation update. **Node.js does NOT trust**: -1. Data received from the remote end of inbound network connections - that are accepted through the use of Node.js APIs and - which is transformed/validated by Node.js before being passed - to the application. This includes: - * HTTP APIs (all flavors) server APIs. -2. The data received from the remote end of outbound network connections - that are created through the use of Node.js APIs and - which is transformed/validated by Node.js before being passed - to the application EXCEPT with respect to payload length. Node.js trusts - that applications make connections/requests which will avoid payload - sizes that will result in a Denial of Service. - * HTTP APIs (all flavors) client APIs. - * DNS APIs. -3. Consumers of data protected through the use of Node.js APIs (for example, - people who have access to data encrypted through the Node.js crypto APIs). -4. The file content or other I/O that is opened for reading or writing by the - use of Node.js APIs (ex: stdin, stdout, stderr). +* Data received from the remote end of inbound network connections + that are accepted through the use of Node.js APIs and + which is transformed/validated by Node.js before being passed + to the application. This includes: + * HTTP APIs (all flavors) server APIs. +* The data received from the remote end of outbound network connections + that are created through the use of Node.js APIs and + which is transformed/validated by Node.js before being passed + to the application EXCEPT with respect to payload length. Node.js trusts + that applications make connections/requests which will avoid payload + sizes that will result in a Denial of Service. + * HTTP APIs (all flavors) client APIs. + * DNS APIs. +* Consumers of data protected through the use of Node.js APIs (for example, + people who have access to data encrypted through the Node.js crypto APIs). +* The file content or other I/O that is opened for reading or writing by the + use of Node.js APIs (ex: stdin, stdout, stderr). In other words, if the data passing through Node.js to/from the application can trigger actions other than those documented for the APIs, there is likely @@ -108,23 +108,23 @@ lead to a loss of confidentiality, integrity, or availability. **Node.js trusts everything else**. Examples include: -1. The developers and infrastructure that runs it. -2. The operating system that Node.js is running under and its configuration, - along with anything under control of the operating system. -3. The code it is asked to run, including JavaScript and native code, even if - said code is dynamically loaded, e.g., all dependencies installed from the - npm registry. - The code run inherits all the privileges of the execution user. -4. Inputs provided to it by the code it is asked to run, as it is the - responsibility of the application to perform the required input validations, - e.g. the input to `JSON.parse()`. -5. Any connection used for inspector (debugger protocol) regardless of being - opened by command line options or Node.js APIs, and regardless of the remote - end being on the local machine or remote. -6. The file system when requiring a module. - See <https://nodejs.org/api/modules.html#all-together>. -7. The `node:wasi` module does not currently provide the comprehensive file - system security properties provided by some WASI runtimes. +* The developers and infrastructure that runs it. +* The operating system that Node.js is running under and its configuration, + along with anything under control of the operating system. +* The code it is asked to run, including JavaScript, WASM and native code, even + if said code is dynamically loaded, e.g., all dependencies installed from the + npm registry. + The code run inherits all the privileges of the execution user. +* Inputs provided to it by the code it is asked to run, as it is the + responsibility of the application to perform the required input validations, + e.g. the input to `JSON.parse()`. +* Any connection used for inspector (debugger protocol) regardless of being + opened by command line options or Node.js APIs, and regardless of the remote + end being on the local machine or remote. +* The file system when requiring a module. + See <https://nodejs.org/api/modules.html#all-together>. +* The `node:wasi` module does not currently provide the comprehensive file + system security properties provided by some WASI runtimes. Any unexpected behavior from the data manipulation from Node.js Internal functions may be considered a vulnerability if they are exploitable via diff --git a/benchmark/es/error-stack.js b/benchmark/es/error-stack.js index 907f308ea41558..3b373dcdae63c8 100644 --- a/benchmark/es/error-stack.js +++ b/benchmark/es/error-stack.js @@ -2,13 +2,19 @@ const common = require('../common.js'); const modPath = require.resolve('../fixtures/simple-error-stack.js'); +const nodeModulePath = require.resolve('../fixtures/node_modules/error-stack/simple-error-stack.js'); +const Module = require('node:module'); const bench = common.createBenchmark(main, { - method: ['without-sourcemap', 'sourcemap'], + method: [ + 'without-sourcemap', + 'sourcemap', + 'node-modules-without-sourcemap', + 'node-module-sourcemap'], n: [1e5], }); -function runN(n) { +function runN(n, modPath) { delete require.cache[modPath]; const mod = require(modPath); bench.start(); @@ -22,11 +28,23 @@ function main({ n, method }) { switch (method) { case 'without-sourcemap': process.setSourceMapsEnabled(false); - runN(n); + runN(n, modPath); break; case 'sourcemap': process.setSourceMapsEnabled(true); - runN(n); + runN(n, modPath); + break; + case 'node-modules-without-sourcemap': + Module.setSourceMapsSupport(true, { + nodeModules: false, + }); + runN(n, nodeModulePath); + break; + case 'node-modules-sourcemap': + Module.setSourceMapsSupport(true, { + nodeModules: true, + }); + runN(n, nodeModulePath); break; default: throw new Error(`Unexpected method "${method}"`); diff --git a/benchmark/fixtures/node_modules/error-stack/simple-error-stack.js b/benchmark/fixtures/node_modules/error-stack/simple-error-stack.js new file mode 100644 index 00000000000000..33c3ad7f324d40 --- /dev/null +++ b/benchmark/fixtures/node_modules/error-stack/simple-error-stack.js @@ -0,0 +1,16 @@ +'use strict'; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.simpleErrorStack = simpleErrorStack; +// Compile with `tsc --inlineSourceMap benchmark/fixtures/node_modules/error-stack/simple-error-stack.ts`. +var lorem = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'; +function simpleErrorStack() { + [1].map(function () { + try { + lorem.BANG(); + } + catch (e) { + return e.stack; + } + }); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWVycm9yLXN0YWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2ltcGxlLWVycm9yLXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVksQ0FBQzs7QUFpQlgsNENBQWdCO0FBZmxCLGlGQUFpRjtBQUVqRixJQUFNLEtBQUssR0FBRywrYkFBK2IsQ0FBQztBQUU5YyxTQUFTLGdCQUFnQjtJQUN2QixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUNOLElBQUksQ0FBQztZQUNGLEtBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNqQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIn0= diff --git a/benchmark/fixtures/node_modules/error-stack/simple-error-stack.ts b/benchmark/fixtures/node_modules/error-stack/simple-error-stack.ts new file mode 100644 index 00000000000000..58d3d7eedd2f1b --- /dev/null +++ b/benchmark/fixtures/node_modules/error-stack/simple-error-stack.ts @@ -0,0 +1,19 @@ +'use strict'; + +// Compile with `tsc --inlineSourceMap benchmark/fixtures/node_modules/error-stack/simple-error-stack.ts`. + +const lorem = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'; + +function simpleErrorStack() { + [1].map(() => { + try { + (lorem as any).BANG(); + } catch (e) { + return e.stack; + } + }) +} + +export { + simpleErrorStack, +}; diff --git a/benchmark/fixtures/simple-error-stack.js b/benchmark/fixtures/simple-error-stack.js index 0057807795b072..74aae191800778 100644 --- a/benchmark/fixtures/simple-error-stack.js +++ b/benchmark/fixtures/simple-error-stack.js @@ -1,15 +1,16 @@ 'use strict'; -exports.__esModule = true; -exports.simpleErrorStack = void 0; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.simpleErrorStack = simpleErrorStack; // Compile with `tsc --inlineSourceMap benchmark/fixtures/simple-error-stack.ts`. var lorem = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'; function simpleErrorStack() { - try { - lorem.BANG(); - } - catch (e) { - return e.stack; - } + [1].map(function () { + try { + lorem.BANG(); + } + catch (e) { + return e.stack; + } + }); } -exports.simpleErrorStack = simpleErrorStack; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWVycm9yLXN0YWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2ltcGxlLWVycm9yLXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVksQ0FBQzs7O0FBRWIsaUZBQWlGO0FBRWpGLElBQU0sS0FBSyxHQUFHLCtiQUErYixDQUFDO0FBRTljLFNBQVMsZ0JBQWdCO0lBQ3ZCLElBQUk7UUFDRCxLQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7S0FDdkI7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQztLQUNoQjtBQUNILENBQUM7QUFHQyw0Q0FBZ0IifQ== +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWVycm9yLXN0YWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2ltcGxlLWVycm9yLXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVksQ0FBQzs7QUFpQlgsNENBQWdCO0FBZmxCLGlGQUFpRjtBQUVqRixJQUFNLEtBQUssR0FBRywrYkFBK2IsQ0FBQztBQUU5YyxTQUFTLGdCQUFnQjtJQUN2QixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUNOLElBQUksQ0FBQztZQUNGLEtBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN4QixDQUFDO1FBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNYLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNqQixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIn0= \ No newline at end of file diff --git a/benchmark/fixtures/simple-error-stack.ts b/benchmark/fixtures/simple-error-stack.ts index 58034e92f24b98..1335df3478b99b 100644 --- a/benchmark/fixtures/simple-error-stack.ts +++ b/benchmark/fixtures/simple-error-stack.ts @@ -5,11 +5,13 @@ const lorem = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'; function simpleErrorStack() { - try { - (lorem as any).BANG(); - } catch (e) { - return e.stack; - } + [1].map(() => { + try { + (lorem as any).BANG(); + } catch (e) { + return e.stack; + } + }) } export { diff --git a/benchmark/test_runner/run-single-test-file.js b/benchmark/test_runner/run-single-test-file.js new file mode 100644 index 00000000000000..00e95e088a223e --- /dev/null +++ b/benchmark/test_runner/run-single-test-file.js @@ -0,0 +1,62 @@ +'use strict'; +const common = require('../common'); + +const tmpdir = require('../../test/common/tmpdir'); +const { run } = require('node:test'); +const { writeFileSync, mkdirSync } = require('node:fs'); +const { join } = require('node:path'); + +const fixtureContent = "const test = require('node:test'); test('test has ran');"; + +function makeTestDirWithFiles(dirPath, count) { + mkdirSync(dirPath); + for (let i = 0; i < count; i++) { + writeFileSync(join(dirPath, `test-${i}.js`), fixtureContent); + } +} + +function getTestDirPath(numberOfTestFiles) { + return join(tmpdir.path, `${numberOfTestFiles}-tests`); +} + +function setup(numberOfTestFiles) { + tmpdir.refresh(); + const dirPath = getTestDirPath(numberOfTestFiles); + makeTestDirWithFiles(dirPath, numberOfTestFiles); +} + +/** + * This benchmark evaluates the overhead of running a single test file under different + * isolation modes. + * Specifically, it compares the performance of running tests in the + * same process versus creating multiple processes. + */ +const bench = common.createBenchmark(main, { + numberOfTestFiles: [1, 10, 100], + isolation: ['none', 'process'], +}, { + // We don't want to test the reporter here + flags: ['--test-reporter=./benchmark/fixtures/empty-test-reporter.js'], +}); + +async function runBenchmark({ numberOfTestFiles, isolation }) { + const dirPath = getTestDirPath(numberOfTestFiles); + const stream = run({ + cwd: dirPath, + isolation, + concurrency: false, // We don't want to run tests concurrently + }); + + // eslint-disable-next-line no-unused-vars + for await (const _ of stream); + + return numberOfTestFiles; +} + +function main(params) { + setup(params.numberOfTestFiles); + bench.start(); + runBenchmark(params).then(() => { + bench.end(1); + }); +} diff --git a/benchmark/util/style-text.js b/benchmark/util/style-text.js index 195907bba5c628..282a96150f0b94 100644 --- a/benchmark/util/style-text.js +++ b/benchmark/util/style-text.js @@ -3,14 +3,16 @@ const common = require('../common.js'); const { styleText } = require('node:util'); +const assert = require('node:assert'); const bench = common.createBenchmark(main, { messageType: ['string', 'number', 'boolean', 'invalid'], format: ['red', 'italic', 'invalid'], + validateStream: [1, 0], n: [1e3], }); -function main({ messageType, format, n }) { +function main({ messageType, format, validateStream, n }) { let str; switch (messageType) { case 'string': @@ -29,8 +31,10 @@ function main({ messageType, format, n }) { bench.start(); for (let i = 0; i < n; i++) { + let colored = ''; try { - styleText(format, str); + colored = styleText(format, str, { validateStream }); + assert.ok(colored); // Attempt to avoid dead-code elimination } catch { // eslint-disable no-empty } diff --git a/deps/amaro/dist/errors.js b/deps/amaro/dist/errors.js new file mode 100644 index 00000000000000..bf6711a4ab00d1 --- /dev/null +++ b/deps/amaro/dist/errors.js @@ -0,0 +1,17 @@ +"use strict"; +export function isSwcError(error) { + return error.code !== void 0; +} +export function wrapAndReThrowSwcError(error) { + switch (error.code) { + case "UnsupportedSyntax": { + const unsupportedSyntaxError = new Error(error.message); + unsupportedSyntaxError.name = "UnsupportedSyntaxError"; + throw unsupportedSyntaxError; + } + case "InvalidSyntax": + throw new SyntaxError(error.message); + default: + throw new Error(error.message); + } +} diff --git a/deps/amaro/dist/index.js b/deps/amaro/dist/index.js index 147648d2c6201a..b5a4bdea564f1c 100644 --- a/deps/amaro/dist/index.js +++ b/deps/amaro/dist/index.js @@ -43,6 +43,21 @@ var require_wasm = __commonJS({ function getObject(idx) { return heap[idx]; } + var heap_next = heap.length; + function addHeapObject(obj) { + if (heap_next === heap.length) heap.push(heap.length + 1); + const idx = heap_next; + heap_next = heap[idx]; + heap[idx] = obj; + return idx; + } + function handleError(f, args) { + try { + return f.apply(this, args); + } catch (e) { + wasm.__wbindgen_export_0(addHeapObject(e)); + } + } var cachedTextDecoder = new TextDecoder("utf-8", { ignoreBOM: true }); cachedTextDecoder.decode(); var cachedUint8ArrayMemory0 = null; @@ -56,65 +71,12 @@ var require_wasm = __commonJS({ ptr = ptr >>> 0; return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len)); } - var heap_next = heap.length; - function addHeapObject(obj) { - if (heap_next === heap.length) heap.push(heap.length + 1); - const idx = heap_next; - heap_next = heap[idx]; - heap[idx] = obj; - return idx; - } - var WASM_VECTOR_LEN = 0; - var cachedTextEncoder = new TextEncoder("utf-8"); - var encodeString = typeof cachedTextEncoder.encodeInto === "function" ? function(arg, view) { - return cachedTextEncoder.encodeInto(arg, view); - } : function(arg, view) { - const buf = cachedTextEncoder.encode(arg); - view.set(buf); - return { - read: arg.length, - written: buf.length - }; - }; - function passStringToWasm0(arg, malloc, realloc) { - if (realloc === void 0) { - const buf = cachedTextEncoder.encode(arg); - const ptr2 = malloc(buf.length, 1) >>> 0; - getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf); - WASM_VECTOR_LEN = buf.length; - return ptr2; - } - let len = arg.length; - let ptr = malloc(len, 1) >>> 0; - const mem = getUint8ArrayMemory0(); - let offset = 0; - for (; offset < len; offset++) { - const code = arg.charCodeAt(offset); - if (code > 127) break; - mem[ptr + offset] = code; - } - if (offset !== len) { - if (offset !== 0) { - arg = arg.slice(offset); - } - ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; - const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len); - const ret = encodeString(arg, view); - offset += ret.written; - ptr = realloc(ptr, len, offset, 1) >>> 0; - } - WASM_VECTOR_LEN = offset; - return ptr; - } - function isLikeNone(x) { - return x === void 0 || x === null; - } - var cachedDataViewMemory0 = null; - function getDataViewMemory0() { - if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) { - cachedDataViewMemory0 = new DataView(wasm.memory.buffer); + function getCachedStringFromWasm0(ptr, len) { + if (ptr === 0) { + return getObject(len); + } else { + return getStringFromWasm0(ptr, len); } - return cachedDataViewMemory0; } function dropObject(idx) { if (idx < 132) return; @@ -126,6 +88,35 @@ var require_wasm = __commonJS({ dropObject(idx); return ret; } + function isLikeNone(x) { + return x === void 0 || x === null; + } + var CLOSURE_DTORS = typeof FinalizationRegistry === "undefined" ? { register: () => { + }, unregister: () => { + } } : new FinalizationRegistry((state) => { + wasm.__wbindgen_export_1.get(state.dtor)(state.a, state.b); + }); + function makeMutClosure(arg0, arg1, dtor, f) { + const state = { a: arg0, b: arg1, cnt: 1, dtor }; + const real = (...args) => { + state.cnt++; + const a = state.a; + state.a = 0; + try { + return f(a, state.b, ...args); + } finally { + if (--state.cnt === 0) { + wasm.__wbindgen_export_1.get(state.dtor)(a, state.b); + CLOSURE_DTORS.unregister(state); + } else { + state.a = a; + } + } + }; + real.original = state; + CLOSURE_DTORS.register(real, state, state); + return real; + } function debugString(val) { const type = typeof val; if (type == "number" || type == "boolean" || val == null) { @@ -164,7 +155,7 @@ var require_wasm = __commonJS({ } const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val)); let className; - if (builtInMatches.length > 1) { + if (builtInMatches && builtInMatches.length > 1) { className = builtInMatches[1]; } else { return toString.call(val); @@ -182,34 +173,54 @@ ${val.stack}`; } return className; } - var CLOSURE_DTORS = typeof FinalizationRegistry === "undefined" ? { register: () => { - }, unregister: () => { - } } : new FinalizationRegistry((state) => { - wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b); - }); - function makeMutClosure(arg0, arg1, dtor, f) { - const state = { a: arg0, b: arg1, cnt: 1, dtor }; - const real = (...args) => { - state.cnt++; - const a = state.a; - state.a = 0; - try { - return f(a, state.b, ...args); - } finally { - if (--state.cnt === 0) { - wasm.__wbindgen_export_2.get(state.dtor)(a, state.b); - CLOSURE_DTORS.unregister(state); - } else { - state.a = a; - } - } + var WASM_VECTOR_LEN = 0; + var cachedTextEncoder = new TextEncoder("utf-8"); + var encodeString = typeof cachedTextEncoder.encodeInto === "function" ? function(arg, view) { + return cachedTextEncoder.encodeInto(arg, view); + } : function(arg, view) { + const buf = cachedTextEncoder.encode(arg); + view.set(buf); + return { + read: arg.length, + written: buf.length }; - real.original = state; - CLOSURE_DTORS.register(real, state, state); - return real; + }; + function passStringToWasm0(arg, malloc, realloc) { + if (realloc === void 0) { + const buf = cachedTextEncoder.encode(arg); + const ptr2 = malloc(buf.length, 1) >>> 0; + getUint8ArrayMemory0().subarray(ptr2, ptr2 + buf.length).set(buf); + WASM_VECTOR_LEN = buf.length; + return ptr2; + } + let len = arg.length; + let ptr = malloc(len, 1) >>> 0; + const mem = getUint8ArrayMemory0(); + let offset = 0; + for (; offset < len; offset++) { + const code = arg.charCodeAt(offset); + if (code > 127) break; + mem[ptr + offset] = code; + } + if (offset !== len) { + if (offset !== 0) { + arg = arg.slice(offset); + } + ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; + const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len); + const ret = encodeString(arg, view); + offset += ret.written; + ptr = realloc(ptr, len, offset, 1) >>> 0; + } + WASM_VECTOR_LEN = offset; + return ptr; } - function __wbg_adapter_38(arg0, arg1, arg2) { - wasm.__wbindgen_export_3(arg0, arg1, addHeapObject(arg2)); + var cachedDataViewMemory0 = null; + function getDataViewMemory0() { + if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || cachedDataViewMemory0.buffer.detached === void 0 && cachedDataViewMemory0.buffer !== wasm.memory.buffer) { + cachedDataViewMemory0 = new DataView(wasm.memory.buffer); + } + return cachedDataViewMemory0; } module2.exports.transform = function(input, options) { const ret = wasm.transform(addHeapObject(input), addHeapObject(options)); @@ -230,58 +241,69 @@ ${val.stack}`; wasm.__wbindgen_add_to_stack_pointer(16); } }; - function getCachedStringFromWasm0(ptr, len) { - if (ptr === 0) { - return getObject(len); - } else { - return getStringFromWasm0(ptr, len); - } - } - function handleError(f, args) { - try { - return f.apply(this, args); - } catch (e) { - wasm.__wbindgen_export_4(addHeapObject(e)); - } + function __wbg_adapter_38(arg0, arg1, arg2) { + wasm.__wbindgen_export_4(arg0, arg1, addHeapObject(arg2)); } function __wbg_adapter_57(arg0, arg1, arg2, arg3) { wasm.__wbindgen_export_5(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); } - module2.exports.__wbindgen_boolean_get = function(arg0) { - const v = getObject(arg0); - const ret = typeof v === "boolean" ? v ? 1 : 0 : 2; - return ret; + module2.exports.__wbg_buffer_61b7ce01341d7f88 = function(arg0) { + const ret = getObject(arg0).buffer; + return addHeapObject(ret); }; - module2.exports.__wbindgen_string_new = function(arg0, arg1) { - const ret = getStringFromWasm0(arg0, arg1); + module2.exports.__wbg_call_500db948e69c7330 = function() { + return handleError(function(arg0, arg1, arg2) { + const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments); + }; + module2.exports.__wbg_call_b0d8e36992d9900d = function() { + return handleError(function(arg0, arg1) { + const ret = getObject(arg0).call(getObject(arg1)); + return addHeapObject(ret); + }, arguments); + }; + module2.exports.__wbg_entries_4f2bb9b0d701c0f6 = function(arg0) { + const ret = Object.entries(getObject(arg0)); return addHeapObject(ret); }; - module2.exports.__wbindgen_string_get = function(arg0, arg1) { - const obj = getObject(arg1); - const ret = typeof obj === "string" ? obj : void 0; - var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1); - var len1 = WASM_VECTOR_LEN; - getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); - getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); + module2.exports.__wbg_get_9aa3dff3f0266054 = function(arg0, arg1) { + const ret = getObject(arg0)[arg1 >>> 0]; + return addHeapObject(ret); }; - module2.exports.__wbindgen_is_string = function(arg0) { - const ret = typeof getObject(arg0) === "string"; + module2.exports.__wbg_getwithrefkey_1dc361bd10053bfe = function(arg0, arg1) { + const ret = getObject(arg0)[getObject(arg1)]; + return addHeapObject(ret); + }; + module2.exports.__wbg_instanceof_ArrayBuffer_670ddde44cdb2602 = function(arg0) { + let result; + try { + result = getObject(arg0) instanceof ArrayBuffer; + } catch (_) { + result = false; + } + const ret = result; return ret; }; - module2.exports.__wbindgen_is_object = function(arg0) { - const val = getObject(arg0); - const ret = typeof val === "object" && val !== null; + module2.exports.__wbg_instanceof_Uint8Array_28af5bc19d6acad8 = function(arg0) { + let result; + try { + result = getObject(arg0) instanceof Uint8Array; + } catch (_) { + result = false; + } + const ret = result; return ret; }; - module2.exports.__wbindgen_is_undefined = function(arg0) { - const ret = getObject(arg0) === void 0; + module2.exports.__wbg_length_65d1cd11729ced11 = function(arg0) { + const ret = getObject(arg0).length; return ret; }; - module2.exports.__wbindgen_in = function(arg0, arg1) { - const ret = getObject(arg0) in getObject(arg1); + module2.exports.__wbg_length_d65cf0786bfc5739 = function(arg0) { + const ret = getObject(arg0).length; return ret; }; - module2.exports.__wbg_new_b85e72ed1bfd57f9 = function(arg0, arg1) { + module2.exports.__wbg_new_3d446df9155128ef = function(arg0, arg1) { try { var state0 = { a: arg0, b: arg1 }; var cb0 = (arg02, arg12) => { @@ -299,178 +321,148 @@ ${val.stack}`; state0.a = state0.b = 0; } }; - module2.exports.__wbindgen_is_falsy = function(arg0) { - const ret = !getObject(arg0); - return ret; + module2.exports.__wbg_new_3ff5b33b1ce712df = function(arg0) { + const ret = new Uint8Array(getObject(arg0)); + return addHeapObject(ret); }; - module2.exports.__wbg_getwithrefkey_edc2c8960f0f1191 = function(arg0, arg1) { - const ret = getObject(arg0)[getObject(arg1)]; + module2.exports.__wbg_new_688846f374351c92 = function() { + const ret = new Object(); return addHeapObject(ret); }; - module2.exports.__wbg_length_ae22078168b726f5 = function(arg0) { - const ret = getObject(arg0).length; - return ret; + module2.exports.__wbg_newnoargs_fd9e4bf8be2bc16d = function(arg0, arg1) { + var v0 = getCachedStringFromWasm0(arg0, arg1); + const ret = new Function(v0); + return addHeapObject(ret); }; - module2.exports.__wbg_get_3baa728f9d58d3f6 = function(arg0, arg1) { - const ret = getObject(arg0)[arg1 >>> 0]; + module2.exports.__wbg_queueMicrotask_2181040e064c0dc8 = function(arg0) { + queueMicrotask(getObject(arg0)); + }; + module2.exports.__wbg_queueMicrotask_ef9ac43769cbcc4f = function(arg0) { + const ret = getObject(arg0).queueMicrotask; return addHeapObject(ret); }; - module2.exports.__wbg_new_525245e2b9901204 = function() { - const ret = new Object(); + module2.exports.__wbg_resolve_0bf7c44d641804f9 = function(arg0) { + const ret = Promise.resolve(getObject(arg0)); return addHeapObject(ret); }; - module2.exports.__wbg_set_f975102236d3c502 = function(arg0, arg1, arg2) { + module2.exports.__wbg_set_23d69db4e5c66a6e = function(arg0, arg1, arg2) { + getObject(arg0).set(getObject(arg1), arg2 >>> 0); + }; + module2.exports.__wbg_set_3f1d0b984ed272ed = function(arg0, arg1, arg2) { getObject(arg0)[takeObject(arg1)] = takeObject(arg2); }; - module2.exports.__wbg_self_3093d5d1f7bcb682 = function() { - return handleError(function() { - const ret = self.self; - return addHeapObject(ret); - }, arguments); + module2.exports.__wbg_static_accessor_GLOBAL_0be7472e492ad3e3 = function() { + const ret = typeof global === "undefined" ? null : global; + return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - module2.exports.__wbg_window_3bcfc4d31bc012f8 = function() { - return handleError(function() { - const ret = window.window; - return addHeapObject(ret); - }, arguments); + module2.exports.__wbg_static_accessor_GLOBAL_THIS_1a6eb482d12c9bfb = function() { + const ret = typeof globalThis === "undefined" ? null : globalThis; + return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - module2.exports.__wbg_globalThis_86b222e13bdf32ed = function() { - return handleError(function() { - const ret = globalThis.globalThis; - return addHeapObject(ret); - }, arguments); + module2.exports.__wbg_static_accessor_SELF_1dc398a895c82351 = function() { + const ret = typeof self === "undefined" ? null : self; + return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - module2.exports.__wbg_global_e5a3fe56f8be9485 = function() { - return handleError(function() { - const ret = global.global; - return addHeapObject(ret); - }, arguments); + module2.exports.__wbg_static_accessor_WINDOW_ae1c80c7eea8d64a = function() { + const ret = typeof window === "undefined" ? null : window; + return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - module2.exports.__wbg_newnoargs_76313bd6ff35d0f2 = function(arg0, arg1) { - var v0 = getCachedStringFromWasm0(arg0, arg1); - const ret = new Function(v0); + module2.exports.__wbg_then_0438fad860fe38e1 = function(arg0, arg1) { + const ret = getObject(arg0).then(getObject(arg1)); return addHeapObject(ret); }; - module2.exports.__wbg_call_1084a111329e68ce = function() { - return handleError(function(arg0, arg1) { - const ret = getObject(arg0).call(getObject(arg1)); - return addHeapObject(ret); - }, arguments); - }; - module2.exports.__wbindgen_object_drop_ref = function(arg0) { - takeObject(arg0); - }; - module2.exports.__wbg_call_89af060b4e1523f2 = function() { - return handleError(function(arg0, arg1, arg2) { - const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments); - }; - module2.exports.__wbg_length_8339fcf5d8ecd12e = function(arg0) { - const ret = getObject(arg0).length; + module2.exports.__wbindgen_boolean_get = function(arg0) { + const v = getObject(arg0); + const ret = typeof v === "boolean" ? v ? 1 : 0 : 2; return ret; }; - module2.exports.__wbindgen_memory = function() { - const ret = wasm.memory; - return addHeapObject(ret); - }; - module2.exports.__wbg_buffer_b7b08af79b0b0974 = function(arg0) { - const ret = getObject(arg0).buffer; - return addHeapObject(ret); + module2.exports.__wbindgen_cb_drop = function(arg0) { + const obj = takeObject(arg0).original; + if (obj.cnt-- == 1) { + obj.a = 0; + return true; + } + const ret = false; + return ret; }; - module2.exports.__wbg_new_ea1883e1e5e86686 = function(arg0) { - const ret = new Uint8Array(getObject(arg0)); + module2.exports.__wbindgen_closure_wrapper7374 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 687, __wbg_adapter_38); return addHeapObject(ret); }; - module2.exports.__wbg_set_d1e79e2388520f18 = function(arg0, arg1, arg2) { - getObject(arg0).set(getObject(arg1), arg2 >>> 0); + module2.exports.__wbindgen_debug_string = function(arg0, arg1) { + const ret = debugString(getObject(arg1)); + const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3); + const len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; module2.exports.__wbindgen_error_new = function(arg0, arg1) { const ret = new Error(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; + module2.exports.__wbindgen_in = function(arg0, arg1) { + const ret = getObject(arg0) in getObject(arg1); + return ret; + }; + module2.exports.__wbindgen_is_falsy = function(arg0) { + const ret = !getObject(arg0); + return ret; + }; + module2.exports.__wbindgen_is_function = function(arg0) { + const ret = typeof getObject(arg0) === "function"; + return ret; + }; + module2.exports.__wbindgen_is_object = function(arg0) { + const val = getObject(arg0); + const ret = typeof val === "object" && val !== null; + return ret; + }; + module2.exports.__wbindgen_is_string = function(arg0) { + const ret = typeof getObject(arg0) === "string"; + return ret; + }; + module2.exports.__wbindgen_is_undefined = function(arg0) { + const ret = getObject(arg0) === void 0; + return ret; + }; module2.exports.__wbindgen_jsval_loose_eq = function(arg0, arg1) { const ret = getObject(arg0) == getObject(arg1); return ret; }; + module2.exports.__wbindgen_memory = function() { + const ret = wasm.memory; + return addHeapObject(ret); + }; module2.exports.__wbindgen_number_get = function(arg0, arg1) { const obj = getObject(arg1); const ret = typeof obj === "number" ? obj : void 0; getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true); }; - module2.exports.__wbg_instanceof_Uint8Array_247a91427532499e = function(arg0) { - let result; - try { - result = getObject(arg0) instanceof Uint8Array; - } catch (_) { - result = false; - } - const ret = result; - return ret; - }; - module2.exports.__wbg_instanceof_ArrayBuffer_61dfc3198373c902 = function(arg0) { - let result; - try { - result = getObject(arg0) instanceof ArrayBuffer; - } catch (_) { - result = false; - } - const ret = result; - return ret; - }; - module2.exports.__wbg_entries_7a0e06255456ebcd = function(arg0) { - const ret = Object.entries(getObject(arg0)); - return addHeapObject(ret); - }; module2.exports.__wbindgen_object_clone_ref = function(arg0) { const ret = getObject(arg0); return addHeapObject(ret); }; - module2.exports.__wbindgen_debug_string = function(arg0, arg1) { - const ret = debugString(getObject(arg1)); - const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_export_0, wasm.__wbindgen_export_1); - const len1 = WASM_VECTOR_LEN; + module2.exports.__wbindgen_object_drop_ref = function(arg0) { + takeObject(arg0); + }; + module2.exports.__wbindgen_string_get = function(arg0, arg1) { + const obj = getObject(arg1); + const ret = typeof obj === "string" ? obj : void 0; + var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_2, wasm.__wbindgen_export_3); + var len1 = WASM_VECTOR_LEN; getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; - module2.exports.__wbindgen_throw = function(arg0, arg1) { - throw new Error(getStringFromWasm0(arg0, arg1)); - }; - module2.exports.__wbg_then_95e6edc0f89b73b1 = function(arg0, arg1) { - const ret = getObject(arg0).then(getObject(arg1)); - return addHeapObject(ret); - }; - module2.exports.__wbg_queueMicrotask_12a30234db4045d3 = function(arg0) { - queueMicrotask(getObject(arg0)); - }; - module2.exports.__wbg_queueMicrotask_48421b3cc9052b68 = function(arg0) { - const ret = getObject(arg0).queueMicrotask; - return addHeapObject(ret); - }; - module2.exports.__wbindgen_is_function = function(arg0) { - const ret = typeof getObject(arg0) === "function"; - return ret; - }; - module2.exports.__wbg_resolve_570458cb99d56a43 = function(arg0) { - const ret = Promise.resolve(getObject(arg0)); + module2.exports.__wbindgen_string_new = function(arg0, arg1) { + const ret = getStringFromWasm0(arg0, arg1); return addHeapObject(ret); }; - module2.exports.__wbindgen_cb_drop = function(arg0) { - const obj = takeObject(arg0).original; - if (obj.cnt-- == 1) { - obj.a = 0; - return true; - } - const ret = false; - return ret; - }; - module2.exports.__wbindgen_closure_wrapper7250 = function(arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 687, __wbg_adapter_38); - return addHeapObject(ret); + module2.exports.__wbindgen_throw = function(arg0, arg1) { + throw new Error(getStringFromWasm0(arg0, arg1)); }; var { Buffer: Buffer2 } = require("node:buffer"); - var bytes = Buffer2.from("AGFzbQEAAAABzwRJYAJ/fwBgAX8AYAJ/fwF/YAN/f38Bf2ADf39/AGABfwF/YAR/f39/AGAFf39/f38AYAZ/f39/f38AYAR/f39/AX9gAAF/YAd/f39/f39/AGADf39/AX5gA39+fwBgBX9/f39/AX9gAX8BfmACf38BfmACfn8AYAd/f39/f39/AX9gA39+fgBgAABgBn9/f39/fwF/YAJ/fgBgA39+fgF/YAF+AX5gAn5+AGAEf35/fwBgBH9/f34AYAN/f34Bf2ABfgBgBH98f38Bf2ANf39/f39/f39/f39/fwBgAn98AGAGf39/f35/AGAPf39/f39/f39/f39/f39/AX9gBH9/fn8AYAZ/f39+f38AYAN/fn8Bf2ACf34Bf2AEfn5/fwF+YAN+f38AYAJ+fwF/YAJ+fgF+YAN/f34AYA5/f39/f39/f39/f39/fwF/YAh/f39/f39/fwF/YAp/f39/f39/f39/AGAEf35/fgF+YAl/f39/f39+fn4AYAV/f39/fwF8YAF8AXxgBn9/fn9+fwBgA35/fwF/YAF/AXxgBX9/f39+AGADf39/AXxgF39/f39/f39/f39/f39/f39/f39/f39/AX9gE39/f39/f39/f39/f39/f39/f38Bf2ALf39/f39/f39/f38Bf2AEf39/fABgAXwBf2AEfn5+fwF+YAR/fn5/AGAEf39/fwF8YAd+fn5/f39/AX5gAAF+YAJ+fwF+YAN/fH8AYAV/f31/fwBgBH99f38AYAV/f3x/fwBgBH98f38AYAV/f35/fwACphIrGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxZfX3diaW5kZ2VuX2Jvb2xlYW5fZ2V0AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFV9fd2JpbmRnZW5fc3RyaW5nX25ldwACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxVfX3diaW5kZ2VuX3N0cmluZ19nZXQAABhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18UX193YmluZGdlbl9pc19zdHJpbmcABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18UX193YmluZGdlbl9pc19vYmplY3QABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18XX193YmluZGdlbl9pc191bmRlZmluZWQABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18NX193YmluZGdlbl9pbgACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxpfX3diZ19uZXdfYjg1ZTcyZWQxYmZkNTdmOQACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxNfX3diaW5kZ2VuX2lzX2ZhbHN5AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fJF9fd2JnX2dldHdpdGhyZWZrZXlfZWRjMmM4OTYwZjBmMTE5MQACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx1fX3diZ19sZW5ndGhfYWUyMjA3ODE2OGI3MjZmNQAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxpfX3diZ19nZXRfM2JhYTcyOGY5ZDU4ZDNmNgACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxpfX3diZ19uZXdfNTI1MjQ1ZTJiOTkwMTIwNAAKGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxpfX3diZ19zZXRfZjk3NTEwMjIzNmQzYzUwMgAEGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxtfX3diZ19zZWxmXzMwOTNkNWQxZjdiY2I2ODIAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18dX193Ymdfd2luZG93XzNiY2ZjNGQzMWJjMDEyZjgAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18hX193YmdfZ2xvYmFsVGhpc184NmIyMjJlMTNiZGYzMmVkAAoYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2dsb2JhbF9lNWEzZmU1NmY4YmU5NDg1AAoYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fIF9fd2JnX25ld25vYXJnc183NjMxM2JkNmZmMzVkMGYyAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JnX2NhbGxfMTA4NGExMTEzMjllNjhjZQACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxpfX3diaW5kZ2VuX29iamVjdF9kcm9wX3JlZgABGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxtfX3diZ19jYWxsXzg5YWYwNjBiNGUxNTIzZjIAAxhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18dX193YmdfbGVuZ3RoXzgzMzlmY2Y1ZDhlY2QxMmUABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18RX193YmluZGdlbl9tZW1vcnkAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18dX193YmdfYnVmZmVyX2I3YjA4YWY3OWIwYjA5NzQABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193YmdfbmV3X2VhMTg4M2UxZTVlODY2ODYABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18aX193Ymdfc2V0X2QxZTc5ZTIzODg1MjBmMTgABBhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18UX193YmluZGdlbl9lcnJvcl9uZXcAAhhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18ZX193YmluZGdlbl9qc3ZhbF9sb29zZV9lcQACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxVfX3diaW5kZ2VuX251bWJlcl9nZXQAABhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18sX193YmdfaW5zdGFuY2VvZl9VaW50OEFycmF5XzI0N2E5MTQyNzUzMjQ5OWUABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18tX193YmdfaW5zdGFuY2VvZl9BcnJheUJ1ZmZlcl82MWRmYzMxOTgzNzNjOTAyAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHl9fd2JnX2VudHJpZXNfN2EwZTA2MjU1NDU2ZWJjZAAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxtfX3diaW5kZ2VuX29iamVjdF9jbG9uZV9yZWYABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18XX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAABhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18QX193YmluZGdlbl90aHJvdwAAGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxtfX3diZ190aGVuXzk1ZTZlZGMwZjg5YjczYjEAAhhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18lX193YmdfcXVldWVNaWNyb3Rhc2tfMTJhMzAyMzRkYjQwNDVkMwABGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXyVfX3diZ19xdWV1ZU1pY3JvdGFza180ODQyMWIzY2M5MDUyYjY4AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFl9fd2JpbmRnZW5faXNfZnVuY3Rpb24ABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18eX193YmdfcmVzb2x2ZV81NzA0NThjYjk5ZDU2YTQzAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEl9fd2JpbmRnZW5fY2JfZHJvcAAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXx5fX3diaW5kZ2VuX2Nsb3N1cmVfd3JhcHBlcjcyNTAAAwP0LfItCAgAAAAEBgQEBAYGBAQHBwcSFQYGHgAGBAAEBgIHBAQAAAAEBAADAAAAAggABAAACAcHBAAFBAQGBgQIBAAGAgACBgAACwsIAAYGAAIGAgYABgYGCQAAAAgEBAYIAAAAAAIADgkfHwAGBgYEBAICBwgIBAQCAAAECAcECwAHAAYAAAAICAggAAAFAgUGBAAGBAAEISEHCwgGBAIBBAAAAAQCBAQLBAYIAAMLAAAHEgcHBwcAAAAAAAcCAAAHAAAAAAQEAAAEBAAECAIGBgYAAA4FAAQFCQIBBAAABgYAAAECBQABAQgACAAGBgQCCAcHAAQEAAoBAQEAAAEEBAsHAQAGAAAABwQBAQQEBgcGAAMBBAEIBgECBgQAAAEBAgcGAAABAAAEAQQECAQEBAYAAQEBAQABAQUDAQAGBgAGBgABAAAABAALCQEJAAQAAAALBAQFIgcHAAcCAiwHAwIGAAAACwYEBgYAAQQJAgQLAAECAAUBCwAAAQsDAwcAAQgAAAcCAQAtABIGAgAFAAAJAAYEBgAEBAQACQABAAgHBgcAAQAABAIBAQQBAAAHAgYFAQEABwECBAYABAMDBwcAAAceAgEABAMHAAAABAQGAAICAgAFAAAAFQMICAAFBgYELgMADgMJAQABAAQEBgQGAwYBBgYACAMDBgAAAgEAAAMCBAAEAAQABAYGCAAECAAAAwIAAAAICAYBAQQECxoEAAIJAAEACAAAAAAAAAAAAQEAAgAVCAYGAAYCAAAvAAEEAgEBAQEBAQEBAAEBAwEAAwIBAQAAAgQCAQEBAQEBAQEBAQEBARUAAAAAAQQEAAEEAAQLAAIIAAAHAAQAAwEBBgsHAQAABwYDAQ8TAgEBCQAEAggAAAACCAcABQUFAAEBAQEBAQEBAAEEAAUGBAABBwERAQAABAECBgIEBAMABwAAAAEAAAAAAAgABAIwBAACCAAAAQAEBwUKBAAEGgIAAgEABAQGAgQECAYGBgEEBAIBAAAEAgYGAAMABBIABAAAAQAGBgEBBgAPADEGBAAGBgYCAAAEAhUEBQUFAAICBAYCBAAHAQABMgIEBgAABAQIBQAAAgYSAAAzBAQAAAYCAQEBAQ4EBQQLDwEjAzQbBAYHBQIGBwIAAAIICAMEAAIEAgMIBAAAAwIHNQAHAAEBBAQAAAcEAgIABAAGCAQABAIAAAcHBgYCBQIAAQQABAQEAAICAAEAAAAEBAYGAAAENgABAAIAAAIBBwEICQQBBwIGBgIAAgMBAQYEBQEkAAEAAgAAAAQACQICCQIDADcEAQgAAAACBQgABQEBCAAEBAcDAwgCAAkIBAABBQIEAAAIAAgEAAQAJAQCAAAEDQABBQEDAAEAAAIEBAkEAAAPAgIBACUBAQAAAQAECBICAAQADQQEAAYCBwIEAAIAAgIBAQABAgQEAQIABAAEAQQCAAYGAAABBQAEBAABBAICBAIAAAgIAgAABgEAAAECBAEACAAGBAQAAAIAAAgECQkEAAAAAAEACAgABAQBBAECAAEEBgAACQAAAAECAgABFgEDAQAEAAEGAQAAAAYEAAABAQEBAQEEAQAGBAQBAwEBAAQFAAECBwEBAgYECQABAAACBAcEBgYABAQDAQQGABYAAgQACDgAAQcABAAAAAMABAYBAQIEBAIHBgAJBAgBAgAEAAQACAEEAAQCAgQBAgABBRIGAwICAgA5CRAEAwEECQACBAYAAQEEBAEADgABAgcCAAABAAIEAAMGAgAFAgYHBAAAAAIiAgADBgQCAgIBAQMCAgYCCwIEBAYCAAYEAAAGBiYAAAAGAgQDAAUDBAAEBQQIAgI6AAEAAQUFBAEJAAMFCAYGBgYDBQAAAAADAwAAAgUFCAgCAAYCAgYEAAAAAAADAAUAAAACEgQCAAECAgACBAABAQEBAAAAAAUFAAUWDhAGBgICAQYGAgAAAAYAAAYGAgECAgEAAQEAAQYIBQUFAAAAAAAAAQAAAQEEBQQAAAAAAAAGAQAAAwYGAwACAAUCDwAAAAAAAAAAAAAEBAEHBQQFAgAAAgICAgAAAAABAgIFBgIAAAAFAAICAQMHAAAABQACAAICAgIAAQMDBAALAAUCAAABBQABAgECAAsCAgICAgICAgICAgICAgICAQAEAgEGAQAABAIAAAAAAgICAgIJAAAACQICAgIAAgIABAQEAgICAgAABAICAgICAgICAgICAgICAgICBQAAAAAAAAAAAAQEBgYGAAAAAgUFBQAFAAoFBAIEAwYCAAAAAAICDgEEBgIFAQUFBQYECQIFAgIWAgAAAQgBCAEIBgYBAAECAAEHAQMCDAIDCAAHCQIEAQIAAgACAgEBAgAGAg0AAQIAAAQFBAAGBAAGBAUAAgQBAAAAAQcCOwAFAAAAAAAAAAMAEwcDBAAAAAYCADwGAAADBAAHCAg9AAUGBgYGCAIFCQABAAEEBQQAAAEFBQEIHAAAAgUCAgABBQUAAgADAAUCAAQBCQUEAQUDAAUFCAEFBAUDBwkABAUFAgAFAAAAAAYABgAHAAUCCAICAAInJwAFAwAAAAAAAAAAAAAAAAAABQAAAAAAAAACAwAAAAAAAAQACAQAAgEAAAAABgABBAQACQAAAAAEABMCAAUAAAUBAAAGAgICAgIBBgECBwQABwAJAAAHAQICAgICAgICAgICAgAHAAAAAAcAAgIEBQQEBAQABAQABAQIAAMCAAUBAAAAAQgAAAANAQABAQIACAkECQcBBAIAAwAcAQADBQEAAhwBBgACAAECBAAFAgIBAwcCAwICAAUBBAABBgYGAgEFAQEBAQEBAQEBBAEAAgQAAQYDAQEAAgUPAQACAgICAgICAgICAAAAAAAABQAUAAAAPgAAAAQBCQkABQUBAAcCAgICAgAAAAAAAQAABgABAAQCAgIIBgAAAAYCAgEABQQCAgUFBAAFBQQAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQANAAQDAgAABgABAQEBAQEBAAAAAAEBAQABAAAAAAEBAQABAAYBAAACAAIEAgEYAAAHAgMIAQABAQcBAQAAAAAABAQFAgACAgICAgEAAAEABQQEBAIAAAYAAgQAAAICAgIGAAICAgICAAACAgICAgACAAAQAAAFAAQCAgICAgIAAAQBAAAABAkABQQCAwEACAAFBgYABAQEBAUCAAEABwQEBQUAAQIHBwABAgICAgICAgIDAgAAAgcHBAEBBQICAgICAgICAgICAgICAgICAgICAgICAAAAAAAADwEBAAAAAAACBAQCAgICBAACAAQEAgUCBQIAAQEBAgUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgABAAAAAAEAAQABAQAAAgYABAQCBQEKCAUEBwICAgECAAIBAQECAgICAgECAgEBASgBAgAAAQEBAQIHAQEABAQCAgEEAAEBAAAAAgIAAQQEAAYBBAADBAUFBQUGAAAGBgICAAABAQAABQUAAQABBAAEAAAAAwoBAAYEAAQBAAcJBAQAAQAAAQEBAAAAAAAAAAEHBgQAAQQABgQBBQEABQAEAQ8AAQEGAAQAAQ0FAQACAgICAAYCAAAAAAAAAAAAAwgAAAEAAwECCAUEBQQBAQICAgEABAEBAQABAQEBAQEBAgACAgECAgICAgQEAgICAQECBAICAQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAQICAgIBBQABAAEBAQEBAQQBARABAQEBCAEBAwMCAQEBAQAAAQEBBAIBAQUBAQcBCgEBBQEBAQEBAAEBAQEBAAE/AQAAAAAAAAAAAAAAAAAAAAAAAgIHAgICAQIAAAIHCQYBAgICAgICAgIACAICAgABBwECAAICAgIBAQAAAAEFAQEBAQABAgAAAQICAQEBAAEBAQEBAQAAAAcAAAUABAEFBQQBBQEFAAAAAAUCAgAAAAABAAABAAABQAICAQEAAgACAgEBDQQAAAAFBAAEAAkEBAIIAAYCAgIFAQUFAwUFBQUFBQUFBQEBAQEBAQEBAAEpAQEBAQUBAQEFAQEBAQIAAgsGAEEEBAEJBAkABAcDAQIFAAEAHQEBAQEBAQAAAAEAAAAAAQ0AAQEMAAEBAAAAAAAAAAEBAQEBAQEBAAEBAQQAAAAAAQABAQECBAUCDwICAgQJBgEBAAsCAAwMAQUAAwIEAAEBAQEBBQkCBgICBgUBAQEBBgEAAQABAQEAAQYAFxcCAgUAAwYOAgAAAAECAgQAAAICAAAAAAICBQUBAgIAAAAAAAAAAgwGBgYGAgICAgICAgAAAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUHAgcEAgIQEAIFAgAGAgICAgIFAAICAgIGAAICAQYEAgIAAAUdBgAMGAECAAACAgECAgEBAQABAQANAAEBAQEBAgEBAQEBAQEBAQEBAQUABBMBFwIAAgAUFAECAQEUFAAAIAAFAxQUBQIBAQIDAgICAgkCABYCAgICAgIAAgIGAwACAgABAgUFAAEFAAUBAgEBEQAAAgUCAgIHBwUGAgICBgcCAgICAgICAgACAgAEBAcABwIAAgMCAQIFBQIHBwUBAQMCKgICBQEBAQEAAQEBAQACBQAABQICAgABAQEBAAAAAAAAAQEBAUIBAAAAKAAAAQUBAQEFBQEBAQABAQEGAAQAAwAAAAQAAAABBwEJAAUAAAAAAAUEKgAAAQAAAAAEAAUAAAAFAQAFAgIEAgEAAQABAAEEBAAEEwABAQIbBwAFEAABAQEMAAACBwYCBwUFAQEBAQEBBgEBAQEABQEAARsFAA0BAQEBAQAABAQBAAIHAgUAAgIjKwEBAgkBAgICAAEBAgIBAAACAgICAQEBAAAACgEBCgEAAgICCwYECQQFAQEEAAQCAgICAgsGBgYCAgAAAAAAAQEBBQEBBgYGBgEBAAAAAAEBAQEBAgICAQMAAAEHBgQFCQYCAgEBBwIEBwEFBQYpAgIMBgAAAAEFAgICAgIFBgICAAEBAQAAAAABAAIGAAABCAIBAAEAAAAAAAcACQIBAQEBAQAAAAAGAQUAAAEBAAAJAwUCAAEDAwYAAAABAQABEAEBAAADAAAAAAAABQEAAgQAAAAAAAAAAAAYAQAAAAAAQwAAAQAQAAAAAAAAAAMJCQkJAQkDBwcBARUEAwkDAysBAwMDAwMHCQIWCQIJBgIFDAAFBAEBDAIBAAwCCQQJAQABCQQFBAABCQcOREZIAAMBAQUFBRABBAICAgMBBAQGBgYBAQEBDAIBAQABAQEBAQEBAQEEAAQAAAUABgQECgoCAgkCFxcGAAEBAQEABQIAAQUAAAAAABEFAgUBAQEBAQoBAQEBAQEBAQAAAQICAhEBAgUEBQEBAQEEBAUEBAQKAQUFBAQAAAECAAIDCQAEAwECAAUCAgQDBwQMAQEBAQUFAQEFAQEBAQEKAQEMAQEBAQEAAAEBAAAAAQEBAAEMAQEBAQEBAQEBAQoBAQEBAQoFAQEFAQEAAQEEAgQCAQEECQkBAQICBQQDAgABAQEBBQEBAQECAQEBBgYBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAQBAQEAAAABAQQAAQEBAAAAAAAABAEBAQEAAAAAAAAAAAAAAQEBAQwEAQEBAQEBAQEBAQEBAQEBAQAAAQEBAQEBAAEEAQEAAAAAAAAAAAAAAQEBAQABAQEBAQYAAgEBAQEBAQEHAwEBAAEAAAEBAAQBBAIBBAoKAAoKCgoKCgoKCgoKAQEAAQEBAQEPCgIBAQEBAQUBAQEBAAAMDAEBAQEAAAABAQIBAQEBAAAAAQICAgICAQUFCgMBAAQEAwcMAgIFGAABAQERDQEBAQEKAQEBAQoKCgoKAQQBAQEBAAEBAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQAAAAEAAAAAAAEAAAACAAAAAAAAAAABAQAAAQAAAQIAAAABAQEBAQEBAAIAAAAAAAAAAAAAAAAAAQECAgIBBAADAAICAgIEAgICARMTAAACAAEAAgICAgICAgACBAECAQEBAgEBAQEBAQEBAQABBQEBAQEBAQEBAQEBAgEBAQEBAQICAgICAgICBQUBAQEBAQEBAQEFAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAEBAAAAAQAAAAABAQEBAQAAAAAAAAAAAAAAAAAAAAEBAQEBAAEBAQEBAQEAAQEBAQEAAAAAAAAAAQEBAQEBAQEBAAAAAQEBAQEBAQEAAAEAAQEBAQEBAQEBAAAAAAEBAQAAAAAAAQEBAAABAQEBAQEAAQEBAQEBAQEBBAMBAwAAAAQAAAAAAAAAAAAAAQEAAAAAAQEBAQEBAgEFBQUDBQIHAgABAQEBAQIFAQABAwEGAQEBAQEBAQEBAQEBAQEdAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQkBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEZAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAABAAEBAQEBAQEBAQEBAAABAAICAgICAgIBAAAAAAEAAAACBAYBAQEBAQIDAAEBAQEAAgEEAQEBAQEBAQEBAQEFAQEEAQUBAQEBAQEBBAAEAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEBAQEBAQEFAQEBAQEBJQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAUFAAAFAQEBAQEBAQEEBAQBAAEBAQAAAAAAAAAAAAABAQAAAQEABAMAAQIAAAMCAgMCAAUAAAAAAAEAAAADAAIJAAEAAQACBAQBBQICAgUABQACAgEAAQAAAAADCQAAAAAAAAAAAQICAAUFAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAQECAAQEBAQCAQEAAQUAAgQCBAMEAgICAgICAgQBBQUFAgICAgICAgICBQUFAQUCAQICAQICAQEDAgEBAgICAAAAAAICAAICAwADAgUAAhkZAQAFAQERAQEBAgEBAQICAwMCAgICAgICAhEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICAgICAgICAgICAgICAgICBQICAgEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAQUAAAAAAAAAAAIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAFAAACABEEAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAACAQUBAQMCCwUCBQUFBQAAAAABAQEAAQEBAQEAAQEAAQEAAQEAAAAAAAAAAAEBAQEBAQEBAAAAAQEBAQEBAAAFAQAEAAACAAEFBQUFBQUFBQIFBQUFBQUBBQUFAQEBBQUBBQUFBQUFCgAEBAcBcAGTC5MLBQMBABoGCQF/AUGAgMAACwfUAQoGbWVtb3J5AgAJdHJhbnNmb3JtAKISDXRyYW5zZm9ybVN5bmMA4xMTX193YmluZGdlbl9leHBvcnRfMAC7GBNfX3diaW5kZ2VuX2V4cG9ydF8xAMAcE19fd2JpbmRnZW5fZXhwb3J0XzIBABNfX3diaW5kZ2VuX2V4cG9ydF8zAKQhH19fd2JpbmRnZW5fYWRkX3RvX3N0YWNrX3BvaW50ZXIArCoTX193YmluZGdlbl9leHBvcnRfNADMHxNfX3diaW5kZ2VuX2V4cG9ydF81AJEgCasWAgBBAQusBcsGkSjVDZQulS6uKpUOsyS9KbkmkSiPCsAZyx25LYUbxwa9GLot7Aq+GPECqAK2GsEZ4QmIDbAqvhHSD6AS3RO1KvYVzxukD8wdhxutA80d+A6/EbQq5AzPErseig2JDYsN3hOMHp8o+hCNI5MXmiS5KtEbjBnKC7cmjyjiKrwEkCj4Fbkm8Q6cLrMXlBjFKq4krSTQDIwb0Q2iHbsM1R+lD9Qf1R+kH9YgkSDUH9Qf1h/XH9gf2Ba5JscZmReNGdoHjhngDcgCxCrGKswBpB3IKtEH0xKoG9QSqxvVEqkbmhv9Fbck5RPWEr0HlQ2hG9oS2RC2BdYKqQ/HCuAUwCbbG58b2RLgEsEmrBvHKsAaoBuBE9oQjR7dG4IO1CrhFKgSjAHBGugXlhneG90IohvbEs4qpyGhE5kg/Q6kG5sD5gzXCIAHyAaSB40LiQeSDZMNlA3pF6cdxQy+DNod3BKoHd0SkR7kAYsC0Cr8HNAImBnpF5kZ0hCyC6gXpRPeC8QLzBmnG/wV+xWqG7UB5xuqF6YT4xLhEq0dwQLHCP8cyBHnE+kM0gzRDJYX7AuYDKkT5SmyFLAh/hWYDf8Vlw2OI5AGsg7pBtgq0RnSGa4M6Q3cKrAdjSPrDb0YwS2LIMEpwAajCooZ0waPKOQEtAOqB+8cig7NGOYq4yrlKtUQ4iqZI+MgrRPdEK4TyAyaHtok3hDiKneHG+IdjiO0IcEt6CqyF5sesxv4G4MWzRGeDbEdkhjOEeMdnw20F+YS2BnqDJMY3gbqKuUgoA3sDK8o3SSaI7sf2RqyHYQW0wzcGrcd+Sq3FNUIsSuBAv0q/iqHFtcR2BHZEe4T5Rm9Eqwrrg26CKsN9RvvGawWrRawFogU6hHuEesRhRSJFO0RiBCJEKoWpiu5CIYUihCAC7EWihSuFqsWrxb8E/YT6xmuEeIRgBSaFpsWhBT+E/8TqBaHFN8aqR6qHroSiBGhB+0DjRT0GfUZkRS8FpIUvRa+FvIRkxS/FrARlBSPFI4Q8xGNEN0HuRbaEcATpCvwE94RpyuWCOER3xGyDOAR4xHHC4QQ7xKJFr0TgyuEK9sRvxTxE7oT8hO1E/MT7gytEYwW/gjdDPERtxa2FokRswz0E4MNtRbwGfARjw66FpAUihH1E9MK/ROYFpkWhyuxDYgrihb9BsgLrwquCqMI4Qi4Ft0J7gv/CvQU1g7XDugQ2A7nGYkK7x3wHfEd2Q7oGekQ9RThC+IL6hDpGeoZ8h3cEfASjRbvC8IX9hS0E9cZ8RKlK+UVthO8EoIrpQ3vDI8WkRaoK7MU+hOSFvcT+BPmD+YKqSuOFrMNuxS3E6or5hXtDKIevhK4E/EMjBHNEK0N8hLiGuwZux2/Et0RlBaDEK8RwBLtGe4ZghTYA6IWjhGDFIEUlhaQFqAWpRahFosRhRCeFqYW+xPnEbEMnRblEZwWlwr2DK0rvB29Hb0Uoxb0DOkRhhC0DZEO2g2kDa4rqRa+HacNhiu/IfIMvBOBK+sQixD4DPkepR6kFvkT6BGHEJMWvhO+FL8TpB7sEYoGqg7jGo8Rox6mCrQMshaMELMWtBbvEfAPlRaXFqoNwRTBE5IOixSNEecVmwyvK44UlRTxD8YT8w/yD/QPsCvCE/MKsiuzK7Qr8RnyDvcg8R+CFqYe9Qz3FMQTjBTbDawNpxbwDFXtKvMM8xLkEbYrxw63K7grxxfHE/QS9wzIE5ERqyu5ILcg8hq3ILgg9iLBH/ciiSH2IusHvCDFH8UfgyLGH7wgnCOUELwOgxHEDJIm2yykFJkBsy35FZwOywSUF/wMnygAQa4FC+UFpCG6JqQh7RzrCp8d9QjLII8o+A/ZF4wokinZF7kpkiSHGbwtqhWLKJIpuyqzGsgbmhPJG/MFnR/KG5QJjxfyDdYUrgueEosLtxq7EJAXzw/XFOsOkhfOGqkVih64KoMulCiMI4QujiDWFoUumSSGLocuzRu0JrEqsirnH2rPIMwEtyqTKIsj/y3tCowIgC6YJIEugi7PH7MmsyrAKdsXmAHOIPEHtiqSKIoj+y2bE4EO/C2XJP0t/i3cF7Imryq6KcAR0BuoIdcWgwe6KpwknSTVKcMp8geeJJwkjyiOI8EtlyiRKI0jmCiPI5kovCqaKOYD9gikJJ8koySdKJAgoCSbKKIknCiPIKEkqySQJKwkjyTbJKokqCSRJKkkziKOHvoR9wjAKoQM5wKYLtUpjSiUJI4ohBvlD8IqsQeaBMgVwSrQKcMqsCSmD/MHoSjKFe4p9QfPJNcp2huuIcIaii6/Gsoq1xDKGZguiy6PBpYGkQeQAv4QoyieF8oq1xDKGYkuwySOA4kD9wSDAf4Q4R/CEMoqqAvDEIgu5xfKAtgCpANy/hCdF9cQySqrDL0M9gvTDccD/hCOLqUXli7OFZsuly6eC78J0Qr7B6sKpCifF5YuzhWXLssqwQ35CpMM/AjcC6UooRe+LdAVzSqMLvcNnAvWDJ8JlAykF9cKgQmGCtUH4gmjF8IN+gqWDP0I3QvMKqAXvS3PFbEL0QnhCo0IvAqmKKIXvy3RFZsujS74DZ0L1wygCZUMyx7ZG7YkoBPJHr8mqRSiKNgb3B/XG/gc1hvbINUbrxuiE4sHnSSsE5MZpBOjE9wp5RvPKrMJxhqnE9EqqRfTKo8u5hvLGukbzRq0CbwH4hKMCPsFjxiXLpguwgWtFNAEwRH3C6UQjS6sKIUHmwv8Ds0q9g2nF5cuyh7RDtIO0x7RGsUP5BLbKu4brxe5KtsVzgfdKtIa1iTHDJke1yTYJI4I2STpKe0k6SmxF7wG1CqAD/IJyRDUAfkI3CT3G7Ao6SqmDscm6yqrC7Qbmy6bLpsujy3AIeQFxgvyKqwL2yrgGtcmkC6MJ6AC0ya7E+YRjie8FMkTuRP1IOML/yaLK7gDgCevD5kPmg+BJ4Inmw+MK4MnjSuwD8ItsQ+QDrIPhCfDLY4rsw+FJ4Ynhye9FYgnjyuQK5ErkiuTK5QrlSuWK5crmCuZK5ormyucK50rniufK6AroSuiK6MriSecD4oniyfZDZwH6iawDYodkBG0HYwl7iKoDcAdwhTDE5gutSuDCOwmsg2WJ4glhSvhJq8N5CTFE9gmpg2fFponuxaZJ8UXrQryH/EmqQ3kJJAuxhewIPQRmS7oK+kr6ivrK+wr7SvuK+8r8CvxK/Ir8yv0K/Ur9iv3K/gr+Sv6K/sr/Cv9K/4r/yuALIEsgiyDLIQshSyGLIcsiCyJLIosiyyMLI0sjiyPLJAskSySLJMslCyVLJYslyyYLJksmiybLJwsnSyeLJ8soCyhLKIsoyykLKUspiynLKgsqSyqLKssrCytLK4sryywLLEssiyzLLQstSy2LLcsuCy5LLosuyy8LL0sviy/LMAswSzCLMMsxCzFLMYsxyzILMksyizLLMwszSzOLOgo0iyUC40S9SiLKYwt6A6aLp8qkC3yLdkfhS6RLpIu8yf/HboMlinEG5cp0hfTF0iTLrcRjR+5EL4gxRuMH88U/Rj+HZ4qkSmTKZUpkxCAHrwioCLYE6If/yKdDesMswXRFMEF8y3OCqMpixOME+AQ8AqWFdsPjROOE+EQ8QqXFdwPgQeBD7IpqSa0Kb4ZghuzKagmtSm/Gesc0hSXAqsp0xSaBrISqSnWDbMSugqsKa0phBnsDdIIihOuKNMatC34LZcQpyavKakq+C2YEKYmsSmNJLApqiauKcIpqCmqKbUt/QLDCvkt3BPJIIoo2AXbE8ggsCb6Lewc5gbdFZ0dhR6GGbctCvuuffIt1LwBAg9/A34jAEGACGsiBiQAAkACQAJAIARFDQAgAUEoaiIEEOMNIgdFDQAgBygCAEECRw0AIActAAhBAkcNACAHLQAJDQAgAUEBOgAkIAEtAIQDQQFxRQRAIAZBkARqIAQQnxQgBigClAQhAyAGKAKQBCELIAZBEzoAuAYgASALIAMgBkG4BmoQvBkLQQAhAwJAIAQQxhIiB0UNACAHKAIAQQJHDQAgBy0ACA0AIActAAlBCEcNACAEEL8gIQsgBBDjDSIDRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDAMLAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDAQLIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQvwogBkGIBGogASACQQEQlQIgBigCjAQhAyAGKAKIBARAIABBEzYCACAAIAM2AgQMBAsgAwRAIAAgAzYCDCAAQQM2AgggAEERNgIADAQLQQEhAwwBC0G54+AAQShBkJ3gABDaFwALIAZBgARqIAEgAyALEJEDIAYoAoQEIQMCQAJAIAYoAoAERQRAIAZBuAZqIgcgAUEBEMcSIAZB+ANqIAYoArgGIANBABD1CiAGKAL8AyEDIAYoAvgDDQEgBxCKJiAEEOMNIgdFDQICQAJAIAcoAgBBDmsOAgQBAAsgBBCbIRoMAwsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiAENgK4BiAGQbgGahC/CgwCCyAAQRM2AgAgACADNgIEDAMLIABBEzYCACAAIAM2AgQgBkG4BmoQiiYMAgsgACADNgIEIABBEjYCACAAIAIgASgCfCIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIDAELIAFBKGohCAJAIAEtAPgCIgdBAkcNACAIEOMNIgRFDQAgBCgCAEECRw0AIAQtAAhBAkcNACAELQAJQRNHDQAgCBDGEiIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACUENRw0AIAgQ4w0iA0UEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwCCwJAAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDAQLIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQvwogCBDjDSIDRQ0BAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRg0BQbnj4ABBKEGAnuAAENoXAAsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3hBDCEHIAZBxAZqIAFBLGoiA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahC/CiAGQfADaiABIAJBARB8IAYoAvQDIQEgAAJ/IAYoAvADQQFxBEBBBCEHQRMMAQsgAEEGNgIIQRELNgIAIAAgB2ogATYCAAwECyABKAIsIQEgAEETNgIAIAAgATYCBAwDC0G54+AAQShB8J3gABDaFwALIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDAELIAgQ4w0iBEUEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEKAIAIgtBAkcEQCALQQ1GDQEgC0EkRw0lIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0DIAEoAiwhASAAQRM2AgAgACABNgIEDCgLQQQgBC0ACCILQQJrQf8BcSIJIAlBBE8bDgUBJCQkAyQLIAZBAToAtwQgBiABKQGCAzcAmwQgBiABKAGaAzYAswQgBiABQYoDaiICKQEANwCjBCAGIAFBkgNqIgMpAQA3AKsEIAZB0QZqIAFBlwNqKQAANwAAIAZBzAZqIAMpAQA3AgAgBkHEBmogAikBADcCACAGIAEpAYIDNwK8BiABQYABaiAGQZsEahDACCAGIAE2ArgGQQAhBCAGQfAFaiABQQAQkgYCQCAGKALwBUGAgICAeEcEQCAAIAYpAvAFNwIEIABBFGogBkGABmopAgA3AgAgAEEMaiAGQfgFaikCADcCAAwBCyAAIAYoAvQFNgIEQRMhBAsgACAENgIAIAZBuAZqEIomDCYLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAELQAJDhoaADABABUwAjADBBQFBgceHRMSERwbMDAwEDALQQAhBwJAIAgQ4w0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBAUYhBwsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahC/CiAIEOMNIgRFDRcgAUEsaiEDIAQoAgBBDmsOAhcWFQsgBkHYAGogCBCfFCAGKAJcIQIgBigCWCEDIAZB9QA6ALgGIAEgAyACIAZBuAZqIgQQvBkgBCABEOUBAkAgBigCuAZBCUcEQCAEEJ8hDAELIAZBuAZqQQRyEIAjCyAGQbgGaiIEIAEQwQggBBDDICADIAIQhBwhASAAIAI2AgwgACADNgIIIAAgATYCBCAAQRI2AgAMMQsgCBC/ICEDIAgQ4w0iAkUEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwxCyACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQsgASgCLCEBIABBEzYCACAAIAE2AgQMMQsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiACNgK4BiAGQbgGaiICEL8KIAZBgQI7AIIFIAYgAS0AngM6AJQFIAYgASkBggM3APgEIAYgAUGKA2oiBC8BADsAgAUgBiABKQGOAzcAhAUgBiABKQGWAzcAjAUgBkGJBmogAUGXA2opAAA3AAAgBkGEBmogAUGSA2opAQA3AgAgBkH8BWogBCkBADcCACAGIAEpAYIDNwL0BSABQYABaiAGQfgEahDACCAGIAE2AvAFIAIgARCiKiAGQYgBaiACEN0aIAYoAowBIQQgBigCiAEEQCAAQRM2AgAgACAENgIEIAZB8AVqEIomDDELIAYgBDYC4AcgBkHwBWoQiiYCQAJAAkAgCBDjDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUEURg0BCyAGQcAGaiAIEOYLIAZB6ABqIAgQnxQgBkGQluAANgK8BiAGQTQ6ALgGIAYoAmggBigCbCAGQbgGahDrFCECIAgQ4w0iA0UNLCADKAIAQSRGDQEMLAsgASgCKCEHIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUEsaiICQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAc2ArgGIAZBuAZqEL8KAkACQCAIEOMNIgcEQCAHKAIAQQlGDQELIAZBwAZqIAgQ5gsgBkHwAGogCBCfFCAGQfjd3wA2ArwGIAZBNDoAuAYgBigCcCAGKAJ0IAZBuAZqEOsUIQIgCBDjDSIDRQ0sIAMoAgBBJEYNAQwsCyABKAIoIQcgAUElNgIoIAEgASkDQDcDeCAGQcQGaiIJIAJBCGopAgA3AgAgBkHMBmoiCiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAHNgK4BiAGQbgGaiIHEL8KIAcgAUEBEMcSIAZBgAFqIAYoArgGEIwGIAYoAoQBIQsgBigCgAFFBEAgBiALNgLwBSAHEIomAkACQCAIEOMNIgxFDQAgDCgCAEEKRw0AIAEoAighDCABQSU2AiggASABKQNANwN4IAkgAkEIaikCADcCACAKIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAw2ArgGIAcQvwogCBDjDSIHDQEMLQsgBkHABmogCBDmCyAGQfgAaiAIEJ8UIAZB0N3fADYCvAYgBkE0OgC4BiAGKAJ4IAYoAnwgBkG4BmoQ6xQhAiAIEOMNIgNFDSsgAygCAEEkRw0rIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0NIAEgASgCLBCCDAwrCwJAAkAgBygCAEEOaw4CLQEACyAIEJshGgwsCyABKAIoIQcgAUElNgIoIAEgASkDQDcDeCAGQcQGaiACQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAc2ArgGIAZBuAZqEL8KDCsLIABBEzYCACAAIAs2AgQgBkG4BmoQiiYMLQsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQkgASABKAIsEIIMDCoLIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0HIAEgASgCLBCCDAwqCyAGQZABaiAIEJ8UIAYoApQBIQIgBigCkAEhAyAGQfUAOgC4BiABIAMgAiAGQbgGaiIEELwZIAQgARDBCCAEEMMgIAMgAhCEHCEBIAAgAjYCDCAAIAM2AgggACABNgIEIABBEjYCAAwvCyAIEL8gIQsgCBDjDSICRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDC8LAkACQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGDQFBuePgAEEoQYiY4AAQ2hcACyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAI2ArgGIAFBLGohBCAGQbgGahC/CkEAIQMgCBC/ICECIAgQ4w0iBw0BDCYLIAEoAiwhASAAQRM2AgAgACABNgIEDC8LIAcoAgBBAkcNJCAHLQAIQQJHDSQgBy0ACQ0kIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAzYCuAYgBkG4BmoQvwogAiABKAJ8IgMgAiADSRshDiACIAMgAiADSxshD0EBIQMMJAsgBkG4BmogARCBASAAAn8gBigCuAYEQCAAIAYpArgGNwIEIABBFGogBkHIBmooAgA2AgAgAEEMaiAGQcAGaikCADcCAEEIDAELIAAgBigCvAY2AgRBEws2AgAMLQsgCBC/ICECIAgQ4w0iA0UEQCABKALYAiEDIAZBADoAuAYgAyADIAZBuAZqEOsUIQMgAEETNgIAIAAgAzYCBAwiCyADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASgCLCEDIABBEzYCACAAIAM2AgQMIgsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahC/CgJAAkACQAJAIAgQ4w0iA0UNACADKAIAQT5xQQ5GDQAgCBCbIUUNAQtBACELIAZBADYC8AUMAQsgBkG4BmoiAyABQQEQxxIgBkGAAmogBigCuAYQjAYgBigChAIhCyAGKAKAAg0BIAYgCzYC8AUgAxCKJgsgCBDjDSIDRQ0hAkACQCADKAIAQQ5rDgIjAAELIAEoAighBCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahC/CgwiCyAIEJshDSEgBkHABmogCBDmCyAGQfgBaiAIEJ8UIAZB0LvgADYCvAYgBkE0OgC4BiAGKAL4ASAGKAL8ASAGQbgGahDrFCEDIAgQ4w0iBEUNICAEKAIAQSRHDSAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDCALIABBEzYCACAAIAs2AgQgBkG4BmoQiiYMIQsgCBC/ICELIAgQ4w0iAkUEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwsCwJAIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABKAIsIQEgAEETNgIAIAAgATYCBAwtCyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAI2ArgGIAZBuAZqEL8KAkAgCBDjDSICBEAgAigCAEEJRg0BCyAGQcAGaiAIEOYLIAZBiAJqIAgQnxQgBkH43d8ANgK8BiAGQTQ6ALgGIAYoAogCIAYoAowCIAZBuAZqEOsUIQIgCBDjDSIDRQ0fIAMoAgBBJEYNGQwfCyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQSxqIgRBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAjYCuAYgBkG4BmoiAhC/CiACIAFBARDHEiAGQcACaiAGKAK4BhCMBiAGKALEAiEDIAYoAsACRQRAIAYgAzYCoAUgAhCKJgJAIAgQ4w0iAgRAIAIoAgBBCkYNAQsgBkHABmogCBDmCyAGQZACaiAIEJ8UIAZB0N3fADYCvAYgBkE0OgC4BiAGKAKQAiAGKAKUAiAGQbgGahDrFCECIAgQ4w0iA0UNHiADKAIAQSRGDRsMHgsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmoiAyAEQQhqIgkpAgA3AgAgBkHMBmoiByAEQRBqIgwoAgA2AgAgBiAEKQIANwK8BiAGIAI2ArgGIAZBuAZqIgIQvwogBkEANgLIBSAGQoCAgIDAADcCwAUgCBDjDSIKRQ0bIAooAgBBDUcNGyABKAIoIQogAUElNgIoIAEgASkDQDcDeCADIAkpAgA3AgAgByAMKAIANgIAIAYgBCkCADcCvAYgBiAKNgK4BiACEL8KIAZBAToA6wcgBiABLQCMAzoA6gcgBiABLQCeAzoA/AcgBiABKQGCAzcA4AcgBiABQYoDaiICLwEAOwDoByAGIAEpAY4DNwDsByAGIAEpAZYDNwD0ByAGQZEFaiABQZcDaikAADcAACAGQYwFaiABQZIDaikBADcCACAGQYQFaiACKQEANwIAIAYgASkBggM3AvwEIAFBgAFqIAZB4AdqEMAIIAYgATYC+AQgBkHwBWpBBHIhByAGQcAGaiERIAZB+AVqIRACQAJAAkADQAJAAkACQAJAAkACQCAIEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQQJGDQELIAgQ4w0iAkUNASACKAIAQQJHDQEgAi0ACEECRw0BIAItAAlBBkcNAQsgBkEANgLsBSAGQoCAgICAATcC5AUgCBDjDSICRQ0BIAIoAgBBAkcNASACLQAIQQJHDQEgAi0ACSAIEL8gIQogByAEKQIANwIAIAdBCGogCSkCADcCACAHQRBqIAwoAgA2AgAgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBiADNgLwBSAGQfAFaiIDEL8KQQJHDQIgAyABQQEQxxIgBkG4AmogBigC8AUQjAYgBigCvAIhAiAGKAK4AkUEQCAGIAI2ArAFIAMQiiYMBAsgBkHwBWoQiiYMBgsgBkH4BGoQiiYCQCAIEOMNIgJFDQAgAigCAEEORw0AIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAjYCuAYgBkG4BmoQvwogACAGKQLABTcCBCAAQQxqIAZByAVqKAIANgIAIAAgBigCoAU2AhAgAEEJNgIAIAAgCyABKAJ8IgEgASALSRs2AhggACALIAEgASALSxs2AhQMNQsgBkHABmogCBDmCyAGQaACaiAIEJ8UIAZBuNnfADYCvAYgBkE0OgC4BiAGKAKgAiAGKAKkAiAGQbgGahDrFCECAkAgCBDjDSIDRQ0AIAMoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQggwMAQtBuePgAEEoQZic4AAQ2hcACyAAQRM2AgAgACACNgIEDCMLIAgQvyAhCiAHIAQpAgA3AgAgB0EIaiAJKQIANwIAIAdBEGogDCgCADYCACABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGIAI2AvAFIAZB8AVqEL8KCwJAIA4EQCAGQagCaiAIEJ8UIAYoAqwCIQIgBigCqAIgBiASNgL4BSAGIBM2AvQFIAZBOToA8AUgAiAGQfAFahDrFCECIAgQ4w0iA0UNBSADKAIAQSRHDQUgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASABKAIsEIIMDAULQQAhAiAGQQA2ArAFIAogASgCfCIDIAMgCksbIRMgCiADIAMgCkkbIRJBASEODAELQbnj4ABBKEHInOAAENoXAAsCQCAIEOMNIgMEQCADKAIAQRNGDQELIAZB+AVqIAgQ5gsgBkGwAmogCBCfFCAGQajY3wA2AvQFIAZBNDoA8AUgBigCsAIgBigCtAIgBkHwBWoQ6xQhAiAIEOMNIgNFDQIgAygCAEEkRw0CIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0EIAEgASgCLBCCDAwCCyAHIAQpAgA3AgAgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggB0EIaiAJKQIANwIAIAdBEGogDCgCADYCACAGIAM2AvAFIAZB8AVqEL8KAkACQANAIAgQ4w0iAwRAIAZBADYCuAcgBiADNgK8ByAGQbgHahD8IwJAIAgQ4w0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBAkYNAwsCQCAIEOMNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQQZGDQMLIAgQ4w0iAwRAIAMoAgBBDkYNAwsgBkHwBWogAUEBQQAQtgIgBigC9AUhAyAGKALwBSINQRNGDQMgESAQQSgQ9gYaIAYgAzYCvAYgBiANNgK4BiAGQeQFaiAGQbgGahDeGQwBCwsgASgC2AIhAyAGQQA6APAFIAYgAyADIAZB8AVqEOsUNgK8ByAGQQE2ArgHIAZBuAdqEPwjCyAKIAEoAnwiDSAKIA1JGyEUIAYoAsgFIg8gBigCwAVGBEAgBkHABWoQ7BYLIAYoAsQFIA9BGGxqIgMgBikC5AU3AgAgAyACNgIUIAMgCiANIAogDUsbNgIQIAMgFDYCDCADQQhqIAZB7AVqKAIANgIAIAYgD0EBajYCyAUMAQsLIAMhAgsgBkGwBWoQ9CcLIAZB5AVqEM8mIABBEzYCACAAIAI2AgQgBkH4BGoQiiYMHQtBuePgAEEoQdic4AAQ2hcACyAAQRM2AgAgACADNgIEIAZBuAZqEIomDCwLQbnj4ABBKEH4m+AAENoXAAtBuePgAEEoQeib4AAQ2hcAC0G54+AAQShB2JvgABDaFwALQbnj4ABBKEGoluAAENoXAAtBuePgAEEoQYCW4AAQ2hcAC0G54+AAQShB8JXgABDaFwALQbnj4ABBKEHgleAAENoXAAtBuePgAEEoQaCd4AAQ2hcACyALQQFxDSACQAJAAkACQAJAAkAgBC0ACSIEQQVrDgQBJiYCAAsgBEENRg0CIARBEkcgB0ECR3INJSAIEMYSIgNFDSUgAygCAEECRw0lIAgQniENJSAIEL8gIQIgBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAEoAighAyABQSU2AiggASABKQNANwN4IAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahC/CiAGQegDaiABIAIQnQIgBigC7AMhASAGKALoAw0DIAAgATYCDCAAQQQ2AgggAEERNgIADCgLIAdBAkcNJCAIEMYSIgNFDSQgAygCAEECRw0kIAgQniENJCAIEL8gIQIgBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAEoAighAyABQSU2AiggASABKQNANwN4IAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahC/CiAGQdADaiABIAIQsgQgBigC1AMhASAGKALQA0UEQCAAIAE2AgwgAEEFNgIIIABBETYCAAwoCyAAQRM2AgAgACABNgIEDCcLIANFDSMgBkHYA2ogASACQQAQlQIgBigC3AMhAyAGKALYAw0CIANFDSMgACADNgIMIABBAzYCCCAAQRE2AgAMJgsgB0ECRw0iIAgQxhIiA0UNIiADKAIAQQJHDSIgCBCeIQ0iIAgQvyAhAiAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEL8KIAZB4ANqIAEgAkEAEHwgBigC5AMhASAGKALgA0UEQCAAIAE2AgwgAEEGNgIIIABBETYCAAwmCyAAQRM2AgAgACABNgIEDCULIABBEzYCACAAIAE2AgQMJAsgAEETNgIAIAAgAzYCBAwjCyADRQRAIAZByANqIAgQnxQgBigCzAMhAyAGKALIAyEEIAZBAToAuAYgASAEIAMgBkG4BmoQvBkLIAZB8AVqIgMgASACIAIgBUEAEIQEIAACfyAGKALwBUEIRwRAIAZBvAZqIANBKBD2BhogAEEEaiAGQbgGakEsEPYGGkERDAELIAAgBigC9AU2AgRBEws2AgAMIwsgA0UNHiAGQfACaiABQQAQhAEgBigC9AIhASAGKALwAkUEQCAAIAE2AgwgAEECNgIIIABBETYCAAwiCyAAQRM2AgAgACABNgIEDCELIANFDR0gCBDGEiIDRQ0dIAMQggYQyhBFDR0gBkHoAmogAUEAEIQBIAYoAuwCIQEgBigC6AJFBEAgACABNgIMIABBAjYCCCAAQRE2AgAMIQsgAEETNgIAIAAgATYCBAwgCyAGQeACaiABQQAQhAEgBigC5AIhASAGKALgAgRAIABBEzYCACAAIAE2AgQMIAsgACABNgIMIABBAjYCCCAAQRE2AgAMHwsgA0UEQCAGQfABaiAIEJ8UIAYoAvQBIQIgBigC8AEhAyAGQQE6ALgGIAEgAyACIAZBuAZqELwZCyAGQcAGaiAFQQhqKAIANgIAIAYgBSkCADcDuAYgBkHwBWoiAiABIAZBuAZqIgEQoCkgAAJ/IAYoAvAFQQhHBEAgBkG8BmogAkEoEPYGGiAAQQRqIAFBLBD2BhpBEQwBCyAAIAYoAvQFNgIEQRMLNgIADB8LIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQvwoCQAJAAkAgCBDjDSIDRQ0AAkACQCADKAIAQQ5rDgICAAELIAEoAighBCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahC/CgwBCyAIEJshDQAgBkHABmogCBDmCyAGQeAAaiAIEJ8UIAZB0LvgADYCvAYgBkE0OgC4BiAGKAJgIAYoAmQgBkG4BmoQ6xQhAiAIEOMNIgNFDQIgAygCAEEkRg0BDAILIABBAjYCACAAIAIgASgCfCIBIAEgAkkbNgIIIAAgAiABIAEgAksbNgIEDB8LIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEgASgCLBCCDAwBC0G54+AAQShB0J3gABDaFwALIABBEzYCACAAIAI2AgQMHQsgCBCbIQ0BIAZBuAZqIAEgAS0AigNBf3NBAXEgAS0AiQNBf3NBAXEQ+AEgBigCuAYhBAJAAkAgBi0AzAYiC0ECRwRAIAZBgAVqIgogBkHIBmooAgA2AgAgBkHiB2ogBkHPBmotAAA6AAAgBiAGKQPABjcD+AQgBiAGLwDNBjsB4AcgBigCvAYhCQJAAkAgCBDjDSIMRQ0AAkACQCAMKAIAQQ5rDgICAAELIAEoAighDCABQSU2AiggASABKQNANwN4IAZBxAZqIANBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgDDYCuAYgBkG4BmoQvwoMAQsgCBCbIUUNAQsgBkGABmogCigCADYCACAGQYcGaiAGQeIHai0AADoAACAGIAk2AvQFIAYgBDYC8AUgBiAGKQP4BDcD+AUgBiALOgCEBiAGIAYvAeAHOwCFBkEADAYLIAZBwAZqIAgQ5gsgBkHQAGogCBCfFCAGQdC74AA2ArwGIAZBNDoAuAYgBigCUCAGKAJUIAZBuAZqEOsUIQIgCBDjDSIDRQ0CIAMoAgBBJEcNAiABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABIAEoAiwQggwMAgsgAEETNgIAIAAgBDYCBAweC0G54+AAQShBwJ3gABDaFwALIABBEzYCACAAIAI2AgQgBK0gCa1CIIaEIAsQoyMMHAsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahC/CgsgBkECOgCEBkEBCyELIAIgASgCfCIEIAIgBEkbIQMgAiAEIAIgBEsbIQICfwJAIAdFBEAgAS0AjANBAXFFBEAgBkGOAToAuAYgASADIAIgBkG4BmoQvBkMAgsgCw0BIAZB8AVqIAEoAgwgASgCEBCZGA0BIAZBigE6ALgGIAEgAyACIAZBuAZqELwZDAELAkACQCALRQRAIAZB8AVqIAEoAgwgASgCEBCZGEUNAQsgAS0AjQNBAXENASAGQYgBOgC4BiABIAMgAiAGQbgGahC8GQwBCyAGQY8BOgC4BiABIAMgAiAGQbgGahC8GQtBBgwBC0EHCyEBIAAgAjYCDCAAIAM2AgggACABNgIAIAAgBikD8AU3AxAgAEEYaiAGQfgFaikDADcDACAAQSBqIAZBgAZqKQMANwMADBkLIANFDRUgCBDGEiIDRQ0VIAMoAgBBAkcNFSADLQAIDRUgAy0ACUEIRw0VIAgQ4w0iA0UEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwZCwJAIAMoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABKAIsIQEgAEETNgIAIAAgATYCBAwaCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEL8KIAZByABqIAEgAkEBEJUCIAYoAkwhAyAGKAJIRQ0VIABBEzYCACAAIAM2AgQMGQtBuePgAEEoQbCd4AAQ2hcACyABLQD4AkECRgRAIAZBwANqIAgQnxQgBigCxAMhAiAGKALAAyEDIAZBqwE6ALgGIAEgAyACIAZBuAZqELwZCyAGQbgDaiAIEJ8UIAYoArwDIQIgBigCuAMhAyAGQcoAOgC4BiABIAMgAiAGQbgGaiICELYeIAgQvyAhAyAIEOMNIgRFBEAgASgC2AIhASAGQQA6ALgGIAEgASACEOsUIQEgAEETNgIAIAAgATYCBAwYCwJAAkACQAJAAkACQAJAIAQoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABKAIsIQEgAEETNgIAIAAgATYCBAwfCyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAI2ArgGIAZBuAZqEL8KAkACQCAIEOMNIgIEQCACKAIAQQlGDQELIAZBwAZqIAgQ5gsgBkGYA2ogCBCfFCAGQfjd3wA2ArwGIAZBNDoAuAYgBigCmAMgBigCnAMgBkG4BmoQ6xQhAiAIEOMNIgNFDQggAygCAEEkRg0BDAgLIAEoAighBCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAENgK4BiAGQbgGaiIHEL8KIAcgAUEBEMcSIAZBsANqIAYoArgGEIwGIAYoArQDIQQgBigCsAMNAiAGIAQ2AuAHIAcQiiYCQAJAIAgQ4w0iBwRAIAcoAgBBCkYNAQsgBkHABmogCBDmCyAGQaADaiAIEJ8UIAZB0N3fADYCvAYgBkE0OgC4BiAGKAKgAyAGKAKkAyAGQbgGahDrFCECIAgQ4w0iA0UNByADKAIAQSRGDQEMBwsgASgCKCEHIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAHNgK4BiAGQbgGaiICEL8KIAZBAToAiwUgBiABLQCUAzoAigUgBiABLQCeAzoAlAUgBiABKQGCAzcA+AQgBiABQYoDaiIHKQEANwCABSAGIAFBkgNqIgsvAQA7AIgFIAYgASkBlgM3AIwFIAZBiQZqIAFBlwNqKQAANwAAIAZBhAZqIAspAQA3AgAgBkH8BWogBykBADcCACAGIAEpAYIDNwL0BSABQYABaiAGQfgEahDACCAGIAE2AvAFIAIgARCiKiAGQagDaiACEN0aIAYoAqwDIQIgBigCqANFBEAgBkHwBWoQiiYgACACNgIIIAAgBDYCBCAAQQM2AgAgACADIAEoAnwiASABIANJGzYCECAAIAMgASABIANLGzYCDAwhCyAAQRM2AgAgACACNgIEIAZB8AVqEIomDAcLIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0DIAEgASgCLBCCDAwFCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQggwMBgtBuePgAEEoQYiZ4AAQ2hcACyAAQRM2AgAgACAENgIEIAZBuAZqEIomDBwLQbnj4ABBKEGYmeAAENoXAAtBuePgAEEoQaiZ4AAQ2hcACyAAQRM2AgAgACACNgIECyAGQeAHahCYKQwYCyAAQRM2AgAgACACNgIEDBcLIAgQvyAhAyAIEOMNIgJFBEAgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMFwsCQAJAAkACQAJAAkACQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBEzYCACAAIAE2AgQMHgsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiACNgK4BiAGQbgGahC/CgJAAkAgCBDjDSICBEAgAigCAEEJRg0BCyAGQcAGaiAIEOYLIAZB+AJqIAgQnxQgBkH43d8ANgK8BiAGQTQ6ALgGIAYoAvgCIAYoAvwCIAZBuAZqEOsUIQIgCBDjDSIDRQ0IIAMoAgBBJEYNAQwICyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQSxqIgJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgBDYCuAYgBkG4BmoiBxC/CiAHIAFBARDHEiAGQZADaiAGKAK4BhCMBiAGKAKUAyEEIAYoApADDQIgBiAENgLgByAHEIomAkACQCAIEOMNIgcEQCAHKAIAQQpGDQELIAZBwAZqIAgQ5gsgBkGAA2ogCBCfFCAGQdDd3wA2ArwGIAZBNDoAuAYgBigCgAMgBigChAMgBkG4BmoQ6xQhAiAIEOMNIgNFDQcgAygCAEEkRg0BDAcLIAEoAighByABQSU2AiggASABKQNANwN4IAZBxAZqIAJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgBzYCuAYgBkG4BmoiAhC/CiAGQYECOwCCBSAGIAEtAJ4DOgCUBSAGIAEpAYIDNwD4BCAGIAFBigNqIgcvAQA7AIAFIAYgASkBjgM3AIQFIAYgASkBlgM3AIwFIAZBiQZqIAFBlwNqKQAANwAAIAZBhAZqIAFBkgNqKQEANwIAIAZB/AVqIAcpAQA3AgAgBiABKQGCAzcC9AUgAUGAAWogBkH4BGoQwAggBiABNgLwBSACIAEQoiogBkGIA2ogAhDdGiAGKAKMAyECIAYoAogDRQRAIAZB8AVqEIomIAAgAjYCCCAAIAQ2AgQgAEEMNgIAIAAgAyABKAJ8IgEgASADSRs2AhAgACADIAEgASADSxs2AgwMIAsgAEETNgIAIAAgAjYCBCAGQfAFahCKJgwHCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQggwMBQsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIIMDAYLQbnj4ABBKEGYm+AAENoXAAsgAEETNgIAIAAgBDYCBCAGQbgGahCKJgwbC0G54+AAQShBqJvgABDaFwALQbnj4ABBKEG4m+AAENoXAAsgAEETNgIAIAAgAjYCBAsgBkHgB2oQmCkMFwsgAEETNgIAIAAgAjYCBAwWCyAIEL8gIQIgCBDjDSIDRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDBYLAkACQAJAAkACQCADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBEzYCACAAIAE2AgQMGwsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiADNgK4BiAGQbgGaiIDEL8KIAMgAUEAEJIGIAYoArwGIQQgBigCuAYiB0GAgICAeEYNASAGQYgFaiAGQcgGaikCADcCACAGIAYpAsAGNwKABSAGIAQ2AvwEIAYgBzYC+AQgCBC/ICEEIAMgARDlASAGKAK8BiEHIAYoArgGIgtBCUcEQCAGQfgFaiAGQcAGakHAABD2BhogBiAHNgL0BSAGIAs2AvAFIAMgARDBCCAGKAK8BiEHIAYoArgGIglBgYCAgHhGDQMgBkHoB2ogBkHIBmopAgA3AwAgBiAGKQLABjcD4AcgCUGAgICAeEcgC0EIR3INBSAGQfUAOgC4BiABIAQgBCADELwZDAULIABBEzYCACAAIAc2AgQMAwtBuePgAEEoQdiY4AAQ2hcACyAAQRM2AgAgACAENgIEDBgLIABBEzYCACAAIAc2AgQgBkHwBWoQnyELIAZB+ARqEM8mDBYLIAEoAnwhASAGQZAHaiAGQYgFaikCADcDACAGQYgHaiAGQYAFaikCADcDACAGIAYpAvgENwOAByAGQbgGaiIDIAZB8AVqQcgAEPYGGiAGQagHaiAGQegHaikDADcDACAGIAIgASABIAJJGzYCtAcgBiACIAEgASACSxs2ArAHIAYgBzYCnAcgBiAJNgKYByAGIAYpA+AHNwOgByAAIAMQ/Ck2AgQgAEELNgIADBULIAgQvyAhAiAIEOMNIgNFBEAgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMFQsCQAJAAkACQAJAAkACQCADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBEzYCACAAIAE2AgQMHAsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiADNgK4BiAGQbgGaiIEEL8KIAgQmyFFBEAgBCABQQEQxxIgBkHYAmogBigCuAYQjAYgBigC3AIhAyAGKALYAg0CIAYgAzYC8AUgBBCKJiAIEOMNIgRFDQcCQAJAIAQoAgBBDmsOAgkAAQsgASgCKCEHIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUEsaiIEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAc2ArgGIAZBuAZqEL8KDAgLIAgQmyENByAGQcAGaiAIEOYLIAZB0AJqIAgQnxQgBkHQu+AANgK8BiAGQTQ6ALgGIAYoAtACIAYoAtQCIAZBuAZqEOsUIQIgCBDjDSIDRQ0GIAMoAgBBJEcNBiABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQggwMBgsgBkHIAmogCBCfFCAGKALMAiECIAYoAsgCIAZBLjoAuAYgAiAGQbgGahDrFCECIAgQ4w0iA0UNBCADKAIAQSRHDQQgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIIMDAQLQbnj4ABBKEHYmuAAENoXAAsgAEETNgIAIAAgAzYCBCAGQbgGahCKJgwZC0G54+AAQShB6JrgABDaFwALQbnj4ABBKEH4muAAENoXAAsgAEETNgIAIAAgAjYCBAwWCyAAQRM2AgAgACACNgIEIAZB8AVqEJgpDBULIAAgAzYCBCAAQQo2AgAgACACIAEoAnwiASABIAJJGzYCDCAAIAIgASABIAJLGzYCCAwUCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQggwMBgtBuePgAEEoQbic4AAQ2hcACyABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQggwMAwtBuePgAEEoQaic4AAQ2hcACyAGQcAGaiAIEOYLIAZBmAJqIAgQnxQgBkHg2d8ANgK8BiAGQTQ6ALgGIAYoApgCIAYoApwCIAZBuAZqEOsUIQICQCAIEOMNIgNFDQAgAygCAEEkRw0AIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEgASgCLBCCDAwBC0G54+AAQShBiJzgABDaFwALIABBEzYCACAAIAI2AgQLIAZBwAVqEOYmDAELIABBEzYCACAAIAI2AgQLIAZBoAVqEJgpDA4LIABBEzYCACAAIAI2AgQMDQsgAEETNgIAIAAgAzYCBCAGQfAFahD0JwwBCyAAIAs2AgwgAEEENgIAIAAgAiABKAJ8IgMgAiADSxs2AgggACACIAMgAiADSRs2AgQLIAEtAJUDQQFxDQogAS0A+AJBAkcEQCABLQD/AkEBcQ0LCyABKAJ8IQAgBkHLADoAuAYgASACIAAgACACSxsgAiAAIAAgAkkbIAZBuAZqELwZDAoLAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAgQ4w0iAgRAIAIoAgBBCUYNAQsgBkHABmogCBDmCyAGQZgBaiAIEJ8UIAZB+N3fADYCvAYgBkE0OgC4BiAGKAKYASAGKAKcASAGQbgGahDrFCECIAgQ4w0iA0UNESADKAIAQSRGDQEMEQsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiACNgK4BiAGQbgGaiICEL8KIAEoAYIDIQcgBkHNBmogAUGXA2oiCSkAADcAACAGQcYGaiABQZADaikBADcBACAGIAEpAYgDNwG+BiAGQYQFaiABQYoDaikBADcCACAGQYwFaiABQZIDaikBADcCACAGQZEFaiAJKQAANwAAIAYgAzoAvQYgBkEBOgC8BiAGIAc2ArgGIAYgASkBggM3AvwEIAFBgAFqIhEgAhDACCAGIAE2AvgEAkACQAJAIAgQ4w0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBE0YNAQsCQCAIEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRFGDQELAkAgCBDjDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUESRw0AIAgQxhIiAkUNACACEIIGEMoQDQELIAgQ4w0iAkUNASACKAIAQQ9HDQEgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiACNgK4BiAGQbgGahC/CiAGQbAFaiABQQIgBhCJBAwPCyAGQegBaiABQQEQhAEgBigC7AEhAiAGKALoAQRAIAZBBTYCsAUgBiACNgK0BQwQCwJAAkACQCAIEOMNIgdFDQAgBygCAEECRw0AIActAAgNACAHLQAJQQRGDQELAkAgCBDjDSIHRQ0AIAcoAgBBAkcNACAHLQAIQQJHDQAgBy0ACUEeRg0BCyAIEOMNIgdFDQEgBygCAEEPRw0BIAEoAighByABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgBzYCuAYgBkG4BmoQvwogBkGwBWogAUEAIAIQiQQMEAsgAkEIaigCACIHQQFGDQ0gAigCBCINIAdBOGxqIQdBACEJQQEhDANAAkAgCUEBcQRAIAcgDUYNEQwBCyAHIA1rQThuIAxNDRAgDSAMQThsaiENCyAGQeABaiANEIwMIAYoAuQBIQkgBigC4AEhCiAGQcwAOgC4BiABIAogCSAGQbgGahC8GSANQThqIQ1BACEMQQEhCQwACwALIAZBwAZqIAgQ5gsgBkHIAWogCBCfFCAGQdC74AA2ArwGIAZBNDoAuAYgBigCyAEgBigCzAEgBkG4BmoQ6xQhAyAIEOMNIgRFDQsgBCgCAEEkRw0LIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0CIAEgASgCLBCCDAwLCyAIEL8gIQcgBkG4BmoiCSABQQAQxxIgBkHAAWogBigCuAYQjAYgBigCxAEhAiAGKALAAUUEQCAGIAI2AswHIAkQiiYCQAJAIAEtAPgCQQJHBEAgAS0AgQNBAXFFDQELIAJB+LTgAEEFEO8eIgxFBEAgAigCAEEiRw0BIAIoAgRB+LTgAEEFEO8eRQ0BCwJAIAgQ4w0iCUUNACAJKAIAQQJHDQAgCS0ACA0AIAktAAlBBEYNAQsCQCAIEMYSIglFDQAgCSgCAEECRw0AIAktAAgNACAJLQAJQQRGDQILIAgQxhIiCUUNACAJKAIAQQJHDQAgCS0ACEECRw0AIAktAAlBHkYNAQsCQAJAAkACQCAIEOMNIgdFDQAgBygCAEECRw0AIActAAgNACAHLQAJQQRGDQELAkAgCBDjDSIHRQ0AIAcoAgBBAkcNACAHLQAIQQJHDQAgBy0ACUEeRg0BCyAIEOMNIgdFDQEgBygCAEEPRw0BIAEoAighByABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgBzYCuAYgBkG4BmoQvwogBkGwBWogAUEBIAIQiQQMEgtBASEMAkAgCBDjDSIHRQ0AIAcoAgBBAkcNACAHLQAIQQJHDQAgBy0ACUEeRyEMCyAGQbgGaiABQQIgAhBjIAYoArwGIQkgBigCuAYiB0EHRg0HIAZB+AdqIgogBkHYBmopAwAiFTcDACAGQfAHaiINIAZB0AZqKQMAIhY3AwAgBkHoB2oiECAGQcgGaikDACIXNwMAIAZBgAZqIBc3AwAgBkGIBmogFjcDACAGQZAGaiAVNwMAIAYgBikDwAYiFTcD4AcgBiAJNgL0BSAGIAc2AvAFIAYgFTcD+AUgAS0A+AJBAkcgDHJFDQEMDQsgBkHABmogCBDmCyAGQbABaiAIEJ8UIAZB0LvgADYCvAYgBkE0OgC4BiAGKAKwASAGKAK0ASAGQbgGahDrFCECIAgQ4w0iB0UNCiAHKAIAQSRHDQogASABKQNANwN4IAEoAiggAUElNgIoQSRHDQUgASABKAIsEIIMDAoLIAdFIAdBBkZyDQsgBkG4AWogBkHwBWoQjAwgBigCvAEhAiAGKAK4ASEMIAZBsAE6ALgGIAEgDCACIAZBuAZqELwZDAsLIAZBuAZqIg0gAUEAEJgEIAYoArgGIQogBi0AzAYiEEECRg0FIAZBwAdqIhIgBkHEBmopAgA3AwAgBiAGKQK8BjcDuAcgBiAGKQDNBjcD0AcgBiAGQdQGaigAADYA1wcgASgCfCEJQThBCBCMICICIAo2AgggAkEANgIAIAIgEDoAHCACQQA6ADQgAkEANgIwIAIgBikDuAc3AgwgAkEUaiASKQMANwIAIAIgBikD0Ac3AB0gAkEkaiAGKADXBzYAACACIAcgCSAHIAlLGyIKNgIsIAIgByAJIAcgCUkbIgk2AihBGEEEEIwgIgcgDEEBczoAFCAHIAo2AhAgByAJNgIMIAdBATYCCCAHIAI2AgQgB0EBNgIAIAgQ4w0iAkUEQCABKALYAiECIAZBADoAuAYgAiACIA0Q6xQhAgwICwJAIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABKAIsIQIMCQsgBkGwBWogAUEBIAcQugYMCgtBuePgAEEoQfiX4AAQ2hcACyAGQQU2ArAFIAYgAjYCtAUgBkG4BmoQiiYMDQsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQQgASABKAIsEIIMDA8LQbnj4ABBKEHYl+AAENoXAAtBuePgAEEoQeiX4AAQ2hcACyAGIAk2ArQFIAZBBTYCsAUMCQsgBiAKNgK0BSAGQQU2ArAFDAMLQbnj4ABBKEHImOAAENoXAAsgBkEFNgKwBSAGIAI2ArQFIAcQwSgMAQsgBkEFNgKwBSAGIAI2ArQFCyAGQcwHahCYKQwEC0EoQQgQjCAiAiAJNgIEIAIgBzYCACACIAYpA+AHNwMIIAJBEGogECkDADcDACACQRhqIA0pAwA3AwAgAkEgaiAKKQMANwMAIAZBsAVqIAFBAiACELoGDAMLIAZBBTYCsAUgBiADNgK0BSACEPgqDAMLAkAgAS0AhQNBAXFFBEAgCBDjDSIHRQ0BIAcoAgBBAkcNASAHLQAIDQEgBy0ACUEERw0BCyACQQRqIgcoAgAgAkEIaiIJKAIAQZiX4AAQkyMoAjBFDQAgBkHYAWogBygCACAJKAIAQaiX4AAQkyMQjAwgBigC3AEhByAGKALYASEJIAZBzQA6ALgGIAEgCSAHIAZBuAZqELwZCyABLQD4AkECRw0AIAJBBGooAgAgAkEIaigCAEG4l+AAEJMjIgcoAgAiCUEDSw0AIAcgCUECdEHw6OMAaigCAGooAgBFDQAgBkHQAWogAkEEaigCACACQQhqKAIAQciX4AAQkyMQjAwgBigC1AEhByAGKALQASEJIAZBrwE6ALgGIAEgCSAHIAZBuAZqELwZCyAGQbAFaiABQQAgAhC6BgsgBigCtAUiDSAGKAKwBSICQQVGDQEaIAYgBikCuAU3AqgFIAYgDTYCpAUgBiACNgKgBSAGQfgEahCKJgJAAkACQAJ/AkACQAJAAkACQAJAAkACQCAIEOMNIgcEQCAHKAIAQQpGDQELIAZBwAZqIAgQ5gsgBkGgAWogCBCfFCAGQdDd3wA2ArwGIAZBNDoAuAYgBigCoAEgBigCpAEgBkG4BmoQ6xQhAyAIEOMNIgRFDQogBCgCAEEkRg0BDAoLIAEoAighByABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgBzYCuAYgBkG4BmoiBxC/CiAGQYECOwDKBSAGIAEtAJ4DOgDcBSAGIAEpAYIDNwDABSAGIAEvAYoDOwDIBSAGIAEpAY4DNwDMBSAGIAEpAZYDNwDUBSAGQYkGaiABQYIDaiIEQRVqKQAANwAAIAZBhAZqIARBEGopAQA3AgAgBkH8BWogBEEIaikBADcCACAGIAQpAQA3AvQFIBEgBkHABWoQwAggBiABNgLwBSAHIAEQoiogBkGoAWogBxDdGiAGKAKsASEHIAYoAqgBRQRAIAYgBzYCuAcgBkHwBWoQiiYgCyABKAJ8IgQgBCALSxshCSALIAQgBCALSRshCwJAAkACQCACQQJrQQAgAkEDa0ECSRtBAWsOAgIBAAsgBiANNgL0BSAGIAI2AvAFIAYgBigCqAUiBDYC4AcgBiAGKAKsBSIMNgL4BCADRQRAQQ4hASAHIQogCSEHIAshCSAEIQsgDCEDDAkLIAZB0gA6ALgGIA4gDyAGQbgGahDrFCECIAgQ4w0iA0UNCSADKAIAQSRHDQkgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQQgASABKAIsEIIMDAkLQRAhASAGKAKsBSEKIAYoAqgFIQ0gBigCpAUhAgwHCyAGIAYoAqgFIg02AvQFIAYgBigCpAUiAjYC8AUgBiAGKAKsBSIKNgL4BCADRQRAQQ8hAQwHCyAGQdIAOgC4BiAOIA8gBkG4BmoQ6xQhAiAIEOMNIgNFDQUgAygCAEEkRw0FIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0DIAEgASgCLBCCDAwFCyAAQRM2AgAgACAHNgIEIAZB8AVqEIomQQEhAEEBIQQMCAsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDAgLQbnj4ABBKEGYmOAAENoXAAtBuePgAEEoQaiY4AAQ2hcAC0G54+AAQShBuJjgABDaFwALIABBEzYCACAAIAI2AgQgBkH4BGoQmCkgBkHwBWoQmh1BACEEQQEMAgsgACADNgIcIAAgCzYCGCAAIAk2AhQgACAHNgIQIAAgCjYCDCAAIA02AgggACACNgIEIAAgATYCAAwRCyAAQRM2AgAgACACNgIEIAZB+ARqEPQnIAZB4AdqEPQnIAZB8AVqEJsdQQEhBEEACyEAIAZBuAdqENEGCyAGKAKgBSECDAELIABBEzYCACAAIAM2AgRBASEAQQEhBAsgBkGkBWohAQJAAkACQCACQQJrQQAgAkEDa0ECSRtBAWsOAgIAAQsgARCaHSAGQawFahCYKQwOCyAARQ0NIAZBoAVqEJsdIAZBqAVqEPQnIAZBrAVqEPQnDA0LIARFDQwgARCaHSAGQawFahCYKQwMCyAGKAK0BQshASAAQRM2AgAgACABNgIEIAZB+ARqEIomDAoLIABBEzYCACAAIAI2AgQMCQsgAEETNgIAIAAgAjYCBCAGQfAFahCYKQwDCyAAIAQ2AgggACALNgIEIABBDTYCACAAIAMgASgCfCIBIAEgA0kbNgIQIAAgAyABIAEgA0sbNgIMDAcLIABBEzYCACAAIAI2AgQMAQsgAEETNgIAIAAgAjYCBAsgBkHgB2oQ0QYMBAsgAw0BCyAIEOMNIgNFDQEgAygCAEEPRw0BIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQvwogAEEBNgIAIAAgAiABKAJ8IgEgASACSRs2AgggACACIAEgASACSxs2AgQMAgsgACADNgIMIABBAzYCCCAAQRE2AgAMAQsCQCAIEOMNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQJHDQAgCBDGEiIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUELRw0AIAgQniENACAGQfAFaiICIAEgBRDEByAAAn8gBigC8AVBCEcEQCAGQbwGaiACQSgQ9gYaIABBBGogBkG4BmpBLBD2BhpBEQwBCyAAIAYoAvQFNgIEQRMLNgIADAILIAZBuAZqIgQgAUEBEMcSIAZBQGsgBigCuAYQjAYgBigCRCEDAkACQAJAAkACQCAGKAJARQRAIAQQiiYgAyIHKAIAIglBGkcNAyAGQcgEaiILIANBGGopAwA3AwAgBkHABGoiDCADQRBqKQMANwMAIAYgAykDCDcDuAQgCBDjDSIHRQ0CIAcoAgBBE0cNAiABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAI2ArgGIAQQvwogBkEBOgCDBSAGQQA6AJQFIAYgAS0AjAM6AIIFIAYgASkBggM3APgEIAYgAUGKA2oiAi8BADsAgAUgBiABKQGOAzcAhAUgBiABKQGWAzcAjAUgBkGJBmogAUGXA2opAAA3AAAgBkGEBmogAUGSA2opAQA3AgAgBkH8BWogAikBADcCACAGIAEpAYIDNwL0BSABQYABaiAGQfgEahDACCAGIAE2AvAFIAZB0AVqIAspAwA3AwAgBkHIBWogDCkDACIVNwMAIAYgBikDuAQ3A8AFIAZBADYCwAcgBkKAgICAwAA3ArgHIAEoAgwiByABKAIQQQN0aiECIBWnIQ1BBCEJDAELIABBEzYCACAAIAM2AgQgBkG4BmoQiiYMBQsDQAJAIAIgB0cEQCAGQcAFaiAHEK8LIAdBCGohBw0BDAILIAFBCGohDyAGKQPABRDaGiEVIAEoAhAiByABKAIIRgRAIA8Q9RYLIAEoAgwgB0EDdGogFTcDACABIAdBAWo2AhACQAJAAn8CQAJAAkACQCAIEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQQtGDQELIAZBuAZqIAEQoiogBigCvAYhByAGKAK4BiILQRNGDQIgBkHoB2ogBkHQBmopAwA3AwAgBkHwB2ogBkHYBmopAwA3AwAgBiAGKQPIBjcD4AcgBigCxAYhBCAGKALABiEJIAYoAuAGIQwgBigC5AYhAgwBCyAGQQA2AugHIAZCgICAgMAANwLgByAGQbgGaiIIIAEgBkHgB2oQoCkgBigCvAYiBCAGKAK4BiIJQQhGDQIaIAZB8AdqIAZB0AZqKQMANwMAIAZB6AdqIAZByAZqKQMANwMAIAYgBikDwAY3A+AHIAYoAtgGIQwgBigC3AYhAkERIQsCQCAJQQFHDQAgAS0AhQNBAXEEQCAMKAI0IQcgDCgCMCEJIAZBzwA6ALgGIAEgCSAHIAgQvBkLIAwtAERFBEBBASEJIAwtAEVBAUcNAQsgDCgCNCEHIAwoAjAhCSAGQc4AOgC4BiABIAkgByAGQbgGahC8GUEBIQkLC0EwQQgQjCAiCCAENgIMIAggCTYCCCAIIAc2AgQgCCALNgIAIAggAjYCLCAIIAw2AiggCCAGKQPgBzcDECAIQRhqIAZB6AdqKQMANwMAIAhBIGogBkHwB2opAwA3AwAgBigCuAchAiAGIAYoArwHIgQgDkECdGoiBzYCxAYgBiACNgLABiAGIAQ2ArgGDAILIAcLIQEgAEETNgIAIAAgATYCBCAGKAK8ByIAIA4Q8h4gBigCuAcgABC7KSAGKQPABRDWGgwBCwNAIAoEQCABIAQoAgAQggwgCkEEayEKIARBBGohBAwBCwsgBiAHNgK8BiAGQbgGahC6FyABKAIQQQN0IQQgASgCDCEHQQAhCwJAA0AgBEUNASAHIAZBwAVqEK8LRQRAIARBCGshBCALQQFqIQsgB0EIaiEHDAELCyAPIAsQ6RIQ1hoLIAAgBikDwAU3AxAgACAINgIoIABBBTYCACAAQRhqIAZByAVqKQMANwMAIABBIGogBkHQBWopAwA3AwAgACANIAEoAnwiASABIA1JGzYCDCAAIA0gASABIA1LGzYCCAsgBkHwBWoQiiZBASELDAQLIAYoAswFIQQgBigCyAUgBikDwAUQ2hohFSAGQcQAOgC4BiAGIBU3A8AGIAQgBkG4BmoQ6xQhBCAGKAK4ByAORgRAIAZBuAdqEOUWIAYoArwHIQkLIAkgDkECdGogBDYCACAGIA5BAWoiDjYCwAcgCkEEaiEKDAALAAsgBkG4BGoQ7RQhBwsgBiAHNgKwBUEBIQsCQAJAIAcoAgAiBEEaRgR/IAZBOGogB0EIahCRDAJAAkACQAJAAkACQAJAIAYoAjggBigCPEHKruAAQQkQ7ykEQCAIEJshDQELIAEtAPgCQQJHIgtFDQEMBgsgBygCFCEEIAcoAhAhCyAHKQMIENoaIRUgBkEnOgC4BiAGIBU3A8AGIAEgCyAEIAZBuAZqELYeIAgQ4w0iBA0BDAQLIAcoAhAhBCAHKQIUIRUgBykDCBDaGiEWIAYgFTcCzAUgBiAENgLIBSAGIBY3A8AFIAYgBy0AHDoA1AUgBkEwaiAGQcAFahCRDAJAAkACQCAGKAIwIgogBigCNCIMQYqt4ABBBxDNH0UEQCAKIAxB763gAEEGEM0fRQRAIAZB+ARqIAEgBCAFIAYpA8AFQQAQvwEMAgsCQAJAIAgQ4w0iCgRAIAooAgBBDUYNAQsgBkEINgL4BCAGKQPABRDWGgwBCyAGQfgHaiIKIAZB0AVqKQMANwMAIAZB8AdqIgwgBkHIBWopAwA3AwAgBiAGKQPABTcD6AcgBkIANwPgByAGQbgHaiABEKwGIAYoArgHIg1BgICAgHhGDQYgBkHkBmogBkHEB2opAgA3AgAgBkHABmogBkHoB2opAwA3AwAgBkHIBmogDCkDADcDACAGQdAGaiAKKQMANwMAIAYgBikCvAc3AtwGIAYgBikD4Ac3A7gGIAZBgAI7AYgHIAYgDTYC2AYgBkECOgD9BiAGIAQgASgCfCIKIAQgCksbNgKEByAGIAQgCiAEIApJGzYCgAcgBiAGQbgGahD9KTYC/AQgBkEHNgL4BAsgBRDXJgwBCyAGQbgGaiABIAQgBRB0IAYoArwGIQogBigCuAYiBEEJRg0BIAZB+AdqIgwgBkHYBmopAwA3AwAgBkHwB2oiDSAGQdAGaikDADcDACAGQegHaiIOIAZByAZqKQMANwMAIAYgBikDwAY3A+AHAkAgBEEIRwRAIAZBgAZqIA4pAwA3AwAgBkGIBmogDSkDADcDACAGQZAGaiAMKQMANwMAIAYgCjYC9AUgBiAENgLwBSAGIAYpA+AHNwP4BSAGQfgEaiAGQfAFahD8CwwBCyAGQQg2AvgECyAGKQPABRDWGgsgBigC/AQhCiAGKAL4BCIEQQlGDQQgBkHwBGogBkGYBWopAwA3AwAgBkHoBGogBkGQBWopAwA3AwAgBkHgBGogBkGIBWopAwA3AwAgBiAGKQOABTcD2AQgBiAKNgLUBCAGIAQ2AtAEIARBCEYNASAGQbwGaiAGQdAEakEoEPYGGiAAQRE2AgAgAEEEaiAGQbgGakEsEPYGGkEAIQsMCQsgBiAKNgL8BCAGKQPABRDWGgwDCyAGQdAEahCRJgwECwJAAkAgBCgCAEEOaw4CBAEACyAIEJshGgwDCyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAQ2ArgGIAZBuAZqEL8KDAILIAYgBigCvAciCjYC/AQgBkHgB2oQ7R8gBRDXJgsgAEETNgIAIAAgCjYCBEEAIQsMBAsgACAHNgIEIABBEjYCACAAIAIgASgCfCIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIQQEhCyAJQRpGDQQMBgsgBygCAAUgBAtBGkcNACAHKAIUIQQgBygCECEKIAZBKGogB0EIaiIMEJEMIAYoAigiDSAGKAIsIg5Bya3gAEEEEM0fRQRAIA0gDkHKruAAQQkQzR9FDQELIAwpAwAQ2hohFSAGQSc6ALgGIAYgFTcDwAYgASAKIAQgBkG4BmoQth4LAkAgAS0A+AJBAkcNACAHKAIAQRpHDQAgBkEgaiAHQQhqEJEMAkAgBigCICIEIAYoAiQiCkHksuAAQQYQzR8NACAEIApBzLzgAEEGEM0fDQAgBCAKQe+u4ABBCBDNH0UNAQsgCBDjDSIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACUESRw0AIAEoAighCiABQSU2AiggASABKQNANwN4QQwhBCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAo2ArgGIAZBuAZqIgoQvwogBygCFCEMIAcoAhAhByAGQa0BOgC4BiABIAcgDCAKELwZIAZBGGogASACEJ0CIAYoAhwhASAAAn8gBigCGEEBcQRAQQQhBEETDAELIABBBDYCCEERCzYCACAAIARqIAE2AgAMAQsCQAJAIAgQ4w0iBEUNAAJAAkAgBCgCAEEOaw4CAgABCyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAQ2ArgGIAZBuAZqEL8KDAELIAgQmyFFDQELIAAgBzYCBCAAQRI2AgAgACACIAEoAnwiASABIAJJGzYCDCAAIAIgASABIAJLGzYCCCAJQRpHDQMMAgsCQAJAAkAgCBDjDSIMBEAgBkEQaiAIEJ8UIAYoAhQhBCAGKAIQIQogDCgCAEEURgRAIAZB9QA6ALgGIAEgCiAEIAZBuAZqELwZIAYgASAHQQAQ9QogBigCBCEEIAYoAgANAiAAIAQ2AgQgAEESNgIAIAAgAiABKAJ8IgEgASACSRs2AgwgACACIAEgASACSxs2AgggCUEaRg0GDAcLIAZBCGogBxCLAyAGQTU6ALgGIAYgBikDCDcCvAYgCiAEIAZBuAZqEOsUIQIgCBDjDSIERQ0DIAQoAgBBJEcNAyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABIAEoAiwQggwMAwsgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMAwsgAEETNgIAIAAgBDYCBCAJQRpGDQMMBAtBuePgAEEoQeCd4AAQ2hcACyAAQRM2AgAgACACNgIECyAGQbAFahCYKSAJQRpHDQELIAMoAgBBGkcEQCADENoECyADEPAqCyALRQ0BCyAFENcmCyAGQYAIaiQAC6vAAQIPfwN+IwBBgAhrIgYkAAJAAkACQCAERQ0AIAFBKGoiBBDIDSIHRQ0AIAcoAgBBAkcNACAHLQAIQQJHDQAgBy0ACQ0AIAFBAToAJCABLQCsAkEBcUUEQCAGQZAEaiAEEOoTIAYoApQEIQMgBigCkAQhCiAGQRM6ALgGIAEgCiADIAZBuAZqEKkZC0EAIQMCQCAEEI8TIgdFDQAgBygCAEECRw0AIActAAgNACAHLQAJQQhHDQAgBBClICEKIAQQyA0iA0UEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwDCwJAIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDAQLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEL4KIAZBiARqIAEgAkEBEJQCIAYoAowEIQMgBigCiAQEQCAAQRM2AgAgACADNgIEDAQLIAMEQCAAIAM2AgwgAEEDNgIIIABBETYCAAwEC0EBIQMMAQtBuePgAEEoQZCd4AAQ2hcACyAGQYAEaiABIAMgChCQAyAGKAKEBCEDAkACQCAGKAKABEUEQCAGQbgGaiIHIAFBARC3EiAGQfgDaiAGKAK4BiADQQAQ8gogBigC/AMhAyAGKAL4Aw0BIAcQ7yQgBBDIDSIHRQ0CAkACQCAHKAIAQQ5rDgIEAQALIAQQ6yAaDAMLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAQ2ArgGIAZBuAZqEL4KDAILIABBEzYCACAAIAM2AgQMAwsgAEETNgIAIAAgAzYCBCAGQbgGahDvJAwCCyAAIAM2AgQgAEESNgIAIAAgAiABKAKcAyIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIDAELIAFBKGohCAJAIAEtAKACIgdBAkcNACAIEMgNIgRFDQAgBCgCAEECRw0AIAQtAAhBAkcNACAELQAJQRNHDQAgCBCPEyIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACUENRw0AIAgQyA0iA0UEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwCCwJAAkAgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiEBIABBEzYCACAAIAE2AgQMBAsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQvgogCBDIDSIDRQ0BAkAgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUG54+AAQShBgJ7gABDaFwALIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYA0EMIQcgBkHEBmogAUHMAmoiA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahC+CiAGQfADaiABIAJBARB6IAYoAvQDIQEgAAJ/IAYoAvADQQFxBEBBBCEHQRMMAQsgAEEGNgIIQRELNgIAIAAgB2ogATYCAAwECyABKALMAiEBIABBEzYCACAAIAE2AgQMAwtBuePgAEEoQfCd4AAQ2hcACyABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwBCyAIEMgNIgRFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBCgCACIKQQJHBEAgCkENRg0BIApBJEcNJSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASgCzAIhASAAQRM2AgAgACABNgIEDCgLQQQgBC0ACCIOQQJrQf8BcSIKIApBBE8bDgUBJCQkAyQLIAZBAToAtwQgBiABKQGqAjcAmwQgBiABKAHCAjYAswQgBiABQbICaiICKQEANwCjBCAGIAFBugJqIgMpAQA3AKsEIAZB0QZqIAFBvwJqKQAANwAAIAZBzAZqIAMpAQA3AgAgBkHEBmogAikBADcCACAGIAEpAaoCNwK8BiAIIAZBmwRqEMgIIAYgATYCuAZBACEEIAZB8AVqIAFBABCRBgJAIAYoAvAFQYCAgIB4RwRAIAAgBikC8AU3AgQgAEEUaiAGQYAGaikCADcCACAAQQxqIAZB+AVqKQIANwIADAELIAAgBigC9AU2AgRBEyEECyAAIAQ2AgAgBkG4BmoQ7yQMJgsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAQtAAkOGhoAMAEAFTACMAMEFAUGBx4dExIRHBswMDAQMAtBACEHAkAgCBDIDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUEBRiEHCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahC+CiAIEMgNIgRFDRcgAUHMAmohAyAEKAIAQQ5rDgIXFhULIAZB2ABqIAgQ6hMgBigCXCECIAYoAlghAyAGQfUAOgC4BiABIAMgAiAGQbgGaiIEEKkZIAQgARDmAQJAIAYoArgGQQlHBEAgBBDsIAwBCyAGQbgGakEEchDkIgsgBkG4BmoiBCABELcIIAQQpyAgAyACEIQcIQEgACACNgIMIAAgAzYCCCAAIAE2AgQgAEESNgIADDELIAgQpSAhAyAIEMgNIgJFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMMQsgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCyABKALMAiEBIABBEzYCACAAIAE2AgQMMQsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAjYCuAYgBkG4BmoiAhC+CiAGQYECOwCCBSAGIAEtAMYCOgCUBSAGIAEpAaoCNwD4BCAGIAFBsgJqIgQvAQA7AIAFIAYgASkBtgI3AIQFIAYgASkBvgI3AIwFIAZBiQZqIAFBvwJqKQAANwAAIAZBhAZqIAFBugJqKQEANwIAIAZB/AVqIAQpAQA3AgAgBiABKQGqAjcC9AUgCCAGQfgEahDICCAGIAE2AvAFIAIgARD7KSAGQYgBaiACEN0aIAYoAowBIQQgBigCiAEEQCAAQRM2AgAgACAENgIEIAZB8AVqEO8kDDELIAYgBDYC4AcgBkHwBWoQ7yQCQAJAAkAgCBDIDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUEURg0BCyAGQcAGaiAIEIAQIAZB6ABqIAgQ6hMgBkGQluAANgK8BiAGQTQ6ALgGIAYoAmggBigCbCAGQbgGahDrFCECIAgQyA0iA0UNLCADKAIAQSRGDQEMLAsgASgCyAIhByABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFBzAJqIgJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgBzYCuAYgBkG4BmoQvgoCQAJAIAgQyA0iBwRAIAcoAgBBCUYNAQsgBkHABmogCBCAECAGQfAAaiAIEOoTIAZB+N3fADYCvAYgBkE0OgC4BiAGKAJwIAYoAnQgBkG4BmoQ6xQhAiAIEMgNIgNFDSwgAygCAEEkRg0BDCwLIAEoAsgCIQcgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiIJIAJBCGopAgA3AgAgBkHMBmoiCyACQRBqKAIANgIAIAYgAikCADcCvAYgBiAHNgK4BiAGQbgGaiIHEL4KIAcgAUEBELcSIAZBgAFqIAYoArgGEIkGIAYoAoQBIQogBigCgAFFBEAgBiAKNgLwBSAHEO8kAkACQCAIEMgNIgxFDQAgDCgCAEEKRw0AIAEoAsgCIQwgAUElNgLIAiABIAEpA+ACNwOYAyAJIAJBCGopAgA3AgAgCyACQRBqKAIANgIAIAYgAikCADcCvAYgBiAMNgK4BiAHEL4KIAgQyA0iBw0BDC0LIAZBwAZqIAgQgBAgBkH4AGogCBDqEyAGQdDd3wA2ArwGIAZBNDoAuAYgBigCeCAGKAJ8IAZBuAZqEOsUIQIgCBDIDSIDRQ0rIAMoAgBBJEcNKyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQ0gASABKALMAhD7CwwrCwJAAkAgBygCAEEOaw4CLQEACyAIEOsgGgwsCyABKALIAiEHIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAHNgK4BiAGQbgGahC+CgwrCyAAQRM2AgAgACAKNgIEIAZBuAZqEO8kDC0LIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCSABIAEoAswCEPsLDCoLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNByABIAEoAswCEPsLDCoLIAZBkAFqIAgQ6hMgBigClAEhAiAGKAKQASEDIAZB9QA6ALgGIAEgAyACIAZBuAZqIgQQqRkgBCABELcIIAQQpyAgAyACEIQcIQEgACACNgIMIAAgAzYCCCAAIAE2AgQgAEESNgIADC8LIAgQpSAhCiAIEMgNIgJFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMLwsCQAJAIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQFBuePgAEEoQYiY4AAQ2hcACyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiACNgK4BiABQcwCaiEEIAZBuAZqEL4KQQAhAyAIEKUgIQIgCBDIDSIHDQEMJgsgASgCzAIhASAAQRM2AgAgACABNgIEDC8LIAcoAgBBAkcNJCAHLQAIQQJHDSQgBy0ACQ0kIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAM2ArgGIAZBuAZqEL4KIAIgASgCnAMiAyACIANJGyEPIAIgAyACIANLGyEOQQEhAwwkCyAGQbgGaiABEIIBIAACfyAGKAK4BgRAIAAgBikCuAY3AgQgAEEUaiAGQcgGaigCADYCACAAQQxqIAZBwAZqKQIANwIAQQgMAQsgACAGKAK8BjYCBEETCzYCAAwtCyAIEKUgIQIgCBDIDSIDRQRAIAEoAoACIQMgBkEAOgC4BiADIAMgBkG4BmoQ6xQhAyAAQRM2AgAgACADNgIEDCILIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASgCzAIhAyAAQRM2AgAgACADNgIEDCILIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEL4KAkACQAJAAkAgCBDIDSIDRQ0AIAMoAgBBPnFBDkYNACAIEOsgRQ0BC0EAIQogBkEANgLwBQwBCyAGQbgGaiIDIAFBARC3EiAGQYACaiAGKAK4BhCJBiAGKAKEAiEKIAYoAoACDQEgBiAKNgLwBSADEO8kCyAIEMgNIgNFDSECQAJAIAMoAgBBDmsOAiMAAQsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFBzAJqIgNBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgBDYCuAYgBkG4BmoQvgoMIgsgCBDrIA0hIAZBwAZqIAgQgBAgBkH4AWogCBDqEyAGQdC74AA2ArwGIAZBNDoAuAYgBigC+AEgBigC/AEgBkG4BmoQ6xQhAyAIEMgNIgRFDSAgBCgCAEEkRw0gIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEPsLDCALIABBEzYCACAAIAo2AgQgBkG4BmoQ7yQMIQsgCBClICEKIAgQyA0iAkUEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwsCwJAIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDC0LIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAI2ArgGIAZBuAZqEL4KAkAgCBDIDSICBEAgAigCAEEJRg0BCyAGQcAGaiAIEIAQIAZBiAJqIAgQ6hMgBkH43d8ANgK8BiAGQTQ6ALgGIAYoAogCIAYoAowCIAZBuAZqEOsUIQIgCBDIDSIDRQ0fIAMoAgBBJEYNGQwfCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHMAmoiBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiACNgK4BiAGQbgGaiICEL4KIAIgAUEBELcSIAZBwAJqIAYoArgGEIkGIAYoAsQCIQMgBigCwAJFBEAgBiADNgKgBSACEO8kAkAgCBDIDSICBEAgAigCAEEKRg0BCyAGQcAGaiAIEIAQIAZBkAJqIAgQ6hMgBkHQ3d8ANgK8BiAGQTQ6ALgGIAYoApACIAYoApQCIAZBuAZqEOsUIQIgCBDIDSIDRQ0eIAMoAgBBJEYNGwweCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmoiAyAEQQhqIgkpAgA3AgAgBkHMBmoiByAEQRBqIgsoAgA2AgAgBiAEKQIANwK8BiAGIAI2ArgGIAZBuAZqIgIQvgogBkEANgLIBSAGQoCAgIDAADcCwAUgCBDIDSIMRQ0bIAwoAgBBDUcNGyABKALIAiEMIAFBJTYCyAIgASABKQPgAjcDmAMgAyAJKQIANwIAIAcgCygCADYCACAGIAQpAgA3ArwGIAYgDDYCuAYgAhC+CiAGQQE6AOsHIAYgAS0AtAI6AOoHIAYgAS0AxgI6APwHIAYgASkBqgI3AOAHIAYgAUGyAmoiAi8BADsA6AcgBiABKQG2AjcA7AcgBiABKQG+AjcA9AcgBkGRBWogAUG/AmopAAA3AAAgBkGMBWogAUG6AmopAQA3AgAgBkGEBWogAikBADcCACAGIAEpAaoCNwL8BCAIIAZB4AdqEMgIIAYgATYC+AQgBkHwBWpBBHIhByAGQcAGaiEQIAZB+AVqIRECQAJAAkADQAJAAkACQAJAAkACQCAIEMgNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQQJGDQELIAgQyA0iAkUNASACKAIAQQJHDQEgAi0ACEECRw0BIAItAAlBBkcNAQsgBkEANgLsBSAGQoCAgICAATcC5AUgCBDIDSICRQ0BIAIoAgBBAkcNASACLQAIQQJHDQEgAi0ACSAIEKUgIQ4gByAEKQIANwIAIAdBCGogCSkCADcCACAHQRBqIAsoAgA2AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAYgAzYC8AUgBkHwBWoiAxC+CkECRw0CIAMgAUEBELcSIAZBuAJqIAYoAvAFEIkGIAYoArwCIQIgBigCuAJFBEAgBiACNgKwBSADEO8kDAQLIAZB8AVqEO8kDAYLIAZB+ARqEO8kAkAgCBDIDSICRQ0AIAIoAgBBDkcNACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiACNgK4BiAGQbgGahC+CiAAIAYpAsAFNwIEIABBDGogBkHIBWooAgA2AgAgACAGKAKgBTYCECAAQQk2AgAgACAKIAEoApwDIgEgASAKSRs2AhggACAKIAEgASAKSxs2AhQMNQsgBkHABmogCBCAECAGQaACaiAIEOoTIAZBuNnfADYCvAYgBkE0OgC4BiAGKAKgAiAGKAKkAiAGQbgGahDrFCECAkAgCBDIDSIDRQ0AIAMoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD7CwwBC0G54+AAQShBmJzgABDaFwALIABBEzYCACAAIAI2AgQMIwsgCBClICEOIAcgBCkCADcCACAHQQhqIAkpAgA3AgAgB0EQaiALKAIANgIAIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGIAI2AvAFIAZB8AVqEL4KCwJAIA0EQCAGQagCaiAIEOoTIAYoAqwCIQIgBigCqAIgBiASNgL4BSAGIBM2AvQFIAZBOToA8AUgAiAGQfAFahDrFCECIAgQyA0iA0UNBSADKAIAQSRHDQUgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ+wsMBQtBACECIAZBADYCsAUgDiABKAKcAyIDIAMgDksbIRMgDiADIAMgDkkbIRJBASENDAELQbnj4ABBKEHInOAAENoXAAsCQCAIEMgNIgMEQCADKAIAQRNGDQELIAZB+AVqIAgQgBAgBkGwAmogCBDqEyAGQajY3wA2AvQFIAZBNDoA8AUgBigCsAIgBigCtAIgBkHwBWoQ6xQhAiAIEMgNIgNFDQIgAygCAEEkRw0CIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBCABIAEoAswCEPsLDAILIAcgBCkCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgB0EIaiAJKQIANwIAIAdBEGogCygCADYCACAGIAM2AvAFIAZB8AVqEL4KAkACQANAIAgQyA0iAwRAIAZBADYCuAcgBiADNgK8ByAGQbgHahCmIwJAIAgQyA0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBAkYNAwsCQCAIEMgNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQQZGDQMLIAgQyA0iAwRAIAMoAgBBDkYNAwsgBkHwBWogAUEBQQAQuAIgBigC9AUhAyAGKALwBSIMQRNGDQMgECARQSgQ9gYaIAYgAzYCvAYgBiAMNgK4BiAGQeQFaiAGQbgGahDeGQwBCwsgASgCgAIhAyAGQQA6APAFIAYgAyADIAZB8AVqEOsUNgK8ByAGQQE2ArgHIAZBuAdqEKYjCyAOIAEoApwDIgwgDCAOSxshFCAGKALIBSIPIAYoAsAFRgRAIAZBwAVqEOwWCyAGKALEBSAPQRhsaiIDIAYpAuQFNwIAIAMgAjYCFCADIA4gDCAMIA5JGzYCECADIBQ2AgwgA0EIaiAGQewFaigCADYCACAGIA9BAWo2AsgFDAELCyADIQILIAZBsAVqEOUmCyAGQeQFahDPJiAAQRM2AgAgACACNgIEIAZB+ARqEO8kDB0LQbnj4ABBKEHYnOAAENoXAAsgAEETNgIAIAAgAzYCBCAGQbgGahDvJAwsC0G54+AAQShB+JvgABDaFwALQbnj4ABBKEHom+AAENoXAAtBuePgAEEoQdib4AAQ2hcAC0G54+AAQShBqJbgABDaFwALQbnj4ABBKEGAluAAENoXAAtBuePgAEEoQfCV4AAQ2hcAC0G54+AAQShB4JXgABDaFwALQbnj4ABBKEGgneAAENoXAAsgDkEBcQ0gAkACQAJAAkACQAJAIAQtAAkiBEEFaw4EASYmAgALIARBDUYNAiAEQRJHIAdBAkdyDSUgCBCPEyIDRQ0lIAMoAgBBAkcNJSAIEOogDSUgCBClICECIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEL4KIAZB6ANqIAEgAhCcAiAGKALsAyEBIAYoAugDDQMgACABNgIMIABBBDYCCCAAQRE2AgAMKAsgB0ECRw0kIAgQjxMiA0UNJCADKAIAQQJHDSQgCBDqIA0kIAgQpSAhAiAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahC+CiAGQdADaiABIAIQsAQgBigC1AMhASAGKALQA0UEQCAAIAE2AgwgAEEFNgIIIABBETYCAAwoCyAAQRM2AgAgACABNgIEDCcLIANFDSMgBkHYA2ogASACQQAQlAIgBigC3AMhAyAGKALYAw0CIANFDSMgACADNgIMIABBAzYCCCAAQRE2AgAMJgsgB0ECRw0iIAgQjxMiA0UNIiADKAIAQQJHDSIgCBDqIA0iIAgQpSAhAiAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahC+CiAGQeADaiABIAJBABB6IAYoAuQDIQEgBigC4ANFBEAgACABNgIMIABBBjYCCCAAQRE2AgAMJgsgAEETNgIAIAAgATYCBAwlCyAAQRM2AgAgACABNgIEDCQLIABBEzYCACAAIAM2AgQMIwsgA0UEQCAGQcgDaiAIEOoTIAYoAswDIQMgBigCyAMhBCAGQQE6ALgGIAEgBCADIAZBuAZqEKkZCyAGQfAFaiIDIAEgAiACIAVBABCFBCAAAn8gBigC8AVBCEcEQCAGQbwGaiADQSgQ9gYaIABBBGogBkG4BmpBLBD2BhpBEQwBCyAAIAYoAvQFNgIEQRMLNgIADCMLIANFDR4gBkHwAmogAUEAEIUBIAYoAvQCIQEgBigC8AJFBEAgACABNgIMIABBAjYCCCAAQRE2AgAMIgsgAEETNgIAIAAgATYCBAwhCyADRQ0dIAgQjxMiA0UNHSADEIIGEMoQRQ0dIAZB6AJqIAFBABCFASAGKALsAiEBIAYoAugCRQRAIAAgATYCDCAAQQI2AgggAEERNgIADCELIABBEzYCACAAIAE2AgQMIAsgBkHgAmogAUEAEIUBIAYoAuQCIQEgBigC4AIEQCAAQRM2AgAgACABNgIEDCALIAAgATYCDCAAQQI2AgggAEERNgIADB8LIANFBEAgBkHwAWogCBDqEyAGKAL0ASECIAYoAvABIQMgBkEBOgC4BiABIAMgAiAGQbgGahCpGQsgBkHABmogBUEIaigCADYCACAGIAUpAgA3A7gGIAZB8AVqIgIgASAGQbgGaiIBEMAoIAACfyAGKALwBUEIRwRAIAZBvAZqIAJBKBD2BhogAEEEaiABQSwQ9gYaQREMAQsgACAGKAL0BTYCBEETCzYCAAwfCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahC+CgJAAkACQCAIEMgNIgNFDQACQAJAIAMoAgBBDmsOAgIAAQsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFBzAJqIgNBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgBDYCuAYgBkG4BmoQvgoMAQsgCBDrIA0AIAZBwAZqIAgQgBAgBkHgAGogCBDqEyAGQdC74AA2ArwGIAZBNDoAuAYgBigCYCAGKAJkIAZBuAZqEOsUIQIgCBDIDSIDRQ0CIAMoAgBBJEYNAQwCCyAAQQI2AgAgACACIAEoApwDIgEgASACSRs2AgggACACIAEgASACSxs2AgQMHwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ+wsMAQtBuePgAEEoQdCd4AAQ2hcACyAAQRM2AgAgACACNgIEDB0LIAgQ6yANASAGQbgGaiABIAEtALICQX9zQQFxIAEtALECQX9zQQFxEPcBIAYoArgGIQQCQAJAIAYtAMwGIgpBAkcEQCAGQYAFaiILIAZByAZqKAIANgIAIAZB4gdqIAZBzwZqLQAAOgAAIAYgBikDwAY3A/gEIAYgBi8AzQY7AeAHIAYoArwGIQkCQAJAIAgQyA0iDEUNAAJAAkAgDCgCAEEOaw4CAgABCyABKALIAiEMIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAMNgK4BiAGQbgGahC+CgwBCyAIEOsgRQ0BCyAGQYAGaiALKAIANgIAIAZBhwZqIAZB4gdqLQAAOgAAIAYgCTYC9AUgBiAENgLwBSAGIAYpA/gENwP4BSAGIAo6AIQGIAYgBi8B4Ac7AIUGQQAMBgsgBkHABmogCBCAECAGQdAAaiAIEOoTIAZB0LvgADYCvAYgBkE0OgC4BiAGKAJQIAYoAlQgBkG4BmoQ6xQhAiAIEMgNIgNFDQIgAygCAEEkRw0CIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEPsLDAILIABBEzYCACAAIAQ2AgQMHgtBuePgAEEoQcCd4AAQ2hcACyAAQRM2AgAgACACNgIEIAStIAmtQiCGhCAKEKMjDBwLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiADQQhqKQIANwIAIAZBzAZqIANBEGooAgA2AgAgBiADKQIANwK8BiAGIAQ2ArgGIAZBuAZqEL4KCyAGQQI6AIQGQQELIQogAiABKAKcAyIEIAIgBEkbIQMgAiAEIAIgBEsbIQICfwJAIAdFBEAgAS0AtAJBAXFFBEAgBkGOAToAuAYgASADIAIgBkG4BmoQqRkMAgsgCg0BIAZB8AVqIAEoAgwgASgCEBCZGA0BIAZBigE6ALgGIAEgAyACIAZBuAZqEKkZDAELAkACQCAKRQRAIAZB8AVqIAEoAgwgASgCEBCZGEUNAQsgAS0AtQJBAXENASAGQYgBOgC4BiABIAMgAiAGQbgGahCpGQwBCyAGQY8BOgC4BiABIAMgAiAGQbgGahCpGQtBBgwBC0EHCyEBIAAgAjYCDCAAIAM2AgggACABNgIAIAAgBikD8AU3AxAgAEEYaiAGQfgFaikDADcDACAAQSBqIAZBgAZqKQMANwMADBkLIANFDRUgCBCPEyIDRQ0VIAMoAgBBAkcNFSADLQAIDRUgAy0ACUEIRw0VIAgQyA0iA0UEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEOsUIQEgAEETNgIAIAAgATYCBAwZCwJAIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDBoLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEL4KIAZByABqIAEgAkEBEJQCIAYoAkwhAyAGKAJIRQ0VIABBEzYCACAAIAM2AgQMGQtBuePgAEEoQbCd4AAQ2hcACyABLQCgAkECRgRAIAZBwANqIAgQ6hMgBigCxAMhAiAGKALAAyEDIAZBqwE6ALgGIAEgAyACIAZBuAZqEKkZCyAGQbgDaiAIEOoTIAYoArwDIQIgBigCuAMhAyAGQcoAOgC4BiABIAMgAiAGQbgGaiICEKgeIAgQpSAhAyAIEMgNIgRFBEAgASgCgAIhASAGQQA6ALgGIAEgASACEOsUIQEgAEETNgIAIAAgATYCBAwYCwJAAkACQAJAAkACQAJAIAQoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDB8LIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAI2ArgGIAZBuAZqEL4KAkACQCAIEMgNIgIEQCACKAIAQQlGDQELIAZBwAZqIAgQgBAgBkGYA2ogCBDqEyAGQfjd3wA2ArwGIAZBNDoAuAYgBigCmAMgBigCnAMgBkG4BmoQ6xQhAiAIEMgNIgNFDQggAygCAEEkRg0BDAgLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiICQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAQ2ArgGIAZBuAZqIgcQvgogByABQQEQtxIgBkGwA2ogBigCuAYQiQYgBigCtAMhBCAGKAKwAw0CIAYgBDYC4AcgBxDvJAJAAkAgCBDIDSIHBEAgBygCAEEKRg0BCyAGQcAGaiAIEIAQIAZBoANqIAgQ6hMgBkHQ3d8ANgK8BiAGQTQ6ALgGIAYoAqADIAYoAqQDIAZBuAZqEOsUIQIgCBDIDSIDRQ0HIAMoAgBBJEYNAQwHCyABKALIAiEHIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAHNgK4BiAGQbgGaiICEL4KIAZBAToAiwUgBiABLQC8AjoAigUgBiABLQDGAjoAlAUgBiABKQGqAjcA+AQgBiABQbICaiIHKQEANwCABSAGIAFBugJqIgovAQA7AIgFIAYgASkBvgI3AIwFIAZBiQZqIAFBvwJqKQAANwAAIAZBhAZqIAopAQA3AgAgBkH8BWogBykBADcCACAGIAEpAaoCNwL0BSAIIAZB+ARqEMgIIAYgATYC8AUgAiABEPspIAZBqANqIAIQ3RogBigCrAMhAiAGKAKoA0UEQCAGQfAFahDvJCAAIAI2AgggACAENgIEIABBAzYCACAAIAMgASgCnAMiASABIANJGzYCECAAIAMgASABIANLGzYCDAwhCyAAQRM2AgAgACACNgIEIAZB8AVqEO8kDAcLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAULIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAYLQbnj4ABBKEGImeAAENoXAAsgAEETNgIAIAAgBDYCBCAGQbgGahDvJAwcC0G54+AAQShBmJngABDaFwALQbnj4ABBKEGomeAAENoXAAsgAEETNgIAIAAgAjYCBAsgBkHgB2oQvygMGAsgAEETNgIAIAAgAjYCBAwXCyAIEKUgIQMgCBDIDSICRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDBcLAkACQAJAAkACQAJAAkAgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiEBIABBEzYCACAAIAE2AgQMHgsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAjYCuAYgBkG4BmoQvgoCQAJAIAgQyA0iAgRAIAIoAgBBCUYNAQsgBkHABmogCBCAECAGQfgCaiAIEOoTIAZB+N3fADYCvAYgBkE0OgC4BiAGKAL4AiAGKAL8AiAGQbgGahDrFCECIAgQyA0iA0UNCCADKAIAQSRGDQEMCAsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFBzAJqIgJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgBDYCuAYgBkG4BmoiBxC+CiAHIAFBARC3EiAGQZADaiAGKAK4BhCJBiAGKAKUAyEEIAYoApADDQIgBiAENgLgByAHEO8kAkACQCAIEMgNIgcEQCAHKAIAQQpGDQELIAZBwAZqIAgQgBAgBkGAA2ogCBDqEyAGQdDd3wA2ArwGIAZBNDoAuAYgBigCgAMgBigChAMgBkG4BmoQ6xQhAiAIEMgNIgNFDQcgAygCAEEkRg0BDAcLIAEoAsgCIQcgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiACQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAc2ArgGIAZBuAZqIgIQvgogBkGBAjsAggUgBiABLQDGAjoAlAUgBiABKQGqAjcA+AQgBiABQbICaiIHLwEAOwCABSAGIAEpAbYCNwCEBSAGIAEpAb4CNwCMBSAGQYkGaiABQb8CaikAADcAACAGQYQGaiABQboCaikBADcCACAGQfwFaiAHKQEANwIAIAYgASkBqgI3AvQFIAggBkH4BGoQyAggBiABNgLwBSACIAEQ+ykgBkGIA2ogAhDdGiAGKAKMAyECIAYoAogDRQRAIAZB8AVqEO8kIAAgAjYCCCAAIAQ2AgQgAEEMNgIAIAAgAyABKAKcAyIBIAEgA0kbNgIQIAAgAyABIAEgA0sbNgIMDCALIABBEzYCACAAIAI2AgQgBkHwBWoQ7yQMBwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ+wsMBQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ+wsMBgtBuePgAEEoQZib4AAQ2hcACyAAQRM2AgAgACAENgIEIAZBuAZqEO8kDBsLQbnj4ABBKEGom+AAENoXAAtBuePgAEEoQbib4AAQ2hcACyAAQRM2AgAgACACNgIECyAGQeAHahC/KAwXCyAAQRM2AgAgACACNgIEDBYLIAgQpSAhAiAIEMgNIgNFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMFgsCQAJAAkACQAJAIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDBsLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqIgMQvgogAyABQQAQkQYgBigCvAYhBCAGKAK4BiIHQYCAgIB4Rg0BIAZBiAVqIAZByAZqKQIANwIAIAYgBikCwAY3AoAFIAYgBDYC/AQgBiAHNgL4BCAIEKUgIQQgAyABEOYBIAYoArwGIQcgBigCuAYiCkEJRwRAIAZB+AVqIAZBwAZqQcAAEPYGGiAGIAc2AvQFIAYgCjYC8AUgAyABELcIIAYoArwGIQcgBigCuAYiCUGBgICAeEYNAyAGQegHaiAGQcgGaikCADcDACAGIAYpAsAGNwPgByAJQYCAgIB4RyAKQQhHcg0FIAZB9QA6ALgGIAEgBCAEIAMQqRkMBQsgAEETNgIAIAAgBzYCBAwDC0G54+AAQShB2JjgABDaFwALIABBEzYCACAAIAQ2AgQMGAsgAEETNgIAIAAgBzYCBCAGQfAFahDsIAsgBkH4BGoQzyYMFgsgASgCnAMhASAGQZAHaiAGQYgFaikCADcDACAGQYgHaiAGQYAFaikCADcDACAGIAYpAvgENwOAByAGQbgGaiIDIAZB8AVqQcgAEPYGGiAGQagHaiAGQegHaikDADcDACAGIAIgASABIAJJGzYCtAcgBiACIAEgASACSxs2ArAHIAYgBzYCnAcgBiAJNgKYByAGIAYpA+AHNwOgByAAIAMQ/Ck2AgQgAEELNgIADBULIAgQpSAhAiAIEMgNIgNFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahDrFCEBIABBEzYCACAAIAE2AgQMFQsCQAJAAkACQAJAAkACQCADKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEoAswCIQEgAEETNgIAIAAgATYCBAwcCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGaiIEEL4KIAgQ6yBFBEAgBCABQQEQtxIgBkHYAmogBigCuAYQiQYgBigC3AIhAyAGKALYAg0CIAYgAzYC8AUgBBDvJCAIEMgNIgRFDQcCQAJAIAQoAgBBDmsOAgkAAQsgASgCyAIhByABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFBzAJqIgRBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgBzYCuAYgBkG4BmoQvgoMCAsgCBDrIA0HIAZBwAZqIAgQgBAgBkHQAmogCBDqEyAGQdC74AA2ArwGIAZBNDoAuAYgBigC0AIgBigC1AIgBkG4BmoQ6xQhAiAIEMgNIgNFDQYgAygCAEEkRw0GIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAYLIAZByAJqIAgQ6hMgBigCzAIhAiAGKALIAiAGQS46ALgGIAIgBkG4BmoQ6xQhAiAIEMgNIgNFDQQgAygCAEEkRw0EIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAQLQbnj4ABBKEHYmuAAENoXAAsgAEETNgIAIAAgAzYCBCAGQbgGahDvJAwZC0G54+AAQShB6JrgABDaFwALQbnj4ABBKEH4muAAENoXAAsgAEETNgIAIAAgAjYCBAwWCyAAQRM2AgAgACACNgIEIAZB8AVqEL8oDBULIAAgAzYCBCAAQQo2AgAgACACIAEoApwDIgEgASACSRs2AgwgACACIAEgASACSxs2AggMFAsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ+wsMBgtBuePgAEEoQbic4AAQ2hcACyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD7CwwDC0G54+AAQShBqJzgABDaFwALIAZBwAZqIAgQgBAgBkGYAmogCBDqEyAGQeDZ3wA2ArwGIAZBNDoAuAYgBigCmAIgBigCnAIgBkG4BmoQ6xQhAgJAIAgQyA0iA0UNACADKAIAQSRHDQAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ+wsMAQtBuePgAEEoQYic4AAQ2hcACyAAQRM2AgAgACACNgIECyAGQcAFahDmJgwBCyAAQRM2AgAgACACNgIECyAGQaAFahC/KAwOCyAAQRM2AgAgACACNgIEDA0LIABBEzYCACAAIAM2AgQgBkHwBWoQ5SYMAQsgACAKNgIMIABBBDYCACAAIAIgASgCnAMiAyACIANLGzYCCCAAIAIgAyACIANJGzYCBAsgAS0AvQJBAXENCiABLQCgAkECRwRAIAEtAKcCQQFxDQsLIAEoApwDIQAgBkHLADoAuAYgASACIAAgACACSxsgAiAAIAAgAkkbIAZBuAZqEKkZDAoLAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAgQyA0iAgRAIAIoAgBBCUYNAQsgBkHABmogCBCAECAGQZgBaiAIEOoTIAZB+N3fADYCvAYgBkE0OgC4BiAGKAKYASAGKAKcASAGQbgGahDrFCECIAgQyA0iA0UNESADKAIAQSRGDQEMEQsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAjYCuAYgBkG4BmoiAhC+CiABKAGqAiEHIAZBzQZqIAFBvwJqIgkpAAA3AAAgBkHGBmogAUG4AmopAQA3AQAgBiABKQGwAjcBvgYgBkGEBWogAUGyAmopAQA3AgAgBkGMBWogAUG6AmopAQA3AgAgBkGRBWogCSkAADcAACAGIAM6AL0GIAZBAToAvAYgBiAHNgK4BiAGIAEpAaoCNwL8BCAIIAIQyAggBiABNgL4BAJAAkACQCAIEMgNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRNGDQELAkAgCBDIDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUERRg0BCwJAIAgQyA0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBEkcNACAIEI8TIgJFDQAgAhCCBhDKEA0BCyAIEMgNIgJFDQEgAigCAEEPRw0BIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAI2ArgGIAZBuAZqEL4KIAZBsAVqIAFBAiAGEIgEDA8LIAZB6AFqIAFBARCFASAGKALsASECIAYoAugBBEAgBkEFNgKwBSAGIAI2ArQFDBALAkACQAJAIAgQyA0iB0UNACAHKAIAQQJHDQAgBy0ACA0AIActAAlBBEYNAQsCQCAIEMgNIgdFDQAgBygCAEECRw0AIActAAhBAkcNACAHLQAJQR5GDQELIAgQyA0iB0UNASAHKAIAQQ9HDQEgASgCyAIhByABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgBzYCuAYgBkG4BmoQvgogBkGwBWogAUEAIAIQiAQMEAsgAkEIaigCACIHQQFGDQ0gAigCBCINIAdBOGxqIQdBASEJA0ACQCALQQFxBEAgByANRg0RDAELIAcgDWtBOG4gCU0NECANIAlBOGxqIQ0LIAZB4AFqIA0QjAwgBigC5AEhCSAGKALgASELIAZBzAA6ALgGIAEgCyAJIAZBuAZqEKkZIA1BOGohDUEAIQlBASELDAALAAsgBkHABmogCBCAECAGQcgBaiAIEOoTIAZB0LvgADYCvAYgBkE0OgC4BiAGKALIASAGKALMASAGQbgGahDrFCEDIAgQyA0iBEUNCyAEKAIAQSRHDQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ+wsMCwsgCBClICEHIAZBuAZqIgkgAUEAELcSIAZBwAFqIAYoArgGEIkGIAYoAsQBIQIgBigCwAFFBEAgBiACNgLMByAJEO8kAkACQCABLQCgAkECRwRAIAEtAKkCQQFxRQ0BCyACQfi04ABBBRDvHiIMRQRAIAIoAgBBIkcNASACKAIEQfi04ABBBRDvHkUNAQsCQCAIEMgNIglFDQAgCSgCAEECRw0AIAktAAgNACAJLQAJQQRGDQELAkAgCBCPEyIJRQ0AIAkoAgBBAkcNACAJLQAIDQAgCS0ACUEERg0CCyAIEI8TIglFDQAgCSgCAEECRw0AIAktAAhBAkcNACAJLQAJQR5GDQELAkACQAJAAkAgCBDIDSIHRQ0AIAcoAgBBAkcNACAHLQAIDQAgBy0ACUEERg0BCwJAIAgQyA0iB0UNACAHKAIAQQJHDQAgBy0ACEECRw0AIActAAlBHkYNAQsgCBDIDSIHRQ0BIAcoAgBBD0cNASABKALIAiEHIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiAHNgK4BiAGQbgGahC+CiAGQbAFaiABQQEgAhCIBAwSC0EBIQkCQCAIEMgNIgdFDQAgBygCAEECRw0AIActAAhBAkcNACAHLQAJQR5HIQkLIAZBuAZqIAFBAiACEGQgBigCvAYhCyAGKAK4BiIHQQdGDQcgBkH4B2oiDCAGQdgGaikDACIVNwMAIAZB8AdqIg0gBkHQBmopAwAiFjcDACAGQegHaiIQIAZByAZqKQMAIhc3AwAgBkGABmogFzcDACAGQYgGaiAWNwMAIAZBkAZqIBU3AwAgBiAGKQPABiIVNwPgByAGIAs2AvQFIAYgBzYC8AUgBiAVNwP4BSAJIAEtAKACQQJHckUNAQwNCyAGQcAGaiAIEIAQIAZBsAFqIAgQ6hMgBkHQu+AANgK8BiAGQTQ6ALgGIAYoArABIAYoArQBIAZBuAZqEOsUIQIgCBDIDSIHRQ0KIAcoAgBBJEcNCiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQUgASABKALMAhD7CwwKCyAHRSAHQQZGcg0LIAZBuAFqIAZB8AVqEIwMIAYoArwBIQIgBigCuAEhCSAGQbABOgC4BiABIAkgAiAGQbgGahCpGQwLCyAGQbgGaiINIAFBABCWBCAGKAK4BiELIAYtAMwGIhBBAkYNBSAGQcAHaiIRIAZBxAZqKQIANwMAIAYgBikCvAY3A7gHIAYgBikAzQY3A9AHIAYgBkHUBmooAAA2ANcHIAEoApwDIQlBOEEIEIwgIgIgCzYCCCACQQA2AgAgAiAQOgAcIAJBADoANCACQQA2AjAgAiAGKQO4BzcCDCACQRRqIBEpAwA3AgAgAiAGKQPQBzcAHSACQSRqIAYoANcHNgAAIAIgByAJIAcgCUsbIgs2AiwgAiAHIAkgByAJSRsiCTYCKEEYQQQQjCAiByAMQQFzOgAUIAcgCzYCECAHIAk2AgwgB0EBNgIIIAcgAjYCBCAHQQE2AgAgCBDIDSICRQRAIAEoAoACIQIgBkEAOgC4BiACIAIgDRDrFCECDAgLAkAgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiECDAkLIAZBsAVqIAFBASAHELkGDAoLQbnj4ABBKEH4l+AAENoXAAsgBkEFNgKwBSAGIAI2ArQFIAZBuAZqEO8kDA0LIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBCABIAEoAswCEPsLDA8LQbnj4ABBKEHYl+AAENoXAAtBuePgAEEoQeiX4AAQ2hcACyAGIAs2ArQFIAZBBTYCsAUMCQsgBiALNgK0BSAGQQU2ArAFDAMLQbnj4ABBKEHImOAAENoXAAsgBkEFNgKwBSAGIAI2ArQFIAcQwSgMAQsgBkEFNgKwBSAGIAI2ArQFCyAGQcwHahC/KAwEC0EoQQgQjCAiAiALNgIEIAIgBzYCACACIAYpA+AHNwMIIAJBEGogECkDADcDACACQRhqIA0pAwA3AwAgAkEgaiAMKQMANwMAIAZBsAVqIAFBAiACELkGDAMLIAZBBTYCsAUgBiADNgK0BSACEPgqDAMLQQEhDQJAIAEtAK0CQQFxRQRAIAgQyA0iB0UNASAHKAIAQQJHDQEgBy0ACA0BIActAAlBBEcNASACQQhqKAIAIQ0LIAJBBGoiBygCACANQZiX4AAQkyMoAjBFDQAgBkHYAWogBygCACACQQhqKAIAQaiX4AAQkyMQjAwgBigC3AEhByAGKALYASEJIAZBzQA6ALgGIAEgCSAHIAZBuAZqEKkZCyABLQCgAkECRw0AIAJBBGooAgAgAkEIaigCAEG4l+AAEJMjIgcoAgAiCUEDSw0AIAcgCUECdEGw2+MAaigCAGooAgBFDQAgBkHQAWogAkEEaigCACACQQhqKAIAQciX4AAQkyMQjAwgBigC1AEhByAGKALQASEJIAZBrwE6ALgGIAEgCSAHIAZBuAZqEKkZCyAGQbAFaiABQQAgAhC5BgsgBigCtAUiDSAGKAKwBSICQQVGDQEaIAYgBikCuAU3AqgFIAYgDTYCpAUgBiACNgKgBSAGQfgEahDvJAJAAkACQAJ/AkACQAJAAkACQAJAAkACQCAIEMgNIgcEQCAHKAIAQQpGDQELIAZBwAZqIAgQgBAgBkGgAWogCBDqEyAGQdDd3wA2ArwGIAZBNDoAuAYgBigCoAEgBigCpAEgBkG4BmoQ6xQhAyAIEMgNIgRFDQogBCgCAEEkRg0BDAoLIAEoAsgCIQcgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAc2ArgGIAZBuAZqIgcQvgogBkGBAjsAygUgBiABLQDGAjoA3AUgBiABKQGqAjcAwAUgBiABLwGyAjsAyAUgBiABKQG2AjcAzAUgBiABKQG+AjcA1AUgBkGJBmogAUGqAmoiBEEVaikAADcAACAGQYQGaiAEQRBqKQEANwIAIAZB/AVqIARBCGopAQA3AgAgBiAEKQEANwL0BSAIIAZBwAVqEMgIIAYgATYC8AUgByABEPspIAZBqAFqIAcQ3RogBigCrAEhByAGKAKoAUUEQCAGIAc2ArgHIAZB8AVqEO8kIAogASgCnAMiBCAEIApLGyEJIAogBCAEIApJGyEKAkACQAJAIAJBAmtBACACQQNrQQJJG0EBaw4CAgEACyAGIA02AvQFIAYgAjYC8AUgBiAGKAKoBSIENgLgByAGIAYoAqwFIgw2AvgEIANFBEBBDiEBIAchCyAJIQcgCiEJIAQhCiAMIQMMCQsgBkHSADoAuAYgDyAOIAZBuAZqEOsUIQIgCBDIDSIDRQ0JIAMoAgBBJEcNCSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQQgASABKALMAhD7CwwJC0EQIQEgBigCrAUhCyAGKAKoBSENIAYoAqQFIQIMBwsgBiAGKAKoBSINNgL0BSAGIAYoAqQFIgI2AvAFIAYgBigCrAUiCzYC+AQgA0UEQEEPIQEMBwsgBkHSADoAuAYgDyAOIAZBuAZqEOsUIQIgCBDIDSIDRQ0FIAMoAgBBJEcNBSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD7CwwFCyAAQRM2AgAgACAHNgIEIAZB8AVqEO8kQQEhBEEBIQAMCAsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ+wsMCAtBuePgAEEoQZiY4AAQ2hcAC0G54+AAQShBqJjgABDaFwALQbnj4ABBKEG4mOAAENoXAAsgAEETNgIAIAAgAjYCBCAGQfgEahC/KCAGQfAFahCDHUEBIQRBAAwCCyAAIAM2AhwgACAKNgIYIAAgCTYCFCAAIAc2AhAgACALNgIMIAAgDTYCCCAAIAI2AgQgACABNgIADBELIABBEzYCACAAIAI2AgQgBkH4BGoQ5SYgBkHgB2oQ5SYgBkHwBWoQhB1BACEEQQELIQAgBkG4B2oQzwYLIAYoAqAFIQIMAQsgAEETNgIAIAAgAzYCBEEBIQRBASEACyAGQaQFaiEBAkACQAJAIAJBAmtBACACQQNrQQJJG0EBaw4CAgABCyABEIMdIAZBrAVqEL8oDA4LIARFDQ0gBkGgBWoQhB0gBkGoBWoQ5SYgBkGsBWoQ5SYMDQsgAEUNDCABEIMdIAZBrAVqEL8oDAwLIAYoArQFCyEBIABBEzYCACAAIAE2AgQgBkH4BGoQ7yQMCgsgAEETNgIAIAAgAjYCBAwJCyAAQRM2AgAgACACNgIEIAZB8AVqEL8oDAMLIAAgBDYCCCAAIAo2AgQgAEENNgIAIAAgAyABKAKcAyIBIAEgA0kbNgIQIAAgAyABIAEgA0sbNgIMDAcLIABBEzYCACAAIAI2AgQMAQsgAEETNgIAIAAgAjYCBAsgBkHgB2oQzwYMBAsgAw0BCyAIEMgNIgNFDQEgAygCAEEPRw0BIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEL4KIABBATYCACAAIAIgASgCnAMiASABIAJJGzYCCCAAIAIgASABIAJLGzYCBAwCCyAAIAM2AgwgAEEDNgIIIABBETYCAAwBCwJAIAgQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBAkcNACAIEI8TIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQQtHDQAgCBDqIA0AIAZB8AVqIgIgASAFEMMHIAACfyAGKALwBUEIRwRAIAZBvAZqIAJBKBD2BhogAEEEaiAGQbgGakEsEPYGGkERDAELIAAgBigC9AU2AgRBEws2AgAMAgsgBkG4BmoiBCABQQEQtxIgBkFAayAGKAK4BhCJBiAGKAJEIQMCQAJAAkACQAJAIAYoAkBFBEAgBBDvJCADIgcoAgAiCUEaRw0DIAZByARqIgogA0EYaikDADcDACAGQcAEaiILIANBEGopAwA3AwAgBiADKQMINwO4BCAIEMgNIgdFDQIgBygCAEETRw0CIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAI2ArgGIAQQvgogBkEBOgCDBUEAIQ4gBkEAOgCUBSAGIAEtALQCOgCCBSAGIAEpAaoCNwD4BCAGIAFBsgJqIgIvAQA7AIAFIAYgASkBtgI3AIQFIAYgASkBvgI3AIwFIAZBiQZqIAFBvwJqKQAANwAAIAZBhAZqIAFBugJqKQEANwIAIAZB/AVqIAIpAQA3AgAgBiABKQGqAjcC9AUgCCAGQfgEahDICCAGIAE2AvAFIAZB0AVqIAopAwA3AwAgBkHIBWogCykDACIVNwMAIAYgBikDuAQ3A8AFIAZBADYCwAcgBkKAgICAwAA3ArgHIAEoAgwiByABKAIQQQN0aiECIBWnIQ1BBCEJQQAhCwwBCyAAQRM2AgAgACADNgIEIAZBuAZqEO8kDAULA0ACQCACIAdHBEAgBkHABWogBxCvCyAHQQhqIQcNAQwCCyABQQhqIQ8gBikDwAUQ2hohFSABKAIQIgcgASgCCEYEQCAPEPUWCyABKAIMIAdBA3RqIBU3AwAgASAHQQFqNgIQAkACQAJ/AkACQAJAAkAgCBDIDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUELRg0BCyAGQbgGaiABEPspIAYoArwGIQcgBigCuAYiCkETRg0CIAZB6AdqIAZB0AZqKQMANwMAIAZB8AdqIAZB2AZqKQMANwMAIAYgBikDyAY3A+AHIAYoAsQGIQQgBigCwAYhCSAGKALgBiEIIAYoAuQGIQIMAQsgBkEANgLoByAGQoCAgIDAADcC4AcgBkG4BmoiDCABIAZB4AdqEMAoIAYoArwGIgQgBigCuAYiCUEIRg0CGiAGQfAHaiAGQdAGaikDADcDACAGQegHaiAGQcgGaikDADcDACAGIAYpA8AGNwPgByAGKALYBiEIIAYoAtwGIQJBESEKAkAgCUEBRw0AIAEtAK0CQQFxBEAgCCgCNCEHIAgoAjAhCSAGQc8AOgC4BiABIAkgByAMEKkZCyAILQBERQRAQQEhCSAILQBFQQFHDQELIAgoAjQhByAIKAIwIQkgBkHOADoAuAYgASAJIAcgBkG4BmoQqRlBASEJCwtBMEEIEIwgIgwgBDYCDCAMIAk2AgggDCAHNgIEIAwgCjYCACAMIAI2AiwgDCAINgIoIAwgBikD4Ac3AxAgDEEYaiAGQegHaikDADcDACAMQSBqIAZB8AdqKQMANwMAIAYoArgHIQIgBiAGKAK8ByIEIAtBAnRqIgc2AsQGIAYgAjYCwAYgBiAENgK4BgwCCyAHCyEBIABBEzYCACAAIAE2AgQgBigCvAciACALEPIeIAYoArgHIAAQuykgBikDwAUQ1hoMAQsDQCAOBEAgASAEKAIAEPsLIA5BBGshDiAEQQRqIQQMAQsLIAYgBzYCvAYgBkG4BmoQuhcgASgCEEEDdCEEIAEoAgwhB0EAIQoCQANAIARFDQEgByAGQcAFahCvC0UEQCAEQQhrIQQgCkEBaiEKIAdBCGohBwwBCwsgDyAKEOkSENYaCyAAIAYpA8AFNwMQIAAgDDYCKCAAQQU2AgAgAEEYaiAGQcgFaikDADcDACAAQSBqIAZB0AVqKQMANwMAIAAgDSABKAKcAyIBIAEgDUkbNgIMIAAgDSABIAEgDUsbNgIICyAGQfAFahDvJEEBIQoMBAsgBigCzAUhBCAGKALIBSAGKQPABRDaGiEVIAZBxAA6ALgGIAYgFTcDwAYgBCAGQbgGahDrFCEEIAYoArgHIAtGBEAgBkG4B2oQ5RYgBigCvAchCQsgCSALQQJ0aiAENgIAIAYgC0EBaiILNgLAByAOQQRqIQ4MAAsACyAGQbgEahDtFCEHCyAGIAc2ArAFQQEhCgJAAkAgBygCACIEQRpGBH8gBkE4aiAHQQhqEJEMAkACQAJAAkACQAJAAkAgBigCOCAGKAI8Qcqu4ABBCRDvKQRAIAgQ6yANAQsgAS0AoAJBAkciCkUNAQwGCyAHKAIUIQQgBygCECEKIAcpAwgQ2hohFSAGQSc6ALgGIAYgFTcDwAYgASAKIAQgBkG4BmoQqB4gCBDIDSIEDQEMBAsgBygCECEEIAcpAhQhFSAHKQMIENoaIRYgBiAVNwLMBSAGIAQ2AsgFIAYgFjcDwAUgBiAHLQAcOgDUBSAGQTBqIAZBwAVqEJEMAkACQAJAIAYoAjAiCyAGKAI0IgxBiq3gAEEHEM0fRQRAIAsgDEHvreAAQQYQzR9FBEAgBkH4BGogASAEIAUgBikDwAVBABC+AQwCCwJAAkAgCBDIDSILBEAgCygCAEENRg0BCyAGQQg2AvgEIAYpA8AFENYaDAELIAZB+AdqIgsgBkHQBWopAwA3AwAgBkHwB2oiDCAGQcgFaikDADcDACAGIAYpA8AFNwPoByAGQgA3A+AHIAZBuAdqIAEQLyAGKAK4ByIOQYCAgIB4Rg0GIAZB5AZqIAZBxAdqKQIANwIAIAZBwAZqIAZB6AdqKQMANwMAIAZByAZqIAwpAwA3AwAgBkHQBmogCykDADcDACAGIAYpArwHNwLcBiAGIAYpA+AHNwO4BiAGQYACOwGIByAGIA42AtgGIAZBAjoA/QYgBiAEIAEoApwDIgsgBCALSxs2AoQHIAYgBCALIAQgC0kbNgKAByAGIAZBuAZqEP0pNgL8BCAGQQc2AvgECyAFENcmDAELIAZBuAZqIAEgBCAFEHUgBigCvAYhDiAGKAK4BiIEQQlGDQEgBkH4B2oiCyAGQdgGaikDADcDACAGQfAHaiIMIAZB0AZqKQMANwMAIAZB6AdqIg0gBkHIBmopAwA3AwAgBiAGKQPABjcD4AcCQCAEQQhHBEAgBkGABmogDSkDADcDACAGQYgGaiAMKQMANwMAIAZBkAZqIAspAwA3AwAgBiAONgL0BSAGIAQ2AvAFIAYgBikD4Ac3A/gFIAZB+ARqIAZB8AVqEPwLDAELIAZBCDYC+AQLIAYpA8AFENYaCyAGKAL8BCEOIAYoAvgEIgRBCUYNBCAGQfAEaiAGQZgFaikDADcDACAGQegEaiAGQZAFaikDADcDACAGQeAEaiAGQYgFaikDADcDACAGIAYpA4AFNwPYBCAGIA42AtQEIAYgBDYC0AQgBEEIRg0BIAZBvAZqIAZB0ARqQSgQ9gYaIABBETYCACAAQQRqIAZBuAZqQSwQ9gYaQQAhCgwJCyAGIA42AvwEIAYpA8AFENYaDAMLIAZB0ARqEPMkDAQLAkACQCAEKAIAQQ5rDgIEAQALIAgQ6yAaDAMLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAQ2ArgGIAZBuAZqEL4KDAILIAYgBigCvAciDjYC/AQgBkHgB2oQ7R8gBRDXJgsgAEETNgIAIAAgDjYCBEEAIQoMBAsgACAHNgIEIABBEjYCACAAIAIgASgCnAMiASABIAJJGzYCDCAAIAIgASABIAJLGzYCCEEBIQogCUEaRg0EDAYLIAcoAgAFIAQLQRpHDQAgBygCFCEEIAcoAhAhCyAGQShqIAdBCGoiDBCRDCAGKAIoIg4gBigCLCINQcmt4ABBBBDNH0UEQCAOIA1Byq7gAEEJEM0fRQ0BCyAMKQMAENoaIRUgBkEnOgC4BiAGIBU3A8AGIAEgCyAEIAZBuAZqEKgeCwJAIAEtAKACQQJHDQAgBygCAEEaRw0AIAZBIGogB0EIahCRDAJAIAYoAiAiBCAGKAIkIgtB5LLgAEEGEM0fDQAgBCALQcy84ABBBhDNHw0AIAQgC0HvruAAQQgQzR9FDQELIAgQyA0iBEUNACAEKAIAQQJHDQAgBC0ACA0AIAQtAAlBEkcNACABKALIAiELIAFBJTYCyAIgASABKQPgAjcDmANBDCEEIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgCzYCuAYgBkG4BmoiCxC+CiAHKAIUIQwgBygCECEHIAZBrQE6ALgGIAEgByAMIAsQqRkgBkEYaiABIAIQnAIgBigCHCEBIAACfyAGKAIYQQFxBEBBBCEEQRMMAQsgAEEENgIIQRELNgIAIAAgBGogATYCAAwBCwJAAkAgCBDIDSIERQ0AAkACQCAEKAIAQQ5rDgICAAELIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAQ2ArgGIAZBuAZqEL4KDAELIAgQ6yBFDQELIAAgBzYCBCAAQRI2AgAgACACIAEoApwDIgEgASACSRs2AgwgACACIAEgASACSxs2AgggCUEaRw0DDAILAkACQAJAIAgQyA0iDARAIAZBEGogCBDqEyAGKAIUIQQgBigCECELIAwoAgBBFEYEQCAGQfUAOgC4BiABIAsgBCAGQbgGahCpGSAGIAEgB0EAEPIKIAYoAgQhBCAGKAIADQIgACAENgIEIABBEjYCACAAIAIgASgCnAMiASABIAJJGzYCDCAAIAIgASABIAJLGzYCCCAJQRpGDQYMBwsgBkEIaiAHEIsDIAZBNToAuAYgBiAGKQMINwK8BiALIAQgBkG4BmoQ6xQhAiAIEMgNIgRFDQMgBCgCAEEkRw0DIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEPsLDAMLIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQ6xQhASAAQRM2AgAgACABNgIEDAMLIABBEzYCACAAIAQ2AgQgCUEaRg0DDAQLQbnj4ABBKEHgneAAENoXAAsgAEETNgIAIAAgAjYCBAsgBkGwBWoQvyggCUEaRw0BCyADKAIAQRpHBEAgAxDZBAsgAxDwKgsgCkUNAQsgBRDXJgsgBkGACGokAAvHgQECL38EfiMAQZAIayICJAAgAkEAOgC3AiACIAEpAaoCNwCnAiACIAFBsgJqIgQpAQA3AK8CIAIgASkAuwI3ALgCIAIgASgAwwI2AMACIAJB3QJqIAFBvwJqKQAANwAAIAJB2AJqIAFBugJqKQEANwIAIAJB0AJqIAQpAQA3AgAgAiABKQGqAjcCyAIgAUEoaiIHIAJBpwJqEMgIIAIgATYCxAIgBxClICEfAkACQAJ/AkAgBxDIDSIERQRAIAEoAoACIQEgAkEAOgDoBiABIAEgAkHoBmoQ6xQhAwwBCyAEKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEoAswCIQMMAgtBuePgAEEoQcCk4AAQ2hcACyABQaoCaiETIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyACQfQGaiIVIAFB1AJqKQIANwIAIAJB/AZqIAFB3AJqKAIANgIAIAIgASkCzAI3AuwGIAIgBDYC6AYgAkHoBmoiBBC+CiACQQA2AvACIAJCgICAgMAANwLoAiABQcwCaiEMIARBBHIhDSACQewGaiELIAJBhAVqIRQgAkHoBWohIiACQegHaiEjIAJBmAdqISQgAkHwBmohDyACQdgEaiEXIAJBwAVqIS0gAkG0BGohJSACQbAHaiEmIAJBiAdqIS4gAkH4B2ohLCACQfAHaiEnIAJB1AdqISAgAkGwBWohKCACQYwFaiEvIAJBiAVqIRsgAkHsA2ohISACQbADaiEcIAJBzAdqIRkgAkGAA2ohGgNAAkACQAJAAkACQAJAAkACfwJAAkACQAJAIAcQyA0iBARAIAQoAgBBDkYNAQsgAiAHEKUgNgL0AgJAAkACQAJAIAcQyA0iBARAIAQoAgBBB0YNAQsCQCAHEMgNIgRFDQAgBCgCAEEURw0AIAQtAARBDUYNAgsgAkHoBmoiBCABEPwHIAItAOgGDQIgAi0A6QYhBiABKAKcAyEIIAEoApgDIQkgBCABEK0BIAIoAuwGIQMgAigC6AYiBEEFRg0NIBogDykDADcDACAaQRBqIA9BEGoiECkDADcDACAaQQhqIhEgD0EIaiIKKQMANwMAIAIgAzYC/AIgAiAENgL4AiABLQCgAkECRw0KIAcQyA0iAwRAIAMoAgBBCUYNCwsgBxDIDSIDBEAgAygCAEELRg0LCyAHEMgNIgMEQCADKAIAQRNGDQsLIAcQyA0iAwRAIAMoAgBBEEYNCwsgBxDIDSIDBEAgAygCAEEXRg0LCwJAIAcQyA0iA0UNACADKAIAQRVHDQAgAy0ABEUNCwsCQCAHEMgNIgNFDQAgAygCAEEURw0AIAMtAARBDUYNCwsgBxDIDSIDBEAgAygCAEECRg0LCyAHEMgNIgMEQCADKAIAQRtGDQsLIAcQyA0iAwRAIAMoAgBBHUYNCwsgAS0AoAJBAkcNCSAHEMgNIgMNAwwJCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiAENgLoBiACQegGaiIIEL4KIAEoApwDIQQgAigC9AIhBiAIIAFBARC3EiACQZgCaiACKALoBhCyBiACKAKcAiEDIAIoApgCRQRAIAYgBCAEIAZJGyEwIAYgBCAEIAZLGyEOIAgQ7yQMDAsgAkHoBmoQ7yQMDAsgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIgUgDEEIaiIIKQIANwIAIA1BEGoiCSAMQRBqIhEoAgA2AgAgAiAENgLoBiACQegGaiISEL4KIBIgARCtASACKALsBiEGIAIoAugGIh1BBUcEQCAXIA8pAwA3AwAgF0EQaiAPQRBqKQMANwMAIBdBCGogD0EIaiIeKQMANwMAIBlBFWogE0EVaiIDKQAANwAAIBlBEGogE0EQaiIQKQEANwEAIBlBCGogE0EIaiIWKQEANwEAIBkgEykBADcBAEEAIQogAkEAOgD6BiACQQE6AIEHIAIgAS0AxgI6AIQHIAIgASkBqgI3AOgGIAIgASkBsgI3APAGIAIgAS8BugI7APgGIAIgASgAvQI2APsGIAIgAS8AwQI7AP8GIAIgAS8BxAI7AIIHIAcgEhDICCACIAE2AsgHIAIoAvQCIQQgAkGAAjsArwQgAkEBOgCQBCACQQA6ANgGIAIgBDYCoAYgAiABLQCwAjoArgQgAiABKAGqAjYAqAQgAiABLwGuAjsArAQgAiABKQCzAjcAsQQgAiABKQC7AjcAuQQgAiABKADDAjYAwQQgFEEVaiADKQAANwAAIBRBEGogECkBADcBACAUQQhqIBYpAQA3AQAgFCATKQEANwEAIAcgAkGoBGoQyAggAiABNgKABSACQQA2AvADIAJCgICAgMAANwLoAyACIAJBoAZqNgL8AyACIAJBkARqNgL4AyACIAJB2AZqNgL0AyABLQCgAkECRw0FIBIgARC5FQJAAkACQCACKALoBiIEQShqIhIQyA0iCkUNACAKKAIAQRRHDQAgCi0ABEEERg0BC0EAIQogEhDIDSISRQ0GIBIoAgBBIUcNBiAEQTxqIgoQ+RcgChD5FyACQYgCaiAEQQBBARCTASACKAKMAiEKIAIoAogCDQEMBgsgAkGQAmogBEEAQQEQkwEgAigClAIhCiACKAKQAkUNBQsgAkHoBmoQ7yQgCiEEDAYLIAYhAwwLCyACKALsBiEDDAoLIAMoAgBBFEcNBSADLQAEQQRHDQUMBgsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAJB9AZqIgYgDEEIaikCADcCACACQfwGaiAMQRBqKAIANgIAIAIgDCkCADcC7AYgAiAENgLoBiACQegGaiIIEL4KIB8gASgCnAMiBCAEIB9LGyEDIClBAXEEQCAIIAFBFGogAyAxpyAxQiCIpxCjBQsgBiACQfACaigCADYCACACIAIpAugCNwLsBiACIB8gBCAEIB9JGzYC/AYgAiADNgL4BiACQQ42AugGIAJB6AZqEL0oIQNBAAwNCyACQegGahDvJAsCQAJAAkAgBxDIDSIEBEAgBCgCAEEJRg0BCyAPIAcQgBAgAkHwAWogBxDqEyACQfjd3wA2AuwGIAJBNDoA6AYgAigC8AEgAigC9AEgAkHoBmoQ6xQhBCAHEMgNIgNFDQEgAygCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNECABIAEoAswCEPsLDAELIA0gDCkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgBSAIKQIANwIAIAkgESgCADYCACACIAQ2AugGIAJB6AZqIhIQvgogAkEAOgDrBSACQQE6AO0FIAIgAi0A2AY6AN8FIAIgAi0AkAQ6AOAFIAIgAS0AsAI6AN4FIAIgAS0AvgI6AOwFIAIgAS0AxgI6APQFIAIgASgBqgI2ANgFIAIgAS8BrgI7ANwFIAIgASkAswI3AOEFIAIgAS8AuwI7AOkFIAIgASgCwAI2AO4FIAIgAS8BxAI7APIFIAtBFWogAykAADcAACALQRBqIBApAQA3AQAgC0EIaiAWKQEANwEAIAsgEykBADcBACAHIAJB2AVqEMgIIAIgATYC6AYgAkGoA2ogARCyASACKAKsAyEDIAIoAqgDIgRBgICAgHhHBEAgAiACKAKwAyIQNgLABiACIAM2ArwGIAIgBDYCuAYgEhDvJAJAAkAgBxDIDSIEBEAgBCgCAEEKRg0BCyAPIAcQgBAgAkH4AWogBxDqEyACQdDd3wA2AuwGIAJBNDoA6AYgAigC+AEgAigC/AEgAkHoBmoQ6xQhBCAHEMgNIgNFDQEgAygCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNESABIAEoAswCEPsLDAELIA0gDCkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgBSAIKQIANwIAIAkgESgCADYCACACIAQ2AugGIAJB6AZqEL4KQQAhBAJAIAEtAKACQQJHDQAgBxDIDSIFRQ0AIAUoAgBBE0cNACACQYACaiABQajY3wAQ8QEgAigChAIhBCACKAKAAg0BCyACIAQ2AoAGIAJB6AZqIAEgAi0A2AYgAi0AkAQgAyAQEKgZEKwDIAIoAuwGIQggAigC6AYiFkGBgICAeEcEQCAcIB4pAgA3AwAgAiAPKQIANwOoAyAWQYCAgIB4Rw0EIAEtAKACQQJHDQQgEEEGdCEFA0AgBUUNBSADKAIAQQRGBEAgAygCECEJIAMoAgwhESACQakBOgDoBiABIBEgCSACQegGahCpGQsgA0FAayEDIAVBQGohBQwACwALIAJBgAZqEOAmIAghBAsgAkG4BmoQ4SYMAQsgAkHoBmoQ7yQgAyEECyAKEL4oDAELIBUgAikC6AM3AgAgFUEIaiACQfADaigCADYCACAPIAJBwAZqKAIANgIAIAIgAikCuAY3A+gGIAEoApwDIQkgAigCoAYhESACLQCQBCEFIAItANgGIRBByABBBBCMICIDIAg2AhwgAyAWNgIYIAMgEDoARSADIAU6AEQgAyAENgJAIAMgCjYCPCADQQA2AjggAyARIAkgCSARSRs2AjQgAyARIAkgCSARSxs2AjAgA0EQaiACQfgGaikDADcCACADQQhqIA8pAwA3AgAgAyACKQPoBjcCACADIAIpA6gDNwIgIANBKGogHCkDADcCAEEADAELIAJB6ANqENcmIAQhA0EBCyEFIAJBgAVqEO8kIAIgBjYC1AQgAiAdNgLQBAJ/IAVFBEAgCyACKQPQBDcCACALQRhqIAJB6ARqKQMANwIAIAtBEGogAkHgBGopAwA3AgAgC0EIaiAXKQMANwIAQfAAQQgQjCAiDkEKNgIAIA5BBGogAkHoBmpBJBD2BhogDiADNgIoQQAhA0EADAELIAJB0ARqEIYWQQELIQUgAkHIB2oQ7yQMAgsgBxDIDSIDRSAEckUEQCADKAIAQQ5GDQELIAJBCGogBxDqEyACKAIMIQQgAigCCCEDIAJB9QA6AOgGIAEgAyAEIAJB6AZqIgYQqRkgAigC9AIiBCABKAKcAyIDIAMgBEsbIAQgAyADIARJGxCEHCEEIAtBGGogAkGQA2opAwA3AgAgC0EQaiACQYgDaikDADcCACALQQhqIBopAwA3AgAgCyACKQP4AjcCAEHwAEEIEIwgIg5BBjYCACAOQQRqIAZBJBD2BhogDiAENgIoQQAhAwwCCwJ/AkACQAJAAn8CQAJAAkACfwJAAkACQAJ/AkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAHEMgNIgNFDQAgAygCAEETRw0AIA0gDCkCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgDUEIaiAMQQhqKQIANwIAIA1BEGogDEEQaigCADYCACACIAM2AugGIAJB6AZqIggQvgogCCABQQEQtxIgAkHoAWogAigC6AYQsgYgAigC7AEhAyACKALoASAIEO8kDQEgCyACKQP4AjcCACALQRhqIAJBkANqKQMANwIAIAtBEGogAkGIA2opAwA3AgAgC0EIaiAaKQMANwIAQfAAQQgQjCAiDkEGNgIAIA5BBGogCEEkEPYGGiAOIAM2AihBACEDDCgLIAEtAKACQQJHDQEgBxDIDSIDRQ0BIAMoAgBBFEcNASADLQAEQQRHDQEMAgsgBA0HIAIpA4ADENYaDCcLIAcQyA0iAwRAIAMoAgBBCUYNAQsgBA0DIAJBoANqIgUgESkDADcDACACIBopAwA3A5gDAkAgBxDIDSIERQ0AIAQoAgBBF0cNACANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiAENgLoBiACQegGaiIREL4KIAEoApwDIQQgASgCmAMhAyACQZIBOgDoBiABIAMgBCAREKkZCwJAIAcQyA0iBEUNACAEKAIAQRVHDQAgBC0ABEUNAwsgBxDIDSIEBEAgBCgCAEEQRg0DCyAHEMgNIgQEQCAEKAIAQQ5GDQMLIAJBqAFqIAJBmANqEJEMIAIoAqgBIgQgAigCrAEiA0H6ruAAQQMQzR8NEiAEIANB/a7gAEEDEM0fRQ0BDBILIBlBFWogE0EVaiIDKQAANwAAIBlBEGogE0EQaiIFKQEANwEAIBlBCGogE0EIaiIIKQEANwEAIBkgEykBADcBAEEAIQYgAkEAOgD6BiACQQE6AIEHIAIgAS0AxgI6AIQHIAIgASkBqgI3AOgGIAIgASkBsgI3APAGIAIgAS8BugI7APgGIAIgASgAvQI2APsGIAIgAS8AwQI7AP8GIAIgAS8BxAI7AIIHIAcgAkHoBmoiCRDICCACIAE2AsgHIAIoAvQCIQQgAkEAOwDfBSACQQA6AKAGIAJBADoAkAQgAiAENgKABiACIAEtALACOgDeBSACIAEoAaoCNgDYBSACIAEvAa4COwDcBSACIAEpALMCNwDhBSACIAEpALsCNwDpBSACIAEoAMMCNgDxBSAUQRVqIAMpAAA3AAAgFEEQaiAFKQEANwEAIBRBCGogCCkBADcBACAUIBMpAQA3AQAgByACQdgFahDICCACIAE2AoAFIAJBADYCsAQgAkKAgICAwAA3AqgEIAIgAkGABmo2ArwEIAIgAkGgBmo2ArgEIAIgAkGQBGo2ArQEIAEtAKACQQJHDQ4gCSABELkVAkAgAigC6AYiBEEoaiIJEMgNIgZFDQAgBigCAEEURw0AIAYtAARBBEYNBAtBACEGIAkQyA0iCUUNDSAJKAIAQSFHDQ0gBEE8aiIGEPkXIAYQ+RcgAkHYAWogBEEAQQEQkwEgAigC3AEhBiACKALYAQ0EDA0LIAQgA0GgseAAQQUQzR8NECABLQCgAkECRwRAIBUgBxCAECACQaABaiAHEOoTIAJBKjYC8AYgAkHEouAANgLsBiACQTA6AOgGIAIoAqABIAIoAqQBIAJB6AZqEOsUIQMgBxDIDSIERQ0SIAQoAgBBJEcNEiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwSCyAVIAcQgBAgAkGYAWogBxDqEyACQdIANgLwBiACQYCj4AA2AuwGIAJBMDoA6AYgAigCmAEgAigCnAEgAkHoBmoQ6xQhAyAHEMgNIgRFDREgBCgCAEEkRw0RIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBiABIAEoAswCEPsLDBELIAcQyA0iBA0HDAgLIBUgBxCAECACQbgBaiAHEOoTIAJBCjYC8AYgAkHko+AANgLsBiACQTA6AOgGIAIoArgBIAIoArwBIAJB6AZqEOsUIQMgBxDIDSIERQ0CIAQoAgBBJEcNAiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQUgASABKALMAhD7CwwCCyACQeABaiAEQQBBARCTASACKALkASEGIAIoAuABRQ0JCyACQegGahDvJCAGIQQMCgsgAkH4AmoQhhYMHwtBuePgAEEoQfCi4AAQ2hcAC0G54+AAQShB1KPgABDaFwALQbnj4ABBKEHwo+AAENoXAAsgBCgCAEEVRw0AIAQtAAQNACANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiAENgLoBiACQegGaiIIEL4KIAggAUEBELcSIAJBsAFqIAIoAugGELIGIAIoArQBIQMgAigCsAEgCBDvJA0CIAEoApwDIQQgAigC9AIhBiAbIAUpAwA3AwAgAiACKQOYAzcDgAUgCCACQYAFahCDHEHwAEEIEIwgIg4gBiAEIAQgBkkbNgIMIA4gBiAEIAQgBksbNgIIIA5BBzYCACAOIAM2AiggDiACKQPoBjcDECAOQRhqIA8pAwA3AwAgDkEgaiACQfgGaikDADcDAAwBCyACQdAHaiAFKQMANwMAIAIgAikDmAM3A8gHIAJBgAVqIAJByAdqEIMcIAtBEGogAkGQBWopAwA3AgAgC0EIaiAbKQMANwIAIAsgAikDgAU3AgBB8ABBCBCMICIOQQU2AgAgDiACKQLoBjcCBCAOQQxqIA8pAgA3AgAgDkEUaiACQfgGaikCADcCACAOQRxqIAJBgAdqKAIANgIAC0EAIQNBACEFDBcLIAIpA5gDENYaQQEhBQwWCyACQegGahDvJAsCQAJAAkAgBxDIDSIEBEAgBCgCAEEJRg0BCyAPIAcQgBAgAkHAAWogBxDqEyACQfjd3wA2AuwGIAJBNDoA6AYgAigCwAEgAigCxAEgAkHoBmoQ6xQhBCAHEMgNIgNFDQEgAygCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNICABIAEoAswCEPsLDAELIA0gDCkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgDUEIaiIJIAxBCGoiESkCADcCACANQRBqIhAgDEEQaiIWKAIANgIAIAIgBDYC6AYgAkHoBmoiEhC+CiACQQA6AOMEIAJBAToA5QQgAiACLQCQBDoA1wQgAiACLQCgBjoA2AQgAiABLQCwAjoA1gQgAiABLQC+AjoA5AQgAiABLQDGAjoA7AQgAiABKAGqAjYA0AQgAiABLwGuAjsA1AQgAiABKQCzAjcA2QQgAiABLwC7AjsA4QQgAiABKALAAjYA5gQgAiABLwHEAjsA6gQgC0EVaiADKQAANwAAIAtBEGogBSkBADcBACALQQhqIAgpAQA3AQAgCyATKQEANwEAIAcgAkHQBGoQyAggAiABNgLoBiACQegDaiABELIBIAIoAuwDIQMgAigC6AMiBEGAgICAeEcEQCACIAIoAvADIgU2ArADIAIgAzYCrAMgAiAENgKoAyASEO8kAkACQCAHEMgNIgQEQCAEKAIAQQpGDQELIA8gBxCAECACQcgBaiAHEOoTIAJB0N3fADYC7AYgAkE0OgDoBiACKALIASACKALMASACQegGahDrFCEEIAcQyA0iA0UNASADKAIAQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0hIAEgASgCzAIQ+wsMAQsgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAJIBEpAgA3AgAgECAWKAIANgIAIAIgBDYC6AYgAkHoBmoQvgpBACEEAkAgAS0AoAJBAkcNACAHEMgNIghFDQAgCCgCAEETRw0AIAJB0AFqIAFBqNjfABDxASACKALUASEEIAIoAtABDQELIAIgBDYCuAYgAkHoBmogASACLQCQBCACLQCgBiADIAUQqBkQrAMgAigC7AYhCCACKALoBiIRQYGAgIB4RwRAIAJB8ANqIhAgCikCADcDACACIA8pAgA3A+gDIBFBgICAgHhHDQQgAS0AoAJBAkcNBCAFQQZ0IQUDQCAFRQ0FIAMoAgBBBEYEQCADKAIQIQogAygCDCEJIAJBqQE6AOgGIAEgCSAKIAJB6AZqEKkZCyADQUBrIQMgBUFAaiEFDAALAAsgAkG4BmoQ4CYgCCEECyACQagDahDhJgwBCyACQegGahDvJCADIQQLIAYQvigMAQsgFSACKQKoBDcCACAVQQhqIAJBsARqKAIANgIAIA8gHCgCADYCACACIAIpAqgDNwPoBiABKAKcAyEKIAIoAoAGIQkgAi0AoAYhBSACLQCQBCEWQcgAQQQQjCAiAyAINgIcIAMgETYCGCADIBY6AEUgAyAFOgBEIAMgBDYCQCADIAY2AjwgA0EANgI4IAMgCSAKIAkgCksbNgI0IAMgCSAKIAkgCkkbNgIwIANBEGogAkH4BmopAwA3AgAgA0EIaiAPKQMANwIAIAMgAikD6AY3AgAgAyACKQPoAzcCICADQShqIBApAwA3AgBBAAwBCyACQagEahDXJiAEIQNBAQshBSACQYAFahDvJAJ/IAUEQCACQfgCahCGFkEBDAELIAsgAikD+AI3AgAgC0EYaiACQZADaikDADcCACALQRBqIAJBiANqKQMANwIAIAtBCGogGikDADcCAEHwAEEIEIwgIg5BCjYCACAOQQRqIAJB6AZqQSQQ9gYaIA4gAzYCKEEAIQNBAAshBSACQcgHahDvJAwSCyAGQQFxBEAgAkH9ADoA6AYgASAJIAggAkHoBmoQqRkLQQAhBgJAIAJBmANqQaCx4ABBBRCxG0UNACAHEMgNIgRFDQAgBCgCAEEURw0AIAQtAARBDUcNACANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiAENgLoBiACQegGahC+CkEBIQYLIAJB6AZqIgggARCtASACKALsBiERIAIoAugGIhZBBUcEQCACQdgDaiIdIBApAwAiMjcDACACQdADaiIeIAopAwAiMzcDACACIA8pAwAiNDcDyAMgHCA0NwMAIBxBCGogMzcDACAcQRBqIDI3AwAgAiARNgKsAyACIBY2AqgDIAJBkAFqIAJBqANqEIccIAIgAikDkAE3AuADICFBFWogE0EVaiIEKQAANwAAICFBEGogE0EQaiIDKQEANwEAICFBCGogE0EIaiIFKQEANwEAICEgEykBADcBACACQQA6APoGIAJBAToAgQcgAiABLQDGAjoAhAcgAiABKQGqAjcA6AYgAiABKQGyAjcA8AYgAiABLwG6AjsA+AYgAiABKAC9AjYA+wYgAiABLwDBAjsA/wYgAiABLwHEAjsAggcgByAIEMgIIAIgATYC6AMgAkGIAWogAkGYA2oQkQwCQAJAIAIoAogBIgggAigCjAEiCUH6ruAAQQMQzR9FBEAgCCAJQf2u4ABBAxDNHw0BIAggCUGgseAAQQUQzR8NAkG54+AAQShBgKTgABDaFwALIAIoAvQCIQZBACEIIAJBADsA1wQgAkEAOgDMBSACQQA6AI8IIAIgBjYC2AYgAiABLQCwAjoA1gQgAiABKAGqAjYA0AQgAiABLwGuAjsA1AQgAiABKQCzAjcA2QQgAiABKQC7AjcA4QQgAiABKADDAjYA6QQgFEEVaiAEKQAANwAAIBRBEGogAykBADcBACAUQQhqIAUpAQA3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KAIQIgIQsx8NAQJAIAEtAAtBAXFFBEAgA0HIAGogAUEgakHYrMMAEJ4dIAMoAkwhBSADKAJIIQQgA0FAayABQeAAakHorMMAEJ4dIAMoAkQhASADQYADaiAEIAMoAkAQwgYgA0HQAWoiBCADQYwDaigCADYCACADIAMpAoQDNwPIASADKAKAAyIGQSpHDQEgA0H4AGogBCgCADYCACADIAMpA8gBNwNwIAwgAkEDdGohAgNAIAIgDEYEQCAAIANB8ABqEOcGIAEgASgCAEEBajYCACAFIAUoAgBBAWo2AgAMDQsgA0HIAWogDCgCACAMKAIEENIcIAxBCGohDANAIANB4AJqIANByAFqEO4CIAMtAOACQQRGBEAgAygCyAEgAygCzAEQyikMAgsgA0H4AmogA0HoAmotAAA6AAAgAyADKQDgAjcD8AIgA0E4aiADQfACahCaICADQYADaiIEIANB8ABqIAMoAjggAygCPBDgBCADKAKAAyIGQSpGDQALCyAAQQRqIARBBHJBPBD2BhogACAGNgIAIAMoAsgBIAMoAswBEMopDAYLAkACQCABLQAMQQFxRQRAIAEoAtgBDQIgAUF/NgLYASABQdwBaiEFIAEoAuQBRQ0BIAEgAS8B7AFBAWoiBDsB7AEgBEH//wNxIARGDQcgA0EANgKIAyADQgA3A4ADIANBADsBjAMgA0HIAWogA0GAA2ogASgC6AEQ7wcgASgC3AEgAUHgAWooAgAQySkgBUEIaiADQdABaigCADYCACAFIAMpAsgBNwIADAcLIAEoAoQBRQRAIAFBfzYChAEgAUGIAWoiEBCYByABQaABaiEYIAFBrAFqIRkgDCACQQN0aiEdIANBzAFqIQ8gA0HwAGpBAnIhFCADQeECaiEaIAFBsAFqIR4gAUGQAWohFSABQYwBaiEWIANB1AFqIR8gA0HOAWohICADQdEBaiEhIAFBpAFqISICQAJAA0ACQCAMIB1GBEAgA0EQaiABQSBqQYitwwAQnh0gAygCFCEFIAMoAhAhAiADQQhqIAFB4ABqQZitwwAQnh0gAygCDCEGIANBgANqIAIgAygCCBDCBiADQdABaiICIANBjANqKAIANgIAIAMgAykChAM3A8gBIAMoAoADIgRBKkcNASADQfgAaiACKAIANgIAIAMgAykDyAE3A3AgASgCuAEN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BQwCCyADQYADaiICIA4gFCASEMMNIANBwANqIAIQ1BUMAgsgASgCoAEgIigCABDKKSAYQQhqIANB2ANqKAIANgIAIBggAykD0AM3AgAMAQsgECADQcADaiAUIBIQxxghBAsgFSgCACECIBYoAgAhCQJAAkAgCEUEQCAJIAIgCyATIAogBSAEEOgMDAELIAkgAiATELAfIgIoAggiCCALTQ0BIAIoAgQgC0EDdGoiAiAFOgAFIAIgCjoABCACIAQ2AgBBACEICyAGQQNqIQYgC0EBaiELDAELCwsLIAsgCEGgosMAEJsQAAtBkLHDAEEkQcChwwAQ2hcACyACQQRBuKPDABCdEAALQQEgB0HI6+AAEJsQAAsgASgCrAEgHigCABDJKSAZQQhqIANByANqKAIANgIAIBkgAykDwAM3AgAMAQsACwALCyAAQRBqIANBkANqQTAQ9gYaIABBDGogAigCADYCACAAIAMpA8gBNwIEDAgLQYChwwAQ2xQAC0HwoMMAENsUAAtB+KzDABDbFAALIANBADYCiAMgA0IANwOAAyADQQA7AYwDIANByAFqIANBgANqIAEoAugBEO8HIAEoAtwBIAFB4AFqKAIAEMkpIAVBCGogA0HQAWooAgA2AgAgBSADKQLIATcCAAwFC0HIrcMAENsUAAsgAEEQaiADQZADakEwEPYGGiAAQQxqIAQoAgA2AgAgACADKQPIATcCBCAAIAY2AgAMBAsgA0GAA2ogARCmFyADKAKEAyEFIAMoAoADIgRBKkYEQCADQbwBaiACKAIQIgQQ/REgBEEBdCEEIAWtISYgAigCDCECA0AgBARAIANBvAFqIAIxAAFCKIYgAjEAAEIghoQgJoQQphsgBEECayEEIAJBAmohAgwBBSADQYADaiABIANBvAFqEOIWIAMoAoQDIQEgAygCgAMiAkEqRgRAIAAgBTYCCCAAIAE2AgQgAEEqNgIADAwLIABBCGogA0GIA2pBOBD2BhogACABNgIEIAAgAjYCAAwLCwALAAsgAEEIaiADQYgDakE4EPYGGiAAIAU2AgQgACAENgIADAgLIANBgANqIAEQphcgAygChAMhBSADKAKAAyIEQSpHBEAgAEEIaiADQYgDakE4EPYGGiAAIAU2AgQgACAENgIADAgLIANBsAFqIAIQ/REgAkEDdCECIAWtISYC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Ug0CCwJAIAUtAERFDQAgA0EANgJAIANBKGogASADQUBrQcWo4ABBARCUEyADLQAoQQRGDQAgAykDKCITQv8Bg0IEUg0CCyADQUBrIAIgARCjByADLQBAQQRGDQAgAykDQCITQv8Bg0IEUg0BCyADQUBrIAEgBCgCIBD2AyADLQBAQQRGDQcgAykDQCITQv8Bg0IEUQ0HCyATQv8Bg0IEUg0FDAYLIANBKGogASAEKAIoIgJBABDRAQJAIAMtAChBBEcEQCADKQMoIhNC/wGDQgRSDQELIANBEGogBEEIaiIHELQcIANBKGogASADKAIQQQAQ0QEgAy0AKEEERwRAIAMpAygiE0L/AYNCBFINAQsCQCACRQ0AIANBKGogASACELMcIAMtAChBBEYNACADKQMoIhNC/wGDQgRSDQELIAQoAjAiAigCFEEMbCEGIAIoAhAhBQJAA0ACQCAGRQRAIANBKGogASAELQA5EIgIIAMtAChBBEcEQCADKQMoIhNC/wGDQgRSDQULIAQtADQNAQwDCyADQShqIAEgBRC/BiADLQAoQQRHBEAgAykDKCITQv8Bg0IEUg0ECyAFQQxqIQUgBkEMayEGDAELCyADQQA2AiggA0E4aiABIANBKGpBzLzgAEEGEJQTIAMtADhBBEcEQCADKQM4IhNC/wGDQgRSDQILAkAgBC0AOA0AIAItAEUNACACLQBERQRAQQEgBygCAHRBFXENAQsgAS0ATQ0BIANBKGogARC4ESADLQAoQQRGDQEgAykDKCITQv8Bg0IEUQ0BDAILIANBKGogARC4ESADLQAoQQRGDQAgAykDKCITQv8Bg0IEUg0BCwJAIAQtADVFDQAgA0EANgIoIANBOGogASADQShqQe+u4ABBCBCUEyADLQA4QQRHBEAgAykDOCITQv8Bg0IEUg0CCyADQShqIAEQuBEgAy0AKEEERg0AIAMpAygiE0L/AYNCBFINAQsCQCAELQA3RQ0AIANBADYCKCADQThqIAEgA0EoakGcvOAAQQgQlBMgAy0AOEEERwRAIAMpAzgiE0L/AYNCBFINAgsgA0EoaiABELgRIAMtAChBBEYNACADKQMoIhNC/wGDQgRSDQELAkACQAJAAkACQAJAAkACQAJAIAQtADhBAWsOAgABAgsgA0EANgIoIANBOGogASADQShqQfqu4ABB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IAQoAqgBQRBGDQ0gBEGoA2ogBEHAAWooAgA2AgAgBEGgA2ogBEG4AWopAgA3AwAgBEGYA2ogBEGwAWopAgA3AwAgBCAEKQKoASIWNwOQAyAWp0EPRw0OIARBkANqEOgUIARBvAJqIARByAJqEKkQDAELCyAEQQg2AsgCCyAEQcgCahDOJCAEKALAAiAEKALEAhCkCCAEQagBaiIBIARBvAJqEFogAyABEIoYDBMLIARBADYCnAIgBEKAgICAwAA3ApQCIAEoAgAhBSAEQZQDaiEBIARBrAFqIQMDQCAEQagBaiAFEJIMAkACQCAEKAKoASICQRBHBEAgASADKQIANwIAIAFBEGogA0EQaikCADcCACABQQhqIgYgA0EIaikCADcCACAEIAI2ApADAkACQAJAAkACQAJAAkACQAJAAkAgAkEHa0EAIAJBCE8bQQFrDggAAQIDBAUGBwgLIARBgANqIAYoAgA2AgAgBCABKQIANwP4AiAEQaACaiAEQfgCahDIEAwICyAEQQE2AqwBIARBzL7EADYCqAEgBEIANwK0ASAEIARB0ABqNgKwASAEQagBakHUvsQAEKEdAAsgBEEBNgKsASAEQbi/xAA2AqgBIARCADcCtAEgBCAEQdAAajYCsAEgBEGoAWpBwL/EABChHQALIARBATYCrAEgBEGkwMQANgKoASAEQgA3ArQBIAQgBEHQAGo2ArABIARBqAFqQazAxAAQoR0ACyAEQQE2AqwBIARBiMHEADYCqAEgBEIANwK0ASAEIARB0ABqNgKwASAEQagBakGQwcQAEKEdAAsgBEEINgKgAgwDCyAEQQE2AqwBIARB9MHEADYCqAEgBEIANwK0ASAEIARB0ABqNgKwASAEQagBakH8wcQAEKEdAAsgBEEBNgKsASAEQeTCxAA2AqgBIARCADcCtAEgBCAEQdAAajYCsAEgBEGoAWpB7MLEABChHQALIARBuAJqIARBqANqKAIANgIAIARBsAJqIARBoANqKQIANwMAIARBqAJqIARBmANqKQIANwMAIAQgBCkCkAM3A6ACCyACQQlPBEAgBEGQA2oQ6BQLIAQoAqACQQhGDQEgBEHAAWogBEG4AmooAgA2AgAgBEG4AWogBEGwAmopAwA3AwAgBEGwAWogBEGoAmopAwA3AwAgBCAEKQOgAiIWNwOoASAWp0UN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AkEANgKEAiACQoCAgIAQNwL8ASABKALQASEGDAILQQAhAyACQQA2AtgBIAIgBjYC1AEgAiAENgLQAUEBIQcDQCACQfgAaiACQdABahDgDyACKAJ8IgVBgIDEAEYNAyACKAJ4IQgCQCAHBEAgBRDPEQ0BDAULIAUQ0BEgBUEtRg0ARQ0ECwJ/QQEgBUGAAUkNABpBAiAFQYAQSQ0AGkEDQQQgBUGAgARJGwsgCGohA0EAIQcMAAsACyAIEJwVQSIhBwwLCwJAAn8DQCABKALAASABKALEARDcHCIDQYCAxABGBEAgASgCnAEhBCACQRs6ANABIAEgBCACQdABahC0IyABKALQASEEDAMLIAEoAtABIQQgA0HcAEYEQCACQZABaiAIIAYgBBC8FSACQfwBaiIEIAIoApABIAIoApQBENYdIARB3AAQ9wcgCBCcFSABKALQASEGDAELIAMgBUYNAiADQSZGBEAgAkGYAWogCCAGIAQQvBUgAkH8AWoiAyACKAKYASACKAKcARDWHSACQdABaiABEEEgAigC1AEiByACKALQASIEQYCAxABGDQIaIAIoAtgBIQkgAyAEEPcHIAEoAtABIQYgByAJEKckDAELIAMQ7B1FBEAgCBCcFQwBCyACQaABaiAIIAYgBBC8FSACQfwBaiIHIAIoAqABIAIoAqQBENYdIAJB0AFqIAFBABCjDSACKALQAUUEQCACKALYASEGAkAgAigC1AEiCQRAIAcgCSAGENYdDAELIAJB/AFqIAYQ9wcLAn9BASADQYABSQ0AGkECIANBgBBJDQAaQQNBBCADQYCABEkbCyAEaiEGDAELCyACKALUAQshBSACKAL8ASACKAKAAhCnJAwNCyACKAKEAiEDIAJBiAFqIAggBiAEELwVIAIoAowBIQQgAigCiAEhBQJ+IAMEQCACQfwBaiIGIAUgBBDWHSABKALoAUEIaiAGENsLDAELIAEoAugBQQhqIAUgBBDmGQshFCABKALAASABKALEARCLHEGAgMQARwRAIAgQnBULIAJBgAFqIAggCiABKALQARC8FSABKALoAUEIaiACKAKAASACKAKEARDmGSEVIANFBEAgAigC/AEgAigCgAIQpyQLIAIgFTcDuAEgAiAUNwOwAUEbIQcMCgsgASAGNgLEASABIAMgBGo2AsABIAEgAyAKajYC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IT0gA0Guwd8AQQEQuRo3A7gBIANCADcDwAEgA0HgJmoiBCADQbgBahCDHCADQaABaiIHIAQpAwA3AwAgA0GoAWoiCCADQegmaikDADcDACADQbABaiIEIANB8CZqKQMANwMAIANCADcDmAFB1ZnaAEEjELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA5gBNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ABARAIA8oAgAQhwQhCUH4mdoAQRgQuRohPSADQa7B3wBBARC5GjcD6AEgA0IANwPwASADQeAmaiIEIANB6AFqEIMcIANB0AFqIgcgBCkDADcDACADQdgBaiIIIANB6CZqKQMANwMAIANB4AFqIgQgA0HwJmopAwA3AwAgA0IANwPIAUGQmtoAQScQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDyAE3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAFBEAgDygCABCHBCEJQbea2gBBEBC5GiE9IANBrsHfAEEBELkaNwOYAiADQgA3A6ACIANB4CZqIgQgA0GYAmoQgxwgA0GAAmoiByAEKQMANwMAIANBiAJqIgggA0HoJmopAwA3AwAgA0GQAmoiBCADQfAmaikDADcDACADQgA3A/gBQcea2gBBHxC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQP4ATcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAAYEQCAPKAIAEIcEIQlB5praAEEZELkaIT0gA0Guwd8AQQEQuRo3A8gCIANCADcD0AIgA0HgJmoiBCADQcgCahCDHCADQbACaiIHIAQpAwA3AwAgA0G4AmoiCCADQegmaikDADcDACADQcACaiIEIANB8CZqKQMANwMAIANCADcDqAJB/5raAEEoELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA6gCNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ABwRAIA8oAgAQhwQhCUGnm9oAQQ8QuRohPSADQa7B3wBBARC5GjcD+AIgA0IANwOAAyADQeAmaiIEIANB+AJqEIMcIANB4AJqIgcgBCkDADcDACADQegCaiIIIANB6CZqKQMANwMAIANB8AJqIgQgA0HwJmopAwA3AwAgA0IANwPYAkG2m9oAQR4QuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD2AI3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAIBEAgDygCABCHBCEJQdSb2gBBExC5GiE9IANBrsHfAEEBELkaNwOoAyADQgA3A7ADIANB4CZqIgQgA0GoA2oQgxwgA0GQA2oiByAEKQMANwMAIANBmANqIgggA0HoJmopAwA3AwAgA0GgA2oiBCADQfAmaikDADcDACADQgA3A4gDQeeb2gBBIhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOIAzcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAAkEQCAPKAIAEIcEIQlBiZzaAEEWELkaIT0gA0Guwd8AQQEQuRo3A9gDIANCADcD4AMgA0HgJmoiBCADQdgDahCDHCADQcADaiIHIAQpAwA3AwAgA0HIA2oiCCADQegmaikDADcDACADQdADaiIEIANB8CZqKQMANwMAIANCADcDuANBn5zaAEElELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA7gDNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ACgRAIA8oAgAQhwQhCUHEnNoAQQwQuRohPSADQa7B3wBBARC5GjcDiAQgA0IANwOQBCADQeAmaiIEIANBiARqEIMcIANB8ANqIgcgBCkDADcDACADQfgDaiIIIANB6CZqKQMANwMAIANBgARqIgQgA0HwJmopAwA3AwAgA0IANwPoA0HQnNoAQRsQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD6AM3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQALBEAgDygCABCHBCEJQeuc2gBBCxC5GiE9IANBrsHfAEEBELkaNwO4BCADQgA3A8AEIANB4CZqIgQgA0G4BGoQgxwgA0GgBGoiByAEKQMANwMAIANBqARqIgggA0HoJmopAwA3AwAgA0GwBGoiBCADQfAmaikDADcDACADQgA3A5gEQfac2gBBGhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOYBDcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAAwEQCAPKAIAEIcEIQlBkJ3aAEEcELkaIT0gA0Guwd8AQQEQuRo3A+gEIANCADcD8AQgA0HgJmoiBCADQegEahCDHCADQdAEaiIHIAQpAwA3AwAgA0HYBGoiCCADQegmaikDADcDACADQeAEaiIEIANB8CZqKQMANwMAIANCADcDyARBrJ3aAEErELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA8gENwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ADQRAIA8oAgAQhwQhCUHXndoAQSMQuRohPSADQa7B3wBBARC5GjcDmAUgA0IANwOgBSADQeAmaiIEIANBmAVqEIMcIANBgAVqIgcgBCkDADcDACADQYgFaiIIIANB6CZqKQMANwMAIANBkAVqIgQgA0HwJmopAwA3AwAgA0IANwP4BEH6ndoAQTIQuRohPEHIABDNICIFQgA3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AwA3AwAgA0GICGoiCCADQegmaikDADcDACADQZAIaiIEIANB8CZqKQMANwMAIANCADcD+AdBt6LaAEEnELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA/gHNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AFgRAIA8oAgAQhwQhCUHeotoAQRkQuRohPSADQa7B3wBBARC5GjcDyAggA0IANwPQCCADQeAmaiIEIANByAhqEIMcIANBsAhqIgcgBCkDADcDACADQbgIaiIIIANB6CZqKQMANwMAIANBwAhqIgQgA0HwJmopAwA3AwAgA0IANwOoCEH3otoAQSgQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDqAg3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAXBEAgDygCABCHBCEJQZ+j2gBBHxC5GiE9IANBrsHfAEEBELkaNwP4CCADQgA3A4AJIANB4CZqIgQgA0H4CGoQgxwgA0HgCGoiByAEKQMANwMAIANB6AhqIgggA0HoJmopAwA3AwAgA0HwCGoiBCADQfAmaikDADcDACADQgA3A9gIQb6j2gBBLhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPYCDcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstABgEQCAPKAIAEIcEIQlB7KPaAEEeELkaIT0gA0Guwd8AQQEQuRo3A6gJIANCADcDsAkgA0HgJmoiBCADQagJahCDHCADQZAJaiIHIAQpAwA3AwAgA0GYCWoiCCADQegmaikDADcDACADQaAJaiIEIANB8CZqKQMANwMAIANCADcDiAlBiqTaAEEtELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA4gJNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AGQRAIA8oAgAQhwQhCUG3pNoAQRgQuRohPSADQa7B3wBBARC5GjcD2AkgA0IANwPgCSADQeAmaiIEIANB2AlqEIMcIANBwAlqIgcgBCkDADcDACADQcgJaiIIIANB6CZqKQMANwMAIANB0AlqIgQgA0HwJmopAwA3AwAgA0IANwO4CUHPpNoAQScQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDuAk3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAaBEAgDygCABCHBCEJQfak2gBBGxC5GiE9IANBrsHfAEEBELkaNwOICiADQgA3A5AKIANB4CZqIgQgA0GICmoQgxwgA0HwCWoiByAEKQMANwMAIANB+AlqIgggA0HoJmopAwA3AwAgA0GACmoiBCADQfAmaikDADcDACADQgA3A+gJQZGl2gBBKhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPoCTcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstABsEQCAPKAIAEIcEIQlBu6XaAEEZELkaIT0gA0Guwd8AQQEQuRo3A7gKIANCADcDwAogA0HgJmoiBCADQbgKahCDHCADQaAKaiIHIAQpAwA3AwAgA0GoCmoiCCADQegmaikDADcDACADQbAKaiIEIANB8CZqKQMANwMAIANCADcDmApB1KXaAEEoELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA5gKNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AHARAIA8oAgAQhwQhCUH8pdoAQRoQuRohPSADQa7B3wBBARC5GjcD6AogA0IANwPwCiADQeAmaiIEIANB6ApqEIMcIANB0ApqIgcgBCkDADcDACADQdgKaiIIIANB6CZqKQMANwMAIANB4ApqIgQgA0HwJmopAwA3AwAgA0IANwPICkGWptoAQSkQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDyAo3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAd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IANB8AxqIgcgBCkDADcDACADQfgMaiIIIANB6CZqKQMANwMAIANBgA1qIgQgA0HwJmopAwA3AwAgA0IANwPoDEGxqdoAQRwQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD6Aw3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAjBEAgDygCABCHBCEJQc2p2gBBCRC5GiE9IANBrsHfAEEBELkaNwO4DSADQgA3A8ANIANB4CZqIgQgA0G4DWoQgxwgA0GgDWoiByAEKQMANwMAIANBqA1qIgggA0HoJmopAwA3AwAgA0GwDWoiBCADQfAmaikDADcDACADQgA3A5gNQdap2gBBGBC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOYDTcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstACQEQCAPKAIAEIcEIQlB7qnaAEEJELkaIT0gA0Guwd8AQQEQuRo3A+gNIANCADcD8A0gA0HgJmoiBCADQegNahCDHCADQdANaiIHIAQpAwA3AwAgA0HYDWoiCCADQegmaikDADcDACADQeANaiIEIANB8CZqKQMANwMAIANCADcDyA1B96naAEEYELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA8gNNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AJQRAIA8oAgAQhwQhCUGPqtoAQR0QuRohPSADQa7B3wBBARC5GjcDmA4gA0IANwOgDiADQeAmaiIEIANBmA5qEIMcIANBgA5qIgcgBCkDADcDACADQYgOaiIIIANB6CZqKQMANwMAIANBkA5qIgQgA0HwJmopAwA3AwAgA0IANwP4DUGsqtoAQSwQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD+A03AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAmBEAgDygCABCHBCEJQdiq2gBBEBC5GiE9IANBrsHfAEEBELkaNwPIDiADQgA3A9AOIANB4CZqIgQgA0HIDmoQgxwgA0GwDmoiByAEKQMANwMAIANBuA5qIgggA0HoJmopAwA3AwAgA0HADmoiBCADQfAmaikDADcDACADQgA3A6gOQeiq2gBBHxC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOoDjcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstACcEQCAPKAIAEIcEIQlBh6vaAEEMELkaIT0gA0Guwd8AQQEQuRo3A/gOIANCADcDgA8gA0HgJmoiBCADQfgOahCDHCADQeAOaiIHIAQpAwA3AwAgA0HoDmoiCCADQegmaikDADcDACADQfAOaiIEIANB8CZqKQMANwMAIANCADcD2A5Bk6vaAEEbELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA9gONwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AKARAIA8oAgAQhwQhCUGuq9oAQQgQuRohPSADQa7B3wBBARC5GjcDqA8gA0IANwOwDyADQeAmaiIEIANBqA9qEIMcIANBkA9qIgcgBCkDADcDACADQZgPaiIIIANB6CZqKQMANwMAIANBoA9qIgQgA0HwJmopAwA3AwAgA0IANwOID0G2q9oAQRcQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDiA83AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQApBEAgDygCABCHBCEJQc2r2gBBBBC5GiE9IANBrsHfAEEBELkaNwPYDyADQgA3A+APIANB4CZqIgQgA0HYD2oQgxwgA0HAD2oiByAEKQMANwMAIANByA9qIgggA0HoJmopAwA3AwAgA0HQD2oiBCADQfAmaikDADcDACADQgA3A7gPQdGr2gBBExC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQO4DzcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstACoEQCAPKAIAEIcEIQlB5KvaAEERELkaIT0gA0Guwd8AQQEQuRo3A4gQIANCADcDkBAgA0HgJmoiBCADQYgQahCDHCADQfAPaiIHIAQpAwA3AwAgA0H4D2oiCCADQegmaikDADcDACADQYAQaiIEIANB8CZqKQMANwMAIANCADcD6A9B9avaAEEgELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA+gPNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AKwRAIA8oAgAQhwQhCUGVrNoAQQkQuRohPSADQa7B3wBBARC5GjcDuBAgA0IANwPAECADQeAmaiIEIANBuBBqEIMcIANBoBBqIgcgBCkDADcDACADQagQaiIIIANB6CZqKQMANwMAIANBsBBqIgQgA0HwJmopAwA3AwAgA0IANwOYEEGerNoAQRgQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDmBA3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAsBEAgDygCABCHBCEJQbas2gBBDxC5GiE9IANBrsHfAEEBELkaNwPoECADQgA3A/AQIANB4CZqIgQgA0HoEGoQgxwgA0HQEGoiByAEKQMANwMAIANB2BBqIgggA0HoJmopAwA3AwAgA0HgEGoiBCADQfAmaikDADcDACADQgA3A8gQQcWs2gBBHhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPIEDcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAC0EQCAPKAIAEIcEIQlB46zaAEEcELkaIT0gA0Guwd8AQQEQuRo3A5gRIANCADcDoBEgA0HgJmoiBCADQZgRahCDHCADQYARaiIHIAQpAwA3AwAgA0GIEWoiCCADQegmaikDADcDACADQZARaiIEIANB8CZqKQMANwMAIANCADcD+BBB/6zaAEErELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA/gQNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ALgRAIA8oAgAQhwQhCUGqrdoAQRsQuRohPSADQa7B3wBBARC5GjcDyBEgA0IANwPQESADQeAmaiIEIANByBFqEIMcIANBsBFqIgcgBCkDADcDACADQbgRaiIIIANB6CZqKQMANwMAIANBwBFqIgQgA0HwJmopAwA3AwAgA0IANwOoEUHFrdoAQSoQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDqBE3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAvBEAgDygCABCHBCEJQe+t2gBBCxC5GiE9IANBrsHfAEEBELkaNwP4ESADQgA3A4ASIANB4CZqIgQgA0H4EWoQgxwgA0HgEWoiByAEKQMANwMAIANB6BFqIgggA0HoJmopAwA3AwAgA0HwEWoiBCADQfAmaikDADcDACADQgA3A9gRQfqt2gBBGhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPYETcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstADAEQCAPKAIAEIcEIQlBlK7aAEEYELkaIT0gA0Guwd8AQQEQuRo3A6gSIANCADcDsBIgA0HgJmoiBCADQagSahCDHCADQZASaiIHIAQpAwA3AwAgA0GYEmoiCCADQegmaikDADcDACADQaASaiIEIANB8CZqKQMANwMAIANCADcDiBJBrK7aAEEnELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA4gSNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AMQRAIA8oAgAQhwQhCUHTrtoAQRkQuRohPSADQa7B3wBBARC5GjcD2BIgA0IANwPgEiADQeAmaiIEIANB2BJqEIMcIANBwBJqIgcgBCkDADcDACADQcgSaiIIIANB6CZqKQMANwMAIANB0BJqIgQgA0HwJmopAwA3AwAgA0IANwO4EkHsrtoAQSgQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDuBI3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQAyBEAgDygCABCHBCEJQZSv2gBBExC5GiE9IANBrsHfAEEBELkaNwOIEyADQgA3A5ATIANB4CZqIgQgA0GIE2oQgxwgA0HwEmoiByAEKQMANwMAIANB+BJqIgggA0HoJmopAwA3AwAgA0GAE2oiBCADQfAmaikDADcDACADQgA3A+gSQaev2gBBIhC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPoEjcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstADMEQCAPKAIAEIcEIQlBya/aAEESELkaIT0gA0Guwd8AQQEQuRo3A7gTIANCADcDwBMgA0HgJmoiBCADQbgTahCDHCADQaATaiIHIAQpAwA3AwAgA0GoE2oiCCADQegmaikDADcDACADQbATaiIEIANB8CZqKQMANwMAIANCADcDmBNB26/aAEEhELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA5gTNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ANARAIA8oAgAQhwQhCUH8r9oAQRgQuRohPSADQa7B3wBBARC5GjcD6BMgA0IANwPwEyADQeAmaiIEIANB6BNqEIMcIANB0BNqIgcgBCkDADcDACADQdgTaiIIIANB6CZqKQMANwMAIANB4BNqIgQgA0HwJmopAwA3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ADcD8BYgA0HgJmoiBCADQegWahCDHCADQdAWaiIHIAQpAwA3AwAgA0HYFmoiCCADQegmaikDADcDACADQeAWaiIEIANB8CZqKQMANwMAIANCADcDyBZBurPaAEEjELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA8gWNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0APQRAIA8oAgAQhwQhCUHds9oAQRoQuRohPSADQa7B3wBBARC5GjcDmBcgA0IANwOgFyADQeAmaiIEIANBmBdqEIMcIANBgBdqIgcgBCkDADcDACADQYgXaiIIIANB6CZqKQMANwMAIANBkBdqIgQgA0HwJmopAwA3AwAgA0IANwP4FkH3s9oAQSkQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD+BY3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQA+BEAgDygCABCHBCEJQaC02gBBIBC5GiE9IANBrsHfAEEBELkaNwPIFyADQgA3A9AXIANB4CZqIgQgA0HIF2oQgxwgA0GwF2oiByAEKQMANwMAIANBuBdqIgggA0HoJmopAwA3AwAgA0HAF2oiBCADQfAmaikDADcDACADQgA3A6gXQcC02gBBLxC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOoFzcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAD8EQCAPKAIAEIcEIQlB77TaAEEcELkaIT0gA0Guwd8AQQEQuRo3A/gXIANCADcDgBggA0HgJmoiBCADQfgXahCDHCADQeAXaiIHIAQpAwA3AwAgA0HoF2oiCCADQegmaikDADcDACADQfAXaiIEIANB8CZqKQMANwMAIANCADcD2BdBi7XaAEErELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA9gXNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AQARAIA8oAgAQhwQhCUG2tdoAQRAQuRohPSADQa7B3wBBARC5GjcDqBggA0IANwOwGCADQeAmaiIEIANBqBhqEIMcIANBkBhqIgcgBCkDADcDACADQZgYaiIIIANB6CZqKQMANwMAIANBoBhqIgQgA0HwJmopAwA3AwAgA0IANwOIGEHGtdoAQR8QuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDiBg3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBBBEAgDygCABCHBCEJQeW12gBBBBC5GiE9IANBrsHfAEEBELkaNwPYGCADQgA3A+AYIANB4CZqIgQgA0HYGGoQgxwgA0HAGGoiByAEKQMANwMAIANByBhqIgggA0HoJmopAwA3AwAgA0HQGGoiBCADQfAmaikDADcDACADQgA3A7gYQem12gBBExC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQO4GDcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAEIEQCAPKAIAEIcEIQlB/LXaAEERELkaIT0gA0Guwd8AQQEQuRo3A4gZIANCADcDkBkgA0HgJmoiBCADQYgZahCDHCADQfAYaiIHIAQpAwA3AwAgA0H4GGoiCCADQegmaikDADcDACADQYAZaiIEIANB8CZqKQMANwMAIANCADcD6BhBjbbaAEEgELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA+gYNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AQwRAIA8oAgAQhwQhCUGtttoAQRoQuRohPSADQa7B3wBBARC5GjcDuBkgA0IANwPAGSADQeAmaiIEIANBuBlqEIMcIANBoBlqIgcgBCkDADcDACADQagZaiIIIANB6CZqKQMANwMAIANBsBlqIgQgA0HwJmopAwA3AwAgA0IANwOYGUHHttoAQSkQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDmBk3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3Auwm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ARC5GjcD2BsgA0IANwPgGyADQeAmaiIEIANB2BtqEIMcIANBwBtqIgcgBCkDADcDACADQcgbaiIIIANB6CZqKQMANwMAIANB0BtqIgQgA0HwJmopAwA3AwAgA0IANwO4G0GZudoAQRUQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDuBs3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBKBEAgDygCABCHBCEJQa652gBBCRC5GiE9IANBrsHfAEEBELkaNwOIHCADQgA3A5AcIANB4CZqIgQgA0GIHGoQgxwgA0HwG2oiByAEKQMANwMAIANB+BtqIgggA0HoJmopAwA3AwAgA0GAHGoiBCADQfAmaikDADcDACADQgA3A+gbQbe52gBBGBC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQPoGzcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAEsEQCAPKAIAEIcEIQlBz7naAEEUELkaIT0gA0Guwd8AQQEQuRo3A7gcIANCADcDwBwgA0HgJmoiBCADQbgcahCDHCADQaAcaiIHIAQpAwA3AwAgA0GoHGoiCCADQegmaikDADcDACADQbAcaiIEIANB8CZqKQMANwMAIANCADcDmBxB47naAEEjELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA5gcNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ATARAIA8oAgAQhwQhCUGGutoAQQ0QuRohPSADQa7B3wBBARC5GjcD6BwgA0IANwPwHCADQeAmaiIEIANB6BxqEIMcIANB0BxqIgcgBCkDADcDACADQdgcaiIIIANB6CZqKQMANwMAIANB4BxqIgQgA0HwJmopAwA3AwAgA0IANwPIHEGTutoAQRwQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykDyBw3AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBNBEAgDygCABCHBCEJQa+62gBBEBC5GiE9IANBrsHfAEEBELkaNwOYHSADQgA3A6AdIANB4CZqIgQgA0GYHWoQgxwgA0GAHWoiByAEKQMANwMAIANBiB1qIgggA0HoJmopAwA3AwAgA0GQHWoiBCADQfAmaikDADcDACADQgA3A/gcQb+62gBBHxC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQP4HDcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAE4EQCAPKAIAEIcEIQlB3rraAEEHELkaIT0gA0Guwd8AQQEQuRo3A8gdIANCADcD0B0gA0HgJmoiBCADQcgdahCDHCADQbAdaiIHIAQpAwA3AwAgA0G4HWoiCCADQegmaikDADcDACADQcAdaiIEIANB8CZqKQMANwMAIANCADcDqB1B5braAEEWELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA6gdNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0ATwRAIA8oAgAQhwQhCUH7utoAQQgQuRohPSADQa7B3wBBARC5GjcD+B0gA0IANwOAHiADQeAmaiIEIANB+B1qEIMcIANB4B1qIgcgBCkDADcDACADQegdaiIIIANB6CZqKQMANwMAIANB8B1qIgQgA0HwJmopAwA3AwAgA0IANwPYHUGDu9oAQRcQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD2B03AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBQBEAgDygCABCHBCEJQZq72gBBHhC5GiE9IANBrsHfAEEBELkaNwOoHiADQgA3A7AeIANB4CZqIgQgA0GoHmoQgxwgA0GQHmoiByAEKQMANwMAIANBmB5qIgggA0HoJmopAwA3AwAgA0GgHmoiBCADQfAmaikDADcDACADQgA3A4geQbi72gBBLRC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOIHjcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAFEEQCAPKAIAEIcEIQlB5bvaAEEVELkaIT0gA0Guwd8AQQEQuRo3A9geIANCADcD4B4gA0HgJmoiBCADQdgeahCDHCADQcAeaiIHIAQpAwA3AwAgA0HIHmoiCCADQegmaikDADcDACADQdAeaiIEIANB8CZqKQMANwMAIANCADcDuB5B+rvaAEEkELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA7geNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AUgRAIA8oAgAQhwQhCUGevNoAQRIQuRohPSADQa7B3wBBARC5GjcDiB8gA0IANwOQHyADQeAmaiIEIANBiB9qEIMcIANB8B5qIgcgBCkDADcDACADQfgeaiIIIANB6CZqKQMANwMAIANBgB9qIgQgA0HwJmopAwA3AwAgA0IANwPoHkGwvNoAQSEQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD6B43AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBTBEAgDygCABCHBCEJQdG82gBBERC5GiE9IANBrsHfAEEBELkaNwO4HyADQgA3A8AfIANB4CZqIgQgA0G4H2oQgxwgA0GgH2oiByAEKQMANwMAIANBqB9qIgggA0HoJmopAwA3AwAgA0GwH2oiBCADQfAmaikDADcDACADQgA3A5gfQeK82gBBIBC5GiE8QcgAEM0gIgVCADcDOCAFQQA6ADQgBSAJNgIwIAVCADcDKCAFID03AyAgBUEYaiAEKQMANwMAIAVBEGogCCkDADcDACAFQQhqIAcpAwA3AwAgBSADKQOYHzcDACAFQUBrQQA6AAAgA0EBNgLkJiADIAU2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAFQEQCAPKAIAEIcEIQlBgr3aAEEgELkaIT0gA0Guwd8AQQEQuRo3A+gfIANCADcD8B8gA0HgJmoiBCADQegfahCDHCADQdAfaiIHIAQpAwA3AwAgA0HYH2oiCCADQegmaikDADcDACADQeAfaiIEIANB8CZqKQMANwMAIANCADcDyB9Bor3aAEEvELkaITxByAAQzSAiBUIANwM4IAVBADoANCAFIAk2AjAgBUIANwMoIAUgPTcDICAFQRhqIAQpAwA3AwAgBUEQaiAIKQMANwMAIAVBCGogBykDADcDACAFIAMpA8gfNwMAIAVBQGtBADoAACADQQE2AuQmIAMgBTYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AVQRAIA8oAgAQhwQhCUHRvdoAQScQuRohPSADQa7B3wBBARC5GjcDmCAgA0IANwOgICADQeAmaiIEIANBmCBqEIMcIANBgCBqIgcgBCkDADcDACADQYggaiIIIANB6CZqKQMANwMAIANBkCBqIgQgA0HwJmopAwA3AwAgA0IANwP4H0H4vdoAQTYQuRohPEHIABDNICIFQgA3AzggBUEAOgA0IAUgCTYCMCAFQgA3AyggBSA9NwMgIAVBGGogBCkDADcDACAFQRBqIAgpAwA3AwAgBUEIaiAHKQMANwMAIAUgAykD+B83AwAgBUFAa0EAOgAAIANBATYC5CYgAyAFNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBWBEAgDygCABCHBCEJQa6+2gBBIBC5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NgLYJiAQIANB2CZqEN8ZCyALLQBcBEAgDygCABCHBCEIQb7B2gBBDRC5GiE9IANBrsHfAEEBELkaNwPoIiADQgA3A/AiIANB0CJqIgQgA0HoImoQgxwgA0IANwPIIkHLwdoAQRwQuRohPEHIABDNICIHQgA3AzggB0EAOgA0IAcgCDYCMCAHQgA3AyggByA9NwMgIAdBGGogA0HgImopAwA3AwAgB0EQaiADQdgiaikDADcDACAHQQhqIAQpAwA3AwAgByADKQPIIjcDACAHQUBrQQA6AAAgA0EBNgLkJiADIAc2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAF0EQCAPKAIAEIcEIQhB58HaAEEMELkaIT0gA0Guwd8AQQEQuRo3A5gjIANCADcDoCMgA0GAI2oiBCADQZgjahCDHCADQgA3A/giQfPB2gBBGxC5GiE8QcgAEM0gIgdCADcDOCAHQQA6ADQgByAINgIwIAdCADcDKCAHID03AyAgB0EYaiADQZAjaikDADcDACAHQRBqIANBiCNqKQMANwMAIAdBCGogBCkDADcDACAHIAMpA/giNwMAIAdBQGtBADoAACADQQE2AuQmIAMgBzYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AXgRAIA8oAgAQhwQhCEGOwtoAQQkQuRohPSADQa7B3wBBARC5GjcDyCMgA0IANwPQIyADQbAjaiIEIANByCNqEIMcIANCADcDqCNBl8LaAEEYELkaITxByAAQzSAiB0IANwM4IAdBADoANCAHIAg2AjAgB0IANwMoIAcgPTcDICAHQRhqIANBwCNqKQMANwMAIAdBEGogA0G4I2opAwA3AwAgB0EIaiAEKQMANwMAIAcgAykDqCM3AwAgB0FAa0EAOgAAIANBATYC5CYgAyAHNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBfBEAgDygCABCHBCEIQa/C2gBBChC5GiE9IANBrsHfAEEBELkaNwP4IyADQgA3A4AkIANB4CNqIgQgA0H4I2oQgxwgA0IANwPYI0G5wtoAQRkQuRohPEHIABDNICIHQgA3AzggB0EAOgA0IAcgCDYCMCAHQgA3AyggByA9NwMgIAdBGGogA0HwI2opAwA3AwAgB0EQaiADQegjaikDADcDACAHQQhqIAQpAwA3AwAgByADKQPYIzcDACAHQUBrQQA6AAAgA0EBNgLkJiADIAc2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAGAEQCAPKAIAEIcEIQhB0sLaAEEbELkaIT0gA0Guwd8AQQEQuRo3A6gkIANCADcDsCQgA0GQJGoiBCADQagkahCDHCADQgA3A4gkQe3C2gBBKhC5GiE8QcgAEM0gIgdCADcDOCAHQQA6ADQgByAINgIwIAdCADcDKCAHID03AyAgB0EYaiADQaAkaikDADcDACAHQRBqIANBmCRqKQMANwMAIAdBCGogBCkDADcDACAHIAMpA4gkNwMAIAdBQGtBADoAACADQQE2AuQmIAMgBzYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AYQRAIA8oAgAQhwQhCEGXw9oAQRUQuRohPSADQa7B3wBBARC5GjcD2CQgA0IANwPgJCADQcAkaiIEIANB2CRqEIMcIANCADcDuCRBrMPaAEEkELkaITxByAAQzSAiB0IANwM4IAdBADoANCAHIAg2AjAgB0IANwMoIAcgPTcDICAHQRhqIANB0CRqKQMANwMAIAdBEGogA0HIJGopAwA3AwAgB0EIaiAEKQMANwMAIAcgAykDuCQ3AwAgB0FAa0EAOgAAIANBATYC5CYgAyAHNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB2CZqEN8ZCyALLQBiBEAgDygCABCHBCEIQdDD2gBBEhC5GiE9IANBrsHfAEEBELkaNwOIJSADQgA3A5AlIANB8CRqIgQgA0GIJWoQgxwgA0IANwPoJEHiw9oAQSEQuRohPEHIABDNICIHQgA3AzggB0EAOgA0IAcgCDYCMCAHQgA3AyggByA9NwMgIAdBGGogA0GAJWopAwA3AwAgB0EQaiADQfgkaikDADcDACAHQQhqIAQpAwA3AwAgByADKQPoJDcDACAHQUBrQQA6AAAgA0EBNgLkJiADIAc2AuAmIANBATYC3CZBGBDNICIEQgA3AwggBCA8NwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIBAgA0HYJmoQ3xkLIAstAGMEQCAPKAIAEIcEIQhBg8TaAEEJELkaIT0gA0Guwd8AQQEQuRo3A7glIANCADcDwCUgA0GgJWoiBCADQbglahCDHCADQgA3A5glQYzE2gBBGBC5GiE8QcgAEM0gIgdCADcDOCAHQQA6ADQgByAINgIwIAdCADcDKCAHID03AyAgB0EYaiADQbAlaikDADcDACAHQRBqIANBqCVqKQMANwMAIAdBCGogBCkDADcDACAHIAMpA5glNwMAIAdBQGtBADoAACADQQE2AuQmIAMgBzYC4CYgA0EBNgLcJkEYEM0gIgRCADcDCCAEIDw3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgECADQdgmahDfGQsgCy0AZARAIA8oAgAQhwQhCEGkxNoAQQgQuRohPSADQa7B3wBBARC5GjcD6CUgA0IANwPwJSADQdAlaiIEIANB6CVqEIMcIANCADcDyCVBrMTaAEEXELkaITxByAAQzSAiB0IANwM4IAdBADoANCAHIAg2AjAgB0IANwMoIAcgPTcDICAHQRhqIANB4CVqKQMANwMAIAdBEGogA0HYJWopAwA3AwAgB0EIaiAEKQMANwMAIAcgAykDyCU3AwAgB0FAa0EAOgAAIANBATYC5CYgAyAHNgLgJiADQQE2AtwmQRgQzSAiBEIANwMIIAQgPDcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAQIANB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CyAKQYCAgIB4NgI8IAogAjYCACAEQTRqEOsmIBwQuiggExC2FwwBCyAKIAQpAjQ3AjwgCkHEAGogBEE8aigCADYCACABKAJ8IQIgCiATQTAQ9gYiBSAUOgBIIAUgHDYCOCAFIA4gAiACIA5JGzYCNCAFIA4gAiACIA5LGzYCMAsgBEGgCWokAAwBC0G54+AAQShB1PrfABDaFwALIAMoAoQDIhNBgICAgHhGBEAgAygCyAIhDgwCCyADKALMAiEQIAMoAsgCIREgA0HoBWogA0HQAmpBNBD2BhogA0HoBGogA0GQA2opAwA3AwAgAyADKQOIAzcD4AQMAwsgA0GYBWoQiiYLIABBgYCAgHg2ApABIAAgDjYCAAwCCyABKAIoIQUgAUElNgIoIAEgASkDQDcDeCADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAU2AsgCIANByAJqEL8KIAIgASgCfCIFIAIgBUkbIREgAiAFIAIgBUsbIRBBgICAgHghEwsgAyAQNgKEASADQYgBaiADQegFakE0EPYGGiADQcgBaiADQegEaiIJKQMANwMAIAMgAykD4AQ3A8ABIAMgETYCgAEgAyATNgK8ASADQQA2AtwBIANCgICAgIABNwLUASADQQc6AJQCAkACQCATQYCAgIB4Rg0AIAMtAMgBQQFHDQBBByEGQQAhDiADKALkASEKDAELIANB0AJqIRkgA0HIAmpBBHIhByADQcwCaiEPIANBmARqIQQgA0HwA2ohEiADQewCaiEWIANB3ANqIRpBACECQQAhDgJAAkADQCAIEOMNIgVFBEAgASgC2AIhASADQQA6AMgCIAEgASADQcgCahDrFCEFDAMLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAUoAgAiBUEgaw4FBAUCAgABCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEYND0G54+AAQShB8PffABDaFwALIAVBDUYNAQsgA0HUAmogCBDmCyADQQhqIAgQnxQgA0EgNgLQAiADQeD43wA2AswCIANBMDoAyAIgAygCCCADKAIMIANByAJqEOsUIQUgCBDjDSICRQ0OIAIoAgBBJEcNDiABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBiABIAEoAiwQggwM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AmogDUEIaikCADcCACADQdwCaiANQRBqKAIANgIAIAMgDSkCADcCzAIgAyACNgLIAiADQcgCahC/CiALIAEoAnwiAiACIAtLGyEWIAsgAiACIAtJGyEKQQYhBgwGC0GgAUEIEIwgIgYgBTYCACAGIAcpAgA3AgQgBkEMaiAHQQhqKQIANwIAIAZBFGogB0EQaikCADcCACAGQRxqIAdBGGopAgA3AgAgBkEkaiAWQewAEPYGGiAGIAs2ApABIAYgGikCADcClAEgBkGcAWogGkEIaigCADYCACAGIQVBAwshBiASIAMpA+gFNwMAIBJBGGogA0GABmopAwA3AwAgEkEQaiADQfgFaikDADcDACASQQhqIANB8AVqKQMANwMAIAMgBTYC7AMgAyAGNgLoAyADQegDaiEKDAcLQbnj4ABBKEHY+d8AENoXAAsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0HUAmogDUEIaikCADcCACADQdwCaiANQRBqKAIANgIAIAMgDSkCADcCzAIgAyACNgLIAiADQcgCahC/CiABKAJ8IQIgA0GYBWogA0HoBWpBLBD2BhogA0GqBmogA0GVBmoiBUECai0AADoAACADIAUvAAA7AagGIAsgAiACIAtLGyEWIAsgAiACIAtJGyEKDAILQbnj4ABBKEGw+t8AENoXAAtBuePgAEEoQYD53wAQ2hcACyADQZwCaiICIANBmAVqQSwQ9gYaIANBmgJqIgUgA0GqBmotAAA6AAAgAyADLwGoBjsBmAIgA0HgAWoQ8SAgAyAKNgLkASADIBY2AuABIANB6AFqIAJBLBD2BhogA0GXAmogBS0AADoAACADIAY6AJQCIAMgAy8BmAI7AJUCDAcLIANB6AVqELYXDAULIAEoAtgCIQEgA0EAOgDIAiABIAEgA0HIAmoQ6xQhBQwECyADKALUASAORgRAIANB1AFqEPgWCyADKALYASACaiAKQSgQ9gYaIAMgDkEBaiIONgLcASACQShqIQIMAQsLIANB6AVqEJgpDAELIAEoAiwhBQsgAEGBgICAeDYCkAEgACAFNgIAIANB4AFqEPEgIANB1AFqEMkmIBNBgICAgHhGDQEgA0GAAWoQrCMMAQsgGyABKAJ8IgUgBSAbSxshAiAbIAUgBSAbSRshBSADQZUCaiELIANB6AFqIRICQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgE0GAgICAeEYEQCAGQQZrDgICAQMLIANBwAFqIQ4gA0GIAWohByAGQQZrDgIEAwULQbnj4ABBKEGw+N8AENoXAAtBgICAgHghASADKALYASEHIAMoAtQBIQYgAiEZIAUhGgwMCyADIAo2AswCIAMgFjYCyAIgA0HQAmogEkEsEPYGIQIgA0H/AmogC0ECai0AADoAACADIAY6APwCIAMgCy8AADsA/QIgA0HXADoA6AUgFiAKIANB6AVqEOsUIQUgCBDjDSIGRQ0JIAYoAgBBJEcNCSABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQggwMCQsgA0GYBWogB0E0EPYGGiADQZAFaiAOQQhqKQMANwMAIAMgDikDADcDiAVBBiENIAMpAtgBIS8gAygC1AEhASARIQsgECESIAIhBiAFIQcMCgsgAyAQNgLMAiADIBE2AsgCIANB0AJqIAdBNBD2BhogA0GQA2ogDkEIaikDADcDACADIBM2AoQDIAMgDikDADcDiAMgA0HIAmoQuAghLCADQdgAOgDoBSADICw3A/AFIBYgCiADQegFahDrFCECIAgQ4w0iBUUNBiAFKAIAQSRHDQYgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDAYLIAMgEDYCzAIgAyARNgLIAiADQdACaiAHQTQQ9gYhECADQZADaiAOQQhqKQMANwMAIAMgEzYChAMgAyAOKQMANwOIAyADIAo2AuwFIAMgFjYC6AUgA0HwBWogEkEsEPYGIQcgA0GfBmogC0ECai0AADoAACADIAY6AJwGIAMgCy8AADsAnQYgAyAHELgINwOgBiADIANByAJqELgIIiw3A6gGIANBoAZqIANBqAZqIgYQrwsgLBDWGiADKQOgBhDWGg0EIAMoAuwFIQIgAygC6AUgA0HIAmoQuAghLCADQdgAOgCoBiADICw3A7AGIAIgBhDrFCECIAgQ4w0iBUUNAyAFKAIAQSRHDQMgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDAMLQbnj4ABBKEGg+N8AENoXAAtBuePgAEEoQcD43wAQ2hcAC0G54+AAQShB0PjfABDaFwALIABBgYCAgHg2ApABIAAgAjYCACAHELYXIANByAJqEKwjDAMLIAMoAswCIRIgAygCyAIhCyADQZgFaiAQQTQQ9gYaIANBkAVqIANBiANqIgFBCGopAwA3AwAgA0HYBWogA0GMBmopAgA3AwAgA0HgBWogA0GUBmopAgA3AwAgAyABKQMANwOIBSADIAMpAoQGNwPQBSADKAKEAyETIAMoAtQBIQEgAykC2AEhLyADKALoBSEOIAMoAuwFIRkgAygC8AUhGiADKAL0BSERIAMoAvgFIRAgAygC/AUhFiADKAKABiEKIANBzgVqIANBnQZqIgZBAmotAAA6AAAgAyAGLwAAOwHMBSADLQCcBiENIAIhBiAFIQcMAwsgAEGBgICAeDYCkAEgACACNgIAIANByAJqEKwjDAELIABBgYCAgHg2ApABIAAgBTYCACACELYXCyADQdQBahDJJgwBCyAAIAo2AiAgACAWNgIcIAAgEDYCGCAAIBE2AhQgACAaNgIQIAAgGTYCDCAAIA42AgggACAHNgIEIAAgBjYCACAAIAMpA9AFNwIkIAAgDToAPCAAIAMvAcwFOwA9IABBLGogA0HYBWopAwA3AgAgAEE0aiADQeAFaikDADcCACAAQT9qIANBzgVqLQAAOgAAIAAgEjYCRCAAIAs2AkAgAEHIAGogA0GYBWpBNBD2BhogACATNgJ8IAAgLzcClAEgACABNgKQASAAIAMpA4gFNwOAASAAQYgBaiADQZAFaikDADcDAAsgA0HcAGoQiiYMAQtBuePgAEEoQeD33wAQ2hcACyADQcAGaiQAC8hLAih/BX4jAEHABmsiAyQAAkAgAUEoaiIIEMgNIgVFBEAgASgCgAIhASADQQA6AMgCIAEgASADQcgCahDrFCEBIABBgYCAgHg2ApABIAAgATYCAAwBCwJAAn8CQAJAIAUoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQFBuePgAEEoQdD33wAQ2hcACyAIEKUgIRsgA0HUAmogAUHUAmopAgA3AgAgA0HcAmogAUHcAmooAgA2AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIAMgASkCzAI3AswCIAMgBTYCyAIgBUEURg0BIAVBIUcNA0EADAILIAEoAswCIQEgAEGBgICAeDYCkAEgACABNgIADAMLIAMtAMwCQQRHDQFBAQshBSABQcwCaiENIANByAJqEL4KIANBADoATCADIAU6AFcgAyABLQC2AjoASyADIAEpAaoCNwA/IAMgAUGyAmoiBSgBADYARyADIAEpA7gCNwBNIAMgAS8BwAI7AFUgAyABKADDAjYAWCADQfUAaiABQb8CaikAADcAACADQfAAaiABQboCaikBADcCACADQegAaiAFKQEANwIAIAMgASkBqgI3AmAgCCADQT9qEMgIIAMgATYCXAJAAkACQCAIEMgNIgUEQCAFKAIAQSJGDQELIANBADoAqQIgAyABLQC2AjoAqAIgAyABLQDGAjoAuAIgAyABKQGqAjcAnAIgAyABKAGyAjYApAIgAyABKQO4AjcAqgIgAyABKALAAjYAsgIgAyABLwHEAjsAtgIgA0GxBWogAUGqAmoiBUEVaikAADcAACADQawFaiAFQRBqKQEANwIAIANBpAVqIAVBCGopAQA3AgAgAyAFKQEANwKcBSAIIANBnAJqEMgIIAMgATYCmAUgA0HIAmoiCiABEKoDIAMoAsgCIQ4CQCADLQD0AiIFQQZHBEAgA0HgAWoiE0EEciAKQQRyQSgQ9gYaIANBjwJqIANB9wJqLQAAOgAAIAMgAy8A9QI7AI0CIAMgBToAjAIgAyAONgLgASADQZgFahDvJCACIQ4jAEGQCWsiBCQAIAFBKGohCQJAIAEtAKACQQJHDQAgCRDIDSICRQ0AIAIoAgBBFEcNACACLQAEQQRHDQAgAS0AoAJBAkcNACABLQCqAiEFIARBkAFqIgIgARCcAyAEQQE6APsHIAQgASkAqwI3APwHIAQgASkAswI3AIQIIAQgASkAuwI3AIwIIAQgASgAwwI2AJQIIARBuAFqIARB+wdqEMgIIARBKGogAhDuASAEIAQoAiwiHDYC/AggBCAEKAIoIg82AvgIIA8EQCAEQfgIahDwHyACEMsQQQAhHAwBCyAEQbAEaiICIARBkAFqQaADEPYGGiABEMsQIAEgAkGgAxD2BiECIAQgBToAsAggBCACKQCrAjcAsQggBCACKQCzAjcAuQggBCACKQC7AjcAwQggBCACKADDAjYAyQggCSAEQbAIahDICAsgBEKAgICAgAE3AjQgAUGqAmohHyABQcwCaiEPIARB3AhqISYgBEG4BGohGCAEQcQFaiEnIARB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AmogDUEIaikCADcCACADQdwCaiANQRBqKAIANgIAIAMgDSkCADcCzAIgAyAFNgLIAiADQcgCahC+CiACIAEoApwDIgUgAiAFSRshESACIAUgAiAFSxshEEGAgICAeCETCyADIBA2AoQBIANBiAFqIANB6AVqQTQQ9gYaIANByAFqIANB6ARqIgkpAwA3AwAgAyADKQPgBDcDwAEgAyARNgKAASADIBM2ArwBIANBADYC3AEgA0KAgICAgAE3AtQBIANBBzoAlAICQAJAIBNBgICAgHhGDQAgAy0AyAFBAUcNAEEHIQZBACEOIAMoAuQBIQoMAQsgA0HQAmohGSADQcgCakEEciEHIANBzAJqIQ8gA0GYBGohBCADQfADaiESIANB7AJqIRYgA0HcA2ohGkEAIQJBACEOAkACQANAIAgQyA0iBUUEQCABKAKAAiEBIANBADoAyAIgASABIANByAJqEOsUIQUMAwsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBSgCACIFQSBrDgUEBQICAAELIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYND0G54+AAQShB8PffABDaFwALIAVBDUYNAQsgA0HUAmogCBCAECADQQhqIAgQ6hMgA0EgNgLQAiADQeD43wA2AswCIANBMDoAyAIgAygCCCADKAIMIANByAJqEOsUIQUgCBDIDSICRQ0OIAIoAgBBJEcNDiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwOCyAIEKUgGgJAAkACQCAIEI8TIgUEQCAFKAIAQQdGDQELIANByAJqIAEQ/wMgAygCyAIiBUECRg0BIAkgDykCADcCACAJQQhqIA9BCGopAgA3AgAgAyAFNgLkBCADQQE2AuAEIANB4ARqIQoMDAsgCBClICELAkACQAJAAkACQCAIEMgNIgUEQCAFKAIAQQ1GDQELIANB0AJqIAgQgBAgA0EQaiAIEOoTIANB4NnfADYCzAIgA0E0OgDIAiADKAIQIAMoAhQgA0HIAmoQ6xQhBSAIEMgNIgJFDRQgAigCAEEkRw0UIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUG54+AAQShB+PnfABDaFwALIAcgDSkCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgB0EIaiIGIA1BCGoiCikCADcCACAHQRBqIgwgDUEQaiIVKAIANgIAIAMgBTYCyAIgA0HIAmoQvgogCBDIDSIFBEAgBSgCAEEHRg0CCyADQdACaiAIEIAQIANBGGogCBDqEyADQaj23wA2AswCIANBNDoAyAIgAygCGCADKAIcIANByAJqEOsUIQUgCBDIDSICRQ0TIAIoAgBBJEcNEyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQILIAEgASgCzAIQ+wsMEgsgByANKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAGIAopAgA3AgAgDCAVKAIANgIAIAMgBTYCyAIgA0HIAmoQvgogA0EoaiABEIkGIAMoAiwhBSADKAIoDREgAyAFNgLoBSAIEMgNIhQEQCAUKAIAQQ5GDQILIBkgCBCAECADQSBqIAgQ6hMgA0G42d8ANgLMAiADQTQ6AMgCIAMoAiAgAygCJCADQcgCahDrFCEFIAgQyA0iAkUNDiACKAIAQSRHDQ4gASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0GIAEgASgCzAIQ+wsMDgtBuePgAEEoQej53wAQ2hcACyAHIA0pAgA3AgAgASgCyAIhFCABQSU2AsgCIAEgASkD4AI3A5gDIAYgCikCADcCACAMIBUoAgA2AgAgAyAUNgLIAiADQcgCahC+CiALIAEoApwDIgogCiALSxshBiAFDQEgBiEFDA8LIAMoAswCIQUMDgsgAyALIAogCiALSRs2AsQEIAMgBjYCwAQgAyAFNgK8BCADQQI2ArgEIANBuARqIQoMCQsgA0HIAmogARDSESADKQPIAlBFBEAgBCADKQPIAjcDACAEQRBqIANB2AJqKQMANwMAIARBCGogGSkDADcDACADQQA2ApAEIANBkARqIQoMCQsgAygC0AIhBQwMCyAIEKUgIQsCfwJAAkACQCAIEI8TIgVFDQAgBSgCAEEURw0AIAUtAARBDkYNAQsgA0HIAmogASALEEogAygCyAIhBSADKALYAyILQYGAgIB4Rg0OIAtBgICAgHhHDQEgA0GABmogB0EYaikCADcDACADQfgFaiAHQRBqKQIANwMAIANB8AVqIAdBCGopAgA3AwAgAyAHKQIANwPoBUEEDAILIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAI2AsgCIANByAJqIgIQvgogCBDIDSIFRQRAIAEoAoACIQEgA0EAOgDIAiABIAEgAhDrFCEFDA4LIAUoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQ1BuePgAEEoQYD43wAQ2hcACyAIEMgNIgJFDQggAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNDUG54+AAQShBkPjfABDaFwALIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAI2AsgCIANByAJqEL4KAkAgCBDIDSICBEAgAigCAEEiRg0BCyADQcgCaiICIAEQqgMgAygCyAIhBSADLQD0AiIGQQZGDQ4gA0HoBWpBBHIgAkEEckEoEPYGGiADQZcGaiADQfcCai0AADoAACADIAMvAPUCOwCVBiADIAY6AJQGIAMgBTYC6AUgCBDIDSICBEAgAigCAEEiRg0FCyADQdACaiAIEIAQIANBMGogCBDqEyADQZj63wA2AswCIANBNDoAyAIgAygCMCADKAI0IANByAJqEOsUIQUgCBDIDSICRQ0IIAIoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQUgASABKALMAhD7CwwICyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0HUAmogDUEIaikCADcCACADQdwCaiANQRBqKAIANgIAIAMgDSkCADcCzAIgAyACNgLIAiADQcgCahC+CiALIAEoApwDIgIgAiALSxshFiALIAIgAiALSRshCkEGIQYMBgtBoAFBCBCMICIGIAU2AgAgBiAHKQIANwIEIAZBDGogB0EIaikCADcCACAGQRRqIAdBEGopAgA3AgAgBkEcaiAHQRhqKQIANwIAIAZBJGogFkHsABD2BhogBiALNgKQASAGIBopAgA3ApQBIAZBnAFqIBpBCGooAgA2AgAgBiEFQQMLIQYgEiADKQPoBTcDACASQRhqIANBgAZqKQMANwMAIBJBEGogA0H4BWopAwA3AwAgEkEIaiADQfAFaikDADcDACADIAU2AuwDIAMgBjYC6AMgA0HoA2ohCgwHC0G54+AAQShB2PnfABDaFwALIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAI2AsgCIANByAJqEL4KIAEoApwDIQIgA0GYBWogA0HoBWpBLBD2BhogA0GqBmogA0GVBmoiBUECai0AADoAACADIAUvAAA7AagGIAsgAiACIAtLGyEWIAsgAiACIAtJGyEKDAILQbnj4ABBKEGw+t8AENoXAAtBuePgAEEoQYD53wAQ2hcACyADQZwCaiICIANBmAVqQSwQ9gYaIANBmgJqIgUgA0GqBmotAAA6AAAgAyADLwGoBjsBmAIgA0HgAWoQ8SAgAyAKNgLkASADIBY2AuABIANB6AFqIAJBLBD2BhogA0GXAmogBS0AADoAACADIAY6AJQCIAMgAy8BmAI7AJUCDAcLIANB6AVqELYXDAULIAEoAoACIQEgA0EAOgDIAiABIAEgA0HIAmoQ6xQhBQwECyADKALUASAORgRAIANB1AFqEPgWCyADKALYASACaiAKQSgQ9gYaIAMgDkEBaiIONgLcASACQShqIQIMAQsLIANB6AVqEL8oDAELIAEoAswCIQULIABBgYCAgHg2ApABIAAgBTYCACADQeABahDxICADQdQBahDJJiATQYCAgIB4Rg0BIANBgAFqEKwjDAELIBsgASgCnAMiBSAFIBtLGyECIBsgBSAFIBtJGyEFIANBlQJqIQsgA0HoAWohEgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCATQYCAgIB4RgRAIAZBBmsOAgIBAwsgA0HAAWohDiADQYgBaiEHIAZBBmsOAgQDBQtBuePgAEEoQbD43wAQ2hcAC0GAgICAeCEBIAMoAtgBIQcgAygC1AEhBiACIRkgBSEaDAwLIAMgCjYCzAIgAyAWNgLIAiADQdACaiASQSwQ9gYhAiADQf8CaiALQQJqLQAAOgAAIAMgBjoA/AIgAyALLwAAOwD9AiADQdcAOgDoBSAWIAogA0HoBWoQ6xQhBSAIEMgNIgZFDQkgBigCAEEkRw0JIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAkLIANBmAVqIAdBNBD2BhogA0GQBWogDkEIaikDADcDACADIA4pAwA3A4gFQQYhDSADKQLYASEuIAMoAtQBIQEgESELIBAhEiACIQYgBSEHDAoLIAMgEDYCzAIgAyARNgLIAiADQdACaiAHQTQQ9gYaIANBkANqIA5BCGopAwA3AwAgAyATNgKEAyADIA4pAwA3A4gDIANByAJqELgIISsgA0HYADoA6AUgAyArNwPwBSAWIAogA0HoBWoQ6xQhAiAIEMgNIgVFDQYgBSgCAEEkRw0GIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEPsLDAYLIAMgEDYCzAIgAyARNgLIAiADQdACaiAHQTQQ9gYhECADQZADaiAOQQhqKQMANwMAIAMgEzYChAMgAyAOKQMANwOIAyADIAo2AuwFIAMgFjYC6AUgA0HwBWogEkEsEPYGIQcgA0GfBmogC0ECai0AADoAACADIAY6AJwGIAMgCy8AADsAnQYgAyAHELgINwOgBiADIANByAJqELgIIis3A6gGIANBoAZqIANBqAZqIgYQrwsgKxDWGiADKQOgBhDWGg0EIAMoAuwFIQIgAygC6AUgA0HIAmoQuAghKyADQdgAOgCoBiADICs3A7AGIAIgBhDrFCECIAgQyA0iBUUNAyAFKAIAQSRHDQMgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ+wsMAwtBuePgAEEoQaD43wAQ2hcAC0G54+AAQShBwPjfABDaFwALQbnj4ABBKEHQ+N8AENoXAAsgAEGBgICAeDYCkAEgACACNgIAIAcQthcgA0HIAmoQrCMMAwsgAygCzAIhEiADKALIAiELIANBmAVqIBBBNBD2BhogA0GQBWogA0GIA2oiAUEIaikDADcDACADQdgFaiADQYwGaikCADcDACADQeAFaiADQZQGaikCADcDACADIAEpAwA3A4gFIAMgAykChAY3A9AFIAMoAoQDIRMgAygC1AEhASADKQLYASEuIAMoAugFIQ4gAygC7AUhGSADKALwBSEaIAMoAvQFIREgAygC+AUhECADKAL8BSEWIAMoAoAGIQogA0HOBWogA0Gd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M2o2AmAgAyADQTRqNgJcIANB0ABqENgLIgJFBEAgA0EANgLcASADQoCAgIDAADcC1AEgA0HUAWohAgwJCyADQQRBBEEEEOcUIAMoAgAhBSADKAIEIgQgAjYCACADQQE2AtwBIAMgBDYC2AEgAyAFNgLUASADQaABaiADQeAAaigCADYCACADQZgBaiADQdgAaikCADcDACADIAMpAlA3A5ABQQQhBUEBIQgDQCADIANBkAFqENgLIgI2AjggAgRAIAMoAtQBIAhGBEAgA0HUAWpBARDwHiADKALYASEECyAEIAVqIAI2AgAgAyAIQQFqIgg2AtwBIAVBBGohBQwBCwsgA0E4ahCdJyADKALcAUEBRg0GIANB1AFqIQIMCAsDQCACIAdGBEAgAygCTEEBRwRAIANBxABqIQIMCgsgA0EANgJMIANBkAFqIgAgAygCSCgCACICQcAAEPYGGiABEKgDIAEgAEHAABD2BhogA0HEAGoMCAUgBkEBaiEGIAJBBGoCQAJAAkAgAigCACIFKAIAQRlHBEAgAhD2HiECIAYgCkYNASADQcQAaiACIANBM2oQ3AQQyA4MAwsgBSgCDCENIAVBADYCDCAFKAIEIQggBSgCCCECIAVCgICAgMAANwIEIAIgDUECdCIFaiEMIAYgCkcEQCADIAw2ApwBIAMgCDYCmAEgAyACNgKUASADIAI2ApABIAMgA0EzajYCoAEDQCACIAxGDQMgAigCACACQQRqIQIgA0EzahDcBCIIRQ0AIAMoAkwiBSADKAJERgRAIANBxABqQQEQ8B4LIAMoAkggBUECdGogCDYCACADIAVBAWo2AkwMAAsACyADIAw2ApwBIAMgCDYCmAEgAyACNgKQASANQQFrIQggDUH/////A3EhCQNAIAUEQCACKAIAIQ0CQCAIBEAgA0HEAGogDSADQTNqENwEEMgODAELIANBxABqIA0QshsLIAJBBGohAiAFQQRrIQUgCEEBayEIDAEFIAMgCTYCoAEgAyAMNgKUASADQZABahDKFwwECwALAAsgA0HEAGogAhCyGwwBCyADQQA2AlAgAyAMNgKUASADQdAAahCdJyADQQA2AjggA0E4ahCdJyADQZABahDKFwshAgwBCwALAAsgBCADKAKYARC+KQALIAEoAigiASgCAEEbRg0GDAgLIAJBGUYNAQsgAkEMayIFQSVLIAVBB0ZyDQAgAkEPRw0GAkAgEEEBaw4DAAcHAQsgEUEBcQ0FCyAAIAQQyQEMBQsgA0EANgLcASADQZABaiIAIAMoAtgBKAIAIgJBwAAQ9gYaIAEQqAMgASAAQcAAEPYGGiADQdQBagsgAhDwKhDOJgwDCyADQThqIQpBACEGIwBBIGsiBSQAIAUgAigCCCIENgIAAkAgBEECTQRAIAogAikCADcCACAKQQhqIAJBCGooAgA2AgAMAQsgAigCACEMIAIoAgQhAkEAIQggBUEANgIUIAUgAiAEQQJ0IgdqIgk2AhAgBSAMNgIMIAUgAjYCBCAFIAU2AhggAiEEA0ACQAJAIAcgCEcEQCAFIAIgCGooAgAiDTYCHAJAAkACQAJAIA0oAgAiC0Ebaw4EAgMDAQALIAtBD0cNAiAFKAIYKAIAIAZBAWpHDQQMAgsgBSgCGCgCACAGQQFqRg0BDAMLIAUoAhgoAgAgBkEBakcNAgsgBCANNgIAIARBBGohBCAFKAIUIQYMAgsgBSAJNgIIIAVBBGoiBhCMEiAKIAQgAmtBAnY2AgggCiACNgIEIAogDDYCACAGEMoXDAMLIAVBHGoQjgILIAUgBkEBaiIGNgIUIAhBBGohCAwACwALIAVBIGokAAJAIAAtACQgAC0AJUEAIAMQjhpFDQAgAygCQEUNACADKAI8KAIAIgIoAgBBF0cNACACLQAYQQVHDQAgAigCECICKAIAQQ9HDQAgACACEMkBIAAtACQhEAsgA0HcAGogA0FAaygCADYCACADIAMpAjg3AlQgA0EZNgJQIAMgASkDEDcDYCAQQQJGBEAgACADQdAAahDJAQsgA0GQAWoiACADQdAAakHAABD2BhogARCoAyABIABBwAAQ9gYaDAILIAEoAghBA0cNASABKwMYIiQgJGJEAAAAAAAA8D8gJKZEAAAAAAAA8L9icg0BIAAgARDJAQwBCyAAIAEQyQELIANB4AFqJAAPCyADQQhqIAAgAkEBEMQJIAMoAggiAkGBgICAeEYNACACIAMoAgwQvikACyAAKAIAIQUgACgCCCECCyACIAVGBEAgABDtFgsgACACQQFqNgIIIAAoAgQgAkEUbGoiAiAYNgIQIAIgFzYCDCACIBY2AgggAiAVNgIEIAIgFDYCAAwACwAL1SoCF38BfiMAQYADayIDJAACQCABQShqIgQQ4w0iBkUEQCABKALYAiEBIANBADoAkAEgASABIANBkAFqEOsUIQEgAEEHNgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKAIAIgZBC2sOAwEJAgALIAZBAkcEQCAGQSRHDQkgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQggASgCLCEBIABBBzYCACAAIAE2AgQMDAsgA0HIAWogASACEJgEIAACfyADLQDcAUECRwRAIANBrAFqIANB4AFqKQMANwIAIANBpAFqIANB2AFqKQMANwIAIANBnAFqIANB0AFqKQMANwIAIAMgAykDyAE3ApQBIABBBGogA0GQAWpBJBD2BhpBAAwBCyAAIAMoAsgBNgIEQQcLNgIADAsLIAQQvyAhDCAEEOMNIgJFBEAgASgC2AIhASADQQA6AJABIAEgASADQZABahDrFCEBIABBBzYCACAAIAE2AgQMCwsgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0GIAEoAiwhASAAQQc2AgAgACABNgIEDAsLIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAFBNGopAgA3AgAgA0GkAWogAUE8aigCADYCACADIAEpAiw3ApQBIAMgAjYCkAEgA0GQAWoiAhC/CiADQQA2AmggA0KAgICAgAE3AmAgAUEsaiEGIAJBBHIhCSADQdABaiEOIANBmAFqIQpBACECAkADQCACIA1yRSACQf7/e0tyIQhBACEFAkACfwJAAkACQANAIAQQ4w0iC0UNASADQQA2AuACIAMgCzYC5AIgA0HgAmoQ/CMgBBDjDSILBEAgCygCAEEMRg0DCyAIRQRAIANBOzoAkAEgASACIA0gA0GQAWoQvBkLAkAgBBDjDSILRQ0AIAsoAgBBEEcNACAJIAYpAgA3AgAgASgCKCELIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAs2ApABIAVBAWohBSADQZABahC/CgwBCwsgBQRAIAMgBTYCuAEgA0EHNgKQASADQeAAaiADQZABahCDCQsgBBC/ICEFIAQQ4w0iCARAIAgoAgBBB0YNAwsgA0GQAWogARDmBCADKAKUASEFIAMoApABIghBB0YNCyAOIAopAwA3AwAgDkEYaiAKQRhqKQMANwMAIA5BEGogCkEQaikDADcDACAOQQhqIApBCGopAwA3AwAgAyAFNgLMASADIAg2AsgBIANB4ABqIANByAFqEOIZQQAMAwsgASgC2AIhAiADQQA6AJABIAMgAiACIANBkAFqEOsUNgLkAiADQQE2AuACIANB4AJqEPwjCyAEEOMNIgJFDQIgAigCAEEMRw0CIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQvwogAS0A+AJBAkYEQCABLQD7AkEBcQ0FC0EAIQIgAS0AkANBAXENBAwOCyAJIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqIg8QvwogASgCfCECIA8gAUEAEE4gAygCkAEiDUEHRg0HIANBwAJqIgcgCkEIaikDADcDACADQcgCaiIRIApBEGopAwA3AwAgA0HQAmoiEiAKQRhqKQMANwMAIAMgCikDADcDuAIgAygClAEhECABKAJ8IQtBKEEIEIwgIgggEDYCBCAIIA02AgAgCCADKQO4AjcDCCAIQRBqIAcpAwA3AwAgCEEYaiARKQMANwMAIAhBIGogEikDADcDACADQQA2AqgBIAMgBSACIAIgBUkbNgKkASADIAUgAiACIAVLGzYCoAEgAyAFIAsgBSALSxsiDTYCnAEgAyAFIAsgBSALSRsiAjYCmAEgAyAINgKUASADQQI2ApABIANB4ABqIA8Q4hlBAQsgBBDjDSIIBEAgCCgCAEEMRg0CCwJAIAQQ4w0iCARAIAgoAgBBEEYNAQsgA0GYAWogBBDmCyADQRBqIAQQnxQgA0HYvOAANgKUASADQTQ6AJABIAMoAhAgAygCFCADQZABahDrFCEFIAQQ4w0iAkUNCCACKAIAQSRHDQggASABKQNANwN4IAEoAiggAUElNgIoQSRHDQYgASABKAIsEIIMDAgLIAkgBikCADcCACABKAIoIQggAUElNgIoIAEgASkDQDcDeCAJQQhqIAZBCGopAgA3AgAgCUEQaiAGQRBqKAIANgIAIAMgCDYCkAEgA0GQAWoiEBC/CkUNASAEEOMNIgVFDQEgBSgCAEEMRw0BIAEoAnwhBSABKAJ4IQggA0E6OgCQASABIAggBSAQELwZDAELCyADQZgBaiAEEOYLIANBCGogBBCfFCADQeDc3wA2ApQBIANBNDoAkAEgAygCCCADKAIMIANBkAFqEOsUIQUgBBDjDSICRQ0FIAIoAgBBJEcNBSABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABIAEoAiwQggwMBQtBACECIAQQ4w0iBEUNCSAEKAIAQRdHDQkgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahC/CkEBIQIMCQsgA0EAOgBTIAMgASkBggM3AEMgAyABKQCTAzcAVCADIAEoAJsDNgBcIAMgAUGKA2oiAikBADcASyADQfkAaiABQZcDaikAADcAACADQfQAaiABQZIDaikBADcCACADQewAaiACKQEANwIAIAMgASkBggM3AmQgAUGAAWogA0HDAGoQwAggAyABNgJgIAQQvyAhDiAEEOMNIgJFBEAgASgC2AIhASADQQA6AJABIAEgASADQZABahDrFCEBIABBBzYCACAAIAE2AgQMCAsCQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGDQFBuePgAEEoQcCk4AAQ2hcACyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCADQZwBaiABQTRqKQIANwIAIANBpAFqIAFBPGooAgA2AgAgAyABKQIsNwKUASADIAI2ApABIANBkAFqIgIQvwogA0EANgKMASADQoCAgICAATcChAEgAUEsaiEGIAJBBHIhCyADQbgCakEEciEJIANBxAJqIRcgA0G8AmohDSADQcACaiEKIANBoAJqIQwgA0GgAWohGCADQZgBaiEZQQghEANAIAhBOGwhEgJAA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEEOMNIgIEQCACKAIAQQ5GDQELIAQQvyAhBQJAAkACQAJAIAQQ4w0iAgRAIAIoAgBBB0YNAQsgA0G4AmogARCsASADKAK8AiECIAMoArgCIgdBBUYNDSAMIAopAwA3AwAgDEEQaiAKQRBqIg8pAwA3AwAgDEEIaiAKQQhqIhQpAwA3AwAgAyACNgKcAiADIAc2ApgCIAQQ4w0iAgRAIAIoAgBBE0YNAgsgBw0CQQAhAgJAIAQQ4w0iB0UNACAHKAIAQRVHDQAgBy0ABA0AIAkgBikCADcCACABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAJQQhqIAZBCGopAgA3AgAgCUEQaiAGQRBqKAIANgIAIAMgAjYCuAIgA0G4AmoiDxC/CiAPIAFBARDHEiADQSBqIAMoArgCEKcGIAMoAiQhAiADKAIgIA8QiiYNBAsgASgCfCEHIBggDBDhIiADIAI2AsABQQEhAiADQQE2ApABIAMgBSAHIAUgB0sbNgKcASADIAUgByAFIAdJGzYCmAEMDAsgCSAGKQIANwIAIAEoAighAiABQSU2AiggASABKQNANwN4IAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyACNgK4AiADQbgCaiICEL8KIAEoAnwhByACIAFBABBOIAMoArgCIg9BB0cEQCADQYACaiIUIApBCGopAwA3AwAgA0GIAmoiFSAKQRBqKQMANwMAIANBkAJqIhYgCkEYaikDADcDACADIAopAwA3A/gBIAMoArwCIRNBKEEIEIwgIgIgEzYCBCACIA82AgAgAiADKQP4ATcDCCACQRBqIBQpAwA3AwAgAkEYaiAVKQMANwMAIAJBIGogFikDADcDACADQQA2AqgBIAMgBSAHIAUgB0sbNgKkASADIAUgByAFIAdJGzYCoAEgAyACNgKUAUECIQIgA0ECNgKQASADIAUgASgCfCIHIAUgB0sbNgKcASADIAUgByAFIAdJGzYCmAEMDAsgAygCvAIhAgwMCyAJIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ArgCIANBuAJqIhMQvwogEyABEOYEIAMoArwCIQIgAygCuAIiFUEHRg0DIANB+AJqIgcgCkEYaikDADcDACADQfACaiIWIA8pAwA3AwAgA0HoAmoiDyAUKQMANwMAIAMgCikDADcD4AJBKEEIEIwgIgUgAjYCBCAFIBU2AgAgBSADKQPgAjcDCCAFQRBqIA8pAwA3AwAgBUEYaiAWKQMANwMAIAVBIGogBykDADcDACANQRhqIANBsAJqKQMANwIAIA1BEGogA0GoAmopAwA3AgAgDUEIaiAMKQMANwIAIA0gAykDmAI3AgBBACECIANBADYCkAEgCyATQSQQ9gYaIAMgBTYCuAEMCgsgFyAEEOYLIANBKGogBBCfFCADQQ02AsACIANBpKLgADYCvAIgA0EwOgC4AiADKAIoIAMoAiwgA0G4AmoQ6xQhAgJAIAQQ4w0iBEUNACAEKAIAQSRHDQAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQUgASABKAIsEIIMCyADIAI2ApQBDAMLIAMpA6ACENYaDAkLIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQvwogDiABKAJ8IgIgAiAOSxshCiAOIAIgAiAOSRshDCADKAKMASICQThsIQUgAkEBayEIIBpCIIinIQ4gGqchCyADKAKIASECIBFBAXEhDQNAIAVFBEACQCABLQD4AkECRgRAIAEtAPsCQQFxDQELQQAhAiABLQCQA0EBcUUNCAtBACECIAQQ4w0iBEUNByAEKAIAQRdHDQcgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahC/CkEBIQIMBwsgAigCACEJAkACQCAIBEAgCUECRw0BIANBOGogAhCgDyADKAI8IQkgAygCOCEHIANBOzoAkAEgASAHIAkgA0GQAWoQvBkMAQsgCUECRw0AIAIoAgQoAgANASANRQ0AIANBOjoAkAEgASALIA4gA0GQAWoQvBkLIAJBOGohAiAIQQFrIQggBUE4ayEFDAELCyADQTBqIAIQoA8gAygCNCECIAMoAjAgA0HtADoAkAEgAiADQZABahDrFCECIAQQ4w0iBEUNBCAEKAIAQSRHDQQgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIIMDAQLIAMgAjYClAEgB0UNBQsgA0GYAmoQyhYgAygClAEhAgwGC0G54+AAQShBtKLgABDaFwALQbnj4ABBKEGUouAAENoXAAsgAEEHNgIAIAAgAjYCBCADQYQBahDvJgwSCyAAIAMpAoQBNwIEIAAgAjoAHCAAQQA2AhggACAMNgIUIAAgCjYCECAAQQM2AgAgAEEMaiADQYwBaigCADYCAAwRCyADKQOgAhDWGgwBCyADKAKUASEHIANByAFqIBlBMBD2BhogAygChAEgCEYEQCADQYQBahD3FiADKAKIASEQCyAQIBJqIgUgAjYCACAFQQRqIAc2AgAgBUEIaiADQcgBakEwEPYGGiADIAhBAWoiCDYCjAEgBBDjDSICBEAgAigCAEEORg0DCyAEEOMNIgIEQCACKAIAQRBGDQILIANBmAFqIAQQ5gsgA0EYaiAEEJ8UIANB2LzgADYClAEgA0E0OgCQASADKAIYIAMoAhwgA0GQAWoQ6xQhAiAEEOMNIgRFDQAgBCgCAEEkRw0AIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0FIAEgASgCLBCCDAsgAEEHNgIAIAAgAjYCBCADQYQBahDvJgwOCyALIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggC0EIaiAGQQhqKQIANwIAIAtBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqEL8KIAQQ4w0iAg0BCyASQThqIRIMAQsLQQEgESACKAIAQQ5GIgIbIREgASkDeCAaIAIbIRoMAQsLQbnj4ABBKEHQpOAAENoXAAsgASgCLCEBIABBBzYCACAAIAE2AgQMBwtBuePgAEEoQdz83wAQ2hcAC0G54+AAQShBzPzfABDaFwALIAMoApQBIQULIABBBzYCACAAIAU2AgQgA0HgAGoQ7iYMBQtBuePgAEEoQbz83wAQ2hcAC0G54+AAQShBnP3fABDaFwALIANBnAFqIAQQ5gsgAyAEEJ8UIANBHDYCmAEgA0Gs/d8ANgKUASADQTA6AJABIAMoAgAgAygCBCADQZABahDrFCECAkAgBBDjDSIERQ0AIAQoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQggwMAQtBuePgAEEoQcj93wAQ2hcACyAAQQc2AgAgACACNgIEDAILIANB4ABqEIomDAELIAAgAykCYDcCBCAAIAI6ABwgAEEANgIYIABBATYCACAAQQxqIANB6ABqKAIANgIAIAAgDCABKAJ8IgEgASAMSRs2AhQgACAMIAEgASAMSxs2AhALIANBgANqJAALxCsCF38BfiMAQYADayIDJAACQCABQShqIgQQyA0iBkUEQCABKAKAAiEBIANBADoAkAEgASABIANBkAFqEOsUIQEgAEEHNgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKAIAIgZBC2sOAwEJAgALIAZBAkcEQCAGQSRHDQkgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0IIAEoAswCIQEgAEEHNgIAIAAgATYCBAwMCyADQcgBaiABIAIQlgQgAAJ/IAMtANwBQQJHBEAgA0GsAWogA0HgAWopAwA3AgAgA0GkAWogA0HYAWopAwA3AgAgA0GcAWogA0HQAWopAwA3AgAgAyADKQPIATcClAEgAEEEaiADQZABakEkEPYGGkEADAELIAAgAygCyAE2AgRBBws2AgAMCwsgBBClICEMIAQQyA0iAkUEQCABKAKAAiEBIANBADoAkAEgASABIANBkAFqEOsUIQEgAEEHNgIAIAAgATYCBAwLCyACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0GIAEoAswCIQEgAEEHNgIAIAAgATYCBAwLCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0GcAWogAUHUAmopAgA3AgAgA0GkAWogAUHcAmooAgA2AgAgAyABKQLMAjcClAEgAyACNgKQASADQZABaiICEL4KIANBADYCaCADQoCAgICAATcCYCABQcwCaiEGIAJBBHIhCSADQdABaiEOIANBmAFqIQpBACECAkADQCACIA1yRSACQf7/e0tyIQhBACEFAkACfwJAAkACQANAIAQQyA0iC0UNASADQQA2AuACIAMgCzYC5AIgA0HgAmoQpiMgBBDIDSILBEAgCygCAEEMRg0DCyAIRQRAIANBOzoAkAEgASACIA0gA0GQAWoQqRkLAkAgBBDIDSILRQ0AIAsoAgBBEEcNACAJIAYpAgA3AgAgASgCyAIhCyABQSU2AsgCIAEgASkD4AI3A5gDIAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyALNgKQASAFQQFqIQUgA0GQAWoQvgoMAQsLIAUEQCADIAU2ArgBIANBBzYCkAEgA0HgAGogA0GQAWoQgwkLIAQQpSAhBSAEEMgNIggEQCAIKAIAQQdGDQMLIANBkAFqIAEQ5QQgAygClAEhBSADKAKQASIIQQdGDQsgDiAKKQMANwMAIA5BGGogCkEYaikDADcDACAOQRBqIApBEGopAwA3AwAgDkEIaiAKQQhqKQMANwMAIAMgBTYCzAEgAyAINgLIASADQeAAaiADQcgBahDiGUEADAMLIAEoAoACIQIgA0EAOgCQASADIAIgAiADQZABahDrFDYC5AIgA0EBNgLgAiADQeACahCmIwsgBBDIDSICRQ0CIAIoAgBBDEcNAiABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahC+CiABLQCgAkECRgRAIAEtAKMCQQFxDQULQQAhAiABLQC4AkEBcQ0EDA4LIAkgBikCADcCACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqIg8QvgogASgCnAMhAiAPIAFBABBPIAMoApABIg1BB0YNByADQcACaiIHIApBCGopAwA3AwAgA0HIAmoiESAKQRBqKQMANwMAIANB0AJqIhIgCkEYaikDADcDACADIAopAwA3A7gCIAMoApQBIRAgASgCnAMhC0EoQQgQjCAiCCAQNgIEIAggDTYCACAIIAMpA7gCNwMIIAhBEGogBykDADcDACAIQRhqIBEpAwA3AwAgCEEgaiASKQMANwMAIANBADYCqAEgAyAFIAIgAiAFSRs2AqQBIAMgBSACIAIgBUsbNgKgASADIAUgCyAFIAtLGyINNgKcASADIAUgCyAFIAtJGyICNgKYASADIAg2ApQBIANBAjYCkAEgA0HgAGogDxDiGUEBCyAEEMgNIggEQCAIKAIAQQxGDQILAkAgBBDIDSIIBEAgCCgCAEEQRg0BCyADQZgBaiAEEIAQIANBEGogBBDqEyADQdi84AA2ApQBIANBNDoAkAEgAygCECADKAIUIANBkAFqEOsUIQUgBBDIDSICRQ0IIAIoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwICyAJIAYpAgA3AgAgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyAINgKQASADQZABaiIQEL4KRQ0BIAQQyA0iBUUNASAFKAIAQQxHDQEgASgCnAMhBSABKAKYAyEIIANBOjoAkAEgASAIIAUgEBCpGQwBCwsgA0GYAWogBBCAECADQQhqIAQQ6hMgA0Hg3N8ANgKUASADQTQ6AJABIAMoAgggAygCDCADQZABahDrFCEFIAQQyA0iAkUNBSACKAIAQSRHDQUgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ+wsMBQtBACECIAQQyA0iBEUNCSAEKAIAQRdHDQkgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQvgpBASECDAkLIANBADoAUyADIAEpAaoCNwBDIAMgASkAuwI3AFQgAyABKADDAjYAXCADIAFBsgJqIgIpAQA3AEsgA0H5AGogAUG/AmopAAA3AAAgA0H0AGogAUG6AmopAQA3AgAgA0HsAGogAikBADcCACADIAEpAaoCNwJkIAQgA0HDAGoQyAggAyABNgJgIAQQpSAhDiAEEMgNIgJFBEAgASgCgAIhASADQQA6AJABIAEgASADQZABahDrFCEBIABBBzYCACAAIAE2AgQMCAsCQCACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0BQbnj4ABBKEHApOAAENoXAAsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBnAFqIAFB1AJqKQIANwIAIANBpAFqIAFB3AJqKAIANgIAIAMgASkCzAI3ApQBIAMgAjYCkAEgA0GQAWoiAhC+CiADQQA2AowBIANCgICAgIABNwKEASABQcwCaiEGIAJBBHIhCyADQbgCakEEciEJIANBxAJqIRcgA0G8AmohDSADQcACaiEKIANBoAJqIQwgA0GgAWohGCADQZgBaiEZQQghEANAIAhBOGwh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AgAgAygCBCADQZABahDrFCECAkAgBBDIDSIERQ0AIAQoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD7CwwBC0G54+AAQShByP3fABDaFwALIABBBzYCACAAIAI2AgQMAgsgA0HgAGoQ7yQMAQsgACADKQJgNwIEIAAgAjoAHCAAQQA2AhggAEEBNgIAIABBDGogA0HoAGooAgA2AgAgACAMIAEoApwDIgEgASAMSRs2AhQgACAMIAEgASAMSxs2AhALIANBgANqJAALwCoDHn8CfgF8IwBBoARrIgIkACAAIAEQnhogAkHYAGogAUGIAWoiAygCADYCACADQQA2AgAgASkCgAEhICABQoCAgICAATcDgAEgASkCjAEhISABQoCAgIDAADcCjAEgAUGUAWoiAygCACEGIANBADYCACACQegAaiAGNgIAIAIgIDcDUCACICE3A2AgAUGMAWohCiABQYABaiEMIABBDGohEyAAKAIQIgcgACgCFEHYAGxqIRQgAkGoAmohFSACQbwDaiERIAJBmAFqIRYDQAJAAkACQAJAAkACQCAUIAciA0cEQCADQdgAaiEHAkAgAygCACIGQQRrQQAgBkEFa0EISRtBAWsOCAcGBQQICAMCAAsgAygCSEEGdCEXIAMoAkQhGkEAIQgDQAJAAn8CQCAIIBdHBEAgCCAaaiIGKAIAQQdHDQMgBkEIaiEJIAZBHGoiEi0AAEECRwRAIAJBQGsgCSkDACAGQRhqKAIAEKQjIAIoAkghBCACKQNAISAgAkHIA2oiDSAJELUbQQAhCyACQQA2ApADIAIgAikD0AM3A6ADIAIgAikDyAM3A5gDIBYgCRC1GyACQRo2ApABIAJBsANqIAkQtRtBACEFIAZBIGooAgAiDwRAENkiIQUgDykCBCEhENUiIQ4gDSAPKAIAEKcBIA4gDUHYABD2BiENIAUgITcCBCAFIA02AgALIAJB0ANqIBFBCGooAgA2AgAgAiARKQIANwPIAyACKAK4AyENIAIoArQDIQ8gAigCsAMhECACQZADaiACQZABahCmBAwDCyAJKAIAIgsoAgBFDQEgAkEBNgLMAyACQey03wA2AsgDIAJCADcC1AMgAiACQZADajYC0AMgAkHIA2pB9LTfABChHQALIAMoAkQiBiADKAJIQQZ0aiEFA0AgBSAGIglHBEAgBkFAayEGIAkoAgBBB0YEQCAJKAI4QQxsIQQgCSgCNCEIA0AgBARAIAggARDfLCAEQQxrIQQgCEEMaiEIDAELCyAJLQAcQQJHDQIgASAJQQhqEOUcBSAJIAEQ8iULDAELCyADKAIgQYCAgIB4Rg0LIAEgA0EgahDiBgwLCyACQTBqIAspAwggC0EYaigCABCkIyACKAI4IQQgAikDMCEgIAJByANqIhAgC0EIaiIFELUbIAJBADYCkAMgAiACKQPQAzcDoAMgAiACKQPIAzcDmAMgFSAFELUbIAJBGjYCoAIgBkEQaigCACEPIAZBFGooAgAhDRDaIiEOIBAgCxDbBCAOIBBBKBD2BhpBBCELIAZBDGooAgAQlB0hECACQZADaiACQaACahCmBAshGCAMICAgBBDiGCAKIBgQshsgBkEwaiIEQQhqIhgoAgAhGSAEKQIAISAgBkE0akEENgIAIARBADYCACAGQThqQQA2AgAgAkG4A2oiGyAZNgIAIAIgIDcDsAMgBkEsaiIZKAIAIRwgBkEoaiIdKAIAIR4gBigCACEfIAQQ1yYCQCAfQQdGBEAgEi0AAEECRwRAIAkQuycMAgsgCRDuKAwBCyAGEI0SCyAGIAs2AgAgCSAQNgIAIAQgAikDsAM3AwAgHSAeNgIAIBkgHDYCACAGQQRqIA42AgAgBkEQaiANNgIAIAZBDGogDzYCACAGQRRqIAIpA8gDNwIAIBIgAkHQA2ooAgA2AgAgBkEgaiAFNgIAIBggGygCADYCAAsgCEFAayEIDAALAAsgDCkCACEgIAwgAikDUDcCACAKKQIAISEgCiACKQNgNwIAIAJBuANqIAxBCGoiAygCACIONgIAIAMgAkHYAGooAgA2AgAgCkEIaiIDKAIAIQYgAyACQegAaigCADYCACACQfgAaiIDIAY2AgAgAiAgNwOwAyACICE3A3ACQAJ/AkACQCAOBEAgAigCtAMhDCACKAKwAyERIAEtAJsBDQEgAkGIAWogAygCADYCACACIAIpA3A3A4ABIAJBBTYCkAEgAUHoAGohDyAAKAIQIgogACgCFEHYAGxqIRAgAkGQAWpBBHIhFCACQcgDakEEciEVIAJB8AFqIRJBACEGQQAhCQNAIBAgCiIHRgRAIAIoApABIgRBBUYNBCACQaACaiIHIAJBkAFqQdgAEPYGGiAHIAJBgAFqEOMDIAAoAhAhCAJAIAkgACgCFCIDTw0AIAggCUHYAGxqIgYoAgBBCkcNACACQRBqIAYQxBYgAigCECACKALYAkcNACACKAIUIAIoAtwCRw0AIAJByANqIgMgB0HYABD2BhogBhCpCSAGIANB2AAQ9gYaDAULIAJByANqIAJBoAJqQdgAEPYGGiATKAIAIANGBH8gExD7FiAAKAIQBSAICyADQdgAbGogAkHIA2pB2AAQ9gYaIAAgA0EBajYCFAwECyAGIgNBAWohBiAHQdgAaiEKAkACQAJAIAcoAgAiCEEEa0EAIAhBBWtBCEkbDgUCAwMBAAMLIAcoAiRFDQIgBy0AOQ0CIAcoAhQhBCAHKAIQIQUgBykDCBDaGiEgIAcoAiQhCCAHQQA2AiQgCARAIAJByANqIgMgCEHAABD2BhoQxR0hByADEL0oIQtBwAAQzSAiA0EAOgA8IAMgCzYCOCADQgA3AzAgAyAHNgIoIANCADcDICADIAQ2AhwgAyAFNgIYIAMgIDcDECADQQE2AgggA0EBNgIAIAJBgAFqIAMQshsgCBDwKgwDC0HQtd8AELwpAAsgBygCPEUNASAHLQBEDQECQAJAAkACQAJAAkACQAJAAkACQAJAIAcoAggiA0EDRgR/IAcoAgwhCCMAQRBrIgMkACADQQA2AgggA0GBAjsBDCADQQhqIAgQ1gMgAy0ADCADQRBqJABBAXFFDQUgBygCCAUgAwtBAWsOBAABAgMFCyASIAdBEGoQ5R0gAkEBNgLoAQwJCyAHKQIQISAgBysDGCEiIAIgBykDIBCeIzcDgAIgAiAiOQP4ASACICA3A/ABIAJBAjYC6AEMCAsgBykCECEgIAcoAgwQlB0hAyACICA3A/ABIAIgAzYC7AEgAkEDNgLoAQwHCyAHKQIQISAQ1iIhAyAHKAIgIggtAAwhBCACQcgDaiAIQQRqKAIAIAhBCGooAgAQrxUgAyACKQLIAzcCACACIAQ6ANQDIANBCGogAkHQA2opAgA3AgAgBykDGBCeIyEhIAIgAzYCgAIgAiAhNwP4ASACICA3A/ABIAJBBDYC6AEMBgsgBygCDCEDQQAQpxEQhwQhDQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAMoAgBBDGsiCCAIQSZPG0EBaw4lAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJQALIANBCGohBSADQQRqIQQMJQsgA0EUaiEFIANBEGohBAwkCyADQRRqIQUgA0EQaiEEDCMLIAMoAiAiCEE0aiEFIAhBMGohBAwiCyADQQxqIQUgA0EIaiEEDCELIANBCGohBSADQQRqIQQMIAsgA0EQaiEFIANBDGohBAwfCyADQTRqIQUgA0EwaiEEDB4LIANBJGohBSADQSBqIQQMHQsgA0EkaiEFIANBIGohBAwcCyADQRRqIQUgA0EQaiEEDBsLIANBIGohBSADQRxqIQQMGgsgA0EYaiEFIANBFGohBAwZCyADQRRqIQUgA0EQaiEEDBgLIANBFGohBSADQRBqIQQMFwsgA0EIaiIIIAMoAghBAnQiBEGg5+MAaigCAGohBSAIIARBhOfjAGooAgBqIQQMFgsgA0EgaiEFIANBHGohBAwVCyADQRBqIQUgA0EMaiEEDBQLIANBGGohBSADQRRqIQQMEwsgAygCICIIQShqIQUgCEEkaiEEDBILIANBCGohBSADQQRqIQQMEQsgA0EIaiEFIANBBGohBAwQCyADQQxqIQUgA0EIaiEEDA8LIANBDGohBSADQQhqIQQMDgsgA0EcaiEFIANBGGohBAwNCyADQSxqIQUgA0EoaiEEDAwLIANBCGohBSADQQRqIQQMCwsgAygCBCIEQQRqIQUMCgsgA0EUaiEFIANBEGohBAwJCyADQRBqIQUgA0EMaiEEDAgLIANBDGohBSADQQhqIQQMBwsgA0EMaiEFIANBCGohBAwGCyADQRBqIQUgA0EMaiEEDAULIANBEGohBSADQQxqIQQMBAsgA0EQaiEFIANBDGohBAwDCyADQRRqIQUgA0EQaiEEDAILIANBDGohBSADQQhqIQQMAQsgA0EIaiEFIANBBGohBAsgBCgCACEWIAUoAgAhFyACQcgDaiADEI0CAkAgAigCyANBgICAgHhGBEAgAkGQA2pBvLXfAEEEEKIRDAELIAJBmANqIAJB0ANqKAIANgIAIAIgAikCyAM3A5ADCyACKAKUAyIEIAIoApgDIgsQ3BkNASACIAQ2AsgDIAIgBCALaiIDNgLMAyACQcgDahDVCiIIQYCAxABGDQIgCBDPEUUNAgNAIAJByANqENUKIghBgIDEAEYNBSAIENARDQALDAILIBIgB0EQahC1ISACQQA2AugBDAQLIAJByANqIgMgC0EBahC2EiADQd8AEPcHIAMgBCALENYdDAELIAJByANqIAtBAmoQthIgAiADNgKkAiACIAQ2AqACQQAhBQNAIAJBoAJqENUKIgNBgIDEAEYEQCACKALQAyIIRQRAIAJByANqQd8AEPcHIAIoAtADIQgLIAIoAswDIgMgCBDcGUUNAiACQYQDaiIFIAhBAWoQthIgBUHfABD3ByAFIAMgCBDWHSACKALIAyADEKckIAJB0ANqIAJBjANqKAIANgIAIAIgAikChAM3A8gDDAILAkAgBUEBcQ0AIAMQzxFFDQAgAkHIA2ogAxD3B0EBIQUMAQsgAxDQEUUNACACQcgDaiADEPcHDAALAAsgAikCzAMhICACKALIAyIDQYCAgIB4Rg0AIAIoApADIAIoApQDEKckIAIgAzYCkAMgAiAgNwKUAyAgQiCIpyELICCnIQQLIAQgC0HfABCZC0UEQCACQQE2AswDIAJB0MHfADYCyAMgAkIBNwLUAyACQT42AoADIAIgAkH8Amo2AtADIAIgAkGQA2o2AvwCIAJBoAJqIAJByANqEPgUIAIoApADIAIoApQDEKckIAJBmANqIAJBqAJqKAIANgIAIAIgAikCoAI3A5ADCyACQdADaiACQZgDaigCADYCACACIAIpA5ADNwPIAyACQcgDaiIDEIsZISAgAiANNgKYAiACIBc2ApQCIAIgFjYCkAIgAkEAOgCcAiACICA3A4gCIAJBIGogICANEKQjIA8gAikDICACKAIoEOIYIAdBDGoQ9h4hCCACQaACaiIEIAJBiAJqIgUQtRsgAyAEEJ4PIAcoAgwQ8wIgBygCDCADQTAQ9gYiA0EAOgA8IAMgCDYCOCADQgA3AzAgAyACLwCgAjsAPSADQT9qIAJBogJqLQAAOgAAIAcpAhAhICAFEO0UIQMgAiAgNwPwASACIAM2AuwBIAJBAzYC6AELIAcoAjwhAyAHQQA2AjwgAwRAIAJByANqIgcgA0HAABD2BhogAkGAAWogAkHoAWogBxCmBBCyGyADEPAqDAILQcC13wAQvCkACyACQRhqIAcQxBYgAikDGCEgIAJByANqIAdB2AAQ9gYaIAcgIDcCBCAHQQo2AgACQCACKALIAyIEQQRNBEAgAkGgAmogFUHUABD2BhoMAQsgAkHIA2oQqQlBBSEECyACKAKQAUEFRwRAIAJBkAFqEMMfCyACIAQ2ApABIBQgAkGgAmpB1AAQ9gYaIAMhCQwACwALIAJB8ABqEM4mIAJBsANqEPMiDAMLIAAoAhRB2ABsIQggACgCEEHYAGshCgJAA0AgCCIDRQ0BIANB2ABrIQggCkHYAGoiCigCAEEESw0ACyAKIAJB8ABqEOMDCyACQcgDaiIGIBMQuhkgAiARNgLkAyACIAw2AuADIAIgDDYC3AMgAiAMIA5BBHRqNgLoAyAGEOwGIAJCiICAgIABNwLIAyACQdwDaiEGIAIoAtADIQkCQCACKALYA0UEQCAJIAYQ7AcMAQsgCSACKALUAyAGEOcFRQ0AIAICfyACKALoAyIKIAIoAuADIglGBEAgCgwBCyACQcgDaiAKIAlrQQR2EJcRIAIoAtADIAIoAtQDIAYQ5wVFDQEgAigC4AMhCiACKALoAwsgCmtBBHZBCEHYABClFCACQQA2ApgBIAIgAikDADcCkAEgAkGQAWogBhDsByACIAIoApABNgKoAiACIAIoApQBIgk2AqACIAIgCTYCpAIgAiAJIAIoApgBIgdB2ABsajYCrAIgBwRAIAJByANqIAcQlxEgAigC0AMgAigC1AMgAkGgAmoQgQsLIAJBoAJqEPQGCyACQcgDahDMFCAGEP0WIAMNAiACQfAAagwBCyACQcgDaiIDIBMQuhkgAiARNgLkAyACIAw2AuADIAIgDDYC3AMgAiAMIA5BBHRqNgLoAyADEOwGIAJCiICAgIABNwLIAyACQdwDaiEDIAIoAtADIQYCQCACKALYA0UEQCAGIAMQ7AcMAQsgBiACKALUAyADEOcFRQ0AIAJBCGoCfyACKALoAyIKIAIoAuADIgZGBEAgCgwBCyACQcgDaiAKIAZrQQR2EJcRIAIoAtADIAIoAtQDIAMQ5wVFDQEgAigC4AMhCiACKALoAwsgCmtBBHZBCEHYABClFCACQQA2ApgDIAIgAikDCDcCkAMgAkGQA2ogAxDsByACIAIoApADNgKoAiACIAIoApQDIgY2AqACIAIgBjYCpAIgAiAGIAIoApgDIglB2ABsajYCrAIgCQRAIAJByANqIAkQlxEgAigC0AMgAigC1AMgAkGgAmoQgQsLIAJBoAJqEPQGCyACQcgDahDMFCADEP0WIARBBUcNASACQYABagsQziYLIABBMGogARDDJSACQaAEaiQADwsgAygCCEEFRwRAIANBCGogARD9IQsgA0E8aiABEMMlIANBMGogARCeGgwFCyABIANBBGoQ4gYMBAsgA0EkaiABEMMlIANBLGogARCeGgwDCyADQQhqIAEQ/SEgA0E8aiABEMMlIANBMGogARCeGgwCCyADQSBqIAEQ+ywMAQsgA0EIaiABEP0hIANBMGogARD7LAwACwALjSwCF38IfiMAQeACayIDJAACQAJAIAIoAgQiBSACKAIIIgRB//0DEJkLRQ0AQQMgBEG0v9gAENogGgJAIARBBE8EQCAFLAADQb9/Sg0BDAMLIARBA0cNAiACQQA2AggMAQsgAkEANgIIIAUgBUEDaiAEQQNrIgQQuC0aIAIgBDYCCAtBFEEEEIwgIhBCgYCAgBA3AgAgECACKQIANwIIIBBBEGogAkEIaigCADYCACABIAEoAgAiAkEBajYCACADIAE2AjQCQCACQQBIDQAgASILKAIIIhdBAkYEQCAAKAJQIhggACgCVEEYbGohDSADQckBaiEVIANBqQJqIREgASgCFCEPIAEoAhAhEgJAA0AgGCANIgpHIhlFBEAgA0GgAmogEiAPEN8TDAILIApBEGsoAgAhAkEAIQkgDwRAIBItAABBL0YhCQsgCkEUaygCACEEIApBGGshDSADIAIEfyAELQAAQS9GBUEACzoA3gFBBiEFIANBBjoAyAEgAyACNgLEASADIAQ2AsABIANBgAQ7AdwBQQAhCEECIQsgDyEEIBIhBgJAA0AgBUH/AXEiDkEGRiITRQRAIANBtwFqIANB3wBqKAAANgAAIANBsAFqIANB2ABqKQAANwMAIAMgAykAUDcDqAELIBEgAykDqAE3AAAgEUEIaiIUIANBsAFqKQMANwAAIBFBD2oiFiADQbcBaigAADYAACADIAU6AKgCIAMgBDYCpAIgAyAGNgKgAiADIAk6AL4CIAMgCzoAvQIgAyAIOgC8AiADQegAaiADQaACahCBAyADQYgBaiADQcABahCBAyADLQCIASECAkACQAJAIAMtAGgiDEEKRgRAIAJBCkYNAQwDCyACQQpHDQELIANBxwBqIgIgA0HfAGooAAA2AAAgA0FAayIMIANB2ABqKQMANwMAIAMgAykDUDcDOEEAIQcgCUECRg0DIBNFBEAgA0GvAmogAigAADYAACADQagCaiAMKQMANwMAIAMgAykDODcDoAILIBUgAykDoAI3AAAgFUEIaiADQagCaikDADcAACAVQQ9qIANBrwJqKAAANgAAIAMgBToAyAEgAyAENgLEASADIAY2AsABIAMgCToA3gEgAyALOgDdASADIAg6ANwBAkAgCEH/AXEiDEECRwRAIAYhBwwBCyAERQRAQQAhBCAGIQcMBQsCQAJAAkAgDkEDTwRAIAYhBwNAQQAhAgJ/A0BBASACIAdqLQAAQS9GDQEaIAQgAkEBaiICRw0ACyAEIQJBAAshBQJAAkAgAg4CAQAFCyAHLQAAQS5HDQQLIAIgBWoiAiAETQRAIAIgB2ohByAEIAJrIgQNAQwDCwsgAiAEQdir2AAQnBAACyAEIAZqIQcDQEEAIQICQANAIAIgBmotAABBL0YNASAEIAJBAWoiAkcNAAsgAyAGNgLAASAGIQcMBAsgAgRAIAYhBwwDCyAGQQFqIQYgBEEBayIEDQALC0EAIQQLIAMgBzYCwAELIAMgBDYCxAELIAtB/wFxQQJHDQNBACEFQQAhAkEAIQYCQAJAAkACQAJAAkAgDEEBSw0AAkAgCUEBcSAOQQVJcg0AIAwgE3JFBEBBAiEFIARBAU0NAwsgBCAFRg0AIAUgB2oiCy0AACEFAkAgC0EBaiILIAQgB2pGIgggBUEuR3JFBEAgCy0AAEEvRg0BDAILIAhFIAVBLkdyDQELQQEhAgsCQCAMDQAgCSEFAkACQAJAAkACQAJAIA5BAWsOBgEFAgMEBwALIAMoAtABQQRqIQYMBQsgAygC0AEgAygC2AEiBUEBakEAIAUbakEIaiEGDAQLIAMoAtABQQRqIQYMAwsgAygC0AEgAygC2AEiBUEBakEAIAUbakECaiEGDAILQQIhBgwBC0EGIQYLIAkhBQsgBCACIAVB/wFxaiAGak0NCCAMQQJPBEADQCADQaACaiADQcABahD5AyADLQCkAkEKRw0KIAQgAygCoAIiBWshAiAEIAVJBEAgBCEFIAIhBAwGCyADIAI2AsQBIAIiBA0AC0EAIQQMCQsgAygC0AEiAkEEaiEGIAIgAygC2AEiBUEBakEAIAUbaiICQQhqIQsgAkECaiEIIAlBAXEgDkEFSXINAiATIAxBAEdyIRMDQCAEIQUgA0GgAmogA0HAAWoQ+QMgAy0ApAJBCkcNBSAEIAMoAqACIgJrIQQgAiAFSw0EIAMgBDYCxAFBACEFQQAhAiATRQRAQQIhAiAEQQFNDQMLAkAgAiAERg0AIAIgB2oiFC0AACECAkAgFEEBaiIUIAQgB2pGIhYgAkEuR3JFBEAgFC0AAEEvRg0BDAILIBZFIAJBLkdyDQELQQEhBQtBACECAkAgDA0AAkACQAJAAkACQCAOQQFrDgYABAECAwUBCyALIQIMBAsgBiECDAMLIAghAgwCC0ECIQIMAQtBBiECCyAEIAUgCWogAmpLDQALDAgLQQIgBEGoq9gAEJwQAAtBAiAEQair2AAQnBAACyAMRQRAA0AgBCEFIANBoAJqIANBwAFqEPkDIAMtAKQCQQpHDQMgBCADKAKgAiICayEEIAIgBUsNAiADIAQ2AsQBQQAhAgJAAkACQAJAAkACQCAOQQFrDgYDAgQBAAUEC0ECIQIMBAsgCCECDAMLQQYhAgwCCyALIQIMAQsgBiECCyAEIAIgCWpLDQAMBwsACwNAIANBoAJqIANBwAFqEPkDIAMtAKQCQQpHDQYgBCADKAKgAiIFayECIAQgBUkEQCAEIQUgAiEEDAILIAMgAjYCxAEgAiIEIAlLDQALDAULIAQgBUHoq9gAEJ0QAAsgBSEEDAMLIAxBBWtBACAMQQZrQf8BcUEESRsiCSACQQVrQQAgAkEGTxtHDQAgAygCkAEhBSADKAKMASEGIAMoAnAhBCADKAJsIQcCQAJAAkAgCQ4FAAICAgECCyACQQVLDQEgAiAMRw0CIAMoApgBIQkgAygClAEhCyADLQCJASEIIAMoAnghAiADKAJ0IQ4gAy0AaSETAkACQAJAAkACQAJAIAxBAWsOBQECAwQFAAsgBCAFRw0HIAcgBiAEEIoVDQcMBgsgBCAFRw0GIAcgBiAEEIoVIAIgCUdyDQYgDiALIAIQihUNBgwFCyAIIBNHDQUMBAsgBCAFRw0EIAcgBiAEEIoVDQQMAwsgBCAFRw0DIAcgBiAEEIoVIAIgCUdyDQMgDiALIAIQihUNAwwCCyAIIBNHDQIMAQsgBCAFRw0BIAcgBiAEEIoVDQELIANB2ABqIBQpAAA3AwAgA0HfAGogFigAADYAACADIBEpAAA3A1AgAy0AvgIhCSADLQC9AiELIAMtALwCIQggAy0AqAIhBSADKAKkAiEEIAMoAqACIQYMAQsLQQAhBwsgB0UNAAsgA0GgAmogCkEIaygCACAKQQRrKAIAIAcgBBDTBwsgA0HIAWoiAiADQagCaigCADYCACADIAMpAqACNwPAAUHQAEEEEIwgIgtBAjYCCCALQoGAgIAQNwIAIAsgAykDwAE3AgwgC0EUaiACKAIANgIACyAAQeAAahC6HyEMIAAgACgCgAEiBiAQKAIQakEBajYCgAEgA0H4AWpCADcDACADQfABakIANwMAIANB6AFqQgA3AwAgA0IANwPgASADQvPK0cunjNmy9AA3A9gBIANCg9+R85bM3LfkADcD0AEgA0Lh5JXz1uzZvOwANwPIASADQvXKzYPXrNu38wA3A8ABIANBwAFqIgIgECgCDCISIBAoAhAiBxDlCCADQSBqIAIQrAkgA0EoaikDACEaIAMpAyAhGyADQdgCakIANwMAIANB0AJqQgA3AwAgA0HIAmpCADcDACADQgA3A8ACIANC88rRy6eM2bL0ADcDuAIgA0KD35Hzlszct+QANwOwAiADQuHklfPW7Nm87AA3A6gCIANC9crNg9es27fzADcDoAIgCyADQaACaiICELkEIANBEGogAhCsCSADQRhqKQMAIRwgAykDECEeQQQQzSAiAiAGNgIAIANBATYCsAEgAyACNgKsASADQQE2AqgBIANBADYCcCADQoCAgIDAADcCaCADQQA2ApABIANCgICAgMAANwKIASAAQYABaiEOIAYgB2ohD0EEIQ1BACEJQQAhAgNAAkACQCADQYgBagJ/AkACQAJAAkACQAJAAkACQAJAAkACQCACIAdJBEAgAiASaiIFLQAAIgRBIEkNAUEBIQggBEH+AE0NDSACQQAgBMBBv39MGw0CAkACQCAEwEEATg0AIAUtAAFBP3EhCiAEQR9xIQgCQCAEQd8BTQRAIAhBBnQgCnIhBAwBCyAFLQACQT9xIApBBnRyIQogBEHwAUkEQCAKIAhBDHRyIQQMAQsgCEESdEGAgPAAcSAFLQADQT9xIApBBnRyciIEQYCAxABGDQYLIARB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EMoUIAIpAygiF1ANACACKAIwIQQgAiAXNwPgAiACIAQ2AugCIAJBiANqIAJB4AJqEOkJBEAgAikD4AIQ1hoMAgUgAkHIAmogFxC3CQwCCwALC0IAENYmIAJB2AFqEJwUCyACKAKABEGBgICAeEcEQCACQdgBaiAPQTAQ9gYaA0AgAkEYaiACQdgBahDKFCACKQMYIhdQRQRAIAJByAJqIBcQtwkMAQsLQgAQ1iYgAkHYAWoQnBQLIA0gAykDADcDACACIAIpA8gCNwPYASACQYgDahDnCiACQbgCaiACQdgBahCdByACQbACaiACQcACaikCADcDACACIAIpArgCNwOoAgJAIAEoAhwiBEUNACACQagCahCXEyEHIA4oAgAiBSkDACAHIARBAWpBAXYgBCACKAK0AhsgFBDcISAFQQhqIQNCf4VCgIGChIiQoMCAf4MhFwNAIBdQRQRAIAcgBSAXeqdBAXRB8AFxa0EQaykDABDaGhC3CSAEQQFrIQQgF0IBfSAXgyEXDAELIARFDQEgBUGAAWshBSADKQMAQn+FQoCBgoSIkKDAgH+DIRcgA0EIaiEDDAALAAsgAkEANgK4AyAIIBg3AwAgAiAZNwOoAyACQawBaiACQZgCaiASIAJBqANqIgMgDiACQagCaiACKAKsAiACKAKoAhsQrgEgAxDCCCABKAIARQ0BIAEgAigCpAIQpCkgAigCmAIiAykDACEXIAIoApwCIQQgAiACKAKkAjYC8AEgAiADNgLoASACIAMgBGpBAWo2AuQBIAIgA0EIajYC4AEgAiAXQn+FQoCBgoSIkKDAgH+DNwPYAQNAIAJBEGogAkHYAWoQohUgAigCECIDRQ0CIAIgAigCFCIENgKIAyACIAMpAwAgA0EIaigCABCkIyACQagDaiIFIAEgAikDACACKAIIEPUGIAIpA6gDUA0HIAUgBCkDABDaGhDZCwwACwALIAMgARClIiABIAZBKGoQhSQgACEDDAQLIA0gESkDADcDACACIAIpA5gCNwPYASACQagCahD+JyACQawBahDKHyACKALkAQRAIAJBADYCsAMgAkKAgICAgAE3AqgDIAIgATUCQCABMQBGQjCGIAExAEVCKIaEIAExAERCIIaEhDcCtAMgAiACQdgBajYCvAMgBigCCCAGQQxqKAIAIAJBqANqIgMQmSYg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NwNwIAIgCDYCeCACQZABaiABQZABahCqBkEGIQQgAS0APEEGRwRAIAEpAwghDSACQeABaiABQRBqEJgVIAIgDTcD2AEgAkGgAWogAkHYAWpBNBD2BhogAkGeAWogAkGPAmotAAA6AAAgAiACLwCNAjsBnAEgAi0AjAIhBAsgAyAFNgIEIAMgBzYCACADQQhqIAJBoAFqQTQQ9gYaIAMgBDoAPCADIAIvAZwBOwA9IANBP2ogAkGeAWotAAA6AAAgA0FAayACQUBrQdAAEPYGGiADQZgBaiACQZgBaigCADYCACADIAIpA5ABNwOQASAAQSc2AgAgACADNgIEDA8LIAEpAxAhDSABKQMYIQ4gAkFAayIEIAFBBGoQqgYgAiAONwJUIAIgDTcCTCACIAEpAyA3AlwgAEEEaiAEQSQQ9gYaIABBKDYCAAwOCyACQUBrIAFBBGoQ5x0gAEEpNgIAIABBDGogAkHIAGopAgA3AgAgACACKQJANwIEDA0LIAEpAwghDSABQQRqENgcIQEgACANNwMIIAAgATYCBCAAQSo2AgAMDAsgAkFAayABQQRqENMiIABBKzYCACAAQQxqIAJByABqKAIANgIAIAAgAikCQDcCBAwLCyACQUBrIAFBBGoQ5x0gAEEsNgIAIABBDGogAkHIAGopAgA3AgAgACACKQJANwIEDAoLIAJBQGsgAUEEahDoHSAAQS02AgAgAEEMaiACQcgAaikCADcCACAAIAIpAkA3AgQMCQsgAkFAayABQQRqEOcdIABBLjYCACAAQQxqIAJByABqKQIANwIAIAAgAikCQDcCBAwICyACQUBrIAFBCGoQtSEgAEEvNgIAIABBEGogAkHIAGopAwA3AwAgACACKQNANwMIDAcLIAJBQGsgAUEEahDIByAAQTA2AgAgAEEMaiACQcgAaikCADcCACAAIAIpAkA3AgQMBgsgAEExNgIAIAAgASkCBDcCBAwFCwALIAIoAkwhCCACKAJIIQUgAigCQCEJIAIoAkQMAgsgAkFAayABQQRqENMiIAIoAkghBSACKAJAIQkgAigCRAwBCyACQZgCaiACQdQAaikCADcDACACIAIpAkw3A5ACIAIoAkghCCACKAJEIQUgAigCXCEGIAIpA2AhDSACKAJACyEHIAFBOGoQ2BwhASAAIAg2AhAgACAFNgIMIAAgBzYCCCAAIAk2AgQgACAENgIAIAAgCjoAPCAAIAE2AjggACALNgI0IAAgDDYCMCAAIA03AyggACAGNgIkIAAgAikDkAI3AhQgAEEcaiACQZgCaikDADcCAAsgAkGgAmokAAugLgEBfyMAQRBrIgIkAAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCACIALQAAQQFrDroBAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugEACyABKAIUQfL22QBBAyABKAIYKAIMEQMADLoBCyABKAIUQfX22QBBDiABKAIYKAIMEQMADLkBCyABKAIUQYP32QBBEyABKAIYKAIMEQMADLgBCyABKAIUQZb32QBBHyABKAIYKAIMEQMADLcBCyABKAIUQbX32QBBEyABKAIYKAIMEQMADLYBCyABKAIUQcj32QBBFiABKAIYKAIMEQMADLUBCyABKAIUQd732QBBGCABKAIYKAIMEQMADLQBCyABKAIUQfb32QBBFiABKAIYKAIMEQMADLMBCyABKAIUQYz42QBBECABKAIYKAIMEQMADLIBCyABKAIUQZz42QBBDCABKAIYKAIMEQMADLEBCyABKAIUQaj42QBBFyABKAIYKAIMEQMADLABCyABKAIUQb/42QBBECABKAIYKAIMEQMADK8BCyABKAIUQc/42QBBDSABKAIYKAIMEQMADK4BCyABKAIUQdz42QBBDyABKAIYKAIMEQMADK0BCyABKAIUQev42QBBECABKAIYKAIMEQMADKwBCyABKAIUQfv42QBBHCABKAIYKAIMEQMADKsBCyABKAIUQZf52QBBHCABKAIYKAIMEQMADKoBCyABKAIUQbP52QBBCyABKAIYKAIMEQMADKkBCyABKAIUQb752QBBCyABKAIYKAIMEQMADKgBCyABKAIUQcn52QBBFSABKAIYKAIMEQMADKcBCyABKAIUQd752QBBDSABKAIYKAIMEQMADKYBCyABKAIUQev52QBBCyABKAIYKAIMEQMADKUBCyABKAIUQfb52QBBECABKAIYKAIMEQMADKQBCyACIABBAWo2AgwgAUGG+tkAQQ1Bk/rZAEEFIAJBDGpBEhDCCwyjAQsgASgCFEGY+tkAQRMgASgCGCgCDBEDAAyiAQsgASgCFEGr+tkAQQ8gASgCGCgCDBEDAAyhAQsgASgCFEG6+tkAQRggASgCGCgCDBEDAAygAQsgASgCFEHS+tkAQRIgASgCGCgCDBEDAAyfAQsgASgCFEHk+tkAQRUgASgCGCgCDBEDAAyeAQsgAiAAQQhqNgIMIAFB+frZAEEUQY372QBBBCACQQxqQYcDEMILDJ0BCyABKAIUQZH72QBBEiABKAIYKAIMEQMADJwBCyABKAIUQaP72QBBDyABKAIYKAIMEQMADJsBCyABKAIUQbL72QBBDSABKAIYKAIMEQMADJoBCyACIABBBGo2AgwgAUG/+9kAQQ5BzfvZAEEBIAJBDGpB/QQQwgsMmQELIAEoAhRBzvvZAEEQIAEoAhgoAgwRAwAMmAELIAEoAhRB3vvZAEEUIAEoAhgoAgwRAwAMlwELIAIgAEEEajYCDCABQfL72QBBGkGM/NkAQQggAkEMakHcARDC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IQQgAkG4A2oiAxC7ESACIAQ2ArACIAJBADoAtAIgAiACLQD1AzoAtQIgAiACLwH2AzsBtgIgAkH4AWoiBCADQSwQ9gYaIAJBrAJqIAJB7ANqKAIANgIAIAIgAikC5AM3AqQCIAAoAiAgBBCvAyACQcwBaiIFIARBLBD2BhogAkGkAmoQ8yIgBRCuCCACQcACakHYluMAKQMAIgs3AwAgAkHQluMAKQMAIgw3A7gCIAJByAJqIAFBIGoQ4gggAkHAA2oiBSALNwMAIAIgDDcDuAMgByADEPQiIAJBkANqIAUpAwA3AwAgAiACKQO4AzcDiAMgAkHIA2oiBSALNwIAIAJB2ANqIgYgCzcCACACIAw3AsADIAIgDDcC0AMgAkEAOgDgAyACQQA2ArgDIAMgBxCHIyACQYACaiAFKQIAIg43AwAgAkGQAmogBikCACINNwMAIAJBsANqIA03AwAgAiACKQLAAyINNwP4ASACIAIpAtADIg83A4gCIAJBoANqIA43AwAgAiAPNwOoAyACIA03A5gDIAMgAkGIA2oQ0gsgAkHwA2oiBSACQagDahDSCyACIAJBmANqNgLoAyACQeACaiALNwMAIAIgDDcD2AIgBCADEL4OIAJB2AJqIAIoAvgBIAJB6AJqENwhIAIoAtgDQYGAgIB4RwRAIAQgA0EwEPYGGgNAAkAgAkEwaiACQfgBahDKFCACKQMwIgtQDQAgAigCOCEDIAIgCzcD8AIgAiADNgL4AiACQZgDaiACQfACahDpCQRAIAIpA/ACENYaBSACQdgCaiALELcJCwwBCwtCABDWJiACQfgBahCcFAsgAigCkARBgYCAgHhHBEAgAkH4AWogBUEwEPYGGgNAIAJBIGogAkH4AWoQyhQgAikDICILUEUEQCACQdgCaiALELcJDAELC0IAENYmIAJB+AFqEJwUCyACQYACaiACQeACaikDADcDACACIAIpA9gCNwP4ASACQZgDahDnCiACQcgCaiACQfgBahCdByACQbADaiACQdACaikCADcDACACIAIpAsgCNwOoAwJAIAEoAhwiBUUNACACQagDahCXEyEGIAgoAgAiBCkDACAGIAVBAWpBAXYgBSAGKAIMGyAGQRBqENwhIARBCGohA0J/hUKAgYKEiJCgwIB/gyELA0AgC1BFBEAgBiAEIAt6p0EBdEHwAXFrQRBrKQMAENoaELcJIAVBAWshBSALQgF9IAuDIQsMAQsgBUUNASAEQYABayEEIAMpAwBCf4VCgIGChIiQoMCAf4MhCyADQQhqIQMMAAsACyACQQA2AsgDIAJBwANqQdiW4wApAwA3AwAgAkHQluMAKQMANwO4AyACQcwBaiACQbgCaiABQTBqIAJBuANqIgMgCCACQagDaiACKAKsAyACKAKoAxsQrgEgAxDCCCABKAIARQ0BIAEgAigCxAIQpCkgAigCuAIiAykDACELIAIoArwCIQQgAiACKALEAjYCkAIgAiADNgKIAiACIAMgBGpBAWo2AoQCIAIgA0EIajYCgAIgAiALQn+FQoCBgoSIkKDAgH+DNwP4AQNAIAJBGGogAkH4AWoQohUgAigCGCIDRQ0CIAIgAigCHCIENgKIAyACQQhqIAMpAwAgA0EIaigCABCkIyACQbgDaiIFIAEgAikDCCACKAIQEPUGIAIpA7gDUA0NIAUgBCkDABDaGhDZCwwACwALIAAoAiAgARBSDAoLIAJBgAJqIAJBwAJqKQMANwMAIAIgAikDuAI3A/gBIAJBqANqEP4nIAJBzAFqEMofIAkNBQwICyAAQQhqIQcCQAJAIAEtAEZFBEAgAkGAAjsAuAMgByACQbgDahDDKyACLQC4Aw0BCyACQagBaiAAKQMIIAAoAhgQpCMgAiACKAKwASIDNgLAASACIAIpA6gBIgs3A7gBIAJBmAFqIAsgAxCkIyABQRBqIgggAikDmAEgAigCoAEQ8SghCSABKAJAIQQgAkG4A2oiAxC7ESACIAQ2ArACIAJBADoAtAIgAiACLQD1AzoAtQIgAiACLwH2AzsBtgIgAkH4AWoiBCADQSwQ9gYaIAJBrAJqIAJB7ANqKAIANgIAIAIgAikC5AM3AqQCIAQgACgCIBC6BCACQcwBaiIFIARBLBD2BhogAkGkAmoQ8yIgBRCuCCACQcACakHYluMAKQMAIgs3AwAgAkHQluMAKQMAIgw3A7gCIAJByAJqIAFBIGoQ4gggAkHAA2oiBSALNwMAIAIgDDcDuAMgByADEPUiIAJBkANqIAUpAwA3AwAgAiACKQO4AzcDiAMgAkHIA2oiBSALNwIAIAJB2ANqIgYgCzcCACACIAw3AsADIAIgDDcC0AMgAkEAOgDgAyACQQA2ArgDIAMgBxCkIiACQYACaiAFKQIAIg43AwAgAkGQAmogBikCACINNwMAIAJBsANqIA03AwAgAiACKQLAAyINNwP4ASACIAIpAtADIg83A4gCIAJBoANqIA43AwAgAiAPNwOoAyACIA03A5gDIAMgAkGIA2oQ0gsgAkHwA2oiBSACQagDahDSCyACIAJBmANqNgLoAyACQeACaiALNwMAIAIgDDcD2AIgBCADEL4OIAJB2AJqIAIoAvgBIAJB6AJqENwhIAIoAtgDQYGAgIB4RwRAIAQgA0EwEPYGGgNAAkAgAkGIAWogAkH4AWoQyhQgAikDiAEiC1ANACACKAKQASEDIAIgCzcD8AIgAiADNgL4AiACQZgDaiACQfACahDpCQRAIAIpA/ACENYaBSACQdgCaiALELcJCwwBCwtCABDWJiACQfgBahCcFAsgAigCkARBgYCAgHhHBEAgAkH4AWogBUEwEPYGGgNAIAJB+ABqIAJB+AFqEMoUIAIpA3giC1BFBEAgAkHYAmogCxC3CQwBCwtCABDWJiACQfgBahCcFAsgAkGAAmogAkHgAmopAwA3AwAgAiACKQPYAjcD+AEgAkGYA2oQ5wogAkHIAmogAkH4AWoQnQcgAkGwA2ogAkHQAmopAgA3AwAgAiACKQLIAjcDqAMCQCABKAIcIgVFDQAgAkGoA2oQlxMhBiAIKAIAIgQpAwAgBiAFQQFqQQF2IAUgBigCDBsgBkEQahDcISAEQQhqIQNCf4VCgIGChIiQoMCAf4MhCwNAIAtQRQRAIAYgBCALeqdBAXRB8AFxa0EQaykDABDaGhC3CSAFQQFrIQUgC0IBfSALgyELDAELIAVFDQEgBEGAAWshBCADKQMAQn+FQoCBgoSIkKDAgH+DIQsgA0EIaiEDDAALAAsgAkEANgLIAyACQcADakHYluMAKQMANwMAIAJB0JbjACkDADcDuAMgAkHMAWogAkG4AmogAUEwaiACQbgDaiIDIAggAkGoA2ogAigCrAMgAigCqAMbEK4BIAMQwgggASgCAEUNASABIAIoAsQCEKQpIAIoArgCIgMpAwAhCyACKAK8AiEEIAIgAigCxAI2ApACIAIgAzYCiAIgAiADIARqQQFqNgKEAiACIANBCGo2AoACIAIgC0J/hUKAgYKEiJCgwIB/gzcD+AEDQCACQfAAaiACQfgBahCiFSACKAJwIgNFDQIgAiACKAJ0IgQ2AogDIAJB4ABqIAMpAwAgA0EIaigCABCkIyACQbgDaiIFIAEgAikDYCACKAJoEPUGIAIpA7gDUA0MIAUgBCkDABDaGhDZCwwACwALIABBIGogARCdLQwJCyACQYACaiACQcACaikDADcDACACIAIpA7gCNwP4ASACQagDahD+JyACQcwBahDKHyAJDQUMBgsgAEEEaiABEJwtDAcLIABBBGogARCcLQwGCyAAKAIEIgAoAihBMGwhAyAAKAIkIQQDQCADRQ0GIARBKGogARCYJiADQTBrIQMgBEEwaiEEDAALAAsgACgCBCIALQBFQQNGDQQgAEEgaiEAA0AgAC0AJUECRgRAAkAgACgCCEE4bCEDIAAoAgQhAANAIANFDQEgACABEMMMIANBOGshAyAAQThqIQAMAAsACwUgACgCICEADAELCwwECyAIIAJBuAFqEMYGDAILIAggAkG4AWoQxgYLIAIoAoQCBEAgAkEANgLAAyACQoCAgICAATcCuAMgAiABNQJAIAExAEZCMIYgATEARUIohoQgATEAREIghoSENwLEAyACIAJB+AFqIgE2AswDIAEgBxD2BRogACgCICACQbgDaiIAEPQtIAAQ8CYLIAJB+AFqEMIKIAIpA7gBENYaDAELAkAgAigChAJFDQAgAkEANgLAAyACQoCAgICAATcCuAMgAiABNQJAIAExAEZCMIYgATEARUIohoQgATEAREIghoSENwLEAyACIAJB+AFqIgE2AswDIAEgBxD2BRogACgCICIFQQRqKAIAIAVBCGooAgAgAkG4A2oQuRwgBSgCECIBIAUoAhRB2ABsaiEHA0ACQAJAIAcgASIARwRAIABB2ABqIQECQAJAAkACQAJAAkAgACgCACIDQQRrQQAgA0EFa0EISRtBAWsOCAECAwQFCQgHAAsgACACQbgDahDbCgwICyAAQQhqIAJBuANqEIgjDAcLIAAoAiAgAkG4A2oQ9C0MBgsgACgCCCAAQQxqKAIAIAJBuANqIgMQmSYgACgCPCADEP8nIABBNGooAgAgAEE4aigCACADELkcDAULIAAoAiQgAkG4A2oiAxD/JyAAQTBqKAIAIABBNGooAgAgAxC5HAwECyAAKAIIIgMgACgCDEEobGohBgNAIAMgBkYNBCADQShqAkAC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A0HwAWoiCSkCADcCACADQYwDaiADQegBaiINKQIANwIAIAMgAykC4AE3AoQDIANBHDYCgAMgAyADQYADaiIPEL0oNgKMAiADQQI2AogCIAUoAgAhCyADKAKYASEOIAMoApwBIQggAyADKAKkATYCoAIgAyAKNgKYAiADIAogB0EFdGo2AqQCIAMgCjYCnAIgB0UNBiANIApBCGopAwA3AwAgCSAKQRBqKQMANwMAIAMgCkEgajYCnAIgAyAKKQMANwPgASADIAooABk2AtgCIAMgCkEcaigAADYA2wIgCi0AGCIHQQJGDQYgBCADKADbAjYAACADQZADaiIFIAkpAwA3AwAgA0GIA2oiBCANKQMANwMAIAMgAykD4AE3A4ADIAMgBzoAmAMgAyADKALYAjYAmQMgA0HAAmogDxC3DSADKQOAAyAFKQMAEPgsIAMoAsACQYCAgIB4Rg0GIANBsAJqIANByAJqIgYoAgA2AgAgAyADKQLAAjcDqAIgBCADQaACaikCADcDACADIAMpApgCNwOAAyADQQA2AqgDIANCADcDoAMgAyAIIAtBAnQiC2o2ApwDIAMgDjYCmAMgAyAINgKUAyADIAg2ApADIAMoAoQDIQcgAygCjAMhDCADQfkBaiIKQQNqIQ8DQAJAAkAgByAMRg0AIAMgB0EgaiIFNgKEAyAHLQAYIg5BAkYNACALDQEgBykDACAHKQMQEPgsCyADQYADahCGKSADQagCahCLGSEZIABBADYCACAAIBk3AwggA0GIAmoQ/R8MCQsgBiAHQQhqKQMAIhs3AwAgA0HQAmogB0EQaikDACIaNwMAIAMgCEEEaiIENgKUAyADIAcpAwAiGTcDwAIgAyAHKAAZNgK4AiADIAdBHGooAAA2ALsCIAgoAgAhByAJIBo3AwAgDSAbNwMAIAogAygCuAI2AAAgDyADKAC7AjYAACADIBk3A+ABIAMgDjoA+AEgA0HYAmogASAHEFgCQAJAAkACQCADKALYAiIODgIBAgALIAAgAykDiAI3AwAgAEEIaiADQZACaikDADcDACADQdgCahD9HyADKQPgASADKQPwARD4LCADQYADahCGKSADKAKoAiADKAKsAhC4KQwLCyADIAMpA+ACNwP4AiADQewCaiADQfgCahC3DSADKQP4AhDWGgwBCyADQewCaiADKwPg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aigCACACQegCahDqHAwBCyABQQRqKAIAIAJB6AJqEPUCCyAAKAIgIgAEQCAAQQRqKAIAIABBCGooAgAgAigC/AIQgRsLIAJB6AJqEPAmCyACQagBahDCCgwOCyAAQQhqIAEQpC0MDQsgACgCDEUNDCAAQQxqIAEQmi0MDAsgAEEEaiABEJotDAsLIABBBGogARCaLQwKCyAAQQhqEOQhDAkLIAAoAgQgARCkDAwICyAAQQRqIAEQyg8MBwsgAEEEaiABEJotDAYLIABBBGogARCaLQwFCyAAQQRqIAEQmi0MBAsgAEEEaiABEJotDAMLIABBBGogARCaLQwCCyAAQQRqIAEQmi0MAQsgAEEEaiABELocCyACQdADaiQADwsgAigC8AIhACACQQM2AowCIAJBuNLgADYCiAIgAkIDNwKUAiACQesENgK0AiACQesENgKsAiACQcUCNgKkAiACIAM2AqACIAIgAEEIazYCyAIgAiACQaACajYCkAIgAiACQbgCajYCsAIgAiACQcgCajYCqAIgAkGIAmpBwNPgABChHQALpCICHX8BfiMAQbACayICJAAgAkEwaiABKAIIIgNBBEEcEOcUIAJBADYCQCACIAIpAzA3AjggASgCACEFIAIgASgCBCIBIANBHGwiA2oiCzYCvAEgAiAFNgK4ASACIAE2ArABIAFBHGohByACQcgAaiERAkACQAJAAkACQAJAA0ACQAJAIAIgAwR/IAEoAgAiBUEIRw0BIAcFIAsLNgK0ASACQbABahCsFwJAAkACQCACKAJAIgUOAgQAAQsgAkEANgJAIAIoAjwiAygCACIBQQhGDQEgACABNgIAIAAgAykCBDcCBCAAQQxqIANBDGopAgA3AgAgAEEUaiADQRRqKQIANwIADAULIAIoAjwhAUEAIQMgAkEANgKYAiACQoCAgIDAADcCkAIgBUEcbCEEQQQhDQJAAkADQCAEBEAgASgCAEEBRw0CIAJBwAFqIAEoAgQgASgCCCIGEIAGIAItAMABIgVBAkcgBXNBAXFFDQICf0EBIAIoAsQBIgVBgAFJDQAaQQIgBUGAEEkNABpBA0EEIAVBgIAESRsLIAZHDQIgAUEcaiEBIAIoApACIAhGBEAgAkGQAmoQ5RYgAigClAIhDQsgAyANaiAFNgIAIAIgCEEBaiIINgKYAiAEQRxr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3Q8MAAsACwALIANB+ABqIAIgASgCCCABKAIMIAMoAjAiBCADKAI0EIoPIAMtAHhBBEYNASADKQN4IhdC/wGDQgRRDQEgACAXNwIACyADKAIsIAQQuCkMAQsgAygCLCAEELgpIABBBDoAAAsgA0HwBmokAAusIQIGfwJ+IwBBwAFrIgIkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOEg8PAQIDDw8EBQYHCAkKCwwNDgALIAEgAEEEahDUBAwOCyAAQQRqIAEQwisgAEEIaiABENorDA0LIABBDGogARCgJQwMCyAAQShqIAEQ2isMCwsgAEEEaiABEMIrIABBCGogARDaKyAAKAIURQ0KIABBFGogARDaKwwKCyAAQRBqIAEQwisgACgCDEEYbCEDIAAoAgghAANAIANFDQogAEEUaiABEKAlIAAgARCBGiADQRhrIQMgAEEYaiEADAALAAsgAEEEaiABEMIrDAgLIAEgACgCBCIEQcgAahDUBAJAIAQoAgBBCEYNACACQZQBakHYluMAKQMANwIAIAJBADoAvwEgAkEAOwC9ASACQQA2ArQBIAJCgICAgIABNwKsASACQQE6AKgBIAJBADYCpAEgAkKAgICAwAA3ApwBIAJBADYCiAEgAkKAgICAgAE3AoABIAJB0JbjACkDADcCjAEgAiABLQA8OgC8ASACIAEoAjg2ArgBIAEtAD0hACAEQShqIAJBgAFqIgMQgRogAkEBOgC/ASACQQE6AL0BIAQoAgBBB0cEQCAEIAMQkxELIAJBrAFqIQUgAkEAOgC/ASACIAA6AL0BAkAgAigCtAEiAARAIAFBDGogABDiKCACQdAAaiACKAKwASACKAK0ARCZCiACIAIoAlA2AgggAiACKAJUIgA2AgAgAiAAIAIoAlhBBHQiA2oiBjYCDANAIANFDQIgAkGAAWogACkDACAAKAIIELQQIANBEGshAyAAQRBqIQAMAAsACyABQRxqIAIgAkGAAWpBLBD2BhCCGiAFEPMiDAELIAIgBjYCBCACEP0WIAEtAChFBEAgASACKAK0ARD4HSACIAIoAqwBNgIIIAIgAigCsAEiADYCACACIAAgAigCtAFBBHQiA2oiBTYCDANAIAMEQCABIAApAwAgACgCCEEBEIcGIANBEGshAyAAQRBqIQAMAQsLIAIgBTYCBCACEP0WIAFBHGogAiACQYABakEsEPYGEIIaDAELIAJBCGogBUEIaigCADYCACACIAUpAgA3AwAgAUEsaiACEI8QIAFBHGogAiACQYABakEsEPYGEIIaCyAEQeAAaiABEMojDAcLIABBBGogARDCKyAAQQhqIAEQ2isMBgsgAEEEaiABEMIrIABBCGogARDaKwwFCyACQRRqQdiW4wApAwAiCDcCACACQQA7AT4gAkEANgI0IAJCgICAgIABNwIsIAJBAToAKCACQQA2AiQgAkKAgICAwAA3AhwgAkEANgIIIAJCgICAgIABNwIAIAJB0JbjACkDACIJNwIMIAIgAS8BPDsBPCACIAEoAjg2AjgCQCAAKAIEIgRBAkYNACAAQQhqIQMgBEEBcUUEQCADIAIQ2ysMAQsgAyACEMIrCyACQSxqIQQgAkEcaiEFIABBGGogAhCgJSAAQRxqIAIQoCUgAkGUAWogCDcCACACIAk3AowBIAJBADsBvgEgAiACLwE8OwG8ASACIAIoAjg2ArgBIAJBADYCtAEgAkKAgICAgAE3AqwBIAJBAToAqAEgAkEANgKkASACQoCAgIDAADcCnAEgAkEANgKIASACQoCAgICAATcCgAEgAkGAAWogACgCDBC0ICACQawBaiEGAkACQCACKAK0ASIABEAgAkEMaiAAEOIoIAJBxABqIAIoArABIAIoArQBEJkKIAIgAigCRDYCWCACIAIoAkgiADYCUCACIAAgAigCTEEEdCIDaiIHNgJcA0AgA0UNAiACQYABaiAAKQMAIAAoAggQtBAgA0EQayEDIABBEGohAAwACwALIAJB0ABqIgAgAkGAAWpBLBD2BhogBSAAEIIaIAYQ8yIMAQsgAiAHNgJUIAJB0ABqEP0WIAItAChFBEAgAiACKAK0ARD4HSACIAIoAqwBNgJYIAIgAigCsAEiADYCUCACIAAgAigCtAFBBHQiA2oiBjYCXANAIAMEQCACIAApAwAgACgCCEEBEIcGIANBEGshAyAAQRBqIQAMAQsLIAIgBjYCVCACQdAAaiIAEP0WIAAgAkGAAWpBLBD2BhogBSAAEIIaDAELIAJB2ABqIAZBCGooAgA2AgAgAiAGKQIANwNQIAQgAkHQAGoiABCPECAAIAJBgAFqQSwQ9gYaIAUgABCCGgsCQCACKAI0IgAEQCABQQxqIAAQ4iggAkHQAGogAigCMCACKAI0EJkKIAIgAigCUDYCiAEgAiACKAJUIgA2AoABIAIgACACKAJYQQR0IgNqIgU2AowBA0AgA0UNAiACIAApAwAgACgCCBC0ECADQRBrIQMgAEEQaiEADAALAAsgAkGAAWoiACACQSwQ9gYaIAFBHGogABCCGiAEEPMiDAULIAIgBTYChAEgAkGAAWoQ/RYgAS0AKEUEQCABIAIoAjQQ+B0gAiACKAIsNgKIASACIAIoAjAiADYCgAEgAiAAIAIoAjRBBHQiA2oiBDYCjAEDQCADBEAgASAAKQMAIAAoAghBARCHBiADQRBrIQMgAEEQaiEADAELCyACIAQ2AoQBIAJBgAFqIgAQ/RYgACACQSwQ9gYaIAFBHGogABCCGgwFCyACQYgBaiAEQQhqKAIANgIAIAIgBCkCADcDgAEgAUEsaiACQYABaiIAEI8QIAAgAkEsEPYGGiABQRxqIAAQghoMBAsgAkEUakHYluMAKQMAIgg3AgAgAkEAOwE+IAJBADYCNCACQoCAgICAATcCLCACQQE6ACggAkEANgIkIAJCgICAgMAANwIcIAJBADYCCCACQoCAgICAATcCACACQdCW4wApAwAiCTcCDCACIAEvATw7ATwgAiABKAI4NgI4IABBBGogAhCWHCAAQQxqIAIQwisgAkGUAWogCDcCACACIAk3AowBIAJBADsBvgEgAiACLwE8OwG8ASACIAIoAjg2ArgBIAJBADYCtAEgAkKAgICAgAE3AqwBIAJBAToAqAEgAkEANgKkASACQoCAgIDAADcCnAEgAkEANgKIASACQoCAgICAATcCgAEgAkGAAWogACgCEBC0ICACQawBaiEFIAJBLGohBCACQRxqIQYCQAJAIAIoArQBIgAEQCACQQxqIAAQ4iggAkHEAGogAigCsAEgAigCtAEQmQogAiACKAJENgJYIAIgAigCSCIANgJQIAIgACACKAJMQQR0IgNqIgc2AlwDQCADRQ0CIAJBgAFqIAApAwAgACgCCBC0ECADQRBrIQMgAEEQaiEADAALAAsgAkHQAGoiACACQYABakEsEPYGGiAGIAAQghogBRDzIgwBCyACIAc2AlQgAkHQAGoQ/RYgAi0AKEUEQCACIAIoArQBEPgdIAIgAigCrAE2AlggAiACKAKwASIANgJQIAIgACACKAK0AUEEdCIDaiIFNgJcA0AgAwRAIAIgACkDACAAKAIIQQEQhwYgA0EQayEDIABBEGohAAwBCwsgAiAFNgJUIAJB0ABqIgAQ/RYgACACQYABakEsEPYGGiAGIAAQghoMAQsgAkHYAGogBUEIaigCADYCACACIAUpAgA3A1AgBCACQdAAaiIAEI8QIAAgAkGAAWpBLBD2BhogBiAAEIIaCwJAIAIoAjQiAARAIAFBDGogABDiKCACQdAAaiACKAIwIAIoAjQQmQogAiACKAJQNgKIASACIAIoAlQiADYCgAEgAiAAIAIoAlhBBHQiA2oiBTYCjAEDQCADRQ0CIAIgACkDACAAKAIIELQQIANBEGshAyAAQRBqIQAMAAsACyACQYABaiIAIAJBLBD2BhogAUEcaiAAEIIaIAQQ8yIMBAsgAiAFNgKEASACQYABahD9FiABLQAoRQRAIAEgAigCNBD4HSACIAIoAiw2AogBIAIgAigCMCIANgKAASACIAAgAigCNEEEdCIDaiIENgKMAQNAIAMEQCABIAApAwAgACgCCEEBEIcGIANBEGshAyAAQRBqIQAMAQsLIAIgBDYChAEgAkGAAWoiABD9FiAAIAJBLBD2BhogAUEcaiAAEIIaDAQLIAJBiAFqIARBCGooAgA2AgAgAiAEKQIANwOAASABQSxqIAJBgAFqIgAQjxAgACACQSwQ9gYaIAFBHGogABCCGgwDCyACQRRqQdiW4wApAwAiCDcCACACQQA7AT4gAkEANgI0IAJCgICAgIABNwIsIAJBAToAKCACQQA2AiQgAkKAgICAwAA3AhwgAkEANgIIIAJCgICAgIABNwIAIAJB0JbjACkDACIJNwIMIAIgAS8BPDsBPCACIAEoAjg2AjggAEEEaiACEJYcIABBDGogAhDCKyACQZQBaiAINwIAIAIgCTcCjAEgAkEAOwG+ASACIAIvATw7AbwBIAIgAigCODYCuAEgAkEANgK0ASACQoCAgICAATcCrAEgAkEBOgCoASACQQA2AqQBIAJCgICAgMAANwKcASACQQA2AogBIAJCgICAgIABNwKAASACQYABaiAAKAIQELQgIAJBrAFqIQUgAkEsaiEEIAJBHGohBgJAAkAgAigCtAEiAARAIAJBDGogABDiKCACQcQA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NgLcASADIANB9ABqNgKAASADQQM6AKwBIANBCDYCqAEgA0IgNwKgASADQoCAgIDAADcCmAEgA0ECNgKQASADIANBkAFqNgLgASADIANBgAFqNgLYASADQdwAaiADQdABahDtJBoMEAsgDQ0LIANB3ABqIAEQ3Q8MDwsgA0HQAWoiASADKAJgIAMoAmRBJ0Ha2tgAEM4GIANBPjYChAEgA0ECNgKUASADQdza2AA2ApABCyADQgE3ApwBIAMgATYCgAEgAyADQYABajYCmAEgA0HQAGogA0GQAWoQ6hQgAygC0AEgAygC1AEQuCkgAygCXCADKAJgELgpIAItAFBFDQggAygCVCEEIAMoAlghASADQQg2AmggAyABNgLsASADIAQ2AugBIANBADYC4AEgAyABIARqNgLcASADIAQ2AtgBIANBAjYC0AEgAyADQegAajYC5AEgA0EQaiADQdgBaiIFEOEGIAMgAygCFDYC1AEgAyADKAIQIgY2AtABIAZBAXEEQCADQQhqIAEQthQgAygCCCEHIAMoAgwiBiAEIAEQ9gYhBCADIAE2AogBIAMgBDYChAEgAyAHNgKAASADQagBaiADQegBaikCADcDACADQaABaiADQeABaikCADcDACADQZgBaiIHIAUpAgA3AwAgAyADKQLQATcDkAEgA0EANgKwAQNAIAMoApABIQQgA0ECNgKQAQJ/IARBAkcEQCADKAKUAQwBCyADIAcQ4QYgAygCACEEIAMoAgQLIQUgBEUNByADIAMoArABIghBAWoiBDYCsAECQCAEIAVqIgRFDQAgASAESwRAIAQgBmosAABBv39KDQEMCwsgASAERw0KCyADKAKAASABRgRAIANBgAFqIAFBARDPCiADKAKEASEGCyAEIAZqIgRBAWogBCAFIAhqQX9zIAFqELgtGiAEQdwAOgAAIAMgAUEBaiIBNgKIAQwACwALQYCAgIB4IQUgBAwGCyADQdABaiIBEKceGiABEIIdIQEMCQsgA0EBNgKUASADQajZ2AA2ApABIANCATcCnAEgA0HUATYC1AEgAyABOgCAASADIANB0AFqNgKYASADIANBgAFqNgLQASADQdwAaiADQZABahDtJBoMCwsgA0EBNgKUASADQczY2AA2ApABIANCATcCnAEgA0HUATYC1AEgAyABOgCAASADIANB0AFqNgKYASADIANBgAFqNgLQASADQdwAaiADQZABahDtJBoMCgsgA0HcAGogARDdDwwJCyADIAFBgIAEa0EKdkGAsANqNgJ8IAMgAUH/B3FBgLgDcjYCdCADQcsANgKMASADQcsANgKEASADQQI2AuQBIANBAjYC1AEgA0HI2tgANgLQASADIANB9ABqNgKIASADIANB/ABqNgKAASADQQM6AMwBIANBCDYCyAEgA0KggICAEDcCwAEgA0KAgICAwAA3ArgBIANBAjYCsAEgA0EDOgCsASADQQg2AqgBIANCIDcCoAEgA0KAgICAwAA3ApgBIANBAjYCkAEgAyADQZABajYC4AEgA0ECNgLcASADIANBgAFqNgLYASADQdwAaiADQdABahDtJBoMCAsgAygCgAEhBSADKAJUIQQgAygChAELIgYgAUG+seAAQQRBwrHgAEEHEMcEIANB0AFqIAMoApQBIgEgAygCmAFBybHgAEEDQcyx4ABBBhDHBCADKAJQIAQQuCkgA0HYAGogA0HYAWooAgA2AgAgAyADKQLQATcDUCADKAKQASABELgpIAUgBhCWJAwBC0H81tgAQSxBqNfYABDaFwALIANBkAFqIAJBAEEAIAMoAlQiASADKAJYEIoPAkAgAy0AkAFBBEcEQCADKQOQASIOQv8Bg0IEUg0BCyADKAJQIAEQuCkgAEEEOgAADAcLIAAgDjcCACADKAJQIAEQuCkMBgsgA0EBNgKUASADQczY2AA2ApABIANCATcCnAEgA0HUATYC1AEgAyABOgCAASADIANB0AFqNgKYASADIANBgAFqNgLQASADQdwAaiADQZABahDtJBoMAwsCQAJAAkACQCABBEAgASgCAEEgckHkAEYNAQsgCQ0BIANB3ABqQdwAEN0PDAYLIANBADYCmAEgA0KAgICAEDcCkAEgA0GQAWoiBEHcABDdDyAEQfUAEN0PIAkNAQwCCyADQdwAakHU2dgAQQIQ1h0MBAsgA0GQAWpB+wAQ3Q8LIANBkAFqIAEoAgAQ3Q8gA0HQAWoQpx4aQQMhBAJAAkACQAJAAkACQANAIARFBEAgCUUNAgwDCyADQdABahCnHiIBQYCAxABGIAFBMGtBCkkgAUHhAGtBBklyRSABQcEAa0EFS3FyRQRAIANBkAFqIAEQ3Q8gBEEBayEEDAELCyAJDQEMAgtBBiEIQQIhASADKAKYASEGIAMoApQBIQQMAgsgA0GQAWpB/QAQ3Q8gBA0AQQMhASADKAKUASEEIAMoApgBIgZBAWsiCEEDTw0BDAMLIANB3ABqQdTZ2ABBAhDWHSADKAKUASEEDAELAkAgASAGSQRAIAEgBGosAABBv39MDQMMAQsgASAGRw0CCwJAIAYgCEsEQCAEIAhqLAAAQb9/TA0DDAELIAYgCEcNAgsgAyAIIAFrIgg2AnggAyABIARqIgE2AnQgA0GAAWogASAIQRAQwgQgAy0AgAFBAUcEQCADKAKEASIBQf//A00EQCABQYDwA3FBgLADRwRAIANB3ABqQdTZ2ABBAhDWHQwDCyADQdwAakHcABDdDwwCCyADQdwAaiAEIAYQ1h1BB0EFIAkbIQEDQCABRQ0CIAFBAWshASADQegAahCnHhoMAAsACyADLQCBASEBIwBBMGsiACQAIAAgAToAByAAQQI2AgwgAEG429gANgIIIABCAjcCFCAAQbECNgIsIABBAjYCJCAAIANB9ABqNgIgIAAgAEEgajYCECAAIABBB2o2AiggAEEIakHI29gAEKEdAAsgAygCkAEgBBC4KQwDCyAEIAYgASAIQbja2AAQuCYACyADQegAahCCHSIBBEAgASgCAEEwa0EKSQ0BCyADQdwAakGw2NgAQQIQ1h0MAQsgA0HcAGpBrNjYAEEEENYdDAALAAsgACAONwIACyADQfABaiQAC489Ahp/An4jAEGwA2siAiQAIAIgARC8DCIFNgIMAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUHcAEYEQCACQRhqIgUgASgCACIEQdgAaigCADYCACACIAQpAlA3AxAgBEHQAGohBiABEO8IRQRAIAJBrANqIAZBCGooAgA2AgAgAkGgA2ogBSgCADYCACACIAIpAxA3A5gDIAIgBikCADcCpAMgAkEKNgKYASACQaQCaiIFIAEoAgQgASgCCCACQZgDaiACQZgBahCQDyAAIAVBwAAQ9gYaDB0LIAEQvAwiBUH4//8AcUEwRwRAAkACQAJAAkACQCAFQf7//wBxQThHBEACQAJAIAVB8ABrDgkFAwMBAwQDAQQACwJAIAVB0ABrDggFAwMBAwQDAQAL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KQMQNwNAIAQgAykCADcCTCAEQQo2AlwgBSABKAIEIAsgBEFAayAEQdwAahCQDwwDCyAEQQA2AlwgBEE8akHMpMQAIARB3ABqQdCkxAAQzxoACyAEQdQAaiADQQhqKAIANgIAIARByABqIARBGGooAgA2AgAgBCAEKQMQNwNAIAQgAykCADcCTCAEQQc2AlwgBSABKAIEIAogBEFAayAEQdwAahCQDwwBCyAEQYABaiIBIARBKGooAgA2AgAgBEGMAWogA0EIaigCADYCACAFIAg2AgQgBSAEKQMgIhw3AgggBSAGOgAhIAVBBToAICAEIAMpAgA3AoQBIAVBEGogASkDADcCACAFQRhqIARBiAFqKQMANwIAIAQgHDcDeCAFQSI2AgALIAkgCSgCAEEBajYCACAEQZABaiQACyAHQUBrJAAgAkGgAWoiASACQbACaikCADcDACACQagBaiIFIAJBuAJqKQIANwMAIAJBsAFqIgYgAkHAAmopAgA3AwAgAiACKQKoAjcDmAEgAigCpAIiBEEiRg0HIAAgAikCyAI3AiQgAEE8aiACQeACaigCADYCACAAQTRqIAJB2AJqKQIANwIAIABBLGogAkHQAmopAgA3AgAgAEEcaiAGKQMANwIAIABBFGogBSkDADcCACAAQQxqIAEpAwA3AgAgACACKQOYATcCBAwICyACQaQCaiEIQQAhBSMAQYACayIDJAACQAJ/AkACQAJAIAEQvAxB8ABHBEAgARC8DEHQAEcNAQsgA0HYAGogASgCACILQUBrQeSmxAAQnh0gAygCXCERIAMoAlgiBkEANgIIIAEQvAwhEyABEJUeRQRAIANBlAFqIAtB2ABqKAIAIgU2AgAgA0GIAWogBTYCACADIAspAlAiHDcCjAEgAyAcNwOAASADQQo2AsABIAggASgCBCABKAIIIANBgAFqIANBwAFqEJAPDAULIAEQvAxB+wBGBEAgA0HAAWogARDgCiADQegAaiADQdQBaigCADYCACADIAMpAswBNwNgA0AgARCVHkUNBCABELwMQf0ARg0EIAYgARC8DBCWDQwACwALIANB+ABqIAtB2ABqKAIANgIAIAMgCykCUDcDcCABELwMIgdB3ABGDQEgARCVHhpBgICAgHghASADQfAAagwDC0Hkp8QAQTpBoKjEABDaFwALIANBgAFqIgUgARDgCiADQR82AsABIAggASgCBCABKAIIIAUgA0HAAWoQkA8MAgsCQAJAIAsoAlAiBSABKAIIRwRAIAMgARC8DCIFNgJsIAVB/QBHBEAgA0EANgLAASADQewAakHMpMQAIANBwAFqQdSnxAAQzxoACyABEO8IGiADQcABaiAGKAIEIgkgBigCCCIKQbCo4ABBAhDbAQJAIAMoAsABRQRAIAMtAM4BDQMgAygC9AEhBSADKALwASEGIAMtAMwBIQEgAygCxAEhBwNAIAMgAUF/c0EBcToAzAEgA0HQAGogByAGIAUQiBMgAygCUCIERQ0CIAMoAlQhDCADIAQ2AoABIAMgBCAMajYChAEgA0HIAGogA0GAAWoQ9gkgAygCSEUEQCABQQFxRQ0FDAYLIAFBAXENBSADLQDMAUEBcSEBAn9BASADKAJMIgRBgAFJDQAaQQNBBCAEQYCABEkbIARBgBBPDQAaQQILIAdqIQcMAAsACyADKAL8ASINIAMoAtgBIhRrIQUgDUEBayEVIAMoAtABIQYgAykDyAEhHCADKALcASEHIAMoAvgBIRIgAygC9AEhDCADKALwASEPIAMoAuQBIhYhAQNAIAYgBiABIAEgBkkbIBZBf0YiEBsiBCANIAQgDUsbIRdBACABIBAbIRgDQCAHIBVqIgEgDE8NBAJ/IBwgASAPajEAAIhCAYNQRQRAIAcgD2ohDiAEIQECQAJAAkADQCABIBdGBEAgBiEBA0AgASAYTQ0NIAFBAWsiASANTw0DIAEgB2oiDiAMTw0EIAEgEmotAAAgDiAPai0AAEYNAAsgByAUaiEHIBANByAFIQEMCAsgASAHaiIZIAxPDQMgASAOaiEaIAEgEmogAUEBaiEBLQAAIBotAABGDQALIBkgBmtBAWoMBAsgASANQbTh4AAQmxAACyAOIAxBxOHgABCbEAALIAwgBCAHaiIAIAAgDEkbIAxB1OHgABCbEAALIAcgDWoLIQcgEA0AC0EAIQEMAAsACyAGIAUgByAFQaDi4AAQuCYACyADQZQBaiALQdAAaiIGQQhqKAIAIgQ2AgAgA0GIAWogBDYCACADIAYpAgAiHDcCjAEgAyAcNwOAASADQQo2AsABIAggASgCBCAFIANBgAFqIANBwAFqEJAPDAMLIANBQGsgCSAKQToQ6AZBASEFIAMoAkBBAUYEQCADQSBqIAkgCiADKAJEIgFBlKfEABCUFSADQYABaiADKAIgIAMoAiQQohEgA0EYaiAJIAogAUEBakGkp8QAELAUIANBwAFqIAMoAhggAygCHBCiESADNQKIASADNQLAAUIghoQhHCADKQLEASEdIAMoAoQBIQcgAygCgAEhASADQeAAagwCCyADQThqIAkgCkE9EOgGIAMoAjhBAUYEQCADQTBqIAkgCiADKAI8IgFBtKfEABCUFSADQYABaiADKAIwIAMoAjQQohEgA0EoaiAJIAogAUEBakHEp8QAELAUIANBwAFqIAMoAiggAygCLBCiESADNQKIASADNQLAAUIghoQhHCADKQLEASEdIAMoAoQBIQcgAygCgAEhAUEAIQUgA0HgAGoMAgsgA0HAAWogCSAKEKIRIAMpAsQBIRwgAygCwAEhB0EAIQVBgYCAgHghASADQeAAagwBCyADQRBqIAkgCiAHQfSmxAAQlBUgA0GAAWogAygCECADKAIUEKIRQQIhBSADQQhqIAkgCiAHQQJqQYSnxAAQsBQgA0HAAWogAygCCCADKAIMEKIRIAM1AogBIAM1AsABQiCGhCEcIAMpAsQBIR0gAygChAEhByADKAKAASEBIANB4ABqCyEGIANBoAFqIgQgBkEIaigCACIJNgIAIANBrAFqIAtB2ABqKAIANgIAIAggBToAHCAIIB03AhQgCCAcNwIMIAggBzYCCCAIIAE2AgQgCCAGKQIAIhw3AiAgA0G4AWogCTYCACADIAspAlA3AqQBIAhBKGogBCkDADcCACAIQTBqIANBqAFqKQMANwIAIAMgHDcDsAEgAyAcNwOYASAIQSI2AgAgCCATQdAARjoAOAsgESARKAIAQQFqNgIAIANBgAJqJAAgAigCpAIhASACQZgBaiIFIAJBqAJqQTgQ9gYaIAFBIkYNBCACKALgAiEGIABBBGogBUE4EPYGGiAAIAY2AjwMBQsgAkGYA2ogARDgCiACQZwCaiACQawDaigCADYCACACQZACaiACQRhqKAIANgIAIAIgAikCpAM3ApQCIAIgAikDEDcDiAIgAkEgNgKYASACQaQCaiIFIAEoAgQgASgCCCACQYgCaiACQZgBahCQDyAAIAVBwAAQ9gYaDB4LQQEgA3RB65uAgAFxRQ0GDAcLIAQtAGVFBEAgAkGYA2ogARDgCiACQZwCaiACQawDaigCADYCACACQZACaiACQRhqKAIANgIAIAIgAikCpAM3ApQCIAIgAikDEDcDiAIgAkEgNgKYASACQaQCaiIFIAEoAgQgASgCCCACQYgCaiACQZgBahCQDyAAIAVBwAAQ9gYaDB0LIAJBIGohBiMAQSBrIgUkAAJAAkAgASgCACIELQBlBEAgARC8DEEwSQ0BIAEQvAxBOE8NASAEKQJUIRwgBCgCUCEDA0AgARDvCEUNAyABELwMQTBJDQMgARC8DEE3Sw0DIAQoAlAgA2tBA0kNAAsMAgtB8KHEAEElQZiixAAQ2hcAC0GoosQAQTpB5KLEABDaFwALIAQpAlQhHSAFQQhqIAEoAgQgASgCCCADIAQoAlAiAUH0osQAEPQNIAVBFGogBSgCCCAFKAIMQQgQwgQCQAJAIAUtABRBAUcEQCAFKAIYIgRBgLADc0GAgMQAa0H/j7x/TQ0BIAZBAzoAHCAGIB03AhQgBiABNgIQIAYgHDcCCCAGIAM2AgQgBiAENgIAIAVBIGokAAwCCyAFIAUtABU6AB9BhKPEAEESIAVBH2pBmJjEAEGYo8QAEMAOAAtBqKPEAEEUQbyjxAAQoRIACyACQSxqIAJBGGooAgA2AgAgAEKigICAoICAgIB/NwIAIABBGGogAkEwaikCADcCACAAQSBqIAJBOGopAgA3AgAgAiACKQMQNwIkIAAgAikCIDcCCCAAQRBqIAJBKGopAgA3AgAMHAsgAkEANgKkAiACQQxqQaihxAAgAkGkAmpBrKHEABDPGgALIAJB4ABqIgUgAkGYAWpBOBD2BhogAkGEAWogAkEYaigCADYCACACIAIpAxA3AnwgAEEEaiAFQTgQ9gYaCyAAIAE2AgAMGQsgAkHIAGoiAyABKQMANwMAIAJB0ABqIAUpAwAiHDcDACACQdgAaiAGKQMAIh03AwAgAkHMAGogAkEYaigCADYCACACIAIpA5gBNwNAIABBgoCAgHg2AgQgAEEYaiAcNwIAIABBIGogHTcCACACIAIpAxA3AkQgACACKQNANwIIIABBEGogAykDADcCAAsgACAENgIADBcLIAVB2wBrQQRJIAVB+wBrQQRJcg0AIAVBMGtBCkkgBUH/AEtyIAVBwQBrQRpJIAVB4QBrQRpJcnJFIAVB/QBxQTxHcQ0CIAVBPGsOBw8EEAQECw4BCyAAIAIpA/ABNwIMIABBAToAJCAAIAU2AgggAEKigICAoICAgIB/NwIAIABBHGogAkGAAmopAwA3AgAgAEEUaiACQfgBaikDADcCAAwVCwJAIAVB8gBrDgkIAwYDCQMDAwsACyAFQeEAaw4GAwsCAgIEAQsgACACKQPwATcCDCAAQQI6ACQgACAFNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMEwsgBUHuAEYNBAsgAkELNgKYASACQaQCaiIFIAEoAgQgASgCCCACQfABaiACQZgBahCQDyAAIAVBwAAQ9gYaDBELIAAgAikD8AE3AgwgAEEGOwEkIABBBzYCCCAAQqKAgICggICAgH83AgAgAEEcaiACQYACaikDADcCACAAQRRqIAJB+AFqKQMANwIADBALIAAgAikD8AE3AgwgAEGGAjsBJCAAQQw2AgggAEKigICAoICAgIB/NwIAIABBHGogAkGAAmopAwA3AgAgAEEUaiACQfgBaikDADcCAAwPCyAAIAIpA/ABNwIMIABBhgQ7ASQgAEEJNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMDgsgACACKQPwATcCDCAAQYYGOwEkIABBCjYCCCAAQqKAgICggICAgH83AgAgAEEcaiACQYACaikDADcCACAAQRRqIAJB+AFqKQMANwIADA0LIAAgAikD8AE3AgwgAEGGCDsBJCAAQQ02AgggAEKigICAoICAgIB/NwIAIABBHGogAkGAAmopAwA3AgAgAEEUaiACQfgBaikDADcCAAwMCyAAIAIpA/ABNwIMIABBhgo7ASQgAEELNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMCwsgACACKQPwATcCCCAAQQI6ACAgAEKigICAsICAgIB/NwIAIABBGGogAkGAAmopAwA3AgAgAEEQaiACQfgBaikDADcCAAwKCyAAIAIpA/ABNwIIIABBAzoAICAAQqKAgICwgICAgH83AgAgAEEYaiACQYACaikDADcCACAAQRBqIAJB+AFqKQMANwIADAkLIAJBmAJqIgogAkGAAmopAwA3AwAgAkGQAmoiCyACQfgBaikDADcDACACIAIpA/ABNwOIAkEEIQUgASgCCCIDIAYoAgBGDQcgARC8DEH7AEcNByACIAEQvAwiBzYC5AIgB0H7AEcNBCACQfACaiAGQQhqIgcoAgA2AgAgAiAGKQIANwPoAiABEJUeDQMgAkGsA2ogBygCADYCACACQaADaiACQRhqKAIANgIAIAIgAikDEDcDmAMgAiAGKQIANwKkAyACQR42ApgBIAJBpAJqIAEoAgQgAyACQZgDaiACQZgBahCQDwwGCyAAIAIpA/ABNwIIIABBBToAICAAQqKAgICwgICAgH83AgAgAEEYaiACQYACaikDADcCACAAQRBqIAJB+AFqKQMANwIADAcLIAAgAikD8AE3AgggAEEIOgAgIABCooCAgLCAgICAfzcCACAAQRhqIAJBgAJqKQMANwIAIABBEGogAkH4AWopAwA3AgAMBgsgACACKQPwATcCCCAAQQk6ACAgAEKigICAsICAgIB/NwIAIABBGGogAkGAAmopAwA3AgAgAEEQaiACQfgBaikDADcCAAwFCyACQYADaiAHKAIANgIAIAIgBikCADcD+AIgARC8DCIHQS1GIAdB3///AHFBwQBrQRpJckUEQCAGIAIpA+gCNwIAIAZBCGogAkHwAmooAgA2AgAMBAsgAiAEQUBrQbyhxAAQnh0gAigCBCEEIAIoAgAiB0EANgIIA0ACQAJAAkACQCAGKAIAIANGDQAgARC8DCIIQS1GIAhB3///AHFBwQBrQRpJcg0DIAYoAgAgA0YNACABELwMQf0ARg0BCyACQawDaiAGQQhqKAIANgIAIAJBoANqIAJB8AJqKAIANgIAIAIgAikD6AI3A5gDIAIgBikCADcCpAMgAkEcNgKYAQwBCyACQZADaiAGQQhqKAIANgIAIAIgBikCADcDiAMgARDvCBogBygCBCIIIAcoAggiCUH5rMQAQQUQzR8EQEEGIQcMBQsgCCAJQf6sxABBAxDNHwRAQQchBwwFC0EKIQcgCCAJQcyhxABBChDNHw0EIAggCUHWocQAQQgQzR8EQEELIQcMBQsgAkGgA2ogAkGAA2ooAgA2AgAgAkGsA2ogAkGQA2ooAgA2AgAgAiACKQP4AjcDmAMgAiACKQOIAzcCpAMgAkEdNgKYAQsgAkGkAmog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ASkDAFAEQCAHIAFBCGoQvwsgAkIANwOwAQwBCyABKQMYIS8gAkGwAWogARDlHSACIC83A8gBCyAIIAIpA7ABNwMAIAggFDYCJCAIIBE2AiAgCCACKQNgNwMoIAggCjoAQSAIIA06AEAgCEEYaiACQcgBaikDADcDACAIQRBqIAJBwAFqKQMANwMAIAhBCGogBykDADcDACAIQTBqIBIpAwA3AwAgCEE4aiACQfAAaikDADcDAAwFCyADKAIMIQYgAygCCCEPIANBBGoQ2BwhCAwECyADKQIIIS8gByADQRBqELUbIAIgAi8BygE7ARggL0IgiKchBiACKAK4ASEFIAIoArwBIQkgAigCwAEhBCACKALEASEMIAItAMgBIQsgAi0AyQEhECAvpyEPIDAhLyACKALMAQwECyACQbABaiADQQhqEG8gAiACLwHKATsBYCACLQDIASERIAIoAsQBIR0gAigCwAEhHiACKAK8ASEfIAIoArgBISAgAikDsAEhMSACKALMASEBIAIpA9ABIS8gAigC2AEhDSACKALcASEKIAItAMkBDAcLIAAgGTYCCCAAIBo2AgQgACAiNgIAIAJBgAJqJAAPCwALIDAhLyAcCyEBICshCiAsIQ0MAgsgAiABOgDMASACIAIvAcIBOwFgIAIoArABIQUgAigCtAEhCSACKAK8ASEMIAItAMABIQsgAi0AwQEhECACKALEASEtIAIpA8gBITIgLiEGIAIoArgBCyEEIAIgAi8BYDsBGCAQISQgMiEvIC0hASAGIS4gBSElIAkhJiAEISkgDCEnIAshKAsgAiACLwEYOwFgIA+tIAatQiCGhCExIC8hMCABIRwgBSEgIAkhHyAEIR4gDCEdIAshESAKISsgDSEsIBALIRQgF0EBayEXIANBOGohAyACIAIvAWA7AbABIBogGEE4bGoiDiAUOgAhIA4gEToAICAOIB02AhwgDiAeNgIYIA4gHzYCFCAOICA2AhAgDiAxNwIIIA4gCDYCBCAOIBs2AgAgDiAKNgI0IA4gDTYCMCAOIC83AiggDiABNgIkIA4gAi8BsAE7ACIgGEEBaiEYDAALAAvMGQIOfwJ+IwBBsAJrIgIkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABKAIAQQFrDhIBAgMEBQYHCAkKCwwNDg8QERIACyACQSBqIAFBBGoQvB8gAEEANgIAIABBFGogAkEwaikCADcCACAAQQxqIAJBKGopAgA3AgAgACACKQIgNwIEDBILIABBATYCACAAIAEpAgQ3AgQMEQsgAEECNgIAIAAgASkCBDcCBAwQCyABKQIMIRAgAUEEahDYHCEDIAFBCGoQphkhASAAIBA3AgwgACABNgIIIAAgAzYCBCAAQQM2AgAMDwsgASkCBCEQIAAgAUEMahDeJDYCDCAAIBA3AgQgAEEENgIADA4LIAEpAwghECACQSBqIAFBEGoQtRsgAUEoahCmGSEBIAAgEDcDCCAAIAE2AiggAEEFNgIAIAAgAikDIDcDECAAQRhqIAJBKGopAwA3AwAgAEEgaiACQTBqKQMANwMADA0LIAEpAwghECACQShqIgMgAUEQahChICAAIBA3AwggAEEGNgIAIABBEGogAykDADcDACAAQRhqIAJBMGopAwA3AwAgAEEgaiACQThqKQMANwMADAwLIAEpAwghECACQShqIgMgAUEQahChICAAIBA3AwggAEEHNgIAIABBEGogAykDADcDACAAQRhqIAJBMGopAwA3AwAgAEEgaiACQThqKQMANwMADAsLIAEoAhAhAyABKAIMIQQgAUEEahDYHCEGIAFBCGoQphkhBSAAIAEoAhQEfyABQRRqEKYZBUEACzYCFCAAIAM2AhAgACAENgIMIAAgBTYCCCAAIAY2AgQgAEEINgIADAoLIAEoAhghByABKAIUIQkgAUEQahDYHCEKIAEoAgghCyACQQhqIAEoAgwiBEEEQRgQ5xQgAigCCCIGIARB/////wFxIgEgASAGSxshA0EAIQEgAigCDCEFA0AgAwRAIAEgC2oiCEEMaikCACEQIAhBFGoQ3iQhDCACQSBqIAgQiwwgAiAQNwIsIAIgDDYCNCACQShqKQIAIRAgAikCICERIAEgBWoiCEEQaiACQTBqKQIANwIAIAhBCGogEDcCACAIIBE3AgAgA0EBayEDIAFBGGohAQwBCwsgACAHNgIYIAAgCTYCFCAAIAo2AhAgACAENgIMIAAgBTYCCCAAIAY2AgQgAEEJNgIADAkLIAEpAwghECABQQRqENgcIQEgACAQNwMIIAAgATYCBCAAQQo2AgAMCAtBCCEDQQhBgAEQlSgiBEUNCCABKAIEIgEoAnwhBiABKAJ4IQUgAkGQAmogAUHIAGoQvB8gASgCACIIQQhHBEAgASgCRCEDIAEoAkAhBwJAIAhBB0YEQCACQQc2AqABDAELIAJBoAFqIAEQ2wQLIAJByABqIAFBKGoQvB8gAiADNgJkIAIgBzYCYCACQSBqIgcgAkGgAWoiCEEoEPYGGiACKAIgIQMgCCAHQQRyQcQAEPYGGgsgAkGAAWogAUHgAGoQnyAgAkHwAGogAkGYAmopAgA3AwAgAkH4AGogAkGgAmopAgA3AwAgAiAGNgKcASACIAU2ApgBIAIgAzYCICACIAIpApACNwNoIAJBIGoiAUEEciACQaABakHEABD2BhogBCABQYABEPYGIQEgAEELNgIAIAAgATYCBAwHCyABKQIMIRAgAUEEahDYHCEDIAFBCGoQphkhASAAIBA3AgwgACABNgIIIAAgAzYCBCAAQQw2AgAMBgsgASkCDCEQIAFBBGoQ2BwhAyABQQhqEKYZIQEgACAQNwIMIAAgATYCCCAAIAM2AgQgAEENNgIADAULQQIhAyABKAIUIQYgASgCECEFAkAgASgCBCIIQQJGDQAgAUEIaiEEQQEhAyAIQQFxRQRAQQAhAyAEENwMIQQMAQsgBBDYHCEECyABQRhqEN4kIQggAUEcahDeJCEHIAFBDGoQphkhASAAIAc2AhwgACAINgIYIAAgBjYCFCAAIAU2AhAgACABNgIMIAAgBDYCCCAAIAM2AgQgAEEONgIADAQLIAEpAhQhECACQRBqIAFBBGoQ/w8gAikDECERIAFBDGoQ2BwhAyABQRBqEKYZIQEgACAQNwIUIAAgATYCECAAIAM2AgwgACARNwIEIABBDzYCAAwDCyABKQIUIRAgAS0AHCEDIAJBGGogAUEEahD/DyACKQMYIREgAUEMahDYHCEEIAFBEGoQphkhASAAIAM6ABwgACAQNwIUIAAgATYCECAAIAQ2AgwgACARNwIEIABBEDYCAAwCCwJAAkACQAJAAkACQAJAAkACQCABKAIIIghBAWsOBwECAwQFBgcACyACQegBaiABQRBqELUbIAEtACwhBhDdIiEEIAEoAigiASgCLCEHIAEoAighCSABKAIkIQogAkGQAmogARDFCyACQaABaiABQQxqENMBIAFBMGoQ3iQhCyABLQA8IQwgAUE0ahCVDyENAkAgASgCOCIFRQRADAELENQiIQMgBSgCDCEOIAUoAhAhDyACQSBqIAUQoQ0gA0EQaiAPNgIAIAMgAikCIDcCACACIA42AiwgA0EIaiACQShqKQIANwIACyACQThqIAFBGGoQ/AogAkEoaiACQZgCaigCADYCACACQTRqIAJBqAFqKAIANgIAIAIgBzYCTCACIAk2AkggAiAKNgJEIAIgDDoAXCACIAs2AlAgAiADNgJYIAIgDTYCVCACIAIpApACNwMgIAIgAikCoAE3AiwgBCACQSBqQcAAEPYGGgwHCyACQegBaiABQRBqELUbIAEtACwhBhDYIiEEIAJBhAJqIAEoAigiARCKDCACQZACaiABQQxqEMULIAEoAjghBSABKAI0IQcgASgCMCEJIAJBoAFqIAFBGGoQnyAgAS0ARSEKIAEtAEQhCyABQTxqEJUPIQwCQCABKAJAIgFFBEAMAQsQ2SIhAyABKQIEIRAgARDZGSEBIAMgEDcCBCADIAE2AgALIAJBKGogAkGMAmooAgA2AgAgAkE0aiACQZgCaigCADYCACACQUBrIAJBqAFqKQIANwMAIAJByABqIAJBsAFqKQIANwMAIAIgAikChAI3AyAgAiACKQKQAjcCLCACIAIpAqABNwM4IAQgAkEgakEwEPYGIgEgCjoARSABIAs6AEQgASADNgJAIAEgDDYCPCABIAU2AjggASAHNgI0IAEgCTYCMAwGCyABQQxqENwMIQMMBQsgAUEMahCCDyEDDAQLEN4iIQMgASgCDCIBKQMAIRAgAkEoaiABQQhqELUbIAEtAEQhBCABQSBqEJUPIQYgAkHYAGogAUE4ahD8CiABKAIwIQUgASgCNCEHIAJBoAFqIAFBJGoQkgMgAkHUAGogBzYCACACIAU2AqwBIAJBzABqIAJBqAFqKQIANwIAIAIgBDoAZCACIBA3AyAgAiAGNgJAIAIgAikCoAE3AkQgAyACQSBqQcgAEPYGGgwDCxDXIiEDIAEoAgwiASkDACEQIAEtACghBCACQShqIAFBCGoQtRsgAUEgahCVDyEGIAFBJGoQ2RkhASACIAQ6AEggAiAQNwMgIAIgATYCRCACIAY2AkAgAyACQSBqQTAQ9gYaDAILENciIQMgASgCDCIBKQMYIRAgAS8BLCEEIAJBIGoiBSABELUbIAJBQGsgAUEgahCkBiACIAQ7AUwgAiAQNwM4IAMgBUEwEPYGGgwBCxDVIiEDIAEoAgwiAS0AUSEEIAEtAFAhBiABKAJMIQUgASgCSCEHIAICfiABKAIARQRAIAJBmAJqIAFBCGoQtRtCAAwBCyABKAIUIQkgASgCECEKIAEpAwgQ2hohESACIAEpAxgiEFAEfkIABSAQENoaCzcDqAIgAiAJNgKkAiACIAo2AqACIAIgETcDmAJCAQs3A5ACAkAgAS0ARUEDRgRAIAJBAzoAxQEMAQsgAkGgAWogAUEgahD9CgsgAkE4aiACQagCaikDADcDACACQTBqIAJBoAJqKQMANwMAIAJBKGogAkGYAmopAwA3AwAgAiACKQOQAjcDICACQUBrIAJBoAFqQSgQ9gYaIAMgAkEgakHIABD2BiIBIAQ6AFEgASAGOgBQIAEgBTYCTCABIAc2AkgLIAAgAzYCDCAAIAg2AgggACACKQPoATcDECAAIAY6ACwgACAENgIoIAAgAi8AIDsALSAAQRE2AgAgAEEYaiACQfABaikDADcDACAAQSBqIAJB+AFqKQMANwMAIABBL2ogAkEiai0AADoAAAwBCyABKQMIIRAgAUEEahDYHCEBIAAgEDcDCCAAIAE2AgQgAEESNgIACyACQbACaiQADwsAC44bAg1/An4jAEHAAmsiByQAIAFBKGohCiACQQFxRQRAIAoQvyAhAwsCQAJAAkAgChDjDSIIRQRAIAEoAtgCIQEgB0EAOgCIAiABIAEgB0GIAmoQ6xQhASAAQQM6ABQgACABNgIADAELAkACQAJAIAgoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYNAUG54+AAQShBzO/fABDaFwALIAEoAighCCABQSU2AiggASABKQNANwN4IAdBlAJqIgwgAUE0aikCADcCACAHQZwCaiINIAFBPGooAgA2AgAgByABKQIsNwKMAiAHIAg2AogCIAFBLGohCSAHQYgCaiIOEL8KAkAgChDjDSIIRQ0AIAgoAgBBFEcNACAILQAEQQ1HDQAgASgCKCEIIAFBJTYCKCABIAEpA0A3A3ggDCAJQQhqKQIANwIAIA0gCUEQaigCADYCACAHIAkpAgA3AowCIAcgCDYCiAIgDhC/CkEBIQsLIAFBggNqIQggBQ0BIAdBoQJqIAhBFWopAAA3AAAgB0GcAmogCEEQaikBADcCACAHQZQCaiAIQQhqKQEANwIAIAdBADoArgEgB0EAOgC1ASAHIAEtAJ4DOgC4ASAHIAEpAYIDNwCcASAHIAEpAYoDNwCkASAHIAEvAZIDOwCsASAHIAEoAJUDNgCvASAHIAEvAJkDOwCzASAHIAEvAZwDOwC2ASAHIAgpAQA3AowCIAFBgAFqIAdBnAFqEMAIIAcgATYCiAIgB0HQAGogASAGQQAQnQQgBygCUCEGIActAGQiEEEDRg0CDAQLIAEoAiwhASAAQQM6ABQgACABNgIADAILIAdBoQJqIAhBFWopAAA3AAAgB0GcAmogCEEQaikBADcCACAHQZQCaiAIQQhqKQEANwIAIAdBADoArgEgB0EAOgC1ASAHIAs6AKQBIAcgAjoAowEgByABLQCIAzoAogEgByABLQCTAzoArQEgByABLQCeAzoAuAEgByABKAGCAzYAnAEgByABLwGGAzsAoAEgByABKQCLAzcApQEgByABKACVAzYArwEgByABLwCZAzsAswEgByABLwGcAzsAtgEgByAIKQEANwKMAiABQYABaiAHQZwBahDACCAHIAE2AogCIAdB0ABqIAEgBkEAEJ0EIAcoAlAhBiAHLQBkIhBBA0cEQAwDCyAAQQM6ABQgACAGNgIAIAdBiAJqEIomDAELIABBAzoAFCAAIAY2AgAgB0GIAmoQiiYLIAQQ1yYMAQsgB0HgAWogB0HgAGooAgA2AgAgB0GAAWogB0HnAGotAAA6AAAgByAHKQNYNwPYASAHIAcvAGU7AX4gBygCVCERIAdBiAJqEIomIBBBAkcEQCAHQcgAaiAHQeABaigCADYCACAHQT5qIAdBgAFqLQAAOgAAIAcgBykD2AE3A0AgByAHLwF+OwE8CyAHQekAaiABQZcDaiIMKQAANwAAIAdB5ABqIAFBkgNqIg0pAQA3AgAgB0HcAGogAUGKA2oiEikBACIUNwIAQQAhCCAHQQA6AJgCIAdBADoAmgIgB0EAOgChAiAHIAEtAJMDOgCZAiAHIAEtAJ4DOgCkAiAHIAEpAYIDIhU3AIgCIAcgFDcAkAIgByABKACVAzYAmwIgByABLwCZAzsAnwIgByABLwGcAzsAogIgByAVNwJUIAFBgAFqIg4gB0GIAmoiDxDACCAHIAE2AlAgByACOgCFASAHIAs6AIYBIAcgCzoAfSAHIAI6AHwgByADNgJ4IAcgAS0AiAM6AIQBIAcgASgBggM2AH4gByABLwGGAzsAggEgByABKQCLAzcAhwEgByABKQCTAzcAjwEgByABKACbAzYAlwEgB0G1AWogDCkAADcAACAHQbABaiANKQEANwIAIAdBqAFqIBIpAQA3AgAgByABKQGCAzcCoAEgDiAHQf4AahDACCAHIAE2ApwBIAdByAFqIARBCGooAgA2AgAgByAEKQIANwPAASAHIAdB+ABqNgLUASAHIAdB/QBqNgLQASAHIAdB/ABqNgLMAQJ/AkAgAS0A+AJBAkYEQCAPIAEQxBUCQAJAAkACQCAHKAKIAiICQShqIgQQ4w0iA0UNACADKAIAQRRHDQAgAy0ABEEERg0BCyAEEOMNIgNFDQIgAygCAEEhRw0CIAJBlAFqIgMQ+RcgAxD5FyAHQShqIAJBAEEBEJQBIAcoAiwhCCAHKAIoDQEMAgsgB0EwaiACQQBBARCUASAHKAI0IQggBygCMEUNAQsgB0GIAmoQiiYgCCEEDAILIAdBiAJqEIomCwJAAkACQAJAAkAgChDjDSICBEAgAigCAEEJRg0BCyAHQZACaiAKEOYLIAdBEGogChCfFCAHQfjd3wA2AowCIAdBNDoAiAIgBygCECAHKAIUIAdBiAJqEOsUIQQgChDjDSICRQ0BIAIoAgBBJEcNASABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQggwMAQsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggB0GUAmoiAyAJQQhqKQIANwIAIAdBnAJqIgQgCUEQaigCADYCACAHIAkpAgA3AowCIAcgAjYCiAIgB0GIAmoiDBC/CiAHQQA6AOsBIAdBAToA7QEgByAHLQB8OgDfASAHIActAH06AOABIAcgAS0AiAM6AN4BIAcgAS0AlgM6AOwBIAcgAS0AngM6APQBIAcgASgBggM2ANgBIAcgAS8BhgM7ANwBIAcgASkAiwM3AOEBIAcgAS8AkwM7AOkBIAcgASgCmAM2AO4BIAcgAS8BnAM7APIBIAdBoQJqIAFBggNqIgJBFWopAAA3AAAgBCACQRBqKQEANwIAIAMgAkEIaikBADcCACAHIAIpAQA3AowCIA4gB0HYAWoQwAggByABNgKIAiAHQbACaiABELMBIAcoArQCIQIgBygCsAIiA0GAgICAeEcEQCAHIAcoArgCIgs2AoQCIAcgAjYCgAIgByADNgL8ASAMEIomAkACQCAKEOMNIgMEQCADKAIAQQpGDQELIAdBkAJqIAoQ5gsgB0EYaiAKEJ8UIAdB0N3fADYCjAIgB0E0OgCIAiAHKAIYIAcoAhwgB0GIAmoQ6xQhBCAKEOMNIgJFDQEgAigCAEEkRw0BIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0EIAEgASgCLBCCDAwBCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAHQZQCaiAJQQhqKQIANwIAIAdBnAJqIAlBEGooAgA2AgAgByAJKQIANwKMAiAHIAM2AogCIAdBiAJqEL8KQQAhBAJAIAEtAPgCQQJHDQAgChDjDSIDRQ0AIAMoAgBBE0cNACAHQSBqIAFBqNjfABDzASAHKAIkIQQgBygCIA0BCyAHIAQ2AqwCIAdBiAJqIAEgBygCzAEiDC0AACAHKALQASINLQAAIAIgCxCoGRCmAyAHKAKMAiEDIAcoAogCIg5BgYCAgHhHBEAgB0G4AmoiEiAHQZgCaiITKQIANwMAIAcgBykCkAI3A7ACIAEtAPgCQQJHIA5BgICAgHhHcg0GIAtBBnQhCQNAIAlFDQcgAigCAEEERgRAIAIoAhAhCyACKAIMIQ8gB0GpAToAiAIgASAPIAsgB0GIAmoQvBkLIAJBQGshAiAJQUBqIQkMAAsACyAHQawCahD1JyADIQQLIAdB/AFqEOEmDAELIAdBiAJqEIomIAIhBAsgCBC+KAwDC0G54+AAQShB+PDfABDaFwALQbnj4ABBKEGI8d8AENoXAAsgB0GcAmogB0HIAWooAgA2AgAgB0GQAmoiDyAHQYQCaigCADYCACAHIAcpA8ABNwKUAiAHIAcpAvwBNwOIAiABKAJ8IQkgBygC1AEoAgAhCyANLQAAIQ0gDC0AACEMQcgAQQQQjCAiAiADNgIcIAIgDjYCGCACIAw6AEUgAiANOgBEIAIgBDYCQCACIAg2AjwgAkEANgI4IAIgCyAJIAkgC0kbNgI0IAIgCyAJIAkgC0sbNgIwIAJBEGogEykDADcCACACQQhqIA8pAwA3AgAgAiAHKQOIAjcCACACIAcpA7ACNwIgIAJBKGogEikDADcCAEEBDAELIAdBwAFqENcmIAQhAkEACyEJIAdBnAFqEIomAkACQAJAAkACQCAJBEAgBUUNBCACKAIYQYCAgIB4Rw0EIAdBlAJqIAoQ5gsgB0EIaiAKEJ8UIAdBATYCkAIgB0GIreAANgKMAiAHQTA6AIgCIAcoAgggBygCDCAHQYgCahDrFCEDIAoQ4w0iBEUNAiAEKAIAQSRHDQIgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASABKAIsEIIMDAILIABBAzoAFCAAIAI2AgAMAgtBuePgAEEoQdzv3wAQ2hcACyAAQQM6ABQgACADNgIAIAIQxx0LIAatIBGtQiCGhCAQEKMjDAELIAAgETYCBCAAIAY2AgAgACAHKQNANwMIIAAgEDoAFCAAIAcvATw7ABUgACACNgIYIABBEGogB0HIAGooAgA2AgAgAEEXaiAHQT5qLQAAOgAACyAHQdAAahCKJgsgB0HAAmokAAugGwENfyMAQcACayIHJAAgAUEoaiEJIAJBAXFFBEAgCRClICEDCwJAAkACQCAJEMgNIgtFBEAgASgCgAIhASAHQQA6AIgCIAEgASAHQYgCahDrFCEBIABBAzoAFCAAIAE2AgAMAQsCQAJAAkAgCygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUG54+AAQShBzO/fABDaFwALIAEoAsgCIQsgAUElNgLIAiABIAEpA+ACNwOYAyAHQZQCaiIIIAFB1AJqKQIANwIAIAdBnAJqIg0gAUHcAmooAgA2AgAgByABKQLMAjcCjAIgByALNgKIAiABQcwCaiEKIAdBiAJqIg4QvgoCQCAJEMgNIgtFDQAgCygCAEEURw0AIAstAARBDUcNACABKALIAiELIAFBJTYCyAIgASABKQPgAjcDmAMgCCAKQQhqKQIANwIAIA0gCkEQaigCADYCACAHIAopAgA3AowCIAcgCzYCiAIgDhC+CkEBIQwLIAFBqgJqIQggBQ0BIAdBoQJqIAhBFWopAAA3AAAgB0GcAmogCEEQaikBADcCACAHQZQCaiAIQQhqKQEANwIAIAdBADoArgEgB0EAOgC1ASAHIAEtAMYCOgC4ASAHIAEpAaoCNwCcASAHIAEpAbICNwCkASAHIAEvAboCOwCsASAHIAEoAL0CNgCvASAHIAEvAMECOwCzASAHIAEvAcQCOwC2ASAHIAgpAQA3AowCIAkgB0GcAWoQyAggByABNgKIAiAHQdAAaiABIAZBABCbBCAHKAJQIQYgBy0AZCIQQQNGDQIMBAsgASgCzAIhASAAQQM6ABQgACABNgIADAILIAdBoQJqIAhBFWopAAA3AAAgB0GcAmogCEEQaikBADcCACAHQZQCaiAIQQhqKQEANwIAIAdBADoArgEgB0EAOgC1ASAHIAw6AKQBIAcgAjoAowEgByABLQCwAjoAogEgByABLQC7AjoArQEgByABLQDGAjoAuAEgByABKAGqAjYAnAEgByABLwGuAjsAoAEgByABKQCzAjcApQEgByABKAC9AjYArwEgByABLwDBAjsAswEgByABLwHEAjsAtgEgByAIKQEANwKMAiAJIAdBnAFqEMgIIAcgATYCiAIgB0HQAGogASAGQQAQmwQgBygCUCEGIActAGQiEEEDRwRADAMLIABBAzoAFCAAIAY2AgAgB0GIAmoQ7yQMAQsgAEEDOgAUIAAgBjYCACAHQYgCahDvJAsgBBDXJgwBCyAHQeABaiAHQeAAaigCADYCACAHQYABaiAHQecAai0AADoAACAHIAcpA1g3A9gBIAcgBy8AZTsBfiAHKAJUIREgB0GIAmoQ7yQgEEECRwRAIAdByABqIAdB4AFqKAIANgIAIAdBPmogB0GAAWotAAA6AAAgByAHKQPYATcDQCAHIAcvAX47ATwLIAdB6QBqIAhBFWoiDSkAADcAACAHQeQAaiAIQRBqIg4pAQA3AgAgB0HcAGogCEEIaiISKQEANwIAQQAhCyAHQQA6AJgCIAdBADoAmgIgB0EAOgChAiAHIAEtALsCOgCZAiAHIAEtAMYCOgCkAiAHIAEpAaoCNwCIAiAHIAEpAbICNwCQAiAHIAEoAL0CNgCbAiAHIAEvAMECOwCfAiAHIAEvAcQCOwCiAiAHIAgpAQA3AlQgCSAHQYgCaiIPEMgIIAcgATYCUCAHIAI6AIUBIAcgDDoAhgEgByAMOgB9IAcgAjoAfCAHIAM2AnggByABLQCwAjoAhAEgByABKAGqAjYAfiAHIAEvAa4COwCCASAHIAEpALMCNwCHASAHIAEpALsCNwCPASAHIAEoAMMCNgCXASAHQbUBaiANKQAANwAAIAdBsAFqIA4pAQA3AgAgB0GoAWogEikBADcCACAHIAgpAQA3AqABIAkgB0H+AGoQyAggByABNgKcASAHQcgBaiAEQQhqKAIANgIAIAcgBCkCADcDwAEgByAHQfgAajYC1AEgByAHQf0AajYC0AEgByAHQfwAajYCzAECfwJAIAEtAKACQQJGBEAgDyABELkVAkACQAJAAkAgBygCiAIiAkEoaiIEEMgNIgNFDQAgAygCAEEURw0AIAMtAARBBEYNAQsgBBDIDSIDRQ0CIAMoAgBBIUcNAiACQTxqIgMQ+RcgAxD5FyAHQShqIAJBAEEBEJMBIAcoAiwhCyAHKAIoDQEMAgsgB0EwaiACQQBBARCTASAHKAI0IQsgBygCMEUNAQsgB0GIAmoQ7yQgCyEEDAILIAdBiAJqEO8kCwJAAkACQAJAAkAgCRDIDSICBEAgAigCAEEJRg0BCyAHQZACaiAJEIAQIAdBEGogCRDqEyAHQfjd3wA2AowCIAdBNDoAiAIgBygCECAHKAIUIAdBiAJqEOsUIQQgCRDIDSICRQ0BIAIoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD7CwwBCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgB0GUAmoiAyAKQQhqKQIANwIAIAdBnAJqIgQgCkEQaigCADYCACAHIAopAgA3AowCIAcgAjYCiAIgB0GIAmoiDBC+CiAHQQA6AOsBIAdBAToA7QEgByAHLQB8OgDfASAHIActAH06AOABIAcgAS0AsAI6AN4BIAcgAS0AvgI6AOwBIAcgAS0AxgI6APQBIAcgASgBqgI2ANgBIAcgAS8BrgI7ANwBIAcgASkAswI3AOEBIAcgAS8AuwI7AOkBIAcgASgCwAI2AO4BIAcgAS8BxAI7APIBIAdBoQJqIAhBFWopAAA3AAAgBCAIQRBqKQEANwIAIAMgCEEIaikBADcCACAHIAgpAQA3AowCIAkgB0HYAWoQyAggByABNgKIAiAHQbACaiABELIBIAcoArQCIQMgBygCsAIiBEGAgICAeEcEQCAHIAcoArgCIgI2AoQCIAcgAzYCgAIgByAENgL8ASAMEO8kAkACQCAJEMgNIgQEQCAEKAIAQQpGDQELIAdBkAJqIAkQgBAgB0EYaiAJEOoTIAdB0N3fADYCjAIgB0E0OgCIAiAHKAIYIAcoAhwgB0GIAmoQ6xQhBCAJEMgNIgJFDQEgAigCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBCABIAEoAswCEPsLDAELIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAHQZQCaiAKQQhqKQIANwIAIAdBnAJqIApBEGooAgA2AgAgByAKKQIANwKMAiAHIAQ2AogCIAdBiAJqEL4KQQAhBAJAIAEtAKACQQJHDQAgCRDIDSIIRQ0AIAgoAgBBE0cNACAHQSBqIAFBqNjfABDxASAHKAIkIQQgBygCIA0BCyAHIAQ2AqwCIAdBiAJqIAEgBygCzAEiDS0AACAHKALQASIOLQAAIAMgAhCoGRCsAyAHKAKMAiEIIAcoAogCIgxBgYCAgHhHBEAgB0G4AmoiEiAHQZgCaiITKQIANwMAIAcgBykCkAI3A7ACIAxBgICAgHhHDQYgAS0AoAJBAkcNBiACQQZ0IQIDQCACRQ0HIAMoAgBBBEYEQCADKAIQIQogAygCDCEPIAdBqQE6AIgCIAEgDyAKIAdBiAJqEKkZCyADQUBrIQMgAkFAaiECDAALAAsgB0GsAmoQ4CYgCCEECyAHQfwBahDhJgwBCyAHQYgCahDvJCADIQQLIAsQvigMAwtBuePgAEEoQfjw3wAQ2hcAC0G54+AAQShBiPHfABDaFwALIAdBnAJqIAdByAFqKAIANgIAIAdBkAJqIg8gB0GEAmooAgA2AgAgByAHKQPAATcClAIgByAHKQL8ATcDiAIgASgCnAMhAiAHKALUASgCACEKIA4tAAAhDiANLQAAIQ1ByABBBBCMICIDIAg2AhwgAyAMNgIYIAMgDToARSADIA46AEQgAyAENgJAIAMgCzYCPCADQQA2AjggAyAKIAIgAiAKSRs2AjQgAyAKIAIgAiAKSxs2AjAgA0EQaiATKQMANwIAIANBCGogDykDADcCACADIAcpA4gCNwIAIAMgBykDsAI3AiAgA0EoaiASKQMANwIAQQEMAQsgB0HAAWoQ1yYgBCEDQQALIQIgB0GcAWoQ7yQCQAJAAkACQAJAIAIEQCAFRQ0EIAMoAhhBgICAgHhHDQQgB0GUAmogCRCAECAHQQhqIAkQ6hMgB0EBNgKQAiAHQYit4AA2AowCIAdBMDoAiAIgBygCCCAHKAIMIAdBiAJqEOsUIQIgCRDIDSIERQ0CIAQoAgBBJEcNAiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD7CwwCCyAAQQM6ABQgACADNgIADAILQbnj4ABBKEHc798AENoXAAsgAEEDOgAUIAAgAjYCACADELgdCyAGrSARrUIghoQgEBCjIwwBCyAAIBE2AgQgACAGNgIAIAAgBykDQDcDCCAAIBA6ABQgACAHLwE8OwAVIAAgAzYCGCAAQRBqIAdByABqKAIANgIAIABBF2ogB0E+ai0AADoAAAsgB0HQAGoQ7yQLIAdBwAJqJAALiBkCF38CfiMAQaACayIGJAAgASgClA0iFygCvAIoAhBBAXQhByADKAIEIRQCQAJAAkACQAJAAkACQAJ/AkAgAygCACIVQQFrQQJPBEACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAFIAdNBEAgAkHYAWohEiACQRhqIRYgAUGgDWohECABKAKsEiEXIAEoAqgSIRggASkDACEdIAEtAJwNIRQgASkDoA0hHiADLQAYIRUgAygCDCEMIAMoAgghDSADKAIUIQogAS0AvBJBAXEhGSADKAIQIg4hCQNAIAZB9AFqIhMgGCAXIA0gDCAJIAoQlRkgBigC9AFFDRMCQCAGKAL4ASIHIAtJDQAgBigC/AEgBiAVOgCMAiAGIAo2AogCIAYgDjYChAIgBiAMNgKAAiAGIA02AvwBIAZBATYC9AEgBkG4AWoiESATIA4gBxD1CSAZDQMgHkICUQ0aIAIoAsgBQQJGDQQgBkHYAWogECAWIBEgCBCpAiAGKALcASEIIAYoAtgBIhNBAkYEQCAIQQFxRQ0BDBMLAkAgE0EBRwRAIAkgCk8NFiAHQX9HDQFBzIXDABC8KQALIAYoAuABIQkgBiAVOgCMAiAGIAo2AogCIAYgDjYChAIgBiAMNgKAAiAGIA02AvwBIAYgCDYC+AEgBkECNgL0ASAGQdgBaiILIAZB9AFqIhMgCSAKEPUJIBRBAXENBgJAIB1CAlIEQCACKALIBEECRg0JIAZBkAJqIAEgEiALEOkCIAYoApACIgtBAkYNFSALDQEgEyAIIAkgBigCmAIQ1xIgBigC/AEhAiAGKAL4ASEHIAYoAvQBIQpBAQwYCwwbCyAHQX9GDQggBigClAIhCwsgB0EBaiEJIQgMAQsLIBRBAXENGSAdQgJRDQYgAigCyARBAkYNGiAGQfQBaiIIIAEgEiADELEFIAZB2AFqIAgQ5RcgBigC2AFBAkcEQCAGQdgAaiAGQeABaikCADcDACAGIAYpAtgBNwNQDBULIAZB0ABqIAEgAiADEKMEDBQLIAJB2AFqIQsgAkEYaiEYIAFBoA1qIRkgASgCrBIhEyABKAKoEiEaIAEpAwAhHSABLQCcDSEWIAEpA6ANIR4gAy0AGCESIAMoAgwhDCADKAIIIQ0gAygCFCEKIAEtALwSQQFxIRsgAygCECIOIQkDQCAGQfQBaiIRIBogEyANIAwgCSAKEJUZIAYoAvQBRQ0VAkAgBigC+AEiByAQSQ0AIAYoAvwBIAYgEjoAjAIgBiAKNgKIAiAGIA42AoQCIAYgDDYCgAIgBiANNgL8ASAGQQE2AvQBIAZBuAFqIhwgESAOIAcQ9QkgGw0IIB5CAlENGSACKALIAUECRg0JIAZB2AFqIBkgGCAcIAgQqQIgBigC3AEhCCAGKALYASIRQQJGBEAgCEEBcUUNAQwRCwJAIBFBAUcEQCAJIApPDRggB0F/Rw0BQcyFwwAQvCkACyAGKALgASEJIAYgEjoAjAIgBiAKNgKIAiAGIA42AoQCIAYgDDYCgAIgBiANNgL8ASAGIAg2AvgBIAZBAjYC9AEgBkHYAWoiECAGQfQBaiIRIAkgChD1CSAWQQFxDQsCQCAdQgJSBEAgAigCyARBAkYNDiAGQdAAaiABIAsgEBDpAiAGKAJQIhBBAkYNEyAQDQEgESAIIAkgBigCWBDXEiAGKAL8ASEDIAYoAvgBIQggBigC9AEhDyAGIAo2AogCIAYgDjYChAIgBiAMNgKAAiAGIA02AvwBIAYgEjoAjAIgBiAUNgL4ASAGIBU2AvQBIAZB5ABqIgcgESAPIAgQ9QkgBiADNgJoIAZBAjYCZCAGQcgAaiABIAIgByAEIAUQkwYgBigCTCEJIAYoAkghBwwaCwwaCyAHQX9GDQ0gBigCVCEQCyAHQQFqIQkhCAwBCwsgBSAXKAK8AigCEEEBdE0EQCAWQQFxDRkgHUICUQ0MIAIoAsgEQQJGDRogBkH0AWoiCCABIAsgAxCxBSAGQdgBaiAIEOUXIAYoAtgBQQJHBEAgBkHAAWogBkHgAWopAgA3AwAgBiAGKQLYATcDuAEMDwsgBkG4AWogASACIAMQowQMDgsCQAJAAkACQCABKALUCkEDRwRAIAEoAvgKIggoAqgCIAgoAqwCRg0BCyAWQQFxDRwgHUICUQ0BIAIoAsgEQQJGDR0gBkH0AWoiCCABIAsgAxCxBSAGQdgBaiAIEOUXIAYoAtgBIgdBAWsOAwMCARkLIAZBOGogASACIAMgBCAFEJMGIAYoAjwhCSAGKAI4IQcMGAsgBkEgaiABIAIgAyAEIAUQkwYgBigCJCEJIAYoAiAhBwwXCyAGQShqIAEgAiADIAQgBRCTBiAGKAIsIQkgBigCKCEHDBYLIAYoAtwBIQMgBigC4AEhCCAGKALkASEPIAYgCjYCiAIgBiAONgKEAiAGIAw2AoACIAYgDTYC/AEgBiASOgCMAiAGIBQ2AvgBIAYgFTYC9AEgBkGcAWoiByAGQfQBaiADIAgQ9QkgBiAPNgKgASAGQQI2ApwBIAZBMGogASACIAcgBCAFEJMGQQEhByAGKAIwQQFxRQ0MIAYoAjQhCQwVC0G54+AAQShBvInDABDaFwALQayJwwAQvCkAC0G54+AAQShB7IjDABDaFwALQYyIwwAQvCkAC0HchcMAELwpAAsgBkHQAGogASACIAMQowQMDQtBuePgAEEoQbyJwwAQ2hcAC0GsicMAELwpAAtBuePgAEEoQeyIwwAQ2hcAC0GMiMMAELwpAAtB3IXDABC8KQALIAZBuAFqIAEgAiADEKMEDAELQcSCwwBBE0HYgsMAEKESAAsgBigCuAFFDQZBASEHIAYoAsQBIglBAXQiAUEBciECIAYpArwBIR0gASAFSQRAIAQgAUECdGogHadBAWo2AgALIAIgBU8NByAEIAJBAnRqIB1CIIinQQFqNgIADAcLIAZBQGsgASACIAMgBCAFEJMGIAYoAkQhCSAGKAJAIQcMBgsgBkHQAGogASACIAMQowQMAwsCQAJAAkAgBSAHTQRAIAEtAJwNQQFGDQsgASkDAEICUQ0BIAIoAsgEQQJGDQwgBkH0AWoiCCABIAJB2AFqIAMQsQUgBkHYAWogCBDlFyAGKALYAUECRwRAIAZBwAFqIAZB4AFqKQIANwMAIAYgBikC2AE3A7gBDAQLIAZBuAFqIAEgAiADEKMEDAMLAkAgASgC1ApBA0YEQCABLQCcDUUNAQwMCyAGQRhqIAEgAiADIAQgBRCTBiAGKAIcIQkgBigCGCEHDAgLAkACQAJAIAEpAwBCAlENACACKALIBEECRg0OIAZB9AFqIgggASACQdgBaiADELEFIAZB2AFqIAgQ5RcgBigC2AEiB0EBaw4DAgEACgsgBiABIAIgAyAEIAUQkwYgBigCBCEJIAYoAgAhBwwJCyAGQQhqIAEgAiADIAQgBRCTBiAGKAIMIQkgBigCCCEHDAgLIAYoAtwBIQggBigC4AEhDyAGKALkASEHIAYgFDYC+AEgBiAVNgL0ASAGIAMpAhA3AoQCIAYgAykCCDcC/AEgBiADLQAYOgCMAiAGQYABaiIDIAZB9AFqIAggDxD1CSAGIAc2AoQBIAZBAjYCgAEgBkEQaiABIAIgAyAEIAUQkwZBASEHIAYoAhBBAXFFDQEgBigCFCEJDAcLIAZBuAFqIAEgAiADEKMEDAELQcSCwwBBE0HYgsMAEKESAAsgBigCuAFFDQNBASEHIAYoAsQBIglBAXQiAUEBciECIAYpArwBIR0gASAFSQRAIAQgAUECdGogHadBAWo2AgALIAIgBU8NBCAEIAJBAnRqIB1CIIinQQFqNgIADAQLQQALIQEgBiACNgJcIAYgBzYCWCAGIAo2AlQgBiABNgJQCyAGKAJQRQ0AQQEhByAGKAJcIglBAXQiAUEBciECIAYpAlQhHSABIAVJBEAgBCABQQJ0aiAdp0EBajYCAAsgAiAFTw0BIAQgAkECdGogHUIgiKdBAWo2AgAMAQtBACEHCyAAIAk2AgQgACAHNgIAIAZBoAJqJAAPCyAGQQE2AvgBIAZBtIbDADYC9AEgBkIANwKAAiAGIAZBnAJqNgL8ASAGQfQBakG8hsMAEKEdAAsgBkEBNgL4ASAGQbSGwwA2AvQBIAZCADcCgAIgBiAGQZwCajYC/AEgBkH0AWpBzIbDABChHQALQbnj4ABBKEHMiMMAENoXAAtB7IfDABC8KQAL3hoBDH8jAEGwCGsiAiQAIAJByABqIAFBKGoiBxCfFAJAAkACQAJAAkACQCABLQD4AkECRw0AIAIoAkwhDSACKAJIIQgCQAJAIAcQ4w0iA0UNACADKAIAQRRHDQAgAy0ABEEERg0BCyAHEOMNIgNFDQEgAygCAEEhRw0BCwJAIAcQxhIiAwRAIAMoAgBBAkYNAQsgBxDGEiIDRQ0BIAMoAgBBH0cNAQtBACEDIAJBADoAYyACIAEpAYIDNwBTIAIgASkAkwM3AGQgAiABKACbAzYAbCACIAFBigNqIgQpAQA3AFsgAkGNAWogAUGXA2opAAA3AAAgAkGIAWogAUGSA2opAQA3AgAgAkGAAWogBCkBADcCACACIAEpAYIDNwJ4IAFBgAFqIgkgAkHTAGoQwAggAiABNgJ0AkAgAS0A+AJBAkcNACABLQCCAyEGIAJBmAFqIAEQzwIgAkEBOgDABCACIAEpAIMDNwDBBCACIAEpAIsDNwDJBCACIAEpAJMDNwDRBCACIAEoAJsDNgDZBCACQZgCaiACQcAEahDACAJAIAJBwAFqIgsQ4w0iA0UNACADKAIAQSFHDQAgAkGsAmoQuxdB/wFxQQpHDQAgAigCsAMiAyEEIAJBsANqIgohBSADQYEBTwRAIAIoArACIQQgAkGwAmohBQsgBARAIAUgBEEBazYCACACKAKwAyEDCyADQYEBTwRAIAJBsAJqIQogAigCsAIhAwsgA0UNACAKIANBAWs2AgALQQAhAyACQUBrIAJBmAFqQQBBARCUASACKAJEIQUCQCACKAJABEAgBSEEDAELIAJBOGogAkGYAWoiChBzIAIoAjwhBCACKAI4RQRAIAIgBDYCkAgCQAJAIAQoAgBBHkcEQCACQfQEaiALEOYLIAJBATYC8AQgAkGFreAANgLsBCACQTA6AOgEIAJBkAJqIAJB2AFqIAIoAsABQSVGIgQbKAIAIgYgAkGUAmogAkHcAWogBBsoAgAiBCAEIAZLGyAGIAQgBCAGSRsgAkHoBGoQ6xQhBCALEOMNIgZFDQIgBigCAEEkRw0CIAIgAikD2AE3A5ACIAIoAsABIAJBJTYCwAFBJEcNASAKIAIoAsQBEIIMDAILIAQgBSgCDCIKIAQoAhgiAyADIApJGzYCGCAEIAogAyADIApLGzYCFCAEKAIgEL4oIAQgBTYCICACQegEaiIDIAJBmAFqQagDEPYGGiABEPUPIAEgA0GoAxD2BiEDIAIgBjoAkAggAiADKQCDAzcAkQggAiADKQCLAzcAmQggAiADKQCTAzcAoQggAiADKACbAzYAqQggCSACQZAIahDACCAEIQMMBAtBuePgAEEoQfSI4AAQ2hcACyACQZAIahCYKQsgBRD0KgsgAiAENgLkBCACQQE2AuAEIAJB4ARqEMAgIAJBmAFqEPUPCyACIAM2AnAgAkH0AGoQiiYgAwRAIAEtAPgCQQJHDQIgAS0A/QJBAXFFDQIgAkG6AToA6AQgASAIIA0gAkHoBGoQvBkMAgsgAkHwAGoQ9CcLIAEtAIoDQQFxRQ0BIAcQ4w0iA0UNASADKAIAQQJHDQEgAy0ACEECRw0BIAMtAAlBHUcNASAHEL8gIQggBxDjDSIDRQRAIAEoAtgCIQEgAkEAOgDoBCABIAEgAkHoBGoQ6xQhAwwECyADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGDQNBuePgAEEoQbiE4AAQ2hcACyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCACQfQEaiABQTRqKQIANwIAIAJB/ARqIAFBPGooAgA2AgAgAiABKQIsNwLsBCACIAM2AugEIAJB6ARqEL8KAkACQAJAAkACQCABLQCXA0EBcQRAIAEtAJUDQQFxRQ0BCyAHEOMNIgNFDQIgAygCAEE+cUEORg0CIAcQmyENAgJAIAcQ4w0iA0UNACADKAIAQRRHDQAgAy0ABEENRg0FCwJAIAcQ4w0iA0UNACADKAIAQRRHDQAgAy0ABEEORg0FCyAHEOMNIgNFDQEgAygCAEEVRw0BIAMtAARBBEcNAQwECyABKAJ8IQUgASgCeCACQdAAOgDoBCAFIAJB6ARqEOsUIQNBASEJIAcQ4w0iBUUNCCAFKAIAQSRHDQggASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDAgLIAcQ4w0iA0UEQCABKALYAiEDIAJBADoA6AQgAiADIAMgAkHoBGoQ6xQ2ApwBIAJBAToAmAEgAkGYAWoQ+CMMAwsgAxCCBhCaDA0CC0EAIQkgAkEAOgD0BCACQQA2AvAEIAIgCCABKAJ8IgEgASAISRs2AuwEIAIgCCABIAEgCEsbNgLoBCACQegEahCaGCEDDAYLQbnj4ABBKEHIhOAAENoXAAtBACEFAkAgBxDjDSIDRQ0AIAMoAgBBFEcNACADLQAEQQ1HDQAgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkH0BGogAUEsaiIFQQhqKQIANwIAIAJB/ARqIAVBEGooAgA2AgAgAiAFKQIANwLsBCACIAM2AugEIAJB6ARqEL8KQQEhBQsgASgCfCEGIAJBMGogARCnBkEBIQkgAigCNCEEIAIoAjBBAXFFBEAgAiAFOgD0BCACIAQ2AvAEIAIgCCABKAJ8IgEgASAISRs2AuwEIAIgCCABIAEgCEsbNgLoBCACQegEahCaGCEDDAELIAQoAgQhBSAEKAIAQQRBBBCMICIBIAQ2AgAgAiABNgL0BCACQSM2AvwEIAJB2ITgADYC+AQgAiAIIAYgBiAISRs2AvAEIAIgCCAGIAYgCEsbNgLsBCACQbgBOgDoBCAFIAJB6ARqEOsUIQMMBAtBACEJDAMLIAcQ4w0iBkUEQCABKALYAiEBIAJBADoA6AQgASABIAJB6ARqEOsUIQMMAgtBACEFAkACQCAGKAIAIgNBAkcEQCADQQlGDQEgA0EkRw0CIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRg0DQbnj4ABBKEHkiOAAENoXAAsCQEEEIAYtAAhBAmtB/wFxIgMgA0EETxsOBQACAgIBAgsgBi0ACUEdRw0BC0EBIQUgBxC/ICEECyABIAQ2AgQgASAFNgIAIAcQvyAhDSAHEL8gIQsgAkEoaiABEP8FIAIoAiwhBSACKAIoBEAgBSEDDAILIAIgBTYCwAQCQAJAAkACQAJAAkAgBSgCAEEeRg0AIAcQ4w0iA0UNACADKAIAQRdHDQAgASgCKCEGIAFBJTYCKCABIAEpA0A3A3ggAkH0BGoiBCABQTRqKQIANwIAIAJB/ARqIgMgAUE8aigCADYCACACIAEpAiw3AuwEIAIgBjYC6AQgAkHoBGoiBhC/CiACQQE6AHogAkGBAjsAgwEgAiABKAGCAzYAdCACIAEvAYYDOwB4IAIgASkAiQM3AHsgAiABKQCTAzcAhQEgAiABKACbAzYAjQEgAkGBBWogAUGCA2oiDEEVaikAADcAACADIAxBEGopAQA3AgAgBCAMQQhqKQEANwIAIAIgDCkBADcC7AQgAUGAAWoiCCACQfQAahDACCACIAE2AugEIAJBIGogARCnBiACKAIkIQMgAigCIA0BIAIgAzYCkAggBhCKJgJAIAcQ4w0iBARAIAQoAgBBE0YNAQsgAkHwBGogBxDmCyACQQhqIAcQnxQgAkGo2N8ANgLsBCACQTQ6AOgEIAIoAgggAigCDCACQegEahDrFCEDIAcQ4w0iBUUNBSAFKAIAQSRHDQUgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQQgASABKAIsEIIMDAULIAEoAighCSABQSU2AiggASABKQNANwN4IAJB9ARqIgYgAUEsaiIKQQhqKQIANwIAIAJB/ARqIgQgCkEQaigCADYCACACIAopAgA3AuwEIAIgCTYC6AQgAkHoBGoiBxC/CiACQQE7AKcBIAIgAS0AkAM6AKYBIAIgASkBggM3AJgBIAIgASgBigM2AKABIAIgAS8BjgM7AKQBIAIgASkAkwM3AKkBIAIgASgAmwM2ALEBIAJBgQVqIAxBFWopAAA3AAAgBCAMQRBqKQEANwIAIAYgDEEIaikBADcCACACIAwpAQA3AuwEIAggAkGYAWoQwAggAiABNgLoBCACQRhqIAEQpwYgAigCHCEEIAIoAhggBxCKJgRAIAQhAwwFCyACQRBqIAQQjAMgAigCFCEGIAIgBDYC8AQgAiADNgLsBCACIAU2AugEIAIgCyAGIAYgC0kbNgL4BCACIAsgBiAGIAtLGzYC9AQgAkHoBGoQ7xQhBQsgBSgCACIDQR5LQQEgA3RBgICcggRxRXINAUEAIQkgBSEDDAcLIAJB6ARqEIomDAMLIAIgASANIAUQ5gIgAigCBCEDIAIoAgAhCQwFC0G54+AAQShBgIHgABDaFwALIAJBkAhqEJgpCyACQcAEahCYKQwBCyABKAIsIQMLQQEhCQsgACADNgIEIAAgCTYCACACQbAIaiQAC/UZAgZ/An4jAEGgAmsiBCQAIAQgAjYCJAJAIAEtAPgCQQJHBEAgAEEINgIAIAMQ1yYMAQsgAUGCA2ohBQJAIAEtAJADQQFxRQ0AIAEtAPsCQQFxDQAgASgCfCEGIARB/AA6APABIAEgAiAGIAIgBkkbIAIgBiACIAZLGyAEQfABahC8GSAEKAIkIQILIAQgAjYCKCAEQQE6AD0gBCABKQGCAzcALyAEIAEoAYoDNgA3IAQgAS8BjgM7ADsgBCABKQCRAzcAPiAEIAEoAJkDNgBGIAQgAS8AnQM7AEogBEHlAGogBUEVaikAADcAACAEQeAAaiAFQRBqKQEANwIAIARB2ABqIAVBCGopAQA3AgAgBCAFKQEANwJQIAFBgAFqIARBL2oQwAggBCABNgJMIARB+ABqIANBCGooAgA2AgAgBCADKQIANwNwIAQgBEEkajYCgAEgBCAEQShqNgJ8AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQShqIgIQ4w0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBC0YNAQsCQCACEOMNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQRlGDQILAkAgAhDjDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUETRw0AIAIQxhIiBUUNACAFKAIAQQJHDQAgBS0ACA0AIAUtAAlBDUYNAwsCQCACEOMNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQRNGDQQLAkAgAhDjDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUERRg0ECwJAIAIQ4w0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBEkYNBAsCQCACEOMNIgVFDQAgBSgCAEECRw0AIAUtAAgNACAFLQAJQQZGDQULIAIQ4w0iBQRAIAUoAgBBAkYNBgsgAEEINgIAIARB8ABqENcmDA8LIARB+AFqIgUgA0EIaigCADYCACAEIAMpAgA3A/ABIARBiAFqIAEgBEHwAWoiBhCgKSAEKAKIASIHQQhHBEBBASECIARBkAFqIQMgBCgCqAEhAQJAIAdBAUYEQCAFIAFBCGooAgA2AgAgBEGEAmogAUEUaigCADYCACAEQZACaiABQSBqKQIANwMAIARBmAJqIAFBKGopAgA3AwAgBCABKQIANwPwASAEIAEpAgw3AvwBIAQgASkCGDcDiAIgASkCNCEKIAEpAjwhCyABLwFEIQggBCgCKCEJQcgAQQQQjCAiBSAGQTAQ9gYiBiAIOwFEIAYgCzcCPCAGIAo3AjQgBiAJNgIwIARB4AFqIANBCGopAwA3AwAgBEHoAWogA0EQaikDADcDACAEIAMpAwA3A9gBIAEQ8yoMAQsgBC0ArAEhAiAEQeABaiADQQhqKQMANwMAIARB6AFqIANBEGopAwA3AwAgBEHWAWogBEGvAWotAAA6AAAgBCAELwCtATsB1AEgBCADKQMANwPYASAEKAKMASEDIAEhBQsgACADNgIEIAAgBzYCACAAIAQpA9gBNwMIIAAgAjoAJCAAIAU2AiAgACAELwHUATsAJSAAQRBqIARB4AFqKQMANwMAIABBGGogBEHoAWopAwA3AwAgAEEnaiAEQdYBai0AADoAAAwPCyAEKAKMASEBIABBCTYCACAAIAE2AgQMDgsgBEHwAWogASAEKAIkIgEgASADQQAQhAQgBCgC8AEiBkEIRwRAIARB+AFqIQMgBCgCkAIhAQJAIAZFBEAgBEGQAWogAUEIaigCADYCACAEQZwBaiABQRRqKAIANgIAIARBqAFqIAFBIGooAgA2AgAgBCABKQIANwOIASAEIAEpAgw3ApQBIAQgASkCGDcDoAEgASkCKCEKIAEpAjAhCyABKAI4IQcgAS0APCEIIAQoAighCUHAAEEEEIwgIgIgBEGIAWpBJBD2BiIFIAg6ADwgBSAHNgI4IAUgCzcCMCAFIAo3AiggBSAJNgIkIARBwAFqIANBCGopAwA3AwAgBEHIAWogA0EQaikDADcDACAEIAMpAwA3A7gBIAEQ+ipBASEFDAELIAQtAJQCIQUgBEHAAWogA0EIaikDADcDACAEQcgBaiADQRBqKQMANwMAIARBtgFqIARBlwJqLQAAOgAAIAQgBC8AlQI7AbQBIAQgAykDADcDuAEgBCgC9AEhAyABIQILIAAgAzYCBCAAIAY2AgAgACAEKQO4ATcDCCAAIAU6ACQgACACNgIgIAAgBC8BtAE7ACUgAEEQaiAEQcABaikDADcDACAAQRhqIARByAFqKQMANwMAIABBJ2ogBEG2AWotAAA6AAAMDgsgBCgC9AEhASAAQQk2AgAgACABNgIEDA0LIAIQ4w0iA0UEQCABKALYAiEBIARBADoA8AEgASABIARB8AFqEOsUIQEgAEEJNgIAIAAgATYCBAwMCyADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQUgASgCLCEBIABBCTYCACAAIAE2AgQMDAsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBEH8AWogAUE0aikCADcCACAEQYQCaiABQTxqKAIANgIAIAQgASkCLDcC9AEgBCADNgLwASAEQfABahC/CiACEOMNIgNFDQMgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0GIAEoAiwhASAAQQk2AgAgACABNgIEDAwLIAIQ4w0iAkUNCgJAIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYNAUG54+AAQShBlOHfABDaFwALIAEoAighAyABQSU2AiggASABKQNANwN4IARB/AFqIAFBLGoiAkEIaikCADcCACAEQYQCaiACQRBqKAIANgIAIAQgAikCADcC9AEgBCADNgLwASAEQfABahC/CiAEQRhqIAEgBCgCJEEBEHwgBCgCHCEBIAQoAhhBAXFFBEAgASgCACECIARB+AFqIAFBDGopAgA3AwAgBEGAAmogAUEUaigCADYCACAEIAEpAgQ3A/ABIAEtAC0hBSABKAIcIQYgASkCJCEKIAEoAiAhAyAEKAIoIQcgARD8KiADQYCAgIB4Rw0IIAIhAQsgAEEJNgIAIAAgATYCBAwMCyABKAIsIQEgAEEJNgIAIAAgATYCBAwLCyAEQRBqIAFBABCEASAEKAIUIQEgBCgCEEEBcUUEQCABKAIIIQUgASgCBCECIAEtABkhBiABKAIUIQcgASgCECEIIAEoAgAhAyAEKAIoIQkgARDSKiADQYCAgIB4Rw0HIAIhAQsgAEEJNgIAIAAgATYCBAwKCyAEQQhqIAEgBCgCJBCnAiAEKAIMIQEgBCgCCEEBcUUEQCAEQQc2AvABIAQgATYC9AEgBEGIAWogBEHwAWoQ2hwgBCgCiAFBCEcNByAEKAKMASEBCyAAQQk2AgAgACABNgIEDAkLIAIQ4w0iAkUEQCABKALYAiEBIARBADoA8AEgASABIARB8AFqEOsUIQEgAEEJNgIAIAAgATYCBAwJCwJAIAIoAgAiBUECRwRAIAVBJEcNASABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNCCABKAIsIQEgAEEJNgIAIAAgATYCBAwKCyAEQfABaiIFIAJBCGoQ6xIgBRCFESEKIARBiAFqIAEgBCgCJCADIApBARC/ASAEKAKIASIBQQlHBEACQCABQQhGBEAgBEEINgLwAQwBCyAEQfABaiAEQYgBahDaHAsgACAEQfABakEoEPYGGgwLCyAAIAQoAowBNgIEIABBCTYCAAwKC0G54+AAQShBtOHfABDaFwALIAEoAtgCIQEgBEEAOgDwASABIAEgBEHwAWoQ6xQhASAAQQk2AgAgACABNgIEDAcLQbnj4ABBKEH04N8AENoXAAtBuePgAEEoQYTh3wAQ2hcAC0EwQQgQjCAiASACNgIAIAEgBToALSABQQE6ACwgASAKNwIkIAEgAzYCICABIAY2AhwgASAHNgIYIAEgBCkD8AE3AgQgAUEMaiAEQfgBaikDADcCACABQRRqIARBgAJqKAIANgIAIAAgATYCBCAAQQY2AgAMBAtBHEEEEIwgIgEgBjoAGSABQQE6ABggASAHNgIUIAEgCDYCECABIAk2AgwgASAFNgIIIAEgAjYCBCABIAM2AgAgACABNgIEIABBAjYCAAwDCyAAIARBiAFqQSgQ9gYaDAILQbnj4ABBKEGk4d8AENoXAAsgASgC2AIhASAEQQA6APABIAEgASAEQfABahDrFCEBIABBCTYCACAAIAE2AgQLIARB8ABqENcmCyAEQcwAahCKJgsgBEGgAmokAAuSGgIGfwJ+IwBBoAJrIgQkACAEIAI2AiQCQCABLQCgAkECRwRAIABBCDYCACADENcmDAELIAFBqgJqIQUCQCABLQC4AkEBcUUNACABLQCjAkEBcQ0AIAEoApwDIQYgBEH8ADoA8AEgASACIAYgAiAGSRsgAiAGIAIgBksbIARB8AFqEKkZIAQoAiQhAgsgBCACNgIoIARBAToAPSAEIAEpAaoCNwAvIAQgASgBsgI2ADcgBCABLwG2AjsAOyAEIAEpALkCNwA+IAQgASgAwQI2AEYgBCABLwDFAjsASiAEQeUAaiAFQRVqKQAANwAAIARB4ABqIAVBEGopAQA3AgAgBEHYAGogBUEIaikBADcCACAEIAUpAQA3AlAgAUEoaiICIARBL2oQyAggBCABNgJMIARB+ABqIANBCGooAgA2AgAgBCADKQIANwNwIAQgBEEkajYCgAEgBCAEQShqNgJ8AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCACEMgNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQQtGDQELAkAgAhDIDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUEZRg0CCwJAIAIQyA0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBE0cNACACEI8TIgVFDQAgBSgCAEECRw0AIAUtAAgNACAFLQAJQQ1GDQMLAkAgAhDIDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUETRg0ECwJAIAIQyA0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBEUYNBAsCQCACEMgNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQRJGDQQLAkAgAhDIDSIFRQ0AIAUoAgBBAkcNACAFLQAIDQAgBS0ACUEGRg0FCyACEMgNIgUEQCAFKAIAQQJGDQYLIABBCDYCACAEQfAAahDXJgwPCyAEQfgBaiIFIANBCGooAgA2AgAgBCADKQIANwPwASAEQYgBaiABIARB8AFqIgYQwCggBCgCiAEiB0EIRwRAQQEhAiAEQZABaiEDIAQoAqgBIQECQCAHQQFGBEAgBSABQQhqKAIANgIAIARBhAJqIAFBFGooAgA2AgAgBEGQAmogAUEgaikCADcDACAEQZgCaiABQShqKQIANwMAIAQgASkCADcD8AEgBCABKQIMNwL8ASAEIAEpAhg3A4gCIAEpAjQhCiABKQI8IQsgAS8BRCEIIAQoAighCUHIAEEEEIwgIgUgBkEwEPYGIgYgCDsBRCAGIAs3AjwgBiAKNwI0IAYgCTYCMCAEQeABaiADQQhqKQMANwMAIARB6AFqIANBEGopAwA3AwAgBCADKQMANwPYASABEPMqDAELIAQtAKwBIQIgBEHgAWogA0EIaikDADcDACAEQegBaiADQRBqKQMANwMAIARB1gFqIARBrwFqLQAAOgAAIAQgBC8ArQE7AdQBIAQgAykDADcD2AEgBCgCjAEhAyABIQULIAAgAzYCBCAAIAc2AgAgACAEKQPYATcDCCAAIAI6ACQgACAFNgIgIAAgBC8B1AE7ACUgAEEQaiAEQeABaikDADcDACAAQRhqIARB6AFqKQMANwMAIABBJ2ogBEHWAWotAAA6AAAMDwsgBCgCjAEhASAAQQk2AgAgACABNgIEDA4LIARB8AFqIAEgBCgCJCIBIAEgA0EAEIUEIAQoAvABIgZBCEcEQCAEQfgBaiEDIAQoApACIQECQCAGRQRAIARBkAFqIAFBCGooAgA2AgAgBEGcAWogAUEUaigCADYCACAEQagBaiABQSBqKAIANgIAIAQgASkCADcDiAEgBCABKQIMNwKUASAEIAEpAhg3A6ABIAEpAighCiABKQIwIQsgASgCOCEHIAEtADwhCCAEKAIoIQlBwABBBBCMICICIARBiAFqQSQQ9gYiBSAIOgA8IAUgBzYCOCAFIAs3AjAgBSAKNwIoIAUgCTYCJCAEQcABaiADQQhqKQMANwMAIARByAFqIANBEGopAwA3AwAgBCADKQMANwO4ASABEPoqQQEhBQwBCyAELQCUAiEFIARBwAFqIANBCGopAwA3AwAgBEHIAWogA0EQaikDADcDACAEQbYBaiAEQZcCai0AADoAACAEIAQvAJUCOwG0ASAEIAMpAwA3A7gBIAQoAvQBIQMgASECCyAAIAM2AgQgACAGNgIAIAAgBCkDuAE3AwggACAFOgAkIAAgAjYCICAAIAQvAbQBOwAlIABBEGogBEHAAWopAwA3AwAgAEEYaiAEQcgBaikDADcDACAAQSdqIARBtgFqLQAAOgAADA4LIAQoAvQBIQEgAEEJNgIAIAAgATYCBAwNCyACEMgNIgNFBEAgASgCgAIhASAEQQA6APABIAEgASAEQfABahDrFCEBIABBCTYCACAAIAE2AgQMDAsgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBSABKALMAiEBIABBCTYCACAAIAE2AgQMDAsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIARB/AFqIAFB1AJqKQIANwIAIARBhAJqIAFB3AJqKAIANgIAIAQgASkCzAI3AvQBIAQgAzYC8AEgBEHwAWoQvgogAhDIDSIDRQ0DIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASgCzAIhASAAQQk2AgAgACABNgIEDAwLIAIQyA0iAkUNCgJAIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQFBuePgAEEoQZTh3wAQ2hcACyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBEH8AWogAUHMAmoiAkEIaikCADcCACAEQYQCaiACQRBqKAIANgIAIAQgAikCADcC9AEgBCADNgLwASAEQfABahC+CiAEQRhqIAEgBCgCJEEBEHogBCgCHCEBIAQoAhhBAXFFBEAgASgCACECIARB+AFqIAFBDGopAgA3AwAgBEGAAmogAUEUaigCADYCACAEIAEpAgQ3A/ABIAEtAC0hBSABKAIcIQYgASkCJCEKIAEoAiAhAyAEKAIoIQcgARD8KiADQYCAgIB4Rw0IIAIhAQsgAEEJNgIAIAAgATYCBAwMCyABKALMAiEBIABBCTYCACAAIAE2AgQMCwsgBEEQaiABQQAQhQEgBCgCFCEBIAQoAhBBAXFFBEAgASgCCCEFIAEoAgQhAiABLQAZIQYgASgCFCEHIAEoAhAhCCABKAIAIQMgBCgCKCEJIAEQ0iogA0GAgICAeEcNByACIQELIABBCTYCACAAIAE2AgQMCgsgBEEIaiABIAQoAiQQpgIgBCgCDCEBIAQoAghBAXFFBEAgBEEHNgLwASAEIAE2AvQBIARBiAFqIARB8AFqENocIAQoAogBQQhHDQcgBCgCjAEhAQsgAEEJNgIAIAAgATYCBAwJCyACEMgNIgJFBEAgASgCgAIhASAEQQA6APABIAEgASAEQfABahDrFCEBIABBCTYCACAAIAE2AgQMCQsCQCACKAIAIgVBAkcEQCAFQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0IIAEoAswCIQEgAEEJNgIAIAAgATYCBAwKCyAEQfABaiIFIAJBCGoQ6xIgBRCFESEKIARBiAFqIAEgBCgCJCADIApBARC+ASAEKAKIASIBQQlHBEACQCABQQhGBEAgBEEINgLwAQwBCyAEQfABaiAEQYgBahDaHAsgACAEQfABakEoEPYGGgwLCyAAIAQoAowBNgIEIABBCTYCAAwKC0G54+AAQShBtOHfABDaFwALIAEoAoACIQEgBEEAOgDwASABIAEgBEHwAWoQ6xQhASAAQQk2AgAgACABNgIEDAcLQbnj4ABBKEH04N8AENoXAAtBuePgAEEoQYTh3wAQ2hcAC0EwQQgQjCAiASACNgIAIAEgBToALSABQQE6ACwgASAKNwIkIAEgAzYCICABIAY2AhwgASAHNgIYIAEgBCkD8AE3AgQgAUEMaiAEQfgBaikDADcCACABQRRqIARBgAJqKAIANgIAIAAgATYCBCAAQQY2AgAMBAtBHEEEEIwgIgEgBjoAGSABQQE6ABggASAHNgIUIAEgCDYCECABIAk2AgwgASAFNgIIIAEgAjYCBCABIAM2AgAgACABNgIEIABBAjYCAAwDCyAAIARBiAFqQSgQ9gYaDAILQbnj4ABBKEGk4d8AENoXAAsgASgCgAIhASAEQQA6APABIAEgASAEQfABahDrFCEBIABBCTYCACAAIAE2AgQLIARB8ABqENcmCyAEQcwAahDvJAsgBEGgAmokAAuCGwELfyMAQaAIayICJAAgAkHIAGogAUEoaiIFEOoTAkACQAJAAkACQAJAIAEtAKACQQJHDQAgAigCTCEJIAIoAkghCgJAAkAgBRDIDSIDRQ0AIAMoAgBBFEcNACADLQAEQQRGDQELIAUQyA0iA0UNASADKAIAQSFHDQELAkAgBRCPEyIDBEAgAygCAEECRg0BCyAFEI8TIgNFDQEgAygCAEEfRw0BC0EAIQMgAkEAOgBjIAIgASkBqgI3AFMgAiABKQC7AjcAZCACIAEoAMMCNgBsIAIgAUGyAmoiBCkBADcAWyACQY0BaiABQb8CaikAADcAACACQYgBaiABQboCaikBADcCACACQYABaiAEKQEANwIAIAIgASkBqgI3AnggBSACQdMAahDICCACIAE2AnQCQCABLQCgAkECRw0AIAEtAKoCIQsgAkGYAWogARCcAyACQQE6ALgEIAIgASkAqwI3ALkEIAIgASkAswI3AMEEIAIgASkAuwI3AMkEIAIgASgAwwI2ANEEIAJBwAFqIgcgAkG4BGoQyAgCQCAHEMgNIgNFDQAgAygCAEEhRw0AIAJB1AFqELsXQf8BcUEKRw0AIAIoAtgCIgMhBCACQdgCaiIGIQggA0GBAU8EQCACQdgBaiEIIAIoAtgBIQQLIAQEQCAIIARBAWs2AgAgAigC2AIhAwsgA0GBAU8EQCACQdgBaiEGIAIoAtgBIQMLIANFDQAgBiADQQFrNgIAC0EAIQMgAkFAayACQZgBakEAQQEQkwEgAigCRCEGAkAgAigCQARAIAYhBAwBCyACQThqIAJBmAFqIgwQdiACKAI8IQQgAigCOEUEQCACIAQ2AoAIAkACQCAEKAIAQR5HBEAgAkHsBGogBxCAECACQQE2AugEIAJBha3gADYC5AQgAkEwOgDgBCACQbAEaiACQfgDaiACKALgA0ElRiIIGygCACIEIAJBtARqIAJB/ANqIAgbKAIAIgggBCAISRsgBCAIIAQgCEsbIAJB4ARqEOsUIQQgBxDIDSIHRQ0CIAcoAgBBJEcNAiACIAIpA/gDNwOwBCACKALgAyACQSU2AuADQSRHDQEgDCACKALkAxD7CwwCCyAEIAYoAgwiAyAEKAIYIgcgAyAHSxs2AhggBCADIAcgAyAHSRs2AhQgBCgCIBC+KCAEIAY2AiAgAkHgBGoiAyACQZgBakGgAxD2BhogARDLECABIANBoAMQ9gYhAyACIAs6AIAIIAIgAykAqwI3AIEIIAIgAykAswI3AIkIIAIgAykAuwI3AJEIIAIgAygAwwI2AJkIIAUgAkGACGoQyAggBCEDDAQLQbnj4ABBKEH0iOAAENoXAAsgAkGACGoQvygLIAYQ9CoLIAIgBDYC3AQgAkEBNgLYBCACQdgEahCqICACQZgBahDLEAsgAiADNgJwIAJB9ABqEO8kIAMEQCABLQCgAkECRw0CIAEtAKUCQQFxRQ0CIAJBugE6AOAEIAEgCiAJIAJB4ARqEKkZDAILIAJB8ABqEOUmCyABLQCyAkEBcUUNASAFEMgNIgNFDQEgAygCAEECRw0BIAMtAAhBAkcNASADLQAJQR1HDQEgBRClICEDIAUQyA0iBEUEQCABKAKAAiEBIAJBADoA4AQgASABIAJB4ARqEOsUIQMMBAsgBCgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNA0G54+AAQShBuITgABDaFwALIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyACQewEaiABQdQCaikCADcCACACQfQEaiABQdwCaigCADYCACACIAEpAswCNwLkBCACIAQ2AuAEIAJB4ARqEL4KAkACQAJAAkACQCABLQC/AkEBcQRAIAEtAL0CQQFxRQ0BCyAFEMgNIgRFDQIgBCgCAEE+cUEORg0CIAUQ6yANAgJAIAUQyA0iBEUNACAEKAIAQRRHDQAgBC0ABEENRg0FCwJAIAUQyA0iBEUNACAEKAIAQRRHDQAgBC0ABEEORg0FCyAFEMgNIgRFDQEgBCgCAEEVRw0BIAQtAARBBEcNAQwECyABKAKcAyEDIAEoApgDIAJB0AA6AOAEIAMgAkHgBGoQ6xQhA0EBIQQgBRDIDSIGRQ0IIAYoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQIgASABKALMAhD7CwwICyAFEMgNIgRFBEAgASgCgAIhBCACQQA6AOAEIAIgBCAEIAJB4ARqEOsUNgKcASACQQE6AJgBIAJBmAFqEKgjDAMLIAQQggYQmgwNAgtBACEEIAJBADoA7AQgAkEANgLoBCACIAMgASgCnAMiASABIANJGzYC5AQgAiADIAEgASADSxs2AuAEIAJB4ARqEJoYIQMMBgtBuePgAEEoQciE4AAQ2hcAC0EAIQYCQCAFEMgNIgRFDQAgBCgCAEEURw0AIAQtAARBDUcNACABKALIAiEGIAFBJTYCyAIgASABKQPgAjcDmAMgAkHsBGogAUHMAmoiBEEIaikCADcCACACQfQEaiAEQRBqKAIANgIAIAIgBCkCADcC5AQgAiAGNgLgBCACQeAEahC+CkEBIQYLIAEoApwDIQUgAkEwaiABELIGQQEhBCACKAI0IQcgAigCMEEBcUUEQCACIAY6AOwEIAIgBzYC6AQgAiADIAEoApwDIgEgASADSRs2AuQEIAIgAyABIAEgA0sbNgLgBCACQeAEahCaGCEDDAELIAcoAgQhASAHKAIAQQRBBBCMICIIIAc2AgAgAiAINgLsBCACQSM2AvQEIAJB2ITgADYC8AQgAiADIAUgAyAFSxs2AugEIAIgAyAFIAMgBUkbNgLkBCACQbgBOgDgBCABIAJB4ARqEOsUIQMMBAtBACEEDAMLIAUQyA0iA0UEQCABKAKAAiEBIAJBADoA4AQgASABIAJB4ARqEOsUIQMMAgtBACEGAkACQCADKAIAIgdBAkcEQCAHQQlGDQEgB0EkRw0CIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNA0G54+AAQShB5IjgABDaFwALAkBBBCADLQAIQQJrQf8BcSIHIAdBBE8bDgUAAgICAQILIAMtAAlBHUcNAQtBASEGIAUQpSAhBAsgASAENgIEIAEgBjYCACAFEKUgIQggBRClICEHIAJBKGogARD9BSACKAIsIQYgAigCKARAIAYhAwwCCyACIAY2ArgEAkACQAJAAkACQAJAIAYoAgBBHkYNACAFEMgNIgNFDQAgAygCAEEXRw0AIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQewEaiIEIAFB1AJqKQIANwIAIAJB9ARqIgkgAUHcAmooAgA2AgAgAiABKQLMAjcC5AQgAiADNgLgBCACQeAEaiIKEL4KIAJBAToAeiACQYECOwCDASACIAEoAaoCNgB0IAIgAS8BrgI7AHggAiABKQCxAjcAeyACIAEpALsCNwCFASACIAEoAMMCNgCNASACQfkEaiABQb8CaikAADcAACAJIAFBugJqKQEANwIAIAQgAUGyAmopAQA3AgAgAiABKQGqAjcC5AQgBSACQfQAahDICCACIAE2AuAEIAJBIGogARCyBiACKAIkIQMgAigCIA0BIAIgAzYCgAggChDvJAJAIAUQyA0iBARAIAQoAgBBE0YNAQsgAkHoBGogBRCAECACQQhqIAUQ6hMgAkGo2N8ANgLkBCACQTQ6AOAEIAIoAgggAigCDCACQeAEahDrFCEDIAUQyA0iBEUNBSAEKAIAQSRHDQUgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ+wsMBQsgASgCyAIhCSABQSU2AsgCIAEgASkD4AI3A5gDIAJB7ARqIgogAUHMAmoiBEEIaikCADcCACACQfQEaiILIARBEGooAgA2AgAgAiAEKQIANwLkBCACIAk2AuAEIAJB4ARqIgkQvgogAkEBOwCnASACIAEtALgCOgCmASACIAEpAaoCNwCYASACIAEoAbICNgCgASACIAEvAbYCOwCkASACIAEpALsCNwCpASACIAEoAMMCNgCxASACQfkEaiABQaoCaiIEQRVqKQAANwAAIAsgBEEQaikBADcCACAKIARBCGopAQA3AgAgAiAEKQEANwLkBCAFIAJBmAFqEMgIIAIgATYC4AQgAkEYaiABELIGIAIoAhwhBCACKAIYIAkQ7yQEQCAEIQMMBQsgAkEQaiAEEIoDIAIoAhQhBSACIAQ2AugEIAIgAzYC5AQgAiAGNgLgBCACIAcgBSAFIAdJGzYC8AQgAiAHIAUgBSAHSxs2AuwEIAJB4ARqEO8UIQYLIAYoAgAiA0EeS0EBIAN0QYCAnIIEcUVyDQFBACEEIAYhAwwHCyACQeAEahDvJAwDCyACIAEgCCAGEOUCIAIoAgQhAyACKAIAIQQMBQtBuePgAEEoQYCB4AAQ2hcACyACQYAIahC/KAsgAkG4BGoQvygMAQsgASgCzAIhAwtBASEECyAAIAM2AgQgACAENgIAIAJBoAhqJAALiBcCEX8BfiMAQTBrIgkkAAJAAkACQCAAKAIAIgMoAgAiAARAIAMoAgghDSADKAIEIQsDQCAOIgcgDUchDyAHIA1GBEAgDyEGDAMLIAtFDQQgB0EBaiEOIAtBAWshDEEAIQIgAC0AACIGIQUgCyEKAkACQAJAAkACQANAAkAgBcBBAEgEQCAFQR9xIQMgACACaiIEQQFqLQAAQT9xIQggBUH/AXEiEEHfAU0EQCADQQZ0IAhyIQMMAgsgBEECai0AAEE/cSAIQQZ0ciEIIBBB8AFJBEAgCCADQQx0ciEDDAILIANBEnRBgIDwAHEgBEEDai0AAEE/cSAIQQZ0cnIiA0GAgMQARw0BDAwLIAVB/wFxIQMLIAAgAmoiBCEIAkACQCADQTBrQQlNBEAgAiAMRg0NIARBAWosAAAiBUG/f0oNASAIIApBASAKQfzJ1gAQuCYACyALIAprIQQgCiALRwRAIAAgBGosAABBv39MDQILQQAhAwJAAkAgBA4CCAABC0EBIQMgBkEraw4DBwUHBQsgBkErRw0DIABBAWohACAEQQpJIARBAWsiAyEEDQQMBQsgAkEBaiECIApBAWshCgwBCwsgACALQQAgBEGMytYAELgmAAsgBCEDIARBCU8NAQtBACECA0AgAC0AAEEwayIEQQlLBEBBASEDDAMLIABBAWohACAEIAJBCmxqIQIgA0EBayIDDQALDAILQQAhAgNAIARFDQIgAC0AAEEwayIGQQlLBEBBASEDDAILQQIhAyACrUIKfiITQiCIpw0BIABBAWohACAEQQFrIQQgBiATpyILaiICIAtPDQALCyAJIAM6ABRB9OHgAEErIAlBFGpB1MvWAEHky9YAEMAOAAsCQCACRQ0AIAIgCkkEQCACIAhqLAAAQb9/Sg0BDAULIAIgCkcNBAsgAiAIaiEAAkAgDSAORw0AIAJFIAEoAhxBBHFFIAVB/wFxQegAR3JyDQACQCACQQFHBEAgCCwAAUG/f0wNAQsgCEEBaiEFA0BBACEGIAAgBUYNBQJ/IAUsAAAiA0EATgRAIANB/wFxIQMgBUEBagwBCyAFLQABQT9xIQsgA0EfcSEEIANBX00EQCAEQQZ0IAtyIQMgBUECagwBCyAFLQACQT9xIAtBBnRyIQsgA0FwSQRAIAsgBEEMdHIhAyAFQQNqDAELIARBEnRBgIDwAHEgBS0AA0E/cSALQQZ0cnIiA0GAgMQARg0GIAVBBGoLIQUgA0Ewa0EKSSADQSByQeEAa0EGSXINAAsMAQsgCCACQQEgAkHcydYAELgmAAsCQCAHRQ0AIAEoAhRBrMrWAEECIAEoAhgoAgwRAwBFDQAgDyEGDAMLAkACfyACIAJBAkkNABogAiAILwAAQd/IAEcNABogCCwAAUG/f0wNASAIQQFqIQggAkEBawshAyAKIAJrIQsDQCAIIQQCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADIgdFDQACQCAELQAAQSRrDgsCAQEBAQEBAQEBAAELIAdBAUYNBSAELAABIgNBv39KDQQgBCAHQQEgB0Gky9YAELgmAAsgBCAHaiEMQQAhAiAEIQUDQCACIQMgBSICIAxGDQgCfyACLAAAIgZBAE4EQCAGQf8BcSEKIAJBAWoMAQsgAi0AAUE/cSEIIAZBH3EhBSAGQV9NBEAgBUEGdCAIciEKIAJBAmoMAQsgAi0AAkE/cSAIQQZ0ciEIIAZBcEkEQCAIIAVBDHRyIQogAkEDagwBCyAFQRJ0QYCA8ABxIAItAANBP3EgCEEGdHJyIQogAkEEagsiBSADIAJraiECIApBJGsOCwIAAAAAAAAAAAACAAsACyAHQQFGDQEgBCwAAUG/f0oNASAEIAdBASAHQeDK1gAQuCYACwJAAkAgAwRAAkAgAyAHSQRAIAMgBGoiAiwAAEG/f0wNASABKAIUIAQgAyABKAIYKAIMEQMARQ0EQQEhBgwTCyADIAdGDQILIAQgB0EAIANBwMrWABC4JgALIAEoAhQgBEEAIAEoAhgoAgwRAwBFDQtBASEGDBALIAEoAhQgBCAHIAEoAhgoAgwRAwBFDQpBASEGDA8LIAIsAABBv39KDQkgBCAHIAMgB0HQytYAELgmAAsgCSAHQQFrIgM2AiQgCUEANgIgIAkgAzYCHCAJQSQ2AhQgCUEkNgIoIAlBAToALCAJIARBAWoiAjYCGCAJQQhqIAlBFGoQogUgCSgCCEEBRw0EAkAgCSgCDCIGQX9HBEAgBkEBaiEDIAdBAUcNAQwFC0HwytYAEI0bAAsgAiwAAEG/f0oNAwwHCwJAAn8gA0H/AXEgA0EATg0AGiAELQACQT9xIQYgA0EfcSECIAJBBnQgBnIgA0FfTQ0AGiAELQADQT9xIAZBBnRyIQYgBiACQQx0ciADQXBJDQAaIAJBEnRBgIDwAHEgBC0ABEE/cSAGQQZ0cnILQS5HBEBBASEGIAEoAhRB6K3gAEEBIAEoAhgoAgwRAwANDiAELAABQUBIDQEMAwsgASgCFEGsytYAQQIgASgCGCgCDBEDAARAQQEhBgwOCwJAIAdBA08EQCAELAACQUBIDQELIARBAmohCCAHQQJrIQMMCgsgBCAHQQIgB0G0y9YAELgmAAsgBCAHQQEgB0HEy9YAELgmAAtBASEGIAEoAhRB6K3gAEEBIAEoAhgoAgwRAwANCwsgBEEBaiEIIAdBAWshAwwGCwJAAkACQAJAIAMgB0kEQCADIARqLAAAQUBIDQggBkECaiEFDAELIAMgB0cNByAHIQMgBkECaiIFRQ0BCwJAIAUgB0kEQCAEIAVqLAAAQb9/Sg0BDAcLIAUgB0cNBgsgBCAFaiEIIAcgBWshAwJAAkAgBg4DBQEAAgsgAi8AAEHToAFGBEBBgbLgACECDAYLIAIvAABBwqABRgRAQcWo4AAhAgwGCyACLwAAQdKMAUYEQEHKqOAAIQIMBgsgAi8AAEHMqAFGBEBBuKjgACECDAYLIAIvAABBx6gBRgRAQbuo4AAhAgwGCyACLwAAQcygAUYEQEGFreAAIQIMBgsgAi8AAEHSoAFHDQFB8JfjACECDAULIAItAAAiBUHDAEYEQEGisOAAIQIMBQsgBUH1AEYNAQwDCyAELQABQfUARw0CIAQsAAJBv39MDQELIAIgBmohECAGQQFrIREgBEECaiISIQICQANAQQEhCiACIBBGDQECfyACLAAAIgZBAE4EQCAGQf8BcSEFIAJBAWoMAQsgAi0AAUE/cSEMIAZBH3EhBSAGQV9NBEAgBUEGdCAMciEFIAJBAmoMAQsgAi0AAkE/cSAMQQZ0ciEMIAZBcEkEQCAMIAVBDHRyIQUgAkEDagwBCyAFQRJ0QYCA8ABxIAItAANBP3EgDEEGdHJyIgVBgIDEAEYNAiACQQRqCyECIAVBMGtBCkkgBUHhAGtBBklyDQALQQAhCgsgCUEUaiASIBFBEBDCBCAJLQAUDQEgCkEBc0GAgMQAIAkoAhgiAiACQYCwA3NBgIDEAGtBgJC8f0kbIgJBgIDEAEZyDQEgCSACNgIEIAJBIEkgAkH/AGtBIUlyDQEgCUEEaiABENoHRQ0GQQEhBgwKCyACIAZBASAGQZTL1gAQuCYACyAPIQYgASgCFCAEIAcgASgCGCgCDBEDAEUNBgwIC0EBIQYgASgCFCACQQEgASgCGCgCDBEDAEUNAwwHCyAEIAcgBSAHQYDL1gAQuCYACyAEIAdBASADQfDK1gAQuCYACyADIARqIQggByADayEDDAALAAsLIAggAkEBIAJBsMrWABC4JgALIAlBADYCKCAJIAE2AiQgCUIANwIcIAkgAykCBDcCFCAJQRRqQQEQnwEhBgsgCUEwaiQAIAYPCyAIIAogAiAKQZzK1gAQuCYAC0HsydYAELwpAAurGAIYfwF+IwBBoAFrIgUkACABKAIAIgwoAvwEIQQgASgCBCIIKQKkASEcIAhCgICAgBA3AqQBIAhBrAFqIgYoAgAhCSAGQQA2AgAgBUHYAGogCTYCACAFIBw3A1AgDC0AUCEGIAhBkAFqKAIAIAhBlAFqKAIAIAJB////P3EgBHZBhN7DABCcHyEJIAhBADYCZCAIQQA2AkggDCgC+AQiDi0A3AIhEQJAAkACQAJAAkACQCAJKAIAQQhqIgogCSgCBCILEK4bIgQEfyAEQYCAgIAETw0BIARB/f///wNPDQIgBEECdEENagVBCQshByAIQYwBaiEaIAhBmAFqIRUgCEEwaiESIAZBAkYgBnIhGyAFQcgAaiAHIAogC0H81sMAEPEcIAhBOGoiEygCACEUIAgoAkghBiAFKAJMIQ0gBSgCSCEPIAhBxABqIRYgCEFAayEXIAhBNGohGEEAIQsDQCANBEBBACEZQQAhBEEAIQdBACEKAn8DQEEAIAQgDUYNARogBCAPaiwAACIQQQBIBEAgBEEBaiEEIBBB/wBxIAd0IApyIQogB0EHaiEHDAELCyAEQQFqIRkgECAHdCAKcgshBCAFQUBrIBkgDyANQYzXwwAQ8RwgBSgCRCENIAUoAkAhDyAFQQAgBEEBcWsgBEEBdnMgC2oiCzYCaCAGIBcoAgAgFigCACALQdj4wwAQmR8oAgAiBEsEQCAYKAIAIBMoAgAgBEHo+MMAEJkfKAIAIAtGDQILIAUgBjYCbCAGIBRPDQQgGCgCACATKAIAIAZBuPjDABCZHyALNgIAIBcoAgAgFigCACALQcj4wwAQmR8gCCAGQQFqIgQ2AkggBjYCACAEIQYMAQsLIAkoAgAgCSgCBBDgKUUNBSAJKAIAIAkoAgQQ3ykhBCADQQFxRQ0DIARBKnIhBCADQQh2IgchCgwEC0Gc18MAELwpAAtBrNfDABC8KQALIAVBAzYCdCAFQZD4wwA2AnAgBUIDNwJ8IAVB+QA2ApwBIAVBEDYClAEgBUEQNgKMASAFIBQ2AlwgBSAFQYgBajYCeCAFIAVB6ABqNgKYASAFIAVB3ABqNgKQASAFIAVB7ABqNgKIASAFQfAAakGo+MMAEKEdAAsgA0EIdiIKIQcCQAJAIApB/wFxQQprDgQAAgIBAgsCQCARQQFxRQRAIAkoAgAgCSgCBBDlHw0BCyAEQSByIQQLQQohBwwBCwJAIBFBAXEEQCAJKAIAIAkoAgQQ5R8NAQsgBEEgciEEC0ENIQcLIAQgBCAEQQhyIANBAXEiECILGyAOLQDYAiAHQf8BcUcbIQQCQCAJKAIAIAkoAgQQ5R9FDQAgA0GA/gNxIQYCQCARQQFxBEAgBkGAGkcNASAQRQ0CDAELIAZBgBRHDQAgA0EBcUUNAQsgBEEQciEECyAJKAIAIAkoAgQQ5B8hBiALBH9BwAJBgAUgBhsgBHJBgIAKcgUgBEHAAkGABSAGIApB/wFxQYj5wwBqLQAAIgRzG3IiBiAGQYCACnIgBBsLIQcCQAJAIAkoAgAgCSgCBBDkH0UNACADQQFxRQRAIApB/wFxQYj5wwBqLQAADQELIAdBgNAAciEHDAELIAkoAgAgCSgCBBDkHyADQQFxcg0AIAdBgChyIAcgCkH/AXFBiPnDAGotAAAbIQcLIAkoAgAgCSgCBBDfKSEEIAkoAgAgCSgCBBDgKSAEQX9zcSAHcUUNACAFQThqIBIQnBkgCEHMAGohBiAFKAI8IQkgBSgCOCEEA0AgBCAJRgRAAkBBACEEA0AgBEEcRg0BIAQgCGoiBkHMAGoiCSgCACEHIAkgBkEwaiIGKAIANgIAIAYgBzYCACAEQQRqIQQMAAsACwUgDCgC+AQgBCgCACAHIBUgBhDIAyAEQQRqIQQMAQsLIAhBADYCZAsgBUHcAGoiBiAFQdAAahDeHgJAIA4oArACIgRBPHFFDQAgA0EBcSAOLQDYAiADQQh2Qf8BcUdyDQAgBhDdKSAFQTBqIAUoAmAgBSgCZEEBQYzYwwAQ/RxBBHIgBSgCMCAFKAI0EOQOIA4oArACIQQLAkAgBEEwcUUNACADQYD+A3EhBgJAIBFBAXEEQCADQQFxIAZBgBpHcg0CDAELIANBAXEgBkGAFEdyDQELIAVB3ABqEN0pIAVBKGogBSgCYCAFKAJkQQFBjNjDABD9HEEQciAFKAIoIAUoAiwQ5A4gDigCsAIhBAsCfyAEQcD/D3EEQCADQQFxRQRAQQAgA0EIdkH/AXFBiPnDAGotAABBAUYNAhoLIAVB3ABqEN0pIAVBIGogBSgCYCAFKAJkQQFBjNjDABD9HEGAgAVyIAUoAiAgBSgCJBDkDgsgAwshCSAFQRhqIBIQnBkgCEHMAGohDyAFKAIcIRIgBSgCGCEEIAlBAXEhDSADQQh2Qf8BcSILQQJ0IRMgG0EBcSEUA0ACQCAEIBJGDQAgBCgCACEHIARBBGoiBiEEAkACQAJAAkACQAJAAkACfwJAAkAgDCgC+AQgBxDcHSIKKAIAQQFrDggBAwsLCwsLBQALIA0NCiAKLQAIIAtLDQogCi0ACSALSQ0KIApBBGoMAQsgDQ0JIAooAghBA3QhByAKKAIEQQVqIQQDQCAHRQ0IIARBAWstAAAgC0sNCCAHQQhrIQcgBC0AACAEQQhqIQQgC0kNAAsgBEENawsoAgAhBwwBCyANDQcgCigCCCIHIAtNDQIgCigCBCATaigCACIHRQ0HCyAFKAJgIAUoAmQQyRohBCAMKAL4BCAHIAQgFSAPEMgDDAQLIAooAgQhBAJAIAUoAmAgBSgCZBDdHg0AIARFDQIgBUHcAGoiEBDXHiAFKAJgIAUoAmRB3NfDABCTIyIHIActAABBAnI6AAAgBSgCYCAFKAJkEOMfRQRAIBAQ3x4MAQsgBUHcAGpBABCGEwsgBUHcAGogBBCGEwwCCyALIAdBvPDDABCbEAALIAVB3ABqEN8eCyAGIQQgFEUNAgwBCyAGIQQMAQsLAkAgCCgCZEUNAAJAIA4oArACIgRBwP8PcUUgCXJBAXENACALQYj5wwBqLQAARQ0AIAUoAmAgBSgCZBDGIiAOKAKwAiEECyAEQTBxRQ0AIANBgP4DcSEEAkAgEUEBcQRAIARBgBRHIAlyQQFxRQ0BDAILIARBgBpHIAlyQQFxDQELIAUoAmAgBSgCZBDHIgsgBUH4AGogBUHkAGooAgA2AgAgBSAFKQJcNwNwIAVBiAFqIgYgBUHwAGoQlwwgDCgC+AQgDyAGENIJIAUpA4gBIRwCQAJAAkAgCBCHEyAFKAKQASIEakEEIAwoAvwEdGpBFGogDCgCgAVLIgkEQCAMIAggAhDgHiIHKAIAIgYgBigCACIKQQFqNgIAIApBAEgNASAHKAIEIQcgCEEgahDIIiAIIAc2AiwgCCAGNgIoIAggAjYCJCAIQQE2AiALIAggHEIgiKciBiAEEKMGIgcEQCAHKAIAIQQgCCAcELQfQQAhBwwCCyAFQRBqIAYgBBDOGSAFKAIQIQQgBSAFKAIUIgY2AnQgBSAENgJwAn8CQAJAIAwgCCAGEOYfRQRAIAEQ+AsNAQsgBUEIaiABEKwPIAUoAghFDQELIAVB8ABqENYeQQEhB0EADAELIAUoAgwhASAEIAYQ3ikhBCAIQfQAakEBIAwoAvwEdBDXDyABQYCAgMAAciABIAQbIQQCQCAMQdgEaiIBEOEpDQAgDCAEEN0dDQAgDBC0FSEGIAVBADYCjAEgBSABNgKIAQNAIAUgBUGIAWoQxBEgBS0AAEUNASAMIAggBCAFLQABQQh0IAYQ0QgMAAsACyAIIAUoAnQiBiAIKAJoajYCaCAFKAJwIgEgASgCACIHQQFqNgIAIAdBAEgNASAaIAEgBhDGGCAIIAEgBiAEENwHQQAhB0EBCyAIIBwQtB8NAQwCCwALAkAgCUUNACAIKQIgIRxBACEKIAhBADYCICAFQZABaiAIQShqKQIANwMAIAUgHDcDiAECQAJAIBynQQFrDgIAAAELQQEhCiAFKAKMASECCyAFQYgBahDIIiAKDQBB9N/DAEEoQZzgwwAQoRIACyAMIAggAiADIAQQ0QgLIAAgBzYCACAAIAQ2AgQgBUGgAWokAAvJGAEPfyMAQZABayICJAAgAkFAayIJIAEgAC0AmAEiCyAAKAIsIgRBgICAgHhHQQJBAyAALQAIIgNBBkYbaiAAKAI4IgVBgICAgHhHaiAAKAJEIgZBgICAgHhHaiAAKAJQIghBgICAgHhHaiAAKAJcIgpBgICAgHhHaiAAKAJoIgxBgICAgHhHaiAAKAJ0Ig1BgICAgHhHaiAAKAKAASIOQYCAgIB4R2ogACgCjAEiD0GAgICAeEdqahCcDSACKAJAIQECQAJAAkACQCACLQBEIgdBA0YNACACIAc6AAggAiABNgIEIAJBBGoiEEGen9gAQQcQ3xAiAQ0AIAkgAigCBCIHKAIAEO0pIAkQzhgiAQ0AIAAoAgAgACgCBCAHKAIAELMhIgENACACQQQ6AEAgAkFAaxDOGCIBDQAgA0EGRwRAIBBBpZ/YAEEEEN8QIgENASAJIAIoAgQiAygCABDtKSACQUBrEM4YIgENASAAQQhqIAMQbCIBDQEgAkEEOgBAIAJBQGsQzhgiAQ0BCyACQQRqIgNBqZ/YAEEHIABBIGoQ9AciAQ0AIARBgICAgHhHBEAgA0Gwn9gAQQogAEEsahCkESIBDQELIAVBgICAgHhHBEAgAkEEakG6n9gAQQ4gAEE4ahD0ByIBDQELIAZBgICAgHhHBEAgAkEEakHIn9gAQQgQ3xAiAQ0BIAJBQGsiAyACKAIEIgQoAgAQ7SkgAxDOGCIBDQEgACgCSCEFIAMgBCAAKAJMIgEQmw0gAigCQCEEIAItAEQiA0EDRgRAIAQhAQwCCyABQRhsIQcDQCAHBEAgAkFAayIGIAQoAgAgA0EBRhDkICAGEM4YIgENAyAGIARBAxCcDSACKAJAIQEgAi0ARCIDQQNGDQMgAiADOgAgIAIgATYCHCACQRxqIglBiJ/YAEEGEN8QIgENAyAGIAIoAhwiAygCABDtKSACQUBrEM4YIgENAyAGIANBAhCcDSACKAJAIQEgAi0ARCIDQQNGDQMgAiADOgBsIAIgATYCaCACQegAaiIDQf6e2ABBBCAFKAIMEKURIgENAyADQYKf2ABBBiAFKAIQEKURIgENAyACKAJoKAIAIAItAGwQ9xciAQ0DIAJBBDoAQCACQUBrEM4YIgENAyAJQYu23wBBAyAFEKQRIgENAyAJQY6f2ABBAxDfECIBDQMgBiACKAIcIgMoAgAQ7SkgAkFAaxDOGCIBDQMCfyAFKAIUIgFFBEAgAygCABCBHQwBCyABIAMQeQsiAQ0DIAJBBDoAQCACQUBrEM4YIgENAyADKAIAIAItACAQ9xciAQ0DIAVBGGohBSACQQQ6AEAgB0EYayEHQQIhAyACQUBrEM4YIgFFDQEMAwsLIAQoAgAgAxD2FyIBDQEgAkEEOgBAIAJBQGsQzhgiAQ0BCyAIQYCAgIB4RwRAIAJBBGpBkZ/YAEEFEN8QIgENASACQUBrIgEgAigCBCIEKAIAEO0pIAEQzhgiAQ0BIAQgAEHQAGoQ7woiAQ0BIAJBBDoAQCACQUBrEM4YIgENAQsgCkGAgICAeEcEQCACQQRqQdCf2ABBDSAAQdwAahCkESIBDQELIAxBgICAgHhHBEAgAkEEakGWn9gAQQggAEHoAGoQpBEiAQ0BCyANQYCAgIB4RwRAIAJBBGpB3Z/YAEESEN8QIgENASACQUBrIgMgAigCBCIEKAIAEO0pIAMQzhgiAQ0BIAAoAnghBSADIAQgACgCfCIBEJsNIAIoAkAhBCACLQBEIgdBA0YEQCAEIQEMAgsgAUEDdCEGIAdBAUYhAwNAIAYEQCACQUBrIgEgBCgCACADQQFxEOQgIAEQzhgiAQ0DIAUoAgAgBUEEaigCACAEKAIAELMhIgENAyAFQQhqIQUgAkEEOgBAIAZBCGshBkEAIQNBAiEHIAJBQGsQzhgiAUUNAQwDCwsgBCgCACAHEPYXIgENASACQQQ6AEAgAkFAaxDOGCIBDQELIA5BgICAgHhHBEAgAkEEakHvn9gAQRQQ3xAiAQ0BIAJBQGsiASACKAIEIgQoAgAQ7SkgARDOGCIBDQEgBCAAKAKEASAAKAKIARCsCiIBDQEgAkEEOgBAIAJBQGsQzhgiAQ0BCyAPQYCAgIB4RwRAIAJBBGpBg6DYAEESEN8QIgENASACQUBrIgMgAigCBCIEKAIAEO0pIAMQzhgiAQ0BIAAoApABIQYgAyAEIAAoApQBIgEQmw0gAigCQCEEIAItAEQiBUEDRgRAIAQhAQwCCyAGIAFBDGxqIQwgBUEBRiEHA0AgBiAMRwRAIAJBQGsiASAEKAIAIAdBAXEQ5CAgARDOGCIBDQMCfyAGKAIAQYCAgIB4RgRAIAQoAgAQgR0MAQsgBigCBCEFIAJBQGsgBCAGKAIIIgEQmw0gAigCQCEDIAItAEQiCEEDRgRAIAMhAQwFCyABQRhsIQcgCEEBRiEKA0AgBwRAIAJBQGsiCSADKAIAIAoQ5CAgCRDOGCIBDQYgCSADQQIQnA0gAigCQCEBIAItAEQiCEEDRg0GIAIgCDoAbCACIAE2AmggAkHoAGoiCkGRn9gAQQUQ3xAiAQ0GIAkgAigCaCIIKAIAEO0pIAJBQGsQzhgiAQ0GIAggBUEEaigCACAFQQhqKAIAEKwKIgENBiACQQQ6AEAgAkFAaxDOGCIBDQYgCkGWn9gAQQgQ3xAiAQ0GIAkgAigCaCIIKAIAEO0pIAJBQGsQzhgiAQ0GIAVBEGooAgAgBUEUaigCACAIKAIAEOcqIgENBiACQQQ6AEAgAkFAaxDOGCIBDQYgCCgCACACLQBsEPcXIgENBiAFQRhqIQUgAkEEOgBAIAdBGGshB0EAIQpBAiEIIAJBQGsQzhgiAUUNAQwGCwsgAygCACAIEPYXCyIBDQMgBkEMaiEGIAJBBDoAQEEAIQdBAiEFIAJBQGsQzhgiAUUNAQwDCwsgBCgCACAFEPYXIgENASACQQQ6AEAgAkFAaxDOGCIBDQELAkAgC0UEQCACKAIEIQMMAQsgAkEEakGVoNgAQQgQ3xAiAQ0BIAJBQGsiASACKAIEIgMoAgAQ7SkgARDOGCIBDQFBACEFIAJBADYCFCACQoCAgIAQNwIMIABBmQFqIQYCQCAALQC4AUEBRwRAIAJCmICAgMAENwJgIAJCk4CAgPACNwJYIAJCjoCAgKACNwJQIAJCiYCAgNABNwJIIAJCgICAgIABNwJAIAJB6ABqQQBBJBCFCxpBACEIAkADQCAIQQVGDQFBECAFIAVBEE0bIQcgAkFAayAIQQN0aiIBKAIEIQQgASgCACEBA0AgASAETwRAAkAgCEEERwRAIARBJE8NASACQegAaiAEakEtOgAACyAIQQFqIQgMAwsgBEEkQYyV4wAQmxAACyAFIAdGDQcgAUEkTw0IIAJB6ABqIAFqIgogBSAGai0AACILQQR2QaSU4wBqLQAAOgAAIAFBI0cEQCAKQQFqIAtBD3FBpJTjAGotAAA6AAAgBUEBaiEFIAFBAmohAQwBCwsLQSRBJEG8leMAEJsQAAsgAkEcaiIBIAJB6ABqQSQQ9gYaIAJBDGogAUEkEO4pRQ0BDAYLIAIgBigAACIBQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZycjYCGCACQcsANgIgIAJBATYCfCACQQE2AmwgAkGo7uAANgJoIAJBATYCdCACIAJBGGo2AhwgAkEDOgBcIAJBCDYCWCACQiA3AlAgAkKAgICAgAE3AkggAkECNgJAIAIgAkFAazYCeCACIAJBHGo2AnAgAkEMakGgoNgAIAJB6ABqEJUkDQULIAAoAKkBIgAEQCACQQE2AkQgAkG0lsMANgJAIAJCATcCTCACQdUBNgJsIAIgADYCHCACIAJB6ABqNgJIIAIgAkEcajYCaCACQQxqQaCg2AAgAkFAaxCVJA0FCyACKAIMIAJB6ABqIAMoAgAgAigCECIEIAIoAhQQ+ANBACEBIAItAGhBBEcEQCACIAIpA2g3A0AgAkFAaxDxGyEBCyAEEKckIAENASACQQQ6AEAgAkFAaxDOGCIBDQELIAMoAgAgAi0ACBD3FyEBCyACQZABaiQAIAEPCyAHQRBBnJXjABCbEAALIAFBJEGsleMAEJsQAAtB3LXgAEE3IAJBQGtBuKDYAEHgtuAAEMAOAAvWGQISfwN+IwBBwAFrIgQkACAEQZgBaiABEM0EIAQoAqABIQUCfyAEKQOYASIWUEUEQCAEIAQoAqQBNgJEIAQgBTYCQCAEIBY3AzgCQAJAAkACQAJAAkACQCABQShqIgcQyA0iBQRAIAUoAgBBDUYNAQsgBEGgAWogBxCAECAEIAcQ6hMgBEHg2d8ANgKcASAEQTQ6AJgBIAQoAgAgBCgCBCAEQZgBahDrFCEFIAcQyA0iAkUNBiACKAIAQSRHDQYgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ+wsMBgsgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIARBpAFqIAFB1AJqKQIANwIAIARBrAFqIAFB3AJqKAIANgIAIAQgASkCzAI3ApwBIAQgBTYCmAEgBEGYAWoiBhC+CiAEQQA2AlwgBEKAgICAgAE3AlQgAUHMAmohCCABQcgCaiEQIAZBBHIhCSAEQaABaiESQQghFQJAA0ACQCAEQZgBaiIGIAFBABDJCAJAAkACQAJAIAQtAJgBDQAgBC0AmQENBiAHEKUgGiAHEKUgIQogBxDIDSIFRQRAIAEoAoACIQEgBEEAOgCYASABIAEgBhDrFCEFDAsLAn8CQAJAAkACQAJAAn8CQAJAAkACQAJAIAUoAgAiBkEbaw4DAQYCAAsgBkELRg0CIAZBJEcNBSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDRRBuePgAEEoQcDc3wAQ2hcACyAEQZgBaiABEMQCIAQoApgBIgVFDQIgBUEHRg0KQbnj4ABBKEGI3d8AENoXAAsgBEEANgJ0IARCgICAgBA3AmwgBCAFKwMQOQNgIARB7ABqIgxBIhD3ByAEQTBqIAVBCGoQkQwgDCAEKAIwIAQoAjQQ1h0gDEEiEPcHIAkgCCkCADcCACAJQQhqIAhBCGopAgA3AgAgCUEQaiAIQRBqKAIANgIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAEIAU2ApgBIARBmAFqIgYQvgogASgCnAMhBSAEQa4BOgCYASABIAogBSAFIApLGyIPIAogBSAFIApJGyIRIAYQqRkgBEEANgKQASAEQoCAgIAQNwKIASAEQQM6ALgBIARBIDYCqAEgBEEANgK0ASAEQcjd2AA2ArABIARBADYCoAEgBEEANgKYASAEIARBiAFqNgKsASAEQeAAaiAGEIoZDQUgBEGAAWogBEGQAWooAgA2AgAgBCAEKQKIATcDeCAEQfgAahCLGSIXQiCIpyEOIAwQixkhFiAXpwwCCyAHEMgNIgVFDQMgBSgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNEkG54+AAQShB0NzfABDaFwALIAkgCCkCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiIGIAhBCGoiCykCADcCACAJQRBqIg4gCEEQaiIPKAIANgIAIAQgBTYCmAEgBEGYAWoiDBC+CiAEQShqIAEQiQYgBCgCLCEFIAQoAigNEiAEIAU2ApgBIAwQvyggASgCnAMhBSAEQZMBOgCYASABIAogBSAFIApLGyAKIAUgBSAKSRsgDBCpGQJAIAcQyA0iBQRAIAUoAgBBDEYNAQsgEiAHEIAQIARBIGogBxDqEyAEQeDc3wA2ApwBIARBNDoAmAEgBCgCICAEKAIkIARBmAFqEOsUIQUgBxDIDSICRQ0TIAIoAgBBJEcNEyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwTCyAJIAgpAgA3AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIAYgCykCADcCACAOIA8oAgA2AgAgBCAFNgKYASAEQZgBahC+ChCpIyIGKAIEIQ4gBigCACEFIAYpAwAQ2hoaIAogASgCnAMiBiAGIApLGyEPIAogBiAGIApJGyERIBZCgICAgIBggyEWDAYLIAQpA7ABIRYgBCgCrAEhESAEKAKoASEPIAQoAqQBIQ4gBCgCoAELIQVCASEXQQAMBQsgBEGIAWoiBiABEM0EIARBmAFqIAYQ8x4gBCgCmAEhBSAELQCsAUECRg0PIAQpA6gBIRYgBCgCpAEhESAEKAKgASEPIAQoApwBIQ4MAwsgASgCgAIhASAEQQA6AJgBIAEgASAEQZgBahDrFCEFDA4LQdy14ABBNyAEQfgAakHg3dgAQeC24AAQwA4AC0G54+AAQShB+NzfABDaFwALQgAhF0EBCyELAn8CQAJAAkAgBxDIDSIGRQ0AIAYoAgBBFUcNACAGLQAEDQAgCSAIKQIANwIAIAEoAsgCIQYgAUElNgLIAiABIAEpA+ACNwOYAyAJQQhqIAhBCGopAgA3AgAgCUEQaiAIQRBqKAIANgIAIAQgBjYCmAEgBEGYAWoQvgogBEEYaiABELIGIAQoAhwiBiAEKAIYRQ0DGiAFrSAOrUIghoQhFyALRQ0BIBcQ1hogBiEFDA4LIAcQyA0iBgRAIAYoAgBBEEYNAgsgBxDIDSIGBEAgBigCAEEORg0CCyAHEKUgIQsgCSAIKQIANwIAIAlBCGogCEEIaikCADcCACAJQRBqIAhBEGooAgA2AgAgASgCyAIhBiABQSU2AsgCIAEgASkD4AI3A5gDIAQgBjYCmAEgBEGYAWoiBhC+CiABKQOYAyEYIBAQ9SQgAUEAOgDoAiABIBg3A+ACIBBBEGpB6LzgACkDADcDACAQQQhqQeC84AApAwA3AwAgEEHYvOAAKQMANwMAIARB9QA6AJgBIAEgCyALIAYQqRlBAAwCCyAXIBYQ7yogBiEFDAwLQQALIQYgCiABKAKcAyIUIAogFEkbIQwgBCgCVCANRgRAIARB1ABqEPIWIAQoAlghFQsgEyAVaiILIBc3AwAgC0EoaiAGNgIAIAtBJGogCiAUIAogFEsbNgIAIAtBIGogDDYCACALQRhqIBY3AgAgC0EUaiARNgIAIAtBEGogDzYCACALQQxqIA42AgAgC0EIaiAFNgIAIAQgDUEBaiIGNgJcAkAgBxDIDSIFBEAgBSgCAEEQRg0BCyAEQZgBaiIMIAFBABDJCCAELQCYAQ0BIAQtAJkBDQUgBxDIDSIFDQIgASgCgAIhBSAEQQA6AJgBIAUgBSAMEOsUEJgYIgUNAiAEQYgBakGo6t8AQQMQthUMAwsgCSAIKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAJQQhqIAhBCGopAgA3AgAgCUEQaiAIQRBqKAIANgIAIAQgBTYCmAEgBEGYAWoQvgoMAwsgBCgCnAEhBQwJCyAEIAU2AmAgBEEBNgKcASAEQaju4AA2ApgBIARCATcCpAEgBEGzAjYCfCAEIARB+ABqNgKgASAEIARB4ABqNgJ4IARBiAFqIARBmAFqEOYUCyAEQRBqIAcQ6hMgBCgCFCEFIAQoAhAhDSASQQhqIARBkAFqKAIANgIAIBIgBCkCiAE3AgAgBEHYvOAANgKcASAEQTQ6AJgBIAEgDSAFIARBmAFqEKkZCyATQTBqIRMgBiENDAELCyANQQFqIQ0LIAQoAlghBSAEKAJUIgZBgICAgHhGDQQgBCANNgJQIAQgBTYCTCAEIAY2AkgCQAJAIAcQyA0iBQRAIAUoAgBBDkYNAQsgBEGgAWogBxCAECAEQQhqIAcQ6hMgBEG42d8ANgKcASAEQTQ6AJgBIAQoAgggBCgCDCAEQZgBahDrFCEFIAcQyA0iAkUNAyACKAIAQSRGDQEMAwsgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIARBpAFqIAhBCGopAgA3AgAgBEGsAWogCEEQaigCADYCACAEIAgpAgA3ApwBIAQgBTYCmAEgBEGYAWoiBhC+CiABKAKcAyEBIAYgBEE4ahCDHEEwQQgQjCAiBSACIAEgASACSRs2AhwgBSACIAEgASACSxs2AhggBSADOgAtIAVBADoALCAFQRBqIARBqAFqKQMANwMAIAVBCGogBEGgAWopAwA3AwAgBSAEKQOYATcDACAFIAQpAkg3AiAgBUEoaiAEQdAAaigCADYCAEEADAgLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEPsLDAILQbnj4ABBKEHQ2d8AENoXAAtBuePgAEEoQfjZ3wAQ2hcACyAEQcgAahDoJgwCCyABKALMAiEFCyAEQdQAahDoJgsgBCkDOCEWCyAWENYaC0EBCyEBIAAgBTYCBCAAIAE2AgAgBEHAAWokAAvllQEDI38CfgF8IwBBkAhrIgYkAAJAAkAgBgJ/AkACQAJAAkACQAJAAkACQAJAAkAgAUEoaiIMEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQtGDQELAkAgDBDIDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEKRg0CCyAMEMgNIgNFDQogAygCAEECRw0KIAMtAAgNCiADLQAJQQlHDQogDBClICEDAkAgDBDIDSIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACUEJRg0DCyAGQbABaiAMEIAQIAZBQGsgDBDqEyAGQaDe3wA2AqwBIAZBNDoAqAEgBigCQCAGKAJEIAZBqAFqEOsUIQQgDBDIDSIDRQ0IIAMoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwICyAMEKUgIQMCQAJAIAwQyA0iBEUNACAEKAIAQQJHDQAgBC0ACA0AIAQtAAlBC0YNAQsgBkGwAWogDBCAECAGQdgAaiAMEOoTIAZBwOLfADYCrAEgBkE0OgCoASAGKAJYIAYoAlwgBkGoAWoQ6xQhBCAMEMgNIgNFDQggAygCAEEkRw0IIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAgLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEL4KDAYLIAwQpSAhAwJAIAwQyA0iBEUNACAEKAIAQQJHDQAgBC0ACA0AIAQtAAlBCkYNAwsgBkGwAWogDBCAECAGQdAAaiAMEOoTIAZB6OLfADYCrAEgBkE0OgCoASAGKAJQIAYoAlQgBkGoAWoQ6xQhBCAMEMgNIgNFDQYgAygCAEEkRw0GIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDAYLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEL4KQQIhBQwEC0G54+AAQShB2OLfABDaFwALIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEL4KQQEhBQwCC0G54+AAQShBgOPfABDaFwALQbnj4ABBKEGQ498AENoXAAsgBkHIAGogARB7IAYoAkwhBCAGKAJIDQAgBkGDBWogBkHiAGotAAA6AAAgBiAFOgCABSAGIAYvAGA7AIEFIAYgAyABKAKcAyIBIAEgA0kbNgL8BCAGIAMgASABIANLGzYC+ARBDgwBC0EUCzYC8AQgBiAENgL0BCAGQThqIAZB8ARqEPwXIAYoAjwhAyAGKAI4IQQMAQsgBgJ/AkACQAJAAkACQAJAAkACQAJAIAwQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBD0YNAQtBASEEIAZB8ARqIAFBwN/fAEEBQQAQtwIgBigC9AQhDiAGKALwBEUNASAOIQMMCQsgDBClICEIAkACQAJAAkACQAJAIAwQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBD0YNAQsgBkH4BGogDBCAECAGQShqIAwQ6hMgBkHY2t8ANgL0BCAGQTQ6APAEIAYoAiggBigCLCAGQfAEahDrFCEDIAwQyA0iBEUNCyAEKAIAQSRGDQEMCwsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZB/ARqIAFB1AJqKQIANwIAIAZBhAVqIAFB3AJqKAIANgIAIAYgASkCzAI3AvQEIAYgAzYC8AQgBkHwBGoiAxC+CiADIAEQzQQgBigC+AQhAyAGKQPwBCIlUA0DIAYgBigC/AQiBzYCpAEgBiADNgKgASAGICU3A5gBIAEtAKACQQJHDQIgAS0AqgIhCSAGQagBaiABEJwDQQEhBCAGQQE6AMsEIAYgASkAqwI3AMwEIAYgASkAswI3ANQEIAYgASkAuwI3ANwEIAYgASgAwwI2AOQEIAZB0AFqIg4gBkHLBGoQyAgCQAJAAkAgDhDIDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUEaRg0BCyAGQfgEaiAOEIAQIAZBgNvfADYC9AQgBkE0OgDwBCAGQcAEaiAGQYgEaiAGKALwA0ElRiICGygCACIFIAZBxARqIAZBjARqIAIbKAIAIgIgAiAFSxsgBSACIAIgBUkbIAZB8ARqEOsUIQUgDhDIDSIORQ0BIA4oAgBBJEcNASAGIAYpA4gENwPABCAGKALwAyAGQSU2AvADQSRHDQggBkGoAWogBigC9AMQ+wsMAQsgBkH8BGogBkH8A2opAgA3AgAgBkGEBWogBkGEBGooAgA2AgAgBigC8AMhBCAGQSU2AvADIAYgBikC9AM3AvQEIAYgBDYC8AQgBiAGKQOIBDcDwAQgBkHwBGoQvgogBkEwaiAGQagBahDWASAGIAYoAjQiBTYC9AQgBiAGKAIwIgQ2AvAEIAYtAO0DQQFxDQAgDhDIDSIORQ0AIA4oAgBBF0cNACAGQfQEaiEFAkAgBEUEQCAFELcFDAELIAUQ5CILQQAhBUEAIQQLIAYgBTYC7AQgBiAENgLoBCAEQQEgBRtFDQEgBEEBcQRAIAZB7ARqEOQiCyAGQagBahDLEEEAIQUMAgsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ+wsMCQsgBkHwBGoiBCAGQagBakGgAxD2BhogARDLECABIARBoAMQ9gYhBCAGIAk6AGAgBiAEKQCrAjcAYSAGIAQpALMCNwBpIAYgBCkAuwI3AHEgBiAEKADDAjYAeSAMIAZB4ABqEMgICyAGQfAAaiAGQZgBahCDHCAGQY8BakEANgAAIAZBADYCjAEgBiAFNgKIASAGIAc2AmwgBiADNgJoIAYgCCABKAKcAyIBIAEgCEkbNgJkIAYgCCABIAEgCEsbNgJgIAZBrAFqIAZB4ABqQTgQ9gYaIAZB8ARqQQRyIAZBqAFqQTwQ9gYaQQwMCAsMBgsgBkEYaiEYQQAhAyMAQcAMayICJAAgAUEoaiIHEKUgIQQCQCAHEMgNIgVFBEAgASgCgAIhAyACQQA6APAIIAMgAyACQfAIahDrFCEDQQEhBQwBCwJAAkAgAgJ/AkACQCACAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAFKAIAIghBCWsODAEgAiAYICAgFyAgBgALAkACQCAIQRtrDgoYIRgYISEhISEAAQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0hQbnj4ABBKEHQ498AENoXAAsgCEECRw0fQQQgBS0ACEECa0H/AXEiAyADQQRPG0EBaw4EBxYWBwYLIAcQpSAhBQJAIAcQyA0iAwRAIAMoAgBBCUYNAQsgAkH4CGogBxCAECACQYABaiAHEOoTIAJB+N3fADYC9AggAkE0OgDwCCACKAKAASACKAKEASACQfAIahDrFCEDIAcQyA0iBEUNHSAEKAIAQSRHDR0gASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ+wsMHQsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFB1AJqKQIANwIAIAJBhAlqIAFB3AJqKAIANgIAIAIgASkCzAI3AvQIIAIgAzYC8AggAkHwCGoQvgogAkGQAWogARCTAiACKAKUASEDIAIoApABDRwgAiADNgKwBQJAIAcQyA0iBARAIAQoAgBBCkYNAQsgAkH4CGogBxCAECACQYgBaiAHEOoTIAJB0N3fADYC9AggAkE0OgDwCCACKAKIASACKAKMASACQfAIahDrFCEDIAcQyA0iBEUNHCAEKAIAQSRHDRwgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ+wsMHAsgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFBzAJqIgRBCGopAgA3AgAgAkGECWogBEEQaigCADYCACACIAQpAgA3AvQIIAIgCDYC8AggAkHwCGoQvgogBSABKAKcAyIIIAUgCEkbIQQgAw0BIAQhAwwcCyAHEKUgIRECQAJAIAcQyA0iBARAIAQoAgBBC0YNAQsgAkH4CGogBxCAECACQaABaiAHEOoTIAJByN7fADYC9AggAkE0OgDwCCACKAKgASACKAKkASACQfAIahDrFCEFIAcQyA0iA0UNGiADKAIAQSRHDRogASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ+wsMGgsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFB1AJqKQIANwIAIAJBhAlqIAFB3AJqKAIANgIAIAIgASkCzAI3AvQIIAIgBDYC8AggAkHwCGoiBBC+CiACQQA2AsQEIAJCgICAgIABNwK8BCABQcwCaiELIARBBHIhCiACQZAFaiENIAJB+AhqIRkgAkHoAmpBBHIhHSACQfACaiEeIAJBpQxqIRogAkGFCWohGyACQZAMakEEciEcIAJB/AdqIQ8gAkHYBWohEiACQZQIaiEfIAJBzAhqISAgAkGQCGohISACQcgIaiEiA0ACQCACQfAIaiABQQIQyQgCQAJAIAItAPAIDQAgAi0A8QhBAUYEQCACKALEBCEJIAIoAsAEIQgMHQsgBxClIBogBxClICEIAkAgAS0AoAJBAkcEQCACQQc2AogFDAELIAEtAKoCISMgAkGwBWogARCcAyACQQE6ANMIIAIgASkAqwI3ANQIIAIgASkAswI3ANwIIAIgASkAuwI3AOQIIAIgASgAwwI2AOwIIBIgAkHTCGoQyAhBACEFIBIQpSAhBAJAIBIQyA0iCUUNACAJKAIAQQdHDQAgCiAPKQIANwIAIApBCGogD0EIaikCADcCACAKQRBqIA9BEGooAgA2AgAgAigC+AchBSACQSU2AvgHIAIgBTYC8AggAiACKQOQCDcDyAggAkHwCGoQvgpBASEFIAIoAswIIRAgAigCyAghFAsgAkGwDGoiCSACQbAFahDNBCACQfAIaiITIAkQ8x4gAigC8AghCQJAAkACQCACLQCECSIkQQJHBEAgHCAKKQIANwIAIBogGy8AADsAACAcQQhqIApBCGoiFykCADcCACAaQQJqIBtBAmotAAA6AAAgAiAkOgCkDCACIAk2ApAMAkAgEhDIDSIJRQ0AIAkoAgBBF0cNACAKIA8pAgA3AgAgFyAPQQhqKQIANwIAIApBEGogD0EQaigCADYCACACKAL4ByEJIAJBJTYC+AcgAiAJNgLwCCACIAIpA5AINwPICCATEL4KIAJBAToApAwgAiACKAKYDCIJIAIoAswIIhMgCSATSRs2ApgMIAIgCSATIAkgE0sbNgKcDAsgAgJ/AkACQAJAIBIQyA0iCQRAIAkoAgBBE0YNAQsgGSASEIAQIAJBqNjfADYC9AggAkE0OgDwCCAiICEgAigC+AdBJUYiBRsoAgAiBCAgIB8gBRsoAgAiBSAEIAVJGyAEIAUgBCAFSxsgAkHwCGoQ6xQhBCASEMgNIgVFDQYgBSgCAEEkRg0BDAYLIAogDykCADcCACAXIA9BCGopAgA3AgAgCkEQaiAPQRBqKAIANgIAIAIoAvgHIQkgAkElNgL4ByACIAk2AvAIIAIgAikDkAg3A8gIIAJB8AhqIgkQvgogBUUNASACKALMCCEFIBkgAkGQDGoQ0RggAkEANgLwCCAJEP8pIQkgAkEANgKAAyACIBA2AvwCIAIgFDYC+AIgAiAEIAUgBCAFSxs2AvQCIAIgBCAFIAQgBUkbNgLwAiACIAk2AuwCQQIMAgsgAiACKQOQCDcDyAggAigC+AcgAkElNgL4B0EkRw0DIAJBsAVqIAIoAvwHEPsLDAQLIB4gAkGQDGoQ0RhBAAs2AugCIAJBiAVqIAJB6AJqQSgQ9gYaIAJB8AhqIgQgAkGwBWpBoAMQ9gYaIAEQyxAgASAEQaADEPYGIQQgAiAjOgCQDCACIAQpAKsCNwCRDCACIAQpALMCNwCZDCACIAQpALsCNwChDCACIAQoAMMCNgCpDCAHIAJBkAxqEMgIDAQLIAIgCTYC7AIgAkEINgLoAgwCC0G54+AAQShBkOvfABDaFwALIAJBCDYC6AIgAiAENgLsAiACKQOQDBDWGgsgAkEHNgKIBSAdEOQiIAJBsAVqEMsQCwJAAkACQAJ/AkAgBxDIDSIEBEAgBCgCAEEHRg0BCyACQbgBaiABEJMCIAIoArwBIQQgAigCuAFFDQMgBAwBCyAKIAspAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIApBCGogC0EIaikCADcCACAKQRBqIAtBEGooAgA2AgAgAiAENgLwCCACQfAIahC+CiACQcABaiABEJMCIAIoAsQBIRAgAigCwAFFDQEgEAshBSACQYgFahD0JEEIIQkgAyEEDAILIAJB8ARqIA1BCGopAwA3AwAgAkH4BGogDUEQaikDADcDACACQYAFaiANQRhqKQMANwMAIAIgDSkDADcD6AQgASgCnAMhAyACKAKMBSEFIAIoAogFIQlB2ABBCBCMICIEIAggAyADIAhJGyIVNgIMIAQgCCADIAMgCEsbIhY2AgggBCAQNgIEIARBCTYCAAwBCwJAIAcQyA0iAwRAIAMoAgBBF0YNAQsgAkHwBGogDUEIaikDADcDACACQfgEaiANQRBqKQMANwMAIAJBgAVqIA1BGGopAwA3AwAgAiANKQMANwPoBCAIIAEoApwDIgMgAyAISxshFiAIIAMgAyAISRshFSACKAKMBSEFIAIoAogFIQkMAQsgCiALKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAKQQhqIAtBCGopAgA3AgAgCkEQaiALQRBqKAIANgIAIAIgAzYC8AggAkHwCGoQvgogAkHwBGogDUEIaikDADcDACACQfgEaiANQRBqKQMANwMAIAJBgAVqIA1BGGopAwA3AwAgAiANKQMANwPoBCABKAKcAyEQIAIoAogFIQkgAigCjAUhBUHYAEEIEIwgIgMgCCAQIAggEEsbIhU2AgwgAyAIIBAgCCAQSRsiFjYCCCADIAQ2AgQgA0EINgIAIAMhBAsgCUEIRg0bIAJB4ARqIhAgAkGABWopAwA3AwAgAkHYBGoiFCACQfgEaikDADcDACACQdAEaiIXIAJB8ARqKQMANwMAIAIgAikD6AQ3A8gEIAIoAsQEIhMgAigCvARGBEAgAkG8BGoQ9xYLIAIoAsAEIgggE0E4bGoiAyAFNgIEIAMgCTYCACADIAIpA8gENwIIIAMgBDYCMCADIBU2AiwgAyAWNgIoIANBEGogFykDADcCACADQRhqIBQpAwA3AgAgA0EgaiAQKQMANwIAIAIgE0EBaiIJNgLEBAJAIAcQyA0iAwRAIAMoAgBBEEYNAQsgAkHwCGogAUECEMkIIAItAPAIDQEgAi0A8QgNHSAHEMgNIgMEQCADKAIAQRBGDQMLIAJB+AhqIAcQgBAgAkGwAWogBxDqEyACQdi84AA2AvQIIAJBNDoA8AggAigCsAEgAigCtAEgAkHwCGoQ6xQhBSAHEMgNIgNFDRwgAygCAEEkRw0cIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEPsLDBwLIAogCykCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgCkEIaiALQQhqKQIANwIAIApBEGogC0EQaigCADYCACACIAM2AvAIIAJB8AhqEL4KIAQhAwwDCyACKAL0CCEFDBoLIAogCykCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgCkEIaiALQQhqKQIANwIAIApBEGogC0EQaigCADYCACACIAM2AvAIIAJB8AhqEL4KIAQhAwwBCwtBuePgAEEoQZjq3wAQ2hcAC0G54+AAQShBoOPfABDaFwALIAIgBSAIIAUgCEsbNgL8CCACIAQ2AvgIIAIgAzYC9AhBDQwbC0G54+AAQShBoOjfABDaFwALQbnj4ABBKEGQ6N8AENoXAAsgBS0ABEEMRw0ZIAcQpSAhBCACQfwIaiABQdQCaikCADcCACACQYQJaiABQdwCaigCADYCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAiABKQLMAjcC9AggAiADNgLwCCACQfAIaiIFEL4KIAcQyA0iA0UEQCABKAKAAiEDIAJBADoA8AggAyADIAUQ6xQhA0EBIQUMHAsCQAJAAkACQCADKAIAIgNBHWtBAk8EQCADQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0gQbnj4ABBKEHg498AENoXAAsgAkH8CGogBxCAECACQagCaiAHEOoTIAJBITYC+AggAkHw498ANgL0CCACQTA6APAIIAIoAqgCIAIoAqwCIAJB8AhqEOsUIQNBASEFIAcQyA0iBEUNICAEKAIAQSRHDSAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ+wsMIAsgAkHwCGogARDEAiACKALwCCIDQQdGDQsgAigCiAkhCCACKQOACSElIAIoAvwIIQcgAigC+AghCgJAAkACQCADQQNrDgIBAgALQbnj4ABBKEHE5N8AENoXAAsgAjUCjAkhJiACICU3A+ACIAJBsAVqIgNB+NrgAEEBELYVAnwgCK0gJkIghoQiJlBFBEAgAiAmNwPwCCACQbACaiACQfAIahCRDCADIAIoArACIAIoArQCENYdIAIpA/AIENYaICW/DAELIAJBATYC9AggAkGo7uAANgLwCCACQgE3AvwIIAJB9AE2AuwCIAIgAkHoAmo2AvgIIAIgAkHgAmo2AugCIAJBsAVqIAJB8AhqEO0kDQMgAisD4AILIAJB+AhqIAJBuAVqKAIANgIAIAIgAikCsAU3A/AIIAJB8AhqEIsZIiZCgICAgHCDISWaIScgJqchCEGAgICAeCEJDAQLIAIgCDYCiAUgAkGwBWoiA0H42uAAQQEQthUCQCAlUEUEQCACICU3A/AIIAJBuAJqIAJB8AhqEJEMIAMgAigCuAIgAigCvAIQ1h0gAikD8AgQ1hoMAQsgAkEBNgL0CCACQaju4AA2AvAIIAJCATcC/AggAkG4AjYC7AIgAiACQegCajYC+AggAiACQYgFajYC6AIgAkGwBWogAkHwCGoQ7SQNAyACKAKIBSEICyACQfgIaiIDIAhBCGooAgA2AgAgAkHqAmoiBSAIQQ9qLQAAOgAAIAIgCCkCADcD8AggAiAILwANOwHoAiAILQAMIQlBEEEEEIwgIghBAiAJazoADCAIQQhqIAMoAgA2AgAgCCACKQPwCDcCACAIIAIvAegCOwANIAhBD2ogBS0AADoAACADIAJBuAVqKAIANgIAIAIgAikCsAU3A/AIIAJB8AhqEIsZIAIoAogFEPYqvyEnQgAhJUGDgICAeCEJDAMLQbnj4ABBKEGU5N8AENoXAAtB9OHgAEErIAJB8AhqQeDd2ABBpOTfABDADgALQfTh4ABBKyACQfAIakHg3dgAQbTk3wAQwA4ACyABKAKcAyEFQdgAQQgQjCAiAyAlIAithDcDICADICc5AxggAyAHNgIUIAMgCjYCECADIAk2AgggA0ERNgIAIAMgBCAFIAQgBUsbNgIsIAMgBCAFIAQgBUkbNgIoDAkLAkAgBS0ACSIDQRdrDgsEGRkZGQIBGRkDAQALIANBAk8NGAsCQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRRHDQAgBxCPEyIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUEXRg0ECyAHEMgNIgNFDQQgAygCAEECRw0EIAMtAAhBAkcNBCADLQAJQSFHDQRBCCEFDA0LIAJB6AJqIgMgARDeASACAn8gAi0AnANBBEcEQCACQbQFaiADQcAAEPYGGiACQfAIakEEciACQbAFakHEABD2BhpBEwwBCyACIAIoAugCNgL0CEEUCzYC8AggAkEwaiACQfAIahD8FyACKAI0IQMgAigCMCEFDBgLIAcQpSAhCAJAAkACQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQSBGDQELIAJB+AhqIAcQgBAgAkFAayAHEOoTIAJBmNzfADYC9AggAkE0OgDwCCACKAJAIAIoAkQgAkHwCGoQ6xQhAyAHEMgNIgRFDQEgBCgCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCCABIAEoAswCEPsLDAELIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQfwIaiABQdQCaikCADcCACACQYQJaiABQdwCaigCADYCACACIAEpAswCNwL0CCACIAM2AvAIIAJB8AhqEL4KAkACQAJAIAcQyA0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBHEYNAQsgAkHwCGogAUEBENICIAIoAvAIIQMgAi0AhAlBA0YNAiACQcQFaiACQYQJaigCADYCACACQbwFaiACQfwIaikCADcCACACIAIpAvQINwK0BUEEIQQMAQsgAkHwCGoiBSABEN4BIAIoAvAIIQMgAi0ApAkiBEEERg0BIAJBsAVqQQRyIAVBBHJBMBD2BhogAkHsBWogAkGsCWooAAA2AAAgAiACKQClCTcA5QULIAIgBDoA5AUgAiADNgKwBUEAIQMCQAJAIAcQ6yANACAHEMgNIgVFDQAgBSgCAEEURw0AIAUtAARBBEcNACACQQA6APUCIAIgAS0AtgI6APQCIAIgAS0AxgI6AIQDIAIgASkBqgI3AOgCIAIgASkDuAI3APYCIAIgASgCwAI2AP4CIAIgAS8BxAI7AIIDIAIgAUGyAmoiAygBADYA8AIgAkGJCWogAUG/AmopAAA3AAAgAkGECWogAUG6AmopAQA3AgAgAkH8CGogAykBADcCACACIAEpAaoCNwL0CCAHIAJB6AJqEMgIIAIgATYC8AggAkHIAGogARDuASACKAJMIQMgAigCSCACQfAIahDvJA0BIAItAOQFIQQLIAEoApwDIQcgAkG4A2ogAkGwBWpBNBD2BhogAiACQewFaigAADYArwMgAiACKQDlBTcDqAMgCCAHIAcgCEsbIQUgBEH/AXFBBUcNCSAFIQMMAQsgAkGwBWoQwSELIAIgAzYC9AhBFCEHDAoLIAcQpSAhCCACQfAIaiIJIAEQywcgAigC8AgNAiACKAL4CCEEIAIoAvQIIQUgBxDrIA0DIAcQyA0iA0UNAyADKAIAQQJHDQMgAy0ACA0DIAMtAAlBDkcNAyACQegCaiIDIAEgCEEAIAUgBBCBCCACAn8gAi0AjANBAkcEQCACQbQFaiADQSgQ9gYaIAlBBHIgAkGwBWpBLBD2BhpBEgwBCyACIAIoAugCNgL0CEEUCzYC8AggAkEoaiACQfAIahD8FyACKAIsIQMgAigCKCEFDBYLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQfwIaiABQdQCaikCADcCACACQYQJaiABQdwCaigCADYCACACIAEpAswCNwL0CCACIAM2AvAIIAJB8AhqIgMQvgogAyABEMsHIAIoAvAIDQEgAkHoAmoiBSABIARBASACKAL0CCACKAL4CBCBCCACAn8gAi0AjANBAkcEQCACQbQFaiAFQSgQ9gYaIANBBHIgAkGwBWpBLBD2BhpBEgwBCyACIAIoAugCNgL0CEEUCzYC8AggAkEgaiACQfAIahD8FyACKAIkIQMgAigCICEFDBULIAcQyA0iAw0FDAYLIAIoAvQIIQNBASEFDBMLQdgAQQgQjCAiAyAENgIIIAMgBTYCBCADQQE2AgALQQAhBQwRC0G54+AAQShBsNzfABDaFwALIAIgCCAHIAcgCEkbNgL8CCACIAU2AvgIIAJBgAlqIAJBuANqQTQQ9gYaIAJBvAlqIAIoAK8DNgAAIAIgBDoAtAkgAiADNgLACSACIAIpA6gDNwC1CUEEIQcMAgsgAygCAEECRw0AIAMtAAhBA0cNAEEKIQUMAgsCQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRhHDQBBACEFDAILAkAgBxDIDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEfRw0AQQQhBQwCCwJAIAcQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBHkcNAEEFIQUMAgsCQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQSBHDQBBCyEFDAILAkAgBxDIDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEdRw0AQQIhBQwCCwJAIAcQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBHEcNAEEDIQUMAgsCQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRtHDQBBBiEFDAILAkAgBxDIDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEQRw0AQQchBQwCCwJAIAcQyA0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBGkcNAEEBIQUMAgsCQCAHEMgNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRFHDQBBCSEFDAILQQ0hBSAHEMgNIgNFDQEgAygCAEECRw0BIAMtAAgNAUEMQQ0gAy0ACUEZRhshBQwBCyACIAc2AvAIIAJBOGogAkHwCGoQ/BcgAigCPCEDIAIoAjghBQwMCyAHEI8TIgMEfyADKAIAQQZGBUEAC0UgBUENR3FFBEAgBxClICEFIAJB8AhqIgQgARD8BwJAAkAgAi0A8AhFBEAgAi0A8QggBCABQQEQ0gIgAigC8AghAyACLQCECSIIQQNGDQEgAkH0AmogAkH8CGoiCikCADcCACACQf8CaiACQYcJai0AADoAACACIAIpAvQINwLsAiACIAIvAIUJOwD9AiACIAg6APwCIAIgAzYC6AJBACEDAkAgBxDrIA0AIAcQyA0iCEUNACAIKAIAQRRHDQAgCC0ABEEERw0AIAJBADoAvQUgAiABLQC2AjoAvAUgAiABLQDGAjoAzAUgAiABKQGqAjcAsAUgAiABKQO4AjcAvgUgAiABKALAAjYAxgUgAiABLwHEAjsAygUgAiABQbICaiIDKAEANgC4BSACQYkJaiABQb8CaikAADcAACACQYQJaiABQboCaikBADcCACAKIAMpAQA3AgAgAiABKQGqAjcC9AggByACQbAFahDICCACIAE2AvAIIAJBGGogARDuASACKAIcIQMgAigCGCAEEO8kRQ0AIAJB6AJqELYbDAILQQFxBEAgASgCnAMhBCACQagBOgDwCCABIAUgBCAEIAVLGyAFIAQgBCAFSRsgAkHwCGoQqRkLIAJB0AJqIgkgAkHwAmopAwA3AwAgAkHYAmoiCiACQfgCaigCADYCACACQcYCaiILIAJB/QJqIgRBAmotAAA6AAAgAiACKQPoAjcDyAIgAiAELwAAOwHEAiAFIAEoApwDIgggBSAISRshBEEDIQcgAi0A/AIiDUEDRgRAIAQhAwwCCyACQYgJaiAJKQMANwMAIAJBkAlqIAooAgA2AgAgAkGXCWogCy0AADoAACACIAUgCCAFIAhLGzYC/AggAiAENgL4CCACIAIpA8gCNwOACSACIA06AJQJIAIgAi8BxAI7AJUJIAIgAzYCmAkMAgsgAigC9AghAwsgAiADNgL0CEEUIQcLIAIgBzYC8AggAkEQaiACQfAIahD8FyACKAIUIQMgAigCECEFDAwLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQfwIaiABQdQCaikCADcCACACQYQJaiABQdwCaigCADYCACACIAEpAswCNwL0CCACIAM2AvAIIAJB8AhqEL4KIAEoApwDIQhB2ABBCBCMICIDIAU6AAxBACEFIANBADYCACADIAQgCCAEIAhLGzYCCCADIAQgCCAEIAhJGzYCBAwLCyAHEKUgIQogAgJ/AkACQAJAAkACQAJAAkAC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NwAAIAJB5ABqIANBEGopAQA3AgAgAkHcAGogA0EIaikBADcCACACIAMpAQA3AlQgCyACQeABahDACCACIAE2AlAgAkHAAmoiByABEKIqIAJBGGogBxDdGiACKAIcIQogAigCGCACQdAAahCKJkUEQCACIAo2AkwgAS0AnANBAXENCiACQQA2AoQBIAJBxAJqIQkgB0EEciEMIAJBjAFqIQ8gAkGMAmohECABLQCeAyERIAEtAJ0DIRIgAS0AmwMhEyABLQCaAyEUIAEtAJkDIRUgAS0AmAMhFiABLQCXAyEXIAEtAJYDIRggAS0AlQMhGSABLQCUAyEaIAEtAJMDIRsgAS0AkgMhHCABLQCRAyEdIAEtAJADIR4gAS0AjwMhHyABLQCOAyEgIAEtAI0DISEgAS0AjAMhIiABLQCLAyEjIAEtAIoDISQgAS0AiQMhJSABLQCIAyEmIAEtAIcDIScgAS0AhgMhKCABLQCFAyEpIAEtAIQDISogAS0AgwMhKyABLQCCAyEsA0BBASENQRMhBSAEEOMNIgdFDQogBygCAEECRw0KIActAAhBAkcNCiAHLQAJQQhHDQogDCAGKQIANwIAIAEoAighCCABQSU2AiggASABKQNANwN4IAxBCGogBkEIaikCADcCACAMQRBqIAZBEGooAgA2AgAgAiAINgLAAiACQcACahC/CgJAAkAgBBDjDSIIRQ0AIAgoAgBBAkcNACAILQAIQQJHDQAgCC0ACUEMRg0BC0EAIQ0gAkEAOgDdASACIAEpAYIDNwDDASACIAEpAYoDNwDLASACIAEpAZIDNwDTASACIAEvAZoDOwDbASACIAEvAJ0DOwDeASACQfkBaiADQRVqKQAANwAAIAJB9AFqIANBEGopAQA3AgAgAkHsAWogA0EIaikBADcCACACIAMpAQA3AuQBIAsgAkHDAWoQwAggAiABNgLgASACQcACaiABEKIqIAIoAsQCIQggAigCwAIiBUETRwRAIAJBmAFqIAJByAJqQSgQ9gYaIAJB4AFqEIomDAwLIABBADYCACAAIAg2AgQgAkHgAWoQiiYMCgsgAiAROgD8ASACIBI6APsBIAJBAToA+gEgAiATOgD5ASACIBQ6APgBIAIgFToA9wEgAiAWOgD2ASACIBc6APUBIAIgGDoA9AEgAiAZOgDzASACIBo6APIBIAIgGzoA8QEgAiAcOgDwASACIB06AO8BIAIgHjoA7gEgAiAfOgDtASACICA6AOwBIAIgIToA6wEgAiAiOgDqASACICM6AOkBIAIgJDoA6AEgAiAlOgDnASACICY6AOYBIAIgJzoA5QEgAiAoOgDkASACICk6AOMBIAIgKjoA4gEgAiArOgDhASACICw6AOABIAlBFWogA0EVaikAADcAACAJQRBqIANBEGopAQA3AQAgCUEIaiADQQhqKQEANwEAIAkgAykBADcBACALIAJB4AFqEMAIIAIgATYCwAIgAkGEAmogARCBASACKAKIAiEHIAIoAoQCIghFDQYgAkGgAmoiDSAQQQhqKAIANgIAIAIgECkCADcDmAIgAkHAAmoQiiYgAigChAEEQEEwQQgQjCAiBSAHNgIIIAUgCDYCBCAFQQg2AgAgBSACKQOYAjcCDCAFQRRqIA0oAgA2AgAgASgCfCACQYQBaiAFEMgSBSACQYQBahD4JyAPIAIpA5gCNwIAIA9BCGogDSgCADYCACACIAc2AogBIAIgCDYChAELDAALAAsgAEEANgIAIAAgCjYCBAwLCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBCABIAEoAiwQggwMCQsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQQgASABKAIsEIIMDAoLQbnj4ABBKEG4luAAENoXAAsgAygCBCEBIAMoAgBBBEEEEIwgIgYgAzYCACACIAY2AuwBIAJBMDYC9AEgAkHoluAANgLwASACIAU2AugBIAIgCTYC5AEgAkG4AToA4AEgASACQeABahDrFCEBIABBADYCACAAIAE2AgQgAkHQAGoQiiYgAkHAAmoQiiYMCQsgAEEANgIAIAAgBzYCBCACQcACahCKJgwCC0G54+AAQShByJbgABDaFwALQbnj4ABBKEHYluAAENoXAAsgAkGEAWoQ+CcgAkHMAGoQ0QYMAwsCQCACKAKEAQRAIAJBuAJqIgMgAkGUAWooAgA2AgAgAkGwAmoiBiACQYwBaikCADcDACACIAIpAoQBNwOoAiANRQRAQTBBCBCMICIEIAg2AgQgBCAFNgIAIARBCGogAkGYAWpBKBD2BhogASgCfCACQagCaiAEEMgSCyACQeQAaiADKAIANgIAIAJBCDYCUCACQdwAaiAGKQMANwIA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QQE2AiwgA0EsahD8IwsgASgCeCEEIAEoAnwhCCADQfYAOgCoASABIAggBCAIIAxGGyAEIAQgEEYbIAggA0GoAWoQvBkLIAINAiAJEOMNIgINAQwCCyADQSxqEIomIANBIGoQ2SZBASEFDAILAkACQCACKAIAQQ5rDgICAAELIAEoAighAiABQSU2AiggASABKQNANwN4IANBtAFqIAVBCGopAgA3AgAgA0G8AWogBUEQaigCADYCACADIAUpAgA3AqwBIAMgAjYCqAEgA0GoAWoQvwoMAQsgCRCbIQ0AIANBCGogCRCfFCADKAIMIQIgAygCCCEEIANB9QA6AKgBIAEgBCACIANBqAFqELwZIAMgARCMBiADIAMoAgQ2AqwBIAMgAygCACIENgKoASADQawBaiECAkAgBEUEQCACEJgpDAELIAIQgCMLIANBqAFqQQRyIQIDQCAJEOMNIgRFDQECQAJAIAQoAgBBDmsOAgMAAQsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0G0AWogBUEIaikCADcCACADQbwBaiAFQRBqKAIANgIAIAMgBSkCADcCrAEgAyACNgKoASADQagBahC/CgwCCyAJEJshDQEgAiAFKQIANwIAIAEoAighBCABQSU2AiggASABKQNANwN4IAJBCGogBUEIaikCADcCACACQRBqIAVBEGooAgA2AgAgAyAENgKoASADQagBahC/CiAJEOMNIgRFDQAgBCgCAEEkRw0ACwsgASgCfCEBIANBugFqQgA3AQAgA0IANwK0ASADQoCAgICAATcCqAFBACEFIANBADYCsAFBHEEEEIwgIgQgCzoAGSAEQQA6ABggBEEANgIUIAQgByABIAEgB0kbNgIQIAQgByABIAEgB0sbNgIMIARBCGogA0EoaigCADYCACAEIAMpAiA3AgAgA0GoAWoQ2SYLIAAgBDYCBCAAIAU2AgAgA0HQBGokAAuLFgErfyMAQdAEayIDJAAgAUEoaiIHEKUgIQggA0G8AWogAUHUAmopAgA3AgAgA0HEAWogAUHcAmooAgA2AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAMgASkCzAI3ArQBIAMgBDYCsAECQAJAAkACQAJAAkACQAJAIARBAkcNACADLQC4AUECRw0AIAMtALkBQRFrIgtB/wFx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aiANQQhqKQMANwMAIAJB+ARqIA1BEGopAwA3AwAgAkGABWogDUEYaikDADcDACACIA0pAwA3A+gEIAYgASgCfCIDIAMgBksbIRYgBiADIAMgBkkbIRUgAigCjAUhBSACKAKIBSEJDAELIAogCykCADcCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAKQQhqIAtBCGopAgA3AgAgCkEQaiALQRBqKAIANgIAIAIgAzYC+AggAkH4CGoQvwogAkHwBGogDUEIaikDADcDACACQfgEaiANQRBqKQMANwMAIAJBgAVqIA1BGGopAwA3AwAgAiANKQMANwPoBCABKAJ8IRAgAigCiAUhCSACKAKMBSEFQdgAQQgQjCAiAyAGIBAgBiAQSxsiFTYCDCADIAYgECAGIBBJGyIWNgIIIAMgBDYCBCADQQg2AgAgAyEECyAJQQhGDRsgAkHgBGoiECACQYAFaikDADcDACACQdgEaiIUIAJB+ARqKQMANwMAIAJB0ARqIhcgAkHwBGopAwA3AwAgAiACKQPoBDcDyAQgAigCxAQiEyACKAK8BEYEQCACQbwEahD3FgsgAigCwAQiBiATQThsaiIDIAU2AgQgAyAJNgIAIAMgAikDyAQ3AgggAyAENgIwIAMgFTYCLCADIBY2AiggA0EQaiAXKQMANwIAIANBGGogFCkDADcCACADQSBqIBApAwA3AgAgAiATQQFqIgk2AsQEAkAgBxDjDSIDBEAgAygCAEEQRg0BCyACQfgIaiABQQIQzQggAi0A+AgNASACLQD5CA0dIAcQ4w0iAwRAIAMoAgBBEEYNAwsgAkGACWogBxDmCyACQbABaiAHEJ8UIAJB2LzgADYC/AggAkE0OgD4CCACKAKwASACKAK0ASACQfgIahDrFCEFIAcQ4w0iA0UNHCADKAIAQSRHDRwgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIIMDBwLIAogCykCADcCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAKQQhqIAtBCGopAgA3AgAgCkEQaiALQRBqKAIANgIAIAIgAzYC+AggAkH4CGoQvwogBCEDDAMLIAIoAvwIIQUMGgsgCiALKQIANwIAIAEoAighAyABQSU2AiggASABKQNANwN4IApBCGogC0EIaikCADcCACAK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4+AAQShBvO/fABDaFwALIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQeQBaiABQdQCaikCADcCACANQewBaiABQdwCaigCADYCACANIAEpAswCNwLcASANIAQ2AtgBIA1B2AFqEL4KIA1BEGogARCyBiANKAIUIQUgDSgCEEUNAwsgDUGgAWogDUHUAWogAEENNgIAIAAgBTYCBAJAIA0oAoABQQVGBEAgDSkDiAEQ1hoMAQsgDUGAAWoQhhYLEOAmENcmDAMLIABBDTYCACAAIAs2AgQLIAUQ8CAgAxDXJgwCCwJAIAIQyA0iBEUNAAJAAkAgBCgCAEEOaw4CAgABCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgDUHkAWogAUHUAmopAgA3AgAgDUHsAWogAUHcAmooAgA2AgAgDSABKQLMAjcC3AEgDSACNgLYASANQdgBahC+CgwBCyACEOsgDQAgDUEIaiACEOoTIA0oAgwhAiANKAIIIQQgDUH1ADoA2AEgASAEIAIgDUHYAWoQqRkLIAcoAgBFBEACfwJAAkACQAJAIA0oAoABQQVGBEBBAyEEQQghCCANQYgBaiEDIA0oApQBIQogDS0AN0EDRw0BDAQLIA0oAjAiAiABKAKcAyIDIAIgA0kbIQYgAiADIAIgA0sbIQIgDS0APCEDIA0oApwBIQ4gDSgCmAEhByANKAKUASEMIA0oApABIQkgDSgCjAEhCiAFRQ0CIANBAXENAQwCCyABKAKcAyECIA0oAjAhBCANQbUBOgDYASABIAQgAiACIARLGyICIAogAiAKSRsgAiAKIAIgCksbIA1B2AFqEKkZIA0tADchBAwCCyANQaIBOgDYASABIAYgAiANQdgBahCpGSANLQA8IQMLIA1B5AFqIA1BiAFqKAIANgIAIA0gDSkDgAE3AtwBIAVBEHYhEkEHIQggDS0APiETIA0tADshFCANLQA6IRUgDS0APSEWIA0tADkhFyANLQA3IRggDS0AqwEhDyANLQCqASEQIA0tAKkBIREgDS0AqAEhBCANKQOgASEaIA0tADghGSAFQQh2DAELIA1B5AFqIANBCGooAgA2AgAgDSADKQIANwLcASANKAIwIgMgASgCnAMiASABIANLGyEJIAMgASABIANJGyEMQQAhByANLQA9IQ8gDS0A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6AFBAUYEQCACQQhqIAIoAuwBQQRBEBDnFEEAIQQgAkEANgLgASACIAIoAgwiADYC3AEgAiACKAIIIgU2AtgBIAJBuAFqIAYQkhAgAigCvAFBAUYEQCAFIAIoAsABIgVJBEAgAkHYAWpBACAFQQRBEBCtFyACKALgASEEIAIoAtwBIQALIAJB+ABqQQRyIQUgAkHoAGohBiAAIARBBHRqIQADQCACIAM2ArgBIAMEQCAAQQA2AgAgAEEMaiADNgIAIABBEGohACAEQQFqIQRBACEDDAELCyACQQA2AuQBIAJBuAFqEOwnIAJB5AFqEOwnIAJBwAFqIAZBCGopAgA3AwAgAiAGKQIANwO4ASAEIAIoAsQBIgQgAigCvAEiA2tBAnZqIQYDQCADIARGDQQgAEEMaiADKAIANgIAIABBADYCACAAQRBqIQAgA0EEaiEDDAALAAsgAkEANgLIASACQQE2ArwBIAJB7MHfADYCuAEgAkIENwLAASACQbgBakHkwt8AEKEdAAsgAkEANgLIASACQQE2ArwBIAJB7MHfADYCuAEgAkIENwLAASACQbgBakHUwt8AEKEdAAsgAiAGNgLMASACIAc2AsgBIAIgADYCxAEgAiAANgLAASACIAQ2ArwBIAJBATYCuAEgAkHgAGogAkG4AWoiABCSECACKAJkQQFGBEAgAiACKAJoQQRBBBDnFCACQQA2AuwBIAIgAikDADcC5AEgAkH4AGogABCSECACKAJ8QQFGBEAgAkHAAWohBSACQeQBaiACKAKAARDwHiACKALoASACKALsASIEQQJ0aiEAA0AgAiADNgJ4IAMEQCAAIAM2AgAgAEEEaiEAIARBAWohBEEAIQMMAQsLIAJBADYCYCACQfgAahDsJyACQeAAahDsJyACQYABaiAFQQhqKQIANwMAIAIgBSkCADcDeCAEIAIoAoQBIgQgAigCfCIDa0ECdmohBQNAIAMgBEZFBEAgACADKAIANgIAIABBBGohACADQQRqIQMMAQsLIAIgBTYC7AEgAiADNgJ8IAJB+ABqEMoXIAIpAugBIQggAigC5AEhAEEZDAMLIAJBADYCiAEgAkEBNgJ8IAJB7MHfADYCeCACQgQ3AoABIAJB+ABqQeTC3wAQoR0ACyACQQA2AogBIAJBATYCfCACQezB3wA2AnggAkIENwKAASAC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aiADQeADaigCADYCAAwBCyADQdgDahDAJCAAQYeAgIB4NgIACyADQZASaiQAC6URAQh/IwBB8ABrIgMkAAJAAkACQAJAAkACQAJAA0ACQAJAAkACQAJAIAIoAgBBAWsOBwEGAAIDCAQACyADQQE6AFQgA0EANgJQIANCgICAgBA3AkggACADQcgAahDTGQwLCyACKAIEIQQgA0EIaiACKAIIIgJBAUEBEOcUIAMoAgghBiADKAIMIAQgAhD2BiEEIANBAToAVCADIAI2AlAgAyAENgJMIAMgBjYCSCADQShqIgIgA0HIAGoQ0xkgASgCCCABLQAQIAIQ4SAgAEEIaiADQTBqKAIANgIAIAAgAykCKDcCAAwKCyADQRxqIAEgAigCDBCXASACKAIEIQYgAigCECIERQRAIAItABQCQCAGBEAgAigCCEEBRg0BCyADQRxqEK4XC0EAIQIgA0EANgJQIANCgICAgBA3AkggA0EBOgBUIANBKGogA0HIAGoQ0xlBAXENBQNAIAJBDEYNBiADQRxqIAJqIgQoAgAhBiAEIANBKGogAmoiBCgCADYCACAEIAY2AgAgAkEEaiECDAALAAsgBCABKAIEIgcgBCAHSRshBQJAIAZFDQAgBCACKAIIRw0AIANBAToAVCADQQA2AlAgA0KAgICAEDcCSCADQTxqIANByABqENMZA0ACQCAFRQ0AIANBPGoiBhDoDw0AIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANByABqIgIgA0EcahDBCSAGIAEgA0EoaiACEPYBIAVBAWshBSACELkkDAELCyAEIAdNDQkgA0E8ahCuFwwJCyADQQE6AFQgA0EANgJQIANCgICAgBA3AkggA0E8aiADQcgAahDTGQNAIAVFDQggA0E8aiIEEOgPDQggA0EwaiADQcQAaigCADYCACADIAMpAjw3AyggA0HIAGoiAiADQRxqEMEJIAQgASADQShqIAIQ9gEgBUEBayEFIAIQuSQMAAsACyACKAIEIQIMAQsLIAIoAgxBHGwhBSABLQAQIQggASgCDCEKIAIoAgghB0EEIQRBACECA0AgBUUgAkGAgICAeEZyRQRAIAMgBjYCMCADIAQ2AiwgAyACNgIoIANByABqIgkgASAHEJcBIANBPGogCiAIIANBKGogCRCBBiAFQRxrIQUgB0EcaiEHIAMoAjwhAiADKAJAIQQgAygCRCEGIAkQuSQMAQsLIAAgBjYCCCAAIAQ2AgQgACACNgIADAYLIAIoAgQNAiACKAIMIgQgAigCEEEDdCIFaiEIIAEoAgAhBiAEIQICQANAIAUEQCAGIAdJDQIgBUEIayEFIAIoAgQgAigCAGsgB2pBAWohByACQQhqIQIMAQsLIAYgB0kNACADQQA2AiQgA0KAgICAwAA3AhwDQCAEIAhGBEAgASgCCCABLQAQIANBHGoQ4SAgAEEIaiADQSRqKAIANgIAIAAgAykCHDcCAAwIBSAEQQhqIAQoAgQhByAEKAIAIQJBACEFAkADQCAFQQFxIAIgB0tyDQEgA0EANgI4IANBEGogAiADQThqENkJIAMoAhQhBCADKAIQIANBADYCRCADQoCAgIAQNwI8IANBAzoAaCADQSA2AlggA0EANgJkIANBxK/EADYCYCADQQA2AlAgA0EANgJIIAMgA0E8ajYCXCAEIANByABqENcqRQRAIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANBAToANCACQYDAAyACQQFqIAJB/68DRhsgAiAHTyIFGyECIANBHGogA0EoahD+DgwBCwtB3LXgAEE3IANBKGpB3K/EAEHgtuAAEMAOAAshBAwBCwALAAsgAEGAgICAeDYCAAwFCyADQdAAaiADQSRqKAIANgIAIAMgAykCHDcDSCAAIAEoAgwgAS0AECADQcgAaiADQShqIgAQgQYgABC5JAwECyACKAIMIQQgAigCCCEFIAEtABBFBEAgA0EBOgBUIANBADYCUCADQoCAgIAQNwJIIARBHGwhAiADQTxqIANByABqENMZA0ACQCACRQ0AIANBPGoiBhDoDw0AIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANByABqIgQgASAFEJcBIAYgASADQShqIAQQ9gEgAkEcayECIAVBHGohBSAEELkkDAELCyAAIAMpAjw3AgAgAEEIaiADQcQAaigCADYCAAwECyADQQE6AFQgA0EANgJQIANCgICAgBA3AkggBEEcbCECIAVBHGshBCADQTxqIANByABqENMZA0ACQCACRQ0AIANBPGoiBRDoDw0AIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANByABqIgYgASACIARqEJcBIAUgASADQShqIAYQ9gEgAkEcayECIAYQuSQMAQsLIAAgAykCPDcCACAAQQhqIANBxABqKAIANgIADAMLIAIoAgwiBiACKAIQQQF0IgVqIQggASgCACEEIAYhAgJAAkACQANAIAUEQCAEIAdJDQIgAi0AASIKIAItAAAiCUkNBCACQQJqIQIgBUECayEFIAogCWtB/wFxIAdqQQFqIQcMAQsLIAQgB0kNACADQQA2AjAgA0KAgICAwAA3AigMAQsgAEGAgICAeDYCAAwECwNAIAYgCEYEQCABKAIIIAEtABAgA0EoahDhICAAQQhqIANBMGooAgA2AgAgACADKQIoNwIADAUFIAYtAAEhBSAGLQAAIQJBACEEA0ACQCAEQQFxDQAgBSACQf8BcSIHSQ0AQQFBARCMICIEIAI6AAAgA0EBOgBUIANBATYCUCADIAQ2AkwgA0EBNgJIIAUgB00hBCACIAUgB0tqIQIgA0EoaiADQcgAahD+DgwBCwsgBkECaiEGDAELAAsAC0GErcQAELwpAAsgA0E8ahCuFwsgACADKQI8NwIAIABBCGogA0HEAGooAgA2AgAgA0EcahC5JAsgA0HwAGokAAvtEgIMfwF+IwBBsAFrIgIkACACQQA2AkhBASEFIAJBATYCPCACQdyPwAA2AjggAkIENwJAAkAgASgCFCABKAIYIAJBOGoQlSQNACAAKAIEIQMgAiAAKAIIIgw2AjAgAkEANgIsIAIgAzYCJCACIAMgDEEUbGo2AiggAkGEAWohCCAAKALcAiEKIAAoAtgCIQ0gASgCGCEDIAEoAhQhBCAAKALUAiELA0AgAkEYaiACQSRqEPsSIAIoAhwiBkUEQCACQQI2AjwgAkHsocAANgI4IAJCATcCRCACQQ42ApQBIAIgAEHgAmo2ApABIAIgAkGQAWoiCDYCQEEBIQUgBCADIAJBOGoQlSQNAiACQQI2AjwgAkGIosAANgI4IAJCATcCRCACQQ82ApQBIAIgACgCPCIBQQBHOgB4IAIgCDYCQCACIAJB+ABqIgo2ApABIAQgAyACQThqEJUkDQIgAkECNgI8IAJB+JTDADYCOCACQgE3AkQgAkEQNgKUASACIAw2AnggAiAINgJAIAIgCjYCkAEgBCADIAJBOGoQlSQNAiACQQI2AjwgAkGYlcMANgI4IAJCATcCRCACQRA2ApQBIAIgACgCOCIGNgJ4IAIgCDYCQCACIAo2ApABIAQgAyACQThqEJUkDQIgAkECNgI8IAJBtKLAADYCOCACQgE3AkQgAkEQNgKUASACIABByAJqNgKQASACIAg2AkAgBCADIAJBOGoQlSQNAiACQQI2AjwgAkHcosAANgI4IAJCATcCRCACQRA2ApQBIAIgAEHMAmo2ApABIAIgCDYCQCAEIAMgAkE4ahCVJA0CIAJBwKPAADYCOCACQgE3AkQgAkEQNgKUASAAKAJEIQkgACgCFCEHIAAoAiwhCyAAKAIgIQAgAkECNgI8IAIgB0EJbCAMQRRsaiALQQN0aiAJQQAgARtqIAAgBmpBAnRqNgJ4IAIgCDYCQCACIAo2ApABIAQgAyACQThqEJUkDQIgAkEANgJIIAJBATYCPCACQdTCwwA2AjggAkIENwJAIAQgAyACQThqEJUkIQUMAgsCQAJAAkACQAJAIAIoAhgiAQ4CAQACCyACQQk2AnwgAkEBNgKsASACQQE2AqQBIAJBAjYClAEgAkGwocAANgKQASACQQE2ApwBIAIgAkGsAWo2AnggAkEDOgBUIAJBCDYCUCACQiA3AkggAkKAgICA4AA3AkAgAkECNgI4IAIgAkE4ajYCoAEgAiACQfgAajYCmAEgBCADIAJBkAFqEJUkRQ0EDAMLIAJBADYCSCACQQE2AjwgAkGElsMANgI4IAJCBDcCQCAEIAMgAkE4ahCVJEUNAQwCCyABIA1GIAEgCkZyIQUCQCABIAtLBEAgBQ0BIAJBADYCSCACQQE2AjwgAkHslcMANgI4IAJCBDcCQCAEIAMgAkE4ahCVJEUNAgwDCyAFRQRAIAJBADYCSCACQQE2AjwgAkH4lcMANgI4IAJCBDcCQCAEIAMgAkE4ahCVJEUNAgwDCyACQQA2AkggAkEBNgI8IAJB8KnAADYCOCACQgQ3AkAgBCADIAJBOGoQlSRFDQEMAgsgAkEANgJIIAJBATYCPCACQeSpwAA2AjggAkIENwJAIAQgAyACQThqEJUkDQELIAIgATYCNCACQQk2AnwgAiAGKAIMNgKsASACQQk2AoQBIAIgAkGsAWo2AoABIAIgAkE0ajYCeCACQQM6AHQgAkEINgJwIAJCoICAgBA3AmggAkKAgICA4AA3AmAgAkECNgJYIAJBAzoAVCACQQg2AlAgAkIgNwJIIAJCgICAgOAANwJAIAJBAjYCOCACQQI2AqQBIAJBAzYClAEgAkH4oMAANgKQASACIAJBOGo2AqABIAJBAjYCnAEgAiACQfgAajYCmAEgBCADIAJBkAFqEJUkDQAgAkEQaiAAIAEQhyAgAikDECEOIAJBADYCjAEgAiAONwKEASACQQA2AngDQCACQThqIAgQ0RACQAJAAkACQAJAAkACQCACLQA4QQFGBEAgAigAOiEGIAIxADkhDiACKAJ4DQEgDkIIhiAGrUIghoQgDoQhDgwHCyACKAJ4IAJBADYCeEEBcUUNAyACKAKAASEJIAItAH0hByACLQB8IQUMAQsgAi0AfCEFIAIoAoABIgkgBkYNASACQQE2AnggAi0AfSEHIAIgDkIIhiAGrUIghoQgDoQ3AnwLIAIgAigCjAEiBkEBajYCjAEgBg0CDAMLIAWtQv8BgyAGrUIghiAOQgiGhIQhDgwDCyACQQA2AkggAkEBNgI8IAJB5MbfADYCOCACQgQ3AkAgBCADIAJBOGoQlSQNBCABQQFrIAtPDQUgAkEANgJIIAJBATYCPCACQaShwAA2AjggAkIENwJAIAQgAyACQThqEJUkDQQgAkEIaiAAIAEQiCBBACEFIAIoAgwhASACKAIIIgZBLGohCSAGQShqIQYDQCABRQRAIAJBADYCSCACQQE2AjwgAkHkxt8ANgI4IAJCBDcCQCAEIAMgAkE4ahCVJEUNBwwGCyAGKAIAIAkoAgAgAUHsjMQAEJwfIgcoAgQhASAHKAIAIQcgBQRAIAJBADYCSCACQQE2AjwgAkHUxMMANgI4IAJCBDcCQCAEIAMgAkE4ahCVJA0GCyACQQE2AjwgAkGo7uAANgI4IAJCATcCRCACQQk2ApQBIAIgBzYCeCAFQQFrIQUgAiACQZABajYCQCACIAJB+ABqNgKQASAEIAMgAkE4ahCVJEUNAAsMBAsgAkEANgJIIAJBATYCPCACQdTEwwA2AjggAkIENwJAIAQgAyACQThqEJUkDQMLIAcgBUH/AXFHBEAgAiAFOgCrASACIAc6ADQgAkEDNgKUASACQZTGwwA2ApABIAJCAzcCnAEgAkEQNgJMIAJBETYCRCACQRE2AjwgAiAJNgKsASACIAJBOGo2ApgBIAIgAkGsAWo2AkggAiACQTRqNgJAIAIgAkGrAWo2AjggBCADIAJBkAFqEJUkRQ0CDAMLIAIgBToANCACQQI2AjwgAkHgxMMANgI4IAJCAjcCRCACQRA2ApwBIAJBETYClAEgAiAJNgKsASACIAJBkAFqNgJAIAIgAkGsAWo2ApgBIAIgAkE0ajYCkAEgBCADIAJBOGoQlSRFDQEMAgsgAiAONwJ8IAJBATYCeAwACwALC0EBIQULIAJBsAFqJAAgBQuwEwECfyMAQUBqIgIkAAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEQIAAoAgBBAmsiAyADQSNPG0EBaw4iAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIgALIAIgAEEIajYCDCACQQE2AiwgAkGo7uAANgIoIAJCATcCNCACQeoENgIcIAIgAkEYajYCMCACIAJBDGo2AhggASgCFCABKAIYIAJBKGoQlSQMIgsgAkEANgI4IAJBATYCLCACQbiP2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDCELIAJBADYCOCACQQE2AiwgAkHAj9kANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwgCyACQQA2AjggAkEBNgIsIAJByI/ZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMHwsgAkEANgI4IAJBATYCLCACQdCP2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDB4LIAJBADYCOCACQQE2AiwgAkHYj9kANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwdCyACQQA2AjggAkEBNgIsIAJB4I/ZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMHAsgAkEANgI4IAJBATYCLCACQeiP2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDBsLIAJBADYCOCACQQE2AiwgAkHwj9kANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwaCyACQQA2AjggAkEBNgIsIAJB+I/ZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMGQsgAkEANgI4IAJBATYCLCACQYCQ2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDBgLIAJBADYCOCACQQE2AiwgAkGIkNkANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwXCyACQQA2AjggAkEBNgIsIAJBkJDZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMFgsgAkEANgI4IAJBATYCLCACQZiQ2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDBULIAJBADYCOCACQQE2AiwgAkGgkNkANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwUCyACQQA2AjggAkEBNgIsIAJBqJDZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMEwsgAiAAQRBqNgIMIAJBAjYCLCACQcCQ2QA2AiggAkIBNwI0IAJB6wQ2AhwgAiACQRhqNgIwIAIgAkEMajYCGCABKAIUIAEoAhggAkEoahCVJAwSCyACQQA2AjggAkEBNgIsIAJB0JDZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMEQsgAkEBNgIsIAJBqO7gADYCKCACQgE3AjQgAkECNgIQIAIgAC0ABEECdCIAQdDd4wBqKAIANgIcIAIgAEGs3uMAaigCADYCGCACIAJBDGo2AjAgAiACQRhqNgIMIAEoAhQgASgCGCACQShqEJUkDBALIAJBATYCLCACQaju4AA2AiggAkIBNwI0IAJBAjYCECACIAAtAARBAnQiAEGI3+MAaigCADYCHCACIABByN/jAGooAgA2AhggAiACQQxqNgIwIAIgAkEYajYCDCABKAIUIAEoAhggAkEoahCVJAwPCyACQQA2AjggAkEBNgIsIAJB2JDZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMDgsgAkEANgI4IAJBATYCLCACQeCQ2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDA0LIAJBADYCOCACQQE2AiwgAkHokNkANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwMCyACQQA2AjggAkEBNgIsIAJB8JDZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMCwsgAkEANgI4IAJBATYCLCACQfiQ2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDAoLIAIgAEEIajYCFCACIABBEGo2AgwgAkEDNgIsIAJBkJHZADYCKCACQgI3AjQgAkHrBDYCJCACQesENgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqEJUkDAkLIAIgAEEIajYCFCACIABBEGo2AgwgAkEDNgIsIAJBuJHZADYCKCACQgI3AjQgAkHrBDYCJCACQesENgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqEJUkDAgLIAIgAEEQajYCFCACIABBCGo2AgwgAkEDNgIsIAJB5JHZADYCKCACQgI3AjQgAkHrBDYCJCACQewENgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqEJUkDAcLIAIgAEEQajYCFCACIABBCGo2AgwgAkEDNgIsIAJBjJLZADYCKCACQgI3AjQgAkHrBDYCJCACQe0ENgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqEJUkDAYLIAIgAEEIajYCDCACQQI2AiwgAkGwktkANgIoIAJCATcCNCACQesENgIcIAIgAkEYajYCMCACIAJBDGo2AhggASgCFCABKAIYIAJBKGoQlSQMBQsgAiAAQRBqNgIMIAJBAjYCLCACQcyS2QA2AiggAkIBNwI0IAJB6wQ2AhwgAiACQRhqNgIwIAIgAkEMajYCGCABKAIUIAEoAhggAkEoahCVJAwECyACQQA2AjggAkEBNgIsIAJB3JLZADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQlSQMAwsgAkEANgI4IAJBATYCLCACQfSS2QA2AiggAkIENwIwIAEoAhQgASgCGCACQShqEJUkDAILIAJBADYCOCACQQE2AiwgAkH8ktkANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahCVJAwBCyACIABBBGo2AgwgAkECNgIsIAJBlJPZADYCKCACQgE3AjQgAkHuBDYCHCACIAJBGGo2AjAgAiACQQxqNgIYIAEoAhQgASgCGCACQShqEJUkCyACQUBrJAALwxIBBH8jAEGQAWsiBSQAAkACQAJAIAJBA00EQCABQQFrIQcgAiEGA0AgBkUNAyAGIAdqIAZBAWshBiwAAEEATg0ACwwBCyABKAAAQYCBgoR4cQ0AQQQgAUEDakF8cSIGIAFrIAEgBkYbIQYgAkEEayEHA0AgBiAHSQRAIAEgBmooAgBBgIGChHhxDQIgBkEEaiEGDAELCyABIAdqKAAAQYCBgoR4cUUNAQsgBSACQQhqELYUIAVBADYCECAFIAUpAwA3AgggBUGBgMQANgIUIAUgATYCGCAFIAEgAmo2AhwgBEH/AXFBAkkhCEEAIQRBASECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBUEUahCnHiIBDg4ICwsLCwsLCwoFAgQBAwALIAFBIkYNBiABQSdGDQUgAUHcAEYNCCABQYCAxABHDQogBA0LIAAgBSkCCDcCACAAQQhqIAVBEGooAgA2AgAMFgsgBUEIakG02NgAQQIQ1h0MEgsgBUEIakHQ2dgAQQIQ1h0MEQsgBUEIakHS2dgAQQIQ1h0MEAsgBUEIakG22NgAQQIQ1h0MDwsgBUEIakEJEN0PDA4LIAVBCGpBJxDdDwwNCyAFQQhqQSIQ3Q8MDAsgA0UEQEEAIQIgBUEANgJEIAVBATYCOCAFQcjZ2AA2AjQgBUIENwI8IAVBCGogBUE0ahDtJBoMDQtBACECIAVBADYCREEBIQQgBUEBNgI4IAVB7NjYADYCNCAFQgQ3AjwgBUEIaiAFQTRqEO0kGgwMCwJAIAVBFGoQgh0iAQRAIAEoAgBB9QBGDQELIAVBCGpB1NnYAEECENYdDAsLIAUgBSgCHDYCgAEgBSAFKQIUNwJ4IAVB+ABqIgEQpx4aIAEQgh0iBkGo2NgAELYdIgcEQCAFQfgAahCnHhogBUH4AGoQgh0hBgsCQCAGBEAgBigCAEEgckHkAEYNAQsgBUEIakHU2dgAQQIQ1h0MCwsgBUEANgI8IAVCgICAgBA3AjQgBUE0aiIBQdwAEN0PIAFB9QAQ3Q8gBw0DDAkLIAVBCGpBstjYAEECENYdDAkLIAFBAWtBD08EQAJAAkACQAJAAkAgAUHw//8AcUEQRwRAIAFBIGtB3wBJDQkgAUH/AGtBgQFJDQQgAUGowABrDgIBAgMLIAJBAXFFDQQMCgsgBUEIakG42NgAQQYQ1h0MDQsgBUEIakG+2NgAQQYQ1h0MDAsgAUH//QNHDQcgBUEIakHE2NgAQQYQ1h0MCwsgA0UEQCAFQQE2AjggBUHc2dgANgI0IAVCATcCQCAFQdQBNgJ8IAUgAToAJCAFIAVB+ABqNgI8IAUgBUEkajYCeCAFQQhqIAVBNGoQ7SQaDAsLQQEhBCAFQQE2AjggBUHM2NgANgI0IAVCATcCQCAFQdQBNgJ8IAUgAToAJCAFIAVB+ABqNgI8IAUgBUEkajYCeCAFQQhqIAVBNGoQ7SQaDAoLIANFBEAgBUEBNgI4IAVB3NnYADYCNCAFQgE3AkAgBUHUATYCfCAFIAE6ACQgBSAFQfgAajYCPCAFIAVBJGo2AnggBUEIaiAFQTRqEO0kGgwKC0EBIQQgBUEBNgI4IAVBzNjYADYCNCAFQgE3AkAgBUHUATYCfCAFIAE6ACQgBSAFQfgAajYCPCAFIAVBJGo2AnggBUEIaiAFQTRqEO0kGgwJCyACQQFxRQ0DDAULIAVBAjYCOCAFQaDa2AA2AjQgBUIBNwJAIAVBPjYCfCAFIAVB+ABqNgI8IAUgBUEIajYCeCAAIAVBNGoQ6hQgBSgCCCAFKAIMELgpDAoLIAVBNGpB+wAQ3Q8MBQsgBUEIaiABEN0PDAULIANFBEAgBUEBNgI4IAVB3NnYADYCNCAFQgE3AkAgBUHUATYCfCAFIAE6ACQgBSAFQfgAajYCPCAFIAVBJGo2AnggBUEIaiAFQTRqEO0kGgwFC0EBIQQgBUEBNgI4IAVBzNjYADYCNCAFQgE3AkAgBUHUATYCfCAFIAE6ACQgBSAFQfgAajYCPCAFIAVBJGo2AnggBUEIaiAFQTRqEO0kGgwECyABQYABSQ0AIAFB//8DSw0BIAVBsAI2AiggBSABOwF0IAVBATYCjAEgBUEBNgJ8IAVB6NnYADYCeCAFQQE2AoQBIAUgBUH0AGo2AiQgBUEDOgBQIAVBCDYCTCAFQiA3AkQgBUKAgICAwAA3AjwgBUECNgI0IAUgBUE0ajYCiAEgBSAFQSRqNgKAASAFQQhqIAVB+ABqEO0kGgwDCyAFQQhqIAEQ3Q8MAgsgCEUEQCAFQcsANgIoIAUgATYCdCAFQQE2AowBIAVBAjYCfCAFQfTZ2AA2AnggBUEBNgKEASAFIAVB9ABqNgIkIAVBAzoAUCAFQQg2AkwgBUIgNwJEIAVCgICAgMAANwI8IAVBAjYCNCAFIAVBNGo2AogBIAUgBUEkajYCgAEgBUEIaiAFQfgAahDtJBoMAgsgBSABQYCABGtBCnZBgLADajYCICAFIAFB/wdxQYC4A3I2AnQgBUHLADYCMCAFQcsANgIoIAVBAjYCjAEgBUEDNgJ8IAVBiNrYADYCeCAFIAVB9ABqNgIsIAUgBUEgajYCJCAFQQM6AHAgBUEINgJsIAVCoICAgBA3AmQgBUKAgICAwAA3AlwgBUECNgJUIAVBAzoAUCAFQQg2AkwgBUIgNwJEIAVCgICAgMAANwI8IAVBAjYCNCAFIAVBNGo2AogBIAVBAjYChAEgBSAFQSRqNgKAASAFQQhqIAVB+ABqEO0kGgwBCyAFQTRqIAYoAgAQ3Q8gBUH4AGoQpx4aQQMhAgNAAkACQCACRQRAQQUhBiAHBEAgBUE0akH9ABDdD0EHIQYLIAVBCGogBSgCOCAFKAI8ENYdA0AgBkUNAiAGQQFrIQYgBUEUahCnHhoMAAsACyAFQfgAahCnHiIBQYCAxABHBEAgAUEwa0EKSSABQcEAa0EGSXIgAUHhAGtBBklyDQILIAdFDQAgBUE0akH9ABDdDwsgBSgCNCAFKAI4ELgpDAILIAVBNGogARDdDyACQQFrIQIMAAsAC0EAIQIMAAsACyAAIAI2AgggACABNgIEIABBgICAgHg2AgALIAVBkAFqJAALmQ8BDH8jAEEwayINJAAgAkECayEQAkACQAJAA0ACQAJAAkACQAJAAkAgAUEhTwRAIAQNASAAIAEgAiADQQEQ3QEMCgsgAUECSQ0JIAFBEGogA0sNBSABQQF2IQMgAUEPSw0BIAFBB0sEQCAAIAIQ3QYgACADQQF0IgRqIAIgBGoQ3QZBBCEHDAkLIAIgAC8AADsAAEEBIQcgAiADQQF0IgRqIAAgBGovAAA7AAAMCAsgACABQXhxaiEGIAAgAUEDdiIIQQ5saiEMIARBAWshBCANAn8gAUHAAE8EQCAAIAYgDCAIEJcJDAELIAACfyAALQAAIgggBi0AACILRwRAIAggC0kMAQsgAC0AASAGLQABSQsiBwJ/IAwtAAAiCSAIRwRAIAggCUkMAQsgAC0AASAMLQABSQtHDQAaIAwgBiAJIAtHBH8gCSALSwUgBi0AASAMLQABSQsgB3MbCyIKLQABIgg6ABcgDSAKLQAAIgY6ABYgCiAAa0EBdiEMIAVFDQEgBiAFLQAAIgtGBEAgBS0AASAITw0DDAILIAYgC0sNAQwCCyAAIAIgAiABQQF0aiIEEOkfIAAgA0EBdCIFaiACIAVqIARBEGoQ6R9BCCEHDAYLIAEgA0sNAiACIAFBAXQiEWohCUEAIQggACEGIAwhCwNAIAAgC0EDayIHQQAgByALTRtBAXRqIQ8DQCAGIA9PRQRAIAhBAXQgAiAJQQJrAn8gBi0AACIHIAotAAAiDkcEQCAHIA5JDAELIAYtAAEgCi0AAUkLIgcbaiAGLwAAOwAAIAcgCGoiCEEBdCACIAlBBGsCfyAOIAYtAAIiB0cEQCAHIA5JDAELIAYtAAMgCi0AAUkLIgcbaiAGLwACOwAAIAcgCGoiDkEBdCACIAlBBmsCfyAGLQAEIgcgCi0AACIIRwRAIAcgCEkMAQsgBi0ABSAKLQABSQsiBxtqIAYvAAQ7AAAgByAOaiIOQQF0IAIgCUEIayIJAn8gCCAGLQAGIgdHBEAgByAISQwBCyAGLQAHIAotAAFJCyIHG2ogBi8ABjsAACAGQQhqIQYgByAOaiEIDAELCyAAIAtBAXRqIQ4DQCAGIA5PBEACQCABIAtGDQAgCUECayIJIAhBAXRqIAYvAAA7AAAgBkECaiEGIAEhCwwDCwUgCEEBdCACIAlBAmsiCQJ/IAYtAAAiByAKLQAAIg9HBEAgByAPSQwBCyAGLQABIAotAAFJCyIHG2ogBi8AADsAACAGQQJqIQYgByAIaiEIDAELCwsgASAIayELIBAgEWohCSAAIAIgCCIGQQF0IgcQ9gYgB2oiDiEHA0AgASAGRkUEQCAHIAkvAAA7AAAgBkEBaiEGIAlBAmshCSAHQQJqIQcMAQsLIAhFDQAgASAITw0BIA1BADYCKCANQQE2AhwgDUGYvuAANgIYIA1CBDcCICANQRhqQaC+4AAQoR0ACyABIANLDQEgAiABQQF0IgtqIQlBACEIIAAhBgNAIAAgDEEDayIFQQAgBSAMTRtBAXRqIQ4DQCAGIA5PRQRAIAhBAXQgCUECayACAn8gCi0AACIFIAYtAAAiB0cEQCAFIAdJDAELIAotAAEgBi0AAUkLIgcbaiAGLwAAOwAAIAggB0VqIghBAXQgCUEEayACAn8gBi0AAiIHIAVHBEAgBSAHSQwBCyAKLQABIAYtAANJCyIHG2ogBi8AAjsAACAIIAdBAXNqIghBAXQgCUEGayACAn8gCi0AACIFIAYtAAQiB0cEQCAFIAdJDAELIAotAAEgBi0ABUkLIgcbaiAGLwAEOwAAIAggB0VqIghBAXQgCUEIayIJIAICfyAGLQAGIgcgBUcEQCAFIAdJDAELIAotAAEgBi0AB0kLIgcbaiAGLwAGOwAAIAZBCGohBiAIIAdBAXNqIQgMAQsLIAAgDEEBdGohBQNAIAUgBk0EQAJAIAEgDEYNACACIAhBAXRqIAYvAAA7AAAgBkECaiEGIAhBAWohCCAJQQJrIQkgASEMDAMLBSAIQQF0IAlBAmsiCSACAn8gCi0AACIHIAYtAAAiDkcEQCAHIA5JDAELIAotAAEgBi0AAUkLIgcbaiAGLwAAOwAAIAZBAmohBiAIIAdBAXNqIQgMAQsLCyALIBBqIQkgASAIayIMIQYgACACIAhBAXQiABD2BiAAaiIAIQoDQCAGBEAgCiAJLwAAOwAAIAZBAWshBiAJQQJrIQkgCkECaiEKDAELCyABIAhJDQNBACEFIAwhAQwCCyAOIAsgAiADIAQgDUEWahCbASAIIQEMAQsLAAsgCCABQbC+4AAQnBAACyANQoCAgIAgNwMgIA0gA61CIIY3AxhBACAHayEFIAEgA2shDCAAIAdBAXQiBGohCyACIARqIQoDQCANQQhqIA1BGGoQ9xUgDSgCCEUEQCACIAEgABDJBgwCCyAFIAwgAyANKAIMIgQbIgYgByAGIAdLG2ohCSALIARBAXQiBGohCCAEIApqIQYgAiAEaiEEA0AgCUUNASAGIAgvAAA7AAAgBCAGEJELIAlBAWshCSAIQQJqIQggBkECaiEGDAALAAsACyANQTBqJAALmQ8BDH8jAEEwayINJAAgAkEIayEQAkACQAJAA0ACQAJAAkACQAJAAkAgAUEhTwRAIAQNASAAIAEgAiADQQEQ3AEMCgsgAUECSQ0JIAFBEGogA0sNBSABQQF2IQMgAUEPSw0BIAFBB0sEQCAAIAIQ3AYgACADQQN0IgRqIAIgBGoQ3AZBBCEHDAkLIAIgACkCADcCACACIANBA3QiBGogACAEaikCADcCAEEBIQcMCAsgACABQQN2IghBOGxqIQYgACAIQQV0aiEMIARBAWshBCANAn8gAUHAAE8EQCAAIAwgBiAIEJYJDAELIAACfyAAKAIAIgggDCgCACILRwRAIAggC0kMAQsgACgCBCAMKAIESQsiBwJ/IAYoAgAiCSAIRwRAIAggCUkMAQsgACgCBCAGKAIESQtHDQAaIAYgDCAJIAtHBH8gCSALSwUgDCgCBCAGKAIESQsgB3MbCyIKKAIEIgg2AhQgDSAKKAIAIgY2AhAgCiAAa0EDdiEMIAVFDQEgBiAFKAIAIgtGBEAgBSgCBCAITw0DDAILIAYgC0sNAQwCCyAAIAIgAiABQQN0aiIEEOgfIAAgA0EDdCIFaiACIAVqIARBQGsQ6B9BCCEHDAYLIAEgA0sNAiACIAFBA3QiEWohCUEAIQggACEGIAwhCwNAIAAgC0EDayIHQQAgByALTRtBA3RqIQ8DQCAGIA9PRQRAIAhBA3QgAiAJQQhrAn8gBigCACIHIAooAgAiDkcEQCAHIA5JDAELIAYoAgQgCigCBEkLIgcbaiAGKQIANwIAIAcgCGoiCEEDdCACIAlBEGsCfyAOIAYoAggiB0cEQCAHIA5JDAELIAYoAgwgCigCBEkLIgcbaiAGKQIINwIAIAcgCGoiDkEDdCACIAlBGGsCfyAGKAIQIgcgCigCACIIRwRAIAcgCEkMAQsgBigCFCAKKAIESQsiBxtqIAYpAhA3AgAgByAOaiIOQQN0IAIgCUEgayIJAn8gCCAGKAIYIgdHBEAgByAISQwBCyAGKAIcIAooAgRJCyIHG2ogBikCGDcCACAGQSBqIQYgByAOaiEIDAELCyAAIAtBA3RqIQ4DQCAGIA5PBEACQCABIAtGDQAgCUEIayIJIAhBA3RqIAYpAgA3AgAgBkEIaiEGIAEhCwwDCwUgCEEDdCACIAlBCGsiCQJ/IAYoAgAiByAKKAIAIg9HBEAgByAPSQwBCyAGKAIEIAooAgRJCyIHG2ogBikCADcCACAGQQhqIQYgByAIaiEIDAELCwsgASAIayELIBAgEWohCSAAIAIgCCIGQQN0IgcQ9gYgB2oiDiEHA0AgASAGRkUEQCAHIAkpAgA3AgAgBkEBaiEGIAlBCGshCSAHQQhqIQcMAQsLIAhFDQAgASAITw0BIA1BADYCKCANQQE2AhwgDUGYvuAANgIYIA1CBDcCICANQRhqQaC+4AAQoR0ACyABIANLDQEgAiABQQN0IgtqIQlBACEIIAAhBgNAIAAgDEEDayIFQQAgBSAMTRtBA3RqIQ4DQCAGIA5PRQRAIAhBA3QgCUEIayACAn8gCigCACIFIAYoAgAiB0cEQCAFIAdJDAELIAooAgQgBigCBEkLIgcbaiAGKQIANwIAIAggB0VqIghBA3QgCUEQayACAn8gBigCCCIHIAVHBEAgBSAHSQwBCyAKKAIEIAYoAgxJCyIHG2ogBikCCDcCACAIIAdBAXNqIghBA3QgCUEYayACAn8gCigCACIFIAYoAhAiB0cEQCAFIAdJDAELIAooAgQgBigCFEkLIgcbaiAGKQIQNwIAIAggB0VqIghBA3QgCUEgayIJIAICfyAGKAIYIgcgBUcEQCAFIAdJDAELIAooAgQgBigCHEkLIgcbaiAGKQIYNwIAIAZBIGohBiAIIAdBAXNqIQgMAQsLIAAgDEEDdGohBQNAIAUgBk0EQAJAIAEgDEYNACACIAhBA3RqIAYpAgA3AgAgBkEIaiEGIAhBAWohCCAJQQhrIQkgASEMDAMLBSAIQQN0IAlBCGsiCSACAn8gCigCACIHIAYoAgAiDkcEQCAHIA5JDAELIAooAgQgBigCBEkLIgcbaiAGKQIANwIAIAZBCGohBiAIIAdBAXNqIQgMAQsLCyALIBBqIQkgASAIayIMIQYgACACIAhBA3QiABD2BiAAaiIAIQoDQCAGBEAgCiAJKQIANwIAIAZBAWshBiAJQQhrIQkgCkEIaiEKDAELCyABIAhJDQNBACEFIAwhAQwCCyAOIAsgAiADIAQgDUEQahCcASAIIQEMAQsLAAsgCCABQbC+4AAQnBAACyANQoCAgIAgNwMgIA0gA61CIIY3AxhBACAHayEFIAEgA2shDCAAIAdBA3QiBGohCyACIARqIQoDQCANQQhqIA1BGGoQ9xUgDSgCCEUEQCACIAEgABDMBgwCCyAFIAwgAyANKAIMIgQbIgYgByAGIAdLG2ohCSALIARBA3QiBGohCCAEIApqIQYgAiAEaiEEA0AgCUUNASAGIAgpAgA3AgAgBCAGEKkLIAlBAWshCSAIQQhqIQggBkEIaiEGDAALAAsACyANQTBqJAALnxICEX8BfiMAQdAIayIDJAAgAyACNgIkAkACQAJAAkAgAUEoaiIEEOMNIgJFDQAgAigCAEEURw0AIAItAARBBEYNAQsgBBDjDSICRQ0BIAIoAgBBIUcNAQsgAS0A+AJBAkcNACABLQCCAyEOIANByABqIgIgARDPAiADQQE6APMDIAMgASkAgwM3APQDIAMgASkAiwM3APwDIAMgASkAkwM3AIQEIAMgASgAmwM2AIwEIANByAFqIANB8wNqEMAIIANBGGogAkEAQQAQlAEgAygCHCEHAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMoAhhFBEACQAJAAkAgA0HwAGoiBRDjDSICBEAgAigCAEEJRg0BCyADQbAEaiAFEOYLIANB+N3fADYCrAQgA0E0OgCoBCADQcABaiADQYgBaiADKAJwQSVGIgIbKAIAIgEgA0HEAWogA0GMAWogAhsoAgAiAiABIAJJGyABIAIgASACSxsgA0GoBGoQ6xQhASAFEOMNIgJFDQwgAigCAEEkRg0BDAwLIANBtARqIANB/ABqKQIANwIAIANBvARqIANBhAFqKAIANgIAIAMoAnAhAiADQSU2AnAgAyADKQJ0NwKsBCADIAI2AqgEIAMgAykDiAE3A8ABIANBqARqIgIQvwogAiADQcgAahCzASADKAKsBCEEIAMoAqgEIglBgICAgHhHBEAgAUGAAWohDCABQYIDaiEKIANB9ABqIQYgAygCsAQhAiADIAQ2AoAIIAMgBCACQQZ0Ig9qIhA2AowIIAMgCTYCiAggCUEGdCELIANB2ARqIRFBACECA0AgBCAIaiENIAIgD0ZFBEAgA0GQCGoiEiACIARqIhNBwAAQ9gYaIANBqARqIBNBwAAQ9gYaIBEQ1yYgDSASQSgQ9gYaIAhBKGohCCACQUBrIQIMAQsLIAMgEDYChAggC0EobiEIIANBgAhqEIMSIAQhAgJAIAlFDQAgCyAIQShsIglGDQAgAiALIAkQgh4iAkUNBgsgAyACNgL4ByADIAg2AvQHIAMgDSAEa0EobjYC/AcgA0GACGoQvBcCQAJAIAUQ4w0iAgRAIAIoAgBBCkYNAQsgA0GwBGogBRDmCyADQdDd3wA2AqwEIANBNDoAqAQgA0HAAWogA0GIAWogAygCcEElRiICGygCACIBIANBxAFqIANBjAFqIAIbKAIAIgIgASACSRsgASACIAEgAksbIANBqARqEOsUIQEgBRDjDSICRQ0MIAIoAgBBJEYNAQwMCyADQbQEaiAGQQhqKQIANwIAIANBvARqIAZBEGooAgA2AgAgAygCcCECIANBJTYCcCADIAI2AqgEIAMgAykDiAE3A8ABIAMgBikCADcCrAQgA0GoBGoQvwpBACECAkACQCAFEOMNIgRFDQAgBCgCAEETRw0AIANBEGogA0HIAGpBqNjfABDzASADKAIUIQIgAygCEA0BCyADIAI2ApAIIAUQ4w0iBARAIAQoAgBBA0YNBQsgA0GwBGogBRDmCyADQejq3wA2AqwEIANBNDoAqAQgA0HAAWogA0GIAWogAygCcEElRiICGygCACIBIANBxAFqIANBjAFqIAIbKAIAIgIgASACSRsgASACIAEgAksbIANBqARqEOsUIQEgBRDjDSICRQ0LIAIoAgBBJEcNCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0IIANByABqIAMoAnQQggwMCwsgA0GBgICAeDYCkAQgAyACNgKUBAwMCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0HIANByABqIAMoAnQQggwMCgsgAyAENgKUBCADQYGAgIB4NgKQBAwMCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0GIANByABqIAMoAnQQggwMCgsgA0G0BGogBkEIaikCADcCACADQbwEaiAGQRBqKAIANgIAIAMoAnAhBCADQSU2AnAgAyAENgKoBCADIAMpA4gBNwPAASADIAYpAgA3AqwEIANBqARqEL8KIANBmARqIANB/AdqKAIANgIAIAMgAjYCoAQgAyAHNgKcBCADIAMpAvQHIhQ3A5AEIBSnIgRBgICAgHhrDgIMCwELIANBgYCAgHg2ApAEIAMgBzYClAQMCgsgAykClAQhFCADQagEaiIGIANByABqQagDEPYGGiABEPUPIAEgBkGoAxD2BiEBIAMgDjoA1wcgAyABKQCDAzcA2AcgAyABKQCLAzcA4AcgAyABKQCTAzcA6AcgAyABKACbAzYA8AcgDCADQdcHahDACCADQQE7ADIgAyABLQCIAzoAMSADIAEoAYIDNgArIAMgAS8BhgM7AC8gAyABKQCLAzcANCADIAEpAJMDNwA8IAMgASgAmwM2AEQgA0HhAGogCkEVaikAADcAACADQdwAaiAKQRBqKQEANwIAIANB1ABqIApBCGopAQA3AgAgAyAKKQEANwJMIAwgA0ErahDACCADIAE2AkggAyACNgKkCCADIAc2AqAIIAMgFDcClAggAyAENgKQCCADIANBJGo2ApwIIANBCGogAUEBIBSnIBRCIIinEKoZELsDIAMoAgwhBQJAIAMoAghFBEAgACADKQKQCDcCACAAQQhqIANBmAhqKAIANgIAIAEoAnwhASADKAIkIQQgBhC6FCAAQQE7ASQgACACNgIgIAAgBzYCHCAAIAQgASABIARJGzYCFCAAIAQgASABIARLGzYCECAAIAU2AgwgACADKALABDYCGCAGEMIgDAELIABBgYCAgHg2AgAgACAFNgIEIANBkAhqEOomIAcQ9CogA0GkCGoQ9ScLIANByABqEIomDAwLAAtBuePgAEEoQdjs3wAQ2hcAC0G54+AAQShB6OzfABDaFwALQbnj4ABBKEH47N8AENoXAAsgA0GBgICAeDYCkAQgAyABNgKUBCADQZAIahD1JwwBCyADQYGAgIB4NgKQBCADIAE2ApQECyADQfQHahDqJgwBCyADQYGAgIB4NgKQBCADIAE2ApQECyAHEPQqCyADQZAEakEEchCAIwsgA0HIAGoQ9Q8LIABBgICAgHg2AgALIANB0AhqJAALtRICEX8BfiMAQcAIayIDJAAgAyACNgIkAkACQAJAAkAgAUEoaiIMEMgNIgJFDQAgAigCAEEURw0AIAItAARBBEYNAQsgDBDIDSICRQ0BIAIoAgBBIUcNAQsgAS0AoAJBAkcNACABLQCqAiEOIANByABqIgIgARCcAyADQQE6AOsDIAMgASkAqwI3AOwDIAMgASkAswI3APQDIAMgASkAuwI3APwDIAMgASgAwwI2AIQEIANB8ABqIgUgA0HrA2oQyAggA0EYaiACQQBBABCTASADKAIcIQcCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAygCGEUEQAJAAkACQCAFEMgNIgIEQCACKAIAQQlGDQELIANBqARqIAUQgBAgA0H43d8ANgKkBCADQTQ6AKAEIANB4ANqIANBqANqIAMoApADQSVGIgIbKAIAIgEgA0HkA2ogA0GsA2ogAhsoAgAiAiABIAJJGyABIAIgASACSxsgA0GgBGoQ6xQhASAFEMgNIgJFDQwgAigCAEEkRg0BDAwLIANBrARqIANBnANqKQIANwIAIANBtARqIANBpANqKAIANgIAIAMoApADIQIgA0ElNgKQAyADIAMpApQDNwKkBCADIAI2AqAEIAMgAykDqAM3A+ADIANBoARqIgIQvgogAiADQcgAahCyASADKAKkBCEEIAMoAqAEIglBgICAgHhHBEAgAUGqAmohCiADQZQDaiEGIAMoAqgEIQIgAyAENgLwByADIAQgAkEGdCIPaiIQNgL8ByADIAk2AvgHIAlBBnQhCyADQdAEaiERQQAhAgNAIAQgCGohDSACIA9GRQRAIANBgAhqIhIgAiAEaiITQcAAEPYGGiADQaAEaiATQcAAEPYGGiARENcmIA0gEkEoEPYGGiAIQShqIQggAkFAayECDAELCyADIBA2AvQHIAtBKG4hCCADQfAHahCDEiAEIQICQCAJRQ0AIAsgCEEobCIJRg0AIAtFBEBBCCECDAELIAQgC0EIIAkQ9AIiAkUNBgsgAyACNgLoByADIAg2AuQHIAMgDSAEa0EobjYC7AcgA0HwB2oQvBcCQAJAIAUQyA0iAgRAIAIoAgBBCkYNAQsgA0GoBGogBRCAECADQdDd3wA2AqQEIANBNDoAoAQgA0HgA2ogA0GoA2ogAygCkANBJUYiAhsoAgAiASADQeQDaiADQawDaiACGygCACICIAEgAkkbIAEgAiABIAJLGyADQaAEahDrFCEBIAUQyA0iAkUNDCACKAIAQSRGDQEMDAsgA0GsBGogBkEIaikCADcCACADQbQEaiAGQRBqKAIANgIAIAMoApADIQIgA0ElNgKQAyADIAI2AqAEIAMgAykDqAM3A+ADIAMgBikCADcCpAQgA0GgBGoQvgpBACECAkACQCAFEMgNIgRFDQAgBCgCAEETRw0AIANBEGogA0HIAGpBqNjfABDxASADKAIUIQIgAygCEA0BCyADIAI2AoAIIAUQyA0iBARAIAQoAgBBA0YNBQsgA0GoBGogBRCAECADQejq3wA2AqQEIANBNDoAoAQgA0HgA2ogA0GoA2ogAygCkANBJUYiAhsoAgAiASADQeQDaiADQawDaiACGygCACICIAEgAkkbIAEgAiABIAJLGyADQaAEahDrFCEBIAUQyA0iAkUNCyACKAIAQSRHDQsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0IIANByABqIAMoApQDEPsLDAsLIANBgYCAgHg2AogEIAMgAjYCjAQMDAsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0HIANByABqIAMoApQDEPsLDAoLIAMgBDYCjAQgA0GBgICAeDYCiAQMDAsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0GIANByABqIAMoApQDEPsLDAoLIANBrARqIAZBCGopAgA3AgAgA0G0BGogBkEQaigCADYCACADKAKQAyEEIANBJTYCkAMgAyAENgKgBCADIAMpA6gDNwPgAyADIAYpAgA3AqQEIANBoARqEL4KIANBkARqIANB7AdqKAIANgIAIAMgAjYCmAQgAyAHNgKUBCADIAMpAuQHIhQ3A4gEIBSnIgRBgICAgHhrDgIMCwELIANBgYCAgHg2AogEIAMgBzYCjAQMCgsgAykCjAQhFCADQaAEaiIGIANByABqQaADEPYGGiABEMsQIAEgBkGgAxD2BiEBIAMgDjoAxwcgAyABKQCrAjcAyAcgAyABKQCzAjcA0AcgAyABKQC7AjcA2AcgAyABKADDAjYA4AcgDCADQccHahDICCADQQE7ADIgAyABLQCwAjoAMSADIAEoAaoCNgArIAMgAS8BrgI7AC8gAyABKQCzAjcANCADIAEpALsCNwA8IAMgASgAwwI2AEQgA0HhAGogCkEVaikAADcAACADQdwAaiAKQRBqKQEANwIAIANB1ABqIApBCGopAQA3AgAgAyAKKQEANwJMIAwgA0ErahDICCADIAE2AkggAyACNgKUCCADIAc2ApAIIAMgFDcChAggAyAENgKACCADIANBJGo2AowIIANBCGogAUEBIBSnIBRCIIinEKoZEL0DIAMoAgwhBQJAIAMoAghFBEAgACADKQKACDcCACAAQQhqIANBiAhqKAIANgIAIAEoApwDIQEgAygCJCEEIAYQuhQgAEEBOwEkIAAgAjYCICAAIAc2AhwgACAEIAEgASAESRs2AhQgACAEIAEgASAESxs2AhAgACAFNgIMIAAgAygCuAQ2AhggBhCpIAwBCyAAQYGAgIB4NgIAIAAgBTYCBCADQYAIahDqJiAHEPQqIANBlAhqEOAmCyADQcgAahDvJAwMCwALQbnj4ABBKEHY7N8AENoXAAtBuePgAEEoQejs3wAQ2hcAC0G54+AAQShB+OzfABDaFwALIANBgYCAgHg2AogEIAMg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KQMANwMAIAcgBSkDADcDACACIAIpA0g3A9ABIAIgCTYC6AEgAkEEaiACQdABahCpECAKIQMMBAsgAigCVCEBIAIoAlAhAyACIAIoAkw2AmwgAiADNgJkIAIgAyABQRxsIgFqIg42AnAgA0EcaiEFA0ACQCACIAEEfyADKAIAIghBCEcNASAFBSAOCzYCaCACQeQAahCsFyAJENYqIAohAyAPQQFGIA9BBkZyDQUMAgsgBiADKQIENwIAIAZBCGogA0EMaikCADcCACAGQRBqIANBFGopAgA3AgAgAiAINgJ0IAJB0AFqIhUgAkH0AGoQtRUgAkGgAWoiDCANKQIANwMAIAJBmAFqIhEgBykCADcDACACIAIpAtABIhc3A5ABIAIoAugBIRACQCAXp0EBRwRAIAIoAhAhCCACQYCAgIB4NgIQIAhBgICAgHhHBEAgAiACKQIUNwKwASACIAg2AqwBIBUgAkGsAWoQyhEgAkEEaiAVEKkQCyANIAwpAwA3AwAgByARKQMANwMAIAIgAikDkAE3A9ABIAIgEDYC6AEgAkEEaiACQdABahCpEAwBCyACKAKYASEIIAIoApQBIQwCQCACKAIQQYCAgIB4RwRAIAJBEGogDCAIENYdDAELIAJB0AFqIAwgCBC2FUGAgICAeCACKAIUEJYkIAJBGGogBygCADYCACACIAIpAtABNwMQCyAMIAgQwSQgEBDWKgsgA0EcaiEDIAVBHGohBSABQRxrIQEMAAsACyACQcgAahDJESAKIQMMAgsgAigCUCEBIAIoAkwhAwJAIAIoAhBBgICAgHhHBEAgAkEQaiADIAEQ1h0MAQsgAkHQAWogAyABELYVQYCAgIB4IAIoAhQQliQgAkEYaiAHKAIANgIAIAIgAikC0AE3AxALIAMgARDBJCAJENYqIAohAwwBCwsgABCrKAtBgICAgHggFhCWJCACQQRqEL0mCyACQfABaiQAC5oQAgh/BH4jAEGAAWsiAiQAIAFBigNqIgQpAQAhCyABQZIDaiIDKAEAIQUgASkBggMhCiABLwGWAyEGIAEtAJgDIQggASgBmgMhByABLQCeAyEJIAJBMGogBCkBADcCACACQThqIAMpAQA3AgAgAkE9aiABQZcDaikAADcAACACIAk6AHQgAiAHNgBwIAJBAToAbyACIAg6AG4gAiAGOwBs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AygCKCADKAIsELIhIAMoAoABQYCAgIB4RgRAIANBgICAgHg2AnAgA0EBOgB0DAcLIANB+ABqIANBiAFqKQIANwMAIAMgAykCgAE3A3AMBgsgA0EwakHwndUAQRIgByAGENgKIANBgAFqIAMoAjAgAygCNBCyISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJwIANBAToAdAwGCyADQfgAaiADQYgBaikCADcDACADIAMpAoABNwNwDAULIANBgICAgHg2AnAgA0EBOgB0IAMoAqgBIAMoAqwBEMopDAQLIARBoANqIQVBgJjKACEEA0AgBQRAIANBgAFqIgYgBCgCCCAEKAIMENkKIANBqAFqIAYQ8hcgAygCgAEgAygChAEQyikgBUEQayEFIARBEGohBAwBBSADQfgAaiADQbABaikCADcDACADIAMpAqgBNwNwDAULAAsACyADQRBqQaDnzQBBowEgBSAEENgKIANBgAFqIAMoAhAgAygCFBCyISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJwIANBAToAdAwDCyADQfgAaiADQYgBaikCADcDACADIAMpAoABNwNwDAILIANB8ABqIAUgBBCnBwwBCyAFIARB/MrIAEEOEM0fRQRAIAUgBEGjncgAQQsQzR9FBEAgA0EIakHI/dMAQTwgBSAEENgKIANBgAFqIAMoAgggAygCDBCyISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJwIANBADoAdAwDCyADQfgAaiADQYgBaikCADcDACADIAMpAoABNwNwDAILIANB8ABqENkqDAELIANB8ABqENoqCyADQcgAaiABKAIEIAEoAgggCCADQfAAahDpFgJAIAMoAkhBgICAgHhGBEAgA0GAAWogCiACLQA0IANBzABqEN8dIAMoAoABIgFBgICAgHhHDQELIAAgA0HIAGpBKBD2BhoMAQsgAEEEaiADQYQBakEkEPYGGiAAIAE2AgAgAygCSCIAQYCAgIB4RgRAIAMoAkwgAygCUBDKKQwBCyAAIAMoAkwQuCkLIANB0AFqJAALkw4CD38CfiMAQdABayICJAAgAS0APSEOIAFBAToAPSABLQA5IQYgAUEBOgA5IAAoAgAiACABEIcaIAFBAToAOSAAQTBqIAEQnCUgAUEAOgA5IABBNGogARC2DSABQQE6ADkgAEE4aiABELkjIAFBAToAOSAAQRhqIAEQlBEgASAGOgA5IAFBLGohByAAKAIQIgwgACgCFEHYAGxqIQ8gAkH8AGohCCACQeAAaiEJA0ACQAJAIA8gDCIDRwRAIANB2ABqIQwCQAJAAkACQAJAAkACQAJAIAMoAgAiAEEEa0EAIABBBWtBCEkbQQFrDggBAgMEBQsGBwALIAMoAkQiBiADKAJIQQZ0IgBqIQ0gBiEEA0AgAARAIARBMGogARCHGiAAQUBqIQAgBEFAayEEDAEFAkAgASgCMBCnESEAIAlBCGpB2JbjACkDACIRNwIAIAlB0JbjACkDACISNwIAIAJB2ABqIBE3AwAgCCAHKQIANwIAIAhBCGogB0EIaigCADYCACACQQE6AHggAiABNgJwIAIgADYCdCACIBI3A1AgAiABLQA8OgCMASACIAEvATo7AYoBIAEtADghACACIAEtAD06AI0BIAIgADoAiAEgAkEAOgCJASACIA02AkwgAiAGNgJIIAJBADYCOCACQQA2AiggAkEYaiACQShqIgAQ7AgCfyACKQMYIhFQBEAgABDeKEEAIQRBACEFQQgMAQsgAigCICEAIAJBnAFqIgogAkEoaiIQELIQQQEhBCACQRBqQQQgAigCnAFBAWoiBUF/IAUbIgUgBUEETRtBCEEQEOcUIAIoAhAhCyACKAIUIgUgADYCCCAFIBE3AwAgAkEBNgKYASACIAU2ApQBIAIgCzYCkAEgCiAQQSgQ9gYaQRghAANAIAIgAkGcAWoiChDsCCACKQMAIhFQRQRAIAIoAgghCyACKAKQASAERgRAIAJBxAFqIAoQshAgAkGQAWogAigCxAFBAWoiBUF/IAUbEPseIAIoApQBIQULIAAgBWoiCiALNgIAIApBCGsgETcDACACIARBAWoiBDYCmAEgAEEQaiEADAELC0IAENYmIAJBnAFqEN4oIAIoApABIQUgAigClAELIQAgAiAFNgKkASACIAA2ApwBIAIgACAEQQR0IgRqIgU2AqgBA0AgBARAIAJB0ABqIAApAwBBARDLCCAEQRBrIQQgAEEQaiEADAEFIAIgBTYCoAEgAkGcAWoQ/RYDQCAGIA1GDQMgBkFAayEFIAYoAgBBB0YEQCAGKAI4QQxsIQAgBigCNCEEA0AgAARAIABBDGshACAEIAJB0ABqELsrIARBDGohBAwBCwsgAkEAOgCJASAGQQhqIQAgBi0AHEECRwRAIAJB0ABqIAAQtBkgBSEGDAILIAJB0ABqIAAQsSUFIAJB0ABqIAYQgRcLIAUhBgwACwALAAsACwsLIAJBAToAiQEgAygCIEGAgICAeEcNCAwJCyABIANBCGoQ4CEgA0EwaiADKAIwIgUoAghBBnQhACAFKAIEIQQDQCAABEAgBEEwaiABEIcaIABBQGohACAEQUBrIQQMAQsLIAEoAjAQpxEhACAJQQhqQdiW4wApAwAiETcCACAJQdCW4wApAwAiEjcCACACQdgAaiARNwMAIAggBykCADcCACAIQQhqIAdBCGooAgA2AgAgAkEBOgB4IAIgATYCcCACIAA2AnQgAkEBOgCJASACIBI3A1AgAiABLQA8OgCMASACIAEvATo7AYoBIAEtADghACACIAEtAD06AI0BIAIgADoAiAEgAkHQAGoiABDVAyAAEOEoDAkLIAEoAjAQpxEhACAJQQhqQdiW4wApAwAiETcCACAJQdCW4wApAwAiEjcCACACQdgAaiARNwMAIAggBykCADcCACAIQQhqIAdBCGooAgA2AgAgAkEBOgB4IAIgATYCcCACIAA2AnQgAkEBOgCJASACIBI3A1AgAiABLQA8OgCMASACIAEvATo7AYoBIAEtADghACACIAEtAD06AI0BIAIgADoAiAEgA0EgaiACQdAAaiIAENUDIAAQ4SgMCAsgA0EwaiABEIcaIAEtADkhACADKAIIQQNGBEAgAUEAOgA5IANBDGogARC7KwsgAUEBOgA5IANBPGogARCcJSABIAA6ADkgA0FAayABELAlDAcLIANBJGogARCcJSADQShqIAEQzyMgA0EsaiABEIcaDAYLIAEgA0EEahCfFQwFCyABIANBBGoQuAsMBAsgAygCCEEFRwRAIAEgA0EIahDgIQsgA0E8aiABEJwlIANBQGsgARDPIyADQTBqIAEQhxoMAwsgASAOOgA9IAJB0AFqJAAPCyACKAJ0IANBNGoQ2yEgAkHQAGogA0EgahCjCwsgAkHQAGoQ4SgMAAsAC8wNAgx/A34jAEHgAGsiBiQAAkACQCAALQAoRQRAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJA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EGogABC/KyABKAIMQRhsIQIgASgCCCEBA0AgAkUNDCABQRRqIAAQoSUgASAAEIMaIAJBGGshAiABQRhqIQEMAAsACyABQQRqIAAQvysMCgsgACABKAIEIgFByABqEIIhIAEoAgBBCEcEQCABIAAQwSMgACABQShqEIIhCyABQeAAaiAAEMsjDAkLIAFBBGogABC/KyABQQhqIAAQ0SsMCAsgAUEEaiAAEL8rIAFBCGogABDRKwwHCyAALQAmIQMgAEEBOgAmAkAgASgCBCIFQQJGDQAgAUEIaiECIAVBAXFFBEAgAiAAENIrDAELIAIgABC/KwsgACADOgAmIAFBGGogABChJSABQRxqIAAQoSUgACABKAIMEMoBDAYLIAAgAUEEahDCFiABQQxqIAAQvysgAUEQaiAAENErDAULIAAgAUEEaiIFEMIWIAFBDGoiByAAEL8rIAFBEGogABDRKyABLQAcDQMgASgCBEECRw0DIAEoAggiAigCACIDBH8gAwUgBCACQQhqEJEMIAQoAgAgBCgCBEGgseAAQQUQzR8EQBDaIiEDIARBMGoiBiACENsEIAYgAyAGQSgQ9gYiAkEoEPYGGiAEKAIwDQQgBEEoaiACQSBqKQMANwMAIARBIGogAkEYaikDADcDACAEQRhqIAJBEGopAwA3AwAgBCACKQMINwMQIARBADYCCCACENEsIARBCGoQ/ykhAiAFEJIdIAEgAjYCCCABQQI2AgQLIAIoAgALQQZHDQMgAigCBEGgseAAQQUQ7x5FDQMgACACKAIEEMkBDAMLIAFBCGogABC2DAwDCyAAQQA6ACQgAUEEaiAAEL8rIAAgCDoAJSAAQQM6ACQgACABKAIEEPoMDAILIARBATYCDCAEQeys3wA2AgggBEIBNwIUIARBtQI2AlwgBCAEQdgAajYCECAEIARBMGo2AlggBEEIakHQrd8AEKEdAAsgBygCACIBKAIAIgJBGUcgAkEiR3ENACAAIAEQyQELIAAgCDoAJSAAIAk6ACQgBEHgAGokAAunDQIIfwF+IwBB0ABrIgMkACABKAIAKAIAIQQgA0EANgIYIANBQGsgAiADQRhqQbio4ABBARCUEwJAAkACQAJAAkAgAy0AQEEERwRAIAMpA0AiC0L/AYNCBFINAQsgA0FAayAEQUBrIAIQjgogAy0AQEEERwRA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IAJBATYCHCACQaS3xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDCALIAJBADYCKCACQQE2AhwgAkHot8cANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwfCyACQQA2AiggAkEBNgIcIAJBnLjHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMHgsgAkEANgIoIAJBATYCHCACQby4xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDB0LIAJBADYCKCACQQE2AhwgAkHcuMcANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwcCyACQQA2AiggAkEBNgIcIAJB/LjHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMGwsgAkEANgIoIAJBATYCHCACQaC5xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDBoLIAJBADYCKCACQQE2AhwgAkHcuccANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwZCyACQQA2AiggAkEBNgIcIAJBgLrHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMGAsgAkEANgIoIAJBATYCHCACQci6xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDBcLIAJBADYCKCACQQE2AhwgAkHsuscANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwWCyACQQA2AiggAkEBNgIcIAJBlLvHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMFQsgAkEANgIoIAJBATYCHCACQay7xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDBQLIAJBADYCKCACQQE2AhwgAkHUu8cANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwTCyACQQA2AiggAkEBNgIcIAJBgLzHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMEgsgAkEANgIoIAJBATYCHCACQZy8xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDBELIAJBADYCKCACQQE2AhwgAkHAvMcANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwQCyACQQA2AiggAkEBNgIcIAJB4LzHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMDwsgAkEANgIoIAJBATYCHCACQYi9xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDA4LIAJBADYCKCACQQE2AhwgAkGsvccANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwNCyACQQA2AiggAkEBNgIcIAJBxL3HADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMDAsgAkEANgIoIAJBATYCHCACQdy9xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDAsLIAIgACgCBDYCDCACQQI2AhwgAkGgvscANgIYIAJCATcCJCACQQk2AhQgAiACQRBqNgIgIAIgAkEMajYCECABKAIUIAEoAhggAkEYahCVJAwKCyACQQA2AiggAkEBNgIcIAJB7L7HADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMCQsgAkEANgIoIAJBATYCHCACQaS/xwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDAgLIAJBADYCKCACQQE2AhwgAkHIv8cANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwHCyACQQA2AiggAkEBNgIcIAJB+L/HADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMBgsgAkEANgIoIAJBATYCHCACQdTAxwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDAULIAJBADYCKCACQQE2AhwgAkHAwccANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwECyACQQA2AiggAkEBNgIcIAJBzMLHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQMAwsgAkEANgIoIAJBATYCHCACQfTCxwA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqEJUkDAILIAJBADYCKCACQQE2AhwgAkGcw8cANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAwBCyACQQA2AiggAkEBNgIcIAJB6MPHADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQlSQLIAJBMGokAAuaDgEOfyMAQbABayIDJAAgAUEoaiIFEKUgIQsCQCAFEMgNIgRFBEAgASgCgAIhASADQQA6AGggASABIANB6ABqEOsUIQEgAEGAgICAeDYCACAAIAE2AgQMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAIAQoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQFBuePgAEEoQbiM4AAQ2hcACyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgA0H0AGoiBiABQdQCaikCADcCACADQfwAaiIIIAFB3AJqKAIANgIAIAMgASkCzAI3AmwgAyAENgJoIANB6ABqIgoQvgogA0EANgI8IANCgICAgMAANwI0IAogASACEMUEIAMoAmghBCADLQCAASIHQQJGDQUgAUHMAmohCSADQdgAaiIMIAgoAgA2AgAgA0HQAGoiCCAGKQIANwMAIAMgAykCbDcDSCADIAMoAIEBNgJAIAMgA0GEAWooAAA2AENBIEEIEIwgIgYgBDYCACAGIAc6ABggBiADKQNINwIEIAZBDGogCCkDADcCACAGQRRqIAwoAgA2AgAgBiADKAJANgAZIAZBHGogAygAQzYAACADQQE2AmQgAyAGNgJgIANBATYCXCAKQQRyIQYgA0GpAWohDCADQZABakEEciEIIANBgQFqIQoDQCAHQQFxRQRAAkAgBRDIDSIEBEAgBCgCAEEWRg0BCyADQfAAaiAFEIAQIANBEGogBRDqEyADQcjn3wA2AmwgA0E0OgBoIAMoAhAgAygCFCADQegAahDrFCEEIAUQyA0iAkUNByACKAIAQSRHDQcgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0LIAEgASgCzAIQ+wsMBwsgBiAJKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQQhqIg0gCUEIaiIHKQIANwIAIAZBEGoiDiAJQRBqIhAoAgA2AgAgAyAENgJoIANB6ABqIg8QvgogDyABQQEQtxIgA0EgaiADKAJoEIkGIAMoAiQhBCADKAIgDQUgA0E0aiAEELIbIA8Q7yQCQCAFEMgNIgQEQCAEKAIAQQ5GDQELIANB8ABqIAUQgBAgA0EYaiAFEOoTIANBuNnfADYCbCADQTQ6AGggAygCGCADKAIcIANB6ABqEOsUIQQgBRDIDSICRQ0HIAIoAgBBJEcNByABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQogASABKALMAhD7CwwHCyAGIAkpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA0gBykCADcCACAOIBAoAgA2AgAgAyAENgJoIANB6ABqIgQQvgogBCABIAIQxQQgAygCaCEEIAMtAIABIgdBAkYNBiAIIAYpAgA3AgAgDCAKKAAANgAAIAhBEGogDigCADYCACAIQQhqIA0pAgA3AgAgDEEDaiAKQQNqKAAANgAAIAMgBzoAqAEgAyAENgKQASADQdwAaiADQZABahCuEAwBCwsgA0EwaiICIANB5ABqKAIANgIAIAMgAykCXDcDKCADKAI4IQQgAygCNCIGQYCAgIB4Rg0GIAMoAjwhByADQZgBaiACKAIANgIAIAMgAykDKDcDkAEgAyAHNgJQIAMgBDYCTCADIAY2AkggBRDIDSICBEAgAigCAEERRg0CCyADQfAAaiAFEIAQIANBCGogBRDqEyADQejh3wA2AmwgA0E0OgBoIAMoAgggAygCDCADQegAahDrFCECIAUQyA0iBUUNCiAFKAIAQSRGDQIMCgsgASgCzAIhASAAQYCAgIB4NgIAIAAgATYCBAwKCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0H0AGogCUEIaikCADcCACADQfwAaiIFIAlBEGooAgA2AgAgAyAJKQIANwJsIAMgAjYCaCADQegAahC+CiABKAKcAyEBIANB8ABqIgIgA0HQAGooAgA2AgAgBSADQZgBaigCADYCACAAIAMpAkg3AgAgACALIAEgASALSRs2AhwgACALIAEgASALSxs2AhggAyADKQOQATcCdCAAQQhqIAIpAwA3AgAgAEEQaiADQfgAaikDADcCAAwJCyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD7CwwHCyADQegAahDvJAsgA0HcAGoQ3yILIANBNGoQziYLIABBgICAgHg2AgAgACAENgIEDAQLQbnj4ABBKEGQhuAAENoXAAtBuePgAEEoQaCG4AAQ2hcAC0G54+AAQShByIzgABDaFwALIABBgICAgHg2AgAgACACNgIEIANBkAFqEN8iIANByABqEM4mCyADQbABaiQAC/ENAQ5/IwBBsAFrIgMkACABQShqIgUQvyAhCwJAIAUQ4w0iBEUEQCABKALYAiEBIANBADoAaCABIAEgA0HoAGoQ6xQhASAAQYCAgIB4NgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkAgBCgCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRg0BQbnj4ABBKEG4jOAAENoXAAsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggA0H0AGoiBiABQTRqKQIANwIAIANB/ABqIgggAUE8aigCADYCACADIAEpAiw3AmwgAyAENgJoIANB6ABqIgoQvwogA0EANgI8IANCgICAgMAANwI0IAogASACEMYEIAMoAmghBCADLQCAASIHQQJGDQUgAUEsaiEJIANB2ABqIgwgCCgCADYCACADQdAAaiIIIAYpAgA3AwAgAyADKQJsNwNIIAMgAygAgQE2AkAgAyADQYQBaigAADYAQ0EgQQgQjCAiBiAENgIAIAYgBzoAGCAGIAMpA0g3AgQgBkEMaiAIKQMANwIAIAZBFGogDCgCADYCACAGIAMoAkA2ABkgBkEcaiADKABDNgAAIANBATYCZCADIAY2AmAgA0EBNgJcIApBBHIhBiADQakBaiEMIANBkAFqQQRyIQggA0GBAWohCgNAIAdBAXFFBEACQCAFEOMNIgQEQCAEKAIAQRZGDQELIANB8ABqIAUQ5gsgA0EQaiAFEJ8UIANByOffADYCbCADQTQ6AGggAygCECADKAIUIANB6ABqEOsUIQQgBRDjDSICRQ0HIAIoAgBBJEcNByABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNCyABIAEoAiwQggwMBwsgBiAJKQIANwIAIAEoAighBCABQSU2AiggASABKQNANwN4IAZBCGoiDSAJQQhqIgcpAgA3AgAgBkEQaiIOIAlBEGoiECgCADYCACADIAQ2AmggA0HoAGoiDxC/CiAPIAFBARDHEiADQSBqIAMoAmgQjAYgAygCJCEEIAMoAiANBSADQTRqIAQQshsgDxCKJgJAIAUQ4w0iBARAIAQoAgBBDkYNAQsgA0HwAGogBRDmCyADQRhqIAUQnxQgA0G42d8ANgJsIANBNDoAaCADKAIYIAMoAhwgA0HoAGoQ6xQhBCAFEOMNIgJFDQcgAigCAEEkRw0HIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0KIAEgASgCLBCCDAwHCyAGIAkpAgA3AgAgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggDSAHKQIANwIAIA4gECgCADYCACADIAQ2AmggA0HoAGoiBBC/CiAEIAEgAhDGBCADKAJoIQQgAy0AgAEiB0ECRg0GIAggBikCADcCACAMIAooAAA2AAAgCEEQaiAOKAIANgIAIAhBCGogDSkCADcCACAMQQNqIApBA2ooAAA2AAAgAyAHOgCoASADIAQ2ApABIANB3ABqIANBkAFqEK4QDAELCyADQTBqIgIgA0HkAGooAgA2AgAgAyADKQJcNwMoIAMoAjghBCADKAI0IgZBgICAgHhGDQYgAygCPCEHIANBmAFqIAIoAgA2AgAgAyADKQMoNwOQASADIAc2AlAgAyAENgJMIAMgBjYCSCAFEOMNIgIEQCACKAIAQRFGDQILIANB8ABqIAUQ5gsgA0EIaiAFEJ8UIANB6OHfADYCbCADQTQ6AGggAygCCCADKAIMIANB6ABqEOsUIQIgBRDjDSIFRQ0KIAUoAgBBJEYNAgwKCyABKAIsIQEgAEGAgICAeDYCACAAIAE2AgQMCgsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0H0AGogCUEIaikCADcCACADQfwAaiIFIAlBEGooAgA2AgAgAyAJKQIANwJsIAMgAjYCaCADQegAahC/CiABKAJ8IQEgA0HwAGoiAiADQdAAaigCADYCACAFIANBmAFqKAIANgIAIAAgAykCSDcCACAAIAsgASABIAtJGzYCHCAAIAsgASABIAtLGzYCGCADIAMpA5ABNwJ0IABBCGogAikDADcCACAAQRBqIANB+ABqKQMANwIADAkLIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0GIAEgASgCLBCCDAwHCyADQegAahCKJgsgA0HcAGoQ3yILIANBNGoQziYLIABBgICAgHg2AgAgACAENgIEDAQLQbnj4ABBKEGQhuAAENoXAAtBuePgAEEoQaCG4AAQ2hcAC0G54+AAQShByIzgABDaFwALIABBgICAgHg2AgAgACACNgIEIANBkAFqEN8iIANByABqEM4mCyADQbABaiQAC4EMAQ1/IwBBMGsiCyQAIAJBBGshEwJAAkADQAJAAkACQAJAIAFBIU8EQCAEDQEgACABIAIgA0EB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IgYgB0EQaigCADYCACACIAcpAgA3AlwgAiADNgJYIAwQvwogAkEBOgD7ASACIAEpAYIDNwDvASACIAFBigNqIgMoAQA2APcBIAIgASkAjwM3APwBIAIgAUGXA2oiCCkAADcAhAIgAkHxAGogCCkAADcAACAGIAFBkgNqKQEANwIAIAUgAykBADcCACACIAEpAYIDNwJcIAFBgAFqIAJB7wFqEMAIIAIgATYCWCACQQhqIAEQkQIgAigCDCEGIAIoAghFBEAgDSEDIA4hBSACIAY2AowCIAwQiiYCQAJAAkAgAigCwAEiCEEBaw4GAAAAAgICAQsgBSEDCyABKAJ8IQVBDEEEEIwgIgkgBjYCACAJIAsgBSAFIAtJGzYCCCAJIAsgBSAFIAtLGzYCBCADEPUnIAMgCTYCAAwCCyACQYwCahC4BQwBCyACQdgAahCKJgwBCyAEEOMNIgMEQCADKAIAQQpGDQILIAJB4ABqIAQQ5gsgAiAEEJ8UIAJB0N3fADYCXCACQTQ6AFggAigCACACKAIEIAJB2ABqEOsUIQYgBBDjDSIDRQ0AIAMoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBCABIAEoAiwQggwLIAJBwAFqEJgSDAILIAEoAighAyABQSU2AiggASABKQNANwN4IAJB5ABqIAdBCGopAgA3AgAgAkHsAGogB0EQaigCADYCACACIAcpAgA3AlwgAiADNgJYIAJB2ABqEL8KIAJBIGogAkHIAWoiA0EIaikDADcDACACQShqIANBEGopAwA3AwAgAkEwaiADQRhqKQMANwMAIAIgAykDADcDGCACKALEASEGCyACQdAAaiIDIAJBMGopAwA3AwAgAkHIAGoiBSACQShqKQMANwMAIAJBQGsiByACQSBqKQMANwMAIAIgAikDGDcDOCACQcABaiABQQAQkgYgAkHoAGogBykDADcDACACQfAAaiAFKQMANwMAIAJB+ABqIAMpAwA3AwAgAiAENgKEASACIAY2AlwgAiAINgJYIAIgAikDODcDYCACKALAASACIAJBFGo2AoABQYCAgIB4RwRAIAJBoAFqIAMpAwA3AwAgAkGYAWogBSkDADcDACACQZABaiAHKQMANwMAIAJBsAFqIAJByAFqKQIANwMAIAJBuAFqIAJB0AFqKQIANwMA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aiACQUBrEP0PIAIoAhAhASACKAIUIgQEQCAAIAEgBBCEDjYCGCAAIAQ2AgggACABNgIEIABBATYCAAwDCyAAEKsoIAFBABDBJAwCCyAAIAJBLGoQ5Qc2AhggAEECNgIAIABBFGogAkE8aigCADYCACAAQQxqIAJBNGopAgA3AgAgACACKQIsNwIEDAoLIAJB6ABqEPYcIAJBATYCZCAAIAJB5ABqEOUHNgIYIABBAjYCACAAQRRqIAJB9ABqKAIANgIAIABBDGogAkHsAGopAgA3AgAgACACKQJkNwIECyACQSxqEJQeDAgLIAAgASgCBCIBEK4UNgIYIAAgATYCBCAAQQM2AgAMBwsgAkHkAGogASgCDBDqASABKAIEIQQgASgCCCEGIAEtABQhByABKAIQIQVBHEEEEIwgIgNBGGoiASACQfwAaigCADYCACADQRBqIAJB9ABqKQIANwIAIANBCGogAkHsAGopAgA3AgAgAyACKQJkNwIAIAIgBTYCOCACIAc6ADwgAiAGNgIwIAIgBDYCLCACIAM2AjQgASgCACIBKAIIQQFHDQQgASgCDA0EIAJBATYCLCACIAVBAEciBTYCOCACIARBAXMgBkEAR3IiBjYCMEEBDAULIAEoAgQhAQwBCwsgASgCCCEFIAJBGGogASgCDCIDQRwQqBQgAkEANgJUIAIgAikDGDcCTCACQcwAaiADEM4eIAIoAlQhASACIAMEfyABIANqIAIoAlAgAUEcbGohAQNAIAJB5ABqIAUQ6gEgAUEYaiACQfwAaigCADYCACABQRBqIAJB9ABqKQIANwIAIAFBCGogAkHsAGopAgA3AgAgASACKQJkNwIAIAFBHGohASAFQRxqIQUgA0EBayIDDQALBSABCzYCVCAAIAJBzABqEKsBDAMLIAEoAgghBSACQSBqIAEoAgwiA0EcEKgUIAJBADYCYCACIAIpAyA3AlggAkHYAGogAxDOHiACKAJgIQEgAiADBH8gASADaiACKAJcIAFBHGxqIQEDQCACQeQAaiAFEOoBIAFBGGogAkH8AGooAgA2AgAgAUEQaiACQfQAaikCADcCACABQQhqIAJB7ABqKQIANwIAIAEgAikCZDcCACABQRxqIQEgBUEcaiEFIANBAWsiAw0ACwUgAQs2AmAgACACQdgAahBaDAILIAQLIQECQAJAAkACQCAFDgIAAQILIAFFIAZyDQEgABCrKCADEJQjDAILIAFFIAZBAUdyDQAgACADKQIANwIAIABBGGogA0EYaigCADYCACAAQRBqIANBEGopAgA3AgAgAEEIaiADQQhqKQIANwIADAELIAAgAkEsahDwBjYCGCAAQQQ2AgAgACACKQIsNwIEIABBFGogAkE8aigCADYCACAAQQxqIAJBNGopAgA3AgAMAQsgAxDSKgsgAkGAAWokAAv8CgEHfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiAkEMayIEIARBJk8bQQFrDiQAAQIUFQMEBQYHCAkWExMWCgsMDRMUFA4TEw8QFxQUFxEXExITCyAAKAIMQQR0IQMgACgCCCEAA0AgA0UNEyAAKAIAQQJHBEAgAEEMaiABEOMsCyAAQRBqIQAgA0EQayEDDAALAAsgAEEEaiABEPsJDwsgACgCICABEJEQDwsgAEEEaiABEOMsIABBCGogARDjLA8LIABBOGoCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4LAQIDBAUGBwgJCwoACyAAKQMIIAAoAhggARCgHAwKCyAAQQhqIAEQhx8MCQsgAEEIaiABEPchDAgLIABBBGogARDjLAwHCyAAQQRqIAEQ7RgMBgsgAEEEaiABEMklDAULIABBBGogARDJJQwECyAAQQRqIAEQ4ywMAwsgAEEEaiABEMklDAILIABBBGogARDKJQwBCyAAQQhqIQICQAJAIAAoAgRBAWsOAgECAAsgAiABEIAVDAELIAIgARC5CwsgARDjLA8LIABBCGogARCHHw8LIABBCGogARD3IQ8LIABBBGogARDjLCAAQQhqIAEQ4ywMDQsgAC0AGEEFRgRAIABBEGogARDjLAsgAEEEaiABEO4YIABBKGogARDjIw8LIABBEGogARDjLCAAKAIEQYCAgIB4RwRAIABBBGogARDuGAsgAEEgaiABEOMjDwsgAEEEaiABEOMsIABBGGogARDjIyAAKAIIIAEQkhoPCyAAKAIMQShsIQMgACgCCCECA0AgAwRAIAIgARCVESADQShrIQMgAkEoaiECDAELCyAAKAIQIgIoAgBBgICAgHhGBEAgAkEEaiABEOMsCyAAKAIgIgIE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C0L/AYNCBFINAQsgA0EANgIcIANBMGogAiADQRxqQYit4ABBARCUEwJAIAMtADBBBEYNACADKQMwIgtC/wGDQgRRDQAgACALNwIADAkLIAIgAigCLEEBajYCLCAEQQJHDQEgASgCBCABKAIQIQYgA0EwaiABKAIMIgggASgCCCIEQYGABCAEENUXIAMtADBBBUcEQCADKQMwIQsMBQsgAygCNBogBEUNAgJAIAItAE0NACADQTBqIAIQmxEgAy0AMEEERg0AIAMpAzAiC0L/AYNCBFINBQsgA0EAOgA/IANBADoAKEE0aiEBIAQhBQNAIAVFBEAgA0EwaiACIAggBkGBgAQgCSAKENUBIAMtADBBBEYNBSADKQMwIgtC/wGDQgRSDQYMBQsgA0EQaiABQTRrIgcQuhEgA0EwaiACIAZBgYAEIAkgCiADKAIQIAMoAhQgA0EoaiADQT9qEIsEIAMtADBBBEcEQCADKQMwIgtC/wGDQgRSDQYLIANBMGogByACEDMgAy0AMEEERwRAIAMpAzAiC0L/AYNCBFINBgsCQCADLQA/RQRAIANBAToAPwwBCyACKAJERQ0AIANBMGogAgJ/AkACQAJAAkACQAJAAkACQAJAIAcoAgBBAWsOCQIBAgMEBQYHCAALIAFBHGsoAgAMCAsgAUEgaygCAAwHCyABKAIADAYLIAFBKGsoAgAMBQsgAUEoaygCAAwECyABQTBrKAIAKAIkDAMLIAFBKGsoAgAMAgsgAUEoaygCAAwBCyADQQhqIAFBLGsQpQQgAygCDAtBABDoAiADLQAwQQRGDQAgAykDMCILQv8Bg0IEUg0GCyADLQAoBEAgAiACKAIsQQFrNgIsIANBADoAKAsgAyAHELoRIAVBAWshBSABQThqIQFBASEJIAMoAgQhCgwACwALIAAgCzcCAAwHCyADQTBqIAIgASgCAEEAENEBAkAgAy0AMEEERwRAIAMpAzAiC0L/AYNCBFINAQsCQCABLQAkRQ0AIANBADYCMCADQShqIAIgA0EwakGKreAAQQcQlBMgAy0AKEEERwRAIAMpAygiC0L/AYNCBFINAgsgA0EwaiACELgRIAMtADBBBEYNACADKQMwIgtC/wGDQgRSDQELIANBADYCMCADQShqIAIgA0EwakGRreAAQQkQlBMgAy0AKEEERwRAIAMpAygiC0L/AYNCBFINAQsgA0EwaiACELgRIAMtADBBBEcEQCADKQMwIgtC/wGDQgRSDQELIANBMGogAUEIaiACEMkSIAMtADBBBEcEQCADKQMwIgtC/wGDQgRSDQELAkAgAi0ATQ0AIANBMGogAhC4ESADLQAwQQRGDQAgAykDMCILQv8Bg0IEUg0BCyADQTBqIAEoAiAgAhDwASADLQAwQQRGDQYgAykDMCILQv8Bg0IEUQ0GCyALQv8Bg0IEUQ0FIAAgCzcCAAwGCyACLQBNDQAgA0EwaiACEJsRIAMtADBBBEYNACADKQMwIgtC/wGDQgRSDQELIANBMGogAiAGIARFQYGABBChDyADLQAwQQRGDQEgAykDMCILQv8Bg0IEUQ0BCyALQv8Bg0IEUg0BCyADQTBqIAIgCEEAENEBIAMtADBBBEYNASADKQMwIgtC/wGDQgRRDQELIAtC/wGDQgRRDQAgACALNwIADAELIAIgAigCLEEBazYCLCADQTBqIAIgA0EcakGJreAAQQEQlBMCQCADLQAwQQRHBEAgAykDMCILQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACALNwIACyADQUBrJAAL4QsCCH8BfiMAQdABayIDJAAgA0EkaiABELkVIAMoAiQiAUEoaiIEEKUgIQcCQAJAAkACQCAEIAIQlg9FBEAgBBDIDSIFRQRAIAEoAoACIQUgA0EAOgBoIAUgBSADQegAahDrFBCYGCEFCyADQbQCNgKcASADIAU2ArgBQQEhCCADQQE2AkwgA0Go7uAANgJIIANCATcCVCADIANBuAFqNgKYASADIANBmAFqNgJQIANB8ABqIANByABqEOYUIANBGGogBBDqEyADIAI2AmwgA0E0OgBoIAMoAhggAygCHCADQegAahDrFCECIAQQyA0iBEUNBCAEKAIAQSRHDQQgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ+wsMBAsgBBClICEJIAQQyA0iAkUNASACKAIAQQJHDQEgAi0ACA0BIAItAAlBFEcNASADQd0AaiABQb8CaikAADcAACADQdgAaiABQboCaikAADcDACADQdAAaiABQbICaikAADcDACADIAEpAKoCNwNIIAQQjxMiAkUNASACKAIAQQJHDQEgA0HIAGogAi0ACCACQQlqLQAAENUJDQEgBBDIDSICRQRAIAEoAoACIQEgA0EAOgBoIAEgASADQegAahDrFCECDAMLIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASgCzAIhAgwEC0G54+AAQShBuOzfABDaFwALIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQfQAaiABQdQCaikCADcCACADQfwAaiABQdwCaigCADYCACADIAEpAswCNwJsIAMgAjYCaCADQegAaiICEL4KQQEhBSAEEMgNDQEgASgCgAIhASADQQA6AGggASABIAIQ6xQhAgwCC0G54+AAQShBqOzfABDaFwALIANB/QBqIAFBvwJqKQAANwAAIANB+ABqIAFBugJqKQAANwMAIANB8ABqIAFBsgJqKQAANwMAIAMgASkAqgI3A2gCQCAEEMgNIgJFDQAgAigCAEECRw0AIANB6ABqIAItAAggAkEJai0AABDVCQ0AIAQQjxMiAkUNACACKAIAQQJHDQAgAi0ACA0AIAItAAlBDkcNACAEEOogQQFzIQYLIAUgBnJFBEAgA0EQaiABQQAgBxD6BiADKAIUIQIgAygCECEIDAILIANBmAFqIgogARDNBCADKAKgASECIAMpA5gBIgtQDQAgAyADKAKkATYClAEgAyACNgKQASADIAs3A4gBQQAhAgJAAkAgBgRAIAQQyA0iAkUEQCABKAKAAiEBIANBADoAmAEgASABIAoQ6xQhAgwDCyACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEoAswCIQIMAwsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBpAFqIAFB1AJqKQIANwIAIANBrAFqIAFB3AJqKAIANgIAIAMgASkCzAI3ApwBIAMgAjYCmAEgA0GYAWoQvgogA0EIaiABQQAgBBClIBD6BiADKAIMIQIgAygCCA0CCyABKAKcAyEGIANBuAFqIANBiAFqEIMcIANBrAFqIANByAFqKQMANwIAIANBpAFqIANBwAFqKQMANwIAIAMgAykDuAE3ApwBQdgAQQgQjCAiBEESNgIAIAQgBToALCAEIAI2AiggBCAJIAYgBiAJSRs2AiQgBCAJIAYgBiAJSxs2AiAgBCADKQKYATcCBCAEQQxq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6ABqEOsUELYYIQULIANBtAI2ApwBIAMgBTYCuAFBASEIIANBATYCTCADQaju4AA2AkggA0IBNwJUIAMgA0G4AWo2ApgBIAMgA0GYAWo2AlAgA0HwAGogA0HIAGoQ3RQgA0EYaiAEEJ8UIAMgAjYCbCADQTQ6AGggAygCGCADKAIcIANB6ABqEOsUIQIgBBDjDSIERQ0EIAQoAgBBJEcNBCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABIAEoAiwQggwMBAsgBBC/ICEJIAQQ4w0iAkUNASACKAIAQQJHDQEgAi0ACA0BIAItAAlBFEcNASADQd0AaiABQZcDaikAADcAACADQdgAaiABQZIDaikAADcDACADQdAAaiABQYoDaikAADcDACADIAEpAIIDNwNIIAQQxhIiAkUNASACKAIAQQJHDQEgA0HIAGogAi0ACCACQQlqLQAAENUJDQEgBBDjDSICRQRAIAEoAtgCIQEgA0EAOgBoIAEgASADQegAahDrFCECDAMLIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABKAIsIQIMBAtBuePgAEEoQbjs3wAQ2hcACyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCADQfQAaiABQTRqKQIANwIAIANB/ABqIAFBPGooAgA2AgAgAyABKQIsNwJsIAMgAjYCaCADQegAaiICEL8KQQEhBSAEEOMNDQEgASgC2AIhASADQQA6AGggASABIAIQ6xQhAgwCC0G54+AAQShBqOzfABDaFwALIANB/QBqIAFBlwNqKQAANwAAIANB+ABqIAFBkgNqKQAANwMAIANB8ABqIAFBigNqKQAANwMAIAMgASkAggM3A2gCQCAEEOMNIgJFDQAgAigCAEECRw0AIANB6ABqIAItAAggAkEJai0AABDVCQ0AIAQQxhIiAkUNACACKAIAQQJHDQAgAi0ACA0AIAItAAlBDkcNACAEEJ4hQQFzIQYLIAUgBnJFBEAgA0EQaiABQQAgBxD+BiADKAIUIQIgAygCECEIDAILIANBmAFqIgogARDPBCADKAKgASECIAMpA5gBIgtQDQAgAyADKAKkATYClAEgAyACNgKQASADIAs3A4gBQQAhAgJAAkAgBgRAIAQQ4w0iAkUEQCABKALYAiEBIANBADoAmAEg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IAAoAgQQiwMgASAFKAIUIgIgACgCDCIDIAIgA0kbIAIgAyACIANLGxDGGCAAQQRqIAEQlS0MBwsgASAAQQRqELgcDAYLIAEgAEEEahDMDgwFCyABIABBBGoQiRUMBAsgASAAQQRqEMwODAMLIABBBGogARC9GQwCCyACIANBvLzgABCbEAALIAAoAiAiAgRAIAEgAkEMaigCACACQRBqKAIAEJctCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARCWECACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEKcaDAELIABBBGogARCVLQsgBUEgaiQAC4YMAgl/A34jAEGgB2siAyQAIANB+ABqQdiW4wApAwAiDTcCACADQQA2AmwgA0KAgICAwAA3AmQgA0EAOgBgIANBATYCgAEgA0GUutgANgJcIANCgICAgBA3AlQgA0KAgICAwAA3AkwgA0ELNgIAIANB0JbjACkDACIONwJwIANBxANqQfzU2gBBBRCiESADQQo2AsADIANBwANqIgUQjx0hBCAFIAEgAhCiESADIAMgBCAFEFEiBjYChAEgA0GQAWpBADsBACADQgA3A4gBIANBADYCnAEgA0KAgICAwAA3ApQBIAUgBkEIahCmESADQaABaiIBIANBiAFqQQEgBUEAEMMFIAMgAy0AmwMgAy0AmANBAkZxOgDuBiADIAMpAaIDNwDgBiADIAMoAaoDNgDoBiADIAMvAa4DOwDsBiADIAMpALEDNwDvBiADIAMoALkDNgD3BiADIAMvAL0DOwD7BiABIANB4AZqIgQQyAggA0HoA2ogAUH0ARD2BiEBIAMoApQDIQIgA0HgBWogA0GYA2pBKBD2BhogA0HcA2ogDTcCACADIAI2AtwGIAMgAjYC2AYgAyACNgLcBSADQSU2ArAGIANBJTYCiAYgA0EANgLQAyADQoCAgICAATcDyAMgA0EANgLAAyADQQA6AOQDIAMgDjcC1AMgAyADLQDqBToA4AYgA0EAOgDhBiADIAMtAIYGOgD8BiADIAMpAuwFNwDiBiADIAMpAvQFNwDqBiADIAMpAvwFNwDyBiADIAMvAYQGOwD6BiABIAQQyAggARClICECAkACQCABEMgNIgFFBEAgAygCwAUhASADQQA6AIgHIAMgASABIANBiAdqEOsUNgKEByADQQE2AoAHDAELIANBADYCgAcgAyABNgKEByABKAIAQSNHDQAgAyADKQOgBjcD2AYgAygCiAYgA0ElNgKIBkEjRw0BIAMpA5AGIQwLIANBgAdqEKYjIANBiAdqIANBwANqQQFBAUEAEIYDAkAgAygCiAciB0GAgICAeEcEQCACIAMoAtwGIgEgASACSxshAiADKAKQByEJIAMoAowHIQoMAQsgAygCjAchAiAMENYmQYCAgIB4IQcLIANBsAZqIANBiAZqIANB4AZqIAMoAsQFEOYQIAMoAuQGIQEgA0GUAWogAygC6AYiBBDwHiADKAKYASADKAKcASILQQJ0aiABIARBAnQQ9gYaIANBADYC6AYgAyAEIAtqNgKcASABQQAQ8h4gAygC4AYgARC7KSADKALMAyADKALQAxCrHiADKALIAyADKALMAxDPKSADKALUAyADKALYAxD0FgJAIAMoAugDRQ0AIAMoAuwDBEAgA0HsA2oQuBQLIAMoAvADRQ0AIANB8ANqELkUCyADQfwDahCmICADKALEBRDsEyADKALIBRDsEyADKALMBRC9FyADKALQBRDTGBCmCRCmCQJAIAdBgICAgHhHBEAgA0HwAGohCCADQRBqIQQgA0EEaiEFIAlBMGwhAiAKIQEDQCACRQ0CIAJBMGshAiABEJwEIAFBMGohAQwACwALIAMgAjYC4AYgA0EBNgLEAyADQcDW2gA2AsADIANCATcCzAMgA0GOBTYCpAEgAyADQaABajYCyAMgAyADQeAGajYCoAEgA0HAA2pByNbaABChHQALIAwQ1iYgACAJNgIIIAAgCjYCBCAAIAc2AgAgBiAGKAIAIgBBAWs2AgAgAEEBRgRAIANBhAFqENALCyADKAJoIAMoAmwQuBcgAygCZCADKAJoELspIAgQggkgAygCWCEAIAMoAlwiASgCACICBEAgACACEQEACyABKAIEIgIEQCAAIAIgASgCCBC9EQsgAygCUCADKAJUELcXIAMoAkwgAygCUBDRKQJAIAMoAgAiAEELRg0AAkACQEEGIABBAmsiACAAQQlPG0ECaw4FAgICAgEACyAFIQQLIAQoAgAgBEEEaigCABCnJAsgAygCmAEiACADKAKcARDyHiADKAKUASAAELspIANBoAdqJAAPC0G54+AAQShBnPXf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8ABqNgKwASAEIARBPGo2AnAgASAEQagBahCwJA0AIARBADYCuAEgBEEBNgKsASAEQeTG3wA2AqgBIARCBDcCsAEgASAEQagBahCwJA0AIAQoAmQgBCgCaBDyHAwCCyAEKAJkIAQoAmgQ8hwLIAQoAjwgBCgCQBC4KUEBDAELIAQoAjwgBCgCQBC4KUEACyAEQcABaiQAC4YLAQJ/IwBBEGsiAiQAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAQQxrIgMgA0EmTxtBAWsOJQECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUACyACIABBBGo2AgwgAUHJodkAQQQgAkEMakHGAhDECgwlCyACIABBBGo2AgwgAUHFpuAAQQUgAkEMakHHAhDECgwkCyACIABBBGo2AgwgAUHOpuAAQQYgAkEMakHIAhDECgwjCyACIABBCGo2AgwgAUHhs98AQQIgAkEMakHJAhDECgwiCyACIABBBGo2AgwgAUHNodkAQQUgAkEMakHKAhDECgwhCyACIABBBGo2AgwgAUHSodkAQQYgAkEMakHLAhDECgwgCyACIABBBGo2AgwgAUHYodkAQQMgAkEMakHMAhDECgwfCyACIAA2AgwgAUHUpuAAQQYgAkEMakHNAhDECgweCyACIABBCGo2AgwgAUHbodkAQQYgAkEMakHOAhDECgwdCyACIABBCGo2AgwgAUHhodkAQQkgAkEMakHPAhDECgwcCyACIABBBGo2AgwgAUHqodkAQQQgAkEMakHQAhDECgwbCyACIABBBGo2AgwgAUHuodkAQQQgAkEMakHRAhDECgwaCyACIABBBGo2AgwgAUHyodkAQQMgAkEMakHSAhDECgwZCyACIABBBGo2AgwgAUH1odkAQQMgAkEMakHTAhDECgwYCyACIABBCGo2AgwgAUHApuAAQQUgAkEMakHUAhDECgwXCyACIABBCGo2AgwgAUH4odkAQQMgAkEMakHVAhDECgwWCyACIABBBGo2AgwgAUG7odkAQQMgAkEMakHWAhDECgwVCyACIABBBGo2AgwgAUH7odkAQQkgAkEMakHXAhDECgwUCyACIABBBGo2AgwgAUGEotkAQQUgAkEMakHYAhDECgwTCyACIABBCGo2AgwgAUHcs98AQQUgAkEMakHZAhDECgwSCyACIABBBGo2AgwgAUGJotkAQQUgAkEMakHaAhDECgwRCyACIABBBGo2AgwgAUGOotkAQQggAkEMakHbAhDECgwQCyACIABBBGo2AgwgAUGWotkAQQUgAkEMakHcAhDECgwPCyACIABBBGo2AgwgAUGbotkAQQUgAkEMakHdAhDECgwOCyACIABBCGo2AgwgAUGgotkAQQkgAkEMakHeAhDECgwNCyACIABBCGo2AgwgAUGpotkAQREgAkEMakHfAhDECgwMCyACIABBBGo2AgwgAUG6otkAQQggAkEMakHgAhDECgwLCyACIABBBGo2AgwgAUHCotkAQQogAkEMakHhAhDECgwKCyACIABBBGo2AgwgAUHMotkAQQsgAkEMakHiAhDECgwJCyACIABBBGo2AgwgAUHXotkAQQ8gAkEMakHjAhDECgwICyACIABBBGo2AgwgAUHmotkAQRAgAkEMakHkAhDECgwHCyACIABBBGo2AgwgAUH2otkAQQkgAkEMakHlAhDECgwGCyACIABBBGo2AgwgAUH/otkAQQQgAkEMakHmAhDECgwFCyACIABBBGo2AgwgAUGDo9kAQQ8gAkEMakHnAhDECgwECyACIABBBGo2AgwgAUGSo9kAQQsgAkEMakHoAhDECgwDCyACIABBCGo2AgwgAUGgltoAQQsgAkEMakHpAhDECgwCCyACIABBBGo2AgwgAUGdo9kAQQggAkEMakHqAhDECgwBCyACIABBBGo2AgwgAUHapuAAQQcgAkEMakG/AhDECgsgAkEQaiQAC+0KAg5/AX4jAEHQAGsiASQAAkACQAJAAkACQAJAAkACQAJAAkAgACgC/AUiByAAKAKABiICSQRAIAEgAjYCHCACQQNHDQEgAUEQaiAAKAKsAyIEQQRBBBClFCABQQA2AiggASABKQMQNwIgIAFBIGogBBC4HiABKAIkIAEoAigiBkECdGohAgNAIAMgBEZFBEAgAiADNgIAIAJBBGohAiADQQFqIQMMAQsLIAFBQGsgAyAGajYCACABIAEpAiA3AzggAUEANgJEIAAoAqgDIQhBBCEFQQQhAwNAIAMgBCADIARLGyEGAkAD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IQsgBEH3ADoAuAEgASALIAggBEG4AWoQvBkgBwRAIAkQmCkFIARBMGoQmBILDAALAAsgAhDqIgsgBEHgAWokAAuRCgILfwN+IwBB4AFrIgIkAAJAIAEtABRBAkcEQCABKAIYIQQgAkE0akHYluMAKQMAIg03AgAgAkHQluMAKQMAIg43AiwgAkEAOwFeIAJBADYCVCACQoCAgICAATcCTCACQQA6AEggAkEANgJEIAJCgICAgMAANwI8IAJBADYCKCACQoCAgICAATcCICACIAAvATw7AVwgAiAAKAI4NgJYIAJBEGogASkDACIPIAEoAhAiCBCkIyACQSBqIAIpAxAgAigCGEEBEIcGIAJB9ABqIA03AgAgAkEANgKUASACQoCAgICAATcCjAEgAkEAOgCIASACQQA2AoQBIAJCgICAgMAANwJ8IAJBADYCaCACIA43AmwgAkEAOwGeASACIAIvAVw7AZwBIAIgAigCWDYCmAEgAkKAgICAgAE3AmAgBEEYaiEJIARBDGogBCgCCEEGdCEBIAJBjAFqIQYgAkHMAGohBSACQTxqIQcgAkEsaiELIAQoAgQhAwJAA0AgAUUNASADKAIAIQwgAUFAaiEBIANBQGshAwJAIAxBAmsOAwABAAELCyACIA8gCBCkIyACQeAAaiACKQMAIAIoAggQtBALIAJB4ABqIgEQiBogBCABEI0aIAEgCRDdIwJAAkAgAigClAEiAQRAIAsgARDiKCACQaQBaiACKAKQASACKAKUARCZCiACIAIoAqQBNgK4ASACIAIoAqgBIgE2ArABIAIgASACKAKsAUEEdCIDaiIENgK8AQNAIANFDQIgAkHgAGogASkDACABKAIIELQQIANBEGshAyABQRBqIQEMAAsACyACQbABaiIBIAJB4ABqQSwQ9gYaIAcgARCCGiAGEPMiDAELIAIgBDYCtAEgAkGwAWoQ/RYgAi0ASEUEQCACQSBqIAIoApQBEPgdIAIgAigCjAE2ArgBIAIgAigCkAEiATYCsAEgAiABIAIoApQBQQR0IgNqIgQ2ArwBA0AgAwRAIAJBIGogASkDACABKAIIQQEQhwYgA0EQayEDIAFBEGohAQwBCwsgAiAENgK0ASACQbABaiIBEP0WIAEgAkHgAGpBLBD2BhogByABEIIaDAELIAJBuAFqIAZBCGooAgA2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IAJBCGogASgCKBCNAgJAIAIoAghBgICAgHhGBEAgAkEANgI4IAJCgICAgBA3AzAMAQsgAkE4aiACQRBqKAIANgIAIAIgAikCCDcDMAsgAkHQAGogASgCDBCNAgJAIAIoAlBBgICAgHhGBEAgAkEANgJIIAJCgICAgBA3A0AMAQsgAkHIAGogAkHYAGooAgA2AgAgAiACKQJQNwNACyACQT42AiwgAkE+NgIkIAJBAjYCDCACQbDB3wA2AgggAkICNwIUIAIgAkFAazYCKCACIAJBMGo2AiAgAiACQSBqNgIQIAAgAkEIahD4FCACKAJAIAIoAkQQpyQgAigCMCACKAI0EKckDAkLIAEoAghFBEAgAkEBNgIMIAJByMHfADYCCCACQgE3AhQgAkHFAjYCJCACIAFBEGo2AiAgAiACQSBqNgIQIAAgAkEIahD4FAwJCyACQSBqIAEoAgwQjQICQCACKAIgQYCAgIB4RgRAIAJBADYCWCACQoCAgIAQNwNQDAELIAJB2ABqIAJBKGooAgA2AgAgAiACKQIgNwNQCyACQT42AkQgAkEBNgIMIAJByMHfADYCCCACQgE3AhQgAiACQdAAajYCQCACIAJBQGs2AhAgACACQQhqEPgUIAIoAlAgAigCVBCnJAwICyABLQAYQQVHDQYLIAEoAhAhAQwBCwsgASgCCA0DIAAgAUEQahC4DQwECyACQdAAaiABKAIgEI0CAkAgAigCUEGAgICAeEYEQCACQQA2AkggAkKAgICAEDcDQAwBCyACQcgAaiACQdgAaigCADYCACACIAIpAlA3A0ALIAJBxQI2AiwgAkE+NgIkIAJBAjYCDCACQbDB3wA2AgggAkICNwIUIAIgAUEIajYCKCACIAJBQGs2AiAgAiACQSBqNgIQIAAgAkEIahD4FCACKAJAIAIoAkQQpyQMAwsgAkEIaiABKAIgEI0CAkAgAigCCEGAgICAeEYEQCACQQA2AjggAkKAgICAEDcDMAwBCyACQThqIAJBEGooAgA2AgAgAiACKQIINwMwCyACQdAAaiABKAIEEI0CAkAgAigCUEGAgICAeEYEQCACQQA2AkggAkKAgICAEDcDQAwBCyACQcgAaiACQdgAaigCADYCACACIAIpAlA3A0ALIAJBPjYCLCACQT42AiQgAkECNgIMIAJBsMHfADYCCCAC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GkEBIAAtAA4NABpBASAALQAPDQAaQQEgAC0AEA0AGkEBIAAtABENABpBASAALQASDQAaQQEgAC0AEw0AGkEBIAAtABQNABpBASAALQAVDQAaQQEgAC0AFg0AGkEBIAAtABcNABpBASAALQAYDQAaQQEgAC0AGQ0AGkEBIAAtABoNABpBASAALQAbDQAaQQEgAC0AHA0AGkEBIAAtAB0NABpBASAALQAeDQAaQQEgAC0AHw0AGkEBIAAtACANABpBASAALQAhDQAaQQEgAC0AIg0AGkEBIAAtACMNABpBASAALQAkDQAaQQEgAC0AJQ0AGkEBIAAtACYNABpBASAALQAnDQAaQQEgAC0AKA0AGkEBIAAtACkNABpBASAALQAqDQAaQQEgAC0AKw0AGkEBIAAtACwNABpBASAALQAtDQAaQQEgAC0ALg0AGkEBIAAtAC8NABpBASAALQAwDQAaQQEgAC0AMQ0AGkEBIAAtADINABpBASAALQAzDQAaQQEgAC0ANA0AGkEBIAAtADUNABpBASAALQA2DQAaQQEgAC0ANw0AGkEBIAAtADgNABpBASAALQA5DQAaQQEgAC0AOg0AGkEBIAAtADsNABpBASAALQA8DQAaQQEgAC0APQ0AGkEBIAAtAD4NABpBASAALQA/DQAaQQEgAC0AQA0AGkEBIAAtAEENABpBASAALQBCDQAaQQEgAC0AQw0AGkEBIAAtAEQNABpBASAALQBFDQAaQQEgAC0ARg0AGkEBIAAtAEcNABpBASAALQBIDQAaQQEgAC0ASQ0AGkEBIAAtAEoNABpBASAALQBLDQAaQQEgAC0ATA0AGkEBIAAtAE0NABpBASAALQBODQAaQQEgAC0ATw0AGkEBIAAtAFANABpBASAALQBRDQAaQQEgAC0AUg0AGkEBIAAtAFMNABpBASAALQBUDQAaQQEgAC0AVQ0AGkEBIAAtAFYNABpBASAALQBXDQAaQQEgAC0AWA0AGkEBIAAtAFkNABpBASAALQBaDQAaQQEgAC0AWw0AGkEBIAAtAFwNABpBASAALQBdDQAaQQEgAC0AXg0AGkEBIAAtAF8NABpBASAALQBgDQAaQQEgAC0AYQ0AGkEBIAAtAGINABpBASAALQBjDQAaQQEgAC0AZA0AGkEBIAAtAGUNABogAC0AZgsgAiACKAIAQQFrNgIA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AAMLIABBAWoMAQsgBUEANgIYQQEhAiAFQQE2AgwgBUHAssIANgIIIAVCBDcCECABKAIUIAEoAhggBUEIahCVJA0BIAAoAgQLIgAsAAkiBCAALQABIgZBBEdyIAAtAAAiB0EBcSAALQAFIghBBEdyckUEQEEAIQIMAQtBASECIAEoAhQiA0GwssIAQQIgASgCGCIJKAIMIgERAwANAAJAAkAgBkEERgRAIAhBBEYNAiAFIAAoAAU2AggMAQsgBSAAKAABNgIIIAVBCGogAyAJEPYHDQIgCEEERg0BIAUgACgABTYCCCADQeen4ABBASABEQMADQILIAVBCGogAyAJEOAHDQELAkAgBEEARyAHckEBcUUNAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAdBAXFFBEAgBEUNGiAEQQFxRQRAIARBAnENAiAGQQRHIQIMCAsgBkEERw0EDAULIAZBBEcNAQwCCyAGQQRHDQQMBgsgA0Hnp+AAQQEgAREDAA0YCyADQbKywgBBASABEQMADRcgBEUNFiAEQQFxDQAgBEECcQ0CDAMLIANB56fgAEEBIAERAwANFgsgA0GzssIAQQEgAREDAA0VIARBAnFFDQELIANB56fgAEEBIAERAwBFDQEMFAsgBEEEcQ0BIARBCHFFDQYgAg0EDAcLIANBtLLCAEEBIAERAwANEiAEQQRxDQEgBEEIcQ0DDAQLIAJFDQELQQEhAiADQeen4ABBASABEQMADRALQQEhAiADQbWywgBBASABEQMADQ8gBEEIcUUNAQtBASECIANB56fgAEEBIAERAwBFDQIMDgsLIARBEHFFBEAgBEEgcUUNByACDQUMCAsgAg0BDAMLQQEhAiADQbaywgBBASABEQMADQsgBEEQcUUNAQtBASECIANB56fgAEEBIAERAwBFDQEMCgsgBEEgcQ0BDAILQQEhAiADQbeywgBBASABEQMADQggBEEgcUUNAQtBASECIANB56fgAEEBIAERAwBFDQIMBwsLIARBwABxRQ0DIAINAQwCC0EBIQIgA0G4ssIAQQEgAREDAA0EIARBwABxRQ0CC0EBIQIgA0Hnp+AAQQEgAREDAA0DC0EBIQIgA0G5ssIAQQEgAREDAA0CCyAEQQBODQAgAgRAQQEhAiAD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DQELIANBADYCGCADQShqIAIgA0EYakGIreAAQQEQlBMgAy0AKEEERwRAIAMpAygiB0L/AYNCBFINAQsgA0EoaiACIAUgBCABKAIoIAEoAiwQWyADLQAoQQRHBEAgAykDKCIHQv8Bg0IEUg0BCyADQShqIAIgA0EYakGJreAAQQEQlBMgAy0AKEEERg0BIAMpAygiB0L/AYNCBFENAQsgB0L/AYNCBFINAQsgAEEEOgAADAgLIAAgBzcCAAwHCyAAIAc3AgAMBgsgACAHNwIADAULIAAgBzcCAAwECyAAIAc3AgAMAwsgACAHNwIADAILIAAgBzcCAAwBCyAAIAc3AgALIANBMGokAAu3CAIJfwF+IwBBoAFrIgEkACABQgA3AiggAUKAgICAwAA3AiAgAUIINwIYIAFCADcCECABQoCAgIDAADcCCAJAAkACQANAIAJBAXEEQCABQYgBaiABKAIMIAEoAhAQ5AcgASgCiAEiA0GEgICAeEYEQCABQQhqEJggIQMgAEGEgICAeDYCACAAIAM2AgQMBQsgACABKQKMATcCBCAAQQxqIAFBlAFqKAIANgIAIAAgAzYCAAwDCyABQYgBaiIEIAIQwRwCQAJ/AkAgASgCiAFFBEAgASgCjAEhAyABQQA2AkAgAUKAgICAEDcDOCABQgA3AzAgBCABQTBqEMUQIAEoAogBDQFBgoCAgHgMAgsgACABKQOQATcDCCAAIAM2AgQgAEGAgICAeDYCAAwFCyABKAKQAUUNAUGDgICAeAshBCAAIAM2AgQgACAENgIADAMLIAFBCGogAxCeBSABQdgAaiABQUBrKAIANgIAIAFB0ABqIAFBOGopAwA3AwAgASABKQMwNwNIIANBA3QhCQNAIAFB4ABqIAFByABqEMUQIAEoAmBFBEBBASECDAILAkACQAJAAkACQAJAIAEoAmQiBEH+////B00EQCABKAJsIQYgASgCaCECIAEoAgwgASgCECIFIAMQrB8iBygCBEECaiIIQf7///8HSw0CIAcgCDYCBCACRQ0EIAEgAiAGEMIOIAEgASgCBCIFNgJ0IAEgASgCACICNgJwIAEoAhgiBiABKAIcIgcgAxCtHyACQQhqIgggBRCGBw0BIAYgByADEK4fIAIgAigCACIHQQFqNgIAIAdBAEgNBSACIAEoAnQiByAEENsHIAEo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AGshCSAGQdgAaiEGIAVBAWohBSABQdgAaiEBDAALAAsgAkHsAGoQgREgAigCECEDIAIoAhQhAQwACwALIAJBsAJqJAALiAgCCH8CfiMAQUBqIgIkACABQSxqIQUgACgCCEE4bCEIIAJBLGohBiACQRBqIQcgACgCBCEJQQAhAANAAkACQCAAIAhHBEAgAS0ANEEBRw0CAkACQAJAAkACQAJAAkBBBCAAIAlqIgMoAgBBBGsiBCAEQQdPG0EBaw4GAQIDBAUGAAsgASgCMBCnESEEIAdBCGpB2JbjACkDACIKNwIAIAdB0JbjACkDACILNwIAIAJBCGogCjcDACAGIAUpAgA3AgAgBkEIaiAFQQhqKAIANgIAIAJBAToAKCACIAE2AiAgAiAENgIkIAJBAToAOSACIAs3AwAgAiABLwA7OwA7IAEtADghBCACIAEtAD06AD0gAiAEOgA4IAJBAToAOiADQRxqIAIQtg0gA0EEaiACEIsaIANBGGogAhCwJSACEOEoDAgLIAEoAjAQpxEhBCAHQQhqQdiW4wApAwAiCjcCACAHQdCW4wApAwAiCzcCACACQQhqIAo3AwAgBiAFKQIANwIAIAZBCGogBUEIaigCADYCACACQQE6ACggAiABNgIgIAIgBDYCJCACQQE6ADkgAiALNwMAIAIgAS8AOzsAOyABLQA4IQQgAiABLQA9OgA9IAIgBDoAOCACQQE6ADogA0EcaiACELYNIANBBGogAhCLGiADQRhqIAIQsCUgAhDhKAwHCyADQRVqLQAARQ0FIANBEGogARC7KwwFCyADQRRqLQAAQQFGBEAgA0EEaiABELsrCyADQRBqIAEQsCUMBQsgA0E0ai0AAEEBRgRAIANBMGogARC7KwsgASADEKAVDAQLIAEoAjAQpxEhBCAHQQhqQdiW4wApAwAiCjcCACAHQdCW4wApAwAiCzcCACACQQhqIAo3AwAgBiAFKQIANwIAIAZBCGogBUEIaigCADYCACACQQE6ACggAiABNgIgIAIgBDYCJCACQQE6ADkgAiALNwMAIAIgAS8AOzsAOyABLQA4IQQgAiABLQA9OgA9IAIgBDoAOCACQQE6ADogA0EgaiACELYNIANBJGotAABBAUYEQCADQRBqIAIQuysLIANBBGogAhCLGiADQRxqIAIQsCUgAhDhKAwDCyAB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mSANAyADKAIUQZSr2ABBAiADKAIYKAIMEQMADQMLIAJBADoABCACQQE6AAYgAigCACIEKAIcIgBBBHFFBEBBASEAIAJBLGogBBCkGw0DDAILIAIgBjYCOCACIAQpAhQ3AjAgAkHE8cAANgJUIAIgBCkCCDcCRCAEKQIAIQcgAiAANgJYIAIgBCgCEDYCTCACIAQtACA6AFwgAiAHNwI8IAIgAkEwajYCUCACQSxqIAJBPGoQpBsNACACKAJQQd/xwABBAiACKAJUKAIMEQMARQ0BC0EBIQAMAQtBACEAIAJBADoABgsgAkEBOgAFIAIgADoABAwACwALigcCF38EfiMAQeAEayICJAAgAkEQaiABKAIMIAEoAhAQigsgASkDACEZIAEtACQhByACQRxqIAFBFGoQwQwgAiAHOgAsIAIgGTcCCCABKAKYAiELIAEoApQCIQwCQAJAIAEoAihBAUcEQEEAIQcMAQsgASgCLCIIBEAgCCAIKAIAQQFqIgQ2AgAgBEUNAgsgASgCMCIERQRAQQEhB0EAIQQMAQtBASEHIAQgBCgCAEEBaiIDNgIAIANFDQELIAEoApwCIQ0gASgCgAIhDiABKAL8ASEPIAEoAvQBIRAgASgC8AEhESABKALsASESIAEoAugBIRMgASgC+AEhFCABKQLEASEZIAEpAswBIRogASgC1AEhBSABKQI0IRsgAS8A5QEhBiABLQDnASEJIAEtAOQBIRUgAkG0A2ogAUE8ahCtECACQdgEaiABQeABai8BADsBACABLQDHAiEWIAEtAOIBIRcgAS8B4gEhAyABKQLYASEcIAEoAoQCIgogCigCAEEBaiIYNgIAIAIgFToA3AQgAiAJOgDfBCACIAY7AN0EIAIgGzcCrAMgAiAFNgLMBCACIBo3AsQEIAIgGTcCvAQgAiAcNwLQBCACIANBgP4DcUEPIAMgF0EPRhtB/wFxcjsB2gQgGEUNACABKAKIAiIDIAMoAgBBAWoiBTYCACAFRQ0AIAEoAowCIgUgBSgCAEEBaiIGNgIAIAZFDQAgASgCkAIiBiAGKAIAQQFqIgk2AgAgCUUNACACQccCaiABQb8CaikAADcAACACQcICaiABQboCaikBADcBACACQboCaiABQbICaikBADcBACACIAEpAaoCNwGyAiACQTxqIAJBrANqQbQBEPYG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AAA3AAAgBkEIaiAIQQhqKQAANwAAIARBAWshBCAQQgF9IBCDIRAMAAsACyAAIAJBEGpBmQVBIBCzBAtBAAsaIAJBQGskAAwBCxCPGwALCyADIAA2AkwgAyADQcQAajYCSCADQQhqIAEoAhAgASgCFCASIANByABqQZcFEOcHIAEoAhAhACADKAIMIQICQCADKAIIRQRAIAAgAkEFdGsiAEEIayALNgIAIABBEGsiACkDACEQIAAgETcDACADKQMwENYaDAELIAAgAmoiBC0AACEFIAMpAzAhECADKAI4IQcgBCASQhmIpyIEOgAAIAAgASgCFCACQQhrcWpBCGogBDoAACABIAEoAhxBAWo2AhwgASABKAIYIAVBAXFrNgIYIAAgAkEFdGsiAEEIayALNgIAIABBEGsgETcDACAAQRhrIAc2AgAgAEEgayAQNwMAQgAhEAsgEBDWJgwECyABIAIpAwAgAkEQaigCABCWHSABIAApAyggAEE4aigCABCWHQwDCyAAQRBqIAEQ8SMMAgsgAEEEaiABEOYsDAELAkACQCAAKAIIQQFrDgIBAgALIABBKGogARDrBQwBCyAAQShqIAEQ6ywLIANB0ABqJAALgQcBA38gAC0AKCEEIABBADoAKAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgASgCACICQQxrIgMgA0EmTxtBAWsOJAABAgMEBQYHCAkKCwweHg0ODxARHhITFB4eFRYXGBkaGxweHR4LIAEoAgxBBHQhAiABKAIIIQEDQCACRQ0eIAEoAgBBAkcEQCABQQxqIAAQpi0LIAFBEGohASACQRBrIQIMAAsACyABQQRqIAAQ1AsMHAsgACABQQhqEJMfDBsLIAFBBGogABCmLQwaCyABQQxqIAAQpi0MGQsgAUEEaiAAEKYtIAFBCGogABCmLQwYCyABQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwECAwQFBgcICQsKAAsgAUEIaiAAEIQYDAoLIAFBCGogABCXHwwJCyABQQhqIAAQqSIMCAsgAUEEaiAAEKYtDAcLIAFBBGogABC8HAwGCyABQQRqIAAQpi0MBQsgAUEEaiAAEKYtDAQLIAFBBGogABCmLQwD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IgBFDQAgAEEFdCELIABBAWtB////P3FBAWohByACKAIIIQUgAigCACEAA0AgAEEEaigCACIBBEAgAygCICAAKAIAIAEgAygCJCgCDBEDAA0DCyADIAggCmoiAUEQaigCADYCHCADIAFBHGotAAA6ACwgAyABQRhqKAIANgIoIAFBDGooAgAhBEEAIQlBACEGAkACQAJAIAFBCGooAgBBAWsOAgACAQsgBEEDdCAFaiIMKAIADQEgDCgCBCEEC0EBIQYLIAMgBDYCECADIAY2AgwgAUEEaigCACEEAkACQAJAIAEoAgBBAWsOAgACAQsgBEEDdCAFaiIGKAIADQEgBigCBCEEC0EBIQkLIAMgBDYCGCADIAk2AhQgBSABQRRqKAIAQQN0aiIBKAIAIANBDGogASgCBBECAA0CIABBCGohACALIAhBIGoiCEcNAAsLIAcgAigCBE8NASADKAIgIAIoAgAgB0EDdGoiACgCACAAKAIEIAMoAiQoAgwRAwBFDQELQQEMAQtBAAsgA0EwaiQAC9cEAgx/An4jAEHwAGsiAiQAIAJBADYCECACQoCAgICAATcCCCABKAIEIQMgAUEANgIEIAIgAzYCFCACQTBqIQkgAkEYakEEciEHIAJBKWoiCkEHaiELQQghBEEAIQEDQAJAAkACQCADBEAgAygCAEEBRgRAIANBADYCACACQdAAaiIMIANBFGooAgA2AgAgAiADKQIMNwNIIAIgAykAGTcDOCACIANBIGopAAA3AD8gAy0AGCEIIAMoAgghBQJAIANBf0YNACADIAMoAgRBAWsiDTYCBCANDQAgA0EoQQgQvRELIAhBAkcNAiAFIQMLIAIgAzYCVCACQdgAaiADQQhqEIcRIAMoAiAiAwRAIAMgAygCAEEBaiIFNgIAIAVFDQMLIAJBKGogAkHoAGopAwA3AwAgAkEgaiACQeAAaikDADcDACACIAIpA1g3AxggAiADNgIwIAJB1ABqELkUDAMLIAAgAigCCDYCCCAAIAQ2AgQgACAENgIAIAAgBCABQRhsajYCDCACQRRqEJQnIAJB8ABqJAAPCyAHIAIpA0g3AgAgCiACKQM4NwAAIAsgAikAPzcAACAHQQhqIAwoAgA2AgAgAiAIOgAoIAIgBTYCGAwBCwALIAIoAgggAUYEQCACQQhqEPAWIAIoAgwhBAsg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NgJEIAJBMDoAQCACKAIAIAIoAgQgAkFAaxDrFCEDIAQQ4w0iBEUNByAEKAIAQSRGDQIMBwsgAkFAayABEM8EIAIoAkghASACKQNAIgVQRQRAIAIgAigCTDYCbCACIAE2AmggAiAFNwNgIAJBCGogAkHgAGoQgxxCACEFDAYLIABCAjcDACAAIAE2AggMBwsgAkFAayABEMUCIAIoAkAiAUEHRg0BIAJBOGoiBCACQdgAaikDADcDACACQTBqIgMgAkHQAGopAwA3AwAgAiACKQNINwMoIAENAiACQRhqIAQpAwA3AwAgAkEQaiADKQMANwMAIAIgAikDKDcDCEIBIQUMBAsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIIMDAQLIAIoAkQhASAAQgI3AwAgACABNgIIDAQLQbnj4ABBKEH0oOAAENoXAAtBuePgAEEoQZih4AAQ2hcACyACQSBqEPwjIAAgBTcDACAAIAIpAwg3AwggAEEQaiACQRBqKQMANwMAIABBGGogAkEYaikDADcDAAwCCyAAQgI3AwAgACADNgIICyACQSBqEPwjCyACQfAAaiQAC/oEAQJ/IwBBMGsiAyQAAn8CQAJAAkACQAJAAkACQAJAAkBBBiAAKAIAQQJrIgQgBEEJTxtBAWsOCAECAwQFBgcIAAsgA0EBNgIUIANBqO7gADYCECADQgE3AhwgA0GpAjYCDCADIAApAgg3AiggAyADQQhqNgIYIAMgA0EoajYCCCABIAIgA0EQahCVJAwICyADIABBBGo2AgggA0ECNgIUIANBpMXYADYCECADQgE3AhwgA0EINgIsIAMgA0EoajYCGCADIANBCGo2AiggASACIANBEGoQlSQMBwsgA0EANgIgIANBATYCFCADQcjF2AA2AhAgA0IENwIYIAEgAiADQRBqEJUkDAYLIANBADYCICADQQE2AhQgA0HYxdgANgIQIANCBDcCGCABIAIgA0EQahCVJAwFCyADQQA2AiAgA0EBNgIUIANB9MXYADYCECADQgQ3AhggASACIANBEGoQlSQMBAsgA0EANgIgIANBATYCFCADQZTG2AA2AhAgA0IENwIYIAEgAiADQRBqEJUkDAMLIAMgADYCCCADQQE2AhQgA0Go7uAANgIQIANCATcCHCADQaoCNgIsIAMgA0Eo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DAMLIARBnApBrNXAABCcEAALIANBAWshAwwBC0GABkGABkG81cAAEJsQAAsgAEEHaiIEIANqIQUgCK0hDgNAIAIiAUEBayECAkACQCABQYEGSQRAIAEgBGoxAAAgDoYgDXwiCyALQgqAIg1Cdn58IQwgAiADakGABkkNASAMUA0CIABBAToAiAYMAgsgAkGABkG8ycAAEJsQAAsgASAFaiAMPAAACyACDQALIAtCCloEQCADQQdqIQIDQCANIgsgC0IKgCINQnZ+fCEMAkAgAkEIa0GABk8EQCAMUA0BIABBAToAiAYMAQsgACACaiAMPAAACyACQQFrIQIgC0IKWg0ACwsgACAAKAIEIANqNgIEIABBgAYgACgCACADaiIBIAFBgAZPGyICNgIAIAFFDQAgAkEHaiECA0AgACACai0AAA0BIAAgAkEIazYCACACQQFrIgJBB0cNAAsLC+wEAgZ/AX4jAEHQAGsiAyQAIANBOGogARDNBCADKAJAIQQCQAJAAkACQAJAAkAgAykDOCIJUEUEQCADIAMoAkQ2AiwgAyAENgIoIAMgCTcDIEEBIQYgA0EYaiABQQFBABDGDiADKAIcIQcgAygCGARAIAchBAwFCyADQRBqIAFBgNzfAEGHqOAAQQEQrQcgAygCFCEIIAMoAhAEQCAIIQQMBAsgAyAINgI0IAFBKGoiBRDIDSIERQ0FAkACQCAEKAIAQQ5rDgIHAAELIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyADQcQAaiABQdQCaikCADcCACADQcwAaiABQdwCaigCADYCACADIAEpAswCNwI8IAMgBDYCOCADQThqEL4KDAYLIAUQ6yANBSADQUBrIAUQgBAgA0EIaiAFEOoTIANB0LvgADYCPCADQTQ6ADggAygCCCADKAIMIANBOGoQ6xQhBCAFEMgNIgJFDQIgAigCAEEkRw0CIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEPsLDAILQQEhBgwFC0G54+AAQShBqObfABDaFwALIANBNGoQtwULIAcQvigLIAkQ1hoMAQsgASgCnAMhASADQThqIANBIGoQgxxBMEEIEIwgIgQgAiABIAEgAkkbNgIEIAQgAiABIAEgAksbNgIAQQAhBiAEQQA6ACggBCAINgIkIAQgBzYCICAEIAMpAzg3AwggBEEQaiADQUBrKQMANwMAIARBGGogA0HIAGopAwA3AwALIAAgBDYCBCAAIAY2AgAgA0HQAGokAAvMBAEEfyMAQYABayICJAAgASAAENkhIAEoAighASACQRhqQdiW4wApAwA3AgAgAkHQluMAKQMANwIQIAJBADsBQiACQQA2AjggAkKAgICAgAE3AjAgAkEAOgAsIAJBADYCKCACQoCAgIDAADcCICACQQA2AgwgAkKAgICAgAE3AgQgAiAALwE8OwFAIAIgACgCODYCPCABQQxqIAJBBGoiAxCIGiABIAMQjRogAyABQRhqEN0jIAJBMGohBAJAAkAgAigCOCIBBEAgAEEMaiABEOIoIAJBxABqIAIoAjQgAigCOBCZCiACIAIoAkQ2AlggAiACKAJIIgE2AlAgAiABIAIoAkxBBHQiA2oiBTYCXANAIANFDQIgAkEEaiABKQMAIAEoAggQtBAgA0EQayEDIAFBEGohAQwACwALIAJB0ABqIgEgAkEEakEsEPYGGiAAQRxqIAEQghogBBDzIgwBCyACIAU2AlQgAkHQAGoQ/RYgAC0AKEUEQCAAIAIoAjgQ+B0gAiACKAIwNgJYIAIgAigCNCIBNgJQIAIgASACKAI4QQR0IgNqIgQ2AlwDQCADBEAgACABKQMAIAEoAghBARCHBiADQRBrIQMgAUEQaiEBDAELCyACIAQ2AlQgAkHQAGoiARD9FiABIAJBBGpBLBD2BhogAEEcaiABEIIaDAELIAJB2ABqIARBCGooAgA2AgAgAiAEKQIANwNQIABBLGogAkHQAGoiARCPECABIAJBBGpBLBD2BhogAEEcaiABEIIaCyACQYABaiQAC98EAgZ/AX4jAEHQAGsiAyQAIANBOGogARDPBCADKAJAIQQCQAJAAkACQAJAAkAgAykDOCIJUEUEQCADIAMoAkQ2AiwgAyAENgIoIAMgCTcDIEEBIQYgA0EYaiABQQFBABDKDiADKAIcIQcgAygCGARAIAchBAwFCyADQRBqIAFBgNzfAEGHqOAAQQEQrgcgAygCFCEIIAMoAhAEQCAIIQQMBAsgAyAINgI0IAFBKGoiBRDjDSIERQ0FAkACQCAEKAIAQQ5rDgIHAAELIAEoAighBCABQSU2AiggASABKQNANwN4IANBxABqIAFBNGop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ahCBGiACQTBqIQQCQAJAIAIoAjgiAQRAIABBDGogARDiKCACQcQAaiACKAI0IAIoAjgQmQogAiACKAJENgJYIAIgAigCSCIBNgJQIAIgASACKAJMQQR0IgNqIgU2AlwDQCADRQ0CIAJBBGogASkDACABKAIIELQQIANBEGshAyABQRBqIQEMAAsACyACQdAAaiIBIAJBBGpBLBD2BhogAEEcaiABEIIaIAQQ8yIMAQsgAiAFNgJUIAJB0ABqEP0WIAAtAChFBEAgACACKAI4EPgdIAIgAigCMDYCWCACIAIoAjQiATYCUCACIAEgAigCOEEEdCIDaiIENgJcA0AgAwRAIAAgASkDACABKAIIQQEQhwYgA0EQayEDIAFBEGohAQwBCwsgAiAENgJUIAJB0ABqIgEQ/RYgASACQQRqQSwQ9gYaIABBHGogARCCGgwBCyACQdgAaiAEQQhqKAIANgIAIAIgBCkCADcDUCAAQSxqIAJB0ABqIgEQjxAgASACQQRqQSwQ9gYaIABBHGogARCCGgsgAkGAAWokAAvCBAIFfwJ+IwBBgAFrIgIkACABKAIYQQxqIAAQhxogAEEsaiEDIAFBGGohBAJAIAEtABRBAkcEQCAAKAIwEKcRIQUgAkEYakHYluMAKQMAIgc3AwAgAkEIaiAHNwMAIAJBNGoiBiADQQhqKAIANgIAIAJBAToAKCACIAA2AiAgAiAFNgIkIAJBAToAOSACQdCW4wApAwAiCDcDECACIAg3AwAgAiADKQIANwIsIAIgAC0APDoAPCACIAAvATo7ATogAC0AOCEDIAIgAC0APToAPSACIAM6ADggAiABQQMQ6hUgAigCMBCnESEAIAJB2ABqIAc3AwAgAkHIAGogBzcDACACQfQAaiAGKAIANgIAIAJBAToAaCACIAA2AmQgAkEBOgB5IAIgCDcDUCACIAg3A0AgAiACKQIsNwJsIAIgAi0APDoAfCACIAIvATo7AXogAiACNgJgIAItADghACACIAItAD06AH0gAiAAOgB4IAQgAkFAayIAENUDIAAQ4SggAhDhKAwBCyAAKAIwEKcRIQEgAkHYAGpB2JbjACkDACIHNwMAIAJByABqIAc3AwAgAkH0AGogA0EIaigCADYCACACQQE6AGggAiAANgJgIAIgATYCZCACQQE6AHkgAkHQluMAKQMA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AwsgACgCBCICKAIsKAIAQQZNDQMMAgsgACgCBCICKAIIDQEMAgsgACgCBCICKAIIRQ0BC0EIEM0gIQMgABDrFjYCBCAAQQA2AgAgAyACNgIEIAMgBDYCACABQQE2AhAgASADNgIMIAFBATYCCANAIAEgAUEIahDYFQJAAkACQAJAAkAgASgCACICQQxHBEAgASABKAIEIgA2AhggASACNgIUIAJBCGsOBAECAwQFCyABQQhqEL4mDAYLIAAoAiQhABDrFiECIAAoAgQhAyAAIAI2AgQgACgCACECIABBADYCACABQQhqIAIgAxDDGAwDCyAAKAIsIQAQ6xYhAiAAKAIEIQMgACACNgIEIAAoAgAhAiAAQQA2AgAgAUEIaiACIAMQwxgMAgsgACgCCCECIABBADYCCCABQQA2AiwgASAANgIkIAEgAjYCKCABIAAoAgQiADYCHCABIAAgAkEDdGo2AiAgAUEIaiABQRxqEMMJDAELIAAoAgghAiAAQQA2AgggAUEANgIsIAEgADYCJCABIAI2AiggASAAKAIEIgA2AhwgASAAIAJBA3RqNgIgIAFBCGogAUEcahDDCQsgAUEUahDmBwwACwALIAFBMGokAAvZAwICfwN+IwBBgAJrIgQkAAJAIAIoAgBFBEAgAi0ARUEDRw0BC0G54+AAQShBhLXfABDaFwALIARBGGogAkEQaikDADcDACAEQSBqIAJBGGopAwAiBjcDACAEIAIpAwgiBzcDECACKQNIIQggBCAHIAanEKQjIARBKGoiBSAEKQMAIAQoAgggAkEgahDIBCAEQUBrIARBEGoiAkEAQQAgAUEQaiABKQMQUCIBG0EAIAMbIAEbEOYFQcAAQQgQjCAgBEHQAGoiAyACELUbIARBkAFqIgIgAxDuFSACQcAAEPYGIQEgBEEBNgJYIAQgATYCVCAEQQE2AlAgAiADIAUQmwpBEEEEEIwgIgFBCGogBEHIAGopAgA3AgAgASAEKQJANwIAIARBATYCXCAEIAE2AlggBEEBNgJUIAIQwhUhASAEQfQAakIANwIAIARCADcCbCAEQQU6AGggBCABNgJgIARBFzYCUCAEQgA3AvABIARBAzoA7AEgBEEANgLoASAEQgA3AvgBIARCADcC4AEgBEKAgICAwAA3AtgBIARB5AFqEMElIARB2AFqEMwmIAMQvSghASAAIAg3AwggACABNgIEIABBEjYCACAEKQMQENYaIARBgAJqJAALvAMCDX8BfiAFQQFrIQwgBSABKAIQIg1rIQ4gASgCHCEHIAEoAgghCSABKQMAIRQgASgCFCEIA0BBACAHIAYbIQ8gCSAJIAcgByAJSRsgBhsiCyAFIAUgC0kbIRACQCABAn8DQCADIAggDGoiB00EQCABIAM2AhRBACEHDAMLIAECfyAUIAIgB2oxAACIQgGDUEUEQCACIAhqIQogCyEHAkACQANAIAcgEEYEQCAJIQcCQANAIAcgD00EQCABIAUgCGoiAjYCFCAGRQRAIAFBADYCHAsgACACNgIIIAAgCDYCBEEBIQcMCwsgB0EBayIHIAVPDQUgAyAHIAhqIgpLBEAgBCAHai0AACACIApqLQAARw0CDAELCyAKIANBxOHgABCbEAALIAEgCCANaiIINgIUIAYNBiAODAcLIAcgCGoiESADTw0BIAcgCmohEiAEIAdqIAdBAWohBy0AACASLQAARg0ACyARIAlrQQFqDAMLIAMgCCALaiIAIAAgA0kbIANB1OHgABCbEAALIAcgBUG04eAAEJsQAAsgBSAIagsiCDYCFCAGDQALQQALIgc2AhwMAQsLIAAgBzYCAAvmAwIBfwF+IwBBQGoiBSQAIAVBMGogASACQQAQ0QECQAJAIAUtADBBBEYNACAFKQMwIgZC/wGDQgRRDQAgACAGNwIADAELAkACQAJAAkACQAJAIAJFDQAgBUEwaiABIAIQsxwgBS0AMEEERg0AIAUpAzAiBkL/AYNCBFINAQsgAS0ATA0BIAVBEGogAxCRDCAFQTBqIAUoAhAgBSgCFBDTAyAFQSBqIAEgBSgCNCICIAUoAjgQ0BAgBS0AIEEERwRAIAUpAyAiBkL/AYNCBFINAwsMBAsgACAGNwIADAQLIAVBCGogAxCRDCAFQTBqIAUoAgggBSgCDBDTAyAFQSBqIAUoAjQiAiAFKAI4QQAgAS0AURCaASAFQRhqIAEgBSgCJCIDIAUoAigQ0BAgBS0AGEEERwRAIAUpAxgiBkL/AYNCBFINAgsgBSgCICADEJYkDAILIAAgBjcCACAFKAIwIAIQliQMAgsgACAGNwIAIAUoAiAgAxCWJCAFKAIwIAIQliQMAQsgBSgCMCACEJYkAkAgBEUNACAFQQA2AjAgBUEgaiABIAVBMGpBx63gAEEBEJQTIAUtACBBBEYNACAFKQMgIgZC/wGDQgRRDQAgACAGNwIADAELIABBBDoAAAsgBUFAayQAC6EEAQF/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCACIAKAIADhMSEgECAwQFBgcICQoLDA0ODxARAAsgAEEIahDMIQwRCyAAKAIEQYCAgIB4RgRAIABBCGoQ0yYgAEEgahC0HSAAQRRqEIclDBELIABBBGoQ0yYgAEEcahC0HSAAQRBqEIclDBALIABBEGoQ4BwgACgCKBC6KAwPCwJAIABBEGoiAS0ANEEERgRAIAEQ4BwMAQsgARDMIQsgACgCUBC6KAwOCyAAQQRqELoJIAAoAgQgAEEIaigCABDzKQwNCyAAQQRqEK0FDAwLIABBBGoQoRkgACgCBCAAQQhqKAIAEPMpDAsLIABBBGoQrQUMCgsgAEEEahCtBQwJCyAAQQhqENImDAgLIABBBGoQrQUgAEEIahCtBSAAQQxqEK0FIABBEGoQrQUMBwsgAEEQahD1IAwGCyAAQQRqEK0FDAULIABBBGoQrQUMBAsgAEEEahCtBSAAQQhqEK0FDAMLIABBEGoQ9SAgAEFAaxCOJyAAQcQAahCOJwwCCwJAAkACQAJAQQQgACgCCEGAgICAeHMiASABQQRPGw4EAQIFAwALIABBCGoQ0iYgAEEUahDfIgwECyAAQSBqEIQlDAMLIABBEGoQ1SgMAgsgAEEQahCFJQwBCyAAQQhqEIYlIABBKGoQjCcLIABB2ABBCBC9EQuoAwECfwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABKAIAQQFrDhMBAgMEBQYHCAkKCwwNDg8QERITAAsgAUEIaiECIAFBBGoMEwsgAUEIaiECIAFBBGoMEgsgAUEEaiIDQRhBFCABKAIEQYCAgIB4RiIBG2ohAiADQRRBECABG2oMEQsgAUEMaiECIAFBCGoMEAsgAUEMaiECIAFBCGoMDwsgAUEUaiECIAFBEGoMDgsgAUEMaiECIAFBCGoMDQsgAUEUaiECIAFBEGoMDAsgAUEMaiECIAFBCGoMCwsgAUEMaiECIAFBCGoMCgsgAUEYaiECIAFBFGoMCQsgAUEYaiECIAFBFGoMCAsgAUEMaiECIAFBCGoMBwsgAUEMaiECIAFBCGoMBgsgAUEMaiECIAFBCGoMBQsgAUEQaiECIAFBDGoMBAsgAUEMaiECIAFBCGoMAwsgAUEsaiECIAFBKGoMAgsgAUEkaiECIAFBIGoMAQsgAUEMaiECIAFBCGoLIQMgACACKAIANgIEIAAgAygCADYCAAv8AwECfyAAIAFqIQICQAJAIAAoAgQiA0EBcQ0AIANBAnFFDQEgACgCACIDIAFqIQEgACADayIAQZiG5AAoAgBGBEAgAigCBEEDcUEDRw0BQZCG5AAgATYCACACIAIoAgRBfnE2AgQgACABQQFyNgIEIAIgATYCAAwCCyAAIAMQzQYLAkACQAJAIAIoAgQiA0ECcUUEQCACQZyG5AAoAgBGDQIgAkGYhuQAKAIARg0DIAIgA0F4cSICEM0GIAAgASACaiIBQQFyNgIEIAAgAWogATYCACAAQZiG5AAoAgBHDQFBkIbkACABNgIADwsgAiADQX5xNgIEIAAgAUEBcjYCBCAAIAFqIAE2AgALIAFBgAJPBEAgACABEMEHDwsgAUH4AXFBgITkAGohAgJ/QYiG5AAoAgAiA0EBIAFBA3Z0IgFxRQRAQYiG5AAgASADcjYCACACDAELIAIoAggLIQEgAiAANgIIIAEgADYCDCAAIAI2AgwgACABNgIIDwtBnIbkACAANgIAQZSG5ABBlIbkACgCACABaiIBNgIAIAAgAUEBcjYCBCAAQZiG5AAoAgBHDQFBkIbkAEEANgIAQZiG5ABBADYCAA8LQZiG5AAgADYCAEGQhuQAQZCG5AAoAgAgAWoiATYCACAAIAFBAXI2AgQgACABaiABNgIACwvrAwIGfwF+IwBBgAFrIgUkAEGAgICAeCEGIAEoAgAiCUGAgICAeEcEQCABKAIEIQggASgCCCEGIAVBATsBMCAFIAY2AixBACEBIAVBADYCKCAFQQE6ACQgBUEKNgIgIAUgBjYCHCAFQQA2AhggBSAGNgIUIAUgCDYCECAFQQo2AgwgBUFAayAFQQxqEPQFAn8gBSgCQEGAgICAeEYEQEEEIQdBAAwBCyAFQQRBBEEMEKUUIAVByABqKAIAIQEgBSgCACEGIAUoAgQiByAFKQJANwIAIAdBCGogATYCACAFQQE2AjwgBSAHNgI4IAUgBjYCNCAFQcwAaiAFQQxqQSgQ9gYaQQwhBkEBIQEDQCAFQfQAaiAFQcwAahD0BSAFKAJ0QYCAgIB4RkUEQCAFKAI0IAFGBEAgBUE0akEBEL8eIAUoAjghBwsgBSkCdCELIAYgB2oiCkEIaiAFQfwAaigCADYCACAKIAs3AgAgBSABQQFqIgE2AjwgBkEMaiEGDAELC0GAgICAeCAFKAJ4EJYkIAUoAjghByAFKAI0CyEGIAkgCBC4KQsgACADNgIQIAAgAjYCDCAAIAE2AgggACAHNgIEIAAgBjYCACAAIAQpAAA3ABQgAEEcaiAEQQhqLwAAOwAAIAVBgAFqJAALzwMBBX8jAEHgAGsiBCQAIARBxABqIAEgAiADEO0JAkAgBCgCRCIFQQJGBEAgBCgCSCEBIABBAjYCACAAIAE2AgQMAQsgBUEBRwRAIABBADYCAAwBCyAEKAJIIQYCQAJAIAMoAhAiByAEKAJMIgVHBEAgAygCAA0BIAEoAvgEIggoAqgCIAgoAqwCRg0BIAQgBzYCVCAEQQA2AkQgBCADKAIUNgJYIAQgAygCDDYCUCAEIAMtABg6AFwgBCADKQIENwJIIARBKGogBEHEAGoiAyAHIAUQ9QkgBEEQaiAEQTBqKQIANwMAIARBGGogBEE4aikCADcDACAEQSNqIARBwwBqLQAAOgAAIARBATYCKCAEIAQvAEE7ACEgBCAEKQIoNwMIIARBADoAICADIAFBiAVqIAJBwAFqIARBCGoQ7gkgBCgCRCIBQQJHBEAgAUEBcUUNAyAAQQRqIAYgBCgCTCAFENcSIABBATYCAAwECyAEKAJIIQEgAEECNgIAIAAgATYCBAwDCyAAQQRqIAYgBSAFENcSIABBATYCAAwCCyAAQQRqIAYgByAFENcSIABBATYCAAwBC0GI+cIAQTBBoPrCABChEgALIARB4ABqJAALrAMBBX8jAEEwayIDJAACQAJ/QQEgASACTQ0AGiADQRBqIAIgACABQYz2wwAQ8RwgAygCFCIGRQ0BAkACQCADKAIQIgcsAAAiBEEASARAIARBQHFBgH9GDQQCf0ECIARBYEkNABpBAyAEQXBJDQAaIARBd0sNBUEECyIEIAZLDQQgA0EcaiAHIAQQzwMgAygCHEEBRg0EIAMgAygCICIFIAMoAiRqNgIsIAMgBTYCKCADQShqENUKQYCAxABGDQELIANBCGogAiAAIAFBnPbDABDxHEEBIAMoAgwiAkUNAhogAygCCCIELAAAIgBBAE4EQCAAQf8BcSEBDAILQQEgAEFAcUGAf0YNAhoCf0ECIABBYEkNABpBAyAAQXBJDQAaQQEgAEF3Sw0DGkEECyEBQQEgASACSw0CGiADQRxqIAQgARDPAyADKAIcRQRAIAMgAygCICIAIAMoAiRqNgIsIAMgADYCKCADQShqENUKIgFBgIDEAEcNAkHs+8MAELwpAAtBAQwCC0Hs+8MAELwpAAsgARDWC0H/AXFBAXMLQQFxIQULIANBMGokACAFC4jGBQKJBX8FfiMAQcABayILJAAgC0GhAWpBggY7AAAgC0EDOgCUASALQoCAgICAgMCAATcAtQEgC0EKOgC0ASALQQA6AL0BIAtCgICAgKAfNwKsASALQoCAgIDAADcCpAEgC0EAOgCYASALQQI2AoABIAtBAjYCeCALQQI2AnAgC0KBgICAgICA0AA3AmggC0KBgICAgICAEDcCYCALQoKEiJCgwICBAjcAmQEgC0GkAWpBARDUHiALKAKoASALKAKsASINQQxsaiEGAkACQANAIAVFBEAgC0EGQQBBAUEBEJAKIAsoAgQhByALKAIAQQFGDQIgCygCCCIFQQRqQZPY2AAvAAA7AAAgBUGP2NgAKAAANgAAIAZBCGpBBjYCACAGQQRqIAU2AgAgBiAHNgIAIAZBDGohBkEBIQUgDUEBaiENDAELCyALIA02AqwBIAsgC0HgAGpB4AAQ9gYiH0HgAGohgwJBACEGIwBB8AprIgMkACADIB8oAkwiBTYCbAJAAkACQAJAAkACQAJAIAVBAUYEQCAfLQA8IRkgHy0ANCISQQNGIBJBAkZyDQEgHygCKCIYIBgoAgAiBUEBajYCACAFQQBIDQIgHygCMCEGIB8oAiwhIwwBCyADQQA2AqgEQQBB1JrYACADQewAaiADQagEakH498IAELQaDAELIB8tAF0hIiAfLQBbIRUgHy0AWiFAIB8tAFkhDSAfLQBYISAgHy0AVyFDIB8tAFYhJiAfLQBVISsgHy0AVCEhIB8oAlAhESAfLQA5IUQgHy0AOCEHIB8tAEEhDyAfLQBAId0BIB8tAD8hHiAfKAIkIQwgHygCICETIB8oAhwhHSAfKAIYIRYgHy0APiEEIB8tAD0hCSAfKAIEId4BIB8oAgAhNiAfKAIUIUUgHygCECE3IB8oAgwhCiAfKAIIIRcgHy0AQiEOIANB4ABqIB8oAkgiBSgCBCAFKAIIEMIOIAMoAmQh7wQgAygCYCHrBCADQc0BakGCBDsAACADQYKEiBA2AMkBIANBCjoAzwEgA0EBOgDIASADQvoBNwLQASADQQM6AMYBIANCgoSIkKDAgIECNwG+ASADQQA6ALwBIANBAzoAuAEgA0ECNgKkASADQQI2ApwBIANBAjYClAEgA0ECNgKMASADQQA2AoQBIAMgBjYCsAQgAyAjNgKsBCADIBg2AqgEIAMgEjoAtAQgEkEDRgRAIANBqARqELIkQQMhEgsgA0HJAWoh3wEgAygCkAEhCCADKAKYASEQIAMoAqABIeMBIAMoAqgBIeABIAMtAL0BIQsgAygCiAEhBSADQawBaiLzBBCyJCADIEA6ANQBIAMgDjoAxgEgAyAPOgDFASADIN0BOgDEASADIB46AMMBIAMgBDoAwgEgAyAJOgDBASADIBk6AMABIANBgQI7Ab4BIAMgEjoAuAEgAyAGNgK0ASADICM2ArABIAMgGDYCrAEgAyA2NgKEASADIN4BIAUgNhs2AogBIAMgBzoAvAEgAyBEIAsgB0EBcRs6AL0BIAMgEzYCpAEgAyDgASAMIBNBAkYbNgKoASADIBY2ApwBIAMg4wEgHSAWQQJGGzYCoAEgAyA3NgKUASADIBAgRSA3QQJGGzYCmAEgAyAXNgKMASADIAggCiAXQQJGGzYCkAEgAyAiOgDVASADIBE2AtABIANBAkEAIBVBAXEbOgDNASADQQFBAiAgQQFxGzoAzgEgA0EBQQIgJkEBcRs6AMoBIANBAUECICtBAXEbOgDJASADICE6AM8BIANBAUECIENBAXEbOgDLASADQQFBAiANQQFxGzoAzAEgA0EBOgDIASADIO8ENgLcASADIOsEQQhqNgLYASADQQA2AugBIANCgICAgMAANwLgASADQQA2AvQBIANCgICAgMAANwLsASADQoCAgIAQNwLICiADIANB4AFqIkM2AsQKIAMgA0HYAWo2AsAKIANB1ARqIS4gA0HYBGohQCADQbQEaiE2IANBsARqITogA0HsBGohJiADQaADaiE3IANBmAJqISsgA0GIAmohIQNAIANB2ABqIANBwApqEKgPIAMoAlwiBUUEQCADQoCAgIAQNwLAAyADIEM2ArwDIANBADYC2AMgA0IANwLQAyADIAMoAuQBIgU2AsgDIAMgBSADKALoAUEDdGo2AswDIAMgA0HYAWo2ArgDIANBrARqISEgA0GMAmohHSADQbwEaiERIANBsARqIQwgA0G0CmohBCADQaADaiEJIANBiANqIQogA0H8AWohHgNAIANBMGogA0G4A2oQqA8gA0HkAmohBQJ/QQAgAygCNCIGRQ0AGkEAIAMoAsgDIgsgAygCzANGDQAaIAMoAjAhDSADIAY2AuQCIAMgC0EIajYCyAMgA0HgAmohBSALCyEGIAUgBjYCACADKALkAiIFRQRAQQMhCyADLQDAASEbIAMtAL8BIRwgAy0AvgEhKCADKAL0ASEYIAMoAvABIQUgAy0AuAEiB0EDRwRAIAdBAkcEQCADKAKsASLeASDeASgCACINQQFqNgIAIA1BAEgNBiADKAKwASHjASADKAK0ASHgAQsgByELCyADLQC9ASEuIAMtALwBITIgAy0AxQEhOCADLQDEASE6IAMtAMMBIRMgAygCqAEhFiADKAKkASE2IAMoAqABITcgAygCnAEhFyADLQDCASHfASADLQDBASEZIAMoAogBISIgAygChAEhFSADKAKYASFAIAMoApQBISAgAygCkAEhQyADKAKMASEmIAMtAMYBISsgA0EIaiAYQQQQqBRBACENIANBADYCsAQgAyADKAIMIuwENgKsBCADIAMoAggi6AQ2AqgEAkACQCAYIOgESwRAIANBqARqQQAgGEEEQQQQkRcgAygCsAQhDSADKAKsBCHsBAwBCyAYRQ0BCyANIBhqIOwEIA1BAnRqIRIDQCASIAU2AgAgBUEcaiEFIBJBBGohEiAYQQFrIhgNAAsgAygCrAQh7AQgAygCqAQh6AQhDQtBACEYIANBADYCpAQgA0KAgICAwAA3ApwEIA1BAnQhB0EEISNBACEGA0AgByAYRgRAIAMgAygCoAQiBTYCsARBACESIANBADYCqAQgAyAFIAZBAnRqNgK0BCADQagEahD/EiEHIANBqARqEP8SIgUEfyAFKAIAKAIAIgUoAhQh3QEgBSgCEAVBAAshOyADKAKoBCEYIAMoArQEISEgAygCsAQhCCADKAKsBCEQQQEhBkEBISNB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LQAAIVAgAkH3DmotAAAhUSACQf8Oai0AACFSIAJBhw9qLQAAIVMgAkGPD2otAAAhVCACQZcPai0AACFVIAJBnw9qLQAAIVYgAkGnD2otAAAhVyACQa8Pai0AACFYIAJBtw9qLQAAIVkgAkG/D2otAAAhWiACQccPai0AACFbIAJBzw9qLQAAIVwgAkHXD2otAAAhXSACQd8Pai0AACFeIAJB5w9qLQAAIV8gAkHvD2otAAAhYCACQfcPai0AACFhIAJB/w9qLQAAIWIgAkGHEGotAAAhYyACQY8Qai0AACFkIAJBlxBqLQAAIWUgAkGfEGotAAAhZiACQacQai0AACFnIAJBrxBqLQAAIWggAkG3EGotAAAhaSACQb8Qai0AACFqIAJBxxBqLQAAIWsgAkHPEGotAAAhbCACQdcQai0AACFtIAJB3xBqLQAAIW4gAkHnEGotAAAhbyACQe8Qai0AACFwIAJB9xBqLQAAIXEgAkH/EGotAAAhciACQYcRai0AACFzIAJBjxFqLQAAIXQgAkGXEWotAAAhdSACQZ8Rai0AACF2IAJBpxFqLQAAIXcgAkGvEWotAAAheCACQbcRai0AACF5IAJBvxFqLQAAIXogAkHHEWotAAAheyACQc8Rai0AACF8IAJB1xFqLQAAIX0gAkHfEWotAAAhfiACQecRai0AACF/IAItAOQRIbwCIAIoAuARIb0CIAItANwRIb4CIAIoAtgRIb8CIAItANQRIcACIAIoAtARIcECIAItAMwRIcICIAIoAsgRIcMCIAItAMQRIcQCIAIoAsARIcUCIAItALwRIcYCIAIoArgRIccCIAItALQRIcgCIAIoArARIckCIAItAKwRIcoCIAIoAqgRIcsCIAItAKQRIcwCIAIoAqARIc0CIAItAJwRIc4CIAIoApgRIc8CIAItAJQRIdACIAIoApARIdECIAItAIwRIdICIAIoAogRIdMCIAItAIQRIdQCIAIoAoARIdUCIAItAPwQIdYCIAIoAvgQIdcCIAItAPQQIdgCIAIoAvAQIdkCIAItAOwQIdoCIAIoAugQIdsCIAItAOQQIdwCIAIoAuAQId0CIAItANwQId4CIAIoAtgQId8CIAItANQQIeACIAIoAtAQIeECIAItAMwQIeICIAIoAsgQIeMCIAItAMQQIeQCIAIoAsAQIeUCIAItALwQIeYCIAIoArgQIecCIAItALQQIegCIAIoArAQIekCIAItAKwQIeoCIAIoAqgQIesCIAItAKQQIewCIAIoAqAQIe0CIAItAJwQIe4CIAIoApgQIe8CIAItAJQQIfACIAIoApAQIfECIAItAIwQIfICIAIoAogQIfMCIAItAIQQIfQCIAIoAoAQIfUCIAItAPwPIfYCIAIoAvgPIfcCIAItAPQPIfgCIAIoAvAPIfkCIAItAOwPIfoCIAIoAugPIfsCIAItAOQPIfwCIAIoAuAPIf0CIAItANwPIf4CIAIoAtgPIf8CIAItANQPIYADIAIoAtAPIYEDIAItAMwPIYIDIAIoAsgPIYMDIAItAMQPIYQDIAIoAsAPIYUDIAItALwPIYYDIAIoArgPIYcDIAItALQPIYgDIAIoArAPIYkDIAItAKwPIYoDIAIoAqgPIYsDIAItAKQPIYwDIAIoAqAPIY0DIAItAJwPIY4DIAIoApgPIY8DIAItAJQPIZADIAIoApAPIZEDIAItAIwPIZIDIAIoAogPIZMDIAItAIQPIZQDIAIoAoAPIZUDIAItAPwOIZYDIAIoAvgOIZcDIAItAPQOIZgDIAIoAvAOIZkDIAItAOwOIZoDIAIoAugOIZsDIAItAOQOIZwDIAIoAuAOIZ0DIAItANwOIZ4DIAIoAtgOIZ8DIAItANQOIaADIAIoAtAOIaEDIAItAMwOIaIDIAIoAsgOIaMDIAItAMQOIaQDIAIoAsAOIaUDIAItALwOIaYDIAIoArgOIacDIAItALQOIagDIAIoArAOIakDIAItAKwOIaoDIAIoAqgOIasDIAItAKQOIawDIAIoAqAOIa0DIAItAJwOIa4DIAIoApgOIa8DIAItAJQOIbADIAIoApAOIbEDIAItAIwOIbIDIAIoAogOIbMDIAItAIQOIbQDIAIoAoAOIbUDIAItAPwNIbYDIAIoAvgNIbcDIAItAPQNIbgDIAIoAvANIbkDIAItAOwNIboDIAIoAugNIbsDIAItAOQNIbwDIAIoAuANIb0DIAItANwNIb4DIAIoAtgNIb8DIAItANQNIcADIAIoAtANIcEDIAItAMwNIcIDIAIoAsgNIcMDIAItAMQNIcQDIAIoAsANIcUDIAItALwNIcYDIAIoArgNIccDIAItALQNIcgDIAIoArANIckDIAItAKwNIcoDIAIoAqgNIcsDIAItAKQNIcwDIAIoAqANIc0DIAItAJwNIc4DIAIoApgNIc8DIAItAJQNIdADIAIoApANIdEDIAItAIwNIdIDIAIoAogNIdMDIAItAIQNIdQDIAIoAoANIdUDIAItAPwMIdYDIAIoAvgMIdcDIAItAPQMIdgDIAIoAvAMIdkDIAItAOwMIdoDIAIoAugMIdsDIAIvAO0MIAIvAPUMIAIvAP0MIAIvAIUNIAIvAI0NIAIvAJUNIAIvAJ0NIAIvAKUNIAIvAK0NIAIvALUNIAIvAL0NIAIvAMUNIAIvAM0NIAIvANUNIAIvAN0NIAIvAOUNIAIvAO0NIAIvAPUNIAIvAP0NIAIvAIUOIAIvAI0OIAIvAJUOIAIvAJ0OIAIvAKUOIAIvAK0OIAIvALUOIAIvAL0OIAIvAMUOIAIvAM0OIAIvANUOIAIvAN0OIAIvAOUOIAIvAO0OIAIvAPUOIAIvAP0OIAIvAIUPIAIvAI0PIAIvAJUPIAIvAJ0PIAIvAKUPIAIvAK0PIAIvALUPIAIvAL0PIAIvAMUPIAIvAM0PIAIvANUPIAIvAN0PIAIvAOUPIAIvAO0PIAIvAPUPIAIvAP0PIAIvAIUQIAIvAI0QIAIvAJUQIAIvAJ0QIAIvAKUQIAIvAK0QIAIvALUQIAIvAL0QIAIvAMUQIAIvAM0QIAIvANUQIAIvAN0QIAIvAOUQIAIvAO0QIAIvAPUQIAIvAP0QIAIvAIURIAIvAI0RIAIvAJURIAIvAJ0RIAIvAKURIAIvAK0RIAIvALURIAIvAL0RIAIvAMURIAIvAM0RIAIvANURIAIvAN0RIAIvAOURIPIEEMQYIAJBjwdqLQAAIfAEIAJBlwdqLQAAIfEEIAJBnwdqLQAAIUIgAkGnB2otAAAh5wEgAkGvB2otAAAhMSACQbcHai0AACGFAiACQb8Hai0AACHuBCACQccHai0AACESIAJBzwdqLQAAISMgAkHXB2otAAAhLCACQd8Hai0AACEtIAJB5wdqLQAAIS8gAkHvB2otAAAhMyACQfcHai0AACE7IAJB/wdqLQAAIUEgAkGHCGotAAAhPCACQY8Iai0AACFEIAJBlwhqLQAAIUUgAkGfCGotAAAhzwEgAkGnCGotAAAh0AEgAkGvCGotAAAh0QEgAkG3CGotAAAh0gEgAkG/CGotAAAh0wEgAkHHCGotAAAh1AEgAkHPCGotAAAh1QEgAkHXCGotAAAh1gEgAkHfCGotAAAh1wEgAkHnCGotAAAh2AEgAkHvCGotAAAh2QEgAkH3CGotAAAh2gEgAkH/CGotAAAh2wEgAkGHCWotAAAh3QEgAkGPCWotAAAh3gEgAkGXCWotAAAh4QEgAkGfCWotAAAh4wEgAkGnCWotAAAh4AEgAkGvCWotAAAh5AEgAkG3CWotAAAh5QEgAkG/CWotAAAh6AEgAkHHCWotAAAh6QEgAkHPCWotAAAh6gEgAkHXCWotAAAh6wEgAkHfCWotAAAh7AEgAkHnCWotAAAh7QEgAkHvCWotAAAh7gEgAkH3CWotAAAh7wEgAkH/CWotAAAh8AEgAkGHCmotAAAh8QEgAkGPCmotAAAh8gEgAkGXCmotAAAh8wEgAkGfCmotAAAh9AEgAkGnCmotAAAh9QEgAkGvCmotAAAh9gEgAkG3CmotAAAh9wEgAkG/CmotAAAh+AEgAkHHCmotAAAh+QEgAkHPCmotAAAh+gEgAkHXCmotAAAh+wEgAkHfCmotAAAh/AEgAkHnCmotAAAh/QEgAkHvCmotAAAh/gEgAkH3CmotAAAh/wEgAkH/CmotAAAhgAIgAkGHC2otAAAhMCACQY8Lai0AACGCAiACQZcLai0AACGGAiACQZ8Lai0AACGHAiACQacLai0AACGIAiACQa8Lai0AACGJAiACQbcLai0AACGKAiACQb8Lai0AACGLAiACQccLai0AACGMAiACQc8Lai0AACGNAiACQdcLai0AACGOAiACQd8Lai0AACGPAiACLQDcCyHcAyACKALYCyHdAyACLQDUCyHeAyACKALQCyHfAyACLQDMCyHgAyACKALICyHhAyACLQDECyHiAyACKALACyHjAyACLQC8CyHkAyACKAK4CyHlAyACLQC0CyHmAyACKAKwCyHnAyACLQCsCyHoAyACKAKoCyHpAyACLQCkCyHqAyACKAKgCyHrAyACLQCcCyHsAyACKAKYCyHtAyACLQCUCyHuAyACKAKQCyHvAyACLQCMCyHwAyACKAKICyHxAyACLQCECyHyAyACKAKACyHzAyACLQD8CiH0AyACKAL4CiH1AyACLQD0CiH2AyACKALwCiH3AyACLQDsCiH4AyACKALoCiH5AyACLQDkCiH6AyACKALgCiH7AyACLQDcCiH8AyACKALYCiH9AyACLQDUCiH+AyACKALQCiH/AyACLQDMCiGABCACKALICiGBBCACLQDECiGCBCACKALACiGDBCACLQC8CiGEBCACKAK4CiGFBCACLQC0CiGGBCACKAKwCiGHBCACLQCsCiGIBCACKAKoCiGJBCACLQCkCiGKBCACKAKgCiGLBCACLQCcCiGMBCACKAKYCiGNBCACLQCUCiGOBCACKAKQCiGPBCACLQCMCiGQBCACKAKICiGRBCACLQCECiGSBCACKAKACiGTBCACLQD8CSGUBCACKAL4CSGVBCACLQD0CSGWBCACKALwCSGXBCACLQDsCSGYBCACKALoCSGZBCACLQDkCSGaBCACKALgCSGbBCACLQDcCSGcBCACKALYCSGdBCACLQDUCSGeBCACKALQCSGfBCACLQDMCSGgBCACKALICSGhBCACLQDECSGiBCACKALACSGjBCACLQC8CSGkBCACKAK4CSGlBCACLQC0CSGmBCACKAKwCSGnBCACLQCsCSGoBCACKAKoCSGpBCACLQCkCSGqBCACKAKgCSGrBCACLQCcCSGsBCACKAKYCSGtBCACLQCUCSGuBCACKAKQCSGvBCACLQCMCSGwBCACKAKICSGxBCACLQCECSGyBCACKAKACSGzBCACLQD8CCG0BCACKAL4CCG1BCACLQD0CCG2BCACKALwCCG3BCACLQDsCCG4BCACKALoCCG5BCACLQDkCCG6BCACKALgCCG7BCACLQDcCCG8BCACKALYCCG9BCACLQDUCCG+BCACKALQCCG/BCACLQDMCCHABCACKALICCHBBCACLQDECCHCBCACKALACCHDBCACLQC8CCHEBCACKAK4CCHFBCACLQC0CCHGBCACKAKwCCHHBCACLQCsCCHIBCACKAKoCCHJBCACLQCkCCHKBCACKAKgCCHLBCACLQCcCCHMBCACKAKYCCHNBCACLQCUCCHOBCACKAKQCCHPBCACLQCMCCHQBCACKAKICCHRBCACLQCECCHSBCACKAKACCHTBCACLQD8ByHUBCACKAL4ByHVBCACLQD0ByHWBCACKALwByHXBCACLQDsByHYBCACKALoByHZBCACLQDkByHaBCACKALgByHbBCACLQDcByHcBCACKALYByHdBCACLQDUByHeBCACKALQByHfBCACLQDMByHgBCACKALIByHhBCACLQDEByHiBCACKALAByHjBCACLQC8ByHkBCACKAK4ByHlBCACLQC0ByHmBCACKAKwByHnBCACLQCsByHpBCACKAKoByHqBCACLQCkByFGIAIoAqAHITkgAi0AnAch4gEgAigCmAchPyACLQCUByEQIAIoApAHISogAi0AjAchPiACKAKIByEKIAIoAoQHIeYBIAIoAoAHITUgAigC/AYhHSACKAL4BiE0IAIoAvQGIQcgAigC8AYhJyACKALsBiEMIAIoAugGIQQgAigC5AYhhAIgAigC4AYhPSACKQPYBiGLBSACLwCNByGQAiACLwCVByGRAiACLwCdByGSAiACLwClByGTAiACLwCtByGUAiACLwC1ByGVAiACLwC9ByGWAiACLwDFByGXAiACLwDNByGYAiACLwDVByGZAiACLwDdByGaAiACLwDlByGbAiACLwDtByGcAiACLwD1ByGdAiACLwD9ByGeAiACLwCFCCGfAiACLwCNCCGgAiACLwCVCCGhAiACLwCdCCGiAiACLwClCCGjAiACLwCtCCGkAiACLwC1CCGlAiACLwC9CCGmAiACLwDFCCGnAiACLwDNCCGoAiACLwDVCCGpAiACLwDdCCGqAiACLwDlCCGrAiACLwDtCCGsAiACLwD1CCGtAiACLwD9CCGuAiACLwCFCSGvAiACLwCNCSGwAiACLwCVCSGxAiACLwCdCSGyAiACLwClCSGzAiACLwCtCSG0AiACLwC1CSG1AiACLwC9CSG2AiACLwDFCSG3AiACLwDNCSG4AiACLwDVCSG5AiACLwDdCSG6AiACLwDlCSG7AiACLwDtCSEUIAIvAPUJIRogAi8A/QkhGyACLwCFCiEcIAIvAI0KISggAi8AlQohLiACLwCdCiEyIAIvAKUKITggAi8ArQohOiACLwC1CiETIAIvAL0KIRYgAi8AxQohNiACLwDNCiE3IAIvANUKIRcgAi8A3Qoh3wEgAi8A5QohGSACLwDtCiEiIAIvAPUKIRUgAi8A/QohQCACLwCFCyEgIAIvAI0LIUMgAi8AlQshJiACLwCdCyErIAIvAKULIREgAi8ArQshDyACLwC1CyEJIAIvAL0LIQ4gAi8AxQshCCACLwDNCyELIAIv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AM0KIAEg+QE7AMUKIAEg+gE7AL0KIAEg+wE7ALUKIAEg/AE7AK0KIAEg/QE7AKUKIAEg/gE7AJ0KIAEgfzsAlQogASB+OwCNCiABIH07AIUKIAEgfDsA/QkgASB7OwD1CSABIHo7AO0JIAEgeTsA5QkgASB4OwDdCSABIHc7ANUJIAEgdjsAzQkgASB1OwDFCSABIHQ7AL0JIAEgczsAtQkgASByOwCtCSABIHE7AKUJIAEgcDsAnQkgASBvOwCVCSABIG47AI0JIAEgbTsAhQkgASBsOwD9CCABIGs7APUIIAEgajsA7QggASBpOwDlCCABIGg7AN0IIAEgZzsA1QggASBmOwDNCCABIGU7AMUIIAEgZDsAvQggASBjOwC1CCABIGI7AK0IIAEgYTsApQggASBgOwCdCCABIF87AJUIIAEgXjsAjQggASBdOwCFCCABIFw7AP0HIAEgWzsA9QcgASBaOwDtByABIFk7AOUHIAEgWDsA3QcgASBXOwDVByABIFY7AM0HIAEgVTsAxQcgASBUOwC9ByABIFM7ALUHIAEgUjsArQcgASBROwClByABIFA7AJ0HIAEgTzsAlQcgASBOOwCNByABIE07AIUHIAEgTDsA/QYgASBLOwD1BiABIEo7AO0GIAEgSTsA5QYgASBIOwDdBiABIEc7ANUGIAEglgE7AM0GIAEglQE7AMUGIAEglAE7AL0GIAEgkwE7ALUGIAEgkgE7AK0GIAEgkQE7AKUGIAEgkAE7AJ0GIAEgjwE7AJUGIAEgjgE7AI0GIAEgjQE7AIUGIAEgjAE7AP0FIAEgiwE7APUFIAEgigE7AO0FIAEgiQE7AOUFIAEgiAE7AN0FIAEghwE7ANUFIAEghgE7AM0FIAEghQE7AMUFIAEghAE7AL0FIAEggwE7ALUFIAEgggE7AK0FIAEggQE7AKUFIAEggAE7AJ0FIAFBADsAlQUgASDcATsAjQUgASCXATsAhQUgASCYATsA/QQgASCZATsA9QQgASCaATsA7QQgASCbATsA5QQgASCcATsA3QQgASCdATsA1QQgASCeATsAzQQgASCfATsAxQQgASCgATsAvQQgASChATsAtQQgASCiATsArQQgASCjATsApQQgASCkATsAnQQgASClATsAlQQgASCmATsAjQQgASCnATsAhQQgASCoATsA/QMgASCpATsA9QMgASCqATsA7QMgASCrATsA5QMgASCsATsA3QMgASCtATsA1QMgASCuATsAzQMgASCvATsAxQMgASCwATsAvQMgASCxATsAtQMgASCyATsArQMgASCzATsApQMgASC0ATsAnQMgASC1ATsAlQMgASC2ATsAjQMgASC3ATsAhQMgASC4ATsA/QIgASC5ATsA9QIgASC6ATsA7QIgASC7ATsA5QIgASC8ATsA3QIgASC9ATsA1QIgASC+ATsAzQIgASC/ATsAxQIgASDAATsAvQIgASDBATsAtQIgASDCATsArQIgASDDATsApQIgASDEATsAnQIgASDFATsAlQIgASDGATsAjQIgASDHATsAhQIgASDIATsA/QEgASDJATsA9QEgASDKATsA7QEgASDLATsA5QEgASDMATsA3QEgASDNATsA1QEgASDOATsAzQEgASDPATsAxQEgASDbATsAvQEgASDaATsAtQEgASDZATsArQEgASDYATsApQEgASDXATsAnQEgASDWATsAlQEgASDVATsAjQEgASDUATsAhQEgASDTATsAfSABINIBOwB1IAEg0QE7AG0gASDQATsAZSABIIACOwBdIAEgDzsAVSABIA07AE0gASAFOwBFIAFBADoApA0gASCBAjYCoA0gASCFAjYCnA0gASAsNgKYDSABIIYCNgKUDSABIIcCNgKQDSABIIgCNgKMDSABIIkCNgKIDSABIIoCNgKEDSABIIsCNgKADSABIIwCNgL8DCABII0CNgL4DCABII4CNgL0DCABII8CNgLwDCABIJACNgLsDCABIJECNgLoDCABIJICNgLkDCABIJMCNgLgDCABIJQCNgLcDCABIJUCNgLYDCABIJYCNgLUDCABIJcCNgLQDCABIJgCNgLMDCABIJkCNgLIDCABIJoCNgLEDCABIJsCNgLADCABIJwCNgK8DCABIJ0CNgK4DCABIJ4CNgK0DCABIJ8CNgKwDCABIKACNgKsDCABIKECNgKoDCABIKICNgKkDCABIKMCNgKgDCABIKQCNgKcDCABIKUCNgKYDCABIKYCNgKUDCABIKcCNgKQDCABIKgCNgKMDCABIKkCNgKIDCABIKoCNgKEDCABIKsCNgKADCABIKwCNgL8CyABIK0CNgL4CyABIK4CNgL0CyABIK8CNgLwCyABILACNgLsCyABILECNgLoCyABILICNgLkCyABILMCNgLgCyABIBE2AtwLIAEgtAI2AtgLIAEg5wE6ANQLIAEgtQI2AtALIAEgtgI6AMwLIAEgtwI2AsgLIAEguAI6AMQLIAEguQI2AsALIAEgugI6ALwLIAEguwI2ArgLIAEgFDoAtAsgASASNgKwCyABICM6AKwLIAEgGjYCqAsgASAtOgCkCyABIDs2AqALIAEgQToAnAsgASBENgKYCyABIEU6AJQLIAEgPDYCkAsgASDdAToAjAsgASDeATYCiAsgASDjAToAhAsgASDgATYCgAsgASDhAToA/AogASDkATYC+AogASDlAToA9AogASAbNgLwCiABIBw6AOwKIAEgKDYC6AogASAuOgDkCiABIDI2AuAKIAEgODoA3AogASA6NgLYCiABIBM6ANQKIAEgFjYC0AogASA2OgDMCiABIDc2AsgKIAEgFzoAxAogASDfATYCwAogASAZOgC8CiABICI2ArgKIAEgFToAtAogASBANgKwCiABIC86AKwKIAEgIDYCqAogASD/AToApAogASBDNgKgCiABICY6AJwKIAEgKzYCmAogASC8AjoAlAogASC9AjYCkAogASC+AjoAjAogASC/AjYCiAogASDAAjoAhAogASDBAjYCgAogASDCAjoA/AkgASDDAjYC+AkgASDEAjoA9AkgASDFAjYC8AkgASDGAjoA7AkgASDHAjYC6AkgASDIAjoA5AkgASDJAjYC4AkgASDKAjoA3AkgASDLAjYC2AkgASDMAjoA1AkgASDNAjYC0AkgASDOAjoAzAkgASDPAjYCyAkgASDQAjoAxAkgASDRAjYCwAkgASDSAjoAvAkgASDTAjYCuAkgASDUAjoAtAkgASDVAjYCsAkgASDWAjoArAkgASDXAjYCqAkgASDYAjoApAkgASDZAjYCoAkgASDaAjoAnAkgASDbAjYCmAkgASDcAjoAlAkgASDdAjYCkAkgASDeAjoAjAkgASDfAjYCiAkgASDgAjoAhAkgASDhAjYCgAkgASDiAjoA/AggASDjAjYC+AggASDkAjoA9AggASDlAjYC8AggASDmAjoA7AggASDnAjYC6AggASDoAjoA5AggASDpAjYC4AggASDqAjoA3AggASDrAjYC2AggASDsAjoA1AggASDtAjYC0AggASDuAjoAzAggASDvAjYCyAggASDwAjoAxAggASDxAjYCwAggASDyAjoAvAggASDzAjYCuAggASD0AjoAtAggASD1AjYCsAggASD2AjoArAggASD3AjYCqAggASD4AjoApAggASD5AjYCoAggASD6AjoAnAggASD7AjYCmAggASD8AjoAlAggASD9AjYCkAggASD+AjoAjAggASD/AjYCiAggASCAAzoAhAggASCBAzYCgAggASCCAzoA/AcgASCDAzYC+AcgASCEAzoA9AcgASCFAzYC8AcgASCGAzoA7AcgASCHAzYC6AcgASCIAzoA5AcgASCJAzYC4AcgASCKAzoA3AcgASCLAzYC2AcgASCMAzoA1AcgASCNAzYC0AcgASCOAzoAzAcgASCPAzYCyAcgASCQAzoAxAcgASCRAzYCwAcgASCSAzoAvAcgASCTAzYCuAcgASCUAzoAtAcgASCVAzYCsAcgASCWAzoArAcgASCXAzYCqAcgASCYAzoApAcgASCZAzYCoAcgASCaAzoAnAcgASCbAzYCmAcgASCcAzoAlAcgASCdAzYCkAcgASCeAzoAjAcgASCfAzYCiAcgASCgAzoAhAcgASChAzYCgAcgASCiAzoA/AYgASCjAzYC+AYgASCkAzoA9AYgASClAzYC8AYgASCmAzoA7AYgASCnAzYC6AYgASCoAzoA5AYgASCpAzYC4AYgASCqAzoA3AYgASCrAzYC2AYgASCsAzoA1AYgASCtAzYC0AYgASCuAzoAzAYgASCvAzYCyAYgASCwAzoAxAYgASCxAzYCwAYgASCyAzoAvAYgASCzAzYCuAYgASC0AzoAtAYgASC1AzYCsAYgASC2AzoArAYgASC3AzYCqAYgASC4AzoApAYgASC5AzYCoAYgASC6AzoAnAYgASC7AzYCmAYgASC8AzoAlAYgASC9AzYCkAYgASC+AzoAjAYgASC/AzYCiAYgASDAAzoAhAYgASDBAzYCgAYgASDCAzoA/AUgASDDAzYC+AUgASDEAzoA9AUgASDFAzYC8AUgASDGAzoA7AUgASDHAzYC6AUgASDIAzoA5AUgASDJAzYC4AUgASDKAzoA3AUgASDLAzYC2AUgASDMAzoA1AUgASDNAzYC0AUgASDOAzoAzAUgASDPAzYCyAUgASDQAzoAxAUgASDRAzYCwAUgASDSAzoAvAUgASDTAzYCuAUgASDUAzoAtAUgASDVAzYCsAUgASDWAzoArAUgASDXAzYCqAUgASDYAzoApAUgASDZAzYCoAUgASDaAzoAnAUgASDbAzYCmAUgAUEAOgCUBSABIIICNgKQBSABINwDOgCMBSABIN0DNgKIBSABIN4DOgCEBSABIN8DNgKABSABIOADOgD8BCABIOEDNgL4BCABIOIDOgD0BCABIOMDNgLwBCABIOQDOgDsBCABIOUDNgLoBCABIOYDOgDkBCABIOcDNgLgBCABIOgDOgDcBCABIOkDNgLYBCABIOoDOgDUBCABIOsDNgLQBCABIOwDOgDMBCABIO0DNgLIBCABIO4DOgDEBCABIO8DNgLABCABIPADOgC8BCABIPEDNgK4BCABIPIDOgC0BCABIPMDNgKwBCABIPQDOgCsBCABIPUDNgKoBCABIPYDOgCkBCABIPcDNgKgBCABIPgDOgCcBCABIPkDNgKYBCABIPoDOgCUBCABIPsDNgKQBCABIPwDOgCMBCABIP0DNgKIBCABIP4DOgCEBCABIP8DNgKABCABIIAEOgD8AyABIIEENgL4AyABIIIEOgD0AyABIIMENgLwAyABIIQEOgDsAyABIIUENgLoAyABIIYEOgDkAyABIIcENgLgAyABIIgEOgDcAyABIIkENgLYAyABIIoEOgDUAyABIIsENgLQAyABIIwEOgDMAyABII0ENgLIAyABII4EOgDEAyABII8ENgLAAyABIJAEOgC8AyABIJEENgK4AyABIJIEOgC0AyABIJMENgKwAyABIJQEOgCsAyABIJUENgKoAyABIJYEOgCkAyABIJcENgKgAyABIJgEOgCcAyABIJkENgKYAyABIJoEOgCUAyABIJsENgKQAyABIJwEOgCMAyABIJ0ENgKIAyABIJ4EOgCEAyABIJ8ENgKAAyABIKAEOgD8AiABIKEENgL4AiABIKIEOgD0AiABIKMENgLwAiABIKQEOgDsAiABIKUENgLoAiABIKYEOgDkAiABIKcENgLgAiABIKgEOgDcAiABIKkENgLYAiABIKoEOgDUAiABIKsENgLQAiABIKwEOgDMAiABIK0ENgLIAiABIK4EOgDEAiABIK8ENgLAAiABILAEOgC8AiABILEENgK4AiABILIEOgC0AiABILMENgKwAiABILQEOgCsAiABILUENgKoAiABILYEOgCkAiABILcENgKgAiABILgEOgCcAiABILkENgKYAiABILoEOgCUAiABILsENgKQAiABILwEOgCMAiABIL0ENgKIAiABIL4EOgCEAiABIL8ENgKAAiABIMAEOgD8ASABIMEENgL4ASABIMIEOgD0ASABIMMENgLwASABIMQEOgDsASABIMUENgLoASABIMYEOgDkASABIMcENgLgASABIMgEOgDcASABIMkENgLYASABIMoEOgDUASABIMsENgLQASABIMwEOgDMASABIM0ENgLIASABIM4EOgDEASABIM8ENgLAASABINAEOgC8ASABINEENgK4ASABINIEOgC0ASABINMENgKwASABINQEOgCsASABINUENgKoASABINYEOgCkASABINcENgKgASABINgEOgCcASABINkENgKYASABINoEOgCUASABINsENgKQASABINwEOgCMASABIN0ENgKIASABIN4EOgCEASABIN8ENgKAASABIOAEOgB8IAEg4QQ2AnggASDiBDoAdCABIOMENgJwIAEg5AQ6AGwgASDlBDYCaCABIOYEOgBkIAEg5wQ2AmAgASDpBDoAXCABIOoENgJYIAEgRjoAVCABIDk2AlAgASDiAToATCABID82AkggASAQOgBEIAEgKjYCQCABIAo2AjggASDmATYCNCABIDU2AjAgASAdNgIsIAEgNDYCKCABIAc2AiQgASAnNgIgIAEgDDYCHCABIAQ2AhggASCEAjYCFCABID02AhAgASCLBTcDCCABQQE2AgQgAUEBNgIAIAFB1wtqIEJBEHY6AAAgAUHPC2og6QFBEHY6AAAgAUHHC2og6gFBEHY6AAAgAUG/C2og6wFBEHY6AAAgAUG3C2og7AFBEHY6AAAgAUGvC2og7QFBEHY6AAAgAUGnC2og7gFBEHY6AAAgAUGfC2og7wFBEHY6AAAgAUGXC2og8AFBEHY6AAAgAUGPC2og8QFBEHY6AAAgAUGHC2og8gFBEHY6AAAgAUH/Cmog8wFBEHY6AAAgAUH3Cmog9AFBEHY6AAAgAUHvCmog9QFBEHY6AAAgAUHnCmog9gFBEHY6AAAgAUHfCmog6AFBEHY6AAAgAUHXCmog9wFBEHY6AAAgAUHPCmog+AFBEHY6AAAgAUHHCmog+QFBEHY6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EMoeCyACQaABahDMHgwBCyACLQBfIQ4gAigCWCEIIAItAFwhCyACKQNgIYoFIAIvAF0hBiACQaABahDMHkG4DUEIEIwgIgEgBjsArQ0gASDwBDsA3QsgASBCOwDVCyABIOkBOwDNCyABIOoBOwDFCyABIOsBOwC9CyABIOwBOwC1CyABIO0BOwCtCyABIO4BOwClCyABIO8BOwCdCyABIPABOwCVCyABIPEBOwCNCyABIPIBOwCFCyABIPMBOwD9CiABIPQBOwD1CiABIPUBOwDtCiABIPYBOwDlCiABIOgBOwDdCiABIPcBOwDVCiABIPgBOwDNCiABIPkBOwDFCiABIPoBOwC9CiABIPsBOwC1CiABIPwBOwCtCiABIP0BOwClCiABIP4BOwCdCiABIH87AJUKIAEgfjsAjQogASB9OwCFCiABIHw7AP0JIAEgezsA9QkgASB6OwDtCSABIHk7AOUJIAEgeDsA3QkgASB3OwDVCSABIHY7AM0JIAEgdTsAxQkgASB0OwC9CSABIHM7ALUJIAEgcjsArQkgASBxOwClCSABIHA7AJ0JIAEgbzsAlQkgASBuOwCNCSABIG07AIUJIAEgbDsA/QggASBrOwD1CCABIGo7AO0IIAEgaTsA5QggASBoOwDdCCABIGc7ANUIIAEgZjsAzQggASBlOwDFCCABIGQ7AL0IIAEgYzsAtQggASBiOwCtCCABIGE7AKUIIAEgYDsAnQggASBfOwCVCCABIF47AI0IIAEgXTsAhQggASBcOwD9ByABIFs7APUHIAEgWjsA7QcgASBZOwDlByABIFg7AN0HIAEgVzsA1QcgASBWOwDNByABIFU7AMUHIAEgVDsAvQcgASBTOwC1ByABIFI7AK0HIAEgUTsApQcgASBQOwCdByABIE87AJUHIAEgTjsAjQcgASBNOwCFByABIEw7AP0GIAEgSzsA9QYgASBKOwDtBiABIEk7AOUGIAEgSDsA3QYgASBHOwDVBiABIJYBOwDNBiABIJUBOwDFBiABIJQBOwC9BiABIJMBOwC1BiABIJIBOwCtBiABIJEBOwClBiABIJABOwCdBiABII8BOwCVBiABII4BOwCNBiABII0BOwCFBiABIIwBOwD9BSABIIsBOwD1BSABIIoBOwDtBSABIIkBOwDlBSABIIgBOwDdBSABIIcBOwDV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INACOgDECSABINECNgLACSABINICOgC8CSABINMCNgK4CSABINQCOgC0CSABINUCNgKwCSABINYCOgCsCSABINcCNgKoCSABINgCOgCkCSABINkCNgKgCSABINoCOgCcCSABINsCNgKYCSABINwCOgCUCSABIN0CNgKQCSABIN4COgCMCSABIN8CNgKICSABIOACOgCECSABIOECNgKACSABIOICOgD8CCABIOMCNgL4CCABIOQCOgD0CCABIOUCNgLwCCABIOYCOgDsCCABIOcCNgLoCCABIOgCOgDkCCABIOkCNgLgCCABIOoCOgDcCCABIOsCNgLYCCABIOwCOgDUCCABIO0CNgLQCCABIO4COgDMCCABIO8CNgLICCABIPACOgDECCABIPECNgLACCABIPICOgC8CCABIPMCNgK4CCABIPQCOgC0CCABIPUCNgKwCCABIPYCOgCsCCABIPcCNgKoCCABIPgCOgCkCCABIPkCNgKgCCABIPoCOgCcCCABIPsCNgKYCCABIPwCOgCUCCABIP0CNgKQCCABIP4COgCMCCABIP8CNgKICCABIIADOgCECCABIIEDNgKACCABIIIDOgD8ByABIIMDNgL4ByABIIQDOgD0ByABIIUDNgLwByABIIYDOgDsByABIIcDNgLoByABIIgDOgDkByABIIkDNgLgByABIIoDOgDcByABIIsDNgLYByABIIwDOgDUByABII0DNgLQByABII4DOgDMByABII8DNgLIByABIJADOgDEByABIJEDNgLAByABIJIDOgC8ByABIJMDNgK4ByABIJQDOgC0ByABIJUDNgKwByABIJYDOgCsByABIJcDNgKoByABIJgDOgCkByABIJkDNgKgByABIJoDOgCcByABIJsDNgKYByABIJwDOgCUByABIJ0DNgKQByABIJ4DOgCMByABIJ8DNgKIByABIKADOgCEByABIKEDNgKAByABIKIDOgD8BiABIKMDNgL4BiABIKQDOgD0BiABIKUDNgLwBiABIKYDOgDsBiABIKcDNgLoBiABIKgDOgDkBiABIKkDNgLgBiABIKoDOgDcBiABIKsDNgLYBiABIKwDOgDUBiABIK0DNgLQBiABIK4DOgDMBiABIK8DNgLIBiABILADOgDEBiABILEDNgLABiABILIDOgC8BiABILMDNgK4BiAB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CyABIOoBOwDFCyABIOsBOwC9CyABIOwBOwC1CyABIO0BOwCtCyABIO4BOwClCyABIO8BOwCdCyABIPABOwCVCyABIPEBOwCNCyABIPIBOwCFCyABIPMBOwD9CiABIPQBOwD1CiABIPUBOwDtCiABIPYBOwDlCiABIOgBOwDdCiABIPcBOwDVCiABIPgBOwDNCiABIPkBOwDFCiABIPoBOwC9CiABIPsBOwC1CiABIPwBOwCtCiABIP0BOwClCiABIP4BOwCdCiABIH87AJUKIAEgfjsAjQogASB9OwCFCiABIHw7AP0JIAEgezsA9QkgASB6OwDtCSABIHk7AOUJIAEgeDsA3QkgASB3OwDVCSABIHY7AM0JIAEgdTsAxQkgASB0OwC9CSABIHM7ALUJIAEgcjsArQkgASBxOwClCSABIHA7AJ0JIAEgbzsAlQkgASBuOwCNCSABIG07AIUJIAEgbDsA/QggASBrOwD1CCABIGo7AO0IIAEgaTsA5QggASBoOwDdCCABIGc7ANUIIAEgZjsAzQggASBlOwDFCCABIGQ7AL0IIAEgYzsAtQggASBiOwCtCCABIGE7AKUIIAEgYDsAnQggASBfOwCVCCABIF47AI0IIAEgXTsAhQggASBcOwD9ByABIFs7APUHIAEgWjsA7QcgASBZOwDlByABIFg7AN0HIAEgVzsA1QcgASBWOwDNByABIFU7AMUHIAEgVDsAvQcgASBTOwC1ByABIFI7AK0HIAEgUTsApQcgASBQOwCdByABIE87AJUHIAEgTjsAjQcgASBNOwCFByABIEw7AP0GIAEgSzsA9QYgASBKOwDtBiABIEk7AOUGIAEgSDsA3QYgASBHOwDVBiABIJYBOwDNBiABIJUBOwDFBiABIJQBOwC9BiABIJMBOwC1BiABIJIBOwCtBiABIJEBOwClBiABIJABOwCdBiABII8BOwCVBiABII4BOwCNBiABII0BOwCFBiABIIwBOwD9BSABIIsBOwD1BSABIIoBOwDtBSABIIkBOwDlBSABIIgBOwDdBSABIIcBOwDVBSABIIYBOwDNBSABIIUBOwDFBSABIIQBOwC9BSABIIMBOwC1BSABIIIBOwCtBSABIIEBOwClBSABIIABOwCdBSABQQA7AJUFIAEg3AE7AI0FIAEglwE7AIUFIAEgmAE7AP0EIAEgmQE7APUEIAEgmgE7AO0EIAEgmwE7AOUEIAEgnAE7AN0EIAEgnQE7ANUEIAEgngE7AM0EIAEgnwE7AMUEIAEgoAE7AL0EIAEgoQE7ALUEIAEgogE7AK0EIAEgowE7AKUEIAEgpAE7AJ0EIAEgpQE7AJUEIAEgpgE7AI0EIAEgpwE7AIUEIAEgqAE7AP0DIAEgqQE7APUDIAEgqgE7AO0DIAEgqwE7AOUDIAEgrAE7AN0DIAEgrQE7ANUDIAEgrgE7AM0DIAEgrwE7AMUDIAEgsAE7AL0DIAEgsQE7ALUDIAEgsgE7AK0DIAEgswE7AKUDIAEgtAE7AJ0DIAEgtQE7AJUDIAEgtgE7AI0DIAEgtwE7AIUDIAEguAE7AP0CIAEguQE7APUCIAEgugE7AO0CIAEguwE7AOUCIAEgvAE7AN0CIAEgvQE7ANUCIAEgvgE7AM0CIAEgvwE7AMUCIAEgwAE7AL0CIAEgwQE7ALUCIAEgwgE7AK0CIAEgwwE7AKUCIAEgxAE7AJ0CIAEgxQE7AJUCIAEgxgE7AI0CIAEgxwE7AIUCIAEgyAE7AP0BIAEgyQE7APUBIAEgygE7AO0BIAEgywE7AOUBIAEgzAE7AN0BIAEgzQE7ANUBIAEgzgE7AM0BIAEgzwE7AMUBIAEg2wE7AL0BIAEg2gE7ALUBIAEg2QE7AK0BIAEg2AE7AKUBIAEg1wE7AJ0BIAEg1gE7AJUBIAEg1QE7AI0BIAEg1AE7AIUBIAEg0wE7AH0gASDSATsAdSABINEBOwBtIAEg0AE7AGUgASCAAjsAXSABIA87AFUgASANOwBNIAEgBTsARSABQQA6AKwNIAEgCDYCqA0gAUEANgKkDSABIIECNgKgDSABIIUCNgKcDSABICw2ApgNIAEghgI2ApQNIAEghwI2ApANIAEgiAI2AowNIAEgiQI2AogNIAEgigI2AoQNIAEgiwI2AoANIAEgjAI2AvwMIAEgjQI2AvgMIAEgjgI2AvQMIAEgjwI2AvAMIAEgkAI2AuwMIAEgkQI2AugMIAEgkgI2AuQMIAEgkwI2AuAMIAEglAI2AtwMIAEglQI2AtgMIAEglgI2AtQMIAEglwI2AtAMIAEgmAI2AswMIAEgmQI2AsgMIAEgmgI2AsQMIAEgmwI2AsAMIAEgnAI2ArwMIAEgnQI2ArgMIAEgngI2ArQMIAEgnwI2ArAMIAEgoAI2AqwMIAEgoQI2AqgMIAEgogI2AqQMIAEgowI2AqAMIAEgpAI2ApwMIAEgpQI2ApgMIAEgpgI2ApQMIAEgpwI2ApAMIAEgqAI2AowMIAEgqQI2AogMIAEgqgI2AoQMIAEgqwI2AoAMIAEgrAI2AvwLIAEgrQI2AvgLIAEgrgI2AvQLIAEgrwI2AvALIAEgsAI2AuwLIAEgsQI2AugLIAEgsgI2AuQLIAEgswI2AuALIAEgETYC3AsgASC0AjYC2AsgASDnAToA1AsgASC1AjYC0AsgASC2AjoAzAsgASC3AjYCyAsgASC4AjoAxAsgASC5AjYCwAsgASC6AjoAvAsgASC7AjYCuAsgASAUOgC0CyABIBI2ArALIAEgIzoArAsgASAaNgKoCyABIC06AKQLIAEgOzYCoAsgASBBOgCcCyABIEQ2ApgLIAEgRToAlAsgASA8NgKQCyABIN0BOgCMCyABIN4BNgKICyABIOMBOgCECyABIOABNgKACyABIOEBOgD8CiABIOQBNgL4CiABIOUBOgD0CiABIBs2AvAKIAEgHDoA7AogASAoNgLoCiABIC46AOQKIAEgMjYC4AogASA4OgDcCiABIDo2AtgKIAEgEzoA1AogASAWNgLQCiABIDY6AMwKIAEgNzYCyAogASAXOgDECiABIN8BNgLACiABIBk6ALwKIAEgIjYCuAogASAVOgC0CiABIEA2ArAKIAEgLzoArAogASAgNgKoCiABIP8BOgCkCiABIEM2AqAKIAEgJjoAnAogASArNgKYCiABILwCOgCUCiABIL0CNgKQCiABIL4COgCMCiABIL8CNgKICiABIMACOgCECiABIMECNgKACiABIMICOgD8CSABIMMCNgL4CSABIMQCOgD0CSABIMUCNgLwCSABIMYCOgDsCSABIMcCNgLoCSABIMgCOgDkCSABIMkCNgLgCSABIMoCOgDcCSABIMsCNgLYCSABIMwCOgDUCSABIM0CNgLQCSABIM4COgDMCSABIM8CNgLICSABINACOgDECSABINECNgLACSABINICOgC8CSABINMCNgK4CSABINQCOgC0CSABINUCNgKwCSABINYCOgCsCSABINcCNgKoCSABINgCOgCkCSABINkCNgKgCSABINoCOgCcCSABINsCNgKYCSABINwCOgCUCSABIN0CNgKQCSABIN4COgCMCSABIN8CNgKICSABIOACOgCECSABIOECNgKACSABIOICOgD8CCABIOMCNgL4CCABIOQCOgD0CCABIOUCNgLwCCABIOYCOgDsCCABIOcCNgLoCCABIOgCOgDkCCABIOkCNgLgCCABIOoCOgDcCCABIOsCNgLYCCABIOwCOgDUCCABIO0CNgLQCCABIO4COgDMCCABIO8CNgLICCABIPACOgDECCABIPECNgLACCABIPICOgC8CCABIPMCNgK4CCABIPQCOgC0CCABIPUCNgKwCCABIPYCOgCsCCABIPcCNgKoCCABIPgCOgCkCCABIPkCNgKgCCABIPoCOgCcCCABIPsCNgKYCCABIPwCOgCUCCABIP0CNgKQCCABIP4COgCMCCABIP8CNgKICCABIIADOgCECCABIIEDNgKACCABIIIDOgD8ByABIIMDNgL4ByABIIQDOgD0ByABIIUDNgLwByABIIYDOgDsByABIIcDNgLoByABIIgDOgDkByABIIkDNgLgByABIIoDOgDcByABIIsDNgLYByABIIwDOgDUByABII0DNgLQByABII4DOgDMByABII8DNgLIByABIJADOgDEByABIJEDNgLAByABIJIDOgC8ByABIJMDNgK4ByABIJQDOgC0ByABIJUDNgKwByABIJYDOgCsByABIJcDNgKoByABIJgDOgCkByABIJkDNgKgByABIJoDOgCcByABIJsDNgKYByABIJwDOgCUByABIJ0DNgKQByABIJ4DOgCMByABIJ8DNgKIByABIKADOgCEByABIKEDNgKAByABIKIDOgD8BiABIKMDNgL4BiABIKQDOgD0BiABIKUDNgLwBiABIKYDOgDsBiABIKcDNgLoBiABIKgDOgDkBiABIKkDNgLgBiABIKoDOgDcBiABIKsDNgLYBiABIKwDOgDUBiABIK0DNgLQBiABIK4DOgDMBiABIK8DNgLIBiABILADOgDEBiABILEDNgLABiABILIDOgC8BiABILMDNgK4BiABILQDOgC0BiABILUDNgKwBiABILYDOgCsBiABILcDNgKoBiABILgDOgCkBiABILkDNgKgBiABILoDOgCcBiABILsDNgKYBiABILwDOgCUBiABIL0DNgKQBiABIL4DOgCMBiABIL8DNgKIBiABIMADOgCEBiABIMEDNgKABiABIMIDOgD8BSABIMMDNgL4BSABIMQDOgD0BSABIMUDNgLwBSABIMYDOgDsBSABIMcDNgLoBSABIMgDOgDkBSABIMkDNgLgBSABIMoDOgDcBSABIMsDNgLYBSABIMwDOgDUBSABIM0DNgLQBSABIM4DOgDMBSABIM8DNgLIBSABINADOgDEBSABINEDNgLABSABINIDOgC8BSABINMDNgK4BSABINQDOgC0BSABINUDNgKwBSABINYDOgCsBSABINcDNgKoBSABINgDOgCkBSABINkDNgKgBSABINoDOgCcBSABINsDNgKYBSABQQA6AJQFIAEgggI2ApAFIAEg3AM6AIwFIAEg3QM2AogFIAEg3gM6AIQFIAEg3wM2AoAFIAEg4AM6APwEIAEg4QM2AvgEIAEg4gM6APQEIAEg4wM2AvAEIAEg5AM6AOwEIAEg5QM2AugEIAEg5gM6AOQEIAEg5wM2AuAEIAEg6AM6ANwEIAEg6QM2AtgEIAEg6gM6ANQEIAEg6wM2AtAEIAEg7AM6AMwEIAEg7QM2AsgEIAEg7gM6AMQEIAEg7wM2AsAEIAEg8AM6ALwEIAEg8QM2ArgEIAEg8gM6ALQEIAEg8wM2ArAEIAEg9AM6AKwEIAEg9QM2AqgEIAEg9gM6AKQEIAEg9wM2AqAEIAEg+AM6AJwEIAEg+QM2ApgEIAEg+gM6AJQEIAEg+wM2ApAEIAEg/AM6AIwEIAEg/QM2AogEIAEg/gM6AIQEIAEg/wM2AoAEIAEggAQ6APwDIAEggQQ2AvgDIAEgggQ6APQDIAEggwQ2AvADIAEghAQ6AOwDIAEghQQ2AugDIAEghgQ6AOQDIAEghwQ2AuADIAEgiAQ6ANwDIAEgiQQ2AtgDIAEgigQ6ANQDIAEgiwQ2AtADIAEgjAQ6AMwDIAEgjQQ2AsgDIAEgjgQ6AMQDIAEgjwQ2AsADIAEgkAQ6ALwDIAEgkQQ2ArgDIAEgkgQ6ALQDIAEgkwQ2ArADIAEglAQ6AKwDIAEglQQ2AqgDIAEglgQ6AKQDIAEglwQ2AqADIAEgmAQ6AJwDIAEgmQQ2ApgDIAEgmgQ6AJQDIAEgmwQ2ApADIAEgnAQ6AIwDIAEgnQQ2AogDIAEgngQ6AIQDIAEgnwQ2AoADIAEgoAQ6APwCIAEgoQQ2AvgCIAEgogQ6APQCIAEgowQ2AvACIAEgpAQ6AOwCIAEgpQQ2AugCIAEgpgQ6AOQCIAEgpwQ2AuACIAEgqAQ6ANwCIAEgqQQ2AtgCIAEgqgQ6ANQCIAEgqwQ2AtACIAEgrAQ6AMwCIAEgrQQ2AsgCIAEgrgQ6AMQCIAEgrwQ2AsACIAEgsAQ6ALwCIAEgsQQ2ArgCIAEgsgQ6ALQCIAEgswQ2ArACIAEgtAQ6AKwCIAEgtQQ2AqgCIAEgtgQ6AKQCIAEgtwQ2AqACIAEguAQ6AJwCIAEguQQ2ApgCIAEgugQ6AJQCIAEguwQ2ApACIAEgvAQ6AIwCIAEgvQQ2AogCIAEgvgQ6AIQCIAEgvwQ2AoACIAEgwAQ6APwBIAEgwQQ2AvgBIAEgwgQ6APQBIAEgwwQ2AvABIAEgxAQ6AOwBIAEgxQQ2AugBIAEgxgQ6AOQBIAEgxwQ2AuABIAEgyAQ6ANwBIAEgyQQ2AtgBIAEgygQ6ANQBIAEgywQ2AtABIAEgzAQ6AMwBIAEgzQQ2AsgBIAEgzgQ6AMQBIAEgzwQ2AsABIAEg0AQ6ALwBIAEg0QQ2ArgBIAEg0gQ6ALQBIAEg0wQ2ArABIAEg1AQ6AKwBIAEg1QQ2AqgBIAEg1gQ6AKQBIAEg1wQ2AqABIAEg2AQ6AJwBIAEg2QQ2ApgBIAEg2gQ6AJQBIAEg2wQ2ApABIAEg3AQ6AIwBIAEg3QQ2AogBIAEg3gQ6AIQBIAEg3wQ2AoABIAEg4AQ6AHwgASDhBDYCeCABIOIEOgB0IAEg4wQ2AnAgASDkBDoAbCABIOUENgJoIAEg5gQ6AGQgASDnBDYCYCABIOkEOgBcIAEg6gQ2AlggASBGOgBUIAEgOTYCUCABIOIBOgBMIAEgPzYCSCABIBA6AEQgASAqNgJAIAEgCjYCOCABIOYBNgI0IAEgNTYCMCABIB02AiwgASA0NgIoIAEgBzYCJCABICc2AiAgASAMNgIcIAEgBDYCGCABIIoFNwMQIAEgjQU3AwggAUEBNgIEIAFBATYCACABQa8NakEAOgAAIAFB1wtqIEJBEHY6AAAgAUHPC2og6QFBEHY6AAAgAUHHC2og6gFBEHY6AAAgAUG/C2og6wFBEHY6AAAgAUG3C2og7AFBEHY6AAAgAUGvC2og7QFBEHY6AAAgAUGnC2og7gFBEHY6AAAgAUGfC2og7wFBEHY6AAAgAUGXC2og8AFBEHY6AAAgAUGPC2og8QFBEHY6AAAgAUGHC2og8gFBEHY6AAAgAUH/Cmog8wFBEHY6AAAgAUH3Cmog9AFBEHY6AAAgAUHvCmog9QFBEHY6AAAgAUHnCmog9gFBEHY6AAAgAUHfCmog6AFBEHY6AAAgAUHXCmog9wFBEHY6AAAgAUHPCmog+AFBEHY6AAAgAUHHCmog+QFBEHY6AAAgAUG/Cmog+gFBEHY6AAAgAUG3Cmog+wFBEHY6AAAgAUGvCmog/AFBEHY6AAAgAUGnCmog/QFBEHY6AAAgAUGfCmog/gFBEHY6AAAgAUGXCmogf0EQdjoAACABQY8KaiB+QRB2OgAAIAFBhwpqIH1BEHY6AAAgAUH/CWogfEEQdjoAACABQfcJaiB7QRB2OgAAIAFB7wlqIHpBEHY6AAAgAUHnCWogeUEQdjoAACABQd8JaiB4QRB2OgAAIAFB1wlqIHdBEHY6AAAgAUHPCWogdkEQdjoAACABQccJaiB1QRB2OgAAIAFBvwlqIHRBEHY6AAAgAUG3CWogc0EQdjoAACABQa8JaiByQRB2OgAAIAFBpwlqIHFBEHY6AAAgAUGfCWogcEEQdjoAACABQZcJaiBvQRB2OgAAIAFBjwlqIG5BEHY6AAAgAUGHCWogbUEQdjoAACABQf8IaiBsQRB2OgAAIAFB9whqIGtBEHY6AAAgAUHvCGogakEQdjoAACABQecIaiBpQRB2OgAAIAFB3whqIGhBEHY6AAAgAUHXCGogZ0EQdjoAACABQc8IaiBmQRB2OgAAIAFBxwhqIGVBEHY6AAAgAUG/CGogZEEQdjoAACABQbcIaiBjQRB2OgAAIAFBrwhqIGJBEHY6AAAgAUGnCGogYUEQdjoAACABQZ8IaiBgQRB2OgAAIAFBlwhqIF9BEHY6AAAgAUGPCGogXkEQdjoAACABQYcIaiBdQRB2OgAAIAFB/wdqIFxBEHY6AAAgAUH3B2ogW0EQdjoAACABQe8HaiBaQRB2OgAAIAFB5wdqIFlBEHY6AAAgAUHfB2ogWEEQdjoAACABQdcHaiBXQRB2OgAAIAFBzwdqIFZBEHY6AAAgAUHHB2ogVUEQdjoAACABQb8HaiBUQRB2OgAAIAFBtwdqIFNBEHY6AAAgAUGvB2ogUkEQdjoAACABQacHaiBRQRB2OgAAIAFBnwdqIFBBEHY6AAAgAUGXB2ogT0EQdjoAACABQY8HaiBOQRB2OgAAIAFBhwdqIE1BEHY6AAAgAUH/BmogTEEQdjoAACABQfcGaiBLQRB2OgAAIAFB7wZqIEpBEHY6AAAgAUHnBmogSUEQdjoAACABQd8GaiBIQRB2OgAAIAFB1wZqIEdBEHY6AAAgAUHPBmoglgFBEHY6AAAgAUHHBmoglQFBEHY6AAAgAUG/BmoglAFBEHY6AAAgAUG3BmogkwFBEHY6AAAgAUGvBmogkgFBEHY6AAAgAUGnBmogkQFBEHY6AAAgAUGfBmogkAFBEHY6AAAgAUGXBmogjwFBEHY6AAAgAUGPBmogjgFBEHY6AAAgAUGHBmogjQFBEHY6AAAgAUH/BWogjAFBEHY6AAAgAUH3BWogiwFBEHY6AAAgAUHvBWogigFBEHY6AAAgAUHnBWogiQFBEHY6AAAgAUHfBWogiAFBEHY6AAAgAUHXBWoghwFBEHY6AAAgAUHPBWoghgFBEHY6AAAgAUHHBWoghQFBEHY6AAAgAUG/BWoghAFBEHY6AAAgAUG3BWoggwFBEHY6AAAgAUGvBWogggFBEHY6AAAgAUGnBWoggQFBEHY6AAAgAUGfBWoggAFBEHY6AAAgAUGXBWpBADoAACABQY8FaiDcAUEQdjoAACABQYcFaiCXAUEQdjoAACABQf8EaiCYAUEQdjoAACABQfcEaiCZAUEQdjoAACABQe8EaiCaAUEQdjoAACABQecEaiCbAUEQdjoAACABQd8EaiCcAUEQdjoAACABQdcEaiCdAUEQdjoAACABQc8EaiCeAUEQdjoAACABQccEaiCfAUEQdjoAACABQb8EaiCgAUEQdjoAACABQbcEaiChAUEQdjoAACABQa8EaiCiAUEQdjoAACABQacEaiCjAUEQdjoAACABQZ8EaiCkAUEQdjoAACABQZcEaiClAUEQdjoAACABQY8EaiCmAUEQdjoAACABQYcEaiCnAUEQdjoAACABQf8DaiCoAUEQdjoAACABQfcDaiCpAUEQdjoAACABQe8DaiCqAUEQdjoAACABQecDaiCrAUEQdjoAACABQd8DaiCsAUEQdjoAACABQdcDaiCtAUEQdjoAACABQc8DaiCuAUEQdjoAACABQccDaiCvAUEQdjoAACABQb8DaiCwAUEQdjoAACABQbcDaiCxAUEQdjoAACABQa8DaiCyAUEQdjoAACABQacDaiCzAUEQdjoAACABQZ8DaiC0AUEQdjoAACABQZcDaiC1AUEQdjoAACABQY8DaiC2AUEQdjoAACABQYcDaiC3AUEQdjoAACABQf8CaiC4AUEQdjoAACABQfcCaiC5AUEQdjoAACABQe8CaiC6AUEQdjoAACABQecCaiC7AUEQdjoAACABQd8CaiC8AUEQdjoAACABQdcCaiC9AUEQdjoAACABQc8CaiC+AUEQdjoAACABQccCaiC/AUEQdjoAACABQb8CaiDAAUEQdjoAACABQbcCaiDBAUEQdjoAACABQa8CaiDCAUEQdjoAACABQacCaiDDAUEQdjoAACABQZ8CaiDEAUEQdjoAACABQZcCaiDFAUEQdjoAACABQY8CaiDGAUEQdjoAACABQYcCaiDHAUEQdjoAACABQf8BaiDIAUEQdjoAACABQfcBaiDJAUEQdjoAACABQe8BaiDKAUEQdjoAACABQecBaiDLAUEQdjoAACABQd8BaiDMAUEQdjoAACABQdcBaiDNAUEQdjoAACABQc8BaiDOAUEQdjoAACABQccBaiDPAUEQdjoAACABQb8BaiDbAUEQdjoAACABQbcBaiDaAUEQdjoAACABQa8BaiDZAUEQdjoAACABQacBaiDYAUEQdjoAACABQZ8BaiDXAUEQdjoAACABQZcBaiDWAUEQdjoAACABQY8BaiDVAUEQdjoAACABQYcBaiDUAUEQdjoAACABQf8AaiDTAUEQdjoAACABQfcAaiDSAUEQdjoAACABQe8AaiDRAUEQdjoAACABQecAaiDQAUEQdjoAACABQd8AaiCAAkEQdjoAACABQdcAaiAPQRB2OgAAIAFBzwBqIA1BEHY6AAAgAUHHAGogBUEQdjoAACABID5B/wFxIAtBCHRyNgI8IAFBsA1qIAJBuAFqQZAFEPYGGiABQQA6AMQSIAEgMDYCwBIgJEHk+8IANgIICyAkIAE2AgRBAiE9CyAkID02AgAgAkE4ahC2JAwBCyAkQQI2AgAgAkHoEmoQzB4LIAJB0ClqJAAMAQsgAkHoDGogAkHYIWopAwA3AwAgAiACKQPQITcD4AxB9OHgAEErIAJB4AxqQbj4wgBB6P3CABDADgALIAMoArAEIQcgAygCrAQhDQJAAkAg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aiILIAetIBitQiCGhDcCACADIAU2AqQKIAMgEDYCoAogA0GgCmoQmRsgISADKQKgCjcCACAhQQhqIAspAgA3AgAgAyAGNgKoBCADQZQDaiADQagEahDSEiEGDAULIAMgGDYCqAMLIANBqARqIANBlApqIAYoAgAgBkEEaigCABBCIAMoAqgEIgVBgICAgHhGBEAgAygCnAMiBUEBayEYIAMoApgDIAVBFGxqQRRrIRIDQAJAAkACQAJAIBhBf0YEQEEAIRgMAQsgEkEEaigCACIFQQRHDQELIAMgGDYCnAMgAygClAoiBigCACIHQf////8HTw0BIAYgB0EBajYCACADIAYoAgwiBTYC4AoCQCAFQQFGBEAgBiAHNgIAIANBqARqIAYQkgwgAygCqARBEEcNAUH4ucQAELwpAAsgA0EANgKoBCADQeAKakHUmtgAIANBqARqQYi6xAAQvhoACyADQZAEaiADQcAEaigCADYCACADQYgEaiADQbgEaikCADcDACADQYAEaiAMKQIANwMAIAMgAykCqAQ3A/gDIB4gA0H4A2oQkgpBgICAgHghBUEBDAYLIBIoAgAhCyAEIBJBCGopAgA3AgAgBEEIaiASQRBqKAIANgIAIAMgBTYCsAogA0H4A2ogA0GwCmoQzAsgAygC+ANBBEcEQCADQcgKaiADQYAEaiIFKQIANwMAIAMgGDYCnAMgAyADKQL4AyKMBTcDwAogjAWnQQNHDQcgA0EPNgKoBCADKAKUCiADQagEahCKGAwHCyADQagEaiADQZQKaiALKAIAIAtBBGooAgAQQiADKAKoBCIFQYCAgIB4Rg0BIAMgGDYCnAMgHiAhQSQQ9gYaDAQLQei5xAAQ3BQACyASQRRrIRIgGEEBayEYDAALAAsgHiAhQSQQ9gYaC0EACyADQZQDahDbHyADKAL8ASESBEAgAygClAIhCCADKAKQAiEHIAMoAowCIRAgAygCiAIhCyADKAKEAiEGIAMoAoACIQUgA0H4AmoQqQwgAygC9AEiDiADKALsAUYEQCADQewBahDfFgsgAygC8AEgDkEcbGoiDyAINgIYIA8gBzYCFCAPIBA2AhAgDyALNgIMIA8gBjYCCCAPIAU2AgQgDyASNgIAIAMgDkEBajYC9AEMAwsgA0H4AGogA0HwAmopAgA3AwAgAyADKQLoAjcD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hYDEADYCACAaIAspAgA3AgQgGkEcaiALQRhqKAIANgIAIBpBFGogC0EQaikCADcCACAaQQxqIAtBCGopAgA3AgAMBgsgGiAHNgIEIBpBhIDEADYCACAaIAspAgA3AgggGiAGKQIANwIoIBpBEGogC0EIaikCADcCACAaQRhqIAtBEGopAgA3AgAgGkEgaiALQRhqKQIANwIAIBpBMGogBkEIaikCADcCACAaQThqIAZBEGooAgA2AgAMBQsgFCgCxAIhBSAaQQhqIBRByAJqQTgQ9gYaIBogBTYCQCAaIAc2AgQgGkGIgMQANgIADAQLIBQoAsQCIQUgGkEIaiAUQcgCakE4EPYGGiAaIAU2AkAgGiAHNgIEDAILIBogFCkCrAI3AiggGkFAayAUQcQCaigCADYCACAaQThqIBRBvAJqKQIANwIAIBpBMGogFEG0AmopAgA3AgAgGkEkaiAHKAIANgIAIBpBHGogBikDADcCACAaQRRqIAspAwA3AgAgGiAUKQPIATcCDCAaIBU2AgggGiAFNgIEIBpBiIDEADYCACAUQUBrEMwiDAILIBogFCkCrAI3AiggGkFAayAUQcQCaigCADYCACAaQThqIBRBvAJqKQIANwIAIBpBMGogFEG0AmopAgA3AgAgGkEkaiAUQYACaigCADYCACAaQRxqIBRB+AFqKQMANwIAIBpBFGogFEHwAWopAwA3AgAgGiAUKQPoATcCDCAaIBA2AgggGiAFNgIEIBpBiIDEADYCAAwBCyAaQYiAxAA2AgAgFEEIahDMIgsgFEGAA2okACAbKAKgASEHIBtBMGoiBSAyQcAAEPYGGiAHQYiAxABHBEAgFyAZKQIANwIAIBdBEGogGUEQaigCADYCACAXQQhqIBlBCGopAgA3AgAgGyAHNgK4AiAdIAVBwAAQ9gYaIBtBDGogG0G4AmoQ7g4MAQsLIChBBGogG0EwakHAABD2BhoLIChBiYDEADYCACAbQQxqEMImDAELIBtBADYCoAEgG0EIakHEnMQAIBtBoAFqQaCmxAAQzxoACyAbQZADaiQAIANBgARqIg4gQEEIaikCADcDACADIEApAgA3A/gDIAMoAugEIR4gAygC1AQhKSADKQLMBCGMBSADKQLEBCGOBSADKALABCEGIAMoArwEIRggAygCuAQhIyADKAK0BCESIAMo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A2oiBRCiBiADKAKUAyADKAKYAxDUG0UEQCADQQA2AogCIANBATYC/AEgA0G0utYANgL4ASADQgQ3AoACIANBoApqIg1B9PbCACADQfgBaiIIEJUkDQsgCCAFEKIGIANB+ANqIgcgCBDEAyAIEJ8TIANBATYC/AEgA0Go7uAANgL4ASADQgE3AoQCIANBPjYC5AogAyADQeAKaiIFNgKAAiADIAc2AuAKAkAgDUH09sIAIAgQlSQNACADQQE2AvwBIANBxLrWADYC+AEgA0IBNwKEAiADQecANgLkCiADIAY2AuAKIAMgBTYCgAIgDUH09sIAIAgQlSQNACADKAL4AyADKAL8AxC4KQwKCyADKAL4AyADKAL8AxC4KQwLCyADQbAKakH+AEHPABCkECADQQA2AogCIANBATYC/AEgA0G0utYANgL4ASADQgQ3AoACIANBoApqQfT2wgAgA0H4AWoQlSRFDQUMBgsgA0EANgKkAyADQRAgA0HABGogLUEBcSIFGzYCoAMgA0EoIANB2ARqIAUbNgKcAyADQQwgA0G8BGogBRsoAgA2ApgDIANBCCADQbgEaiAFGygCADYClAMgA0GcA2ohBiADQbgDaiADQZQDaiIFEKIGIAMoApQDIAMoApgDENQbRQRAIANBADYCiAIgA0EBNgL8ASADQbS61gA2AvgBIANCBDcCgAIgA0GgCmoiDUH09sIAIANB+AFqIggQlSQNCiAIIAUQogYgA0H4A2oiByAIEMQDIAgQnxMgA0EBNgL8ASADQaju4AA2AvgBIANCATcChAIgA0E+NgLkCiADIANB4ApqIgU2AoACIAMgBzYC4AoCQCANQfT2wgAgCBCVJA0AIANBATYC/AEgA0HEutYANgL4ASADQgE3AoQCIANB6AA2AuQKIAMgBjYC4AogAyAFNgKAAiANQfT2wgAgCBCVJA0AIAMoAvgDIAMoAvwDELgpDAkLIAMoAvgDIAMoAvwDELgpDAoLIANBsApqQf4AQc8AEKQQIANBADYCiAIgA0EBNgL8ASADQbS61gA2AvgBIANCBDcCgAIgA0GgCmpB9PbCACADQfgBahCVJEUNAQwCCyADQQA2AsADIANCgICAgBA3ArgDIANBADYCiAIgA0EBNgL8ASADQaCewwA2AvgBIANCBDcCgAIgA0G4A2pB9PbCACADQfgBahCVJEUEQCAQIAMpArgDNwIAIBBBCGogA0HAA2ooAgA2AgAMCAsMCwsgA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgA0E+NgL8AyADIANB+ANqIg02AoACIAMgA0GwCmoiBzYC+AMgA0GgCmpB9PbCACADQfgBahCVJA0AIANBwApqIgUgA0G4A2oQxAMgA0EBNgL8ASADQaju4AA2AvgBIANCATcChAIgA0E+NgL8AyADIA02AoACIAMgBTYC+AMCQCADQaAKakH09sIAIANB+AFqEJUkDQAgA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgA0E+NgL8AyADIA02AoACIAMgBzYC+AMgA0GgCmpB9PbCACADQfgBahCVJA0AIAMoAswDIgUEQCADQQA2AtgKIANCgICAgMAANwLQCiAFQRhsIRIgAygCyAMiGEEQaiEFA0AgEgRAIANBBTYC/AMgA0HMu9YANgL4AyADQgQ3AoQEIANBCTYChAIgA0EJNgL8ASAYKAIUIQcgA0EJNgKUAiADQQk2AowCIAMgBTYCiAIgAyAFQQhrNgKAAiADIAVBDGs2AvgBIAMgB0EBazYC6AIgEkEYayESIBhBGGohGCAFQRhqIQUgAyADQfgBajYCgAQgAyADQegCajYCkAIgA0HgCmoiByADQfgDahDoCyADQdAKaiAHEMwVDAEFIANB+ANqIgUgAygC1AogAygC2ApB8ubgAEEBEOcDIANBPjYC5AogA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgAyAFNgLgCiADIANB4ApqNgKAAiADQaAKakH09sIAIANB+AFqEJUkIAMoAvgDIAMoAvwDELgpIANB0ApqELAVDQMLCwsgA0EBNgL8ASADQcS61gA2AvgBIANCATcChAIgA0HoADYC/AMgAyAGNgL4AyADIANB+ANqNgKAAiADQaAKakH09sIAIANB+AFqEJUkRQ0CCyADKALACiADKALEChC4KQsgAygCsAogAygCtAoQuCkMBgsgAygCwAogAygCxAoQuCkgAygCsAogAygCtAoQuCkMAwsgA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgA0E+NgL8AyADIANB+ANqIg02AoACIAMgA0GwCmoiBzYC+AMgA0GgCmpB9PbCACADQfgBahCVJA0AIANBwApqIgUgA0G4A2oQxAMgA0EBNgL8ASADQaju4AA2AvgBIANCATcChAIgA0E+NgL8AyADIA02AoACIAMgBTYC+AMCQCADQaAKakH09sIAIANB+AFqEJUkDQAgA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgA0E+NgL8AyADIA02AoACIAMgBzYC+AMgA0GgCmpB9PbCACADQfgBahCVJA0AIAMoAswDIgUEQCADQQA2AtgKIANCgICAgMAANwLQCiAFQRhsIRIgAygCyAMiGEEQaiEFA0AgEgRAIANBBTYC/AMgA0HMu9YANgL4AyADQgQ3AoQEIANBCTYChAIgA0EJNgL8ASAYKAIUIQcgA0EJNgKUAiADQQk2AowCIAMgBTYCiAIgAyAFQQhrNgKAAiADIAVBDGs2AvgBIAMgB0EBazYC6AIgEkEYayESIBhBGGohGCAFQRhqIQUgAyADQfgBajYCgAQgAyADQegCajYCkAIgA0HgCmoiByADQfgDahDoCyADQdAKaiAHEMwVDAEFIANB+ANqIgUgAygC1AogAygC2ApB8ubgAEEBEOcDIANBPjYC5AogA0ECNgL8ASADQeTF3wA2AvgBIANCATcChAIgAyAFNgLgCiADIANB4ApqNgKAAiADQaAKakH09sIAIANB+AFqEJUkIAMoAvgDIAMoAvwDELgpIANB0ApqELAVDQMLCwsgA0EBNgL8ASADQcS61gA2AvgBIANCATcChAIgA0HnADYC/AMgAyAGNgL4AyADIANB+ANqNgKAAiADQaAKakH09sIAIANB+AFqEJUkRQ0CCyADKALACiADKALEChC4KQsgAygCsAogAygCtAoQuCkMAwsgAygCwAogAygCxAoQuCkgAygCsAogAygCtAoQuCkLIANBuANqEJ8TIBAgAykCoAo3AgAgEEEIaiADQagKaigCADYCAAsgAygCqAQhLQwBCyADQbgDahCfEwwCCwJAAkAgLUUNAAJAIAMoArAEIgVBImtBACAFQSNrQQdJGw4CAQACCyADKAK4BCIFQYSAgIB4SA0BIAUgAygCvAQQuCkMAQsgC0EEQRwgCygCAEEiRhtqIgUoAgAgBUEEaigCABC4KQsggwJBADYCAAsCQCADLQC4ASIFQQNGIAVBAkZyDQAgAygCrAEiBSAFKAIAIgVBAWs2AgAgBUEBRw0AIPMEELAOCyADQfAKaiQADAELQdy14ABBNyADQfAAakGM98IAQeC24AAQwA4ACyAfKAJIIgUgHygCTBDDHCAfKAJEIAUQvykCQCAfLQA0IgVBA0YgBUECRnINACAfKAIoIgUgBSgCACIFQQFrNgIAIAVBAUcNACAfQShqELAOCyAfKAJgRQ0BIAAgHykCYDcCACAAQQhqIB9B6ABqKQIANwIAIB9BwAFqJAAPCyAHIAsoAggQvikACyAfQQhqIB9B7ABqKAIANgIAIB8gHykCZDcDAEH04eAAQSsgH0Hs1tgAQZjY2AAQwA4AC/4SAQJ+An8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQf8BcUEBaw4qAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqAAtB+IbkACkDAFAEQEHvruAAQQgQuRohAUH4huQAKQMAQfiG5AAgATcDABDSGAtB+IbkAAwqC0GAh+QAKQMAUARAQYOt4ABBAhC5GiEBQYCH5AApAwBBgIfkACABNwMAENIYC0GAh+QADCkLQYiH5AApAwBQBEBBoLHgAEEFELkaIQFBiIfkACkDAEGIh+QAIAE3AwAQ0hgLQYiH5AAMKAtBkIfkACkDAFAEQEGjsOAAQQQQuRohAUGQh+QAKQMAQZCH5AAgATcDABDSGAtBkIfkAAwnC0GYh+QAKQMAUARAQaKy4ABBAhC5GiEBQZiH5AApAwBBmIfkACABNwMAENIYC0GYh+QADCYLQaCH5AApAwBQBEBB667gAEEEELkaIQFBoIfkACkDAEGgh+QAIAE3AwAQ0hgLQaCH5AAMJQtBqIfkACkDAFAEQEHvreAAQQYQuRohAUGoh+QAKQMAQaiH5AAgATcDABDSGAtBqIfkAAwkC0Gwh+QAKQMAUARAQcy84ABBBhC5GiEBQbCH5AApAwBBsIfkACABNwMAENIYC0Gwh+QADCMLQbiH5AApAwBQBEBB+LTgAEEFELkaIQFBuIfkACkDAEG4h+QAIAE3AwAQ0hgLQbiH5AAMIgtBwIfkACkDAFAEQEHXreAAQQgQuRohAUHAh+QAKQMAQcCH5AAgATcDABDSGAtBwIfkAAwhC0HIh+QAKQMAUARAQcSu4ABBBhC5GiEBQciH5AApAwBByIfkACABNwMAENIYC0HIh+QADCALQdCH5AApAwBQBEBBv67gAEEFELkaIQFB0IfkACkDAEHQh+QAIAE3AwAQ0hgLQdCH5AAMHwtB2IfkACkDAFAEQEGKreAAQQcQuRohAUHYh+QAKQMAQdiH5AAgATcDABDSGAtB2IfkAAweC0Hgh+QAKQMAUARAQcmt4ABBBBC5GiEBQeCH5AApAwBB4IfkACABNwMAENIYC0Hgh+QADB0LQeiH5AApAwBQBEBB6a7gAEECELkaIQFB6IfkACkDAEHoh+QAIAE3AwAQ0hgLQeiH5AAMHAtB8IfkACkDAFAEQEHSreAAQQUQuRohAUHwh+QAKQMAQfCH5AAgATcDABDSGAtB8IfkAAwbC0H4h+QAKQMAUARAQZ6u4ABBBhC5GiEBQfiH5AApAwBB+IfkACABNwMAENIYC0H4h+QADBoLQYCI5AApAwBQBEBBpK7gAEEJELkaIQFBgIjkACkDAEGAiOQAIAE3AwAQ0hgLQYCI5AAMGQtBiIjkACkDAFAEQEHKruAAQQkQuRohAUGIiOQAKQMAQYiI5AAgATcDABDSGAtBiIjkAAwYC0GQiOQAKQMAUARAQZSz4ABBChC5GiEBQZCI5AApAwBBkIjkACABNwMAENIYC0GQiOQADBcLQZiI5AApAwBQBEBB4q7gAEEHELkaIQFBmIjkACkDAEGYiOQAIAE3AwAQ0hgLQZiI5AAMFgtBoIjkACkDAFAEQEGAr+AAQQcQuRohAUGgiOQAKQMAQaCI5AAgATcDABDSGAtBoIjkAAwVC0GoiOQAKQMAUARAQfqu4ABBAxC5GiEBQaiI5AApAwBBqIjkACABNwMAENIYC0GoiOQADBQLQbCI5AApAwBQBEBB/a7gAEEDELkaIQFBsIjkACkDAEGwiOQAIAE3AwAQ0hgLQbCI5AAMEwtBuIjkACkDAFAEQEH1reAAQQMQuRohAUG4iOQAKQMAQbiI5AAgATcDABDSGAtBuIjkAAwSC0HAiOQAKQMAUARAQbau4ABBCRC5GiEBQcCI5AApAwBBwIjkACABNwMAENIYC0HAiOQADBELQciI5AApAwBQBEBB+K3gAEEHELkaIQFByIjkACkDAEHIiOQAIAE3AwAQ0hgLQciI5AAMEAtB0IjkACkDAFAEQEGYruAAQQYQuRohAUHQiOQAKQMAQdCI5AAgATcDABDSGAtB0IjkAAwPC0HYiOQAKQMAUARAQYWu4ABBBhC5GiEBQdiI5AApAwBB2IjkACABNwMAENIYC0HYiOQADA4LQeCI5AApAwBQBEBB/63gAEEGELkaIQFB4IjkACkDAEHgiOQAIAE3AwAQ0hgLQeCI5AAMDQtB6IjkACkDAFAEQEGSruAAQQYQuRohAUHoiOQAKQMAQeiI5AAgATcDABDSGAtB6IjkAAwMC0HwiOQAKQMAUARAQYuu4ABBBxC5GiEBQfCI5AApAwBB8IjkACABNwMAENIYC0HwiOQADAsLQfiI5AApAwBQBEBBsa7gAEEFELkaIQFB+IjkACkDAEH4iOQAIAE3AwAQ0hgLQfiI5AAMCgtBgInkACkDAFAEQEGrsOAAQQYQuRohAUGAieQAKQMAQYCJ5AAgATcDABDSGAtBgInkAAwJC0GIieQAKQMAUARAQZGt4ABBCRC5GiEBQYiJ5AApAwBBiInkACABNwMAENIYC0GIieQADAgLQZCJ5AApAwBQBEBB+rLgAEEIELkaIQFBkInkACkDAEGQieQAIAE3AwAQ0hgLQZCJ5AAMBwtBmInkACkDAFAEQEGsg+AAQQQQuRohAUGYieQAKQMAQZiJ5AAgATcDABDSGAtBmInkAAwGC0GgieQAKQMAUARAQciK4ABBBhC5GiEBQaCJ5AApAwBBoInkACABNwMAENIYC0GgieQADAULQaiJ5AApAwBQBEBB2a7gAEEJELkaIQFBqInkACkDAEGoieQAIAE3AwAQ0hgLQaiJ5AAMBAtBsInkACkDAFAEQEG8lNkAQQcQuRohAUGwieQAKQMAQbCJ5AAgATcDABDSGAtBsInkAAwDC0G4ieQAKQMAUARAQeqy4ABBCRC5GiEBQbiJ5AApAwBBuInkACABNwMAENIYC0G4ieQADAILQcCJ5AApAwBQBEBB87LgAEEHELkaIQFBwInkACkDAEHAieQAIAE3AwAQ0hgLQcCJ5AAMAQtByInkACkDAFAEQEHksuAAQQYQuRohAUHIieQAKQMAQciJ5AAgATcDABDSGAtByInkAAspAwAQ2hoLngMCBn4EfyMAQSBrIgokAAJAIAJQIAFCqn1Tcg0AQf8PIQsgAUK0AlUNACAKQRBqIAGnIglBBHRBmLTBAGoiDCkDACACIAJ5IgaGIgMQvw4gCikDECEFIApBGGopAwAiAkL/A4NC/wNRBEAgCiAMKQMIIAMQvw4gAiAKQQhqKQMAIgIgBXwiBSACVK18IQILIAVCf1IgAUIbfELTAFRyRQRAQX8hCwwBCyACIAJCP4giB0IJfCIIiCEDIAenIAlB6qQNbEEQdSAGp2tqQT9qIglBgnhOBEBBgAhB/wcgA0L8/////////wCDIAMgAyAIhiACURsgAyADQgODQgFRGyADIAVCAlQbIAMgAUIEfEIcVBsiAUIBgyABfCIBQv////////8fViIMGyAJaiIJQf4PSw0BQgAgAUIBiEL/////////9/8AgyAMGyEEIAkhCwwBC0EAIQsgCUHDd0kNACADQQIgCWtBP3GtiCIBQgGDIAF8IgFC/////////w9WIQsgAUIBiCEECyAAIAs2AgggACAENwMAIApBIGokAAuMBAECfyMAQTBrIgIkAAJ/AkACQAJAAkACQAJAAkAgACgCACIALQAAQQFrDgMAAQIDCyACIAAoAgQ2AiwgAkEBNgIYIAJBsNvDADYCFCACQgE3AiAgAkEJNgIEIAIgAjYCHCACIAJBLGo2AgAgASgCFCABKAIYIAJBFGoQlSQMBgsgAiAAKAIENgIsIAJBAjYCGCACQdjbwwA2AhQgAkIBNwIgIAJBCTYCBCACIAI2AhwgAiACQSxqNgIAIAEoAhQgASgCGCACQRRqEJUkDAULIAAoAgRBAWsOAgIDAQsgAC0AASEDIAIgACgCBDYCLCACQQI2AhggAkGE28MANgIUIAJCAjcCICACQQk2AgwgAkGkATYCBCACIAM6ABMgAiACNgIcIAIgAkEsajYCCCACIAJBE2o2AgAgASgCFCABKAIYIAJBFGoQlSQMAwsgAkEANgIkIAJBATYCGCACQZjcwwA2AhQgAkIENwIcIAEoAhQgASgCGCACQRRqEJUkDAILIAJBADYCJCACQQE2AhggAkHQ3MMANgIUIAJCBDcCHCABKAIUIAEoAhggAkEUahCVJAwBCyAAKAIIIQAgAkECNgIYIAJBhN3DADYCFCACQgE3AiAgAkEJNgIEIAIgADYCLCACIAI2AhwgAiACQSxqNgIAIAEoAhQgASgCGCACQRRqEJUkCyACQTBqJAALhQQBAX8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAIgAoAgAOExISAQIDBAUGBwgJCgsMDQ4PEBEACyAAQQhqEOkgDBELIAAoAgRBgICAgHhGBEAgAEEIahDTJiAAKAIgEL4oIABBFGoQ8CQMEQsgAEEEahDTJiAAKAIcEL4oIABBEGoQ8CQMEAsgAEEQahC2GyAAKAIoELooDA8LIABBEGoQwSEgACgCUBC6KAwOCyAAQQRqENQmDA0LIABBBGoQtwUMDAsgAEEEahDiJgwLCyAAQQRqELcFDAoLIABBBGoQtwUMCQsgAEEIahDSJgwICyAAQQRqELcFIABBCGoQtwUgAEEMahC3BSAAQRBqELcFDAcLIABBEGoQwiEMBgsgAEEEahC3BQwFCyAAQQRqELcFDAQLIABBBGoQtwUgAEEIahC3BQwDCyAAQRBqEMIhIABBQGsQ4yYgAEHEAGoQ4yYMAgsCQAJAAkACQEEEIAAoAghBgICAgHhzIgEgAUEETxsOBAECBQMACyAAQQhqENImIABBFGoQ3yIMBAsgACkDIBDWJgwDCyAAKQMQIABBIGopAwAQ7yoMAgsgAEEYaikDACAAQSBqKAIAEPUqDAELIAApAwggAEEcai0AABCjIyAAQShqEOAmCyAAQdgAQQgQvRELhQQBAX8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAIgAoAgAOExISAQIDBAUGBwgJCgsMDQ4PEBEACyAAQQhqEOkgDBELIAAoAgRBgICAgHhGBEAgAEEIahDTJiAAKAIgEL4oIABBFGoQjCYMEQsgAEEEahDTJiAAKAIcEL4oIABBEGoQjCYMEAsgAEEQahC2GyAAKAIoELooDA8LIABBEGoQwSEgACgCUBC6KAwOCyAAQQRqENQmDA0LIABBBGoQuAUMDAsgAEEEahDiJgwLCyAAQQRqELgFDAoLIABBBGoQuAUMCQsgAEEIahDSJgwICyAAQQRqELgFIABBCGoQuAUgAEEMahC4BSAAQRBqELgFDAcLIABBEGoQoSIMBgsgAEEEahC4BQwFCyAAQQRqELgFDAQLIABBBGoQuAUgAEEIahC4BQwDCyAAQRBqEKEiIABBQGsQ9icgAEHEAGoQ9icMAgsCQAJAAkACQEEEIAAoAghBgICAgHhzIgEgAUEETxsOBAECBQMACyAAQQhqENImIABBFGoQ3yIMBAsgACkDIBDWJgwDCyAAKQMQIABBIGopAwAQ7yoMAgsgAEEYaikDACAAQSBqKAIAEJEtDAELIAApAwggAEEcai0AABCjIyAAQShqEPUnCyAAQdgAQQgQvRELhAQBCH8jAEGAAWsiBCQAQQEhBQJAIAAgASACIAMQgAINACAAIAEgAiADEI8BDQAgBEEIaiACIAMoAjwRAAAgACABIAIgAygCQCAEKAIIIgYgBCgCDCIHED0NACAAIAEgAiADKAI0EJAEDQAgACABIAIgAyAGIAcQkAUNAEEAIQUgACgCxAFBgICAgHhGDQAgBEEANgJQQQEhBSAEQQE2AkQgBEHkxt8ANgJAIARCBDcCSCABIARBQGsiCBCwJA0AIAAoAgAhAiAAKAIEIQYgACgC5AEhAyAEIAAoAgggACgCDBCgKCAEKAIAIQUgBCgCBCEHIAAoAswBIQkgACgCyAEhCiAEIAAtAPIBOgB9IAQgA0EEayILQQAgAyALTxs2AnggBEECNgJ0IARB0cXfADYCcCAEQQI2AmwgBEHRxd8ANgJoIAQgBzYCZCAEIAY2AlwgBEKZgICAkAM3AlAgBELEk4CAwAA3AkggBEKBgICAgP0ANwJAIARBAToAfCAEQQEgBSAFQQNGGzYCYCAEQQEgAiACQQNGGzYCWCAEQTRqIgIgAC0A8QEgCiAJIAgQOSAEQT42AjAgBEECNgIYIARB5MXfADYCFCAEQgE3AiAgBCACNgIsIAQgBEEsajYCHCABIARBFGoQsCQhBSAEKAI0IAQoAjgQuCkLIARBgAFqJAAgBQvKAwIKfwF+IwBB0ABrIgIkACAAKALQASEEIABBwAFqIgUgARDLKCAAKALQASEIIAAtAL0BIAAtALoBIAAoAsABIQEgACgCxAEhAyACQQA2AkggAiADNgJEIAIgATYCQCACIAMgAWsiAzYCPCACIAE2AjggAkKowICAkIUINwIwIAJCjYCAgKABNwIoQQhGciEHIAJBQGshCQJAA0AgAkEIaiAJEOAPIAIoAgwiCkGAgMQARg0BIAIoAgghBkEAIQEDQCABQRBGDQEgAkEoaiABaiABQQRqIQEoAgAgCkcNAAsLIABBAToAvQEgBiEDCyAFIAMQyyggACgC0AEhAQJAIAAoAgBBAUcNACAAQQRqIQMgAiAFIAggARC8FSAAKALoAUEIaiACKAIAIAIoAgQQ5hkhDCACIAQgASABIARJGzYCHCACIAQgASABIARLGzYCGCACQQA6ACAgAiAMNwMQIAdBAXFFBEAgAkEwaiACQRhqKQMANwMAIAJBOGogAkEgaikDADcDACACQQE6AEQgAiACKQMQNwMoIAIgACgCqAE2AkAgAyACQShqEMwQDAELIAMgAkEQahC7EgsgBSABELkdIAJB0ABqJAALywMCAn8BfiMAQSBrIgMkACADQRBqIAEgAigCGCIEQQAQ0QECQAJAAkACQCADLQAQQQRHBEAgAykDECIFQv8Bg0IEUg0BCwJAAkACQAJAAkACQCAERQ0AIANBEGogASAEELMcIAMtABBBBEYNACADKQMQIgVC/wGDQgRSDQELIANBEGogAigCICACKAIkIAEQ9g8gAy0AEEEERwRAIAMpAxAiBUL/AYNCBFINAgsgAigCAA0CAkAgAigCECIERQ0AIANBEGogASAEQQFrQQAQ0QEgAy0AEEEERg0AIAMpAxAiBUL/AYNCBFINBwsgA0EANgIQIANBCGogASADQRBqQeit4ABBARCUEyADLQAIQQRHBEAgAykDCCIFQv8Bg0IEUg0ICyADQRBqIAJBCGogARD3EiADLQAQQQRGDQMgAykDECIFQv8Bg0IEUQ0DIAAgBTcCAAwICyAAIAU3AgAMBwsgACAFNwIADAYLIANBEGogASACQQRqEKkHIAMtABBBBEYNACADKQMQIgVC/wGDQgRSDQELIABBBDoAAAwECyAAIAU3AgAMAwsgACAFNwIADAILIAAgBTcCAAwBCyAAIAU3AgALIANBIGokAAuLDwIUfwR+IwBBIGsiBCQAAkBBuILkACgCACICDQAgBEEIaiIHQdiW4wApAwA3AwAgBEHQluMAKQMANwMAQbyC5ABBADYCAEG4guQAQQE2AgBBxILkACgCACEFQcCC5AAoAgAhA0HAguQAIAQpAwA3AgBBzILkACgCACEIQciC5AAgBykDADcCACACRSAFRXINAAJAIAhFDQAgA0EIaiEHIAMpAwBCf4VCgIGChIiQoMCAf4MhF0EBIQYgAyECA0AgBkUNASAXIRYDQCAWUARAIAJB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NgIACyACQSBqJAALxQMBB38jAEHQAGsiAiQAIABBGGohBQJAIAAtACxBAkYEQCAFKAIAIAEQvwUMAQsgASgCAEUNACACQQhqIgMgASAFEIIKIAItADQiCEEGRg0AIAItABwhBiACKAIIIQcgAkEdaiEEIANBBHIhAwJAAkACQAJAQQEgCEEDayIBIAFBA08bQf8BcUEBaw4CAAECC0EwEM0gIgEgBzYCACABIAY6ABQgASAIOgAsIAEgAykCADcCBCABQQxqIANBCGopAgA3AgAgASAELwAAOwAVQQIhBiABQRdqIARBAmotAAA6AAAgASACKQMgNwMYIAFBIGogAkEoaikDADcDACABQShqIAJBMGooAgA2AgAgAUEvaiACQTdqLQAAOgAAIAEgAi8ANTsALSABIQcMAgtB7LbfAEEPQfy23wAQ2hcACyACQcgAaiADQQhqKQIANwMAIAJBPmogBEECai0AADoAACACIAMpAgA3A0AgAiAELwAAOwE8CyAFEPwdIAAgBzYCGCAAIAY6ACwgACACKQNANwIcIABBJGogAkHIAGopAwA3AgAgACACLwE8OwAtIABBL2ogAkE+ai0AADoAAAsgAkHQAGokAAvaAwEIfyMAQSBrIgMkAAJAAkAgASgCAEUEQCAAQQA2AgAMAQsCQAJAAn8gASgCBCICIAEoAgxHBEAgASACQQRqNgIEIAEoAhQhBCABKAIQIQUCQCACKAIAIgJFDQAgAiAESQRAIAIgBWosAABBv39KDQEMBwsgAiAERw0GCyAFIAJBLRCmHyEGIANBGGogBSAEIAEoAiwiByACQdja4AAQ9A0gAygCHCEJIAMoAhghCCADQRBqIAUgBCAHIAJB6NrgABD0DSADKAIQIAMoAhQQnwYhBCABIAI2AixBAUH42uAAIAYbIQUgBkEBcyEGQQAhB0EBDAELIAEoAiwiBEUgBCABKAIUIgJJckUNASADQQhqIAEoAhAiBSACIARB/NrgABCcEyADKAIMIQkgAygCCCEIIAMgBSACIARBjNvgABCcEyADKAIAIAMoAgQQnwYhBCABIAJBAWo2AiwgASgCJCEGIAEoAiAhBSABKAIcIQcgASgCGAshAiAIDQELIAEQuyZBACEIIAFBADYCAAsgACAENgIYIAAgBjYCFCAAIAU2AhAgACAHNgIMIAAgAjYC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QT9xIAVBBnRyIQUgAUFwSQRAIAUgAkEMdHIhAiADQQNqDAELIAJBEnRBgIDwAHEgAy0AA0E/cSAFQQZ0cnIhAiADQQRqCyEDAkAgAkEwayIBQQpPBEBBfyACQSByIgFB1wBrIgIgAiABQeEAa0kbIgFBEE8NAQsgAa0gB0IEhoQhByADIAZGDQIMAQsLQeDN1gAQvCkACyAAIAc3AwggACAINwMAIARB0ABqJAAL2wMCAn8DfiMAQeABayIDJAAgA0EQaiACEJUdIAMCfyADKQMQIgVQBEAgA0EoaiABELUbQRoMAQsgAygCGCEEIANByAFqIAEQtRsgAykDyAEhBiADKQPQASEHIAMgBSAEEK0YNgJIIANCADcDQCADIAc3AzggAyAGNwMwIANBADYCKEEUCzYCICADIAIQlR0CQCADKQMAIgVQBEAgA0EANgLEASADQgA3ArwBIANCgICAgMAANwK0ASADQcgBaiICIAEQtRsgA0HgAGogAhCeDyADQbQBahD+FCECDAELIAMoAgghAiADQQA2AsQBIANCADcCvAEgA0KAgICAwAA3ArQBIANByAFqIAEQtRsgAykDyAEhBiADKQPQASEHIAUgAhCtGCEBIANBtAFqEP4UIQIgAyABNgKIASADQgA3A4ABIAMgBzcDeCADIAY3A3AgA0EANgJoIANBATYCYAsgA0EAOgCcASADIAI2ApgBIANCADcDkAEgA0EgahC9KCEBIANB4ABqEL0oIQIgA0HIAWoiBBD7HSADQRM6ALABIAMgAjYCpAEgAyABNgKgASADIAMpAtABNwKoASAEEO8oIAAgA0GgAWoQ/xQ2AgwgAEEANgIAIANB4AFqJAAL1QMCDH8DfiMAQfABayIDJAAgAUHYAGwgACgCCEHYAGwiBGshASAAKAIEIARqIQUgA0EwaiEJIANBDGohBCADQdABaiEKIANBiAFqQQRyIQYDQAJAIAEEQCADQYgBaiIHIAIoAgQiCCACKAIMRgR/QQUFIAdCADcDECACIAhBEGo2AgQgByAIKQMANwMIQQALNgIAIAMoAogBIgdBBUcNASADQQ02AgAgAxDoJQsgA0HwAWokACABRQ8LIANBgAFqIgggBkEYaigCADYCACADQfgAaiILIAZBEGopAgA3AwAgA0HwAGoiDCAGQQhqKQIANwMAIAMgBikCADcDaCADQagBaiINEMwXIANB4ABqIg4gCkEIaigCADYCACADIAopAwA3A1ggAykDyAEhDyADKQLcASEQIAMpAuQBIREgDRDDFiAEQRhqIAgoAgA2AgAgBEEQaiALKQMANwIAIARBCGogDCkDADcCACAEIAMpA2g3AgAgCSADKQNYNwMAIAlBCGogDigCADYCACADIBE3AkQgAyAQNwI8IAMgDzcDKCADIAc2AgggA0EHNgIAIAUgA0HYABD2BiAAIAAoAghBAWo2AgggAUHYAGshAUHYAGohBQwACwAL8gMBBn8jAEEwayICJAAgAS0ABCEDIAJBHGpBgAIQ+BEgAkEsakEAOwEAIAJBADYCKCACQRhqIgVBADsBACACQRBqIgYgAkEkaikCADcDACACIAIpAhw3AwggAi0ALyEHIAEtAAYhBCAAQewDahCLDyAAQfwFakIANwIAIABCADcC9AUgAEIANwMAIABBCGpCADcDACAAQRBqQgA3AwAgAEEYakIANwMAIABBgICAgHg2AiAgAEEkakEAQbICEIULGiAAQQA6AIUDIAAgA0EDdEHQnOMAaikDADcA/QIgAEEAOgD8AiAAQQA2AvgCIABCgICAgHA3A/ACIABCgICAgMAANwPoAiAAQgQ3A+ACIAAgA0ECdEHAnOMAaigCADYC3AIgAEEANgLYAiAAQQE6ANcCIAAgBDoA1gIgACACKQMINwOIAyAAQZADaiAGKQMANwMAIABBmANqIAUvAQA7AQAgACADOgCEBiAAQv////8PNwLsBSAAQgA3AtwDIABCgICAgMAANwLUAyAAQgQ3AswDIABCADcCxAMgAEKAgICAwAA3ArwDIABCATcCtAMgAEIANwKsAyAAQoCAgIDAADcCpAMgACABNgKgAyAAQQE6AJ0DIAAgBDoAnAMgACAHOgCbAyAAIAQ6AJoDIAJBMGokAAuhAwEHfwJAIARBAEwNACADIARqIQYCQCAEQQNNBEAgAUH/AXEhASADIQQDQCAEIAZPDQMgBC0AACIFIAFGIAUgAkH/AXFGcg0CIARBAWohBAwACwALAkBBgIKECCADIgQoAAAiBSABQf8BcUGBgoQIbCIKcyIHayAHckGAgYKEeHFBgIGChHhHDQBBgIKECCAFIAJB/wFxQYGChAhsIgdzIgVrIAVyQYCBgoR4cUGAgYKEeEcNACAGQQRrIQUgBEF8cUEEaiEEA0ACQAJAIAQgBUsNAEGAgoQIIAQoAgAiCCAKcyILayALckGAgYKEeHFBgIGChHhHDQBBgIKECCAHIAhzIghrIAhyQYCBgoR4cUGAgYKEeEYNAQsgAUH/AXEhAQNAIAQgBk8NBSAELQAAIgUgAUYgBSACQf8BcUZyDQQgBEEBaiEEDAALAAsgBEEEaiEEDAALAAsDQCAEIAZPDQIgBC0AACIFIAFB/wFxRiAFIAJB/wFxRnINASAEQQFqIQQMAAsACyAEIANrIQRBASEJCyAAIAQ2AgQgACAJNgIAC9cDAQZ/IwBB0ABrIgIkACABKAIEIQMgASgCDCEFIAEoAhQhBgJAAkACQAJAAkADQCADIAVGDQQgAkEQaiADQSgQ9gYaIAEgA0EoaiIDNgIEAkACQAJAAkACQAJAAkACQCACKAIQQQFrDgcCAQIDBAUHAAsgAigCICEDIAIoAjAiBEUEQCACKAIkIQQMBgsgAyAEKAIIIgUgAyAFSxshBCADIAUgAyAFSRshAwwFCyACKAIcIQQgAigCGCEDDAQLIAIoAiQhBCACKAIgIQMMAwsgAigCICEEIAIoAhwhAwwCCyACKAIYIQQgAigCFCEDDAELIAJBCGogAigCFBCLAyACKAIMIQQgAigCCCEDCyACQT86ADggAyAEIAJBOGoQ6xQhBCABKAIQIgFBKGoQyQ0iA0UNAyADKAIAQSRHDQMgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ+wsMAwsgAigCGCEEAkAgAigCFCIHQQJrDgIEAQALCyAAIAIpAhw3AgggACAENgIEIAAgBzYCAAwEC0G54+AAQShB2MLgABDaFwALIAJBEGoQrCALIAYQ+SYgBiAENgIACyAAQQI2AgALIAJB0ABqJAALrAMBCH8gACgCACIEIAEQoBogBCgCECIGIAQoAhRB2ABsaiEIA0AgCCAGIgJHBEAgAkHYAGohBgJAAkACQAJAAkACQAJAIAIoAgAiAEEEa0EAIABBBWtBCEkbQQFrDggBAgMECAgFBgALIAIgARD8ISACKAJEIgcgAigCSEEGdGohCQNAIAkgByIDRwRAIANBQGshByADKAIAQQdGBEAgAygCOEEMbCEAIAMoAjQhBQNAIAAEQCAFIAEQ5iwgAEEMayEAIAVBDGohBQwBCwsgAy0AHEECRw0CIANBCGogARDkJQwCBSADIAEQ9CUMAgsACwsgAigCIEGAgICAeEYNByACQSBqIAEQmRoMBwsgAkEIaiABEPwhIAJBMGogARDrLAwGCyACQSBqIAEQ6ywMBQsgAkEIaiABEPwhIAJBPGogARD5JSACQTBqIAEQoBoMBAsgAkEkaiABEPklIAJBLGogARCgGgwDCyACQQRqIAEQmRoMAgsgAigCCEEFRwRAIAJBCGogARD8IQsgAkE8aiABEPklIAJBMGogARCgGgwBCwsgBEEwaiABEPklC6wDAgd/AX4jAEEgayICJAAgAUEoaiIDEKUgIQQgAkEIaiABEL4FIAIoAgghBQJAAkAgAi0AHEECRwRAIAIoAhQhByACKAIQIQggAigCDCEGAkAgAxDIDSIDBEAgAygCAEETRg0BCyAAIAc2AhwgACAINgIYIABCADcDCCAAQQA2AgAgACAFrSAGrUIghoQ3AxAMAwsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJBFGogAUHUAmopAgA3AgAgAkEcaiABQdwCaigCADYCACACIAEpAswCNwIMIAIgAzYCCCACQQhqIgMQvgogAyABEL4FIAItABxBAkYEQCACKAIIIQEMAgsgAigCECEBIAIpAwgiCVANASAAIAIoAhQiAzYCJCAAIAE2AiAgACAJNwMYIAAgBzYCFCAAIAg2AhAgAEEANgIAIAAgBCADIAMgBEkbNgIsIAAgBCADIAMgBEsbNgIoIAAgBa0gBq1CIIaENwMIDAILIABBATYCACAAIAU2AgQMAQsgAEEBNgIAIAAgATYCBCAFrSAGrUIghoQQ1hoLIAJBIGokAAuNBAEFfyAAKAIEIQIgACgCACEBIABCiICAgIABNwIAIAIgAWtBOG4hAwJAIAEgAkYNAANAIANFDQECQCABKAIAIgJBCUcEQAJAAkACQAJAAkACQAJAAkACQCACDggBAgMEBQYHCAALIAFBEGopAwAQ1hoMCQsgAUEIaiICKAIAIAFBDGooAgAQ7Q8gAUEEaigCACACKAIAEPYpIAFBEGooAgAQ2iggAUEcaigCABDmIgwICyABQQhqENYJDAcLIAFBCGoiAigCACABQQxqKAIAEOIQIAFBBGooAgAgAigCABD3KSABQRhqKAIAIgIEQCACENooCyABQRxqKAIAEOYiDAYLAkACQAJAIAFBCGooAgAOAgECAAsgAUEMaigCABC/HQwHCyABQRBqENgoDAYLIAFBEGoQgyoMBQsgAUEEahDFAwwECyABQQRqKAIAENooIAFBEGooAgAQ5iIMAwsgAUEEaigCACICKQMoENYaAkAgAikDAFAEQCACQQhqELYbDAELIAIQjycLIAJByABBCBC9EQwCCyABQQRqEMUDDAELIAFBCGoQzwULIANBAWshAyABQThqIQEMAAsACyAAKAIQIgEEQCAAKAIMIgQgACgCCCICKAIIIgNHBEAgAigCBCIFIANBOGxqIAUgBEE4bGogAUE4bBC4LRogACgCECEBCyACIAEgA2o2AggLC6UDAgd/AX4jAEEgayICJAAgAUEoaiIDEL8gIQQgAkEIaiABEN8FIAIoAgghBQJAAkAgAi0AHEECRwRAIAIoAhQhByACKAIQIQggAigCDCEGAkAgAxDjDSIDBEAgAygCAEETRg0BCyAAIAc2AhwgACAINgIYIABCADcDCCAAQQA2AgAgACAFrSAGrUIghoQ3AxAMAwsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkEUaiABQTRqKQIANwIAIAJBHGogAUE8aigCADYCACACIAEpAiw3AgwgAiADNgIIIAJBCGoiAxC/CiADIAEQ3wUgAi0AHEECRgRAIAIoAgghAQwCCyACKAIQIQEgAikDCCIJUA0BIAAgAigCFCIDNgIkIAAgATYCICAAIAk3AxggACAHNgIUIAAgCDYCECAAQQA2AgAgACAEIAMgAyAESRs2AiwgACAEIAMgAyAESxs2AiggACAFrSAGrUIghoQ3AwgMAgsgAEEBNgIAIAAgBTYCBAwBCyAAQQE2AgAgACABNgIEIAWtIAatQiCGhBDWGgsgAkEgaiQAC6cDAQh/IAAgARCGGiAAKAIQIgYgACgCFEHYAGxqIQgDQCAIIAYiAkcEQCACQdgAaiEGAkACQAJAAkACQAJAAkAgAigCACIDQQRrQQAgA0EFa0EISRtBAWsOCAECAwQICAUGAAsgAiABENohIAIoAkQiByACKAJIQQZ0aiEJA0AgCSAHIgNHBEAgA0FAayEHIAMoAgBBB0YEQCADKAI4QQxsIQQgAygCNCEFA0AgBARAIAUgARC8KyAEQQxrIQQgBUEMaiEFDAELCyADLQAcQQJHDQIgA0EIaiABEK4lDAIFIAMgARCvJQwCCwALCyACKAIgQYCAgIB4Rg0HIAJBIGogARCAGgwHCyACQQhqIAEQ2iEgAkEwaiABEOMrDAYLIAJBIGogARDjKwwFCyACQQhqIAEQ2iEgAkE8aiABEJslIAJBMGogARCGGgwECyACQSRqIAEQmyUgAkEsaiABEIYaDAMLIAJBBGogARCAGgwCCyACKAIIQQVHBEAgAkEIaiABENohCyACQTxqIAEQmyUgAkEwaiABEIYaDAELCyAAQTBqIAEQmyULpwMBCH8gACABEJ8aIAAoAhAiBiAAKAIUQdgAbGohCANAIAggBiICRwRAIAJB2ABqIQYCQAJAAkACQAJAAkACQCACKAIAIgNBBGtBACADQQVrQQhJG0EBaw4IAQIDBAgIBQYACyACIAEQ+yEgAigCRCIHIAIoAkhBBnRqIQkDQCAJIAciA0cEQCADQUBrIQcgAygCAEEHRgRAIAMoAjhBDGwhBCADKAI0IQUDQCAEBEAgBSABEOcsIARBDGshBCAFQQxqIQUMAQsLIAMtABxBAkcNAiADQQhqIAEQ5SUMAgUgAyABEPMlDAILAAsLIAIoAiBBgICAgHhGDQcgAkEgaiABEJgaDAcLIAJBCGogARD7ISACQTBqIAEQ+SwMBgsgAkEgaiABEPksDAULIAJBCGogARD7ISACQTxqIAEQ+iUgAkEwaiABEJ8aDAQLIAJBJGogARD6JSACQSxqIAEQnxoMAwsgAkEEaiABEJgaDAILIAIoAghBBUcEQCACQQhqIAEQ+yELIAJBPGogARD6JSACQTBqIAEQnxoMAQsLIABBMGogARD6JQunAwEIfyAAIAEQnRogACgCECIGIAAoAhRB2ABsaiEIA0AgCCAGIgJHBEAgAkHYAGohBgJAAkACQAJAAkACQAJAIAIoAgAiA0EEa0EAIANBBWtBCEkbQQFrDggBAgMECAgFBgALIAIgARD+ISACKAJEIgcgAigCSEEGdGohCQNAIAkgByIDRwRAIANBQGshByADKAIAQQdGBEAgAygCOEEMbCEEIAMoAjQhBQNAIAQEQCAFIAEQ4iwgBEEMayEEIAVBDGohBQwBCwsgAy0AHEECRw0CIANBCGogARDnJQwCBSADIAEQ8SUMAgsACwsgAigCIEGAgICAeEYNByACQSBqIAEQnBoMBwsgAkEIaiABEP4hIAJBMGogARD6LAwGCyACQSBqIAEQ+iwMBQsgAkEIaiABEP4hIAJBPGogARD4JSACQTBqIAEQnRoMBAsgAkEkaiABEPglIAJBLGogARCdGgwDCyACQQRqIAEQnBoMAgsgAigCCEEFRwRAIAJBCGogARD+IQsgAkE8aiABEPglIAJBMGogARCdGgwBCwsgAEEwaiABEPglC5ADAQt/IwBB0AFrIgIkACACQQhqIAEoAggiA0EwENQUIAEoAgAhBCACKAIIIQggAigCDCEJIAFBADYCACABKAIEIQYgAUEINgIEIAFBADYCCCACQQA2AhggAiAJNgIUIAIgCDYCECACIAYgA0EwbCIKaiIINgIoIAIgBDYCJCACIAY2AhwgAkHYAGpBBHIhC0EAIQQgBiEDA0ACQCACIAUgCkcEfyADKAIAIQcgAkEsaiADQQRqQSwQ9gYaIAdBE0cNASAFIAZqQTBqBSAICzYCICACQRxqENEXIAEQzyYgAUEIaiACQRhqKAIANgIAIAEgAikCEDcCACACQdABaiQADwsgAiAHNgJYIAsgAkEsakEsEPYGGiACQYgBaiIHIAAQhRggAkHYAGoiDCAHEMoEIAJBoAFqIAxBMBD2BhogA0EwaiEDIAIoAhAgBEYEQCACQRBqEPIWIAIoAhQhCQsgBSAJaiACQaABakEwEPYGGiACIARBAWoiBDYCGCAFQTBqIQUgAkGIAWoQ8CYMAAsAC6gDAQN/IwBBMGsiBiQAAkACQAJAAkACQAJAAkAgASgCHCIHBEAgBiACIAMgBCAFQdS1wwAQ0xYgASgCKCIIIAYoAgRNDQEgBkEIaiABIAIgAyAEIAUQuh4MAgsgAyAFSQ0CIAZBCGogASACIAUgBBDoAwwBCyADIAVJDQIgBCAFSw0DIAUgBGsgCEkNBCAGQRhqIAcgASgCICIBKAIIQQFrQXhxakEIaiACIARqIAIgBWogASgCIBEGACAGKAIYQQFGBEAgBigCICACayIBIAYoAiQgAmsiAksNBiAGIAYoAhw2AhQgBiACNgIQIAYgATYCDCAGQQE2AggMAQsgBkEANgIIC0EAIQUgACAGKAIIQQFGBH8gACAGKQIMNwIEIABBDGogBkEUaigCADYCAEEBBSAFCzYCACAGQTBqJAAPCyAFIANB5LXDABCdEAALIAUgA0H0j8AAEJ0QAAsgBCAFQfSQwAAQnBAAC0GEkcAAQTpBwJHAABDaFwALIAZBADYCKCAGQQE2AhwgBkHYtMMANgIYIAZCBDcCICAGQRhqQeC0wwAQoR0AC44DAQ1/IwBBEGsiBiQAAkACQCABLQAlDQAgAUEUaiEMIAEgAS0AGCIFakETaiENIAEoAgwhAyABKAIIIQkgASgCECEHIAEoAgQhCCAFQQVJIQ4CQAJ/AkACQANAIAcgCUsgAyAHS3INAiADIAhqIQogDS0AACEEAkAgByADayILQQdNBEBBACECA0AgAiALRg0EIAIgCmotAAAgBEYNAiACQQFqIQIMAAsACyAGQQhqIAQgCiALELAHIAYoAghBAUcNAiAGKAIMIQILIAEgAiADakEBaiIDNgIMIAMgBUkgAyAJS3INACAORQ0EIAggAyAFayIEaiAFIAwgBRDNH0UNAAsgASgCHCECIAEgAzYCHCAEIAJrDAILIAEgBzYCDAsgAUEBOgAlAkAgAS0AJEEBRgRAIAEoAiAhBCABKAIcIQIMAQsgASgCICIEIAEoAhwiAkYNAwsgBCACawshBCAAIAIgCGogBBCsFQwCCyAFQQRBxOngABCdEAALIABBgICAgHg2AgALIAZBEGokAAumAwIDfgZ/IAEoAgAiBkEQayEJIAEoAgQiCCACKAIAIgtBufPd8XlsIgdxIQIgB0EZdq1CgYKEiJCgwIABfiEFQQAhByAAAn8DQCACIAZqKQAAIgQgBYUiA0J/hSADQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIQMCQANAIANQRQRAIAsgCSADeqdBA3YgAmogCHEiCkEEdGsoAgBGDQIgA0IBfSADgyEDDAELC0GAgICAeCAEIARCAYaDQoCBgoSIkKDAgH+DUEUNAhogAiAHQQhqIgdqIAhxIQIMAQsLQYABIQIgBiAKQQR0QQR1IgdqIgkpAAAiAyADQgGGg0KAgYKEiJCgwIB/g3qnQQN2IAYgCCAHQQhrcWoiCCkAACIDIANCAYaDQoCBgoSIkKDAgH+DeadBA3ZqQQdNBEAgASABKAIIQQFqNgIIQf8BIQILIAkgAjoAACAIQQhqIAI6AAAgASABKAIMQQFrNgIMQYCAgIB4IAZBACAKa0EEdGoiBkEMaygCACIBQYCAgIB4Rg0AGiAAIAZBCGspAgA3AgQgAQs2AgALogMCBH4GfyMAQTBrIgYkACAGQQhqIAEpAwAiBCABKAIQEKQjIAYgBigCECIHNgIgIAYgBikDCCICNwMYAkACQCAAKAIMRQ0AIAIgBxCbHCICQhmIQoGChIiQoMCAAX4hBSAAKAIEIgggAqdxIQcgACgCACEJA0AgByAJaikAACIDIAWFIgJCf4UgAkKBgoSIkKDAgAF9g0KAgYKEiJCgwIB/gyECAkADQCACUEUEQCAGQRhqIAAoAgBBACACeqdBA3YgB2ogCHFrIgtBGGxqQRhrEMIfDQIgAkIBfSACgyECDAELCyADIANCAYaDQoCBgoSIkKDAgH+DUEUEQCAGKQMYIQIMAwsgByAKQQhqIgpqIAhxIQcMAQsLAkAgCSALQRhsakEIaykDACICQgODUARAIAKnQQhrIgAgACgCACIAQQFqNgIAIABBAEgNAQsgBiACNwMoAkAgBkEoaiABEK8LIgBFBEAgAUEANgIQIAQQ1hogASACNwMADAELIAIQ1hoLIAYpAxgQ1hoMAgsACyACENYaQQEhAAsgBkEwaiQAIAAL+wIBBX8CQAJAAkACQAJAAkACfwJAIAcgCFYEQCAHIAh9IAhYDQMCQCAGIAcgBn1UIAcgBkIBhn0gCEIBhlpxRQRAIAYgCFYNAQwKCyACIANJDQUMCAsgByAGIAh9IgZ9IAZWDQggAiADSQ0FIAEgA2ohDUF/IQogAyEJAkADQCAJIgtFDQEgCkEBaiEKIAtBAWsiCSABaiIMLQAAQTlGDQALIAwgDC0AAEEBajoAACADIAtNDQcgASALakEwIAoQhQsaDAcLQTEgA0UNAhogAUExOgAAIANBAUcNAUEwDAILIABBADYCAA8LIAFBAWpBMCADQQFrEIULGkEwCyEJIARBAWrBIgQgBcFMIAIgA01yDQMgDSAJOgAAIANBAWohAwwDCyAAQQA2AgAPCyADIAJB7OvAABCdEAALIAMgAkHM68AAEJ0QAAsgAiADTw0AIAMgAkHc68AAEJ0QAAsgACAEOwEIIAAgAzYCBCAAIAE2AgAPCyAAQQA2AgALsQMBBn8jAEHwAmsiAyQAIANBCGogAUEgakHYnsQAEJ4dAkACQAJAAkAgAygCCCIBKAIIIgRFDQAgAygCDCEGIAEgBEEBayIENgIIIAEoAgQgBEGYAWxqIgRBBGohByAELQBcIQggBCgCACIFQYmAxABrDgICAAELQbnj4ABBKEHonsQAENoXAAsgAyAFNgLAASADQcQBaiAHQdgAEPYGGiADIAg6AJwCIANBnQJqIARB3QBqQTsQ9gYaIAEgA0HAAWoQ0BkgACACQdgAEPYGGgwBCyADQegAaiIFIAdB2AAQ9gYaIANBEGoiBCAFQdgAEPYGGiADQeACaiIBIAQQ3iAiBEEIaigCADYCACADIAQpAgA3A9gCIANB7AJqIAIQ3iAiBEEUaigCADYCACADIAQpAgw3AuQCQdgAEM0gIAVB2AAQ9gYhBCAAQdgAEM0gIAJB2AAQ9gY2AgggACAENgIEIAAgCDoAJCAAQYiAxAA2AgAgACADKQPYAjcCDCAAQRRqIAEpAwA3AgAgAEEcaiADQegCaikDADcCAAsgBiAGKAIAQQFqNgIAIANB8AJqJAALxgMDAX8BfAJ+IwBBgAFrIgIkAAJAAkACQAJAAkAgASgCAEEBaw4DAwECAAsgAEIANwMYIABBADYCCCAAQRs2AgAgACABKQMINwMQIABBIGpCADcDAAwDCyAAIAEoAgQiAEHAABD2BhogABDwKgwCCyACQdgAakIANwMAIAJB4ABqQgA3AwAgAkIANwNQIAJBAzYCSCACQRs2AkAgAkFAaxC9KCEBIAJBBToAUCACQgA3A0ggAiABNgJEIAJBEDYCQCAAIAJBQGsQvSgiAEHAABD2BhogABDwKgwBCyABKwMIIgMgA2EEQCADmUQAAAAAAADwf2IEQCAAQgA3AyAgACADOQMYIABCADcDECAAQQM2AgggAEEbNgIADAILQZS04ABBCBC5GiEEEMEYIAJBFWpCADcAACACQgA3AxAgAiAENwMIIAJBGjYCABDWGiADvUIAWQRAIAAgAkHAABD2BhoMAgsgAhC9KCEBIABCADcDCCAAIAE2AgQgAEEQNgIAIABBEGpBADoAAAwBC0Givt8AQQMQuRohBBDBGCAAQgA3AxAgACAENwMIIABBFWpCADcAACAAQRo2AgAQ1hoLIAJBgAFqJAAL6QIBBX8CQEHN/3tBECAAIABBEE0bIgBrIAFNDQAgAEEQIAFBC2pBeHEgAUELSRsiBGpBDGoQYCICRQ0AIAJBCGshAQJAIABBAWsiAyACcUUEQCABIQAMAQsgAkEEayIFKAIAIgZBeHEgAiADakEAIABrcUEIayICIABBACACIAFrQRBNG2oiACABayICayEDIAZBA3EEQCAAIAMgACgCBEEBcXJBAnI2AgQgACADaiIDIAMoAgRBAXI2AgQgBSACIAUoAgBBAXFyQQJyNgIAIAEgAmoiAyADKAIEQQFyNgIEIAEgAhCvBQwBCyABKAIAIQEgACADNgIEIAAgASACajYCAAsCQCAAKAIEIgFBA3FFDQAgAUF4cSICIARBEGpNDQAgACAEIAFBAXFyQQJyNgIEIAAgBGoiASACIARrIgRBA3I2AgQgACACaiICIAIoAgRBAXI2AgQgASAEEK8FCyAAQQhqIQMLIAMLnwMBBX8jAEEQayIIJAAgAS0AACEGIAhBCGogAiADIAQgBUH4t8MAENMWQQAhAgJAIAgoAgwiB0EATA0AIAgoAggiAyAHaiEFAkAgB0EDTQRAIAMhAQNAIAEgBU8NAyABLQAAIAZGDQIgAUEBaiEBDAALAAtBgIKECCAGQYGChAhsIgogAygAAHMiAWsgAXJBgIGChHhxQYCBgoR4RwRAIAMhAQNAIAEgBU8NAyABLQAAIAZGDQIgAUEBaiEBDAALAAsgA0F8cUEEaiEBIAdBCE0EQANAIAEgBU8NAyABLQAAIAZGDQIgAUEBaiEBDAALAAsgBUEIayEHA0ACQCABIAdLDQBBgIKECCABKAIAIApzIglrIAlyQYCBgoR4cUGAgYKEeEcNAEGAgoQIIAEoAgQgCnMiCWsgCXJBgIGChHhxQYCBgoR4Rw0AIAFBCGohAQwBCwsDQCABIAVPDQIgAS0AACAGRg0BIAFBAWohAQwACwALIAAgASADayAEaiIBNgIEQQEhAiAAIAFBAWo2AggLIAAgAjYCACAIQRBqJAALogMBBn8jAEHQAGsiAiQAIAIgASgCACIDQUBrQeCkxAAQnh0gAigCBCEGIAIoAgAiBUEANgIIIANB0ABqIQMgASgCCCEEA0ACQAJAIAQgAygCAEcEQCABELwMEIcMDQELIAJBEGogA0EIaigCADYCACACIAMpAgA3AwgDQCADKAIAIARGDQIgARC8DEEvTQ0CIAEQvAxBOUsNAiAFIAEQvAwQlg0gARCVHhoMAAsACyABEO8IGgwBCwsgAkEsaiADQQhqKAIANgIAIAJBIGogAkEQaigCADYCACACIAIpAwg3AxggAiADKQIANwIkAkACQANAAkACQCAEIAMoAgBHBEAgARC8DBCHDA0BCyAFKAIIIgNFDQEgAkE0aiIHIAUoAgQgA0EKEMIEIAItADRFDQMgAkEGNgI0IAAgASgCBCAEIAJBGGogBxCQDwwECyABEJUeGgwBCwsgAkEFNgI0IAAgASgCBCAEIAJBGGogAkE0ahCQDwwBCyACKAI4IQEgAEEiNgIAIAAgATYCBAsgBiAGKAIAQQFqNgIAIAJB0ABqJAALkwMBBn8jAEFAaiICJAAgAS0AsAIhByACQRhqIAEQiwEgAigCHCEDAn8CQAJAIAIoAhgEQCACIAM2AiQgAUEoaiIFEMgNIgRFBEAgASgCgAIhASACQQA6ACggASABIAJBKGoQ6xQhAwwCCwJAAkAgBCgCACIGQQJHBEAgBkEkRwRAIAZBFEcNBgwCCyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASgCzAIhAwwFC0G54+AAQShB1P7fABDaFwALIAQtAAhBAkcNBAJAIAQtAAlBHmsOAgABBQsgB0EBcUUNBCACQQhqIAUQ6hMgAigCDCEEIAIoAgghBQwBCyACQRBqIAUQ6hMgAigCFCEEIAIoAhAhBQsgAkGLAToAKCABIAUgBCACQShqEKkZIAMoAgAgAygCBBCEHCEDIAJBJGoQ5CILQQAgAygCAEEeRg0CGiACIAEgA0EAEPIKIAIoAgQhAyACKAIADAILIAJBJGoQ5CILQQELIQQgACADNgIEIAAgBDYCACACQUBrJAALrQMBAn8CQAJAAkACQANAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAIgAoAgBBAmsOEgABAgMIBAgIBQYHCAgJCgwNDg8LIAAoAgRBgICAgHhGBEAgAEEIahD7GiAAQSBqENwlIABBFGoQ4y0PCyAAQQRqEPsaIABBHGoQ3CUgAEEQahDjLQ8LIABBEGoQsyAgAEEoahDIJw8LIABB0ABqIABBEGohAQJAIAAtAERBBEYEQCABELMgDAELIAEQ+x8LEMgnDwsgAEEEahCFCQ8LIAAoAgxBOGwhASAAKAIIIQADQCABRQ0LIAAoAgBBB0cEQCAAENETCyAAQTBqEP4FIAFBOGshASAAQThqIQAMAAsACyAAQQhqEPYaDwsgAEEEahD+BSAAQQhqEP4FIABBDGoQ/gUgAEEQaiEADAQLIABBEGoQ3SUPCyAAQQRqIQAMAgsgAEEEahD+BSAAQQhqIQAMAQsLIABBEGoQ3SUgAEFAaxDJJyAAQcQAahDJJw8LIAAoAghBhICAgHhIDQIgAEEIahD2Gg8LIABBKGoQyicPCyAAQQhqEPsfCwuOAwEGfyMAQUBqIgIkACABLQCIAyEHIAJBGGogARCKASACKAIcIQMCfwJAAkAgAigCGARAIAIgAzYCJCABQShqIgUQ4w0iBEUEQCABKALYAiEBIAJBADoAKCABIAEgAkEoahDrFCEDDAILAkACQCAEKAIAIgZBAkcEQCAGQSRHBEAgBkEURw0GDAILIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEoAiwhAwwFC0G54+AAQShB1P7fABDaFwALIAQtAAhBAkcNBAJAIAQtAAlBHmsOAgABBQsgB0EBcUUNBCACQQhqIAUQnxQgAigCDCEEIAIoAgghBQwBCyACQRBqIAUQnxQgAigCFCEEIAIoAhAhBQsgAkGLAToAKCABIAUgBCACQShqELwZIAMoAgAgAygCBBCEHCEDIAJBJGoQgCMLQQAgAygCAEEeRg0CGiACIAEgA0EAEPUKIAIoAgQhAyACKAIADAILIAJBJGoQgCMLQQELIQQgACADNgIEIAAgBDYCACACQUBrJAALggMBA38jAEEQayIFJAACQAJAIAJFBEAgAEECOgAADAELAkAgASwAACIDQQBIBEACQAJAIANBQHFBgH9HBEACQCADQWBJBH9BAgUgA0FwTw0BQQMLIgQgAksNAwwFCyADQXhJDQELIAAgAzoAASAAQQE6AAAMBAtBBCEEIAJBA0sNAgsgACADOgABIABBAToAAAwCCyAAIANB/wFxNgIEIABBADoAAAwBCyAFQQRqIAEgBBDPAyAFKAIERQRAIAUoAgxFDQICQCAFKAIIIgIsAAAiAUEATgRAIAFB/wFxIQIMAQsgAi0AAUE/cSEEIAFBH3EhAyABQV9NBEAgA0EGdCAEciECDAELIAItAAJBP3EgBEEGdHIhBCABQXBJBEAgBCADQQx0ciECDAELIANBEnRBgIDwAHEgAi0AA0E/cSAEQQZ0cnIiAkGAgMQARg0DCyAAIAI2AgQgAEEAOgAADAELIAAgAzoAASAAQQE6AAALIAVBEGokAA8LQdzH1gAQvCkAC6UDAQN/IwBBQGoiBSQAIAVBCGogAygCACIHIAMoAgggBCgCACIGIAQoAggQgB0CQCAFKAIIQQFxRQ0AIAUoAgwgAU0NAAJAIAJBAXFFBEAgA0EEEP8RIARBBBD/EQwBCyADQQQQxQ0gBEEEEMUNCyADELgkIAQQuCQgBSADKAIAIgcgAygCCCAEKAIAIgYgBCgCCBCAHSAFKAIAQQFxRQ0AIAUoAgQgAU0NACAEEOcpIAQoAgAhBgsCQCAGQYCAgIB4RgRAIAMQ5ykMAQsgBCgCCCECIARBADYCCCAFQQA2AiQgBSAENgIcIAUgAjYCICAFIAQoAgQiBDYCFCAFIAQgAkEEdGo2AhggB0GAgICAeEYEQCAFQRRqEKsSDAELIAVBOGogBUEkaigCADYCACAFQTBqIAVBHGopAgA3AwAgBSAFKQIUNwMoIAMgBUEoahD+ByADELgkCwJAIAMoAgBBgICAgHhGDQAgAygCCCABTQ0AQdiwxABBxABBrLHEABDaFwALIAAgAykCADcCACAAQQhqIANBCGooAgA2AgAgBUFAayQAC9kDAQN/QQUhAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEQIAAoAgBBAmsiAyADQSNPG0EBaw4iIwECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gIQALAkACQEEEIAAtAAgiA0ECa0H/AXEiASABQQRPGyIBQQFrDgQkJCQBAAsgAC0ACSECQQAhAQwjC0ErIQIgA0EBcQ0hIAAtAAkhAgwhC0EGIQEMIQtBByEBDCALQQghAQwfC0EJIQEMHgtBCiEBDB0LQQshAQwcC0EMIQEMGwtBDSEBDBoLQQ4hAQwZC0EPIQEMGAtBECEBDBcLQREhAQwWC0ESIQEMFQtBEyEBDBQLQRQhAQwTC0EVIQEMEgsgAC0ABCECQRYhAQwRCyAALQAEIQJBFyEBDBALQRghAQwPC0EZIQEMDgtBGiEBDA0LQRshAQwMC0EcIQEMCwtBHSEBDAoLQR4hAQwJC0EfIQEMCAtBICEBDAcLQSEhAQwGC0EiIQEMBQtBIyEBDAQLQSQhAQwDC0ElIQEMAgtBJiEBDAELQQQhAQsgAkEIdCABcgv+DwINfwV+IwBBEGsiCyQAAkACQEHggeQALQAAQQJHDQAQyiAiB0IANwIUIAdBBDYCECAHQgA3AgggB0KBgICAEDcCACAHQRxqQQA6AAAjAEGQAWsiASQAAkBBkILkACgCAA0AEA4hBCABQShqEN8XAkACQAJAIAEoAigiAEUNACABKAIsIQQgAEEBcUUNABAPIQIgAUEgahDfFyABKAIkIAEoAiAhACAEELEmIAIgABshBCAAQQFxRQ0AEBAhAiABQRhqEN8XIAEoAhwgASgCGCEAIAQQsSYgAiAAGyEEQQEhDCAAQQFxRQ0AEBEhAiABQRBqEN8XIAEoAhQgASgCECEAIAQQsSYgAiAAGyEEIAANAQsgBBAFQQFHBEAgBCEADAILIAQQsSZBACEMCwJ/IwBBIGsiAyQAAkBB+IzkACkDAKcNACMAQRBrIgAkAEHgjOQAKAIARQRAIAAQkhUgACkDACENQfCM5AAgACkDCDcDAEHojOQAIA03AwBB4IzkAEIBNwMACyAAQRBqJABB6IzkAEHojOQAKQMAIg1CAXw3AwAgA0EMakHYluMAKQMANwIAIANB0JbjACkDADcCBEHwjOQAKQMAIQ5B+IzkACkDACEPQYCN5ABBADYCAEH4jOQAQgE3AwBBoI3kACAONwMAQZiN5AAgDTcDAEGIjeQAKAIAIQBBhI3kACADKQMANwIAQYyN5AAoAgAhCEGMjeQAIANBCGopAwA3AgBBlI3kACgCACEGQZSN5AAgA0EQaigCADYCACAIRSAPUHINAAJAIAZFDQAgAEEIaiEFIAApAwBCf4VCgIGChIiQoMCAf4MhDSAAIQJBASEJA0AgCUUNAQNAIA1QBEAgAkGAAWshAiAFKQMAQn+FQoCBgoSIkKDAgH+DIQ0gBUEIaiEFDAELCyACIA16p0EBdEHwAXFrIgpBEGsoAgAgCkEMaygCABC4KSANQgF9IA2DIQ0gBkEBayIGIQkgCkEEaygCACIKQYQBSQ0AIAoQFAwACwALIANBFGpBECAIQQFqEM4OIAMoAhgiAkUNACAAIAMoAhxrIAIgAygCFBC9EQsgA0EgaiQAAkBBgI3kACgCACIAQf////8HSQRAQYCN5AAgAEEBajYCAEGUjeQAKAIARQ0BIAFB6ABqIgBCADcDACABQcgAaiICQaCN5AApAwAiDULzytHLp4zZsvQAhTcDACABQUBrIgMgDULt3pHzlszct+QAhTcDACABQThqIgVBmI3kACkDACIOQuHklfPW7Nm87ACFNwMAIAFCADcDYCABIA03A1ggASAONwNQIAEgDkL1ys2D16zbt/MAhTcDMCABQTBqIgZB6PfBAEELEOMIIAFB/wE6AHAgBiABQfAAaiIGQQEQ4wggAUGAAWoiCCADKQMANwMAIAFB+ABqIgkgBSkDADcDACABQYgBaiIFIAEpA2AgADUCAEI4hoQiDSACKQMAhTcDACABIAEpAzA3A3AgBhDTD0GMjeQAKAIAIgMgBSkDACIOIAkpAwBC/wGFfCIPIAgpAwAiEEINiSAQIAEpA3AgDYV8Ig2FIhB8IhEgEEIRiYUiEEINiSAOQhCJIA+FIg4gDUIgiXwiDSAQfCIPhSIQQhGJIA5CFYkgDYUiDSARQiCJfCIOIBB8IhCFIhFCDYkgDUIQiSAOhSINIA9CIIl8Ig4gEXyFIg9CEYkgDUIViSAOhSINIBBCIIl8Ig4gD3wiD0IgiIUgDUIQiSAOhUIViYUgD4UiDadxIQAgDUIZiEL/AINCgYKEiJCgwIABfiEPQYiN5AAoAgAhAkEAIQUDQCAAIAJqKQAAIg4gD4UiDUJ/hSANQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIQ0CQANAIA1QRQRAIAIgDXqnQQN2IABqIANxIgZBBHRrIghBCGsoAgBBC0YEQEHo98EAIAhBDGsoAgBBCxCKFUUNAwsgDUIBfSANgyENDAELCyAOIA5CAYaDQoCBgoSIkKDAgH+DUEUNAyAAIAVBCGoiBWogA3EhAAwBCwtBACEAIAIgBkEEdGtBBGsoAgAMAgtBtJbjABDcFAALQej3wQAhAEELCyECQYCN5ABBgI3kACgCAEEBazYCACAAIAIQEiIDQYABEBMhACABQQhqEN8XIAEoAgwgACABKAIIIgAbIQIgAEEBcQRAIAIQsSYLQYABELEmIAMQsSZBgAEgAiAAQQFGGyEAIAxFDQAgBBCxJgtBlILkACgCACEEQZSC5AAgADYCAEGQguQAKAIAQZCC5ABBATYCAEUgBEGEAUlyDQAgBBAUCyABQZABaiQAQZSC5AAoAgAQISIEECYiABAnIQIgABCxJiAEELEmQYABECghACAHIAcoAgBBAWoiBDYCACAERQ0BQcCN5AAtAAAaQQQQYCIERQ0BIAQgBzYCACAEQbiY4wBBrQUQKiEBQYABELEmQeCB5AAtAABBAkZB4IHkACACQQFGOgAAQeGB5AAgCy8BDDsAAEHcgeQAKAIAIQJB3IHkACAANgIAQdiB5AAoAgAhAEHYgeQAIAE2AgBB1IHkACgCACEBQdSB5ABBuJjjADYCAEHQgeQAKAIAIQVB0IHkACAENgIAQcyB5AAoAgAhBEHMgeQAIAc2AgBB44HkACALQQ5qLQAAOgAADQAgBBDcCCACELEmIAAQKUUNACAFIAEQ8hwLIAtBEGokAEHMgeQADwsAC6kDAQR/IwBBIGsiAyQAAkAgAi0ADCIEQQFGBEAgACABKQIANwIAIABBCGogAUEIaikCADcCACACKAIAIAIoAgQQuykMAQsCQAJAAkACQAJAAkACQAJAAkAgAS0ADCIFQQFrDgIAAgELIAAgAikCADcCACAAQQIgBGs6AAwgACACLwANOwANIABBCGogAkEIaigCADYCACAAQQ9qIAJBD2otAAA6AAAgASgCBCEEDAcLIARFDQEMAgsgBEUNAQsgASgCBCIEIAEoAgggAigCBCIGIAIoAggQ0ylB/wFxDgICAwELIANBEGoiBCABIAIQ5w0gACAFIAQQ0BIMBAsgA0EYaiACQQhqKAIANgIAIAMgAikCADcDECADQQRqIgIgA0EQaiABENkgIABBAiAFayACENASDAMLIABBCGpBrP/BACkCADcCACAAQaT/wQApAgA3AgAgAigCACAGELspDAELIANBGGogAUEIaigCADYCACADIAEpAgA3AxAgA0EEaiIBIANBEGogAhDZICAAIAUgARDQEgwBCyABKAIAIAQQuykLIANBIGokAAv0AgIGfwJ+IwBBEGsiBCQAIAACfwJAAkAgASgCCCIDIAEoAgQiBUkEQCABKAIAIgYgA2otAABB8wBGDQELIABCADcDCAwBCyABIANBAWoiAjYCCAJAAkACQCACIAVPDQAgAiAGai0AAEHfAEcNACABIANBAmo2AggMAQsCQAJAA0ACQCACIAVJBEAgAiAGai0AAEHfAEYNAQsgAiAFRg0C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KQIANwMAIANBFGoiASADIAIoAgQgAigCCBDrCCAAIAUgARDQEgwECyADQQhqIAFBCGooAgA2AgAgAyABKQIANwMAIANBFGoiASAGIAIgAxCeBCAAQQIgBWsgARDQEgwDCyAAQQhqQaz/wQApAgA3AgAgAEGk/8EAKQIANwIADAELIANBCGogAUEIaigCADYCACADIAEpAgA3AwAgA0EUaiIBIAMgBiACENIbIAAgBSABENASDAELIAEoAgAgBBC7KQsgA0EgaiQAC4sDAQh/IwBBMGsiAyQAAkACQCABKAIAIgotABQiBEECRiAEQQFxckUEQCADQQhqIAItABhBAnRBoNXjAGooAgAtAAAQ1RwgAyADKAIMIgcgAygCCCIFa0EBdiIGQQFBAhDnFCADQQA2AiwgAyADKQMANwIkIANBJGogBhDkHiADKAIsIQQgAyAFIAdHBH8gBCAGaiADKAIoIARBAXRqIQQDQCAEQQFqIAUtAAAiCCAFQQFqLQAAIgkgCCAJSxs6AAAgBCAIIAkgCCAJSRs6AAAgBUECaiEFIARBAmohBCAGQQFrIgYNAAsFIAQLNgIsIANBFGogA0EkahCrEyACLQAZDQEMAgtBscjEAEEpQdzIxAAQ2hcACyADQRRqEJQICwJAAkAgCi0AFwRAIAMoAhggAygCHBC2H0UNAQsgACADKQIUNwIEIABBgICAgHg2AgAgAEEMaiADQRxqKQIANwIADAELIAAgASgCBCABKAIIIAJBARDKGCADKAIUIAMoAhgQ1ikLIANBMGokAAuyAwEBfyMAQUBqIgIkAAJAAkACQAJAAkACQCAALQAAQQFrDgMBAgMACyACIAAoAgQ2AgRBwI3kAC0AABpBFBBgIgBFDQQgAEEQakGus9gAKAAANgAAIABBCGpBprPYACkAADcAACAAQZ6z2AApAAA3AAAgAkEUNgIQIAIgADYCDCACQRQ2AgggAkEDNgIsIAJB/KrYADYCKCACQgI3AjQgAiACQQRqrUKAgICA0B6ENwMgIAIgAkEIaq1CgICAgOAehDcDGCACIAJBGGo2AjAgASgCFCABKAIYIAJBKGoQjAQhACACKAIIIgFFDQMgAigCDCABQQEQvREMAwsgAC0AASEAIAJBATYCLCACQaju4AA2AiggAkIBNwI0IAIgAkEYaq1CgICAgLABhDcD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IAcgAygCCCAIQRB0cjYCACAEQQRrIQQMAAsACyADQQA2AiggA0EBNgIcIANBgKjCADYCGCADQgQ3AiAgA0EYakGIqMIAEKEdAAsgBEECdCEEIAVBBGshBiACrSEJQQAhBQNAIARFDQEgBCAGaiICIAI1AgAgBa1CIIaEIgogCYAiCz4CACAKIAkgC359pyEFIARBBGshBAwACwALIANBIGogAUEIaigCADYCACADIAEpAgA3AxggACADQRhqENAJIAAgBTYCDCADQTBqJAAL9QIBAn8jAEEQayIGJAACQAJAAkACQAJAIAEoAiQiBy0A2gJFBEAgBkEIaiABIAIgAyAEIAUQwgEgBigCDCEBIAYoAggiAkECRg0BIAINAwwECyAHLQDbAiEHIAZBCGogASACIAMgBCAFEMIBIAYoAgwhASAGKAIIDgMDAQABCyAAQQI2AgAgACABNgIEDAMLIAdBAXFFDQACQAJAAkAgBSABQQF0IgJLBEAgBCACQQJ0aigCACIHBEAgAkEBciICIAVPDQMgBCACQQJ0aigCACICRQ0CIAIgB0cNBAJAIAMoAgwiBCAHQQFrIgJNBEAgAiAERg0GDAELIAMoAgggAmosAABBv39KDQULIABBADYCAAwHC0GgksMAELwpAAsgAiAFQZCSwwAQmxAAC0HAksMAELwpAAsgAiAFQbCSwwAQmxAACyAAIAE2AgQgAEEBNgIADAILIAAgATYCBCAAQQE2AgAMAQsgAEEANgIACyAGQRBqJAAL2QIBCX8jAEEwayIBJAACfyAAKAIAIgItAGRFBEAgABCtDAwBC0GAgMQAIAIoAlAiBCAAKAIIIgdGDQAaAn9BASAAELwMIgJBgAFJDQAaQQIgAkGAEEkNABpBA0EEIAJBgIAESRsLIQMgAUEYaiAAKAIEIgggByADIARqIgVB+JrEABCwFCABKAIcIQMgASgCGCEAQQAhAiABQQA2AiwgASAAIANqIgM2AiggASAANgIkAkADQCABQRBqIAFBJGoQ9gkgASgCEEUNASABKAIUIQYgASABKAIsIgkgA2ogACABKAIoIgNqayABKAIkIgBqNgIsIAYQhwwNACACIQQgAkUgBkEjRnEhAiAGQQpBIyAEG0YNAAsgBSAJaiEFCyABQQhqIAggByAFQYibxAAQsBQgASABKAIIIgA2AiQg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GyICQRBqKQIANwIAIAFBOGogAkEIaikCADcCACABIAIpAgA3AjAgASADIAAgBBsiACkCADcCSCABQdAAaiAAQQhqKQIANwIAIAFB2ABqIABBEGopAgA3AgAL1QIBBX8jAEEwayICJAACQCAAKAIAIgAEQCABKAIYIQQgASgCFCEFA0BBACEDIABFDQICQCAAQQAgAGtxIgFBAWsiBkEfTUEAQQEgBnRBi4GCgHhxGyABQcAARiABQYABRnJyIAFBgAJGIAFBgARGciABQYAIRiABQYAQRnJycg0AIAFBgCBGIAFBgMAARnIgAUGAgAFGIAFBgIACRnJyIAFBgIAIRnINACABQYCABEcNAwtBASEDIAJBATYCECACQaju4AA2AgwgAkIBNwIYIAJB4QA2AiggAiAAaEECdEGQ0uMAaigCADYCLCAAIAFzIQAgAiACQSRqNgIUIAIgAkEsajYCJCAFIAQgAkEMahCVJEUNAAsMAQsgAkEANgIcIAJBATYCECACQaitxAA2AgwgAkIENwIUIAEoAhQgASgCGCACQQxqEJUkIQMLIAJBMGokACADC60CAQh/IAIgAUEEdEEQayIDaiEFIAAgA2ohBiAAIAFBAXYiCEEEdGoiA0EQayEEA0AgCARAIAIgAyAAIAMgABDNGSIHGyIJKQIANwIAIAJBCGogCUEIaikCADcCACAFIAQgBiAGIAQQzRkiCRsiCikCADcCACAFQQhqIApBCGopAgA3AgAgCEEBayEIIAVBEGshBSACQRBqIQIgAyAHQQR0aiEDIAAgB0EBc0EEdGohACAEIAlBBHQiB2shBCAGIAdqQRBrIQYMAQUCQCAEQRBqIQQgAUEBcQR/IAIgACADIAAgBEkiARsiBSkCADcCACACQQhqIAVBCGopAgA3AgAgAyAAIARPQQR0aiEDIAAgAUEEdGoFIAALIARGIAMgBkEQakZxDQAQiRsACwsLC9UCAQV/IwBBMGsiAiQAAkAgACgCACIABEAgASgCGCEEIAEoAhQhBQNAQQAhAyAARQ0CAkAgAEEAIABrcSIBQQFrIgZBH01BAEEBIAZ0QYuBgoB4cRsgAUHAAEYgAUGAAUZyciABQYACRiABQYAERnIgAUGACEYgAUGAEEZycnINACABQYAgRiABQYDAAEZyIAFBgIABRiABQYCAAkZyciABQYCACEZyDQAgAUGAgARHDQMLQQEhAyACQQE2AhAgAkGo7uAANgIMIAJCATcCGCACQeEANgIoIAIgAGhBAnRB2NTjAGooAgA2AiwgACABcyEAIAIgAkEkajYCFCACIAJBLGo2AiQgBSAEIAJBDGoQlSRFDQALDAELIAJBADYCHCACQQE2AhAgAkGorcQANgIMIAJCBDcCFCABKAIUIAEoAhggAkEMahCVJCEDCyACQTBqJAAgAwu+AgEGfyMAQRBrIgQkAEEKIQMCQCAAQZDOAEkEQCAAIQUMAQsDQCAEQQZqIANqIgZBBGsgAEGQzgBuIgVB8LEDbCAAaiIHQf//A3FB5ABuIghBAXRB8I3YAGovAAA7AAAgBkECayAIQZx/bCAHakH//wNxQQF0QfCN2ABqLwAAOwAAIANBBGshAyAAQf/B1y9LIAUhAA0ACwsCQCAFQeMATQRAIAUhAAwBCyADQQJrIgMgBEEGamogBUH//wNxQeQAbiIAQZx/bCAFakH//wNxQQF0QfCN2ABqLwAAOwAACwJAIABBCk8EQCADQQJrIgMgBEEGamogAEEBdEHwjdgAai8AADsAAAwBCyADQQFrIgMgBEEGamogAEEwcjoAAAsgAiABQQFBACAEQQZqIANqQQogA2sQggQgBEEQaiQAC+0CAQN/IwBBQGoiBiQAAkACQAJAAkACQCABKAIAIgctANoCQQFGBEAgBy0A2wINAQsgBkEoaiABIAIgAyAEIAUQkQggBigCKEUNAQwDCyAHKAK8AigCEEEBdCIIIAVLDQEgBkEoaiABIAIgAyAEIAUQkQggBigCKA0CC0EAIQUMAgsgBygC1AJBAUcEQCAGQShqIAgQ2BIgBkE0aiABIAIgAyAGKAIsIgIgBigCMCIBEJEIIAZBEGogAiABIAVBvIrDABDEHiAEIAUgBigCECAGKAIUQcyKwwAQkB4gBigCOCEBIAYoAjQhBSAGKAIoIAIQuykMAgsgBkIANwIoIAZBHGogASACIAMgBkEoaiIBQQIQkQggBkEIaiABIAVBnIrDABDRHiAEIAUgBigCCCAGKAIMQayKwwAQkB4gBigCICEBIAYoAhwhBQwBCyAGKAIsIQFBASEFCyAAIAE2AgQgACAFNgIAIAZBQGskAAviAgECfyMAQeAAayIDJAACQAJAIAEoAgAtABQiBEECRyAEQQFxRXFFBEACQAJAAkACQCACLQAYQQFrDgIBAgALIANBCGoQ2ioMAgsgA0EIahDZKgwBCyADQQhqQaTJxwBBgwYQ2QoLIANBOGogASgCBCABKAIIIAIgA0EIahDpFiADQTBqIgEgA0HEAGopAgA3AwAgAyADKQI8NwMoIAMoAjgiBEGAgICAeEYEQCADQSBqIAEpAwA3AwAgAyADKQMoNwMYIAItABlFDQIgA0EYahCrCAwCCyAAIAMpAkw3AhQgAEEkaiADQdwAaigCADYCACAAQRxqIANB1ABqKQIANwIAIABBDGogASkDADcCACAAIAMpAyg3AgQgACAENgIADAILQfjHxABBKEGgyMQAENoXAAsgACADKQMYNwIEIABBgICAgHg2AgAgAEEMaiADQSBqKQMANwIACyADQeAAaiQAC9sCAgN/AX4jAEEgayICJAACQAJAAkACQAJAIAEoAgBBAWsOAwECAwALIABBCGogAUEIahCfIyAAQQA2AgAMAwsgASkDECEFIAJBBGogAUEEahCwDCABLQAcIQMgAUEYahD5GyEBIAJBHGoiBCADOgAAIABBATYCACAAIAIpAgQ3AgQgAiAFNwIQIABBDGogAkEMaikCADcCACACIAE2AhggAEEUaiACQRRqKQIANwIAIABBHGogBCgCADYCAAwCCyAAQQRqIAFBBGoQoBkgAEECNgIADAELIAEpAxAhBSACQQRqIAFBBGoQqAcgAS0AHCEDIAFBGGoQ+RshASACQRxqIgQgAzoAACAAQQM2AgAgACACKQIENwIEIAIgBTcCECAAQQxqIAJBDGopAgA3AgAgAiABNgIYIABBFGogAkEUaikCADcCACAAQRxqIAQoAgA2AgALIAJBIGokAAvCAgEEfyMAQTBrIgIkACABKAIIIQMgASgCBCEBIAIgADYCECACIAE2AgggAiABIANBMGxqNgIMAn8gAkEIahD1ESIBRQRAQQAhAUEEDAELIAJBBEEEQQQQ5xQgAigCACEDIAIoAgQiBCABNgIAIAJBATYCHCACIAQ2AhggAiADNgIUIAJBKGogAkEQaigCADYCACACIAIpAgg3AyBBBCEDQQEhAQNAIAJBIGoQ9REiBQRAIAIoAhQgAUYEQCACQRRqIAFBAUEEQQQQrRcgAigCGCEECyADIARqIAU2AgAgAiABQQFq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QcgAahCrDkEIIQEgA0EYaiIEIANBOGoiBikDADcDACADQSBqIgUgA0FAayIHKQMANwMAIAMgAykDMDcDEAJAIAMoAihFBEAgA0HYAGogBSkDACIINwMAIANB0ABqIAQpAwAiCTcDACADIAMpAxAiCjcDSCADQTxqIAg3AgAgA0E0aiAJNwIAIAMgCjcCLCAAQRxqIAcoAgA2AgAgAEEUaiAGKQIANwIAIABBDGogA0EwaikCADcCACAAIAMpAig3AgQgAEEAOgAkIAAgAjYCIEEBIQEMAQsgACADKQMQNwMIIABBGGogBSkDADcDACAAQRBqIAQpAwA3AwAgA0EMahDFFwsgACABNgIAIANB4ABqJAAL1AIBA38jAEEwayICJAACQAJAIAEoAsABIAEoAsQBEN8cIgNB3ABGDQACQCADQf8ATQRAIANBgOnYAGotAAANAgwBCyADQQN2QT9xQYDq2AAgA0EJdkHY7+AAaiADQf/HDEsbLQAAQQV0akGAgeEAai0AACADQQdxdkEBcQ0BCyABKALQASEEIAFBwAFqEJ0VIAJBIToAGCACIAM2AhwgAiAEIAQgAkEYahDEISACKAIEIQEgAigCACIDQSdHBEAgACACKQMINwMIIABBEGogAkEQaikDADcDACAAIAE2AgQgACADNgIADAILIABBJjYCACAAIAE2AgQMAQsgAkEYaiABEN0DIAIoAhhBJUcEQCAAIAIpAxg3AwAgAEEQaiACQShqKQMANwMAIABBCGogAkEgaikDADcDAAwBCyAAIAIoAhw2AgQgAEEmNgIACyACQTBqJAALzQICBX8CfiMAQTBrIgIkACABKAIAIgNBCGohBSADIAEoAgQiBGpBAWohBiADKQMAQn+FQoCBgoSIkKDAgH+DIQggASgCDCEBAn8gBEUEQEEADAELIAJBCCAEQQFqEM4OIAI1AgQgAyACKAIIa61CIIaEIQcgAigCAAshBCAAIAFBAWpBAXYgASAAKAIMGyAAQRBqENwhIAIgBzcCJCACIAQ2AiAgAiABNgIYIAIgAzYCECACIAY2AgwgAiAFNgIIIAIgCDcDAAJAA0AgAUUNASACEL0PIQMgAiACKAIYQQFrIgE2AhggAwRAIAAgA0EIaykDABC3CQwBCwsgAUUNAANAIAIQvQ8hACACIAIoAhhBAWsiATYCGCAARQ0BIABBCGspAwAQ1hogAQ0ACwsgAigCICIABEAgAigCKCAAIAIoAiQQmyQLIAJBMGokAAvBAgEEfyMAQSBrIgUkACAEIAIgBGsiByAEIAdLGyEIQQEhBgJAAkAgBEEBdCACTw0AAkAgAiAETwRAIAMgB0sNASADIARJDQIgBSADIARrIAEgBGogA0G4+8EAEPEcIAUoAgQgBEcNAiAFKAIAIQIDQAJAIARBA00EQCAEQQFLBEAgAi8AACABLwAARw0GIARBAmshBCACQQJqIQIgAUECaiEBCyAEDQFBACEGDAYLIAIoAAAgASgAAEcNBCAEQQRrIQQgAUEEaiEBIAJBBGohAgwBCwsgCCADIAItAAAgAS0AAEciBhshAwwDCyAFQQA2AhggBUEBNgIMIAVBmL7gADYCCCAFQgQ3AhAgBUEIakGo+sEAEKEdAAsgAyAHQbj6wQAQnRAACyAIIQMLIAAgAzYCBCAAIAY2AgAgBUEgaiQAC8wCAQh/IwBB0ABrIgMkACACQQFqIQggASgCACEJIANBFGohBiABKAIIIQIgASgCBCIEQRxqIQcgBEEYaiEKAkACQAJAA0AgBygCACIBIAhNBEAgAUUNAiAEQRhqKAIAIAEgAUEBa0HgssMAEKcfIAIQhBMgAEEqNgIADAQLIAcgAUEBayIBNgIAIAooAgAgAUEEdGoiASgCACIFQYCAgIB4Rg0CIAYgASkCBDcCACAGQQhqIAFBDGooAgA2AgAgAyAFNgIQIANBEGoiASACEIQTIANBCGogA0EYaiIFKAIANgIAIAMgAykCEDcDACABIAkgBCADEOEEIAMoAhQhAiADKAIQIgFBKkYNAAsgAEEIaiAFQTgQ9gYaIAAgAjYCBCAAIAE2AgAMAgtB9K/DAEEPQdCywwAQoRIAC0HEscMAELwpAAsgA0HQAGokAAu1AgEGfyMAQTBrIgMkAEEKIQICQCAAQZDOAEkEQCAAIQQMAQsDQCADQQhqIAJqIgVBBGsgACAAQZDOAG4iBEGQzgBsayIGQf//A3FB5ABuIgdBAXRB8I3YAGovAAA7AAAgBUECayAGIAdB5ABsa0H//wNxQQF0QfCN2ABqLwAAOwAAIAJBBGshAiAAQf/B1y9LIAQhAA0ACwsCQCAEQeMATQRAIAQhAAwBCyACQQJrIgIgA0EIamogBCAEQeQAbiIAQeQAbGtBAXRB8I3YAGovAAA7AAALAkAgAEEKTwRAIAJBAmsiAiADQQhqaiAAQQF0QfCN2ABqLwAAOwAADAELIAJBAWsiAiADQQhqaiAAQTByOgAACyADIAEgA0EIaiACakEKIAJrELAbIAMQzhggA0EwaiQAC+gCAQF/IwBBEGsiAiQAAn8CQAJAAkACQAJAAkACQAJAAkAgACgCACIAKAIAQQFrDggBAgMEBQYHCAALIAIgAEEEajYCDCABQYKN2QBBBiACQQxqQc8EEMQKDAgLIAIgAEEIajYCDCABQfmL2QBBCiACQQxqQdAEEMQKDAcLIAIgAEEEajYCDCABQYiN2QBBCyACQQxqQdEEEMQKDAYLIAIgAEEIajYCDCABQZON2QBBESACQQxqQdIEEMQKDAULIAIgAEEEajYCDCABQaSN2QBBESACQQxqQdMEEMQKDAQLIAIgAEEEajYCDCABQeSL2QBBCSACQQxqQdQEEMQKDAMLIAIgAEEEajYCDCABQbWN2QBBDiACQQxqQdUEEMQKDAILIAIgAEEEajYCDCABQcON2QBBEiACQQxqQdYEEMQKDAELIAIgAEEIajYCDCABQdWN2QBBESACQQxqQdcEEMQKCyACQRBqJAALzAIBCH8jAEEgayICJAAgAkEUaiABKAIEIAEoAghBEBCVASACKAIcIQMCQCABLQAMBEAgAigCGCEEDAELIAIoAhQgA0YEQCACQRRqEOQWCyACKAIYIgQgA2pBLToAACACIANBAWoiAzYCHAsgAkEIaiADQQF2IgEgBCABQajr4AAQhh4gAigCDCEFIAIoAgghByACIAEgAyAEaiABayABQbjr4AAQhh4gAUEBayEBQQAhAyACKAIEIQQgAigCACEIAkACQANAIAFBf0YNASADIAVGDQIgASAESQRAIAMgB2oiBi0AACEJIAYgASAIaiIGLQAAOgAAIAYgCToAACABQQFrIQEgA0EBaiEDDAELCyABIARB2OvgABCbEAALIAAgAikCFDcCACAAQQhqIAJBHGooAgA2AgAgAkEgaiQADwsgBSAFQcjr4AAQmxAAC9ACAgN/AX4jAEEgayIDJAAgASgCDCEFIANBEGogAiABKAIIIgRBABDRAQJAAkACQAJAAkAgAy0AEEEERwRAIAMpAxAiBkL/AYNCBFINAQsCQCAERQ0AIANBEGogAiAEELMcIAMtABBBBEYNACADKQMQIgZC/wGDQgRSDQILIANBADYCECADQQhqIAIgA0EQakHjsuAAQQEQlBMgAy0ACEEERwRAIAMpAwgiBkL/AYNCBFINAwsgA0EQaiACIAQgAUEAEKwFIAMtABBBBEcEQCADKQMQIgZC/wGDQgRSDQQLAkACQCAFRQ0AIANBEGogAiAFELMcIAMtABBBBEYNACADKQMQIgZC/wGDQgRSDQELIABBBDoAAAwFCyAAIAY3AgAMBAsgACAGNwIADAMLIAAgBjcCAAwCCyAAIAY3AgAMAQsgACAGNwIACyADQSBqJAALpwICBn8BfiMAQSBrIgMkACABKAIcIgUgAUEMaygCAEkgASgCGCIEIAFBEGsoAgAiAkkgAiAERhtBAUYEQCADQRhqIAFBEGopAwA3AwAgA0EQaiABQQhqKQMANwMAIAMgASkDADcDCCABQThrIQIgASkDICEIAn8CQANAIAIiAUE4aiABQRBqIgYiAkEoEPYGGiAAIAJGDQEgAUEoayECIAUgAUEEaigCAEkgBCABKAIAIgdJIAQgB0YbDQALIAYhAiABQThqDAELIAFBEGohAiABQThqCyEBIAIgAykDCDcDACACQRBqIANBGGopAwA3AwAgAkEIaiADQRBqKQMANwMAIAFBCGsgCDcDACABQQxrIAU2AgAgAUEQayAENgIACyADQSBqJAAL2QIBCH8jAEEgayIEJAACQCADQQFHDQBBACEDIAAoAgAtAABBAUYNACAAKAIEKAIMIgZFDQAgACgCCCIFIAFB/wFxIgFqQcgAaiEJIAVBCGohByAFQQRqIQggBUEgaiEKIAVBHGohCwNAAkACfyAIKAIAIAcoAgAgBkH8jMQAEJofKAIEIgMEQCALKAIAIAooAgAgAyAJLQAAakGMjcQAEJkfKAIADAELIAQgBSAGEIcgIAQgBCkDADcCDANAIARBFmogBEEMahD3DiAELQAWRQ0CIAQtABciAyABSQ0ACyABIANHDQEgBCgAGAsiA0EBRw0CCyAIKAIAIAcoAgAgBkGokcQAEJofKAIMIQYMAAsACyAAKAIUKAIAKAIAIQEgACgCDCIFQQRqKAIAIAVBCGooAgAgACgCECgCACACQf8BcWpBkJnAABCZHyADIAF0NgIAIARBIGokAAvhAgEDfyMAQTBrIgYkAAJAAkAgASgCJCIHLQDaAkEBRw0AIActANsCRQ0AIAcoArwCKAIQQQF0IgggBU0NACAHKALUAkEBRgRAIAZCADcCKCAGQRxqIAEgAiADIAZBKGoiA0ECENoGIAYoAiAhASAGKAIcIgJBAkcEQCAGQQhqIAMgBUHI+MIAENEeIAQgBSAGKAIIIAYoAgxB2PjCABCQHgsgACACNgIAIAAgATYCBAwCCyAGQRxqIAgQ2BIgBkEoaiABIAIgAyAGKAIgIgEgBigCJCIDENoGIAYoAiwhAiAGKAIoIgdBAkcEQCAGQRBqIAEgAyAFQej4wgAQxB4gBCAFIAYoAhAgBigCFEH4+MIAEJAeIAAgAjYCBCAAIAc2AgAgBigCHCABELspDAILIABBAjYCACAAIAI2AgQgBigCHCABELspDAELIAAgASACIAMgBCAFENoGCyAGQTBqJAAL7QIBAX8jAEEwayIDJAACQAJAAkAgASACQfzKyABBDhDNH0UEQCABIAJBrP7HAEEFEM0fDQEgASACQbn+xwBBAxDNHw0CIAEgAkGx/scAQQgQzR9FBEAgA0EIakGAp80AQSUgASACENgKIANBIGogAygCCCADKAIMELIhIAMoAiBBgICAgHhGBEAgAEGAgICAeDYCACAAQQE6AAQMBQsgACADKQIgNwIAIABBCGogA0EoaikCADcCAAwECyADQSBqQenByABBChCnByADLQAkIQEgAygCICICQYCAgIB4RwRAIANBHGogA0EsaigAADYAACADIAMpACU3ABUgAyABOgAUIAMgAjYCECADQRBqEKsIIABBCGogA0EYaikCADcCACAAIAMpAhA3AgAMBAsgAEGAgICAeDYCACAAIAE6AAQMAwsgABDaKgwCCyAAQdirzQBBARDZCgwBCyAAQdCrzQBBARDZCgsgA0EwaiQAC8QCAgx/AX4jAEHwAGsiAiQAIAEoAgQhCCACIAEoAggiBUEIQTgQ5xQgBUE4bCEJIAJBEGohBiACQcgAaiEKIAJBCGpBBHIhCyACKAIEIQdBACEBIAIoAgAiDCEEA0AgBEUgASAJRnJFBEACQAJAAkACQCABIAhqIgMoAgBBAWsOAgECAAsgAkFAayINIANBCGoQxQ4gAiADQShqENoZNgJgIAYgDUEoEPYGGiACQQA2AggM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IQMgBCgCAAsgAxCSIEGAASEGAn8gBygCACIFQYABTQRAIABBAWohCCAFDAELIABBBGohByAAKAIIIQggBSEGIAAoAgQLIQMCQANAIAMgBk8EQCAHIAM2AgADQCABIAJGDQMgACABLQAAEKkOIAFBAWohAQwACwALIAEgAkcEQCADIAhqIAEtAAA6AAAgA0EBaiEDIAFBAWohAQwBCwsgByADNgIACyAEQRBqJAALygICBH8BfiMAQUBqIgIkAAJAAkACQCABKAIAIgQgASgCBEYNACABIARBGGo2AgACQCABKAIQIgMgASgCFEYNACABIANBCmo2AhAgAy0AACIFQQJGDQAgAkEoaiADQQlqLQAAOgAAIAIgAykAATcDIAwCCyABIAEoAgwiBTYCFCABIAEoAggiAzYCECADIAVGDQAgASADQQpqNgIQIAJBKGogA0EJai0AADoAACACIAMpAAE3AyAgAy0AACIFQQJHDQELIABBgYCAgHg2AgAMAQsgAkEYaiACQShqLQAAOgAAIAIgAikDICIGNwMQIAJBLGogAigAFzYAACACIAU6ACQgAiAENgIgIAIgBjcAJSACQQhqIAQQ2R8gAkE0aiIBIAIoAgggAigCDBCqISAAIAEgBCgCDCAEKAIQIAJBJGoQsAULIAJBQGskAAvzRQEHfyMAQTBrIgUkAAJAAkACQAJAAkACQCABLQAIQbgBRgRAIAEoAhAhAyABKAIMIQQgASgCHCEGIAEoAhghByAFIAEoAhQiCCgCACACELgHIAAgBSAEIAMgByAGENwNIgIpAgA3AgAgAEEIaiACQQhqKAIANgIAIAgQuSsgAS0ACEG4AUcNAQwFCyABKAIEIQcgASgCACEIIAUgARCMHCAFQRhqIQMgBSEBIwBB0ABrIgQkAAJAAkACfwJAAkACQAJAAkACQANAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQQFrDroBAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wwQExMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEBkgGTAZQBlQGWAZcBmAGZAZoBmwGcAZ0BngGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsAGxAbIBswG0AbUBtgG3AbgBugEACyADQQ42AgggA0HErNkANgIEIANBgICAgHg2AgAMwQELIANBGjYCCCADQbOt2QA2AgQgA0GAgICAeDYCAAzAAQsgA0EgNgIIIANBza3ZADYCBCADQYCAgIB4NgIADL8BCyADQS82AgggA0HtrdkANgIEIANBgICAgHg2AgAMvgELIANB0wA2AgggA0GcrtkANgIEIANBgICAgHg2AgAMvQELIANBKTYCCCADQe+u2QA2AgQgA0GAgICAeDYCAAy8AQsgA0EmNgIIIANBmK/ZADYCBCADQYCAgIB4NgIADLsBCyADQSo2AgggA0G+r9kANgIEIANBgICAgHg2AgAMugELIANBETYCCCADQeiv2QA2AgQgA0GAgICAeDYCAAy5AQsgA0EXNgIIIANB+a/ZADYCBCADQYCAgIB4NgIADLgBCyADQSw2AgggA0GQsNkANgIEIANBgICAgHg2AgAMtwELIANB4gA2AgggA0G8sNkANgIEIANBgICAgHg2AgAMtgELIANBGjYCCCADQZ6x2QA2AgQgA0GAgICAeDYCAAy1AQsgA0ElNgIIIANBuLHZADYCBCADQYCAgIB4NgIADLQBCyADQRw2AgggA0HdsdkANgIEIANBgICAgHg2AgAMswELIANBJzYCCCADQfmx2QA2AgQgA0GAgICAeDYCAAyyAQsgA0EnNgIIIANBoLLZADYCBCADQYCAgIB4NgIADLEBCyADQSc2AgggA0HHstkANgIEIANBgICAgHg2AgAMsAELIANBMDYCCCADQe6y2QA2AgQgA0GAgICAeDYCAAyvAQsgA0EpNgIIIANBnrPZADYCBCADQYCAgIB4NgIADK4BCyADQTU2AgggA0HHs9kANgIEIANBgICAgHg2AgAMrQELIANBMzYCCCADQfyz2QA2AgQgA0GAgICAeDYCAAysAQsgA0EfNgIIIANBr7TZADYCBCADQYCAgIB4NgIADKsBCyABLQABQQJrIgFBB3QgAUH+AXFBAXZyQf8BcQ4IpAGjAaMBpQGmAaMBowGnAaMBCyADQSg2AgggA0GktdkANgIEIANBgICAgHg2AgAMqQELIANBJTYCCCADQcy12QA2AgQgA0GAgICAeDYCAAyoAQsgA0EaNgIIIANB8bXZADYCBCADQYCAgIB4NgIADKcBCyADQRw2AgggA0GLttkANgIEIANBgICAgHg2AgAMpgELIANBFzYCCCADQae22QA2AgQgA0GAgICAeDYCAAylAQsgBCABQQhqNgIgIARBATYCPCAEQey22QA2AjggBEIBNwJEIARB6wQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAykAQsgA0EbNgIIIANB9LbZADYCBCADQYCAgIB4NgIADKMBCyADQRU2AgggA0GPt9kANgIEIANBgICAgHg2AgAMogELIANBHzYCCCADQaS32QA2AgQgA0GAgICAeDYCAAyhAQsgBCABQQRqNgIgIARBATYCPCAEQdi32QA2AjggBEIBNwJEIARB/QQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAygAQsgA0EVNgIIIANB4LfZADYCBCADQYCAgIB4NgIADJ8BCyADQRY2AgggA0H1t9kANgIEIANBgICAgHg2AgAMngELIAQgAUEEajYCICAEQQE2AjwgBEG0uNkANgI4IARCATcCRCAEQcgANgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMnQELIANBJjYCCCADQby42QA2AgQgA0GAgICAeDYCAAycAQsgA0EtNgIIIANB4rjZADYCBCADQYCAgIB4NgIADJsBCyAEIAFBCGo2AiAgBEECNgI8IARBwLnZADYCOCAEQgE3AkQgBEHrBDYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahD4FCADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADJoBCyADQTs2AgggA0HQudkANgIEIANBgICAgHg2AgAMmQELIANBzAA2AgggA0GLutkANgIEIANBgICAgHg2AgAMmAELIANBOjYCCCADQde62QA2AgQgA0GAgICAeDYCAAyXAQsgA0HKADYCCCADQZG72QA2AgQgA0GAgICAeDYCAAyWAQsgA0ExNgIIIANB27vZADYCBCADQYCAgIB4NgIADJUBCyADQRQ2AgggA0GMvNkANgIEIANBgICAgHg2AgAMlAELIANBHzYCCCADQaC82QA2AgQgA0GAgICAeDYCAAyTAQsgA0EyNgIIIANBv7zZADYCBCADQYCAgIB4NgIADJIBCyAEIAFBDGo2AgwgBCABQQRqNgIgIARBAjYCPCAEQZC92QA2AjggBEICNwJEIARByAA2AhwgBEEINgIUIAQgBEEQajYCQCAEIARBIGo2AhggBCAEQQxqNgIQIARBLGogBEE4ahD4FCADQQhqIARBNGooAgA2AgAgAyAEKQIsNwIADJEBCyADQR42AgggA0HkvdkANgIEIANBgICAgHg2AgAMkAELIANBJTYCCCADQYK+2QA2AgQgA0GAgICAeDYCAAyPAQsgBCABQQRqNgIMIAQgAUEIajYCICAEQQM2AjwgBEG8vtkANgI4IARCAjcCRCAEQQg2AhwgBEG2AjYCFCAEIARBEGo2AkAgBCAEQSBqNgIYIAQgBEEMajYCECAEQSxqIARBOGoQ+BQgA0EIaiAEQTRqKAIANgIAIAMgBCkCLDcCAAyOAQsgA0EaNgIIIANB1L7ZADYCBCADQYCAgIB4NgIADI0BCyADQdUANgIIIANB7r7ZADYCBCADQYCAgIB4NgIADIwBCyADQTI2AgggA0HDv9kANgIEIANBgICAgHg2AgAMiwELIANB0gA2AgggA0H1v9kANgIEIANBgICAgHg2AgAMigELIANBLDYCCCADQcfA2QA2AgQgA0GAgICAeDYCAAyJAQsgA0EzNgIIIANB88DZADYCBCADQYCAgIB4NgIADIgBCyADQSI2AgggA0GmwdkANgIEIANBgICAgHg2AgAMhwELIANBNzYCCCADQcjB2QA2AgQgA0GAgICAeDYCAAyGAQsgA0EoNgIIIANB/8HZADYCBCADQYCAgIB4NgIADIUBCyADQQ02AgggA0GnwtkANgIEIANBgICAgHg2AgAMhAELIANBETYCCCADQbTC2QA2AgQgA0GAgICAeDYCAAyDAQsgA0EVNgIIIANBxcLZADYCBCADQYCAgIB4NgIADIIBCyADQRk2AgggA0HawtkANgIEIANBgICAgHg2AgAMgQELIANBDjYCCCADQfPC2QA2AgQgA0GAgICAeDYCAAyAAQsgA0EaNgIIIANBgcPZADYCBCADQYCAgIB4NgIADH8LIAQgAUEIajYCICAEQQI2AjwgBEG4w9kANgI4IARCATcCRCAEQesENgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMfgsgA0ElNgIIIANByMPZADYCBCADQYCAgIB4NgIADH0LIANBLTYCCCADQe3D2QA2AgQgA0GAgICAeDYCAAx8CyADQTw2AgggA0GaxNkANgIEIANBgICAgHg2AgAMewsgA0E0NgIIIANB1sTZADYCBCADQYCAgIB4NgIADHoLIANBKzYCCCADQYrF2QA2AgQgA0GAgICAeDYCAAx5CyADQS02AgggA0G1xdkANgIEIANBgICAgHg2AgAMeAsgA0EkNgIIIANB4sXZADYCBCADQYCAgIB4NgIADHcLIANBHTYCCCADQYbG2QA2AgQgA0GAgICAeDYCAAx2CyADQSg2AgggA0GjxtkANgIEIANBgICAgHg2AgAMdQsgA0EuNgIIIANBy8bZADYCBCADQYCAgIB4NgIADHQLIANBKjYCCCADQfnG2QA2AgQgA0GAgICAeDYCAAxzCyADQTY2AgggA0Gjx9kANgIEIANBgICAgHg2AgAMcgsgA0E+NgIIIANB2cfZADYCBCADQYCAgIB4NgIADHELIANBMzYCCCADQZfI2QA2AgQgA0GAgICAeDYCAAxwCyADQSk2AgggA0HKyNkANgIEIANBgICAgHg2AgAMbwsgA0EZNgIIIANB88jZADYCBCADQYCAgIB4NgIADG4LIANBOzYCCCADQYzJ2QA2AgQgA0GAgICAeDYCAAxtCyADQT02AgggA0HHydkANgIEIANBgICAgHg2AgAMbAsgA0EtNgIIIANBhMrZADYCBCADQYCAgIB4NgIADGsLIAQgAUEIajYCICAEQQI2AjwgBEHgytkANgI4IARCATcCRCAEQesENgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMagsgA0E6NgIIIANB8MrZADYCBCADQYCAgIB4NgIADGkLIANB8AA2AgggA0Gqy9kANgIEIANBgICAgHg2AgAMaAsgA0E1NgIIIANBmszZADYCBCADQYCAgIB4NgIADGcLIANByQA2AgggA0HPzNkANgIEIANBgICAgHg2AgAMZgsgA0EpNgIIIANBmM3ZADYCBCADQYCAgIB4NgIADGULIANBJjYCCCADQcHN2QA2AgQgA0GAgICAeDYCAAxkCyADQTs2AgggA0HnzdkANgIEIANBgICAgHg2AgAMYwsgA0E4NgIIIANBos7ZADYCBCADQYCAgIB4NgIADGILIAQgAUEIajYCICAEQQI2AjwgBEGQz9kANgI4IARCATcCRCAEQesENgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMYQsgA0EnNgIIIANBoM/ZADYCBCADQYCAgIB4NgIADGALIANBGzYCCCADQcfP2QA2AgQgA0GAgICAeDYCAAxfCyADQSE2AgggA0Hiz9kANgIEIANBgICAgHg2AgAMXgsgA0ElNgIIIANBg9DZADYCBCADQYCAgIB4NgIADF0LIANBzgA2AgggA0Go0NkANgIEIANBgICAgHg2AgAMXAsgA0EdNgIIIANB9tDZADYCBCADQYCAgIB4NgIADFsLIANBOTYCCCADQZPR2QA2AgQgA0GAgICAeDYCAAxaCyADQTk2AgggA0HM0dkANgIEIANBgICAgHg2AgAMWQsgA0E5NgIIIANBhdLZADYCBCADQYCAgIB4NgIADFgLIANBLjYCCCADQb7S2QA2AgQgA0GAgICAeDYCAAxXCyAEIAFBCGo2AiAgBEECNgI8IARBlNPZADYCOCAEQgE3AkQgBEHrBDYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahD4FCADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADFYLIANBPzYCCCADQaTT2QA2AgQgA0GAgICAeDYCAAxVCyADQTY2AgggA0Hj09kANgIEIANBgICAgHg2AgAMVAsgBCABQQhqNgIgIARBAjYCPCAEQfjU2QA2AjggBEIBNwJEIARB6wQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAxTCyADQcYANgIIIANBiNXZADYCBCADQYCAgIB4NgIADFILIANBKDYCCCADQc7V2QA2AgQgA0GAgICAeDYCAAxRCyAEIAFBBGo2AiAgBEECNgI8IARBnNbZADYCOCAEQgE3AkQgBEGBBTYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahD4FCADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADFALIANBITYCCCADQazW2QA2AgQgA0GAgICAeDYCAAxPCyADQRY2AgggA0HN1tkANgIEIANBgICAgHg2AgAMTgsgA0EUNgIIIANB49bZADYCBCADQYCAgIB4NgIADE0LIANBHTYCCCADQffW2QA2AgQgA0GAgICAeDYCAAxMCyADQTE2AgggA0GU19kANgIEIANBgICAgHg2AgAMSwsgA0EzNgIIIANBxdfZADYCBCADQYCAgIB4NgIADEoLIAQgAUEIajYCDCAEIAFBEGo2AiAgBEEDNgI8IARBnNjZADYCOCAEQgI3AkQgBEHrBDYCHCAEQesENgIUIAQgBEEQajYCQCAEIARBIGo2AhggBCAEQQxqNgIQIARBLGogBEE4ahD4FCADQQhqIARBNGooAgA2AgAgAyAEKQIsNwIADEkLIAQgAUEIajYCICAEQQI2AjwgBEHM2NkANgI4IARCATcCRCAEQesENgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMSAsgA0E/NgIIIANB3NjZADYCBCADQYCAgIB4NgIADEcLIANBxQA2AgggA0Gb2dkANgIEIANBgICAgHg2AgAMRgsgA0EkNgIIIANB4NnZADYCBCADQYCAgIB4NgIADEULIANBIzYCCCADQYTa2QA2AgQgA0GAgICAeDYCAAxECyADQSs2AgggA0Gn2tkANgIEIANBgICAgHg2AgAMQwsgA0E4NgIIIANB0trZADYCBCADQYCAgIB4NgIADEILIANBzgA2AgggA0GK29kANgIEIANBgICAgHg2AgAMQQsgBCABQQhqNgIgIARBAjYCPCAEQZDc2QA2AjggBEIBNwJEIARB6wQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAxACyADQTo2AgggA0Gg3NkANgIEIANBgICAgHg2AgAMPwsgA0EyNgIIIANB2tzZADYCBCADQYCAgIB4NgIADD4LIANBIzYCCCADQYzd2QA2AgQgA0GAgICAeDYCAAw9CyADQSk2AgggA0Gv3dkANgIEIANBgICAgHg2AgAMPAsgA0E5NgIIIANB2N3ZADYCBCADQYCAgIB4NgIADDsLIANB1gA2AgggA0GR3tkANgIEIANBgICAgHg2AgAMOgsgA0E/NgIIIANB597ZADYCBCADQYCAgIB4NgIADDkLIANBKjYCCCADQabf2QA2AgQgA0GAgICAeDYCAAw4CyADQRM2AgggA0HQ39kANgIEIANBgICAgHg2AgAMNwsgA0ENNgIIIANB49/ZADYCBCADQYCAgIB4NgIADDYLIANBDzYCCCADQfDf2QA2AgQgA0GAgICAeDYCAAw1CyADQdMANgIIIANB/9/ZADYCBCADQYCAgIB4NgIADDQLIANBxgA2AgggA0HS4NkANgIEIANBgICAgHg2AgAMMwsgA0EpNgIIIANBmOHZADYCBCADQYCAgIB4NgIADDILIANBMjYCCCADQcHh2QA2AgQgA0GAgICAeDYCAAwxCyADQSw2AgggA0Hz4dkANgIEIANBgICAgHg2AgAMMAsgA0EwNgIIIANBn+LZADYCBCADQYCAgIB4NgIADC8LIANBPTYCCCADQc/i2QA2AgQgA0GAgICAeDYCAAwuCyADQR42AgggA0GM49kANgIEIANBgICAgHg2AgAMLQsgA0EyNgIIIANBquPZADYCBCADQYCAgIB4NgIADCwLIANBJjYCCCADQdzj2QA2AgQgA0GAgICAeDYCAAwrCyADQSA2AgggA0GC5NkANgIEIANBgICAgHg2AgAMKgsgA0E4NgIIIANBouTZADYCBCADQYCAgIB4NgIADCkLIANBHDYCCCADQdrk2QA2AgQgA0GAgICAeDYCAAwoCyADQSI2AgggA0H25NkANgIEIANBgICAgHg2AgAMJwsgA0E6NgIIIANBmOXZADYCBCADQYCAgIB4NgIADCYLIANBMzYCCCADQdLl2QA2AgQgA0GAgICAeDYCAAwlCyADQcQANgIIIANBhebZADYCBCADQYCAgIB4NgIADCQLIAQgAUEIajYCDCAEIAFBEGo2AiAgBEEDNgI8IARB7ObZADYCOCAEQgI3AkQgBEHrBDYCHCAEQesENgIUIAQgBEEQajYCQCAEIARBIGo2AhggBCAEQQxqNgIQIARBLGogBEE4ahD4FCADQQhqIARBNGooAgA2AgAgAyAEKQIsNwIADCMLIANBOjYCCCADQYTn2QA2AgQgA0GAgICAeDYCAAwiCyADQS42AgggA0G+59kANgIEIANBgICAgHg2AgAMIQsgA0EtNgIIIANB7OfZADYCBCADQYCAgIB4NgIADCALIAQgAUEIajYCICAEQQI2AjwgBEHI6NkANgI4IARCATcCRCAEQesENgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEPgUIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMHwsgBCABQQhqNgIgIARBAjYCPCAEQazp2QA2AjggBEIBNwJEIARB6wQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAweCyAEIAFBCGo2AiAgBEECNgI8IARBjOrZADYCOCAEQgE3AkQgBEHrBDYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahD4FCADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADB0LIANB6AA2AgggA0Gc6tkANgIEIANBgICAgHg2AgAMHAsgA0HoADYCCCADQYTr2QA2AgQgA0GAgICAeDYCAAwbCyADQcQANgIIIANB7OvZADYCBCADQYCAgIB4NgIADBoLIANB0wA2AgggA0Gw7NkANgIEIANBgICAgHg2AgAMGQsgA0HXADYCCCADQYPt2QA2AgQgA0GAgICAeDYCAAwYCyADQdoANgIIIANB2u3ZADYCBCADQYCAgIB4NgIADBcLIANBEjYCCCADQbTu2QA2AgQgA0GAgICAeDYCAAwWCyADQRk2AgggA0HG7tkANgIEIANBgICAgHg2AgAMFQsgA0EpNgIIIANB3+7ZADYCBCADQYCAgIB4NgIADBQLIANByQA2AgggA0GI79kANgIEIANBgICAgHg2AgAMEwsgA0HOADYCCCADQdHv2QA2AgQgA0GAgICAeDYCAAwSCyADQdcANgIIIANBn/DZADYCBCADQYCAgIB4NgIADBELIANBPjYCCCADQfbw2QA2AgQgA0GAgICAeDYCAAwQCyADQeoANgIIIANBtPHZADYCBCADQYCAgIB4NgIADA8LIANB4QA2AgggA0Ge8tkANgIEIANBgICAgHg2AgAMDgsgA0HDADYCCCADQf/y2QA2AgQgA0GAgICAeDYCAAwNCyADQTU2AgggA0HC89kANgIEIANBgICAgHg2AgAMDAsgBCABQQhqNgIgIARBAjYCPCAEQbT02QA2AjggBEIBNwJEIARB6wQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAwLCyABKAIMKAIAQQhqIQEMAQsLIANB4QA2AgggA0HE9NkANgIEIANBgICAgHg2AgAMCAsgA0HuADYCCCADQaX12QA2AgQgA0GAgICAeDYCAAwHC0G54+AAQShBlLXZABDaFwALIARBzrTZADYCLEEIDAMLIARB1rTZADYCLEEIDAILIARB3rTZADYCLEEJDAELIARB57TZADYCLEENCyEBIARBAjYCJCAEIAE2AjAgBEECNgI8IARBhLXZADYCOCAEQgE3AkQgBCAEQSxqNgIgIAQgBEEgajYCQCAEQRBqIARBOGoQ+BQgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAwBCwJAIAEoAgwiBkEDTwRAIARBLGoiCSABKAIIIgEgBkEBayIGQaC92QBBAxDeAyAEQQE2Ajwg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xMzgADYCiAEgAkGsp8MANgKAASACQaynwwA2AnggAkGsp8MANgJwIAJB3KfDADYCaCACQdynwwA2AmAgAkGsp8MANgJYIAJBrKfDADYCUCACQeynwwA2AkggAkHcp8MANgJAIAJB3KfDADYCOCACQcynwwA2AjAgAkG8p8MANgIoIAJBrKfDADYCICACQaynwwA2AhggAkGcp8MANgIQIAIgADYCRCACIABBwQBqNgJ8IAIgAEFAazYCdCACIABBP2o2AmwgAiAAQSBqNgJkIAIgAEEYajYCXCACIABBPmo2AlQgAiAAQT1qNgJMIAIgAEEQajYCPCACIABBCGo2AjQgAiAAQcIAajYCLCACIABBKGo2AiQgAiAAQTxqNgIcIAIgAEE7ajYCFCACIABBOmo2AgwgAiAAQThqNgKMASACIAJBjAFqNgKEASABQZL9wwBBBkGYqcMAQRAgAkEMakEQEMYIIAJBkAFqJAALggMCBX8DfiMAQTBrIgMkACAAIAEoAgQgASgCAGtBHG4Qzh4gACgCBCAAKAIIIQQgA0EQaiABQRBqKAIANgIAIANBCGogAUEIaikCADcDACADIAEpAgAiBzcDACAEQRxsaiECIAenIQEgAygCBCEFAkADQCABIAVGDQEgASgCACIGQQhHBEAgAUEUaikCACEHIAFBDGopAgAhCCABKQIEIQkgAiAGNgIAIAJBBGogCTcCACACQQxqIAg3AgAgAkEUaiAHNwIAIAJBHGohAiAEQQFqIQQgAUEcaiEBDAELCyABQRxqIQELIAAgBDYCCCADQoSAgIDAADcDACAFIAFrQRxuIQICQCABIAVGDQADQCACRQ0BIAJBAWshAiABEM4LIAFBHGohAQwACwALIAMoAhAiAARAIAMoAgwiBCADKAIIIgEoAggiAkcEQCABKAIEIgUgAkEcbGogBSAEQRxsaiAAQRxsELgtGiADKAIQIQALIAEgACACajYCCAsgA0EwaiQAC8ECAQR/IAAoAggiAyAAKAIMEMwcIAAoAgQgAxDUKSAAKAIcIQIgACgCGCIDIQEDQCACBEACQCABKAIAQYCAgIB4RwRAIAEQviYgAUEkahDuFwwBCyABQQRqEL4mCyACQQFrIQIgAUHwAGohAQwBCwsgACgCFCADQQRB8AAQtiIgACgCLCECQQAhAyAAKAIoIgQh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ADoACCAAIAEgASADQQhqEOsUNgIEQQEhBQsgACAFOgAAIANBIGokAAuHAgEEfyMAQSBrIgMkAAJAAkAgAAJ/QQAgAS0A+AJBAkcNABogAUEoaiIEEOMNIgJFDQFBACACKAIAQQJHDQAaQQAgAi0ACA0AGiACLQAJIgJBKGtBA08EQEEAIAJBCUcNARoLAkAgBBDGEiICBEAgAigCAEECRg0BCyAEEMYSIgIEQCACKAIAQQ1GDQELQQAgBBDGEiIERQ0BGkEAIAQoAgBBC0cNARoLIANBCGogAUHk+t8AQQRBABCwAiADKAIIBEAgA0EMahCAIwtBAQs6AAEMAQsgASgC2AIhASADQQA6AAggACABIAEgA0EIahDrFDYCBEEBIQULIAAgBToAACADQSBqJAALjgICBn8BfiMAQTBrIgMkACABKAIEIAEoAgBrQQR2IgIgACgCACAAKAIIIgRrSwRAIAAgBCACQQRBEBCtFyAAKAIIIQQLIAAoAgQgA0EYaiABQRBqKAIANgIAIANBEGogAUEIaikCADcDACADIAEpAgAiCDcDCCAEQQR0aiECIAinIQEgAygCDCEFAkADQCABIAVGDQEgASgCACIGQYCAgIB4RwRAIAFBDGooAgAhByABKQIEIQggAiAGNgIAIAJBBGogCDcCACACQQxqIAc2AgAgAkEQaiECIARBAWohBCABQRBqIQEMAQsLIAFBEGohAQsgACAENgIIIAMgATYCCCADQQhqEKsSIANBMGokAAu4AgEBfyMAQRBrIgIkAAJ/AkACQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgMEBQYHAAsgASgCFEHgk+MAQQUgASgCGCgCDBEDAAwHCyACIABBBGo2AgwgAUGEtMcAQQcgAkEMakHOARDECgwGCyACIABBBGo2AgwgAUHcs98AQQUgAkEMakHPARDECgwFCyACIABBBGo2AgwgAUHQrcQAQQQgAkEMakHQARDECgwECyACIABBBGo2AgwgAUGhtMcAQQogAkEMakHRARDECgwDCyACIABBBGo2AgwgAUHUrcQAQQcgAkEMakHSARDECgwCCyACIABBBGo2AgwgAUG5tMcAQQYgAkEMakHTARDECgwBCyACIABBBGo2AgwgAUG/tMcAQQsgAkEMakHTARDECgsgAkEQaiQAC+ICAQR/QQEh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CCAJGyIAQQhqKQIANwIAIAEgACkCADcCECABQShqIAggByAJGyIAQQhqKQIANwIAIAEgACkCADcCICABIAMgBSAGGyIAKQIANwIwIAFBOGogAEEIaikCADcCAAugAgEEfyMAQTBrIgIkAEGAgICAeCEEAkACQCABQShqEMgNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQQlHDQAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJBJGogAUHUAmopAgA3AgAgAkEsaiABQdwCaigCADYCACACIAEpAswCNwIcIAIgAzYCGCACQRhqIgMQvgogAyABQQAQkQYgAigCHCEFIAIoAhgiBEGAgICAeEcEQCACQRBqIAJBKGopAgA3AwAgAiACKQIgNwMIDAELIABBgYCAgHg2AgAgACAFNgIEDAELIAAgBTYCBCAAIAQ2AgAgACACKQMINwIIIABBEGogAkEQaikDADcCAAsgAkEwaiQAC5YCAgJ/AX4jAEFAaiIBJAACfgJAAkACQEEBIAAtACxBA2siAiACQf8BcUEDTxtB/wFxQQFrDgIBAgALIAApAwAQ2hoMAgsgAEEYahCcDCEDIAFBxQI2AjQgASAANgIwIAFBxQI2AiwgASADNwM4IAFBAjYCFCABQaST2QA2AhAgAUICNwIcIAEgAUE4aiIANgIoIAEgAUEoajYCGCABQQRqIgIgAUEQahDoCyAAEK4ZIAIQixkMAQsgAUECNgIUIAFBtJPZADYCECABQgI3AhwgAUHFAjYCNCABQcUCNgIsIAEgADYCKCABIABBEGo2AjAgASABQShqNgIYIAFBBGoiACABQRBqEOgLIAAQixkLIAFBQGskAAugAgEBfyMAQRBrIgIkAAJ/AkACQAJAAkACQAJAAkAgACgCACIAKAIAQQFrDgYBAgMEBQYACyACIABBCGo2AgwgAUGbj9oAQQMgAkEMakHrAxDECgwGCyACIABBBGo2AgwgAUGB6tgAQQQgAkEMakHuAxDECgwFCyACIABBBGo2AgwgAUGF6tgAQQQgAkEMakGNBBDECgwECyACIABBCGo2AgwgAUGej9oAQQMgAkEMakHtAxDECgwDCyACIABBCGo2AgwgAUGpj9oAQQYgAkEMakHvAxDECgwCCyACIABBCGo2AgwgAUGJ6tgAQQUg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IgM3AwAgACAEQhWJIAOFNwMYIAAgAUINiSAChSIBQhGJIAEgBXwiAYU3AxAgACABQiCJNwMIC68IAgZ/AX4CQAJAAkACQAJAAkACQAJAAkAgACgCAEEBaw4HAQIDBAUGBwALIABCADcDECAAKAIgEJEEDwsgAEIANwMQIAAoAiAQ5w4PCyAAKAIEEIwqDwsgACgCBBCMKg8LIABBBGoQixIPCyAAKAIEIgBCADcDECAAQgA3AwAgAEEgahC5JSAAQSRqEO4DDwsgACgCBCIAQgA3AxggAEIANwMIIAAoAihBMGwhASAAKAIkIQNBACEAA0AgACABRg0CIAAgA2oiAkEQakIANwIAIAJBIGpCADcCACACQShqIgIoAgAEQCACEMYtCyAAQTBqIQAMAAsACyAAKAIEIgBCADcDSCAAQgA3AxAgAC0ARUEDRg0AIABBIGohAQNAIAEtACVBAkYEQAJAIAFCADcCDCABKAIEIgAgASgCCEE4bGohBgNAAkACQAJAAkACQAJAAkAgACAGRwRAIABBOGohAiAAKAIAIgFBCUYNAQJAAkACQCABQQFrDggBAgoJCAcGBQALIABCADcCFCAAKAIMQcgAbCEEIAAoAgghBUEAIQEDQCABIARHBEACQAJAAkACQCABIAVqIgMpAwBCA30iB6dBAWpBACAHQgJUG0EBaw4CAQIACyADQShqQgA3AgAgA0E4akIANwIAIAMQ2CMMAgsgA0EYakIANwIAIANBCGpCADcCAAwBCyADQRhqQgA3AgAgA0EIakIANwIACyABQcgAaiEBDAELCyAAKAIQQgA3AwggAEEcahC6JSACIQAMCgsgAEIANwIwIABBCGoQ2gggAiEADAkLIABCADcCECAAKAIMQdAAbCEEIAAoAgghBUEAIQEDQAJAIAEgBEcEQAJAAkACQEICIAEgBWoiAykDAEICfSIHIAdCAlobp0EBaw4CAQIACyADQRhqQgA3AgAgA0EoakIANwIADAMLIANBEGpCADcCAAwCCyADQRBqQgA3AgAgA0FAa0IANwIAIANBIGoQ2CMMAQsgACgCGCIBBEAgAUIANwIICyAAQRxqELolIAIhAAwKCyABQdAAaiEBDAALAAsMCAsgAEEIahCcBCACIQAMBgsgAEIANwIYIABCADcCCCACIQAMBQsgAEIANwIIIABBBGoQxi0gAiEADAQLIAAoAgQiAEIANwMwIABCADcDICAAKQMAUARAIABBCGoQ+R0gAiEADAQLIABCADcDCCAAQgA3AxggAiEADAMLIABCADcCCCAAKAIEQgA3AwggAEEQahC6JSACIQAMAgsgAEIANwIIIABBBGoQxi0gAiEADAELIABCADcCMAJAAkACQCAAKAIIQQFrDgIBAgALIABBEGoQ/CAgAiEADAILIABBEGoQ+yAgAiEADAELIABBDGoQixIgAiEADAALAAsFIAFCADcDECABQgA3AwAgASgCICEBDAELCwsLkAIBA38gACgCCEEMbCEDIAAoAgQhAANAIAMEQAJAIAAoAgAEQCAAIAEQ5iwMAQsCQAJAAkACQAJAAkBBBCAAKAIEIgIoAgBBBWsiBCAEQQZPG0EBaw4FAQIDBAUACyABIAIpAwggAkEYaigCABCWHQwFCyACQQhqIAEQ/CEgAkEoaiABEOYsDAQLIAEgAikDECACQSBqKAIAEJYdIAJBKGogARDmLAwDCyACQQhqIAEQ/CEgAkEoaiABEOcjDAILIAIgARD8ISACQSBqIAEQ6CMgAkHoAGogARDsLCACQcgAaiABEOcjDAELIAJBCGogARD8ISACKAIoIAEQkRILIABBDGohACADQQxrIQMMAQsLC+wBAQV/IAAgACgCAEEBayIBNgIAAkAgAQ0AAkAgACgCGCICRQRAQQAhAQwBCyAAKAIMIgEgACgCFCIDIAFBACABIANNG2siA2siBSACSQRAIAIgBWshBAwBCyACIANqIQELIABBEGooAgAiAiADQQJ0aiEFIAEgA2shAQNAIAEEQCAFKAIAEOoOIAFBAWshASAFQQRqIQUMAQUDQCAEBEAgAigCABDqDiAEQQFrIQQgAkEEaiECDAELCyAAKAIMIABBEGooAgBBBEEEELYiIAAgACgCBEEBayIBNgIEIAENAiAAQSBBBBC9EQsLCwumAgECfyMAQRBrIgIkAAJ/AkACQAJAAkACQEEEIAAoAgAiACgCAEGAgICAeHMiAyADQQRPG0EBaw4EAQIDBAALIAIgAEEIajYCDCABQfGZwwBBD0GAmsMAQQMgAkEMakGYARDCCwwECyACIABBCGo2AgwgAUGDmsMAQQ1BkJrDAEEHIABBBGpBmQFBl5rDAEEHIAJBDGpBIRCOCwwDCyAC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FGoiByABIAMoAgggAygCDCAGIAIQwREgAkEEaiAHENwbDAELIAJBADYCBAtBASEDAkAgAigCBEEBRgRAIAIoAhAhASAFRQ0BIAIoAgwhBiAEIAIoAghBAWo2AgAgBUEBRg0BIAQgBkEBajYCBAwBC0EAIQMLIAAgATYCBCAAIAM2AgAgAkEgaiQAC4kCAQJ/IwBBEGsiAiQAAn8CQAJAAkACQAJAAkBBBCAAKAIAKAIAIgAoAgBBBWsiAyADQQZPG0EBaw4FAQIDBAUACyACIABBCGo2AgwgAUGlo9kAQQkgAkEMakHUAhDECgwFCyACIABBCGo2AgwgAUHKltoAQQggAkEMakG/BBDECgwECyACIABBCGo2AgwgAUHUpuAAQQYgAkEMakHABBDECgwDCyACIABBCGo2AgwgAUHbktoAQQYgAkEMakHBBBDECgwCCyACIAA2AgwgAUHhktoAQQYgAkEMakHCBBDECgwBCyACIABBCGo2AgwgAUHVktoAQQYgAkEMakHDBBDECgsgAkEQaiQAC4ACAQN/IAAoAghBDGwhAyAAKAIEIQADQCADBEACQCAAKAIABEAgACABEL0rDAELAkACQAJAAkACQAJAQQQgACgCBCICKAIAQQVrIgQgBEEGTxtBAWsOBQECAwQFAAsgASACQQhqEPoIDAULIAEgAkEIahDTISACQShqIAEQvSsMBAsgASACQRBqEPoIIAJBKGogARC9KwwDCyABIAJBCGoQ0yEgASACQShqELwjDAILIAEgAhDTISACQSBqIAEQvSMgAkHoAGogARC+KyABIAJByABqELwjDAELIAEgAkEIahDTISACKAIoIAEQhxILIABBDGohACADQQxrIQMMAQsLC4sCAQN/AkACQAJAAkACQAJAAkAgACgCAEEBaw4GAAECBgUDBAsgACgCDEEobCECIAAoAgghAANAIAJFDQQgACgCAEEHRwRAIAAgARCACQsgAEEoaiEAIAJBKGshAgwACwALIABBBGogARDwLQ8LIAAoAgxBOGwhAyAAKAIIIQRBACEAA0AgACADRg0CAkACQAJAAkAgACAEaiICKAIAQQFrDgIBAgALIAEgAkEIahClCyACQShqIAEQjS0MAgsgAkEwaiICKAIARQ0BIAIgARCDLQwBCyACQQRqIAEQ8C0LIABBOGohAAwACwAL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0wEBA38jAEEgayIBJAACQCACKAIQIgQgAigCFCIFTQRAIAIoAgBBAWtBAk8EQCABQRRqIgYgAEEEaiACKAIIIAIoAgwgBCAFEMIFIAFBBGogBhDcGwwCC0EAIQUCQCAEIAIoAgxPDQAgAigCCCAEai0AACICIAAtAARHBEAgAC0ABSACRw0BCyABIAQ2AhhBASEFIAEgBEEBajYCHAsgASAFNgIUIAFBBGogAUEUahDcGwwBCyABQQA2AgQLIAEoAgRBAUYEQCADELIVCyABQSBqJAAL4wECAn8BfiMAQTBrIgMkACADQQhqIAEgAhDjCiADKQIMIQUCQAJAIAMoAggiBEGAgICAeEYEQCAFp0EBcQ0BIAVCgICAgIAQWgRAIAAgASgCBCABKAIIIAJBBGpBABDKGAwDCyAAQYCAgIB4NgIAIAAgBUIgiDwABAwCCyAAIAMpAhQ3AgwgAEEkaiADQSxqKAIANgIAIABBHGogA0EkaikCADcCACAAQRRqIANBHGopAgA3AgAgACAFNwIEIAAgBDYCAAwBCyAAQYCAgIB4NgIAIAAgBUIIiDwABAsgA0EwaiQAC98BAQR/IAMoAgghBCADKAIEIQUCQAJAIAIgAygCAEkEQANAIARFBEBBACEGDAQLIAAgASAEQQFrIgZBjLzYABCcHyIHKAIAIAJJDQIgBUECIActAAQiBEEBayAEQQRGG0H/AXFrIQUgBiEEDAALAAsgBCABIAEgBEkbIQYDQCAEIAZGDQIgACABIARBnLzYABCcHyIHKAIAIAJPDQEgBUECIActAAQiB0EBayAHQQRGG0H/AXFqIQUgBEEBaiEEDAALAAsgBCEGCyADIAY2AgggAyAFNgIEIAMgAjYCACAFC+cBAQN/IAAoAghBDGwhAyAAKAIEIQADQCADBEACQCAAKAIABEAgACABELwrDAELAkACQAJAAkACQEEEIAAoAgQiAigCAEEFayIEIARBBk8bQQFrDgUAAQIDBAULIAJBCGogARDaISACQShqIAEQvCsMBAsgAkEoaiABELwrDAMLIAJBCGogARDaISABIAJBKGoQvyMMAgsgAiABENohIAJBIGogARDAIyACQegAaiABEMcrIAEgAkHIAGoQvyMMAQsgAkEIaiABENohIAIoAiggARCJEgsgAEEMaiEAIANBDGshAwwBCwsL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EPYGGiADKAIIQQ1HDQILIANBCGoQ6CULIANB4ABqJAAPCyAFIAFB2AAQuC0aIAAgACgCCEEBajYCCCAEQdgAayEEIAchASAFQdgAaiEFDAALAAuwAQEGfyABQThsIAAoAghBOGwiA2shASACKAJ0IAIoAnAiBWshBiACIAVBOGxqIQQgACgCBCADaiEDA0AgAUUhBwJAIAEEQCAGRQRAQQAPCyACIAVBAWoiBTYCcCAEKAIAIghBCkcNAQsgBw8LIAMgCDYCACADQQRqIARBBGpBNBD2BhogACAAKAIIQQFqNgIIIAFBOGshASAEQThqIQQgBkEBayEGIANBOGohAwwACwALuQEBAn8jAEEQayICJAACQAJAIAFBKGoQ4w0iAwRAIAMoAgBBBEYNAQsgAiABEM8EIAACfiACKQMAUEUEQCAAIAIpAwA3AwggAEEQaiACQQhqKQMANwMAQgEMAQsgACACKAIINgIIQgILNwMADAELIAIgARCmBSAAAn4gAikDAFBFBEAgACACKQMANwMIIABBEGogAkEIaikDADcDAEIADAELIAAgAigCCDYCCEICCzcDAAsgAkEQaiQAC8UBAQN/IwBBMGsiASQAIAAoAgwhAgJAAkACfwJAAkAgACgCBA4CAAEDCyACDQJBAQwBCyACDQEgACgCACIAKAIEIQMgACgCAAshAiABQRhqELsiQSQQzSAiAEHAv8AANgIAIAAgAzYCICAAIAI2AhwgACABKQIYNwIEIABBDGogAUEgaikCADcCACAAQRRqIAFBKGopAgA3AgAMAQsgAUEMaiICIAAQqQYgAUEYaiIAELsiIAIgABDhEyEACyABQTBqJAAgAAurAQEDfwJAIAJBEEkEQCAAIQMMAQsgAEEAIABrQQNxIgRqIQUgBARAIAAhAwNAIAMgAToAACADQQFqIgMgBUkNAAsLIAUgAiAEayICQXxxIgRqIQMgBEEASgRAIAFB/wFxQYGChAhsIQQDQCAFIAQ2AgAgBUEEaiIFIANJDQALCyACQQNxIQILIAIEQCACIANqIQIDQCADIAE6AAAgA0EBaiIDIAJJDQALCyAAC9QBAQR/IwBBEGsiAyQAIAJB/////wdJBEAgAyABKAIIIgQQwRwCQCADKAIARQRAIAMoAgQhBSABKALYAiEGIAEoAgAgBEYEQCABENIWCyAAIAU2AgQgAEEDNgIAIAEgBEEBajYCCCABKAIEIARBFGxqIgAgAjYCECAAIAY2AgwgAEEANgIIIABCADcCAAwBCyAAIAMpAwg3AxAgAEL+////BzcDCCAAQQA2AgALIANBEGokAA8LIAMgAq03AwBBzInAAEE0IANB8ILAAEGAisAAEMAOAAu4AgEDfwJ/IAEoAgQiAiABKAIQRwRAIABBDGogARDREiAAQRRqIQEgAEEQagwBCyAAKAIEIgMgACgCCCIAIAJBAWsiAkH0u9YAEJ4fIAEQ0RIgAyAAIAJBhLzWABCeHyIAQQhqIQEgAEEEagshAgJAIAEoAgAiAEECSQ0AIAIoAgAhAiAAQRVPBEAjAEGQIGsiASQAAkAgAEEBdiIDQZWsFCAAIABBlawUTxsiBCADIARLGyIDQasBTwRAIAFBCGogA0EEQRgQ5xQgAiAAIAEoAgwiAiABKAIIIgMgAEHBAEkQ2AEgAyACENEpDAELIAIgACABQRBqQaoBIABBwQBJENgBCyABQZAgaiQADAELIABBGGwhAEEYIQEDQCAAIAFGDQEgAiABIAJqENsJIAFBGGohAQwACwALC74BAQN/IwBBEGsiAyQAIAAoAgAhBAJAA0AgAkEDTQRAAkAgAkEBSw0ADAMLBSABKAAAIANBBCABIAJB2M/YABDxHCAEQQV3c0G5893xeWwhBCADKAIEIQIgAygCACEBDAELCyABLwAAIANBCGpBAiABIAJByM/YABDxHCAEQQV3c0G5893xeWwhBCADKAIMIQIgAygCCCEBCyAAIAIEfyABLQAAIARBBXdzQbnz3fF5bAUgBAs2AgAgA0EQaiQAC8oBAQV/IwBBIGsiASQAIAAoAgghBCAAKAIEIQVBBSECQQEhAwJAAkACQCAAKAIAQQFrDgIAAgELQQMhAwsgAUEQaiAAQRxqKAIANgIAIAFBCGogAEEUaikCADcDACABIAApAgw3AwAgAyECC0EoQQgQuCIiACAENgIIIAAgBTYCBCAAIAI2AgAgACABKQMANwIMIABBFGogAUEIaikDADcCACAAQRxqIAFBEGopAwA3AgAgAEEkaiABQRhqKAIANgIAIAFBIGokACAAC6wBAgd/AX4jAEEQayIEJAAgBEEIaiACQQhBCBDnFCACQQN0IQggBCgCDCEHIAQoAggiCSEFAkADQCAFRSADIAhGckUEQCABIANqKQMAIgpCA4NQBEAgCqdBCGsiBiAGKAIAIgZBAWo2AgAgBkEASA0DCyADIAdqIAo3AwAgBUEBayEFIANBCGohAwwBCwsgACACNgIIIAAgBzYCBCAAIAk2AgAgBEEQaiQADwsAC7gBAQR/IwBBEGsiBiQAIAEtAIICIQcgAS0AgQIhCCABLQCAAiEJIAZBCGogAiADIAQgBUGslMAAENMWIAYgCSAIIAcgBigCCCAGKAIMEN8EIAACfwJAIAYoAgBBAXEEQCAGKAIEIARqIgUgA0kNASAFIANBvJTAABCbEAALQQAMAQsgACAEIAUgASACIAVqLQAAai0AAGsiAUEAIAEgBU0bIgEgASAESRs2AgRBAgs2AgAgBkEQaiQAC7oBAQJ/IAAgAC0ADSABLQANIgIgAkEDRhs6AA0gACAALQAMIAEtAAwiAiACQQJGGzoADCAAIAAtAAsgAS0ACyICIAJBAkYbOgALIAAgAC0ACiABLQAKIgIgAkECRhs6AAogACABQQlqIABBCWogAS0ACCICGy0AADoACSAAIAAoAgAgASgCACIDIANBAkYiAxs2AgAgACACIAAtAAhyQQFxOgAIIAAgAEEEaiABQQRqIAMbKAIANgIEIAALwQEBAn8jAEEwayICJAAgAkEANgIgIAJBATYCFCACQdSWwwA2AhAgAkIENwIYAn9BASABKAIUIgMgASgCGCIBIAJBEGoQlSQNABogAiAAKAIANgIIA0AgAiACQQhqEJcZQQAgAigCAEUNARogAiACKAIENgIMIAJBATYCFCACQbSWwwA2AhAgAkIBNwIcIAJBEDYCLCACIAJBKGo2AhggAiACQQxqNgIoIAMgASACQRBqEJUkRQ0AC0EBCyACQTBqJAALxwEBAX8jAEEQayILJAAgACgCFCABIAIgACgCGCgCDBEDACEBIAtBADoADSALIAE6AAwgCyAANgIIIAtBCGogAyAEIAUgBhDuBiAHIAggCSAKEO4GIQEgCy0ADSICIAstAAwiA3IhAAJAIANBAXEgAkEBR3INACABKAIAIgAtABxBBHFFBEAgACgCFEG70dYAQQIgACgCGCgCDBEDACEADAELIAAoAhRBia3gAEEBIAAoAhgoAgwRAwAhAAsgC0EQaiQAIABBAXELtQEBBX8jAEEgayIC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DAALAAvTAQEBfyMAQfAAayIDJAAgAyACNgIsIANBADYCKCADQeEANgIkIAMgAEEcajYCICADQQI2AhwgA0Go7uAANgIYIANBAjYCFCADQQM2AgQgA0HUxN8ANgIAIANBAzoAbCADQQA2AmggA0KggICAEDcCYCADQoKAgIAgNwJYIANBAjYCUCADQQM6AEwgA0EANgJIIANCIDcCQCADQoGAgIAgNwI4IANBAjYCMCADIANBMGo2AhAgA0EDNgIMIAMgA0EYajYCCCABIAMQsCQgA0HwAGokAAvDAQEDfyMAQbAHayICJAAgASgClA0oArwCIgMgAygCACIEQQFqNgIAIARBAE4EQCACIAMQ5BcgAkHoBGogASgCoAoQzx4gAkHUBWogASgCuAoQ0B4gAkHYBGogASgC1AogASgC+AoQ4g4gAkHYAWogARCNFQJAIAEpA6ANQgJRBEAgAkECNgKgBwwBCyACQfAFaiABQaANahCLCQsgAkEYaiACQfAFakHAARD2BhogACACQfAFEPYGGiACQbAHaiQADwsAC6gBAQN/AkACQCABKAIAIgMgAUEIaygCACICRgRAIAEoAgQiAiABQQRrKAIASQ0BDAILIAIgA00NASABKAIEIQILIAFBEGshAQNAAkAgAUEQaiABQQhqIgQpAgA3AgAgACAERg0AAkAgASgCACIEIANGBEAgAiABQQRqKAIASQ0BDAILIAMgBE8NAQsgAUEIayEBDAELCyABQQhqIAOtIAKtQiCGhDcCAAsLvQEBA38jAEFAaiICJAAgAiABNgIIIAJBADYCMCACQgA3AiggAiAAKAJIIAAoAkwgASACQShqIgQQ5AkiAzYCDCADIAAoAihqIgMgAUsEQCACQQM2AhQgAkHku9gANgIQIAJCAzcCHCACQZYCNgI8IAJBCTYCNCACQZYCNgIsIAIgAEEoajYCKCACIAQ2AhggAiACQQhqNgI4IAIgAkEMajYCMCACQRBqQfy72AAQoR0ACyACQUBrJAAgASADawu9AQEDfyMAQSBrIgEkACAAKAIAIgIoAgAhAyACQQA2AgAgAygCECECIANBADYCECACBEAgAUEIaiACEQEAIAAoAgQiAygCACIAKAIAIgJBgoCAgHhOBEAgAiAAQQRqKAIAEKckIAMoAgAhAAsgACABKQIINwIAIABBCGog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BGogARD1LAwDCyACQQRqIAEQvw8MAgsgAkEEaiABEOMsDAELIAAoAngiAgRAIAIgARCVGgsgBCABEL8PIAAtADxBBkcEQCAAQRBqELYgCw8LIAJB2ABqIQIgA0HYAGshAwwACwALrAEBBX8jAEEwayIDJAAgAUEwbCAAKAIIQTBsIgFrIQQgACgCBCABaiEFIAIoAgQhASACKAIMIQYCQANAIARFDQEgASAGRwRAIAIgAUEEaiIHNgIEIANCADcDCCADQRI2AgAgAyABKAIANgIEIAUgA0EwEPYGIAAgACgCCEEBajYCCCAEQTBrIQRBMGohBSAHIQEMAQsLIANBEzYCACADEIMmCyADQTBqJAAgBEULugECBH8BfiMAQSBrIgMkACAAKAIIQThsIQQgACgCBCEFQQAhAANAAkAgACAERwRAAkACQAJAIAAgBWoiAigCAEEBaw4CAQIACyACQQhqIAEQpiIgAkEoaiABEKgtDAMLIAJBMGogARCHJCABLQAoQQFHDQIgA0EIaiACQRBqELUbIAEgAykDCCIGIAMoAhgQ9xEgBhDWGgwCCyACQQRqIAEQqC0MAQsgA0EgaiQADwsgAEE4aiEADAALAAu6AQIDfwF+IwBBIGsiASQAIAAoAggiA0H+////B00EQAJAAkAgACgCFCICRQ0AIAAgAkEBayICNgIUIAAoAhAgAkEMbGopAgAiBKdBgICAgHhGDQAgAUEANgIQIAEgBDcDCAwBCyABQQA2AhAgAUKAgICAwAA3AggLIAAgAUEIahDTFSABQSBqJAAgAw8LIAFBADYCGCABQQE2AgwgAUH4ocMANgIIIAFCBDcCECABQQhqQYCiwwAQoR0AC7cBAQF/IwBBIGsiAiQAAkACQCABEMAtRQRAIAJBBGogARDQByACKAIEQYCAgIB4RwRAIAJBGGogAkEMaigCADYCACACIAIpAgQ3AxAgACACQRBqEMoRDAILQYCAgIB4IAIoAggQliQgACABEOUHNgIYIABBAjYCACAAQRRqIAFBEGooAgA2AgAgAEEMaiABQQhqKQIANwIAIAAgASkCADcCBAwCCyAAEKMRCyABEJQeCyACQSBqJAALrgECAn8BfiMAQTBrIgIkAAJAIAEtABRBAkYEQBDXIiEDIAEoAgAiASkDECEEIAJBCGogAUEYahC/CyACQSBqIAEQtSEgAyAENwMQIANBCGogAkEoaikDADcDACADIAIpAyA3AwAgAyACKQMINwMYIANBIGogAkEQaikDADcDACADQShqIAJBGGopAwA3AwAgAEECOgAUIAAgAzYCAAwBCyAAIAEQtRsLIAJBMGokAAvBAQEDfyAAQUBrELYgIABBkAFqIQQgACgChAFB2ABsIQMgACgCgAEhAgNAAkAgAwRAAkACQAJAAkACQCACKAIAQQFrDgUBAgMGBAALIAIoAgggAkEYaisDACABEIsfDAULIAJBBGogARCdIgwECyACQQRqIAEQii0MAwsgAkEEaiABEMMPDAILIAFBADoABAwBCyAEIAEQww8gAC0APEEGRwRAIABBEGoQtiALDwsgAkHYAGohAiADQdgAayEDDAALAAuhAQECfwJAIAFBA00EQCAAQQFrIQADQCABRSEDIAFFDQIgACABaiABQQFrIQEsAABBAE4NAAsMAQsgACgAAEGAgYKEeHENAEEEIABBA2pBfHEiAiAAayAAIAJGGyECIAFBBGshAQNAIAEgAk0EQCAAIAFqKAAAQYCBgoR4cUUhAwwCCyAAIAJqKAIAQYCBgoR4cQ0BIAJBBGohAgwACwALIAMLvAEBAX8jAEEQayIHJAAgACgCFCABIAIgACgCGCgCDBEDACEBIAdBADoADSAHIAE6AAwgByAANgIIIAdBCGogAyAEIAUgBhDuBiEBIActAA0iAiAHLQAMIgNyIQACQCADQQFxIAJBAUdyDQAgASgCACIALQAcQQRxRQRAIAAoAhRBu9HWAEECIAAoAhgoAgwRAwAhAAwBCyAAKAIUQYmt4ABBASAAKAIYKAIMEQMAIQALIAdBEGokACAAQQFxC7oBAAJAAkACQCABQQFxRQRAIAIoAgBBhoDEAGsOAgIDAQsgACACNgIEIABBAjYCACAAIAIpAgA3AggPCyAAQQQ2AgAPCyACKAIEIgEoAgBBiIDEAEcEQCAAQgQ3AgggACABNgIEIABBADYCAA8LIABBATYCACAAIAFBBGo2AgQPCyACKAIMIgEEQCAAQQA2AgAgACABQQFrNgIMIAAgAigCCCIBNgIEIAAgAUHYAGo2AggPCyAAQQQ2AgALzgEBAX8jAEFAaiICJAAgACgCACEAIAJBrI3EADYCOCACQbDnwwA2AjAgAiAAQdgEajYC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QRBrIgMkACABKAIMIQICQAJAAkACQAJAAkAgASgCBA4CAAECCyACDQFBASECQQAhAQwCCyACDQAgASgCACICKAIEIQEgAigCACECDAELIAAgARCpBgwBCyADQQRqIAEQlg4gAygCCCEEIAMoAgRBAUYNASADKAIMIAIgARD2BiECIAAgATYCCCAAIAI2AgQgACAENgIACyADQRBqJAAPCyAEIAMoAgwQvikAC58BAQd/IwBB0ABrIgIkACABKAIEIQcgAkEIaiABKAIIIgRBCEHAABDnFCACKAIIIgUgBEH///8fcSIBIAEgBUsbIQNBACEBIAIoAgwhBgNAIAMEQCACQRBqIgggASAHahDuHiABIAZqIAhBwAAQ9gYaIANBAWshAyABQUBrIQEMAQsLIAAgBDYCCCAAIAY2AgQgACAFNgIAIAJB0ABqJAALmwEBB38jAEFAaiICJAAgASgCBCEHIAJBCGogASgCCCIEQQhBMBDnFCACKAIIIgUgBEH/////AHEiASABIAVLGyEDQQAhASACKAIMIQYDQCADBEAgAkEQaiIIIAEgB2oQbyABIAZqIAhBMBD2BhogA0EBayEDIAFBMGohAQwBCwsgACAENgIIIAAgBjYCBCAAIAU2AgAgAkFAayQAC68BAQJ/IwBBEGsiAiQAIAACfwJAAkACQAJAAkACQCABKAIAQQFrDgYCAQIDBAUACyACIAFBCGoQmhUgAigCBCEDIAIoAgAMBQsgASgCDCEDIAEoAggMBAsgASgCFCEDIAEoAhAMAwsgASgCECEDIAEoAgwMAgsgASgCCCEDIAEoAgQMAQsgAkEIaiABKAIEEIsDIAIoAgwhAyACKAIICzYCACAAIAM2AgQgAkEQaiQAC/oBAQF/AkACQAJAAkACQAJAAkAgACgCAEEBaw4HAQIDBgYEBQALIABBCGogARDEKw8LIABBCGogARDDKw8LIAAoAgQgARDNEw8LIAAoAgQgARDNEw8LIAAoAgQiACgCKEEwbCECIAAoAiRBKGohAANAIAJFDQIgACgCAARAIAAgARDAKwsgAkEwayECIABBMGohAAwACwALIAAoAgQiAC0ARUEDRg0AIABBIGohAANAIAAtACVBAkYEQAJAIAAoAghBOGwhAiAAKAIEIQADQCACRQ0BIAAgARDKDCACQThrIQIgAEE4aiEA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AgBBAWsOBQABAgUDBQsgAkEEaiABENEhDAQLIAJBBGogARDYLAwDCyACQQRqIAEQug8MAgsgAkEEaiABELwrDAELIAQgARC6DyAALQA8QQZHBEAgAEEQahC2IAsPCyACQdgAaiECIANB2ABrIQMMAAsAC60BAQN/IABBQGsQtiAgAEGQAWohBCAAKAKEAUHYAGwhAyAAKAKAASECA0ACQCADBEACQAJAAkACQCACKAIAQQFrDgUAAQIFAwULIAJBBGogARDsIQwECyACQQRqIAEQ1SwMAwsgAkEEaiABELsPDAILIAJBBGogARDCKwwBCyAEIAEQuw8gAC0APEEGRwRAIABBEGoQtiALDwsgAkHYAGohAiADQdgAayEDDAALAAutAQEDfyAAQUBrELYgIABBkAFqIQQgACgChAFB2ABsIQMgACgCgAEhAgNAAkAgAwRAAkACQAJAAkAgAigCAEEBaw4FAAECBQMFCyACQQRqIAEQ7SEMBAsgAkEEaiABENYsDAMLIAJBBGogARC8DwwCCyABIAJBBGoQhyEMAQsgBCABELwPIAAtADxBBkcEQCAAQRBqELYgCw8LIAJB2ABqIQIgA0HYAGshAwwACwALrQEBA38gAEFAaxC2ICAAQZABaiEEIAAoAoQBQdgAbCEDIAAoAoABIQIDQAJAIAMEQAJAAkACQAJAIAIoAgBBAWsOBQABAgUDBQsgAkEEaiABEPkhDAQLIAJBBGogARDzLAwDCyACQQRqIAEQwA8MAgsgAkEEaiABEOcsDAELIAQgARDADyAALQA8QQZHBEAgAEEQahC2IAsPCyACQdgAaiECIANB2ABrIQMMAAsAC60BAQN/IABBQGsQtiAgAEGQAWohBCAAKAKEAUHYAGwhAyAAKAKAASECA0ACQCADBEACQAJAAkACQCACKAIAQQFrDgUAAQIFAwULIAJBBGogARD2IQwECyACQQRqIAEQ9ywMAwsgAkEEaiABEMIPDAILIAJBBGogARDiLAwBCyAEIAEQwg8gAC0APEEGRwRAIABBEGoQtiALDwsgAkHYAGohAiADQdgAayEDDAALAAutAQEDfyAAQUBrELYgIABBkAFqIQQgACgChAFB2ABsIQMgACgCgAEhAgNAAkAgAwRAAkACQAJAAkAgAigCAEEBaw4FAAECBQMFCyACQQRqIAEQlSIMBAsgAkEEaiABEIstDAMLIAJBBGogARDEDwwCCyACQQRqIAEQgi0MAQsgBCABEMQPIAAtADxBBkcEQCAAQRBqELYgCw8LIAJB2ABqIQIgA0HYAGshAwwACwALrQEBA38gAEFAaxC2ICAAQZABaiEEIAAoAoQBQdgAbCEDIAAoAoABIQIDQAJAIAMEQAJAAkACQAJAIAIoAgBBAWsOBQABAgUDBQsgAkEEaiABEKciDAQLIAJBBGogARCxLQwDCyACQQRqIAEQyg8MAgsgAkEEaiABEJotDAELIAQgARDKDyAALQA8QQZHBEAgAEEQahC2IAsPCyACQdgAaiECIANB2ABrIQMMAAsAC60BAQN/IABBQGsQtiAgAEGQAWohBCAAKAKEAUHYAGwhAyAAKAKAASECA0ACQCADBEACQAJAAkACQCACKAIAQQFrDgUAAQIFAwULIAJBBGogARCpIgwECyACQQRqIAEQry0MAwsgAkEEaiABEMsPDAILIAJBBGogARCmLQwBCyAEIAEQyw8gAC0APEEGRwRAIABBEGoQtiALDwsgAkHYAGohAiADQdgAayEDDAALAAuWAQEEfyMAQRBrIgIkACABKAIwIQQgASgCACEFAn8gASgCYCIDRQRAQQEhAUEBDAELIAJBBGogAyABKAJkKAIQEQAAIAIoAgggAigCBEVxIQEgAigCDEULIQMgAAJ/QQAgBA0AGkEAIAUNABpBACABRQ0AGkEAIANFDQAaIABBADYCCEEBCzYCBCAAQQA2AgAgAkEQaiQAC6YBAgZ/An4gASgCACACKAIMIgRBGGxqIgFBEGoiBSkCACEJIAFBCGoiBikCACEKIAAoAgwhByACKAIIIgAoAgwhCCACKAIAIgMgASkCADcCACADQQhqIAo3AgAgA0EQaiAJNwIAIAEgACkCADcCACAGIABBCGopAgA3AgAgBSAAQRBqKQIANwIAIAIgBCAHIAhLajYCDCACIAA2AgAgAiAAQRhqNgIIC6YBAgZ/An4gASgCACACKAIMIgRBGGxqIgFBEGoiBSkCACEJIAFBCGoiBikCACEKIAAoAgwhByACKAIIIgAoAgwhCCACKAIAIgMgASkCADcCACADQQhqIAo3AgAgA0EQaiAJNwIAIAEgACkCADcCACAGIABBCGopAgA3AgAgBSAAQRBqKQIANwIAIAIgBCAHIAhPajYCDCACIAA2AgAgAiAAQRhqNgIIC6YBAQR/IAAoAgwhAiAAKAIIIgMhAQNAIAIEQAJAAkACQAJAAkAgASgCACIEQQdrQQAgBEEITxsOBAABAgMECyABEM0LDAMLIAFBBGooAgAgAUEIaigCABC4KQwCCyABQQRqKAIAIAFBCGooAgAQyikMAQsgAUEEaigCACABQQhqKAIAENYpCyACQQFrIQIgAUEcaiEBDAELCyAAKAIEIANBBEEcELYiC6QBAQJ/IwBBQGoiBSQAIAEoAiAhBgJAAkAgAkEBcUUEQCAGRQ0BQbqQwwBBLEHokMMAENoXAAsgBiADQQFqRw0BCyAFIAEgBBCGDCAFKAIEIQICQCAFKAIAIgNBMEYEQCABQRhqIAIQiBsMAQsgAEEIaiAFQQhqQTgQ9gYaCyAAIAM2AgAgACACNgIEIAVBQGskAA8LQfiQwwBBOUG0kcMAENoXAAuaAQEFfyAAKAKQDSgCVCAALQCcCkECRwRAIAAoApAKIAAoApQKEJ0bIQMLIAAoApQNELEVIQUgACgCmA0iAQRAIAEQsRUhAgtBACEBIAAoAtQKQQNHBEAgACgC9ApBAnQgACgC6ApBA3RqIQELIAAtAJwNQQFGBEBBuePgAEEoQcTtwwAQ2hcAC0E0bCADaiAFaiACaiABakE0aguhAQECfyMAQUBqIgMkACADIAI2AhAgAyABNgIMIAEgAkEBak0gACgCDCIEIAJPcUUEQCADQQI2AhggA0H8q+AANgIUIANCAjcCICADQQk2AjggA0H6ADYCMCADIAQ2AjwgAyADQSxqNgIcIAMgA0E8ajYCNCADIANBDGo2AiwgA0EUakGMrOAAEKEdAAsgACACNgIUIAAgATYCECADQUBrJAALkwEBBH8jAEEQayIBJABBgIDEACECIAAoAgAoAlAiAyAAKAIIIgRHBEAgASAAKAIEIAQCf0EBIAAQvAwiAEGAAUkNABpBAiAAQYAQSQ0AGkEDQQQgAEGAgARJGwsgA2pB6JrEABCwFCABIAEoAgAiADYCCCABIAAgASgCBGo2AgwgAUEIahC7GiECCyABQRBqJAAgAgu0AQEBfyMAQUBqIgIkACAAKAIAIQAgAkHstMcANgI4IAJB3LTHADYCMCACIABBBGo2AiwgAkHctMcANgIoIAIgAEEDajYCJCACQdy0xwA2AiAgAiAAQQJqNgIcIAJB3LTHADYCGCACIABBAWo2AhQgAkHctMcANgIQIAIgADYCDCACIABBBWo2AjwgAiACQTxqNgI0IAFB8LXHAEEFQcC1xwBBBiACQQxqQQYQxgggAkFAayQAC5kBAQd/IwBBMGsiAiQAIAEoAgQhByACIAEoAggiBEEIQSgQ5xQgAigCACIFIARB/////wFxIgEgASAFSxshA0EAIQEgAigCBCEGA0AgAwRAIAJBCGoiCCABIAdqEI8HIAEgBmogCEEoEPYGGiADQQFrIQMgAUEoaiEBDAELCyAAIAQ2AgggACAGNgIEIAAgBTYCACACQTBqJAALmQEBB38jAEEwayICJAAgASgCBCEHIAIgASgCCCIEQQhBKBDnFCACKAIAIgUgBEH/////AXEiASABIAVLGyEDQQAhASACKAIEIQYDQCADBEAgAkEIaiIIIAEgB2oQniAgASAGaiAIQSgQ9gYaIANBAWshAyABQShqIQEMAQsLIAAgBDYCCCAAIAY2AgQgACAFNgIAIAJBMGokAAu1AQEBfyMAQUBqIgIkACAAKAIAIQAgAkGQ7tgANgI4IAJBrO/YADYCMCACIABBwQBqNgIsIAJBgO7YADYCKCACIABBOGo2AiQgAkG879gANgIgIAIgAEEIajYCHCACQazv2AA2AhggAiAAQUBrNgIUIAJBvI3aADYCECACIAA2AgwgAiAAQTxqNgI8IAIgAkE8ajYCNCABQcyo2QBBDEHY79gAQQYgAkEMakEGEMYIIAJBQGskAAu0AQEBfyMAQUBqIgIkACAAKAIAIQAgAkH8jdoANgI4IAJBmO3YADYCMCACIABBEmo2AiwgAkGY7dgANgIoIAIgAEERajYCJCACQdDr2AA2AiAgAiAAQQxqNgIcIAJBmO3YADYCGCACIABBEGo2AhQgAkG8jdoANgIQIAIgADYCDCACIABBCGo2AjwgAiACQTxqNgI0IAFB4vDYAEETQej02ABBBiACQQxqQQYQxgggAkFAayQAC7QBAQF/IwBBQGoiAiQAIAAoAgAhACACQajt2AA2AjggAkGY7dgANgIwIAIgAEE1ajYCLCACQZjt2AA2AiggAiAAQTRqNgIkIAJBiO3YADYCICACIABBNmo2AhwgAkG46tgANgIYIAIgAEEoajYCFCAC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3wA2AhggAiAAQRBqNgIUIAJBrNPfADYCECACIABBzABqNgIMIAIgAEFAazYCPCACIAJBPGo2AjQgAUHg1N8AQQpBsNTfAEEGIAJBDGpBBhDGCCACQUBrJAALsgEBAX8jAEEwayICJAAgAgJ/AkACQAJAAkACQCAALQAAQQFrDgMBAgMACyACQdnzwQA2AghBDgwECyACQefzwQA2AghBDgwDCyACQfXzwQA2AggMAQsgAkGL9MEANgIIC0EWCzYCDCACQQE2AhQgAkGo7uAANgIQIAJCATcCHCACQQI2AiwgAiACQShqNgIYIAIgAkEIajYCKCABKAIUIAEoAhggAkEQahCVJCACQTBqJAALqwEBAn8jAEFAaiIBJAAgASAAKAIAKAJQIgI2AhQgAUEIaiAAKAIEIAAoAgggAkHMmcQAELAUIAEgASgCCCIANgIYIAEgACABKAIMajYCHCABQRhqELsaIgBBgIDEAEYEQCABQQE2AiQgAUH0mcQANgIgIAFCATcCLCABQQk2AjwgASABQThqNgIoIAEgAUEUajYCOCABQSBqQfyZxAAQoR0ACyABQUBrJAAgAAukAQECfyMAQSBrIgQkAAJAIAEtAJwNQQFHBEACQAJAIAEpAwBCAlENACACKALIBEECRg0DIARBEGoiBSABIAJB2AFqIAMQsQUgBCAFEOUXIAQoAgBBAkYNACAAIAQpAgA3AgAgAEEIaiAEQQhqKQIANwIADAELIAAgASACIAMQowQLIARBIGokAA8LQbnj4ABBKEHMiMMAENoXAAtB7IfDABC8KQALpwEBAX8jAEEwayICJAACfyAALQAARQRAIAAtAAEhACACQQE2AhwgAkGo7uAANgIYIAJCATcCJCACQaQBNgIQIAIgADoAFyACIAJBDGo2AiAgAiACQRdqNgIMIAEoAhQgASgCGCACQRhqEJUkDAELIAJBADYCKCACQQE2AhwgAkHEpMMANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahCVJAsgAkEwaiQAC5wBAQN/IwBB4ABrIgIkACACQQhqIAFBIGpBiK/DABCeHSACKAIMIQEgAigCCCEDIAJBCDYCUCACQRBqIAMgAkHQAGoQ3gggASABKAIAQQFqNgIAIABBCGohASACKAIUIQMCQCACKAIQIgRBKkYEQCABIAM2AgAMAQsg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KAIIIAAoAgAQzSkLkQEBAn8jAEEQayICJAAgASABQRBrIgMQzRkEQCACQQhqIAFBCGopAgA3AwAgAiABKQIANwMAA0ACQCADIgFBEGogASkCADcCACABQRhqIAFBCGopAgA3AgAgACABRg0AIAIgAUEQayIDEM0ZDQELCyABIAIpAwA3AgAgAUEIaiACQQhqKQMANwIACyACQRBqJAALiQECAn4BfyABIAEoAjhBBGo2AjggASABKQMwIACtIgMgASgCPCIAQQN0QThxrYaEIgI3AzAgAQJ/QQggAGsiBEEETQRAIAEgASkDGCAChTcDGCABEJILIAEpAzAhAiABIAMgBEEDdK2INwMwIAEgAiABKQMAhTcDACAAQQRrDAELIABBBGoLNgI8C4sBAQJ/IwBBEGsiBCQAAkACQAJ/IAEoAgAiA0EBakF+cSADRgRAIAEoAggMAQsgBEEIaiABENQaIAQoAgghAyAEKAIMCyIBQQNPBEAgAywAAkG/f0wNAQwCCyABQQJGDQELIAMgAUECIAEgAhC4JgALIAAgAUECazYCBCAAIANBAmo2AgAgBEEQaiQAC50BAgF/AX4jAEEQayICJAACfwJAAkACQEICIAAoAgAiACkDAEICfSIDIANCAlobp0EBaw4CAQIACyACIABBCGo2AgQgAUGGjtkAQQkgAkEEakGrAxDECgwCCyACIABBCGo2AgggAUGPjtkAQQcgAkEIakGsAxDECgwBCyACIAA2AgwgAUGWjtkAQQUgAkEMakGtAxDECgsgAkEQaiQAC5UBAQR/IAAoAghBOGwhBCAAKAIEIQUDQAJAIAMgBEcEQAJAAkACQCADIAVqIgIoAgBBAWsOAgECAAsgASACQQhqEOAhIAJBKGogARDlKwwDCyABIAJBEGoQtBkgAkEwaiICKAIARQ0CIAIgARC7KwwCCyABIAJBBGoQtCUMAQsgAEEUaiABEM8jDwsgA0E4aiEDDAALAAuaAQEDfyAAKAIIQThsIQMgACgCBCEEQQAhAANAAkAgACADRwRAAkACQAJAIAAgBGoiAigCAEEBaw4CAQIACyACQQhqIAEQ2SEgAkEoaiABENkrDAMLIAJBEGopAwAgAkEgaigCACABEMYUIAJBMGoiAigCAEUNAiACIAEQwisMAgsgAkEEaiABENgtDAELDwsgAEE4aiEADAALAAuYAQEDfyAAKAIIQQxsIQMgACgCBCEAA0AgAwRAAkAgACgCAARAIAAgARCCLQwBCwJAAkACQEEEIAAoAgQiAigCAEEFayIEIARBBk8bQQFrDgUAAQMDAgMLIAJBCGogARCWIiACQShqIAEQgi0MAgsgAkEoaiABEIItDAELIAJBCGogARCWIgsgAEEMaiEAIANBDGshAwwBCwsLmgEBBH8jAEEQayICJAAgAiABKAIUIgMQwRwCQCACKAIARQRAIAIoAgQhBCABQQxqIgUoAgAgA0YEQCAFENAWCyAAIAQ2AgQgAEEDNgIAIAEgA0EBajYCFCABKAIQIANBCWxqIgBCADcAACAAQQhqQQA6AAAMAQsgACACKQMINwMQIABC/v///wc3AwggAEEANgIACyACQRBqJAALiQEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEHQreAAQQEgASgCGCgCDBEDACEEIAJBADoACSACIAQ6AAggAiABNgIEQQJ0IQEDQCABBEAgAiADNgIMIAJBBGogAkEMakEcEPkHIAFBBGshASADQQRqIQMMAQsLIAJBBGoQwhwgAkEQaiQAC4kBAQN/IwBBEGsiAiQAIAAoAgQhAyAAKAIIIAEoAhRB0K3gAEEBIAEoAhgoAgwRAwAhBCACQQA6AAkgAiAEOgAIIAIgATYCBEECdCEBA0AgAQRAIAIgAzYCDCACQQRqIAJBDGpBKhD5ByABQQRrIQEgA0EEaiEDDAELCyACQQRqEMIcIAJBEGokAAuJAQEDfyMAQRBrIgIkACAAKAIEIQMgACgCCCABKAIUQdCt4ABBASABKAIYKAIMEQMAIQQgAkEAOgAJIAIgBDoACCACIAE2AgRBDGwhAQNAIAEEQCACIAM2AgwgAkEEaiACQQxqQSsQ+QcgAUEMayEBIANBDGohAwwBCwsgAkEEahDCHCACQRBqJAALiQEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEHQreAAQQEgASgCGCgCDBEDACEEIAJBADoACSACIAQ6AAggAiABNgIEQQxsIQEDQCABBEAgAiADNgIMIAJBBGogAkEMakEsEPkHIAFBDGshASADQQxqIQMMAQsLIAJBBGoQwhwgAkEQaiQAC4cBAQV/IwBBgAFrIgQkAEH/ACECA0AgBCACIgNqIgUgAEEPcSICQTByIAJBN2ogAkEKSRs6AAAgA0EBayECIABB/wFxIgZBBHYhACAGQRBPDQALIANBgQFPBEAgA0GAAUG488AAEJwQAAsgAUEBQYyx4ABBAiAFQYABIANrEIIEIARBgAFqJAALhAEBAn8gA0H4////AXEEQCAAIAAgA0EDdiIDQQR0IgRqIAAgA0EcbCIFaiADEI0NIQAgASABIARqIAEgBWogAxCNDSEBIAIgAiAEaiACIAVqIAMQjQ0hAgsgACACIAEgACgCACIAIAEoAgAiAUkiAyABIAIoAgAiAklzGyADIAAgAklzGwugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQZT8wQA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEJkXRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB3LXgAEE3IAJBP2pBrPzBAEHgtuAAEMAOAAugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQZT8wQA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEI0ZRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB3LXgAEE3IAJBP2pBrPzBAEHgtuAAEMAOAAugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQcD9wQA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEJkXRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB3LXgAEE3IAJBP2pB2P3BAEHgtuAAEMAOAAuGAQECfyADQfj///8BcQRAIAAgACADQQN2IgNB4ABsIgRqIAAgA0GoAWwiBWogAxCRDSEAIAEgASAEaiABIAVqIAMQkQ0hASACIAIgBGogAiAFaiADEJENIQILIAAgAiABIAAoAgwiACABKAIMIgFJIgMgASACKAIMIgJJcxsgAyAAIAJJcxsLigEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEHQreAA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+QcgAUEMayEBIANBDGohAwwBCwsgAkEEahDCHCACQRBqJAALigEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEHQreAAQQEgASgCGCgCDBEDACEEIAJBADoACSACIAQ6AAggAiABNgIEQQR0IQEDQCABBEAgAiADNgIMIAJBBGogAkEMakGjAhD5ByABQRBrIQEgA0EQaiEDDAELCyACQQRqEMIcIAJBEGokAAuKAQEDfyMAQRBrIgIkACAAKAIEIQMgACgCCCABKAIUQdCt4ABBASABKAIYKAIMEQMAIQQgAkEAOgAJIAIgBDoACCACIAE2AgRBA3QhAQNAIAEEQCACIAM2AgwgAkEEaiACQQxqQaUCEPkHIAFBCGshASADQQhqIQMMAQsLIAJBBGoQwhwgAkEQaiQAC5ABAQZ/IwBBEGsiAiQAIAEoAgQhByACQQhqIAEoAggiBEEEQQQQ5xQgAigCCCIFIARB/////wNxIgEgASAFSxshA0EAIQEgAigCDCEGA0AgAwRAIAEgBmogASAHahDZGTYCACADQQFrIQMgAUEEaiEBDAELCyAAIAQ2AgggACAGNgIEIAAgBTYCACACQRBqJAALkAEBBn8jAEEQayICJAAgASgCBCEHIAJBCGogASgCCCIEQQRBBBDnFCACKAIIIgUgBEH/////A3EiASABIAVLGyEDQQAhASACKAIMIQYDQCADBEAgASAGaiABIAdqENgcNgIAIANBAWshAyABQQRqIQEMAQsLIAAgBDYCCCAAIAY2AgQgACAFNgIAIAJBEGokAAuoAQECfyABKALAASABKALEARDcHCIDQYCAxABHBEAgAUHAAWoiBBCcFQJ/QQAgA0ENRw0AGkENIQNBACABKALAASABKALEARDcHEEKRw0AGiAEEJwVQQFBAiACGyEDQfLm4ABB8ObgACACGwshAiAAIAM2AgggACACNgIEIABBADYCACABIAEoAtABNgKkASABIAEoAqABQQFqNgKgAQ8LQZTi2AAQvCkAC4oBAQN/IwBBEGsiAiQAIAAoAgQhAyAAKAIIIAEoAhRB0K3gAEEBIAEoAhgoAgwRAwAhBCACQQA6AAkgAiAEOgAIIAIgATYCBEEEdCEBA0AgAQRAIAIgAzYCDCACQQRqIAJBDGpBlAMQ+QcgAUEQayEBIANBEGohAwwB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IAAoAjwiAkEDdCIDQThxrYaEIgQ3AzACQCACQQhNBEAgACAAKQMYIASFNwMYIAAQkgsgACkDMCEEIAAgAUHAACADa62IQgAgAhs3AzAgACAEIAApAwCFNwMADAELIAJBCGohAgsgACACNgI8C3QBBX8gAEH/AXEiBUENRiICIAFB/wFxIgYiA0ENRnEhBAJAIAIgA0ENRnINAEEAIQRBAyAAQQJrIgIgAkH/AXFBC08bQf8BcSICQQMgAUECayIDIANB/wFxQQtPG0H/AXFHDQAgBSAGRiACQQNHciEECyAEC48BAQN/IAAoAghBOGwhAyAAKAIEIQRBACEAA0ACQCAAIANHBEACQAJAAkAgACAEaiICKAIAQQFrDgIBAgALIAEgAkEIahDTISACQShqIAEQvisMAwsgAkEQaiABEMgtIAJBMGoiAigCAEUNAiACIAEQvSsMAgsgAkEEaiABENstDAELDwsgAEE4aiEADAALAAuPAQEDfyAAKAIIQThsIQMgACgCBCEEQQAhAANAAkAgACADRwRAAkACQAJAIAAgBGoiAigCAEEBaw4CAQIACyABIAJBCGoQ1iEgAkEoaiABENYrDAMLIAJBEGogARDgKCACQTBqIgIoAgBFDQIgAiABEMErDAILIAJBBGogARDXLQwBCw8LIABBOGohAAwACwALkwEBA38gACgCCEEobCECIAAoAgQhA0EAIQADQAJAIAAgAkcEQAJAAkACQAJAAkAgACADaiIBKAIAQQFrDgQBAgMEAAsgAUEYakIANwIADAULIAFBBGoQwB8MBAsgAUEIakIANwIAIAFBBGoQxi0MAwsgAUEEahDVLQwCCyABQQRqELIgDAELDwsgAEEoaiEADAALAAuDAQECfyMAQRBrIgYkACABLQAAIQcgBkEIaiACIAMgBCAFQfyTwAAQ0xYgBiAHIAYoAgggBigCDBCgBkEAIQUgACAGKAIAQQFxBH8gACAEIAYoAgQgBGoiAiABLQABayIBQQAgASACTRsiASABIARJGzYCBEECBSAFCzYCACAGQRBqJAALfQEDfyAAKAIAIQEgACgCBCICKAIIIQAgAigCACIDBEAgASAAQQFrQXhxakEIaiADEQEACwJAIAFBf0YNACABIAEoAgQiA0EBazYCBCADQQFHDQBBBCAAIABBBE0bIgAgAigCBGpBB2pBACAAa3EiAkUNACABIAIgABC9EQsLfAACQAJAIAMgBEsNAAJAIANFDQAgAiADSwRAIAEgA2osAABBv39KDQEMAgsgAiADRw0BCyAERQ0BIAIgBEsEQCABIARqLAAAQb9/TA0BDAILIAIgBEYNAQsgASACIAMgBCAFELgmAAsgACAEIANrNgIEIAAgASADajYCAAuVAQECfyAAKAIAIgFBxAJqIgIoAgAgAUHIAmooAgAQww4gASgCwAIgAigCABDLKSABKALMAiABQdACaigCABC7KSABKAK8AiICIAIoAgAiAkEBazYCACACQQFGBEAgAUG8AmoQqxQLAkAgACgCACIAQX9GDQAgACAAKAIEIgFBAWs2AgQgAUEBRw0AIABB4AJBCBC9EQsLiAEBAn8jAEEQayIGJAAgBkEIaiACIAMgBCAFQfi2wwAQ0xZBACECIAYoAgwhAyAGKAIIIQdBACEFAkADQCADIAVGDQEgASAFIAdqLQAAai0AAEUEQCAFQQFqIQUMAQsLIAAgBCAFaiIBNgIEQQEhAiAAIAFBAWo2AggLIAAgAjYCACAGQRBqJAALhAEBA38jAEEQayICJAACQCADKAIQIgUgAygCFCIGTQRAIAMoAgBBAWtBAk8EQCACQQRqIgQgASADKAIIIAMoAgwgBSAGEIUHIAAgBBDcGwwCCyACQQRqIgQgASADKAIIIAMoAgwgBSAGEJsLIAAgBBDcGwwBCyAAQQA2AgALIAJBEGokAAuEAQEDfyMAQRBrIgIkAAJAIAMoAhAiBSADKAIUIgZNBEAgAygCAEEBa0ECTwRAIAJBBGoiBCABIAMoAgggAygCDCAFIAYQ9wsgACAEENwbDAILIAJBBGoiBCABIAMoAgggAygCDCAFIAYQpRAgACAEENwbDAELIABBADYCAAsgAkEQaiQAC5sBAQN/IAAQrgMCQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgYDBAUABgsgAEEEahC9JgwFCyAAKAIEIAAoAggQwSQMBAsgAEEEahCUHgwDCyAAQQxqEMQkDAILIABBBGoCQCAAKAIMIgJFDQAgACgCECIDRQ0AIAIgA0EBEL0RCxDEJAwBCyAAQQRqEL0mCyAAKAIYQTRBBBC9EQuNAQEDfyMAQRBrIgIkAAJAAn8CQAJAAkAgASgCCA4CAgEAC0EkEM0gIgQgAUEkEPYGGkELIQMMAwsgAkEIaiABENgVIAIoAggiA0EMRwRAIAIoAgwMAgtB4MTHABC8KQALIAIgAUEMahCQGCACKAIECyEEIAEQviYLIAAgBDYCBCAAIAM2AgAgAkEQaiQAC5sBAQN/IAAQrgMCQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgYDBAUABgsgAEEEahC9JgwFCyAAKAIEIAAoAggQwSQMBAsgAEEEahCUHgwDCyAAQQxqEK0oDAILIABBBGoCQCAAKAIMIgJFDQAgACgCECIDRQ0AIAIgA0EBEL0RCxCtKAwBCyAAQQRqEL0mCyAAKAIYQTRBBBC9EQuAAQEBfyABQS1BKyAAQQBIGzoAACAAIABBH3UiAnMgAmsiAEHjAEwEQCAAQQlMBEAgASAAQTBqOgABQQIPCyABIABBAXRB8I3YAGovAAA7AAFBAw8LIAEgAEHkAG4iAkEwajoAASABIAAgAkHkAGxrQQF0QfCN2ABqLwAAOwACQQQLiQEBA38jAEEQayICJAAgAiABKAIANgIIIAIgASgCBCIDNgIAIAIgAzYCBCABKAIIIgQgACgCACAAKAIIIgFrSwRAIAAgASAEQQhBGBCtFyAAKAIIIQELIAAoAgQgAUEYbGogAyAEQRhsEPYGGiAAIAEgBGo2AgggAiADNgIMIAIQ7xYgAkEQaiQAC4kBAQR/IAAoAghBOGwhAyAAKAIEIQQDQAJAIAIgA0cEQAJAAkACQCACIARqIgEoAgBBAWsOAgECAAsgAUEIahD5IiABQShqEOAtDAMLIAFBEGoQxiUgAUEwaiIBKAIARQ0CIAEQ3y0MAgsgAUEEahD4KAwBCyAAQRRqEOYlDwsgAkE4aiECDAALAAt/AAJAAkAgAyAESw0AAkAgA0UNACACIANLBEAgASADaiwAAEG/f0oNAQwCCyACIANHDQELIARFDQEgAiAESwRAIAEgBGosAABBv39MDQEMAgsgAiAERg0BCyABIAIgAyAEQbTR3wAQuCYACyAAIAQgA2s2AgQgACABIANqNgIAC6EBAQF/IAAoAgwiASAAKAIQEKseIAAoAgggARDPKSAAKAIUIAAoAhgQ9BYCQCAAKAKAAUUNACAAKAKEAQRAIABBhAFqELgUCyAAKAKIAUUNACAAQYgBahC5FAsgAEGUAWoQpiAgACgC3AIQ7BMgACgC4AIQ7BMgACgC5AIQvRcgACgC6AIQ0xggACgCoAMQoRQgAEEoahCUJiAAQdAAahCUJgt/AQF/IwBBIGsiAyQAIANBEGogACABEIggIAMgAykDEDcCGCACQQFqIQECQAJAA0AgAUEBayIBBEAgA0EIaiADQRhqEJ8RIAMoAghBAUYNAQwCCwsgAyADQRhqEJ8RIAMoAgBBAXENAQtByJHEABC8KQALIAMoAgQgA0EgaiQAC4UBAQN/IwBBEGsiAiQAIAAoAgAhA0EAIQAgASgCFEHQreAAQQEgASgCGCgCDBEDACEEIAJBADoACSACIAQ6AAggAiABNgIEA0AgAEGAAkZFBEAgAiAAIANqNgIMIAJBBGogAkEMakGPARD5ByAAQQFqIQAMAQsLIAJBBGoQwhwgAkEQaiQAC3ACAX8BfkEEIQMCfiACQQRJBEBBACEDQgAMAQsgACABajUAAAshBCACIANBAXJLBEAgACADaiABajMAACADQQN0rYYgBIQhBCADQQJyIQMLIAIgA0sEfiAAIAEgA2pqMQAAIANBA3SthiAEhAUgBAsLigEBAn8jAEEQayICJAAgAkEEaiAAIAEQzwMgAigCBCEDQTRBBBCMICIAQgA3AhQgAEEBNgIQIAAgATYCDCAAQQE2AgggACABNgIEIABBATYCACAAQYECOwAxIAAgA0EBczoAMCAAQRxqQgA3AgAgAEEkakIANwIAIABBLGpBADYCACACQRBqJAAgAAuFAQECfwJ/AkACQAJAIAJFBEAgAQ0BQQAMBAsgAkEBayIDIAFPDQEgACADai0AAEGI+cMAai0AACEEQQAhAyABIAJNDQIgACACai0AAEGI+cMAai0AACEDDAILIAAtAABBiPnDAGotAAAMAgsgAyABQcz1wwAQmxAACyAEQQFzIANxC0EBcQtzAQF/AkAgBCAFTQ0AIAJBA3QhBCABQQVqIQIgAyAFai0AACEBA0AgAiEFIARFDQEgBUEBay0AACABSw0BIARBCGshBCAFQQhqIQIgBS0AACABSQ0ACyAFQQVrKAIAIQVBASEGCyAAIAU2AgQgACAGNgIAC38BBH8jAEEgayICJAAgAkEUaiIDQgQ3AgAgAkEMaiIEQgA3AgAgAkEcaiIFQQA2AgAgAkKAgICAwAA3AgQgAkEEaiABEKYQIABBGGogBSgCADYCACAAQRBqIAMpAgA3AgAgAEEIaiAEKQIANwIAIAAgAikCBDcCACACQSBqJAALhQEBA38jAEEQayIFJAAgACACKAJ4IAIoAnwgASAEQf8BcSIHakHYAmotAAAgA0H///8/cWpBmP7DABCZHygCACIEQQBIBH8gBSACNgIMIAUgATYCCCAFIAVBCGogAyAHQQh0EHggBSgCACEGIAUoAgQFIAQLNgIEIAAgBjYCACAFQRBqJAALiAEBAn8jAEEQayIEJAACQAJAIAAoAvgEKALUAkEBRg0AIAAgASACEOAeIgAoAgBBCGoiASAAKAIEIgAQ3R5FDQAgBEEIaiADQQJ0QQ1qIAEgAEHs1sMAEPEcIAQoAgwiAEEDTQ0BIAQoAggoAAAhBQsgBEEQaiQAIAUPC0EEIABByJnDABCdEAALggEBAX8jAEEwayICJAAgAiAAKAIAKAIAIgA2AiggAkEDNgIEIAJBvO3AADYCACACQgI3AgwgAiACQSxqrUKAgICAkB+ENwMgIAIgAkEoaq1CgICAgKAfhDcDGCACIABoNgIsIAIgAkEYajYCCCABKAIUIAEoAhggAhCMBCACQTBqJAALjgEBA38jAEEQayIEJAACQCACQQBOBEAgBCACEPkOIAQoAgAhAyAEKAIEIgUEQEHAjeQALQAAGiAFIAMQpSEhAwsgAw0BAAtB9OHgAEErIARBD2pB9JjYAEGEmdgAEMAOAAsgA0KBgICAEDcCACADQQhqIAEgAhD2BhogACACNgIEIAAgAzYCACAEQRBqJAALnQIBBH8gACgCdCAAKAJ4ELspIAAoAoABIAAoAoQBELspIAAoApABIgQhASAAKAKUASECA0AgAgRAIAEoAgAiAyADKAIAIgNBAWs2AgAgA0EBRgRAIAEQ4RcLIAJBAWshAiABQQhqIQEMAQsLIAAoAowBIAQQyikjAEEQayIBJAAgACgCBCICBEAgABDGDCABQQRqQQxBCCACQQFqEOYNIAAoAgAgASgCDGsgASgCBCABKAIIEJskCyABQRBqJAAgAEEwahDjIiAAQcwAahDjIiAAKAKYASAAKAKcARC7KSAAKAKkASAAKAKoARC4KQJAIAAoAiBBAUcNACAAKAIoIgEgASgCACIBQQFrNgIAIAFBAUcNACAAQShqEOEXCwuOAQECfwJAAkACQAJAAkACQEEHIAAoAgBBDGsiAiACQSZPG0EIaw4bAAQDAwMDAQMDAwMDAwMDBQMDAwMDBQMFBQUFAwsgACgCKCgCACICQRRGDQEgAkEwRg0CDAMLIAFFDQIgAEEIahCIHEEBcw8LIABBKGogARCYDiEDCyADDwtBAQ8LIABBBGogARCYDgt+AQR/QQchBQJ/IAAoAiAiAkEHTQRAIABBIGohAyAAQQRqIQQgAgwBCyAAQQRqIQMgACgCCCEEIAIhBSAAKAIECyECIAIgBUYEfyAAEIIQIABBBGohAyAAKAIIIQQgACgCBAUgAgtBAnQgBGogATYCACADIAMoAgBBAWo2AgALkAEBAX8jAEEQayICJAACfwJAAkACQCAAKAIAIgAoAgBBAWsOAgECAAsgAiAAQQhqNgIEIAFBypbaAEEIIAJBBGpBrwMQxAoMAgsgAiAAQQhqNgIIIAFB1KbgAEEGIAJBCGpBsAMQxAoMAQsgAiAAQQRqNgIMIAFByqbgAEEEIAJBDGpBvAIQxAoLIAJBEGokAAuIAQIBfwN+IwBBIGsiAiQAIAIgAUEAEL0BAkAgAikDACIEQgJSBEAgAikDECEFIAIpAwghA0EdIQEgBKdBAXEEQCACIAM+AhggAikDGCEDQR4hAQsgACADNwMQIAAgBTcDCCAAIAE2AgAMAQsgAigCCCEBIABBJjYCACAAIAE2AgQLIAJBIGokAAuQAQEBfyMAQRBrIgIkAAJ/AkACQAJAIAAoAgAiACgCAEEBaw4CAQIACyACIABBCGo2AgQgAUHApuAAQQUgAkEEakHbAxDECgwCCyACIABBCGo2AgggAUGgltoAQQsgAkEIakHpAhDECgwBCyACIABBBGo2AgwgAUGhj9oAQQggAkEMakH0AxDECgsgAkEQaiQAC5ABAQF/IwBBEGsiAiQAAn8CQAJAAkAgACgCACIAKAIAQQFrDgIBAgALIAIgAEEIajYCBCABQdyz3wBBBSACQQRqQdkCEMQKDAILIAIgAEEIajYCCCABQeGz3wBBAiACQQhqQckCEMQKDAELIAIgAEEEajYCDCABQcSq2QBBDyACQQxqQd8EEMQKCyACQRBqJAALdgACQAJAAkACQAJAAkACQAJAAkAgACgCAA4KAAECAwQICAUIBgcLIABBCGoQzycPCyAAQQhqEKYcDwsgAEEIahCQIQ8LIABBBGoQ9SgPCyAAQQRqEPMYDwsgAEEEahD1KA8LIABBBGoQlSoLDwsgAEEEahD8KAt2AAJAAkACQAJAAkACQAJAAkACQCAAKAIADgoAAQIDBAgIBQgGBwsgAEEIahDmJw8LIABBCGoQrBwPCyAAQQhqEJYhDwsgAEEEahCLKQ8LIABBBGoQ+BgPCyAAQQRqEIspDwsgAEEEahCaKgsPCyAAQQRqEI0pC4kBAQF/IwBBMGsiAiQAAn9BASABKAIUQSIgASgCGCgCEBECAA0AGiACIAE2AgwgAkEBNgIUIAJBqO7gADYCECACQgE3AhwgAkEINgIsIAIgADYCKCACIAJBKGo2AhhBASACQQxqIAJBEGoQ3CQNABogASgCFEEiIAEoAhgoAhARAgALIAJBMGokAAuHAQEDfyMAQRBrIgIkAAJAAkAgAUEATgRAIAFFBEAgAEKAgICAEDcCBAwCC0EBIQMgAkEIakEBIAEQkh4gAigCCCIEBEAgACAENgIIIAAgATYCBAwCCyAAIAE2AgggAEEBNgIEDAILIABBADYCBEEBIQMMAQtBACEDCyAAIAM2AgAgAkEQaiQAC3kBAX8CQAJ/QQAgAUEMaigCACIEIAFBEGooAgAiASACEJ4bIANNDQAaIANFBEAgAkEBdCECQQEMAQsgASACTQ0BIAQgAkEDdGooAgAgA0EBdGpBAmshAkEBCyEBIAAgAjYCBCAAIAE2AgAPCyACIAFBoNTDABCbEAALnQEBA38DQEEBIQMCQAJAAkACQAJAAkACQEEHIAAoAgAiAigCAEEMayIAIABBJk8bQQhrDhsAAQUFBQUCBQUFBQUFBQUGBQUFBQUGBQYGBgYFCyACQShqIQAgAigCKCgCACICQRRGDQYgAkEwRw0CQQAhAwsgAw8LIAENAQtBAQ8LIAJBCGoQiBxBAXMhBAsgBA8LIAJBBGohAAwACwALfAEFfyAAKAIAIgMgACgCBCIGIAEQxhAiBSADaiIELQAAIQcgBCABp0EZdiIEOgAAIAMgBiAFQQhrcWpBCGogBDoAACAAIAAoAgxBAWo2AgwgACAAKAIIIAdBAXFrNgIIIAMgBUEDdGsiAEEEa0EBNgIAIABBCGsgAjYCAAuJAQECfyMAQTBrIgIkAAJAAkACQAJAAkAgASgCMEUEQCACQRM2AgAMAQsgAiABQTBqIgMQywMgAigCAEETRw0BIAMQwycgA0EANgIACyABKAIAQRRHDQEgACEBDAILIAAgAkEwEPYGGgwCCyAAIAFBMBD2BhoLIAFBEzYCACACEMQlCyACQTBqJAALkAEBAn8CQAJAAkACQEEEIAAoAgAiAkELayIBIAFBBk8bQQJrDgMCAAEDCyAAQQRqEOweDAILQRAhAQJAAkBBBiACQQJrIgIgAkEJTxtBAmsOBQMDAwMBAAtBBCEBCyAAIAFqIgEoAgAgAUEEaigCABCnJAwBCyAAQQRqEOweIABBDGoQ7B4LIABByABBBBC9EQuKAQEBfyMAQTBrIgIkAAJ/QQEgASgCFEEiIAEoAhgoAhARAgANABogAiABNgIMIAJBATYCFCACQaju4AA2AhAgAkIBNwIcIAJByAA2AiwgAiAANgIoIAIgAkEoajYCGEEBIAJBDGogAkEQahDcJA0AGiABKAIUQSIgASgCGCgCEBECAAsgAkEwaiQAC3ECAX8BfgJAAkAgAa1CDH4iA0IgiFAEQCADpyICQXhLDQIgASACQQdqQXhxIgJqQQhqIgEgAkkNASABQfj///8HTQRAIAAgAjYCCCAAIAE2AgQgAEEINgIADwsMAgsMAQsgAEEANgIADwsgAEEANgIAC30BA38jAEGAAmsiAiQAIAJBAEGAAhCFCyEEQQAhAgJAA0ACQCADIARqIAI6AAAgA0H/AUYNACABIAMQxRUEQCACQf8BcUEBaiICQf8BcSACRw0DCyADQQFqIQMMAQsLIAAgBEGAAhD2BhogBEGAAmokAA8LQYCswAAQvCkAC4QBAQJ/IwBBIGsiAyQAIANBFGoiBCABIAIQvRAgA0EIaiAEEK0VAkAgAygCEARAIAAgAykCCDcCACAAQQI6AAwgAEEIaiADQRBqKAIANgIADAELIABBCGpBrP/BACkCADcCACAAQaT/wQApAgA3AgAgAygCCCADKAIMELspCyADQSBqJAALigEBA38gAEG5893xeWwhAwJAA0BBnILkACgCACIARQRAEIsVIQALIANBACAAKAIIa3YiASAAKAIEIgJPDQEgACgCACABQQZ0aiIBIAEoAgAiAkEBIAIbNgIAIAIEQCABEMAQCyAAQZyC5AAoAgBHBEAgARDUHQwBCwsgAQ8LIAEgAkGY9MIAEJsQAAt8AQN/IAIgAWtBAnYiBSAAKAIAIAAoAggiA2tLBEAgACADIAVBBEEMEJEXIAAoAgghAwsgACgCBCADQQxsaiEEIAMgBWohAwNAIAEgAkZFBEAgBEEANgIAIARBBGogAkEEayICKAIANgIAIARBDGohBAwBCwsgACADNgIIC30BA38jAEGAAmsiAiQAIAJBAEGAAhCFCyEEQQAhAgJAA0ACQCADIARqIAI6AAAgA0H/AUYNACABIAMQxRUEQCACQf8BcUEBaiICQf8BcSACRw0DCyADQQFqIQMMAQsLIAAgBEGAAhD2BhogBEGAAmokAA8LQcylwwAQvCkAC4QBAQR/IwBBEGsiBCQAIAIoAnggAigCfCABLQDXBCIHIANB////P3FqQQFqQaj+wwAQmR8oAgAiBkEASARAIAQgAjYCDCAEIAE2AgggBCAEQQhqIAMgB0EQdEGBgARqEHggBCgCBCEGIAQoAgAhBQsgACAGNgIEIAAgBTYCACAEQRBqJAALewIBfwJ+IAACfyABKAIAQQVGBEAgASgCBAwBCyABKQIAIgVCIIghBAJAAkACQEECIAWnIgFBA2siAyADQQJPG0EBaw4CAQIAC0EBIQMgAhDUHAwCC0EBIQMgBKcgAhDMGgwBC0EBIQMgASAEpxDDGgs2AgQgACADNgIAC4ABAQR/AkAgASgCAEGAgICAeEYNACABKAIIIgJFBEAMAQtBASEEIAEoAgQiAygCCCEBIAJBAUYNACADQRhqIQMgAkEBa0H/////AHEhAgNAIAEgAygCACIFIAEgBUkbIQEgA0EQaiEDIAJBAWsiAg0ACwsgACABNgIEIAAgBDYCAAufAQAjAEEgayIBJABBqPDjACgCAEECRwRAIAFBqPDjADYCCCABQazw4wA2AgwgASABQR9qNgIYIAEgAUEMajYCFCABIAFBCGo2AhBBqPDjACABQRBqQYDA2AAQ6gQLAkBBrPDjACgCAEGAgICAeEYEQCAAQYCAgIB4NgIADAELIABBsPDjACgCAEG08OMAKAIAIAIgAxDTBwsgAUEgaiQAC3wBA38jAEEgayIDJAAgA0EKNgIcIANBEGogA0EcaiIFIAEgAhCcHiADKAIQIgQEQCADKAIUIQEgA0ENNgIcIANBCGogBSAEIAEQnB4gAygCDCABIAMoAggiARshAiABIAQgARshAQsgACACNgIEIAAgATYCACADQSBqJAALfgEEfyMAQSBrIgEkAAJAAkAgACgCACICRQRAQQAhAAwBC0EEQRQQlSgiAEUNASACKAIMIQMgAigCECEEIAFBDGogAhDzAyAAQRBqIAQ2AgAgACABKQIMNwIAIAEgAzYCGCAAQQhqIAFBFGopAgA3AgALIAFBIGokACAADwsAC+UBAQR/QYABIQICfyAAKAKEASIDQYABTQRAIABBhAFqIQQgAEEBaiEFIAMMAQsgAEEEaiEEIAAoAgghBSADIQIgACgCBAsiAyACRgR/IwBBEGsiAiQAIAAoAoQBIgNBgQFPBEAgACgCBCEDCyACQQhqIANBf0cgA0EBahC+FSACKAIIQQFxRQRAQdjB3wBBEUGYl9kAEKESAAsgAiAAIAIoAgwQhwcgAigCACACKAIEEJIgIAJBEGokACAAQQRqIQQgACgCCCEFIAAoAgQFIAMLIAVqIAE6AAAgBCAEKAIAQQFqNgIAC44BAQJ/IwBBEGsiAiQAIAAoAgAiA0EEaiEAAn8CQAJAAkAgAygCAEEBaw4CAQIACyACIAA2AgQgAUHFpuAAQQUgAkEEakG7AhDECgwCCyACIAA2AgggAUHOpuAAQQYgAkEIakG9AhDECgwBCyACIAA2AgwgAUHapuAAQQcgAkEMakG/AhDECgsgAkEQaiQAC30BAX8gAEEIaiEDIAACfiABLQAUQQJGBEAgAyACKQMANwMAIANBEGogAkEQaikDADcDACADQQhqIAJBCGopAwA3AwBCAQwBCyADIAEpAwA3AwAgA0EQaiABQRBqKQMANwMAIANBCGogAUEIaikDADcDACACEJcGQgALNwMAC4cBAQN/IAAoAghBOGwhAiAAKAIEIQNBACEAA0ACQCAAIAJHBEACQAJAAkAgACADaiIBKAIAQQFrDgIBAgALIAFBCGoQ8iIgAUEoahDJLQwDCyABQSBqQQA2AgAgAUEwaiIBKAIARQ0CIAEQxS0MAgsgAUEEahDJLQwBCw8LIABBOGohAAwACwALeQECfyABLQAZIQMCQCAALQAlRQRAIANFQQF0IQIMAQtBAiECIANBAWtB/wFxQQFLDQAPCyAALQAkIQMgACACOgAkIAEoAghBOGwhAiABKAIEIQEDQCACBEAgACABEJoKIAJBOGshAiABQThqIQEMAQsLIAAgAzoAJAuAAQEBfyMAQRBrIgIkAAJAAkAgAC0AJkUEQCAAQRBqIAEQ+QlFDQEgACABEPkJRQ0CDAELIAJBCGogACgCICABQQEQ3wYgAigCCEEBcQRAIABBEGogARD5CQ0CCyAAIAEpAwAQ2hoQtwkLIAAoAiAgASAALQAkEOoVCyACQRBqJAALhAEBA38jAEEgayICJAAgAkEANgIQIAJBCGogASACQRBqENkJIAIoAgghAyACQRRqIAIoAgwiAUEBQQEQnwsgAigCGCEEIAIoAhRBAUYEQCAEIAIoAhwQvikACyACKAIcIAMgARD2BiEDIAAgATYCCCAAIAM2AgQgACAENgIAIAJBIGokAAt2AQN/IAAoAgAhASAAKAIEIgMoAgghACADKAIAIgIEQCABIABBAWtBeHFqQQhqIAIRAQALAkAgAUF/Rg0AIAEgASgCBCICQQFrNgIEIAJBAUcNACABQQQgACAAQQRNGyIAIAAgAygCBGpBB2pBACAAa3EQmyQLC3sBBX8jAEEQayIFJAAgBUEEaiIGIAIgBGpBAWoQ/BEgBSgCBCEHIAUoAggiCCAFKAIMIgkgASACIAMgBBBmIAVBDGoiASAJNgIAIAUgCDYCCCAFIAc2AgQgBhDGCiAAQQhqIAEoAgA2AgAgACAFKQIENwIAIAVBEGokAAuJAQECfyMAQRBrIgIkACAAKAIAIQAgASgCFEGUrcQAQQ8gASgCGCgCDBEDACEDIAJBADoACSACIAM6AAggAiABNgIEIAIgAC0AADoADiACQQRqQfmsxABBBSACQQ5qQeIBEO4GIAIgAC0AAToAD0H+rMQAQQMgAkEPakHiARDuBhCaECACQRBqJAALewECfyMAQSBrIgQkACAAAn8CQCABELITIgVFBEAgAS0A+AFBAkcNASABLQCfAkUNASAEQYEBOgAIIAEgAiAEQQhqELQjDAELIAAgBTYCBEEBDAELIARBFToACCABIAIgBEEIahDKKCAAIAM5AwhBAAs2AgAgBEEgaiQAC4QBAQN/IwBBIGsiAyQAAkAgASgCwAEiAiABKALEAUYEQCAAQSU2AgAMAQsgAi0AACIEQQJ0QbD12ABqKAIAIgIEQCAAIAEgAhEAAAwBCyABKALQASECIAFBwAFqQQEQyyggA0EhOgAIIAMgBDYCDCAAIAIgAiADQQhqEMMhCyADQSBqJAALdAECfwJAIABBBWtB/wFxIgFBAWpBACABQSJJGyIBQR5LDQACQEEBIAF0QeLV6Y8EcUUEQCABRQ0BIAFBEkcNAgtBASECDAELIABB/wFxDQAgAEEIdkH/AXEiAEEjTw0AQsXDgqL+ACAArYinIQILIAJBAXELhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgASACQQhqENghIAJBKGogARDTKwwDCyACQTBqIgIoAgBFDQIgAiABEMArDAILIAJBBGogARDZLQwBCw8LIABBOGohAAwACwALhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABENohIAJBKGogARDHKwwDCyACQTBqIgIoAgBFDQIgAiABELwrDAILIAJBBGogARDcLQwBCw8LIABBOGohAAwACwALhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABEPshIAJBKGogARDqLAwDCyACQTBqIgIoAgBFDQIgAiABEOcsDAILIAJBBGogARDoLQwBCw8LIABBOGohAAwACwALhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABEPwhIAJBKGogARDsLAwDCyACQTBqIgIoAgBFDQIgAiABEOYsDAILIAJBBGogARDnLQwBCw8LIABBOGohAAwACwALhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABEP4hIAJBKGogARDuLAwDCyACQTBqIgIoAgBFDQIgAiABEOIsDAILIAJBBGogARDpLQwBCw8LIABBOGohAAwACwALhQEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABEJYiIAJBKGogARCOLQwDCyACQTBqIgIo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AwAgAEEIaiACQRBqKQMANwMADAELIAAgAigCDDYCBCAAQSY2AgALIAJBIGokAAtsAQF/IwBBIGsiAiQAIAJBCGogAUH8ABClBgJAIAIoAghBJUcEQCAAIAIpAwg3AwAgAEEQaiACQRhqKQMANwMAIABBCGogAkEQaikDADcDAAwBCyAAIAIoAgw2AgQgAEEmNgIACyACQSBqJAALcQECfyMAQRBrIgQkACAEQQhqIAIgAyABKAIIIgMQshkgBCgCDCECIAEgBCgCCCIFNgIIIAAgAjYCDCAAIAE2AgggACADIAJrNgIQIAAgASgCBCIBIAJBOGxqNgIEIAAgASAFQThsajYCACAEQRBqJAALcgEBfyMAQdAAayICJAAgAkEIaiABENEYIAJByABqIAJBIGopAwA3AgAgAkFAayACQRhqKQMANwIAIAJBOGogAkEQaikDADcCACAAQQA2AgAgAiACKQMINwIwIABBBGogAkEsakEkEPYGGiACQdAAaiQAC3EBAn8jAEEQayIEJAAgBEEIaiACIAMgASgCCCIDELIZIAQoAgwhAiABIAQoAggiBTYCCCAAIAI2AgwgACABNgIIIAAgAyACazYCECAAIAEoAgQiASACQTBsajYCBCAAIAEgBUEwbGo2AgAgBEEQaiQAC3oBA38jAEEQayIDJAACQAJAAkAgASgCAEEBaw4CAQEACyADQQhqIAFBCGoQshwgAygCCCICIAEoAigQmA8iBCACIARJGyEBIAIgBCACIARLGyECDAELIAEoAgwhAiABKAIIIQELIAAgAjYCBCAAIAE2AgAgA0EQaiQAC3gCAX8BfiMAQRBrIgUkAAJAAkAgBEGAPHFBgDxGBEAgA0UNASAFQQhqIAEgAkEBENEBIAUtAAhBBEYNASAFKQMIIgZC/wGDQgRRDQEgACAGNwIADAILIABBBDoAAAwBC0G54+AAQShBtNbYABDaFwALIAVBEGokAAt9AQF/IwBBEGsiAiQAIAJBBGogASgCBCABKAIIEM8DAkAgAigCBEUEQCAAQYCAgIB4NgIAIAAgASkCADcCBCAAQQxqIAFBCGooAgA2AgAMAQsgACACKQIINwIMIAAgASkCADcCACAAQQhqIAFBCGooAgA2AgALIAJBEGokAAuIAQEBf0EBIQECQAJAAkACQAJAAkACQCAAKAIAQQFr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AkQhASACKAJAIQUgAkH4AGoiByAEIAhBCBDvDwwECyACQe4AOgB4IAMgByACQfgAahC0IwsgBRCcFQwACwALIAlBJTYCACAJIAE2AgQMAwsgAkHoAGogBxC6GyAGIAQQpyRBEBDNICIEQQhqIAJB8ABqKQIANwIAIAQgAikCaDcCACADKALoAUEIaiAFIAEQ5hkhDSACIAQ2AnggAisDeCEQQR4MAQsgBiAEEKckQR0LIQEgCSAQOQMQIAkgDTcDCCAJIAE2AgALIAJBkAFqJAAMAQtBuePgAEEoQYTl2AAQ2hcACwJAIAsoAghBJUcEQCAAIAspAwg3AwAgAEEQaiALQRhqKQMANwMAIABBCGogC0EQaikDADcDAAwBCyAAIAsoAgw2AgQgAEEmNgIACyALQSBqJAALcgEBfyMAQSBrIgIkACABQcABahCcFSACQQhqQRM2AgACQCACKAIIQSVHBEAgACACKQMINwMAIABBEGogAkEYaikDADcDACAAQQhqIAJBEGopAwA3AwAMAQsgACACKAIMNgIEIABBJjYCAAsgAkEgaiQAC9MBAQR/IwBBIGsiAiQAIAJBCGohAyABKALAASABKALEARCJHCEFIAFBwAFqIgQQnBUCQCAFQT9HBEAgA0EXNgIADAELIAQQnBUgASgCwAEgASgCxAEQ3BxBPUcEQCADQRY6AAQgA0EUNgIADAELIAQQnBUgA0EPOgAEIANBFTYCAAsCQCACKAIIQSVHBEAgACACKQMINwMAIABBEGogAkEYaikDADcDACAAQQhqIAJBEGopAwA3AwAMAQsgACACKAIMNgIEIABBJjYCAAsgAkEgaiQAC2oBA38gAUECdCECAkACfyABQf////8DSwRAQQEhAUEIIQNBBAwBC0EAIQFBBCEDIAJB/P///wdLBEBBACECQQEhAQwCCyACIQRBBCECQQgLIABqIAQ2AgALIAAgA2ogAjYCACAAIAE2AgALeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEO4hDAMLIABBBGogARC9KwwCCyAAQQRqIAEQ1ywMAQsgAEEEaiABELUPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQ6iEMAwsgAEEEaiABEMErDAILIABBBGogARDTLAwBCyAAQQRqIAEQtg8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARDrIQwDCyAAQQRqIAEQwCsMAgsgAEEEaiABENQsDAELIABBBGogARC3DwsgAEEoaiEAIAJBKGshAgwBCwsLgAEBAX8jAEEQayICJAACQCAAKAIQDQACQAJAIAEtADlBAWsOAgECAAsgASAAIAEtADgQ6hUMAQsgAkEIaiABIABBABDfBiACKAIIQQFGBEAgACACKAIMEIcENgIQDAELIAAgASgCLBCHBDYCECABIAAgAS0AOBDqFQsgAkEQaiQAC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARDvIQwDCyAAQQRqIAEQuysMAgsgAEEEaiABENksDAELIABBBGogARC5DwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABENEhDAMLIABBBGogARC8KwwCCyAAQQRqIAEQ2CwMAQsgAEEEaiABELoPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQ7CEMAwsgAEEEaiABEMIrDAILIABBBGogARDVLAwBCyAAQQRqIAEQuw8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARDtIQwDCyAAQQRqIAEQvysMAgsgAEEEaiABENYsDAELIABBBGogARC8DwsgAEEoaiEAIAJBKGshAgwBCwsLdgIBfgN/IAAoAhAhAiAAKAIIIQMgACkDACEBA38gAVAEfyAAIAJBQGoiAjYCECAAIANBCGoiBDYCCCAAIAMpAwBCf4VCgIGChIiQoMCAf4MiATcDACAEIQMMAQUgACABQgF9IAGDNwMAIAIgAXqnQfgAcWsLCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQ9SEMAwsgAEEEaiABEN8sDAILIABBBGogARD2LAwBCyAAQQRqIAEQvg8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARD3IQwDCyAAQQRqIAEQ4ywMAgsgAEEEaiABEPUsDAELIABBBGogARC/DwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEPkhDAMLIABBBGogARDnLAwCCyAAQQRqIAEQ8ywMAQsgAEEEaiABEMAPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQ+iEMAwsgAEEEaiABEOYsDAILIABBBGogARD0LAwBCyAAQQRqIAEQwQ8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARD2IQwDCyAAQQRqIAEQ4iwMAgsgAEEEaiABEPcsDAELIABBBGogARDCDwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEJ0iDAMLIABBBGogARCDLQwCCyAAQQRqIAEQii0MAQsgAEEEaiABEMMPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQlSIMAwsgAEEEaiABEIItDAILIABBBGogARCLLQwBCyAAQQRqIAEQxA8LIABBKGohACACQShrIQIMAQsLC3IBAn8jAEEQayICJAACQCABQYABTwRAIAJBADYCDCACIAEgAkEMahDZCSAAIAIoAgAgAigCBBDWHQwBCyAAKAIIIgMgACgCAEYEQCAAEOQWCyAAIANBAWo2AgggACgCBCADaiABOgAACyACQRBqJABBAAteAQJ/AkAgAUUNAAN/IAFBAU0EfyAAIANBKGxqKAIYIgAgAkYNAiADIAAgAklqBSADIAFBAXYiBCADaiIDIAAgA0EobGooAhggAksbIQMgASAEayEBDAELCyEDCyADC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCoIgwDCyAAQQRqIAEQlS0MAgsgAEEEaiABEK4tDAELIABBBGogARDHDwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABELAiDAMLIABBBGogARCgLQwCCyAAQQRqIAEQsC0MAQsgAEEEaiABEMgPCyAAQShqIQAgAkEoayECDAELCwt2AQF/IAAoAghBOGwhAiAAKAIEIQADQAJAIAIEQAJAAkACQCAAKAIAQQFrDgIBAgALIABBCGogARClIiAAQShqIAEQny0MAwsgAEEwaiABEJgmDAILIABBBGogARCfLQwBCw8LIABBOGohACACQThrIQIMAAsAC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCnIgwDCyAAQQRqIAEQmi0MAgsgAEEEaiABELEtDAELIABBBGogARDKDwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEKkiDAMLIABBBGogARCmLQwCCyAAQQRqIAEQry0MAQsgAEEEaiABEMsPCyAAQShqIQAgAkEoayECDAELCwtpAQN/IwBBEGsiAiQAIAIgATYCCAJAQQFBAiABEAAiA0EBRhtBACADGyIDQQJHBEAgACADOgABDAELIAAgAkEIaiACQQ9qQdDBwAAQ+gQ2AgRBASEECyAAIAQ6AAAgARCxJiACQRBqJAALYgEFfyABQTRqIQcgAS8BMiEGA0AgBEEBcSADIAZLckUEQCAHIANBAnRqKAIAIgUgAzsBMCAFIAE2AgAgBEEBIAMgBkkiBRshBCADIAVqIQMMAQsLIAAgAjYCBCAAIAE2AgALZAEBfyMAQSBrIgIkACACQQhqIAFBpANqQQBBABC7BiACKAIIIgFBA0cEQCAAIAIpAgw3AgQgAEEUaiACQRxqKAIANgIAIABBDGogAkEUaikCADcCAAsgACABNgIAIAJBIGokAAtwAQJ/IwBBEGsiBiQAIAEtAAEhByABLQAAIQEgBkEIaiACIAMgBCAFQeiVwAAQ0xYgBiABIAcgBigCCCAGKAIMEOkFQQAhASAAIAYoAgBBAXEEfyAAIAYoAgQgBGo2AgRBAgUgAQs2AgAgBkEQaiQAC3gBAX8jAEEgayIDJAACQCABIAAoAgBNBEAgAyAAIAFBBCACEPkPIAMoAgAiAEGBgICAeEcNASADQSBqJAAPCyADQQA2AhggA0EBNgIMIANBhJfjADYCCCADQgQ3AhAgA0EIakHYl+MAEKEdAAsgACADKAIEEL4pAAt4AQF/IwBBIGsiAiQAAkAgASAAKAIATQRAIAIgACABQQRBBBD5DyACKAIAIgBBgYCAgHhHDQEgAkEgaiQADwsgAkEANgIYIAJBATYCDCACQYSX4wA2AgggAkIENwIQIAJBCGpB2JfjABChHQALIAAgAigCBBC+KQALdQEBfyMAQRBrIgIkACACIAAoAgAiAEEkajYCDCABQdK1wABBCEH4k9oAQQQgAEEoakEuQdq1wABBBSAAQQhqQS9B37XAAEEFIABBFGpBMEHgjcQAQQsgAEEgakEQQeS1wABBEyACQQxqQSEQ/QkgAkEQaiQAC2YBBX4gACAAKQMYIgFCEIkgASAAKQMIfCIBhSICIAApAxAiAyAAKQMAfCIEQiCJfCIFNwMAIAAgAkIViSAFhTcDGCAAIAEgA0INiSAEhSICfCIBIAJCEYmFNwMQIAAgAUIgiTcDCAtwAQJ/IwBBEGsiAiQAAkAgAUGAAU8EQCACQQA2AgwgAiABIAJBDGoQ2QkgACACKAIAIAIoAgQQ0h0MAQsgACgCCCIDIAAoAgBGBEAgABDaFgsgACADQQFqNgIIIAAoAgQgA2ogAToAAAsgAkEQaiQAC2wBA38DQAJAIAEEQCAAKAIAIABBBGooAgAQliQgAEEYaigCACEDIABBHGooAgAiBCgCACICBEAgAyACEQEACyAEKAIEIgJFDQEgAyACIAQoAggQvREMAQsPCyABQQFrIQEgAEEgaiEADAALAAt0AANAIAEEQAJAAkACQAJAIAAoAgBBAmsOBgADAwMBAgMLIABBBGooAgAgAEEIaigCABDKKQwCCyAAQQRqKAIAIABBCGooAgAQuykMAQsgAEEEaigCACAAQQhqKAIAELspCyABQQFrIQEgAEEQaiEADAELCwtxAQJ/AkACQCABIAAoAgAgACgCCCICa0sEQCAAIAIgAUEEQQQQkRcgACgCCCECDAELIAFFDQELIAEgAmohAyAAKAIEIAJBAnRqIQIDQCACQYCAgIB4NgIAIAJBBGohAiABQQFrIgENAAsgACADNgIICwt4AQF/IwBBIGsiBCQAAkAgASAAKAIATQRAIAQgACABIAIgAxD5DyAEKAIAIgBBgYCAgHhHDQEgBEEgaiQADwsgBEEANgIYIARBATYCDCAEQYSX4wA2AgggBEIENwIQIARBCGpB2JfjABChHQALIAAgBCgCBBC+KQALagEDf0EDIQICQCAAIAEtAAwiBEEDRwR/IARBAkcEQCABKAIAIgIgAigCACIDQQFqNgIAIANBAEgNAiABKAIIIQMgASgCBCEBCyAAIAM2AgggACABNgIEIAAgAjYCACAEBSACCzoADA8LAAt5AQJ/QRAhAQJAAkACQEEGIAAoAgAiACgCCEECayICIAJBCU8bQQJrDgUCAgICAQALQQQhAQsgAEEIaiABaiIBKAIAIAFBBGooAgAQpyQLAkAgAEF/Rg0AIAAgACgCBCIBQQFrNgIEIAFBAUcNACAAQdAAQQQQvRELC3kBAX8jAEEQayIDJAAgAyACNgIMIAMgASgCAEEIakHQwtgAENAaIAMoAgQhAQJAIAMoAgAgA0EMahDYCCICRQRAIABBgICAgHg2AgAMAQsgACACQQRqKAIAIAJBCGooAgAQoggLIAEgASgCAEEBazYCACADQRBqJAALeQEBfyMAQRBrIgMkACADIAI2AgwgAyABKAIEQQhqQbDD2AAQ0BogAygCBCEBAkAgAygCACADQQxqENgIIgJFBEAgAEGAgICA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A0ICNwIUIANCgICAgJABIgQgA0EEaq2ENwMoIAMgBCADrYQ3AyAgAyADQSBqNgIQIANBCGogAhChHQALagIBfwF+IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0ECNgIMIANB5PbAADYCCCADQgI3AhQgA0KAgICAkAEiBCADQQRqrYQ3AyggAyAEIAOthDcDICADIANBIGo2AhAgA0EIaiACEKEdAAtqAgF/AX4jAEEwayIDJAAgAyAANgIAIAMgATYCBCADQQI2AgwgA0GY98AANgIIIANCAjcCFCADQoCAgICQASIEIANBBGqthDcDKCADIAQgA62ENwMgIAMgA0EgajYCECADQQhqIAIQoR0AC24BAX8jAEEwayICJAAgAiABNgIEIAIgADYCACACQQM2AgwgAkHsucAANgIIIAJCAjcCFCACIAJBBGqtQoCAgICQAYQ3AyggAiACrUKAgICAkAGENwMgIAIgAkEgajYCECACQQhqQajY4AAQoR0AC2oCAX8BfiMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBAzYCDCADQZi6wAA2AgggA0ICNwIUIANCgICAgJABIgQgA0EEaq2ENwMoIAMgBCADrYQ3AyAgAyADQSBqNgIQIANBCGogAhChHQALagIBfwF+IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EDNgIMIANB6PfAADYCCCADQgI3AhQgA0KAgICAkAEiBCADrYQ3AyggAyAEIANBBGqthDcDICADIANBIGo2AhAgA0EIaiACEKEdAAukAQEDfyAAKAIIIgMgACgCAEYEQCMAQRBrIgIkACACQQhqIAAgACgCAEEBQQRBIBCaCCACKAIIIgRBgYCAgHhHBEAgBCACKAIMEL4pAAsgAkEQaiQACyAAIANBAWo2AgggACgCBCADQQV0aiIAIAEpAgA3AgAgAEEIaiABQQhqKQIANwIAIABBEGogAUEQaikCADcCACAAQRhqIAFBGGopAgA3AgALawECfyMAQRBrIgMkAANAAkAgAyABNgIIIAMgASACIgRqNgIMIAMgA0EIahDYCSADKAIARQRAQQAhBAwBCyADKAIMIAMoAghrIQIgAygCBEEgRg0BCwsgACAENgIEIAAgATYCACADQRBqJAALZQEBfyMAQRBrIgMkACADQQA2AgwgA0KAgICAEDcCBCADQQRqIAIQ2B4gAgRAA0AgA0EEaiABEPcHIAJBAWsiAg0ACwsgACADKQIENwIAIABBCGogA0EMaigCADYCACADQRBqJAALagEDfyMAQRBrIgYkACABKAJAIQcgASgCPCEIIAZBCGogAiADIAQgBUH4ucMAENMWQQAhASAAIAYoAgggBigCDCAIIAcQ0x8EfyAAIAQ2AgQgACAEIAdqNgIIQQEFIAELNgIAIAZBEGokAAtyAQF/IwBBIGsiAiQAIAFBAEgEQCACQQE2AgQgAkHk9sMANgIAIAJCATcCDCACQRA2AhwgAkG89sMANgIYIAIgAkEYajYCCCACQdj3wwAQoR0ACyAAQQA2AhggACABEM0eIABBDGogARDNHiACQSBqJAALbwECfyMAQRBrIgMkACADQQhqIAAoAgQgACgCCCAAKAIAKAJQQbyaxAAQsBQCQCADKAIIIAMoAgwgASACENMfIgRFDQAgASACEN8KIQIDQCACRQ0BIAAQ7wgaIAJBAWshAgwACwALIANBEGokACAEC2ABA38CQCAAKAIAIgIoAggiAyABKAIAIgAoAghHDQAgACgCBCEAIAIoAgQhAiADQQFqIQEDQCABQQFrIgFFIQQgAUUNASACIAAQ4AMgAkEcaiECIABBHGohAA0ACwsgBAtoAQF/IAAoAggiAiAAKAIARgRAIAAQ3xYLIAAgAkEBajYCCCAAKAIEIAJBHGxqIgAgASkCADcCACAAQQhqIAFBCGopAgA3AgAgAEEQaiABQRBqKQIANwIAIABBGGogAUEYaigCADYCAAtcAQR/IwBBEGsiASQAIAFBCGogABDZHwJAIAEoAggiAkUEQAwBCyABKAIMQQR0IQADQCAARSEDIABFDQEgAEEQayEAIAItAAwgAkEQaiECDQALCyABQRBqJAAgAwtsAQF/IAAoAgghASAAKAIEIQADQCABBEACQAJAAkACQCAAKAIADgIBAgALIABBBGoQtSgMAgsgAEEIahCFFiAAQShqEOMkDAELIABBEGoQyyYgAEEwahDRJgsgAUEBayEBIABBOGohAAwBCwsLZAEDfyABKAIAIQIgAUEANgIAAkAgAgRAIAEoAgghAyABKAIEIQIMAQsgASgCDCIEIAEoAhBGDQAgASAEQQFqNgIMIAEgASgCFCICQQFqNgIUIAQhAwsg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AiAENgIAIAAgAygCCCICRSACQQFxRXIEf0EABSAAIAEpAgA3AgggACABKAIQIgA2AgQgASAAQQFqNgIQQQELNgIAIANBEGokAAtZAQN/IwBBEGsiBCQAIAKnIQMDQCAEQQhqIAEgACABIANxIgNqKQAAIAMQqR0gBCgCCEEBRkUEQCAFQQhqIgUgA2ohAwwBCwsgACAEKAIMENsdIARBEGokAAtsAgN/AX4jAEEwayIBJAAgAUEANgIcIAFCgICAgBA3AhQgAUEkaiICIAFBFGoiAxDeHiADIAIQlwwgAUEIaiABKAIYIgIgASgCHBDOGSABKQMIIQQgASgCFCACELgpIAAgBDcDACABQTBqJAALawECfyMAQRBrIgIkACACQQhqIAEQ/Q8gAigCCCEBAkAgAigCDCIDBEAgACABIAMQhA42AhggACADNgIIIAAgATYCBCAAQQE2AgAMAQsgABCsFDYCGCAAQQA2AgAgAUEAEMEkCyACQRBqJAALZQEBfyMAQRBrIgAkAAJ/IAIoAgAEQEH0rdgAIQNBCQwBCyAAQQRqIAIoAgQgAigCCBDPA0H0rdgAIAAoAgggACgCBCICGyEDQQkgACgCDCACGwshAiADIAIgARCgCyAAQRBqJAALagECfwJAAkACQAJAIABBBWtB/wFxIgJBAWpBACACQSJJGyICQQlrDgMBAwEACyACDQIgAEH/AXEOBQECAgIAAgtBASEBDAELIABBgP4DcUEIdiIAQR1LDQBBgYCQgAIgAHYhAQsgAUEBcQtwACAAEKcjAkAgACgCKEUNACAAKAIsBEAgAEEsahC4FAsgACgCMEUNACAAQTBqELkUCyAAQTxqEKYgIAAoAoQCEOwTIAAoAogCEOwTIAAoAowCEL0XIAAoApACENMYIABByAJqEO4kIABB8AJqEO4kC3EBAn8gACgCACEDIABBADYCAEEwQQgQuCIiAkKBgICAEDcDACACIAM2AiggAiABKQMANwMIIAJBEGogAUEIaikDADcDACACQRhqIAFBEGopAwA3AwAgAkEgaiABQRhqKQMANwMAIAAQ9CYgACACNgIAC3IBAX8jAEEQayICJAAgAiAAQThqNgIMIAFBhanZAEERQauW2gBBBCAAQfgEQZPQ4ABBBCAAQTBqQfoAQZap2QBBBSAAQTxqQfkEQZup2QBBDCAA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fyABIAAoAggiAigCACAAKAIQIgQgACgCDCIDaiIFa0sEQCACIAUgAUEIQTAQrRcLIAIoAgQiAiABIANqIgFBMGxqIAIgA0EwbGogBEEwbBC4LRogACABNgIMC28BAX8jAEEgayIAJABBrIHkACgCAEECRwRAIABBpIHkADYCCCAAQaSB5AA2AgwgACAAQR9qNgIYIAAgAEEMajYCFCAAIABBCGo2AhBBrIHkACAAQRBqQYTD3wAQ6gQLQaiB5AAoAgAaIABBIGokAAtrAQJ/IAEoAgAhAiABQQA2AgACQCABLQA8DQAgASgCBCEDIAEoAiggASgCECABKAIUEMwIIAEoAjgEQCABQQA2AjQgASABKAIwQQFqNgIwCyABQQE6ADwgAkUNACABIAMQlAQLIABBBDoAAAtkAQJ/IwBBEGsiAiQAAn8gASgCACIDBEAgAkEIaiADIAEoAgQQyxYgAigCCCEDIAIoAgwMAQsgAiABKAIEEPgJIAIoAgAhAyACKAIECyEBIAAgAzYCACAAIAE2AgQgAkEQaiQAC2wAAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAYFAAsgAEEIaiABKAIUEJ4tDwsgAEEEaiABEIwXDwsgAEEEaiABEKMtDwsgAEEEaiABEK0EDwsgAEEEaiABEKMmDwsgAEEEaiABEKAtCwtWAQF+AkAgA0HAAHFFBEAgA0UNASACQQAgA2tBP3GthiABIANBP3GtIgSIhCEBIAIgBIghAgwBCyACIANBP3GtiCEBQgAhAgsgACABNwMAIAAgAjcDCAthAQN/AkAgASgCBCICBH8gASgCACIDKAIsIgQgAk0NASABIAMoAiggAkEDdGoiASgCBDYCBCABKAIAIQJBAQVBAAshASAAIAI2AgQgACABNgIADwsgAiAEQeyMxAAQmxAAC2cBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCAAQSBqEMgiIABBADYCICACQQhqEJMEIABBMGogASgC+AQoAsgCIgEQphAgAEHMAGogARCmECAAQQA2ArABIABBADYCbCACQRBqJAALYwECfwJAIAEoAhQiAkUEQCABKAIIIQNBACECDAELIAEoAggiAyABKAIQIAJBA3RqQQRrKAIAIgJPDQAgAiADQdyTxAAQnBAACyAAIAMgAms2AgQgACABKAIEIAJBA3RqNgIAC2IBAn8jAEEQayIDJAAgA0EEaiACQQFBARCfCyADKAIIIQQgAygCBEEBRgRAIAQgAygCDBC+KQALIAMoAgwgASACEPYGIQEgACACNgIIIAAgATYCBCAAIAQ2AgAgA0EQaiQAC2EBAX8jAEEgayIBJAAgAUEQahD2HCABQQE2AgwgACABQQxqEOUHNgIYIABBAjYCACAAQRRqIAFBHGooAgA2AgAgAEEMaiABQRRqKQIANwIAIAAgASkCDDcCBCABQSBqJAALYgEBfyMAQRBrIgQkAAJAIAAgASACEN8QIgINACAEQQhqIgEgACgCACIAKAIAEO0pIAEQzhgiAg0AIAMgACgCABC5HyICDQAgBEEEOgAIIARBCGoQzhghAgsgBEEQaiQAIAILYgEBfyMAQRBrIgQkAAJAIAAgASACEN8QIgINACAEQQhqIgEgACgCACIAKAIAEO0pIAEQzhgiAg0AIAMgACgCABCgByICDQAgBEEEOgAIIARBCGoQzhghAgsgBEEQaiQAIAILbQEDfyABKAIoIgIgASgCLCIESwRAQZTA2ABBHkGQwdgAENoXAAsgASgCNCIBKAIQIQMgASgCDCEBIAAgBDYCGCAAIAI2AhQgACADNgIMIAAgATYCCCAAIAE2AgAgACACNgIQIAAgASADajYCBAthAQN/QeCG5AAoAgAiAQRAIAFBIGoiAxDSHyABKAIsIgIgASgCJEYEQCABQSRqEOUWCyABKAIoIAJBAnRqIAA2AgAgASACQQFqNgIsIAMQvh4gAg8LQazQ4ABByAAQ3ioAC2QCBH8BfiMAQeAAayICJAACQCAAKAIAIgFFBEBBACEADAELENkiIQAgASkCBCEFENUiIAJBCGoiBCABKAIAEKcBIARB2AAQ9gYhASAAIAU3AgQgACABNgIACyACQeAAaiQAIAALYwECfyAAKAIEIQEgACgCACECIABChICAgMAANwIAAkAgASACRg0AIAEgAmtBBHYhAQNAIAFFDQEgAigCAEECRwRAIAJBDGoQxQMLIAFBAWshASACQRBqIQIMAAsACyAAELASC2ABAn8jAEEQayICJAACfyABKAIAQQdGBEAgAiABQQRqEO4PIAIoAgAhAyACKAIEDAELIAJBCGogARCMDCACKAIIIQMgAigCDAshASAAIAM2AgAgACAB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AEEkajYCDCABQdPO2ABBDUGM1N8AQQUgAEE8akGdAkGR1N8AQQcgAEGeAkGT0OAAQQQgAEEMakGfAkHgztgAQQsgAkEMakGgAhCxCiACQRBqJAALVwACfyAAQYABTwRAIABBA3ZBP3FBgOrYACAAQQl2Qdjv4ABqIABB/8cMSxstAABBBXRqQYCB4QBqLQAAIABBB3F2QQFxDAELIABBgOnYAGotAAALQQFxC1cAAn8gAEGAAU8EQCAAQQN2QT9xQYDq2AAgAEEJdkHw8uAAaiAAQf+DOEsbLQAAQQV0akGAgeEAai0AACAAQQdxdkEBcQwBCyAAQYDe2ABqLQAAC0EBcQtiAQF/IwBBQGoiAyQAIANBGGogAUEQaikDADcDACADQRBqIAFBCGopAwA3AwAgAyACNgIgIANBDzYCACADIAEpAwA3AwggAxC9KCEBIABBuwE6AAAgACABNgIEIANBQGskAAtyAgN/An4gASABKALkAiICNgKcAyABIAEoAuACIgM2ApgDIAEoAsgCIAFBJTYCyAJBIEcEQEG54+AAQShB0PbfABDaFwALIAEpA9gCIQUgASkD0AIhBiAAIAI2AhQgACADNgIQIAAgBTcDCCAAIAY3AwALWgEBfyMAQUBqIgEkACABQRRqIABBEGopAgA3AgAgAUEMaiAAQQhqKQIANwIAIAFBGDYCACABQRxqIABBGGopAgA3AgAgASAAKQIANwIEIAEQvSggAUFAayQAC1oBAX8jAEFAaiIBJAAgAUEgaiAAQRhqKQMANwMAIAFBGGogAEEQaikDADcDACABQRBqIABBCGopAwA3AwAgAUEbNgIAIAEgACkDADcDCCABEL0oIAFBQGskAAtiAQF/IwBBQGoiAyQAIANBGGogAUEQaikDADcDACADQRBqIAFBCGopAwA3AwAgAyACNgIgIANBHzYCACADIAEpAwA3AwggAxC9KCEBIABBuwE6AAAgACABNgIEIANBQGskAAtkAQF/An8gASgCAEGBgICAeEcEQEEYQQQQjCAiAkEQaiABQRBqKQIANwIAIAJBCGogAUEIaikCADcCACACIAEpAgA3AgBBAAwBCyABKAIEIQJBAQshASAAIAI2AgQgACABNgIAC2cBAX8jAEEQayICJAAgAiAAKAIAIgBBFGo2AgwgAUG5jtoAQQhBk9DgAEEE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AwCENwMAIABBCGoiACAAKQMAIAJBCGopAwCENwMAIAJBEGokAAtfAQF/IwBBEGsiAiQAIAIgAEEUajYCDCABQfCNxABBCUHEjcQAQQggAEEMakEeQbCPxABBByAAQTFBt4/EAEEIIABBEGpBEEG/j8QAQQkgAkEMakEhELEKIAJBEGokAAtbAQF/IwBBMGsiAyQAIAMgATYCDCADIAA2AgggA0EBNgIUIANBqO7gADYCECADQgE3AhwgAyADQQhqrUKAgICAsAGENwMoIAMgA0EoajYCGCADQRBqIAIQoR0AC1YBAX8jAEEgayICJAAgAkEAOgAYIAIgATYCFCACIAA2AhAgAkEBNgIMIAIgAkEMajYCHCACQRxqQdyAwAAQByACKAIMBEAgAkEQahC0IgsgAkEgaiQAC5ABACAAQcgAakH4ABDfFCAAQdQAakEhEN8UIABB4ABqQT4Q3xQgAEL8gICA4As3AkAgAEL8gICAwA83AjggAELbgICA0As3AjAgAEKngICA4As3AiggAEKugICAgAw3AiAgAEKsgICA4A43AhggAELegICA4Ac3AhAgAEKrgICAoAc3AgggAEKtgICAwA83AgALZgECfyMAQSBrIgEkAAJAAkACQCAApyICQQNxQQFrDgICAAELIAFBATYCCCABQYT3wQA2AgQgAUIANwIQIAEgAUEcajYCDCABQQRqQYz3wQAQoR0ACyACKQMIIQALIAFBIGokACAAC1YBAX8jAEEgayICJAAgAkEANgIQIAJBCGogASACQRBqENkJIAJBFGogAigCCCACKAIMEKwVIABBCGogAkEcaigCADYCACAAIAIpAhQ3AgAgAkEgaiQAC1YBAX8jAEEgayICJAAgAkEANgIQIAJBCGogASACQRBqENkJIAJBFGogAigCCCACKAIMEPsQIABBCGogAkEcaigCADYCACAAIAIpAhQ3AgAgAkEgaiQAC1MBAn8jAEEQayIFJAACQCACIARJBEAgBUEEaiIGIAMgBBCvFSAAIAYgASACEOsIDAELIAVBBGoiBiABIAIQrxUgACAGIAMgBBDrCAsgBUEQaiQAC18BAX8jAEEQayICJAAgAiAAQSxqNgIMIAFBvI3EAEEIQcSNxABBCCAAQRhqQR5BzI3EAEEJIABBH0HVjcQAQQsgAEEcakEgQeCNxABBCyAC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QAJAAkACQAJAIAAoAgBBAWsOBgECAwQGBQALIABBCGoQ1ScPCyAAQQRqEMsUDwsgAEEEahD/KA8LIABBBGoQ3Q0PCyAAQQRqEIApDwsgAEEEahDhLQsLUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEJsUIAAoAgBFDQEgACABEOYsDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEJoUIAAoAgBFDQEgACABEOcsDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEJ0UIAAoAgBFDQEgACABEOIsDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEJcSIAAoAgBFDQEgACABEIItDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEIAJIAAoAgBFDQEgACABEIMtDAELDwsgAkE4ayECIABBOGohAAwACwALVgEBfyMAQRBrIgIkAAJ/IAAoAgBBAkYEQCABKAIUQejm4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQezm4ABBBCACQQxqQaAFEMQKCyACQRBqJAALVAIBfwF+IwBBEGsiAyQAIANBCGogAiABQQAQfQJAAkAgAy0ACEEERwRAIAMpAwgiBEL/AYNCBFINAQsgAEEEOgAADAELIAAgBDcCAAsgA0EQaiQAC1UCAX8BfiMAQRBrIgMkACADQQhqIAEgAkEAEOMEAkACQCADLQAIQQRHBEAgAykDCCIEQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAENwIACyADQRBqJAALRQEDfyMAQSBrIgMkAAJAA0AgASACRg0BIANBBGogABDYBSADKAIEBEAgAkEBaiECDAELCyABIAJrIQQLIANBIGokACAEC0UBA38jAEEgayIDJAACQANAIAEgAkYNASADQQRqIAAQwwogAygCBARAIAJBAWohAgwBCwsgASACayEECyADQSBqJAAgBAtSAQF/IwBBEGsiAiQAAn8gACgCAARAIAIgADYCDCABQeuNxABBBSACQQxqQTIQxAoMAQsgASgCFEHwjcQAQQkgASgCGCgCDBEDAAsgAkEQaiQAC1YBAX8jAEEQayICJAAgAiAAKAIAIgBBDGo2AgwgAUG8jcQAQQhBpLXAAEEDIABBM0GntcAAQQwgAEEIakEQQeCNxABBCyACQQxqQSEQ3gogAkEQaiQAC1UBAX8CQCACQQBOBEACQCACRQRAQQEhAwwBC0HAjeQALQAAGiACEGAiA0UNAgsgAyABIAIQ9gYhASAAIAI2AgggACABNgIEIAAgAjYCAA8LEIobCwALUAEEfyABIAAoAggiAigCACAAKAIQIgQgACgCDCIDaiIFa0sEQCACIAUgARCJGAsgAigCBCICIAEgA2oiAWogAiADaiAEELgtGiAAIAE2AgwLWQEBf0EoEM0gIgJB1L/AADYCACACIAEpAgA3AgQgAkEMaiABQQhqKQIANwIAIAJBFGogAUEQaikCADcCACACIAApAgA3AhwgAkEkaiAAQQhqKAIANgIAIAILvgEBCH8DQCABBEAgAEEEaiIGKAIAIQcgAEEIaigCACEIQQAhAgNAIAIgCEcEQCAHIAJBDGxqIgUoAgghBCAFQQRqIgkoAgAhAwNAIAQEQCADKAIAIANBBGooAgAQpyQgBEEBayEEIANBFGohAwwBCwsgBSgCACAJKAIAQQRBFBC2IiACQQFqIQIMAQsLIAAoAgAgBigCABC/KSAAQQxqKAIAIABBEGooAgAQpyQgAUEBayEBIABBHGohAAwBCwsLTwEBfyMAQRBrIgMkACADQQhqIAEgAhBFIAMoAgwhASAAIAMoAggiAjYCCCAAQQAgASACQQFxIgIbNgIAIAAgAUEAIAIbNgIEIANBEGokAAtRAQF/IwBBEGsiAyQAIANBgICAgHg2AgQgAyABNgIIAkAgASgCCARAIAAgA0EEaiACQQV2IAJBH3EQ4wUMAQsgACADQQRqEN4WCyADQRBqJAALVgEBfyMAQRBrIgIkACACIAAoAgAiAEEIajYCDCABQfeXxABBCUGAmMQAQQMgAEEzQYOYxABBByAAQQxqQQ9BipjEAEEOIAJBDGpBIRDeCiACQRBqJAALVwECfyMAQRBrIgEkAEEBIAAoAvwEIgJ0IQAgAkEfcUEbTwRAIAEgAK03AwhB9OHgAEErIAFBCGpB0N3DAEHc4sMAEMAOAAsgAUEQaiQAIABBgICAgARyC1gBAX8jAEEQayICJAAgAiAAKAIAIgA2AgwgAUHUrcQAQQdBs6/EAEEFIABBBGpBEEGrltoAQQQgAEEIakHbAUHoitkAQQMgAkEMakHaARDeCiACQRBqJAALXwACQAJAAkADQAJAAkAgACgCAEEBaw4GBQAFAQQDBAsgACgCBCEADAELCyAAKAIIIgAoAgAgAEEIaigCABDpEw8LIAAoAgQiACgCACAAQQhqKAIAEOkTDwtBAQ8LQQALPwACfwJAAkAgAEENa0ECTwRAIABBFEYNASAAQRtGDQJBACAAQSNHDQMaC0EBDAILIAFBAkYMAQsgAUULQQFzC08BAn8gACABQfACaiABQbgCaiABKAKgAkElRiIDGygCACICIAFB9AJqIAFBvAJqIAMbKAIAIgEgASACSRs2AgQgACACIAEgASACSxs2AgALaAACQAJAAkACQAJAAkAgACgCAA4GAQICAwQFAAsgACkDCBDWGiAAKQMQENYaDwsgACkDCCAAKQMYEO8qCw8LIAApAxgQ1iYPCyAAKQMQIAAoAhgQ9SoPCyAAKQMIENYaIAApAxAQ1hoLWAEBfyAAIAAoAgBBAWsiATYCAAJAIAENACAAQRBqIgEoAgAgAEEUaigCABDyHiAAKAIMIAEoAgAQuykgACAAKAIEQQFrIgE2AgQgAQ0AIABBGEEEEL0RCwtOAQJ/IAAoAgwgACgCBCIBa0EEdiECA0AgAgRAIAEoAgBBAkcEQCABQQxqEM8oCyACQQFrIQIgAUEQaiEBDAELCyAAKAIIIAAoAgAQySkLWQEBfyMAQRBrIgIkACACIAAoAgAiAEEEajYCDCABQfuO2gBBCUGT0OAAQQQgAEEIakH6AEGEj9oAQQQgAEHDAkGIj9oAQQUgAkEMakG5AhDeCiACQRBqJAALVQECf0EBIQECQCAAQd8AayICQRBNQQBBASACdEHJgARxGw0AAkACQCAAQcIAaw4EAgEBAgALIABBLkYgAEHPAEZyIABBgIDEAEZyDQELQQAhAQsgAQtZAQF/IwBBEGsiAiQAIAIgACgCACIAQShqNgIMIAFBlO/YAEEMQZPQ4ABBBCAAQSBqQfoAQfDW2gBBAiAAQYkDQfOO2gBBBCACQQxqQYoDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQTBqNgIMIAFBqPHYAEEOQZPQ4ABBBCAAQShqQfoAQeaP2gBBBSAAQZsDQbbx2ABBAiACQQxqQZYDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFBsPTYAEESQZPQ4ABBBCAAQQRqQfoAQbeP2gBBBCAAQbcCQaep2QBBCSACQQxqQZ0DEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBsJLaAEEKQZPQ4ABBBCAAQQxqQfoAQa6O2gBBBCAAQRRqQZkDQbKO2gBBBCACQQxqQZ8DEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFByOrYAEEFQZPQ4ABBBCAAQShqQfoAQeyQ2gBBCiAAQTBqQbgDQc3q2ABBAyACQQxqQbkDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBo+rYAEEHQZPQ4ABBBCAAQShqQfoAQauW2gBBBCAAQTBqQdkDQczF4ABBBSACQQxqQdoDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQRBqNgIMIAFBqaLZAEERQZPQ4ABBBCAAQSBqQfoAQZ3s2ABBAiAAQd0DQauW2gBBBCACQQxqQdsDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQhqNgIMIAFBqY/aAEEGQZPQ4ABBBCAAQfoAQczF4ABBBSAAQRBqQbgCQbih2QBBAyACQQxqQeEDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFBiPDYAEEMQZPQ4ABBBCAAQRhqQfoAQY/v2ABBBSAAQecDQcOh2QBBBiACQQxqQegDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQSBqNgIMIAFB4OrYAEEKQZPQ4ABBBCAAQfoAQeCQ2gBBAyAAQQhqQcACQczF4ABBBSACQQxqQbkCEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQRBqNgIMIAFBnerYAEEGQZPQ4ABBBCAAQfoAQczF4ABBBSAAQQhqQfEDQbih2QBBAyACQQxqQeEDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBq6jZAEEOQZPQ4ABBBCAAQQRqQfoAQdL92ABBAiAAQQxqQfsDQaCO2gBBCCACQQxqQZYDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBsaXZAEENQZPQ4ABBBCAAQRBqQfoAQcOP2gBBAyAAQRhqQfwDQeim2QBBBCACQQxqQdsDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQhqNgIMIAFBjurYAEEHQZPQ4ABBBCAAQRBqQfoAQczF4ABBBSAAQeADQbih2QBBAyACQQxqQYcDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQRqNgIMIAFBg6PZAEEPQZPQ4ABBBCAAQQhqQfoAQbeP2gBBBCAAQbcCQaep2QBBCSACQQxqQeMDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQRqNgIMIAFBx/HYAEEPQZPQ4ABBBCAAQQhqQfoAQbeP2gBBBCAAQbcCQaCO2gBBCCACQQxqQZYDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQRqNgIMIAFB16LZAEEPQZPQ4ABBBCAAQQhqQfoAQbeP2gBBBCAAQbcCQaCO2gBBCCACQQxqQZYDEN4KIAJBEGokAAtaAQF/IwBBEGsiAiQAIAIgACgCACIAQcgAajYCDCABQaGn2QBBC0GT0OAAQQQgAEH6AEH77tgAQQkgAEEIakGGBEGnqdkAQQkgAkEMakGdAxDeCiACQRBqJAALWQEBfyMAQRBrIgIkACACIAAoAgAiAEEIajYCDCABQYnq2ABBBUGT0OAAQQQgAEEQakH6AEGV6tgAQQMgAEHgA0GY6tgAQQUgAkEMakGHAxDeCiACQRBqJAALWQEBfyMAQRBrIgIkACACIAAoAgAiAEEgajYCDCABQZin2QBBCUGT0OAAQQQgAEH6AEGD7NgAQQkgAEEIakHlA0GrpNkAQQsgAkEMakGdAxDeCiACQRBqJAALWQEBfyMAQRBrIgIkACACIAAoAgAiAEEEajYCDCABQeDr2ABBCEGT0OAAQQQgAEEIakH6AEG3j9oAQQQgAEG3AkGgjtoAQQggAkEMakGWAxDeCiACQRBqJAALWQEBfyMAQRBrIgIkACACIAAoAgAiADYCDCABQd//2ABBCkGT0OAAQQQgAEEYakH6AEHDj9oAQQMgAEEgakG3AkHoptkAQQQgAkEMakGuBBDeCiACQRBqJAALWQEBfyMAQRBrIgIkACACIAAoAgAiAEEMajYCDCABQbuh2QBBA0GT0OAAQQQgAEEYakH6AEG+odkAQQUgAEG0BEHDodkAQQYgAkEMakHoAxDeCiACQRBqJAALWAEBfyMAQRBrIgIkACACIAAoAgAiADYCDCABQb6A2QBBDEGT0OAAQQQgAEEEakH6AEHzjdoAQQggAEEMakEPQcqA2QBBBCACQQxqQboEEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBu//YAEEJQZPQ4ABBBCAAQQRqQfoAQdL92ABBAiAAQQxqQb4EQZ2O2gBBAyACQQxqQbkCEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFB5YDZAEENQZPQ4ABBBCAAQRhqQfoAQcOP2gBBAyAAQSBqQcsEQeim2QBBBCACQQxqQcwEEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFBxP/YAEEJQZPQ4ABBBCAAQfoAQZ2O2gBBAyAAQQhqQZkDQc3/2ABBCCACQQxqQY8BEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQRBqNgIMIAFBm4/aAEEDQZPQ4ABBBCAAQQhqQfoAQczF4ABBBSAAQeADQbih2QBBAyACQQxqQeEDEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIAQShqNgIMIAFB55LaAEELQZPQ4ABBBCAAQUBrQfoAQfKS2gBBBSAAQZsDQfeO2gBBBCACQQxqQfICEN4KIAJBEGokAAtZAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBz4/aAEEJQZPQ4ABBBCAAQQxqQfoAQeyN2gBBBCAAQRRqQewDQdiP2gBBBSACQQxqQZ8DEN4KIAJBEGokAAtYAQF/IwBBEGsiAiQAIAIgACgCACIAQRhqNgIMIAFBxo/aAEEJQbaN2gBBBSAAQcACQYqt4ABBByAAQRxqQQ9BjrLgAEEFIAJBDGpBzgQQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgBBBGo2AgwgAUH3ktoAQQtBk9DgAEEEIABBCGpB+gBBro7aAEEEIABBtwJB947aAEEEIAJBDGpBgwUQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgBBKGo2AgwgAUG9ltoAQQ1Bk9DgAEEEIABB+gBB4JDaAEEDIABBCGpBhQVBzMXgAEEFIAJBDGpBigMQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgBBBGo2AgwgAUG7j9oAQQhBk9DgAEEEIABBCGpB+gBBw4/aAEEDIABBtwJB947aAEEEIAJBDGpBgwUQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgBBIGo2AgwgAUGCk9oAQQtBk9DgAEEEIABB+gBB5o/aAEEFIABBCGpBwAJB947aAEEEIAJBDGpBgwUQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgA2AgwgAUG6ktoAQQpBk9DgAEEEIABBEGpB+gBBxJLaAEEMIABBDGpBtwJB0JLaAEEFIAJBDGpBiAUQ3gogAkEQaiQAC1kBAX8jAEEQayICJAAgAiAAKAIAIgBBBGo2AgwgAUGXkNoAQQlBk9DgAEEEIABBCGpB+gBBro7aAEEEIABBtwJB947aAEEEIAJBDGpBgwUQ3gogAkEQaiQAC1gBAX8jAEEQayICJAAgAiAAKAIAIgBBGGo2AgwgAUGwjdoAQQZBto3aAEEFIABBwAJBiq3gAEEHIABBHGpBD0GYseAAQQggAkEMakHzAxDeCiACQRBqJAALWwACQAJAAkACQAJAAkAgACgCAEEBaw4GAAECAwUEBQsgAEEEaiABEIAXDwsgAEEEaiABENktDwsgAEEEaiABELYODwsgAEEEaiABEKslDwsgAEEEaiABEMArCwtcAAJAAkACQAJAAkACQAJAIAAoAgBBAWsOBgECAwQGBQALIABBADYCGA8LIABBBGoQyRcPCyAAQQRqEMktDwsgAEEEahCsDg8LIABBBGoQ5CgPCyAAQQRqEMUtCwtbAAJAAkACQAJAAkACQCAAKAIAQQFrDgYAAQIDBQQFCyAAQQRqIAEQghcPCyAAQQRqIAEQ3C0PCyAAQQRqIAEQtw4PCyAAQQRqIAEQriUPCyAAQQRqIAEQvCsLC1sAAkACQAJAAkACQAJAIAAoAgBBAWsOBgABAgMFBAULIABBBGogARCEFw8LIABBBGogARDdLQ8LIABBBGogARDxCw8LIAEgAEEEahCrGA8LIABBBGogARC/KwsLWwACQAJAAkACQAJAAkAgACgCAEEBaw4GAAECAwUEBQsgAEEEaiABEIYXDwsgAEEEaiABEOgtDwsgAEEEaiABELgODwsgAEEEaiABEOUlDwsgAEEEaiABEOcsCwtbAAJAAkACQAJAAkACQCAAKAIAQQFrDgYAAQIDBQQFCyAAQQRqIAEQhxcPCyAAQQRqIAEQ5y0PCyAAQQRqIAEQuQ4PCyAAQQRqIAEQ5CUPCyAAQQRqIAEQ5iwLC1UBAn8CQCAAKAIYRQ0AA0AgABCFDyEBIAAgACgCGEEBayICNgIYIAFFDQEgAUEQaykDABDWGiACDQALCyAAKAIgIgEEQCAAKAIoIAEgACgCJBCbJAsLWwACQAJAAkACQAJAAkAgACgCAEEBaw4GAAECAwUEBQsgAEEEaiABEIkXDwsgAEEEaiABEOktDwsgAEEEaiABELoODwsgAEEEaiABEOclDwsgAEEEaiABEOIsCwtoAAJAAkACQAJAAkACQCAAKAIADgYBAgIDBAUACyAAKQMIENYaIAApAxAQ1hoPCyAAKQMIIAApAxgQ7yoLDwsgACkDGBDWJg8LIAApAxAgACgCGBC6IA8LIAApAwgQ1hogACkDEBDWGgtMAQJ/IAAgAUHQAGogAUEYaiABKAIAQSVGIgMbKAIAIgIgAUHUAGogAUEcaiADGygCACIBIAEgAkkbNgIEIAAgAiABIAEgAksbNgIAC2gAAkACQAJAAkACQAJAIAAoAgAOBgECAgMEBQALIAApAwgQ1hogACkDEBDWGg8LIAApAwggACkDGBDvKgsPCyAAKQMYENYmDwsgACkDECAAKAIYEJEtDwsgACkDCBDWGiAAKQMQENYaC1gBAX8gACAAKAIAQQFrIgE2AgACQCABDQAgAEEQaiIBKAIAIABBFGooAgAQjx8gACgCDCABKAIAEPEpIAAgACgCBEEBayIBNgIEIAENACAAQRhBBBC9EQsLUQEBfyAAKAIYIgIgARCCICAALQAUQQFGBEAgAQJ/IAIEQCABKAIcIAEoAiAgAigCBEEBaxC9DgwBCyABKAIcIAEoAiAgACgCDBDGDwsQhB4LC1sAAkACQAJAAkACQAJAIAAoAgBBAWsOBgABAgMFBAULIABBBGogARCNFw8LIABBBGogARCfLQ8LIABBBGogARDJDw8LIABBBGogARCiJg8LIABBBGogARCaLQsLWAEBfyMAQRBrIgIkACACIAAoAgAiAEEYajYCDCABQfTP4ABBDEGA0OAAQQUgAEGlBUGF0OAAQQ4gAEEgakEPQZPQ4ABBBCACQQxqQaUCEN4KIAJBEGokAAtRAQF/IwBBEGsiBCQAIARBBGogAUEAIAIgAxCQCiAEKAIIIQEgBCgCBEUEQCAAIAQoAgw2AgQgACABNgIAIARBEGokAA8LIAEgBCgCDBC+KQALUQEBfyMAQRBrIgIkACACQQRqIAFBAEEEQQQQkAogAigCCCEBIAIoAgRFBEAgACACKAIMNgIEIAAgATYCACACQRBqJAAPCyABIAIoAgwQvikAC0MBAX8CQCAAIAEEfyACRQ0BIAEgAm4iAyABIAIgA2xHagVBAAsiATYCCCAAQQE2AgQgACABNgIADwtB4K/CABCLGwALUQEBfyMAQRBrIgMkACADQQRqIAFBAEEEIAIQkAogAygCCCEBIAMoAgRFBEAgACADKAIMNgIEIAAgATYCACADQRBqJAAPCyABIAMoAgwQvikAC1QBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRB6ObgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFB7ObgAEEEIAJBDGpB8wAQxAoLIAJBEGokAAtSAQF/IwBBIGsiASQAIAFBCGogABDBHCABKAIIQQFGBEAgASABKQMQNwMYQeyWwwBBFSABQRhqQcyNwwBBxMnDABDADgALIAEoAgwgAUEgaiQAC34BAn8gACgCACIAKAIIIABBDGooAgAQyikgAEEUaiIBKAIEIgIgASgCCBChCSABKAIAIAIQ2CkgAEEgaiIBKAIEIgIgASgCCBDjFyABKAIAIAIQvykCQCAAQX9GDQAgACAAKAIEIgFBAWs2AgQgAUEBRw0AIABBMEEEEL0RCwtVAQF/QTRBBBCMICIAQgA3AhQgAEEBNgIQIABCATcCCCAAQgE3AgAgAEEAOgAyIABBATsBMCAAQRxqQgA3AgAgAEEkakIANwIAIABBLGpBADYCACAAC0kAQQAhBQJAIAMgBE0NACACIARqLQAAIgIgAS0AAEcEQCABLQABIAJHDQELIAAgBDYCBEEBIQUgACAEQQFqNgIICyAAIAU2AgALWgEBf0E0QQQQjCAiAUEAOgAyIAFBATsBMCABQQA2AiwgASAANgIoIAEgADYCJCABIAA2AiAgASAANgIcIAEgADYCGCABQgE3AhAgAUIBNwIIIAFCATcCACABC1UBAX8jAEEQayIDJAAgA0EIaiABKAIEIAEoAgggASgCDCACbCICIAIgASgCEGpB2PPDABDWFSADKAIMIQEgACADKAIINgIAIAAgATYCBCADQRBqJAALUAECfyMAQRBrIgUkACAFQQhqIAMgASACEIgTIAUoAggiBkUEQCABIAIgAyACIAQQuCYACyAFKAIMIQEgACAGNgIAIAAgATYCBCAFQRBqJAALTAECfyAAIAFBHGxqIQJBACEBA0AgACACRgRAQQIPCyAALQAYIQMgAEEcaiEAAkACQCADQQZrDgIBAAILQQEhAQwBCwsgAUF/c0EBcQtUAQF/IwBBEGsiAiQAAn8gACgCAEUEQCABKAIUQejm4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQezm4ABBBCACQQxqQdwBEMQKCyACQRBqJAALUwEBfyMAQSBrIgIkACACQQE2AgQgAkHAj9kANgIAIAJCATcCDCACQQk2AhwgAiAANgIYIAIgAkEYajYCCCABKAIUIAEoAhggAhCMBCACQSBqJAALZQACQAJAAkACQAJAAkAgACgCAA4GAQICAwQFAAsgACkDCCAAKQMQEO4qDwsgACkDCCAAKQMYEO8qCw8LIAApAxgQ1iYPCyAAKQMQIAAoAhgQoiAPCyAAKQMIENYaIAApAxAQ1hoLUQEBfwJAIABBEkcNACABKAIAQRtHDQAgASgCCA0AIAEpAyBQDQAgAUEgaiIAQdTR2ABBDBCxG0UEQCAAQeDR2ABBDBCxG0UNAQtBASECCyACC1EBAX8jAEEQayICJAAgAkEEaiABQQBBAUEBEJAKIAIoAgghASACKAIERQRAIAAgAigCDDYCBCAAIAE2AgAgAkEQaiQADwsgASACKAIMEL4pAAtUAQF/IwBBEGsiAiQAAn8gACgCAEUEQCABKAIUQejm4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQezm4ABBBCACQQxqQbYCEMQKCyACQRBqJAALUwEBfyAAKAIAIgAgACgCAEEBayIBNgIAAkAgAQ0AIAApAwgQ1hogACgCKARAIABBKGoQuBQLIAAgACgCBEEBayIBNgIEIAENACAAQTBBCBC9EQsLUwEBfyAAKAIAIgAgACgCAEEBayIBNgIAAkAgAQ0AIAApAwgQ1hogACgCIARAIABBIGoQuRQLIAAgACgCBEEBayIBNgIEIAENACAAQShBCBC9EQsLYQEBf0EYQQQQjCAiAUIANwIIIAFCgICAgIABNwIAIABBADYCGCAAQgA3AhAgAEIANwIcIAAgATYCDCAAQQA2AgggAEKAgICAgAE3AgAgAEEkakEAOwEAIAFBEGpCADcCAAtUAQF/IwBBEGsiAiQAAn8gACgCAEUEQCABKAIUQejm4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQezm4ABBBCACQQxqQfgDEMQKCyACQRBqJAALVAEBfyMAQRBrIgIkAAJ/IAAoAgBFBEAgASgCFEHo5uAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUHs5uAAQQQgAkEMakGWAxDECgsgAkEQaiQAC1QBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRB6ObgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFB7ObgAEEEIAJBDGpB+QMQxAoLIAJBEGokAAtUAQF/IwBBEGsiAiQAAn8gACgCAEUEQCABKAIUQejm4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQezm4ABBBCACQQxqQeMDEMQKCyACQRBqJAALVAEBfyMAQRBrIgIkAAJ/IAAoAgBFBEAgASgCFEHo5uAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUHs5uAAQQQgAkEMakG5AhDECgsgAkEQaiQAC1UBA38gACgCBCEDIAAoAgAhASAAQoiAgICAATcCACADIAFrQTBuIQICQCABIANGDQADQCACRQ0BIAJBAWshAiABEM8FIAFBMGohAQwACwALIAAQwRILVAEBfyMAQRBrIgIkAAJ/IAAoAgBFBEAgASgCFEHo5uAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUHs5uAAQQQgAkEMakHgBBDECgsgAkEQaiQAC1QBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRB6ObgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFB7ObgAEEEIAJBDGpB3gQQxAoLIAJBEGokAAtMAQJ/IABCADcCDCAAKAIIQShsIQIgACgCBCEBA0AgAgRAIAEoAgBBB0cEQCABEIYSCyABQShqIQEgAkEoayECDAELCyAAQRRqEKIlC18AAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAUGAAsgAEIANwMQDwsgAEIANwIEDwsgAEIANwIEDwsgAEIANwMIDwsgAEIANwMIDwsgAEIANwMYDwsgAEIANwMYC0wBAX8gACgCCEE4bCEBIAAoAgRBMGohAANAAkAgAQRAIABBMGsQlxQgACgCAEUNASAAEMUtDAELDwsgAUE4ayEBIABBOGohAAwACwALVAECfyMAQRBrIgMkACACLQA9IQQgAyAAIAEQpCMgAygCCCEBIAMpAwAhAAJAIARFBEAgAiAAIAEQtBAMAQsgAiAAIAEgAi0APhCHBgsgA0EQaiQAC+gBAgV/AX4CQCAAKAIIIgVBAk8NACMAQRBrIgEkACAAQQhqIgIoAgghAyACKAIEIQQgAigCAEEBRgRAIAFBCGogBCADEKUfIAEoAgghBCABKAIMIQMLIAQgACADKAI0EQAAIAFBEGokACAAKQMAIQYjAEEQayIBJAAgAigCCCEDIAIoAgQhBCACKAIAQQFGBEAgAUEIaiAEIAMQpR8gASgCCCEEIAEoAgwhAwsgBCAGIAMoAkARJgAaIAFBEGokACAFRQ0AIAAoAgwiAiACKAIAIgJBAWs2AgAgAkEBRw0AIABBDGoQsA4LC08BAn8gASAAKAIIIgJJBEBBACECIAAoAgAiAygCACAAKAIEIAFBFGxqIgAoAgBGBH8gAygCBCAAKAIERgUgAgsPCyABIAJB7K/fABCbEAALgQECAn4Bf0HohuQAKQMAUARAQQFBABC5GiECQeiG5AApAwBB6IbkACACNwMAENIYC0HohuQAKQMAENoaIQIgAEEQaiABQRBqKQMANwMAIABBCGogAUEIaiIEKQMANwMAIAAgASkDADcDACAEQgA3AwAgASACNwMAIAFBDWpCADcAAAtMAgF/AX4CQCABKAIYRQ0AIAEQhQ8hAiABIAEoAhhBAWs2AhggAkUNACACQQhrKAIAIQEgAkEQaykDACEDCyAAIAE2AgggACADNwMAC0wBAn8gACgCCEEobCECIAAoAgQhAQNAIAIEQCABKAIAQQdHBEAgARDSEwsgAUEoaiEBIAJBKGshAgwBCwsgAEEUahCSKiAAQQA6ABgLVwEDfyAAKAIEIQMgACgCACEBIABCiICAgIABNwIAIAMgAWtB2ABuIQICQCABIANGDQADQCACRQ0BIAJBAWshAiABEL8IIAFB2ABqIQEMAAsACyAAELESC0wBAX8gACgCCEE4bCEBIAAoAgRBMGohAANAAkAgAQRAIABBMGsQ0RMgACgCAEUNASAAEN8tDAELDwsgAUE4ayEBIABBOGohAAwACwALTAEBfyAAKAIIQThsIQEgACgCBEEwaiEAA0ACQCABBEAgAEEwaxDSEyAAKAIARQ0BIAAQ4S0MAQsPCyABQThrIQEgAEE4aiEADAALAAtFAQR/IAAoAgQhBSAAKAIAIQMCQANAIAEgAkYNASADIAVHBEAgACADQQxqIgM2AgAgAkEBaiECDAELCyABIAJrIQQLIAQLUAECfyMAQRBrIgUkACAFQQhqIAEgAiADEIgTIAUoAggiBkUEQCACIAMgASADIAQQuCYACyAFKAIMIQEgACAGNgIAIAAgATYCBCAFQRBqJAALUAEDfyAALQAAQQNGBEAgACgCBCIAKAIAIQIgACgCBCIDKAIAIgEEQCACIAERAQALIAMoAgQiAQRAIAIgASADKAIIEL0RCyAAQQxBBBC9EQsLVwECfwJAAkACQAJAAkBBCyAAKAIAIgJBgICAgHhzIgEgAUESTxsiAQ4DAgEDAAsgAUELRg0DCw8LIABBBGoQ0RQPCyAAQQRqEIQZDwsgAiAAKAIEELgpC14BAn8CQAJAAkACQCABKAIAQYCAgIB4cw4DAAECAwsgAUEEaiECQaDL4AAhAwwCCyABQQRqIQJB3MvgACEDDAELIAFBBGohAkGYzOAAIQMLIAAgAzYCBCAAIAI2AgALUQEBfyMAQRBrIgMkACADQQRqIAFBAEEIIAIQkAogAygCCCEBIAMoAgRFBEAgACADKAIMNgIEIAAgATYCACADQRBqJAAPCyABIAMoAgwQvikAC0kBA38gASEDIAIhBCABKAIAIgUEQCABLwEwIQQgAkEBaiEDCyABQeQAQTQgAhtBBBC9ESAAIAU2AgAgACADrSAErUIghoQ3AgQLUwEBfyMAQRBrIgIkACACIABBgQJqNgIMIAFBrZbAAEEMQbmWwABBByAAQRpBqJbAAEEFIABBgAJqQRhBwJbAAEEFIAJBDGpBEhDeCiACQRBqJAALUQEBfyMAQRBrIgIkACACIABBAmo2AgwgAUHylsAAQQ9BqJbAAEEFIABBGEHAlsAAQQUgAEEBakEYQdOWwABBBSACQQxqQRIQ3gogAkEQaiQAC1MBAn8gAEEAOgAgIAAoAgghAiAAQQA2AgggACgCBCEBA0AgAgRAIAEoAgAgAUEEaigCABC4KSACQQFrIQIgAUEMaiEBDAELCyAAQoCAgIBwNwIUC08BAn8jAEEQayIDJAAgA0EIaiACQQRBBBClFCADKAIIIQQgAygCDCABIAJBAnQQ9gYhASAAIAI2AgggACABNgIEIAAgBDYCACADQRBqJAALTAEDfyABKAIAIgIgAUEEayIDKAIAIgRJBEADQAJAIAMiAUEEaiAENgIAIAAgAUYNACACIAFBBGsiAygCACIESQ0BCwsgASACNgIACwtNAQF/IwBBMGsiASQAIAFBATYCDCABQYDuwAA2AgggAUIBNwIUIAEgAUEvaq1CgICAgJAJhDcDICABIAFBIGo2AhAgAUEIaiAAEKEdAAtNAQF/IwBBMGsiASQAIAFBATYCDCABQaTuwAA2AgggAUIBNwIUIAEgAUEvaq1CgICAgKAJhDcDICABIAFBIGo2AhAgAUEIaiAAEKEdAAtZAQF/IAEoAgwhAgJAAkACQAJAIAEoAgQOAgABAgsgAg0BQQEhAUEAIQIMAgsgAg0AIAEoAgAiASgCBCECIAEoAgAhAQwBCyAAIAEQqQYPCyAAIAEgAhCsFQtMAQJ/IABB/wFxQQNGBEAgASgCACEAIAEoAgQiAygCACICBEAgACACEQEACyADKAIEIgIEQCAAIAIgAygCCBC9EQsgAUEMQQQQvRELC08BAn8jAEEQayICJAAgAkEIakEBQQEQiBkgAigCCCIDRQRAQQFBARC+KQALIABBATYCCCAAIAM2AgQgAEEBNgIAIAMgAToAACACQRBqJAALUQEBfyMAQRBrIgIkACACIABBCGo2AgwgAUH3l8QAQQlBgJjEAEEDIABBM0GDmMQAQQcgAEEMakEPQYqYxABBDiACQQxqQSEQ3gogAkEQaiQAC1QBAX8jAEEQayICJAAgAiAAQYwDajYCDCABQeuNxABBBUHkl8QAQQggAEGRAUHsl8QAQQsgAEEwakGSAUHgjcQAQQsgAkEMakEhEN4KIAJBEGokAAtZAQF/IAEoAgwhAgJAAkACQAJAIAEoAgQOAgABAgsgAg0BQQEhAUEAIQIMAgsgAg0AIAEoAgAiASgCBCECIAEoAgAhAQwBCyAAIAEQqQYPCyAAIAEgAhD7EAtNAQJ/IwBBEGsiASQAIAAoAhAiAgRAIAFBBGogACgCBCAAKAIIIAJBAWoQ5g0gACgCDCABKAIMayABKAIEIAEoAggQmyQLIAFBEGokAAtPAQJ/IwBBEGsiAyQAIANBCGogAkEEQQgQ5xQgAygCCCEEIAMoAgwgASACQQN0EPYGIQEgACACNgIIIAAgATYCBCAAIAQ2AgAgA0EQaiQAC08BAn8jAEEQayIDJAAgA0EIaiACQQFBAhDnFCADKAIIIQQgAygCDCABIAJBAXQQ9gYhASAAIAI2AgggACABNgIEIAAgBDYCACADQRBqJAALWQEBfyABKAIMIQICQAJAAkACQCABKAIEDgIAAQILIAINAUEBIQFBACECDAILIAINACABKAIAIgEoAgQhAiABKAIAIQEMAQsgACABEKkGDwsgACABIAIQthULTwEBfyMAQRBrIgQkACAEQQRqIAEgAiADEJ8LIAQoAgghASAEKAIERQRAIAAgBCgCDDYCBCAAIAE2AgAgBEEQaiQADwsgASAEKAIMEL4pAAtbAQF/AkACQAJAAkACQCAAKAIAIgFBB2tBACABQQhPGw4EAAECAwQLIAAQ+w0PCyAAKAIEIAAoAggQuCkPCyAAKAIEIAAoAggQyikPCyAAKAIEIAAoAggQ1ikLC0wBA38gASEDIAIhBCABKAKIAiIFBEAgAS8BkAMhBCACQQFqIQMLIAFByANBmAMgAhtBCBC9ESAAIAU2AgAgACADrSAErUIghoQ3AgQLlAEBA38gASgCDCECAkACQAJAAkAgASgCBA4CAAECCyACDQFBASEBQQAhAgwCCyACDQAgASgCACIBKAIEIQIgASgCACEBDAELIAAgARCpBg8LIwBBEGsiAyQAIANBCGogAhC2FCADKAIIIQQgAygCDCABIAIQ9gYhASAAIAI2AgggACABNgIEIAAgBDYCACADQRBqJAALUgEBf0HAjeQALQAAGkEgEGAiA0UEQAALIAMgATYCBCADIAA2AgAgAyACKQMANwMIIANBEGogAkEIaikDADcDACADQRhqIAJBEGopAwA3AwAgAwtRACAAIAEpAaoCNwEEIABBGWogAUG/AmopAAA3AAAgAEEUaiABQboCaikBADcBACAAQQxqIAFBsgJqKQEANwEAIAFBKGogAhDICCAAIAE2AgALSgEBfyMAQUBqIgEkACABQRhqIABBEGopAwA3AwAgAUEQaiAAQQhqKQMANwMAIAFBGjYCACABIAApAwA3AwggARC9KCABQUBrJAALSgEBfyMAQUBqIgEkACABQRRqIABBEGooAgA2AgAgAUEMaiAAQQhqKQIANwIAIAFBGTYCACABIAApAgA3AgQgARC9KCABQUBrJAALSgEBfyMAQUBqIgEkACABQRRqIABBEGooAgA2AgAgAUEMaiAAQQhqKQIANwIAIAFBFjYCACABIAApAgA3AgQgARC9KCABQUBrJAALSgEBfyMAQUBqIgEkACABQRRqIABBEGopAgA3AgAgAUEMaiAAQQhqKQIANwIAIAFBHTYCACABIAApAgA3AgQgARC9KCABQUBrJAALSwEBfyMAQRBrIgQkACAEQQA2AgwgBCADOgAMIAEgAiAEQQxqQQEQ0x8hAyAAIAJBAWs2AgQgACABQQFqQQAgAxs2AgAgBEEQaiQAC1kBAX8gASgCDCECAkACQAJAAkAgASgCBA4CAAECCyACDQFBASEBQQAhAgwCCyACDQAgASgCACIBKAIEIQIgASgCACEBDAELIAAgARCpBg8LIAAgASACEIgWC08BAX8jAEEQayICJAAgAkEEaiABQQFBARCfCyACKAIIIQEgAigCBEUEQCAAIAIoAgw2AgQgACABNgIAIAJBEGokAA8LIAEgAigCDBC+KQALWwACQCACIANBibLgAEEFEM0fRQRAIAIgA0GLruAAQQcQzR8NASACIANBkq7gAEEGEM0fRQRAIABBBjoAAA8LIABBgDw7AQAPCyAAQYICOwEADwsgAEGAPjsBAAtbAAJAIAIgA0GksuAAQQYQzR9FBEAgAiADQdet4ABBCBDNHw0BIAIgA0GAr+AAQQcQzR9FBEAgAEEGOgAADwsgAEGAKjsBAA8LIABBgho7AQAPCyAAQYASOwEAC1QBAX8jAEEQayICJAAgAiAAQRBqNgIMIAFBm4/aAEEDQZPQ4ABBBCAAQQhqQfoAQczF4ABBBSAAQeADQbih2QBBAyACQQxqQeEDEN4KIAJBEGokAAtUAQF/IwBBEGsiAiQAIAIgADYCDCABQc+P2gBBCUGT0OAAQQQgAEEMakH6AEHsjdoAQQQgAEEUakHsA0HYj9oAQQUgAkEMakGfAxDeCiACQRBqJAALWQEBfyABKAIMIQICQAJAAkACQCABKAIEDgIAAQILIAINAUEBIQFBACECDAILIAINACABKAIAIgEoAgQhAiABKAIAIQEMAQsgACABEKkGDwsgACABIAIQohELSQECfyAAKAIIQShsIQMgACgCBCECA0AgAwRAIAIoAgBBB0cEQCACIAEQtRELIAJBKGohAiADQShrIQMMAQsLIABBFGogARDPIwtGAQF/IAAoAgwEQCAAKAIEIgEEQCAAKAIAQf8BIAFBCWoQhQsaCyAAQQA2AgwgACABIAFBAWpBA3ZBB2wgAUEISRs2AggLC1UBAX8CQAJAAkBBASAALQAsQQNrIgEgAUH/AXFBA08bQf8BcUEBaw4CAQIACyAAQgA3AwgPCyAAEI0dDwsgAEIANwMYIABCADcDCCAAQSBqQgA3AwALVwEBf0HAjeQALQAAGkEcEGAiAkUEQAALIAJCADcCCCACQoCAgICAATcCACACQRBqQgA3AgAgAkEYakEAOwEAIAAgAUEoEPYGGiABIAI2AgQgAUECNgIAC1gCAX8BfiMAQRBrIgIkACABKAIAQQFGBEBBsLbfAEEqQdy23wAQoRIACyACIAEpAwggASgCGBCkIyACKQMAIQMgACACKAIINgIIIAAgAzcDACACQRBqJAALSgEBfyMAQUBqIgEkACABQRRqIABBEGooAgA2AgAgAUEMaiAAQQhqKQIANwIAIAFBDjYCACABIAApAgA3AgQgARC9KCABQUBrJAALSgEBfyMAQUBqIgEkACABQRRqIABBEGooAgA2AgAgAUEMaiAAQQhqKQIANwIAIAFBEjYCACABIAApAgA3AgQgARC9KCABQUBrJAALSQECfyAAKAIIQShsIQMgACgCBCECA0AgAwRAIAIoAgBBB0cEQCACIAEQlRELIAJBKGohAiADQShrIQMMAQsLIABBFGogARDkIwtMAQJ/IwBBEGsiASQAIAAoAgQiAgRAIAAQgQwgAUEEakEgQQggAkEBahDmDSAAKAIAIAEoAgxrIAEoAgQgASgCCBCbJAsgAUEQaiQAC4ABAgJ+An9B8IbkACkDAFAEQEEBQQAQuRohAkHwhuQAKQMAQfCG5AAgAjcDABDSGAtB8IbkACkDABDaGiECIABBEGogAUEQaiIEKQMANwMAIABBCGogAUEIaiIFKQMANwMAIAAgASkDADcDACAFQgA3AwAgASACNwMAIARCADcDAAtOAQJ/IAAoAgwgACgCBCIBa0EFdiECA0AgAgRAIAFBEGopAwAQ1iYgASkDABDWGiACQQFrIQIgAUEgaiEBDAELCyAAKAIIIAAoAgAQ2CkLTwEBfyMAQRBrIgMkACADQQRqIAFBBCACEJ8LIAMoAgghASADKAIERQRAIAAgAygCDDYCBCAAIAE2AgAgA0EQaiQADwsgASADKAIMEL4pAAtTAQN/IAEoAgAhAyABKAIEIQQCQANAIAMiAiAERg0BIAEgAkFAayIDNgIAIAItADxBBkYNAAsgACACNgIIIAAgASgCCCkCADcCAA8LIABBADYCAAtSACAAIAEpAYIDNwEEIABBGWogAUGXA2opAAA3AAAgAEEUaiABQZIDaikBADcBACAAQQxqIAFBigNqKQEANwEAIAFBgAFqIAIQwAggACABNgIAC0QBAn8jAEEQayICJAAgACABKAIAQQdHBH8gAkEIaiABEIwMIAIoAgghAyACKAIMBSADCzYCBCAAIAM2AgAgAkEQaiQAC0QBAn8jAEEQayICJAAgACABKAIAQQJHBH8gAkEIaiABEO4PIAIoAgghAyACKAIMBSADCzYCBCAAIAM2AgAgAkEQaiQAC0sBA38jAEEQayICJAAgAkEIaiABKAIAEIsDIAAgAigCDCIDIAEoAgwiBCADIARJGyADIAQgAyAESxsQxhggASAAEJUtIAJBEGokAAtDAQN/AkAgAkUNAANAIAAtAAAiBCABLQAAIgVGBEAgAEEBaiEAIAFBAWohASACQQFrIgINAQwCCwsgBCAFayEDCyADC1IBA39BA0EAEIgGIQBBnILkAEGcguQAKAIAIgEgACABGzYCACABRQRAIAAPCyAAKAIEIgIEQCAAKAIAIAJBBnRBwAAQvRELIABB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GGshAwsgACABNgIEIAAgAzYCAAtIAQJ/IAAoAghBBnQhAiAAKAIEIQMDQCACBEAgASADELceIAJBQGohAiADQUBrIQMMAQsLIABBDGogARCtGiAAQRhqIAEQiCQLSAECfyAAKAIIQQZ0IQIgACgCBCEDA0AgAgRAIAMgARCeJiACQUBqIQIgA0FAayEDDAELCyAAQQxqIAEQrxogAEEYaiABEIYkC0gBAn8gACgCCEEGdCECIAAoAgQhAwNAIAIEQCADIAEQnyYgAkFAaiECIANBQGshAwwBCwsgAEEMaiABEK4aIABBGGogARCMJAtKAQN/IAAoAgAiAgRAIAAoAgQiAygCACIBBEAgAiABEQEACyADKAIEIgEEQCACIAEgAygCCBC9EQsgACgCDCAAKAIIKAIMEQEACwtOACABKAIEIAEoAgggAkHwg8AAEJofIQIgACADQQFxBH8gASgCECABKAIUIARBgITAABCbH0EFagUgAgsoAAAiATYCBCAAIAFBAEc2AgALPQEBfyABIAJBAWoiBEsEQCAAIARBAnRqIAAgAkECdGogAkF/cyABakECdBC4LRoLIAAgAkECdGogAzYCAAtQAAJ/AkACQCACRQRAIAEoAtACIgFFDQEMAgsgASgC1AIiAQ0BQQAQtiYhAUEBDAILQQEQtiYhAUEBDAELQQALIQIgACABNgIEIAAgAjYCAAtQAQF/IwBBEGsiAiQAIAJBCGogASABKAIAKAIEEQAAIAIgAigCCCACKAIMKAIYEQAAIAIoAgQhASAAIAIoAgA2AgAgACABNgIEIAJBEGokAAtSAQJ/IwBBEGsiASQAQZjw4wBBmPDjACgCACICQQFqNgIAIAFBwAAQxQogAEEIaiABQQhqKQIANwIAIAAgASkCADcCACAAIAI2AhAgAUEQaiQAC0wBAn8jAEEQayIDJAAgA0EIaiACQQFBARClFCADKAIIIQQgAygCDCABIAIQ9gYhASAAIAI2AgggACABNgIEIAAgBDYCACADQRBqJAALTAECfyMAQRBrIgIkACACQQhqIgMgAUEIaigCADYCACACIAEpAgA3AwAgAhDGCiAAQQhqIAMoAgA2AgAgACACKQMANwIAIAJBEGokAAtDAQJ/IwBBEGsiBCQAIARBBGoiBSABIAIQrxUgBSADEMcHIABBCGogBEEMaigCADYCACAAIAQpAgQ3AgAgBEEQaiQAC0sBAn8jAEEQayIDJAAgA0EIaiACEKYUIAMoAgghBCADKAIMIAEgAkECdBD2BiEBIAAgAjYCCCAAIAE2AgQgACAENgIAIANBEGokAAtKAQN/IAAoAgghAiAAKAIEIgMhAQNAIAIEQCABKAIAIAFBBGooAgAQuCkgAkEBayECIAFBDGohAQwBCwsgACgCACADQQRBDBC2IgtHACAAKAK4AiAAKALIAkEUbCAAKALUAkECdGogACgCvAIiACgCEEEDdGogACgCHEEFdGogACgCKEEMbGogACgCLGpqQYADagtPAQF/IwBBIGsiASQAIAFBDGogAEEAEMEQIAEtAAxBAUYEQCABIAEpAhA3AhhBnNrDAEEqIAFBGGpB/NjDAEHI2sMAEMAOAAsgAUEgaiQAC0gBAX8gASAAKAIMayICQQF0IAJBH3VzIQIDQCACQYABSUUEQCAAIAJBgH9yENMcIAJBB3YhAgwBCwsgACACENMcIAAgATYCDAtUAQF/IwBBEGsiASQAQQIgACgC/AR0IgBBgICAwABPBEAgASAArTcDCEH04eAAQSsgAUEIakHQ3cMAQeziwwAQwA4ACyABQRBqJAAgAEGAgICAAnILUAEBfyAAIAEpAgA3AgAgAUEANgIAIABBEGogAUEQaikCADcCACAAQQhqIAFBCGopAgA3AgAQrBQhAiAAIAEoAhg2AhggASACNgIYIAEQxCYLTAECfyMAQRBrIgMkACADQQhqIAJBAUEBEOcUIAMoAgghBCADKAIMIAEgAhD2BiEBIAAgAjYCCCAAIAE2AgQgACAENgIAIANBEGokAAtlAQF/AkACQAJAAkBBAiAAKAIAQYCAxABrIgEgAUEITxtBBGsOBAIBAwABCyAAQQRqEOobIAAoAgQgACgCCBDkKQsPCyAAQQRqENkVDwsgAEEEaigCACIAEK8dIABB9ABBBBC9EQtLAQF/IwBBEGsiASQAIAEgACgCAEG5893xeWw2AgwgAUEMaiAAKAIIIAAoAgwQiAsgASgCDCABQRBqJABBBXdB/wFzQbnz3fF5bK0LUwEBfyMAQSBrIgIkACACQQE6AA8gAiABKQGqAjcAAyACIAEoAbICNgALIAIgASkAtwI3ABAgAiABKQC/AjcAGCAAIAEgAkEDahDsFCACQSBqJAALRwEEfyAAKAIoIQMDQCABQShGRQRAIAEgA2oiAigCACEEIAIgACABaiICKAIANgIAIAIgBDYCACABQQRqIQEMAQsLIAAQpyMLRwECfyAAKAIEIgFBDGohAiAAKAIMIAFrQQR2IQEDQCABBEAgAUEBayEBIAIQzyggAkEQaiECDAELCyAAKAIIIAAoAgAQySkLSgEBfyABIAM2AhAgASABKAIIIgQgASgCDGo2AgQgASAEIAMgASgCFCIBayIDajYCACAAIAMgAiABayIBazYCBCAAIAEgBGo2AgALUAEEfyABQcABaiIEELsbQRQhAkERIQMCQCABKALAASIFIAEoAsQBRg0AIAUtAABBPUcNACAEELsbQRUhAkEKIQMLIAAgAzoABCAAIAI2AgALQQACQCABQQFxRQRAQQAhAQwBC0F/IAJBAWtndkEAIAJBAk8bIgJBf0chASACQQFqIQILIAAgAjYCBCAAIAE2AgALSQECfyAALQAmIQMgAEEAOgAmIAEoAghBBHQhAiABKAIEIQEDQCACBEAgACABEJEdIAJBEGshAiABQRBqIQEMAQsLIAAgAzoAJgu/sQECD38CfiMAQRBrIg0kACANQQxqIg9BADYCACANQoCAgICAATcCBCANQQRqIQUjAEHwAGsiAyQAAkBBgIzkACgCACIMBEAgA0EIaiAMQQRqEOcaIAMoAgwhDiADKAIIIgstAABFDQFBmPHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIIDAELQazQ4ABByAAQ3ioACyALLQABBEBBrPHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQACBEBBwPHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQADBEBB1PHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAEBEBB6PHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAFBEBB/PHjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAGBEBBkPLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAHBEBBpPLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAIBEBBuPLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAJBEBBzPLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAKBEBB4PLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQALBEBB9PLjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAMBEBBiPPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQANBEBBnPPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAOBEBBsPPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAPBEBBxPPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAQBEBB2PPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQARBEBB7PPjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQASBEBBgPTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQATBEBBlPTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAUBEBBqPTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAVBEBBvPTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAWBEBB0PTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAXBEBB5PTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAYBEBB+PTjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAZBEBBjPXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAaBEBBoPXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAbBEBBtPXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAcBEBByPXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAdBEBB3PXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAeBEBB8PXjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAfBEBBhPbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAgBEBBmPbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAhBEBBrPbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAiBEBBwPbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAjBEBB1PbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAkBEBB6PbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAlBEBB/PbjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAmBEBBkPfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAnBEBBpPfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAoBEBBuPfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQApBEBBzPfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAqBEBB4PfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQArBEBB9PfjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAsBEBBiPjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAtBEBBnPjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAuBEBBsPjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAvBEBBxPjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAwBEBB2PjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAxBEBB7PjjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAyBEBBgPnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQAzBEBBlPnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA0BEBBqPnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA1BEBBvPnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA2BEBB0PnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA3BEBB5PnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA4BEBB+PnjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA5BEBBjPrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA6BEBBoPrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA7BEBBtPrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA8BEBByPrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA9BEBB3PrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA+BEBB8PrjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQA/BEBBhPvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBABEBBmPvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBBBEBBrPvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBCBEBBwPvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBDBEBB1PvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBEBEBB6PvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBFBEBB/PvjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBGBEBBkPzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBHBEBBpPzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBIBEBBuPzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBJBEBBzPzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBKBEBB4PzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBLBEBB9PzjABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBMBEBBiP3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBNBEBBnP3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBOBEBBsP3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBPBEBBxP3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBQBEBB2P3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBRBEBB7P3jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBSBEBBgP7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBTBEBBlP7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBUBEBBqP7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBVBEBBvP7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBWBEBB0P7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBXBEBB5P7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBYBEBB+P7jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBZBEBBjP/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBaBEBBoP/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBbBEBBtP/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBcBEBByP/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBdBEBB3P/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBeBEBB8P/jABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBfBEBBhIDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBgBEBBmIDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBhBEBBrIDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBiBEBBwIDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBjBEBB1IDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBkBEBB6IDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBlBEBB/IDkABDtECIBKAIEIQYgBSABKAIIIgEQ+B4gBSgCCCECIAUgAQR/IAEgAmogBSgCBCACQTBsaiECIANBGGohCUHYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayIHIAYQbyAMKAIAEIcEIQRBABCnERCHBCEKIAkgEDcDACADIAQ2AiAgAyAKNgIkIAMgETcDECAHIANBEGoiBBDTBCAEEOcKIAQgB0EwEPYGGiACIARBMBD2BkEwaiECIAZBMGohBiABQQFrIgENAAsFIAILNgIICyALLQBmBEBBkIHkABDtECIBKAIEIQIgBSABKAIIIgYQ+B4gBSgCCCEBIAUgBgR/IAEgBmogBSgCBCABQTBsaiEBIANBGGohB0HYluMAKQMAIRBB0JbjACkDACERA0AgA0FAayILIAIQbyAMKAIAEIcEIQVBABCnERCHBCEIIAcgEDcDACADIAU2AiAgAyAINgIkIAMgETcDECALIANBEGoiBRDTBCAFEOcKIAUgC0EwEPYGGiABIAVBMBD2BkEwaiEBIAJBMGohAiAGQQFrIgYNAAsFIAELNgIICyAOIA4oAgBBAWs2AgAgA0HwAGokACAAQQhqIA8oAgA2AgAgACANKQIENwIAIA1BEGokAAtCAQF/IwBBEGsiAyQAIAFQBH5CAAUgAyABIAIQpCMgAygCCCECIAMpAwALIQEgACACNgIIIAAgATcDACADQRBqJAALSwECfyMAQUBqIgEkAEHAjeQALQAAGkHIABBgIgJFBEAACyABIAIgAEHIABD2BjYCICABQQI6ABwgAUEPNgIAIAEQvSggAUFAayQAC0UBAn8gACgCCEEobCECIAAoAgQhAQNAIAIEQCABKAIAQQdHBEAgARDREwsgAUEoaiEBIAJBKGshAgwBCwsgAEEUahDmJQtTAQF/IwBBIGsiAiQAIAJBAToADyAC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QCADIARNDQAgAS0AACACIARqLQAARw0AIAAgBDYCBEEBIQUgACAEQQFqNgIICyAAIAU2AgALQQEBf0EYEM0gIgJBEGogAUEQaikCADcCACACQQhqIAFBCGopAgA3AgAgAiABKQIANwIAIAAgAjYCBCAAQQA2AgALOgACQCACIANNBEBBACEDDAELIAEgA0EDdGoiASgCAEEIaiEDIAEoAgQhAgsgACACNgIEIAAgAzYCAAs8AQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFB3MfYAEEQIABBDGpB+gAgAkEMakGbARCqCiACQRBqJAALPAEBfyMAQRBrIgIkACACIAAoAgAiAEEMajYCDCABQcjO2ABBByAAQeEBIAJBDGpBpAIQqgogAkEQaiQACzsBAX8gACgCACgCACICKQMAIAAoAgQoAgAgAUEEdGtBEGsiACkDAIUgAkEIaikDACAAQQhqKQMAhYRQC0UBAX9B4IbkACgCACIBRQRAQazQ4ABByAAQ3ioACyABENIfIAFBCGooAgAgAUEMaigCACAAQdjE2AAQnh8oAgAgARC+Hgs9AAJAIAAoAgAiACgCAEEDRwRAIAAQ+hsMAQsgAEEQahCaAyAAQQRqEMwmIABBIGoQzSYLIABBKEEIEL0RCzgBAX8gACgChAEiAUGAAU0EfyAAQQFqBSAAKAIEIQEgACgCCAsgAUUEQEEAQQBB+NjfABCbEAALCywBAX8jAEEQayIBJAAgASAANgIMIAFBATYCCCABQQhqEKYjIAFBEGokAEEACzIBAn8gAkEDdCECA0AgAiIDBEAgAkEIayECIAEgABCvCyABQQhqIQFFDQELCyADQQBHCzoBAX8jAEFAaiIBJAAgAUEMaiAAQQhqKQIANwIAIAFBIDYCACABIAApAgA3AgQgARC9KCABQUBrJAALOgEBfyMAQUBqIgEkACABQQxqIABBCGooAgA2AgAgAUEqNgIAIAEgACkCADcCBCABEL0oIAFBQGskAAs6AQF/IwBBQGoiASQAIAFBDGogAEEIaikCADcCACABQRE2AgAgASAAKQIANwIEIAEQvSggAUFAayQACzoBAX8jAEFAaiIBJAAgAUEMaiAAQQhqKQIANwIAIAFBMDYCACABIAApAgA3AgQgARC9KCABQUBrJAALOgEBfyMAQUBqIgEkACABQQxq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AQN/IAAgASgCFCICIAEoAgwiA0kEfyABKAIIIAJqLQAABSAECzoACSAAIAIgA0k6AAggACABKQIANwIAC3gBA38gACgCCCIEIAAoAgBGBEAjAEEQayIDJAAgA0EIaiAAIAAoAgBBAUEBQQIQnAggAygCCCIFQYGAgIB4RwRAIAUgAygCDBC+KQALIANBEGokAAsgACAEQQFqNgIIIAAoAgQgBEEBdGoiACACOgABIAAgAToAAAs8ACAAIAEgAhCiESAAIAQ6ACQgACADKQIANwIMIABBFGogA0EIaikCADcCACAAQRxqIANBEGopAgA3AgALOAEBfyMAQRBrIgMkACADQQA2AgwgAyACIANBDGoQ2QkgACABIAMoAgAgAygCBBCVFSADQRBqJAALRwACQAJAAkACQCAALQAADgUBAQECAwALIABBBGoQwwQLDwsgACgCBCAAKAIIELgpDwsgAEEEahDyGyAAKAIEIAAoAggQ6CkLPAEBfyAAKAIAKAIAIQAgASgCHCICQRBxRQRAIAJBIHFFBEAgACABEL0pDwsgACABENAMDwsgACABENEMCzUBAn8jAEEQayIBJAAgAC0AAEEERwRAIAEgACkCADcDCCABQQhqEPEbIQILIAFBEGokACACCzcBAn8gAEEIaiECIAFBCGohAyAAAn4gASgCAEUEQCACIAMQtRtCAAwBCyACIAMQ5R1CAQs3AwALPQACQCAAKAIAIgAoAgBBA0cEQCAAEIIcDAELIABBEGoQuSggAEEEahDMJiAAKAIgELooCyAAQShBCBC9EQs7AQF+EMEYIABBADYCGCAAIAEpAwA3AwAgAEEQaiABQRBqKQMANwMAIABBCGogAUEIaikDADcDABDWGgs1AQJ/AkAgAEIDg1BFIABQcg0AIACnQQhrIgEgASgCACICQQFrNgIAIAJBAUcNACABEKMfCws+AQF/IAAgACgCAEEBayIBNgIAAkAgAQ0AIABBCGoQ+gcgACAAKAIEQQFrIgE2AgQgAQ0AIABBHEEEEL0RCws9AAJAIAAoAgAiACgCAEEDRwRAIAAQjRwMAQsgAEEQahDaAiAAQQRqEMwmIAAoAiAQuigLIABBKEEIEL0RCz0AAkAgACgCACIAKAIAQQNHBEAgABCOHAwBCyAAQRBqEM8oIABBBGoQzCYgACgCIBC6KAsgAEEo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AiQAIAIgACgCADYCDCABQd6W2gBBDEGT0OAAQQQgAkEMakGlAhDCCyACQRBqJAALNAEBfyABKAIIQQJ0IQIgASgCBCEBA0AgAgRAIAEgABC9KyACQQRrIQIgAUEEaiEBDAELCws0AQF/IAAoAghBMGwhAiAAKAIEIQADQCACBEAgACABENMEIAJBMGshAiAAQTBqIQAMAQsLCzQBAX8gACgCCEECdCECIAAoAgQhAANAIAIEQCAAIAEQwSsgAkEEayECIABBBGohAAwBCwsLNAEBfyAAKAIIQTBsIQIgACgCBCEAA0AgAgRAIAAgARDRBCACQTBrIQIgAEEwaiEADAELCws0AQF/IAAoAghBAnQhAiAAKAIEIQADQCACBEAgACABEMArIAJBBGshAiAAQQRqIQAMAQsLCzQBAX8gACgCCEECdCECIAAoAgQhAANAIAIEQCAAIAEQwisgAkEEayECIABBBGohAAwBCwsLNAEBfyAAKAIIQTBsIQIgACgCBCEAA0AgAgRAIAAgARD5BCACQTBrIQIgAEEwaiEADAELCws0AQF/IAAoAghBAnQhAiAAKAIEIQADQCACBEAgACABELwrIAJBBGshAiAAQQRqIQAMAQsLCzQBAX8gACgCCEECdCECIAAoAgQhAANAIAIEQCAAIAEQuysgAkEEayECIABBBGohAAwBCwsLNAEBfyAAKAIIQQJ0IQIgACgCBCEAA0AgAgRAIAAgARC/KyACQQRrIQIgAEEEaiEADAELCws0AQF/IAAoAghBMGwhAiAAKAIEIQADQCACBEAgACABEJEFIAJBMGshAiAAQTBqIQAMAQsLCzMBAX8gACgCCEEwbCECIAAoAgQhAANAIAIEQCAAIAEQXyACQTBrIQIgAEEwaiEADAELCwtyAQN/IAAoAggiAyAAKAIARgRAIwBBEGsiAiQAIAJBCGogACAAKAIAQQFBBEEsEJwIIAIoAggiBEGBgICAeEcEQCAEIAIoAgwQvikACyACQRBqJAALIAAoAgQgA0EsbGogAUEsEPYGGiAAIANBAWo2AggLNAEBfyAAKAIIQTBsIQIgACgCBCEAA0AgAgRAIAEgABDKASACQTBrIQIgAEEwaiEADAELCws0AQF/IAAoAghBDGwhAiAAKAIEIQADQCACBEAgACABEL0rIAJBDGshAiAAQQxqIQAM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AAsvAQF/AkAgAEUNACAAKAIAQRJHDQAgACgCBCIAKAIAQRtHDQAgACgCCEUhAQsgAQs+AQF/IABBBGohAgJAAkACQCAAKAIAQQFrDgIBAgALIAIgARDPKw8LIAEgAigCABCDIQ8LIAIoAgAgARC1EQstAQF/IwBBQGoiASQAIAFBCGogAEEoEPYGGiABQRQ2AgAgARC9KCABQUBrJAALNwAgAC0AJUECRgRAIAAQmwYgACgCACAAKAIEEPMpDwsgACkDCBDWGiAAKAIgIgAQvxsgABDRLAsvAQF/AkAgACABEK8LRQ0AIAAoAgggASgCCEcNACAAQRBqIAFBEGoQrwshAgsgAgswACAAKAIAIgAoAgBBA0cEQCAAEPkfDwsgAEEQahDfLSAAQQRqELcZIABBIGoQxSULMAAgACgCACIAKAIAQQNHBEAgABD6Hw8LIABBEGoQ4S0gAEEEahC4GSAAQSBqEPQoCzAAIAEgABCkEiIAQiCIpyAApyABKAIAQQV3c0G5893xeWxBBXdzQbnz3fF5bDYCAAs0AQF/IAEoAhQiASgCAEECRwRAQQQQzSAiAiABQQRqNgIACyAAQdDO3wA2AgQgACACNgIACzgBAX8CQCABKAIAIgIgASgCBEYEQEEAIQIMAQsgASACQQxqNgIACyAAQcjP3wA2AgQgACACNgIACy0BA38gACgCACICIAEoAgAiA3JFIQQgAkUgA0VyBH8gBAUgACABEKEqC0EBcwstAQF/IwBBMGsiASQAIAFBEGogABDRGCABQQA2AgggAUEIahD/KSABQTBqJAALLgEBfyMAQRBrIgIkACACIAA2AgwgAUHUycMAQQwgAkEMakENEMQKIAJBEGokAAsuAQF/IwBBEGsiAiQAIAIgADYCDCABQYiWwABBBiACQQxqQR0QxAogAkEQaiQACy4BAX8jAEEQayICJAAgAiAANgIMIAFB2JfEAEEGIAJBDGpBIhDECiACQRBqJAALKwAgAiADSQRAIAMgAiAEEJwQAAsgACACIANrNgIEIAAgASADQQJ0ajYCAAsrACABIANLBEAgASADIAQQnBAACyAAIAMgAWs2AgQgACACIAFBAnRqNgIACy0AIAAoAiQgACgCFEEMbGogACgCICAAKAIIakECdGogACgCMEEAIAAoAigbagsuACABIANLBEAgASADQbC+4AAQnBAACyAAIAMgAWs2AgQgACACIAFBAnRqNgIACy4BAX8jAEEQayICJAAgAiAANgIMIAFBxLXAAEEIIAJBDGpBNRDECiACQRBqJAALLgEBfyMAQRBrIgIkACACIAA2AgwgAUGAvcMAQQ8gAkEMakE5EMQKIAJBEGokAAsuAQF/IwBBEGsiAiQAIAIgADYCDCABQcP92QBBBCACQQxqQTsQxAogAkEQaiQACzYBAX8gASgCBCABQQhqIgQoAgAgAiADENYFIAEQxgogAEEIaiAEKAIANgIAIAAgASkCADcCAAstAQJ/IwBBEGsiBSQAIAVBBGoiBiABIAIQrxUgACAGIAMgBBDSGyAFQRBqJAALKgEBfyMAQRBrIgIkACACQQhqQQogACABENQNIAIoAgggAkEQaiQAQQFGCy8BAX8jAEEQayICJAAgAiAANgIMIAFBq43DAEEGIAJBDGpB6wAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFBpI3DAEEHIAJBDGpB7QAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFBhsHDAEESIAJBDGpB7wAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFBov3DAEEGIAJBDGpB8QAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFB7IrDAEEJIAJBDGpB9QAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFB+Y3EAEEKIAJBDGpB/AAQxAogAkEQaiQACy8BAX8jAEEQayICJAAgAiAANgIMIAFBsY3DAEENIAJBDGpBgwEQxAogAkEQaiQACy0BAX8gACABKAIAQQFGBH8gAEEEakEAIAEoAgQgASgCCBDXEkEBBSACCzYCAAsvAQF/IwBBEGsiAiQAIAIgADYCDCABQa2XxABBByACQQxqQY4BEMQKIAJBEGokAAsuAQF/IwBBEGsiAiQAIAIgADYCDCABQcSXxABBBiACQQxqQRIQxAogAkEQaiQACzQBAX8gACABKAIIIgIgASgCAEkEfyABIAJBBBDQDyABKAIIBSACCzYCBCAAIAEoAgQ2AgALMQEBfyMAQRBrIgMkACACIAAgARDjCCADQf8BOgAPIAIgA0EPakEBEOMIIANBEGokAAswAQF/IwBBEGsiAyQAIAMgATYCDCACIANBDGpBBBDjCCACIAAgARDjCCADQRBqJAALKwAgASADSwRAIAEgAyAEEJwQAAsgACADIAFrNgIEIAAgAiABQQR0ajYCAAsxAQF/IAEoAgAiAiABKAIERgRAIABBKzYCAA8LIAEgAkEcajYCACAAIAEoAgggAhAwCysAIAEgA0sEQCABIAMgBBCcEAALIAAgAyABazYCBCAAIAIgAUEBdGo2AgALLwEBfyMAQRBrIgIkACACIAA2AgwgAUH5jcQAQQogAkEMakG9ARDECiACQRBqJAALLwEBfyMAQRBrIgIkACACIAEpAgA3AgggACACQQhqIgAQyxogABDKHiACQRBqJAALLgEBfyMAQRBrIgIkACACIAA2AgwgAUGg68MAQQsgAkEMakE7EMQKIAJBEGokAAsqAQF/IAJB////P3EiAiABKAJ8SQR/IAJBfyAAKAL8BHRBf3NxRQUgAwsLLgEBfyMAQRBrIgIkACACIAA2AgwgAUGE68MAQQogAkEMakE5EMQKIAJBEGokAAswAQF/IAAoAgghASAAKAIEIQADQCABBEAgAUEBayEBIAAQ9BcgAEHYAGohAAwBCwsLMAEBfwJAIAAoAgAgASgCAEcNACAAKAIEIAEoAgRHDQAgACgCCCABKAIIRiECCyACCyIBAX9BASAAQcEAa0EGSSAAQTBrQQpJIABB4QBrQQZJchsLOwEBf0GAwAMhAQJAIABB/68DRg0AIABBAWoiAUGAsANzQYCAxABrQf+PvH9LDQBBvMPWABC8KQALIAELLgEBfyMAQRBrIgIkACACIAA2AgwgAUGgtscAQRAgAkEMakE5EMQKIAJBEGokAAsrACABIANLBEAgASADIAQQnBAACyAAIAMgAWs2AgQgACACIAFBA3RqNgIACysAIAEgA0sEQCABIAMgBBCcEAALIAAgAyABazYCBCAAIAIgAUEYbGo2AgALNgEBfkHAjeQALQAAGiAAKQIAIQFBFBBgIgBFBEAACyAAQgA3AgwgACABNwIEIABBATYCACAACy8BAX8gACgCCCEBIAAoAgQhAANAIAEEQCABQQFrIQEgABDMGCAAQRhqIQAMAQsLCzwAAkACQAJAAkAgAC0AAA4HAwMDAQIAAwALIABBBGoQwwQPCyAAKAIEIAAoAggQpyQPCyAAQQRqEMYmCwspAQJ/IwBBEGsiAyQAIANBCGoiBCAAIAEgAhD4AyAEEM4YIANBEGokAAstAQF/IwBBEGsiAiQAIAJBCGogABCRDCABIAIoAgggAigCDBClAyACQRBqJAALSgECfyMAQRBrIgIkACACQQA2AgwjAEEQayIDJAAgAyABNwMIIAMgADcDACACQQxqIANBEBCICyADQRBqJAAgAjUCDCACQRBqJAALLwEBfyMAQRBrIgIkACACIAA2AgwgAUHsvNgAQQkgAkEMakGVAhDECiACQRBqJAALLgEBfyMAQRBrIgIkACACIAA2AgwgAUHsx9gAQQcgAkEMakE7EMQKIAJBEGokAAs3AgF/AX4gACgCACIBRQRAQQAPCxDZIiEAIAEpAgQhAiABENkZIQEgACACNwIEIAAgATYCACAACzcAIABBIGoQmgMCQAJAAkAgACgCAA4CAQIACyAAQQRqEJoDDwsgACkDCBDWGg8LIAApAwgQ1hoLLwEBfyAAKAIIIQEgACgCBCEAA0AgAQRAIAFBAWshASAAELETIABBKGohAAwBCwsLNwEBfwJAIAAtACxBAkYEQCAAKAIYIgEQ/BsgAUEwQQgQvREMAQsgACkDGBDWGgsgACkDABDWGgsvAQF/IAAoAgghASAAKAIEIQADQCABBEAgAUEBayEBIAAQuCEgAEEwaiEADAELCwstAANAIAEEQCAAQRBqKQMAENYmIAApAwAQ1hogAUEBayEBIABBIGohAAwBCwsLLwEBfyAAKAIIIQEgACgCBCEAA0AgAQRAIAFBAWshASAAEOIkIABBKGohAAwBCwsLLwEBfyAAKAIIIQEgACgCBCEAA0AgAQRAIAFBAWshASAAELgoIABBQGshAAwBCwsLLwEBfyAAKAIIIQEgACgCBCEAA0AgAQRAIAFBAWshASAAEN0FIABBMGohAAwBCwsLNwAgAEEgahC5KAJAAkACQCAAKAIADgIBAgALIABBBGoQuSgPCyAAKQMIENYaDwsgACkDCBDWGgs0AQN+IAEpAwAhAiABKQMIIQMQwRggAEEANgIQIAAgAzcDCCAAQQA6ABQgACACNwMAENYaCy4BAX8jAEFAaiICJAAgAiABNgIIIAIgADYCBCACQTE2AgAgAhC9KCACQUBrJAALMAEBfyMAQRBrIgEkACABQQhqIAAQkQxByJTZACABKAIIIAEoAgwQgwQgAUEQaiQACzAAIAACfyABLQAARQRAIAAgAS0AAToAAUEADAELIAAgASkDCBDaGjcDCEEBCzoAAAs4AQF/IAAgASABKAIAQQJ0IgJB1NvjAGooAgBqKAIANgIEIAAgASACQcDb4wBqKAIAaigCADYCAAswAQF/IwBBEGsiASQAIAFBCGogABCRDEHglNkAIAEoAgggASgCDBCDBCABQRBqJAALLAEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJBCGpBARCzEyACQRBqJAALKwEBfyMAQRBrIgIkACACQQhqQd8AIAAgARDUDSACKAIIIAJBEGokAEEBRgssAQF/IwBBEGsiAiQAIAIgATYCDCACIAA2AgggAkEIakECELMTIAJBEGokAAsxACAAIAEpAwg3AwAgAEEQaiABQRhqKQMANwMAIABBCGogAUEQaikDADcDACABELorCzcAIABBIGoQ2gICQAJAAkAgACgCAA4CAQIACyAAQQRqENoCDwsgACkDCBDWGg8LIAApAwgQ1hoLNwAgAEEgahDPKAJAAkACQCAAKAIADgIBAgALIABBBGoQzygPCyAAKQMIENYaDwsgACkDCBDWGgs3ACAAQSBqEMUDAkACQAJAIAAoAgAOAgECAAsgAEEEahDFAw8LIAApAwgQ1hoPCyAAKQMIENYaCzcAIABBIGoQogICQAJAAkAgACgCAA4CAQIACyAAQQRqEKICDwsgACkDCBDWGg8LIAApAwgQ1hoLLgAgACgCACIAKAIAQQNHBEAgACABEP0eDwsgAEEQaiABELwrIABBBGogARDbGAsuACAAKAIAIgAoAgBBA0cEQCAAIAEQ/h4PCyAAQRBqIAEQvSsgAEEEaiABEN0YCy4AIAAoAgAiACgCAEEDRwRAIAAgARD/Hg8LIABBEGogARDBKyAAQQRqIAEQ3hgLLgAgACgCACIAKAIAQQNHBEAgASAAEIAfDwsgAEEQaiABEMIrIABBBGogARDfGAsuACAAKAIAIgAoAgBBA0cEQCAAIAEQgR8PCyAAQRBqIAEQwCsgAEEEaiABEOAYCzsBAX8gAEEEaiECAkACQAJAIAAoAgBBAWsOAgECAAsgAiABENsrDwsgAigCACABEMUSDwsgAiABENkrCzcAIABBIGoQ2wICQAJA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QRhBBBC9EQsvACAAENcmIABBDGoQ7CYgAEEwahD0JyAAKAI0EL4oIAAoAjgQuiggAEEYahDYJgs1AQF/IABBBGohAQJAAkACQCAAKAIADgIBAgALIAEQjSYPCyABKAIAEPgqDwsgASgCABDBKAssAQF/IAAoAgAiAUECRwRAIABBBGohACABRQRAIAAoAgAQ+CoPCyAAEJgpCwsuAQF/A0AgAEEYaiECIAAtACxBAkdFBEAgAigCACEADAELCyABKAIUIAIQ9gUaCzABAX8gAUEIayICIAIoAgBBAWoiAjYCACACRQRAAAsgACABNgIEIABBoJzjADYCAAsqACABKAIARQRAIAFBfzYCACAAIAE2AgQgACABQQRqNgIADwsgAhDbFAALKgEBfyMAQRBrIgMkACADIAAoAgA2AgwgA0EMaiABIAIQ9QggA0EQaiQACywBAX8CQCAAKAIAIgFFDQAgASABKAIAIgFBAWs2AgAgAUEBRw0AIAAQsA4LC+4BAgJ/AX4jAEEQayICJAAgAkEBOwEMIAIgATYCCCACIAA2AgQjAEEQayIBJAAgAkEEaiIAKQIAIQQgASAANgIMIAEgBDcCBCMAQRBrIgAkACABQQRqIgEoAgAiAigCDCEDAkACQAJAAkAgAigCBA4CAAECCyADDQFBASECQQAhAwwCCyADDQAgAigCACICKAIEIQMgAigCACECDAELIABBgICAgHg2AgAgACABNgIMIABBkQIgASgCCCIALQAIIAAtAAkQiRMACyAAIAM2AgQgACACNgIAIABBkgIgASgCCCIALQAIIAAtAAkQiRMACzMAIAEoAhQgACgCAC0AAEECdCIAQcyd4wBqKAIAIABBvJ3jAGooAgAgASgCGCgCDBEDAAsoACABIAIgAyAEENMfIQMgACACIARrNgIEIAAgASAEakEAIAMbNgIACzMAIAEoAhQgACgCAC0AAEECdCIAQbzU4wBqKAIAIABBoNTjAGooAgAgASgCGCgCDBEDAAsnAQF/IwBBEGsiASQAIAFBCGogACgC1AIQwxEgASgCDCABQRBqJAALLgAgACgCAEGAgICAeEYEQEGE7cMAELwpAAsgAEEMaiABENcLIABBPGogARDXCwszACABKAIUIAAoAgAtAABBAnQiAEHk0uMAaigCACAAQdjS4wBqKAIAIAEoAhgo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JQAgACABIAIoAghBAWtBeHFqQQhqIAMgBCAFIAYgAigCIBEIAAsnACABLQAQQQFxBEAgAxDUAwsgAgRAIAMQqwgLIABBgICAgHg2AgALJgAgAkUEQEEBQQAgAxCcEAALIAAgAkEBazYCBCAAIAFBCGo2AgALIwAgACACQQdxIANBA3RyNgIEIAAgAkH4AXFBA3YgAXI2AgALMAAgASgCFCAALQAAQQJ0IgBBnLjYAGooAgAgAEH0ttgAaigCACABKAIYKAIMEQMACzAAIAEoAhQgAC0AAEECdCIAQdzX4wBqKAIAIABBuNfjAGooAgAgASgCGCgCDBEDAAswAQJ+IAEpAxAhAiABKQMAENoaIQMgACABKQMIENoaNwMIIAAgAzcDACAAIAI3AxALMAECfiABKQMIIQIgASkDABDaGiEDIAAgASkDEBCeIzcDECAAIAM3AwAgACACNwMICy8CAX4BfyABKQIAIQIgASgCCCEDIAAgAUEMahDYHDYCDCAAIAM2AgggACACNwIACy8CAX4BfyABKQIIIQIgARDYHCEDIAAgAUEEahDZGTYCBCAAIAM2AgAgACACNwIICy8CAX4BfyABKQIIIQIgARDYHCEDIAAgAUEEahDjEDYCBCAAIAM2AgAgACACNwIICyoAIAApAwggACkDGBDvKiAALQA0QQNHBEAgAEEgahC2GwsgACgCOBC6KAsqACAAKQMIIAApAxgQ7yogAC0ANEEDRwRAIABBIGoQthsLIAAoAjgQ4CILLwACQAJAAkAgACgCAA4CAQIACyAAQQRqEL8oDwsgACkDCBDWGg8LIAApAwgQ1hoLKwEBfwJAAkACQCAAQQprDgQBAgIBAAsgAEGowABrQQJPDQELQQEhAQsgAQssAQF/IABBBGohASAAKAIAIgBBgICAgHhHBEAgACABKAIAEKckDwsgARDsIgssACAAKQMIENYaIAAoAiAQoB4gAEE4ahDYJiAAQSRqENQmIABByABBCBC9EQsoAEEGIQEgACACIANBv67gAEEFEM0fBH8gAEELOgABQQAFIAELOgAACygAQQYhASAAIAIgA0Hsp+AAQQMQzR8EfyAAQRI6AAFBAgUgAQs6AAALKABBBiEBIAAgAiADQayD4ABBBBDNHwR/IABBJDoAAUEABSABCzoAAAsoAEEGIQEgACACIANBnbLgAEEFEM0fBH8gAEEdOgABQQIFIAELOgAACyUAIABBCGoQjycgAC0ANEEDRwRAIABBIGoQthsLIABBOGoQiCULJQAgAEEIahDVKCAALQA0QQNHBEAgAEEgahDgHAsgAEE4ahCIJQsqAQF/A0AgAEEYaiECIAAtACxBAkdFBEAgAigCACEADAELCyABIAIQ+ggLKQAgASAAENYhIABBIGogARDJIyAAQegAaiABENYrIABByABqIAEQyCMLKQAgASAAENghIABBIGogARDHIyAAQegAaiABENMrIABByABqIAEQxiMLKAACQCAALQAoRQRAIABBDGogARDiKAwBCyAAQSxqIQALIAAgARD7HgsoACAALQAUQQJGBEAgACgCACIAQgA3AxAgAEEYahD5HQsgAEIANwMICyoAIAApAwggACkDGBDvKiAALQA0QQNHBEAgAEEgahDkHAsgACgCOBC6KAstAQJ/EOgiIQEQ6CIhAiAAQRBqQQA6AAAgAEIANwIIIAAgAjYCBCAAIAE2AgALKQAgAC0AFEECRgRAIAAoAgAiABDOJyAAQTBBCBC9EQ8LIAApAwAQ1hoLLwACQAJAAkAgACgCAA4CAQIACyAAQQRqEIUpDwsgACkDCBDWGg8LIAApAwgQ1hoLLgAgACgCCCIAQQRqKAIAIABBCGooAgBBwNDfABCTIyIAKAIEIAAoAgggARDXKgsuACAAKAIUIgBBFGooAgAgAEEYaigCAEGU0N8AEJMjIgAoAgQgACgCCCABENcqCzAAIAEoAhQgAC0AAEECdCIAQezn4wBqKAIAIABByOfjAGooAgAgASgCGCgCDBEDAAsvAAJAAkACQCAAKAIADgIBAgALIABBBGoQmCkPCyAAKQMIENYaDwsgACkDCBDWGgskACACRQRAIAEEQCAAIAFBCBC9EQtBCA8LIAAgAUEIIAIQ9AILJwEBfyMAQSBrIgIkACACQQg2AgggACABIAJBCGoQyB8gAkEgaiQACycBAX8jAEEgayICJAAgAkEXNgIIIAAgASACQQhqEMgfIAJBIGokAAsmAQF/IAAtABQgAEEBOgAUIABBCGshAEUEQCAAELYtDwsgABDqDgsjACABIANNBEAgACABNgIEIAAgAjYCAA8LIAEgAyAEEJ0QAAsnACABIANHBEBBjJ/AAEEoQbSfwAAQ2hcACyACIAAgAUECdBD2BhoLJgAgAUELTQRAIAAgATYCBCAAIAI2AgAPCyABQQtBxJ/AABCdEAALHgEBf0EBQSAgAEEBcmdrQQF2IgF0IAAgAXZqQQF2CykAIAAoAgQgACgCCCAAIANB/wFxakFAay0AACACakHgjsQAEJkfKAIACyUAIAAgAiADEKEKIABBEGogAkEQaiADEKEKIAJBCCABIAMQxgcLJQAgACgCACAAKAIEIgAoAghBAWtBeHFqQQhqIAEgACgCDBECAAslACAAKAIAIAAoAgQiACgCCEEBa0F4cWpBCGogASAAKAJQEQIAC14BAX8gACgCACIBIAEoAgAiAUEBazYCACABQQFGBEAgACgCACIAKAIMIABBEGooAgAQuCkCQCAAQX9GDQAgACAAKAIEIgFBAWs2AgQgAUEBRw0AIABBGEEEEL0RCwsLJwAgACgCAEGAgICAeEcEQCAAEL4mIABBJGoQ8RcPCyAAQQRqEL4mCyEAIAEgA0cEQCABIAMgBBChEAALIAAgAiABQQJ0EPYGGgsuACABKAIUQejdwwBBvd3DACAAKAIALQAAIgAbQQ1BAyAAGyABKAIYKAIMEQMACycAIAIEQEHAjeQALQAAGiACIAEQpSEhAQsgACACNgIEIAAgATYCAAsjACABIANNBEAgACABNgIEIAAgAjYCAA8LQQJBASAEEJ0QAAsqAQJ/IAAoAgghASAAKAIEIQIgACgCAEUEQCACIAEQyikPCyACIAEQ1ikLIgEBfyAAEO8IBH8gABDbBSAAKAIAKAJQIAAoAghHBSABCwspAQF/IABBBCAAKAIAQf7///8HaiIBIAFBBE8bQQJ0QfDS4wBqKAIAagslACACIAMgAUEBEJUVIQEgACADQQFrNgIEIAAgAkEAIAEbNgIACzMBAX9BfyECA0AgAkEBaiECIABCzZmz5syZs+ZMfiIAQrTmzJmz5syZM1QNAAsgASACTQspACAAIAAtAAQgAUEuRnI6AAQgACgCACIAKAIUIAEgACgCGCgCEBECAAssAQF/QQEhAiABKAIUQYjF2ABBAiABKAIYKAIMEQMABH8gAgUgACABEIUbCwsgACABKAIAIAJBaGxqQRhrIgApAwAgAEEIaikDABD2GwslACACIAMgAUEBENEdIQEgACADQQFrNgIEIAAgAkEAIAEbNgIACy8C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AgAgAiABKAIAdkHclsMAEJkfKAIACykAIAAoAhAgACgCFCAAKAK0AiABIAAoArACdGpB4JPDABCcHyACNwMACyoBAX8gACgCBCIBIAAoAggQwxwgACgCACABEL8pIAAoAgwgACgCEBC7KQsfACABIAJNBEAgAiABQcSXwwAQmxAACyAAIAJBA3RqCx8AIAEgAk0EQCACIAFB1JfDABCbEAALIAAgAkEFdGoLHwAgASACTQRAIAIgAUHkl8MAEJsQAAsgACACQQV0agsfACABIAJNBEAgAiABQaSYwwAQmxAACyAAIAJBDGxqCx8AIAEgAk0EQCACIAFBwKLDABCbEAALIAAgAkEMbGoLHQAgACABIAIgAyABQQFyZ0EBdEE+c0EAIAQQpgELHAAgASACTQRAIAIgASADEJsQAAsgACACQRhsagsdACABRQRAQQEPCyABQQN0IABqQQRrKAIAQYABSQsnAQJ/IABBADYCrAEgACgCqAEhAiAAKAKkASAAIAE3AqQBIAIQuCkLHAAgASACTQRAIAIgASADEJsQAAsgACACQRxsagscACABRQRAQQEPCyABQQF0IABqQQFrLAAAQQBOCxwAIAEgAk0EQCACIAEgAxCbEAALIAAgAkEBdGoLIQAgASADRwRAIAEgA0H8kdgAEKEQAAsgACACIAEQ9gYaCyYAIAAoAgBBgICAgHhGBEAgARCBHQ8LIAAoAgQgACgCCCABEOcqCyEBAX8gACAALQAAIgFBASABGzoAACABBEAgABDMAwsgAAsgACABKAIAIAJBBHRrQRBrIgApAwAgAEEIaikDABD2GwspAgF+AX8gASkCDCECIAEoAhQhAyAAIAEQiwwgACADNgIUIAAgAjcCDAsiAQF/IABBgLADc0GAgMQAa0GAkLx/TwR/IAAQ0BEFIAELCyEAAkAgAQ0AIAItABlBAWtB/wFxQQFNDQAgAiAAEM4tCwsgAQF/IAAtACwiAUEESyABQQNGckUEQCAAQRhqELMgCwsiACAAQgA3AgwgACgCAEUEQCAAQgA3AgQPCyAAQQRqEMYtCyAAIAEoAgAgAkEEdGsiAEEQaykDACAAQQhrKAIAEJscCxwBAX8gACABEK8LBH8gACgCCCABKAIIRgUgAgsLJAAgABDDFiAAQUBrEOwPIAAoAkAgACgCRBD1KSAAQSBqEOQkCx8AIAAtADRBA0cEQCAAQSBqELMgCyABIABBOGoQzyULIAAgASgCACACQQV0ayIAQSBrKQMAIABBGGsoAgAQmxwLHgAgACgCACgCACAAKAIEKAIAIAFBWGxqQShrEMAbCxwAIAEgAk0EQCACIAEgAxCbEAALIAAgAkEFdGoLKgAgACAAKAIcIAAoAiAgAUGsvOAAEMkfIgAoAhggACgCHBDGGCACEOAJCxwAIAEgAk0EQCACIAEgAxCbEAALIAAgAkEobGoLJAAgAEEMahDnCiAAEPMiIABBHGoQ9w8gACgCHCAAKAIgEKoqCyIAIAAtABRBAkcEQCABKAIUIAAQ9gUaCyAAKAIYIAEQpBULKQBB0IzkAC0AAEUEQEHQjOQAQQE6AAALQdiM5AAgAK1CIIZCAYQ3AwALGQEBfyABIANGBH8gACACIAEQihVFBSAECwscACABQf8BcQRAIAAgAUEBaxCfEgsgACACEJ8SCx4AIAAoAhQgACgCCGpBAnQgACgCJEEAIAAoAhwbagsfACAAIAIQuQogAEEQaiACQRBqELkKIAJBCCABEMkHCyABAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAEQiRgLCx8BAX8gACAALQAAIgFBASABGzoAACABBEAgABDMAwsLGgEBfyABIANPBH8gAiADIAAgAxDNHwUgBAsLIwAgAEUEQEGEmOMAQTIQrSoACyAAIAIgAyAEIAEoAhARBgALIwAgAEUEQEGEmOMAQTIQrSoACyAAIAIgAyAEIAEoAhARCQALIwAgAEUEQEGEmOMAQTIQrSoACyAAIAIgAyAEIAEoAhARRQALIwAgAEUEQEGEmOMAQTIQrSoACyAAIAIgAyAEIAEoAhARRwALIwAgAEUEQEGEmOMAQTIQrSoACyAAIAIgAyAEIAEoAhARGgALJQAgACABKAIINgIEIAAgASgCBEEAIAEoAgBBgICAgHhHGzYCAAsgAQF/IAAQlRsEfyADBSABQbuywgBBBCACKAIMEQMACwskACAAKAIAIAAoAgRBBEEUELYiIAAoAgwgACgCEEEEQRgQtiILHQAgACgCAEECRwRAIABBCGoQtSQgAEEYahDJHgsLJwEBf0HsAkEEEIwgIgFCgYCAgBA3AgAgAUEIaiAAQeQCEPYGGiABCycBAX9B0AJBBBCMICIBQoGAgIAQNwIAIAFBCGogAEHIAhD2BhogAQsnAQF/QeQCQQQQjCAiAUKBgICAEDcCACABQQhqIABB3AIQ9gYaIAELJwAgACgCECAAKAIUIAAoArQCIAEgACgCsAJ0akHQk8MAEJwfKQMACy8AIAAQnRcgAEGoEmoQyh4gAEG4EmoQyR4gAEGgDWoiACkDAEICUgRAIAAQtCQLCx8AIAAgAhC2CCAAQUBrIAJBQGsQtgggAkEIIAEQigcLHQAgAQRAIAAtAABBAXEPC0EAQQBBjNbDABCbEAALIAAgAUUEQEEAQQBBrNbDABCbEAALIAAtAAhBBHFBAnYLIAAgAUUEQEEAQQBBvNbDABCbEAALIAAtAAhBCHFBA3YLHgAgARCHEyACakEEIAAoAvwEdGpBFGogACgCgAVNCyQAIAAoAgAgACgCBBC7KSAAKAIMIAAoAhAQuykgAEEcahCgHQsfACAAIAIQ3AYgAEEgaiACQSBqENwGIAJBCCABEMwGCx8AIAAgAhDdBiAAQQhqIAJBCGoQ3QYgAkEIIAEQyQYLGwAgACABIAIgAyABQQFyZ0EBdEE+c0EAEJwBCxsAIAAgASACIAMgAUEBcmdBAXRBPnNBABCbAQsbACAAIAEgAiADIAFBAXJnQQF0QT5zQQAQowELJAEBfiAAKQMIIQEgACgCAEUEQCABENYaDwsgASAAKQMYEO8qCyYAIABBBGpBFRDzGSAAQQA2AhggAEKAgICAwAA3AhAgAEEANgIACyYAIABBBGpBEhDyGSAAQQA2AhggAEKAgICAwAA3AhAgAEEANgIACyIBAX8gAEEEaiEBIAAoAgBFBEAgASgCABC6KA8LIAEQ5CILGwAgASgCACACQXRsakEMaygCAEG5893xeWytCyUAIAEoAhQgAC0AAEECdEHE5eMAaigCAEEGIAEoAhgoAgwRAwALHQAgAEEgahDFLSAAKAIAQQJPBEAgAEEEahDFLQsLIQADQCAALQAsQQJHRQRAIAAoAhghAAwBCwsgAEEANgIoCyQBAX8gAC0APiECIAAgAS0AGUU6AD4gASAAEMUSIAAgAjoAPgsgACAAQgA3AxAgAEIANwMAIABBIGoQsScgAEEkahCxJwsgACAAQgA3AgQgAEEMakIANwIAIAAQxy0gAEEUahCiJQsnAAJAAkACQCAAKAIADgMAAgECCyAAKQMIENYaDwsgAEEEahDtKAsLHQAgAEEgahDfLSAAKAIAQQJPBEAgAEEEahDfLQsLHQAgAEEgahDhLSAAKAIAQQJPBEAgAEEEahDhLQsLHQAgAC0ANEEDRwRAIABBIGoQsyALIABBOGoQyCcLIQADQCAALQAsQQJHRQRAIAAoAhghAAwBCwsgAEEAOgAsCycAAkACQAJAIAAoAgAOAwACAQILIAApAwgQ1hoPCyAAQQRqEIUpCwsiAQF/IABBBGohASAAKAIARQRAIAEoAgAQuigPCyABEIAjCyIAIAEoAgBBgICAgHhGBEAgAEEEOgAADwsgACACIAEQ2hMLHAAgAARAIAEgAEEMaigCACAAQRBqKAIAEJctCwsbACAAIAEgAiABIAJJGyABIAIgASACSxsQxhgLHAAgAARAIAEgAEEEaigCACAAQQhqKAIAEJctCwscACAABEAgAEEEaigCACAAQQhqKAIAIAEQgRsLCxoBAX8gACgCAEERRgR/IABBCGoQow8FIAELCxwAIAAEQCABIABBDGooAgAgAEEQaigCABCBIAsLGwAgACABIAIgAyABQQFyZ0EBdEE+c0EAENIBCyUAIAAgASgCBCABKAIIIAJB0IPAABCaHygCADYCBCAAIAE2AgALJQAgACABKAIEIAEoAgggAkHgg8AAEJofKAIINgIEIAAgATYCAAsgAQF/QTQQuy0iAEUEQAALIABBADsBMiAAQQA2AgAgAAshAQF/QeQAELstIgBFBEAACyAAQQA7ATIgAEEANgIAIAALJAAgAC0AAEUEQCABQei04ABBBRClAw8LIAFB7bTgAEEEEKUDCxsAQcCN5AAtAAAaIAAgARClISIABEAgAA8LAAsZACABIAJNBEAgAiABIAMQmxAACyAAIAJqCyIAIAAoAhAgACgCFCABIAAoAjx2QQJrQaCPxAAQnh8oAggLKAAgAEEcakEAIAJCjJav3d3Ku9mKf1EbQQAgAULz47aq2cO3glBRGwspACAAQRxqQQAgAkLtuq22zYXU9eMAURtBACABQviCmb2V7sbFuX9RGwshACAARQRAQYSY4wBBMhCtKgALIAAgAiADIAEoAhARBAALJAAgAEGBgICAeEcEQCAARQRAQdjB3wBBEUGo9MIAENoXCwALCx8BAX8gACgCCCIBIAAoAgBJBEAgACABQQRBFBDY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CwsRACAAKAIABEAgACABEOYsCwsRACAAKAIABEAgACABEOcsCwsRACAAKAIABEAgACABEIItCwsRACAAKAIABEAgACABEIMtCwsVACAAKAIAIgAQ9RAgAEEoQQgQvRELFQAgACgCACIAEI0FIABBDEEEEL0RCxUAIAAoAgAiABDbAyAAQTBBCBC9EQsTACAAQTBqIAEQpRogACABEIAJCxMAIAAgARCNLSAAQQRqIAEQgy0LFQAgACgCACIAEI4FIABBDEEEEL0RCxIAIAAoAgBBE0cEQCAAENwDCwsVACAAKAIAIgAQ3AMgAEEwQQgQvRELFQAgACgCACIAEPYQIABBKEEIEL0RCxYAIAAoAgAiABChAiAAQcAAQQgQvRELFQAgACgCACIAEPUEIABBDEEEEL0RCxUAIABBgYCAgHhHBEAgACABEK8kCwsSACAAKAIAQSVHBEAgABC/CgsLEwAgACgCAEGAAWogAEEEahDACAsSACAALQAIQQVGBEAgABCYKQsLFQAgACgCACIAELgFIABBDEEEEL0RCxUAIAAoAgAiABCYEiAAQShBCBC9EQsSACAAKAIAQSVHBEAgABDfCQsLEgAgACgCAEEHRwRAIAAQmBILCxYAIAAoAgBBgICAgHhHBEAgABDCIAsLEgAgACgCAEEIRwRAIAAQqAoLCxYAIAAgASgCACACIAEoAgQoAiARBAALFwAgACABIAAgASACEMYPQZC74AAQyR8LEgAgACgCAEElRwRAIAAQ4AkLCxcAIAAgASAAIAEgAhC9DkGgu+AAEMkfCxMAIABBMGogARCoGiAAIAEQlhALEQAgACgCAARAIAAgARCVLQsLEQAgACgCAARAIAAgARCaLQsLEQAgAEEDRgRAIAEgAhD1AgsLEQAgACgCAARAIAAgARCgLQsLEwAgACABEKYiIABBIGogARCIJAsTACAAIAEQpiIgAEEgaiABEKktCxEAIAAoAgAEQCAAIAEQpi0LCxMAIABBMGogARCvGiAAIAEQnRELEwAgAEEwaiABEK4aIAAgARCjFAsTACAAIAEQpiIgAEEoaiABEKktCxMAIAAgARCoLSAAQQRqIAEQpi0LEwAgACABEJ8tIABBBGogARCaLQsTACAAIAEQoy0gAEEEaiABEKAtCxUAIAAoAgAiABD4ECAAQShBCBC9EQsVACAAKAIAIgAQ9gQgAEEMQQQQvRELFgAgAEHIz+AANgIEIAAgAUEIajYCAAsWACAAQeTI4AA2AgQgACABQQhqNgIACxYAIABBxM3gADYCBCAAIAFBHGo2AgALFgAgAEGAzuAANgIEIAAgAUEcajYCAAsSACAAQQRqELUiIABBJGoQ0hQLFQAgACgCACIAEI8FIABBDEEEEL0RCxcAIAApAwAgAC0AFBCjIyAAKAIYELoYCxIAIAAoAgBBB0cEQCAAEJsSCwsVACAAKAIAIgAQmxIgAEEoQQgQvRELFQAgACgCACIAENIFIABBMEEIEL0RCxkAIAEoAhRBrOPgAEENIAEoAhgoAgwRAwALDwAgAEGEAU8EQCAAEBQLCw8AIABBPGpBACAAKAI8GwsPACAAQRxqQQAgACgCHBsLDwAgAEEoakEAIAAoAigbCxEAIAAoAgAgAiABEMQZQQFzCxQBAX9BAkEBELgiIgEgADoAACABCxQAIAAoAgAgASAAKAIEKAIQEQIAC8YIAQV/IwBB8ABrIgUkACAFIAM2AgwgBSACNgIIAkACQAJAAkACQAJAAn8gAAJ/AkAgAUGBAk8EQEEDIAAsAIACQb9/Sg0CGiAALAD/AUG/f0wNAUECDAILIAUgATYCFCAFIAA2AhBBAQwCCyAALAD+AUG/f0oLQf0BaiIGaiwAAEG/f0wNASAFIAY2AhQgBSAANgIQQQUhB0GM+sAACyEGIAUgBzYCHCAFIAY2AhggASACSSIHIAEgA0lyRQRAIAIgA0sNAiACRSABIAJNckUEQCADIAIgACACaiwAAEG/f0obIQMLIAUgAzYCICADIAEiAkkEQCADQQFqIgggA0EDayICQQAgAiADTRsiAkkNBAJAIAIgCEYNACAIIAJrIQcgACADaiwAAEG/f0oEQCAHQQFrIQYMAQsgAiADRg0AIAAgCGoiA0ECayIJLAAAQb9/SgRAIAdBAmshBgwBCyAJIAAgAmoiCEYNACADQQNrIgksAABBv39KBEAgB0EDayEGDAELIAggCUYNACADQQRrIgMsAABBv39KBEAgB0EEayEGDAELIAMgCEYNACAHQQVrIQYLIAIgBmohAgsCQCACRQ0AIAEgAksEQCAAIAJqLAAAQb9/Sg0BDAcLIAEgAkcNBgsgASACRg0EAn8CQAJAIAAgAmoiASwAACIAQQBIBEAgAS0AAUE/cSEGIABBH3EhAyAAQV9LDQEgA0EGdCAGciEADAILIAUgAEH/AXE2AiRBAQwCCyABLQACQT9xIAZBBnRyIQYgAEFwSQRAIAYgA0EMdHIhAAwBCyADQRJ0QYCA8ABxIAEtAANBP3EgBkEGdHJyIgBBgIDEAEYNBgsgBSAANgIkQQEgAEGAAUkNABpBAiAAQYAQSQ0AGkEDQQQgAEGAgARJGwshACAFIAI2AiggBSAAIAJqNgIsIAVBBTYCNCAFQZT7wAA2AjAgBUIFNwI8IAUgBUEYaq1CgICAgLABhDcDaCAFIAVBEGqtQoCAgICwAYQ3A2AgBSAFQShqrUKAgICAwAmENwNYIAUgBUEkaq1CgICAgNAJhDcDUCAFIAVBIGqtQoCAgICQAYQ3A0gMBgsgBSACIAMgBxs2AiggBUEDNgI0IAVB1PvAADYCMCAFQgM3AjwgBSAFQRhqrUKAgICAsAGENwNYIAUgBUEQaq1CgICAgLABhDcDUCAFIAVBKGqtQoCAgICQAYQ3A0gMBQsgACABQQAgBiAEELgmAAsgBUEENgI0IAVBtPrAADYCMCAFQgQ3AjwgBSAFQRhqrUKAgICAsAGENwNgIAUgBUEQaq1CgICAgLABhDcDWCAFIAVBDGqtQoCAgICQAYQ3A1AgBSAFQQhqrUKAgICAkAGENwNIDAMLIAIgCEGA/MAAEJ4QAAsgBBC8KQALIAAgASACIAEgBBC4JgALIAUgBUHIAGo2AjggBUEwaiAEEKEdAAsUACAAKAIAIAEgACgCBCgCDBECAAsOACAABEAgACABEPIcCwsPACAAKAIABEAgABDMKQsLDwAgACgCAARAIAAQyB4LCzwBAn8gACgCCCEBIAAoAgQhAgNAIAEEQCABQQFrIQEgAhDNCyACQRxqIQIMAQsLIAAoAgAgACgCBBDIKQs8AQJ/IAAoAgghASAAKAIEIQIDQCABBEAgAUEBayEBIAIQwAkgAkEIaiECDAELCyAAKAIAIAAoAgQQyikLDwAgACgCAARAIAAQyR4LCxQAIAAoAgAgASgCFCABKAIYEIcDC38CAn8BfkHgjOQAKAIARQRAIwBBEGsiASQAQfCM5AACfgJAIABFDQAgACgCACAAQgA3AwBBAXFFDQAgACkDCCEDIAApAxAMAQsgARCSFSABKQMAIQMgASkDCAs3AwBB6IzkACADNwMAQeCM5ABCATcDACABQRBqJAALQeiM5AALFAAgABDqGyAAKAIAIAAoAgQQ5CkLFwAgACABEI4PNgIIIABCgoCAgBA3AgALFAAgABCuAyAAEMkRIAAoAhgQ1ioLEAAgACABIAJBAhDNH0EBcwsUACAAEPIbIAAoAgAgACgCBBDoKQsaACAAQYCAgIB4NgIAIABBsMzYACkDADcCBAsPACAAKAIABEAgABDrHgsLkAEBAn8gACgCCCECIAAoAgQhAQNAIAIEQAJAAkACQAJAAkACQCABKAIADgQBAgMEAAsgAUEEahDJJgwECyABQQhqKQMAIAFBEGopAwAQ7ioMAwsgAUEEahCgIwwCCyABQQRqEJoDDAELIAFBBGoQsBMLIAJBAWshAiABQShqIQEMAQsLIAAoAgAgACgCBBDxKQsUACAAELYJIAAoAgAgACgCBBC/KQsSACAAKQMAENYaIABBGGoQ0CYLFAAgABDbGiAAKAIAIAAoAgQQySkLDwAgACgCAARAIAAQ4CQLCzwBAn8gACgCCCEBIAAoAgQhAgNAIAEEQCABQQFrIQEgAhCaAyACQQRqIQIMAQsLIAAoAgAgACgCBBC7KQsUACAAEIEcIAAoAgAgACgCBBD0KQsPACAAKAIABEAgABDhJAsLDwAgACgCAARAIAAQmgMLCzwBAn8gACgCCCEBIAAoAgQhAgNAIAEEQCABQQFrIQEgAhD9BCACQQRqIQIMAQsLIAAoAgAgACgCBBC7KQs8AQJ/IAAoAgghASAAKAIEIQIDQCABBEAgAUEBayEBIAIQohkgAkEoaiECDAELCyAAKAIAIAAoAgQQ8SkLFAAgABC6CSAAKAIAIAAoAgQQ8ykLDwAgACgCAARAIAAQ/QQLCw4AIABQRQRAIAAQ1hoLCzwBAn8gACgCCCEBIAAoAgQhAgNAIAEEQCABQQFrIQEgAhCaAyACQQxqIQIMAQsLIAAoAgAgACgCBBC/KQsUACAAEKMZIAAoAgAgACgCBBDJKQsUACAAEKUZIAAoAgAgACgCBBDzKQsSACAAKQMAENYaIABBGGoQ2yYLDwAgACgCAARAIAAQ6yQLCw8AIAAoAgAEQCAAEOwECwsPACAAKAIABEAgABC5KAsLDwAgACgCAARAIAAQ7CQLCw8AIAAoAgAEQCAAEMQECwsPACAAKAIABEAgABDwJAsLFAAgABCAHCAAKAIAIAAoAgQQ9SkLFAAgABChGSAAKAIAIAAoAgQQ8ykLDwAgACgCAARAIAAQtwULCxQAIAAQ/RsgACgCACAAKAIEEPQpCw8AIAAoAgAEQCAAEL8oCwsUACAAEKQZIAAoAgAgACgCBBDRKQsPACAAKAIABEAgABDrIgsLFAAgABCBEiAAKAIAIAAoAgQQ9CkLFAAgABC1FyAAKAIAIAAoAgQQySkLFAAgABD7GyAAKAIAIAAoAgQQ8SkLFAAgABDgCyAAKAIAIAAoAgQQ8ikLFAAgABC1ByAAKAIAIAAoAgQQ8ikLEgAgACkDABDWGiAAQRhqEOAmCxQAIAAQ/xsgACgCACAAKAIEEPEpCxQAIAAQqxAgACgCACAAKAIEEPMpCxQAIAAQmwYgACgCACAAKAIEEPMpCxQAIAAQ7A8gACgCACAAKAIEEPUpCw8AIAAoAgAEQCAAEM8GCwsQACAAIAEgAGsgAiADENMfCw8AIAAoAgAEQCAAELgUCwsSACAAKQMAENYaIABBGGoQ9iYLDwAgACgCAARAIAAQ/SQLCw8AIAAoAgAEQCAAENoCCwsPACAAKAIABEAgABCEBQsLDwAgACgCAARAIAAQrwYLCxIAIAApAwAQ1hogAEEYahD7JgsPACAAKAIABEAgABCAJQsLDwAgACgCAARAIAAQhQULCw8AIAAoAgAEQCAAEM8oCwsSACAAKQMIENYaIABBIGoQzygLEgAgAUHAAWoQuxsgAEElNgIACxIAIAFBwAFqEJwVIABBBDYCAAsSACABQcABahC7GyAAQQk2AgALEgAgAUHAAWoQuxsgAEEKNgIACxIAIAFBwAFqELsbIABBEDYCAAsSACABQcABahC7GyAAQQ82AgALEgAgAUHAAWoQuxsgAEEFNgIACxIAIAFBwAFqELsbIABBCzYCAAsSACABQcABahC7GyAAQQw2AgALEgAgAUHAAWoQuxsgAEERNgIACxIAIAFBwAFqELsbIABBDTYCAAsSACABQcABahC7GyAAQQ42AgALEgAgAUHAAWoQuxsgAEEaNgIACw8AIAAoAgAEQCAAEIclCwsPACAAKAIABEAgABCgAgsLDwAgACgCAARAIAAQrQULCxIAIAApAwAQ1hogAEEQahC3IwsPACAAKAIABEAgABCJJQsLDwAgACgCAARAIAAQxQMLCxIAIAApAwAQ1hogAEEYahCQJwsPACAAKAIABEAgABCVBQsLDwAgACgCAARAIAAQuRQLCw8AIAAoAgAEQCAAEI0lCwsPACAAKAIABEAgABC7AgsLDwAgACgCAARAIAAQ/AQLCxIAIAAoAhAQyyEgAEEIahCEJQsPACAAKAIABEAgABCPJQsLDwAgACgCAARAIAAQzQILCw8AIAAoAgAEQCAAEJkFCwsPACAAKAIABEAgABD9FgsLDwAgACgCAARAIAAQogILCw8AIAAoAgAEQCAAEJAlCwsPACAAKAIABEAgABDtBAsLEQAgAEIANwMIIABBGGoQoiULEwAgACABEL4jIAAoAhggARDIBQsTACAAIAEQ/iAgACgCGCABEIgSCxMAIAAgARD+ICAAKAIYIAEQrQgLEwAgASAAENYhIAAoAiAgARCIEgsTACABIAAQ2CEgACgCICABEIoSCw8AIAAoAgAEQCAAEMUtCwsPACAAKAIABEAgABDGLQsLEgAgACkDABDWGiAAQRhqEKknCw8AIAAoAgAEQCAAEKYlCwsPACAAKAIABEAgABDbAgsLDwAgACgCAARAIAAQhgULCxQAIAEgACkDABDaGiAAKAIQEOIYCw8AIAAoAgAEQCAAELglCwsPACAAKAIABEAgABC3JQsLDwAgACgCAARAIAAQ7gQLCw8AIAAoAgAEQCAAENMtCwsPACAAKAIABEAgABDuAwsLDwAgACgCAARAIAAQ0i0LCw8AIAAoAgAEQCAAELwlCwsPACAAKAIABEAgABDoKAsLEgAgACkDABDWGiAAQRhqELMnCw8AIAAoAgAEQCAAEIcFCwsRACAAQQxqEPoUIABBADYCCAsPACAAKAIABEAgABC9JQsLDwAgACgCAARAIAAQjgILCw8AIAAoAgAEQCAAEO8ECwsSACAAKQMAENYaIABBGGoQvCcLDwAgACgCAARAIAAQvyULCw8AIAAoAgAEQCAAEIgFCwsPACAAKAIABEAgABDtKAsLDgAgAFBFBEAgARDWJgsLDwAgACgCAARAIAAQiwoLCw8AIAAoAgAEQCAAENwCCwsPACAAKAIABEAgABDfJQsLDwAgACgCAARAIAAQzRcLCxIAIAApAwAQ1hogAEEYahDFJwsPACAAKAIABEAgABDYJQsLDwAgACgCAARAIAAQiQULCw8AIAAoAgAEQCAAELICCwsPACAAKAIABEAgABDkLQsLDwAgACgCAARAIAAQ/gULCw8AIAAoAgAEQCAAEOMtCwsPACAAKAIABEAgABDeJQsLDwAgACgCAARAIAAQjwILCw8AIAAoAgAEQCAAEPAECwsSACAAQRhqEPwdIAApAwAQ1hoLEgAgACkDABDWGiAAQRhqEMInCw8AIAAoAgAEQCAAEPUoCwsPACAAKAIABEAgABCKBQsLEgAgACkDABDWGiAAQRhqENMnCw8AIAAoAgAEQCAAEOIlCwsPACAAKAIABEAgABDxBAsLEQAgAEEAOgAUIABBGGoQkioLDwAgACgCAARAIAAQswILCw8AIAAoAgAEQCAAEOklCwsPACAAKAIABEAgABDyBAsLEgAgACkDABDWGiAAQRhqENcnCw8AIAAoAgAEQCAAEN0CCwsPACAAKAIABEAgABDrJQsLDwAgACgCAARAIAAQiwULCxIAIAApAwAQ1hogAEEYahDbJwsOACAABEAgACABEPsJCwsPACAAKAIABEAgABDvJQsLDwAgACgCAARAIAAQhSkLCw8AIAAoAgAEQCAAEPMECwsPACAAKAIABEAgABDwJQsLDwAgACgCAARAIAAQjAULCw8AIAAoAgAEQCAAEOEtCwsPACAAKAIABEAgABCLKQsLEgAgACkDABDWGiAAQRhqEOInCw8AIAAoAgAEQCAAEN8tCwsSACAAKQMAENYaIABBGGoQ6ScLDwAgACgCAARAIAAQ/iULCw8AIAAoAgAEQCAAEMYCCwsPACAAKAIABEAgABCNBQsLDwAgACgCAARAIAAQxwILCxIAIAApAwAQ1hogAEEYahDuJwsPACAAKAIABEAgABCCJgsLDwAgACgCAARAIAAQjgULCw8AIAAoAgAEQCAAEIcmCwsPACAAKAIABEAgABCGJgsLDwAgACgCAARAIAAQ9QQLCxMAIAAoAgAgACgCBEEEQQwQtiILDwAgACgCAARAIAAQmCkLCw8AIAAoAgAEQCAAEIwmCwsPACAAKAIABEAgABC4BQsLEgAgACkDABDWGiAAQRhqEPUnCw8AIAAoAgAEQCAAEIIjCwsPACAAKAIABEAgABDRBgsLFAAgABDjIiAAKAIcIAAoAiAQuykLEwAgACgCCCAAKAIAQQRBBBC2IgsOACAABEAgACABEP8ECwsTACAAIAEQmC0gACgCFCABEIIgCw8AIAAoAgAEQCAAEOgKCwsOACAABEAgACABEPctCwsSACAAKQMAENYaIABBGGoQgSgLDwAgACgCAARAIAAQpSYLCw8AIAAoAgAEQCAAELAGCwsPACAAKAIABEAgABD2BAsLDwAgACgCAARAIAAQpSkLCxIAIAApAwgQ1hogAEEgahClKQsPACAAKAIABEAgABDfAgsLDwAgACgCAARAIAAQqyYLCw8AIAAoAgAEQCAAEI8FCwsSACAAKQMAENYaIABBGGoQhygLEwAgACgCCCAAKAIAQQRBCBC2IgshACAAQqyhz+ic4aiYaDcDCCAAQovesJ3mpLfHvH83AwALIAAgAELK14GglbrTzmc3AwggAEK/g4uk2oGAuX03AwALEAAgABCSJCAAQSxBBBC9EQsTACAAQbSCwAA2AgQgACABNgIACxEAIAEgACgCBCAAKAIIEKUDCxEAIAAoAgQgACgCCCABEMEOCxEAIAEgACgCACAAKAIEEKUDCw4AIAAoAtQCIAFBAWtLCw4AIAAoArgCIAFBAWtLCw4AIAAoAswCIAFBAWtLCxIAQcCN5AAtAAAaIAEgABClIQslAQF/IABBDGoQuR4gACgCBCIBIAAoAggQhhsgACgCACABEL8pCyEAIABCtoH8lMmz8IupfzcDCCAAQp+psYiVgKi5XzcDAAshACAAQrPwz9+I/O/tezcDCCAAQsSHvJOT+aadnX83AwALIQAgAEKjoszPrJvpw8IANwMIIABCl4yP9qPR0tkJNwMACyEAIABC4tTj4d7R1ciSfzcDCCAAQu7Dq4/uiKy0VDcDAAsQACAAEI8jIABBKEEEEL0RCxMAIABB8LzAADYCBCAAIAE2AgALEwAgAEGsvcAANgIEIAAgATYCAAsMACAABEAgARCxJgsLEQAgASgCFCABKAIYIAAQjAQLEAAgACACNgIEIAAgATYCAAsTACAAQaD+wQA2AgQgAEEBNgIACw8AIABBBGoQtSQgABDJHgsQACAAEJ0XIABBoA1qEMoeCw8AIABBBGoQyh4gABDSHgt1AQJ/IAAQwyIgAEEwaiIBKAIAIAEoAgQQuykgASgCECICIAEoAhQQxBwgASgCDCACEL8pIAEoAhggASgCHBC7KQJAIAEoAigi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AwALEAAgABCNJCAAQThBBBC9EQsQACAAEKomIABBMEEEEL0RCxMAIABBvM7gADYCBCAAIAE2AgALEwAgAEH4zuAANgIEIAAgATYCAAsPACAAEN8CIABBBGoQjwULDwAgABCuJiAAQRRqEIcoCw0AIAAgAUEBQQEQtiILDgAgACgCDCABIAIQmRALzhIBEH8gACEEIwBBsAFrIgMkACACQQA2AgACQAJAAkAgASIAKAIAIgUgASgCBCIJSw0AIAJBBGohBwJAAkACQCAEKAI8IggEQCABLQAQQQFHDQELAkACQCACKAIQRQRAIARB3AJB2AIgAC0AEBtqKAIAIgFFDQQgASAEKALUAk0NAQwECyACKAIUIQEgAigCGA0BIAIoAiAhBQwECyACKAIcIQYgAigCGCEIIANBQGsgBCABEIggIAMoAkAgAygCRBDGFSAGQQAgCBsiBk0NAiACQQE2AhggAiAGQQFqNgIcIANBOGogBCABEIggIAMgAykDODcCmAEgA0EwaiADQZgBaiIAIAYQ+g8gAygCMEEBcUUNBSAAIAMoAjQiACAFIARBNGooAgAgBEE4aigCACAAQbiRxAAQmR8oAgBrIAUQzRIgAkEBNgIAIAcgAykCmAE3AgAgB0EIaiADQaABaigCADYCAAwECyACKAIcIQUgA0EoaiAEIAEQiCAgAygCKCADKAIsEMYVIAVNBEAgAkEANgIYIAJBADYCACACIAIoAiBBAWoiBTYCIAwDCyACQQE2AhggAiAFQQFqNgIcIAIoAiAhACADQQhqIAQgARCIICADIAMpAwg3ApgBIAMgA0GYAWoiASAFEPoPIAMoAgBBAXFFDQQgASADKAIEIgEgAEEBaiIAIARBNGooAgAgBEE4aigCACABQbiRxAAQmR8oAgBrIAAQzRIgAkEBNgIAIAcgAykCmAE3AgAgB0EIaiADQaABaigCADYCAAwDCwJAAkACQAJAIAIoAhBFBEAgBCgC2AIiAUUNAyABIAQoAtQCTQ0BDAMLIAIoAhQhASACKAIYDQEgAigCICEFDAMLIAIoAhwhBiACKAIYIQogA0GQAWogBCABEIggIAMoApABIAMoApQBEMYVIAZBACAKGyIGTQ0BIAJBATYCGCACIAZBAWo2AhwgA0GIAWogBCABEIggIAMgAykDiAE3ApgBIANBgAFqIANBmAFqIgAgBhD6DyADKAKAAUEBcUUNBiAAIAMoAoQBIgAgBSAEQTRqKAIAIARBOGooAgAgAEG4kcQAEJkfKAIAayAFEM0SIAJBATYCACAHIAMpApgBNwIAIAdBCGogA0GgAWooAgA2AgAMBQsgAigCHCEFIANB+ABqIAQgARCIICADKAJ4IAMoAnwQxhUgBU0EQCACQQA2AhggAkEANgIAIAIgAigCIEEBaiIFNgIgDAILIAJBATYCGCACIAVBAWo2AhwgAigCICEAIANB0ABqIAQgARCIICADIAMpA1A3ApgBIANByABqIANBmAFqIgEgBRD6DyADKAJIQQFxRQ0FIAEgAygCTCIBIABBAWoiACAEQTRqKAIAIARBOGooAgAgAUG4kcQAEJkfKAIAayAAEM0SIAJBATYCACAHIAMpApgBNwIAIAdBCGogA0GgAWooAgA2AgAMBAsgAkEANgIYIAIgATYCFCACQQE2AhAgAiAFNgIgIAJBADYCAAsgBEE8akEAIAgbIQggBEHIAGohDiAAKAIMIQYgACgCCCEKIARBCGohCyAEQQRqIQwgBEEgaiEPIARBHGohEANAIAUgCU8EQCACIAE2AhQgAkEBNgIQDAQLAkACQAJAIAUgBkkEQCAOIAUgCmotAAAiDWohESABIQADQAJAAkACfyAMKAIAIAsoAgAgAEH8jMQAEJofKAIEIgEEQCAQKAIAIA8oAgAgASARLQAAakGMjcQAEJkfKAIADAELIANB8ABqIAQgABCHICADIAMpA3A3AqgBA0AgA0GYAWogA0GoAWoQ9w4gAy0AmAFFDQIgAy0AmQEiASANSQ0ACyABIA1HDQEgAygAmgELIgFBAUcNAQsgDCgCACALKAIAIABBqJHEABCaHygCDCEADAELCyABIAQoAtACTQ0BIAUhAAwCCyAFIAZB0KnAABCbEAALIAIgATYCFCACQQE2AhAgAUUNBQJAIAQoAtQCIAFPBEAgAkKBgICAEDcCGCADQegAaiAEIAEQiCAgAyADKQNoNwKYASADQeAAaiADQZgBaiIAQQAQ+g8gAygCYEEBcUUNASAAIAMoAmQiACAFQQFqIgEgBEE0aigCACAEQThqKAIAIABBuJHEABCZHygCAGsgARDNEiACQQE2AgAgByADKQKYATcCACAHQQhqIANBoAFqKAIANgIADAcL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IgsNACAAIAFBCEEIELYiCw0AIAAgASACENIdQQALDQAgACABQQRBGBC2IgsMACAAIAEQpw9BAXMLDQAgACABIAIgAxCQGQsNACAAIAFBBEEkELYiCw8AIAAoAgAgACgCBBC4KQsNACAAIAFBAUECELYiCw4AIAAoAgBBDEEEEL0RCw0AIAAgAUEIQSAQtiILDAAgACABEMUVQQFzCw0AIAAgASACIAIQ6gsLDQAgACABKAIAIAIQMAsOACAAKAIAQQJBARC9EQsPACAAKAIEIAAoAggQyBoLDAAgAEEIaiABEOMfCwwAIABBCGogARDIGgsMACAAQQhqIAEQxxoLDwAgAEHghMQAQSAQihVFCw4AIAAgASAAKAIUEKwMCxAAQcQAEM0gIABBxAAQ9gYLDgAgACABQQRB2AAQtiILDwAgACgCACgCACABEP8HCw8AIAAoAgAgASgCABDgAwsSACAAELkkIABBgICAgHg2AgALDQAgACABQQhBGBC2IgsPACAAKAIAIAAoAgQQpyQLEAAgACABQdGt4ABBARCwGwsQACAAIAFBra7gAEEEELAbCxAAIAAgAUGJreAAQQEQsBsLEAAgACABQcit4ABBARCwGwsNACAAIAEgAhDWHUEACw0AIAAgASACIAMQzR8LDQAgASAAQf8BcRCdIAsNACAAIAFBCEEoELYiCw4AIAAgAUEIQdgAELYiCw0AIAAgAUEIQTgQtiILDQAgACABQQhBMBC2IgsOACAAIAFBCEHAABC2IgsOACAAIAFBCEHIABC2IgsOACAAIAFBCEHQABC2IgsPACAAELkoIAAoAgQQvCgLDAAgACABELYdQQFzCw8AIAAoAgAgASgCABD6AwsNACAAIAFBAEEAELgCCxAAQYABEO8iIABBgAEQ9gYLEABB2AAQ7yIgAEHYABD2BgsPACAAEL8oIAAoAgQQvCgLDgBBKBDvIiAAQSgQ9gYLDwAgABDaAiAAKAIEELwoCw8AIAAQzyggACgCBBC8KAsPACAAEKACIAAoAgQQvCgLDwAgABC4IyAAKAIYEP8XCw8AIAAQxQMgACgCBBC8KAsPACAAELsCIAAoAgQQvCgLDwAgABDNAiAAKAIEELwoCw8AIAAQogIgACgCBBC8KAsOACAAQgA3AgQgABDGLQsOACAAQgA3AgwgABDzGgsOACAAQgA3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IAggB0HAqcAAEJsQAAsCQCABIAQoAtACSw0AQQAgAUUNAxogASAEKALUAksNACADQThqIAQgARCIICADIAMpAzg3AuABIANBMGogA0HgAWpBABD6DyADKAIwQQFxBEAgA0HsAWogAygCNCIAIAVBAWoiASAEQTRqKAIAIARBOGooAgAgAEG4kcQAEJkfKAIAayABEM0SDAMLDAsLIAVBAWohBQwACwALIAYgAykC7AE3AgQgBkEMaiADQfQBaigCADYCAEEBCzYCAAwGCwJAIAQoAtgCIgFFDQAgASAEKALUAksNACADQagBaiAEIAEQiCAgAyADKQOoATcC7AEgA0GgAWogA0HsAWpBABD6DyADKAKgAUEBcUUNByADQeABaiADKAKkASIAIAUgBEE0aigCACAEQThqKAIAIABBuJHEABCZHygCAGsgBRDNEiAGQQE2AgAgBkEMaiADQegBaigCADYCACAGIAMpAuABNwIEDAYLIANB7AFqIAAgBEFAayILKAIAIAIoAggiCCACKAIMIgcgBSAMEM4dAkACQAJAIAMoAuwBIgBBAWsOAgEAAgsgBEHIAGohDSADKALwASECIARBCGohCSAEQQRqIQogBEEgaiEOIARBHGohDwNAIAwgAiIFTQRAIAZBADYCAAwJCwJAIAUgB0kEQCANIAUgCGotAAAiAmohECABIQADQAJAAn8gCigCACAJKAIAIABB/IzEABCaHygCBCIBBEAgDygCACAOKAIAIAEgEC0AAGpBjI3EABCZHygCAAwBCyADQZgBaiAEIAAQhyAgAyADKQOYATcChAIDQCADQewBaiADQYQCahD3DiADLQDsAUUNAiADLQDtASIBIAJJDQALIAEgAkcNASADKADuAQsiAUEBRw0DCyAKKAIAIAkoAgAgAEGokcQAEJofKAIMIQAMAAsACyAFIAdBwKnAABCbEAALAkAgASAEKALQAksNACABBEACQCAEKALUAiABTwRAIANBkAFqIAQgARCIICADIAMpA5ABNwLsASADQYgBaiADQewBakEAEPoPIAMoAogBQQFxDQEMDQsgA0HsAWogBCgCPCALKAIAIAggByAFIAwQzh0gA0GAAWogAygC7AEgAygC8AEQpiEgAygCgAFFBEAgBkEANgIADAwLIAMoAoQBIgIgBUsNAwwCCyADQeABaiADKAKMASIAIAVBAWoiASAEQTRqKAIAIARBOGooAgAgAEG4kcQAEJkfKAIAayABEM0SIAZBATYCACAGQQxqIANB6AFqKAIANgIAIAYgAykC4AE3AgQMCgsgBkEANgIADAkLIAVBAWohAgwACwALIAYgAykC8AE3AgQgBkEMaiADQfgBaigCADYCAAsgBiAANgIADAULIAYgAykC8AE3AgQgBkEMaiADQfgBaigCADYCAAsgBiAANgIADAMLIARByABqIQ4gAygC8AEhAiAEQQhqIQogBEEEaiELIARBOGohDyAEQTRqIRAgBEEgaiERIARBHGohEgNAAkACQCAMIAIiBUsEQAJAIAUgCEkEQCAOIAUgCWotAAAiAmohEyABIQADQAJAAn8gCygCACAKKAIAIABB/IzEABCaHygCBCIBBEAgEigCACARKAIAIAEgEy0AAGpBjI3EABCZHygCAAwBCyADQcgBaiAEIAAQhyAgAyADKQPIATcChAIDQCADQewBaiADQYQCahD3DiADLQDsAUUNAiADLQDtASIBIAJJDQALIAEgAkcNASADKADuAQsiAUEBRw0DCyALKAIAIAooAgAgAEGokcQAEJofKAIMIQAMAAsACyAFIAhBwKnAABCbEAALIAQoAtACIAFPBEAgAUUNAyAEKALUAiABTwRAIANBwAFqIAQgARCIICADIAMpA8ABNwLsASADQbgBaiADQewBakEAEPoPIAMoArgBQQFxDQMMCQsgA0HsAWogBCgCPCANKAIAIAkgCCAFIAwQzh0gA0GwAWogAygC7AEgAygC8AEQpiEgAygCsAFFBEAgBkEANgIADAgLIAMoArQBIgIgBUsNBAsgBUEBaiECDAMLIAYgAykC4AE3AgQgBiAHNgIAIAZBDGogA0HoAWooAgA2AgAMBQtBASEHIANB4AFqIAMoArwBIgAgBUEBaiICIBAoAgAgDygCACAAQbiRxAAQmR8oAgBrIAIQzRIMAQsLIAYgAykC4AE3AgQgBiAHNgIAIAZBDGogA0HoAWooAgA2AgAMAgsgA0HgAWohAgsgBiAHNgIAIAYgAikCADcCBCAGQQxqIAJBCGooAgA2AgALIANBkAJqJAAMAQtByJHEABC8KQALCwwAIAAoAgAgARDBGQu1FgETfyAAIQUgASEDIwBBMGsiBCQAAkACQAJAAkACQAJAAkAgAigCACIAIAIoAgQiC00EQCACLQARIAMtANgCRXIhCQJAAkAgAi0AEEUEQCADKAIoIghFDQQgCUEBcQ0FIAMoAtACIgZFDQEgAygCzAIgBk8EQCAEQRBqIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQYCPxAAQnh8iASgCBCABKAIIQQAQnx8oAgAiASAAIANBHGooAgAgA0EgaigCACABQfCOxAAQmR8oAgBrIAAQzRIgAygCKCEIQQEhBwsgBEEgaiAIIANBLGoiCSgCACACKAIIIgggAigCDCICIAAgCxDOHSAEKAIgIgBBAWsOAgYIBwsgAygC1AIiBkUNAQJAIAYgAygCzAJLDQAgBEEQaiIBIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQYCPxAAQnh8iBygCBCAHKAIIQQAQnx8oAgAiByAAIANBHGooAgAgA0EgaigCACAHQfCOxAAQmR8oAgBrIAAQzRJBASEIIAlBAXFFDQAMCQsgAigCDCIHIAAgACAHSRshCiADQUBrIQwgAigCCCEOIANBCGohDyADQQRqIRAgA0EUaiERIANBEGohDSADQSBqIRIgA0EcaiEUIAAhAQNAIAEgC0YEQCAFIAQpAxA3AgQgBSAINgIAIAVBDGogBEEYaigCADYCAAwLCwJAIAEgCkcEQCAQKAIAIA8oAgAgBiAMIAEgDmotAABqLQAAakHgjsQAEJkfKAIAIgYgAygCyAJLDQEgBkUEQCAEQRBqIQEMDAsgBiADKALMAksNASAEQSBqIgIgDSgCACARKAIAIAYgAygCPHZBAmtBgI/EABCeHyITKAIEIBMoAghBABCfHygCACITIAFBAWoiFSAUKAIAIBIoAgAgE0HwjsQAEJkfKAIAayAVEM0SIAQoAiAgAEsNASAEQRhqIARBKGooAgA2AgAgBCAEKQIgNwMQQQEhCCAJQQFxRQ0BIAIhAQwLCyAKIAdBwKnAABCbEAALIAFBAWohAQwACwALQQEQtiYhACAFQQI2AgAgBSAANgIEDAgLQQAQtiYhACAFQQI2AgAgBSAANgIEDAcLIAVBADYCAAwGCyAJQQFxRQRAIAMoAtACIgYEQCADKALMAiAGTwRAIARBIGogA0EQaigCACADQRRqKAIAIAYgAygCPHZBAmtBgI/EABCeHyIBKAIEIAEoAghBABCfHygCACIBIAAgA0EcaigCACADQSBqKAIAIAFB8I7EABCZHygCAGsgABDNEkEBIQcLIAIoAgwiASAAIAAgAUkbIQggA0FAayEJIAIoAgghAiADQQhqIQogA0EEaiEMIANBFGohDiADQRBqIQ8gA0EgaiEQIANBHGohEQNAIAAgC0YEQCAFIAQpAiA3AgQgBSAHNgIAIAVBDGogBEEoaigCADYCAAwJCwJAIAAgCEcEQCAMKAIAIAooAgAgBiAJIAAgAmotAABqLQAAakHgjsQAEJkfKAIAIgYgAygCyAJLDQECQCAGBEAgBiADKALMAk0NAQwDCyAFIAQpAiA3AgQgBSAHNgIAIAVBDGogBEEoaigCADYCAAwLC0EBIQcgBEEgaiAPKAIAIA4oAgAgBiADKAI8dkECa0GAj8QAEJ4fIg0oAgQgDSgCCEEAEJ8fKAIAIg0gAEEBaiISIBEoAgAgECgCACANQfCOxAAQmR8oAgBrIBIQzRIMAQsgCCABQcCpwAAQmxAACyAAQQFqIQAMAAsAC0EBELYmIQAgBUECNgIAIAUgADYCBAwGCyAFAn8CQCADKALQAiIGBEAgBiADKALMAk0NASACKAIMIgEgACAAIAFJGyEHIANBQGshCCACKAIIIQIgA0EIaiEJIANBBGohCgNAIAAgC0YEQCAFQQA2AgAMCgsCQCAAIAdHBEAgCigCACAJKAIAIAYgCCAAIAJqLQAAai0AAGpB4I7EABCZHygCACIGIAMoAsgCSw0BQQAgBkUNBRogBiADKALMAksNASAAQQFqIQAMBAsgByABQcCpwAAQmxAACyAAQQFqIQAMAAsAC0EBELYmIQAgBUECNgIAIAUgADYCBAwHCyAEQSBqIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQYCPxAAQnh8iASgCBCABKAIIQQAQnx8oAgAiASAAIANBHGooAgAgA0EgaigCACABQfCOxAAQmR8oAgBrIAAQzRIgBUEMaiAEQShqKAIANgIAIAUgBCkCIDcCBEEBCzYCAAwFCwJAAkACQAJAIAMoAtACIgYEQCADKALMAiAGTwRAIARBEGogA0EQaigCACADQRRqKAIAIAYgAygCPHZBAmtBgI/EABCeHyIBKAIEIAEoAghBABCfHygCACIBIAAgA0EcaigCACADQSBqKAIAIAFB8I7EABCZHygCAGsgABDNEiAFQQE2AgAgBUEMaiAEQRhqKAIANgIAIAUgBCkCEDcCBAwKCyAEQSBqIAggA0EsaiIIKAIAIAIoAggiByACKAIMIgIgACALEM4dAkAgBCgCICIAQQFrDgIEAAULIANBQGshCSAEKAIkIQAgA0EIaiEKIANBBGohDANAIAsgACIBTQRAIAVBADYCAAwLCyABIAJPDQICQCAMKAIAIAooAgAgBiAJIAEgB2otAABqLQAAakHgjsQAEJkfKAIAIgYgAygCyAJNBEAgBkUNBSAGIAMoAswCTQ0BIARBIGogAygCKCAIKAIAIAcgAiABIAsQzh0gBCAEKAIgIAQoAiQQpiEgBCgCAEUEQCAFQQA2AgAMDQsgBCgCBCIAIAFLDQILIAFBAWohAAwBCwsgBEEQaiADQRBqKAIAIANBFGooAgAgBiADKAI8dkECa0GAj8QAEJ4fIgAoAgQgACgCCEEAEJ8fKAIAIgAgAUEBaiIBIANBHGooAgAgA0EgaigCACAAQfCOxAAQmR8oAgBrIAEQzRIgBUEBNgIAIAVBDGogBEEYaigCADYCACAFIAQpAhA3AgQMCQtBARC2JiEAIAVBAjYCACAFIAA2AgQMCAsgASACQcCpwAAQmxAACyAFQQA2AgAMBgsgBSAEKQIkNwIEIAVBDGogBEEsaigCADYCAAsgBSAANgIADAQLIAUgBCkCJDcCBCAFQQxqIARBLGooAgA2AgALIAUgADYCAAwCCyADQUBrIQogBCgCJCEAIANBCGohDCADQQRqIQ4gA0EUaiEPIANBEGohECADQSBqIREgA0EcaiENA0ACQAJAAkACQCALIAAiAUsEQCAAIAJPDQIgDigCACAMKAIAIAYgCiAAIAhqLQAAai0AAGpB4I7EABCZHygCACIGIAMoAsgCSw0DIAZFDQQgBiADKALMAk0NASAEQSBqIAMoAiggCSgCACAIIAIgACALEM4dIARBCGogBCgCICAEKAIkEKYhIAQoAghFBEAgBUEANgIADAgLIAQoAgwiACABTQ0DDAULIAUgBCkCEDcCBCAFIAc2AgAgBUEMaiAEQRhqKAIANgIADAYLQQEhByAEQRBqIBAoAgAgDygCACAGIAMoAjx2QQJrQYCPxAAQnh8iACgCBCAAKAIIQQAQnx8oAgAiEiABQQFqIgAgDSgCACARKAIAIBJB8I7EABCZHygCAGsgABDNEgwDCyABIAJBwKnAABCbEAALIAFBAWohAAwBCwsgBSAEKQIQNwIEIAUgBzYCACAFQQxqIARBGGooAgA2AgAMAQsgBSAINgIAIAUgASkCADcCBCAFQQxqIAFBCGooAgA2AgALIARBMGokAAvXDwEMfyMAQSBrIgUkACACQQA2AgACQCABIgMoAgAiASADKAIEIgtLDQAgAkEEaiEIAkACQAJAAkACQAJAAkACQCAAKAIoIgkEQCADLQAQQQFHDQELAkACQAJAIAIoAhBFBEAgAy0AEA0BIAAoAtACIgQNAgwLCyACKAIUIQQgAigCGA0CIAIoAiAhAQwICyAAKALUAiIERQ0DCyAEIAAoAswCSw0FIAIoAhxBACACKAIYGyIGIABBEGoiCSgCACAAQRRqIgooAgAgBCAAKAI8dkECa0Ggj8QAEJ4fKAIITw0FIAJBATYCGCACIAZBAWo2AhwgBUEQaiAJKAIAIAooAgAgBCAAKAI8dkECa0GAj8QAEJ4fIgMoAgQgAygCCCAGEJ8fKAIAIgMgASAAQRxqKAIAIABBIGooAgAgA0HwjsQAEJkfKAIAayABEM0SIAJBATYCACAIIAUpAhA3AgAgCEEIaiAFQRhqKAIANgIADAkLIAIoAhwiASAAQRBqIgcoAgAgAEEUaiIGKAIAIAQgACgCPHZBAmtBoI/EABCeHygCCE8EQCACQQA2AhggAkEANgIAIAIgAigCIEEBaiIBNgIgDAYLIAJBATYCGCACIAFBAWo2AhwgAigCICEDIAVBEGogBygCACAGKAIAIAQgACgCPHZBAmtBgI/EABCeHyIEKAIEIAQoAgggARCfHygCACIBIANBAWoiAyAAQRxqKAIAIABBIGooAgAgAUHwjsQAEJkfKAIAayADEM0SIAJBATYCACAIIAUpAhA3AgAgCEEIaiAFQRhqKAIANgIADAYLAkACQCACKAIQRQRAIAAoAtACIgRFDQkgBCAAKALMAk0NAQwECyACKAIUIQQgAigCGA0BIAIoAiAhAQwECyACKAIcQQAgAigCGBsiBiAAQRBqIgooAgAgAEEUaiIMKAIAIAQgACgCPHZBAmtBoI/EABCeHygCCE8NAiACQQE2AhggAiAGQQFqNgIcIAVBEGogCigCACAMKAIAIAQgACgCPHZBAmtBgI/EABCeHyIDKAIEIAMoAgggBhCfHygCACIDIAEgAEEcaigCACAAQSBqKAIAIANB8I7EABCZHygCAGsgARDNEiACQQE2AgAgCCAFKQIQNwIAIAhBCGogBUEYaigCADYCAAwICyACKAIcIgEgAEEQaiIHKAIAIABBFGoiBigCACAEIAAoAjx2QQJrQaCPxAAQnh8oAghPBEAgAkEANgIYIAJBADYCACACIAIoAiBBAWoiATYCIAwDCyACQQE2AhggAiABQQFqNgIcIAIoAiAhAyAFQRBqIAcoAgAgBigCACAEIAAoAjx2QQJrQYCPxAAQnh8iBCgCBCAEKAIIIAEQnx8oAgAiASADQQFqIgMgAEEcaigCACAAQSBqKAIAIAFB8I7EABCZHygCAGsgAxDNEiACQQE2AgAgCCAFKQIQNwIAIAhBCGogBUEYaigCADYCAAwFC0EAELYmIQcMBgsgAkEANgIYIAIgBDYCFCACQQE2AhAgAiABNgIgIAJBADYCAAsgAEEoakEAIAkbIQkgAEFAayEMIAMoAgwhBiADKAIIIQogAEEIaiENIABBBGohDgNAIAEgC08EQCACIAQ2AhQgAkEBNgIQDAQLAkACQAJAIAEgBkkEQCAOKAIAIA0oAgAgBCAMIAEgCmotAABqLQAAakHgjsQAEJkfKAIAIgQgACgCyAJNDQEgASEDDAILIAEgBkHQqcAAEJsQAAsgAiAENgIUIAJBATYCEEEAIQcgBEUNByAAKALMAiAETwRAIAJCgYCAgBA3AhggBUEQaiAAQRBqKAIAIABBFGooAgAgBCAAKAI8dkECa0GAj8QAEJ4fIgMoAgQgAygCCEEAEJ8fKAIAIgMgAUEBaiIBIABBHGooAgAgAEEgaigCACADQfCOxAAQmR8oAgBrIAEQzRIgAkEBNgIAIAggBSkCEDcCACAIQQhqIAVBGGooAgA2AgAMCAsgBUEQaiAJKAIAIAlBBGooAgAgCiAGIAEgCxDOHSAFQQhqIAUoAhAgBSgCFBCmISAFKAIIRQ0HIAUoAgwiASACKAIgIgNLDQELIANBAWohAQsgAiABNgIgDAALAAsgAkEANgIYIAIgBDYCFCACQQE2AhAgAiABNgIgIAJBADYCAAsgASALIAEgC0sbIQYgASADKAIMIgcgASAHSxshCyAAQUBrIQkgAygCCCEDIABBCGohCiAAQQRqIQwDQCABIAZGBEAgAiAENgIUIAJBATYCEAwCCwJAIAEgC0cEQCAMKAIAIAooAgAgBCAJIAEgA2otAABqLQAAakHgjsQAEJkfKAIAIgQgACgCyAJLDQEgAiAENgIUIAJBATYCECAERQ0DIAQgACgCzAJLDQEgAkKBgICAEDcCGEEAIQcgBUEQaiAAQRBqKAIAIABBFGooAgAgBCAAKAI8dkECa0GAj8QAEJ4fIgMoAgQgAygCCEEAEJ8fKAIAIgMgAUEBaiIBIABBHGooAgAgAEEgaigCACADQfCOxAAQmR8oAgBrIAEQzRIgAkEBNgIAIAggBSkCEDcCACAIQQhqIAVBGGooAgA2AgAMBQsgCyAHQdCpwAAQmxAACyACIAFBAWoiATYCIAwACwALQQAhBwwBC0EBELYmIQcLIAVBIGokACAHC+EzARN/AkAgACEIIAEhBSMAQbABayIDJAACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQCACKAIAIgYgAigCBCIVTQRAIAItABEgAS0AxAJFciEHIAItABBFBEAgASgCHCIERQ0CIAdBAXENAyABKAK8AiIBRQ0GIAEgBSgCuAJLDQYgBSgCKCEAIANBiAFqIAVBBGooAgAgBUEIaigCACABQYiRxAAQyxsgAygCjAEiDUUNCiADKAKIASIOLQAAIgRB/wFGDQQgBCAEQQJ2aiAEQQNxQQBHakECagwFCwJAAkAgBSgCwAIiAUUNACABIAUoArgCSw0AIAUoAighACADQRhqIAVBBGooAgAgBUEIaigCACABQYiRxAAQyxsgAygCHCINRQ0BIA0CfyADKAIYIhMtAAAiBEH/AUcEQCAEIARBAnZqIARBA3FBAEdqQQJqDAELIABBAmoLIgRNDQwgA0GQAWoiAAJ/IBMgBEECdGooAgAiDkEATgRAIA0gBEEBaiIESwRAIBMgBEECdGooAgAMAgsMDAsgDkH/////B3ELIgQgBiAFQRBqKAIAIAVBFGooAgAgBEH4kMQAEJkfKAIAayAGEM0SQQEhESAHQQFxRQ0ADAgLIAIoAgwiDyAGIAYgD0kbIRAgBUEsaiESIAIoAgghFCAFQQhqIQogBUEEaiELIAVBFGohEyAGIQQDQCAEIBVGBEAgCCADKQOQATcCBCAIIBE2AgAgCEEMaiADQZgBaigCADYCAAwKCwJAAkAgBCAQRwRAIBIgBCAUai0AAGotAAAhDAJAAkAgCygCACAKKAIAIAFByI/EABCZHygCACIAQf8BcUH+AWsOAgMAAQsgCygCACAKKAIAIAEgDGpBAmpB2JDEABCZHygCACIBQQFHDQMgA0GQAWohAAwMCyADQRBqIAsoAgAgCigCACABQQJqIgFB2I/EABDLGwJAAkACQCAAQQJ2QT9xIABBA3FBAEdqIgIgAygCFCIATQRAIAEgAmohDiADKAIQIQAgAkECdCENQX8hAQNAIA1FBEAgA0GQAWohAAwRCyABQQFqIQEgDCAAKAIAIgJB/wFxRg0CIAwgAkEIdkH/AXFGDQMgDCACQRB2Qf8BcUYNBCAAQQRqIQAgDUEEayENIAwgAkEYdkcNAAsgCygCACAKKAIAIA4gAUECdGpBA2pB+I/EABCZHygCACEBDAYLIAIgAEHoj8QAEJ0QAAsgCygCACAKKAIAIAFBAnQgDmpBqJDEABCZHygCACEBDAQLIAsoAgAgCigCACAOIAFBAnRqQQFqQZiQxAAQmR8oAgAhAQwDCyALKAIAIAooAgAgDiABQQJ0akECakGIkMQAEJkfKAIAIQEMAgsgECAPQcCpwAAQmxAACyALKAIAIAooAgAgAUG4kMQAEJkfLQABIAxHBEAgA0GQAWohAAwKCyALKAIAIAooAgAgAUECakHIkMQAEJkfKAIAIQELAkAgASAFKAK0AksNACABRQRAIANBkAFqIQAMCgsgASAFKAK4AksNACAFKAIoIQAgA0EIaiALKAIAIAooAgAgAUGIkcQAEMsbAkAgAygCDCIJBEAgCQJ/IAMoAggiDi0AACICQf8BRwRAIAIgAkECdmogAkEDcUEAR2pBAmoMAQsgAEECagsiDE0NASADQaABaiIAAn8gDiAMQQJ0aigCACICQQBOBEAgCSAMQQFqIgJLBEAgDiACQQJ0aigCAAwCCyACIAlBoIvEABCbEAALIAJB/////wdxCyIOIARBAWoiAiAFQRBqKAIAIBMoAgAgDkH4kMQAEJkfKAIAayACEM0SIAMoAqABIAZLDQIgA0GYAWogA0GoAWooAgA2AgAgAyADKQKgATcDkAFBASERIAdBAXFFDQIMCwsMDQsgDCAJQZCLxAAQmxAACyAEQQFqIQQMAAsACwwJCyAIQQA2AgAMBgsgB0EBcUUEQAJ/QQAgBSgCvAIiAUUNABpBACABIAUoArgCSw0AGiAFKAIoIQAgA0HIAGogBUEEaigCACAFQQhqKAIAIAFBiJHEABDLGyADKAJMIg1FDQkgDQJ/IAMoAkgiDi0AACIEQf8BRwRAIAQgBEECdmogBEEDcUEAR2pBAmoMAQsgAEECagsiBE0NCiADQaABagJ/IA4gBEECdGooAgAiAEEATgRAIA0gBEEBaiIESwRAIA4gBEECdGooAgAMAgsMCgsgAEH/////B3ELIgAgBiAFQRBqKAIAIAVBFGooAgAgAEH4kMQAEJkfKAIAayAGEM0SQQELIREgAigCDCIQIAYgBiAQSRshEiAFQSxqIRQgAigCCCETIAVBCGohCyAFQQRqIQcgBUEUaiEOA0AgBiAVRgRAIAggAykCoAE3AgQgCCARNgIAIAhBDGogA0GoAWooAgA2AgAMCAsCQAJAIAYgEkcEQCAUIAYgE2otAABqLQAAIglBAmohAiABIQADQAJAAkACQAJAAkACQAJAIAcoAgAgCygCACAAQciPxAAQmR8oAgAiAUH/AXFB/gFrDgIBAgALIANBQGsgBygCACALKAIAIABBAmoiDEHYj8QAEMsbIAFBAnZBP3EgAUEDcUEAR2oiCiADKAJEIgFLDRUgAygCQCENIApBAnQhBEF/IQEDQCAERQ0GIAFBAWohASAJIA0oAgAiD0H/AXFGDQMgCSAPQQh2Qf8BcUYNBCAJIA9BEHZB/wFxRg0FIA1BBGohDSAEQQRrIQQgCSAPQRh2Rw0ACyAHKAIAIAsoAgAgCiAMaiABQQJ0akEDakH4j8QAEJkfKAIAIQEMCQsgCSAHKAIAIAsoAgAgAEG4kMQAEJkfLQABRg0HDAQLIAcoAgAgCygCACAAIAJqQdiQxAAQmR8oAgAiAUEBRg0DDAcLIAcoAgAgCygCACAKIAxqIAFBAnRqQaiQxAAQmR8oAgAhAQwGCyAHKAIAIAsoAgAgCiAMaiABQQJ0akEBakGYkMQAEJkfKAIAIQEMBQsgBygCACALKAIAIAogDGogAUECdGpBAmpBiJDEABCZHygCACEBDAQLIAcoAgAgCygCACAAQQFqQeiQxAAQmR8oAgAhAAwACwALIBIgEEHAqcAAEJsQAAsgBygCACALKAIAIABBAmpByJDEABCZHygCACEBCwJAIAEgBSgCtAJLDQACQCABBEAgASAFKAK4Ak0NAQwCCyAIIAMpAqABNwIEIAggETYCACAIQQxqIANBqAFqKAIANgIADAkLIAUoAighACADQThqIAcoAgAgCygCACABQYiRxAAQyxsCQCADKAI8Ig8EQCAPAn8gAygCOCICLQAAIgRB/wFHBEAgBCAEQQJ2aiAEQQNxQQBHakECagwBCyAAQQJqCyIETQ0BIANBoAFqAn8gAiAEQQJ0aigCACIAQQBOBEAgDyAEQQFqIgBLBEAgAiAAQQJ0aigCAAwCCyAAIA9BoIvEABCbEAALIABB/////wdxCyICIAZBAWoiACAFQRBqKAIAIA4oAgAgAkH4kMQAEJkfKAIAayAAEM0SQQEhEQwCCwwLCyAEIA9BkIvEABCbEAALIAZBAWohBgwACwALIAgCfwJAAkAgBSgCvAIiAUUNACABIAUoArgCSw0AIAUoAighACADQTBqIAVBBGooAgAgBUEIaigCACABQYiRxAAQyxsgAygCNCIBRQ0KIAECfyADKAIwIgQtAAAiAkH/AUcEQCACIAJBAnZqIAJBA3FBAEdqQQJqDAELIABBAmoLIgBNDQ4gA0GgAWoCfyAEIABBAnRqKAIAIgJBAE4EQCABIABBAWoiAEsEQCAEIABBAnRqKAIADAILDA8LIAJB/////wdxCyIAIAYgBUEQaigCACAFQRRqKAIAIABB+JDEABCZHygCAGsgBhDNEgwBCyACKAIMIhIgBiAGIBJJGyEUIAVBLGohEyACKAIIIQ4gBUEIaiEHIAVBBGohCQNAIAYgFUYEQCAIQQA2AgAMCQsCQAJAIAYgFEcEQCATIAYgDmotAABqLQAAIgxBAmohAiABIQADQAJAAkACQAJAAkACQAJAIAkoAgAgBygCACAAQciPxAAQmR8oAgAiAUH/AXFB/gFrDgIBAgALIANBKGogCSgCACAHKAIAIABBAmoiD0HYj8QAEMsbIAFBAnZBP3EgAUEDcUEAR2oiCiADKAIsIgFLDRYgAygCKCENIApBAnQhBEF/IQEDQCAERQ0GIAFBAWohASAMIA0oAgAiEEH/AXFGDQMgDCAQQQh2Qf8BcUYNBCAMIBBBEHZB/wFxRg0FIA1BBGohDSAEQQRrIQQgDCAQQRh2Rw0ACyAJKAIAIAcoAgAgCiAPaiABQQJ0akEDakH4j8QAEJkfKAIAIQEMCQsgDCAJKAIAIAcoAgAgAEG4kMQAEJkfLQABRg0HDAQLIAkoAgAgBygCACAAIAJqQdiQxAAQmR8oAgAiAUEBRg0DDAcLIAkoAgAgBygCACAKIA9qIAFBAnRqQaiQxAAQmR8oAgAhAQwGCyAJKAIAIAcoAgAgCiAPaiABQQJ0akEBakGYkMQAEJkfKAIAIQEMBQsgCSgCACAHKAIAIAogD2ogAUECdGpBAmpBiJDEABCZHygCACEBDAQLIAkoAgAgBygCACAAQQFqQeiQxAAQmR8oAgAhAAwACwALIBQgEkHAqcAAEJsQAAsgCSgCACAHKAIAIABBAmpByJDEABCZHygCACEBCwJAIAEgBSgCtAJLDQBBACABRQ0DGiABIAUoArgCSw0AIAUoAighACADQSBqIAVBBGooAgAgBUEIaigCACABQYiRxAAQyxsCQCADKAIkIgEEQCABAn8gAygCICIELQAAIgJB/wFHBEAgAiACQQJ2aiACQQNxQQBHakECagwBCyAAQQJqCyIATQ0BIANBoAFqAn8gBCAAQQJ0aigCACICQQBOBEAgASAAQQFqIgBLBEAgBCAAQQJ0aigCAAwCCwwSCyACQf////8HcQsiASAGQQFqIgAgBUEQaigCACAFQRRqKAIAIAFB+JDEABCZHygCAGsgABDNEgwECwwMCwwPCyAGQQFqIQYMAAsACyAIIAMpAqABNwIEIAhBDGogA0GoAWooAgA2AgBBAQs2AgAMBQsCQCAFKAK8AiIBRQ0AIAEgBSgCuAJLDQAgBSgCKCEAIANB6ABqIAVBBGooAgAgBUEIaigCACABQYiRxAAQyxsgAygCbCIBRQ0HIAECfyADKAJoIgQtAAAiAkH/AUcEQCACIAJBAnZqIAJBA3FBAEdqQQJqDAELIABBAmoLIgBNDQsgA0GQAWoCfyAEIABBAnRqKAIAIgJBAE4EQCABIABBAWoiAEsEQCAEIABBAnRqKAIADAILDAwLIAJB/////wdxCyIAIAYgBUEQaigCACAFQRRqKAIAIABB+JDEABCZHygCAGsgBhDNEiAIQQE2AgAgCEEMaiADQZgBaigCADYCACAIIAMpApABNwIEDAULIANBoAFqIAQgBUEgaiITKAIAIAIoAggiFCACKAIMIhAgBiAVEM4dAkACQAJAIAMoAqABIgBBAWsOAgEAAgsgBUEsaiEOIAMoAqQBIQAgBUEIaiEHIAVBBGohCQJAAkAgA0GQAWoCfwNAIBUgACICTQRAIAhBADYCAAwLCwJAAkAgAiAQSQRAIA4gAiAUai0AAGotAAAiDEECaiEGIAEhAANAAkACQAJAAkACQAJAAkAgCSgCACAHKAIAIABByI/EABCZHygCACIBQf8BcUH+AWsOAgECAAsgA0HgAGogCSgCACAHKAIAIABBAmoiD0HYj8QAEMsbIAFBAnZBP3EgAUEDcUEAR2oiCiADKAJkIgFLDRggAygCYCENIApBAnQhBEF/IQEDQCAERQ0GIAFBAWohASAMIA0oAgAiEkH/AXFGDQMgDCASQQh2Qf8BcUYNBCAMIBJBEHZB/wFxRg0FIA1BBGohDSAEQQRrIQQgDCASQRh2Rw0ACyAJKAIAIAcoAgAgCiAPaiABQQJ0akEDakH4j8QAEJkfKAIAIQEMCQsgDCAJKAIAIAcoAgAgAEG4kMQAEJkfLQABRg0HDAQLIAkoAgAgBygCACAAIAZqQdiQxAAQmR8oAgAiAUEBRg0DDAcLIAkoAgAgBygCACAKIA9qIAFBAnRqQaiQxAAQmR8oAgAhAQwGCyAJKAIAIAcoAgAgCiAPaiABQQJ0akEBakGYkMQAEJkfKAIAIQEMBQsgCSgCACAHKAIAIAogD2ogAUECdGpBAmpBiJDEABCZHygCACEBDAQLIAkoAgAgBygCACAAQQFqQeiQxAAQmR8oAgAhAAwACwALIAIgEEHAqcAAEJsQAAsgCSgCACAHKAIAIABBAmpByJDEABCZHygCACEBCwJAIAUoArQCIAFPBEAgAUUNBCAFKAK4AiABTwRAIAUoAighACADQdgAaiAFQQRqKAIAIAVBCGooAgAgAUGIkcQAEMsbIAMoAlwiAUUNDyABAn8gAygCWCIELQAAIgZB/wFHBEAgBiAGQQJ2aiAGQQNxQQBHakECagwBCyAAQQJqCyIATQ0GIAQgAEECdGooAgAiBkEASA0CIAEgAEEBaiIASwRAIAQgAEECdGooAgAMBQsMEgsgA0GgAWogBSgCHCATKAIAIBQgECACIBUQzh0gA0HQAGogAygCoAEgAygCpAEQpiEgAygCUEUEQCAIQQA2AgAMDQsgAygCVCIAIAJLDQILIAJBAWohAAwBCwsgBkH/////B3ELIgEgAkEBaiIAIAVBEGooAgAgBUEUaigCACABQfiQxAAQmR8oAgBrIAAQzRIgCEEBNgIAIAhBDGogA0GYAWooAgA2AgAgCCADKQKQATcCBAwICyAIQQA2AgAMBwsMDAsgCCADKQKkATcCBCAIQQxqIANBrAFqKAIANgIACyAIIAA2AgAMBAsgAEECagsiBCANTw0FIANBkAFqAn8gDiAEQQJ0aigCACIAQQBOBEAgDSAEQQFqIgRLBEAgDiAEQQJ0aigCAAwCCwwFCyAAQf////8HcQsiACAGIAVBEGooAgAgBUEUaigCACAAQfiQxAAQmR8oAgBrIAYQzRIgBSgCHCEEQQEhCQsgA0GgAWogBCAFQSBqIhQoAgAgAigCCCISIAIoAgwiDyAGIBUQzh0CQAJAAkACQCADKAKgASIAQQFrDgIBAAILIAVBLGohEyADKAKkASEAIAVBCGohCyAFQQRqIREgBUEUaiEODAILIAggAykCpAE3AgQgCEEMaiADQawBaigCADYCAAsgCCAANgIADAILAkADQAJAAkAgFSAAIgJLBEAgACAPSQRAIBMgACASai0AAGotAAAiB0ECaiEGIAEhAANAAkACQAJAAkACQAJAAkAgESgCACALKAIAIABByI/EABCZHygCACIBQf8BcUH+AWsOAgECAAsgA0GAAWogESgCACALKAIAIABBAmoiDEHYj8QAEMsbIAFBAnZBP3EgAUEDcUEAR2oiCiADKAKEASIBSw0SIAMoAoABIQ0gCkECdCEEQX8hAQNAIARFDQYgAUEBaiEBIAcgDSgCACIQQf8BcUYNAyAHIBBBCHZB/wFxRg0EIAcgEEEQdkH/AXFGDQUgDUEEaiENIARBBGshBCAHIBBBGHZHDQALIBEoAgAgCygCACAKIAxqIAFBAnRqQQNqQfiPxAAQmR8oAgAhAQwKCyAHIBEoAgAgCygCACAAQbiQxAAQmR8tAAFGDQgMBAsgESgCACALKAIAIAAgBmpB2JDEABCZHygCACIBQQFGDQMMCAsgESgCACALKAIAIAogDGogAUECdGpBqJDEABCZHygCACEBDAcLIBEoAgAgCygCACAKIAxqIAFBAnRqQQFqQZiQxAAQmR8oAgAhAQwGCyARKAIAIAsoAgAgCiAMaiABQQJ0akECakGIkMQAEJkfKAIAIQEMBQsgESgCACALKAIAIABBAWpB6JDEABCZHygCACEADAALAAsgAiAPQcCpwAAQmxAACyAIIAMpApABNwIEIAggCTYCACAIQQxqIANBmAFqKAIANgIADAULIBEoAgAgCygCACAAQQJqQciQxAAQmR8oAgAhAQsCQAJAIAEgBSgCtAJLDQAgAUUNASADQZABagJ/AkAgBSgCuAIgAU8EQCAFKAIoIQAgA0H4AGogESgCACALKAIAIAFBiJHEABDLGyADKAJ8IhBFDQogEAJ/IAMoAngiBi0AACIEQf8BRwRAIAQgBEECdmogBEEDcUEAR2pBAmoMAQsgAEECagsiBE0NBiAGIARBAnRqKAIAIgBBAEgNASAQIARBAWoiAEsEQCAGIABBAnRqKAIADAMLIAAgEEGgi8QAEJsQAAsgA0GgAWogBSgCHCAUKAIAIBIgDyACIBUQzh0gA0HwAGogAygCoAEgAygCpAEQpiEgAygCcEUEQCAIQQA2AgAMCAsgAygCdCIAIAJNDQIMBAsgAEH/////B3ELIgYgAkEBaiIAIAVBEGooAgAgDigCACAGQfiQxAAQmR8oAgBrIAAQzRJBASEJDAILIAJBAWohAAwBCwsgCCADKQKQATcCBCAIIAk2AgAgCEEMaiADQZgBaigCADYCAAwCCyAEIBBBkIvEABCbEAALIAggETYCACAIIAApAgA3AgQgCEEMaiAAQQhqKAIANgIACyADQbABaiQADAYLIAQgDUGgi8QAEJsQAAtBAEEAQcCLxAAQmxAACyAEIA1BkIvEABCbEAALIAogAUHoj8QAEJ0QAAsgACABQaCLxAAQmxAACyAAIAFBkIvEABCbEAALCwwAIAAoAgAgARCQKAsMACAAKAIAIAEQhRsLCwAgACgC0AIgAU8LCwAgACgCtAIgAU8LCwAgACgCyAIgAU8LDgAgAUHsx9YAQQIQpQMLDgAgAEGMt8AAIAEQjAQLCwAgACABIAIQmRALCgAgAEEEahC1IgsJACAAEANBAUYLCQAgABAEQQFGCwkAIAAQBUEBRgsOACAAQYjDwAAgARCMBAsOACAAQcTxwAAgARCMBAsMACAAKAIAIAEQqgcLCwAgACABENQPQQALDAAgACgCACABEMEFCwwAIAAoAgAgARCRKAsMACAAKAIAIAEQygsLDAAgACgCACABEMcKCwwAIAAoAgAgARD/BwsLACAALQCcCkEBcQsMACAAKAKUDUG8AmoLCgAgAEEEahDTHgsLACAAQYACahDSHgsLACAAKAKMA0ECSwsMACAAKAIAIAEQ2xILCgAgAEFAaxCTGQsMACAAKAIAIAEQ0AgLDAAgACgCACABENoSCwsAIABBHEEEEL0RCwwAIAAoAgAgARDnGwsMACAAKAIAIAEQiyALCwAgAEEYQQQQvRELCwAgAEE0QQQQvRELCwAgAiAAIAEQpQMLDAAgACgCACABEOkNCw4AIABBvPnHAEEKENkKCw8AIABBjPrHAEHAABDZCgsLACAAIAEQ9wdBAAsMACAAKAIAIAEQkhcLDgAgAEHgyNYAIAEQjAQLKwEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJBCGpB7wFBAUEAEIkTAAsLACAAIAFBGBDQIgsLACAAIAFBCBDQIgsLACAAIAFBDBDQIgvnAQEIfwJ/IAAoAgAhAiMAQYABayIFJAAgASgCBCEHIAEoAgAhBiABKAIcIgQhAAJAIARBBHFFDQAgBEEIciEAIAYNACABQoGAgICgATcCAAsgASAAQQRyNgIcQf8AIQADQCAFIAAiA2oiCCACQQ9xIgBBMHIgAEHXAGogAEEKSRs6AAAgA0EBayEAIAJBEEkgAkEEdiECRQ0ACyADQYEBSQRAIAFBAUGMseAAQQIgCEGAASADaxCCBCABIAQ2AhwgASAHNgIEIAEgBjYCACAFQYABaiQADAELIANBgAFBuPPAABCcEAALCwwAIAAoAgAgARC6CgsLACAAIAFBHBDQIgsMACAAKAIAIAEQ7A0LDAAgACgCACABEJoGCwsAIAIgACABEPQbCwwAIAAgASkCADcDAAsOAEECQaTM2AAQ3hRBAAsMACAAKAIAIAEQ2RALCgAgABCrCxpBAQsKACAAIAGtEO0NCwwAIAAoAgAgARDRDQsMACAAENYaIAEQ1hoLDAAgABDWGiABENYmCwwAIABBwABBCBC9EQsLACAAIAFBBBDQIgsKACAAEKwLGkEBCwwAIABByABBBBC9EQsMACAAEOQmIAAQ9yoLDAAgARClIyAAENYmCwsAIABBEEEEEL0RCwsAIABBFEEEEL0RCwwAIAAQ2SYgABDSKgsMACAAKAIAIAEQmQELDAAgAEHAAEEEEL0RCwwAIABB2ABBCBC9EQsLACAAQTBBCBC9EQutAgEJfwJ/IAAoAgAhAiMAQSBrIgAkACACLQAMIQcgAEEUaiACKAIEIAIoAghBChCVASAAQQhqIAAoAhwiA0EBdiICIAAoAhgiBCACQajr4AAQhh4gACgCDCEFIAAoAgghCCAAIAIgAyAEaiACayACQbjr4AAQhh4gAkEBayECQQAhAyAAKAIEIQQgACgCACEJAkACQANAIAJBf0YNASADIAVGDQIgAiAESQRAIAMgCGoiBi0AACEKIAYgAiAJaiIGLQAAOgAAIAYgCjoAACACQQFrIQIgA0EBaiEDDAELCyACIARB2OvgABCbEAALIAAoAhQgASAHQQBHQQFBACAAKAIYIgEgACgCHBCCBCEDIAEQuCkgAEEgaiQAIAMMAQsgBSAFQcjr4AAQmxAACwsMACAAKAIAIAEQgQILCwAgASAAIAIQgCsLCwAgACABIAIQ6xQLDAAgACgCACABEKQNCwwAIAAoAgAgARClDQsMACAAKAIAIAEQ2AMLDAAgACgCACABEOMLCwwAIAAoAgAgARCmDQsMACAAKAIAIAEQpw0LDAAgACgCACABELoTCwwAIAAoAgAgARDVCAsMACABEMshIAAQ1iYLDAAgAEHwAEEIEL0RCwsAIAAgAUEhENcHCwsAIAAgAUErEJgJCwsAIAAgAUEtEJgJCwsAIAAgAUE9ENcHCwwAIAAgAUHEAxCDAgsMACAAIAFBxQMQgwILDAAgACABQcYDEIMCCwwAIAAgAUHHAxCDAgsMACAAIAFByAMQgwILDAAgACABQckDEIMCCwwAIAAgAUHKAxCDAgsMACAAIAFBywMQgwILDAAgACABQcwDEIMCCwwAIAAgAUHNAxCDAgsMACAAIAFBzgMQgwILDAAgACABQc8DEIMCCwwAIAAgAUHQAxCDAgsMACAAIAFB0QMQgwILDAAgACABQdIDEIMCCwwAIAAgAUHTAxCDAgsMACAAIAFB1AMQgwILDAAgACABQdUDEIMCCwwAIAAgAUHWAxCDAgsMACAAIAFB1wMQgwILDAAgACABQdgDEIMCCwwAIAAoAgAgARDXGQsMACAAKAIAIAEQvBILDAAgACgCACABEL0SCwwAIAAoAgAgARC/FAsMACAAKAIAIAEQ9hQLDAAgACgCACABEK0KCwwAIAAoAgAgARCjFgsMACAAKAIAIAEQ5goLDAAgACgCACABELsUCwwAIAAoAgAgARDFEwsMACAAKAIAIAEQ4xoLDAAgACgCACABEIsUCwwAIAAoAgAgARDeEQsMACAAKAIAIAEQ+SoLDAAgACgCACABEPUbCwwAIAAoAgAgARCKGQsMACAAKAIAIAEQ/SoLCwAgAEEBOgAMQQELDAAgACgCACABENoHCwwAIAAoAgAgARDtAwsMACAAKAIAIAEQuggLCwAgAEEEQQQQvRELCwAgAEEgQQgQvRELkBACDH8BfiAAKAIAIQIjAEHwAWsiACQAIAEtADkhCiABQQE6ADkgAEEDNgIwAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByACKAIAIgNBDGsiBCAEQSZPG0EBaw4kAAECAwQFBgcICQoLDA0hDg8QERIhExQVISEWFxgZGhscHSEeIQsgAigCDEEEdCEDIAIoAgghAgNAIANFDSEgAigCAEECRwRAIAJBDGogARC7KwsgAkEQaiECIANBEGshAwwACwALIAEgAkEEahC1AwwfCyABIAJBCGoQ1QQMHgsgAkEEaiABELsrDB0LIAJBDGogARC7KwwcCyACQQRqIAEQuysgAkEIaiABELsrDBsLIAJBOGoCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgA0EBaw4LAQIDBAUGBwgJCwoACyABIAJBCGoQtBkMCgsgAkEIaiABEPweDAkLIAEgAkEIahDhIQwICyACQQRqIAEQuysMBwsgAkEEaiABENkYDAYLIAEgAkEEahC1IAwFCyABIAJBBGoQtSAMBAsgAkEEaiABELsrDAMLIAEgAkEEahC1IAwCCyACQQRqIAEQsyUMAQsgAkEIaiEDAkACQCACKAIEQQFrDgIBAgALIAMgARD5FAwBCyADIAEQhA0LIAEQuysMGgsgAkEIaiABEPweDBkLIAEgAkEIahDhIQwYCyACQQRqIAEQuysgAkEIaiABELsrIAJBDGogARC7KwwXCyACLQAYQQVGBEAgAkEQaiABELsrCyACQQRqIAEQ2hggAkEoaiABELkjDBYLIAJBEGogARC7KyACKAIEQYCAgIB4RwRAIAJBBGogARDaGAsgAkEgaiABELkjDBULIAJBBGogARD+GQwUCyACQQhqIAEQuA8MEwsgAkEEaiABEP4ZDBILIAJBBGogARC7KyACQRhqIAEQuSMgAigCCCABEP4ZDBELIAIoAhAhB0EYIQhBACEEIAEoAjAQpxEhBSAAQeAAakHYluMAKQMAIg43AwBBCCEDIABB0ABqIA43AwAgAEH8AGogAUE0aigCADYCACAAQQE6AHAgACABNgJoIAAgBTYCbCAAQQE6AIEBIABB0JbjACkDACIONwNYIAAgDjcDSCAAIAEpAiw3AnQgACABLQA8OgCEASAAIAEvATo7AYIBIAEtADghBSAAIAEtAD06AIUBIAAgBToAgAEgAkEgaiAAQcgAahC2DSAALQCBASELIABBADoAgQEgACACKAIIIgUgAigCDCIMQShsajYCrAEgACAFNgKoASAAQQA2ApgBIABBADYCiAEgAEEYaiAAQYgBaiIGEJAJIAACfyAAKQMYIg5QBEAgBhDeKEEADAELIAAoAiAhBCAAQbwBaiIGIABBiAFqIgkQshAgAEEQakEEIAAoArwBQQFqIgNBfyADGyIDIANBBE0bQQhBEBDnFCAAKAIQIQ0gACgCFCIDIAQ2AgggAyAONwMAIABBATYCuAEgACADNgK0ASAAIA02ArABIAYgCUEoEPYGGkEBIQQDQCAAIABBvAFqIgYQkAkgACkDACIOUEUEQCAAKAIIIQkgACgCsAEgBEYEQCAAQeQBaiAGELIQIABBsAFqIAAoAuQBQQFqIgNBfyADGxD7HiAAKAK0ASEDCyADIAhqIgYgCTYCACAGQQhrIA43AwAgACAEQQFqIgQ2ArgBIAhBEGohCAwBCwtCABDWJiAAQbwBahDeKCAAKAK0ASEDIAAoArABCzYCxAEgACADNgK8ASAAIAMgBEEEdCIEaiIINgLIAQNAIAQEQCAAQcgAaiADKQMAQQEQywggBEEQayEEIANBEGohAwwBBQJAIAAgCDYCwAEgDEEobCEDIABBvAFqEP0WA0AgA0UNASADQShrIQMgBSAAQcgAahC1ESAFQShqIQUMAAsACwsLIAAgCzoAgQEgBygCAEGAgICAeEYNDiAAKAJsIAdBFGoQ2yEgAC0AhQEiA0UEQCAAIAcoAggEfyAHKAIEIgQoAgAgBEEEaigCABC1FAVBAAs6AIUBCyAAQcgAaiAHEKMLIAAgAzoAhQEMDwsjAEFAaiIDJAAgAkEIaiICKAIYQTBqIAEQnCUgASgCMBCnESEEIANBGGpB2JbjACkDACIONwMAIANBCGogDjcDACADQTRqIAFBNGooAgA2AgAgA0EBOgAoIAMgATYCICADIAQ2AiQgA0HQluMAKQMAIg43AxAgAyAONwMAIAMgASkCLDcCLCADIAEtADw6ADwgAyABLwE6OwE6IAEtADghBCADIAEtAD06AD0gAyAEOgA4IANBADoAOSACIAMQwiMgA0EBOgA5IAJBGGogAxDIASADEOEoIANBQGskAAwPCyACKAIMRQ0OIAJBDGogARC7KwwOCyACQQRqIAEQuysMDQsgAkEEaiABELsrDAwLIAJBIGogARCDHwwLCyACKAIEIAEQpAsMCgsgAkEEaiABELkPDAkLIAEgAkEEahC1IAwICyACQQRqIAEQuysMBwsgAkEEaiABELsrDAYLIAEgAkEEahC1IAwFCyACQQRqIAEQsyUMBAsgASACQQRqELUgDAMLIAJBBGogARDZGAwCCyAHQQRqIABByABqELsrCyACQSRqIABByABqIgIQsCUgAhDhKAsgASAKOgA5IABBKGoQxxQgAEHwAWokAAuoBwICfwJ+AkAgACgCACIAKAIAIgJBGkYEQCABKAIAQQFHDQEgASgCBCICIAAoAhhHDQEgACkDCBDaGiEEIAApAxAhBSAALQAcIQNBwABBCBCMICIBIAM6ABwgASACNgIYIAFCADcDECABIAQ3AwggAUEaNgIAQa7B3wBBARC5GiEEIAAQpQIgACABNgIoIAAgBTcDICAAQgA3AxggACAENwMQIABBADYCCCAAQRQ2AgAMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAJBDGsiAyADQSZPG0EBaw4kAAECEhMDBAUGBwgJFRYWFQoLDA0WEhIOFhYPEBISEhISEhYRFgsgACgCDEEEdCECIAAoAgghAANAIAJFDRYgACgCAEECRwRAIABBDGogARC8KwsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARDlCQwUCyAAQQhqIAEQyCsMEwsgAEEEaiABELwrIABBCGogARC8KwwSCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQCACQQFrDgsAAQIDBAUGBwgKCQoLIABBCGogARD9HgwJCyAAQQhqIAEQ0SEMCAsgAEEEaiABELwrDAcLIABBBGogARCRHAwGCyAAQQRqIAEQvCsMBQsgAEEEaiABELwrDAQLIABBBGogARC8KwwDCyAAQQRqIAEQvCsMAgsgAEEEaiABELwrDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQghcMAQsgAiABELcOCyABELwrDBELIABBCGogARD9HgwQCyAAQQhqIAEQ0SEMDwsgAEEEaiABELwrIABBCGogARC8KwwLCyAALQAYQQVGBEAgAEEQaiABELwrCwwLCyAAQRBqIAEQvCsgACgCBEGAgICAeEYNDAwKCyAAQQRqIAEQvCsgACgCCCABEP0ZDAsLIAAoAgxBKGwhAiAAKAIIIQMDQCACBEAgAyABEJgUIAJBKGshAiADQShqIQMMAQsLIAAoAhAiACgCAEGAgICAeEcEQCAAIAEQgBoMCwsMBgsgAEEIaiABEMkrDAkLIAAoAgxFDQgMBQsgAEEIahDkIQwHCyAAKAIEIAEQngwMBgsgAEEEaiABELoPDAULIABBBGogARCRHAwECyAAQQRqIAEQvCsMAwsgAEEMaiABELwrDAILIABBBGogARDbGAwBCyAAQQRqIAEQ/RkLC6UGAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgJBDGsiAyADQSZPG0EBaw4kAAECExQDBAUGBwgJFgoXFgsMDQ4XExMPFxcQERMTExMTExcSFwsgACgCDEEEdCECIAAoAgghAANAIAJFDRcgACgCAEECRwRAIABBDGogARC9KwsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARD/CAwVCyABIABBCGoQsREMFAsgAEEEaiABEL0rIABBCGogARC9KwwTCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwECAwQFBgcICQsKAAsgAEEIaiABEMgtDAoLIABBCGogARD+HgwJCyABIABBCGoQ0iEMCAsgAEEEaiABEL0rDAcLIABBBGogARCSHAwGCyAAQQRqIAEQvSsMBQsgAEEEaiABEL0rDAQLIABBBGogARC9KwwDCyAAQQRqIAEQvSsMAgsgAEEEaiABEL0rDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQ/hYMAQsgAiABEO8NCyABEL0rDBILIABBCGogARD+HgwRCyABIABBCGoQ0iEMEAsgAEEEaiABEL0rIABBCGogARC9KwwMCyAALQAYQQVGBEAgAEEQaiABEL0rCwwMCyAAQRBqIAEQvSsgACgCBEGAgICAeEYNDQwLCyABIABBCGoQ+ggMDAsgAEEEaiABEL0rIAEgACgCCBD2GQwLCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARCyESACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEPcZDAsLDAYLIABBCGogARChJwwJCyAAKAIMRQ0IDAULIABBCGogARD1HQwHCyAAKAIEIAEQ/QsMBgsgAEEEaiABELUPDAULIABBBGogARCSHAwECyAAQQRqIAEQvSsMAwsgAEEMaiABEL0rDAILIABBBGogARDdGAwBCyABIABBBGoQ9hkLCwwAIAAoAgAgARCyEQsLACABIAAoAgAQTQvkBQECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgJBDGsiAyADQSZPG0EBaw4kAAECEhMDBAUGBwgJFBUVFAoLDA0VEhIOFRUPEBISEhISEhURFQsgACgCDEEEdCECIAAoAgghAANAIAJFDRUgACgCAEECRwRAIABBDGogARDAKwsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARDRCwwTCyAAQQhqIAEQwysMEgsgAEEEaiABEMArIABBCGogARDAKwwRCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQCACQQFrDgsAAQIDBAUGBwgKCQoLIABBCGogARCBHwwJCyABIABBCGoQ1yEMCAsgAEEEaiABEMArDAcLIABBBGogARCVHAwGCyAAQQRqIAEQwCsMBQsgAEEEaiABEMArDAQLIABBBGogARDAKwwDCyAAQQRqIAEQwCsMAgsgAEEEaiABEMArDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQgBcMAQsgAiABELYOCyABEMArDBALIABBCGogARCBHwwPCyABIABBCGoQ1yEMDgsgAEEEaiABEMArIABBCGogARDAKwwLCyAAQQRqAkAgAC0AGEEFRw0AIABBEGoiACABEMArIAAoAgBBlMfgAEEEEO8eRQ0AIAFBAToAAAsgARDgGAwMCyAAQRBqIAEQwCsgACgCBEGAgICAeEYNCyAAQQRqIAEQ4BgMCwsgAEEEaiABEMArIAAoAgggARD6GQwKCyAAQQRqIAEQwxIMCQsgAEEIaiABEMQrDAgLIAAoAgxFDQcMBQsgAEEgahCzIAwGCyAAKAIEIAEQnQwMBQsgAEEEaiABELcPDAQLIABBBGogARCVHAwDCyAAQQRqIAEQwCsMAgsgAEEMaiABEMArDAELIABBBGogARD6GQsL5wUBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgAoAgAiAkEMayIDIANBJk8bQQFrDiQAAQITFAMEBQYHCAkWChcWCwwNDhcTEw8XFxARExMTExMTFxIXCyAAKAIMQQR0IQIgACgCCCEAA0AgAkUNFyAAKAIAQQJHBEAgAEEMaiABEMErCyAAQRBqIQAgAkEQayECDAALAAsgAEEEaiABEKcKDBULIABBCGogARCiJwwUCyAAQQRqIAEQwSsgAEEIaiABEMErDBMLIABBOGoCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4LAQIDBAUGBwgJCwoACyAAQQhqIAEQ4CgMCgsgAEEIaiABEP8eDAkLIAEgAEEIahDVIQwICyAAQQRqIAEQwSsMBwsgAEEEaiABEJMcDAYLIABBBGogARDBKwwFCyAAQQRqIAEQwSsMBAsgAEEEaiABEMErDAMLIABBBGogARDBKwwCCyAAQQRqIAEQwSsMAQsgAEEIaiECAkACQCAAKAIEQQFrDgIBAgALIAIgARD/FgwBCyACIAEQ8A0LIAEQwSsMEgsgAEEIaiABEP8eDBELIAEgAEEIahDVIQwQCyAAQQRqIAEQwSsgAEEIaiABEMErDAwLIAAtABhBBUYEQCAAQRBqIAEQwSsLDAwLIABBEGogARDBKyAAKAIEQYCAgIB4Rg0NDAsLIAEgACkDCCAAKAIYEOsaDAwLIABBBGogARDBKyAAKAIIIAEQ+BkMCwsgAEEEaiABEMISDAoLIABBCGogARCjJwwJCyAAKAIMRQ0IDAULIABBIGogARDCHQwHCyAAKAIEIAEQ/gsMBgsgAEEEaiABELYPDAULIABBBGogARCTHAwECyAAQQRqIAEQwSsMAwsgAEEMaiABEMErDAILIABBBGogARDeGAwBCyAAQQRqIAEQ+BkLCwwAIAEgACgCABDyAQsMACAAKAIYIAEQihILjwIBBX8gACgCGCIDIAEQihogAygCFEHYAGwhBSADKAIQIQYDQCACIAVHBEACQAJAAkACQAJAAkACQAJAIAIgBmoiACgCACIEQQRrQQAgBEEFa0EISRtBAWsOCAECAwQHBwUGAAsgACABEOQLDAYLIABBCGogARCqJQwFCyAAQSBqIAEQ4CsMBAsgASAAQQhqENghIABBPGogARCeJSAAQTBqIAEQihoMAwsgAEEkaiABEJ4lIABBLGogARCKGgwCCyAAQQRqIAEQ/BkMAQsgAEEIaiIEKAIAQQVHBEAgASAEENghCyAAQTxqIAEQniUgAEEwaiABEIoaCyACQdgAaiECDAELCyADQTBqIAEQniULDAAgACgCGCABEOEPCwwAIAEgACgCGBCnAwsMACAAKAIAIAEQmBQLDAAgACgCGCABEIkSCwwAIAAoAhggARDvBQsMACAAKAIAIAEQ0wQLDAAgACgCACABEIQJCwwAIAAoAgAgARCRBQsMACAAKAIAIAEQyxMLDAAgACgCACABEPkBCwwAIAEgACgCABCCHwsMACAAKAIAIAEQwgMLDAAgASAAKAIAEMoBCwwAIAAoAgAgARDMEwsMACAAKAIAIAEQlhQLDAAgACgCACABEPkECwwAIAAoAgAgARDNEwsMACAAKAIAIAEQtBELDAAgACgCACABENEECwwAIAAoAgAgARDOEwsMACAAKAIAIAEQkxELCwAgACgCACABEF8LDAAgASAAKAIAEPUfCwwAIAAoAgAgARCZFAsMACAAKAIAIAEQrwMLDAAgACgCACABEIgSCwwAIAEgACgCGBC6BAsMACAAKAIAIAEQihILDAAgACgCACABEIcSCwwAIAAoAgAgARDhDwsMACAAKAIAIAEQiRILDAAgASAAKAIAELEeCwwAIAAoAgAgARC1EQuBCAIFfwF+IAAoAgAhACMAQUBqIgIkACABLQA0BEAgAS0AOiEEIAEtADkhBSABQYECOwA5AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCAEECaw4SAAECAwQFERAPDg0MCwoJCAcGEgsgACgCBEGAgICAeEYEQCABKAIwEKcRIQMgAkEYakHYluMAKQMAIgc3AwAgAkEIaiAHNwMAIAJBNGogAUE0aigCADYCACACQQE6ACggAiABNgIgIAIgAzYCJCACQQE6ADkgAkHQluMAKQMAIgc3AxAgAiAHNwMAIAIgASkCLDcCLCACIAEvADs7ADsgAS0AOCEDIAIgAS0APToAPSACIAM6ADggAkEBOgA6IABBIGogAhC2DSAAQQhqIAIQixogAEEUaiACEOQrIAIQ4SgMEgsgASgCMBCnESEDIAJBGGpB2JbjACkDACIHNwMAIAJBCGogBzcDACACQTRqIAFBNGooAgA2AgAgAkEBOgAoIAIgATYCICACIAM2AiQgAkEBOgA5IAJB0JbjACkDACIHNwMQIAIgBzcDACACIAEpAiw3AiwgAiABLwA7OwA7IAEtADghAyACIAEtAD06AD0gAiADOgA4IAJBAToAOiAAQRxqIAIQtg0gAEEEaiACEIsaIABBEGogAhDkKyACEOEoDBELIABBEGogARDEHSAAQShqIAEQsiUMEAsgAEHQAGogAEEQaiEDAkAgAC0AREEERgRAIAMgARDEHQwBCyABIAMQ4iELIAFBgQI7ADkgARCyJQwPCyAAQQRqIAEQ5AIMDgsgAEEEaiABEOYrDA0LIAAoAgxBOGwhAyAAKAIIQTBqIQADQCADRQ0NIAEtADQEQCABQQE6ADkgACABEOYrCyADQThrIQMgAEE4aiEADAALAAsgASAAQQhqEOIhDAsLIAAtABxBAkcEQCAAQQhqIAEQuA8LIAFBgQI7ADkgAEEoaiABEM8jDAoLIAAoAghBhICAgHhIDQkgAEEIaiABEIwaDAkLIAFBADoAOSABIABBEGoQ4xggAUEBOgA5IABBQGsgARC1JSABQQE6ADkgAEHEAGogARC1JQwICyAAQQRqIAEQ5isgAEEIaiABEOYrDAcLIABBBGogARDmKyABQYECOwA5DAYLIABBBGogARDmKwwFCyABIABBEGoQ4xggAUEBOgA5DAQLIABBBGogARDmKyAAQQhqIAEQ5isgAEEMaiABEOYrIABBEGogARDmKyABQQE6ADkMAwsgAEEIaiABEIwaIAFBAToAOQwCCyAAQQRqIAEQ5isMAQsgAEEEaiABEOYrCyABIAQ6ADogASAFOgA5CyACQUBrJAALDAAgASAAKAIAEJoKCw8AIABBgNfaAEHtCBD+AQsPACAAQe3f2gBBwwEQ/gELDwAgAEGw4doAQcwAEP4BCw8AIABB/OHaAEHlABD+AQsPACAAQeHi2gBBvQEQ/gELDwAgAEGe5NoAQcUQEP4BCw8AIABB4/TaAEGGCBD+AQsPACAAQen82gBBtQ0Q/gELDwAgAEGeitsAQeAGEP4BCw8AIABB/pDbAEHPABD+AQsOACAAQc2R2wBBOxD+AQsPACAAQYiS2wBBqAMQ/gELDwAgAEGwldsAQc0BEP4BCw8AIABB/ZbbAEGzBRD+AQsPACAAQbCc2wBBqgEQ/gELDwAgAEHandsAQe4DEP4BCw8AIABByKHbAEGbBxD+AQsPACAAQeOo2wBBrAEQ/gELDwAgAEGPqtsAQeABEP4BCw8AIABB76vbAEH1ARD+AQsPACAAQeSt2wBBiAEQ/gELDwAgAEHsrtsAQc0BEP4BCw8AIABBubDbAEGSARD+AQsPACAAQcux2wBB9AEQ/gELDwAgAEG/s9sAQesAEP4BCw8AIABBqrTbAEHmARD+AQsPACAAQZC22wBB1gEQ/gELDwAgAEHmt9sAQcoBEP4BCw8AIABBsLnbAEGFARD+AQsPACAAQbW62wBB6gAQ/gELDwAgAEGfu9sAQaECEP4BCw8AIABBwL3bAEG6AhD+AQsPACAAQfq/2wBBpQIQ/gELDwAgAEGfwtsAQZcEEP4BCw8AIABBtsbbAEHTBBD+AQsQACAAQYnL2wBBsOAAEP4BCw8AIABBuavcAEH/AhD+AQsPACAAQbiu3ABBvgUQ/gELDwAgAEH2s9wAQfMBEP4BCw8AIABB6bXcAEH3AhD+AQsPACAAQeC43ABBuQMQ/gELDwAgAEGZvNwAQbcEEP4BCw8AIABB0MDcAEHnARD+AQsPACAAQbfC3ABBqAMQ/gELDwAgAEHfxdwAQcUBEP4BCw8AIABBpMfcAEH7AhD+AQsPACAAQZ/K3ABB+QIQ/gELDwAgAEGYzdwAQegBEP4BCw8AIABBgM/cAEHmABD+AQsPACAAQebP3ABBxwoQ/gELDwAgAEGt2twAQewAEP4BCw8AIABBmdvcAEGlARD+AQsPACAAQb7c3ABBmQUQ/gELDwAgAEHX4dwAQegCEP4BCw8AIABBv+TcAEHhCBD+AQsPACAAQaDt3ABBogEQ/gELDwAgAEHC7twAQdcBEP4BCw8AIABBmfDcAEHUARD+AQsPACAAQe3x3ABBjgEQ/gELDwAgAEH78twAQfgEEP4BCw8AIABB8/fcAEHVBhD+AQsPACAAQcj+3ABB0gQQ/gELDwAgAEGag90AQesCEP4BCw8AIABBhYbdAEHLARD+AQsPACAAQdCH3QBB3gAQ/gELDwAgAEGuiN0AQagKEP4BCw8AIABB1pLdAEHMARD+AQsPACAAQaKU3QBBnQEQ/gELDwAgAEG/ld0AQa8BEP4BCw8AIABB7pbdAEHDARD+AQsPACAAQbGY3QBB3wEQ/gELDwAgAEGQmt0AQc4BEP4BCw8AIABB3pvdAEGbARD+AQsOACAAQfmc3QBBJBD+AQsPACAAQZ2d3QBBmQEQ/gELDwAgAEG2nt0AQakBEP4BCw8AIABB35/dAEGtAxD+AQsPACAAQYyj3QBBigEQ/gELDwAgAEGWpN0AQYECEP4BCw8AIABBl6bdAEGfARD+AQsPACAAQban3QBBwgMQ/gELDwAgAEH4qt0AQYYBEP4BCw8AIABB/qvdAEGfBxD+AQsPACAAQZ2z3QBB4AAQ/gELDwAgAEH9s90AQd0BEP4BCw8AIABB2rXdAEGsAhD+AQsPACAAQYa43QBBqQEQ/gELDwAgAEGvud0AQcUBEP4BCw8AIABB9LrdAEGPBRD+AQsPACAAQYPA3QBBjAQQ/gELDwAgAEGPxN0AQZIGEP4BCw8AIABBocrdAEGYBBD+AQsPACAAQbnO3QBB3A0Q/gELDwAgAEGV3N0AQY0BEP4BCw8AIABBot3dAEH3ABD+AQsPACAAQZne3QBBrAMQ/gELDwAgAEHF4d0AQfEHEP4BCw8AIABBtundAEHUChD+AQsQACAAQYr03QBByZMBEP4BCw4AIABB04ffAEEkEP4BCw8AIABB94ffAEGkChD+AQsPACAAQZuS3wBBhgYQ/gELDwAgAEGhmN8AQbkUEP4BCwwAIAEgACgCABCwHgsMACABIAAoAgAQugQLCwAgAEEoQQgQvRELCgAgABCUCxpBAQsMACAAKAIAIAEQ/gsLDAAgACgCACABEJ0MCwwAIAAoAgAgARCfDAsMACAAKAIAIAEQoAwLDAAgACgCACABEP0LCwwAIAAoAgAgARCeDAsMACAAKAIAIAEQpAsLDAAgACgCACABEJgKCwwAIAAoAgAgARC9KQsMACAAQcgAQQgQvRELCwAgACgCGCABEFALDAAgACgCGCABEJISCwwAIAEgACgCABCpAQsMACABIAAoAgAQ7wMLDAAgACgCACABEM0NCwwAIAEgACgCABCvAgsMACAAKAIAIAEQ6wELDAAgACgCACABEJEQCwwAIAAoAgAgARCVEQubBgECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiACgCACICQQxrIgMgA0EmTxtBAWsOJAABAhMUAwQFBgcICRYKFxYLDA0OFxMTDxcXEBETExMTExMXEhcLIAAoAgxBBHQhAiAAKAIIIQADQCACRQ0XIAAoAgBBAkcEQCAAQQxqIAEQ5iwLIABBEGohACACQRBrIQIMAAsACyAAQQRqIAEQ2wgMFQsgAEEgaiABEOssDBQLIABBBGogARDmLCAAQQhqIAEQ5iwMEwsgAEE4agJAAkACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4LAAECAwQFBgcICgkKCyAAQQhqIAEQiR8MCQsgAEEIaiABEPohDAgLIABBBGogARDmLAwHCyAAQQRqIAEQohwMBgsgAEEEaiABEOYsDAULIABBBGogARDmLAwECyAAQQRqIAEQ5iwMAwsgAEEEaiABEOYsDAILIABBBGogARDmLAwBCyAAQQhqIQICQAJAIAAoAgRBAWsOAgECAAsgAiABEIcXDAELIAIgARC5DgsgARDmLAwSCyAAQQhqIAEQiR8MEQsgAEEIaiABEPohDBALIABBBGogARDmLCAAQQhqIAEQ5iwMDAsgAC0AGEEFRgRAIABBEGogARDmLAsMDAsgAEEQaiABEOYsIAAoAgRBgICAgHhGDQ0MCwsgASAAKQMIIAAoAhgQlh0MDAsgAEEEaiABEOYsIAAoAgggARCXGgwLCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARCbFCACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEJkaDAsLDAYLIABBIGogARDrBQwJCyAAKAIMRQ0IDAULIABBCGogARC0HgwHCyAAKAIEIAEQgAwMBgsgAEEEaiABEMEPDAULIABBBGogARCiHAwECyAAQQRqIAEQ5iwMAwsgAEEMaiABEOYsDAILIABBBGogARDwGAwBCyAAQQRqIAEQlxoLC4UGAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiACgCACICQQxrIgMgA0EmTxtBAWsOJAABAhITAwQFBgcICRUWFhUKCwwNFhISDhYWDxASEhISEhIWERYLIAAoAgxBBHQhAiAAKAIIIQADQCACRQ0WIAAoAgBBAkcEQCAAQQxqIAEQ5ywLIABBEGohACACQRBrIQIMAAsACyAAQQRqIAEQ5wkMFAsgAEEIaiABEOgsDBMLIABBBGogARDnLCAAQQhqIAEQ5ywMEgsgAEE4agJAAkACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4LAAECAwQFBgcICgkKCyAAQQhqIAEQiB8MCQsgAEEIaiABEPkhDAgLIABBBGogARDnLAwHCyAAQQRqIAEQoRwMBgsgAEEEaiABEOcsDAULIABBBGogARDnLAwECyAAQQRqIAEQ5ywMAwsgAEEEaiABEOcsDAILIABBBGogARDnLAwBCyAAQQhqIQICQAJAIAAoAgRBAWsOAgECAAsgAiABEIYXDAELIAIgARC4DgsgARDnLAwRCyAAQQhqIAEQiB8MEAsgAEEIaiABEPkhDA8LIABBBGogARDnLCAAQQhqIAEQ5ywMCwsgAC0AGEEFRgRAIABBEGogARDnLAsMCwsgAEEQaiABEOcsIAAoAgRBgICAgHhGDQwMCgsgAEEEaiABEOcsIAAoAgggARCWGgwLCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARCaFCACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEJgaDAsLDAYLIABBCGogARDpLAwJCyAAKAIMRQ0IDAULIABBCGoQ5CEMBwsgACgCBCABEKEMDAYLIABBBGogARDADwwFCyAAQQRqIAEQoRwMBAsgAEEEaiABEOcsDAMLIABBDGogARDnLAwCCyAAQQRqIAEQ7xgMAQsgAEEEaiABEJYaCwsMACAAKAIYIAEQkBILDAAgACgCGCABEPAFCwwAIAAoAgAgARCaFAsMACAAKAIAIAEQkRILDAAgACgCACABEJsUCwwAIAEgACgCABCoCQsMACAAKAIAIAEQnRQLDAAgACgCGCABEJMSCwwAIAAoAhggARDxBQsMACAAKAIAIAEQzgMLDAAgACgCACABEJUaCwwAIAAoAgAgARChDAsMACAAKAIAIAEQgAwLDAAgACgCACABELoLCwwAIAAoAgAgARD/CwsMACAAKAIAIAEQogwLDAAgARDWJiAAENYaCwwAIAAoAgAgARCQEgsMACAAKAIAIAEQkxILDAAgACgCACABEJISCwwAIAAoAgAgARCSBQsMACAAKAIAIAEQ1RMLDAAgACgCACABENIECwwAIAAoAgAgARDTEwsMACAAKAIAIAEQkwULDAAgACgCACABENQTCwwAIAEgACgCABCSAQsMACABIAAoAgAQ1gMLTQECfyAAKAIAIgAoAghBBnQhAiAAKAIEIQMDQCACBEAgAyABEIAmIAJBQGohAiADQUBrIQMMAQsLIABBDGogARClGiAAQRhqIAEQ9CMLDAAgACgCGCABEJIJCwwAIAAoAgAgARDWBAsMACAAKAIAIAEQ1hMLDAAgACgCACABEPQECwwAIAAoAgAgARDXEwsMACAAKAIAIAEQwAsLDAAgACgCACABEKMMCwoAIAAQ6A4aQQELDAAgACgCACABEIAJCwwAIAAoAgAgARCXEgsLACAAIAEQ3Q9BAAsMACAAIAEpAhA3AwALDAAgARD3IyAAENYmCwoAIAAgASACEGcLDAAgASAAKAIYEOIBCwwAIAAoAhggARD3CgsMACAAKAIAIAEQ/QELDAAgACgCACABEPcKCwsAIAAgASACEMYYCwwAIAAoAgAgARCWEAt6AQJ/IAAoAgAiACgCCEE4bCECIAAoAgQiAEEUaiEDA0AgAgRAAkAgAC0ANEEBRw0AIAAoAgANACABIAEoAhwgASgCICADKAIAEMYPEIMeCyAAIAEQlhAgAEEwaiABEJcmIAJBOGshAiADQThqIQMgAEE4aiEADAELCwsLACAAKAIAIAEQWQsMACAAKAIAIAEQlAULQwEBfyAAKAIAIgAoAghB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AAAAAAAIAAAABAAAAD0DAAA+AwAABAAAAAQAAAA/AwAAQAMAAEEDAABCAwAABAEAAAQAAABDAwAARAMAAGVycm9yIHN0cmluZyBzaG91bGQgYmUgdXRmOC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lcnJvcl9yZXBvcnRlcnMtMi4wLjAvc3JjL2hhbmRsZXIucnMAAM8hEABnAAAAbwAAACwAAABFAwAAFAAAAAQAAACqAgAAYmluZGluZ190eXBlc2NyaXB0X3dhc20vc3JjL2xpYi5ycwAAWCIQACIAAAAhAAAAIwAAAHRzeACMIhAAAwAAAGyIFgAKAAAAdmVyYmF0aW1Nb2R1bGVTeW50YXhuYXRpdmVDbGFzc1Byb3BlcnRpZXNpbXBvcnROb3RVc2VkQXNWYWx1ZXNub0VtcHR5RXhwb3J0aW1wb3J0RXhwb3J0QXNzaWduQ29uZmlndHNFbnVtSXNNdXRhYmxlcmVtb3ZlcHJlc2VydmUSIxAABgAAABgjEAAIAAAAQ2xhc3NpY1ByZXNlcnZlTm9kZU5leHRFc05leHQAAAAwIxAABwAAADcjEAAIAAAAPyMQAAgAAABHIxAABgAAAKAiEAAUAAAAtCIQABUAAADJIhAAFQAAAN4iEAANAAAA6yIQABgAAAADIxAADwAAAGludmFsaWQgbGVuZ3RoIACgIxAADwAAAIYDFgALAAAAZHVwbGljYXRlIGZpZWxkIGAAAADAIxAAEQAAAJoWGAABAAAAdW5rbm93biB2YXJpYW50IGBgLCBleHBlY3RlZCAAAADkIxAAEQAAAPUjEAAMAAAARgMAAEcDAABIAwAASQMAAEoDAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwX3Rocm93KClgIG9uIGEgYE5vbmVgIHZhbHVlY2FsbGVkIGBSZXN1bHQ6OnVud3JhcF90aHJvdygpYCBvbiBhbiBgRXJyYCB2YWx1ZWNvcmUvc3JjL251bS9kZWMyZmx0L2RlY2ltYWwucnMAAACKJBAAHwAAAFEAAAAnAAAAiiQQAB8AAAB9AAAAEwAAAIokEAAfAAAAoQAAACAAAACKJBAAHwAAALgAAAAlAAAAiiQQAB8AAADlAAAAFQAA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LXplcm8gdHJhaWxpbmcgYml0c2ludmFsaWQgcGFkZGluZyBsZW5ndGggYXQgAAAAAQAAAAAAAAAhehAABAAAAExlbmd0aFRyYWlsaW5nUGFkZGluZ0RlY29kZUVycm9ycG9zaXRpb24vcnVzdC9kZXBzL2hhc2hicm93bi0wLjE1LjAvc3JjL3Jhdy9tb2QucnMAAGB6EAAqAAAAVAAAACgAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9oc3RyLTAuMi4xMi9zcmMvZ2xvYmFsX3N0b3JlLnJzAACcehAAXgAAAAsAAAAgAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvaHN0ci0wLjIuMTIvc3JjL2xpYi5yc25vdCB5ZXQgaW1wbGVtZW50ZWQ6IHN0YXRpYyBoYXNoAAAAYXsQACAAAAAMexAAVQAAAOsAAAARAAAAbm90IHlldCBpbXBsZW1lbnRlZDogc3RhdGljIGFzX3N0cgAAnHsQACIAAAAMexAAVQAAAPsAAAARAAAADHsQAFUAAAAAAQAAPAAAAHJldHVybiB0aGlzADcuFgBqAAAATQAAAC4AAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9tZW1jaHItMi43LjQvc3JjL2FyY2gvYWxsL3R3b3dheS5ycwAABHwQAGIAAAC/AAAALgAAAAR8EABiAAAAxwAAACkAAAAEfBAAYgAAAMwAAAA0AAAABHwQAGIAAADUAAAAJAAAAAR8EABiAAAA1AAAADEAAAAEfBAAYgAAANcAAAAiAAAABHwQAGIAAADXAAAAMwAAAAR8EABiAAAA8QAAAC4AAAAEfBAAYgAAAPgAAAApAAAABHwQAGIAAAD9AAAANAAAAAR8EABiAAAABAEAABgAAAAEfBAAYgAAAAQBAAAlAAAABHwQAGIAAADCAQAAHQAAAAR8EABiAAAAwwEAABkAAAAEfBAAYgAAAAoCAAAbAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXgu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AAAE/AAAAgAAAAH+AAACAEGApsIAC4pRL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWludGVnZXItMC4xLjQ2L3NyYy9saWIucnMAkxAAXAAAAB4EAAABAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9kaXZpc2lvbi5ycwBskxAAZwAAABwAAAAGAAAAYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybwAAAOSTEAAZAAAAbJMQAGcAAABXAAAACQAAAGyTEABnAAAA3QAAADkAAABskxAAZwAAANIAAAAJAAAAbJMQAGcAAAAVAQAADgAAAGyTEABnAAAAFgEAAA4AAABskxAAZwAAACABAAAhAAAAbJMQAGcAAAAhAQAAGAAAAGyTEABnAAAAQgEAADwAAABskxAAZwAAAEYBAAApAAAAbJMQAGcAAABLAQAADwAAAGyTEABnAAAATgEAABsAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9udW0tYmlnaW50LTAuNC42L3NyYy9iaWd1aW50L3NoaWZ0LnJzuJQQAGQAAAAoAAAAGQAAALiUEABkAAAASgAAACMAAABuZWdhdGl2ZSB2YWx1ZXMgYXJlIG5vbi16ZXJvL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlnaW50L3NoaWZ0LnJzAFiVEABjAAAAZgAAACgAAAAAAAAABAAAAAQAAAA7AAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9hZGRpdGlvbi5ycwDclRAAZwAAADsAAAAaAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9zdWJ0cmFjdGlvbi5ycwAAVJYQAGoAAAA0AAAAGgAAAFSWEABqAAAANQAAABoAAABDYW5ub3Qgc3VidHJhY3QgYiBmcm9tIGEgYmVjYXVzZSBiIGlzIGxhcmdlciB0aGFuIGEu4JYQADQAAABUlhAAagAAAEUAAAAFAAAAVJYQAGoAAABdAAAAGgAAAFSWEABqAAAAXgAAABoAAABhc3NlcnRpb24gZmFpbGVkOiBhX2hpLmlzX2VtcHR5KCkAAABUlhAAagAAAGIAAAAFAAAAVJYQAGoAAABlAAAABQAAAC9ydXN0Yy81NWEyMmQyYTYzMzM0ZTBmYWZmMDIwMmI3MmEzMWNlODMyYjU2MTI1L2xpYnJhcnkvY29yZS9zcmMvc2xpY2UvaXRlci5ycwAAkJcQAE4AAADxBQAAFQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1pbnRlZ2VyLTAuMS40Ni9zcmMvcm9vdHMucnMAAPCXEABeAAAAgwEAAAEAAAAAAAAABAAAAAQAAAA7AAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvb25jZV9jZWxsLTEuMTkuMC9zcmMvaW1wX3N0ZC5ycwAAcJgQAF4AAAChAAAANgAAAHCYEABeAAAAmwAAAAkAAAAzODsyOwAAAPCYEAAFAAAA5xMYAAEAAADnExgAAQAAADQ4OzI7AAAAEJkQAAUAAADnExgAAQAAAOcTGAABAAAAG1sxMjM0NTY3ODkbWzBtADuZEAAEAAAAMzAzMTMyMzMzNDM1MzYzNzM5OTA5MTkyOTM5NDk1OTY5NzQwNDE0MjQzNDQ0NTQ2NDc0OTEwMDEwMTEwMjEwMzEwNDEwNTEwNjEwNzM4OzI7MjQwOzI0ODsyNTUzODsyOzI1MDsyMzU7MjE1Mzg7MjswMDA7MjU1OzI1NTM4OzI7MTI3OzI1NTsyMTIzODsyOzI0MDsyNTU7MjU1Mzg7MjsyNDU7MjQ1OzIyMDM4OzI7MjU1OzIyODsxOTYzODsyOzAwMDswMDA7MDAwMzg7MjsyNTU7MjM1OzIwNTM4OzI7MDAwOzAwMDsyNTUzODsyOzEzODswNDM7MjI2Mzg7MjsxNjU7MDQyOzA0MjM4OzI7MjIyOzE4NDsxMzUzODsyOzA5NTsxNTg7MTYwMzg7MjsxMjc7MjU1OzAwMDM4OzI7MjEwOzEwNTswMzAzODsyOzI1NTsxMjc7MDgwMzg7MjsxMDA7MTQ5OzIzNzM4OzI7MjU1OzI0ODsyMjAzODsyOzIyMDswMjA7MDYwMzg7MjswMDA7MDAwOzEzOTM4OzI7MDAwOzEzOTsxMzkzODsyOzE4NDsxMzQ7MDExMzg7MjsxNjk7MTY5OzE2OTM4OzI7MDAwOzEwMDswMDAzODsyOzE4OTsxODM7MTA3Mzg7MjsxMzk7MDAwOzEzOTM4OzI7MDg1OzEwNzswNDczODsyOzI1NTsxNDA7MDAwMzg7MjsxNTM7MDUwOzIwNDM4OzI7MTM5OzAwMDswMDAzODsyOzIzMzsxNTA7MTIyMzg7MjsxNDM7MTg4OzE0MzM4OzI7MDcyOzA2MTsxMzkzODsyOzA0NzswNzk7MDc5Mzg7MjswMDA7MjA2OzIwOTM4OzI7MTQ4OzAwMDsyMTEzODsyOzI1NTswMjA7MTQ3Mzg7MjswMDA7MTkxOzI1NTM4OzI7MTA1OzEwNTsxMDUzODsyOzAzMDsxNDQ7MjU1Mzg7MjsxNzg7MDM0OzAzNDM4OzI7MjU1OzI1MDsyNDAzODsyOzAzNDsxMzk7MDM0Mzg7MjsyNTU7MDAwOzI1NTM4OzI7MjIwOzIyMDsyMjAzODsyOzI0ODsyNDg7MjU1Mzg7MjsyNTU7MjE1OzAwMDM4OzI7MjE4OzE2NTswMzIzODsyOzEyODsxMjg7MTI4Mzg7MjswMDA7MTI4OzAwMDM4OzI7MTczOzI1NTswNDczODsyOzI0MDsyNTU7MjQwMzg7MjsyNTU7MTA1OzE4MDM4OzI7MjA1OzA5MjswOTIzODsyOzA3NTswMDA7MTMwMzg7MjsyNTU7MjU1OzI0MDM4OzI7MjQwOzIzMDsxNDAzODsyOzIzMDsyMzA7MjUwMzg7MjsyNTU7MjQwOzI0NTM4OzI7MTI0OzI1MjswMDAzODsyOzI1NTsyNTA7MjA1Mzg7MjsxNzM7MjE2OzIzMDM4OzI7MjQwOzEyODsxMjgzODsyOzIyNDsyNTU7MjU1Mzg7MjsyNTA7MjUwOzIxMDM4OzI7MjExOzIxMTsyMTEzODsyOzE0NDsyMzg7MTQ0Mzg7MjsyNTU7MTgyOzE5MzM4OzI7MjU1OzE2MDsxMjIzODsyOzAzMjsxNzg7MTcwMzg7MjsxMzU7MjA2OzI1MDM4OzI7MTE5OzEzNjsxNTMzODsyOzE3NjsxOTY7MjIyMzg7MjsyNTU7MjU1OzIyNDM4OzI7MDAwOzI1NTswMDAzODsyOzA1MDsyMDU7MDUwMzg7MjsyNTA7MjQwOzIzMDM4OzI7MTI4OzAwMDswMDAzODsyOzEwMjsyMDU7MTcwMzg7MjswMDA7MDAwOzIwNTM4OzI7MTg2OzA4NTsyMTEzODsyOzE0NzsxMTI7MjE5Mzg7MjswNjA7MTc5OzExMzM4OzI7MTIzOzEwNDsyMzgzODsyOzAwMDsyNTA7MTU0Mzg7MjswNzI7MjA5OzIwNDM4OzI7MTk5OzAyMTsxMzMzODsyOzAyNTswMjU7MTEyMzg7MjsyNDU7MjU1OzI1MDM4OzI7MjU1OzIyODsyMjUzODsyOzI1NTsyMjg7MTgxMzg7MjsyNTU7MjIyOzE3MzM4OzI7MDAwOzAwMDsxMjgzODsyOzI1MzsyNDU7MjMwMzg7MjsxMjg7MTI4OzAwMDM4OzI7MTA3OzE0MjswMzUzODsyOzI1NTsxNjU7MDAwMzg7MjsyNTU7MDY5OzAwMDM4OzI7MjE4OzExMjsyMTQzODsyOzIzODsyMzI7MTcwMzg7MjsxNTI7MjUxOzE1MjM4OzI7MTc1OzIzODsyMzgzODsyOzIxOTsxMTI7MTQ3Mzg7MjsyNTU7MjM5OzIxMzM4OzI7MjU1OzIxODsxODUzODsyOzIwNTsxMzM7MDYzMzg7MjsyNTU7MTkyOzIwMzM4OzI7MjIxOzE2MDsyMjEzODsyOzE3NjsyMjQ7MjMwMzg7MjsxMjg7MDAwOzEyODM4OzI7MTAyOzA1MTsxNTMzODsyOzI1NTswMDA7MDAwMzg7MjsxODg7MTQzOzE0MzM4OzI7MDY1OzEwNTsyMjUzODsyOzEzOTswNjk7MDE5Mzg7MjsyNTA7MTI4OzExNDM4OzI7MjQ0OzE2NDswOTYzODsyOzA0NjsxMzk7MDg3Mzg7MjsyNTU7MjQ1OzIzODM4OzI7MTYwOzA4MjswNDUzODsyOzE5MjsxOTI7MTkyMzg7MjsxMzU7MjA2OzIzNTM4OzI7MTA2OzA5MDsyMDUzODsyOzExMjsxMjg7MTQ0Mzg7MjsyNTU7MjUwOzI1MDM4OzI7MDAwOzI1NTsxMjczODsyOzA3MDsxMzA7MTgwMzg7MjsyMTA7MTgwOzE0MDM4OzI7MDAwOzEyODsxMjgzODsyOzIxNjsxOTE7MjE2Mzg7MjsyNTU7MDk5OzA3MTM4OzI7MDY0OzIyNDsyMDgzODsyOzIzODsxMzA7MjM4Mzg7MjsyNDU7MjIyOzE3OTM4OzI7MjU1OzI1NTsyNTUzODsyOzI0NTsyNDU7MjQ1Mzg7MjsyNTU7MjU1OzAwMDM4OzI7MTU0OzIwNTswNTA0ODsyOzI0MDsyNDg7MjU1NDg7MjsyNTA7MjM1OzIxNTQ4OzI7MDAwOzI1NTsyNTU0ODsyOzEyNzsyNTU7MjEyNDg7MjsyNDA7MjU1OzI1NTQ4OzI7MjQ1OzI0NTsyMjA0ODsyOzI1NTsyMjg7MTk2NDg7MjswMDA7MDAwOzAwMDQ4OzI7MjU1OzIzNTsyMDU0ODsyOzAwMDswMDA7MjU1NDg7MjsxMzg7MDQzOzIyNjQ4OzI7MTY1OzA0MjswNDI0ODsyOzIyMjsxODQ7MTM1NDg7MjswOTU7MTU4OzE2MDQ4OzI7MTI3OzI1NTswMDA0ODsyOzIxMDsxMDU7MDMwNDg7MjsyNTU7MTI3OzA4MDQ4OzI7MTAwOzE0OTsyMzc0ODsyOzI1NTsyNDg7MjIwNDg7MjsyMjA7MDIwOzA2MDQ4OzI7MDAwOzAwMDsxMzk0ODsyOzAwMDsxMzk7MTM5NDg7MjsxODQ7MTM0OzAxMTQ4OzI7MTY5OzE2OTsxNjk0ODsyOzAwMDsxMDA7MDAwNDg7MjsxODk7MTgzOzEwNzQ4OzI7MTM5OzAwMDsxMzk0ODsyOzA4NTsxMDc7MDQ3NDg7MjsyNTU7MTQwOzAwMDQ4OzI7MTUzOzA1MDsyMDQ0ODsyOzEzOTswMDA7MDAwNDg7MjsyMzM7MTUwOzEyMjQ4OzI7MTQzOzE4ODsxNDM0ODsyOzA3MjswNjE7MTM5NDg7MjswNDc7MDc5OzA3OTQ4OzI7MDAwOzIwNjsyMDk0ODsyOzE0ODswMDA7MjExNDg7MjsyNTU7MDIwOzE0NzQ4OzI7MDAwOzE5MTsyNTU0ODsyOzEwNTsxMDU7MTA1NDg7MjswMzA7MTQ0OzI1NTQ4OzI7MTc4OzAzNDswMzQ0ODsyOzI1NTsyNTA7MjQwNDg7MjswMzQ7MTM5OzAzNDQ4OzI7MjU1OzAwMDsyNTU0ODsyOzIyMDsyMjA7MjIwNDg7MjsyNDg7MjQ4OzI1NTQ4OzI7MjU1OzIxNTswMDA0ODsyOzIxODsxNjU7MDMyNDg7MjsxMjg7MTI4OzEyODQ4OzI7MDAwOzEyODswMDA0ODsyOzE3MzsyNTU7MDQ3NDg7MjsyNDA7MjU1OzI0MDQ4OzI7MjU1OzEwNTsxODA0ODsyOzIwNTswOTI7MDkyNDg7MjswNzU7MDAwOzEzMDQ4OzI7MjU1OzI1NTsyNDA0ODsyOzI0MDsyMzA7MTQwNDg7MjsyMzA7MjMwOzI1MDQ4OzI7MjU1OzI0MDsyNDU0ODsyOzEyNDsyNTI7MDAwNDg7MjsyNTU7MjUwOzIwNTQ4OzI7MTczOzIxNjsyMzA0ODsyOzI0MDsxMjg7MTI4NDg7MjsyMjQ7MjU1OzI1NTQ4OzI7MjUwOzI1MDsyMTA0ODsyOzIxMTsyMTE7MjExNDg7MjsxNDQ7MjM4OzE0NDQ4OzI7MjU1OzE4MjsxOTM0ODsyOzI1NTsxNjA7MTIyNDg7MjswMzI7MTc4OzE3MDQ4OzI7MTM1OzIwNjsyNTA0ODsyOzExOTsxMzY7MTUzNDg7MjsxNzY7MTk2OzIyMjQ4OzI7MjU1OzI1NTsyMjQ0ODsyOzAwMDsyNTU7MDAwNDg7MjswNTA7MjA1OzA1MDQ4OzI7MjUwOzI0MDsyMzA0ODsyOzEyODswMDA7MDAwNDg7MjsxMDI7MjA1OzE3MDQ4OzI7MDAwOzAwMDsyMDU0ODsyOzE4NjswODU7MjExNDg7MjsxNDc7MTEyOzIxOTQ4OzI7MDYwOzE3OTsxMTM0ODsyOzEyMzsxMDQ7MjM4NDg7MjswMDA7MjUwOzE1NDQ4OzI7MDcyOzIwOTsyMDQ0ODsyOzE5OTswMjE7MTMzNDg7MjswMjU7MDI1OzExMjQ4OzI7MjQ1OzI1NTsyNTA0ODsyOzI1NTsyMjg7MjI1NDg7MjsyNTU7MjI4OzE4MTQ4OzI7MjU1OzIyMjsxNzM0ODsyOzAwMDswMDA7MTI4NDg7MjsyNTM7MjQ1OzIzMDQ4OzI7MTI4OzEyODswMDA0ODsyOzEwNzsxNDI7MDM1NDg7MjsyNTU7MTY1OzAwMDQ4OzI7MjU1OzA2OTswMDA0ODsyOzIxODsxMTI7MjE0NDg7MjsyMzg7MjMyOzE3MDQ4OzI7MTUyOzI1MTsxNTI0ODsyOzE3NTsyMzg7MjM4NDg7MjsyMTk7MTEyOzE0NzQ4OzI7MjU1OzIzOTsyMTM0ODsyOzI1NTsyMTg7MTg1NDg7MjsyMDU7MTMzOzA2MzQ4OzI7MjU1OzE5MjsyMDM0ODsyOzIyMTsxNjA7MjIxNDg7MjsxNzY7MjI0OzIzMDQ4OzI7MTI4OzAwMDsxMjg0ODsyOzEwMjswNTE7MTUzNDg7MjsyNTU7MDAwOzAwMDQ4OzI7MTg4OzE0MzsxNDM0ODsyOzA2NTsxMDU7MjI1NDg7MjsxMzk7MDY5OzAxOTQ4OzI7MjUwOzEyODsxMTQ0ODsyOzI0NDsxNjQ7MDk2NDg7MjswNDY7MTM5OzA4NzQ4OzI7MjU1OzI0NTsyMzg0ODsyOzE2MDswODI7MDQ1NDg7MjsxOTI7MTkyOzE5MjQ4OzI7MTM1OzIwNjsyMzU0ODsyOzEwNjswOTA7MjA1NDg7MjsxMTI7MTI4OzE0NDQ4OzI7MjU1OzI1MDsyNTA0ODsyOzAwMDsyNTU7MTI3NDg7MjswNzA7MTMwOzE4MDQ4OzI7MjEwOzE4MDsxNDA0ODsyOzAwMDsxMjg7MTI4NDg7MjsyMTY7MTkxOzIxNjQ4OzI7MjU1OzA5OTswNzE0ODsyOzA2NDsyMjQ7MjA4NDg7MjsyMzg7MTMwOzIzODQ4OzI7MjQ1OzIyMjsxNzk0ODsyOzI1NTsyNTU7MjU1NDg7MjsyNDU7MjQ1OzI0NTQ4OzI7MjU1OzI1NTswMDA0ODsyOzE1NDsyMDU7MDUwMzg7NTswMzg7NTsxMzg7NTsyMzg7NTszMzg7NTs0Mzg7NTs1Mzg7NTs2Mzg7NTs3Mzg7NTs4Mzg7NTs5Mzg7NTsxMDM4OzU7MTEzODs1OzEyMzg7NTsxMzM4OzU7MTQzODs1OzE1Mzg7NTsxNjM4OzU7MTczODs1OzE4Mzg7NTsxOTM4OzU7MjAzODs1OzIxMzg7NTsyMjM4OzU7MjMzODs1OzI0Mzg7NTsyNTM4OzU7MjYzODs1OzI3Mzg7NTsyODM4OzU7MjkzODs1OzMwMzg7NTszMTM4OzU7MzIzODs1OzMzMzg7NTszNDM4OzU7MzUzODs1OzM2Mzg7NTszNzM4OzU7MzgzODs1OzM5Mzg7NTs0MDM4OzU7NDEzODs1OzQyMzg7NTs0MzM4OzU7NDQzODs1OzQ1Mzg7NTs0NjM4OzU7NDczODs1OzQ4Mzg7NTs0OTM4OzU7NTAzODs1OzUxMzg7NTs1MjM4OzU7NTMzODs1OzU0Mzg7NTs1NTM4OzU7NTYzODs1OzU3Mzg7NTs1ODM4OzU7NTkzODs1OzYwMzg7NTs2MTM4OzU7NjIzODs1OzYzMzg7NTs2NDM4OzU7NjUzODs1OzY2Mzg7NTs2NzM4OzU7NjgzODs1OzY5Mzg7NTs3MDM4OzU7NzEzODs1OzcyMzg7NTs3MzM4OzU7NzQzODs1Ozc1Mzg7NTs3NjM4OzU7NzczODs1Ozc4Mzg7NTs3OTM4OzU7ODAzODs1OzgxMzg7NTs4MjM4OzU7ODMzODs1Ozg0Mzg7NTs4NTM4OzU7ODYzODs1Ozg3Mzg7NTs4ODM4OzU7ODkzODs1OzkwMzg7NTs5MTM4OzU7OTIzODs1OzkzMzg7NTs5NDM4OzU7OTUzODs1Ozk2Mzg7NTs5NzM4OzU7OTgzODs1Ozk5Mzg7NTsxMDAzODs1OzEwMTM4OzU7MTAyMzg7NTsxMDMzODs1OzEwNDM4OzU7MTA1Mzg7NTsxMDYzODs1OzEwNzM4OzU7MTA4Mzg7NTsxMDkzODs1OzExMDM4OzU7MTExMzg7NTsxMTIzODs1OzExMzM4OzU7MTE0Mzg7NTsxMTUzODs1OzExNjM4OzU7MTE3Mzg7NTsxMTgzODs1OzExOTM4OzU7MTIwMzg7NTsxMjEzODs1OzEyMjM4OzU7MTIzMzg7NTsxMjQzODs1OzEyNTM4OzU7MTI2Mzg7NTsxMjczODs1OzEyODM4OzU7MTI5Mzg7NTsxMzAzODs1OzEzMTM4OzU7MTMyMzg7NTsxMzMzODs1OzEzNDM4OzU7MTM1Mzg7NTsxMzYzODs1OzEzNzM4OzU7MTM4Mzg7NTsxMzkzODs1OzE0MDM4OzU7MTQxMzg7NTsxNDIzODs1OzE0MzM4OzU7MTQ0Mzg7NTsxNDUzODs1OzE0NjM4OzU7MTQ3Mzg7NTsxNDgzODs1OzE0OTM4OzU7MTUwMzg7NTsxNTEzODs1OzE1MjM4OzU7MTUzMzg7NTsxNTQzODs1OzE1NTM4OzU7MTU2Mzg7NTsxNTczODs1OzE1ODM4OzU7MTU5Mzg7NTsxNjAzODs1OzE2MTM4OzU7MTYyMzg7NTsxNjMzODs1OzE2NDM4OzU7MTY1Mzg7NTsxNjYzODs1OzE2NzM4OzU7MTY4Mzg7NTsxNjkzODs1OzE3MDM4OzU7MTcxMzg7NTsxNzIzODs1OzE3MzM4OzU7MTc0Mzg7NTsxNzUzODs1OzE3NjM4OzU7MTc3Mzg7NTsxNzgzODs1OzE3OTM4OzU7MTgwMzg7NTsxODEzODs1OzE4MjM4OzU7MTgzMzg7NTsxODQzODs1OzE4NTM4OzU7MTg2Mzg7NTsxODczODs1OzE4ODM4OzU7MTg5Mzg7NTsxOTAzODs1OzE5MTM4OzU7MTkyMzg7NTsxOTMzODs1OzE5NDM4OzU7MTk1Mzg7NTsxOTYzODs1OzE5NzM4OzU7MTk4Mzg7NTsxOTkzODs1OzIwMDM4OzU7MjAxMzg7NTsyMDIzODs1OzIwMzM4OzU7MjA0Mzg7NTsyMDUzODs1OzIwNjM4OzU7MjA3Mzg7NTsyMDgzODs1OzIwOTM4OzU7MjEwMzg7NTsyMTEzODs1OzIxMjM4OzU7MjEzMzg7NTsyMTQzODs1OzIxNTM4OzU7MjE2Mzg7NTsyMTczODs1OzIxODM4OzU7MjE5Mzg7NTsyMjAzODs1OzIyMTM4OzU7MjIyMzg7NTsyMjMzODs1OzIyNDM4OzU7MjI1Mzg7NTsyMjYzODs1OzIyNzM4OzU7MjI4Mzg7NTsyMjkzODs1OzIzMDM4OzU7MjMxMzg7NTsyMzIzODs1OzIzMzM4OzU7MjM0Mzg7NTsyMzUzODs1OzIzNjM4OzU7MjM3Mzg7NTsyMzgzODs1OzIzOTM4OzU7MjQwMzg7NTsyNDEzODs1OzI0MjM4OzU7MjQzMzg7NTsyNDQzODs1OzI0NTM4OzU7MjQ2Mzg7NTsyNDczODs1OzI0ODM4OzU7MjQ5Mzg7NTsyNTAzODs1OzI1MTM4OzU7MjUyMzg7NTsyNTMzODs1OzI1NDM4OzU7MjU1NDg7NTswNDg7NTsxNDg7NTsyNDg7NTszNDg7NTs0NDg7NTs1NDg7NTs2NDg7NTs3NDg7NTs4NDg7NTs5NDg7NTsxMDQ4OzU7MTE0ODs1OzEyNDg7NTsxMzQ4OzU7MTQ0ODs1OzE1NDg7NTsxNjQ4OzU7MTc0ODs1OzE4NDg7NTsxOTQ4OzU7MjA0ODs1OzIxNDg7NTsyMjQ4OzU7MjM0ODs1OzI0NDg7NTsyNTQ4OzU7MjY0ODs1OzI3NDg7NTsyODQ4OzU7Mjk0ODs1OzMwNDg7NTszMTQ4OzU7MzI0ODs1OzMzNDg7NTszNDQ4OzU7MzU0ODs1OzM2NDg7NTszNzQ4OzU7Mzg0ODs1OzM5NDg7NTs0MDQ4OzU7NDE0ODs1OzQyNDg7NTs0MzQ4OzU7NDQ0ODs1OzQ1NDg7NTs0NjQ4OzU7NDc0ODs1OzQ4NDg7NTs0OTQ4OzU7NTA0ODs1OzUxNDg7NTs1MjQ4OzU7NTM0ODs1OzU0NDg7NTs1NTQ4OzU7NTY0ODs1OzU3NDg7NTs1ODQ4OzU7NTk0ODs1OzYwNDg7NTs2MTQ4OzU7NjI0ODs1OzYzNDg7NTs2NDQ4OzU7NjU0ODs1OzY2NDg7NTs2NzQ4OzU7Njg0ODs1OzY5NDg7NTs3MDQ4OzU7NzE0ODs1OzcyNDg7NTs3MzQ4OzU7NzQ0ODs1Ozc1NDg7NTs3NjQ4OzU7Nzc0ODs1Ozc4NDg7NTs3OTQ4OzU7ODA0ODs1OzgxNDg7NTs4MjQ4OzU7ODM0ODs1Ozg0NDg7NTs4NTQ4OzU7ODY0ODs1Ozg3NDg7NTs4ODQ4OzU7ODk0ODs1OzkwNDg7NTs5MTQ4OzU7OTI0ODs1OzkzNDg7NTs5NDQ4OzU7OTU0ODs1Ozk2NDg7NTs5NzQ4OzU7OTg0ODs1Ozk5NDg7NTsxMDA0ODs1OzEwMTQ4OzU7MTAyNDg7NTsxMDM0ODs1OzEwNDQ4OzU7MTA1NDg7NTsxMDY0ODs1OzEwNzQ4OzU7MTA4NDg7NTsxMDk0ODs1OzExMDQ4OzU7MTExNDg7NTsxMTI0ODs1OzExMzQ4OzU7MTE0NDg7NTsxMTU0ODs1OzExNjQ4OzU7MTE3NDg7NTsxMTg0ODs1OzExOTQ4OzU7MTIwNDg7NTsxMjE0ODs1OzEyMjQ4OzU7MTIzNDg7NTsxMjQ0ODs1OzEyNTQ4OzU7MTI2NDg7NTsxMjc0ODs1OzEyODQ4OzU7MTI5NDg7NTsxMzA0ODs1OzEzMTQ4OzU7MTMyNDg7NTsxMzM0ODs1OzEzNDQ4OzU7MTM1NDg7NTsxMzY0ODs1OzEzNzQ4OzU7MTM4NDg7NTsxMzk0ODs1OzE0MDQ4OzU7MTQxNDg7NTsxNDI0ODs1OzE0MzQ4OzU7MTQ0NDg7NTsxNDU0ODs1OzE0NjQ4OzU7MTQ3NDg7NTsxNDg0ODs1OzE0OTQ4OzU7MTUwNDg7NTsxNTE0ODs1OzE1MjQ4OzU7MTUzNDg7NTsxNTQ0ODs1OzE1NTQ4OzU7MTU2NDg7NTsxNTc0ODs1OzE1ODQ4OzU7MTU5NDg7NTsxNjA0ODs1OzE2MTQ4OzU7MTYyNDg7NTsxNjM0ODs1OzE2NDQ4OzU7MTY1NDg7NTsxNjY0ODs1OzE2NzQ4OzU7MTY4NDg7NTsxNjk0ODs1OzE3MDQ4OzU7MTcxNDg7NTsxNzI0ODs1OzE3MzQ4OzU7MTc0NDg7NTsxNzU0ODs1OzE3NjQ4OzU7MTc3NDg7NTsxNzg0ODs1OzE3OTQ4OzU7MTgwNDg7NTsxODE0ODs1OzE4MjQ4OzU7MTgzNDg7NTsxODQ0ODs1OzE4NTQ4OzU7MTg2NDg7NTsxODc0ODs1OzE4ODQ4OzU7MTg5NDg7NTsxOTA0ODs1OzE5MTQ4OzU7MTkyNDg7NTsxOTM0ODs1OzE5NDQ4OzU7MTk1NDg7NTsxOTY0ODs1OzE5NzQ4OzU7MTk4NDg7NTsxOTk0ODs1OzIwMDQ4OzU7MjAxNDg7NTsyMDI0ODs1OzIwMzQ4OzU7MjA0NDg7NTsyMDU0ODs1OzIwNjQ4OzU7MjA3NDg7NTsyMDg0ODs1OzIwOTQ4OzU7MjEwNDg7NTsyMTE0ODs1OzIxMjQ4OzU7MjEzNDg7NTsyMTQ0ODs1OzIxNTQ4OzU7MjE2NDg7NTsyMTc0ODs1OzIxODQ4OzU7MjE5NDg7NTsyMjA0ODs1OzIyMTQ4OzU7MjIyNDg7NTsyMjM0ODs1OzIyNDQ4OzU7MjI1NDg7NTsyMjY0ODs1OzIyNzQ4OzU7MjI4NDg7NTsyMjk0ODs1OzIzMDQ4OzU7MjMxNDg7NTsyMzI0ODs1OzIzMzQ4OzU7MjM0NDg7NTsyMzU0ODs1OzIzNjQ4OzU7MjM3NDg7NTsyMzg0ODs1OzIzOTQ4OzU7MjQwNDg7NTsyNDE0ODs1OzI0MjQ4OzU7MjQzNDg7NTsyNDQ0ODs1OzI0NTQ4OzU7MjQ2NDg7NTsyNDc0ODs1OzI0ODQ4OzU7MjQ5NDg7NTsyNTA0ODs1OzI1MTQ4OzU7MjUyNDg7NTsyNTM0ODs1OzI1NDQ4OzU7MjU1OLoQAGkAAABrAQAAFwAAAC5LFgBZAAAAQQEAADYAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9wYXJraW5nX2xvdF9jb3JlLTAuOS4xMC9zcmMvcGFya2luZ19sb3QucnMAAAA4uhAAaQAAAEoBAAAMAAAAUGFya2luZyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0AALS6EAAmAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcGFya2luZ19sb3RfY29yZS0wLjkuMTAvc3JjL3RocmVhZF9wYXJrZXIvd2FzbS5yc+S6EABwAAAAGgAAAAkAAADkuhAAcAAAACoAAAAJAAAAFwMAAAwAAAAEAAAAVwMAAFgDAABZAwBBlPfCAAuyIwEAAAAbAwAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtMS4xMC42L3NyYy9idWlsZGVycy5ycwCcuxAAWwAAAEcAAAAJAAAAU3ludGF4KAoIvBAACAAAAENvbXBpbGVkVG9vQmlnAABaAwAABAAAAAQAAABbAwAAXAMAABAAAAAIAAAAXQMAANzGEABmAAAAxwcAACoAAADcxhAAZgAAAMcHAAATAAAA3MYQAGYAAADOBwAAJgAAANzGEABmAAAAzgcAAA8AAAByZXZlcnNlIHNlYXJjaCBtdXN0IG1hdGNoIGlmIGZvcndhcmQgc2VhcmNoIGRvZXMvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvaHlicmlkL3Jl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YWxpZElucHV0QW5jaG9yZWRJbnZhbGlkSW5wdXRVbmFuY2hvcmVkVW5zdXBwb3J0ZWRTdHJlYW1VbnN1cHBvcnRlZE92ZXJsYXBwaW5nVW5zdXBwb3J0ZWRFbXB0eWVycm9yIGJ1aWxkaW5nIE5GQQAADM8QABIAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBmb3VuZCBpbXBvc3NpYmxlIGVycm9yIGluIG1ldGEgZW5naW5lOiAAAAAozxAAUQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9tZXRhL2Vycm9yLnJzAAAAhM8QAGUAAADtAAAAEQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9uZmEvdGhvbXBzb24vcmFuZ2VfdHJpZS5ycwAA/M8QAHIAAAD6AAAAKQAAAPzPEAByAAAA/AAAACsAAAD8zxAAcgAAAA8BAAArAAAA/M8QAHIAAABLAQAAOwAAAPzPEAByAAAAiQEAADsAAAD8zxAAcgAAADEBAAANAAAAdG9vIG1hbnkgc2VxdWVuY2VzIGFkZGVkIHRvIHJhbmdlIHRyaWUAANDQEAAmAAAA/M8QAHIAAAC0AQAAEQAAAPzPEAByAAAA4AEAADcAAAD8zxAAcgAAABkCAAAsAAAA/M8QAHIAAAAeAgAAFQAAAPzPEAByAAAAIwIAABkAAAD8zxAAcgAAAEkCAAAaAAAAYXNzZXJ0aW9uIGZhaWxlZDogbGVuID4gMAAAAPzPEAByAAAAhgIAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBsZW4gPD0gNAAA/M8QAHIAAACHAgAACQAAAPzPEAByAAAApwIAABUAAAD8zxAAcgAAAEUDAAANAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvYWxwaGFiZXQucnNFT0kAQNIQAAMAAABCeXRlQ2xhc3NlcyhM0hAADAAAACA9PiBbAAAAAQAAAAAAAABg0hAABQAAAAEAAAAAAAAAeC0YAAEAAABCeXRlQ2xhc3Nlcyh7c2luZ2xldG9uc30pAAAAiNIQABkAAADY0RAAaAAAABoCAAAuAAAA2NEQAGgAAAA2AgAANAAAANjREABoAAAA3AIAAC4AAADY0RAAaAAAAIMDAAAvAAAAU3RhcnRCeXRlTWFwewAAAOzSEAANAAAATm9uV29yZEJ5dGVXb3JkQnl0ZVRleHRMaW5lTEZMaW5lQ1JDdXN0b21MaW5lVGVybWluYXRvclF1aXRieXRlR2F2ZVVwSGF5c3RhY2tUb29Mb25nbGVuVW5zdXBwb3J0ZWRBbmNob3JlZG1vZGUAQfymwwAL2wMBAAAA3gMAAFJlZ2V4SW5mb0lwcm9wc191bmlvbgAAAAAAAAABAAAAAQAAAMoAAAAAAAAAAQAAAAEAAADfAwAA4AMAABAAAAAEAAAAvwAAAAAAAAABAAAAAQAAAOEDAAAAAAAACAAAAAQAAADiAwAAAAAAAAgAAAAEAAAA3AMAAHV0ZjhfZW1wdHlhdXRvcHJld2hpY2hfY2FwdHVyZXNuZmFfc2l6ZV9saW1pdG9uZXBhc3Nfc2l6ZV9saW1pdGh5YnJpZF9jYWNoZV9jYXBhY2l0eWh5YnJpZGRmYWRmYV9zaXplX2xpbWl0ZGZhX3N0YXRlX2xpbWl0b25lcGFzc2JhY2t0cmFja2xpbmVfdGVybWluYXRvcgAAAJj+EAAKAAAA/NMQAAoAAAAG1BAABwAAAAAMEQADAAAADdQQAA4AAAAb1BAADgAAACnUEAASAAAAO9QQABUAAABQ1BAABgAAAFbUEAADAAAAWdQQAA4AAABn1BAADwAAAHbUEAAHAAAAfdQQAAkAAACr9BAADAAAAIbUEAAPAAAAR3JvdXBJbmZvSW5uZXJzbG90X3Jhbmdlc25hbWVfdG9faW5kZXhpbmRleF90b19uYW1lbWVtb3J5X2V4dHJhAEHgqsMAC8kQAQAAABADAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbmZhL3Rob21wc29uL2NvbXBpbGVyLnJzaNUQAHAAAAC1AwAAFgAAAGjVEABwAAAAtgMAABYAAABo1RAAcAAAALcDAAAWAAAAaNUQAHAAAAC5AwAADgAAAGjVEABwAAAAvAMAAA4AAABo1RAAcAAAAN0DAAAOAAAAaNUQAHAAAAAwBAAAKAAAAGjVEABwAAAALAQAABYAAABo1RAAcAAAAJ0FAAAsAAAAaNUQAHAAAACeBQAAMgAAAGjVEABwAAAAhQUAADAAAABo1RAAcAAAAI4FAAAwAAAAaNUQAHAAAACPBQAANgAAAGjVEABwAAAAbAUAAD8AAABo1RAAcAAAAG0FAAA7AAAAaNUQAHAAAADtBQAAKgAAAGjVEABwAAAATwYAABYAAABo1RAAcAAAAFMGAAAWAAAAaNUQAHAAAABaBgAAFgAAAGjVEABwAAAAXgYAABYAAABo1RAAcAAAAGIGAAAWAAAAaNUQAHAAAABtBgAAFgAAAGjVEABwAAAAdAYAABYAAABo1RAAcAAAAHgGAAAWAAAAaNUQAHAAAAB8BgAAFgAAAGjVEABwAAAAhQYAABYAAABo1RAAcAAAAJAGAAAWAAAAaNUQAHAAAACUBgAAFgAAAGjVEABwAAAAmAYAABYAAABhc3NlcnRpb24gZmFpbGVkOiBwcmVmaXhfbGVuIDwgcmFuZ2VzLmxlbigpAGjVEABwAAAA/gYAAAkAAABo1RAAcAAAAAAHAAAgAAAAbm9uLWVtcHR5IG5vZGVzAGjVEABwAAAAIgcAAA4AAABo1RAAcAAAACMHAAAmAAAAYXNzZXJ0aW9uIGZhaWxlZDogc2VsZi5zdGF0ZS51bmNvbXBpbGVkW2xhc3RdLmxhc3QuaXNfbm9uZSgpaNUQAHAAAAAjBwAACQAAAGjVEABwAAAAJAcAAB4AAABo1RAAcAAAACgHAAAZAAAAYXNzZXJ0aW9uIGZhaWxlZDogIXJhbmdlcy5pc19lbXB0eSgpaNUQAHAAAAAcBwAACQAAAGjVEABwAAAANQcAADoAAABo1RAAcAAAADwHAAAmAAAAYXNzZXJ0aW9uIGZhaWxlZDogc2VsZi5zdGF0ZS51bmNvbXBpbGVkWzBdLmxhc3QuaXNfbm9uZSgpAAAAaNUQAHAAAAA8BwAACQAAAGjVEABwAAAAPQcAACUAAABo1RAAcAAAADsHAAAJAAAAaNUQAHAAAABGBwAADgAAAGjVEABwAAAARwcAAB4AAABJbXBsaWNpdGV4cGVjdGVkIG51bWJlciBvZiBwYXR0ZXJucyB0byBtYXRjaCBwYXR0ZXJuIElEAHjZEAAvAAAA8AURAGoAAAA0BAAADQAAAPAFEQBqAAAAVQQAADkAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9haG8tY29yYXNpY2stMS4xLjMvc3JjL3V0aWwvc2VhcmNoLnJz0NkQAGQAAABOAQAACQAAAGludmFsaWQgbWF0Y2ggc3BhbgAARNoQABIAAADQ2RAAZAAAAFsDAAAJAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYWhvLWNvcmFzaWNrLTEuMS4zL3NyYy9wYWNrZWQvYXBpLnJzAHDaEABjAAAAGQIAABwAAABw2hAAYwAAAB8CAAAxAAAA4wMAAAQAAAAEAAAA5AMAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3ByZWZpbHRlci9ieXRlc2V0LnJzAAAABNsQAHEAAAAjAAAAEQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3ByZWZpbHRlci9tZW1jaHIucnOI2xAAcAAAACcAAAAtAAAAiNsQAHAAAABVAAAAFgAAAIjbEABwAAAAVgAAABYAAACI2xAAcAAAAGQAAAA2AAAAiNsQAHAAAACSAAAAFgAAAIjbEABwAAAAkwAAABYAAACI2xAAcAAAAJQAAAAWAAAAiNsQAHAAAACiAAAAPgAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3ByZWZpbHRlci9tZW1tZW0ucnN43BAAcAAAACsAAAAnAAAAeNwQAHAAAAA7AAAAGAAAAGFoby1jb3Jhc2ljayBERkEgc2hvdWxkIG5ldmVyIGZhaWwvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC9wcmVmaWx0ZXIvdGVkZHkucnMAAAAq3RAAbwAAAHEAAAASAEG0u8MAC8kZAQAAABADAAAAAAAACAAAAAQAAADYAgAAAAAAAAQAAAAEAAAAEAAAADcuFgBqAAAAvAAAACoAAAA3LhYAagAAALkAAAAqAAAANy4WAGoAAAA6AAAAFQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL21lbWNoci0yLjcuNC9zcmMvbWVtbWVtL3NlYXJjaGVyLnJzAAAM3hAAYgAAAHQCAAAbAAAAVHJ5RnJvbUludEVycm9yL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL25mYS90aG9tcHNvbi9iYWNrdHJhY2sucnOP3hAAcQAAAKIFAAAaAAAAj94QAHEAAAAHBgAAKgAAAI/eEABxAAAACQYAAB4AAACP3hAAcQAAACEHAAAXAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvZXNjYXBlLnJzAABA3xAAZgAAACgAAAA9AAAAQN8QAGYAAAAlAAAADQAAAPj5EABkAAAAbgMAADUAAADlAwAAWAAAAAgAAADmAwAA0AMAAAQAAAAEAAAAgAAAAAAAAAAgAAAACAAAAOcDAAAAAAAAAQAAAAEAAADKAAAA4AMAABAAAAAEAAAAvwAAAAAAAAABAAAAAQAAAN8DAAAAAAAAKAAAAAgAAADoAwAAAAAAAAgAAAAEAAAA3AMAAAAAAAAIAAAABAAAAOIDAABmb3J3YXJkcmV2ZXJzZXZpc2l0ZWRfY2FwYWNpdHlCb3VuZGVkQmFja3RyYWNrZXIAAAAACAAAAAgAAADFAgAAwPcQAGsAAAAIBQAAIgAAAMD3EABrAAAAVQUAACQAAADA9xAAawAAAGQFAAAyAAAAwPcQAGsAAACrBQAAKQAAAMD3EABrAAAArAUAACsAAADA9xAAawAAAK4FAAAdAAAAdGhvbXBzb246Ok5GQSgKAAjhEAAPAAAAdHJhbnNpdGlvbiBlcXVpdmFsZW5jZSBjbGFzc2VzOiAg4RAAIAAAAHIzGAABAAAAKQoAAFDhEAACAAAAwPcQAGsAAADEBQAALQAAAFNUQVJUKAAAbOEQAAYAAAC05BcAAwAAAHIzGAABAAAAAQAAAAAAAAABAAAAAAAAAJQVFgACAAAAcjMYAAEAAADA9xAAawAAAKEGAAAjAAAAwPcQAGsAAAClBgAAIwAAAMD3EABrAAAAqgYAACEAAADA9xAAawAAAK0GAAA+AAAAwPcQAGsAAACwBgAAIQAAAMD3EABrAAAAtAYAAB4AAADA9xAAawAAALUGAAAeAAAAwPcQAGsAAAC3BgAAQQAAAHNwYXJzZSgALOIQAAcAAADwyxgAAQAAAGRlbnNlKAAAROIQAAYAAACALxgAAgAAACA9PiABAAAAAAAAAFziEAAEAAAAdW5pb24oAABw4hAABgAAAPDLGAABAAAAYmluYXJ5LXVuaW9uKAAAAIjiEAANAAAAgC8YAAIAAADwyxgAAQAAAGNhcHR1cmUocGlkPSwgZ3JvdXA9LCBzbG90PSkgPT4gsOIQAAwAAAC84hAACAAAAMTiEAAHAAAAy+IQAAUAAABGQUlM8OIQAAQAAABNQVRDSCgAAPziEAAGAAAA8MsYAAEAAAABAAAAAAAAAHgtGAABAAAAXOIQAAQAAABhc3NlcnRpb24gZmFpbGVkOiBzdGFjay5pc19lbXB0eSgpL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvZGV0ZXJtaW5pemUvbW9kLnJzAAAATuMQAG8AAAB4AQAABQAAAFNtYWxsSW5kZXhQYXR0ZXJuSURjYW5ub3QgY3JlYXRlIGl0ZXJhdG9yIGZvciBQYXR0ZXJuSUQgd2hlbiBudW1iZXIgb2YgZWxlbWVudHMgZXhjZWVkIADj4xAARAAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3ByaW1pdGl2ZXMucnMAADDkEABqAAAA8QIAAAEAAABQYXR0ZXJuSURFcnJvclN0YXRlSUQAAAAw5BAAagAAAPICAAABAAAAU3RhdGVJREVycm9yAAAAAAgAAAAIAAAAxAIAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9kZmEvcmVtYXBwZXIucnMA8OQQAGcAAABuAAAAEgAAAPDkEABnAAAAiAAAACQAAADw5BAAZwAAAI0AAAAgAAAA8OQQAGcAAACPAAAAHQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9uZmEvdGhvbXBzb24vYnVpbGRlci5ycwCY5RAAbwAAAIkAAAAgAAAAmOUQAG8AAACOAAAAIAAAAG11c3QgY2FsbCAnZmluaXNoX3BhdHRlcm4nIGZpcnN0KOYQACAAAACY5RAAbwAAAJ8BAAAJAAAAmOUQAG8AAAAyAgAAGAAAAJjlEABvAAAAOwIAAC8AAACY5RAAbwAAAD4CAAAkAAAAmOUQAG8AAAA+AgAAEgAAAJjlEABvAAAAPwIAABUAAACY5RAAbwAAAEgCAAAvAAAAmOUQAG8AAABJAgAAJQAAAJjlEABvAAAASQIAABYAAACY5RAAbwAAAEoCAAAZAAAAmOUQAG8AAADGAQAAGgAAAJjlEABvAAAAyQEAABoAAACY5RAAbwAAANcBAAAaAAAAaW52YWxpZCBjYXB0dXJlIGluZGV4AAAAmOUQAG8AAADfAQAAGgAAAGEgc21h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LCBvciBoZXVyaXN0aWNhbGx5IGVuYWJsZSBVbmljb2RlIHdvcmQgYm91bmRhcmllcyBvciB1c2UgYSBkaWZmZXJlbnQgcmVnZXggZW5naW5lL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL21ldGEvbGl0ZXJhbC5ycy3yEABnAAAAHgAAAA0AAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBsaXRlcmFsLCBnb3QgpPIQAEAAAAAt8hAAZwAAADgAAAAeAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgbGl0ZXJhbCBvciBjb25jYXQsIGdvdCAAAPzyEABKAAAALfIQAGcAAAA8AAAAEgAAAOUDAABYAAAACAAAAPEDAADQAwAABAAAAAQAAACAAAAAAAAAAAQAAAAEAAAAEAAAAAAAAAAAAQAAAQAAAPIDAAAAAAAAAAEAAAEAAAC1AAAAAAAAACAAAAAIAAAA5wMAAHN0cmlkZTJzdGFydF9tYXBjbGFzc2VzcXVpdHNldGNhY2hlX2NhcGFjaXR5qP4QAAYAAACu/hAAAwAAAMDzEAAHAAAAx/MQAAkAAADQ8xAABwAAANfzEAAHAAAA3vMQAA4AAAAAAAAAAQAAAAEAAADKAAAA4AMAABAAAAAEAAAAvwAAAAAAAAABAAAAAQAAAN8DAAAAAAAAKAAAAAgAAADoAwAAAAAAAAgAAAAEAAAA3AMAAAAAAAAIAAAABAAAAOIDAAAAAAAABAAAAAQAAADzAwAAc3RhcnRzX2Zvcl9lYWNoX3BhdHRlcm5ieXRlX2NsYXNzZXN1bmljb2RlX3dvcmRfYm91bmRhcnlzcGVjaWFsaXplX3N0YXJ0X3N0YXRlc3NraXBfY2FjaGVfY2FwYWNpdHlfY2hlY2ttaW5pbXVtX2NhY2hlX2NsZWFyX2NvdW50bWluaW11bV9ieXRlc19wZXJfc3RhdGWY/hAACgAAAAAMEQADAAAAlPQQABcAAACr9BAADAAAALf0EAAVAAAA1/MQAAcAAADM9BAAFwAAAN7zEAAOAAAA4/QQABkAAAD89BAAGQAAABX1EAAXAAAAQ2FjaGVFcnJvcgAAAAAAAAQAAAAEAAAAOwAAAExhenlTdGF0ZUlETGF6eVN0YXRlSURFcnJvcmF0dGVtcHRlZGJpdHNyZWdleDogdGhyZWFkIElEIGFsbG9jYXRpb24gc3BhY2UgZXhoYXVzdGVkAMj1EAArAAAAQB8YAGQAAABeAQAAEQAAAFoDAAAEAAAABAAAAFsDAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbWV0YS93cmFwcGVycy5ycxz2EABoAAAAiQAAABkAAAAc9hAAaAAAAEUBAAAdAAAAHPYQAGgAAAD7AQAAHQAAABz2EABoAAAAHwMAAB0AAAAc9hAAaAAAACwEAAANAAAAHPYQAGgAAAC0BAAAHQAAABz2EABoAAAARAUAAA0AAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbmZhL3Rob21wc29uL21hcC5ycwD09hAAawAAAJYAAAAJAAAA9PYQAGsAAACfAAAAHgAAAPT2EABrAAAAtgAAABEAAAD09hAAawAAAAgBAAAJAAAA9PYQAGsAAAAUAQAAHgAAAPT2EABrAAAAJQEAABEAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbmZhL3Rob21wc29uL25mYS5ycwDA9xAAawAAAHkCAAAXAAAAwPcQAGsAAACDBwAAFABB2PDDAAutCAIAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbmZhL3Rob21wc29uL3Bpa2V2bS5ycwAAXPgQAG4AAACFBAAACgAAAGJ5dGUgc2xpY2UgbGVuZ3RocyBtdXN0IGJlIGxlc3MgdGhhbiB1c2l6ZSBNQVgAANz4EAAuAAAAXPgQAG4AAADYBAAACQAAAFz4EABuAAAAhwUAAAkAAABc+BAAbgAAAMwFAAATAAAAXPgQAG4AAABcBgAAHwAAAFz4EABuAAAAzAYAAC8AAABc+BAAbgAAAM8GAABGAAAAXPgQAG4AAADPBgAAIwAAAFz4EABuAAAAnAYAADQAAABc+BAAbgAAADAIAAAuAAAAc2xvdCB0YWJsZSBsZW5ndGggZG9lc24ndCBvdmVyZmxvdwAAXPgQAG4AAAA9CAAADgAAAFz4EABuAAAAZQgAABgAAABc+BAAbgAAAG4IAAAYAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvbG9vay5yc/j5EABkAAAApAMAACgAAAD4+RAAZAAAALADAAAmAAAA+PkQAGQAAAC9AwAAEAAAAPj5EABkAAAAzAMAABAAAAD4+RAAZAAAANoDAAA4AAAA+PkQAGQAAAA3BAAAMQAAAPj5EABkAAAAPAQAACwAAAD4+RAAZAAAAEwEAAA4AAAA+PkQAGQAAABbBAAAOAAAAPj5EABkAAAAngQAADgAAAD4+RAAZAAAAMgEAAAxAAAA+PkQAGQAAADnBAAALAAAAPj5EABkAAAAMgYAACgAAAD4+RAAZAAAAEEGAAAtAAAA////f3NwYXJzZSBzZXQgY2FwYWNpdHkgY2Fubm90IGV4Y2NlZCAAAED7EAAiAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvc3BhcnNlX3NldC5ycwAAbPsQAGoAAACCAAAACQAAACBleGNlZWRzIGNhcGFjaXR5IG9mICB3aGVuIGluc2VydGluZyAAAAABAAAAAAAAAOj7EAAVAAAA/fsQABAAAABs+xAAagAAALIAAAAJAAAAbPsQAGoAAAC8AAAAEwAAAGz7EABqAAAAvQAAABQAAABs+xAAagAAAMUAAAAgAAAAbPsQAGoAAADGAAAANAAAAGz7EABqAAAA0QAAACEAQbj5wwALSwEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBiPvDAAvVCS91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3V0ZjgucnOI/RAAZAAAAEMAAAArAAAAiP0QAGQAAABVAAAAOAAAAIj9EABkAAAAWAAAABgAAABQaWtlVk1FbmdpbmVCb3VuZGVkQmFja3RyYWNrZXJFbmdpbmVPbmVQYXNzRW5naW5lSHlicmlkRW5naW5lREZBREZBRW5naW5lUmV2ZXJzZUh5YnJpZEVuZ2luZVJldmVyc2VERkFSZXZlcnNlREZBRW5naW5lQ29uZmlnbWF0Y2hfa2luZFBpa2VWTWNvbmZpZ25mYS91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9oeWJyaWQvZGZhLnJzAACx/hAAZQAAAMcEAAAeAAAAsf4QAGUAAADpBQAAHgAAAG5vIHF1aXQgaW4gc3RhcnQgd2l0aG91dCBsb29rLWJlaGluZLH+EABlAAAARQYAABYAAABhc3NlcnRpb24gZmFpbGVkOiBpZC5pc19tYXRjaCgpALH+EABlAAAAtQYAAAkAAABubyBpbi1wcm9ncmVzcyBzZWFyY2ggdG8gdXBkYXRlALH+EABlAAAAtwcAACQAAABubyBpbi1wcm9ncmVzcyBzZWFyY2ggdG8gZmluaXNoALH+EABlAAAAwwcAACIAAACx/hAAZQAAAI4KAAAdAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL2h5YnJpZC9zZWFyY2gucnMMABEAaAAAAFkAAAApAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogc2lkIGJlaW5nIHVua25vd24gaXMgYSBidWeEABEARAAAAAwAEQBoAAAAHQEAABEAAAAMABEAaAAAABoBAAAtAAAADAARAGgAAABXAQAAKQAAAAwAEQBoAAAArQEAABEAAAAMABEAaAAAAKoBAAAtAAAADAARAGgAAAD7AQAAJQAAAAwAEQBoAAAAIgIAABEAAAAMABEAaAAAAB0CAAAVAAAADAARAGgAAADiAgAAFAAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9tZXRhL2xpbWl0ZWQucnMAYAERAGcAAACOAAAAJQAAAGABEQBnAAAA6AAAABQAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbWV0YS9zdG9wYXQucnMAAOgBEQBmAAAAbgAAACUAQYCFxAAL6RovdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC9lbXB0eS5ycwAAAIACEQBlAAAA+QAAADoAAABBaG9Db3Jhc2ljazo6dHJ5X2ZpbmQgaXMgbm90IGV4cGVjdGVkIHRvIGZhaWwvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9haG8tY29yYXNpY2stMS4xLjMvc3JjL2Fob2NvcmFzaWNrLnJzAAAAJQMRAGQAAACWAQAADgAAAP0CAABkAQAABAAAAP4CAAD9AgAAZAEAAAQAAAD9AgAAZAEAAAQAAAD/AgAAAAMAAAEDAADdAgAAAgMAAAMDAAAEAwAABQMAAAYDAAAHAwAACAMAAAkDAAAKAwAACwMAAAwDAAANAwAADgMAAP4CAACcAxEArAMRAKwDEQCsAxEArAMRAOsCAABIAQAABAAAAOwCAADrAgAASAEA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bmljb2RlLWF3YXJlIGNhc2UgaW5zZW5zaXRpdml0eSBtYXRjaGluZyBpcyBub3QgYXZhaWxhYmxlIChtYWtlIHN1cmUgdGhlIHVuaWNvZGUtY2FzZSBmZWF0dXJlIGlzIGVuYWJsZWQpAJziEQBgAAAA8gEAAB4AAACc4hEAYAAAAE8CAAAeAAAAQ2xhc3NVbmljb2RlUmFuZ2VzdGFydGVuZAAAAJziEQBgAAAAOgYAADYAAABDbGFzc0J5dGVzUmFuZ2XiiIUAAKMWEQADAAAAnOIRAGAAAAD3CwAAEgAAAJziEQBgAAAA6AsAABkAAABMb29rQ2FwdHVyZVN0YXJ0RW5kU3RhcnRMRkVuZExGU3RhcnRDUkxGRW5kQ1JMRldvcmRBc2NpaVdvcmRBc2NpaU5lZ2F0ZVdvcmRVbmljb2RlV29yZFVuaWNvZGVOZWdhdGVXb3JkU3RhcnRBc2NpaVdvcmRFbmRBc2NpaVdvcmRTdGFydFVuaWNvZGVXb3JkRW5kVW5pY29kZVdvcmRTdGFydEhhbGZBc2NpaVdvcmRFbmRIYWxmQXNjaWlXb3JkU3RhcnRIYWxmVW5pY29kZVdvcmRFbmRIYWxmVW5pY29kZWluZGV4bWlubWF4Z3JlZWR5FwMAAAwAAAAEAAAAVwMAAA0EAABZAwBB5K/EAAuqhgMBAAAAGwMAAAEAAAABAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy9oaXIvbGl0ZXJhbC5yc2Fzc2VydGlvbiBmYWlsZWQ6IHNlcTEubGVuKCkubWFwX29yKHRydWUsIHx4fCB4IDw9IHNlbGYubGltaXRfdG90YWwp9BcRAGQAAAA5AgAACQAAAPQXEQBkAAAAZgIAAAkAAAD0FxEAZAAAAGcGAAAYAAAA9BcRAGQAAAB0BgAAEwAAAPQXEQBkAAAAbQYAABoAAAD0FxEAZAAAAJwGAAAYAAAA9BcRAGQAAACqBgAAEwAAAPQXEQBkAAAAowYAABoAAAD0FxEAZAAAAHgHAAARAAAABQAAAAoAAAAEAAAACgAAAAMAAABAAAAAAgAAAEAAAAABAAAACgAAAPQXEQBkAAAAzggAABUAAAD0FxEAZAAAAN4IAAAoAAAA9BcRAGQAAADyCAAAFQAAAPQXEQBkAAAA4ggAAB4AAAD0FxEAZAAAAOQIAAAnAAAA9BcRAGQAAADkCAAAMwAAAPQXEQBkAAAA5QgAADQAAAD0FxEAZAAAAOsIAAAgAAAANzQzMjEwLy4tZ/JCQ+UsKyopKCcmJSQjIiE4IB8eHRz/lKSViKCbrd3ehnroytfg0NzMu7ezsaiyyOLDmriufni/ncKqvaKhlsGOiauwuae6cK/AvJyMj3uFgJOKknLfl/nY7uz949rm94e08en29OeL9fP768nE8NaYts21fxvU09LV5MWpn4OsaVBiYGFRz5F0c5CCmXlrhG1ufG9SbHaNcYF3faV1XGpTSGNdQU+m7aPHvuHRy8bZ287q+J7v/////////////////////////////////////////////////////////////////////////////////////3RyaWVkIHRvIHVud3JhcCBleHByIGZyb20gSGlyRnJhbWUsIGdvdDogAAAA1BoRACkAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1zeW50YXgtMC44LjQvc3JjL2hpci90cmFuc2xhdGUucnMAAAgbEQBmAAAAAQEAABIAAAB0cmllZCB0byB1bndyYXAgVW5pY29kZSBjbGFzcyBmcm9tIEhpckZyYW1lLCBnb3Q6IAAAgBsRADIAAAAIGxEAZgAAAAoBAAASAAAAdHJpZWQgdG8gdW53cmFwIGJ5dGUgY2xhc3MgZnJvbSBIaXJGcmFtZSwgZ290OiAAzBsRAC8AAAAIGxEAZgAAABcBAAASAAAAdHJpZWQgdG8gdW53cmFwIHJlcGV0aXRpb24gZnJvbSBIaXJGcmFtZSwgZ290OiAAFBwRAC8AAAAIGxEAZgAAACUBAAARAAAAdHJpZWQgdG8gdW53cmFwIGdyb3VwIGZyb20gSGlyRnJhbWUsIGdvdDogAABcHBEAKgAAAAgbEQBmAAAANAEAABEAAAB0cmllZCB0byB1bndyYXAgYWx0IHBpcGUgZnJvbSBIaXJGcmFtZSwgZ290OiAAAACgHBEALQAAAAgbEQBmAAAAPwEAABEAAAAIGxEAZgAAAE4BAAAnAAAACBsRAGYAAABPAQAAFwAAAAgbEQBmAAAATgEAAAkAAAAIGxEAZgAAAKwBAAAuAAAACBsRAGYAAACjAQAALgAAAAgbEQBmAAAAtwEAACcAAAAIGxEAZgAAALgBAAAcAAAACBsRAGYAAAC8AQAAJwAAAAgbEQBmAAAAvQEAACwAAAAIGxEAZgAAAM4BAAAgAAAACBsRAGYAAAD+AQAALgAAAAgbEQBmAAAA+gEAAC4AAAAIGxEAZgAAAAoCAAAuAAAACBsRAGYAAAAGAgAALgAAAAgbEQBmAAAAGQIAAC4AAAAIGxEAZgAAABQCAAAuAAAACBsRAGYAAAAgAgAAKgAAAAgbEQBmAAAALAIAAC4AAAAIGxEAZgAAACcCAAAuAAAACBsRAGYAAAA+AgAALwAAAAgbEQBmAAAARQIAAC8AAAAIGxEAZgAAADMCAAAvAAAACBsRAGYAAAA6AgAALwAAAAgbEQBmAAAAjAIAACYAAAAIGxEAZgAAAI0CAAAmAAAACBsRAGYAAACOAgAAJgAAAAgbEQBmAAAAcwIAACYAAAAIGxEAZgAAAHQCAAAmAAAACBsRAGYAAAB1AgAAJgAAAAgbEQBmAAAAuAIAABwAAAAIGxEAZgAAAMMCAAAsAAAACBsRAGYAAADRAgAALAAAAAgbEQBmAAAA2wIAABwAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGNvbmNhdCwgZ290IFVuaWNvZGUgY2xhc3P4HhEAVAAAAAgbEQBmAAAA6QIAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGNvbmNhdCwgZ290IGJ5dGUgY2xhc3MAAABkHxEAUQAAAAgbEQBmAAAA7AIAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGNvbmNhdCwgZ290IHJlcGV0aXRpb24AAADQHxEAUQAAAAgbEQBmAAAA7wIAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGNvbmNhdCwgZ290IGdyb3VwPCARAEwAAAAIGxEAZgAAAPICAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCBhbHQgbWFya2VyAAAAoCARAFEAAAAIGxEAZgAAAPUCAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCBhbHQgYnJhbmNoIG1hcmtlcgwhEQBYAAAACBsRAGYAAAD4AgAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgYWx0LCBnb3QgVW5pY29kZSBjbGFzcwAAAHwhEQBRAAAACBsRAGYAAAAIAwAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgYWx0LCBnb3QgYnl0ZSBjbGFzcwAA6CERAE4AAAAIGxEAZgAAAAsDAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBhbHQsIGdvdCByZXBldGl0aW9uAABQIhEATgAAAAgbEQBmAAAADgMAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGFsdCwgZ290IGdyb3VwAAAAuCIRAEkAAAAIGxEAZgAAABEDAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBhbHQsIGdvdCBjb25jYXQgbWFya2VyAAAAHCMRAFEAAAAIGxEAZgAAABQDAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBhbHQsIGdvdCBhbHQgYnJhbmNoIG1hcmtlcgAAAIgjEQBVAAAACBsRAGYAAAAXAwAAEQAAAGFzc2VydGlvbiBmYWlsZWQ6IHNlbGYuZmxhZ3MoKS51bmljb2RlKCkIGxEAZgAAAEMEAAAJAAAABWFzc2VydGlvbiBmYWlsZWQ6ICFzZWxmLmZsYWdzKCkudW5pY29kZSgpAAAIGxEAZgAAAFkEAAAJAAAAMDlBWmF6QVphegB/CQkgIAAff38wOSF+YXogfiEvOkBbYHt+CQkKCgsLDAwNDSAgQVowOUFaX19hejA5QUZhZmEAAABiAAAAYwAAAGUAAABmAAAAZwAAAGgAAABpAAAAagAAAGsAAAAqIQAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB/AQAAdAAAAHUAAAB2AAAAdwAAAHgAAAB5AAAAegAAAEEAAABCAAAAQwAAAEUAAABGAAAARwAAAEgAAABJAAAASgAAAEsAAAAqIQAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAAB/AQAAVAAAAFUAAABWAAAAVwAAAFgAAABZAAAAWgAAAJwDAAC8AwAA4AAAAOEAAADiAAAA4wAAAOQAAADlAAAAKyEAAOYAAADnAAAA6AAAAOkAAADqAAAA6wAAAOwAAADtAAAA7gAAAO8AAADwAAAA8QAAAPIAAADzAAAA9AAAAPUAAAD2AAAA+AAAAPkAAAD6AAAA+wAAAPwAAAD9AAAA/gAAAJ4eAADAAAAAwQAAAMIAAADDAAAAxAAAAMUAAAArIQAAxgAAAMcAAADIAAAAyQAAAMoAAADLAAAAzAAAAM0AAADOAAAAzwAAANAAAADRAAAA0gAAANMAAADUAAAA1QAAANYAAADYAAAA2QAAANoAAADbAAAA3AAAAN0AAADeAAAAeAEAAAEBAAAAAQAAAwEAAAIBAAAFAQAABAEAAAcBAAAGAQAACQEAAAgBAAALAQAACgEAAA0BAAAMAQAADwEAAA4BAAARAQAAEAEAABMBAAASAQAAFQEAABQBAAAXAQAAFgEAABkBAAAYAQAAGwEAABoBAAAdAQAAHAEAAB8BAAAeAQAAIQEAACABAAAjAQAAIgEAACUBAAAkAQAAJwEAACYBAAApAQAAKAEAACsBAAAqAQAALQEAACwBAAAvAQAALgEAADMBAAAyAQAANQEAADQBAAA3AQAANgEAADoBAAA5AQAAPAEAADsBAAA+AQAAPQEAAEABAAA/AQAAQgEAAEEBAABEAQAAQwEAAEYBAABFAQAASAEAAEcBAABLAQAASgEAAE0BAABMAQAATwEAAE4BAABRAQAAUAEAAFMBAABSAQAAVQEAAFQBAABXAQAAVgEAAFkBAABYAQAAWwEAAFoBAABdAQAAXAEAAF8BAABeAQAAYQEAAGABAABjAQAAYgEAAGUBAABkAQAAZwEAAGYBAABpAQAAaAEAAGsBAABqAQAAbQEAAGwBAABvAQAAbgEAAHEBAABwAQAAcwEAAHIBAAB1AQAAdAEAAHcBAAB2AQAA/wAAAHoBAAB5AQAAfAEAAHsBAAB+AQAAfQEAAFMAAABzAAAAQwIAAFMCAACDAQAAggEAAIUBAACEAQAAVAIAAIgBAACHAQAAVgIAAFcCAACMAQAAiwEAAN0BAABZAgAAWwIAAJIBAACRAQAAYAIAAGMCAAD2AQAAaQIAAGgCAACZAQAAmAEAAD0CAABvAgAAcgIAACACAAB1AgAAoQEAAKABAACjAQAAogEAAKUBAACkAQAAgAIAAKgBAACnAQAAgwIAAK0BAACsAQAAiAIAALABAACvAQAAigIAAIsCAAC0AQAAswEAALYBAAC1AQAAkgIAALkBAAC4AQAAvQEAALwBAAD3AQAAxQEAAMYBAADEAQAAxgEAAMQBAADFAQAAyAEAAMkBAADHAQAAyQEAAMcBAADIAQAAywEAAMwBAADKAQAAzAEAAMoBAADLAQAAzgEAAM0BAADQAQAAzwEAANIBAADRAQAA1AEAANMBAADWAQAA1QEAANgBAADXAQAA2gEAANkBAADcAQAA2wEAAI4BAADfAQAA3gEAAOEBAADgAQAA4wEAAOIBAADlAQAA5AEAAOcBAADmAQAA6QEAAOgBAADrAQAA6gEAAO0BAADsAQAA7wEAAO4BAADyAQAA8wEAAPEBAADzAQAA8QEAAPIBAAD1AQAA9AEAAJUBAAC/AQAA+QEAAPgBAAD7AQAA+gEAAP0BAAD8AQAA/wEAAP4BAAABAgAAAAIAAAMCAAACAgAABQIAAAQCAAAHAgAABgIAAAkCAAAIAgAACwIAAAoCAAANAgAADAIAAA8CAAAOAgAAEQIAABACAAATAgAAEgIAABUCAAAUAgAAFwIAABYCAAAZAgAAGAIAABsCAAAaAgAAHQIAABwCAAAfAgAAHgIAAJ4BAAAjAgAAIgIAACUCAAAkAgAAJwIAACYCAAApAgAAKAIAACsCAAAqAgAALQIAACwCAAAvAgAALgIAADECAAAwAgAAMwIAADICAABlLAAAPAIAADsCAACaAQAAZiwAAH4sAAB/LAAAQgIAAEECAACAAQAAiQIAAIwCAABHAgAARgIAAEkCAABIAgAASwIAAEoCAABNAgAATAIAAE8CAABOAgAAbywAAG0sAABwLAAAgQEAAIYBAACJAQAAigEAAI8BAACQAQAAq6cAAJMBAACspwAAlAEAAI2nAACqpwAAlwEAAJYBAACupwAAYiwAAK2nAACcAQAAbiwAAJ0BAACfAQAAZCwAAKYBAADFpwAAqQEAALGnAACuAQAARAIAALEBAACyAQAARQIAALcBAACypwAAsKcAAJkDAAC5AwAAvh8AAHEDAABwAwAAcwMAAHIDAAB3AwAAdgMAAP0DAAD+AwAA/wMAAPMDAACsAwAArQMAAK4DAACvAwAAzAMAAM0DAADOAwAAsQMAALIDAADQAwAAswMAALQDAAC1AwAA9QMAALYDAAC3AwAAuAMAANEDAAD0AwAARQMAALkDAAC+HwAAugMAAPADAAC7AwAAtQAAALwDAAC9AwAAvgMAAL8DAADAAwAA1gMAAMEDAADxAwAAwgMAAMMDAADEAwAAxQMAAMYDAADVAwAAxwMAAMgDAADJAwAAJiEAAMoDAADLAwAAhgMAAIgDAACJAwAAigMAAJEDAACSAwAA0AMAAJMDAACUAwAAlQMAAPUDAACWAwAAlwMAAJgDAADRAwAA9AMAAEUDAACZAwAAvh8AAJoDAADwAwAAmwMAALUAAACcAwAAnQMAAJ4DAACfAwAAoAMAANYDAAChAwAA8QMAAKMDAADDAwAAowMAAMIDAACkAwAApQMAAKYDAADVAwAApwMAAKgDAACpAwAAJiEAAKoDAACrAwAAjAMAAI4DAACPAwAA1wMAAJIDAACyAwAAmAMAALgDAAD0AwAApgMAAMYDAACgAwAAwAMAAM8DAADZAwAA2AMAANsDAADaAwAA3QMAANwDAADfAwAA3gMAAOEDAADgAwAA4wMAAOIDAADlAwAA5AMAAOcDAADmAwAA6QMAAOgDAADrAwAA6gMAAO0DAADsAwAA7wMAAO4DAACaAwAAugMAAKED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AAAZHgAAGB4AABseAAAaHgAAHR4AABweAAAfHgAAHh4AACEeAAAgHgAAIx4AACIeAAAlHgAAJB4AACceAAAmHgAAKR4AACgeAAArHgAAKh4AAC0eAAAsHgAALx4AAC4eAAAxHgAAMB4AADMeAAAyHgAANR4AADQeAAA3HgAANh4AADkeAAA4HgAAOx4AADoeAAA9HgAAPB4AAD8eAAA+HgAAQR4AAEAeAABDHgAAQh4AAEUeAABEHgAARx4AAEYeAABJHgAASB4AAEseAABKHgAATR4AAEweAABPHgAATh4AAFEeAABQHgAAUx4AAFIeAABVHgAAVB4AAFceAABWHgAAWR4AAFgeAABbHgAAWh4AAF0eAABcHgAAXx4AAF4eAABhHgAAmx4AAGAeAACbHgAAYx4AAGIeAABlHgAAZB4AAGceAABmHgAAaR4AAGgeAABrHgAAah4AAG0eAABsHgAAbx4AAG4eAABxHgAAcB4AAHMeAAByHgAAdR4AAHQeAAB3HgAAdh4AAHkeAAB4HgAAex4AAHoeAAB9HgAAfB4AAH8eAAB+HgAAgR4AAIAeAACDHgAAgh4AAIUeAACEHgAAhx4AAIYeAACJHgAAiB4AAIseAACKHgAAjR4AAIweAACPHgAAjh4AAJEeAACQHgAAkx4AAJIeAACVHgAAlB4AAGAeAABhHgAA3wAAAKEeAACgHgAAox4AAKIeAAClHgAApB4AAKceAACmHgAAqR4AAKgeAACrHgAAqh4AAK0eAACsHgAArx4AAK4eAACxHgAAsB4AALMeAACyHgAAtR4AALQeAAC3HgAAth4AALkeAAC4HgAAux4AALoeAAC9HgAAvB4AAL8eAAC+HgAAwR4AAMAeAADDHgAAwh4AAMUeAADEHgAAxx4AAMYeAADJHgAAyB4AAMseAADKHgAAzR4AAMweAADPHgAAzh4AANEeAADQHgAA0x4AANIeAADVHgAA1B4AANceAADWHgAA2R4AANgeAADbHgAA2h4AAN0eAADcHgAA3x4AAN4eAADhHgAA4B4AAOMeAADiHgAA5R4AAOQeAADnHgAA5h4AAOkeAADoHgAA6x4AAOoeAADtHgAA7B4AAO8eAADuHgAA8R4AAPAeAADzHgAA8h4AAPUeAAD0HgAA9x4AAPYeAAD5HgAA+B4AAPseAAD6HgAA/R4AAPweAAD/HgAA/h4AAAgfAAAJHwAACh8AAAsfAAAMHwAADR8AAA4fAAAPHwAAAB8AAAEfAAACHwAAAx8AAAQfAAAFHwAABh8AAAcfAAAYHwAAGR8AABofAAAbHwAAHB8AAB0fAAAQHwAAER8AABIfAAATHwAAFB8AABUfAAAoHwAAKR8AACofAAArHwAALB8AAC0fAAAuHwAALx8AACAfAAAhHwAAIh8AACMfAAAkHwAAJR8AACYfAAAnHwAAOB8AADkfAAA6HwAAOx8AADwfAAA9HwAAPh8AAD8fAAAwHwAAMR8AADIfAAAzHwAANB8AADUfAAA2HwAANx8AAEgfAABJHwAASh8AAEsfAABMHwAATR8AAEAfAABBHwAAQh8AAEMfAABEHwAARR8AAFkfAABbHwAAXR8AAF8fAABRHwAAUx8AAFUfAABXHwAAaB8AAGkfAABqHwAAax8AAGwfAABtHwAAbh8AAG8fAABgHwAAYR8AAGIfAABjHwAAZB8AAGUfAABmHwAAZx8AALofAAC7HwAAyB8AAMkfAADKHwAAyx8AANofAADbHwAA+B8AAPkfAADqHwAA6x8AAPofAAD7HwAAiB8AAIkfAACKHwAAix8AAIwfAACNHwAAjh8AAI8fAACAHwAAgR8AAIIfAACDHwAAhB8AAIUfAACGHwAAhx8AAJgfAACZHwAAmh8AAJsfAACcHwAAnR8AAJ4fAACfHwAAkB8AAJEfAACSHwAAkx8AAJQfAACVHwAAlh8AAJcfAACoHwAAqR8AAKofAACrHwAArB8AAK0fAACuHwAArx8AAKAfAAChHwAAoh8AAKMfAACkHwAApR8AAKYfAACnHwAAuB8AALkfAAC8HwAAsB8AALEfAABwHwAAcR8AALMfAABFAwAAmQMAALkDAADMHwAAch8AAHMfAAB0HwAAdR8AAMMfAADYHwAA2R8AANAfAADRHwAAdh8AAHcfAADoHwAA6R8AAOwfAADgHwAA4R8AAHofAAB7HwAA5R8AAPwfAAB4HwAAeR8AAHwfAAB9HwAA8x8AAKkDAADJAwAASwAAAGsAAADFAAAA5QAAAE4hAAAyIQAAcCEAAHEhAAByIQAAcyEAAHQhAAB1IQAAdiEAAHchAAB4IQAAeSEAAHohAAB7IQAAfCEAAH0hAAB+IQAAfyEAAGAhAABhIQAAYiEAAGMhAABkIQAAZSEAAGYhAABnIQAAaCEAAGkhAABqIQAAayEAAGwhAABtIQAAbiEAAG8hAACEIQAAgyEAANAkAADRJAAA0iQAANMkAADUJAAA1SQAANYkAADXJAAA2CQAANkkAADaJAAA2yQAANwkAADdJAAA3iQAAN8kAADgJAAA4SQAAOIkAADjJAAA5CQAAOUkAADmJAAA5yQAAOgkAADpJAAAtiQAALckAAC4JAAAuSQAALokAAC7JAAAvCQAAL0kAAC+JAAAvyQAAMAkAADBJAAAwiQAAMMkAADEJAAAxSQAAMYkAADHJAAAyCQAAMkkAADKJAAAyyQAAMwkAADNJAAAziQAAM8kAAAwLAAAMSwAADIsAAAzLAAANCwAADUsAAA2LAAANywAADgsAAA5LAAAOiwAADssAAA8LAAAPSwAAD4sAAA/LAAAQCwAAEEsAABCLAAAQywAAEQsAABFLAAARiwAAEcsAABILAAASSwAAEosAABLLAAATCwAAE0sAABOLAAATywAAFAsAABRLAAAUiwAAFMsAABULAAAVSwAAFYsAABXLAAAWCwAAFksAABaLAAAWywAAFwsAABdLAAAXiwAAF8sAAAALAAAASwAAAIsAAADLAAABCwAAAUsAAAGLAAABywAAAgsAAAJLAAACiwAAAssAAAMLAAADSwAAA4sAAAPLAAAECwAABEsAAASLAAAEywAABQsAAAVLAAAFiwAABcsAAAYLAAAGSwAABosAAAbLAAAHCwAAB0sAAAeLAAAHywAACAsAAAhLAAAIiwAACMsAAAkLAAAJSwAACYsAAAnLAAAKCwAACksAAAqLAAAKywAACwsAAAtLAAALiwAAC8sAABhLAAAYCwAAGsCAAB9HQAAfQIAADoCAAA+AgAAaCwAAGcsAABqLAAAaSwAAGwsAABrLAAAUQIAAHECAABQAgAAUgIAAHMsAAByLAAAdiwAAHUsAAA/AgAAQAIAAIEsAACALAAAgywAAIIsAACFLAAAhCwAAIcsAACGLAAAiSwAAIgsAACLLAAAiiwAAI0sAACMLAAAjywAAI4sAACRLAAAkCwAAJMsAACSLAAAlSwAAJQsAACXLAAAliwAAJksAACYLAAAmywAAJosAACdLAAAnCwAAJ8sAACeLAAAoSwAAKAsAACjLAAAoiwAAKUsAACkLAAApywAAKYsAACpLAAAqCwAAKssAACqLAAArSwAAKwsAACvLAAAriwAALEsAACwLAAAsywAALIsAAC1LAAAtCwAALcsAAC2LAAAuSwAALgsAAC7LAAAuiwAAL0sAAC8LAAAvywAAL4sAADBLAAAwCwAAMMsAADCLAAAxSwAAMQsAADHLAAAxiwAAMksAADILAAAyywAAMosAADNLAAAzCwAAM8sAADOLAAA0SwAANAsAADTLAAA0iwAANUsAADULAAA1ywAANYsAADZLAAA2CwAANssAADaLAAA3SwAANwsAADfLAAA3iwAAOEsAADgLAAA4ywAAOIsAADsLAAA6ywAAO4sAADtLAAA8ywAAPIsAACgEAAAoRAAAKIQAACjEAAApBAAAKUQAACmEAAApxAAAKgQAACpEAAAqhAAAKsQAACsEAAArRAAAK4QAACvEAAAsBAAALEQAACyEAAAsxAAALQQAAC1EAAAthAAALcQAAC4EAAAuRAAALoQAAC7EAAAvBAAAL0QAAC+EAAAvxAAAMAQAADBEAAAwhAAAMMQAADEEAAAxRAAAMcQAADNEAAAQaYAAECmAABDpgAAQqYAAEWmAABEpgAAR6YAAEamAABJpgAASKYAAIgcAABLpgAAiBwAAEqmAABNpgAATKYAAE+mAABOpgAAUaYAAFCmAABTpgAAUqYAAFWmAABUpgAAV6YAAFamAABZpgAAWKYAAFumAABapgAAXaYAAFymAABfpgAAXqYAAGGmAABgpgAAY6YAAGKmAABlpgAAZKYAAGemAABmpgAAaaYAAGimAABrpgAAaqYAAG2mAABspgAAgaYAAICmAACDpgAAgqYAAIWmAACEpgAAh6YAAIamAACJpgAAiKYAAIumAACKpgAAjaYAAIymAACPpgAAjqYAAJGmAACQpgAAk6YAAJKmAACVpgAAlKYAAJemAACWpgAAmaYAAJimAACbpgAAmqYAACOnAAAipwAAJacAACSnAAAnpwAAJqcAACmnAAAopwAAK6cAACqnAAAtpwAALKcAAC+nAAAupwAAM6cAADKnAAA1pwAANKcAADenAAA2pwAAOacAADinAAA7pwAAOqcAAD2nAAA8pwAAP6cAAD6nAABBpwAAQKcAAEOnAABCpwAARacAAESnAABHpwAARqcAAEmnAABIpwAAS6cAAEqnAABNpwAATKcAAE+nAABOpwAAUacAAFCnAABTpwAAUqcAAFWnAABUpwAAV6cAAFanAABZpwAAWKcAAFunAABapwAAXacAAFynAABfpwAAXqcAAGGnAABgpwAAY6cAAGKnAABlpwAAZKcAAGenAABmpwAAaacAAGinAABrpwAAaqcAAG2nAABspwAAb6cAAG6nAAB6pwAAeacAAHynAAB7pwAAeR0AAH+nAAB+pwAAgacAAICnAACDpwAAgqcAAIWnAACEpwAAh6cAAIanAACMpwAAi6cAAGUCAACRpwAAkKcAAJOnAACSpwAAxKcAAJenAACWpwAAmacAAJinAACbpwAAmqcAAJ2nAACcpwAAn6cAAJ6nAAChpwAAoKcAAKOnAACipwAApacAAKSnAACnpwAApqcAAKmnAACopwAAZgIAAFwCAABhAgAAbAIAAGoCAACeAgAAhwIAAJ0CAABTqwAAtacAALSnAAC3pwAAtqcAALmnAAC4pwAAu6cAALqnAAC9pwAAvKcAAL+nAAC+pwAAwacAAMCnAADDpwAAwqcAAJSnAACCAgAAjh0AAMinAADHpwAAyqcAAMmnAADRpwAA0KcAANenAADWpwAA2acAANinAAD2pwAA9acAALOnAACgEwAAoRMAAKITAACjEwAApBMAAKUTAACmEwAApxMAAKgTAACpEwAAqhMAAKsTAACsEwAArRMAAK4TAACvEwAAsBMAALETAACyEwAAsxMAALQTAAC1EwAAthMAALcTAAC4EwAAuRMAALoTAAC7EwAAvBMAAL0TAAC+EwAAvxMAAMATAADBEwAAwhMAAMMTAADEEwAAxRMAAMYTAADHEwAAyBMAAMkTAADKEwAAyxMAAMwTAADNEwAAzhMAAM8TAADQEwAA0RMAANITAADTEwAA1BMAANUTAADWEwAA1xMAANgTAADZEwAA2hMAANsTAADcEwAA3RMAAN4TAADfEwAA4BMAAOETAADiEwAA4xMAAOQTAADlEwAA5hMAAOcTAADoEwAA6RMAAOoTAADrEwAA7BMAAO0TAADuEwAA7xMAAEH/AABC/wAAQ/8AAET/AABF/wAARv8AAEf/AABI/wAASf8AAEr/AABL/wAATP8AAE3/AABO/wAAT/8AAFD/AABR/wAAUv8AAFP/AABU/wAAVf8AAFb/AABX/wAAWP8AAFn/AABa/wAAIf8AACL/AAAj/wAAJP8AACX/AAAm/wAAJ/8AACj/AAAp/wAAKv8AACv/AAAs/wAALf8AAC7/AAAv/wAAMP8AADH/AAAy/wAAM/8AADT/AAA1/wAANv8AADf/AAA4/wAAOf8AADr/AAAoBAEAKQQBACoEAQArBAEALAQBAC0EAQAuBAEALwQBADAEAQAxBAEAMgQBADMEAQA0BAEANQQBADYEAQA3BAEAOAQBADkEAQA6BAEAOwQBADwEAQA9BAEAPgQBAD8EAQBABAEAQQQBAEIEAQBDBAEARAQBAEUEAQBGBAEARwQBAEgEAQBJBAEASgQBAEsEAQBMBAEATQQBAE4EAQBPBAEAAAQBAAEEAQACBAEAAwQBAAQEAQAFBAEABgQBAAcEAQAIBAEACQQBAAoEAQALBAEADAQBAA0EAQAOBAEADwQBABAEAQARBAEAEgQBABMEAQAUBAEAFQQBABYEAQAXBAEAGAQBABkEAQAaBAEAGwQBABwEAQAdBAEAHgQBAB8EAQAgBAEAIQQBACIEAQAjBAEAJAQBACUEAQAmBAEAJwQBANgEAQDZBAEA2gQBANsEAQDcBAEA3QQBAN4EAQDfBAEA4AQBAOEEAQDiBAEA4wQBAOQEAQDlBAEA5gQBAOcEAQDoBAEA6QQBAOoEAQDrBAEA7AQBAO0EAQDuBAEA7wQBAPAEAQDxBAEA8gQBAPMEAQD0BAEA9QQBAPYEAQD3BAEA+AQBAPkEAQD6BAEA+wQBALAEAQCxBAEAsgQBALMEAQC0BAEAtQQBALYEAQC3BAEAuAQBALkEAQC6BAEAuwQBALwEAQC9BAEAvgQBAL8EAQDABAEAwQQBAMIEAQDDBAEAxAQBAMUEAQDGBAEAxwQBAMgEAQDJBAEAygQBAMsEAQDMBAEAzQQBAM4EAQDPBAEA0AQBANEEAQDSBAEA0wQBAJcFAQCYBQEAmQUBAJoFAQCbBQEAnAUBAJ0FAQCeBQEAnwUBAKAFAQChBQEAowUBAKQFAQClBQEApgUBAKcFAQCoBQEAqQUBAKoFAQCrBQEArAUBAK0FAQCuBQEArwUBALAFAQCxBQEAswUBALQFAQC1BQEAtgUBALcFAQC4BQEAuQUBALsFAQC8BQEAcAUBAHEFAQByBQEAcwUBAHQFAQB1BQEAdgUBAHcFAQB4BQEAeQUBAHoFAQB8BQEAfQUBAH4FAQB/BQEAgAUBAIEFAQCCBQEAgwUBAIQFAQCFBQEAhgUBAIcFAQCIBQEAiQUBAIoFAQCMBQEAjQUBAI4FAQCPBQEAkAUBAJEFAQCSBQEAlAUBAJUFAQDADAEAwQwBAMIMAQDDDAEAxAwBAMUMAQDGDAEAxwwBAMgMAQDJDAEAygwBAMsMAQDMDAEAzQwBAM4MAQDPDAEA0AwBANEMAQDSDAEA0wwBANQMAQDVDAEA1gwBANcMAQDYDAEA2QwBANoMAQDbDAEA3AwBAN0MAQDeDAEA3wwBAOAMAQDhDAEA4gwBAOMMAQDkDAEA5QwBAOYMAQDnDAEA6AwBAOkMAQDqDAEA6wwBAOwMAQDtDAEA7gwBAO8MAQDwDAEA8QwBAPIMAQCADAEAgQwBAIIMAQCDDAEAhAwBAIUMAQCGDAEAhwwBAIgMAQCJDAEAigwBAIsMAQCMDAEAjQwBAI4MAQCPDAEAkAwBAJEMAQCSDAEAkwwBAJQMAQCVDAEAlgwBAJcMAQCYDAEAmQwBAJoMAQCbDAEAnAwBAJ0MAQCeDAEAnwwBAKAMAQChDAEAogwBAKMMAQCkDAEApQwBAKYMAQCnDAEAqAwBAKkMAQCqDAEAqwwBAKwMAQCtDAEArgwBAK8MAQCwDAEAsQwBALIMAQDAGAEAwRgBAMIYAQDDGAEAxBgBAMUYAQDGGAEAxxgBAMgYAQDJGAEAyhgBAMsYAQDMGAEAzRgBAM4YAQDPGAEA0BgBANEYAQDSGAEA0xgBANQYAQDVGAEA1hgBANcYAQDYGAEA2RgBANoYAQDbGAEA3BgBAN0YAQDeGAEA3xgBAKAYAQChGAEAohgBAKMYAQCkGAEApRgBAKYYAQCnGAEAqBgBAKkYAQCqGAEAqxgBAKwYAQCtGAEArhgBAK8YAQCwGAEAsRgBALIYAQCzGAEAtBgBALUYAQC2GAEAtxgBALgYAQC5GAEAuhgBALsYAQC8GAEAvRgBAL4YAQC/GAEAYG4BAGFuAQBibgEAY24BAGRuAQBlbgEAZm4BAGduAQBobgEAaW4BAGpuAQBrbgEAbG4BAG1uAQBubgEAb24BAHBuAQBxbgEAcm4BAHNuAQB0bgEAdW4BAHZuAQB3bgEAeG4BAHluAQB6bgEAe24BAHxuAQB9bgEAfm4BAH9uAQBAbgEAQW4BAEJuAQBDbgEARG4BAEVuAQBGbgEAR24BAEhuAQBJbgEASm4BAEtuAQBMbgEATW4BAE5uAQBPbgEAUG4BAFFuAQBSbgEAU24BAFRuAQBVbgEAVm4BAFduAQBYbgEAWW4BAFpuAQBbbgEAXG4BAF1uAQBebgEAX24BACLpAQAj6QEAJOkBACXpAQAm6QEAJ+kBACjpAQAp6QEAKukBACvpAQAs6QEALekBAC7pAQAv6QEAMOkBADHpAQAy6QEAM+kBADTpAQA16QEANukBADfpAQA46QEAOekBADrpAQA76QEAPOkBAD3pAQA+6QEAP+kBAEDpAQBB6QEAQukBAEPpAQAA6QEAAekBAALpAQAD6QEABOkBAAXpAQAG6QEAB+kBAAjpAQAJ6QEACukBAAvpAQAM6QEADekBAA7pAQAP6QEAEOkBABHpAQAS6QEAE+kBABTpAQAV6QEAFukBABfpAQAY6QEAGekBABrpAQAb6QEAHOkBAB3pAQAe6QEAH+kBACDpAQAh6QEAQQAAAKwkEQABAAAAQgAAALAkEQABAAAAQwAAALQkEQABAAAARAAAADQtFgABAAAARQAAALgkEQABAAAARgAAALwkEQABAAAARwAAAMAkEQABAAAASAAAAMQkEQABAAAASQAAAMgkEQABAAAASgAAAMwkEQABAAAASwAAANAkEQACAAAATAAAANgkEQABAAAATQAAANwkEQABAAAATgAAAOAkEQABAAAATwAAAOQkEQABAAAAUAAAAOgkEQABAAAAUQAAAOwkEQABAAAAUgAAAPAkEQABAAAAUwAAAPQkEQACAAAAVAAAAPwkEQABAAAAVQAAAAAlEQABAAAAVgAAAAQlEQABAAAAVwAAAAglEQABAAAAWAAAAAwlEQABAAAAWQAAABAlEQABAAAAWgAAABQlEQABAAAAYQAAABglEQABAAAAYgAAABwlEQABAAAAYwAAACAlEQABAAAAZAAAADAtFgABAAAAZQAAACQlEQABAAAAZgAAACglEQABAAAAZwAAACwlEQABAAAAaAAAADAlEQABAAAAaQAAADQlEQABAAAAagAAADglEQABAAAAawAAADwlEQACAAAAbAAAAEQlEQABAAAAbQAAAEglEQABAAAAbgAAAEwlEQABAAAAbwAAAFAlEQABAAAAcAAAAFQlEQABAAAAcQAAAFglEQABAAAAcgAAAFwlEQABAAAAcwAAAGAlEQACAAAAdAAAAGglEQABAAAAdQAAAGwlEQABAAAAdgAAAHAlEQABAAAAdwAAAHQlEQABAAAAeAAAAHglEQABAAAAeQAAAHwlEQABAAAAegAAAIAlEQABAAAAtQAAAIQlEQACAAAAwAAAAIwlEQABAAAAwQAAAJAlEQABAAAAwgAAAJQlEQABAAAAwwAAAJglEQABAAAAxAAAAJwlEQABAAAAxQAAAKAlEQACAAAAxgAAAKglEQABAAAAxwAAAKwlEQABAAAAyAAAALAlEQABAAAAyQAAALQlEQABAAAAygAAALglEQABAAAAywAAALwlEQABAAAAzAAAAMAlEQABAAAAzQAAAMQlEQABAAAAzgAAAMglEQABAAAAzwAAAMwlEQABAAAA0AAAANAlEQABAAAA0QAAANQlEQABAAAA0gAAANglEQABAAAA0wAAANwlEQABAAAA1AAAAOAlEQABAAAA1QAAAOQlEQABAAAA1gAAAOglEQABAAAA2AAAAOwlEQABAAAA2QAAAPAlEQABAAAA2gAAAPQlEQABAAAA2wAAAPglEQABAAAA3AAAAPwlEQABAAAA3QAAAAAmEQABAAAA3gAAAAQmEQABAAAA3wAAAAgmEQABAAAA4AAAAAwmEQABAAAA4QAAABAmEQABAAAA4gAAABQmEQABAAAA4wAAABgmEQABAAAA5AAAABwmEQABAAAA5QAAACAmEQACAAAA5gAAACgmEQABAAAA5wAAACwmEQABAAAA6AAAADAmEQABAAAA6QAAADQmEQABAAAA6gAAADgmEQABAAAA6wAAADwmEQABAAAA7AAAAEAmEQABAAAA7QAAAEQmEQABAAAA7gAAAEgmEQABAAAA7wAAAEwmEQABAAAA8AAAAFAmEQABAAAA8QAAAFQmEQABAAAA8gAAAFgmEQABAAAA8wAAAFwmEQABAAAA9AAAAGAmEQABAAAA9QAAAGQmEQABAAAA9gAAAGgmEQABAAAA+AAAAGwmEQABAAAA+QAAAHAmEQABAAAA+gAAAHQmEQABAAAA+wAAAHgmEQABAAAA/AAAAHwmEQABAAAA/QAAAIAmEQABAAAA/gAAAIQmEQABAAAA/wAAAIgmEQABAAAAAAEAAIwmEQABAAAAAQEAAJAmEQABAAAAAgEAAJQmEQABAAAAAwEAAJgmEQABAAAABAEAAJwmEQABAAAABQEAAKAmEQABAAAABgEAAKQmEQABAAAABwEAAKgmEQABAAAACAEAAKwmEQABAAAACQEAALAmEQABAAAACgEAALQmEQABAAAACwEAALgmEQABAAAADAEAALwmEQABAAAADQEAAMAmEQABAAAADgEAAMQmEQABAAAADwEAAMgmEQABAAAAEAEAAMwmEQABAAAAEQEAANAmEQABAAAAEgEAANQmEQABAAAAEwEAANgmEQABAAAAFAEAANwmEQABAAAAFQEAAOAmEQABAAAAFgEAAOQmEQABAAAAFwEAAOgmEQABAAAAGAEAAOwmEQABAAAAGQEAAPAmEQABAAAAGgEAAPQmEQABAAAAGwEAAPgmEQABAAAAHAEAAPwmEQABAAAAHQEAAAAnEQABAAAAHgEAAAQnEQABAAAAHwEAAAgnEQABAAAAIAEAAAwnEQABAAAAIQEAABAnEQABAAAAIgEAABQnEQABAAAAIwEAABgnEQABAAAAJAEAABwnEQABAAAAJQEAACAnEQABAAAAJgEAACQnEQABAAAAJwEAACgnEQABAAAAKAEAACwnEQABAAAAKQEAADAnEQABAAAAKgEAADQnEQABAAAAKwEAADgnEQABAAAALAEAADwnEQABAAAALQEAAEAnEQABAAAALgEAAEQnEQABAAAALwEAAEgnEQABAAAAMgEAAEwnEQABAAAAMwEAAFAnEQABAAAANAEAAFQnEQABAAAANQEAAFgnEQABAAAANgEAAFwnEQABAAAANwEAAGAnEQABAAAAOQEAAGQnEQABAAAAOgEAAGgnEQABAAAAOwEAAGwnEQABAAAAPAEAAHAnEQABAAAAPQEAAHQnEQABAAAAPgEAAHgnEQABAAAAPwEAAHwnEQABAAAAQAEAAIAnEQABAAAAQQEAAIQnEQABAAAAQgEAAIgnEQABAAAAQwEAAIwnEQABAAAARAEAAJAnEQABAAAARQEAAJQnEQABAAAARgEAAJgnEQABAAAARwEAAJwnEQABAAAASAEAAKAnEQABAAAASgEAAKQnEQABAAAASwEAAKgnEQABAAAATAEAAKwnEQABAAAATQEAALAnEQABAAAATgEAALQnEQABAAAATwEAALgnEQABAAAAUAEAALwnEQABAAAAUQEAAMAnEQABAAAAUgEAAMQnEQABAAAAUwEAAMgnEQABAAAAVAEAAMwnEQABAAAAVQEAANAnEQABAAAAVgEAANQnEQABAAAAVwEAANgnEQABAAAAWAEAANwnEQABAAAAWQEAAOAnEQABAAAAWgEAAOQnEQABAAAAWwEAAOgnEQABAAAAXAEAAOwnEQABAAAAXQEAAPAnEQABAAAAXgEAAPQnEQABAAAAXwEAAPgnEQABAAAAYAEAAPwnEQABAAAAYQEAAAAoEQABAAAAYgEAAAQoEQABAAAAYwEAAAgoEQABAAAAZAEAAAwoEQABAAAAZQEAABAoEQABAAAAZgEAABQoEQABAAAAZwEAABgoEQABAAAAaAEAABwoEQABAAAAaQEAACAoEQABAAAAagEAACQoEQABAAAAawEAACgoEQABAAAAbAEAACwoEQABAAAAbQEAADAoEQABAAAAbgEAADQoEQABAAAAbwEAADgoEQABAAAAcAEAADwoEQABAAAAcQEAAEAoEQABAAAAcgEAAEQoEQABAAAAcwEAAEgoEQABAAAAdAEAAEwoEQABAAAAdQEAAFAoEQABAAAAdgEAAFQoEQABAAAAdwEAAFgoEQABAAAAeAEAAFwoEQABAAAAeQEAAGAoEQABAAAAegEAAGQoEQABAAAAewEAAGgoEQABAAAAfAEAAGwoEQABAAAAfQEAAHAoEQABAAAAfgEAAHQoEQABAAAAfwEAAHgoEQACAAAAgAEAAIAoEQABAAAAgQEAAIQoEQABAAAAggEAAIgoEQABAAAAgwEAAIwoEQABAAAAhAEAAJAoEQABAAAAhQEAAJQoEQABAAAAhgEAAJgoEQABAAAAhwEAAJwoEQABAAAAiAEAAKAoEQABAAAAiQEAAKQoEQABAAAAigEAAKgoEQABAAAAiwEAAKwoEQABAAAAjAEAALAoEQABAAAAjgEAALQoEQABAAAAjwEAALgoEQABAAAAkAEAALwoEQABAAAAkQEAAMAoEQABAAAAkgEAAMQoEQABAAAAkwEAAMgoEQABAAAAlAEAAMwoEQABAAAAlQEAANAoEQABAAAAlgEAANQoEQABAAAAlwEAANgoEQABAAAAmAEAANwoEQABAAAAmQEAAOAoEQABAAAAmgEAAOQoEQABAAAAnAEAAOgoEQABAAAAnQEAAOwoEQABAAAAngEAAPAoEQABAAAAnwEAAPQoEQABAAAAoAEAAPgoEQABAAAAoQEAAPwoEQABAAAAogEAAAApEQABAAAAowEAAAQpEQABAAAApAEAAAgpEQABAAAApQEAAAwpEQABAAAApgEAABApEQABAAAApwEAABQpEQABAAAAqAEAABgpEQABAAAAqQEAABwpEQABAAAArAEAACApEQABAAAArQEAACQpEQABAAAArgEAACgpEQABAAAArwEAACwpEQABAAAAsAEAADApEQABAAAAsQEAADQpEQABAAAAsgEAADgpEQABAAAAswEAADwpEQABAAAAtAEAAEApEQABAAAAtQEAAEQpEQABAAAAtgEAAEgpEQABAAAAtwEAAEwpEQABAAAAuAEAAFApEQABAAAAuQEAAFQpEQABAAAAvAEAAFgpEQABAAAAvQEAAFwpEQABAAAAvwEAAGApEQABAAAAxAEAAGQpEQACAAAAxQEAAGwpEQACAAAAxgEAAHQpEQACAAAAxwEAAHwpEQACAAAAyAEAAIQpEQACAAAAyQEAAIwpEQACAAAAygEAAJQpEQACAAAAywEAAJwpEQACAAAAzAEAAKQpEQACAAAAzQEAAKwpEQABAAAAzgEAALApEQABAAAAzwEAALQpEQABAAAA0AEAALgpEQABAAAA0QEAALwpEQABAAAA0gEAAMApEQABAAAA0wEAAMQpEQABAAAA1AEAAMgpEQABAAAA1QEAAMwpEQABAAAA1gEAANApEQABAAAA1wEAANQpEQABAAAA2AEAANgpEQABAAAA2QEAANwpEQABAAAA2gEAAOApEQABAAAA2wEAAOQpEQABAAAA3AEAAOgpEQABAAAA3QEAAOwpEQABAAAA3gEAAPApEQABAAAA3wEAAPQpEQABAAAA4AEAAPgpEQABAAAA4QEAAPwpEQABAAAA4gEAAAAqEQABAAAA4wEAAAQqEQABAAAA5AEAAAgqEQABAAAA5QEAAAwqEQABAAAA5gEAABAqEQABAAAA5wEAABQqEQABAAAA6AEAABgqEQABAAAA6QEAABwqEQABAAAA6gEAACAqEQABAAAA6wEAACQqEQABAAAA7AEAACgqEQABAAAA7QEAACwqEQABAAAA7gEAADAqEQABAAAA7wEAADQqEQABAAAA8QEAADgqEQACAAAA8gEAAEAqEQACAAAA8wEAAEgqEQACAAAA9AEAAFAqEQABAAAA9QEAAFQqEQABAAAA9gEAAFgqEQABAAAA9wEAAFwqEQABAAAA+AEAAGAqEQABAAAA+QEAAGQqEQABAAAA+gEAAGgqEQABAAAA+wEAAGwqEQABAAAA/AEAAHAqEQABAAAA/QEAAHQqEQABAAAA/gEAAHgqEQABAAAA/wEAAHwqEQABAAAAAAIAAIAqEQABAAAAAQIAAIQqEQABAAAAAgIAAIgqEQABAAAAAwIAAIwqEQABAAAABAIAAJAqEQABAAAABQIAAJQqEQABAAAABgIAAJgqEQABAAAABwIAAJwqEQABAAAACAIAAKAqEQABAAAACQIAAKQqEQABAAAACgIAAKgqEQABAAAACwIAAKwqEQABAAAADAIAALAqEQABAAAADQIAALQqEQABAAAADgIAALgqEQABAAAADwIAALwqEQABAAAAEAIAAMAqEQABAAAAEQIAAMQqEQABAAAAEgIAAMgqEQABAAAAEwIAAMwqEQABAAAAFAIAANAqEQABAAAAFQIAANQqEQABAAAAFgIAANgqEQABAAAAFwIAANwqEQABAAAAGAIAAOAqEQABAAAAGQIAAOQqEQABAAAAGgIAAOgqEQABAAAAGwIAAOwqEQABAAAAHAIAAPAqEQABAAAAHQIAAPQqEQABAAAAHgIAAPgqEQABAAAAHwIAAPwqEQABAAAAIAIAAAArEQABAAAAIgIAAAQrEQABAAAAIwIAAAgrEQABAAAAJAIAAAwrEQABAAAAJQIAABArEQABAAAAJgIAABQrEQABAAAAJwIAABgrEQABAAAAKAIAABwrEQABAAAAKQIAACArEQABAAAAKgIAACQrEQABAAAAKwIAACgrEQABAAAALAIAACwrEQABAAAALQIAADArEQABAAAALgIAADQrEQABAAAALwIAADgrEQABAAAAMAIAADwrEQABAAAAMQIAAEArEQABAAAAMgIAAEQrEQABAAAAMwIAAEgrEQABAAAAOgIAAEwrEQABAAAAOwIAAFArEQABAAAAPAIAAFQrEQABAAAAPQIAAFgrEQABAAAAPgIAAFwrEQABAAAAPwIAAGArEQABAAAAQAIAAGQrEQABAAAAQQIAAGgrEQABAAAAQgIAAGwrEQABAAAAQwIAAHArEQABAAAARAIAAHQrEQABAAAARQIAAHgrEQABAAAARgIAAHwrEQABAAAARwIAAIArEQABAAAASAIAAIQrEQABAAAASQIAAIgrEQABAAAASgIAAIwrEQABAAAASwIAAJArEQABAAAATAIAAJQrEQABAAAATQIAAJgrEQABAAAATgIAAJwrEQABAAAATwIAAKArEQABAAAAUAIAAKQrEQABAAAAUQIAAKgrEQABAAAAUgIAAKwrEQABAAAAUwIAALArEQABAAAAVAIAALQrEQABAAAAVgIAALgrEQABAAAAVwIAALwrEQABAAAAWQIAAMArEQABAAAAWwIAAMQrEQABAAAAXAIAAMgrEQABAAAAYAIAAMwrEQABAAAAYQIAANArEQABAAAAYwIAANQrEQABAAAAZQIAANgrEQABAAAAZgIAANwrEQABAAAAaAIAAOArEQABAAAAaQIAAOQrEQABAAAAagIAAOgrEQABAAAAawIAAOwrEQABAAAAbAIAAPArEQABAAAAbwIAAPQrEQABAAAAcQIAAPgrEQABAAAAcgIAAPwrEQABAAAAdQIAAAAsEQABAAAAfQIAAAQsEQABAAAAgAIAAAgsEQABAAAAggIAAAwsEQABAAAAgwIAABAsEQABAAAAhwIAABQsEQABAAAAiAIAABgsEQABAAAAiQIAABwsEQABAAAAigIAACAsEQABAAAAiwIAACQsEQABAAAAjAIAACgsEQABAAAAkgIAACwsEQABAAAAnQIAADAsEQABAAAAngIAADQsEQABAAAARQMAADgsEQADAAAAcAMAAEQsEQABAAAAcQMAAEgsEQABAAAAcgMAAEwsEQABAAAAcwMAAFAsEQABAAAAdgMAAFQsEQABAAAAdwMAAFgsEQABAAAAewMAAFwsEQABAAAAfAMAAGAsEQABAAAAfQMAAGQsEQABAAAAfwMAAGgsEQABAAAAhgMAAGwsEQABAAAAiAMAAHAsEQABAAAAiQMAAHQsEQABAAAAigMAAHgsEQABAAAAjAMAAHwsEQABAAAAjgMAAIAsEQABAAAAjwMAAIQsEQABAAAAkQMAAIgsEQABAAAAkgMAAIwsEQACAAAAkwMAAJQsEQABAAAAlAMAAJgsEQABAAAAlQMAAJwsEQACAAAAlgMAAKQsEQABAAAAlwMAAKgsEQABAAAAmAMAAKwsEQADAAAAmQMAALgsEQADAAAAmgMAAMQsEQACAAAAmwMAAMwsEQABAAAAnAMAANAsEQACAAAAnQMAANgsEQABAAAAngMAANwsEQABAAAAnwMAAOAsEQABAAAAoAMAAOQsEQACAAAAoQMAAOwsEQACAAAAowMAAPQsEQACAAAApAMAAPwsEQABAAAApQMAAAAtEQABAAAApgMAAAQtEQACAAAApwMAAAwtEQABAAAAqAMAABAtEQABAAAAqQMAABQtEQACAAAAqgMAABwtEQABAAAAqwMAACAtEQABAAAArAMAACQtEQABAAAArQMAACgtEQABAAAArgMAACwtEQABAAAArwMAADAtEQABAAAAsQMAADQtEQABAAAAsgMAADgtEQACAAAAswMAAEAtEQABAAAAtAMAAEQtEQABAAAAtQMAAEgtEQACAAAAtgMAAFAtEQABAAAAtwMAAFQtEQABAAAAuAMAAFgtEQADAAAAuQMAAGQtEQADAAAAugMAAHAtEQACAAAAuwMAAHgtEQABAAAAvAMAAHwtEQACAAAAvQMAAIQtEQABAAAAvgMAAIgtEQABAAAAvwMAAIwtEQABAAAAwAMAAJAtEQACAAAAwQMAAJgtEQACAAAAwgMAAKAtEQACAAAAwwMAAKgtEQACAAAAxAMAALAtEQABAAAAxQMAALQtEQABAAAAxgMAALgtEQACAAAAxwMAAMAtEQABAAAAyAMAAMQtEQABAAAAyQMAAMgtEQACAAAAygMAANAtEQABAAAAywMAANQtEQABAAAAzAMAANgtEQABAAAAzQMAANwtEQABAAAAzgMAAOAtEQABAAAAzwMAAOQtEQABAAAA0AMAAOgtEQACAAAA0QMAAPAtEQADAAAA1QMAAPwtEQACAAAA1gMAAAQuEQACAAAA1wMAAAwuEQABAAAA2AMAABAuEQABAAAA2QMAABQuEQABAAAA2gMAABguEQABAAAA2wMAABwuEQABAAAA3AMAACAuEQABAAAA3QMAACQuEQABAAAA3gMAACguEQABAAAA3wMAACwuEQABAAAA4AMAADAuEQABAAAA4QMAADQuEQABAAAA4gMAADguEQABAAAA4wMAADwuEQABAAAA5AMAAEAuEQABAAAA5QMAAEQuEQABAAAA5gMAAEguEQABAAAA5wMAAEwuEQABAAAA6AMAAFAuEQABAAAA6QMAAFQuEQABAAAA6gMAAFguEQABAAAA6wMAAFwuEQABAAAA7AMAAGAuEQABAAAA7QMAAGQuEQABAAAA7gMAAGguEQABAAAA7wMAAGwuEQABAAAA8AMAAHAuEQACAAAA8QMAAHguEQACAAAA8gMAAIAuEQABAAAA8wMAAIQuEQABAAAA9AMAAIguEQADAAAA9QMAAJQuEQACAAAA9wMAAJwuEQABAAAA+AMAAKAuEQABAAAA+QMAAKQuEQABAAAA+gMAAKguEQABAAAA+wMAAKwuEQABAAAA/QMAALAuEQABAAAA/gMAALQuEQABAAAA/wMAALguEQABAAAAAAQAALwuEQABAAAAAQQAAMAuEQABAAAAAgQAAMQuEQABAAAAAwQAAMguEQABAAAABAQAAMwuEQABAAAABQQAANAuEQABAAAABgQAANQuEQABAAAABwQAANguEQABAAAACAQAANwuEQABAAAACQQAAOAuEQABAAAACgQAAOQuEQABAAAACwQAAOguEQABAAAADAQAAOwuEQABAAAADQQAAPAuEQABAAAADgQAAPQuEQABAAAADwQAAPguEQABAAAAEAQAAPwuEQABAAAAEQQAAAAvEQABAAAAEgQAAAQvEQACAAAAEwQAAAwvEQABAAAAFAQAABAvEQACAAAAFQQAABgvEQABAAAAFgQAABwvEQABAAAAFwQAACAvEQABAAAAGAQAACQvEQABAAAAGQQAACgvEQABAAAAGgQAACwvEQABAAAAGwQAADAvEQABAAAAHAQAADQvEQABAAAAHQQAADgvEQABAAAAHgQAADwvEQACAAAAHwQAAEQvEQABAAAAIAQAAEgvEQABAAAAIQQAAEwvEQACAAAAIgQAAFQvEQADAAAAIwQAAGAvEQABAAAAJAQAAGQvEQABAAAAJQQAAGgvEQABAAAAJgQAAGwvEQABAAAAJwQAAHAvEQABAAAAKAQAAHQvEQABAAAAKQQAAHgvEQABAAAAKgQAAHwvEQACAAAAKwQAAIQvEQABAAAALAQAAIgvEQABAAAALQQAAIwvEQABAAAALgQAAJAvEQABAAAALwQAAJQvEQABAAAAMAQAAJgvEQABAAAAMQQAAJwvEQABAAAAMgQAAKAvEQACAAAAMwQAAKgvEQABAAAANAQAAKwvEQACAAAANQQAALQvEQABAAAANgQAALgvEQABAAAANwQAALwvEQABAAAAOAQAAMAvEQABAAAAOQQAAMQvEQABAAAAOgQAAMgvEQABAAAAOwQAAMwvEQABAAAAPAQAANAvEQABAAAAPQQAANQvEQABAAAAPgQAANgvEQACAAAAPwQAAOAvEQABAAAAQAQAAOQvEQABAAAAQQQAAOgvEQACAAAAQgQAAPAvEQADAAAAQwQAAPwvEQABAAAARAQAAAAwEQABAAAARQQAAAQwEQABAAAARgQAAAgwEQABAAAARwQAAAwwEQABAAAASAQAABAwEQABAAAASQQAABQwEQABAAAASgQAABgwEQACAAAASwQAACAwEQABAAAATAQAACQwEQABAAAATQQAACgwEQABAAAATgQAACwwEQABAAAATwQAADAwEQABAAAAUAQAADQwEQABAAAAUQQAADgwEQABAAAAUgQAADwwEQABAAAAUwQAAEAwEQABAAAAVAQAAEQwEQABAAAAVQQAAEgwEQABAAAAVgQAAEwwEQABAAAAVwQAAFAwEQABAAAAWAQAAFQwEQABAAAAWQQAAFgwEQABAAAAWgQAAFwwEQABAAAAWwQAAGAwEQABAAAAXAQAAGQwEQABAAAAXQQAAGgwEQABAAAAXgQAAGwwEQABAAAAXwQAAHAwEQABAAAAYAQAAHQwEQABAAAAYQQAAHgwEQABAAAAYgQAAHwwEQACAAAAYwQAAIQwEQACAAAAZAQAAIwwEQABAAAAZQQAAJAwEQABAAAAZgQAAJQwEQABAAAAZwQAAJgwEQABAAAAaAQAAJwwEQABAAAAaQQAAKAwEQABAAAAagQAAKQwEQABAAAAawQAAKgwEQABAAAAbAQAAKwwEQABAAAAbQQAALAwEQABAAAAbgQAALQwEQABAAAAbwQAALgwEQABAAAAcAQAALwwEQABAAAAcQQAAMAwEQABAAAAcgQAAMQwEQABAAAAcwQAAMgwEQABAAAAdAQAAMwwEQABAAAAdQQAANAwEQABAAAAdgQAANQwEQABAAAAdwQAANgwEQABAAAAeAQAANwwEQABAAAAeQQAAOAwEQABAAAAegQAAOQwEQABAAAAewQAAOgwEQABAAAAfAQAAOwwEQABAAAAfQQAAPAwEQABAAAAfgQAAPQwEQABAAAAfwQAAPgwEQABAAAAgAQAAPwwEQABAAAAgQQAAAAxEQABAAAAigQAAAQxEQABAAAAiwQAAAgxEQABAAAAjAQAAAwxEQABAAAAjQQAABAxEQABAAAAjgQAABQxEQABAAAAjwQAABgxEQABAAAAkAQAABwxEQABAAAAkQQAACAxEQABAAAAkgQAACQxEQABAAAAkwQAACgxEQABAAAAlAQAACwxEQABAAAAlQQAADAxEQABAAAAlgQAADQxEQABAAAAlwQAADgxEQABAAAAmAQAADwxEQABAAAAmQQAAEAxEQABAAAAmgQAAEQxEQABAAAAmwQAAEgxEQABAAAAnAQAAEwxEQABAAAAnQQAAFAxEQABAAAAngQAAFQxEQABAAAAnwQAAFgxEQABAAAAoAQAAFwxEQABAAAAoQQAAGAxEQABAAAAogQAAGQxEQABAAAAowQAAGgxEQABAAAApAQAAGwxEQABAAAApQQAAHAxEQABAAAApgQAAHQxEQABAAAApwQAAHgxEQABAAAAqAQAAHwxEQABAAAAqQQAAIAxEQABAAAAqgQAAIQxEQABAAAAqwQAAIgxEQABAAAArAQAAIwxEQABAAAArQQAAJAxEQABAAAArgQAAJQxEQABAAAArwQAAJgxEQABAAAAsAQAAJwxEQABAAAAsQQAAKAxEQABAAAAsgQAAKQxEQABAAAAswQAAKgxEQABAAAAtAQAAKwxEQABAAAAtQQAALAxEQABAAAAtgQAALQxEQABAAAAtwQAALgxEQABAAAAuAQAALwxEQABAAAAuQQAAMAxEQABAAAAugQAAMQxEQABAAAAuwQAAMgxEQABAAAAvAQAAMwxEQABAAAAvQQAANAxEQABAAAAvgQAANQxEQABAAAAvwQAANgxEQABAAAAwAQAANwxEQABAAAAwQQAAOAxEQABAAAAwgQAAOQxEQABAAAAwwQAAOgxEQABAAAAxAQAAOwxEQABAAAAxQQAAPAxEQABAAAAxgQAAPQxEQABAAAAxwQAAPgxEQABAAAAyAQAAPwxEQABAAAAyQQAAAAyEQABAAAAygQAAAQyEQABAAAAywQAAAgyEQABAAAAzAQAAAwyEQABAAAAzQQAABAyEQABAAAAzgQAABQyEQABAAAAzwQAABgyEQABAAAA0AQAABwyEQABAAAA0QQAACAyEQABAAAA0gQAACQyEQABAAAA0wQAACgyEQABAAAA1AQAACwyEQABAAAA1QQAADAyEQABAAAA1gQAADQyEQABAAAA1wQAADgyEQABAAAA2AQAADwyEQABAAAA2QQAAEAyEQABAAAA2gQAAEQyEQABAAAA2wQAAEgyEQABAAAA3AQAAEwyEQABAAAA3QQAAFAyEQABAAAA3gQAAFQyEQABAAAA3wQAAFgyEQABAAAA4AQAAFwyEQABAAAA4QQAAGAyEQABAAAA4gQAAGQyEQABAAAA4wQAAGgyEQABAAAA5AQAAGwyEQABAAAA5QQAAHAyEQABAAAA5gQAAHQyEQABAAAA5wQAAHgyEQABAAAA6AQAAHwyEQABAAAA6QQAAIAyEQABAAAA6gQAAIQyEQABAAAA6wQAAIgyEQABAAAA7AQAAIwyEQABAAAA7QQAAJAyEQABAAAA7gQAAJQyEQABAAAA7wQAAJgyEQABAAAA8AQAAJwyEQABAAAA8QQAAKAyEQABAAAA8gQAAKQyEQABAAAA8wQAAKgyEQABAAAA9AQAAKwyEQABAAAA9QQAALAyEQABAAAA9gQAALQyEQABAAAA9wQAALgyEQABAAAA+AQAALwyEQABAAAA+QQAAMAyEQABAAAA+gQAAMQyEQABAAAA+wQAAMgyEQABAAAA/AQAAMwyEQABAAAA/QQAANAyEQABAAAA/gQAANQyEQABAAAA/wQAANgyEQABAAAAAAUAANwyEQABAAAAAQUAAOAyEQABAAAAAgUAAOQyEQABAAAAAwUAAOgyEQABAAAABAUAAOwyEQABAAAABQUAAPAyEQABAAAABgUAAPQyEQABAAAABwUAAPgyEQABAAAACAUAAPwyEQABAAAACQUAAAAzEQABAAAACgUAAAQzEQABAAAACwUAAAgzEQABAAAADAUAAAwzEQABAAAADQUAABAzEQABAAAADgUAABQzEQABAAAADwUAABgzEQABAAAAEAUAABwzEQABAAAAEQUAACAzEQABAAAAEgUAACQzEQABAAAAEwUAACgzEQABAAAAFAUAACwzEQABAAAAFQUAADAzEQABAAAAFgUAADQzEQABAAAAFwUAADgzEQABAAAAGAUAADwzEQABAAAAGQUAAEAzEQABAAAAGgUAAEQzEQABAAAAGwUAAEgzEQABAAAAHAUAAEwzEQABAAAAHQUAAFAzEQABAAAAHgUAAFQzEQABAAAAHwUAAFgzEQABAAAAIAUAAFwzEQABAAAAIQUAAGAzEQABAAAAIgUAAGQzEQABAAAAIwUAAGgzEQABAAAAJAUAAGwzEQABAAAAJQUAAHAzEQABAAAAJgUAAHQzEQABAAAAJwUAAHgzEQABAAAAKAUAAHwzEQABAAAAKQUAAIAzEQABAAAAKgUAAIQzEQABAAAAKwUAAIgzEQABAAAALAUAAIwzEQABAAAALQUAAJAzEQABAAAALgUAAJQzEQABAAAALwUAAJgzEQABAAAAMQUAAJwzEQABAAAAMgUAAKAzEQABAAAAMwUAAKQzEQABAAAANAUAAKgzEQABAAAANQUAAKwzEQABAAAANgUAALAzEQABAAAANwUAALQzEQABAAAAOAUAALgzEQABAAAAOQUAALwzEQABAAAAOgUAAMAzEQABAAAAOwUAAMQzEQABAAAAPAUAAMgzEQABAAAAPQUAAMwzEQABAAAAPgUAANAzEQABAAAAPwUAANQzEQABAAAAQAUAANgzEQABAAAAQQUAANwzEQABAAAAQgUAAOAzEQABAAAAQwUAAOQzEQABAAAARAUAAOgzEQABAAAARQUAAOwzEQABAAAARgUAAPAzEQABAAAARwUAAPQzEQABAAAASAUAAPgzEQABAAAASQUAAPwzEQABAAAASgUAAAA0EQABAAAASwUAAAQ0EQABAAAATAUAAAg0EQABAAAATQUAAAw0EQABAAAATgUAABA0EQABAAAATwUAABQ0EQABAAAAUAUAABg0EQABAAAAUQUAABw0EQABAAAAUgUAACA0EQABAAAAUwUAACQ0EQABAAAAVAUAACg0EQABAAAAVQUAACw0EQABAAAAVgUAADA0EQABAAAAYQUAADQ0EQABAAAAYgUAADg0EQABAAAAYwUAADw0EQABAAAAZAUAAEA0EQABAAAAZQUAAEQ0EQABAAAAZgUAAEg0EQABAAAAZwUAAEw0EQABAAAAaAUAAFA0EQABAAAAaQUAAFQ0EQABAAAAagUAAFg0EQABAAAAawUAAFw0EQABAAAAbAUAAGA0EQABAAAAbQUAAGQ0EQABAAAAbgUAAGg0EQABAAAAbwUAAGw0EQABAAAAcAUAAHA0EQABAAAAcQUAAHQ0EQABAAAAcgUAAHg0EQABAAAAcwUAAHw0EQABAAAAdAUAAIA0EQABAAAAdQUAAIQ0EQABAAAAdgUAAIg0EQABAAAAdwUAAIw0EQABAAAAeAUAAJA0EQABAAAAeQUAAJQ0EQABAAAAegUAAJg0EQABAAAAewUAAJw0EQABAAAAfAUAAKA0EQABAAAAfQUAAKQ0EQABAAAAfgUAAKg0EQABAAAAfwUAAKw0EQABAAAAgAUAALA0EQABAAAAgQUAALQ0EQABAAAAggUAALg0EQABAAAAgwUAALw0EQABAAAAhAUAAMA0EQABAAAAhQUAAMQ0EQABAAAAhgUAAMg0EQABAAAAoBAAAMw0EQABAAAAoRAAANA0EQABAAAAohAAANQ0EQABAAAAoxAAANg0EQABAAAApBAAANw0EQABAAAApRAAAOA0EQABAAAAphAAAOQ0EQABAAAApxAAAOg0EQABAAAAqBAAAOw0EQABAAAAqRAAAPA0EQABAAAAqhAAAPQ0EQABAAAAqxAAAPg0EQABAAAArBAAAPw0EQABAAAArRAAAAA1EQABAAAArhAAAAQ1EQABAAAArxAAAAg1EQABAAAAsBAAAAw1EQABAAAAsRAAABA1EQABAAAAshAAABQ1EQABAAAAsxAAABg1EQABAAAAtBAAABw1EQABAAAAtRAAACA1EQABAAAAthAAACQ1EQABAAAAtxAAACg1EQABAAAAuBAAACw1EQABAAAAuRAAADA1EQABAAAAuhAAADQ1EQABAAAAuxAAADg1EQABAAAAvBAAADw1EQABAAAAvRAAAEA1EQABAAAAvhAAAEQ1EQABAAAAvxAAAEg1EQABAAAAwBAAAEw1EQABAAAAwRAAAFA1EQABAAAAwhAAAFQ1EQABAAAAwxAAAFg1EQABAAAAxBAAAFw1EQABAAAAxRAAAGA1EQABAAAAxxAAAGQ1EQABAAAAzRAAAGg1EQABAAAA0BAAAGw1EQABAAAA0RAAAHA1EQABAAAA0hAAAHQ1EQABAAAA0xAAAHg1EQABAAAA1BAAAHw1EQABAAAA1RAAAIA1EQABAAAA1hAAAIQ1EQABAAAA1xAAAIg1EQABAAAA2BAAAIw1EQABAAAA2RAAAJA1EQABAAAA2hAAAJQ1EQABAAAA2xAAAJg1EQABAAAA3BAAAJw1EQABAAAA3RAAAKA1EQABAAAA3hAAAKQ1EQABAAAA3xAAAKg1EQABAAAA4BAAAKw1EQABAAAA4RAAALA1EQABAAAA4hAAALQ1EQABAAAA4xAAALg1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EQABAAAApxwAAEA4EQABAAAAqBwAAEQ4EQABAAAAqRwAAEg4EQABAAAAqhwAAEw4EQABAAAAqxwAAFA4EQABAAAArBwAAFQ4EQABAAAArRwAAFg4EQABAAAArhwAAFw4EQABAAAArxwAAGA4EQABAAAAsBwAAGQ4EQABAAAAsRwAAGg4EQABAAAAshwAAGw4EQABAAAAsxwAAHA4EQABAAAAtBwAAHQ4EQABAAAAtRwAAHg4EQABAAAAthwAAHw4EQABAAAAtxwAAIA4EQABAAAAuBwAAIQ4EQABAAAAuRwAAIg4EQABAAAAuhwAAIw4EQABAAAAvRwAAJA4EQABAAAAvhwAAJQ4EQABAAAAvxwAAJg4EQABAAAAeR0AAJw4EQABAAAAfR0AAKA4EQABAAAAjh0AAKQ4EQABAAAAAB4AAKg4EQABAAAAAR4AAKw4EQABAAAAAh4AALA4EQABAAAAAx4AALQ4EQABAAAABB4AALg4EQABAAAABR4AALw4EQABAAAABh4AAMA4EQABAAAABx4AAMQ4EQABAAAACB4AAMg4EQABAAAACR4AAMw4EQABAAAACh4AANA4EQABAAAACx4AANQ4EQABAAAADB4AANg4EQABAAAADR4AANw4EQABAAAADh4AAOA4EQABAAAADx4AAOQ4EQABAAAAEB4AAOg4EQABAAAAER4AAOw4EQABAAAAEh4AAPA4EQABAAAAEx4AAPQ4EQABAAAAFB4AAPg4EQABAAAAFR4AAPw4EQABAAAAFh4AAAA5EQABAAAAFx4AAAQ5EQABAAAAGB4AAAg5EQABAAAAGR4AAAw5EQABAAAAGh4AABA5EQABAAAAGx4AABQ5EQABAAAAHB4AABg5EQABAAAAHR4AABw5EQABAAAAHh4AACA5EQABAAAAHx4AACQ5EQABAAAAIB4AACg5EQABAAAAIR4AACw5EQABAAAAIh4AADA5EQABAAAAIx4AADQ5EQABAAAAJB4AADg5EQABAAAAJR4AADw5EQABAAAAJh4AAEA5EQABAAAAJx4AAEQ5EQABAAAAKB4AAEg5EQABAAAAKR4AAEw5EQABAAAAKh4AAFA5EQABAAAAKx4AAFQ5EQABAAAALB4AAFg5EQABAAAALR4AAFw5EQABAAAALh4AAGA5EQABAAAALx4AAGQ5EQABAAAAMB4AAGg5EQABAAAAMR4AAGw5EQABAAAAMh4AAHA5EQABAAAAMx4AAHQ5EQABAAAANB4AAHg5EQABAAAANR4AAHw5EQABAAAANh4AAIA5EQABAAAANx4AAIQ5EQABAAAAOB4AAIg5EQABAAAAOR4AAIw5EQABAAAAOh4AAJA5EQABAAAAOx4AAJQ5EQABAAAAPB4AAJg5EQABAAAAPR4AAJw5EQABAAAAPh4AAKA5EQABAAAAPx4AAKQ5EQABAAAAQB4AAKg5EQABAAAAQR4AAKw5EQABAAAAQh4AALA5EQABAAAAQx4AALQ5EQABAAAARB4AALg5EQABAAAARR4AALw5EQABAAAARh4AAMA5EQABAAAARx4AAMQ5EQABAAAASB4AAMg5EQABAAAASR4AAMw5EQABAAAASh4AANA5EQABAAAASx4AANQ5EQABAAAATB4AANg5EQABAAAATR4AANw5EQABAAAATh4AAOA5EQABAAAATx4AAOQ5EQABAAAAUB4AAOg5EQABAAAAUR4AAOw5EQABAAAAUh4AAPA5EQABAAAAUx4AAPQ5EQABAAAAVB4AAPg5EQABAAAAVR4AAPw5EQABAAAAVh4AAAA6EQABAAAAVx4AAAQ6EQABAAAAWB4AAAg6EQABAAAAWR4AAAw6EQABAAAAWh4AABA6EQABAAAAWx4AABQ6EQABAAAAXB4AABg6EQABAAAAXR4AABw6EQABAAAAXh4AACA6EQABAAAAXx4AACQ6EQABAAAAYB4AACg6EQACAAAAYR4AADA6EQACAAAAYh4AADg6EQABAAAAYx4AADw6EQABAAAAZB4AAEA6EQABAAAAZR4AAEQ6EQABAAAAZh4AAEg6EQABAAAAZx4AAEw6EQABAAAAaB4AAFA6EQABAAAAaR4AAFQ6EQABAAAAah4AAFg6EQABAAAAax4AAFw6EQABAAAAbB4AAGA6EQABAAAAbR4AAGQ6EQABAAAAbh4AAGg6EQABAAAAbx4AAGw6EQABAAAAcB4AAHA6EQABAAAAcR4AAHQ6EQABAAAAch4AAHg6EQABAAAAcx4AAHw6EQABAAAAdB4AAIA6EQABAAAAdR4AAIQ6EQABAAAAdh4AAIg6EQABAAAAdx4AAIw6EQABAAAAeB4AAJA6EQABAAAAeR4AAJQ6EQABAAAAeh4AAJg6EQABAAAAex4AAJw6EQABAAAAfB4AAKA6EQABAAAAfR4AAKQ6EQABAAAAfh4AAKg6EQABAAAAfx4AAKw6EQABAAAAgB4AALA6EQABAAAAgR4AALQ6EQABAAAAgh4AALg6EQABAAAAgx4AALw6EQABAAAAhB4AAMA6EQABAAAAhR4AAMQ6EQABAAAAhh4AAMg6EQABAAAAhx4AAMw6EQABAAAAiB4AANA6EQABAAAAiR4AANQ6EQABAAAAih4AANg6EQABAAAAix4AANw6EQABAAAAjB4AAOA6EQABAAAAjR4AAOQ6EQABAAAAjh4AAOg6EQABAAAAjx4AAOw6EQABAAAAkB4AAPA6EQABAAAAkR4AAPQ6EQABAAAAkh4AAPg6EQABAAAAkx4AAPw6EQABAAAAlB4AAAA7EQABAAAAlR4AAAQ7EQABAAAAmx4AAAg7EQACAAAAnh4AABA7EQABAAAAoB4AABQ7EQABAAAAoR4AABg7EQABAAAAoh4AABw7EQABAAAAox4AACA7EQABAAAApB4AACQ7EQABAAAApR4AACg7EQABAAAAph4AACw7EQABAAAApx4AADA7EQABAAAAqB4AADQ7EQABAAAAqR4AADg7EQABAAAAqh4AADw7EQABAAAAqx4AAEA7EQABAAAArB4AAEQ7EQABAAAArR4AAEg7EQABAAAArh4AAEw7EQABAAAArx4AAFA7EQABAAAAsB4AAFQ7EQABAAAAsR4AAFg7EQABAAAAsh4AAFw7EQABAAAAsx4AAGA7EQABAAAAtB4AAGQ7EQABAAAAtR4AAGg7EQABAAAAth4AAGw7EQABAAAAtx4AAHA7EQABAAAAuB4AAHQ7EQABAAAAuR4AAHg7EQABAAAAuh4AAHw7EQABAAAAux4AAIA7EQABAAAAvB4AAIQ7EQABAAAAvR4AAIg7EQABAAAAvh4AAIw7EQABAAAAvx4AAJA7EQABAAAAwB4AAJQ7EQABAAAAwR4AAJg7EQABAAAAwh4AAJw7EQABAAAAwx4AAKA7EQABAAAAxB4AAKQ7EQABAAAAxR4AAKg7EQABAAAAxh4AAKw7EQABAAAAxx4AALA7EQABAAAAyB4AALQ7EQABAAAAyR4AALg7EQABAAAAyh4AALw7EQABAAAAyx4AAMA7EQABAAAAzB4AAMQ7EQABAAAAzR4AAMg7EQABAAAAzh4AAMw7EQABAAAAzx4AANA7EQABAAAA0B4AANQ7EQABAAAA0R4AANg7EQABAAAA0h4AANw7EQABAAAA0x4AAOA7EQABAAAA1B4AAOQ7EQABAAAA1R4AAOg7EQABAAAA1h4AAOw7EQABAAAA1x4AAPA7EQABAAAA2B4AAPQ7EQABAAAA2R4AAPg7EQABAAAA2h4AAPw7EQABAAAA2x4AAAA8EQABAAAA3B4AAAQ8EQABAAAA3R4AAAg8EQABAAAA3h4AAAw8EQABAAAA3x4AABA8EQABAAAA4B4AABQ8EQABAAAA4R4AABg8EQABAAAA4h4AABw8EQABAAAA4x4AACA8EQABAAAA5B4AACQ8EQABAAAA5R4AACg8EQABAAAA5h4AACw8EQABAAAA5x4AADA8EQABAAAA6B4AADQ8EQABAAAA6R4AADg8EQABAAAA6h4AADw8EQABAAAA6x4AAEA8EQABAAAA7B4AAEQ8EQABAAAA7R4AAEg8EQABAAAA7h4AAEw8EQABAAAA7x4AAFA8EQABAAAA8B4AAFQ8EQABAAAA8R4AAFg8EQABAAAA8h4AAFw8EQABAAAA8x4AAGA8EQABAAAA9B4AAGQ8EQABAAAA9R4AAGg8EQABAAAA9h4AAGw8EQABAAAA9x4AAHA8EQABAAAA+B4AAHQ8EQABAAAA+R4AAHg8EQABAAAA+h4AAHw8EQABAAAA+x4AAIA8EQABAAAA/B4AAIQ8EQABAAAA/R4AAIg8EQABAAAA/h4AAIw8EQABAAAA/x4AAJA8EQABAAAAAB8AAJQ8EQABAAAAAR8AAJg8EQABAAAAAh8AAJw8EQABAAAAAx8AAKA8EQABAAAABB8AAKQ8EQABAAAABR8AAKg8EQABAAAABh8AAKw8EQABAAAABx8AALA8EQABAAAACB8AALQ8EQABAAAACR8AALg8EQABAAAACh8AALw8EQABAAAACx8AAMA8EQABAAAADB8AAMQ8EQABAAAADR8AAMg8EQABAAAADh8AAMw8EQABAAAADx8AANA8EQABAAAAEB8AANQ8EQABAAAAER8AANg8EQABAAAAEh8AANw8EQABAAAAEx8AAOA8EQABAAAAFB8AAOQ8EQABAAAAFR8AAOg8EQABAAAAGB8AAOw8EQABAAAAGR8AAPA8EQABAAAAGh8AAPQ8EQABAAAAGx8AAPg8EQABAAAAHB8AAPw8EQABAAAAHR8AAAA9EQABAAAAIB8AAAQ9EQABAAAAIR8AAAg9EQABAAAAIh8AAAw9EQABAAAAIx8AABA9EQABAAAAJB8AABQ9EQABAAAAJR8AABg9EQABAAAAJh8AABw9EQABAAAAJx8AACA9EQABAAAAKB8AACQ9EQABAAAAKR8AACg9EQABAAAAKh8AACw9EQABAAAAKx8AADA9EQABAAAALB8AADQ9EQABAAAALR8AADg9EQABAAAALh8AADw9EQABAAAALx8AAEA9EQABAAAAMB8AAEQ9EQABAAAAMR8AAEg9EQABAAAAMh8AAEw9EQABAAAAMx8AAFA9EQABAAAANB8AAFQ9EQABAAAANR8AAFg9EQABAAAANh8AAFw9EQABAAAANx8AAGA9EQABAAAAOB8AAGQ9EQABAAAAOR8AAGg9EQABAAAAOh8AAGw9EQABAAAAOx8AAHA9EQABAAAAPB8AAHQ9EQABAAAAPR8AAHg9EQABAAAAPh8AAHw9EQABAAAAPx8AAIA9EQABAAAAQB8AAIQ9EQABAAAAQR8AAIg9EQABAAAAQh8AAIw9EQABAAAAQx8AAJA9EQABAAAARB8AAJQ9EQABAAAARR8AAJg9EQABAAAASB8AAJw9EQABAAAASR8AAKA9EQABAAAASh8AAKQ9EQABAAAASx8AAKg9EQABAAAATB8AAKw9EQABAAAATR8AALA9EQABAAAAUR8AALQ9EQABAAAAUx8AALg9EQABAAAAVR8AALw9EQABAAAAVx8AAMA9EQABAAAAWR8AAMQ9EQABAAAAWx8AAMg9EQABAAAAXR8AAMw9EQABAAAAXx8AANA9EQABAAAAYB8AANQ9EQABAAAAYR8AANg9EQABAAAAYh8AANw9EQABAAAAYx8AAOA9EQABAAAAZB8AAOQ9EQABAAAAZR8AAOg9EQABAAAAZh8AAOw9EQABAAAAZx8AAPA9EQABAAAAaB8AAPQ9EQABAAAAaR8AAPg9EQABAAAAah8AAPw9EQABAAAAax8AAAA+EQABAAAAbB8AAAQ+EQABAAAAbR8AAAg+EQABAAAAbh8AAAw+EQABAAAAbx8AABA+EQABAAAAcB8AABQ+EQABAAAAcR8AABg+EQABAAAAch8AABw+EQABAAAAcx8AACA+EQABAAAAdB8AACQ+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EQABAAAAySQAAJRAEQABAAAAyiQAAJhAEQABAAAAyyQAAJxAEQABAAAAzCQAAKBAEQABAAAAzSQAAKRAEQABAAAAziQAAKhAEQABAAAAzyQAAKxAEQABAAAA0CQAALBAEQABAAAA0SQAALRAEQABAAAA0iQAALhAEQABAAAA0yQAALxAEQABAAAA1CQAAMBAEQABAAAA1SQAAMRAEQABAAAA1iQAAMhAEQABAAAA1yQAAMxAEQABAAAA2CQAANBAEQABAAAA2SQAANRAEQABAAAA2iQAANhAEQABAAAA2yQAANxAEQABAAAA3CQAAOBAEQABAAAA3SQAAORAEQABAAAA3iQAAOhAEQABAAAA3yQAAOxAEQABAAAA4CQAAPBAEQABAAAA4SQAAPRAEQABAAAA4iQAAPhAEQABAAAA4yQAAPxAEQABAAAA5CQAAABBEQABAAAA5SQAAARBEQABAAAA5iQAAAhBEQABAAAA5yQAAAxBEQABAAAA6CQAABBBEQABAAAA6SQAABRBEQABAAAAACwAABhBEQABAAAAASwAABxBEQABAAAAAiwAACBBEQABAAAAAywAACRBEQABAAAABCwAAChBEQABAAAABSwAACxBEQABAAAABiwAADBBEQABAAAABywAADRBEQABAAAACCwAADhBEQABAAAACSwAADxBEQABAAAACiwAAEBBEQABAAAACywAAERBEQABAAAADCwAAEhBEQABAAAADSwAAExBEQABAAAADiwAAFBBEQABAAAADywAAFRBEQABAAAAECwAAFhBEQABAAAAESwAAFxBEQABAAAAEiwAAGBBEQABAAAAEywAAGRBEQABAAAAFCwAAGhBEQABAAAAFSwAAGxBEQABAAAAFiwAAHBBEQABAAAAFywAAHRBEQABAAAAGCwAAHhBEQABAAAAGSwAAHxBEQABAAAAGiwAAIBBEQABAAAAGywAAIRBEQABAAAAHCwAAIhBEQABAAAAHSwAAIxBEQABAAAAHiwAAJBBEQABAAAAHywAAJRBEQABAAAAICwAAJhBEQABAAAAISwAAJxBEQABAAAAIiwAAKBBEQABAAAAIywAAKRBEQABAAAAJCwAAKhBEQABAAAAJSwAAKxBEQABAAAAJiwAALBBEQABAAAAJywAALRBEQABAAAAKCwAALhBEQABAAAAKSwAALxBEQABAAAAKiwAAMBBEQABAAAAKywAAMRBEQABAAAALCwAAMhBEQABAAAALSwAAMxBEQABAAAALiwAANBBEQABAAAALywAANRBEQABAAAAMCwAANhBEQABAAAAMSwAANxBEQABAAAAMiwAAOBBEQABAAAAMywAAORBEQABAAAANCwAAOhBEQABAAAANSwAAOxBEQABAAAANiwAAPBBEQABAAAANywAAPRBEQABAAAAOCwAAPhBEQABAAAAOSwAAPxBEQABAAAAOiwAAABCEQABAAAAOywAAARCEQABAAAAPCwAAAhCEQABAAAAPSwAAAxCEQABAAAAPiwAABBCEQABAAAAPywAABRCEQABAAAAQCwAABhCEQABAAAAQSwAABxCEQABAAAAQiwAACBCEQABAAAAQywAACRCEQABAAAARCwAAChCEQABAAAARSwAACxCEQABAAAARiwAADBCEQABAAAARywAADRCEQABAAAASCwAADhCEQABAAAASSwAADxCEQABAAAASiwAAEBCEQABAAAASywAAERCEQABAAAATCwAAEhCEQABAAAATSwAAExCEQABAAAATiwAAFBCEQABAAAATywAAFRCEQABAAAAUCwAAFhCEQABAAAAUSwAAFxCEQABAAAAUiwAAGBCEQABAAAAUywAAGRCEQABAAAAVCwAAGhCEQABAAAAVSwAAGxCEQABAAAAViwAAHBCEQABAAAAVywAAHRCEQABAAAAWCwAAHhCEQABAAAAWSwAAHxCEQABAAAAWiwAAIBCEQABAAAAWywAAIRCEQABAAAAXCwAAIhCEQABAAAAXSwAAIxCEQABAAAAXiwAAJBCEQABAAAAXywAAJRCEQABAAAAYCwAAJhCEQABAAAAYSwAAJxCEQABAAAAYiwAAKBCEQABAAAAYywAAKRCEQABAAAAZCwAAKhCEQABAAAAZSwAAKxCEQABAAAAZiwAALBCEQABAAAAZywAALRCEQABAAAAaCwAALhCEQABAAAAaSwAALxCEQABAAAAaiwAAMBCEQABAAAAaywAAMRCEQABAAAAbCwAAMhCEQABAAAAbSwAAMxCEQABAAAAbiwAANBCEQABAAAAbywAANRCEQABAAAAcCwAANhCEQABAAAAciwAANxCEQABAAAAcywAAOBCEQABAAAAdSwAAORCEQABAAAAdiwAAOhCEQABAAAAfiwAAOxCEQABAAAAfywAAPBCEQABAAAAgCwAAPRCEQABAAAAgSwAAPhCEQABAAAAgiwAAPxCEQABAAAAgywAAABDEQABAAAAhCwAAARDEQABAAAAhSwAAAhDEQABAAAAhiwAAAxDEQABAAAAhywAABBDEQABAAAAiCwAABRDEQABAAAAiSwAABhDEQABAAAAiiwAABxDEQABAAAAiywAACBDEQABAAAAjCwAACRDEQABAAAAjSwAAChDEQABAAAAjiwAACxDEQABAAAAjywAADBDEQABAAAAkCwAADRDEQABAAAAkSwAADhDEQABAAAAkiwAADxDEQABAAAAkywAAEBDEQABAAAAlCwAAERDEQABAAAAlSwAAEhDEQABAAAAliwAAExDEQABAAAAlywAAFBDEQABAAAAmCwAAFRDEQABAAAAmSwAAFhDEQABAAAAmiwAAFxDEQABAAAAmywAAGBDEQABAAAAnCwAAGRDEQABAAAAnSwAAGhDEQABAAAAniwAAGxDEQABAAAAnywAAHBDEQABAAAAoCwAAHRDEQABAAAAoSwAAHhDEQABAAAAoiwAAHxDEQABAAAAoywAAIBDEQABAAAApCwAAIRDEQABAAAApSwAAIhDEQABAAAApiwAAIxDEQABAAAApywAAJBDEQABAAAAqCwAAJRDEQABAAAAqSwAAJhDEQABAAAAqiwAAJxDEQABAAAAqywAAKBDEQABAAAArCwAAKRDEQABAAAArSwAAKhDEQABAAAAriwAAKxDEQABAAAArywAALBDEQABAAAAsCwAALRDEQABAAAAsSwAALhDEQABAAAAsiwAALxDEQABAAAAsywAAMBDEQABAAAAtCwAAMRDEQABAAAAtSwAAMhDEQABAAAAtiwAAMxDEQABAAAAtywAANBDEQABAAAAuCwAANRDEQABAAAAuSwAANhDEQABAAAAuiwAANxDEQABAAAAuywAAOBDEQABAAAAvCwAAORDEQABAAAAvSwAAOhDEQABAAAAviwAAOxDEQABAAAAvywAAPBDEQABAAAAwCwAAPRDEQABAAAAwSwAAPhDEQABAAAAwiwAAPxDEQABAAAAwywAAABEEQABAAAAxCwAAAREEQABAAAAxSwAAAhEEQABAAAAxiwAAAxEEQABAAAAxywAABBEEQABAAAAyCwAABREEQABAAAAySwAABhEEQABAAAAyiwAABxEEQABAAAAyywAACBEEQABAAAAzCwAACREEQABAAAAzSwAAChEEQABAAAAziwAACxEEQABAAAAzywAADBEEQABAAAA0CwAADREEQABAAAA0SwAADhEEQABAAAA0iwAADxEEQABAAAA0ywAAEBEEQABAAAA1CwAAEREEQABAAAA1SwAAEhEEQABAAAA1iwAAExEEQABAAAA1ywAAFBEEQABAAAA2CwAAFREEQABAAAA2SwAAFhEEQABAAAA2iwAAFxEEQABAAAA2ywAAGBEEQABAAAA3CwAAGREEQABAAAA3SwAAGhEEQABAAAA3iwAAGxEEQABAAAA3ywAAHBEEQABAAAA4CwAAHREEQABAAAA4SwAAHhEEQABAAAA4iwAAHxEEQABAAAA4ywAAIBEEQABAAAA6ywAAIREEQABAAAA7CwAAIhEEQABAAAA7SwAAIxEEQABAAAA7iwAAJBEEQABAAAA8iwAAJREEQABAAAA8ywAAJhEEQABAAAAAC0AAJxEEQABAAAAAS0AAKBEEQABAAAAAi0AAKREEQABAAAAAy0AAKhEEQABAAAABC0AAKxEEQABAAAABS0AALBEEQABAAAABi0AALREEQABAAAABy0AALhEEQABAAAACC0AALxEEQABAAAACS0AAMBEEQABAAAACi0AAMREEQABAAAACy0AAMhEEQABAAAADC0AAMxEEQABAAAADS0AANBEEQABAAAADi0AANREEQABAAAADy0AANhEEQABAAAAEC0AANxEEQABAAAAES0AAOBEEQABAAAAEi0AAOREEQABAAAAEy0AAOhEEQABAAAAFC0AAOxEEQABAAAAFS0AAPBEEQABAAAAFi0AAPREEQABAAAAFy0AAPhEEQABAAAAGC0AAPxEEQABAAAAGS0AAABFEQABAAAAGi0AAARFEQABAAAAGy0AAAhFEQABAAAAHC0AAAxFEQABAAAAHS0AABBFEQABAAAAHi0AABRFEQABAAAAHy0AABhFEQABAAAAIC0AABxFEQABAAAAIS0AACBFEQABAAAAIi0AACRFEQABAAAAIy0AAChFEQABAAAAJC0AACxFEQABAAAAJS0AADBFEQABAAAAJy0AADRFEQABAAAALS0AADhFEQABAAAAQKYAADxFEQABAAAAQaYAAEBFEQABAAAAQqYAAERFEQABAAAAQ6YAAEhFEQABAAAARKYAAExFEQABAAAARaYAAFBFEQABAAAARqYAAFRFEQABAAAAR6YAAFhFEQABAAAASKYAAFxFEQABAAAASaYAAGBFEQABAAAASqYAAGRFEQACAAAAS6YAAGxFEQACAAAATKYAAHRFEQABAAAATaYAAHhFEQABAAAATqYAAHxFEQABAAAAT6YAAIBFEQABAAAAUKYAAIRFEQABAAAAUaYAAIhFEQABAAAAUqYAAIxFEQABAAAAU6YAAJBFEQABAAAAVKYAAJRFEQABAAAAVaYAAJhFEQABAAAAVqYAAJxFEQABAAAAV6YAAKBFEQABAAAAWKYAAKRFEQABAAAAWaYAAKhFEQABAAAAWqYAAKxFEQABAAAAW6YAALBFEQABAAAAXKYAALRFEQABAAAAXaYAALhFEQABAAAAXqYAALxFEQABAAAAX6YAAMBFEQABAAAAYKYAAMRFEQABAAAAYaYAAMhFEQABAAAAYqYAAMxFEQABAAAAY6YAANBFEQABAAAAZKYAANRFEQABAAAAZaYAANhFEQABAAAAZqYAANxFEQABAAAAZ6YAAOBFEQABAAAAaKYAAORFEQABAAAAaaYAAOhFEQABAAAAaqYAAOxFEQABAAAAa6YAAPBFEQABAAAAbKYAAPRFEQABAAAAbaYAAPhFEQABAAAAgKYAAPxFEQABAAAAgaYAAABGEQABAAAAgqYAAARGEQABAAAAg6YAAAhGEQABAAAAhKYAAAxGEQABAAAAhaYAABBGEQABAAAAhqYAABRGEQABAAAAh6YAABhGEQABAAAAiKYAABxGEQABAAAAiaYAACBGEQABAAAAiqYAACRGEQABAAAAi6YAAChGEQABAAAAjKYAACxGEQABAAAAjaYAADBGEQABAAAAjqYAADRGEQABAAAAj6YAADhGEQABAAAAkKYAADxGEQABAAAAkaYAAEBGEQABAAAAkqYAAERGEQABAAAAk6YAAEhGEQABAAAAlKYAAExGEQABAAAAlaYAAFBGEQABAAAAlqYAAFRGEQABAAAAl6YAAFhGEQABAAAAmKYAAFxGEQABAAAAmaYAAGBGEQABAAAAmqYAAGRGEQABAAAAm6YAAGhGEQABAAAAIqcAAGxGEQABAAAAI6cAAHBGEQABAAAAJKcAAHRGEQABAAAAJacAAHhGEQABAAAAJqcAAHxGEQABAAAAJ6cAAIBGEQABAAAAKKcAAIRGEQABAAAAKacAAIhGEQABAAAAKqcAAIxGEQABAAAAK6cAAJBGEQABAAAALKcAAJRGEQABAAAALacAAJhGEQABAAAALqcAAJxGEQABAAAAL6cAAKBGEQABAAAAMqcAAKRGEQABAAAAM6cAAKhGEQABAAAANKcAAKxGEQABAAAANacAALBGEQABAAAANqcAALRGEQABAAAAN6cAALhGEQABAAAAOKcAALxGEQABAAAAOacAAMBGEQABAAAAOqcAAMRGEQABAAAAO6cAAMhGEQABAAAAPKcAAMxGEQABAAAAPacAANBGEQABAAAAPqcAANRGEQABAAAAP6cAANhGEQABAAAAQKcAANxGEQABAAAAQacAAOBGEQABAAAAQqcAAORGEQABAAAAQ6cAAOhGEQABAAAARKcAAOxGEQABAAAARacAAPBGEQABAAAARqcAAPRGEQABAAAAR6cAAPhGEQABAAAASKcAAPxGEQABAAAASacAAABHEQABAAAASqcAAARHEQABAAAAS6cAAAhHEQABAAAATKcAAAxHEQABAAAATacAABBHEQABAAAATqcAABRHEQABAAAAT6cAABhHEQABAAAAUKcAABxHEQABAAAAUacAACBHEQABAAAAUqcAACRHEQABAAAAU6cAAChHEQABAAAAVKcAACxHEQABAAAAVacAADBHEQABAAAAVqcAADRHEQABAAAAV6cAADhHEQABAAAAWKcAADxHEQABAAAAWacAAEBHEQABAAAAWqcAAERHEQABAAAAW6cAAEhHEQABAAAAXKcAAExHEQABAAAAXacAAFBHEQABAAAAXqcAAFRHEQABAAAAX6cAAFhHEQABAAAAYKcAAFxHEQABAAAAYacAAGBHEQABAAAAYqcAAGRHEQABAAAAY6cAAGhHEQABAAAAZKcAAGxHEQABAAAAZacAAHBHEQABAAAAZqcAAHRHEQABAAAAZ6cAAHhHEQABAAAAaKcAAHxHEQABAAAAaacAAIBHEQABAAAAaqcAAIRHEQABAAAAa6cAAIhHEQABAAAAbKcAAIxHEQABAAAAbacAAJBHEQABAAAAbqcAAJRHEQABAAAAb6cAAJhHEQABAAAAeacAAJxHEQABAAAAeqcAAKBHEQABAAAAe6cAAKRHEQABAAAAfKcAAKhHEQABAAAAfacAAKxHEQABAAAAfqcAALBHEQABAAAAf6cAALRHEQABAAAAgKcAALhHEQABAAAAgacAALxHEQABAAAAgqcAAMBHEQABAAAAg6cAAMRHEQABAAAAhKcAAMhHEQABAAAAhacAAMxHEQABAAAAhqcAANBHEQABAAAAh6cAANRHEQABAAAAi6cAANhHEQABAAAAjKcAANxHEQABAAAAjacAAOBHEQABAAAAkKcAAORHEQABAAAAkacAAOhHEQABAAAAkqcAAOxHEQABAAAAk6cAAPBHEQABAAAAlKcAAPRHEQABAAAAlqcAAPhHEQABAAAAl6cAAPxHEQABAAAAmKcAAABIEQABAAAAmacAAARIEQABAAAAmqcAAAhIEQABAAAAm6cAAAxIEQABAAAAnKcAABBIEQABAAAAnacAABRIEQABAAAAnqcAABhIEQABAAAAn6cAABxIEQABAAAAoKcAACBIEQABAAAAoacAACRIEQABAAAAoqcAAChIEQABAAAAo6cAACxIEQABAAAApKcAADBIEQABAAAApacAADRIEQABAAAApqcAADhIEQABAAAAp6cAADxIEQABAAAAqKcAAEBIEQABAAAAqacAAERIEQABAAAAqqcAAEhIEQABAAAAq6cAAExIEQABAAAArKcAAFBIEQABAAAAracAAFRIEQABAAAArqcAAFhIEQABAAAAsKcAAFxIEQABAAAAsacAAGBIEQABAAAAsqcAAGRIEQABAAAAs6cAAGhIEQABAAAAtKcAAGxIEQABAAAAtacAAHBIEQABAAAAtqcAAHRIEQABAAAAt6cAAHhIEQABAAAAuKcAAHxIEQABAAAAuacAAIBIEQABAAAAuqcAAIRIEQABAAAAu6cAAIhIEQABAAAAvKcAAIxIEQABAAAAvacAAJBIEQABAAAAvqcAAJRIEQABAAAAv6cAAJhIEQABAAAAwKcAAJxIEQABAAAAwacAAKBIEQABAAAAwqcAAKRIEQABAAAAw6cAAKhIEQABAAAAxKcAAKxIEQABAAAAxacAALBIEQABAAAAxqcAALRIEQABAAAAx6cAALhIEQABAAAAyKcAALxIEQABAAAAyacAAMBIEQABAAAAyqcAAMRIEQABAAAA0KcAAMhIEQABAAAA0acAAMxIEQABAAAA1qcAANBIEQABAAAA16cAANRIEQABAAAA2KcAANhIEQABAAAA2acAANxIEQABAAAA9acAAOBIEQABAAAA9qcAAORIEQABAAAAU6sAAOhIEQABAAAAcKsAAOxIEQABAAAAcasAAPBIEQABAAAAcqsAAPRIEQABAAAAc6sAAPhIEQABAAAAdKsAAPxIEQABAAAAdasAAABJEQABAAAAdqsAAARJEQABAAAAd6sAAAhJEQABAAAAeKsAAAxJEQABAAAAeasAABBJEQABAAAAeqsAABRJEQABAAAAe6sAABhJEQABAAAAfKsAABxJEQABAAAAfasAACBJEQABAAAAfqsAACRJEQABAAAAf6sAAChJEQABAAAAgKsAACxJEQABAAAAgasAADBJEQABAAAAgqsAADRJEQABAAAAg6sAADhJEQABAAAAhKsAADxJEQABAAAAhasAAEBJEQABAAAAhqsAAERJEQABAAAAh6sAAEhJEQABAAAAiKsAAExJEQABAAAAiasAAFBJEQABAAAAiqsAAFRJEQABAAAAi6sAAFhJEQABAAAAjKsAAFxJEQABAAAAjasAAGBJEQABAAAAjqsAAGRJEQABAAAAj6sAAGhJEQABAAAAkKsAAGxJEQABAAAAkasAAHBJEQABAAAAkqsAAHRJEQABAAAAk6sAAHhJEQABAAAAlKsAAHxJEQABAAAAlasAAIBJEQABAAAAlqsAAIRJEQABAAAAl6sAAIhJEQABAAAAmKsAAIxJEQABAAAAmasAAJBJEQABAAAAmqsAAJRJEQABAAAAm6sAAJhJEQABAAAAnKsAAJxJEQABAAAAnasAAKBJEQABAAAAnqsAAKRJEQABAAAAn6sAAKhJEQABAAAAoKsAAKxJEQABAAAAoasAALBJEQABAAAAoqsAALRJEQABAAAAo6sAALhJEQABAAAApKsAALxJEQABAAAApasAAMBJEQABAAAApqsAAMRJEQABAAAAp6sAAMhJEQABAAAAqKsAAMxJEQABAAAAqasAANBJEQABAAAAqqsAANRJEQABAAAAq6sAANhJEQABAAAArKsAANxJEQABAAAArasAAOBJEQABAAAArqsAAORJEQABAAAAr6sAAOhJEQABAAAAsKsAAOxJEQABAAAAsasAAPBJEQABAAAAsqsAAPRJEQABAAAAs6sAAPhJEQABAAAAtKsAAPxJEQABAAAAtasAAABKEQABAAAAtqsAAARKEQABAAAAt6sAAAhKEQABAAAAuKsAAAxKEQABAAAAuasAABBKEQABAAAAuqsAABRKEQABAAAAu6sAABhKEQABAAAAvKsAABxKEQABAAAAvasAACBKEQABAAAAvqsAACRKEQABAAAAv6sAAChKEQABAAAAIf8AACxKEQABAAAAIv8AADBKEQABAAAAI/8AADRKEQABAAAAJP8AADhKEQABAAAAJf8AADxKEQABAAAAJv8AAEBKEQABAAAAJ/8AAERKEQABAAAAKP8AAEhKEQABAAAAKf8AAExKEQABAAAAKv8AAFBKEQABAAAAK/8AAFRKEQABAAAALP8AAFhKEQABAAAALf8AAFxKEQABAAAALv8AAGBKEQABAAAAL/8AAGRKEQABAAAAMP8AAGhKEQABAAAAMf8AAGxKEQABAAAAMv8AAHBKEQABAAAAM/8AAHRKEQABAAAANP8AAHhKEQABAAAANf8AAHxKEQABAAAANv8AAIBKEQABAAAAN/8AAIRKEQABAAAAOP8AAIhKEQABAAAAOf8AAIxKEQABAAAAOv8AAJBKEQABAAAAQf8AAJRKEQABAAAAQv8AAJhKEQABAAAAQ/8AAJxKEQABAAAARP8AAKBKEQABAAAARf8AAKRKEQABAAAARv8AAKhKEQABAAAAR/8AAKxKEQABAAAASP8AALBKEQABAAAASf8AALRKEQABAAAASv8AALhKEQABAAAAS/8AALxKEQABAAAATP8AAMBKEQABAAAATf8AAMRKEQABAAAATv8AAMhKEQABAAAAT/8AAMxKEQABAAAAUP8AANBKEQABAAAAUf8AANRKEQABAAAAUv8AANhKEQABAAAAU/8AANxKEQABAAAAVP8AAOBKEQABAAAAVf8AAORKEQABAAAAVv8AAOhKEQABAAAAV/8AAOxKEQABAAAAWP8AAPBKEQABAAAAWf8AAPRKEQABAAAAWv8AAPhKEQABAAAAAAQBAPxKEQABAAAAAQQBAABLEQABAAAAAgQBAARLEQABAAAAAwQBAAhLEQABAAAABAQBAAxLEQABAAAABQQBABBLEQABAAAABgQBABRLEQABAAAABwQBABhLEQABAAAACAQBABxLEQABAAAACQQBACBLEQABAAAACgQBACRLEQABAAAACwQBAChLEQABAAAADAQBACxLEQABAAAADQQBADBLEQABAAAADgQBADRLEQABAAAADwQBADhLEQABAAAAEAQBADxLEQABAAAAEQQBAEBLEQABAAAAEgQBAERLEQABAAAAEwQBAEhLEQABAAAAFAQBAExLEQABAAAAFQQBAFBLEQABAAAAFgQBAFRLEQABAAAAFwQBAFhLEQABAAAAGAQBAFxLEQABAAAAGQQBAGBLEQABAAAAGgQBAGRLEQABAAAAGwQBAGhLEQABAAAAHAQBAGxLEQABAAAAHQQBAHBLEQABAAAAHgQBAHRLEQABAAAAHwQBAHhLEQABAAAAIAQBAHxLEQABAAAAIQQBAIBLEQABAAAAIgQBAIRLEQABAAAAIwQBAIhLEQABAAAAJAQBAIxLEQABAAAAJQQBAJBLEQABAAAAJgQBAJRLEQABAAAAJwQBAJhLEQABAAAAKAQBAJxLEQABAAAAKQQBAKBLEQABAAAAKgQBAKRLEQABAAAAKwQBAKhLEQABAAAALAQBAKxLEQABAAAALQQBALBLEQABAAAALgQBALRLEQABAAAALwQBALhLEQABAAAAMAQBALxLEQABAAAAMQQBAMBLEQABAAAAMgQBAMRLEQABAAAAMwQBAMhLEQABAAAANAQBAMxLEQABAAAANQQBANBLEQABAAAANgQBANRLEQABAAAANwQBANhLEQABAAAAOAQBANxLEQABAAAAOQQBAOBLEQABAAAAOgQBAORLEQABAAAAOwQBAOhLEQABAAAAPAQBAOxLEQABAAAAPQQBAPBLEQABAAAAPgQBAPRLEQABAAAAPwQBAPhLEQABAAAAQAQBAPxLEQABAAAAQQQBAABMEQABAAAAQgQBAARMEQABAAAAQwQBAAhMEQABAAAARAQBAAxMEQABAAAARQQBABBMEQABAAAARgQBABRMEQABAAAARwQBABhMEQABAAAASAQBABxMEQABAAAASQQBACBMEQABAAAASgQBACRMEQABAAAASwQBAChMEQABAAAATAQBACxMEQABAAAATQQBADBMEQABAAAATgQBADRMEQABAAAATwQBADhMEQABAAAAsAQBADxMEQABAAAAsQQBAEBMEQABAAAAsgQBAERMEQABAAAAswQBAEhMEQABAAAAtAQBAExMEQABAAAAtQQBAFBMEQABAAAAtgQBAFRMEQABAAAAtwQBAFhMEQABAAAAuAQBAFxMEQABAAAAuQQBAGBMEQABAAAAugQBAGRMEQABAAAAuwQBAGhMEQABAAAAvAQBAGxMEQABAAAAvQQBAHBMEQABAAAAvgQBAHRMEQABAAAAvwQBAHhMEQABAAAAwAQBAHxMEQABAAAAwQQBAIBMEQABAAAAwgQBAIRMEQABAAAAwwQBAIhMEQABAAAAxAQBAIxMEQABAAAAxQQBAJBMEQABAAAAxgQBAJRMEQABAAAAxwQBAJhMEQABAAAAyAQBAJxMEQABAAAAyQQBAKBMEQABAAAAygQBAKRMEQABAAAAywQBAKhMEQABAAAAzAQBAKxMEQABAAAAzQQBALBMEQABAAAAzgQBALRMEQABAAAAzwQBALhMEQABAAAA0AQBALxMEQABAAAA0QQBAMBMEQABAAAA0gQBAMRMEQABAAAA0wQBAMhMEQABAAAA2AQBAMxMEQABAAAA2QQBANBMEQABAAAA2gQBANRMEQABAAAA2wQBANhMEQABAAAA3AQBANxMEQABAAAA3QQBAOBMEQABAAAA3gQBAORMEQABAAAA3wQBAOhMEQABAAAA4AQBAOxMEQABAAAA4QQBAPBMEQABAAAA4gQBAPRMEQABAAAA4wQBAPhMEQABAAAA5AQBAPxMEQABAAAA5QQBAABNEQABAAAA5gQBAARNEQABAAAA5wQBAAhNEQABAAAA6AQBAAxNEQABAAAA6QQBABBNEQABAAAA6gQBABRNEQABAAAA6wQBABhNEQABAAAA7AQBABxNEQABAAAA7QQBACBNEQABAAAA7gQBACRNEQABAAAA7wQBAChNEQABAAAA8AQBACxNEQABAAAA8QQBADBNEQABAAAA8gQBADRNEQABAAAA8wQBADhNEQABAAAA9AQBADxNEQABAAAA9QQBAEBNEQABAAAA9gQBAERNEQABAAAA9wQBAEhNEQABAAAA+AQBAExNEQABAAAA+QQBAFBNEQABAAAA+gQBAFRNEQABAAAA+wQBAFhNEQABAAAAcAUBAFxNEQABAAAAcQUBAGBNEQABAAAAcgUBAGRNEQABAAAAcwUBAGhNEQABAAAAdAUBAGxNEQABAAAAdQUBAHBNEQABAAAAdgUBAHRNEQABAAAAdwUBAHhNEQABAAAAeAUBAHxNEQABAAAAeQUBAIBNEQABAAAAegUBAIRNEQABAAAAfAUBAIhNEQABAAAAfQUBAIxNEQABAAAAfgUBAJBNEQABAAAAfwUBAJRNEQABAAAAgAUBAJhNEQABAAAAgQUBAJxNEQABAAAAggUBAKBNEQABAAAAgwUBAKRNEQABAAAAhAUBAKhNEQABAAAAhQUBAKxNEQABAAAAhgUBALBNEQABAAAAhwUBALRNEQABAAAAiAUBALhNEQABAAAAiQUBALxNEQABAAAAigUBAMBNEQABAAAAjAUBAMRNEQABAAAAjQUBAMhNEQABAAAAjgUBAMxNEQABAAAAjwUBANBNEQABAAAAkAUBANRNEQABAAAAkQUBANhNEQABAAAAkgUBANxNEQABAAAAlAUBAOBNEQABAAAAlQUBAORNEQABAAAAlwUBAOhNEQABAAAAmAUBAOxNEQABAAAAmQUBAPBNEQABAAAAmgUBAPRNEQABAAAAmwUBAPhNEQABAAAAnAUBAPxNEQABAAAAnQUBAABOEQABAAAAngUBAAROEQABAAAAnwUBAAhOEQABAAAAoAUBAAxOEQABAAAAoQUBABBOEQABAAAAowUBABROEQABAAAApAUBABhOEQABAAAApQUBABxOEQABAAAApgUBACBOEQABAAAApwUBACROEQABAAAAqAUBAChOEQABAAAAqQUBACxOEQABAAAAqgUBADBOEQABAAAAqwUBADROEQABAAAArAUBADhOEQABAAAArQUBADxOEQABAAAArgUBAEBOEQABAAAArwUBAEROEQABAAAAsAUBAEhOEQABAAAAsQUBAExOEQABAAAAswUBAFBOEQABAAAAtAUBAFROEQABAAAAtQUBAFhOEQABAAAAtgUBAFxOEQABAAAAtwUBAGBOEQABAAAAuAUBAGROEQABAAAAuQUBAGhOEQABAAAAuwUBAGxOEQABAAAAvAUBAHBOEQABAAAAgAwBAHROEQABAAAAgQwBAHhOEQABAAAAggwBAHxOEQABAAAAgwwBAIBOEQABAAAAhAwBAIROEQABAAAAhQwBAIhOEQABAAAAhgwBAIxOEQABAAAAhwwBAJBOEQABAAAAiAwBAJROEQABAAAAiQwBAJhOEQABAAAAigwBAJxOEQABAAAAiwwBAKBOEQABAAAAjAwBAKROEQABAAAAjQwBAKhOEQABAAAAjgwBAKxOEQABAAAAjwwBALBOEQABAAAAkAwBALROEQABAAAAkQwBALhOEQABAAAAkgwBALxOEQABAAAAkwwBAMBOEQABAAAAlAwBAMROEQABAAAAlQwBAMhOEQABAAAAlgwBAMxOEQABAAAAlwwBANBOEQABAAAAmAwBANROEQABAAAAmQwBANhOEQABAAAAmgwBANxOEQABAAAAmwwBAOBOEQABAAAAnAwBAOROEQABAAAAnQwBAOhOEQABAAAAngwBAOxOEQABAAAAnwwBAPBOEQABAAAAoAwBAPROEQABAAAAoQwBAPhOEQABAAAAogwBAPxOEQABAAAAowwBAABPEQABAAAApAwBAARPEQABAAAApQwBAAhPEQABAAAApgwBAAxPEQABAAAApwwBABBPEQABAAAAqAwBABRPEQABAAAAqQwBABhPEQABAAAAqgwBABxPEQABAAAAqwwBACBPEQABAAAArAwBACRPEQABAAAArQwBAChPEQABAAAArgwBACxPEQABAAAArwwBADBPEQABAAAAsAwBADRPEQABAAAAsQwBADhPEQABAAAAsgwBADxPEQABAAAAwAwBAEBPEQABAAAAwQwBAERPEQABAAAAwgwBAEhPEQABAAAAwwwBAExPEQABAAAAxAwBAFBPEQABAAAAxQwBAFRPEQABAAAAxgwBAFhPEQABAAAAxwwBAFxPEQABAAAAyAwBAGBPEQABAAAAyQwBAGRPEQABAAAAygwBAGhPEQABAAAAywwBAGxPEQABAAAAzAwBAHBPEQABAAAAzQwBAHRPEQABAAAAzgwBAHhPEQABAAAAzwwBAHxPEQABAAAA0AwBAIBPEQABAAAA0QwBAIRPEQABAAAA0gwBAIhPEQABAAAA0wwBAIxPEQABAAAA1AwBAJBPEQABAAAA1QwBAJRPEQABAAAA1gwBAJhPEQABAAAA1wwBAJxPEQABAAAA2AwBAKBPEQABAAAA2QwBAKRPEQABAAAA2gwBAKhPEQABAAAA2wwBAKxPEQABAAAA3AwBALBPEQABAAAA3QwBALRPEQABAAAA3gwBALhPEQABAAAA3wwBALxPEQABAAAA4AwBAMBPEQABAAAA4QwBAMRPEQABAAAA4gwBAMhPEQABAAAA4wwBAMxPEQABAAAA5AwBANBPEQABAAAA5QwBANRPEQABAAAA5gwBANhPEQABAAAA5wwBANxPEQABAAAA6AwBAOBPEQABAAAA6QwBAORPEQABAAAA6gwBAOhPEQABAAAA6wwBAOxPEQABAAAA7AwBAPBPEQABAAAA7QwBAPRPEQABAAAA7gwBAPhPEQABAAAA7wwBAPxPEQABAAAA8AwBAABQEQABAAAA8QwBAARQEQABAAAA8gwBAAhQEQABAAAAoBgBAAxQEQABAAAAoRgBABBQEQABAAAAohgBABRQEQABAAAAoxgBABhQEQABAAAApBgBABxQEQABAAAApRgBACBQEQABAAAAphgBACRQEQABAAAApxgBAChQEQABAAAAqBgBACxQEQABAAAAqRgBADBQEQABAAAAqhgBADRQEQABAAAAqxgBADhQEQABAAAArBgBADxQEQABAAAArRgBAEBQEQABAAAArhgBAERQEQABAAAArxgBAEhQEQABAAAAsBgBAExQEQABAAAAsRgBAFBQEQABAAAAshgBAFRQEQABAAAAsxgBAFhQEQABAAAAtBgBAFxQEQABAAAAtRgBAGBQEQABAAAAthgBAGRQEQABAAAAtxgBAGhQEQABAAAAuBgBAGxQEQABAAAAuRgBAHBQEQABAAAAuhgBAHRQEQABAAAAuxgBAHhQEQABAAAAvBgBAHxQEQABAAAAvRgBAIBQEQABAAAAvhgBAIRQEQABAAAAvxgBAIhQEQABAAAAwBgBAIxQEQABAAAAwRgBAJBQEQABAAAAwhgBAJRQEQABAAAAwxgBAJhQEQABAAAAxBgBAJxQEQABAAAAxRgBAKBQEQABAAAAxhgBAKRQEQABAAAAxxgBAKhQEQABAAAAyBgBAKxQEQABAAAAyRgBALBQEQABAAAAyhgBALRQEQABAAAAyxgBALhQEQABAAAAzBgBALxQEQABAAAAzRgBAMBQEQABAAAAzhgBAMRQEQABAAAAzxgBAMhQEQABAAAA0BgBAMxQEQABAAAA0RgBANBQEQABAAAA0hgBANRQEQABAAAA0xgBANhQEQABAAAA1BgBANxQEQABAAAA1RgBAOBQEQABAAAA1hgBAORQEQABAAAA1xgBAOhQEQABAAAA2BgBAOxQEQABAAAA2RgBAPBQEQABAAAA2hgBAPRQEQABAAAA2xgBAPhQEQABAAAA3BgBAPxQEQABAAAA3RgBAABREQABAAAA3hgBAARREQABAAAA3xgBAAhREQABAAAAQG4BAAxREQABAAAAQW4BABBREQABAAAAQm4BABRREQABAAAAQ24BABhREQABAAAARG4BABxREQABAAAARW4BACBREQABAAAARm4BACRREQABAAAAR24BAChREQABAAAASG4BACxREQABAAAASW4BADBREQABAAAASm4BADRREQABAAAAS24BADhREQABAAAATG4BADxREQABAAAATW4BAEBREQABAAAATm4BAERREQABAAAAT24BAEhREQABAAAAUG4BAExREQABAAAAUW4BAFBREQABAAAAUm4BAFRREQABAAAAU24BAFhREQABAAAAVG4BAFxREQABAAAAVW4BAGBREQABAAAAVm4BAGRREQABAAAAV24BAGhREQABAAAAWG4BAGxREQABAAAAWW4BAHBREQABAAAAWm4BAHRREQABAAAAW24BAHhREQABAAAAXG4BAHxREQABAAAAXW4BAIBREQABAAAAXm4BAIRREQABAAAAX24BAIhREQABAAAAYG4BAIxREQABAAAAYW4BAJBREQABAAAAYm4BAJRREQABAAAAY24BAJhREQABAAAAZG4BAJxREQABAAAAZW4BAKBREQABAAAAZm4BAKRREQABAAAAZ24BAKhREQABAAAAaG4BAKxREQABAAAAaW4BALBREQABAAAAam4BALRREQABAAAAa24BALhREQABAAAAbG4BALxREQABAAAAbW4BAMBREQABAAAAbm4BAMRREQABAAAAb24BAMhREQABAAAAcG4BAMxREQABAAAAcW4BANBREQABAAAAcm4BANRREQABAAAAc24BANhREQABAAAAdG4BANxREQABAAAAdW4BAOBREQABAAAAdm4BAORREQABAAAAd24BAOhREQABAAAAeG4BAOxREQABAAAAeW4BAPBREQABAAAAem4BAPRREQABAAAAe24BAPhREQABAAAAfG4BAPxREQABAAAAfW4BAABSEQABAAAAfm4BAARSEQABAAAAf24BAAhSEQABAAAAAOkBAAxSEQABAAAAAekBABBSEQABAAAAAukBABRSEQABAAAAA+kBABhSEQABAAAABOkBABxSEQABAAAABekBACBSEQABAAAABukBACRSEQABAAAAB+kBAChSEQABAAAACOkBACxSEQABAAAACekBADBSEQABAAAACukBADRSEQABAAAAC+kBADhSEQABAAAADOkBADxSEQABAAAADekBAEBSEQABAAAADukBAERSEQABAAAAD+kBAEhSEQABAAAAEOkBAExSEQABAAAAEekBAFBSEQABAAAAEukBAFRSEQABAAAAE+kBAFhSEQABAAAAFOkBAFxSEQABAAAAFekBAGBSEQABAAAAFukBAGRSEQABAAAAF+kBAGhSEQABAAAAGOkBAGxSEQABAAAAGekBAHBSEQABAAAAGukBAHRSEQABAAAAG+kBAHhSEQABAAAAHOkBAHxSEQABAAAAHekBAIBSEQABAAAAHukBAIRSEQABAAAAH+kBAIhSEQABAAAAIOkBAIxSEQABAAAAIekBAJBSEQABAAAAIukBAJRSEQABAAAAI+kBAJhSEQABAAAAJOkBAJxSEQABAAAAJekBAKBSEQABAAAAJukBAKRSEQABAAAAJ+kBAKhSEQABAAAAKOkBAKxSEQABAAAAKekBALBSEQABAAAAKukBALRSEQABAAAAK+kBALhSEQABAAAALOkBALxSEQABAAAALekBAMBSEQABAAAALukBAMRSEQABAAAAL+kBAMhSEQABAAAAMOkBAMxSEQABAAAAMekBANBSEQABAAAAMukBANRSEQABAAAAM+kBANhSEQABAAAANOkBANxSEQABAAAANekBAOBSEQABAAAANukBAORSEQABAAAAN+kBAOhSEQABAAAAOOkBAOxSEQABAAAAOekBAPBSEQABAAAAOukBAPRSEQABAAAAO+kBAPhSEQABAAAAPOkBAPxSEQABAAAAPekBAABTEQABAAAAPukBAARTEQABAAAAP+kBAAhTEQABAAAAQOkBAAxTEQABAAAAQekBABBTEQABAAAAQukBABRTEQABAAAAQ+kBABhTEQABAAAATGl0ZXJhbENsYXNzVW5pY29kZUNsYXNzQnl0ZXNSZXBldGl0aW9uR3JvdXBvbGRfZmxhZ3NDb25jYXRBbHRlcm5hdGlvbkFsdGVybmF0aW9uQnJhbmNoAAAAAAABAAAAAQAAAN8DAAAAAAAABAAAAAQAAAAOBAAAY2FzZV9pbnNlbnNpdGl2ZW11bHRpX2xpbmVkb3RfbWF0Y2hlc19uZXdfbGluZXN3YXBfZ3JlZWR1bmljb2RlY3JsZgB82hEAEAAAAIzaEQAKAAAAltoRABQAAACq2hEACgAAALTaEQAHAAAAu9oRAAQAAABGbGFncwAAABcDAAAMAAAABAAAAFcDAAAPBAAAWQMAQZi2xwAL9oMPAQAAABAEAABUcnlGcm9tQ2hhckVycm9yZXhjZWVkZWQgdGhlIG1heGltdW0gbnVtYmVyIG9mIGNhcHR1cmluZyBncm91cHMgKAAAADDbEQAxAAAA8MsYAAEAAABpbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSBmb3VuZCBpbiBjaGFyYWN0ZXIgY2xhc3N02xEAMAAAAGludmFsaWQgY2hhcmFjdGVyIGNsYXNzIHJhbmdlLCB0aGUgc3RhcnQgbXVzdCBiZSA8PSB0aGUgZW5kAKzbEQA7AAAAaW52YWxpZCByYW5nZSBib3VuZGFyeSwgbXVzdCBiZSBhIGxpdGVyYWwAAADw2xEAKQAAAHVuY2xvc2VkIGNoYXJhY3RlciBjbGFzcyTcEQAYAAAAZGVjaW1hbCBsaXRlcmFsIGVtcHR5AAAARNwRABUAAABkZWNpbWFsIGxpdGVyYWwgaW52YWxpZABk3BEAFwAAAGhleGFkZWNpbWFsIGxpdGVyYWwgZW1wdHkAAACE3BEAGQAAAGhleGFkZWNpbWFsIGxpdGVyYWwgaXMgbm90IGEgVW5pY29kZSBzY2FsYXIgdmFsdWUAAACo3BEAMQAAAGludmFsaWQgaGV4YWRlY2ltYWwgZGlnaXQAAADk3BEAGQAAAGluY29tcGxldGUgZXNjYXBlIHNlcXVlbmNlLCByZWFjaGVkIGVuZCBvZiBwYXR0ZXJuIHByZW1hdHVyZWx5AAAI3REAPgAAAHVucmVjb2duaXplZCBlc2NhcGUgc2VxdWVuY2VQ3REAHAAAAGRhbmdsaW5nIGZsYWcgbmVnYXRpb24gb3BlcmF0b3IAdN0RAB8AAABkdXBsaWNhdGUgZmxhZwAAnN0RAA4AAABmbGFnIG5lZ2F0aW9uIG9wZXJhdG9yIHJlcGVhdGVkALTdEQAfAAAAZXhwZWN0ZWQgZmxhZyBidXQgZ290IGVuZCBvZiByZWdleAAA3N0RACIAAAB1bnJlY29nbml6ZWQgZmxhZwAAAAjeEQARAAAAZHVwbGljYXRlIGNhcHR1cmUgZ3JvdXAgbmFtZSTeEQAcAAAAZW1wdHkgY2FwdHVyZSBncm91cCBuYW1lSN4RABgAAABpbnZhbGlkIGNhcHR1cmUgZ3JvdXAgY2hhcmFjdGVyAGjeEQAfAAAAdW5jbG9zZWQgY2FwdHVyZSBncm91cCBuYW1lAJDeEQAbAAAAdW5jbG9zZWQgZ3JvdXAAALTeEQAOAAAAdW5vcGVuZWQgZ3JvdXAAAMzeEQAOAAAAZXhjZWVkIHRoZSBtYXhpbXVtIG51bWJlciBvZiBuZXN0ZWQgcGFyZW50aGVzZXMvYnJhY2tldHMgKAAA5N4RADoAAADwyxgAAQAAAGludmFsaWQgcmVwZXRpdGlvbiBjb3VudCByYW5nZSwgdGhlIHN0YXJ0IG11c3QgYmUgPD0gdGhlIGVuZDDfEQA8AAAAcmVwZXRpdGlvbiBxdWFudGlmaWVyIGV4cGVjdHMgYSB2YWxpZCBkZWNpbWFsAAAAdN8RAC0AAAB1bmNsb3NlZCBjb3VudGVkIHJlcGV0aXRpb24ArN8RABsAAAByZXBldGl0aW9uIG9wZXJhdG9yIG1pc3NpbmcgZXhwcmVzc2lvbgAA0N8RACYAAABzcGVjaWFsIHdvcmQgYm91bmRhcnkgYXNzZXJ0aW9uIGlzIGVpdGhlciB1bmNsb3NlZCBvciBjb250YWlucyBhbiBpbnZhbGlkIGNoYXJhY3RlcgAA4BEAUwAAAHVucmVjb2duaXplZCBzcGVjaWFsIHdvcmQgYm91bmRhcnkgYXNzZXJ0aW9uLCB2YWxpZCBjaG9pY2VzIGFyZTogc3RhcnQsIGVuZCwgc3RhcnQtaGFsZiBvciBlbmQtaGFsZgBc4BEAYwAAAGZvdW5kIGVpdGhlciB0aGUgYmVnaW5uaW5nIG9mIGEgc3BlY2lhbCB3b3JkIGJvdW5kYXJ5IG9yIGEgYm91bmRlZCByZXBldGl0aW9uIG9uIGEgXGIgd2l0aCBhbiBvcGVuaW5nIGJyYWNlLCBidXQgbm8gY2xvc2luZyBicmFjZQAAAMjgEQCBAAAAaW52YWxpZCBVbmljb2RlIGNoYXJhY3RlciBjbGFzcwBU4REAHwAAAGJhY2tyZWZlcmVuY2VzIGFyZSBub3Qgc3VwcG9ydGVkfOERACAAAABsb29rLWFyb3VuZCwgaW5jbHVkaW5nIGxvb2stYWhlYWQgYW5kIGxvb2stYmVoaW5kLCBpcyBub3Qgc3VwcG9ydGVkAKThEQBDAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy9hc3QvbW9kLnJz8OERAGAAAAB/AgAAIgAAAPDhEQBgAAAAmAIAACIAAABhbG51bWJsYW5rZ3JhcGhwcmludHhkaWdpdAAA8OERAGAAAADzBAAAIwAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LXN5bnRheC0wLjguNC9zcmMvaGlyL21vZC5yc5ziEQBgAAAAvwQAAC4AAACc4hEAYAAAAMAEAAAqAAAARQMAABQAAAAEAAAAEQQAAC4uPQAs4xEAAwAAACAoZXhoYXVzdGVkKTjjEQAMAAAAZ290IGNvZGVwb2ludCBVKyB3aGljaCBvY2N1cnMgYmVmb3JlIGxhc3QgY29kZXBvaW50IFUrAABM4xEAEAAAAFzjEQAmAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy91bmljb2RlLnJzlOMRAGAAAAB+AAAADQAAAGFzc2VydGlvbiBmYWlsZWQ6IGkgPiBzZWxmLm5leHQAlOMRAGAAAACbAAAAEQAAAJTjEQBgAAAAtQAAAAkAAABHZW5lcmFsX0NhdGVnb3J5U2NyaXB0Y2ZzY2xjQWdlU2NyaXB0X0V4dGVuc2lvbnNHcmFwaGVtZV9DbHVzdGVyX0JyZWFrU2VudGVuY2VfQnJlYWtXb3JkX0JyZWFrAAAwAAAAOQAAAEEAAABaAAAAXwAAAF8AAABhAAAAegAAAKoAAACqAAAAtQAAALUAAAC6AAAAugAAAMAAAADWAAAA2AAAAPYAAAD4AAAAwQIAAMYCAADRAgAA4AIAAOQCAADsAgAA7AIAAO4CAADuAgAAAAMAAHQDAAB2AwAAdwMAAHoDAAB9AwAAfwMAAH8DAACGAwAAhgMAAIgDAACKAwAAjAMAAIwD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AABJHAAAUBwAAFkcAAAgpgAAKaYAANCoAADZqAAAAKkAAAmpAADQqQAA2akAAPCpAAD5qQAAUKoAAFmqAADwqwAA+asAABD/AAAZ/wAAoAQBAKkEAQAwDQEAOQ0BAGYQAQBvEAEA8BABAPkQAQA2EQEAPxEBANARAQDZEQEA8BIBAPkSAQBQFAEAWRQBANAUAQDZFAEAUBYBAFkWAQDAFgEAyRYBADAXAQA5FwEA4BgBAOkYAQBQGQEAWRkBAFAcAQBZHAEAUB0BAFkdAQCgHQEAqR0BAFAfAQBZHwEAYGoBAGlqAQDAagEAyWoBAFBrAQBZawEAztcBAP/XAQBA4QEASeEBAPDiAQD54gEA8OQBAPnkAQBQ6QEAWekBAPD7AQD5+wEAYXNzaWduZWRhc2NpaQAAAJTjEQBgAAAA/QEAAEAAAABBU0NJSUFzc2lnbmVkQW55lOMRAGAAAAAGAgAALgAAAGFnZWFoZXhBU0NJSV9IZXhfRGlnaXRBbHBoYWJldGljYWxwaGFiZXRpY2FzY2lpaGV4ZGlnaXRiY0JpZGlfQ2xhc3NiaWRpY0JpZGlfQ29udHJvbGJpZGljbGFzc2JpZGljb250cm9sYmlkaW1CaWRpX01pcnJvcmVkYmlkaW1pcnJvcmVkYmlkaW1pcnJvcmluZ2dseXBoQmlkaV9NaXJyb3JpbmdfR2x5cGhiaWRpcGFpcmVkYnJhY2tldEJpZGlfUGFpcmVkX0JyYWNrZXRiaWRpcGFpcmVkYnJhY2tldHR5cGVCaWRpX1BhaXJlZF9CcmFja2V0X1R5cGVibGtibWdicGJicHRjYW5vbmljYWxjb21iaW5pbmdjbGFzc0Nhbm9uaWNhbF9Db21iaW5pbmdfQ2xhc3NjYXNlZENhc2VkY2FzZWZvbGRpbmdDYXNlX0ZvbGRpbmdjYXNlaWdub3JhYmxlQ2FzZV9JZ25vcmFibGVjY2NjZUNvbXBvc2l0aW9uX0V4Y2x1c2lvbmNoYW5nZXN3aGVuY2FzZWZvbGRlZENoYW5nZXNfV2hlbl9DYXNlZm9sZGVkY2hhbmdlc3doZW5jYXNlbWFwcGVkQ2hhbmdlc19XaGVuX0Nhc2VtYXBwZWRjaGFuZ2Vzd2hlbmxvd2VyY2FzZWRDaGFuZ2VzX1doZW5fTG93ZXJjYXNlZGNoYW5nZXN3aGVubmZrY2Nhc2Vmb2xkZWRDaGFuZ2VzX1doZW5fTkZLQ19DYXNlZm9sZGVkY2hhbmdlc3doZW50aXRsZWNhc2VkQ2hhbmdlc19XaGVuX1RpdGxlY2FzZWRjaGFuZ2Vzd2hlbnVwcGVyY2FzZWRDaGFuZ2VzX1doZW5fVXBwZXJjYXNlZGNpY2prYWNjb3VudGluZ251bWVyaWNrQWNjb3VudGluZ051bWVyaWNjamtjb21wYXRpYmlsaXR5dmFyaWFudGtDb21wYXRpYmlsaXR5VmFyaWFudGNqa2lpY29yZWtJSUNvcmVjamtpcmdnc291cmNla0lSR19HU291cmNlY2praXJnaHNvdXJjZWtJUkdfSFNvdXJjZWNqa2lyZ2pzb3VyY2VrSVJHX0pTb3VyY2VjamtpcmdrcHNvdXJjZWtJUkdfS1BTb3VyY2Vjamtpcmdrc291cmNla0lSR19LU291cmNlY2praXJnbXNvdXJjZWtJUkdfTVNvdXJjZWNqa2lyZ3Nzb3VyY2VrSVJHX1NTb3VyY2Vjamtpcmd0c291cmNla0lSR19UU291cmNlY2praXJndWtzb3VyY2VrSVJHX1VLU291cmNlY2praXJndXNvdXJjZWtJUkdfVVNvdXJjZWNqa2lyZ3Zzb3VyY2VrSVJHX1ZTb3VyY2VjamtvdGhlcm51bWVyaWNrT3RoZXJOdW1lcmljY2prcHJpbWFyeW51bWVyaWNrUHJpbWFyeU51bWVyaWNjamtyc3VuaWNvZGVrUlNVbmljb2RlY29tcGV4RnVsbF9Db21wb3NpdGlvbl9FeGNsdXNpb25jb21wb3NpdGlvbmV4Y2x1c2lvbmN3Y2Zjd2NtY3drY2Zjd2xjd3Rjd3VkYXNoRGFzaGRlY29tcG9zaXRpb25tYXBwaW5nRGVjb21wb3NpdGlvbl9NYXBwaW5nZGVjb21wb3NpdGlvbnR5cGVEZWNvbXBvc2l0aW9uX1R5cGVkZWZhdWx0aWdub3JhYmxlY29kZXBvaW50RGVmYXVsdF9JZ25vcmFibGVfQ29kZV9Qb2ludGRlcERlcHJlY2F0ZWRkZXByZWNhdGVkZGlkaWFEaWFjcml0aWNkaWFjcml0aWNkbWR0ZWFFYXN0X0FzaWFuX1dpZHRoZWFzdGFzaWFud2lkdGhlYmFzZUVtb2ppX01vZGlmaWVyX0Jhc2VlY29tcEVtb2ppX0NvbXBvbmVudGVtb2RFbW9qaV9Nb2RpZmllcmVtb2ppRW1vamllbW9qaWNvbXBvbmVudGVtb2ppbW9kaWZpZXJlbW9qaW1vZGlmaWVyYmFzZWVtb2ppcHJlc2VudGF0aW9uRW1vamlfUHJlc2VudGF0aW9uZXByZXNlcXVpZGVvRXF1aXZhbGVudF9VbmlmaWVkX0lkZW9ncmFwaGVxdWl2YWxlbnR1bmlmaWVkaWRlb2dyYXBoZXhwYW5kc29ubmZjRXhwYW5kc19Pbl9ORkNleHBhbmRzb25uZmRFeHBhbmRzX09uX05GRGV4cGFuZHNvbm5ma2NFeHBhbmRzX09uX05GS0NleHBhbmRzb25uZmtkRXhwYW5kc19Pbl9ORktEZXh0RXh0ZW5kZXJleHRlbmRlZHBpY3RvZ3JhcGhpY0V4dGVuZGVkX1BpY3RvZ3JhcGhpY2V4dGVuZGVyZXh0cGljdGZjbmZrY0ZDX05GS0NfQ2xvc3VyZWZjbmZrY2Nsb3N1cmVmdWxsY29tcG9zaXRpb25leGNsdXNpb25nY2djYmdlbmVyYWxjYXRlZ29yeWdyYXBoZW1lYmFzZUdyYXBoZW1lX0Jhc2VncmFwaGVtZWNsdXN0ZXJicmVha2dyYXBoZW1lZXh0ZW5kR3JhcGhlbWVfRXh0ZW5kZ3JhcGhlbWVsaW5rR3JhcGhlbWVfTGlua2dyYmFzZWdyZXh0Z3JsaW5raGFuZ3Vsc3lsbGFibGV0eXBlSGFuZ3VsX1N5bGxhYmxlX1R5cGVoZXhIZXhfRGlnaXRoZXhkaWdpdGhzdGh5cGhlbkh5cGhlbmlkY0lEX0NvbnRpbnVlaWRjb250aW51ZWlkZW9JZGVvZ3JhcGhpY2lkZW9ncmFwaGljaWRzSURfU3RhcnRpZHNiSURTX0JpbmFyeV9PcGVyYXRvcmlkc2JpbmFyeW9wZXJhdG9yaWRzdElEU19UcmluYXJ5X09wZXJhdG9yaWRzdGFydGlkc3RyaW5hcnlvcGVyYXRvcmluZGljcG9zaXRpb25hbGNhdGVnb3J5SW5kaWNfUG9zaXRpb25hbF9DYXRlZ29yeWluZGljc3lsbGFiaWNjYXRlZ29yeUluZGljX1N5bGxhYmljX0NhdGVnb3J5aW5wY2luc2Npc2NJU09fQ29tbWVudGphbW9zaG9ydG5hbWVKYW1vX1Nob3J0X05hbWVqZ0pvaW5pbmdfR3JvdXBqb2luY0pvaW5fQ29udHJvbGpvaW5jb250cm9sam9pbmluZ2dyb3Vwam9pbmluZ3R5cGVKb2luaW5nX1R5cGVqc25qdGthY2NvdW50aW5nbnVtZXJpY2tjb21wYXRpYmlsaXR5dmFyaWFudGtpaWNvcmVraXJnZ3NvdXJjZWtpcmdoc291cmNla2lyZ2pzb3VyY2VraXJna3Bzb3VyY2VraXJna3NvdXJjZWtpcmdtc291cmNla2lyZ3Nzb3VyY2VraXJndHNvdXJjZWtpcmd1a3NvdXJjZWtpcmd1c291cmNla2lyZ3Zzb3VyY2Vrb3RoZXJudW1lcmlja3ByaW1hcnludW1lcmlja3JzdW5pY29kZWxiTGluZV9CcmVha0xvd2VyY2FzZV9NYXBwaW5nbGluZWJyZWFrbG9lTG9naWNhbF9PcmRlcl9FeGNlcHRpb25sb2dpY2Fsb3JkZXJleGNlcHRpb25sb3dlckxvd2VyY2FzZWxvd2VyY2FzZWxvd2VyY2FzZW1hcHBpbmdtYXRoTWF0aG5hTmFtZW5hMVVuaWNvZGVfMV9OYW1lbmFtZWFsaWFzTmFtZV9BbGlhc25jaGFyTm9uY2hhcmFjdGVyX0NvZGVfUG9pbnRuZmNxY05GQ19RdWlja19DaGVja25mY3F1aWNrY2hlY2tuZmRxY05GRF9RdWlja19DaGVja25mZHF1aWNrY2hlY2tuZmtjY2FzZWZvbGRORktDX0Nhc2Vmb2xkbmZrY2NmbmZrY3FjTkZLQ19RdWlja19DaGVja25ma2NxdWlja2NoZWNrbmZrZHFjTkZLRF9RdWlja19DaGVja25ma2RxdWlja2NoZWNrbm9uY2hhcmFjdGVyY29kZXBvaW50bnROdW1lcmljX1R5cGVudW1lcmljdHlwZW51bWVyaWN2YWx1ZU51bWVyaWNfVmFsdWVudm9hbHBoYU90aGVyX0FscGhhYmV0aWNvY29tbWVudG9kaU90aGVyX0RlZmF1bHRfSWdub3JhYmxlX0NvZGVfUG9pbnRvZ3JleHRPdGhlcl9HcmFwaGVtZV9FeHRlbmRvaWRjT3RoZXJfSURfQ29udGludWVvaWRzT3RoZXJfSURfU3RhcnRvbG93ZXJPdGhlcl9Mb3dlcmNhc2VvbWF0aE90aGVyX01hdGhvdGhlcmFscGhhYmV0aWNvdGhlcmRlZmF1bHRpZ25vcmFibGVjb2RlcG9pbnRvdGhlcmdyYXBoZW1lZXh0ZW5kb3RoZXJpZGNvbnRpbnVlb3RoZXJpZHN0YXJ0b3RoZXJsb3dlcmNhc2VvdGhlcm1hdGhvdGhlcnVwcGVyY2FzZU90aGVyX1VwcGVyY2FzZW91cHBlcnBhdHN5blBhdHRlcm5fU3ludGF4cGF0dGVybnN5bnRheHBhdHRlcm53aGl0ZXNwYWNlUGF0dGVybl9XaGl0ZV9TcGFjZXBhdHdzcGNtUHJlcGVuZGVkX0NvbmNhdGVuYXRpb25fTWFya3ByZXBlbmRlZGNvbmNhdGVuYXRpb25tYXJrcW1hcmtRdW90YXRpb25fTWFya3F1b3RhdGlvbm1hcmtyYWRpY2FsUmFkaWNhbHJlZ2lvbmFsaW5kaWNhdG9yUmVnaW9uYWxfSW5kaWNhdG9ycmlzYnNjZlNpbXBsZV9DYXNlX0ZvbGRpbmdzY3JpcHRzY3JpcHRleHRlbnNpb25zc2N4c2RTb2Z0X0RvdHRlZHNlbnRlbmNlYnJlYWtzZW50ZW5jZXRlcm1pbmFsU2VudGVuY2VfVGVybWluYWxzZmNzaW1wbGVjYXNlZm9sZGluZ3NpbXBsZWxvd2VyY2FzZW1hcHBpbmdTaW1wbGVfTG93ZXJjYXNlX01hcHBpbmdzaW1wbGV0aXRsZWNhc2VtYXBwaW5nU2ltcGxlX1RpdGxlY2FzZV9NYXBwaW5nc2ltcGxldXBwZXJjYXNlbWFwcGluZ1NpbXBsZV9VcHBlcmNhc2VfTWFwcGluZ3NsY3NvZnRkb3R0ZWRzcGFjZVdoaXRlX1NwYWNlc3Rjc3Rlcm1zdWN0Y1RpdGxlY2FzZV9NYXBwaW5ndGVybVRlcm1pbmFsX1B1bmN0dWF0aW9udGVybWluYWxwdW5jdHVhdGlvbnRpdGxlY2FzZW1hcHBpbmd1Y1VwcGVyY2FzZV9NYXBwaW5ndWlkZW9VbmlmaWVkX0lkZW9ncmFwaHVuaWNvZGUxbmFtZXVuaWNvZGVyYWRpY2Fsc3Ryb2tldW5pZmllZGlkZW9ncmFwaHVwcGVyVXBwZXJjYXNldXBwZXJjYXNldXBwZXJjYXNlbWFwcGluZ3Vyc3ZhcmlhdGlvbnNlbGVjdG9yVmFyaWF0aW9uX1NlbGVjdG9ydmVydGljYWxvcmllbnRhdGlvblZlcnRpY2FsX09yaWVudGF0aW9udm92c3did2hpdGVzcGFjZXdvcmRicmVha3dzcGFjZXhpZGNYSURfQ29udGludWV4aWRjb250aW51ZXhpZHNYSURfU3RhcnR4aWRzdGFydHhvbmZjeG9uZmR4b25ma2N4b25ma2QAAABM/xEAAwAAAGDkEQADAAAAT/8RAAQAAABT/xEADwAAALVDFgAFAAAAYv8RAAoAAABs/xEACgAAAGL/EQAKAAAAdv8RAA0AAABT/xEADwAAAIP/EQACAAAAhf8RAAoAAACP/xEABQAAAJT/EQAMAAAAoP8RAAkAAACF/xEACgAAAKn/EQALAAAAlP8RAAwAAAC0/xEABQAAALn/EQANAAAAxv8RAAwAAAC5/xEADQAAANL/EQASAAAA5P8RABQAAAD4/xEAEQAAAAkAEgATAAAAHAASABUAAAAxABIAGAAAAEkAEgADAAAASIYWAAUAAACcUhYABQAAAEiGFgAFAAAATAASAAMAAADk/xEAFAAAAE8AEgADAAAACQASABMAAABSABIAAwAAADEAEgAYAAAAVQASABcAAABsABIAGQAAAIUAEgAFAAAAigASAAUAAACPABIACwAAAJoAEgAMAAAApgASAA0AAACzABIADgAAAMEAEgADAAAAbAASABkAAADEABIAAgAAAMYAEgAVAAAAWuQRAAIAAACaABIADAAAANsAEgAVAAAA8AASABcAAAAHARIAFQAAABwBEgAXAAAAMwESABUAAABIARIAFwAAAF8BEgAZAAAAeAESABwAAACUARIAFQAAAKkBEgAXAAAAwAESABUAAADVARIAFwAAAOwBEgACAAAAswASAA4AAADuARIAFAAAAAICEgASAAAAFAISABcAAAArAhIAFQAAAEACEgAJAAAASQISAAcAAABQAhIADQAAAF0CEgAMAAAAaQISAA0AAAB2AhIADAAAAIICEgANAAAAjwISAAwAAACbAhIADgAAAKkCEgANAAAAtgISAA0AAADDAhIADAAAAM8CEgANAAAA3AISAAwAAADoAhIADQAAAPUCEgAMAAAAAQMSAA0AAAAOAxIADAAAABoD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c2VkbGV0dGVyQ2FzZWRfTGV0dGVyY2NDb250cm9sRm9ybWF0Y2xvc2VwdW5jdHVhdGlvbkNsb3NlX1B1bmN0dWF0aW9uY25jbnRybGNvUHJpdmF0ZV9Vc2Vjb21iaW5pbmdtYXJrY29ubmVjdG9ycHVuY3R1YXRpb25Db25uZWN0b3JfUHVuY3R1YXRpb25jb250cm9sY3NTdXJyb2dhdGVjdXJyZW5jeXN5bWJvbEN1cnJlbmN5X1N5bWJvbGRhc2hwdW5jdHVhdGlvbkRhc2hfUHVuY3R1YXRpb25kZWNpbWFsbnVtYmVyRGVjaW1hbF9OdW1iZXJkaWdpdGVuY2xvc2luZ21hcmtFbmNsb3NpbmdfTWFya2ZpbmFscHVuY3R1YXRpb25GaW5hbF9QdW5jdHVhdGlvbmZvcm1hdGluaXRpYWxwdW5jdHVhdGlvbkluaXRpYWxfUHVuY3R1YXRpb25sTGV0dGVybGV0dGVybGV0dGVybnVtYmVyTGV0dGVyX051bWJlcmxpbmVzZXBhcmF0b3JMaW5lX1NlcGFyYXRvcmxsTG93ZXJjYXNlX0xldHRlcmxtTW9kaWZpZXJfTGV0dGVybG9PdGhlcl9MZXR0ZXJsb3dlcmNhc2VsZXR0ZXJUaXRsZWNhc2VfTGV0dGVybHVVcHBlcmNhc2VfTGV0dGVybW1hcmttYXRoc3ltYm9sTWF0aF9TeW1ib2xtY1NwYWNpbmdfTWFya21lbW5Ob25zcGFjaW5nX01hcmttb2RpZmllcmxldHRlcm1vZGlmaWVyc3ltYm9sTW9kaWZpZXJfU3ltYm9sbmRubG5vT3RoZXJfTnVtYmVybm9uc3BhY2luZ21hcmtvcGVucHVuY3R1YXRpb25PcGVuX1B1bmN0dWF0aW9ub3RoZXJvdGhlcmxldHRlcm90aGVybnVtYmVyb3RoZXJwdW5jdHVhdGlvbk90aGVyX1B1bmN0dWF0aW9ub3RoZXJzeW1ib2xPdGhlcl9TeW1ib2xwUHVuY3R1YXRpb25wYXJhZ3JhcGhzZXBhcmF0b3JQYXJhZ3JhcGhfU2VwYXJhdG9ycGNwZHBlcGZwb3ByaXZhdGV1c2Vwc3B1bmN0cHVuY3R1YXRpb25zU3ltYm9sc2VwYXJhdG9yU2VwYXJhdG9yc2tzbXNvc3BhY2VzZXBhcmF0b3JT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EgAHAAAA2S0SAAcAAADSLRIABwAAAGINEgARAAAAcw0SABIAAACFDRIAAgAAAHMNEgASAAAAAygSAAIAAADgLRIACwAAACQoEgALAAAA4C0SAAsAAADrLRIAAQAAAOwtEgABAAAA7S0SAAEAAADuLRIAAQAAAO8tEgACAAAAjBkWAAUAAABBRBYAAwAAAPEtEgADAAAAYWRsYW1BZGxhbWFkbG1hZ2hiQ2F1Y2FzaWFuX0FsYmFuaWFuYWhvbUFob21hbmF0b2xpYW5oaWVyb2dseXBoc0FuYXRvbGlhbl9IaWVyb2dseXBoc2FyYWJBcmFiaWNhcmFiaWNhcm1lbmlhbkFybWVuaWFuYXJtaUltcGVyaWFsX0FyYW1haWNhcm1uYXZlc3RhbkF2ZXN0YW5hdnN0YmFsaUJhbGluZXNlYmFsaW5lc2ViYW11QmFtdW1iYW11bWJhc3NCYXNzYV9WYWhiYXNzYXZhaGJhdGFrQmF0YWtiYXRrYmVuZ0JlbmdhbGliZW5nYWxpYmhhaWtzdWtpQmhhaWtzdWtpYmhrc2JvcG9Cb3BvbW9mb2JvcG9tb2ZvYnJhaEJyYWhtaWJyYWhtaWJyYWlCcmFpbGxlYnJhaWxsZWJ1Z2lCdWdpbmVzZWJ1Z2luZXNlYnVoZEJ1aGlkYnVoaWRjYWttQ2hha21hY2FuYWRpYW5hYm9yaWdpbmFsQ2FuYWRpYW5fQWJvcmlnaW5hbGNhbnNjYXJpQ2FyaWFuY2FyaWFuY2F1Y2FzaWFuYWxiYW5pYW5jaGFrbWFjaGFtQ2hhbWNoZXJDaGVyb2tlZWNoZXJva2VlY2hvcmFzbWlhbkNob3Jhc21pYW5jaHJzY29tbW9uQ29tbW9uY29wdENvcHRpY2NvcHRpY2NwbW5DeXByb19NaW5vYW5jcHJ0Q3lwcmlvdGN1bmVpZm9ybUN1bmVpZm9ybWN5cHJpb3RjeXByb21pbm9hbmN5cmlsbGljQ3lyaWxsaWNjeXJsZGVzZXJldERlc2VyZXRkZXZhRGV2YW5hZ2FyaWRldmFuYWdhcmlkaWFrRGl2ZXNfQWt1cnVkaXZlc2FrdXJ1ZG9nckRvZ3JhZG9ncmFkc3J0ZHVwbER1cGxveWFuZHVwbG95YW5lZ3lwRWd5cHRpYW5fSGllcm9nbHlwaHNlZ3lwdGlhbmhpZXJvZ2x5cGhzZWxiYUVsYmFzYW5lbGJhc2FuZWx5bUVseW1haWNlbHltYWljZXRoaUV0aGlvcGljZXRoaW9waWNnZW9yR2VvcmdpYW5nZW9yZ2lhbmdsYWdHbGFnb2xpdGljZ2xhZ29saXRpY2dvbmdHdW5qYWxhX0dvbmRpZ29ubU1hc2FyYW1fR29uZGlnb3RoR290aGljZ290aGljZ3JhbkdyYW50aGFncmFudGhhZ3JlZWtHcmVla2dyZWtndWphcmF0aUd1amFyYXRpZ3Vqcmd1bmphbGFnb25kaWd1cm11a2hpR3VybXVraGlndXJ1aGFuSGFuaGFuZ0hhbmd1bGhhbmd1bGhhbmloYW5pZmlyb2hpbmd5YUhhbmlmaV9Sb2hpbmd5YWhhbm9IYW51bm9vaGFudW5vb2hhdHJIYXRyYW5oYXRyYW5oZWJySGVicmV3aGVicmV3aGlyYUhpcmFnYW5haGlyYWdhbmFobHV3aG1uZ1BhaGF3aF9IbW9uZ2htbnBOeWlha2VuZ19QdWFjaHVlX0htb25naHJrdEthdGFrYW5hX09yX0hpcmFnYW5haHVuZ09sZF9IdW5nYXJpYW5pbXBlcmlhbGFyYW1haWNpbmhlcml0ZWRJbmhlcml0ZWRpbnNjcmlwdGlvbmFscGFobGF2aUluc2NyaXB0aW9uYWxfUGFobGF2aWluc2NyaXB0aW9uYWxwYXJ0aGlhbkluc2NyaXB0aW9uYWxfUGFydGhpYW5pdGFsT2xkX0l0YWxpY2phdmFKYXZhbmVzZWphdmFuZXNla2FpdGhpS2FpdGhpa2FsaUtheWFoX0xpa2FuYUthdGFrYW5ha2FubmFkYUthbm5hZGFrYXRha2FuYWthdGFrYW5hb3JoaXJhZ2FuYWthd2lLYXdpa2F5YWhsaWtoYXJLaGFyb3NodGhpa2hhcm9zaHRoaWtoaXRhbnNtYWxsc2NyaXB0S2hpdGFuX1NtYWxsX1NjcmlwdGtobWVyS2htZXJraG1ya2hvaktob2praWtob2praWtodWRhd2FkaUtodWRhd2FkaWtpdHNrbmRha3RoaWxhbmFUYWlfVGhhbWxhb0xhb2xhb29sYXRpbkxhdGlubGF0bmxlcGNMZXBjaGFsZXBjaGFsaW1iTGltYnVsaW1idWxpbmFMaW5lYXJfQWxpbmJMaW5lYXJfQmxpbmVhcmFsaW5lYXJibGlzdUxpc3VseWNpTHljaWFubHljaWFubHlkaUx5ZGlhbmx5ZGlhbm1haGFqYW5pTWFoYWphbmltYWhqbWFrYU1ha2FzYXJtYWthc2FybWFsYXlhbGFtTWFsYXlhbGFtbWFuZE1hbmRhaWNtYW5kYWljbWFuaU1hbmljaGFlYW5tYW5pY2hhZWFubWFyY01hcmNoZW5tYXJjaGVubWFzYXJhbWdvbmRpbWVkZWZhaWRyaW5NZWRlZmFpZHJpbm1lZGZtZWV0ZWltYXlla01lZXRlaV9NYXlla21lbmRNZW5kZV9LaWtha3VpbWVuZGVraWtha3VpbWVyY01lcm9pdGljX0N1cnNpdmVtZXJvTWVyb2l0aWNfSGllcm9nbHlwaHNtZXJvaXRpY2N1cnNpdmVtZXJvaXRpY2hpZXJvZ2x5cGhzbWlhb01pYW9tbHltbW9kaU1vZGltb25nTW9uZ29saWFubW9uZ29saWFubXJvTXJvbXJvb210ZWltdWx0TXVsdGFuaW11bHRhbmlteWFubWFyTXlhbm1hcm15bXJuYWJhdGFlYW5OYWJhdGFlYW5uYWdtTmFnX011bmRhcmluYWdtdW5kYXJpbmFuZE5hbmRpbmFnYXJpbmFuZGluYWdhcmluYXJiT2xkX05vcnRoX0FyYWJpYW5uYmF0bmV3YU5ld2FuZXd0YWlsdWVOZXdfVGFpX0x1ZW5rb05rb25rb29uc2h1TnVzaHVudXNodW55aWFrZW5ncHVhY2h1ZWhtb25nb2dhbU9naGFtb2doYW1vbGNoaWtpT2xfQ2hpa2lvbGNrb2xkaHVuZ2FyaWFub2xkaXRhbGljb2xkbm9ydGhhcmFiaWFub2xkcGVybWljT2xkX1Blcm1pY29sZHBlcnNpYW5PbGRfUGVyc2lhbm9sZHNvZ2RpYW5PbGRfU29nZGlhbm9sZHNvdXRoYXJhYmlhbk9sZF9Tb3V0aF9BcmFiaWFub2xkdHVya2ljT2xkX1R1cmtpY29sZHV5Z2h1ck9sZF9VeWdodXJvcml5YU9yaXlhb3JraG9yeWFvc2FnZU9zYWdlb3NnZW9zbWFPc21hbnlhb3NtYW55YW91Z3JwYWhhd2hobW9uZ3BhbG1QYWxteXJlbmVwYWxteXJlbmVwYXVjUGF1X0Npbl9IYXVwYXVjaW5oYXVwZXJtcGhhZ1BoYWdzX1BhcGhhZ3NwYXBobGlwaGxwUHNhbHRlcl9QYWhsYXZpcGhueFBob2VuaWNpYW5waG9lbmljaWFucGxyZHBydGlwc2FsdGVycGFobGF2aXFhYWNxYWFpcmVqYW5nUmVqYW5ncmpuZ3JvaGdydW5pY1J1bmljcnVucnNhbWFyaXRhblNhbWFyaXRhbnNhbXJzYXJic2F1clNhdXJhc2h0cmFzYXVyYXNodHJhc2dud1NpZ25Xcml0aW5nc2hhcmFkYVNoYXJhZGFzaGF2aWFuU2hhdmlhbnNoYXdzaHJkc2lkZFNpZGRoYW1zaWRkaGFtc2lnbndyaXRpbmdzaW5kc2luaFNpbmhhbGFzaW5oYWxhc29nZFNvZ2RpYW5zb2dkaWFuc29nb3NvcmFTb3JhX1NvbXBlbmdzb3Jhc29tcGVuZ3NveW9Tb3lvbWJvc295b21ib3N1bmRTdW5kYW5lc2VzdW5kYW5lc2VzeWxvU3lsb3RpX05hZ3Jpc3lsb3RpbmFncmlzeXJjU3lyaWFjc3lyaWFjdGFnYWxvZ1RhZ2Fsb2d0YWdiVGFnYmFud2F0YWdiYW53YXRhaWxlVGFpX0xldGFpdGhhbXRhaXZpZXRUYWlfVmlldHRha3JUYWtyaXRha3JpdGFsZXRhbHV0YW1pbFRhbWlsdGFtbHRhbmdUYW5ndXR0YW5nc2FUYW5nc2F0YW5ndXR0YXZ0dGVsdVRlbHVndXRlbHVndXRmbmdUaWZpbmFnaHRnbGd0aGFhVGhhYW5hdGhhYW5hdGhhaVRoYWl0aWJldGFuVGliZXRhbnRpYnR0aWZpbmFnaHRpcmhUaXJodXRhdGlyaHV0YXRuc2F0b3RvVG90b3VnYXJVZ2FyaXRpY3VnYXJpdGljVW5rbm93bnZhaVZhaXZhaWl2aXRoVml0aGt1cWl2aXRoa3VxaXdhbmNob1dhbmNob3dhcmFXYXJhbmdfQ2l0aXdhcmFuZ2NpdGl3Y2hveHBlb3hzdXh5ZXppWWV6aWRpeWV6aWRpeWlZaXlpaWl6YW5hYmF6YXJzcXVhcmVaYW5hYmF6YXJfU3F1YXJlemFuYnppbmh6eXl5enp6erQvEgAFAAAAuS8SAAUAAAC+LxIABAAAALkvEgAFAAAAwi8SAAQAAADGLxIAEgAAANgvEgAEAAAA3C8SAAQAAADgLxIAFAAAAPQvEgAVAAAACTASAAQAAAANMBIABgAAABMwEgAGAAAADTASAAYAAAAZMBIACAAAACEwEgAIAAAAKTASAAQAAAAtMBIAEAAAAD0wEgAEAAAAITASAAgAAABBMBIABwAAAEgwEgAHAAAATzASAAQAAABIMBIABwAAAFMwEgAEAAAAVzASAAgAAABfMBIACAAAAFcwEgAIAAAAZzASAAQAAABrMBIABQAAAHAwEgAFAAAAazASAAUAAAB1MBIABAAAAHkwEgAJAAAAgjASAAgAAAB5MBIACQAAAIowEgAFAAAAjzASAAUAAACUMBIABAAAAI8wEgAFAAAAmDASAAQAAACcMBIABwAAAKMwEgAHAAAAnDASAAcAAACqMBIACQAAALMwEgAJAAAAvDASAAQAAACzMBIACQAAAMAwEgAEAAAAxDASAAgAAADMMBIACAAAAMQwEgAIAAAA1DASAAQAAADYMBIABgAAAN4wEgAGAAAA2DASAAYAAADkMBIABAAAAOgwEgAHAAAA7zASAAcAAADoMBIABwAAAPYwEgAEAAAA+jASAAgAAAACMRIACAAAAPowEgAIAAAACjESAAQAAAAOMRIABQAAABMxEgAFAAAADjESAAUAAAAYMRIABAAAABwxEgAGAAAAIjESABIAAAA0MRIAEwAAAEcxEgAEAAAANDESABMAAABLMRIABAAAAE8xEgAGAAAAVTESAAYAAABPMRIABgAAAFsxEgARAAAAxi8SABIAAABsMRIABgAAABwxEgAGAAAAcjESAAQAAAB2MRIABAAAAHoxEgAEAAAAfjESAAgAAACGMRIACAAAAH4xEgAIAAAAjjESAAoAAACYMRIACgAAAKIxEgAEAAAAmDESAAoAAACmMRIABgAAAKwxEgAGAAAAsjESAAQAAAC2MRIABgAAALwxEgAGAAAAtjESAAYAAADCMRIABAAAAMYxEgAMAAAA0jESAAQAAADWMRIABwAAAN0xEgAJAAAA5jESAAkAAADvMRIABwAAANYxEgAHAAAA9jESAAsAAADGMRIADAAAAAEyEgAIAAAACTISAAgAAAARMhIABAAAAAkyEgAIAAAAFTISAAcAAAAcMhIABwAAACMyEgAEAAAAJzISAAoAAAAxMhIACgAAACcyEgAKAAAAOzISAAQA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AADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAAohAAAKIQAADiEAAA8hAAATIQAAEyEAAC8hAAAvIQAANCEAADQhAAA5IQAAOSEAADwhAAA9IQAARiEAAEkhAABOIQAATiEAAIQhAACEIQAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB7LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACbpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAb6cAAHGnAAB4pwAAeqcAAHqnAAB8pwAAfKcAAH+nAAB/pwAAgacAAIGnAACDpwAAg6cAAIWnAACFpwAAh6cAAIenAACMpwAAjKcAAI6nAACOpwAAkacAAJGnAACTpwAAlacAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAr6cAAK+nAAC1pwAAtacAALenAAC3pwAAuacAALmnAAC7pwAAu6cAAL2nAAC9pwAAv6cAAL+nAADBpwAAwacAAMOnAADDpwAAyKcAAMinAADKpwAAyqcAANGn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AAAYHgAAGB4AABoeAAAaHgAAHB4AABweAAAeHgAAHh4AACAeAAAgHgAAIh4AACIeAAAkHgAAJB4AACYeAAAmHgAAKB4AACgeAAAqHgAAKh4AACweAAAsHgAALh4AAC4eAAAwHgAAMB4AADIeAAAyHgAANB4AADQeAAA2HgAANh4AADgeAAA4HgAAOh4AADoeAAA8HgAAPB4AAD4eAAA+HgAAQB4AAEAeAABCHgAAQh4AAEQeAABEHgAARh4AAEYeAABIHgAASB4AAEoeAABKHgAATB4AAEweAABOHgAATh4AAFAeAABQHgAAUh4AAFIeAABUHgAAVB4AAFYeAABWHgAAWB4AAFgeAABaHgAAWh4AAFweAABcHgAAXh4AAF4eAABgHgAAYB4AAGIeAABiHgAAZB4AAGQeAABmHgAAZh4AAGgeAABoHgAAah4AAGoeAABsHgAAbB4AAG4eAABuHgAAcB4AAHAeAAByHgAAch4AAHQeAAB0HgAAdh4AAHYeAAB4HgAAeB4AAHoeAAB6HgAAfB4AAHweAAB+HgAAfh4AAIAeAACAHgAAgh4AAIIeAACEHgAAhB4AAIYeAACGHgAAiB4AAIgeAACKHgAAih4AAIweAACMHgAAjh4AAI4eAACQHgAAkB4AAJIeAACSHgAAlB4AAJQeAACeHgAAnh4AAKAeAACgHgAAoh4AAKIeAACkHgAApB4AAKYeAACmHgAAqB4AAKgeAACqHgAAqh4AAKweAACsHgAArh4AAK4eAACwHgAAsB4AALIeAACyHgAAtB4AALQeAAC2HgAAth4AALgeAAC4HgAAuh4AALoeAAC8HgAAvB4AAL4eAAC+HgAAwB4AAMAeAADCHgAAwh4AAMQeAADEHgAAxh4AAMYeAADIHgAAyB4AAMoeAADKHgAAzB4AAMweAADOHgAAzh4AANAeAADQHgAA0h4AANIeAADUHgAA1B4AANYeAADWHgAA2B4AANgeAADaHgAA2h4AANweAADcHgAA3h4AAN4eAADgHgAA4B4AAOIeAADiHgAA5B4AAOQeAADmHgAA5h4AAOgeAADoHgAA6h4AAOoeAADsHgAA7B4AAO4eAADuHgAA8B4AAPAeAADyHgAA8h4AAPQeAAD0HgAA9h4AAPYeAAD4HgAA+B4AAPoeAAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAuB8AALsfAADIHwAAyx8AANgfAADbHwAA6B8AAOwfAAD4HwAA+x8AAAIhAAACIQAAByEAAAchAAALIQAADSEAABAhAAASIQAAFSEAABUhAAAZIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAAtIQAAMCEAADMhAAA+IQAAPyEAAEUhAABFIQAAgyEAAIMhAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqnAABKpwAATKcAAEynAABOpwAATqcAAFCnAABQpwAAUqcAAFKnAABUpwAAVKcAAFanAABWpwAAWKcAAFinAABapwAAWqcAAFynAABcpwAAXqcAAF6nAABgpwAAYKcAAGKnAABipwAAZKcAAGSnAABmpwAAZqcAAGinAABopwAAaqcAAGqnAABspwAAbKcAAG6nAABupwAAeacAAHmnAAB7pwAAe6cAAH2nAAB+pwAAgKcAAICnAACCpwAAgqcAAISnAACEpwAAhqcAAIanAACLpwAAi6cAAI2nAACNpwAAkKcAAJCnAACSpwAAkqcAAJanAACWpwAAmKcAAJinAACapwAAmqcAAJynAACcpwAAnqcAAJ6nAACgpwAAoKcAAKKnAACipwAApKcAAKSnAACmpwAApqcAAKinAACopwAAqqcAAK6nAACwpwAAtKcAALanAAC2pwAAuKcAALinAAC6pwAAuqcAALynAAC8pwAAvqcAAL6nAADApwAAwKcAAMKnAADCpwAAxKcAAMenAADJpwAAyacAANCnAADQpwAA1qcAANanAADYpwAA2KcAAPWnAAD1pwAAIf8AADr/AAAABAEAJwQBALAEAQDTBAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCADAEAsgwBAKAYAQC/GAEAQG4BAF9uAQAA1AEAGdQBADTUAQBN1AEAaNQBAIHUAQCc1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALXUAQDQ1AEA6dQBAATVAQAF1QEAB9UBAArVAQAN1QEAFNUBABbV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AAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABPDQAAVA0AAGMNAABmDQAAfw0AANocAADaHAAAMKgAADKoAABABgAAQAYAAEAIAABbCAAAXggAAF4IAABABgAAQAYAAMAKAQDmCgEA6woBAPYKAQBkCQAAZQkAAAAdAQAGHQEACB0BAAkdAQALHQEANh0BADodAQA6HQEAPB0BAD0dAQA/HQEARx0BAFAdAQBZHQEAMKgAADmoAAAAFgEARBYBAFAWAQBZFgEAABgAABkYAAAgGAAAeBgAAIAYAACqGAAALyAAAC8gAABgFgEAbBYBAGYKAABvCgAAgBIBAIYSAQCIEgEAiBIBAIoSAQCNEgEAjxIBAJ0SAQCfEgEAqRIBAAAQAACfEAAALqkAAC6pAADgqQAA/qkAAGCqAAB/qgAAZAkAAGUJAADmDAAA7wwAAOkcAADpHAAA8hwAAPIcAAD6HAAA+hwAADCoAAA1qAAAoBkBAKcZAQCqGQEA1xkBANoZAQDkGQEADAYAAAwGAAAbBgAAGwYAAB8GAAAfBgAAwAcAAPoHAAD9BwAA/wcAAD79AAA//QAAgwQAAIMEAABQAwEAegMBAEAGAABABgAA8goBAPIKAQBwDwEAiQ8BAFEJAABSCQAAZAkAAGUJAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAA2hwAANocAADyHAAA8hwAAAIYAAADGAAABRgAAAUYAABAqAAAd6gAAEAGAABABgAAgAsBAJELAQCZCwEAnAsBAKkLAQCvCwEAUQkAAFEJAADXHAAA1xwAANkcAADZHAAA3BwAAN0cAADgHAAA4BwAAIARAQDfEQEAZAkAAGUJAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPQNAADhEQEA9BEBAEAGAABABgAAMA8BAFkPAQBkCQAAZQkAAOYJAADvCQAAAKgAACyoAAAMBgAADAYAABsGAAAcBgAAHwYAAB8G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AADOHgAAzh4AANAeAADQHgAA0h4AANIeAADUHgAA1B4AANYeAADWHgAA2B4AANgeAADaHgAA2h4AANweAADcHgAA3h4AAN4eAADgHgAA4B4AAOIeAADiHgAA5B4AAOQeAADmHgAA5h4AAOgeAADoHgAA6h4AAOoeAADsHgAA7B4AAO4eAADuHgAA8B4AAPAeAADyHgAA8h4AAPQeAAD0HgAA9h4AAPYeAAD4HgAA+B4AAPoeAAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAgB8AAK8fAACyHwAAtB8AALcfAAC8HwAAwh8AAMQfAADHHwAAzB8AANgfAADbHwAA6B8AAOwfAADyHwAA9B8AAPcfAAD8HwAAJiEAACYhAAAqIQAAKyEAADIhAAAyIQAAYCEAAG8hAACDIQAAgyEAALYkAADPJAAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqnAACcpwAAnKcAAJ6nAACepwAAoKcAAKCnAACipwAAoqcAAKSnAACkpwAApqcAAKanAACopwAAqKcAAKqnAACupwAAsKcAALSnAAC2pwAAtqcAALinAAC4pwAAuqcAALqnAAC8pwAAvKcAAL6nAAC+pwAAwKcAAMCnAADCpwAAwqcAAMSnAADHpwAAyacAAMmnAADQpwAA0KcAANanAADWpwAA2KcAANinAAD1pwAA9acAAHCrAAC/qwAAAPsAAAb7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AAA8HgAAPB4AAD4eAAA+HgAAQB4AAEAeAABCHgAAQh4AAEQeAABEHgAARh4AAEYeAABIHgAASB4AAEoeAABKHgAATB4AAEweAABOHgAATh4AAFAeAABQHgAAUh4AAFIeAABUHgAAVB4AAFYeAABWHgAAWB4AAFgeAABaHgAAWh4AAFweAABcHgAAXh4AAF4eAABgHgAAYB4AAGIeAABiHgAAZB4AAGQeAABmHgAAZh4AAGgeAABoHgAAah4AAGoeAABsHgAAbB4AAG4eAABuHgAAcB4AAHAeAAByHgAAch4AAHQeAAB0HgAAdh4AAHYeAAB4HgAAeB4AAHoeAAB6HgAAfB4AAHweAAB+HgAAfh4AAIAeAACAHgAAgh4AAIIeAACEHgAAhB4AAIYeAACGHgAAiB4AAIgeAACKHgAAih4AAIweAACMHgAAjh4AAI4eAACQHgAAkB4AAJIeAACSHgAAlB4AAJQeAACeHgAAnh4AAKAeAACgHgAAoh4AAKIeAACkHgAApB4AAKYeAACmHgAAqB4AAKgeAACqHgAAqh4AAKweAACsHgAArh4AAK4eAACwHgAAsB4AALIeAACyHgAAtB4AALQeAAC2HgAAth4AALgeAAC4HgAAuh4AALoeAAC8HgAAvB4AAL4eAAC+HgAAwB4AAMAeAADCHgAAwh4AAMQeAADEHgAAxh4AAMYeAADIHgAAyB4AAMoeAADKHgAAzB4AAMweAADOHgAAzh4AANAeAADQHgAA0h4AANIeAADUHgAA1B4AANYeAADWHgAA2B4AANgeAADaHgAA2h4AANweAADcHgAA3h4AAN4eAADgHgAA4B4AAOIeAADiHgAA5B4AAOQeAADmHgAA5h4AAOgeAADoHgAA6h4AAOoeAADsHgAA7B4AAO4eAADuHgAA8B4AAPAeAADyHgAA8h4AAPQeAAD0HgAA9h4AAPYeAAD4HgAA+B4AAPoeAAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAiB8AAI8fAACYHwAAnx8AAKgfAACvHwAAuB8AALwfAADIHwAAzB8AANgfAADbHwAA6B8AAOwfAAD4HwAA/B8AACYhAAAmIQAAKiEAACshAAAyIQAAMiEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADpAQAh6QEAYQAAAHoAAAC1AAAAtQAAAN8AAAD2AAAA+AAAAP8AAAABAQAAAQEAAAMBAAADAQAABQEAAAUBAAAHAQAABwEAAAkBAAAJAQAACwEAAAsBAAANAQAADQEAAA8BAAAPAQAAEQEAABEBAAATAQAAEwEAABUBAAAVAQAAFwEAABcBAAAZAQAAGQEAABsBAAAbAQAAHQEAAB0BAAAfAQAAHwEAACEBAAAhAQAAIwEAACMBAAAlAQAAJQEAACcBAAAnAQAAKQEAACkBAAArAQAAKwEAAC0BAAAtAQAALwEAAC8BAAAxAQAAMQEAADMBAAAzAQAANQEAADUBAAA3AQAANwEAADoBAAA6AQAAPAEAADwBAAA+AQAAPgEAAEAB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AACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWn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AAAjHgAAJR4AACUeAAAnHgAAJx4AACkeAAApHgAAKx4AACseAAAtHgAALR4AAC8eAAAvHgAAMR4AADEeAAAzHgAAMx4AADUeAAA1HgAANx4AADceAAA5HgAAOR4AADseAAA7HgAAPR4AAD0eAAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACbHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAtB8AALYfAAC3HwAAvB8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADMHwAAzB8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAAD8HwAA/B8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANenAADXpwAA2acAANmnAAD2pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAi6QEAQ+kBAC0AAAAtAAAAigUAAIoFAAC+BQAAvgUAAAAUAAAAFAAABhgAAAYYAAAQIAAAFSAAAFMgAABTIAAAeyAAAHsgAACLIAAAiyAAABIiAAASIgAAFy4AABcuAAAaLgAAGi4AADouAAA7LgAAQC4AAEAuAABdLgAAXS4AABwwAAAcMAAAMDAAADAwAACgMAAAoDAAADH+AAAy/gAAWP4AAFj+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AAAwAAAAOQAAAKkAAACpAAAArgAAAK4AAAA8IAAAPCAAAEkgAABJIAAAIiEAACIhAAA5IQAAOSEAAJQhAACZIQAAqSEAAKohAAAaIwAAGyMAACgjAAAoIwAAzyMAAM8jAADpIwAA8yMAAPgjAAD6IwAAwiQAAMIkAACqJQAAqyUAALYlAAC2JQAAwCUAAMAlAAD7JQAA/iUAAAAmAAAEJgAADiYAAA4mAAARJgAAESYAABQmAAAVJgAAGCYAABgmAAAdJgAAHSYAACAmAAAgJgAAIiYAACMmAAAmJgAAJiYAAComAAAqJgAALiYAAC8mAAA4JgAAOiYAAEAmAABAJgAAQiYAAEImAABIJgAAUyYAAF8mAABgJgAAYyYAAGMmAABlJgAAZiYAAGgmAABoJgAAeyYAAHsmAAB+JgAAfyYAAJImAACXJgAAmSYAAJkmAACbJgAAnCYAAKAmAAChJgAApyYAAKcmAACqJgAAqyYAALAmAACxJgAAvSYAAL4mAADEJgAAxSYAAMgmAADIJgAAziYAAM8mAADRJgAA0SYAANMmAADUJgAA6SYAAOomAADwJgAA9SYAAPcmAAD6JgAA/SYAAP0mAAACJwAAAicAAAUnAAAFJwAACCcAAA0nAAAPJwAADycAABInAAASJwAAFCcAABQnAAAWJwAAFicAAB0nAAAdJwAAIScAACEnAAAoJwAAKCcAADMnAAA0JwAARCcAAEQnAABHJwAARycAAEwnAABMJwAATicAAE4nAABTJwAAVScAAFcnAABXJwAAYycAAGQnAACVJwAAlycAAKEnAAChJwAAsCcAALAnAAC/JwAAvycAADQpAAA1KQAABSsAAAcrAAAbKwAAHCsAAFArAABQKwAAVSsAAFUrAAAwMAAAMDAAAD0wAAA9MAAAlzIAAJcyAACZMgAAmTIAAATwAQAE8AEAz/ABAM/wAQBw8QEAcfEBAH7xAQB/8QEAjvEBAI7xAQCR8QEAmvEBAObxAQD/8QEAAfIBAALyAQAa8gEAGvIBAC/yAQAv8gEAMvIBADryAQBQ8gEAUfIBAADzAQAh8wEAJPMBAJPzAQCW8wEAl/MBAJnzAQCb8wEAnvMBAPDzAQDz8wEA9fMBAPfzAQD99AEA//QBAD31AQBJ9QEATvUBAFD1AQBn9QEAb/UBAHD1AQBz9QEAevUBAIf1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AABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACdHgAAnx4AAJ8eAAChHgAAoR4AAKMeAACjHgAApR4AAKUeAACnHgAApx4AAKkeAACpHgAAqx4AAKseAACtHgAArR4AAK8eAACvHgAAsR4AALEeAACzHgAAsx4AALUeAAC1HgAAtx4AALceAAC5HgAAuR4AALseAAC7HgAAvR4AAL0eAAC/HgAAvx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB9LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACdpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAeKcAAHqnAAB6pwAAfKcAAHynAAB/pwAAf6cAAIGnAACBpwAAg6cAAIOnAACFpwAAhacAAIenAACHpwAAjKcAAIynAACOpwAAjqcAAJGnAACRpwAAk6cAAJWnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAAK+nAACvpwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANOnAADTpwAA1acAANWnAADXpwAA16cAANmnAADZpwAA8qcAAPSnAAD2pwAA9qcAAPinAAD6pwAAMKsAAFqrAABcqwAAaasAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAgAcBAIAHAQCDBwEAhQcBAIcHAQCwBwEAsgcBALoHAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQDP1AEA6tQBAAPVAQAe1QEAN9UBAFLVAQBr1QEAhtUBAJ/VAQC61QEA09UBAO7VAQAH1gEAItYBADvWAQBW1gEAb9YBAIrWAQCl1gEAwtYBANrWAQDc1gEA4dYBAPzWAQAU1wEAFtcBABvXAQA21wEATtcBAFDXAQBV1wEAcNcBAIjXAQCK1wEAj9cBAKrXAQDC1wEAxNcBAMnX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AABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJ4eAACeHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAAC4HwAAux8AAMgfAADLHwAA2B8AANsfAADoHwAA7B8AAPgfAAD7HwAAAiEAAAIhAAAHIQAAByEAAAshAAANIQAAECEAABIhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAwIQAAMyEAAD4hAAA/IQAARSEAAEUhAABgIQAAbyEAAIMhAACDIQAAtiQAAM8kAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqnAABKpwAATKcAAEynAABOpwAATqcAAFCnAABQpwAAUqcAAFKnAABUpwAAVKcAAFanAABWpwAAWKcAAFinAABapwAAWqcAAFynAABcpwAAXqcAAF6nAABgpwAAYKcAAGKnAABipwAAZKcAAGSnAABmpwAAZqcAAGinAABopwAAaqcAAGqnAABspwAAbKcAAG6nAABupwAAeacAAHmnAAB7pwAAe6cAAH2nAAB+pwAAgKcAAICnAACCpwAAgqcAAISnAACEpwAAhqcAAIanAACLpwAAi6cAAI2nAACNpwAAkKcAAJCnAACSpwAAkqcAAJanAACWpwAAmKcAAJinAACapwAAmqcAAJynAACcpwAAnqcAAJ6nAACgpwAAoKcAAKKnAACipwAApKcAAKSnAACmpwAApqcAAKinAACopwAAqqcAAK6nAACwpwAAtKcAALanAAC2pwAAuKcAALinAAC6pwAAuqcAALynAAC8pwAAvqcAAL6nAADApwAAwKcAAMKnAADCpwAAxKcAAMenAADJpwAAyacAANCnAADQpwAA1qcAANanAADYpwAA2KcAAPWnAAD1pwAAIf8AADr/AAAABAEAJwQBALAEAQDTBAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCADAEAsgwBAKAYAQC/GAEAQG4BAF9uAQAA1AEAGdQBADTUAQBN1AEAaNQBAIHUAQCc1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALXUAQDQ1AEA6dQBAATVAQAF1QEAB9UBAArVAQAN1QEAFNUBABbVAQAc1QEAONUBADnVAQA71QEAPtUBAEDVAQBE1QEARtUBAEbVAQBK1QEAUNUBAGzVAQCF1QEAoNUBALnVAQDU1QEA7dUBAAjWAQAh1gEAPNYBAFXWAQBw1gEAidYBAKjWAQDA1gEA4tYBAPrWAQAc1wEANNcBAFbXAQBu1wEAkNcBAKjXAQDK1wEAytcBAADpAQAh6QEAMPEBAEnxAQBQ8QEAafEBAHDxAQCJ8QEACxgAAA0YAAAPGAAADxgAAAD+AAAP/gAAAAEOAO8BDgAwAAAAOQAAAEEAAABaAAAAXwAAAF8AAABhAAAAegAAAKoAAACqAAAAtQAAALUAAAC3AAAAtwAAALoAAAC6AAAAwAAAANYAAADYAAAA9gAAAPgAAADBAgAAxgIAANECAADgAgAA5AIAAOwCAADsAgAA7gIAAO4CAAAAAwAAdAMAAHYDAAB3AwAAewMAAH0DAAB/AwAAfwMAAIYDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAAD1AwAA9wMAAIEEAACDBAAAhwQAAIoEAAAvBQAAMQUAAFYFAABZBQAAWQUAAGAFAACIBQAAkQUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMUFAADHBQAAxwUAANAFAADqBQAA7wUAAPIFAAAQBgAAGgYAACAGAABpBgAAbgYAANMGAADVBgAA3AYAAN8GAADoBgAA6gYAAPwGAAD/BgAA/wYAABAHAABKBwAATQcAALEHAADABwAA9QcAAPoHAAD6BwAA/QcAAP0HAAAACAAALQgAAEAIAABbCAAAYAgAAGoIAABwCAAAhwgAAIkIAACOCAAAmAgAAOEIAADjCAAAYwkAAGYJAABvCQAAcQkAAIMJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC8CQAAxAkAAMcJAADICQAAywkAAM4JAADXCQAA1wkAANwJAADdCQAA3wkAAOMJAADmCQAA8QkAAPwJAAD8CQAA/gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdQoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADvCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAABvCwAAcQsAAHELAACCCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAAL4LAADCCwAAxgsAAMgLAADKCwAAzQsAANALAADQCwAA1wsAANcLAADmCwAA7wsAAAAMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPAwAAEQMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABYDAAAWgwAAF0MAABdDAAAYAwAAGMMAABmDAAAbwwAAIAMAACDDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAALwMAADEDAAAxgwAAMgMAADKDAAAzQwAANUMAADWDAAA3QwAAN4MAADgDAAA4wwAAOYMAADvDAAA8QwAAPMMAAAADQAADA0AAA4NAAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABODQAAVA0AAFcNAABfDQAAYw0AAGYNAABvDQAAeg0AAH8NAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPMNAAABDgAAOg4AAEAOAABODgAAUA4AAFkOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AAL0OAADADgAAxA4AAMYOAADGDgAAyA4AAM4OAADQDgAA2Q4AANwOAADfDgAAAA8AAAAPAAAYDwAAGQ8AACAPAAApDwAANQ8AADUPAAA3DwAANw8AADkPAAA5DwAAPg8AAEcPAABJDwAAbA8AAHEPAACEDwAAhg8AAJcPAACZDwAAvA8AAMYPAADGDwAAABAAAEkQAABQEAAAnRAAAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAANAQAAD6EAAA/BAAAEgSAABKEgAATRIAAFASAABWEgAAWBIAAFgSAABaEgAAXRIAAGASAACIEgAAihIAAI0SAACQEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAANYSAADYEgAAEBMAABITAAAVEwAAGBMAAFoTAABdEwAAXxMAAGkTAABxEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADuFgAA+BYAAAAXAAAVFwAAHxcAADQXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAIAXAADTFwAA1xcAANcXAADcFwAA3RcAAOAXAADpFwAACxgAAA0YAAAPGAAAGRgAACAYAAB4GAAAgBgAAKoYAACwGAAA9RgAAAAZAAAeGQAAIBkAACsZAAAwGQAAOxkAAEYZAABtGQAAcBkAAHQZAACAGQAAqxkAALAZAADJGQAA0BkAANoZAAAAGgAAGxoAACAaAABeGgAAYBoAAHwaAAB/GgAAiRoAAJAaAACZGgAApxoAAKcaAACwGgAAvRoAAL8aAADOGgAAABsAAEwbAABQGwAAWRsAAGsbAABzGwAAgBsAAPMbAAAAHAAANxwAAEAcAABJHAAATRwAAH0cAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAADQHAAA0hwAANQcAAD6HAAAAB0AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAvB8AAL4fAAC+HwAAwh8AAMQfAADGHwAAzB8AANAfAADTHwAA1h8AANsfAADgHwAA7B8AAPIfAAD0HwAA9h8AAPwfAAA/IAAAQCAAAFQgAABUIAAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAA0CAAANwgAADhIAAA4SAAAOUgAADwIAAAAiEAAAIhAAAHIQAAByEAAAohAAATIQAAFSEAABUhAAAYIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAA5IQAAPCEAAD8hAABFIQAASSEAAE4hAABOIQAAYCEAAIghAAAALAAA5CwAAOssAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAMC0AAGctAABvLQAAby0AAH8tAACWLQAAoC0AAKYtAACoLQAAri0AALAtAAC2LQAAuC0AAL4tAADALQAAxi0AAMgtAADOLQAA0C0AANYtAADYLQAA3i0AAOAtAAD/LQAABTAAAAcwAAAhMAAALzAAADEwAAA1MAAAODAAADwwAABBMAAAljAAAJkwAACaMAAAnTAAAJ8wAAChMAAA+jAAAPwwAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAACMpAAA0KQAAP2kAAAApQAADKYAABCmAAArpgAAQKYAAG+mAAB0pgAAfaYAAH+mAADxpgAAF6cAAB+nAAAipwAAiKcAAIunAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAACeoAAAsqAAALKgAAECoAABzqAAAgKgAAMWoAADQqAAA2agAAOCoAAD3qAAA+6gAAPuoAAD9qAAALakAADCpAABTqQAAYKkAAHypAACAqQAAwKkAAM+pAADZqQAA4KkAAP6pAAAAqgAANqoAAECqAABNqgAAUKoAAFmqAABgqgAAdqoAAHqqAADCqgAA26oAAN2qAADgqgAA76oAAPKqAAD2qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABaqwAAXKsAAGmrAABwqwAA6qsAAOyrAADtqwAA8KsAAPmrAAAArAAAo9cAALDXAADG1wAAy9cAAPvXAAAA+QAAbfoAAHD6AADZ+gAAAPsAAAb7AAAT+wAAF/sAAB37AAAo+wAAKvsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AACx+wAA0/sAAF38AABk/AAAPf0AAFD9AACP/QAAkv0AAMf9AADw/QAA+f0AAAD+AAAP/gAAIP4AAC/+AAAz/gAANP4AAE3+AABP/gAAcf4AAHH+AABz/gAAc/4AAHf+AAB3/gAAef4AAHn+AAB7/gAAe/4AAH3+AAB9/gAAf/4AAPz+AAAQ/wAAGf8AACH/AAA6/wAAP/8AAD//AABB/wAAWv8AAGb/AAC+/wAAwv8AAMf/AADK/wAAz/8AANL/AADX/wAA2v8AANz/AAAAAAEACwABAA0AAQAmAAEAKAABADoAAQA8AAEAPQABAD8AAQBNAAEAUAABAF0AAQCAAAEA+gABAEABAQB0AQEA/QEBAP0BAQCAAgEAnAIBAKACAQDQAgEA4AIBAOACAQAAAwEAHwMBAC0DAQBKAwEAUAMBAHoDAQCAAwEAnQMBAKADAQDDAwEAyAMBAM8DAQDRAwEA1QMBAAAEAQCdBAEAoAQBAKkEAQCwBAEA0wQBANgEAQD7BAEAAAUBACcFAQAwBQEAYwUBAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQAABgEANgcBAEAHAQBVBwEAYAcBAGcHAQCABwEAhQcBAIcHAQCwBwEAsgcBALoHAQAACAEABQgBAAgIAQAICAEACggBADUIAQA3CAEAOAgBADwIAQA8CAEAPwgBAFUIAQBgCAEAdggBAIAIAQCeCAEA4AgBAPIIAQD0CAEA9QgBAAAJAQAVCQEAIAkBADkJAQCACQEAtwkBAL4JAQC/CQEAAAoBAAMKAQAFCgEABgoBAAwKAQATCgEAFQoBABcKAQAZCgEANQoBADgKAQA6CgEAPwoBAD8KAQBgCgEAfAoBAIAKAQCcCgEAwAoBAMcKAQDJCgEA5goBAAALAQA1CwEAQAsBAFULAQBgCwEAcgsBAIALAQCRCwEAAAwBAEgMAQCADAEAsgwBAMAMAQDyDAEAAA0BACcNAQAwDQEAOQ0BAIAOAQCpDgEAqw4BAKwOAQCwDgEAsQ4BAP0OAQAcDwEAJw8BACcPAQAwDwEAUA8BAHAPAQCFDwEAsA8BAMQPAQDgDwEA9g8BAAAQAQBGEAEAZhABAHUQAQB/EAEAuhABAMIQAQDCEAEA0BABAOgQAQDwEAEA+RABAAARAQA0EQEANhEBAD8RAQBEEQEARxEBAFARAQBzEQEAdhEBAHYRAQCAEQEAxBEBAMkRAQDMEQEAzhEBANoRAQDcEQEA3BEBAAASAQAREgEAExIBADcSAQA+EgEAQRIBAIASAQCGEgEAiBIBAIgSAQCKEgEAjRIBAI8SAQCdEgEAnxIBAKgSAQCwEgEA6hIBAPASAQD5EgEAABMBAAMTAQAFEwEADBMBAA8TAQAQEwEAExMBACgTAQAqEwEAMBMBADITAQAzEwEANRMBADkTAQA7EwEARBMBAEcTAQBIEwEASxMBAE0TAQBQEwEAUBMBAFcTAQBXEwEAXRMBAGMTAQBmEwEAbBMBAHATAQB0EwEAABQBAEoUAQBQFAEAWRQBAF4UAQBhFAEAgBQBAMUUAQDHFAEAxxQBANAUAQDZFAEAgBUBALUVAQC4FQEAwBUBANgVAQDdFQEAABYBAEAWAQBEFgEARBYBAFAWAQBZFgEAgBYBALgWAQDAFgEAyRYBAAAXAQAaFwEAHRcBACsXAQAwFwEAORcBAEAXAQBGFwEAABgBADoYAQCgGAEA6RgBAP8YAQAGGQEACRkBAAkZAQAMGQEAExkBABUZAQAWGQEAGBkBADUZAQA3GQEAOBkBADsZAQBDGQEAUBkBAFkZAQCgGQEApxkBAKoZAQDXGQEA2hkBAOEZAQDjGQEA5BkBAAAaAQA+GgEARxoBAEcaAQBQGgEAmRoBAJ0aAQCdGgEAsBoBAPgaAQAAHAEACBwBAAocAQA2HAEAOBwBAEAcAQBQHAEAWRwBAHIcAQCPHAEAkhwBAKccAQCpHAEAthwBAAAdAQAGHQEACB0BAAkdAQALHQEANh0BADodAQA6HQEAPB0BAD0dAQA/HQEARx0BAFAdAQBZHQEAYB0BAGUdAQBnHQEAaB0BAGodAQCOHQEAkB0BAJEdAQCTHQEAmB0BAKAdAQCpHQEA4B4BAPYeAQAAHwEAEB8BABIfAQA6HwEAPh8BAEIfAQBQHwEAWR8BALAfAQCwHwEAACABAJkjAQAAJAEAbiQBAIAkAQBDJQEAkC8BAPAvAQAAMAEALzQBAEA0AQBVNAEAAEQBAEZGAQAAaAEAOGoBAEBqAQBeagEAYGoBAGlqAQBwagEAvmoBAMBqAQDJagEA0GoBAO1qAQDwagEA9GoBAABrAQA2awEAQGsBAENrAQBQawEAWWsBAGNrAQB3awEAfWsBAI9rAQBAbgEAf24BAABvAQBKbwEAT28BAIdvAQCPbwEAn28BAOBvAQDhbwEA428BAORvAQDwbwEA8W8BAABwAQD3hwEAAIgBANWMAQAAjQEACI0BAPCvAQDzrwEA9a8BAPuvAQD9rwEA/q8BAACwAQAisQEAMrEBADKxAQBQsQEAUrEBAFWxAQBVsQEAZLEBAGexAQBwsQEA+7IBAAC8AQBqvAEAcLwBAHy8AQCAvAEAiLwBAJC8AQCZvAEAnbwBAJ68AQAAzwEALc8BADDPAQBGzwEAZdEBAGnRAQBt0QEActEBAHvRAQCC0QEAhdEBAIvRAQCq0QEArdEBAELSAQBE0gEAANQBAFTUAQBW1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALnUAQC71AEAu9QBAL3UAQDD1AEAxdQBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQAe1QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAUtUBAKXWAQCo1gEAwNYBAMLWAQDa1gEA3NYBAPrWAQD81gEAFNcBABbXAQA01wEANtcBAE7XAQBQ1wEAbtcBAHDXAQCI1wEAitcBAKjXAQCq1wEAwtcBAMTXAQDL1wEAztcBAP/XAQAA2gEANtoBADvaAQBs2gEAddoBAHXaAQCE2gEAhNoBAJvaAQCf2gEAodoBAK/aAQAA3wEAHt8BACXfAQAq3wEAAOABAAbgAQAI4AEAGOABABvgAQAh4AEAI+ABACTgAQAm4AEAKuABADDgAQBt4AEAj+ABAI/gAQAA4QEALOEBADDhAQA94QEAQOEBAEnhAQBO4QEATuEBAJDiAQCu4gEAwOIBAPniAQDQ5AEA+eQBAODnAQDm5wEA6OcBAOvnAQDt5wEA7ucBAPDnAQD+5wEAAOgBAMToAQDQ6AEA1ugBAADpAQBL6QEAUOkBAFnpAQAA7gEAA+4BAAXuAQAf7gEAIe4BACLuAQAk7gEAJO4BACfuAQAn7gEAKe4BADLuAQA07gEAN+4BADnuAQA57gEAO+4BADvuAQBC7gEAQu4BAEfuAQBH7gEASe4BAEnuAQBL7gEAS+4BAE3uAQBP7gEAUe4BAFLuAQBU7gEAVO4BAFfuAQBX7gEAWe4BAFnuAQBb7gEAW+4BAF3uAQBd7gEAX+4BAF/uAQBh7gEAYu4BAGTuAQBk7gEAZ+4BAGruAQBs7gEAcu4BAHTuAQB37gEAee4BAHzuAQB+7gEAfu4BAIDuAQCJ7gEAi+4BAJvuAQCh7gEAo+4BAKXuAQCp7gEAq+4BALvuAQDw+wEA+fsBAAAAAgDfpgIAAKcCADm3AgBAtwIAHbgCACC4AgChzgIAsM4CAODrAgAA+AIAHfoCAAAAAwBKEwMAUBMDAK8jAwAAAQ4A7wEOAEEAAABaAAAAYQAAAHoAAACqAAAAqgAAALUAAAC1AAAAugAAALoAAADAAAAA1gAAANgAAAD2AAAA+AAAAMECAADGAgAA0QIAAOACAADkAgAA7AIAAOwCAADuAgAA7gIAAHADAAB0AwAAdgMAAHcDAAB7AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAigQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAADQBQAA6gUAAO8FAADyBQAAIAYAAEoGAABuBgAAbwYAAHEGAADTBgAA1QYAANUGAADlBgAA5gYAAO4GAADvBgAA+gYAAPwGAAD/BgAA/wYAABAHAAAQBwAAEgcAAC8HAABNBwAApQcAALEHAACxBwAAygcAAOoHAAD0BwAA9QcAAPoHAAD6BwAAAAgAABUIAAAaCAAAGggAACQIAAAkCAAAKAgAACgIAABACAAAWAgAAGAIAABqCAAAcAgAAIcIAACJCAAAjggAAKAIAADJCAAABAkAADkJAAA9CQAAPQkAAFAJAABQCQAAWAkAAGEJAABxCQAAgAkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAAL0JAAC9CQAAzgkAAM4JAADcCQAA3QkAAN8JAADhCQAA8AkAAPEJAAD8CQAA/AkAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAWQoAAFwKAABeCgAAXgoAAHIKAAB0CgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAL0KAADQCgAA0AoAAOAKAADhCgAA+QoAAPkKAAAFCwAADAsAAA8LAAAQCwAAEwsAACgLAAAqCwAAMAsAADILAAAzCwAANQsAADkLAAA9CwAAPQsAAFwLAABdCwAAXwsAAGELAABxCwAAcQsAAIMLAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAA0AsAANALAAAFDAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAAD0MAAA9DAAAWAwAAFoMAABdDAAAXQwAAGAMAABhDAAAgAwAAIAMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL0MAADdDAAA3gwAAOAMAADhDAAA8QwAAPIMAAAEDQAADA0AAA4NAAAQDQAAEg0AADoNAAA9DQAAPQ0AAE4NAABODQAAVA0AAFYNAABfDQAAYQ0AAHoNAAB/DQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAAEOAAAwDgAAMg4AADIOAABADgAARg4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAsA4AALIOAACyDgAAvQ4AAL0OAADADgAAxA4AAMYOAADGDgAA3A4AAN8OAAAADwAAAA8AAEAPAABHDwAASQ8AAGwPAACIDwAAjA8AAAAQAAAqEAAAPxAAAD8QAABQEAAAVRAAAFoQAABdEAAAYRAAAGEQAABlEAAAZhAAAG4QAABwEAAAdRAAAIEQAACOEAAAjhAAAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAANAQAAD6EAAA/BAAAEgSAABKEgAATRIAAFASAABWEgAAWBIAAFgSAABaEgAAXRIAAGASAACIEgAAihIAAI0SAACQEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAANYSAADYEgAAEBMAABITAAAVEwAAGBMAAFoTAACAEwAAjxMAAKATAAD1EwAA+BMAAP0TAAABFAAAbBYAAG8WAAB/FgAAgRYAAJoWAACgFgAA6hYAAO4WAAD4FgAAABcAABEXAAAfFwAAMRcAAEAXAABRFwAAYBcAAGwXAABuFwAAcBcAAIAXAACzFwAA1xcAANcXAADcFwAA3BcAACAYAAB4GAAAgBgAAKgYAACqGAAAqhgAALAYAAD1GAAAABkAAB4ZAABQGQAAbRkAAHAZAAB0GQAAgBkAAKsZAACwGQAAyRkAAAAaAAAWGgAAIBoAAFQaAACnGgAApxoAAAUbAAAzGwAARRsAAEwbAACDGwAAoBsAAK4bAACvGwAAuhsAAOUbAAAAHAAAIxwAAE0cAABPHAAAWhwAAH0cAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAADpHAAA7BwAAO4cAADzHAAA9RwAAPYcAAD6HAAA+hwAAAAdAAC/HQAAAB4AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAvB8AAL4fAAC+HwAAwh8AAMQfAADGHwAAzB8AANAfAADTHwAA1h8AANsfAADgHwAA7B8AAPIfAAD0HwAA9h8AAPwfAABxIAAAcSAAAH8gAAB/IAAAkCAAAJwgAAACIQAAAiEAAAchAAAHIQAACiEAABMhAAAVIQAAFSEAABghAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAADkhAAA8IQAAPyEAAEUhAABJIQAATiEAAE4hAABgIQAAiCEAAAAsAADkLAAA6ywAAO4sAADyLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAG8tAACALQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAAAFMAAABzAAACEwAAApMAAAMTAAADUwAAA4MAAAPDAAAEEwAACWMAAAnTAAAJ8wAAChMAAA+jAAAPwwAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAACMpAAA0KQAAP2kAAAApQAADKYAABCmAAAfpgAAKqYAACumAABApgAAbqYAAH+mAACdpgAAoKYAAO+mAAAXpwAAH6cAACKnAACIpwAAi6cAAMqnAADQpwAA0acAANOnAADTpwAA1acAANmnAADypwAAAagAAAOoAAAFqAAAB6gAAAqoAAAMqAAAIqgAAECoAABzqAAAgqgAALOoAADyqAAA96gAAPuoAAD7qAAA/agAAP6oAAAKqQAAJakAADCpAABGqQAAYKkAAHypAACEqQAAsqkAAM+pAADPqQAA4KkAAOSpAADmqQAA76kAAPqpAAD+qQAAAKoAACiqAABAqgAAQqoAAESqAABLqgAAYKoAAHaqAAB6qgAAeqoAAH6qAACvqgAAsaoAALGqAAC1qgAAtqoAALmqAAC9qgAAwKoAAMCqAADCqgAAwqoAANuqAADdqgAA4KoAAOqqAADyqgAA9KoAAAGrAAAGqwAACasAAA6rAAARqwAAFqsAACCrAAAmqwAAKKsAAC6rAAAwqwAAWqsAAFyrAABpqwAAcKsAAOKrAAAArAAAo9cAALDXAADG1wAAy9cAAPvXAAAA+QAAbfoAAHD6AADZ+gAAAPsAAAb7AAAT+wAAF/sAAB37AAAd+wAAH/sAACj7AAAq+wAANvsAADj7AAA8+wAAPvsAAD77AABA+wAAQfsAAEP7AABE+wAARvsAALH7AADT+wAAXfwAAGT8AAA9/QAAUP0AAI/9AACS/QAAx/0AAPD9AAD5/QAAcf4AAHH+AABz/gAAc/4AAHf+AAB3/gAAef4AAHn+AAB7/gAAe/4AAH3+AAB9/gAAf/4AAPz+AAAh/wAAOv8AAEH/AABa/wAAZv8AAJ3/AACg/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEAPAABAD0AAQA/AAEATQABAFAAAQBdAAEAgAABAPoAAQBAAQEAdAEBAIACAQCcAgEAoAIBANACAQAAAwEAHwMBAC0DAQBKAwEAUAMBAHUDAQCAAwEAnQMBAKADAQDDAwEAyAMBAM8DAQDRAwEA1QMBAAAEAQCdBAEAsAQBANMEAQDYBAEA+wQBAAAFAQAnBQEAMAUBAGMFAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAAAYBADYHAQBABwEAVQcBAGAHAQBnBwEAgAcBAIUHAQCHBwEAsAcBALIHAQC6BwEAAAgBAAUIAQAICAEACAgBAAoIAQA1CAEANwgBADgIAQA8CAEAPAgBAD8IAQBVCAEAYAgBAHYIAQCACAEAnggBAOAIAQDyCAEA9AgBAPUIAQAACQEAFQkBACAJAQA5CQEAgAkBALcJAQC+CQEAvwkBAAAKAQAACgEAEAoBABMKAQAVCgEAFwoBABkKAQA1CgEAYAoBAHwKAQCACgEAnAoBAMAKAQDHCgEAyQoBAOQKAQAACwEANQsBAEALAQBVCwEAYAsBAHILAQCACwEAkQsBAAAMAQBIDAEAgAwBALIMAQDADAEA8gwBAAANAQAjDQEAgA4BAKkOAQCwDgEAsQ4BAAAPAQAcDwEAJw8BACcPAQAwDwEARQ8BAHAPAQCBDwEAsA8BAMQPAQDgDwEA9g8BAAMQAQA3EAEAcRABAHIQAQB1EAEAdRABAIMQAQCvEAEA0BABAOgQAQADEQEAJhEBAEQRAQBEEQEARxEBAEcRAQBQEQEAchEBAHYRAQB2EQEAgxEBALIRAQDBEQEAxBEBANoRAQDaEQEA3BEBANwRAQAAEgEAERIBABMSAQArEgEAPxIBAEASAQCAEgEAhhIBAIgSAQCIEgEAihIBAI0SAQCPEgEAnRIBAJ8SAQCoEgEAsBIBAN4SAQAFEwEADBMBAA8TAQAQEwEAExMBACgTAQAqEwEAMBMBADITAQAzEwEANRMBADkTAQA9EwEAPRMBAFATAQBQEwEAXRMBAGETAQAAFAEANBQBAEcUAQBKFAEAXxQBAGEUAQCAFAEArxQBAMQUAQDFFAEAxxQBAMcUAQCAFQEArhUBANgVAQDbFQEAABYBAC8WAQBEFgEARBYBAIAWAQCqFgEAuBYBALgWAQAAFwEAGhcBAEAXAQBGFwEAABgBACsYAQCgGAEA3xgBAP8YAQAGGQEACRkBAAkZAQAMGQEAExkBABUZAQAWGQEAGBkBAC8ZAQA/GQEAPxkBAEEZAQBBGQEAoBkBAKcZAQCqGQEA0BkBAOEZAQDhGQEA4xkBAOMZAQAAGgEAABoBAAsaAQAyGgEAOhoBADoaAQBQGgEAUBoBAFwaAQCJGgEAnRoBAJ0aAQCwGgEA+BoBAAAcAQAIHAEAChwBAC4cAQBAHAEAQBwBAHIcAQCPHAEAAB0BAAYdAQAIHQEACR0BAAsdAQAwHQEARh0BAEYdAQBgHQEAZR0BAGcdAQBoHQEAah0BAIkdAQCYHQEAmB0BAOAeAQDyHgEAAh8BAAIfAQAEHwEAEB8BABIfAQAzHwEAsB8BALAfAQAAIAEAmSMBAAAkAQBuJAEAgCQBAEMlAQCQLwEA8C8BAAAwAQAvNAEAQTQBAEY0AQAARAEARkYBAABoAQA4agEAQGoBAF5qAQBwagEAvmoBANBqAQDtagEAAGsBAC9rAQBAawEAQ2sBAGNrAQB3awEAfWsBAI9rAQBAbgEAf24BAABvAQBKbwEAUG8BAFBvAQCTbwEAn28BAOBvAQDhbwEA428BAONvAQAAcAEA94cBAACIAQDVjAEAAI0BAAiNAQDwrwEA868BAPWvAQD7rwEA/a8BAP6vAQAAsAEAIrEBADKxAQAysQEAULEBAFKxAQBVsQEAVbEBAGSxAQBnsQEAcLEBAPuyAQAAvAEAarwBAHC8AQB8vAEAgLwBAIi8AQCQvAEAmbwBAADUAQBU1AEAVtQBAJzUAQCe1AEAn9QBAKLUAQCi1AEApdQBAKbUAQCp1AEArNQBAK7UAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQAF1QEAB9UBAArVAQAN1QEAFNUBABbVAQAc1QEAHtUBADnVAQA71QEAPtUBAEDVAQBE1QEARtUBAEbVAQBK1QEAUNUBAFLVAQCl1gEAqNYBAMDWAQDC1gEA2tYBANzWAQD61gEA/NYBABTXAQAW1wEANNcBADbXAQBO1wEAUNcBAG7XAQBw1wEAiNcBAIrXAQCo1wEAqtcBAMLXAQDE1wEAy9cBAADfAQAe3wEAJd8BACrfAQAw4AEAbeABAADhAQAs4QEAN+EBAD3hAQBO4QEATuEBAJDiAQCt4gEAwOIBAOviAQDQ5AEA6+QBAODnAQDm5wEA6OcBAOvnAQDt5wEA7ucBAPDnAQD+5wEAAOgBAMToAQAA6QEAQ+kBAEvpAQBL6QEAAO4BAAPuAQAF7gEAH+4BACHuAQAi7gEAJO4BACTuAQAn7gEAJ+4BACnuAQAy7gEANO4BADfuAQA57gEAOe4BADvuAQA77gEAQu4BAELuAQBH7gEAR+4BAEnuAQBJ7gEAS+4BAEvuAQBN7gEAT+4BAFHuAQBS7gEAVO4BAFTuAQBX7gEAV+4BAFnuAQBZ7gEAW+4BAFvuAQBd7gEAXe4BAF/uAQBf7gEAYe4BAGLuAQBk7gEAZO4BAGfuAQBq7gEAbO4BAHLuAQB07gEAd+4BAHnuAQB87gEAfu4BAH7uAQCA7gEAie4BAIvuAQCb7gEAoe4BAKPuAQCl7gEAqe4BAKvuAQC77gEAAAACAN+mAgAApwIAObcCAEC3AgAduAIAILgCAKHOAgCwzgIA4OsCAAD4AgAd+gIAAAADAEoTAwBQEwMAryMDAFP/EQAPAAAAyKITAAMAAABi/xEACgAAAOCiEwDcAgAAlP8RAAwAAADAuRMABAAAALn/EQANAAAA4LkTAHIAAACzABIADgAAAHC9EwC1AQAAigASAAUAAAAYyxMAnQAAAPAAEgAXAAAAANATAG4CAAAcARIAFwAAAHDjEwCDAAAASAESABcAAACI5xMAYQIAAKkBEgAXAAAAkPoTAHICAADVARIAFwAAACAOFABzAgAABwQSAAQAAAC4IRQAFwAAAHAEEgAcAAAAcCIUABEAAACPBBIACgAAAPgiFAAIAAAAqAQSAAkAAAA4IxQAwwAAACEFEgAFAAAAUCkUAJcAAAD7BBIADwAAAAguFAAKAAAADgUSAA4AAABYLhQAAQAAAOMEEgATAAAAYC4UACgAAABjBRIAEgAAAKAvFABRAAAAQgYSABUAAAAoMhQATgAAACYGEgAIAAAAmDQUACEAAADABhIADQAAAKA1FABrAwAA7wYSAA8AAAD4UBQAawEAAAoHEgANAAAAUFwUADgAAABRBxIACQAAABBeFAAGAAAAawcSAAYAAABAXhQACgAAALIHEgATAAAAkF4UAAIAAADaBxIAFAAAAKBeFAABAAAAdAcSAAsAAACoXhQAAAMAAKYHEgAIAAAAqHYUAJMCAACNBxIACwAAAECLFAAUAAAAqQgSAAwAAADgixQAAQAAAOAJEgAXAAAA6IsUAAcAAAARChIACQAAACCMFACfAgAANwoSAAQAAAAYoRQAigAAAGoKEgAXAAAAaKUUABIAAAB5CxIAEAAAAPilFADwAAAAlAsSACIAAAB4rRQACwAAALwLEgAVAAAA0K0UABkAAADVCxIAEQAAAJiuFAAEAAAA6gsSAA4AAAC4rhQABAAAAP4LEgAPAAAA2K4UABwAAAASDBIACgAAALivFACGAAAAnAwSAA8AAADosxQABQAAALcMEgAOAAAAELQUABwAAADjDBIAEwAAAPC0FAAFAAAA/gwSABwAAAAYtRQABwAAADkNEgAOAAAAULUUAA0AAABbDRIABwAAALi1FAADAAAAcw0SABIAAADQtRQAAQAAAOINEgARAAAA2LUUAFAAAAC6DRIACwAAAFi4FAAiAAAA0A4SABQAAABouRQAbAAAAB8PEgARAAAAyLwUABAAAABlDxIACQAAAEi9FACLAgAAmw8SABIAAACg0RQABAAAAKMOEgALAAAAvPwRAAoAAAD3DxIADAAAAMDRFAAHAwAAEhASAAkAAAD46RQAmgIAAA0AAAANAAAAAAAAAAkAAAALAAAADAAAAA4AAAAfAAAAfwAAAJ8AAACtAAAArQAAABwGAAAcBgAADhgAAA4YAAALIAAACyAAAA4gAAAPIAAAKCAAAC4gAABgIAAAbyAAAP/+AAD//gAA8P8AAPv/AAAwNAEAPzQBAKC8AQCjvAEAc9EBAHrRAQAAAA4AHwAOAIAADgD/AA4A8AEOAP8PDgAAAwAAbwMAAIMEAACJBAAAkQUAAL0FAAC/BQAAvwUAAMEFAADCBQAAxAUAAMUFAADHBQAAxwUAABAGAAAaBgAASwYAAF8GAABwBgAAcAYAANYGAADcBgAA3wYAAOQGAADnBgAA6AYAAOoGAADtBgAAEQcAABEHAAAwBwAASgcAAKYHAACwBwAA6wcAAPMHAAD9BwAA/QcAABYIAAAZCAAAGwgAACMIAAAlCAAAJwgAACkIAAAtCAAAWQgAAFsIAACYCAAAnwgAAMoIAADhCAAA4wgAAAIJAAA6CQAAOgkAADwJAAA8CQAAQQkAAEgJAABNCQAATQkAAFEJAABXCQAAYgkAAGMJAACBCQAAgQkAALwJAAC8CQAAvgkAAL4JAADBCQAAxAkAAM0JAADNCQAA1wkAANcJAADiCQAA4wkAAP4JAAD+CQAAAQoAAAIKAAA8CgAAPAoAAEEKAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAcAoAAHEKAAB1CgAAdQoAAIEKAACCCgAAvAoAALwKAADBCgAAxQoAAMcKAADICgAAzQoAAM0KAADiCgAA4woAAPoKAAD/CgAAAQsAAAELAAA8CwAAPAsAAD4LAAA/CwAAQQsAAEQLAABNCwAATQsAAFULAABXCwAAYgsAAGMLAACCCwAAggsAAL4LAAC+CwAAwAsAAMALAADNCwAAzQsAANcLAADXCwAAAAwAAAAMAAAEDAAABAwAADwMAAA8DAAAPgwAAEAMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABiDAAAYwwAAIEMAACBDAAAvAwAALwMAAC/DAAAvwwAAMIMAADCDAAAxgwAAMYMAADMDAAAzQwAANUMAADWDAAA4gwAAOMMAAAADQAAAQ0AADsNAAA8DQAAPg0AAD4NAABBDQAARA0AAE0NAABNDQAAVw0AAFcNAABiDQAAYw0AAIENAACBDQAAyg0AAMoNAADPDQAAzw0AANINAADUDQAA1g0AANYNAADfDQAA3w0AADEOAAAxDgAANA4AADoOAABHDgAATg4AALEOAACxDgAAtA4AALwOAADIDgAAzg4AABgPAAAZDwAANQ8AADUPAAA3DwAANw8AADkPAAA5DwAAcQ8AAH4PAACADwAAhA8AAIYPAACHDwAAjQ8AAJcPAACZDwAAvA8AAMYPAADGDwAALRAAADAQAAAyEAAANxAAADkQAAA6EAAAPRAAAD4QAABYEAAAWRAAAF4QAABgEAAAcRAAAHQQAACCEAAAghAAAIUQAACGEAAAjRAAAI0QAACdEAAAnRAAAF0TAABfEwAAEhcAABQXAAAyFwAAMxcAAFIXAABTFwAAchcAAHMXAAC0FwAAtRcAALcXAAC9FwAAxhcAAMYXAADJFwAA0xcAAN0XAADdFwAACxgAAA0YAAAPGAAADxgAAIUYAACGGAAAqRgAAKkYAAAgGQAAIhkAACcZAAAoGQAAMhkAADIZAAA5GQAAOxkAABcaAAAYGgAAGxoAABsaAABWGgAAVhoAAFgaAABeGgAAYBoAAGAaAABiGgAAYhoAAGUaAABsGgAAcxoAAHwaAAB/GgAAfxoAALAaAADOGgAAABsAAAMbAAA0GwAAOhsAADwbAAA8GwAAQhsAAEIbAABrGwAAcxsAAIAbAACBGwAAohsAAKUbAACoGwAAqRsAAKsbAACtGwAA5hsAAOYbAADoGwAA6RsAAO0bAADtGwAA7xsAAPEbAAAsHAAAMxwAADYcAAA3HAAA0BwAANIcAADUHAAA4BwAAOIcAADoHAAA7RwAAO0cAAD0HAAA9BwAAPgcAAD5HAAAwB0AAP8dAAAMIAAADCAAANAgAADwIAAA7ywAAPEsAAB/LQAAfy0AAOAtAAD/LQAAKjAAAC8wAACZMAAAmjAAAG+mAABypgAAdKYAAH2mAACepgAAn6YAAPCmAADxpgAAAqgAAAKoAAAGqAAABqgAAAuoAAALqAAAJagAACaoAAAsqAAALKgAAMSoAADFqAAA4KgAAPGoAAD/qAAA/6gAACapAAAtqQAAR6kAAFGpAACAqQAAgqkAALOpAACzqQAAtqkAALmpAAC8qQAAvakAAOWpAADlqQAAKaoAAC6qAAAxqgAAMqoAADWqAAA2qgAAQ6oAAEOqAABMqgAATKoAAHyqAAB8qgAAsKoAALCqAACyqgAAtKoAALeqAAC4qgAAvqoAAL+qAADBqgAAwaoAAOyqAADtqgAA9qoAAPaqAADlqwAA5asAAOirAADoqwAA7asAAO2rAAAe+wAAHvsAAAD+AAAP/gAAIP4AAC/+AACe/wAAn/8AAP0BAQD9AQEA4AIBAOACAQB2AwEAegMBAAEKAQADCgEABQoBAAYKAQAMCgEADwoBADgKAQA6CgEAPwoBAD8KAQDlCgEA5goBACQNAQAnDQEAqw4BAKwOAQD9DgEA/w4BAEYPAQBQDwEAgg8BAIUPAQABEAEAARABADgQAQBGEAEAcBABAHAQAQBzEAEAdBABAH8QAQCBEAEAsxABALYQAQC5EAEAuhABAMIQAQDCEAEAABEBAAIRAQAnEQEAKxEBAC0RAQA0EQEAcxEBAHMRAQCAEQEAgREBALYRAQC+EQEAyREBAMwRAQDPEQEAzxEBAC8SAQAxEgEANBIBADQSAQA2EgEANxIBAD4SAQA+EgEAQRIBAEESAQDfEgEA3xIBAOMSAQDqEgEAABMBAAETAQA7EwEAPBMBAD4TAQA+EwEAQBMBAEATAQBXEwEAVxMBAGYTAQBsEwEAcBMBAHQTAQA4FAEAPxQBAEIUAQBEFAEARhQBAEYUAQBeFAEAXhQBALAUAQCwFAEAsxQBALgUAQC6FAEAuhQBAL0UAQC9FAEAvxQBAMAUAQDCFAEAwxQBAK8VAQCvFQEAshUBALUVAQC8FQEAvRUBAL8VAQDAFQEA3BUBAN0VAQAzFgEAOhYBAD0WAQA9FgEAPxYBAEAWAQCrFgEAqxYBAK0WAQCtFgEAsBYBALUWAQC3FgEAtxYBAB0XAQAfFwEAIhcBACUXAQAnFwEAKxcBAC8YAQA3GAEAORgBADoYAQAwGQEAMBkBADsZAQA8GQEAPhkBAD4ZAQBDGQEAQxkBANQZAQDXGQEA2hkBANsZAQDgGQEA4BkBAAEaAQAKGgEAMxoBADgaAQA7GgEAPhoBAEcaAQBHGgEAURoBAFYaAQBZGgEAWxoBAIoaAQCWGgEAmBoBAJkaAQAwHAEANhwBADgcAQA9HAEAPxwBAD8cAQCSHAEApxwBAKocAQCwHAEAshwBALMcAQC1HAEAthwBADEdAQA2HQEAOh0BADodAQA8HQEAPR0BAD8dAQBFHQEARx0BAEcdAQCQHQEAkR0BAJUdAQCVHQEAlx0BAJcdAQDzHgEA9B4BAAAfAQABHwEANh8BADofAQBAHwEAQB8BAEIfAQBCHwEAQDQBAEA0AQBHNAEAVTQBAPBqAQD0agEAMGsBADZrAQBPbwEAT28BAI9vAQCSbwEA5G8BAORvAQCdvAEAnrwBAADPAQAtzwEAMM8BAEbPAQBl0QEAZdEBAGfRAQBp0QEAbtEBAHLRAQB70QEAgtEBAIXRAQCL0QEAqtEBAK3RAQBC0gEARNIBAADaAQA22gEAO9oBAGzaAQB12gEAddoBAITaAQCE2gEAm9oBAJ/aAQCh2gEAr9oBAADgAQAG4AEACOABABjgAQAb4AEAIeABACPgAQAk4AEAJuABACrgAQCP4AEAj+ABADDhAQA24QEAruIBAK7iAQDs4gEA7+IBAOzkAQDv5AEA0OgBANboAQBE6QEASukBAPvzAQD/8wEAIAAOAH8ADgAAAQ4A7wEOAAARAABfEQAAYKkAAHypAAAKAAAACgAAAACsAAAArAAAHKwAABysAAA4rAAAOKwAAFSsAABUrAAAcKwAAHCsAACMrAAAjKwAAKisAACorAAAxKwAAMSsAADgrAAA4KwAAPysAAD8rAAAGK0AABitAAA0rQAANK0AAFCtAABQrQAAbK0AAGytAACIrQAAiK0AAKStAACkrQAAwK0AAMCtAADcrQAA3K0AAPitAAD4rQAAFK4AABSuAAAwrgAAMK4AAEyuAABMrgAAaK4AAGiuAACErgAAhK4AAKCuAACgrgAAvK4AALyuAADYrgAA2K4AAPSuAAD0rgAAEK8AABCvAAAsrwAALK8AAEivAABIrwAAZK8AAGSvAACArwAAgK8AAJyvAACcrwAAuK8AALivAADUrwAA1K8AAPCvAADwrwAADLAAAAywAAAosAAAKLAAAESwAABEsAAAYLAAAGCwAAB8sAAAfLAAAJiwAACYsAAAtLAAALSwAADQsAAA0LAAAOywAADssAAACLEAAAixAAAksQAAJLEAAECxAABAsQAAXLEAAFyxAAB4sQAAeLEAAJSxAACUsQAAsLEAALCxAADMsQAAzLEAAOixAADosQAABLIAAASyAAAgsgAAILIAADyyAAA8sgAAWLIAAFiyAAB0sgAAdLIAAJCyAACQsgAArLIAAKyyAADIsgAAyLIAAOSyAADksgAAALMAAACzAAAcswAAHLMAADizAAA4swAAVLMAAFSzAABwswAAcLMAAIyzAACMswAAqLMAAKizAADEswAAxLMAAOCzAADgswAA/LMAAPyzAAAYtAAAGLQAADS0AAA0tAAAULQAAFC0AABstAAAbLQAAIi0AACItAAApLQAAKS0AADAtAAAwLQAANy0AADctAAA+LQAAPi0AAAUtQAAFLUAADC1AAAwtQAATLUAAEy1AABotQAAaLUAAIS1AACEtQAAoLUAAKC1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AABYzgAAWM4AAHTOAAB0zgAAkM4AAJDOAACszgAArM4AAMjOAADIzgAA5M4AAOTOAAAAzwAAAM8AABzPAAAczwAAOM8AADjPAABUzwAAVM8AAHDPAABwzwAAjM8AAIzPAACozwAAqM8AAMTPAADEzwAA4M8AAODPAAD8zwAA/M8AABjQAAAY0AAANNAAADTQAABQ0AAAUNAAAGzQAABs0AAAiNAAAIjQAACk0AAApNAAAMDQAADA0AAA3NAAANzQAAD40AAA+NAAABTRAAAU0QAAMNEAADDRAABM0QAATNEAAGjRAABo0QAAhNEAAITRAACg0QAAoNEAALzRAAC80QAA2NEAANjRAAD00QAA9NEAABDSAAAQ0gAALNIAACzSAABI0gAASNIAAGTSAABk0gAAgNIAAIDSAACc0gAAnNIAALjSAAC40gAA1NIAANTSAADw0gAA8NIAAAzTAAAM0wAAKNMAACjTAABE0wAARNMAAGDTAABg0wAAfNMAAHzTAACY0wAAmNMAALTTAAC00wAA0NMAANDTAADs0wAA7NMAAAjUAAAI1AAAJNQAACTUAABA1AAAQNQAAFzUAABc1AAAeNQAAHjUAACU1AAAlNQAALDUAACw1AAAzNQAAMzUAADo1AAA6NQAAATVAAAE1QAAINUAACDVAAA81QAAPNUAAFjVAABY1QAAdNUAAHTVAACQ1QAAkNUAAKzVAACs1QAAyNUAAMjVAADk1QAA5NUAAADWAAAA1gAAHNYAABzWAAA41gAAONYAAFTWAABU1gAAcNYAAHDWAACM1gAAjNYAAKjWAACo1gAAxNYAAMTWAADg1gAA4NYAAPzWAAD81gAAGNcAABjXAAA01wAANNcAAFDXAABQ1wAAbNcAAGzXAACI1wAAiNcAAAGsAAAbrAAAHawAADesAAA5rAAAU6wAAFWsAABvrAAAcawAAIusAACNrAAAp6wAAKmsAADDrAAAxawAAN+sAADhrAAA+6wAAP2sAAAXrQAAGa0AADOtAAA1rQAAT60AAFGtAABrrQAAba0AAIetAACJrQAAo60AAKWtAAC/rQAAwa0AANutAADdrQAA960AAPmtAAATrgAAFa4AAC+uAAAxrgAAS64AAE2uAABnrgAAaa4AAIOuAACFrgAAn64AAKGuAAC7rgAAva4AANeuAADZrgAA864AAPWuAAAPrwAAEa8AACuvAAAtrwAAR68AAEmvAABjrwAAZa8AAH+vAACBrwAAm68AAJ2vAAC3rwAAua8AANOvAADVrwAA768AAPGvAAALsAAADbAAACewAAApsAAAQ7AAAEWwAABfsAAAYbAAAHuwAAB9sAAAl7AAAJmwAACzsAAAtbAAAM+wAADRsAAA67AAAO2wAAAHsQAACbEAACOxAAAlsQAAP7EAAEGxAABbsQAAXbEAAHexAAB5sQAAk7EAAJWxAACvsQAAsbEAAMuxAADNsQAA57EAAOmxAAADsgAABbIAAB+yAAAhsgAAO7IAAD2yAABXsgAAWbIAAHOyAAB1sgAAj7IAAJGyAACrsgAArbIAAMeyAADJsgAA47IAAOWyAAD/sgAAAbMAABuzAAAdswAAN7MAADmzAABTswAAVbMAAG+zAABxswAAi7MAAI2zAACnswAAqbMAAMOzAADFswAA37MAAOGzAAD7swAA/bMAABe0AAAZtAAAM7QAADW0AABPtAAAUbQAAGu0AABttAAAh7QAAIm0AACjtAAApbQAAL+0AADBtAAA27QAAN20AAD3tAAA+bQAABO1AAAVtQAAL7UAADG1AABLtQAATbUAAGe1AABptQAAg7UAAIW1AACftQAAobUAALu1AAC9tQAA17UAANm1AADztQAA9bUAAA+2AAARtgAAK7YAAC22AABHtgAASbYAAGO2AABltgAAf7YAAIG2AACbtgAAnbYAALe2AAC5tgAA07YAANW2AADvtgAA8bYAAAu3AAANtwAAJ7cAACm3AABDtwAARbcAAF+3AABhtwAAe7cAAH23AACXtwAAmbcAALO3AAC1twAAz7cAANG3AADrtwAA7bcAAAe4AAAJuAAAI7gAACW4AAA/uAAAQbgAAFu4AABduAAAd7gAAHm4AACTuAAAlbgAAK+4AACxuAAAy7gAAM24AADnuAAA6bgAAAO5AAAFuQAAH7kAACG5AAA7uQAAPbkAAFe5AABZuQAAc7kAAHW5AACPuQAAkbkAAKu5AACtuQAAx7kAAMm5AADjuQAA5bkAAP+5AAABugAAG7oAAB26AAA3ugAAOboAAFO6AABVugAAb7oAAHG6AACLugAAjboAAKe6AACpugAAw7oAAMW6AADfugAA4boAAPu6AAD9ugAAF7sAABm7AAAzuwAANbsAAE+7AABRuwAAa7sAAG27AACHuwAAibsAAKO7AACluwAAv7sAAMG7AADbuwAA3bsAAPe7AAD5uwAAE7wAABW8AAAvvAAAMbwAAEu8AABNvAAAZ7wAAGm8AACDvAAAhbwAAJ+8AAChvAAAu7wAAL28AADXvAAA2bwAAPO8AAD1vAAAD70AABG9AAArvQAALb0AAEe9AABJvQAAY70AAGW9AAB/vQAAgb0AAJu9AACdvQAAt70AALm9AADTvQAA1b0AAO+9AADxvQAAC74AAA2+AAAnvgAAKb4AAEO+AABFvgAAX74AAGG+AAB7vgAAfb4AAJe+AACZvgAAs74AALW+AADPvgAA0b4AAOu+AADtvgAAB78AAAm/AAAjvwAAJb8AAD+/AABBvwAAW78AAF2/AAB3vwAAeb8AAJO/AACVvwAAr78AALG/AADLvwAAzb8AAOe/AADpvwAAA8AAAAXAAAAfwAAAIcAAADvAAAA9wAAAV8AAAFnAAABzwAAAdcAAAI/AAACRwAAAq8AAAK3AAADHwAAAycAAAOPAAADlwAAA/8AAAAHBAAAbwQAAHcEAADfBAAA5wQAAU8EAAFXBAABvwQAAccEAAIvBAACNwQAAp8EAAKnBAADDwQAAxcEAAN/BAADhwQAA+8EAAP3BAAAXwgAAGcIAADPCAAA1wgAAT8IAAFHCAABrwgAAbcIAAIfCAACJwgAAo8IAAKXCAAC/wgAAwcIAANvCAADdwgAA98IAAPnCAAATwwAAFcMAAC/DAAAxwwAAS8MAAE3DAABnwwAAacMAAIPDAACFwwAAn8MAAKHDAAC7wwAAvcMAANfDAADZwwAA88MAAPXDAAAPxAAAEcQAACvEAAAtxAAAR8QAAEnEAABjxAAAZcQAAH/EAACBxAAAm8QAAJ3EAAC3xAAAucQAANPEAADVxAAA78QAAPHEAAALxQAADcUAACfFAAApxQAAQ8UAAEXFAABfxQAAYcUAAHvFAAB9xQAAl8UAAJnFAACzxQAAtcUAAM/FAADRxQAA68UAAO3FAAAHxgAACcYAACPGAAAlxgAAP8YAAEHGAABbxgAAXcYAAHfGAAB5xgAAk8YAAJXGAACvxgAAscYAAMvGAADNxgAA58YAAOnGAAADxwAABccAAB/HAAAhxwAAO8cAAD3HAABXxwAAWccAAHPHAAB1xwAAj8cAAJHHAACrxwAArccAAMfHAADJxwAA48cAAOXHAAD/xwAAAcgAABvIAAAdyAAAN8gAADnIAABTyAAAVcgAAG/IAABxyAAAi8gAAI3IAACnyAAAqcgAAMPIAADFyAAA38gAAOHIAAD7yAAA/cgAABfJAAAZyQAAM8kAADXJAABPyQAAUckAAGvJAABtyQAAh8kAAInJAACjyQAApckAAL/JAADByQAA28kAAN3JAAD3yQAA+ckAABPKAAAVygAAL8oAADHKAABLygAATcoAAGfKAABpygAAg8oAAIXKAACfygAAocoAALvKAAC9ygAA18oAANnKAADzygAA9coAAA/LAAARywAAK8sAAC3LAABHywAAScsAAGPLAABlywAAf8sAAIHLAACbywAAncsAALfLAAC5ywAA08sAANXLAADvywAA8csAAAvMAAANzAAAJ8wAACnMAABDzAAARcwAAF/MAABhzAAAe8wAAH3MAACXzAAAmcwAALPMAAC1zAAAz8wAANHMAADrzAAA7cwAAAfNAAAJzQAAI80AACXNAAA/zQAAQc0AAFvNAABdzQAAd80AAHnNAACTzQAAlc0AAK/NAACxzQAAy80AAM3NAADnzQAA6c0AAAPOAAAFzgAAH84AACHOAAA7zgAAPc4AAFfOAABZzgAAc84AAHXOAACPzgAAkc4AAKvOAACtzgAAx84AAMnOAADjzgAA5c4AAP/OAAABzwAAG88AAB3PAAA3zwAAOc8AAFPPAABVzwAAb88AAHHPAACLzwAAjc8AAKfPAACpzwAAw88AAMXPAADfzwAA4c8AAPvPAAD9zwAAF9AAABnQAAAz0AAANdAAAE/QAABR0AAAa9AAAG3QAACH0AAAidAAAKPQAACl0AAAv9AAAMHQAADb0AAA3dAAAPfQAAD50AAAE9EAABXRAAAv0QAAMdEAAEvRAABN0QAAZ9EAAGnRAACD0QAAhdEAAJ/RAACh0QAAu9EAAL3RAADX0QAA2dEAAPPRAAD10QAAD9IAABHSAAAr0gAALdIAAEfSAABJ0gAAY9IAAGXSAAB/0gAAgdIAAJvSAACd0gAAt9IAALnSAADT0gAA1dIAAO/SAADx0gAAC9MAAA3TAAAn0wAAKdMAAEPTAABF0wAAX9MAAGHTAAB70wAAfdMAAJfTAACZ0wAAs9MAALXTAADP0wAA0dMAAOvT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AAA5CwAAPQsAAD0LAABcCwAAXQsAAF8LAABhCwAAcQsAAHELAACDCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAANALAADQCwAABQwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA9DAAAPQwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAIAMAACADAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAAL0MAAC9DAAA3QwAAN4MAADgDAAA4QwAAPEMAADyDAAABA0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAABODQAATg0AAFQNAABWDQAAXw0AAGENAAB6DQAAfw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAAAADwAAAA8AAEAPAABHDwAASQ8AAGwPAACIDwAAjA8AAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAANAQAAD6EAAA/BAAAEgSAABKEgAATRIAAFASAABWEgAAWBIAAFgSAABaEgAAXRIAAGASAACIEgAAihIAAI0SAACQEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAANYSAADYEgAAEBMAABITAAAVEwAAGBMAAFoTAACAEwAAjxMAAKATAAD1EwAA+BMAAP0TAAABFAAAbBYAAG8WAAB/FgAAgRYAAJoWAACgFgAA6hYAAO4WAAD4FgAAABcAABEXAAAfFwAAMRcAAEAXAABRFwAAYBcAAGwXAABuFwAAcBcAACAYAAB4GAAAgBgAAIQYAACHGAAAqBgAAKoYAACqGAAAsBgAAPUYAAAAGQAAHhkAAAAaAAAWGgAABRsAADMbAABFGwAATBsAAIMbAACgGwAArhsAAK8bAAC6GwAA5RsAAAAcAAAjHAAATRwAAE8cAABaHAAAfRwAAIAcAACIHAAAkBwAALocAAC9HAAAvxwAAOkcAADsHAAA7hwAAPMcAAD1HAAA9hwAAPocAAD6HAAAAB0AAL8dAAAAHgAAFR8AABgfAAAdHwAAIB8AAEUfAABIHwAATR8AAFAfAABXHwAAWR8AAFkf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AABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACdHgAAnx4AAJ8eAAChHgAAoR4AAKMeAACjHgAApR4AAKUeAACnHgAApx4AAKkeAACpHgAAqx4AAKseAACtHgAArR4AAK8eAACvHgAAsR4AALEeAACzHgAAsx4AALUeAAC1HgAAtx4AALceAAC5HgAAuR4AALseAAC7HgAAvR4AAL0eAAC/HgAAvx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB9LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACdpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAeKcAAHqnAAB6pwAAfKcAAHynAAB/pwAAf6cAAIGnAACBpwAAg6cAAIOnAACFpwAAhacAAIenAACHpwAAjKcAAIynAACOpwAAjqcAAJGnAACRpwAAk6cAAJWnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAAK+nAACvpwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANOnAADTpwAA1acAANWnAADXpwAA16cAANmnAADZpwAA8qcAAPSnAAD2pwAA9qcAAPinAAD6pwAAMKsAAFqrAABcqwAAaasAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAgAcBAIAHAQCDBwEAhQcBAIcHAQCwBwEAsgcBALoHAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQDP1AEA6tQBAAPVAQAe1QEAN9UBAFLVAQBr1QEAhtUBAJ/VAQC61QEA09UBAO7V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AADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC4HwAAvB8AAMgfAADMHwAA2B8AANsfAADoHwAA7B8AAPgfAAD8HwAAAiEAAAIhAAAHIQAAByEAAAshAAANIQAAECEAABIhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAwIQAAMyEAAD4hAAA/IQAARSEAAEUhAABgIQAAbyEAAIMhAACDIQAAtiQAAM8kAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqnAABKpwAATKcAAEynAABOpwAATqcAAFCnAABQpwAAUqcAAFKnAABUpwAAVKcAAFanAABWpwAAWKcAAFinAABapwAAWqcAAFynAABcpwAAXqcAAF6nAABgpwAAYKcAAGKnAABipwAAZKcAAGSnAABmpwAAZqcAAGinAABopwAAaqcAAGqnAABspwAAbKcAAG6nAABupwAAeacAAHmnAAB7pwAAe6cAAH2nAAB+pwAAgKcAAICnAACCpwAAgqcAAISnAACEpwAAhqcAAIanAACLpwAAi6cAAI2nAACNpwAAkKcAAJCnAACSpwAAkqcAAJanAACWpwAAmKcAAJinAACapwAAmqcAAJynAACcpwAAnqcAAJ6nAACgpwAAoKcAAKKnAACipwAApKcAAKSnAACmpwAApqcAAKinAACopwAAqqcAAK6nAACwpwAAtKcAALanAAC2pwAAuKcAALinAAC6pwAAuqcAALynAAC8pwAAvqcAAL6nAADApwAAwKcAAMKnAADCpwAAxKcAAMenAADJpwAAyacAANCnAADQpwAA1qcAANanAADYpwAA2KcAAPWnAAD1pwAAIf8AADr/AAAABAEAJwQBALAEAQDTBAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCADAEAsgwBAKAY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Nldi/r1JZE79uBRA4ZBmTQTt+n0tXP2hPOcZyIwaYLAi1LxunFk+5YUwEPovIXhcKwlsigPwjV6nPBT4eymWM3YLB20EbDE20UsZ9tqze8BTzkiIBce9g8WeH9poUE1Y9IAtdWOcVnI7wxMQg6RgbjHheFJ8Q+xOCrQYAAAAAAgAAAAEAAAAGAQAABkEAAAaBAAAdW5pdGEgYm9vbGVhbmEgc3RyaW5nYnl0ZSBhcnJheWJvb2xlYW4gYGf+FQAJAAAAmhYYAAEAAABpbnRlZ2VyIGAAAACA/hUACQAAAJoWGAABAAAAZmxvYXRpbmcgcG9pbnQgYJz+FQAQAAAAmhYYAAEAAABjaGFyYWN0ZXIgYAC8/hUACwAAAJoWGAABAAAAc3RyaW5nIADY/hUABwAAAHVuaXQgdmFsdWVPcHRpb24gdmFsdWVuZXd0eXBlIHN0cnVjdHNlcXVlbmNldW5pdCB2YXJpYW50bmV3dHlwZSB2YXJpYW50dHVwbGUgdmFyaWFudHN0cnVjdCB2YXJpYW50ZXhwbGljaXQgcGFuaWMvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zZXJkZS0xLjAuMjA4L3NyYy9kZS9tb2QucnMAAFj/FQBaAAAA7AgAABIAAACaFhgAAQAAAJoWGAABAAAAYCBvciBgAACaFhgAAQAAANT/FQAGAAAAmhYYAAEAAABvbmUgb2YgLjAAAADoAhYAXwAAAFgCAAAwAAAAFwMAAAwAAAAEAAAAVwMAAFgDAAAbBABBsIDYAAvxBgEAAAAbAwAARU9GIHdoaWxlIHBhcnNpbmcgYSBsaXN0RU9GIHdoaWxlIHBhcnNpbmcgYW4gb2JqZWN0RU9GIHdoaWxlIHBhcnNpbmcgYSBzdHJpbmdFT0Ygd2hpbGUgcGFyc2luZyBhIHZhbHVlZXhwZWN0ZWQgYDpgZXhwZWN0ZWQgYCxgIG9yIGBdYGV4cGVjdGVkIGAsYCBvciBgfWBleHBlY3RlZCBpZGVudGV4cGVjdGVkIHZhbHVlZXhwZWN0ZWQgYCJgaW52YWxpZCBlc2NhcGVpbnZhbGlkIG51bWJlcm51bWJlciBvdXQgb2YgcmFuZ2VpbnZhbGlkIHVuaWNvZGUgY29kZSBwb2ludGNvbnRyb2wgY2hhcmFjdGVyIChcdTAwMDAtXHUwMDFGKSBmb3VuZCB3aGlsZSBwYXJzaW5nIGEgc3RyaW5na2V5IG11c3QgYmUgYSBzdHJpbmdpbnZhbGlkIHZhbHVlOiBleHBlY3RlZCBrZXkgdG8gYmUgYSBudW1iZXIgaW4gcXVvdGVzZmxvYXQga2V5IG11c3QgYmUgZmluaXRlIChnb3QgTmFOIG9yICsvLWluZilsb25lIGxlYWRpbmcgc3Vycm9nYXRlIGluIGhleCBlc2NhcGV0cmFpbGluZyBjb21tYXRyYWlsaW5nIGNoYXJhY3RlcnN1bmV4cGVjdGVkIGVuZCBvZiBoZXggZXNjYXBlcmVjdXJzaW9uIGxpbWl0IGV4Y2VlZGVkIGF0IGxpbmUgIGNvbHVtbiAAAAABAAAAAAAAAGwCFgAJAAAAdQIWAAgAAABFcnJvcigsIGxpbmU6ICwgY29sdW1uOiCYAhYABgAAAJ4CFgAIAAAApgIWAAoAAADwyxgAAQAAABcDAAAMAAAABAAAAFcDAAAcBAAAGwQAAC9ydXN0Yy81NWEyMmQyYTYzMzM0ZTBmYWZmMDIwMmI3MmEzMWNlODMyYjU2MTI1L2xpYnJhcnkvYWxsb2Mvc3JjL2NvbGxlY3Rpb25zL2J0cmVlL25hdmlnYXRlLnJzAOgCFgBfAAAAxgAAACcAAADoAhYAXwAAABYCAAAvAAAA6AIWAF8AAAChAAAAJAAAAGludmFsaWQgdHlwZTogLCBleHBlY3RlZCAAAAB4AxYADgAAAIYDFgALAEGsh9gAC4sBAQAAAB0EAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zZXJkZS13YXNtLWJpbmRnZW4tMC42LjUvc3JjL2xpYi5ycwAAtAMWAGIAAAA1AAAADgAAAExheW91dHNpemVhbGlnbgBBwIjYAAvyCQEAAADeAwAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc21hcnRzdHJpbmctMS4wLjEvc3JjL2lubGluZS5ycwAASAQWAF4AAAArAAAAKwAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NtYXJ0c3RyaW5nLTEuMC4xL3NyYy9ib3hlZC5ycwAAALgEFgBdAAAAQQAAAA4AAAC4BBYAXQAAAHYAAAAkAAAAaHR0cDpodHRwczoAAQAAAAAAAABGFBgAAQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NvdXJjZW1hcC05LjAuMC9zcmMvYnVpbGRlci5yc0Nhbm5vdCBzZXQgc291cmNlcyBmb3IgdG9tYnN0b25lIHNvdXJjZSBpZABUBRYAXQAAAHkAAAAJAAAAVAUWAF0AAAB9AAAAHQAAAEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky9JbmNsdWRlZEV4Y2x1ZGVkVW5ib3VuZGVkaW5kZXggIG91dCBvZiByYW5nZTogAABVBhYABgAAAFsGFgAPAAAAnwwWAFgAAAAxBgAAAwAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3d5ei0wLjUuMS9zcmMvY29tdS5yc4wGFgBUAAAAJwEAAAIAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OU51bGxQdHJFcnJvcmNhbm5vdCAgYml0cyBmcm9tIGEgLWJpdCByZWdpb24AxAcWAAcAAADoExgAAQAAAMsHFgANAAAA2AcWAAsAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9iaXR2ZWMtMS4wLjEvc3JjL2ZpZWxkLnJzBAgWAFgAAAAOAgAAAgAAAGF0dGVtcHQgdG8gam9pbiBpbnRvIGNvbGxlY3Rpb24gd2l0aCBsZW4gPiB1c2l6ZTo6TUFYL3J1c3RjLzU1YTIyZDJhNjMzMzRlMGZhZmYwMjAyYjcyYTMxY2U4MzJiNTYxMjUvbGlicmFyeS9hbGxvYy9zcmMvc3RyLnJzAAAAoQgWAEgAAACaAAAACgAAAKEIFgBIAAAAsQAAABYAAADk6BcAYAAAABQAAAAPAAAAHgQAAAwAAAAEAAAAVwMAABwEAAAfBABBvJLYAAu2BgEAAAAbAwAAYmFkIGpzb246IAAARAkWAAoAAABsZWZ0b3ZlciBjdXIvc2hpZnQgaW4gdmxxIGRlY29kZVgJFgAgAAAAdmxxIGRlY29kZSBkaWQgbm90IHByb2R1Y2UgYW55IHZhbHVlcwAAAIAJFgAlAAAAdmxxIGRlY29kZSBjYXVzZWQgYW4gb3ZlcmZsb3cAAACwCRYAHQAAAGdvdCAgc2VnbWVudHMsIGV4cGVjdGVkIDQgb3IgNQAA2AkWAAQAAADcCRYAGgAAAGJhZCByZWZlcmVuY2UgdG8gc291cmNlICMAAAAIChYAGQAAAGJhZCByZWZlcmVuY2UgdG8gbmFtZSAjACwKFgAXAAAAZW5jb3VudGVyZWQgaW5jb21wYXRpYmxlIHNvdXJjZW1hcCBmb3JtYXQAAABMChYAKQAAAHRoZSBwcm92aWRlZCBkYXRhIFVSTCBpcyBpbnZhbGlkgAoWACAAAABjYW5ub3QgZmxhdHRlbiB0aGUgaW5kZXhlZCBzb3VyY2VtYXA6IAAAqAoWACYAAABpbnZhbGlkIG1hZ2ljIG51bWJlciBmb3IgcmFtIGJ1bmRsZQDYChYAIwAAAGludmFsaWQgbW9kdWxlIGluZGV4IGluIHJhbSBidW5kbGUAAAQLFgAiAAAAaW52YWxpZCByYW0gYnVuZGxlIG1vZHVsZSBlbnRyeQAwCxYAHwAAAG5vdCBhIHJhbSBidW5kbGVYCxYAEAAAAGludmFsaWQgcmFuZ2UgbWFwcGluZyBpbmRleDogAAAAcAsWAB0AAABpbnZhbGlkIGJhc2U2NCBjaGFyYWN0ZXI6IAAAmAsWABoAAAByYW5nZSAgb3V0IG9mIGJvdW5kczogAAC8CxYABgAAAMILFgAQAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYml0dmVjLTEuMC4xL3NyYy9zbGljZS9hcGkucnPkCxYAXAAAAI4KAAABAAAAdTgAACAEAAAUAAAABAAAACEEAAAAAAAACAAAAAQAAAAiBABB/JjYAAuTBAEAAADeAwAA3DYYAEkAAADbBwAAKQAAAExheW91dEVycm9yL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYml0dmVjLTEuMC4xL3NyYy9zbGljZS5ycwCfDBYAWAAAAE8BAAAjAAAAbG9hZEJpdFNwYW5FcnJvcjw+OjoMDRYADQAAABkNFgADAAAATWlzYWxpZ25lZFRvb0xvbmdUb29IaWdoTWlzYWxpZ25FcnJvcgAAAAEAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zb3VyY2VtYXAtOS4wLjAvc3JjL2VuY29kZXIucnNpbnZhbGlkIGJ5dGUAAABYDRYAXQAAACMAAAASAAAAaW52YWxpZCB1dGY4WA0WAF0AAABmAAAAIQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NlcmRlX2pzb24tMS4wLjEyNS9zcmMvc2VyLnJz8A0WAFwAAAALBgAAEgAAAPANFgBcAAAALggAADMAAAB1dXV1dXV1dWJ0bnVmcnV1dXV1dXV1dXV1dXV1dXV1dQAAIgBByJ3YAAsBXABB7J7YAAvKAfANFgBcAAAAIQgAAEAAAABcdGxpbmVjb2x1bW5vZmZzZXRtYXBuYW1lc21hcHBpbmdzdmVyc2lvbmZpbGVzb3VyY2Vzc291cmNlUm9vdHNvdXJjZXNDb250ZW50c2VjdGlvbnNyYW5nZU1hcHBpbmdzeF9mYWNlYm9va19vZmZzZXRzeF9tZXRyb19tb2R1bGVfcGF0aHN4X2ZhY2Vib29rX3NvdXJjZXNkZWJ1Z19pZAAAAB4EAAAMAAAABAAAAFcDAABYAwAAHwQAQcCg2AALshkBAAAAGwMAAAAAAAAEAAAABAAAACMEAAAvcnVzdC9kZXBzL2RsbWFsbG9jLTAuMi42L3NyYy9kbG1hbGxvYy5yc2Fzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAWBAWACkAAACoBAAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplIDw9IHNpemUgKyBtYXhfb3ZlcmhlYWQAAFgQFgApAAAArgQAAA0AAAB1c2Ugb2Ygc3RkOjp0aHJlYWQ6OmN1cnJlbnQoKSBpcyBub3QgcG9zc2libGUgYWZ0ZXIgdGhlIHRocmVhZCdzCiAgICAgICAgIGxvY2FsIGRhdGEgaGFzIGJlZW4gZGVzdHJveWVkAAARFgBnAAAAc3RkL3NyYy90aHJlYWQvY3VycmVudC5ycwAAAHARFgAZAAAA6wAAAAkAAABBY2Nlc3NFcnJvcnN0ZC9zcmMvdGhyZWFkL21vZC5yc2ZhaWxlZCB0byBnZW5lcmF0ZSB1bmlxdWUgdGhyZWFkIElEOiBiaXRzcGFjZSBleGhhdXN0ZWQAvBEWADcAAACnERYAFQAAAJEEAAANAAAAc3RkL3NyYy9iYWNrdHJhY2UucnN1bnN1cHBvcnRlZCBiYWNrdHJhY2VkaXNhYmxlZCBiYWNrdHJhY2UADBIWABQAAACKAQAAHQAAACQEAAAQAAAABAAAACUEAAAmBAAAZW50aXR5IG5vdCBmb3VuZHBlcm1pc3Npb24gZGVuaWVkY29ubmVjdGlvbiByZWZ1c2VkY29ubmVjdGlvbiByZXNldGhvc3QgdW5yZWFjaGFibGVuZXR3b3JrIHVucmVhY2hhYmxlY29ubmVjdGlvbiBhYm9ydGVkbm90IGNvbm5lY3RlZGFkZHJlc3MgaW4gdXNlYWRkcmVzcyBub3QgYXZhaWxhYmxlbmV0d29yayBkb3duYnJva2VuIHBpcGVlbnRpdHkgYWxyZWFkeSBleGlzdHNvcGVyYXRpb24gd291bGQgYmxvY2tub3QgYSBkaXJlY3RvcnlpcyBhIGRpcmVjdG9yeWRpcmVjdG9yeSBub3QgZW1wdHlyZWFkLW9ubHkgZmlsZXN5c3RlbSBvciBzdG9yYWdlIG1lZGl1bWZpbGVzeXN0ZW0gbG9vcCBvciBpbmRpcmVjdGlvbiBsaW1pdCAoZS5nLiBzeW1saW5rIGxvb3Apc3RhbGUgbmV0d29yayBmaWxlIGhhbmRsZWludmFsaWQgaW5wdXQgcGFyYW1ldGVyaW52YWxpZCBkYXRhdGltZWQgb3V0d3JpdGUgemVyb25vIHN0b3JhZ2Ugc3BhY2VzZWVrIG9uIHVuc2Vla2FibGUgZmlsZWZpbGVzeXN0ZW0gcXVvdGEgZXhjZWVkZWRmaWxlIHRvbyBsYXJnZXJlc291cmNlIGJ1c3lleGVjdXRhYmxlIGZpbGUgYnVzeWRlYWRsb2NrY3Jvc3MtZGV2aWNlIGxpbmsgb3IgcmVuYW1ldG9vIG1hbnkgbGlua3NpbnZhbGlkIGZpbGVuYW1lYXJndW1lbnQgbGlzdCB0b28gbG9uZ29wZXJhdGlvbiBpbnRlcnJ1cHRlZHVuc3VwcG9ydGVkdW5leHBlY3RlZCBlbmQgb2YgZmlsZW91dCBvZiBtZW1vcnlpbiBwcm9ncmVzc290aGVyIGVycm9ydW5jYXRlZ29yaXplZCBlcnJvck9zS2luZEN1c3RvbSAob3MgZXJyb3IgAAEAAAAAAAAAcBUWAAsAAADwyxgAAQAAADogc3RkL3NyYy9wYXRoLnJzAAAAlhUWAA8AAADSAgAAIQAAAJYVFgAPAAAA+QIAACwAAACWFRYADwAAAPsCAAAmAAAAlhUWAA8AAAAIAwAAJwAAAJYVFgAPAAAAFAMAACcAAACWFRYADwAAAH4DAAApAAAAlhUWAA8AAAB/AwAAKwAAAJYVFgAPAAAAlAMAAC8AAACWFRYADwAAAIwDAAAvAAAAlhUWAA8AAACaAwAAKwAAAHN0ZC9zcmMvc3luYy9sYXp5X2xvY2sucnMAAABIFhYAGQAAANAAAAATAAAAY2Fubm90IHJlY3Vyc2l2ZWx5IGFjcXVpcmUgbXV0ZXh0FhYAIAAAAHN0ZC9zcmMvc3lzL3N5bmMvbXV0ZXgvbm9fdGhyZWFkcy5yc5wWFgAkAAAAFAAAAAkAAABzdGQvc3JjL3N5bmMvb25jZS5yc9AWFgAUAAAA2QAAABQAAAA8dW5rbm93bj7vv71zdGQvc3JjLy4uLy4uL2JhY2t0cmFjZS9zcmMvc3ltYm9saXplL21vZC5ycwAXFgAsAAAAZwEAADAAAAABAAAAAAAAAJQVFgACAAAAIC0gAAEAAAAAAAAATBcWAAMAAAAgICAgICAgICAgICAgICAgICAgYXQgTm90Rm91bmRQZXJtaXNzaW9uRGVuaWVkQ29ubmVjdGlvblJlZnVzZWRDb25uZWN0aW9uUmVzZXRIb3N0VW5yZWFjaGFibGVOZXR3b3JrVW5yZWFjaGFibGVDb25uZWN0aW9uQWJvcnRlZE5vdENvbm5lY3RlZEFkZHJJblVzZUFkZHJOb3RBdmFpbGFibGVOZXR3b3JrRG93bkJyb2tlblBpcGVBbHJlYWR5RXhpc3RzV291bGRCbG9ja05vdEFEaXJlY3RvcnlJc0FEaXJlY3RvcnlEaXJlY3RvcnlOb3RFbXB0eVJlYWRPbmx5RmlsZXN5c3RlbUZpbGVzeXN0ZW1Mb29wU3RhbGVOZXR3b3JrRmlsZUhhbmRsZUludmFsaWRJbnB1dEludmFsaWREYXRhVGltZWRPdXRXcml0ZVplcm9TdG9yYWdlRnVsbE5vdFNlZWthYmxlRmlsZXN5c3RlbVF1b3RhRXhjZWVkZWRGaWxlVG9vTGFyZ2VSZXNvdXJjZUJ1c3lFeGVjdXRhYmxlRmlsZUJ1c3lEZWFkbG9ja0Nyb3NzZXNEZXZpY2VzVG9vTWFueUxpbmtzSW52YWxpZEZpbGVuYW1lQXJndW1lbnRMaXN0VG9vTG9uZ0ludGVycnVwdGVkVW5zdXBwb3J0ZWRVbmV4cGVjdGVkRW9mT3V0T2ZNZW1vcnlJblByb2dyZXNzT3RoZXJVbmNhdGVnb3JpemVkb3BlcmF0aW9uIHN1Y2Nlc3NmdWxPbmNlIGluc3RhbmNlIGhhcyBwcmV2aW91c2x5IGJlZW4gcG9pc29uZWSyGRYAKgAAAG9uZS10aW1lIGluaXRpYWxpemF0aW9uIG1heSBub3QgYmUgcGVyZm9ybWVkIHJlY3Vyc2l2ZWx55BkWADgAAAAQAAAAEQAAABIAAAAQAAAAEAAAABMAAAASAAAADQAAAA4AAAAVAAAADAAAAAsAAAAVAAAAFQAAAA8AAAAOAAAAEwAAACYAAAA4AAAAGQAAABcAAAAMAAAACQAAAAoAAAAQAAAAFwAAABkAAAAOAAAADQAAABQAAAAIAAAAGwAAAA4AAAAQAAAAFgAAABUAAAALAAAAFgAAAA0AAAALAAAACwAAABMAAABsEhYAfBIWAI0SFgCfEhYArxIWAL8SFgDSEhYA5BIWAPESFgD/EhYAFBMWACATFgArExYAQBMWAFUTFgBkExYAchMWAIUTFgCrExYA4xMWAPwTFgATFBYAHxQWACgUFgAyFBYAQhQWAFkUFgByFBYAgBQWAI0UFgChFBYAqRQWAMQUFgDSFBYA4hQWAPgUFgANFRYAGBUWAC4VFgA7FRYARhUWAFEVFgAIAAAAEAAAABEAAAAPAAAADwAAABIAAAARAAAADAAAAAkAAAAQAAAACwAAAAoAAAANAAAACgAAAA0AAAAMAAAAEQAAABIAAAAOAAAAFgAAAAwAAAALAAAACAAAAAkAAAALAAAACwAAABcAAAAMAAAADAAAABIAAAAIAAAADgAAAAwAAAAPAAAAEwAAAAsAAAALAAAADQAAAAsAAAAKAAAABQAAAA0AAAB2FxYAfhcWAI4XFgCfFxYArhcWAL0XFgDPFxYA4BcWAOwXFgD1FxYABRgWABAYFgAaGBYAJxgWADEYFgA+GBYAShgWAFsYFgBtGBYAexgWAJEYFgCdGBYAqBgWALAYFgC5GBYAxBgWAM8YFgDmGBYA8hgWAP4YFgAQGRYAGBkWACYZFgAyGRYAQRkWAFQZFgBfGRYAahkWAHcZFgCCGRYAjBkWAJEZFgAAAAAABAAAAAQAAAAnBAAAKAQAACkEAAAeBAAADAAAAAQAAABXAwAAHAQAAB8EAEH8udgACxYBAAAAGwMAAAAAAAAEAAAABAAAACoEAEGcutgAC8URAQAAACwEAAAtBAAALgQAAFDoFwBhAAAAHgEAACcAAABQ6BcAYQAAAEIBAAAnAAAAOiBicG9zID0gOyBsaW5lYnBvcyA9IAAAAQAAAAAAAABMHRYACQAAAFUdFgANAAAA5xMYAAEAAABQ6BcAYQAAAEMBAAARAAAAUOgXAGEAAABYAQAAPwAAAFDoFwBhAAAAeQEAAD8AAABtYXAuc3RhcnRfcG9zID0gOyB0b3RhbF9leHRyYV9ieXRlcyA9IDsgYnBvcyA9IAC0HRYAEAAAAMQdFgAWAAAA2h0WAAkAAABQ6BcAYQAAAOIDAAAJAAAAUOgXAGEAAAAfBAAAMAAAAFDoFwBhAAAACwQAADAAAABQ6BcAYQAAAEwEAAAQAAAAUOgXAGEAAAAMBQAAOgAAAFDoFwBhAAAALQUAACMAAABQ6BcAYQAAAGwFAAAQAAAATm9GaWxlRm9ybm8gZXJyb3JzIGVuY291bnRlcmVkIGV2ZW4gdGhvdWdoIGBkZWxheV9zcGFuX2J1Z2AgaXNzdWVkAAB1HhYAOQAAAJQkFgBhAAAAmAEAABEAAABlbmNvdW50ZXJlZCBlcnJvciB3aXRoIGAtWiB0cmVhdF9lcnJfYXNfYnVnAMgeFgArAAAAlCQWAGEAAABlAgAADQAAAE1hY2hpbmVBcHBsaWNhYmxlSGFzUGxhY2Vob2xkZXJzTWF5YmVJbmNvcnJlY3RVbnNwZWNpZmllZENvZGVTdWdnZXN0aW9uc3Vic3RpdHV0aW9uc21zZ3Nob3dfY29kZV93aGVuX2lubGluZWFwcGxpY2FiaWxpdHlTdWJzdGl0dXRpb25wYXJ0c1N1YnN0aXR1dGlvblBhcnRzbmlwcGV0AAAABQAAABMbGABLAAAAigcAACQAAABhc3NlcnRpb24gZmFpbGVkOiBzZWxmLmlzX2NoYXJfYm91bmRhcnkoZW5kKRMbGABLAAAAjAcAAAkAAAAAAAAADAAAAAQAAAAvBAAAMAQAAGFzc2VydGlvbiBmYWlsZWQ6IHN0YXJ0IDw9IGVuZC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19jb21tb24tMS4wLjAvc3JjL2lucHV0LnJzAAAyIBYAXAAAAB8AAAAJAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2NvbW1vbi0xLjAuMC9zcmMvY29tbWVudHMucnMAoCAWAF8AAACnAQAAFgAAAKAgFgBfAAAArAEAAA4AAACgIBYAXwAAALMBAAAnAAAAoCAWAF8AAAC/AQAAMgAAAKAgFgBfAAAAxwEAABYAAACgIBYAXwAAAMsBAAAWAAAAoCAWAF8AAADPAQAAFwAAAKAgFgBfAAAA1AEAAA4AAACgIBYAXwAAANsBAAAoAAAAoCAWAF8AAADnAQAAMwAAAKAgFgBfAAAA7wEAABcAAACgIBYAXwAAAPMBAAAXAAAAoCAWAF8AAAD5AQAALAAAAGNhbm5vdCBhZGQgcHVyZSBjb21tZW50IHRvIHplcm8gcG9zaXRpb27QIRYAKAAAAKAgFgBfAAAA9wEAAAkAAAAjX19AX18AAKAgFgBfAAAAMQIAAC0AAACgIBYAXwAAAGUCAAAuAAAA6CcWAGkAAADMAAAAHQAAAOgnFgBpAAAAewEAAC0AAADoJxYAaQAAADACAAA2AAAAAAAAAAQAAAAEAAAAFQEAAAAAAAAEAAAABAAAADEEAAAuLgAAAQAAAAAAAACIIhYAAgAAACBtYWNyb3M+OBQYAAEAAACcIhYACAAAADxxdW90ZSBleHBhbnNpb24+AAAAtCIWABEAAAA8YW5vbj4AANAiFgAGAAAAPG1hY3JvIGV4cGFuc2lvbj4AAADgIhYAEQAAADxwcm9jLW1hY3JvIHNvdXJjZSBjb2RlPvwiFgAYAAAAOBQYAAEAAAA7FBgAAQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19jb21tb24tMS4wLjAvc3JjL3N5bnRheF9wb3MucnNhc3NlcnRpb24gZmFpbGVkOiBsaW5lX2luZGV4IDwgc2VsZi5saW5lcy5sZW4oKSBhcyBpc2l6ZQAAACwjFgBhAAAAwQMAAAkAAAAEAAAAUHJpbWFyeVNwYW5MYWJlbEJ5dGVQb3NFcnJvciBjb25zdHJ1Y3RlZCBidXQgbm90IGVtaXR0ZWQvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfY29tbW9uLTEuMC4wL3NyYy9lcnJvcnMvZGlhZ25vc3RpY19idWlsZGVyLnJzFCQWAHAAAABZAQAADQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19jb21tb24tMS4wLjAvc3JjL2Vycm9ycy9tb2QucnMAAACUJBYAYQAAAFADAAAfAAAAYXNzZXJ0aW9uIGZhaWxlZDogc291cmNlX2ZpbGVfZW5kID49IGxhc3RfbGluZV9zdGFydC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19jb21tb24tMS4wLjAvc3JjL3N5bnRheF9wb3MvYW5hbHl6ZV9zb3VyY2VfZmlsZS5ycwAAADwlFgB1AAAAKgAAAAkAAAA8JRYAdQAAAGoAAAAYAAAAPCUWAHUAAABqAAAALQBB7MvYAAu9CQEAAAAyBAAAMwQAADQEAABvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3Jt/CUWACgAAAAkAAAAAgAAACQmFgAvcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L3N0ZC9zcmMvcGF0aC5ycwA4JhYARwAAAJgMAAAbAAAAOCYWAEcAAAC7DAAAIQAAADgmFgBHAAAArgwAACIAAABNYWluSGVhZGVyTXNnSGVhZGVyTXNnTGluZUFuZENvbHVtbkxpbmVOdW1iZXJRdW90YXRpb25VbmRlcmxpbmVQcmltYXJ5VW5kZXJsaW5lU2Vjb25kYXJ5TGFiZWxQcmltYXJ5TGFiZWxTZWNvbmRhcnlPbGRTY2hvb2xOb3RlVGV4dE5vU3R5bGVMZXZlbEhpZ2hsaWdodE1lc3NhZ2VMaW50U3ViRGlhZ25vc3RpY3JlbmRlcl9zcGFuL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcnVzdGMtaGFzaC0xLjEuMC9zcmMvbGliLnJzAAAAaycWAFoAAABnAAAAGwAAAGsnFgBaAAAAXwAAABsAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfY29tbW9uLTEuMC4wL3NyYy9zeW50YXhfcG9zL2h5Z2llbmUucnMAAADoJxYAaQAAAHIBAAANAAAATWFyay91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3BoZl9zaGFyZWQtMC4xMS4yL3Ny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bmlvblR5cGV0eXBlc1RzRW51bU1lbWJlcnF1YWxpZmllcgAAAAAAAAABAAAAAQAAAEcEAABIBAAAMAAAAAgAAABJBAAAbmFtZV90eXBlAAAAEygYAAQAAADXFhgACAAAAFw2FgAKAAAAzDcWAAkAAADzhhYACAAAACCHFgAIAAAAVHNUcGxMaXRUeXBlUHJvdGVjdGVkVHJ1ZVBsdXNNaW51c1RzTm9uTnVsbEV4cHJUc0NhbGxTaWduYXR1cmVEZWNsVHNDb25zdHJ1Y3RTaWduYXR1cmVEZWNsVHNQcm9wZXJ0eVNpZ25hdHVyZVRzR2V0dGVyU2lnbmF0dXJlVHNTZXR0ZXJTaWduYXR1cmVUc01ldGhvZFNpZ25hdHVyZVRzVHVwbGVFbGVtZW50dHlUc0ludGVyZmFjZUJvZHlUc1NhdGlzZmllc0V4cHJwYXJhbV9uYW1lY2hlY2tfdHlwZWV4dGVuZHNfdHlwZXRydWVfdHlwZWZhbHNlX3R5cGVUc0NvbnN0cnVjdG9yVHlwZWNvbXB1dGVkVHNBbnlLZXl3b3JkVHNVbmtub3duS2V5d29yZFRzTnVtYmVyS2V5d29yZFRzT2JqZWN0S2V5d29yZFRzQm9vbGVhbktleXdvcmRUc0JpZ0ludEtleXdvcmRUc1N0cmluZ0tleXdvcmRUc1N5bWJvbEtleXdvcmRUc1ZvaWRLZXl3b3JkVHNVbmRlZmluZWRLZXl3b3JkVHNOdWxsS2V5d29yZFRzTmV2ZXJLZXl3b3JkVHNJbnRyaW5zaWNLZXl3b3JkAAAAAAAAAAQAAAAEAAAA9wEAABMoGAAEAAAAYIgWAAMAAAAaORYACAAAAPOGFgAIAAAAcIoWAAYAAAAghxYACAAAACtSFgALAAAAVHNFeHByV2l0aFR5cGVBcmdzVHNJbnRlcnNlY3Rpb25UeXBlb2JqX3R5cGVpbmRleF90eXBlAAATKBgABAAAANcWGAAIAAAAYIgWAAMAAAAaORYACAAAAPOGFgAIAAAAIIcWAAgAAABUc05hbWVzcGFjZUV4cG9ydERlY2wAAABKBABBtPbYAAuxIksEAABMBAAATQQAAE4EAABPBAAAUAQAAEwEAABRBAAAUgQAAFMEAABUBAAAVQQAAFYEAABXBAAAWAQAAFkEAABaBAAAWgQAAFoEAABaBAAAWgQAAFoEAABaBAAAWgQAAFoEAABbBAAAXAQAAF0EAABeBAAAXQQAAF8EAABgBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABOBAAATgQAAE4EAABhBAAATgQAAGIEAABjBAAATgQAAGQEAABlBAAAZgQAAGcEAABoBAAAaQQAAGoEAABrBAAATgQAAGwEAABOBAAAbQQAAG4EAABvBAAAcAQAAHEEAAByBAAATgQAAHMEAAB0BAAAdQQAAHYEAAB3BAAAeAQAAE4EAAB5BAAATgQAAHoEAAB7BAAAfAQAAH0EAAB+BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAB/BAAAfwQAAH8EAAAAAAAAAQAAAAEAAAAxAQAAU3VwZXJGbkV4cHJCaW5FeHByb3BOZXdFeHByY2FsbGVlYXJnc09wdENhbGxTZXFFeHByQXJyYXlMaXRDYWxsRXhwckNvbmRFeHByVGhpc0V4cHIAgAQAAAwAAAAEAAAAgQQAAIIEAAAEAAAABAAAAIMEAAAAAAAAAQAAAAEAAAAPAAAAhAQAAAQAAAAEAAAAKAIAABMoGAAEAAAA7IYWAAQAAABwihYABgAAAHeHFgAEAAAABFMWAAgAAAD4UhYADAAAACtSFgALAAAADFMWAAsAAABBcnJvd0V4cHJBd2FpdEV4cHJDbGFzc0V4cHJQYXJlbkV4cHJ0cGxVbmFyeUV4cHJZaWVsZEV4cHJkZWxlZ2F0ZUFzc2lnbkV4cHJNZW1iZXJFeHByVHBsRWxlbWVudHRhaWxjb29rZWRVcGRhdGVFeHBycHJlZml4UGFyc2VJbnRFcnJvclNpbXBsZUV4cHJPclNwcmVhZHNwcmVhZE1ldGFQcm9wRXhwck9wdENoYWluRXhwcmJhc2VTcHJlYWRQcm9wU3ByZWFkRWxlbWVudFN1cGVyUHJvcEV4cHJmYWlsZWQgdG8gcGFyc2Ugc3RyaW5nIGFzIG51bWJlci91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3BhcnNlci0xLjAuMS9zcmMvbGV4ZXIvanN4LnJzAJJAFgBlAAAAhwAAAC8AAABmYWlsZWQgdG8gcGFyc2UgbnVtYmVyIGFzIGNoYXIAAJJAFgBlAAAAiQAAAA4AAABxdW90YW1wYXBvc2x0Z3RuYnNwaWV4Y2xjZW50cG91bmRjdXJyZW55ZW5icnZiYXJzZWN0dW1sY29weW9yZGZsYXF1b25vdHNoeXJlZ21hY3JkZWdwbHVzbW5zdXAyc3VwM2FjdXRlbWljcm9wYXJhbWlkZG90Y2VkaWxzdXAxb3JkbXJhcXVvZnJhYzE0ZnJhYzEyZnJhYzM0aXF1ZXN0QWdyYXZlQWFjdXRlQWNpcmNBdGlsZGVBdW1sQXJpbmdBRWxpZ0NjZWRpbEVncmF2ZUVhY3V0ZUVjaXJjRXVtbElncmF2ZUlhY3V0ZUljaXJjSXVtbEVUSE50aWxkZU9ncmF2ZU9hY3V0ZU9jaXJjT3RpbGRlT3VtbHRpbWVzT3NsYXNoVWdyYXZlVWFjdXRlVWNpcmNVdW1sWWFjdXRlVEhPUk5zemxpZ2FncmF2ZWFhY3V0ZWFjaXJjYXRpbGRlYXVtbGFyaW5nYWVsaWdjY2VkaWxlZ3JhdmVlYWN1dGVlY2lyY2V1bWxpZ3JhdmVpYWN1dGVpY2lyY2l1bWxldGhudGlsZGVvZ3JhdmVvYWN1dGVvY2lyY290aWxkZW91bWxkaXZpZGVvc2xhc2h1Z3JhdmV1YWN1dGV1Y2lyY3V1bWx5YWN1dGV0aG9ybnl1bWxPRWxpZ29lbGlnU2Nhcm9uc2Nhcm9uWXVtbGZub2ZjaXJjdGlsZGVBbHBoYUJldGFHYW1tYURlbHRhRXBzaWxvblpldGFFdGFUaGV0YUlvdGFLYXBwYUxhbWJkYU11TnVYaU9taWNyb25QaVJob1NpZ21hVGF1VXBzaWxvblBoaUNoaVBzaU9tZWdhYWxwaGFiZXRhZ2FtbWFkZWx0YWVwc2lsb256ZXRhZXRhdGhldGFpb3Rha2FwcGFsYW1iZGFtdW51eGlvbWljcm9ucGlyaG9zaWdtYWZzaWdtYXRhdXVwc2lsb25waGljaGlwc2lvbWVnYXRoZXRhc3ltdXBzaWhwaXZlbnNwZW1zcHRoaW5zcHp3bmp6d2pscm1ybG1uZGFzaG1kYXNobHNxdW9yc3F1b3NicXVvbGRxdW9yZHF1b2JkcXVvZGFnZ2VyRGFnZ2VyYnVsbGhlbGxpcHBlcm1pbHByaW1lUHJpbWVsc2FxdW9yc2FxdW9vbGluZWZyYXNsZXVyb2ltYWdld2VpZXJwcmVhbHRyYWRlYWxlZnN5bWxhcnJ1YXJycmFycmRhcnJoYXJyY3JhcnJsQXJydUFycnJBcnJkQXJyaEFycmZvcmFsbHBhcnRleGlzdGVtcHR5bmFibGFpc2lubm90aW5uaXByb2RzdW1taW51c2xvd2FzdHJhZGljaW5maW5hbmdhbmRvcmNhcGN1cGludHRoZXJlNHNpbWNvbmdhc3ltcG5lZXF1aXZsZWdlc3Vic3VwbnN1YnN1YmVzdXBlb3BsdXNvdGltZXNwZXJwc2RvdGxjZWlscmNlaWxsZmxvb3JyZmxvb3JsYW5ncmFuZ2xvenNwYWRlc2NsdWJzaGVhcnRzZGlhbXOFBAAABAAAAAQAAABcAgAAAAAAAAEAAAABAAAADwAAAEV4cG9ydEFsbHNyY3R5cGVfb25seUV4cG9ydERlY2xkZWNsAIYEAAAMAAAA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iBYACwAAACtSFgALAAAANlIWABEAAACUGRgACgAAAGRlY2xzVHJ5U3RtdGJsb2NraGFuZGxlcmZpbmFsaXplckpTWE1lbWJlckV4cHJPYmplY3RMaXRvcGVuaW5nY2xvc2luZwAAAJMEAAAMAAAABAAAAJQEAACVBAAAGAAAAAQAAACWBAAAaXNfZ2VuZXJhdG9yaXNfYXN5bmNyZXR1cm5fdHlwZQBwihYABgAAAGyIFgAKAAAAEygYAAQAAADshhYABAAAAHeHFgAEAAAA+FIWAAwAAAAEUxYACAAAACtSFgALAAAADFMWAAsAAABGdW5jdGlvbnByb3BUc0tleXdvcmRUeXBlVHNUaGlzVHlwZVRzRm5PckNvbnN0cnVjdG9yVHlwZVRzVHlwZVJlZlRzVHlwZVF1ZXJ5VHNUeXBlTGl0VHNBcnJheVR5cGVUc1R1cGxlVHlwZVRzT3B0aW9uYWxUeXBlVHNSZXN0VHlwZVRzVW5pb25PckludGVyc2VjdGlvblR5cGVUc0NvbmRpdGlvbmFsVHlwZVRzSW5mZXJUeXBlVHNQYXJlbnRoZXNpemVkVHlwZVRzVHlwZU9wZXJhdG9yVHNJbmRleGVkQWNjZXNzVHlwZVRzTWFwcGVkVHlwZVRzTGl0VHlwZVRzVHlwZVByZWRpY2F0ZVRzSW1wb3J0VHlwZVRzVHlwZUFubkpTWE9wZW5pbmdFbGVtZW50YXR0cnNzZWxmX2Nsb3Npbmd0eXBlX2FyZ3M+BAAAGAAAAAgAAABAAQAAVHNFbnVtRGVjbGlzX2NvbnN0bWVtYmVyc1RzUXVhbGlmaWVkTmFtZVRzTW9kdWxlRGVjbJcEAAAMAAAABAAAAJgEAAAAAAAABAAAAAQAAACZBAAAEygYAAQAAABwqxYAAgAAAIoWGAAHAAAAK1IWAAsAAADAFhgABwAAAHeHFgAEAAAAVHNJbnRlcmZhY2VEZWNsVHNNb2R1bGVCbG9ja1RzTmFtZXNwYWNlRGVjbFRzVHlwZUFsaWFzRGVjbFRzVHlwZVBhcmFtRGVjbFRzSW1wb3J0RXF1YWxzRGVjbGlzX2V4cG9ydGlzX3R5cGVfb25seW1vZHVsZV9yZWZUc1R5cGVQYXJhbUluc3RhbnRpYXRpb24vdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zbWFydHN0cmluZy0xLjAuMS9zcmMvb3BzLnJzAAAA1lUWAFsAAAB6AAAAOwAAAFVuZXhwZWN0ZWQgZW9mL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfcGFyc2VyLTEuMC4xL3NyYy9lcnJvci5yc0RlY2xhcmF0aW9uIGlzIG5vdCBhbGxvd2VkVXNpbmcgZGVjbGFyYXRpb24gaXMgbm90IGFsbG93ZWRVc2luZyBkZWNsYXJhdGlvbiBpcyBub3QgYWxsb3dlZCBpbiBmb3ItaW4gbG9vcFVzaW5nIGRlY2xhcmF0aW9uIGlzIG5vdCBlbmFibGVkLiBTZXQganNjLnBhcnNlci5leHBsaWNpdFJlc291cmNlTWFuYWdlbWVudCB0byB0cnVlVXNpbmcgZGVjbGFyYXRpb24gb25seSBhbGxvd3MgaWRlbnRpZmllcnNVc2luZyBkZWNsYXJhdGlvbiByZXF1aXJlcyBpbml0aWFsaXplcnByaXZhdGUgbmFtZXMgYXJlIG5vdCBhbGxvd2VkIGluIGludGVyZmFjZUludmFsaWQgYHN1cGVyKClgSW52YWxpZCBhY2Nlc3MgdG8gc3VwZXJJbmRleCBzdXBlciB3aXRoIHByaXZhdGUgbmFtZSBpcyBub3QgYWxsb3dlZCduZXcudGFyZ2V0JyBpcyBvbmx5IGFsbG93ZWQgaW4gdGhlIGJvZHkgb2YgYSBmdW5jdGlvbiBkZWNsYXJhdGlvbiwgZnVuY3Rpb24gZXhwcmVzc2lvbiwgb3IgY2xhc3MuSW1wb3J0IGlzIG5vdCBhbGxvd2VkIGhlcmVBbiBhcnJvdyBmdW5jdGlvbiBpcyBub3QgYWxsb3dlZCBoZXJlYGV4cG9ydGAgaXMgbm90IGFsbG93ZWQgaGVyZUEgZ2V0dGVyIG9yIGEgc2V0dGVyIGNhbm5vdCBiZSByZWFkb25seUEgZ2V0dGVyIG9yIGEgc2V0dGVyIGNhbm5vdCBiZSBvcHRpb25hbEEgYGdldGAgYWNjZXNzb3IgY2Fubm90IGhhdmUgcGFyYW1ldGVyc0EgYHNldGAgYWNjZXNzb3IgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHBhcmFtZXRlcnRvcCBsZXZlbCBhd2FpdCBpcyBvbmx5IGFsbG93ZWQgaW4gbW9kdWxlTGVnYWN5IGRlY2ltYWwgZXNjYXBlIGlzIG5vdCBwZXJtaXR0ZWQgaW4gc3RyaWN0IG1vZGVMZWdhY3kgb2N0YWwgZXNjYXBlIGlzIG5vdCBwZXJtaXR0ZWQgaW4gc3RyaWN0IG1vZGVJbnZhbGlkIGNoYXJhY3RlciBpbiBpZGVudGlmaWVyYSBiaW5hcnlhbiBvY3RhbGEgZGVjaW1hbGEgaGV4YWRlY2ltYWxFeHBlY3RlZCAgZGlnaXQAdFoWAAkAAAB9WhYABgAAAFJWFgBhAAAAQgEAABoAAABTZXR0ZXIgc2hvdWxkIGhhdmUgZXhhY3RseSBvbmUgcGFyYW1ldGVyUmVzdCBwYXR0ZXJuIGlzIG5vdCBhbGxvd2VkIGluIHNldHRlclVudGVybWluYXRlZCBibG9jayBjb21tZW50VW50ZXJtaW5hdGVkIHN0cmluZyBjb25zdGFudEV4cGVjdGVkIHVuaWNvZGUgZXNjYXBlVW5leHBlY3RlZCBlc2NhcGUgc2VxdWVuY2UgaW4gcmVzZXJ2ZWQgd29yZDogAD5bFgAtAAAAVW50ZXJtaW5hdGVkIHJlZ2V4cCBsaXRlcmFsVW50ZXJtaW5hdGVkIHRlbXBsYXRlSWRlbnRpZmllciBjYW5ub3QgZm9sbG93IG51bWJlclVuZXhwZWN0ZWQgY2hhcmFjdGVyIMNbFgAVAAAASW52YWxpZCBzdHJpbmcgZXNjYXBlSW52YWxpZCB1bmljb2RlIGVzY2FwZUJhZCBjaGFyYWN0ZXIgZXNjYXBlIHNlcXVlbmNlLCBleHBlY3RlZCAAC1wWACgAAABFeHBlY3RlZCArLCAtIG9yIGRlY2ltYWwgZGlnaXQgYWZ0ZXIgZUxlZ2FjeSBjb21tZW50cyBjYW5ub3QgYmUgdXNlZCBpbiBtb2R1bGUgY29kZWAgY2Fubm90IGJlIHVzZWQgYXMgYW4gaWRlbnRpZmllciBpbiBzdHJpY3QgbW9kZQCaFhgAAQAAAI9cFgAwAAAAYGF3YWl0YCBjYW5ub3QgYmUgdXNlZCBhcyBhbiBpZGVudGlmaWVyIGluIGFuIGFzeW5jIGNvbnRleHQnZXZhbCcgYW5kICdhcmd1bWVudHMnIGNhbm5vdCBiZSB1c2VkIGFzIGEgYmluZGluZyBpZGVudGlmaWVyIGluIHN0cmljdCBtb2RlJ2FyZ3VtZW50cycgaXMgb25seSBhbGxvd2VkIGluIGZ1bmN0aW9ucyBhbmQgY2xhc3MgbWV0aG9kc0lsbGVnYWwgJ3VzZSBzdHJpY3QnIGRpcmVjdGl2ZSBpbiBmdW5jdGlvbiB3aXRoIG5vbi1zaW1wbGUgcGFyYW1ldGVyIGxpc3QuJyoqJyBjYW5ub3QgYmUgYXBwbGllZCB0byB1bmFyeS9hd2FpdCBleHByZXNzaW9uLlVuZXhwZWN0ZWQgdG9rZW4gJyMnTGluZUJyZWFrIGNhbm5vdCBmb2xsb3cgJ3Rocm93J1VuZXhwZWN0ZWQgbGluZSBicmVhayBiZXR3ZWVuIGFycm93IGhlYWQgYW5kIGFycm93VW5leHBlY3RlZCB0b2tlbiBgYC4gRXhwZWN0ZWQgAHFeFgASAAAAg14WAAwAAAAgLCBvciAAAKNeFgADAAAAIG9yIFVuZXhwZWN0ZWQgdG9rZW4uIERpZCB5b3UgbWVhbiAAtF4WAB8AAADHFhgAAQAAAGNhbm5vdCBpbXBvcnQgYXMgcmVzZXJ2ZWQgd29yZGFzc2lnbm1lbnQgcHJvcGVydHkgaXMgaW52YWxpZCBzeW50YXhFeHBlY3RlZCAnJywgZ290ICcnAAAnXxYACgAAADFfFgAIAAAAOV8WAAEAAABFeHBlY3RlZCAnOycsICd9JyBvciA8ZW9mPmF3YWl0KiBoYXMgYmVlbiByZW1vdmVkIGZyb20gdGhlIGFzeW5jIGZ1bmN0aW9ucyBwcm9wb3NhbC4gVXNlIFByb21pc2UuYWxsKCkgaW5zdGVhZC5DYW5ub3QgdXNlIGEgcmVzZXJ2ZWQgd29yZCBhcyBhIHNob3J0aGFuZCBwcm9wZXJ0eU51bGxpc2ggY29hbGVzY2luZyBvcGVyYXRvcig/PykgcmVxdWlyZXMgcGFyZW5zIHdoZW4gbWl4aW5nIHdpdGggbG9naWNhbCBvcGVyYXRvcnNBIHN3aXRjaCBibG9jayBjYW5ub3QgaGF2ZSBtdWx0aXBsZSBkZWZhdWx0c1RyYWlsaW5nIGNvbW1hIGlzbid0IHBlcm1pdHRlZCBhZnRlciBhIHJlc3QgZWxlbWVudFJlc3QgZWxlbWVudCBtdXN0IGJlIGZpbmFsIGVsZW1lbnRQYXJlbnRoZXNpemVkIGV4cHJlc3Npb24gY2Fubm90IGNvbnRhaW4gc3ByZWFkIG9wZXJhdG9yUGFyZW50aGVzaXplZCBleHByZXNzaW9uIGNhbm5vdCBiZSBlbXB0eU5vdCBhIHBhdHRlcm5Ob3QgYW4gZXhwcmVzc2lvbkNhbm5vdCBhc3NpZ24gdG8gdGhpc0ludmFsaWQgYXNzaWdubWVudCB0YXJnZXRFeHBlY3RlZCBpZGVudEV4cGVjdGVkICc7JyBvciBsaW5lIGJyZWFrTGFiZWwgIGlzIGFscmVhZHkgZGVjbGFyZWQAAACbYRYABgAAAKFhFgAUAAAAQW4gYXN5bmMgZnVuY3Rpb24gY2Fubm90IGJlIGdlbmVyYXRvcidpbXBvcnQnLCBhbmQgJ2V4cG9ydCcgYXJlIG5vdCBwZXJtaXR0ZWQgaGVyZSdpbXBvcnQnLCBhbmQgJ2V4cG9ydCcgY2Fubm90IGJlIHVzZWQgb3V0c2lkZSBvZiBtb2R1bGUgY29kZSdpbXBvcnQubWV0YScgY2Fubm90IGJlIHVzZWQgb3V0c2lkZSBvZiBtb2R1bGUgY29kZS5EZXN0cnVjdHVyaW5nIGJpbmRpbmdzIHJlcXVpcmUgaW5pdGlhbGl6ZXJzV2l0aCBzdGF0ZW1lbnQgYXJlIG5vdCBhbGxvd2VkIGluIHN0cmljdCBtb2RlUmV0dXJuIHN0YXRlbWVudCBpcyBub3QgYWxsb3dlZCBoZXJlRXhwZWN0ZWQgb25lIHZhcmlhYmxlIGJpbmRpbmdVbmV4cGVjdGVkIGluaXRpYWxpemVyIGluIGZvciBpbi9vZiBsb29wR2VuZXJhdG9yIG9yIGFzeW5jIGZ1bmN0aW9uIGNhbm5vdCBiZSBsYWJlbGxlZEZ1bmN0aW9uIGNhbm5vdCBiZSBsYWJlbGxlZCBpbiBzdHJpY3QgbW9kZSd5aWVsZCcgY2Fubm90IGJlIHVzZWQgYXMgYSBwYXJhbWV0ZXIgd2l0aGluIGdlbmVyYXRvcmBhd2FpdGAgZXhwcmVzc2lvbnMgY2Fubm90IGJlIHVzZWQgaW4gYSBwYXJhbWV0ZXIgaW5pdGlhbGl6ZXIuZm9yIGF3YWl0IHN5bnRheCBpcyB2YWxpZCBvbmx5IGZvciBmb3Itb2Ygc3RhdGVtZW50YXdhaXQgaXNuJ3QgYWxsb3dlZCBpbiBub24tYXN5bmMgZnVuY3Rpb25VbnRlcm1pbmF0ZWQgSlNYIGNvbnRlbnRzSlNYIGF0dHJpYnV0ZXMgbXVzdCBvbmx5IGJlIGFzc2lnbmVkIGEgbm9uLWVtcHR5IGV4cHJlc3Npb25KU1ggdmFsdWUgc2hvdWxkIGJlIGVpdGhlciBhbiBleHByZXNzaW9uIG9yIGEgcXVvdGVkIEpTWCB0ZXh0RXhwZWN0ZWQgY29ycmVzcG9uZGluZyBKU1ggY2xvc2luZyB0YWcgZm9yIDw+RXhwZWN0ZWQgY29ycmVzcG9uZGluZyBKU1ggY2xvc2luZyB0YWcgZm9yIDwAAAAxZRYALAAAADsUGAABAAAATGVhZGluZyBkZWNvcmF0b3JzIG11c3QgYmUgYXR0YWNoZWQgdG8gYSBjbGFzcyBkZWNsYXJhdGlvblVzaW5nIHRoZSBleHBvcnQga2V5d29yZCBiZXR3ZWVuIGEgZGVjb3JhdG9yIGFuZCBhIGNsYXNzIGlzIG5vdCBhbGxvd2VkLiBQbGVhc2UgdXNlIGBleHBvcnQgQGRlYyBjbGFzc2AgaW5zdGVhZC5BIHJlcXVpcmVkIGVsZW1lbnQgY2Fubm90IGZvbGxvdyBhbiBvcHRpb25hbCBlbGVtZW50LlR5cGVzY3JpcHQgcGFyYW1ldGVyIHByb3BlcnR5IG11c3QgYmUgYW4gaWRlbnRpZmllciBvciBhc3NpZ25tZW50IHBhdHRlcm5VbmV4cGVjdGVkIHNwYWNlIGJldHdlZW4gIyBhbmQgaWRlbnRpZmllckNvbnN0cnVjdG9yIGNhbid0IGJlIGFuIGFzeW5jIGZ1bmN0aW9uQ2xhc3NlcyBtYXkgbm90IGhhdmUgYSBub24tc3RhdGljIGZpZWxkIG5hbWVkICdjb25zdHJ1Y3RvcidDbGFzc2VzIGNhbid0IGhhdmUgYSBwcml2YXRlIGZpZWxkIG5hbWVkICcjY29uc3RydWN0b3InLicgbW9kaWZpZXIgY2Fubm90IGJlIHVzZWQgd2l0aCBhIHByaXZhdGUgaWRlbnRpZmllcgAAADlfFgABAAAAWmcWADMAAABDbGFzcyBjb25zdHJ1Y3RvciBjYW4ndCBiZSBhbiBhY2Nlc3Nvci5BIG1ldGhvZCBjYW5ub3QgYmUgcmVhZG9ubHlBIGNvbnN0cnVjdG9yIGNhbm5vdCBiZSBnZW5lcmF0b3JBIGNsYXNzIGNhbiBvbmx5IGhhdmUgb25lIGNvbnN0cnVjdG9yQSBiaW5kaW5nIHBhdHRlcm4gcGFyYW1ldGVyIGNhbm5vdCBiZSBvcHRpb25hbCBpbiBhbiBpbXBsZW1lbnRhdGlvbiBzaWduYXR1cmUuU3VwZXIgY2FsbCBjYW5ub3QgYmUgb3B0aW9uYWxDb25zdHJ1Y3RvciBpbi9hZnRlciBhbiBvcHRpb25hbCBjaGFpbmluZyBpcyBub3QgYWxsb3dlZC5UYWdnZWQgdGVtcGxhdGUgbGl0ZXJhbCBpcyBub3QgYWxsb3dlZCBpbiBvcHRpb25hbCBjaGFpbi5UcmFpbGluZyBjb21tYSBpcyBkaXNhbGxvd2VkIGluc2lkZSBpbXBvcnQoLi4uKSBhcmd1bWVudHNleHBvcnQgZGVmYXVsdCBzdGF0ZW1lbnRzIHJlcXVpcmVkIGZyb20gJy4uLic7YCBjYW5ub3QgYmUgdXNlZCB3aXRob3V0IGBmcm9tYCBjbGF1c2UAAJoWGAABAAAAbGkWACYAAABgLi4uYCBtdXN0IGJlIGZvbGxvd2VkIGJ5IGFuIGlkZW50aWZpZXIgaW4gZGVjbGFyYXRpb24gY29udGV4dHNBIG51bWVyaWMgc2VwYXJhdG9yIGlzIG9ubHkgYWxsb3dlZCBiZXR3ZWVuIHR3byBkaWdpdHNBIHN0cmluZyBsaXRlcmFsIGNhbm5vdCBiZSB1c2VkIGFzIGFuIGltcG9ydGVkIGJpbmRpbmcuCi0gRGlkIHlvdSBtZWFuIGBpbXBvcnQgeyAiIiBhcyBmb28gfWA/ABlqFgBSAAAAa2oWAAwAAABBIHN0cmluZyBsaXRlcmFsIGNhbm5vdCBiZSB1c2VkIGFzIGFuIGV4cG9ydGVkIGJpbmRpbmcgd2l0aG91dCBgZnJvbWAuJ2NvbnN0JyBkZWNsYXJhdGlvbnMgbXVzdCBiZSBpbml0aWFsaXplZER1cGxpY2F0ZWQgcmVndWxhciBleHByZXNzaW9uIGZsYWcgJycu9moWACQAAAAaaxYAAgAAAFVua25vd24gcmVndWxhciBleHByZXNzaW9uIGZsYWdzLkV4cGVjdGVkIGFuIGlkZW50aWZpZXJFeHBlY3RlZCBhIHNlbWljb2xvblRyYWlsaW5nIGNvbW1hIGlzIG5vdCBhbGxvd2VkQSByZXN0IHBhcmFtZXRlciBtdXN0IGJlIGxhc3QgaW4gYSBwYXJhbWV0ZXIgbGlzdFBhcmFtZXRlciBjYW5ub3QgaGF2ZSBxdWVzdGlvbiBtYXJrIGFuZCBpbml0aWFsaXplcicgbW9kaWZpZXIgbXVzdCBwcmVjZWRlICcnIG1vZGlmaWVyLjlfFgABAAAA+GsWABkAAAARbBYACwAAACcgbW9kaWZpZXIgYWxyZWFkeSBzZWVuLjlfFgABAAAANGwWABgAAABgZGVjbGFyZWAgbW9kaWZpZXIgY2Fubm90IGFwcGVhciBvbiBjbGFzcyBlbGVtZW50cyBvZiB0aGlzIGtpbmRgZGVjbGFyZWAgbW9kaWZpZXIgbm90IGFsbG93ZWQgZm9yIGNvZGUgYWxyZWFkeSBpbiBhbiBhbWJpZW50IGNvbnRleHRgYXN5bmNgIG1vZGlmaWVyIGNhbm5vdCBiZSB1c2VkIGhlcmVBIHJlc3QgcGFyYW1ldGVyIGNhbm5vdCBiZSBvcHRpb25hbEEgcmVzdCBwYXJhbWV0ZXIgY2Fubm90IGhhdmUgYW4gaW5pdGlhbGl6ZXJqc2MudGFyZ2V0IHNob3VsZCBiZSBlczUgb3IgdXBwZXIgdG8gdXNlIGdldHRlciAvIHNldHRlckxlZ2FjeSBvY3RhbCBsaXRlcmFscyBhcmUgbm90IGF2YWlsYWJsZSB3aGVuIHRhcmdldGluZyBFQ01BU2NyaXB0IDUgYW5kIGhpZ2hlcicgbW9kaWZpZXIgY2Fubm90IGFwcGVhciBvbiBhIGNvbnN0cnVjdG9yIGRlY2xhcmF0aW9uAAAAOV8WAAEAAADYbRYANQAAAFR5cGUgcGFyYW1ldGVycyBjYW5ub3QgYXBwZWFyIG9uIGEgY29uc3RydWN0b3IgZGVjbGFyYXRpb25BbiBpbmRleCBzaWduYXR1cmUgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHBhcmFtZXRlclR5cGUgcGFyYW1ldGVyIGxpc3QgY2Fubm90IGJlIGVtcHR5SW52YWxpZCB1c2Ugb2YgJ2FyZ3VtZW50cycgaW4gc3RyaWN0IG1vZGUnZGVsZXRlJyBjYW5ub3QgYmUgY2FsbGVkIG9uIGFuIGlkZW50aWZpZXIgaW4gc3RyaWN0IG1vZGVBICdicmVhaycgc3RhdGVtZW50IGNhbiBvbmx5IGJlIHVzZWQgd2l0aGluIGFuIGVuY2xvc2luZyBpdGVyYXRpb24gb3Igc3dpdGNoIHN0YXRlbWVudFRoZSBsZWZ0LWhhbmQgc2lkZSBvZiBhIGBmb3IuLi5vZmAgc3RhdGVtZW50IG1heSBub3QgYmUgYGFzeW5jYEp1bXAgdGFyZ2V0IGNhbm5vdCBjcm9zcyBmdW5jdGlvbiBib3VuZGFyeUV4cHJlc3Npb24gZXhwZWN0ZWR0eXBlIGV4cGVjdGVkRHVwbGljYXRlIGxhYmVsQSAnY29udGludWUnIHN0YXRlbWVudCBjYW4gb25seSBqdW1wIHRvIGEgbGFiZWwgb2YgYW4gZW5jbG9zaW5nIGl0ZXJhdGlvbiBzdGF0ZW1lbnRBICdicmVhaycgc3RhdGVtZW50IGNhbiBvbmx5IGp1bXAgdG8gYSBsYWJlbCBvZiBhbiBlbmNsb3Npbmcgc3RhdGVtZW50VmFyaWFibGUgZGVjbGFyYXRpb24gbGlzdCBjYW5ub3QgYmUgZW1wdHlsaXRlcmFsIGluIGFuIGltcG9ydCB0eXBlIHNob3VsZCBiZSBzdHJpbmcgbGl0ZXJhbEFuIG9iamVjdCBtZW1iZXIgY2Fubm90IGJlIGRlY2xhcmVkIG9wdGlvbmFsQ29tcHV0ZWQgcHJvcGVydHkgbmFtZXMgYXJlIG5vdCBhbGxvd2VkIGluIGVudW1zQSBjb21tYSBleHByZXNzaW9uIGlzIG5vdCBhbGxvd2VkIGluIGEgY29tcHV0ZWQgcHJvcGVydHkgbmFtZWBleHRlbmRzYCBjbGF1c2UgYWxyZWFkeSBzZWVuLidleHRlbmRzJyBjbGF1c2UgbXVzdCBwcmVjZWRlICdpbXBsZW1lbnRzJyBjbGF1c2UuQ2xhc3NlcyBjYW4gb25seSBleHRlbmQgYSBzaW5nbGUgY2xhc3NgaW1wbGVtZW50c2AgY2xhdXNlIGFscmVhZHkgc2VlbkFuIGltcGxlbWVudGF0aW9uIGNhbm5vdCBiZSBkZWNsYXJlZCBpbiBhbWJpZW50IGNvbnRleHRzTW9kaWZpZXJzIGNhbm5vdCBhcHBlYXIgaGVyZU1lcmdlIGNvbmZsaWN0IG1hcmtlciBlbmNvdW50ZXJlZC5UeXBlIGFubm90YXRpb24gY2Fubm90IGFwcGVhciBvbiBhIGNvbnN0cnVjdG9yIGRlY2xhcmF0aW9uQ2F0Y2ggY2xhdXNlIHZhcmlhYmxlIGNhbm5vdCBoYXZlIGEgdHlwZSBhbm5vdGF0aW9uYGFic3RyYWN0YCBtb2RpZmllciBjYW4gb25seSBhcHBlYXIgb24gYSBjbGFzcyBvciBtZXRob2QgZGVjbGFyYXRpb24nIG1vZGlmaWVyIGNhbm5vdCBiZSB1c2VkIHdpdGggJwAAADlfFgABAAAASXMWACAAAAARbBYACwAAAEFic3RyYWN0IG1ldGhvZHMgY2FuIG9ubHkgYXBwZWFyIHdpdGhpbiBhbiBhYnN0cmFjdCBjbGFzcy5BYnN0cmFjdCBtZXRob2QgY2Fubm90IGhhdmUgYW4gaW1wbGVtZW50YXRpb24uQWJzdHJhY3QgcHJvcGVydHkgY2Fubm90IGhhdmUgYW4gaW5pdGlhbGl6ZXIuJyBtb2RpZmllciBjYW5ub3QgYXBwZWFyIG9uIGEgdHlwZSBwYXJhbWV0ZXIAAAA5XxYAAQAAABl0FgAsAAAAJyBtb2RpZmllciBjYW4gb25seSBhcHBlYXIgb24gYSB0eXBlIHBhcmFtZXRlciBvZiBhIGNsYXNzLCBpbnRlcmZhY2Ugb3IgdHlwZSBhbGlhcwAAOV8WAAEAAABYdBYAUgAAACcgbW9kaWZpZXIgY2FuIG9ubHkgYXBwZWFyIG9uIGEgdHlwZSBwYXJhbWV0ZXIgb2YgYSBmdW5jdGlvbiwgbWV0aG9kIG9yIGNsYXNzAAAAOV8WAAEAAAC8dBYATQAAAFRoZSAndHlwZScgbW9kaWZpZXIgY2Fubm90IGJlIHVzZWQgb24gYSBuYW1lZCBpbXBvcnQgd2hlbiAnaW1wb3J0IHR5cGUnIGlzIHVzZWQgb24gaXRzIGltcG9ydCBzdGF0ZW1lbnQuVGhlICd0eXBlJyBtb2RpZmllciBjYW5ub3QgYmUgdXNlZCBvbiBhIG5hbWVkIGV4cG9ydCB3aGVuICdleHBvcnQgdHlwZScgaXMgdXNlZCBvbiBpdHMgZXhwb3J0IHN0YXRlbWVudC5BIHBhcmFtZXRlciBwcm9wZXJ0eSBpcyBvbmx5IGFsbG93ZWQgaW4gYSBjb25zdHJ1Y3RvciBpbXBsZW1lbnRhdGlvbkEgcGFyYW1ldGVyIGluaXRpYWxpemVyIGlzIG9ubHkgYWxsb3dlZCBpbiBhIGZ1bmN0aW9uIG9yIGNvbnN0cnVjdG9yIGltcGxlbWVudGF0aW9uVGhlIGxlZnQtaGFuZCBzaWRlIG9mIGFuIGFzc2lnbm1lbnQgZXhwcmVzc2lvbiBtdXN0IGJlIGEgdmFyaWFibGUgb3IgYSBwcm9wZXJ0eSBhY2Nlc3MuVGhlICd3aXRoJyBzdGF0ZW1lbnQgaXMgbm90IHN1cHBvcnRlZC4gQWxsIHN5bWJvbHMgaW4gYSAnd2l0aCcgYmxvY2sgd2lsbCBoYXZlIHR5cGUgJ2FueScuSW52YWxpZCBjbGFzcyBuYW1laW50ZXJmYWNlIG5hbWUgaXMgaW52YWxpZEFuIGVudW0gbWVtYmVyIGNhbm5vdCBoYXZlIGEgbnVtZXJpYyBuYW1lVGhlIGxlZnQtaGFuZCBzaWRlIG9mIGEgJ2Zvci4uLm9mJyBzdGF0ZW1lbnQgY2Fubm90IHVzZSBhIHR5cGUgYW5ub3RhdGlvblRoZSBsZWZ0LWhhbmQgc2lkZSBvZiBhICdmb3IuLi5pbicgc3RhdGVtZW50IGNhbm5vdCBiZSBhIGRlc3RydWN0dXJpbmcgcGF0dGVybkFuIGludGVyZmFjZSBjYW4gb25seSBleHRlbmQgYW4gaWRlbnRpZmllci9xdWFsaWZpZWQtbmFtZSB3aXRoIG9wdGlvbmFsIHR5cGUgYXJndW1lbnRzLlRoZSBvcGVyYW5kIG9mIGEgZGVsZXRlIG9wZXJhdG9yIG11c3QgYmUgYSBwcm9wZXJ0eSByZWZlcmVuY2UuVGhpcyBtZW1iZXIgY2Fubm90IGhhdmUgYW4gJ292ZXJyaWRlJyBtb2RpZmllciBiZWNhdXNlIGl0cyBjb250YWluaW5nIGNsYXNzIGRvZXMgbm90IGV4dGVuZCBhbm90aGVyIGNsYXNzLkRlY29yYXRvcnMgbWF5IG5vdCBhcHBlYXIgYWZ0ZXIgYGV4cG9ydGAgb3IgYGV4cG9ydCBkZWZhdWx0YCBpZiB0aGV5IGFsc28gYXBwZWFyIGJlZm9yZSBgZXhwb3J0YC5BbiBhY2Nlc3NpYmlsaXR5IG1vZGlmaWVyIGNhbm5vdCBiZSB1c2VkIHdpdGggYSBwcml2YXRlIGlkZW50aWZpZXIuVHlwZSBhbm5vdGF0aW9ucyBtdXN0IGNvbWUgYmVmb3JlIGRlZmF1bHQgYXNzaWdubWVudHNUeXBlc2NyaXB0IG5vbi1udWxsIGFzc2VydGlvbiBvcGVyYXRvciBpcyBub3QgYWxsb3dlZCB3aXRoICcA93kWADwAAAA5XxYAAQAAAFRoaXMgc3ludGF4IGlzIHJlc2VydmVkIGluIGZpbGVzIHdpdGggdGhlIC5tdHMgb3IgLmN0cyBleHRlbnNpb24uIFVzZSBhbiBgYXNgIGV4cHJlc3Npb24gaW5zdGVhZC5UaGlzIHN5bnRheCBpcyByZXNlcnZlZCBpbiBmaWxlcyB3aXRoIHRoZSAubXRzIG9yIC5jdHMgZXh0ZW5zaW9uLiBBZGQgYSB0cmFpbGluZyBjb21tYSwgYXMgaW4gYDxULD4oKSA9PiAuLi5gLlRoaXMgaXMgdGhlIGV4cHJlc3Npb24gcGFydCBvZiBhbiBleHByZXNzaW9uIHN0YXRlbWVudHByZXZpb3VzIGRlZmF1bHQgY2FzZSBpcyBkZWNsYXJlZCBhdCBoZXJlRW9mRGVjbE5vdEFsbG93ZWRVc2luZ0RlY2xOb3RBbGxvd2VkVXNpbmdEZWNsTm90QWxsb3dlZEZvckZvckluTG9vcFVzaW5nRGVjbE5vdEVuYWJsZWRJbnZhbGlkTmFtZUluVXNpbmdEZWNsSW5pdFJlcXVpcmVkRm9yVXNpbmdEZWNsUHJpdmF0ZU5hbWVJbkludGVyZmFjZUludmFsaWRTdXBlckNhbGxJbnZhbGlkU3VwZXJJbnZhbGlkU3VwZXJQcml2YXRlTmFtZUludmFsaWROZXdUYXJnZXRJbnZhbGlkSW1wb3J0QXJyb3dOb3RBbGxvd2VkRXhwb3J0Tm90QWxsb3dlZEdldHRlclNldHRlckNhbm5vdEJlUmVhZG9ubHlHZXR0ZXJTZXR0ZXJDYW5ub3RCZU9wdGlvbmFsR2V0dGVyUGFyYW1TZXR0ZXJQYXJhbVRvcExldmVsQXdhaXRJblNjcmlwdExlZ2FjeURlY2ltYWxMZWdhY3lPY3RhbEludmFsaWRJZGVudENoYXJFeHBlY3RlZERpZ2l0cmFkaXhTZXR0ZXJQYXJhbVJlcXVpcmVkUmVzdFBhdEluU2V0dGVyVW50ZXJtaW5hdGVkQmxvY2tDb21tZW50VW50ZXJtaW5hdGVkU3RyTGl0RXhwZWN0ZWRVbmljb2RlRXNjYXBlRXNjYXBlSW5SZXNlcnZlZFdvcmR3b3JkVW50ZXJtaW5hdGVkUmVnRXhwVW50ZXJtaW5hdGVkVHBsSWRlbnRBZnRlck51bVVuZXhwZWN0ZWRDaGFyY0ludmFsaWRTdHJFc2NhcGVJbnZhbGlkVW5pY29kZUVzY2FwZUJhZENoYXJhY3RlckVzY2FwZVNlcXVlbmNlZXhwZWN0ZWROdW1MaXRUZXJtaW5hdGVkV2l0aEV4cExlZ2FjeUNvbW1lbnRJbk1vZHVsZUludmFsaWRJZGVudEluU3RyaWN0SW52YWxpZElkZW50SW5Bc3luY0V2YWxBbmRBcmd1bWVudHNJblN0cmljdEFyZ3VtZW50c0luQ2xhc3NGaWVsZElsbGVnYWxMYW5ndWFnZU1vZGVEaXJlY3RpdmVVbmFyeUluRXhwbGVmdF9zcGFuSGFzaExpbmVCcmVha0luVGhyb3dMaW5lQnJlYWtCZWZvcmVBcnJvd1VuZXhwZWN0ZWRnb3RVbmV4cGVjdGVkVG9rZW5XaXRoU3VnZ2VzdGlvbnNjYW5kaWRhdGVfbGlzdFJlc2VydmVkV29yZEluSW1wb3J0QXNzaWduUHJvcGVydHlFeHBlY3RlZEV4cGVjdGVkU2VtaUZvckV4cHJTdG10QXdhaXRTdGFyUmVzZXJ2ZWRXb3JkSW5PYmpTaG9ydGhhbmRPclBhdE51bGxpc2hDb2FsZXNjaW5nV2l0aExvZ2ljYWxPcE11bHRpcGxlRGVmYXVsdHByZXZpb3VzQ29tbWFBZnRlclJlc3RFbGVtZW50Tm9uTGFzdFJlc3RQYXJhbVNwcmVhZEluUGFyZW5FeHByRW1wdHlQYXJlbkV4cHJJbnZhbGlkUGF0SW52YWxpZEV4cHJOb3RTaW1wbGVBc3NpZ25JbnZhbGlkQXNzaWduVGFyZ2V0RXhwZWN0ZWRJZGVudEV4cGVjdGVkU2VtaUR1cGxpY2F0ZUxhYmVsQXN5bmNHZW5lcmF0b3JOb25Ub3BMZXZlbEltcG9ydEV4cG9ydEltcG9ydEV4cG9ydEluU2NyaXB0SW1wb3J0TWV0YUluU2NyaXB0UGF0VmFyV2l0aG91dEluaXRXaXRoSW5TdHJpY3RSZXR1cm5Ob3RBbGxvd2VkVG9vTWFueVZhckluRm9ySW5IZWFkVmFySW5pdGlhbGl6ZXJJbkZvckluSGVhZExhYmVsbGVkR2VuZXJhdG9yT3JBc3luY0xhYmVsbGVkRnVuY3Rpb25JblN0cmljdFlpZWxkUGFyYW1JbkdlbkF3YWl0UGFyYW1JbkFzeW5jQXdhaXRGb3JTdG10QXdhaXRJbkZ1bmN0aW9uVW50ZXJtaW5hdGVkSlNYQ29udGVudHNFbXB0eUpTWEF0dHJJbnZhbGlkSlNYVmFsdWVKU1hFeHBlY3RlZENsb3NpbmdUYWdGb3JMdEd0SlNYRXhwZWN0ZWRDbG9zaW5nVGFndGFnSW52YWxpZExlYWRpbmdEZWNvcmF0b3JEZWNvcmF0b3JPbkV4cG9ydFRzUmVxdWlyZWRBZnRlck9wdGlvbmFsVHNJbnZhbGlkUGFyYW1Qcm9wUGF0U3BhY2VCZXR3ZWVuSGFzaEFuZElkZW50QXN5bmNDb25zdHJ1Y3RvclByb3BlcnR5TmFtZWRDb25zdHJ1Y3RvclByaXZhdGVDb25zdHJ1Y3RvclByaXZhdGVOYW1lTW9kaWZpZXJDb25zdHJ1Y3RvckFjY2Vzc29yUmVhZE9ubHlNZXRob2RHZW5lcmF0b3JDb25zdHJ1Y3RvckR1cGxpY2F0ZUNvbnN0cnVjdG9yVHNCaW5kaW5nUGF0Q2Fubm90QmVPcHRpb25hbFN1cGVyQ2FsbE9wdGlvbmFsT3B0Q2hhaW5DYW5ub3RGb2xsb3dDb25zdHJ1Y3RvckNhbGxUYWdnZWRUcGxJbk9wdENoYWluVHJhaWxpbmdDb21tYUluc2lkZUltcG9ydEV4cG9ydERlZmF1bHRXaXRoT3V0RnJvbUV4cG9ydEV4cGVjdEZyb21Eb3RzV2l0aG91dElkZW50aWZpZXJOdW1lcmljU2VwYXJhdG9ySXNBbGxvd2VkT25seUJldHdlZW5Ud29EaWdpdHNJbXBvcnRCaW5kaW5nSXNTdHJpbmdFeHBvcnRCaW5kaW5nSXNTdHJpbmdDb25zdERlY2xhcmF0aW9uc1JlcXVpcmVJbml0aWFsaXphdGlvbkR1cGxpY2F0ZWRSZWdFeHBGbGFnc1Vua25vd25SZWdFeHBGbGFnc1RTMTAwM1RTMTAwNVRTMTAwOVRTMTAxNFRTMTAxNVRTMTAyOVRTMTAzMFRTMTAzMVRTMTAzOFRTMTA0MlRTMTA0N1RTMTA0OFRTMTA1NlRTMTA4NVRTMTA4OVRTMTA5MlRTMTA5NlRTMTA5OFRTMTEwMFRTMTEwMlRTMTEwNVRTMTEwNlRTMTEwN1RTMTEwOVRTMTExMFRTMTExNFRTMTExNVRTMTExNlRTMTEyM1RTMTE0MVRTMTE2MlRTMTE2NFRTMTE3MVRTMTE3MlRTMTE3M1RTMTE3NFRTMTE3NVRTMTE4M1RTMTE4NFRTMTE4NVRTMTA5M1RTMTE5NlRTMTI0MlRTMTI0M1RTMTI0NFRTMTI0NVRTMTI2N1RTMTI3M1RTMTI3NFRTMTI3N1RTMjIwNlRTMjIwN1RTMjM2OVRTMjM3MVRTMjQwNlRTMjQxMFRTMjQxNFRTMjQyN1RTMjQ1MlRTMjQ4M1RTMjQ5MVRTMjQ5OVRTMjcwM1RTNDExMlRTODAzOFRTMTgwMTBUU1R5cGVBbm5vdGF0aW9uQWZ0ZXJBc3NpZ25Uc05vbk51bGxBc3NlcnRpb25Ob3RBbGxvd2VkV2l0aExhYmVsaW5uZXJub3RlUmVzZXJ2ZWRUeXBlQXNzZXJ0aW9uUmVzZXJ2ZWRBcnJvd1R5cGVQYXJhbVByaXZhdGVQdWJsaWNCbG9ja0RlYnVnZ2VyV2l0aFJldHVybkxhYmVsZWRCcmVha0NvbnRpbnVlSWZTd2l0Y2hUaHJvd1RyeVdoaWxlRG9XaGlsZUZvckZvckluRm9yT2ZEZWNsAAAAAAEAAAABAAAADwAAAEZuRGVjbGlkZW50AAAAAAAIAAAABAAAAHoAAAAAAAAABAAAAAQAAADsAQAAAAAAAAQAAAAEAAAAjwAAAGN0eHRzeW1vcHRpb25hbAAAAAAABAAAAAQAAABBAQAAUmVzdFBhdGRvdDNfdG9rZW5hcmd0eXBlX2FubklmU3RtdHRlc3Rjb25zYWx0QXJyYXlQYXRlbGVtc1ZhckRlY2xVc2luZ0RlY2xQYXQAAACaBAAABAAAAAQAAACZAQAARm9yU3RtdGluaXRib2R5QXNzaWduUGF0bGVmdHJpZ2h0T2JqZWN0UGF0cHJvcHNTdHJOdW1Db21wdXRlZEJpZ0ludEV4cHJTdG10ZXhwcldpdGhTdG10b2JqQ2xhc3NEZWNsQmxvY2tTdG10c3RtdHNCcmVha1N0bXRsYWJlbEVtcHR5U3RtdEZvckluU3RtdEZvck9mU3RtdGlzX2F3YWl0VGhyb3dTdG10V2hpbGVTdG10mwQAACAAAAAIAAAA8gEAAJwEAAAEAAAABAAAAPYBAAA9BAAADAAAAAQAAAC4AQAAAAAAAAEAAAABAAAAQgQAAGtleWlzX3N0YXRpY2RlY29yYXRvcnNhY2Nlc3NpYmlsaXR5aXNfYWJzdHJhY3Rpc19vcHRpb25hbGlzX292ZXJyaWRlZGVmaW5pdGUTKBgABAAAAGCIFgADAAAAzCIYAAUAAAAghxYACAAAAGOIFgAJAAAAbIgWAAoAAAB2iBYADQAAAIOIFgALAAAAjogWAAsAAACZiBYACwAAANcWGAAIAAAAihYYAAcAAACkiBYACAAAAENsYXNzUHJvcERlY29yYXRvclJldHVyblN0bXRTd2l0Y2hDYXNlU3dpdGNoU3RtdGRpc2NyaW1pbmFudGNhc2VzTWV0aG9kR2V0dGVyU2V0dGVyQ2F0Y2hDbGF1c2VwYXJhbURvV2hpbGVTdG10TGFiZWxlZFN0bXRDb25zdHJ1Y3RvclByaXZhdGVNZXRob2RQcml2YXRlUHJvcFRzSW5kZXhTaWduYXR1cmVTdGF0aWNCbG9ja0F1dG9BY2Nlc3NvcgCdBAAABAAAAAQAAACeBAAAAAAAAAEAAAABAAAAnwQAAGtpbmQTKBgABAAAAGCIFgADAAAAmBgYAAgAAAD4iRYABAAAAGOIFgAJAAAAdogWAA0AAACDiBYACwAAAI6IFgALAAAAmYgWAAsAAABDbGFzc01ldGhvZACgBAAADAAAAAQAAAChBAAAogQAABgAAAAEAAAAlgQAAHBhcmFtcwAAEygYAAQAAADshhYABAAAAGCIFgADAAAAcIoWAAYAAAB3hxYABAAAAHaIFgANAAAAjogWAAsAAACjBAAAEAAAAAgAAACkBAAAEygYAAQAAADshhYABAAAAGCIFgADAAAAzCIYAAUAAAAghxYACAAAAGOIFgAJAAAAbIgWAAoAAAB2iBYADQAAAI6IFgALAAAAmYgWAAsAAADXFhgACAAAAKSIFgAIAAAAUHJpdmF0ZU5hbWVuYW1lTW9kdWxlRGVjbFN0bXRBc3NpZ25QYXRQcm9wS2V5VmFsdWVDb250aW51ZVN0bXREZWJ1Z2dlclN0bXQAAKUEAAAgAAAACAAAAKYEAAATKBgABAAAAGCIFgADAAAAzCIYAAUAAAAghxYACAAAAGOIFgAJAAAAbIgWAAoAAAB2iBYADQAAAIOIFgALAAAAmYgWAAsAAACkiBYACAAAAFZhckRlY2xhcmF0b3JCaW5kaW5nSWRlbnRLZXlWYWx1ZVBhdFByb3BzdHJ1Y3QgVHNTeW50YXgAgaoWAHAAAAD9AAAAAQAAAF9hcHBseV9kZWNvcmF0ZWRfZGVzY3JpcHRvckBzd2MvaGVscGVycy9fL19hcHBseV9kZWNvcmF0ZWRfZGVzY3JpcHRvcl9hcnJheV9saWtlX3RvX2FycmF5QHN3Yy9oZWxwZXJzL18vX2FycmF5X2xpa2VfdG9fYXJyYXlfYXJyYXlfd2l0aF9ob2xlc0Bzd2MvaGVscGVycy9fL19hcnJheV93aXRoX2hvbGVzX2FycmF5X3dpdGhvdXRfaG9sZXNAc3djL2hlbHBlcnMvXy9fYXJyYXlfd2l0aG91dF9ob2xlc19hc3NlcnRfdGhpc19pbml0aWFsaXplZEBzd2MvaGVscGVycy9fL19hc3NlcnRfdGhpc19pbml0aWFsaXplZF9hc3luY19nZW5lcmF0b3JAc3djL2hlbHBlcnMvXy9fYXN5bmNfZ2VuZXJhdG9yX2FzeW5jX2dlbmVyYXRvcl9kZWxlZ2F0ZUBzd2MvaGVscGVycy9fL19hc3luY19nZW5lcmF0b3JfZGVsZWdhdGVfYXN5bmNfaXRlcmF0b3JAc3djL2hlbHBlcnMvXy9fYXN5bmNfaXRlcmF0b3JfYXN5bmNfdG9fZ2VuZXJhdG9yQHN3Yy9oZWxwZXJzL18vX2FzeW5jX3RvX2dlbmVyYXRvcl9hd2FpdF9hc3luY19nZW5lcmF0b3JAc3djL2hlbHBlcnMvXy9fYXdhaXRfYXN5bmNfZ2VuZXJhdG9yX2F3YWl0X3ZhbHVlQHN3Yy9oZWxwZXJzL18vX2F3YWl0X3ZhbHVlX2NhbGxfc3VwZXJAc3djL2hlbHBlcnMvXy9fY2FsbF9zdXBlcl9jaGVja19wcml2YXRlX3JlZGVjbGFyYXRpb25Ac3djL2hlbHBlcnMvXy9fY2hlY2tfcHJpdmF0ZV9yZWRlY2xhcmF0aW9uX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZGVzdHJ1Y3R1cmVAc3djL2hlbHBlcnMvXy9fY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9kZXN0cnVjdHVyZV9jbGFzc19hcHBseV9kZXNjcmlwdG9yX2dldEBzd2MvaGVscGVycy9fL19jbGFzc19hcHBseV9kZXNjcmlwdG9yX2dldF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3NldEBzd2MvaGVscGVycy9fL19jbGFzc19hcHBseV9kZXNjcmlwdG9yX3NldF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3VwZGF0ZUBzd2MvaGVscGVycy9fL19jbGFzc19hcHBseV9kZXNjcmlwdG9yX3VwZGF0ZV9jbGFzc19jYWxsX2NoZWNrQHN3Yy9oZWxwZXJzL18vX2NsYXNzX2NhbGxfY2hlY2tfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvckBzd2MvaGVscGVycy9fL19jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yX2NsYXNzX2V4dHJhY3RfZmllbGRfZGVzY3JpcHRvckBzd2MvaGVscGVycy9fL19jbGFzc19leHRyYWN0X2ZpZWxkX2Rlc2NyaXB0b3JfY2xhc3NfbmFtZV90ZHpfZXJyb3JAc3djL2hlbHBlcnMvXy9fY2xhc3NfbmFtZV90ZHpfZXJyb3JfY2xhc3NfcHJpdmF0ZV9maWVsZF9nZXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9maWVsZF9nZXRfY2xhc3NfcHJpdmF0ZV9maWVsZF9pbml0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfaW5pdF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2VAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5X2NsYXNzX3ByaXZhdGVfZmllbGRfc2V0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfc2V0X2NsYXNzX3ByaXZhdGVfZmllbGRfdXBkYXRlQHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfdXBkYXRlX2NsYXNzX3ByaXZhdGVfbWV0aG9kX2dldEBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX21ldGhvZF9nZXRfY2xhc3NfcHJpdmF0ZV9tZXRob2RfaW5pdEBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX21ldGhvZF9pbml0X2NsYXNzX3ByaXZhdGVfbWV0aG9kX3NldEBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX21ldGhvZF9zZXRfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19nZXRAc3djL2hlbHBlcnMvXy9fY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19nZXRfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19zZXRAc3djL2hlbHBlcnMvXy9fY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19zZXRfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfdXBkYXRlQHN3Yy9oZWxwZXJzL18vX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3VwZGF0ZV9jb25zdHJ1Y3RAc3djL2hlbHBlcnMvXy9fY29uc3RydWN0X2NyZWF0ZV9jbGFzc0Bzd2MvaGVscGVycy9fL19jcmVhdGVfY2xhc3NfZGVjb3JhdGVAc3djL2hlbHBlcnMvXy9fZGVjb3JhdGVfZGVmYXVsdHNAc3djL2hlbHBlcnMvXy9fZGVmYXVsdHNfZGVmaW5lX2VudW1lcmFibGVfcHJvcGVydGllc0Bzd2MvaGVscGVycy9fL19kZWZpbmVfZW51bWVyYWJsZV9wcm9wZXJ0aWVzX2RlZmluZV9wcm9wZXJ0eUBzd2MvaGVscGVycy9fL19kZWZpbmVfcHJvcGVydHlfZXhwb3J0X3N0YXJAc3djL2hlbHBlcnMvXy9fZXhwb3J0X3N0YXJfZXh0ZW5kc0Bzd2MvaGVscGVycy9fL19leHRlbmRzX2dldEBzd2MvaGVscGVycy9fL19nZXRfZ2V0X3Byb3RvdHlwZV9vZkBzd2MvaGVscGVycy9fL19nZXRfcHJvdG90eXBlX29mX2luaGVyaXRzQHN3Yy9oZWxwZXJzL18vX2luaGVyaXRzX2luaGVyaXRzX2xvb3NlQHN3Yy9oZWxwZXJzL18vX2luaGVyaXRzX2xvb3NlX2luaXRpYWxpemVyX2RlZmluZV9wcm9wZXJ0eUBzd2MvaGVscGVycy9fL19pbml0aWFsaXplcl9kZWZpbmVfcHJvcGVydHlfaW5pdGlhbGl6ZXJfd2FybmluZ19oZWxwZXJAc3djL2hlbHBlcnMvXy9faW5pdGlhbGl6ZXJfd2FybmluZ19oZWxwZXJfaW5zdGFuY2VvZkBzd2MvaGVscGVycy9fL19pbnN0YW5jZW9mX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0QHN3Yy9oZWxwZXJzL18vX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0X2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZEBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRfaXNfbmF0aXZlX2Z1bmN0aW9uQHN3Yy9oZWxwZXJzL18vX2lzX25hdGl2ZV9mdW5jdGlvbl9pdGVyYWJsZV90b19hcnJheUBzd2MvaGVscGVycy9fL19pdGVyYWJsZV90b19hcnJheV9pdGVyYWJsZV90b19hcnJheV9saW1pdEBzd2MvaGVscGVycy9fL19pdGVyYWJsZV90b19hcnJheV9saW1pdF9pdGVyYWJsZV90b19hcnJheV9saW1pdF9sb29zZUBzd2MvaGVscGVycy9fL19pdGVyYWJsZV90b19hcnJheV9saW1pdF9sb29zZV9qc3hAc3djL2hlbHBlcnMvXy9fanN4X25ld19hcnJvd19jaGVja0Bzd2MvaGVscGVycy9fL19uZXdfYXJyb3dfY2hlY2tfbm9uX2l0ZXJhYmxlX3Jlc3RAc3djL2hlbHBlcnMvXy9fbm9uX2l0ZXJhYmxlX3Jlc3Rfbm9uX2l0ZXJhYmxlX3NwcmVhZEBzd2MvaGVscGVycy9fL19ub25faXRlcmFibGVfc3ByZWFkX29iamVjdF9kZXN0cnVjdHVyaW5nX2VtcHR5QHN3Yy9oZWxwZXJzL18vX29iamVjdF9kZXN0cnVjdHVyaW5nX2VtcHR5X29iamVjdF9zcHJlYWRAc3djL2hlbHBlcnMvXy9fb2JqZWN0X3NwcmVhZF9vYmplY3Rfc3ByZWFkX3Byb3BzQHN3Yy9oZWxwZXJzL18vX29iamVjdF9zcHJlYWRfcHJvcHNfb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc0Bzd2MvaGVscGVycy9fL19vYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzX29iamVjdF93aXRob3V0X3Byb3BlcnRpZXNfbG9vc2VAc3djL2hlbHBlcnMvXy9fb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc19sb29zZV9wb3NzaWJsZV9jb25zdHJ1Y3Rvcl9yZXR1cm5Ac3djL2hlbHBlcnMvXy9fcG9zc2libGVfY29uc3RydWN0b3JfcmV0dXJuX3JlYWRfb25seV9lcnJvckBzd2MvaGVscGVycy9fL19yZWFkX29ubHlfZXJyb3Jfc2V0QHN3Yy9oZWxwZXJzL18vX3NldF9zZXRfcHJvdG90eXBlX29mQHN3Yy9oZWxwZXJzL18vX3NldF9wcm90b3R5cGVfb2Zfc2tpcF9maXJzdF9nZW5lcmF0b3JfbmV4dEBzd2MvaGVscGVycy9fL19za2lwX2ZpcnN0X2dlbmVyYXRvcl9uZXh0X3NsaWNlZF90b19hcnJheUBzd2MvaGVscGVycy9fL19zbGljZWRfdG9fYXJyYXlfc2xpY2VkX3RvX2FycmF5X2xvb3NlQHN3Yy9oZWxwZXJzL18vX3NsaWNlZF90b19hcnJheV9sb29zZV9zdXBlcl9wcm9wX2Jhc2VAc3djL2hlbHBlcnMvXy9fc3VwZXJfcHJvcF9iYXNlX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsQHN3Yy9oZWxwZXJzL18vX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlQHN3Yy9oZWxwZXJzL18vX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlX3Rocm93QHN3Yy9oZWxwZXJzL18vX3Rocm93X3RvX2FycmF5QHN3Yy9oZWxwZXJzL18vX3RvX2FycmF5X3RvX2NvbnN1bWFibGVfYXJyYXlAc3djL2hlbHBlcnMvXy9fdG9fY29uc3VtYWJsZV9hcnJheV90b19wcmltaXRpdmVAc3djL2hlbHBlcnMvXy9fdG9fcHJpbWl0aXZlX3RvX3Byb3BlcnR5X2tleUBzd2MvaGVscGVycy9fL190b19wcm9wZXJ0eV9rZXlfdXBkYXRlQHN3Yy9oZWxwZXJzL18vX3VwZGF0ZV90eXBlX29mQHN3Yy9oZWxwZXJzL18vX3R5cGVfb2ZfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXlAc3djL2hlbHBlcnMvXy9fdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXlfd3JhcF9hc3luY19nZW5lcmF0b3JAc3djL2hlbHBlcnMvXy9fd3JhcF9hc3luY19nZW5lcmF0b3Jfd3JhcF9uYXRpdmVfc3VwZXJAc3djL2hlbHBlcnMvXy9fd3JhcF9uYXRpdmVfc3VwZXJfd3JpdGVfb25seV9lcnJvckBzd2MvaGVscGVycy9fL193cml0ZV9vbmx5X2Vycm9yX2NsYXNzX3ByaXZhdGVfZmllbGRfZGVzdHJ1Y3R1cmVAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZV9jbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZUBzd2MvaGVscGVycy9fL19jbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZV9jbGFzc19zdGF0aWNfcHJpdmF0ZV9tZXRob2RfZ2V0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3N0YXRpY19wcml2YXRlX21ldGhvZF9nZXRfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfYWNjZXNzQHN3Yy9oZWxwZXJzL18vX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2Vzc19pc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3RAc3djL2hlbHBlcnMvXy9faXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0X2NyZWF0ZV9zdXBlckBzd2MvaGVscGVycy9fL19jcmVhdGVfc3VwZXJfY3JlYXRlX2Zvcl9vZl9pdGVyYXRvcl9oZWxwZXJfbG9vc2VAc3djL2hlbHBlcnMvXy9fY3JlYXRlX2Zvcl9vZl9pdGVyYXRvcl9oZWxwZXJfbG9vc2VfdHNfZGVjb3JhdGVAc3djL2hlbHBlcnMvXy9fdHNfZGVjb3JhdGVfdHNfZ2VuZXJhdG9yQHN3Yy9oZWxwZXJzL18vX3RzX2dlbmVyYXRvcl90c19tZXRhZGF0YUBzd2MvaGVscGVycy9fL190c19tZXRhZGF0YV90c19wYXJhbUBzd2MvaGVscGVycy9fL190c19wYXJhbV90c192YWx1ZXNAc3djL2hlbHBlcnMvXy9fdHNfdmFsdWVzX3RzX2FkZF9kaXNwb3NhYmxlX3Jlc291cmNlQHN3Yy9oZWxwZXJzL18vX3RzX2FkZF9kaXNwb3NhYmxlX3Jlc291cmNlX3RzX2Rpc3Bvc2VfcmVzb3VyY2VzQHN3Yy9oZWxwZXJzL18vX3RzX2Rpc3Bvc2VfcmVzb3VyY2VzX2FwcGx5X2RlY3NfMjIwM19yQHN3Yy9oZWxwZXJzL18vX2FwcGx5X2RlY3NfMjIwM19yX2lkZW50aXR5QHN3Yy9oZWxwZXJzL18vX2lkZW50aXR5X2Rpc3Bvc2VAc3djL2hlbHBlcnMvXy9fZGlzcG9zZV91c2luZ0Bzd2MvaGVscGVycy9fL191c2luZ191c2luZ19jdHhAc3djL2hlbHBlcnMvXy9fdXNpbmdfY3R4YXBwbHlfZGVjb3JhdGVkX2Rlc2NyaXB0b3JhcnJheV9saWtlX3RvX2FycmF5YXJyYXlfd2l0aF9ob2xlc2FycmF5X3dpdGhvdXRfaG9sZXNhc3NlcnRfdGhpc19pbml0aWFsaXplZGFzeW5jX2dlbmVyYXRvcmFzeW5jX2dlbmVyYXRvcl9kZWxlZ2F0ZWFzeW5jX2l0ZXJhdG9yYXN5bmNfdG9fZ2VuZXJhdG9yYXdhaXRfYXN5bmNfZ2VuZXJhdG9yYXdhaXRfdmFsdWVjYWxsX3N1cGVyY2hlY2tfcHJpdmF0ZV9yZWRlY2xhcmF0aW9uY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9kZXN0cnVjdHVyZWNsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZ2V0Y2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXRjbGFzc19hcHBseV9kZXNjcmlwdG9yX3VwZGF0ZWNsYXNzX2NhbGxfY2hlY2tjbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yY2xhc3NfbmFtZV90ZHpfZXJyb3JjbGFzc19wcml2YXRlX2ZpZWxkX2dldGNsYXNzX3ByaXZhdGVfZmllbGRfaW5pdGNsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZWNsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5Y2xhc3NfcHJpdmF0ZV9maWVsZF9zZXRjbGFzc19wcml2YXRlX2ZpZWxkX3VwZGF0ZWNsYXNzX3ByaXZhdGVfbWV0aG9kX2dldGNsYXNzX3ByaXZhdGVfbWV0aG9kX2luaXRjbGFzc19wcml2YXRlX21ldGhvZF9zZXRjbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9zcGVjX2dldGNsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfc2V0Y2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfdXBkYXRlY29uc3RydWN0Y3JlYXRlX2NsYXNzZGVjb3JhdGVkZWZhdWx0c2RlZmluZV9lbnVtZXJhYmxlX3Byb3BlcnRpZXNkZWZpbmVfcHJvcGVydHlleHBvcnRfc3RhcmdldF9wcm90b3R5cGVfb2Zpbmhlcml0c2luaGVyaXRzX2xvb3NlaW5pdGlhbGl6ZXJfZGVmaW5lX3Byb3BlcnR5aW5pdGlhbGl6ZXJfd2FybmluZ19oZWxwZXJpbnRlcm9wX3JlcXVpcmVfZGVmYXVsdGludGVyb3BfcmVxdWlyZV93aWxkY2FyZGlzX25hdGl2ZV9mdW5jdGlvbml0ZXJhYmxlX3RvX2FycmF5aXRlcmFibGVfdG9fYXJyYXlfbGltaXRpdGVyYWJsZV90b19hcnJheV9saW1pdF9sb29zZWpzeG5ld19hcnJvd19jaGVja25vbl9pdGVyYWJsZV9yZXN0bm9uX2l0ZXJhYmxlX3NwcmVhZG9iamVjdF9kZXN0cnVjdHVyaW5nX2VtcHR5b2JqZWN0X3NwcmVhZG9iamVjdF9zcHJlYWRfcHJvcHNvYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc19sb29zZXBvc3NpYmxlX2NvbnN0cnVjdG9yX3JldHVybnJlYWRfb25seV9lcnJvcnNldF9wcm90b3R5cGVfb2Zza2lwX2ZpcnN0X2dlbmVyYXRvcl9uZXh0c2xpY2VkX3RvX2FycmF5c2xpY2VkX3RvX2FycmF5X2xvb3Nlc3VwZXJfcHJvcF9iYXNldGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWx0YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZXRvX2FycmF5dG9fY29uc3VtYWJsZV9hcnJheXRvX3ByaW1pdGl2ZXRvX3Byb3BlcnR5X2tleXVwZGF0ZXR5cGVfb2Z1bnN1cHBvcnRlZF9pdGVyYWJsZV90b19hcnJheXdyYXBfYXN5bmNfZ2VuZXJhdG9yd3JhcF9uYXRpdmVfc3VwZXJ3cml0ZV9vbmx5X2Vycm9yY2xhc3NfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZWNsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX2Rlc3RydWN0dXJlY2xhc3Nfc3RhdGljX3ByaXZhdGVfbWV0aG9kX2dldGNsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2Vzc2lzX25hdGl2ZV9yZWZsZWN0X2NvbnN0cnVjdGNyZWF0ZV9zdXBlcmNyZWF0ZV9mb3Jfb2ZfaXRlcmF0b3JfaGVscGVyX2xvb3NldHNfZGVjb3JhdGV0c19nZW5lcmF0b3J0c19tZXRhZGF0YXRzX3BhcmFtdHNfdmFsdWVzdHNfYWRkX2Rpc3Bvc2FibGVfcmVzb3VyY2V0c19kaXNwb3NlX3Jlc291cmNlc2FwcGx5X2RlY3NfMjIwM19yaWRlbnRpdHlkaXNwb3NldXNpbmdfY3R4TWFya2VyIHByb3ZpZGVkIHRvIHJlc29sdmVyIHNob3VsZCBub3QgYmUgdGhlIHJvb3QgbWFyawAAK6oWADcAAABI2RcAcQAAAIoAAAAFAAAAJG5hbWUvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX2Jhc2UtMS4wLjEvc3JjL2hlbHBlcnMvbW9kLnJzaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogRXJyb3Igb2NjdXJyZWQgd2hpbGUgcGFyc2luZyBlcnJvcjogAPGqFgBOAAAAgaoWAHAAAAAoAAAACQAAAEBzd2MvaGVscGVycy9fL19YqxYAEAAAAGlkcmVzb3VyY2VfX6cEAABmdW5jdGlvbiBfYXBwbHlfZGVjb3JhdGVkX2Rlc2NyaXB0b3IodGFyZ2V0LCBwcm9wZXJ0eSwgZGVjb3JhdG9ycywgZGVzY3JpcHRvciwgY29udGV4dCkgewogICAgdmFyIGRlc2MgPSB7fTsKICAgIE9iamVjdFsia2UiICsgInlzIl0oZGVzY3JpcHRvcikuZm9yRWFjaChmdW5jdGlvbihrZXkpIHsKICAgICAgICBkZXNjW2tleV0gPSBkZXNjcmlwdG9yW2tleV07CiAgICB9KTsKICAgIGRlc2MuZW51bWVyYWJsZSA9ICEhZGVzYy5lbnVtZXJhYmxlOwogICAgZGVzYy5jb25maWd1cmFibGUgPSAhIWRlc2MuY29uZmlndXJhYmxlOwogICAgaWYgKCJ2YWx1ZSIgaW4gZGVzYyB8fCBkZXNjLmluaXRpYWxpemVyKSB7CiAgICAgICAgZGVzYy53cml0YWJsZSA9IHRydWU7CiAgICB9CiAgICBkZXNjID0gZGVjb3JhdG9ycy5zbGljZSgpLnJldmVyc2UoKS5yZWR1Y2UoZnVuY3Rpb24oZGVzYywgZGVjb3JhdG9yKSB7CiAgICAgICAgcmV0dXJuIGRlY29yYXRvciA/IGRlY29yYXRvcih0YXJnZXQsIHByb3BlcnR5LCBkZXNjKSB8fCBkZXNjIDogZGVzYzsKICAgIH0sIGRlc2MpOwogICAgdmFyIGhhc0FjY2Vzc29yID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRlc2MsICJnZXQiKSB8fCBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZGVzYywgInNldCIpOwogICAgaWYgKGNvbnRleHQgJiYgZGVzYy5pbml0aWFsaXplciAhPT0gdm9pZCAwICYmICFoYXNBY2Nlc3NvcikgewogICAgICAgIGRlc2MudmFsdWUgPSBkZXNjLmluaXRpYWxpemVyID8gZGVzYy5pbml0aWFsaXplci5jYWxsKGNvbnRleHQpIDogdm9pZCAwOwogICAgICAgIGRlc2MuaW5pdGlhbGl6ZXIgPSB1bmRlZmluZWQ7CiAgICB9CiAgICBpZiAoaGFzQWNjZXNzb3IpIHsKICAgICAgICBkZWxldGUgZGVzYy53cml0YWJsZTsKICAgICAgICBkZWxldGUgZGVzYy5pbml0aWFsaXplcjsKICAgICAgICBkZWxldGUgZGVzYy52YWx1ZTsKICAgIH0KICAgIGlmIChkZXNjLmluaXRpYWxpemVyID09PSB2b2lkIDApIHsKICAgICAgICBPYmplY3RbImRlZmluZSIgKyAiUHJvcGVydHkiXSh0YXJnZXQsIHByb3BlcnR5LCBkZXNjKTsKICAgICAgICBkZXNjID0gbnVsbDsKICAgIH0KICAgIHJldHVybiBkZXNjOwp9CmZ1bmN0aW9uIF9hcnJheV9saWtlX3RvX2FycmF5KGFyciwgbGVuKSB7CiAgICBpZiAobGVuID09IG51bGwgfHwgbGVuID4gYXJyLmxlbmd0aCkgbGVuID0gYXJyLmxlbmd0aDsKICAgIGZvciAodmFyIGkgPSAwLCBhcnIyID0gbmV3IEFycmF5KGxlbik7IGkgPCBsZW47IGkrKykgYXJyMltpXSA9IGFycltpXTsKICAgIHJldHVybiBhcnIyOwp9CmZ1bmN0aW9uIF9hcnJheV93aXRoX2hvbGVzKGFycikgewogICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyKSkgcmV0dXJuIGFycjsKfQpmdW5jdGlvbiBfYXJyYXlfd2l0aG91dF9ob2xlcyhhcnIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KGFycikpIHJldHVybiBfYXJyYXlfbGlrZV90b19hcnJheShhcnIpOwp9CmZ1bmN0aW9uIF9hc3NlcnRfdGhpc19pbml0aWFsaXplZChzZWxmKSB7CiAgICBpZiAoc2VsZiA9PT0gdm9pZCAwKSB7CiAgICAgICAgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJ0aGlzIGhhc24ndCBiZWVuIGluaXRpYWxpc2VkIC0gc3VwZXIoKSBoYXNuJ3QgYmVlbiBjYWxsZWQiKTsKICAgIH0KICAgIHJldHVybiBzZWxmOwp9CmZ1bmN0aW9uIF9hc3luY19nZW5lcmF0b3IoZ2VuKSB7CiAgICB2YXIgZnJvbnQsIGJhY2s7CiAgICBmdW5jdGlvbiBzZW5kKGtleSwgYXJnKSB7CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgICB2YXIgcmVxdWVzdCA9IHsga2V5OiBrZXksIGFyZzogYXJnLCByZXNvbHZlOiByZXNvbHZlLCByZWplY3Q6IHJlamVjdCwgbmV4dDogbnVsbCB9OwogICAgICAgICAgICBpZiAoYmFjaykgewogICAgICAgICAgICAgICAgYmFjayA9IGJhY2submV4dCA9IHJlcXVlc3Q7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBmcm9udCA9IGJhY2sgPSByZXF1ZXN0OwogICAgICAgICAgICAgICAgcmVzdW1lKGtleSwgYXJnKTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfQogICAgZnVuY3Rpb24gcmVzdW1lKGtleSwgYXJnKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHJlc3VsdCA9IGdlbltrZXldKGFyZyk7CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IHJlc3VsdC52YWx1ZTsKICAgICAgICAgICAgdmFyIHdyYXBwZWRBd2FpdCA9IHZhbHVlIGluc3RhbmNlb2YgX2F3YWl0X3ZhbHVlOwogICAgICAgICAgICBQcm9taXNlLnJlc29sdmUod3JhcHBlZEF3YWl0ID8gdmFsdWUud3JhcHBlZCA6IHZhbHVlKS50aGVuKGZ1bmN0aW9uKGFyZykgewogICAgICAgICAgICAgICAgaWYgKHdyYXBwZWRBd2FpdCkgewogICAgICAgICAgICAgICAgICAgIHJlc3VtZSgibmV4dCIsIGFyZyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgc2V0dGxlKHJlc3VsdC5kb25lID8gInJldHVybiIgOiAibm9ybWFsIiwgYXJnKTsKICAgICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7CiAgICAgICAgICAgICAgICByZXN1bWUoInRocm93IiwgZXJyKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgIHNldHRsZSgidGhyb3ciLCBlcnIpOwogICAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIHNldHRsZSh0eXBlLCB2YWx1ZSkgewogICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICAgICBjYXNlICJyZXR1cm4iOgogICAgICAgICAgICAgICAgZnJvbnQucmVzb2x2ZSh7IHZhbHVlOiB2YWx1ZSwgZG9uZTogdHJ1ZSB9KTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJ0aHJvdyI6CiAgICAgICAgICAgICAgICBmcm9udC5yZWplY3QodmFsdWUpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICBmcm9udC5yZXNvbHZlKHsgdmFsdWU6IHZhbHVlLCBkb25lOiBmYWxzZSB9KTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICBmcm9udCA9IGZyb250Lm5leHQ7CiAgICAgICAgaWYgKGZyb250KSB7CiAgICAgICAgICAgIHJlc3VtZShmcm9udC5rZXksIGZyb250LmFyZyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYmFjayA9IG51bGw7CiAgICAgICAgfQogICAgfQogICAgdGhpcy5faW52b2tlID0gc2VuZDsKICAgIGlmICh0eXBlb2YgZ2VuLnJldHVybiAhPT0gImZ1bmN0aW9uIikgewogICAgICAgIHRoaXMucmV0dXJuID0gdW5kZWZpbmVkOwogICAgfQp9CmlmICh0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5hc3luY0l0ZXJhdG9yKSB7CiAgICBfYXN5bmNfZ2VuZXJhdG9yLnByb3RvdHlwZVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gdGhpczsKICAgIH07Cn0KX2FzeW5jX2dlbmVyYXRvci5wcm90b3R5cGUubmV4dCA9IGZ1bmN0aW9uKGFyZykgewogICAgcmV0dXJuIHRoaXMuX2ludm9rZSgibmV4dCIsIGFyZyk7Cn07Cl9hc3luY19nZW5lcmF0b3IucHJvdG90eXBlLnRocm93ID0gZnVuY3Rpb24oYXJnKSB7CiAgICByZXR1cm4gdGhpcy5faW52b2tlKCJ0aHJvdyIsIGFyZyk7Cn07Cl9hc3luY19nZW5lcmF0b3IucHJvdG90eXBlLnJldHVybiA9IGZ1bmN0aW9uKGFyZykgewogICAgcmV0dXJuIHRoaXMuX2ludm9rZSgicmV0dXJuIiwgYXJnKTsKfTsKZnVuY3Rpb24gX2FzeW5jX2dlbmVyYXRvcl9kZWxlZ2F0ZShpbm5lciwgYXdhaXRXcmFwKSB7CiAgICB2YXIgaXRlciA9IHt9LCB3YWl0aW5nID0gZmFsc2U7CiAgICBmdW5jdGlvbiBwdW1wKGtleSwgdmFsdWUpIHsKICAgICAgICB3YWl0aW5nID0gdHJ1ZTsKICAgICAgICB2YWx1ZSA9IG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUpIHsKICAgICAgICAgICAgcmVzb2x2ZShpbm5lcltrZXldKHZhbHVlKSk7CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIHsgZG9uZTogZmFsc2UsIHZhbHVlOiBhd2FpdFdyYXAodmFsdWUpIH07CiAgICB9CiAgICBpZiAodHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IpIHsKICAgICAgICBpdGVyW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAgICAgfTsKICAgIH0KICAgIGl0ZXIubmV4dCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgaWYgKHdhaXRpbmcpIHsKICAgICAgICAgICAgd2FpdGluZyA9IGZhbHNlOwogICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgfQogICAgICAgIHJldHVybiBwdW1wKCJuZXh0IiwgdmFsdWUpOwogICAgfTsKICAgIGlmICh0eXBlb2YgaW5uZXIudGhyb3cgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICBpdGVyLnRocm93ID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgaWYgKHdhaXRpbmcpIHsKICAgICAgICAgICAgICAgIHdhaXRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHRocm93IHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBwdW1wKCJ0aHJvdyIsIHZhbHVlKTsKICAgICAgICB9OwogICAgfQogICAgaWYgKHR5cGVvZiBpbm5lci5yZXR1cm4gPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICBpdGVyLnJldHVybiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiBwdW1wKCJyZXR1cm4iLCB2YWx1ZSk7CiAgICAgICAgfTsKICAgIH0KICAgIHJldHVybiBpdGVyOwp9CmZ1bmN0aW9uIF9hc3luY19pdGVyYXRvcihpdGVyYWJsZSkgewogICAgdmFyIG1ldGhvZCwgYXN5bmMsIHN5bmMsIHJldHJ5ID0gMjsKICAgIGZvciAoInVuZGVmaW5lZCIgIT0gdHlwZW9mIFN5bWJvbCAmJiAoYXN5bmMgPSBTeW1ib2wuYXN5bmNJdGVyYXRvciwgc3luYyA9IFN5bWJvbC5pdGVyYXRvcik7IHJldHJ5LS07KSB7CiAgICAgICAgaWYgKGFzeW5jICYmIG51bGwgIT0gKG1ldGhvZCA9IGl0ZXJhYmxlW2FzeW5jXSkpIHJldHVybiBtZXRob2QuY2FsbChpdGVyYWJsZSk7CiAgICAgICAgaWYgKHN5bmMgJiYgbnVsbCAhPSAobWV0aG9kID0gaXRlcmFibGVbc3luY10pKSByZXR1cm4gbmV3IEFzeW5jRnJvbVN5bmNJdGVyYXRvcihtZXRob2QuY2FsbChpdGVyYWJsZSkpOwogICAgICAgIGFzeW5jID0gIkBAYXN5bmNJdGVyYXRvciIsIHN5bmMgPSAiQEBpdGVyYXRvciI7CiAgICB9CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgaXMgbm90IGFzeW5jIGl0ZXJhYmxlIik7Cn0KZnVuY3Rpb24gQXN5bmNGcm9tU3luY0l0ZXJhdG9yKHMpIHsKICAgIGZ1bmN0aW9uIEFzeW5jRnJvbVN5bmNJdGVyYXRvckNvbnRpbnVhdGlvbihyKSB7CiAgICAgICAgaWYgKE9iamVjdChyKSAhPT0gcikgcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBUeXBlRXJyb3IociArICIgaXMgbm90IGFuIG9iamVjdC4iKSk7CiAgICAgICAgdmFyIGRvbmUgPSByLmRvbmU7CiAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyLnZhbHVlKS50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiB2YWx1ZSwgZG9uZTogZG9uZSB9OwogICAgICAgIH0pOwogICAgfQogICAgcmV0dXJuIEFzeW5jRnJvbVN5bmNJdGVyYXRvciA9IGZ1bmN0aW9uKHMpIHsKICAgICAgICB0aGlzLnMgPSBzLCB0aGlzLm4gPSBzLm5leHQ7CiAgICB9LAogICAgICAgIEFzeW5jRnJvbVN5bmNJdGVyYXRvci5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgIHM6IG51bGwsCiAgICAgICAgICAgIG46IG51bGwsCiAgICAgICAgICAgIG5leHQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIEFzeW5jRnJvbVN5bmNJdGVyYXRvckNvbnRpbnVhdGlvbih0aGlzLm4uYXBwbHkodGhpcy5zLCBhcmd1bWVudHMpKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgcmV0dXJuOiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFyIHJldCA9IHRoaXMucy5yZXR1cm47CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSByZXQKICAgICAgICAgICAgICAgICAgICA/IFByb21pc2UucmVzb2x2ZSh7IHZhbHVlOiB2YWx1ZSwgZG9uZTogITAgfSkKICAgICAgICAgICAgICAgICAgICA6IEFzeW5jRnJvbVN5bmNJdGVyYXRvckNvbnRpbnVhdGlvbihyZXQuYXBwbHkodGhpcy5zLCBhcmd1bWVudHMpKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgdGhyb3c6IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICAgICB2YXIgdGhyID0gdGhpcy5zLnJldHVybjsKICAgICAgICAgICAgICAgIHJldHVybiB2b2lkIDAgPT09IHRociA/IFByb21pc2UucmVqZWN0KHZhbHVlKSA6IEFzeW5jRnJvbVN5bmNJdGVyYXRvckNvbnRpbnVhdGlvbih0aHIuYXBwbHkodGhpcy5zLCBhcmd1bWVudHMpKTsKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgbmV3IEFzeW5jRnJvbVN5bmNJdGVyYXRvcihzKTsKfQpmdW5jdGlvbiBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csIGtleSwgYXJnKSB7CiAgICB0cnkgewogICAgICAgIHZhciBpbmZvID0gZ2VuW2tleV0oYXJnKTsKICAgICAgICB2YXIgdmFsdWUgPSBpbmZvLnZhbHVlOwogICAgfSBjYXRjaCAoZXJyb3IpIHsKICAgICAgICByZWplY3QoZXJyb3IpOwogICAgICAgIHJldHVybjsKICAgIH0KICAgIGlmIChpbmZvLmRvbmUpIHsKICAgICAgICByZXNvbHZlKHZhbHVlKTsKICAgIH0gZWxzZSB7CiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHZhbHVlKS50aGVuKF9uZXh0LCBfdGhyb3cpOwogICAgfQp9CmZ1bmN0aW9uIF9hc3luY190b19nZW5lcmF0b3IoZm4pIHsKICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgc2VsZiA9IHRoaXMsIGFyZ3MgPSBhcmd1bWVudHM7CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgICAgICB2YXIgZ2VuID0gZm4uYXBwbHkoc2VsZiwgYXJncyk7CiAgICAgICAgICAgIGZ1bmN0aW9uIF9uZXh0KHZhbHVlKSB7CiAgICAgICAgICAgICAgICBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csICJuZXh0IiwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZ1bmN0aW9uIF90aHJvdyhlcnIpIHsKICAgICAgICAgICAgICAgIGFzeW5jR2VuZXJhdG9yU3RlcChnZW4sIHJlc29sdmUsIHJlamVjdCwgX25leHQsIF90aHJvdywgInRocm93IiwgZXJyKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBfbmV4dCh1bmRlZmluZWQpOwogICAgICAgIH0pOwogICAgfTsKfQpmdW5jdGlvbiBfYXdhaXRfYXN5bmNfZ2VuZXJhdG9yKHZhbHVlKSB7CiAgICByZXR1cm4gbmV3IF9hd2FpdF92YWx1ZSh2YWx1ZSk7Cn0KZnVuY3Rpb24gX2F3YWl0X3ZhbHVlKHZhbHVlKSB7CiAgICB0aGlzLndyYXBwZWQgPSB2YWx1ZTsKfQpmdW5jdGlvbiBfY2FsbF9zdXBlcihfdGhpcywgZGVyaXZlZCwgYXJncykgewogICAgLy8gU3VwZXIKICAgIGRlcml2ZWQgPSBfZ2V0X3Byb3RvdHlwZV9vZihkZXJpdmVkKTsKICAgIHJldHVybiBfcG9zc2libGVfY29uc3RydWN0b3JfcmV0dXJuKAogICAgICAgIF90aGlzLAogICAgICAgIF9pc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3QoKQogICAgICAgICAgICAvLyBOT1RFOiBUaGlzIGRvZXNuJ3Qgd29yayBpZiB0aGlzLl9fcHJvdG9fXy5jb25zdHJ1Y3RvciBoYXMgYmVlbiBtb2RpZmllZC4KICAgICAgICAgICAgPyBSZWZsZWN0LmNvbnN0cnVjdChkZXJpdmVkLCBhcmdzIHx8IFtdLCBfZ2V0X3Byb3RvdHlwZV9vZihfdGhpcykuY29uc3RydWN0b3IpCiAgICAgICAgICAgIDogZGVyaXZlZC5hcHBseShfdGhpcywgYXJncykKICAgICk7Cn0KZnVuY3Rpb24gX2NoZWNrX3ByaXZhdGVfcmVkZWNsYXJhdGlvbihvYmosIHByaXZhdGVDb2xsZWN0aW9uKSB7CiAgICBpZiAocHJpdmF0ZUNvbGxlY3Rpb24uaGFzKG9iaikpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgaW5pdGlhbGl6ZSB0aGUgc2FtZSBwcml2YXRlIGVsZW1lbnRzIHR3aWNlIG9uIGFuIG9iamVjdCIpOwogICAgfQp9CmZ1bmN0aW9uIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX2Rlc3RydWN0dXJlKHJlY2VpdmVyLCBkZXNjcmlwdG9yKSB7CiAgICBpZiAoZGVzY3JpcHRvci5zZXQpIHsKICAgICAgICBpZiAoISgiX19kZXN0ck9iaiIgaW4gZGVzY3JpcHRvcikpIHsKICAgICAgICAgICAgZGVzY3JpcHRvci5fX2Rlc3RyT2JqID0gewogICAgICAgICAgICAgICAgc2V0IHZhbHVlKHYpIHsKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yLnNldC5jYWxsKHJlY2VpdmVyLCB2KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3IuX19kZXN0ck9iajsKICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLndyaXRhYmxlKSB7CiAgICAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG9ubHkgdGhyb3cgaW4gc3RyaWN0IG1vZGUsIGJ1dCBjbGFzcyBib2RpZXMgYXJlCiAgICAgICAgICAgIC8vIGFsd2F5cyBzdHJpY3QgYW5kIHByaXZhdGUgZmllbGRzIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlCiAgICAgICAgICAgIC8vIGNsYXNzIGJvZGllcy4KICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIHNldCByZWFkIG9ubHkgcHJpdmF0ZSBmaWVsZCIpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjsKICAgIH0KfQpmdW5jdGlvbiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9nZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IpIHsKICAgIGlmIChkZXNjcmlwdG9yLmdldCkgewogICAgICAgIHJldHVybiBkZXNjcmlwdG9yLmdldC5jYWxsKHJlY2VpdmVyKTsKICAgIH0KICAgIHJldHVybiBkZXNjcmlwdG9yLnZhbHVlOwp9CmZ1bmN0aW9uIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3NldChyZWNlaXZlciwgZGVzY3JpcHRvciwgdmFsdWUpIHsKICAgIGlmIChkZXNjcmlwdG9yLnNldCkgewogICAgICAgIGRlc2NyaXB0b3Iuc2V0LmNhbGwocmVjZWl2ZXIsIHZhbHVlKTsKICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLndyaXRhYmxlKSB7CiAgICAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG9ubHkgdGhyb3cgaW4gc3RyaWN0IG1vZGUsIGJ1dCBjbGFzcyBib2RpZXMgYXJlCiAgICAgICAgICAgIC8vIGFsd2F5cyBzdHJpY3QgYW5kIHByaXZhdGUgZmllbGRzIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlCiAgICAgICAgICAgIC8vIGNsYXNzIGJvZGllcy4KICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIHNldCByZWFkIG9ubHkgcHJpdmF0ZSBmaWVsZCIpOwogICAgICAgIH0KICAgICAgICBkZXNjcmlwdG9yLnZhbHVlID0gdmFsdWU7CiAgICB9Cn0KZnVuY3Rpb24gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfdXBkYXRlKHJlY2VpdmVyLCBkZXNjcmlwdG9yKSB7CiAgICBpZiAoZGVzY3JpcHRvci5zZXQpIHsKICAgICAgICBpZiAoIWRlc2NyaXB0b3IuZ2V0KSB7CiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byByZWFkIHNldCBvbmx5IHByaXZhdGUgZmllbGQiKTsKICAgICAgICB9CiAgICAgICAgaWYgKCEoIl9fZGVzdHJXcmFwcGVyIiBpbiBkZXNjcmlwdG9yKSkgewogICAgICAgICAgICBkZXNjcmlwdG9yLl9fZGVzdHJXcmFwcGVyID0gewogICAgICAgICAgICAgICAgc2V0IHZhbHVlKHYpIHsKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdG9yLnNldC5jYWxsKHJlY2VpdmVyLCB2KTsKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBnZXQgdmFsdWUoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3IuZ2V0LmNhbGwocmVjZWl2ZXIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZGVzY3JpcHRvci5fX2Rlc3RyV3JhcHBlcjsKICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLndyaXRhYmxlKSB7CiAgICAgICAgICAgIC8vIFRoaXMgc2hvdWxkIG9ubHkgdGhyb3cgaW4gc3RyaWN0IG1vZGUsIGJ1dCBjbGFzcyBib2RpZXMgYXJlCiAgICAgICAgICAgIC8vIGFsd2F5cyBzdHJpY3QgYW5kIHByaXZhdGUgZmllbGRzIGNhbiBvbmx5IGJlIHVzZWQgaW5zaWRlCiAgICAgICAgICAgIC8vIGNsYXNzIGJvZGllcy4KICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIHNldCByZWFkIG9ubHkgcHJpdmF0ZSBmaWVsZCIpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjsKICAgIH0KfQpmdW5jdGlvbiBfY2xhc3NfY2FsbF9jaGVjayhpbnN0YW5jZSwgQ29uc3RydWN0b3IpIHsKICAgIGlmICghKGluc3RhbmNlIGluc3RhbmNlb2YgQ29uc3RydWN0b3IpKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIik7CiAgICB9Cn0KZnVuY3Rpb24gX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2ZpZWxkX2Rlc2NyaXB0b3IoZGVzY3JpcHRvciwgYWN0aW9uKSB7CiAgICBpZiAoZGVzY3JpcHRvciA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvICIgKyBhY3Rpb24gKyAiIHByaXZhdGUgc3RhdGljIGZpZWxkIGJlZm9yZSBpdHMgZGVjbGFyYXRpb24iKTsKICAgIH0KfQpmdW5jdGlvbiBfY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yKHJlY2VpdmVyLCBwcml2YXRlTWFwLCBhY3Rpb24pIHsKICAgIGlmICghcHJpdmF0ZU1hcC5oYXMocmVjZWl2ZXIpKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvICIgKyBhY3Rpb24gKyAiIHByaXZhdGUgZmllbGQgb24gbm9uLWluc3RhbmNlIik7CiAgICB9CiAgICByZXR1cm4gcHJpdmF0ZU1hcC5nZXQocmVjZWl2ZXIpOwp9CmZ1bmN0aW9uIF9jbGFzc19uYW1lX3Rkel9lcnJvcihuYW1lKSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoIkNsYXNzIFwiIiArIG5hbWUgKyAiXCIgY2Fubm90IGJlIHJlZmVyZW5jZWQgaW4gY29tcHV0ZWQgcHJvcGVydHkga2V5cy4iKTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9nZXQocmVjZWl2ZXIsIHByaXZhdGVNYXApIHsKICAgIHZhciBkZXNjcmlwdG9yID0gX2NsYXNzX2V4dHJhY3RfZmllbGRfZGVzY3JpcHRvcihyZWNlaXZlciwgcHJpdmF0ZU1hcCwgImdldCIpOwogICAgcmV0dXJuIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX2dldChyZWNlaXZlciwgZGVzY3JpcHRvcik7Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfaW5pdChvYmosIHByaXZhdGVNYXAsIHZhbHVlKSB7CiAgICBfY2hlY2tfcHJpdmF0ZV9yZWRlY2xhcmF0aW9uKG9iaiwgcHJpdmF0ZU1hcCk7CiAgICBwcml2YXRlTWFwLnNldChvYmosIHZhbHVlKTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlKHJlY2VpdmVyLCBwcml2YXRlS2V5KSB7CiAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyZWNlaXZlciwgcHJpdmF0ZUtleSkpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJhdHRlbXB0ZWQgdG8gdXNlIHByaXZhdGUgZmllbGQgb24gbm9uLWluc3RhbmNlIik7CiAgICB9CiAgICByZXR1cm4gcmVjZWl2ZXI7Cn0KdmFyIGlkID0gMDsKZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2Vfa2V5KG5hbWUpIHsKICAgIHJldHVybiAiX19wcml2YXRlXyIgKyBpZCsrICsgIl8iICsgbmFtZTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9zZXQocmVjZWl2ZXIsIHByaXZhdGVNYXAsIHZhbHVlKSB7CiAgICB2YXIgZGVzY3JpcHRvciA9IF9jbGFzc19leHRyYWN0X2ZpZWxkX2Rlc2NyaXB0b3IocmVjZWl2ZXIsIHByaXZhdGVNYXAsICJzZXQiKTsKICAgIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3NldChyZWNlaXZlciwgZGVzY3JpcHRvciwgdmFsdWUpOwogICAgcmV0dXJuIHZhbHVlOwp9CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX2ZpZWxkX3VwZGF0ZShyZWNlaXZlciwgcHJpdmF0ZU1hcCkgewogICAgdmFyIGRlc2NyaXB0b3IgPSBfY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yKHJlY2VpdmVyLCBwcml2YXRlTWFwLCAidXBkYXRlIik7CiAgICByZXR1cm4gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfdXBkYXRlKHJlY2VpdmVyLCBkZXNjcmlwdG9yKTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9tZXRob2RfZ2V0KHJlY2VpdmVyLCBwcml2YXRlU2V0LCBmbikgewogICAgaWYgKCFwcml2YXRlU2V0LmhhcyhyZWNlaXZlcikpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJhdHRlbXB0ZWQgdG8gZ2V0IHByaXZhdGUgZmllbGQgb24gbm9uLWluc3RhbmNlIik7CiAgICB9CiAgICByZXR1cm4gZm47Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfbWV0aG9kX2luaXQob2JqLCBwcml2YXRlU2V0KSB7CiAgICBfY2hlY2tfcHJpdmF0ZV9yZWRlY2xhcmF0aW9uKG9iaiwgcHJpdmF0ZVNldCk7CiAgICBwcml2YXRlU2V0LmFkZChvYmopOwp9CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX21ldGhvZF9zZXQoKSB7CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJhdHRlbXB0ZWQgdG8gcmVhc3NpZ24gcHJpdmF0ZSBtZXRob2QiKTsKfQpmdW5jdGlvbiBfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19nZXQocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IsIGRlc2NyaXB0b3IpIHsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3MocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IpOwogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2ZpZWxkX2Rlc2NyaXB0b3IoZGVzY3JpcHRvciwgImdldCIpOwogICAgcmV0dXJuIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX2dldChyZWNlaXZlciwgZGVzY3JpcHRvcik7Cn0KZnVuY3Rpb24gX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfc2V0KHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yLCBkZXNjcmlwdG9yLCB2YWx1ZSkgewogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2VzcyhyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3Rvcik7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvcihkZXNjcmlwdG9yLCAic2V0Iik7CiAgICBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IsIHZhbHVlKTsKICAgIHJldHVybiB2YWx1ZTsKfQpmdW5jdGlvbiBfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfdXBkYXRlKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yLCBkZXNjcmlwdG9yKSB7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfYWNjZXNzKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yKTsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yKGRlc2NyaXB0b3IsICJ1cGRhdGUiKTsKICAgIHJldHVybiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl91cGRhdGUocmVjZWl2ZXIsIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9jb25zdHJ1Y3QoUGFyZW50LCBhcmdzLCBDbGFzcykgewogICAgaWYgKF9pc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3QoKSkgewogICAgICAgIF9jb25zdHJ1Y3QgPSBSZWZsZWN0LmNvbnN0cnVjdDsKICAgIH0gZWxzZSB7CiAgICAgICAgX2NvbnN0cnVjdCA9IGZ1bmN0aW9uIGNvbnN0cnVjdChQYXJlbnQsIGFyZ3MsIENsYXNzKSB7CiAgICAgICAgICAgIHZhciBhID0gW251bGxdOwogICAgICAgICAgICBhLnB1c2guYXBwbHkoYSwgYXJncyk7CiAgICAgICAgICAgIHZhciBDb25zdHJ1Y3RvciA9IEZ1bmN0aW9uLmJpbmQuYXBwbHkoUGFyZW50LCBhKTsKICAgICAgICAgICAgdmFyIGluc3RhbmNlID0gbmV3IENvbnN0cnVjdG9yKCk7CiAgICAgICAgICAgIGlmIChDbGFzcykgX3NldF9wcm90b3R5cGVfb2YoaW5zdGFuY2UsIENsYXNzLnByb3RvdHlwZSk7CiAgICAgICAgICAgIHJldHVybiBpbnN0YW5jZTsKICAgICAgICB9OwogICAgfQogICAgcmV0dXJuIF9jb25zdHJ1Y3QuYXBwbHkobnVsbCwgYXJndW1lbnRzKTsKfQpmdW5jdGlvbiBfZGVmaW5lUHJvcGVydGllcyh0YXJnZXQsIHByb3BzKSB7CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHByb3BzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgdmFyIGRlc2NyaXB0b3IgPSBwcm9wc1tpXTsKICAgICAgICBkZXNjcmlwdG9yLmVudW1lcmFibGUgPSBkZXNjcmlwdG9yLmVudW1lcmFibGUgfHwgZmFsc2U7CiAgICAgICAgZGVzY3JpcHRvci5jb25maWd1cmFibGUgPSB0cnVlOwogICAgICAgIGlmICgidmFsdWUiIGluIGRlc2NyaXB0b3IpIGRlc2NyaXB0b3Iud3JpdGFibGUgPSB0cnVlOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGRlc2NyaXB0b3Iua2V5LCBkZXNjcmlwdG9yKTsKICAgIH0KfQpmdW5jdGlvbiBfY3JlYXRlX2NsYXNzKENvbnN0cnVjdG9yLCBwcm90b1Byb3BzLCBzdGF0aWNQcm9wcykgewogICAgaWYgKHByb3RvUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLnByb3RvdHlwZSwgcHJvdG9Qcm9wcyk7CiAgICBpZiAoc3RhdGljUHJvcHMpIF9kZWZpbmVQcm9wZXJ0aWVzKENvbnN0cnVjdG9yLCBzdGF0aWNQcm9wcyk7CiAgICByZXR1cm4gQ29uc3RydWN0b3I7Cn0KZnVuY3Rpb24gX2RlY29yYXRlKGRlY29yYXRvcnMsIGZhY3RvcnksIHN1cGVyQ2xhc3MpIHsKICAgIHZhciByID0gZmFjdG9yeShmdW5jdGlvbiBpbml0aWFsaXplKE8pIHsKICAgICAgICBfaW5pdGlhbGl6ZUluc3RhbmNlRWxlbWVudHMoTywgZGVjb3JhdGVkLmVsZW1lbnRzKTsKICAgIH0sIHN1cGVyQ2xhc3MpOwogICAgdmFyIGRlY29yYXRlZCA9IF9kZWNvcmF0ZUNsYXNzKF9jb2FsZXNjZUNsYXNzRWxlbWVudHMoci5kLm1hcChfY3JlYXRlRWxlbWVudERlc2NyaXB0b3IpKSwgZGVjb3JhdG9ycyk7CiAgICBfaW5pdGlhbGl6ZUNsYXNzRWxlbWVudHMoci5GLCBkZWNvcmF0ZWQuZWxlbWVudHMpOwogICAgcmV0dXJuIF9ydW5DbGFzc0ZpbmlzaGVycyhyLkYsIGRlY29yYXRlZC5maW5pc2hlcnMpOwp9CgpmdW5jdGlvbiBfY3JlYXRlRWxlbWVudERlc2NyaXB0b3IoZGVmKSB7CiAgICB2YXIga2V5ID0gX3RvX3Byb3BlcnR5X2tleShkZWYua2V5KTsKICAgIHZhciBkZXNjcmlwdG9yOwogICAgaWYgKGRlZi5raW5kID09PSAibWV0aG9kIikgewogICAgICAgIGRlc2NyaXB0b3IgPSB7IHZhbHVlOiBkZWYudmFsdWUsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IGZhbHNlIH07CiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGRlZi52YWx1ZSwgIm5hbWUiLCB7IHZhbHVlOiBfdHlwZV9vZihrZXkpID09PSAic3ltYm9sIiA/ICIiIDoga2V5LCBjb25maWd1cmFibGU6IHRydWUgfSk7CiAgICB9IGVsc2UgaWYgKGRlZi5raW5kID09PSAiZ2V0IikgewogICAgICAgIGRlc2NyaXB0b3IgPSB7IGdldDogZGVmLnZhbHVlLCBjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IGZhbHNlIH07CiAgICB9IGVsc2UgaWYgKGRlZi5raW5kID09PSAic2V0IikgewogICAgICAgIGRlc2NyaXB0b3IgPSB7IHNldDogZGVmLnZhbHVlLCBjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IGZhbHNlIH07CiAgICB9IGVsc2UgaWYgKGRlZi5raW5kID09PSAiZmllbGQiKSB7CiAgICAgICAgZGVzY3JpcHRvciA9IHsgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSwgZW51bWVyYWJsZTogdHJ1ZSB9OwogICAgfQogICAgdmFyIGVsZW1lbnQgPSB7CiAgICAgICAga2luZDogZGVmLmtpbmQgPT09ICJmaWVsZCIgPyAiZmllbGQiIDogIm1ldGhvZCIsCiAgICAgICAga2V5OiBrZXksCiAgICAgICAgcGxhY2VtZW50OiBkZWYuc3RhdGljID8gInN0YXRpYyIgOiBkZWYua2luZCA9PT0gImZpZWxkIiA/ICJvd24iIDogInByb3RvdHlwZSIsCiAgICAgICAgZGVzY3JpcHRvcjogZGVzY3JpcHRvcgogICAgfTsKICAgIGlmIChkZWYuZGVjb3JhdG9ycykgZWxlbWVudC5kZWNvcmF0b3JzID0gZGVmLmRlY29yYXRvcnM7CiAgICBpZiAoZGVmLmtpbmQgPT09ICJmaWVsZCIpIGVsZW1lbnQuaW5pdGlhbGl6ZXIgPSBkZWYudmFsdWU7CiAgICByZXR1cm4gZWxlbWVudDsKfQpmdW5jdGlvbiBfY29hbGVzY2VHZXR0ZXJTZXR0ZXIoZWxlbWVudCwgb3RoZXIpIHsKICAgIGlmIChlbGVtZW50LmRlc2NyaXB0b3IuZ2V0ICE9PSB1bmRlZmluZWQpIHsKICAgICAgICBvdGhlci5kZXNjcmlwdG9yLmdldCA9IGVsZW1lbnQuZGVzY3JpcHRvci5nZXQ7CiAgICB9IGVsc2UgewogICAgICAgIG90aGVyLmRlc2NyaXB0b3Iuc2V0ID0gZWxlbWVudC5kZXNjcmlwdG9yLnNldDsKICAgIH0KfQpmdW5jdGlvbiBfY29hbGVzY2VDbGFzc0VsZW1lbnRzKGVsZW1lbnRzKSB7CiAgICB2YXIgbmV3RWxlbWVudHMgPSBbXTsKICAgIHZhciBpc1NhbWVFbGVtZW50ID0gZnVuY3Rpb24gaXNTYW1lRWxlbWVudChvdGhlcikgewogICAgICAgIHJldHVybiBvdGhlci5raW5kID09PSAibWV0aG9kIiAmJiBvdGhlci5rZXkgPT09IGVsZW1lbnQua2V5ICYmIG90aGVyLnBsYWNlbWVudCA9PT0gZWxlbWVudC5wbGFjZW1lbnQ7CiAgICB9OwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBlbGVtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgIHZhciBlbGVtZW50ID0gZWxlbWVudHNbaV07CiAgICAgICAgdmFyIG90aGVyOwogICAgICAgIGlmIChlbGVtZW50LmtpbmQgPT09ICJtZXRob2QiICYmIChvdGhlciA9IG5ld0VsZW1lbnRzLmZpbmQoaXNTYW1lRWxlbWVudCkpKSB7CiAgICAgICAgICAgIGlmIChfaXNEYXRhRGVzY3JpcHRvcihlbGVtZW50LmRlc2NyaXB0b3IpIHx8IF9pc0RhdGFEZXNjcmlwdG9yKG90aGVyLmRlc2NyaXB0b3IpKSB7CiAgICAgICAgICAgICAgICBpZiAoX2hhc0RlY29yYXRvcnMoZWxlbWVudCkgfHwgX2hhc0RlY29yYXRvcnMob3RoZXIpKSB7CiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJlZmVyZW5jZUVycm9yKCJEdXBsaWNhdGVkIG1ldGhvZHMgKCIgKyBlbGVtZW50LmtleSArICIpIGNhbid0IGJlIGRlY29yYXRlZC4iKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIG90aGVyLmRlc2NyaXB0b3IgPSBlbGVtZW50LmRlc2NyaXB0b3I7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBpZiAoX2hhc0RlY29yYXRvcnMoZWxlbWVudCkpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoX2hhc0RlY29yYXRvcnMob3RoZXIpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEZWNvcmF0b3JzIGNhbid0IGJlIHBsYWNlZCBvbiBkaWZmZXJlbnQgYWNjZXNzb3JzIHdpdGggZm9yICIgKyAidGhlIHNhbWUgcHJvcGVydHkgKCIgKyBlbGVtZW50LmtleSArICIpLiIKICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgb3RoZXIuZGVjb3JhdG9ycyA9IGVsZW1lbnQuZGVjb3JhdG9yczsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF9jb2FsZXNjZUdldHRlclNldHRlcihlbGVtZW50LCBvdGhlcik7CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBuZXdFbGVtZW50cy5wdXNoKGVsZW1lbnQpOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBuZXdFbGVtZW50czsKfQpmdW5jdGlvbiBfaGFzRGVjb3JhdG9ycyhlbGVtZW50KSB7CiAgICByZXR1cm4gZWxlbWVudC5kZWNvcmF0b3JzICYmIGVsZW1lbnQuZGVjb3JhdG9ycy5sZW5ndGg7Cn0KZnVuY3Rpb24gX2lzRGF0YURlc2NyaXB0b3IoZGVzYykgewogICAgcmV0dXJuIGRlc2MgIT09IHVuZGVmaW5lZCAmJiAhKGRlc2MudmFsdWUgPT09IHVuZGVmaW5lZCAmJiBkZXNjLndyaXRhYmxlID09PSB1bmRlZmluZWQpOwp9CmZ1bmN0aW9uIF9pbml0aWFsaXplQ2xhc3NFbGVtZW50cyhGLCBlbGVtZW50cykgewogICAgdmFyIHByb3RvID0gRi5wcm90b3R5cGU7CiAgICBbIm1ldGhvZCIsICJmaWVsZCJdLmZvckVhY2goZnVuY3Rpb24oa2luZCkgewogICAgICAgIGVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24oZWxlbWVudCkgewogICAgICAgICAgICB2YXIgcGxhY2VtZW50ID0gZWxlbWVudC5wbGFjZW1lbnQ7CiAgICAgICAgICAgIGlmIChlbGVtZW50LmtpbmQgPT09IGtpbmQgJiYgKHBsYWNlbWVudCA9PT0gInN0YXRpYyIgfHwgcGxhY2VtZW50ID09PSAicHJvdG90eXBlIikpIHsKICAgICAgICAgICAgICAgIHZhciByZWNlaXZlciA9IHBsYWNlbWVudCA9PT0gInN0YXRpYyIgPyBGIDogcHJvdG87CiAgICAgICAgICAgICAgICBfZGVmaW5lQ2xhc3NFbGVtZW50KHJlY2VpdmVyLCBlbGVtZW50KTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfSk7Cn0KZnVuY3Rpb24gX2luaXRpYWxpemVJbnN0YW5jZUVsZW1lbnRzKE8sIGVsZW1lbnRzKSB7CiAgICBbIm1ldGhvZCIsICJmaWVsZCJdLmZvckVhY2goZnVuY3Rpb24oa2luZCkgewogICAgICAgIGVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24oZWxlbWVudCkgewogICAgICAgICAgICBpZiAoZWxlbWVudC5raW5kID09PSBraW5kICYmIGVsZW1lbnQucGxhY2VtZW50ID09PSAib3duIikgewogICAgICAgICAgICAgICAgX2RlZmluZUNsYXNzRWxlbWVudChPLCBlbGVtZW50KTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfSk7Cn0KZnVuY3Rpb24gX2RlZmluZUNsYXNzRWxlbWVudChyZWNlaXZlciwgZWxlbWVudCkgewogICAgdmFyIGRlc2NyaXB0b3IgPSBlbGVtZW50LmRlc2NyaXB0b3I7CiAgICBpZiAoZWxlbWVudC5raW5kID09PSAiZmllbGQiKSB7CiAgICAgICAgdmFyIGluaXRpYWxpemVyID0gZWxlbWVudC5pbml0aWFsaXplcjsKICAgICAgICBkZXNjcmlwdG9yID0gewogICAgICAgICAgICBlbnVtZXJhYmxlOiBkZXNjcmlwdG9yLmVudW1lcmFibGUsCiAgICAgICAgICAgIHdyaXRhYmxlOiBkZXNjcmlwdG9yLndyaXRhYmxlLAogICAgICAgICAgICBjb25maWd1cmFibGU6IGRlc2NyaXB0b3IuY29uZmlndXJhYmxlLAogICAgICAgICAgICB2YWx1ZTogaW5pdGlhbGl6ZXIgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGluaXRpYWxpemVyLmNhbGwocmVjZWl2ZXIpCiAgICAgICAgfTsKICAgIH0KICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZWNlaXZlciwgZWxlbWVudC5rZXksIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9kZWNvcmF0ZUNsYXNzKGVsZW1lbnRzLCBkZWNvcmF0b3JzKSB7CiAgICB2YXIgbmV3RWxlbWVudHMgPSBbXTsKICAgIHZhciBmaW5pc2hlcnMgPSBbXTsKICAgIHZhciBwbGFjZW1lbnRzID0geyBzdGF0aWM6IFtdLCBwcm90b3R5cGU6IFtdLCBvd246IFtdIH07CiAgICBlbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgICBfYWRkRWxlbWVudFBsYWNlbWVudChlbGVtZW50LCBwbGFjZW1lbnRzKTsKICAgIH0pOwogICAgZWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbihlbGVtZW50KSB7CiAgICAgICAgaWYgKCFfaGFzRGVjb3JhdG9ycyhlbGVtZW50KSkgcmV0dXJuIG5ld0VsZW1lbnRzLnB1c2goZWxlbWVudCk7CiAgICAgICAgdmFyIGVsZW1lbnRGaW5pc2hlcnNFeHRyYXMgPSBfZGVjb3JhdGVFbGVtZW50KGVsZW1lbnQsIHBsYWNlbWVudHMpOwogICAgICAgIG5ld0VsZW1lbnRzLnB1c2goZWxlbWVudEZpbmlzaGVyc0V4dHJhcy5lbGVtZW50KTsKICAgICAgICBuZXdFbGVtZW50cy5wdXNoLmFwcGx5KG5ld0VsZW1lbnRzLCBlbGVtZW50RmluaXNoZXJzRXh0cmFzLmV4dHJhcyk7CiAgICAgICAgZmluaXNoZXJzLnB1c2guYXBwbHkoZmluaXNoZXJzLCBlbGVtZW50RmluaXNoZXJzRXh0cmFzLmZpbmlzaGVycyk7CiAgICB9KTsKICAgIGlmICghZGVjb3JhdG9ycykgewogICAgICAgIHJldHVybiB7IGVsZW1lbnRzOiBuZXdFbGVtZW50cywgZmluaXNoZXJzOiBmaW5pc2hlcnMgfTsKICAgIH0KICAgIHZhciByZXN1bHQgPSBfZGVjb3JhdGVDb25zdHJ1Y3RvcihuZXdFbGVtZW50cywgZGVjb3JhdG9ycyk7CiAgICBmaW5pc2hlcnMucHVzaC5hcHBseShmaW5pc2hlcnMsIHJlc3VsdC5maW5pc2hlcnMpOwogICAgcmVzdWx0LmZpbmlzaGVycyA9IGZpbmlzaGVyczsKICAgIHJldHVybiByZXN1bHQ7Cn0KZnVuY3Rpb24gX2FkZEVsZW1lbnRQbGFjZW1lbnQoZWxlbWVudCwgcGxhY2VtZW50cywgc2lsZW50KSB7CiAgICB2YXIga2V5cyA9IHBsYWNlbWVudHNbZWxlbWVudC5wbGFjZW1lbnRdOwogICAgaWYgKCFzaWxlbnQgJiYga2V5cy5pbmRleE9mKGVsZW1lbnQua2V5KSAhPT0gLTEpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJEdXBsaWNhdGVkIGVsZW1lbnQgKCIgKyBlbGVtZW50LmtleSArICIpIik7CiAgICB9CiAgICBrZXlzLnB1c2goZWxlbWVudC5rZXkpOwp9CmZ1bmN0aW9uIF9kZWNvcmF0ZUVsZW1lbnQoZWxlbWVudCwgcGxhY2VtZW50cykgewogICAgdmFyIGV4dHJhcyA9IFtdOwogICAgdmFyIGZpbmlzaGVycyA9IFtdOwogICAgZm9yICh2YXIgZGVjb3JhdG9ycyA9IGVsZW1lbnQuZGVjb3JhdG9ycywgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICB2YXIga2V5cyA9IHBsYWNlbWVudHNbZWxlbWVudC5wbGFjZW1lbnRdOwogICAgICAgIGtleXMuc3BsaWNlKGtleXMuaW5kZXhPZihlbGVtZW50LmtleSksIDEpOwogICAgICAgIHZhciBlbGVtZW50T2JqZWN0ID0gX2Zyb21FbGVtZW50RGVzY3JpcHRvcihlbGVtZW50KTsKICAgICAgICB2YXIgZWxlbWVudEZpbmlzaGVyRXh0cmFzID0gX3RvRWxlbWVudEZpbmlzaGVyRXh0cmFzKCgwLCBkZWNvcmF0b3JzW2ldKShlbGVtZW50T2JqZWN0KSB8fCBlbGVtZW50T2JqZWN0KTsKICAgICAgICBlbGVtZW50ID0gZWxlbWVudEZpbmlzaGVyRXh0cmFzLmVsZW1lbnQ7CiAgICAgICAgX2FkZEVsZW1lbnRQbGFjZW1lbnQoZWxlbWVudCwgcGxhY2VtZW50cyk7CiAgICAgICAgaWYgKGVsZW1lbnRGaW5pc2hlckV4dHJhcy5maW5pc2hlcikgewogICAgICAgICAgICBmaW5pc2hlcnMucHVzaChlbGVtZW50RmluaXNoZXJFeHRyYXMuZmluaXNoZXIpOwogICAgICAgIH0KICAgICAgICB2YXIgbmV3RXh0cmFzID0gZWxlbWVudEZpbmlzaGVyRXh0cmFzLmV4dHJhczsKICAgICAgICBpZiAobmV3RXh0cmFzKSB7CiAgICAgICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgbmV3RXh0cmFzLmxlbmd0aDsgaisrKSB7CiAgICAgICAgICAgICAgICBfYWRkRWxlbWVudFBsYWNlbWVudChuZXdFeHRyYXNbal0sIHBsYWNlbWVudHMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGV4dHJhcy5wdXNoLmFwcGx5KGV4dHJhcywgbmV3RXh0cmFzKTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4geyBlbGVtZW50OiBlbGVtZW50LCBmaW5pc2hlcnM6IGZpbmlzaGVycywgZXh0cmFzOiBleHRyYXMgfTsKfQpmdW5jdGlvbiBfZGVjb3JhdGVDb25zdHJ1Y3RvcihlbGVtZW50cywgZGVjb3JhdG9ycykgewogICAgdmFyIGZpbmlzaGVycyA9IFtdOwogICAgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICB2YXIgb2JqID0gX2Zyb21DbGFzc0Rlc2NyaXB0b3IoZWxlbWVudHMpOwogICAgICAgIHZhciBlbGVtZW50c0FuZEZpbmlzaGVyID0gX3RvQ2xhc3NEZXNjcmlwdG9yKCgwLCBkZWNvcmF0b3JzW2ldKShvYmopIHx8IG9iaik7CiAgICAgICAgaWYgKGVsZW1lbnRzQW5kRmluaXNoZXIuZmluaXNoZXIgIT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICBmaW5pc2hlcnMucHVzaChlbGVtZW50c0FuZEZpbmlzaGVyLmZpbmlzaGVyKTsKICAgICAgICB9CiAgICAgICAgaWYgKGVsZW1lbnRzQW5kRmluaXNoZXIuZWxlbWVudHMgIT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICBlbGVtZW50cyA9IGVsZW1lbnRzQW5kRmluaXNoZXIuZWxlbWVudHM7CiAgICAgICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgZWxlbWVudHMubGVuZ3RoIC0gMTsgaisrKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBrID0gaiArIDE7IGsgPCBlbGVtZW50cy5sZW5ndGg7IGsrKykgewogICAgICAgICAgICAgICAgICAgIGlmIChlbGVtZW50c1tqXS5rZXkgPT09IGVsZW1lbnRzW2tdLmtleSAmJiBlbGVtZW50c1tqXS5wbGFjZW1lbnQgPT09IGVsZW1lbnRzW2tdLnBsYWNlbWVudCkgewogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJEdXBsaWNhdGVkIGVsZW1lbnQgKCIgKyBlbGVtZW50c1tqXS5rZXkgKyAiKSIpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIHJldHVybiB7IGVsZW1lbnRzOiBlbGVtZW50cywgZmluaXNoZXJzOiBmaW5pc2hlcnMgfTsKfQpmdW5jdGlvbiBfZnJvbUVsZW1lbnREZXNjcmlwdG9yKGVsZW1lbnQpIHsKICAgIHZhciBvYmogPSB7IGtpbmQ6IGVsZW1lbnQua2luZCwga2V5OiBlbGVtZW50LmtleSwgcGxhY2VtZW50OiBlbGVtZW50LnBsYWNlbWVudCwgZGVzY3JpcHRvcjogZWxlbWVudC5kZXNjcmlwdG9yIH07CiAgICB2YXIgZGVzYyA9IHsgdmFsdWU6ICJEZXNjcmlwdG9yIiwgY29uZmlndXJhYmxlOiB0cnVlIH07CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBTeW1ib2wudG9TdHJpbmdUYWcsIGRlc2MpOwogICAgaWYgKGVsZW1lbnQua2luZCA9PT0gImZpZWxkIikgb2JqLmluaXRpYWxpemVyID0gZWxlbWVudC5pbml0aWFsaXplcjsKICAgIHJldHVybiBvYmo7Cn0KZnVuY3Rpb24gX3RvRWxlbWVudERlc2NyaXB0b3JzKGVsZW1lbnRPYmplY3RzKSB7CiAgICBpZiAoZWxlbWVudE9iamVjdHMgPT09IHVuZGVmaW5lZCkgcmV0dXJuOwogICAgcmV0dXJuIF90b19hcnJheShlbGVtZW50T2JqZWN0cykubWFwKGZ1bmN0aW9uKGVsZW1lbnRPYmplY3QpIHsKICAgICAgICB2YXIgZWxlbWVudCA9IF90b0VsZW1lbnREZXNjcmlwdG9yKGVsZW1lbnRPYmplY3QpOwogICAgICAgIF9kaXNhbGxvd1Byb3BlcnR5KGVsZW1lbnRPYmplY3QsICJmaW5pc2hlciIsICJBbiBlbGVtZW50IGRlc2NyaXB0b3IiKTsKICAgICAgICBfZGlzYWxsb3dQcm9wZXJ0eShlbGVtZW50T2JqZWN0LCAiZXh0cmFzIiwgIkFuIGVsZW1lbnQgZGVzY3JpcHRvciIpOwogICAgICAgIHJldHVybiBlbGVtZW50OwogICAgfSk7Cn0KZnVuY3Rpb24gX3RvRWxlbWVudERlc2NyaXB0b3IoZWxlbWVudE9iamVjdCkgewogICAgdmFyIGtpbmQgPSBTdHJpbmcoZWxlbWVudE9iamVjdC5raW5kKTsKICAgIGlmIChraW5kICE9PSAibWV0aG9kIiAmJiBraW5kICE9PSAiZmllbGQiKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIkFuIGVsZW1lbnQgZGVzY3JpcHRvcidzIC5raW5kIHByb3BlcnR5IG11c3QgYmUgZWl0aGVyIFwibWV0aG9kXCIgb3IiCiAgICAgICAgICAgICAgICArICIgXCJmaWVsZFwiLCBidXQgYSBkZWNvcmF0b3IgY3JlYXRlZCBhbiBlbGVtZW50IGRlc2NyaXB0b3Igd2l0aCIgKyAiIC5raW5kIFwiIiArIGtpbmQgKyAiXCIiCiAgICAgICAgKTsKICAgIH0KICAgIHZhciBrZXkgPSBfdG9fcHJvcGVydHlfa2V5KGVsZW1lbnRPYmplY3Qua2V5KTsKICAgIHZhciBwbGFjZW1lbnQgPSBTdHJpbmcoZWxlbWVudE9iamVjdC5wbGFjZW1lbnQpOwogICAgaWYgKHBsYWNlbWVudCAhPT0gInN0YXRpYyIgJiYgcGxhY2VtZW50ICE9PSAicHJvdG90eXBlIiAmJiBwbGFjZW1lbnQgIT09ICJvd24iKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIkFuIGVsZW1lbnQgZGVzY3JpcHRvcidzIC5wbGFjZW1lbnQgcHJvcGVydHkgbXVzdCBiZSBvbmUgb2YgXCJzdGF0aWNcIiwiCiAgICAgICAgICAgICAgICArICIgXCJwcm90b3R5cGVcIiBvciBcIm93blwiLCBidXQgYSBkZWNvcmF0b3IgY3JlYXRlZCBhbiBlbGVtZW50IGRlc2NyaXB0b3IiICsgIiB3aXRoIC5wbGFjZW1lbnQgXCIiICsgcGxhY2VtZW50ICsgIlwiIgogICAgICAgICk7CiAgICB9CiAgICB2YXIgZGVzY3JpcHRvciA9IGVsZW1lbnRPYmplY3QuZGVzY3JpcHRvcjsKICAgIF9kaXNhbGxvd1Byb3BlcnR5KGVsZW1lbnRPYmplY3QsICJlbGVtZW50cyIsICJBbiBlbGVtZW50IGRlc2NyaXB0b3IiKTsKICAgIHZhciBlbGVtZW50ID0geyBraW5kOiBraW5kLCBrZXk6IGtleSwgcGxhY2VtZW50OiBwbGFjZW1lbnQsIGRlc2NyaXB0b3I6IE9iamVjdC5hc3NpZ24oe30sIGRlc2NyaXB0b3IpIH07CiAgICBpZiAoa2luZCAhPT0gImZpZWxkIikgewogICAgICAgIF9kaXNhbGxvd1Byb3BlcnR5KGVsZW1lbnRPYmplY3QsICJpbml0aWFsaXplciIsICJBIG1ldGhvZCBkZXNjcmlwdG9yIik7CiAgICB9IGVsc2UgewogICAgICAgIF9kaXNhbGxvd1Byb3BlcnR5KGRlc2NyaXB0b3IsICJnZXQiLCAiVGhlIHByb3BlcnR5IGRlc2NyaXB0b3Igb2YgYSBmaWVsZCBkZXNjcmlwdG9yIik7CiAgICAgICAgX2Rpc2FsbG93UHJvcGVydHkoZGVzY3JpcHRvciwgInNldCIsICJUaGUgcHJvcGVydHkgZGVzY3JpcHRvciBvZiBhIGZpZWxkIGRlc2NyaXB0b3IiKTsKICAgICAgICBfZGlzYWxsb3dQcm9wZXJ0eShkZXNjcmlwdG9yLCAidmFsdWUiLCAiVGhlIHByb3BlcnR5IGRlc2NyaXB0b3Igb2YgYSBmaWVsZCBkZXNjcmlwdG9yIik7CiAgICAgICAgZWxlbWVudC5pbml0aWFsaXplciA9IGVsZW1lbnRPYmplY3QuaW5pdGlhbGl6ZXI7CiAgICB9CiAgICByZXR1cm4gZWxlbWVudDsKfQpmdW5jdGlvbiBfdG9FbGVtZW50RmluaXNoZXJFeHRyYXMoZWxlbWVudE9iamVjdCkgewogICAgdmFyIGVsZW1lbnQgPSBfdG9FbGVtZW50RGVzY3JpcHRvcihlbGVtZW50T2JqZWN0KTsKICAgIHZhciBmaW5pc2hlciA9IF9vcHRpb25hbENhbGxhYmxlUHJvcGVydHkoZWxlbWVudE9iamVjdCwgImZpbmlzaGVyIik7CiAgICB2YXIgZXh0cmFzID0gX3RvRWxlbWVudERlc2NyaXB0b3JzKGVsZW1lbnRPYmplY3QuZXh0cmFzKTsKICAgIHJldHVybiB7IGVsZW1lbnQ6IGVsZW1lbnQsIGZpbmlzaGVyOiBmaW5pc2hlciwgZXh0cmFzOiBleHRyYXMgfTsKfQpmdW5jdGlvbiBfZnJvbUNsYXNzRGVzY3JpcHRvcihlbGVtZW50cykgewogICAgdmFyIG9iaiA9IHsga2luZDogImNsYXNzIiwgZWxlbWVudHM6IGVsZW1lbnRzLm1hcChfZnJvbUVsZW1lbnREZXNjcmlwdG9yKSB9OwogICAgdmFyIGRlc2MgPSB7IHZhbHVlOiAiRGVzY3JpcHRvciIsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgU3ltYm9sLnRvU3RyaW5nVGFnLCBkZXNjKTsKICAgIHJldHVybiBvYmo7Cn0KZnVuY3Rpb24gX3RvQ2xhc3NEZXNjcmlwdG9yKG9iaikgewogICAgdmFyIGtpbmQgPSBTdHJpbmcob2JqLmtpbmQpOwogICAgaWYgKGtpbmQgIT09ICJjbGFzcyIpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAiQSBjbGFzcyBkZXNjcmlwdG9yJ3MgLmtpbmQgcHJvcGVydHkgbXVzdCBiZSBcImNsYXNzXCIsIGJ1dCBhIGRlY29yYXRvciIgKyAiIGNyZWF0ZWQgYSBjbGFzcyBkZXNjcmlwdG9yIHdpdGggLmtpbmQgXCIiICsga2luZAogICAgICAgICAgICAgICAgKyAiXCIiCiAgICAgICAgKTsKICAgIH0KICAgIF9kaXNhbGxvd1Byb3BlcnR5KG9iaiwgImtleSIsICJBIGNsYXNzIGRlc2NyaXB0b3IiKTsKICAgIF9kaXNhbGxvd1Byb3BlcnR5KG9iaiwgInBsYWNlbWVudCIsICJBIGNsYXNzIGRlc2NyaXB0b3IiKTsKICAgIF9kaXNhbGxvd1Byb3BlcnR5KG9iaiwgImRlc2NyaXB0b3IiLCAiQSBjbGFzcyBkZXNjcmlwdG9yIik7CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShvYmosICJpbml0aWFsaXplciIsICJBIGNsYXNzIGRlc2NyaXB0b3IiKTsKICAgIF9kaXNhbGxvd1Byb3BlcnR5KG9iaiwgImV4dHJhcyIsICJBIGNsYXNzIGRlc2NyaXB0b3IiKTsKICAgIHZhciBmaW5pc2hlciA9IF9vcHRpb25hbENhbGxhYmxlUHJvcGVydHkob2JqLCAiZmluaXNoZXIiKTsKICAgIHZhciBlbGVtZW50cyA9IF90b0VsZW1lbnREZXNjcmlwdG9ycyhvYmouZWxlbWVudHMpOwogICAgcmV0dXJuIHsgZWxlbWVudHM6IGVsZW1lbnRzLCBmaW5pc2hlcjogZmluaXNoZXIgfTsKfQpmdW5jdGlvbiBfZGlzYWxsb3dQcm9wZXJ0eShvYmosIG5hbWUsIG9iamVjdFR5cGUpIHsKICAgIGlmIChvYmpbbmFtZV0gIT09IHVuZGVmaW5lZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3Iob2JqZWN0VHlwZSArICIgY2FuJ3QgaGF2ZSBhIC4iICsgbmFtZSArICIgcHJvcGVydHkuIik7CiAgICB9Cn0KZnVuY3Rpb24gX29wdGlvbmFsQ2FsbGFibGVQcm9wZXJ0eShvYmosIG5hbWUpIHsKICAgIHZhciB2YWx1ZSA9IG9ialtuYW1lXTsKICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHR5cGVvZiB2YWx1ZSAhPT0gImZ1bmN0aW9uIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkV4cGVjdGVkICciICsgbmFtZSArICInIHRvIGJlIGEgZnVuY3Rpb24iKTsKICAgIH0KICAgIHJldHVybiB2YWx1ZTsKfQpmdW5jdGlvbiBfcnVuQ2xhc3NGaW5pc2hlcnMoY29uc3RydWN0b3IsIGZpbmlzaGVycykgewogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBmaW5pc2hlcnMubGVuZ3RoOyBpKyspIHsKICAgICAgICB2YXIgbmV3Q29uc3RydWN0b3IgPSAoMCwgZmluaXNoZXJzW2ldKShjb25zdHJ1Y3Rvcik7CiAgICAgICAgaWYgKG5ld0NvbnN0cnVjdG9yICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiBuZXdDb25zdHJ1Y3RvciAhPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRmluaXNoZXJzIG11c3QgcmV0dXJuIGEgY29uc3RydWN0b3IuIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3RydWN0b3IgPSBuZXdDb25zdHJ1Y3RvcjsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gY29uc3RydWN0b3I7Cn0KZnVuY3Rpb24gX2RlZmF1bHRzKG9iaiwgZGVmYXVsdHMpIHsKICAgIHZhciBrZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoZGVmYXVsdHMpOwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgdmFyIGtleSA9IGtleXNbaV07CiAgICAgICAgdmFyIHZhbHVlID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkZWZhdWx0cywga2V5KTsKICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUuY29uZmlndXJhYmxlICYmIG9ialtrZXldID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSk7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIG9iajsKfQpmdW5jdGlvbiBfZGVmaW5lX2VudW1lcmFibGVfcHJvcGVydGllcyhvYmosIGRlc2NzKSB7CiAgICBmb3IgKHZhciBrZXkgaW4gZGVzY3MpIHsKICAgICAgICB2YXIgZGVzYyA9IGRlc2NzW2tleV07CiAgICAgICAgZGVzYy5jb25maWd1cmFibGUgPSBkZXNjLmVudW1lcmFibGUgPSB0cnVlOwogICAgICAgIGlmICgidmFsdWUiIGluIGRlc2MpIGRlc2Mud3JpdGFibGUgPSB0cnVlOwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgZGVzYyk7CiAgICB9CiAgICBpZiAoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scykgewogICAgICAgIHZhciBvYmplY3RTeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhkZXNjcyk7CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBvYmplY3RTeW1ib2xzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIHZhciBzeW0gPSBvYmplY3RTeW1ib2xzW2ldOwogICAgICAgICAgICB2YXIgZGVzYyA9IGRlc2NzW3N5bV07CiAgICAgICAgICAgIGRlc2MuY29uZmlndXJhYmxlID0gZGVzYy5lbnVtZXJhYmxlID0gdHJ1ZTsKICAgICAgICAgICAgaWYgKCJ2YWx1ZSIgaW4gZGVzYykgZGVzYy53cml0YWJsZSA9IHRydWU7CiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIHN5bSwgZGVzYyk7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIG9iajsKfQpmdW5jdGlvbiBfZGVmaW5lX3Byb3BlcnR5KG9iaiwga2V5LCB2YWx1ZSkgewogICAgaWYgKGtleSBpbiBvYmopIHsKICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIHsgdmFsdWU6IHZhbHVlLCBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlIH0pOwogICAgfSBlbHNlIHsKICAgICAgICBvYmpba2V5XSA9IHZhbHVlOwogICAgfQogICAgcmV0dXJuIG9iajsKfQpmdW5jdGlvbiBfZXhwb3J0X3N0YXIoZnJvbSwgdG8pIHsKICAgIE9iamVjdC5rZXlzKGZyb20pLmZvckVhY2goZnVuY3Rpb24oaykgewogICAgICAgIGlmIChrICE9PSAiZGVmYXVsdCIgJiYgIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0bywgaykpIHsKICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRvLCBrLCB7CiAgICAgICAgICAgICAgICBlbnVtZXJhYmxlOiB0cnVlLAogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZnJvbVtrXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfSk7CiAgICByZXR1cm4gZnJvbTsKfQpmdW5jdGlvbiBfZXh0ZW5kcygpIHsKICAgIF9leHRlbmRzID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbih0YXJnZXQpIHsKICAgICAgICBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldOwogICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gc291cmNlKSB7CiAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwga2V5KSkgewogICAgICAgICAgICAgICAgICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRhcmdldDsKICAgIH07CiAgICByZXR1cm4gX2V4dGVuZHMuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKfQpmdW5jdGlvbiBfZ2V0KHRhcmdldCwgcHJvcGVydHksIHJlY2VpdmVyKSB7CiAgICBpZiAodHlwZW9mIFJlZmxlY3QgIT09ICJ1bmRlZmluZWQiICYmIFJlZmxlY3QuZ2V0KSB7CiAgICAgICAgX2dldCA9IFJlZmxlY3QuZ2V0OwogICAgfSBlbHNlIHsKICAgICAgICBfZ2V0ID0gZnVuY3Rpb24gZ2V0KHRhcmdldCwgcHJvcGVydHksIHJlY2VpdmVyKSB7CiAgICAgICAgICAgIHZhciBiYXNlID0gX3N1cGVyX3Byb3BfYmFzZSh0YXJnZXQsIHByb3BlcnR5KTsKICAgICAgICAgICAgaWYgKCFiYXNlKSByZXR1cm47CiAgICAgICAgICAgIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihiYXNlLCBwcm9wZXJ0eSk7CiAgICAgICAgICAgIGlmIChkZXNjLmdldCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGRlc2MuZ2V0LmNhbGwocmVjZWl2ZXIgfHwgdGFyZ2V0KTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gZGVzYy52YWx1ZTsKICAgICAgICB9OwogICAgfQogICAgcmV0dXJuIF9nZXQodGFyZ2V0LCBwcm9wZXJ0eSwgcmVjZWl2ZXIgfHwgdGFyZ2V0KTsKfQpmdW5jdGlvbiBfZ2V0X3Byb3RvdHlwZV9vZihvKSB7CiAgICBfZ2V0X3Byb3RvdHlwZV9vZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiA/IE9iamVjdC5nZXRQcm90b3R5cGVPZiA6IGZ1bmN0aW9uIGdldFByb3RvdHlwZU9mKG8pIHsKICAgICAgICByZXR1cm4gby5fX3Byb3RvX18gfHwgT2JqZWN0LmdldFByb3RvdHlwZU9mKG8pOwogICAgfTsKICAgIHJldHVybiBfZ2V0X3Byb3RvdHlwZV9vZihvKTsKfQpmdW5jdGlvbiBfaW5oZXJpdHMoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpIHsKICAgIGlmICh0eXBlb2Ygc3VwZXJDbGFzcyAhPT0gImZ1bmN0aW9uIiAmJiBzdXBlckNsYXNzICE9PSBudWxsKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24iKTsKICAgIH0KICAgIHN1YkNsYXNzLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoc3VwZXJDbGFzcyAmJiBzdXBlckNsYXNzLnByb3RvdHlwZSwgewogICAgICAgIGNvbnN0cnVjdG9yOiB7IHZhbHVlOiBzdWJDbGFzcywgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9CiAgICB9KTsKICAgIGlmIChzdXBlckNsYXNzKSBfc2V0X3Byb3RvdHlwZV9vZihzdWJDbGFzcywgc3VwZXJDbGFzcyk7Cn0KZnVuY3Rpb24gX2luaGVyaXRzX2xvb3NlKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7CiAgICBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MucHJvdG90eXBlKTsKICAgIHN1YkNsYXNzLnByb3RvdHlwZS5jb25zdHJ1Y3RvciA9IHN1YkNsYXNzOwogICAgc3ViQ2xhc3MuX19wcm90b19fID0gc3VwZXJDbGFzczsKfQpmdW5jdGlvbiBfaW5pdGlhbGl6ZXJfZGVmaW5lX3Byb3BlcnR5KHRhcmdldCwgcHJvcGVydHksIGRlc2NyaXB0b3IsIGNvbnRleHQpIHsKICAgIGlmICghZGVzY3JpcHRvcikgcmV0dXJuOwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwgcHJvcGVydHksIHsKICAgICAgICBlbnVtZXJhYmxlOiBkZXNjcmlwdG9yLmVudW1lcmFibGUsCiAgICAgICAgY29uZmlndXJhYmxlOiBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSwKICAgICAgICB3cml0YWJsZTogZGVzY3JpcHRvci53cml0YWJsZSwKICAgICAgICB2YWx1ZTogZGVzY3JpcHRvci5pbml0aWFsaXplciA/IGRlc2NyaXB0b3IuaW5pdGlhbGl6ZXIuY2FsbChjb250ZXh0KSA6IHZvaWQgMAogICAgfSk7Cn0KZnVuY3Rpb24gX2luaXRpYWxpemVyX3dhcm5pbmdfaGVscGVyKGRlc2NyaXB0b3IsIGNvbnRleHQpIHsKICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAiRGVjb3JhdGluZyBjbGFzcyBwcm9wZXJ0eSBmYWlsZWQuIFBsZWFzZSBlbnN1cmUgdGhhdCAiICsgInByb3Bvc2FsLWNsYXNzLXByb3BlcnRpZXMgaXMgZW5hYmxlZCBhbmQgc2V0IHRvIHVzZSBsb29zZSBtb2RlLiAiCiAgICAgICAgICAgICsgIlRvIHVzZSBwcm9wb3NhbC1jbGFzcy1wcm9wZXJ0aWVzIGluIHNwZWMgbW9kZSB3aXRoIGRlY29yYXRvcnMsIHdhaXQgZm9yICIKICAgICAgICAgICAgKyAidGhlIG5leHQgbWFqb3IgdmVyc2lvbiBvZiBkZWNvcmF0b3JzIGluIHN0YWdlIDIuIgogICAgKTsKfQpmdW5jdGlvbiBfaW5zdGFuY2VvZihsZWZ0LCByaWdodCkgewogICAgaWYgKHJpZ2h0ICE9IG51bGwgJiYgdHlwZW9mIFN5bWJvbCAhPT0gInVuZGVmaW5lZCIgJiYgcmlnaHRbU3ltYm9sLmhhc0luc3RhbmNlXSkgewogICAgICAgIHJldHVybiAhIXJpZ2h0W1N5bWJvbC5oYXNJbnN0YW5jZV0obGVmdCk7CiAgICB9IGVsc2UgewogICAgICAgIHJldHVybiBsZWZ0IGluc3RhbmNlb2YgcmlnaHQ7CiAgICB9Cn0KZnVuY3Rpb24gX2ludGVyb3BfcmVxdWlyZV9kZWZhdWx0KG9iaikgewogICAgcmV0dXJuIG9iaiAmJiBvYmouX19lc01vZHVsZSA/IG9iaiA6IHsgZGVmYXVsdDogb2JqIH07Cn0KZnVuY3Rpb24gX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlKG5vZGVJbnRlcm9wKSB7CiAgICBpZiAodHlwZW9mIFdlYWtNYXAgIT09ICJmdW5jdGlvbiIpIHJldHVybiBudWxsOwogICAgdmFyIGNhY2hlQmFiZWxJbnRlcm9wID0gbmV3IFdlYWtNYXAoKTsKICAgIHZhciBjYWNoZU5vZGVJbnRlcm9wID0gbmV3IFdlYWtNYXAoKTsKICAgIHJldHVybiAoX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlID0gZnVuY3Rpb24obm9kZUludGVyb3ApIHsKICAgICAgICByZXR1cm4gbm9kZUludGVyb3AgPyBjYWNoZU5vZGVJbnRlcm9wIDogY2FjaGVCYWJlbEludGVyb3A7CiAgICB9KShub2RlSW50ZXJvcCk7Cn0KZnVuY3Rpb24gX2ludGVyb3BfcmVxdWlyZV93aWxkY2FyZChvYmosIG5vZGVJbnRlcm9wKSB7CiAgICBpZiAoIW5vZGVJbnRlcm9wICYmIG9iaiAmJiBvYmouX19lc01vZHVsZSkgewogICAgICAgIHJldHVybiBvYmo7CiAgICB9CiAgICBpZiAob2JqID09PSBudWxsIHx8IHR5cGVvZiBvYmogIT09ICJvYmplY3QiICYmIHR5cGVvZiBvYmogIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICByZXR1cm4geyBkZWZhdWx0OiBvYmogfTsKICAgIH0KICAgIHZhciBjYWNoZSA9IF9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZShub2RlSW50ZXJvcCk7CiAgICBpZiAoY2FjaGUgJiYgY2FjaGUuaGFzKG9iaikpIHsKICAgICAgICByZXR1cm4gY2FjaGUuZ2V0KG9iaik7CiAgICB9CiAgICB2YXIgbmV3T2JqID0geyBfX3Byb3RvX186IG51bGwgfTsKICAgIHZhciBoYXNQcm9wZXJ0eURlc2NyaXB0b3IgPSBPYmplY3QuZGVmaW5lUHJvcGVydHkgJiYgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjsKICAgIGZvciAodmFyIGtleSBpbiBvYmopIHsKICAgICAgICBpZiAoa2V5ICE9PSAiZGVmYXVsdCIgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KSkgewogICAgICAgICAgICB2YXIgZGVzYyA9IGhhc1Byb3BlcnR5RGVzY3JpcHRvciA/IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqLCBrZXkpIDogbnVsbDsKICAgICAgICAgICAgaWYgKGRlc2MgJiYgKGRlc2MuZ2V0IHx8IGRlc2Muc2V0KSkgewogICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG5ld09iaiwga2V5LCBkZXNjKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIG5ld09ialtrZXldID0gb2JqW2tleV07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICBuZXdPYmouZGVmYXVsdCA9IG9iajsKICAgIGlmIChjYWNoZSkgewogICAgICAgIGNhY2hlLnNldChvYmosIG5ld09iaik7CiAgICB9CiAgICByZXR1cm4gbmV3T2JqOwp9CmZ1bmN0aW9uIF9pc19uYXRpdmVfZnVuY3Rpb24oZm4pIHsKICAgIHJldHVybiBGdW5jdGlvbi50b1N0cmluZy5jYWxsKGZuKS5pbmRleE9mKCJbbmF0aXZlIGNvZGVdIikgIT09IC0xOwp9CmZ1bmN0aW9uIF9pdGVyYWJsZV90b19hcnJheShpdGVyKSB7CiAgICBpZiAodHlwZW9mIFN5bWJvbCAhPT0gInVuZGVmaW5lZCIgJiYgaXRlcltTeW1ib2wuaXRlcmF0b3JdICE9IG51bGwgfHwgaXRlclsiQEBpdGVyYXRvciJdICE9IG51bGwpIHJldHVybiBBcnJheS5mcm9tKGl0ZXIpOwp9CmZ1bmN0aW9uIF9pdGVyYWJsZV90b19hcnJheV9saW1pdChhcnIsIGkpIHsKICAgIHZhciBfaSA9IGFyciA9PSBudWxsID8gbnVsbCA6IHR5cGVvZiBTeW1ib2wgIT09ICJ1bmRlZmluZWQiICYmIGFycltTeW1ib2wuaXRlcmF0b3JdIHx8IGFyclsiQEBpdGVyYXRvciJdOwogICAgaWYgKF9pID09IG51bGwpIHJldHVybjsKICAgIHZhciBfYXJyID0gW107CiAgICB2YXIgX24gPSB0cnVlOwogICAgdmFyIF9kID0gZmFsc2U7CiAgICB2YXIgX3MsIF9lOwogICAgdHJ5IHsKICAgICAgICBmb3IgKF9pID0gX2kuY2FsbChhcnIpOyAhKF9uID0gKF9zID0gX2kubmV4dCgpKS5kb25lKTsgX24gPSB0cnVlKSB7CiAgICAgICAgICAgIF9hcnIucHVzaChfcy52YWx1ZSk7CiAgICAgICAgICAgIGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsKICAgICAgICB9CiAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICBfZCA9IHRydWU7CiAgICAgICAgX2UgPSBlcnI7CiAgICB9IGZpbmFsbHkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmICghX24gJiYgX2lbInJldHVybiJdICE9IG51bGwpIF9pWyJyZXR1cm4iXSgpOwogICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgIGlmIChfZCkgdGhyb3cgX2U7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIF9hcnI7Cn0KZnVuY3Rpb24gX2l0ZXJhYmxlX3RvX2FycmF5X2xpbWl0X2xvb3NlKGFyciwgaSkgewogICAgdmFyIF9pID0gYXJyICYmICh0eXBlb2YgU3ltYm9sICE9PSAidW5kZWZpbmVkIiAmJiBhcnJbU3ltYm9sLml0ZXJhdG9yXSB8fCBhcnJbIkBAaXRlcmF0b3IiXSk7CiAgICBpZiAoX2kgPT0gbnVsbCkgcmV0dXJuOwogICAgdmFyIF9hcnIgPSBbXTsKICAgIGZvciAoX2kgPSBfaS5jYWxsKGFyciksIF9zdGVwOyAhKF9zdGVwID0gX2kubmV4dCgpKS5kb25lOykgewogICAgICAgIF9hcnIucHVzaChfc3RlcC52YWx1ZSk7CiAgICAgICAgaWYgKGkgJiYgX2Fyci5sZW5ndGggPT09IGkpIGJyZWFrOwogICAgfQogICAgcmV0dXJuIF9hcnI7Cn0KdmFyIFJFQUNUX0VMRU1FTlRfVFlQRTsKZnVuY3Rpb24gX2pzeCh0eXBlLCBwcm9wcywga2V5LCBjaGlsZHJlbikgewogICAgaWYgKCFSRUFDVF9FTEVNRU5UX1RZUEUpIHsKICAgICAgICBSRUFDVF9FTEVNRU5UX1RZUEUgPSB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIFN5bWJvbC5mb3IgJiYgU3ltYm9sLmZvcigicmVhY3QuZWxlbWVudCIpIHx8IDB4ZWFjNzsKICAgIH0KICAgIHZhciBkZWZhdWx0UHJvcHMgPSB0eXBlICYmIHR5cGUuZGVmYXVsdFByb3BzOwogICAgdmFyIGNoaWxkcmVuTGVuZ3RoID0gYXJndW1lbnRzLmxlbmd0aCAtIDM7CiAgICBpZiAoIXByb3BzICYmIGNoaWxkcmVuTGVuZ3RoICE9PSAwKSB7CiAgICAgICAgcHJvcHMgPSB7IGNoaWxkcmVuOiB2b2lkIDAgfTsKICAgIH0KICAgIGlmIChwcm9wcyAmJiBkZWZhdWx0UHJvcHMpIHsKICAgICAgICBmb3IgKHZhciBwcm9wTmFtZSBpbiBkZWZhdWx0UHJvcHMpIHsKICAgICAgICAgICAgaWYgKHByb3BzW3Byb3BOYW1lXSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICBwcm9wc1twcm9wTmFtZV0gPSBkZWZhdWx0UHJvcHNbcHJvcE5hbWVdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSBlbHNlIGlmICghcHJvcHMpIHsKICAgICAgICBwcm9wcyA9IGRlZmF1bHRQcm9wcyB8fCB7fTsKICAgIH0KICAgIGlmIChjaGlsZHJlbkxlbmd0aCA9PT0gMSkgewogICAgICAgIHByb3BzLmNoaWxkcmVuID0gY2hpbGRyZW47CiAgICB9IGVsc2UgaWYgKGNoaWxkcmVuTGVuZ3RoID4gMSkgewogICAgICAgIHZhciBjaGlsZEFycmF5ID0gbmV3IEFycmF5KGNoaWxkcmVuTGVuZ3RoKTsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoaWxkcmVuTGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgY2hpbGRBcnJheVtpXSA9IGFyZ3VtZW50c1tpICsgM107CiAgICAgICAgfQogICAgICAgIHByb3BzLmNoaWxkcmVuID0gY2hpbGRBcnJheTsKICAgIH0KICAgIHJldHVybiB7ICQkdHlwZW9mOiBSRUFDVF9FTEVNRU5UX1RZUEUsIHR5cGU6IHR5cGUsIGtleToga2V5ID09PSB1bmRlZmluZWQgPyBudWxsIDogIiIgKyBrZXksIHJlZjogbnVsbCwgcHJvcHM6IHByb3BzLCBfb3duZXI6IG51bGwgfTsKfQpmdW5jdGlvbiBfbmV3X2Fycm93X2NoZWNrKGlubmVyVGhpcywgYm91bmRUaGlzKSB7CiAgICBpZiAoaW5uZXJUaGlzICE9PSBib3VuZFRoaXMpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgaW5zdGFudGlhdGUgYW4gYXJyb3cgZnVuY3Rpb24iKTsKICAgIH0KfQpmdW5jdGlvbiBfbm9uX2l0ZXJhYmxlX3Jlc3QoKSB7CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxcbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iCiAgICApOwp9CmZ1bmN0aW9uIF9ub25faXRlcmFibGVfc3ByZWFkKCkgewogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAiSW52YWxpZCBhdHRlbXB0IHRvIHNwcmVhZCBub24taXRlcmFibGUgaW5zdGFuY2UuXFxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIKICAgICk7Cn0KZnVuY3Rpb24gX29iamVjdF9kZXN0cnVjdHVyaW5nX2VtcHR5KG8pIHsKICAgIGlmIChvID09PSBudWxsIHx8IG8gPT09IHZvaWQgMCkgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGRlc3RydWN0dXJlICIgKyBvKTsKICAgIHJldHVybiBvOwp9CmZ1bmN0aW9uIF9vYmplY3Rfc3ByZWFkKHRhcmdldCkgewogICAgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsKICAgICAgICB2YXIgc291cmNlID0gYXJndW1lbnRzW2ldICE9IG51bGwgPyBhcmd1bWVudHNbaV0gOiB7fTsKICAgICAgICB2YXIgb3duS2V5cyA9IE9iamVjdC5rZXlzKHNvdXJjZSk7CiAgICAgICAgaWYgKHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgIG93bktleXMgPSBvd25LZXlzLmNvbmNhdCgKICAgICAgICAgICAgICAgIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoc291cmNlKS5maWx0ZXIoZnVuY3Rpb24oc3ltKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Ioc291cmNlLCBzeW0pLmVudW1lcmFibGU7CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICApOwogICAgICAgIH0KICAgICAgICBvd25LZXlzLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgIF9kZWZpbmVfcHJvcGVydHkodGFyZ2V0LCBrZXksIHNvdXJjZVtrZXldKTsKICAgICAgICB9KTsKICAgIH0KICAgIHJldHVybiB0YXJnZXQ7Cn0KZnVuY3Rpb24gb3duS2V5cyhvYmplY3QsIGVudW1lcmFibGVPbmx5KSB7CiAgICB2YXIga2V5cyA9IE9iamVjdC5rZXlzKG9iamVjdCk7CiAgICBpZiAoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scykgewogICAgICAgIHZhciBzeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhvYmplY3QpOwogICAgICAgIGlmIChlbnVtZXJhYmxlT25seSkgewogICAgICAgICAgICBzeW1ib2xzID0gc3ltYm9scy5maWx0ZXIoZnVuY3Rpb24oc3ltKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihvYmplY3QsIHN5bSkuZW51bWVyYWJsZTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIGtleXMucHVzaC5hcHBseShrZXlzLCBzeW1ib2xzKTsKICAgIH0KICAgIHJldHVybiBrZXlzOwp9CmZ1bmN0aW9uIF9vYmplY3Rfc3ByZWFkX3Byb3BzKHRhcmdldCwgc291cmNlKSB7CiAgICBzb3VyY2UgPSBzb3VyY2UgIT0gbnVsbCA/IHNvdXJjZSA6IHt9OwogICAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzKSB7CiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXModGFyZ2V0LCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhzb3VyY2UpKTsKICAgIH0gZWxzZSB7CiAgICAgICAgb3duS2V5cyhPYmplY3Qoc291cmNlKSkuZm9yRWFjaChmdW5jdGlvbihrZXkpIHsKICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHNvdXJjZSwga2V5KSk7CiAgICAgICAgfSk7CiAgICB9CiAgICByZXR1cm4gdGFyZ2V0Owp9CmZ1bmN0aW9uIF9vYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzKHNvdXJjZSwgZXhjbHVkZWQpIHsKICAgIGlmIChzb3VyY2UgPT0gbnVsbCkgcmV0dXJuIHt9OwogICAgdmFyIHRhcmdldCA9IF9vYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzX2xvb3NlKHNvdXJjZSwgZXhjbHVkZWQpOwogICAgdmFyIGtleSwgaTsKICAgIGlmIChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKSB7CiAgICAgICAgdmFyIHNvdXJjZVN5bWJvbEtleXMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHNvdXJjZSk7CiAgICAgICAgZm9yIChpID0gMDsgaSA8IHNvdXJjZVN5bWJvbEtleXMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAga2V5ID0gc291cmNlU3ltYm9sS2V5c1tpXTsKICAgICAgICAgICAgaWYgKGV4Y2x1ZGVkLmluZGV4T2Yoa2V5KSA+PSAwKSBjb250aW51ZTsKICAgICAgICAgICAgaWYgKCFPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwoc291cmNlLCBrZXkpKSBjb250aW51ZTsKICAgICAgICAgICAgdGFyZ2V0W2tleV0gPSBzb3VyY2Vba2V5XTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gdGFyZ2V0Owp9CmZ1bmN0aW9uIF9vYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzX2xvb3NlKHNvdXJjZSwgZXhjbHVkZWQpIHsKICAgIGlmIChzb3VyY2UgPT0gbnVsbCkgcmV0dXJuIHt9OwogICAgdmFyIHRhcmdldCA9IHt9OwogICAgdmFyIHNvdXJjZUtleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgdmFyIGtleSwgaTsKICAgIGZvciAoaSA9IDA7IGkgPCBzb3VyY2VLZXlzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAga2V5ID0gc291cmNlS2V5c1tpXTsKICAgICAgICBpZiAoZXhjbHVkZWQuaW5kZXhPZihrZXkpID49IDApIGNvbnRpbnVlOwogICAgICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07CiAgICB9CiAgICByZXR1cm4gdGFyZ2V0Owp9CmZ1bmN0aW9uIF9wb3NzaWJsZV9jb25zdHJ1Y3Rvcl9yZXR1cm4oc2VsZiwgY2FsbCkgewogICAgaWYgKGNhbGwgJiYgKF90eXBlX29mKGNhbGwpID09PSAib2JqZWN0IiB8fCB0eXBlb2YgY2FsbCA9PT0gImZ1bmN0aW9uIikpIHsKICAgICAgICByZXR1cm4gY2FsbDsKICAgIH0KICAgIHJldHVybiBfYXNzZXJ0X3RoaXNfaW5pdGlhbGl6ZWQoc2VsZik7Cn0KZnVuY3Rpb24gX3JlYWRfb25seV9lcnJvcihuYW1lKSB7CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJcIiIgKyBuYW1lICsgIlwiIGlzIHJlYWQtb25seSIpOwp9CmZ1bmN0aW9uIHNldCh0YXJnZXQsIHByb3BlcnR5LCB2YWx1ZSwgcmVjZWl2ZXIpIHsKICAgIGlmICh0eXBlb2YgUmVmbGVjdCAhPT0gInVuZGVmaW5lZCIgJiYgUmVmbGVjdC5zZXQpIHsKICAgICAgICBzZXQgPSBSZWZsZWN0LnNldDsKICAgIH0gZWxzZSB7CiAgICAgICAgc2V0ID0gZnVuY3Rpb24gc2V0KHRhcmdldCwgcHJvcGVydHksIHZhbHVlLCByZWNlaXZlcikgewogICAgICAgICAgICB2YXIgYmFzZSA9IF9zdXBlcl9wcm9wX2Jhc2UodGFyZ2V0LCBwcm9wZXJ0eSk7CiAgICAgICAgICAgIHZhciBkZXNjOwogICAgICAgICAgICBpZiAoYmFzZSkgewogICAgICAgICAgICAgICAgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYmFzZSwgcHJvcGVydHkpOwogICAgICAgICAgICAgICAgaWYgKGRlc2Muc2V0KSB7CiAgICAgICAgICAgICAgICAgICAgZGVzYy5zZXQuY2FsbChyZWNlaXZlciwgdmFsdWUpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICghZGVzYy53cml0YWJsZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyZWNlaXZlciwgcHJvcGVydHkpOwogICAgICAgICAgICBpZiAoZGVzYykgewogICAgICAgICAgICAgICAgaWYgKCFkZXNjLndyaXRhYmxlKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZGVzYy52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHJlY2VpdmVyLCBwcm9wZXJ0eSwgZGVzYyk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBfZGVmaW5lX3Byb3BlcnR5KHJlY2VpdmVyLCBwcm9wZXJ0eSwgdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH07CiAgICB9CiAgICByZXR1cm4gc2V0KHRhcmdldCwgcHJvcGVydHksIHZhbHVlLCByZWNlaXZlcik7Cn0KZnVuY3Rpb24gX3NldCh0YXJnZXQsIHByb3BlcnR5LCB2YWx1ZSwgcmVjZWl2ZXIsIGlzU3RyaWN0KSB7CiAgICB2YXIgcyA9IHNldCh0YXJnZXQsIHByb3BlcnR5LCB2YWx1ZSwgcmVjZWl2ZXIgfHwgdGFyZ2V0KTsKICAgIGlmICghcyAmJiBpc1N0cmljdCkgewogICAgICAgIHRocm93IG5ldyBFcnJvcigiZmFpbGVkIHRvIHNldCBwcm9wZXJ0eSIpOwogICAgfQogICAgcmV0dXJuIHZhbHVlOwp9CmZ1bmN0aW9uIF9zZXRfcHJvdG90eXBlX29mKG8sIHApIHsKICAgIF9zZXRfcHJvdG90eXBlX29mID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8IGZ1bmN0aW9uIHNldFByb3RvdHlwZU9mKG8sIHApIHsKICAgICAgICBvLl9fcHJvdG9fXyA9IHA7CiAgICAgICAgcmV0dXJuIG87CiAgICB9OwogICAgcmV0dXJuIF9zZXRfcHJvdG90eXBlX29mKG8sIHApOwp9CmZ1bmN0aW9uIF9za2lwX2ZpcnN0X2dlbmVyYXRvcl9uZXh0KGZuKSB7CiAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIGl0ID0gZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICBpdC5uZXh0KCk7CiAgICAgICAgcmV0dXJuIGl0OwogICAgfTsKfQpmdW5jdGlvbiBfc2xpY2VkX3RvX2FycmF5KGFyciwgaSkgewogICAgcmV0dXJuIF9hcnJheV93aXRoX2hvbGVzKGFycikgfHwgX2l0ZXJhYmxlX3RvX2FycmF5X2xpbWl0KGFyciwgaSkgfHwgX3Vuc3VwcG9ydGVkX2l0ZXJhYmxlX3RvX2FycmF5KGFyciwgaSkgfHwgX25vbl9pdGVyYWJsZV9yZXN0KCk7Cn0KZnVuY3Rpb24gX3NsaWNlZF90b19hcnJheV9sb29zZShhcnIsIGkpIHsKICAgIHJldHVybiBfYXJyYXlfd2l0aF9ob2xlcyhhcnIpIHx8IF9pdGVyYWJsZV90b19hcnJheV9saW1pdF9sb29zZShhcnIsIGkpIHx8IF91bnN1cHBvcnRlZF9pdGVyYWJsZV90b19hcnJheShhcnIsIGkpCiAgICAgICAgfHwgX25vbl9pdGVyYWJsZV9yZXN0KCk7Cn0KZnVuY3Rpb24gX3N1cGVyX3Byb3BfYmFzZShvYmplY3QsIHByb3BlcnR5KSB7CiAgICB3aGlsZSAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmplY3QsIHByb3BlcnR5KSkgewogICAgICAgIG9iamVjdCA9IF9nZXRfcHJvdG90eXBlX29mKG9iamVjdCk7CiAgICAgICAgaWYgKG9iamVjdCA9PT0gbnVsbCkgYnJlYWs7CiAgICB9CiAgICByZXR1cm4gb2JqZWN0Owp9CmZ1bmN0aW9uIF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbChzdHJpbmdzLCByYXcpIHsKICAgIGlmICghcmF3KSB7CiAgICAgICAgcmF3ID0gc3RyaW5ncy5zbGljZSgwKTsKICAgIH0KICAgIHJldHVybiBPYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHN0cmluZ3MsIHsgcmF3OiB7IHZhbHVlOiBPYmplY3QuZnJlZXplKHJhdykgfSB9KSk7Cn0KZnVuY3Rpb24gX3RhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsX2xvb3NlKHN0cmluZ3MsIHJhdykgewogICAgaWYgKCFyYXcpIHsKICAgICAgICByYXcgPSBzdHJpbmdzLnNsaWNlKDApOwogICAgfQogICAgc3RyaW5ncy5yYXcgPSByYXc7CiAgICByZXR1cm4gc3RyaW5nczsKfQpmdW5jdGlvbiBfdGhyb3coZSkgewogICAgdGhyb3cgZTsKfQpmdW5jdGlvbiBfdG9fYXJyYXkoYXJyKSB7CiAgICByZXR1cm4gX2FycmF5X3dpdGhfaG9sZXMoYXJyKSB8fCBfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfbm9uX2l0ZXJhYmxlX3Jlc3QoKTsKfQpmdW5jdGlvbiBfdG9fY29uc3VtYWJsZV9hcnJheShhcnIpIHsKICAgIHJldHVybiBfYXJyYXlfd2l0aG91dF9ob2xlcyhhcnIpIHx8IF9pdGVyYWJsZV90b19hcnJheShhcnIpIHx8IF91bnN1cHBvcnRlZF9pdGVyYWJsZV90b19hcnJheShhcnIpIHx8IF9ub25faXRlcmFibGVfc3ByZWFkKCk7Cn0KZnVuY3Rpb24gX3RvX3ByaW1pdGl2ZShpbnB1dCwgaGludCkgewogICAgaWYgKF90eXBlX29mKGlucHV0KSAhPT0gIm9iamVjdCIgfHwgaW5wdXQgPT09IG51bGwpIHJldHVybiBpbnB1dDsKICAgIHZhciBwcmltID0gaW5wdXRbU3ltYm9sLnRvUHJpbWl0aXZlXTsKICAgIGlmIChwcmltICE9PSB1bmRlZmluZWQpIHsKICAgICAgICB2YXIgcmVzID0gcHJpbS5jYWxsKGlucHV0LCBoaW50IHx8ICJkZWZhdWx0Iik7CiAgICAgICAgaWYgKF90eXBlX29mKHJlcykgIT09ICJvYmplY3QiKSByZXR1cm4gcmVzOwogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIik7CiAgICB9CiAgICByZXR1cm4gKGhpbnQgPT09ICJzdHJpbmciID8gU3RyaW5nIDogTnVtYmVyKShpbnB1dCk7Cn0KZnVuY3Rpb24gX3RvX3Byb3BlcnR5X2tleShhcmcpIHsKICAgIHZhciBrZXkgPSBfdG9fcHJpbWl0aXZlKGFyZywgInN0cmluZyIpOwogICAgcmV0dXJuIF90eXBlX29mKGtleSkgPT09ICJzeW1ib2wiID8ga2V5IDogU3RyaW5nKGtleSk7Cn0KZnVuY3Rpb24gX3VwZGF0ZSh0YXJnZXQsIHByb3BlcnR5LCByZWNlaXZlciwgaXNTdHJpY3QpIHsKICAgIHJldHVybiB7CiAgICAgICAgZ2V0IF8oKSB7CiAgICAgICAgICAgIHJldHVybiBfZ2V0KHRhcmdldCwgcHJvcGVydHksIHJlY2VpdmVyKTsKICAgICAgICB9LAogICAgICAgIHNldCBfKHZhbHVlKSB7CiAgICAgICAgICAgIF9zZXQodGFyZ2V0LCBwcm9wZXJ0eSwgdmFsdWUsIHJlY2VpdmVyLCBpc1N0cmljdCk7CiAgICAgICAgfQogICAgfTsKfQpmdW5jdGlvbiBfdHlwZV9vZihvYmopIHsKICAgICJAc3djL2hlbHBlcnMgLSB0eXBlb2YiOwogICAgcmV0dXJuIG9iaiAmJiB0eXBlb2YgU3ltYm9sICE9PSAidW5kZWZpbmVkIiAmJiBvYmouY29uc3RydWN0b3IgPT09IFN5bWJvbCA/ICJzeW1ib2wiIDogdHlwZW9mIG9iajsKfQpmdW5jdGlvbiBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkobywgbWluTGVuKSB7CiAgICBpZiAoIW8pIHJldHVybjsKICAgIGlmICh0eXBlb2YgbyA9PT0gInN0cmluZyIpIHJldHVybiBfYXJyYXlfbGlrZV90b19hcnJheShvLCBtaW5MZW4pOwogICAgdmFyIG4gPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobykuc2xpY2UoOCwgLTEpOwogICAgaWYgKG4gPT09ICJPYmplY3QiICYmIG8uY29uc3RydWN0b3IpIG4gPSBvLmNvbnN0cnVjdG9yLm5hbWU7CiAgICBpZiAobiA9PT0gIk1hcCIgfHwgbiA9PT0gIlNldCIpIHJldHVybiBBcnJheS5mcm9tKG4pOwogICAgaWYgKG4gPT09ICJBcmd1bWVudHMiIHx8IC9eKD86VWl8SSludCg/Ojh8MTZ8MzIpKD86Q2xhbXBlZCk/QXJyYXkkLy50ZXN0KG4pKSByZXR1cm4gX2FycmF5X2xpa2VfdG9fYXJyYXkobywgbWluTGVuKTsKfQpmdW5jdGlvbiBfd3JhcF9hc3luY19nZW5lcmF0b3IoZm4pIHsKICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gbmV3IF9hc3luY19nZW5lcmF0b3IoZm4uYXBwbHkodGhpcywgYXJndW1lbnRzKSk7CiAgICB9Owp9CmZ1bmN0aW9uIF93cmFwX25hdGl2ZV9zdXBlcihDbGFzcykgewogICAgdmFyIF9jYWNoZSA9IHR5cGVvZiBNYXAgPT09ICJmdW5jdGlvbiIgPyBuZXcgTWFwKCkgOiB1bmRlZmluZWQ7CiAgICBfd3JhcF9uYXRpdmVfc3VwZXIgPSBmdW5jdGlvbiB3cmFwTmF0aXZlU3VwZXIoQ2xhc3MpIHsKICAgICAgICBpZiAoQ2xhc3MgPT09IG51bGwgfHwgIV9pc19uYXRpdmVfZnVuY3Rpb24oQ2xhc3MpKSByZXR1cm4gQ2xhc3M7CiAgICAgICAgaWYgKHR5cGVvZiBDbGFzcyAhPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJTdXBlciBleHByZXNzaW9uIG11c3QgZWl0aGVyIGJlIG51bGwgb3IgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgICAgICBpZiAodHlwZW9mIF9jYWNoZSAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAgICAgaWYgKF9jYWNoZS5oYXMoQ2xhc3MpKSByZXR1cm4gX2NhY2hlLmdldChDbGFzcyk7CiAgICAgICAgICAgIF9jYWNoZS5zZXQoQ2xhc3MsIFdyYXBwZXIpOwogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBXcmFwcGVyKCkgewogICAgICAgICAgICByZXR1cm4gX2NvbnN0cnVjdChDbGFzcywgYXJndW1lbnRzLCBfZ2V0X3Byb3RvdHlwZV9vZih0aGlzKS5jb25zdHJ1Y3Rvcik7CiAgICAgICAgfQogICAgICAgIFdyYXBwZXIucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShDbGFzcy5wcm90b3R5cGUsIHsKICAgICAgICAgICAgY29uc3RydWN0b3I6IHsgdmFsdWU6IFdyYXBwZXIsIGVudW1lcmFibGU6IGZhbHNlLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlIH0KICAgICAgICB9KTsKICAgICAgICByZXR1cm4gX3NldF9wcm90b3R5cGVfb2YoV3JhcHBlciwgQ2xhc3MpOwogICAgfTsKICAgIHJldHVybiBfd3JhcF9uYXRpdmVfc3VwZXIoQ2xhc3MpOwp9CmZ1bmN0aW9uIF93cml0ZV9vbmx5X2Vycm9yKG5hbWUpIHsKICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlwiIiArIG5hbWUgKyAiXCIgaXMgd3JpdGUtb25seSIpOwp9CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX2ZpZWxkX2Rlc3RydWN0dXJlKHJlY2VpdmVyLCBwcml2YXRlTWFwKSB7CiAgICB2YXIgZGVzY3JpcHRvciA9IF9jbGFzc19leHRyYWN0X2ZpZWxkX2Rlc2NyaXB0b3IocmVjZWl2ZXIsIHByaXZhdGVNYXAsICJzZXQiKTsKICAgIHJldHVybiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9kZXN0cnVjdHVyZShyZWNlaXZlciwgZGVzY3JpcHRvcik7Cn0KZnVuY3Rpb24gX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX2Rlc3RydWN0dXJlKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yLCBkZXNjcmlwdG9yKSB7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfYWNjZXNzKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yKTsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yKGRlc2NyaXB0b3IsICJzZXQiKTsKICAgIHJldHVybiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9kZXN0cnVjdHVyZShyZWNlaXZlciwgZGVzY3JpcHRvcik7Cn0KZnVuY3Rpb24gX2NsYXNzX3N0YXRpY19wcml2YXRlX21ldGhvZF9nZXQocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IsIG1ldGhvZCkgewogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2VzcyhyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3Rvcik7CiAgICByZXR1cm4gbWV0aG9kOwp9CmZ1bmN0aW9uIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3MocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IpIHsKICAgIGlmIChyZWNlaXZlciAhPT0gY2xhc3NDb25zdHJ1Y3RvcikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlByaXZhdGUgc3RhdGljIGFjY2VzcyBvZiB3cm9uZyBwcm92ZW5hbmNlIik7CiAgICB9Cn0KZnVuY3Rpb24gX2lzX25hdGl2ZV9yZWZsZWN0X2NvbnN0cnVjdCgpIHsKICAgIC8vIFNpbmNlIFJlZmxlY3QuY29uc3RydWN0IGNhbid0IGJlIHByb3Blcmx5IHBvbHlmaWxsZWQsIHNvbWUKICAgIC8vIGltcGxlbWVudGF0aW9ucyAoZS5nLiBjb3JlLWpzQDIpIGRvbid0IHNldCB0aGUgY29ycmVjdCBpbnRlcm5hbCBzbG90cy4KICAgIC8vIFRob3NlIHBvbHlmaWxscyBkb24ndCBhbGxvdyB1cyB0byBzdWJjbGFzcyBidWlsdC1pbnMsIHNvIHdlIG5lZWQgdG8KICAgIC8vIHVzZSBvdXIgZmFsbGJhY2sgaW1wbGVtZW50YXRpb24uCiAgICB0cnkgewogICAgICAgIC8vIElmIHRoZSBpbnRlcm5hbCBzbG90cyBhcmVuJ3Qgc2V0LCB0aGlzIHRocm93cyBhbiBlcnJvciBzaW1pbGFyIHRvCiAgICAgICAgLy8gICBUeXBlRXJyb3I6IHRoaXMgaXMgbm90IGEgQm9vbGVhbiBvYmplY3QuCiAgICAgICAgdmFyIHJlc3VsdCA9ICFCb29sZWFuLnByb3RvdHlwZS52YWx1ZU9mLmNhbGwoUmVmbGVjdC5jb25zdHJ1Y3QoQm9vbGVhbiwgW10sIGZ1bmN0aW9uKCkge30pKTsKICAgIH0gY2F0Y2ggKF8pIHt9CiAgICByZXR1cm4gKF9pc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3QgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gISFyZXN1bHQ7CiAgICB9KSgpOwp9CmZ1bmN0aW9uIF9jcmVhdGVfc3VwZXIoRGVyaXZlZCkgewogICAgdmFyIGhhc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QgPSBfaXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0KCk7CiAgICByZXR1cm4gZnVuY3Rpb24gX2NyZWF0ZVN1cGVySW50ZXJuYWwoKSB7CiAgICAgICAgdmFyIFN1cGVyID0gX2dldF9wcm90b3R5cGVfb2YoRGVyaXZlZCksIHJlc3VsdDsKICAgICAgICBpZiAoaGFzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCkgewogICAgICAgICAgICB2YXIgTmV3VGFyZ2V0ID0gX2dldF9wcm90b3R5cGVfb2YodGhpcykuY29uc3RydWN0b3I7CiAgICAgICAgICAgIHJlc3VsdCA9IFJlZmxlY3QuY29uc3RydWN0KFN1cGVyLCBhcmd1bWVudHMsIE5ld1RhcmdldCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcmVzdWx0ID0gU3VwZXIuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIF9wb3NzaWJsZV9jb25zdHJ1Y3Rvcl9yZXR1cm4odGhpcywgcmVzdWx0KTsKICAgIH07Cn0KZnVuY3Rpb24gX2NyZWF0ZV9mb3Jfb2ZfaXRlcmF0b3JfaGVscGVyX2xvb3NlKG8sIGFsbG93QXJyYXlMaWtlKSB7CiAgICB2YXIgaXQgPSB0eXBlb2YgU3ltYm9sICE9PSAidW5kZWZpbmVkIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl0gfHwgb1siQEBpdGVyYXRvciJdOwogICAgaWYgKGl0KSByZXR1cm4gKGl0ID0gaXQuY2FsbChvKSkubmV4dC5iaW5kKGl0KTsKICAgIC8vIEZhbGxiYWNrIGZvciBlbmdpbmVzIHdpdGhvdXQgc3ltYm9sIHN1cHBvcnQKICAgIGlmIChBcnJheS5pc0FycmF5KG8pIHx8IChpdCA9IF91bnN1cHBvcnRlZF9pdGVyYWJsZV90b19hcnJheShvKSkgfHwgYWxsb3dBcnJheUxpa2UgJiYgbyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSB7CiAgICAgICAgaWYgKGl0KSBvID0gaXQ7CiAgICAgICAgdmFyIGkgPSAwOwogICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKGkgPj0gby5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIHJldHVybiB7IGRvbmU6IHRydWUgfTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4geyBkb25lOiBmYWxzZSwgdmFsdWU6IG9baSsrXSB9OwogICAgICAgIH07CiAgICB9CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICJJbnZhbGlkIGF0dGVtcHQgdG8gaXRlcmF0ZSBub24taXRlcmFibGUgaW5zdGFuY2UuXFxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIKICAgICk7Cn0KZnVuY3Rpb24gX3RzX2RlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKSB7CiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkOwogICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSAib2JqZWN0IiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gImZ1bmN0aW9uIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpOwogICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjsKICAgIHJldHVybiBjID4gMyAmJiByICYmIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgciksIHI7Cn1mdW5jdGlvbiBfdHNfZ2VuZXJhdG9yKHRoaXNBcmcsIGJvZHkpIHsKICAgIHZhciBmLCB5LCB0LCBnLCBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24gKCkgeyBpZiAodFswXSAmIDEpIHRocm93IHRbMV07IHJldHVybiB0WzFdOyB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9OwogICAgcmV0dXJuIGcgPSB7IG5leHQ6IHZlcmIoMCksICJ0aHJvdyI6IHZlcmIoMSksICJyZXR1cm4iOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgKGdbU3ltYm9sLml0ZXJhdG9yXSA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0pLCBnOwogICAgZnVuY3Rpb24gdmVyYihuKSB7IHJldHVybiBmdW5jdGlvbiAodikgeyByZXR1cm4gc3RlcChbbiwgdl0pOyB9OyB9CiAgICBmdW5jdGlvbiBzdGVwKG9wKSB7CiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoIkdlbmVyYXRvciBpcyBhbHJlYWR5IGV4ZWN1dGluZy4iKTsKICAgICAgICB3aGlsZSAoXykgdHJ5IHsKICAgICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0gb3BbMF0gJiAyID8geVsicmV0dXJuIl0gOiBvcFswXSA/IHlbInRocm93Il0gfHwgKCh0ID0geVsicmV0dXJuIl0pICYmIHQuY2FsbCh5KSwgMCkgOiB5Lm5leHQpICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0OwogICAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gW29wWzBdICYgMiwgdC52YWx1ZV07CiAgICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHsKICAgICAgICAgICAgICAgIGNhc2UgMDogY2FzZSAxOiB0ID0gb3A7IGJyZWFrOwogICAgICAgICAgICAgICAgY2FzZSA0OiBfLmxhYmVsKys7IHJldHVybiB7IHZhbHVlOiBvcFsxXSwgZG9uZTogZmFsc2UgfTsKICAgICAgICAgICAgICAgIGNhc2UgNTogXy5sYWJlbCsrOyB5ID0gb3BbMV07IG9wID0gWzBdOyBjb250aW51ZTsKICAgICAgICAgICAgICAgIGNhc2UgNzogb3AgPSBfLm9wcy5wb3AoKTsgXy50cnlzLnBvcCgpOyBjb250aW51ZTsKICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsgXyA9IDA7IGNvbnRpbnVlOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSAzICYmICghdCB8fCAob3BbMV0gPiB0WzBdICYmIG9wWzFdIDwgdFszXSkpKSB7IF8ubGFiZWwgPSBvcFsxXTsgYnJlYWs7IH0KICAgICAgICAgICAgICAgICAgICBpZiAob3BbMF0gPT09IDYgJiYgXy5sYWJlbCA8IHRbMV0pIHsgXy5sYWJlbCA9IHRbMV07IHQgPSBvcDsgYnJlYWs7IH0KICAgICAgICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgeyBfLmxhYmVsID0gdFsyXTsgXy5vcHMucHVzaChvcCk7IGJyZWFrOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKHRbMl0pIF8ub3BzLnBvcCgpOwogICAgICAgICAgICAgICAgICAgIF8udHJ5cy5wb3AoKTsgY29udGludWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgb3AgPSBib2R5LmNhbGwodGhpc0FyZywgXyk7CiAgICAgICAgfSBjYXRjaCAoZSkgeyBvcCA9IFs2LCBlXTsgeSA9IDA7IH0gZmluYWxseSB7IGYgPSB0ID0gMDsgfQogICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOyByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9OwogICAgfQp9ZnVuY3Rpb24gX3RzX21ldGFkYXRhKGssIHYpIHsKICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09ICJmdW5jdGlvbiIpIHJldHVybiBSZWZsZWN0Lm1ldGFkYXRhKGssIHYpOwp9ZnVuY3Rpb24gX3RzX3BhcmFtKHBhcmFtSW5kZXgsIGRlY29yYXRvcikgewogICAgcmV0dXJuIGZ1bmN0aW9uICh0YXJnZXQsIGtleSkgeyBkZWNvcmF0b3IodGFyZ2V0LCBrZXksIHBhcmFtSW5kZXgpOyB9Cn1mdW5jdGlvbiBfdHNfdmFsdWVzKG8pIHsKICAgIHZhciBzID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuaXRlcmF0b3IsIG0gPSBzICYmIG9bc10sIGkgPSAwOwogICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7CiAgICBpZiAobyAmJiB0eXBlb2Ygby5sZW5ndGggPT09ICJudW1iZXIiKSByZXR1cm4gewogICAgICAgIG5leHQ6IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDsKICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9OwogICAgICAgIH0KICAgIH07CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKHMgPyAiT2JqZWN0IGlzIG5vdCBpdGVyYWJsZS4iIDogIlN5bWJvbC5pdGVyYXRvciBpcyBub3QgZGVmaW5lZC4iKTsKfWZ1bmN0aW9uIF90c19hZGRfZGlzcG9zYWJsZV9yZXNvdXJjZShlbnYsIHZhbHVlLCBhc3luYykgewogICAgaWYgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB2b2lkIDApIHsKICAgICAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAib2JqZWN0IiAmJiB0eXBlb2YgdmFsdWUgIT09ICJmdW5jdGlvbiIpIHRocm93IG5ldyBUeXBlRXJyb3IoIk9iamVjdCBleHBlY3RlZC4iKTsKICAgICAgICB2YXIgZGlzcG9zZSwgaW5uZXI7CiAgICAgICAgaWYgKGFzeW5jKSB7CiAgICAgICAgICAgIGlmICghU3ltYm9sLmFzeW5jRGlzcG9zZSkgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3ltYm9sLmFzeW5jRGlzcG9zZSBpcyBub3QgZGVmaW5lZC4iKTsKICAgICAgICAgICAgZGlzcG9zZSA9IHZhbHVlW1N5bWJvbC5hc3luY0Rpc3Bvc2VdOwogICAgICAgIH0KICAgICAgICBpZiAoZGlzcG9zZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgICAgIGlmICghU3ltYm9sLmRpc3Bvc2UpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5kaXNwb3NlIGlzIG5vdCBkZWZpbmVkLiIpOwogICAgICAgICAgICBkaXNwb3NlID0gdmFsdWVbU3ltYm9sLmRpc3Bvc2VdOwogICAgICAgICAgICBpZiAoYXN5bmMpIGlubmVyID0gZGlzcG9zZTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiBkaXNwb3NlICE9PSAiZnVuY3Rpb24iKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3Qgbm90IGRpc3Bvc2FibGUuIik7CiAgICAgICAgaWYgKGlubmVyKSBkaXNwb3NlID0gZnVuY3Rpb24gKCkgeyB0cnkgeyBpbm5lci5jYWxsKHRoaXMpOyB9IGNhdGNoIChlKSB7IHJldHVybiBQcm9taXNlLnJlamVjdChlKTsgfSB9OwogICAgICAgIGVudi5zdGFjay5wdXNoKHsgdmFsdWU6IHZhbHVlLCBkaXNwb3NlOiBkaXNwb3NlLCBhc3luYzogYXN5bmMgfSk7CiAgICB9CiAgICBlbHNlIGlmIChhc3luYykgewogICAgICAgIGVudi5zdGFjay5wdXNoKHsgYXN5bmM6IHRydWUgfSk7CiAgICB9CiAgICByZXR1cm4gdmFsdWU7Cn1mdW5jdGlvbiBfdHNfZGlzcG9zZV9yZXNvdXJjZXMoZW52KSB7CiAgICB2YXIgX1N1cHByZXNzZWRFcnJvciA9IHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09ICJmdW5jdGlvbiIgPyBTdXBwcmVzc2VkRXJyb3IgOiBmdW5jdGlvbiAoZXJyb3IsIHN1cHByZXNzZWQsIG1lc3NhZ2UpIHsKICAgICAgICB2YXIgZSA9IG5ldyBFcnJvcihtZXNzYWdlKTsKICAgICAgICByZXR1cm4gZS5uYW1lID0gIlN1cHByZXNzZWRFcnJvciIsIGUuZXJyb3IgPSBlcnJvciwgZS5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZCwgZTsKICAgIH07CgoKICAgIHJldHVybiAoX3RzX2Rpc3Bvc2VfcmVzb3VyY2VzID0gZnVuY3Rpb24gX3RzX2Rpc3Bvc2VfcmVzb3VyY2VzKGVudikgewogICAgICAgIGZ1bmN0aW9uIGZhaWwoZSkgewogICAgICAgICAgICBlbnYuZXJyb3IgPSBlbnYuaGFzRXJyb3IgPyBuZXcgX1N1cHByZXNzZWRFcnJvcihlLCBlbnYuZXJyb3IsICJBbiBlcnJvciB3YXMgc3VwcHJlc3NlZCBkdXJpbmcgZGlzcG9zYWwuIikgOiBlOwogICAgICAgICAgICBlbnYuaGFzRXJyb3IgPSB0cnVlOwogICAgICAgIH0KICAgICAgICB2YXIgciwgcyA9IDA7CiAgICAgICAgZnVuY3Rpb24gbmV4dCgpIHsKICAgICAgICAgICAgd2hpbGUgKHIgPSBlbnYuc3RhY2sucG9wKCkpIHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFyLmFzeW5jICYmIHMgPT09IDEpIHJldHVybiBzID0gMCwgZW52LnN0YWNrLnB1c2gociksIFByb21pc2UucmVzb2x2ZSgpLnRoZW4obmV4dCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHIuZGlzcG9zZSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgcmVzdWx0ID0gci5kaXNwb3NlLmNhbGwoci52YWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyLmFzeW5jKSByZXR1cm4gcyB8PSAyLCBQcm9taXNlLnJlc29sdmUocmVzdWx0KS50aGVuKG5leHQsIGZ1bmN0aW9uIChlKSB7IGZhaWwoZSk7IHJldHVybiBuZXh0KCk7IH0pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHMgfD0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgZmFpbChlKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAocyA9PT0gMSkgcmV0dXJuIGVudi5oYXNFcnJvciA/IFByb21pc2UucmVqZWN0KGVudi5lcnJvcikgOiBQcm9taXNlLnJlc29sdmUoKTsKICAgICAgICAgICAgaWYgKGVudi5oYXNFcnJvcikgdGhyb3cgZW52LmVycm9yOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbmV4dCgpOwogICAgfSkoZW52KTsKfS8qIEBtaW5WZXJzaW9uIDcuMjAuMCAqLwoKLyoqCiAgRW51bXMgYXJlIHVzZWQgaW4gdGhpcyBmaWxlLCBidXQgbm90IGFzc2lnbmVkIHRvIHZhcnMgdG8gYXZvaWQgbm9uLWhvaXN0YWJsZSB2YWx1ZXMKCiAgQ09OU1RSVUNUT1IgPSAwOwogIFBVQkxJQyA9IDE7CiAgUFJJVkFURSA9IDI7CgogIEZJRUxEID0gMDsKICBBQ0NFU1NPUiA9IDE7CiAgTUVUSE9EID0gMjsKICBHRVRURVIgPSAzOwogIFNFVFRFUiA9IDQ7CgogIFNUQVRJQyA9IDU7CgogIENMQVNTID0gMTA7IC8vIG9ubHkgdXNlZCBpbiBhc3NlcnRWYWxpZFJldHVyblZhbHVlCiovCgpmdW5jdGlvbiBhcHBseURlY3MyMjAzUkZhY3RvcnkoKSB7CiAgICBmdW5jdGlvbiBjcmVhdGVBZGRJbml0aWFsaXplck1ldGhvZChpbml0aWFsaXplcnMsIGRlY29yYXRvckZpbmlzaGVkUmVmKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIGFkZEluaXRpYWxpemVyKGluaXRpYWxpemVyKSB7CiAgICAgICAgICAgIGFzc2VydE5vdEZpbmlzaGVkKGRlY29yYXRvckZpbmlzaGVkUmVmLCAiYWRkSW5pdGlhbGl6ZXIiKTsKICAgICAgICAgICAgYXNzZXJ0Q2FsbGFibGUoaW5pdGlhbGl6ZXIsICJBbiBpbml0aWFsaXplciIpOwogICAgICAgICAgICBpbml0aWFsaXplcnMucHVzaChpbml0aWFsaXplcik7CiAgICAgICAgfTsKICAgIH0KCiAgICBmdW5jdGlvbiBtZW1iZXJEZWMoCiAgICAgICAgZGVjLAogICAgICAgIG5hbWUsCiAgICAgICAgZGVzYywKICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAga2luZCwKICAgICAgICBpc1N0YXRpYywKICAgICAgICBpc1ByaXZhdGUsCiAgICAgICAgbWV0YWRhdGEsCiAgICAgICAgdmFsdWUKICAgICkgewogICAgICAgIHZhciBraW5kU3RyOwoKICAgICAgICBzd2l0Y2ggKGtpbmQpIHsKICAgICAgICAgICAgY2FzZSAxIC8qIEFDQ0VTU09SICovOgogICAgICAgICAgICAgICAga2luZFN0ciA9ICJhY2Nlc3NvciI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAyIC8qIE1FVEhPRCAqLzoKICAgICAgICAgICAgICAgIGtpbmRTdHIgPSAibWV0aG9kIjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDMgLyogR0VUVEVSICovOgogICAgICAgICAgICAgICAga2luZFN0ciA9ICJnZXR0ZXIiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNCAvKiBTRVRURVIgKi86CiAgICAgICAgICAgICAgICBraW5kU3RyID0gInNldHRlciI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIGtpbmRTdHIgPSAiZmllbGQiOwogICAgICAgIH0KCiAgICAgICAgdmFyIGN0eCA9IHsKICAgICAgICAgICAga2luZDoga2luZFN0ciwKICAgICAgICAgICAgbmFtZTogaXNQcml2YXRlID8gIiMiICsgbmFtZSA6IG5hbWUsCiAgICAgICAgICAgIHN0YXRpYzogaXNTdGF0aWMsCiAgICAgICAgICAgIHByaXZhdGU6IGlzUHJpdmF0ZSwKICAgICAgICAgICAgbWV0YWRhdGE6IG1ldGFkYXRhLAogICAgICAgIH07CgogICAgICAgIHZhciBkZWNvcmF0b3JGaW5pc2hlZFJlZiA9IHsgdjogZmFsc2UgfTsKCiAgICAgICAgY3R4LmFkZEluaXRpYWxpemVyID0gY3JlYXRlQWRkSW5pdGlhbGl6ZXJNZXRob2QoCiAgICAgICAgICAgIGluaXRpYWxpemVycywKICAgICAgICAgICAgZGVjb3JhdG9yRmluaXNoZWRSZWYKICAgICAgICApOwoKICAgICAgICB2YXIgZ2V0LCBzZXQ7CiAgICAgICAgaWYgKGtpbmQgPT09IDAgLyogRklFTEQgKi8pIHsKICAgICAgICAgICAgaWYgKGlzUHJpdmF0ZSkgewogICAgICAgICAgICAgICAgZ2V0ID0gZGVzYy5nZXQ7CiAgICAgICAgICAgICAgICBzZXQgPSBkZXNjLnNldDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGdldCA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpc1tuYW1lXTsKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICBzZXQgPSBmdW5jdGlvbiAodikgewogICAgICAgICAgICAgICAgICAgIHRoaXNbbmFtZV0gPSB2OwogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMiAvKiBNRVRIT0QgKi8pIHsKICAgICAgICAgICAgZ2V0ID0gZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGRlc2MudmFsdWU7CiAgICAgICAgICAgIH07CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgLy8gcmVwbGFjZSB3aXRoIHZhbHVlcyB0aGF0IHdpbGwgZ28gdGhyb3VnaCB0aGUgZmluYWwgZ2V0dGVyIGFuZCBzZXR0ZXIKICAgICAgICAgICAgaWYgKGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8gfHwga2luZCA9PT0gMyAvKiBHRVRURVIgKi8pIHsKICAgICAgICAgICAgICAgIGdldCA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZGVzYy5nZXQuY2FsbCh0aGlzKTsKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovIHx8IGtpbmQgPT09IDQgLyogU0VUVEVSICovKSB7CiAgICAgICAgICAgICAgICBzZXQgPSBmdW5jdGlvbiAodikgewogICAgICAgICAgICAgICAgICAgIGRlc2Muc2V0LmNhbGwodGhpcywgdik7CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGN0eC5hY2Nlc3MgPQogICAgICAgICAgICBnZXQgJiYgc2V0ID8geyBnZXQ6IGdldCwgc2V0OiBzZXQgfSA6IGdldCA/IHsgZ2V0OiBnZXQgfSA6IHsgc2V0OiBzZXQgfTsKCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgcmV0dXJuIGRlYyh2YWx1ZSwgY3R4KTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICBkZWNvcmF0b3JGaW5pc2hlZFJlZi52ID0gdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gYXNzZXJ0Tm90RmluaXNoZWQoZGVjb3JhdG9yRmluaXNoZWRSZWYsIGZuTmFtZSkgewogICAgICAgIGlmIChkZWNvcmF0b3JGaW5pc2hlZFJlZi52KSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigKICAgICAgICAgICAgICAgICJhdHRlbXB0ZWQgdG8gY2FsbCAiICsgZm5OYW1lICsgIiBhZnRlciBkZWNvcmF0aW9uIHdhcyBmaW5pc2hlZCIKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gYXNzZXJ0Q2FsbGFibGUoZm4sIGhpbnQpIHsKICAgICAgICBpZiAodHlwZW9mIGZuICE9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoaGludCArICIgbXVzdCBiZSBhIGZ1bmN0aW9uIik7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGFzc2VydFZhbGlkUmV0dXJuVmFsdWUoa2luZCwgdmFsdWUpIHsKICAgICAgICB2YXIgdHlwZSA9IHR5cGVvZiB2YWx1ZTsKCiAgICAgICAgaWYgKGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8pIHsKICAgICAgICAgICAgaWYgKHR5cGUgIT09ICJvYmplY3QiIHx8IHZhbHVlID09PSBudWxsKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAgICAgICAgICJhY2Nlc3NvciBkZWNvcmF0b3JzIG11c3QgcmV0dXJuIGFuIG9iamVjdCB3aXRoIGdldCwgc2V0LCBvciBpbml0IHByb3BlcnRpZXMgb3Igdm9pZCAwIgogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodmFsdWUuZ2V0ICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgIGFzc2VydENhbGxhYmxlKHZhbHVlLmdldCwgImFjY2Vzc29yLmdldCIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh2YWx1ZS5zZXQgIT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgYXNzZXJ0Q2FsbGFibGUodmFsdWUuc2V0LCAiYWNjZXNzb3Iuc2V0Iik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHZhbHVlLmluaXQgIT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgYXNzZXJ0Q2FsbGFibGUodmFsdWUuaW5pdCwgImFjY2Vzc29yLmluaXQiKTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAodHlwZSAhPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB2YXIgaGludDsKICAgICAgICAgICAgaWYgKGtpbmQgPT09IDAgLyogRklFTEQgKi8pIHsKICAgICAgICAgICAgICAgIGhpbnQgPSAiZmllbGQiOwogICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDEwIC8qIENMQVNTICovKSB7CiAgICAgICAgICAgICAgICBoaW50ID0gImNsYXNzIjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGhpbnQgPSAibWV0aG9kIjsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAgICAgaGludCArICIgZGVjb3JhdG9ycyBtdXN0IHJldHVybiBhIGZ1bmN0aW9uIG9yIHZvaWQgMCIKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gYXBwbHlNZW1iZXJEZWMoCiAgICAgICAgcmV0LAogICAgICAgIGJhc2UsCiAgICAgICAgZGVjSW5mbywKICAgICAgICBuYW1lLAogICAgICAgIGtpbmQsCiAgICAgICAgaXNTdGF0aWMsCiAgICAgICAgaXNQcml2YXRlLAogICAgICAgIGluaXRpYWxpemVycywKICAgICAgICBtZXRhZGF0YQogICAgKSB7CiAgICAgICAgdmFyIGRlY3MgPSBkZWNJbmZvWzBdOwoKICAgICAgICB2YXIgZGVzYywgaW5pdCwgdmFsdWU7CgogICAgICAgIGlmIChpc1ByaXZhdGUpIHsKICAgICAgICAgICAgaWYgKGtpbmQgPT09IDAgLyogRklFTEQgKi8gfHwga2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLykgewogICAgICAgICAgICAgICAgZGVzYyA9IHsKICAgICAgICAgICAgICAgICAgICBnZXQ6IGRlY0luZm9bM10sCiAgICAgICAgICAgICAgICAgICAgc2V0OiBkZWNJbmZvWzRdLAogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAzIC8qIEdFVFRFUiAqLykgewogICAgICAgICAgICAgICAgZGVzYyA9IHsKICAgICAgICAgICAgICAgICAgICBnZXQ6IGRlY0luZm9bM10sCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDQgLyogU0VUVEVSICovKSB7CiAgICAgICAgICAgICAgICBkZXNjID0gewogICAgICAgICAgICAgICAgICAgIHNldDogZGVjSW5mb1szXSwKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBkZXNjID0gewogICAgICAgICAgICAgICAgICAgIHZhbHVlOiBkZWNJbmZvWzNdLAogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoa2luZCAhPT0gMCAvKiBGSUVMRCAqLykgewogICAgICAgICAgICBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihiYXNlLCBuYW1lKTsKICAgICAgICB9CgogICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgIHZhbHVlID0gewogICAgICAgICAgICAgICAgZ2V0OiBkZXNjLmdldCwKICAgICAgICAgICAgICAgIHNldDogZGVzYy5zZXQsCiAgICAgICAgICAgIH07CiAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAyIC8qIE1FVEhPRCAqLykgewogICAgICAgICAgICB2YWx1ZSA9IGRlc2MudmFsdWU7CiAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAzIC8qIEdFVFRFUiAqLykgewogICAgICAgICAgICB2YWx1ZSA9IGRlc2MuZ2V0OwogICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gNCAvKiBTRVRURVIgKi8pIHsKICAgICAgICAgICAgdmFsdWUgPSBkZXNjLnNldDsKICAgICAgICB9CgogICAgICAgIHZhciBuZXdWYWx1ZSwgZ2V0LCBzZXQ7CgogICAgICAgIGlmICh0eXBlb2YgZGVjcyA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBuZXdWYWx1ZSA9IG1lbWJlckRlYygKICAgICAgICAgICAgICAgIGRlY3MsCiAgICAgICAgICAgICAgICBuYW1lLAogICAgICAgICAgICAgICAgZGVzYywKICAgICAgICAgICAgICAgIGluaXRpYWxpemVycywKICAgICAgICAgICAgICAgIGtpbmQsCiAgICAgICAgICAgICAgICBpc1N0YXRpYywKICAgICAgICAgICAgICAgIGlzUHJpdmF0ZSwKICAgICAgICAgICAgICAgIG1ldGFkYXRhLAogICAgICAgICAgICAgICAgdmFsdWUKICAgICAgICAgICAgKTsKCiAgICAgICAgICAgIGlmIChuZXdWYWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICBhc3NlcnRWYWxpZFJldHVyblZhbHVlKGtpbmQsIG5ld1ZhbHVlKTsKCiAgICAgICAgICAgICAgICBpZiAoa2luZCA9PT0gMCAvKiBGSUVMRCAqLykgewogICAgICAgICAgICAgICAgICAgIGluaXQgPSBuZXdWYWx1ZTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLykgewogICAgICAgICAgICAgICAgICAgIGluaXQgPSBuZXdWYWx1ZS5pbml0OwogICAgICAgICAgICAgICAgICAgIGdldCA9IG5ld1ZhbHVlLmdldCB8fCB2YWx1ZS5nZXQ7CiAgICAgICAgICAgICAgICAgICAgc2V0ID0gbmV3VmFsdWUuc2V0IHx8IHZhbHVlLnNldDsKCiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB7IGdldDogZ2V0LCBzZXQ6IHNldCB9OwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IG5ld1ZhbHVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgZm9yICh2YXIgaSA9IGRlY3MubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKICAgICAgICAgICAgICAgIHZhciBkZWMgPSBkZWNzW2ldOwoKICAgICAgICAgICAgICAgIG5ld1ZhbHVlID0gbWVtYmVyRGVjKAogICAgICAgICAgICAgICAgICAgIGRlYywKICAgICAgICAgICAgICAgICAgICBuYW1lLAogICAgICAgICAgICAgICAgICAgIGRlc2MsCiAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzLAogICAgICAgICAgICAgICAgICAgIGtpbmQsCiAgICAgICAgICAgICAgICAgICAgaXNTdGF0aWMsCiAgICAgICAgICAgICAgICAgICAgaXNQcml2YXRlLAogICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhLAogICAgICAgICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgIGlmIChuZXdWYWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0VmFsaWRSZXR1cm5WYWx1ZShraW5kLCBuZXdWYWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgdmFyIG5ld0luaXQ7CgogICAgICAgICAgICAgICAgICAgIGlmIChraW5kID09PSAwIC8qIEZJRUxEICovKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG5ld0luaXQgPSBuZXdWYWx1ZTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8pIHsKICAgICAgICAgICAgICAgICAgICAgICAgbmV3SW5pdCA9IG5ld1ZhbHVlLmluaXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIGdldCA9IG5ld1ZhbHVlLmdldCB8fCB2YWx1ZS5nZXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIHNldCA9IG5ld1ZhbHVlLnNldCB8fCB2YWx1ZS5zZXQ7CgogICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHsgZ2V0OiBnZXQsIHNldDogc2V0IH07CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBuZXdWYWx1ZTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmIChuZXdJbml0ICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGluaXQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdCA9IG5ld0luaXQ7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGluaXQgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXQgPSBbaW5pdCwgbmV3SW5pdF07CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0LnB1c2gobmV3SW5pdCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmIChraW5kID09PSAwIC8qIEZJRUxEICovIHx8IGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8pIHsKICAgICAgICAgICAgaWYgKGluaXQgPT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgLy8gSWYgdGhlIGluaXRpYWxpemVyIHdhcyB2b2lkIDAsIHN1YiBpbiBhIGR1bW15IGluaXRpYWxpemVyCiAgICAgICAgICAgICAgICBpbml0ID0gZnVuY3Rpb24gKGluc3RhbmNlLCBpbml0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGluaXQ7CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbml0ICE9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgICB2YXIgb3duSW5pdGlhbGl6ZXJzID0gaW5pdDsKCiAgICAgICAgICAgICAgICBpbml0ID0gZnVuY3Rpb24gKGluc3RhbmNlLCBpbml0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gaW5pdDsKCiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBvd25Jbml0aWFsaXplcnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBvd25Jbml0aWFsaXplcnNbaV0uY2FsbChpbnN0YW5jZSwgdmFsdWUpOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciBvcmlnaW5hbEluaXRpYWxpemVyID0gaW5pdDsKCiAgICAgICAgICAgICAgICBpbml0ID0gZnVuY3Rpb24gKGluc3RhbmNlLCBpbml0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsSW5pdGlhbGl6ZXIuY2FsbChpbnN0YW5jZSwgaW5pdCk7CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXQucHVzaChpbml0KTsKICAgICAgICB9CgogICAgICAgIGlmIChraW5kICE9PSAwIC8qIEZJRUxEICovKSB7CiAgICAgICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgICAgICBkZXNjLmdldCA9IHZhbHVlLmdldDsKICAgICAgICAgICAgICAgIGRlc2Muc2V0ID0gdmFsdWUuc2V0OwogICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDIgLyogTUVUSE9EICovKSB7CiAgICAgICAgICAgICAgICBkZXNjLnZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMyAvKiBHRVRURVIgKi8pIHsKICAgICAgICAgICAgICAgIGRlc2MuZ2V0ID0gdmFsdWU7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gNCAvKiBTRVRURVIgKi8pIHsKICAgICAgICAgICAgICAgIGRlc2Muc2V0ID0gdmFsdWU7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChpc1ByaXZhdGUpIHsKICAgICAgICAgICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0LnB1c2goZnVuY3Rpb24gKGluc3RhbmNlLCBhcmdzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZS5nZXQuY2FsbChpbnN0YW5jZSwgYXJncyk7CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgcmV0LnB1c2goZnVuY3Rpb24gKGluc3RhbmNlLCBhcmdzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZS5zZXQuY2FsbChpbnN0YW5jZSwgYXJncyk7CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDIgLyogTUVUSE9EICovKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0LnB1c2godmFsdWUpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICByZXQucHVzaChmdW5jdGlvbiAoaW5zdGFuY2UsIGFyZ3MpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbHVlLmNhbGwoaW5zdGFuY2UsIGFyZ3MpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGJhc2UsIG5hbWUsIGRlc2MpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGFwcGx5TWVtYmVyRGVjcyhDbGFzcywgZGVjSW5mb3MsIG1ldGFkYXRhKSB7CiAgICAgICAgdmFyIHJldCA9IFtdOwogICAgICAgIHZhciBwcm90b0luaXRpYWxpemVyczsKICAgICAgICB2YXIgc3RhdGljSW5pdGlhbGl6ZXJzOwoKICAgICAgICB2YXIgZXhpc3RpbmdQcm90b05vbkZpZWxkcyA9IG5ldyBNYXAoKTsKICAgICAgICB2YXIgZXhpc3RpbmdTdGF0aWNOb25GaWVsZHMgPSBuZXcgTWFwKCk7CgogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZGVjSW5mb3MubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgdmFyIGRlY0luZm8gPSBkZWNJbmZvc1tpXTsKCiAgICAgICAgICAgIC8vIHNraXAgY29tcHV0ZWQgcHJvcGVydHkgbmFtZXMKICAgICAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGRlY0luZm8pKSBjb250aW51ZTsKCiAgICAgICAgICAgIHZhciBraW5kID0gZGVjSW5mb1sxXTsKICAgICAgICAgICAgdmFyIG5hbWUgPSBkZWNJbmZvWzJdOwogICAgICAgICAgICB2YXIgaXNQcml2YXRlID0gZGVjSW5mby5sZW5ndGggPiAzOwoKICAgICAgICAgICAgdmFyIGlzU3RhdGljID0ga2luZCA+PSA1OyAvKiBTVEFUSUMgKi8KICAgICAgICAgICAgdmFyIGJhc2U7CiAgICAgICAgICAgIHZhciBpbml0aWFsaXplcnM7CgogICAgICAgICAgICBpZiAoaXNTdGF0aWMpIHsKICAgICAgICAgICAgICAgIGJhc2UgPSBDbGFzczsKICAgICAgICAgICAgICAgIGtpbmQgPSBraW5kIC0gNSAvKiBTVEFUSUMgKi87CiAgICAgICAgICAgICAgICAvLyBpbml0aWFsaXplIHN0YXRpY0luaXRpYWxpemVycyB3aGVuIHdlIHNlZSBhIG5vbi1maWVsZCBzdGF0aWMgbWVtYmVyCiAgICAgICAgICAgICAgICBzdGF0aWNJbml0aWFsaXplcnMgPSBzdGF0aWNJbml0aWFsaXplcnMgfHwgW107CiAgICAgICAgICAgICAgICBpbml0aWFsaXplcnMgPSBzdGF0aWNJbml0aWFsaXplcnM7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBiYXNlID0gQ2xhc3MucHJvdG90eXBlOwogICAgICAgICAgICAgICAgLy8gaW5pdGlhbGl6ZSBwcm90b0luaXRpYWxpemVycyB3aGVuIHdlIHNlZSBhIG5vbi1maWVsZCBtZW1iZXIKICAgICAgICAgICAgICAgIHByb3RvSW5pdGlhbGl6ZXJzID0gcHJvdG9Jbml0aWFsaXplcnMgfHwgW107CiAgICAgICAgICAgICAgICBpbml0aWFsaXplcnMgPSBwcm90b0luaXRpYWxpemVyczsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGtpbmQgIT09IDAgLyogRklFTEQgKi8gJiYgIWlzUHJpdmF0ZSkgewogICAgICAgICAgICAgICAgdmFyIGV4aXN0aW5nTm9uRmllbGRzID0gaXNTdGF0aWMKICAgICAgICAgICAgICAgICAgICA/IGV4aXN0aW5nU3RhdGljTm9uRmllbGRzCiAgICAgICAgICAgICAgICAgICAgOiBleGlzdGluZ1Byb3RvTm9uRmllbGRzOwoKICAgICAgICAgICAgICAgIHZhciBleGlzdGluZ0tpbmQgPSBleGlzdGluZ05vbkZpZWxkcy5nZXQobmFtZSkgfHwgMDsKCiAgICAgICAgICAgICAgICBpZiAoCiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdLaW5kID09PSB0cnVlIHx8CiAgICAgICAgICAgICAgICAgICAgKGV4aXN0aW5nS2luZCA9PT0gMyAvKiBHRVRURVIgKi8gJiYga2luZCAhPT0gNCkgLyogU0VUVEVSICovIHx8CiAgICAgICAgICAgICAgICAgICAgKGV4aXN0aW5nS2luZCA9PT0gNCAvKiBTRVRURVIgKi8gJiYga2luZCAhPT0gMykgLyogR0VUVEVSICovCiAgICAgICAgICAgICAgICApIHsKICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgICAgICJBdHRlbXB0ZWQgdG8gZGVjb3JhdGUgYSBwdWJsaWMgbWV0aG9kL2FjY2Vzc29yIHRoYXQgaGFzIHRoZSBzYW1lIG5hbWUgYXMgYSBwcmV2aW91c2x5IGRlY29yYXRlZCBwdWJsaWMgbWV0aG9kL2FjY2Vzc29yLiBUaGlzIGlzIG5vdCBjdXJyZW50bHkgc3VwcG9ydGVkIGJ5IHRoZSBkZWNvcmF0b3JzIHBsdWdpbi4gUHJvcGVydHkgbmFtZSB3YXM6ICIgKwogICAgICAgICAgICAgICAgICAgICAgICBuYW1lCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWV4aXN0aW5nS2luZCAmJiBraW5kID4gMiAvKiBNRVRIT0QgKi8pIHsKICAgICAgICAgICAgICAgICAgICBleGlzdGluZ05vbkZpZWxkcy5zZXQobmFtZSwga2luZCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nTm9uRmllbGRzLnNldChuYW1lLCB0cnVlKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgYXBwbHlNZW1iZXJEZWMoCiAgICAgICAgICAgICAgICByZXQsCiAgICAgICAgICAgICAgICBiYXNlLAogICAgICAgICAgICAgICAgZGVjSW5mbywKICAgICAgICAgICAgICAgIG5hbWUsCiAgICAgICAgICAgICAgICBraW5kLAogICAgICAgICAgICAgICAgaXNTdGF0aWMsCiAgICAgICAgICAgICAgICBpc1ByaXZhdGUsCiAgICAgICAgICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAgICAgICAgICBtZXRhZGF0YQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgcHVzaEluaXRpYWxpemVycyhyZXQsIHByb3RvSW5pdGlhbGl6ZXJzKTsKICAgICAgICBwdXNoSW5pdGlhbGl6ZXJzKHJldCwgc3RhdGljSW5pdGlhbGl6ZXJzKTsKICAgICAgICByZXR1cm4gcmV0OwogICAgfQoKICAgIGZ1bmN0aW9uIHB1c2hJbml0aWFsaXplcnMocmV0LCBpbml0aWFsaXplcnMpIHsKICAgICAgICBpZiAoaW5pdGlhbGl6ZXJzKSB7CiAgICAgICAgICAgIHJldC5wdXNoKGZ1bmN0aW9uIChpbnN0YW5jZSkgewogICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBpbml0aWFsaXplcnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICBpbml0aWFsaXplcnNbaV0uY2FsbChpbnN0YW5jZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gaW5zdGFuY2U7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBhcHBseUNsYXNzRGVjcyh0YXJnZXRDbGFzcywgY2xhc3NEZWNzLCBtZXRhZGF0YSkgewogICAgICAgIGlmIChjbGFzc0RlY3MubGVuZ3RoID4gMCkgewogICAgICAgICAgICB2YXIgaW5pdGlhbGl6ZXJzID0gW107CiAgICAgICAgICAgIHZhciBuZXdDbGFzcyA9IHRhcmdldENsYXNzOwogICAgICAgICAgICB2YXIgbmFtZSA9IHRhcmdldENsYXNzLm5hbWU7CgogICAgICAgICAgICBmb3IgKHZhciBpID0gY2xhc3NEZWNzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgICB2YXIgZGVjb3JhdG9yRmluaXNoZWRSZWYgPSB7IHY6IGZhbHNlIH07CgogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICB2YXIgbmV4dE5ld0NsYXNzID0gY2xhc3NEZWNzW2ldKG5ld0NsYXNzLCB7CiAgICAgICAgICAgICAgICAgICAgICAgIGtpbmQ6ICJjbGFzcyIsCiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIGFkZEluaXRpYWxpemVyOiBjcmVhdGVBZGRJbml0aWFsaXplck1ldGhvZCgKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXRpYWxpemVycywKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29yYXRvckZpbmlzaGVkUmVmCiAgICAgICAgICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhLAogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgICAgICBkZWNvcmF0b3JGaW5pc2hlZFJlZi52ID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAobmV4dE5ld0NsYXNzICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBhc3NlcnRWYWxpZFJldHVyblZhbHVlKDEwIC8qIENMQVNTICovLCBuZXh0TmV3Q2xhc3MpOwogICAgICAgICAgICAgICAgICAgIG5ld0NsYXNzID0gbmV4dE5ld0NsYXNzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gWwogICAgICAgICAgICAgICAgZGVmaW5lTWV0YWRhdGEobmV3Q2xhc3MsIG1ldGFkYXRhKSwKICAgICAgICAgICAgICAgIGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGluaXRpYWxpemVycy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsaXplcnNbaV0uY2FsbChuZXdDbGFzcyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgXTsKICAgICAgICB9CiAgICAgICAgLy8gVGhlIHRyYW5zZm9ybWVyIHdpbGwgbm90IGVtaXQgYXNzaWdubWVudCB3aGVuIHRoZXJlIGFyZSBubyBjbGFzcyBkZWNvcmF0b3JzLAogICAgICAgIC8vIHNvIHdlIGRvbid0IGhhdmUgdG8gcmV0dXJuIGFuIGVtcHR5IGFycmF5IGhlcmUuCiAgICB9CgogICAgZnVuY3Rpb24gZGVmaW5lTWV0YWRhdGEoQ2xhc3MsIG1ldGFkYXRhKSB7CiAgICAgICAgcmV0dXJuIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSgKICAgICAgICAgICAgQ2xhc3MsCiAgICAgICAgICAgIFN5bWJvbC5tZXRhZGF0YSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wubWV0YWRhdGEiKSwKICAgICAgICAgICAgeyBjb25maWd1cmFibGU6IHRydWUsIGVudW1lcmFibGU6IHRydWUsIHZhbHVlOiBtZXRhZGF0YSB9CiAgICAgICAgKTsKICAgIH0KCiAgICAvKioKICAgIEJhc2ljIHVzYWdlOgogIAogICAgYXBwbHlEZWNzKAogICAgICBDbGFzcywKICAgICAgWwogICAgICAgIC8vIG1lbWJlciBkZWNvcmF0b3JzCiAgICAgICAgWwogICAgICAgICAgZGVjLCAgICAgICAgICAgICAgICAvLyBkZWMgb3IgYXJyYXkgb2YgZGVjcwogICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAvLyBraW5kIG9mIHZhbHVlIGJlaW5nIGRlY29yYXRlZAogICAgICAgICAgJ3Byb3AnLCAgICAgICAgICAgICAvLyBuYW1lIG9mIHB1YmxpYyBwcm9wIG9uIGNsYXNzIGNvbnRhaW5pbmcgdGhlIHZhbHVlIGJlaW5nIGRlY29yYXRlZCwKICAgICAgICAgICcjcCcsICAgICAgICAgICAgICAgLy8gdGhlIG5hbWUgb2YgdGhlIHByaXZhdGUgcHJvcGVydHkgKGlmIGlzIHByaXZhdGUsIHZvaWQgMCBvdGhlcndpc2UpLAogICAgICAgIF0KICAgICAgXSwKICAgICAgWwogICAgICAgIC8vIGNsYXNzIGRlY29yYXRvcnMKICAgICAgICBkZWMxLCBkZWMyCiAgICAgIF0KICAgICkKICAgIGBgYAogIAogICAgRnVsbHkgdHJhbnNwaWxlZCBleGFtcGxlOgogIAogICAgYGBganMKICAgIEBkZWMKICAgIGNsYXNzIENsYXNzIHsKICAgICAgQGRlYwogICAgICBhID0gMTIzOwogIAogICAgICBAZGVjCiAgICAgICNhID0gMTIzOwogIAogICAgICBAZGVjCiAgICAgIEBkZWMyCiAgICAgIGFjY2Vzc29yIGIgPSAxMjM7CiAgCiAgICAgIEBkZWMKICAgICAgYWNjZXNzb3IgI2IgPSAxMjM7CiAgCiAgICAgIEBkZWMKICAgICAgYygpIHsgY29uc29sZS5sb2coJ2MnKTsgfQogIAogICAgICBAZGVjCiAgICAgICNjKCkgeyBjb25zb2xlLmxvZygncHJpdkMnKTsgfQogIAogICAgICBAZGVjCiAgICAgIGdldCBkKCkgeyBjb25zb2xlLmxvZygnZCcpOyB9CiAgCiAgICAgIEBkZWMKICAgICAgZ2V0ICNkKCkgeyBjb25zb2xlLmxvZygncHJpdkQnKTsgfQogIAogICAgICBAZGVjCiAgICAgIHNldCBlKHYpIHsgY29uc29sZS5sb2coJ2UnKTsgfQogIAogICAgICBAZGVjCiAgICAgIHNldCAjZSh2KSB7IGNvbnNvbGUubG9nKCdwcml2RScpOyB9CiAgICB9CiAgCiAgCiAgICAvLyBiZWNvbWVzCiAgICBsZXQgaW5pdGlhbGl6ZUluc3RhbmNlOwogICAgbGV0IGluaXRpYWxpemVDbGFzczsKICAKICAgIGxldCBpbml0QTsKICAgIGxldCBpbml0UHJpdkE7CiAgCiAgICBsZXQgaW5pdEI7CiAgICBsZXQgaW5pdFByaXZCLCBnZXRQcml2Qiwgc2V0UHJpdkI7CiAgCiAgICBsZXQgcHJpdkM7CiAgICBsZXQgcHJpdkQ7CiAgICBsZXQgcHJpdkU7CiAgCiAgICBsZXQgQ2xhc3M7CiAgICBjbGFzcyBfQ2xhc3MgewogICAgICBzdGF0aWMgewogICAgICAgIGxldCByZXQgPSBhcHBseURlY3MoCiAgICAgICAgICB0aGlzLAogICAgICAgICAgWwogICAgICAgICAgICBbZGVjLCAwLCAnYSddLAogICAgICAgICAgICBbZGVjLCAwLCAnYScsIChpKSA9PiBpLiNhLCAoaSwgdikgPT4gaS4jYSA9IHZdLAogICAgICAgICAgICBbW2RlYywgZGVjMl0sIDEsICdiJ10sCiAgICAgICAgICAgIFtkZWMsIDEsICdiJywgKGkpID0+IGkuI3ByaXZCRGF0YSwgKGksIHYpID0+IGkuI3ByaXZCRGF0YSA9IHZdLAogICAgICAgICAgICBbZGVjLCAyLCAnYyddLAogICAgICAgICAgICBbZGVjLCAyLCAnYycsICgpID0+IGNvbnNvbGUubG9nKCdwcml2QycpXSwKICAgICAgICAgICAgW2RlYywgMywgJ2QnXSwKICAgICAgICAgICAgW2RlYywgMywgJ2QnLCAoKSA9PiBjb25zb2xlLmxvZygncHJpdkQnKV0sCiAgICAgICAgICAgIFtkZWMsIDQsICdlJ10sCiAgICAgICAgICAgIFtkZWMsIDQsICdlJywgKCkgPT4gY29uc29sZS5sb2coJ3ByaXZFJyldLAogICAgICAgICAgXSwKICAgICAgICAgIFsKICAgICAgICAgICAgZGVjCiAgICAgICAgICBdCiAgICAgICAgKQogIAogICAgICAgIGluaXRBID0gcmV0WzBdOwogIAogICAgICAgIGluaXRQcml2QSA9IHJldFsxXTsKICAKICAgICAgICBpbml0QiA9IHJldFsyXTsKICAKICAgICAgICBpbml0UHJpdkIgPSByZXRbM107CiAgICAgICAgZ2V0UHJpdkIgPSByZXRbNF07CiAgICAgICAgc2V0UHJpdkIgPSByZXRbNV07CiAgCiAgICAgICAgcHJpdkMgPSByZXRbNl07CiAgCiAgICAgICAgcHJpdkQgPSByZXRbN107CiAgCiAgICAgICAgcHJpdkUgPSByZXRbOF07CiAgCiAgICAgICAgaW5pdGlhbGl6ZUluc3RhbmNlID0gcmV0WzldOwogIAogICAgICAgIENsYXNzID0gcmV0WzEwXQogIAogICAgICAgIGluaXRpYWxpemVDbGFzcyA9IHJldFsxMV07CiAgICAgIH0KICAKICAgICAgYSA9IChpbml0aWFsaXplSW5zdGFuY2UodGhpcyksIGluaXRBKHRoaXMsIDEyMykpOwogIAogICAgICAjYSA9IGluaXRQcml2QSh0aGlzLCAxMjMpOwogIAogICAgICAjYkRhdGEgPSBpbml0Qih0aGlzLCAxMjMpOwogICAgICBnZXQgYigpIHsgcmV0dXJuIHRoaXMuI2JEYXRhIH0KICAgICAgc2V0IGIodikgeyB0aGlzLiNiRGF0YSA9IHYgfQogIAogICAgICAjcHJpdkJEYXRhID0gaW5pdFByaXZCKHRoaXMsIDEyMyk7CiAgICAgIGdldCAjYigpIHsgcmV0dXJuIGdldFByaXZCKHRoaXMpOyB9CiAgICAgIHNldCAjYih2KSB7IHNldFByaXZCKHRoaXMsIHYpOyB9CiAgCiAgICAgIGMoKSB7IGNvbnNvbGUubG9nKCdjJyk7IH0KICAKICAgICAgI2MoLi4uYXJncykgeyByZXR1cm4gcHJpdkModGhpcywgLi4uYXJncykgfQogIAogICAgICBnZXQgZCgpIHsgY29uc29sZS5sb2coJ2QnKTsgfQogIAogICAgICBnZXQgI2QoKSB7IHJldHVybiBwcml2RCh0aGlzKTsgfQogIAogICAgICBzZXQgZSh2KSB7IGNvbnNvbGUubG9nKCdlJyk7IH0KICAKICAgICAgc2V0ICNlKHYpIHsgcHJpdkUodGhpcywgdik7IH0KICAgIH0KICAKICAgIGluaXRpYWxpemVDbGFzcyhDbGFzcyk7CiAgICovCgogICAgcmV0dXJuIGZ1bmN0aW9uIGFwcGx5RGVjczIyMDNSKHRhcmdldENsYXNzLCBtZW1iZXJEZWNzLCBjbGFzc0RlY3MsIHBhcmVudENsYXNzKSB7CiAgICAgICAgaWYgKHBhcmVudENsYXNzICE9PSB2b2lkIDApIHsKICAgICAgICAgICAgdmFyIHBhcmVudE1ldGFkYXRhID0KICAgICAgICAgICAgICAgIHBhcmVudENsYXNzW1N5bWJvbC5tZXRhZGF0YSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wubWV0YWRhdGEiKV07CiAgICAgICAgfQogICAgICAgIHZhciBtZXRhZGF0YSA9IE9iamVjdC5jcmVhdGUoCiAgICAgICAgICAgIHBhcmVudE1ldGFkYXRhID09PSB2b2lkIDAgPyBudWxsIDogcGFyZW50TWV0YWRhdGEKICAgICAgICApOwogICAgICAgIHZhciBlID0gYXBwbHlNZW1iZXJEZWNzKHRhcmdldENsYXNzLCBtZW1iZXJEZWNzLCBtZXRhZGF0YSk7CiAgICAgICAgaWYgKCFjbGFzc0RlY3MubGVuZ3RoKSBkZWZpbmVNZXRhZGF0YSh0YXJnZXRDbGFzcywgbWV0YWRhdGEpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIGU6IGUsCiAgICAgICAgICAgIC8vIExhemlseSBhcHBseSBjbGFzcyBkZWNvcmF0aW9ucyBzbyB0aGF0IG1lbWJlciBpbml0IGxvY2FscyBjYW4gYmUgcHJvcGVybHkgYm91bmQuCiAgICAgICAgICAgIGdldCBjKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGFwcGx5Q2xhc3NEZWNzKHRhcmdldENsYXNzLCBjbGFzc0RlY3MsIG1ldGFkYXRhKTsKICAgICAgICAgICAgfSwKICAgICAgICB9OwogICAgfTsKfQoKZnVuY3Rpb24gX2FwcGx5X2RlY3NfMjIwM19yKHRhcmdldENsYXNzLCBtZW1iZXJEZWNzLCBjbGFzc0RlY3MsIHBhcmVudENsYXNzKSB7CiAgICByZXR1cm4gKF9hcHBseV9kZWNzXzIyMDNfciA9IGFwcGx5RGVjczIyMDNSRmFjdG9yeSgpKSgKICAgICAgICB0YXJnZXRDbGFzcywKICAgICAgICBtZW1iZXJEZWNzLAogICAgICAgIGNsYXNzRGVjcywKICAgICAgICBwYXJlbnRDbGFzcwogICAgKTsKfQpmdW5jdGlvbiBfaWRlbnRpdHkoeCkgeyByZXR1cm4geDsgfQovKiBAbWluVmVyc2lvbiA3LjIyLjAgKi8KZnVuY3Rpb24gZGlzcG9zZV9TdXBwcmVzc2VkRXJyb3Ioc3VwcHJlc3NlZCwgZXJyb3IpIHsKICAgIGlmICh0eXBlb2YgU3VwcHJlc3NlZEVycm9yICE9PSAidW5kZWZpbmVkIikgewogICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZgogICAgICAgIGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yID0gU3VwcHJlc3NlZEVycm9yOwogICAgfSBlbHNlIHsKICAgICAgICBkaXNwb3NlX1N1cHByZXNzZWRFcnJvciA9IGZ1bmN0aW9uIFN1cHByZXNzZWRFcnJvcihzdXBwcmVzc2VkLCBlcnJvcikgewogICAgICAgICAgICB0aGlzLnN1cHByZXNzZWQgPSBzdXBwcmVzc2VkOwogICAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3I7CiAgICAgICAgICAgIHRoaXMuc3RhY2sgPSBuZXcgRXJyb3IoKS5zdGFjazsKICAgICAgICB9OwogICAgICAgIGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlLCB7CiAgICAgICAgICAgIGNvbnN0cnVjdG9yOiB7CiAgICAgICAgICAgICAgICB2YWx1ZTogZGlzcG9zZV9TdXBwcmVzc2VkRXJyb3IsCiAgICAgICAgICAgICAgICB3cml0YWJsZTogdHJ1ZSwKICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSwKICAgICAgICAgICAgfSwKICAgICAgICB9KTsKICAgIH0KICAgIHJldHVybiBuZXcgZGlzcG9zZV9TdXBwcmVzc2VkRXJyb3Ioc3VwcHJlc3NlZCwgZXJyb3IpOwp9CgpmdW5jdGlvbiBfZGlzcG9zZShzdGFjaywgZXJyb3IsIGhhc0Vycm9yKSB7CiAgICBmdW5jdGlvbiBuZXh0KCkgewogICAgICAgIHdoaWxlIChzdGFjay5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICB2YXIgciA9IHN0YWNrLnBvcCgpOwogICAgICAgICAgICAgICAgdmFyIHAgPSByLmQuY2FsbChyLnYpOwogICAgICAgICAgICAgICAgaWYgKHIuYSkgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwKS50aGVuKG5leHQsIGVycik7CiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgIHJldHVybiBlcnIoZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaWYgKGhhc0Vycm9yKSB0aHJvdyBlcnJvcjsKICAgIH0KCiAgICBmdW5jdGlvbiBlcnIoZSkgewogICAgICAgIGVycm9yID0gaGFzRXJyb3IgPyBuZXcgZGlzcG9zZV9TdXBwcmVzc2VkRXJyb3IoZSwgZXJyb3IpIDogZTsKICAgICAgICBoYXNFcnJvciA9IHRydWU7CgogICAgICAgIHJldHVybiBuZXh0KCk7CiAgICB9CgogICAgcmV0dXJuIG5leHQoKTsKfWZ1bmN0aW9uIF91c2luZyhzdGFjaywgdmFsdWUsIGlzQXdhaXQpIHsKICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdm9pZCAwKSByZXR1cm4gdmFsdWU7CiAgICBpZiAoT2JqZWN0KHZhbHVlKSAhPT0gdmFsdWUpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJ1c2luZyBkZWNsYXJhdGlvbnMgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIG9iamVjdHMsIGZ1bmN0aW9ucywgbnVsbCwgb3IgdW5kZWZpbmVkLiIpOwogICAgfQogICAgLy8gY29yZS1qcy1wdXJlIHVzZXMgU3ltYm9sLmZvciBmb3IgcG9seWZpbGxpbmcgd2VsbC1rbm93biBzeW1ib2xzCiAgICBpZiAoaXNBd2FpdCkgewogICAgICAgIHZhciBkaXNwb3NlID0KICAgICAgICAgICAgdmFsdWVbU3ltYm9sLmFzeW5jRGlzcG9zZSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wuYXN5bmNEaXNwb3NlIildOwogICAgfQogICAgaWYgKGRpc3Bvc2UgPT09IG51bGwgfHwgZGlzcG9zZSA9PT0gdm9pZCAwKSB7CiAgICAgICAgZGlzcG9zZSA9IHZhbHVlW1N5bWJvbC5kaXNwb3NlIHx8IFN5bWJvbC5mb3IoIlN5bWJvbC5kaXNwb3NlIildOwogICAgfQogICAgaWYgKHR5cGVvZiBkaXNwb3NlICE9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcihgUHJvcGVydHkgW1N5bWJvbC5kaXNwb3NlXSBpcyBub3QgYSBmdW5jdGlvbi5gKTsKICAgIH0KICAgIHN0YWNrLnB1c2goeyB2OiB2YWx1ZSwgZDogZGlzcG9zZSwgYTogaXNBd2FpdCB9KTsKICAgIHJldHVybiB2YWx1ZTsKfWZ1bmN0aW9uIF91c2luZ19jdHgoKSB7CiAgICB2YXIgX2Rpc3Bvc2VTdXBwcmVzc2VkRXJyb3IgPQogICAgICAgIHR5cGVvZiBTdXBwcmVzc2VkRXJyb3IgPT09ICJmdW5jdGlvbiIKICAgICAgICAgICAgPyAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWYKICAgICAgICAgICAgU3VwcHJlc3NlZEVycm9yCiAgICAgICAgICAgIDogKGZ1bmN0aW9uIChlcnJvciwgc3VwcHJlc3NlZCkgewogICAgICAgICAgICAgICAgdmFyIGVyciA9IG5ldyBFcnJvcigpOwogICAgICAgICAgICAgICAgZXJyLm5hbWUgPSAiU3VwcHJlc3NlZEVycm9yIjsKICAgICAgICAgICAgICAgIGVyci5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZDsKICAgICAgICAgICAgICAgIGVyci5lcnJvciA9IGVycm9yOwogICAgICAgICAgICAgICAgcmV0dXJuIGVycjsKICAgICAgICAgICAgfSksCiAgICAgICAgZW1wdHkgPSB7fSwKICAgICAgICBzdGFjayA9IFtdOwogICAgZnVuY3Rpb24gdXNpbmcoaXNBd2FpdCwgdmFsdWUpIHsKICAgICAgICBpZiAodmFsdWUgIT0gbnVsbCkgewogICAgICAgICAgICBpZiAoT2JqZWN0KHZhbHVlKSAhPT0gdmFsdWUpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgInVzaW5nIGRlY2xhcmF0aW9ucyBjYW4gb25seSBiZSB1c2VkIHdpdGggb2JqZWN0cywgZnVuY3Rpb25zLCBudWxsLCBvciB1bmRlZmluZWQuIiwKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLy8gY29yZS1qcy1wdXJlIHVzZXMgU3ltYm9sLmZvciBmb3IgcG9seWZpbGxpbmcgd2VsbC1rbm93biBzeW1ib2xzCiAgICAgICAgICAgIGlmIChpc0F3YWl0KSB7CiAgICAgICAgICAgICAgICB2YXIgZGlzcG9zZSA9CiAgICAgICAgICAgICAgICAgICAgdmFsdWVbU3ltYm9sLmFzeW5jRGlzcG9zZSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wuYXN5bmNEaXNwb3NlIildOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChkaXNwb3NlID09IG51bGwpIHsKICAgICAgICAgICAgICAgIGRpc3Bvc2UgPSB2YWx1ZVtTeW1ib2wuZGlzcG9zZSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wuZGlzcG9zZSIpXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodHlwZW9mIGRpc3Bvc2UgIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYFByb3BlcnR5IFtTeW1ib2wuZGlzcG9zZV0gaXMgbm90IGEgZnVuY3Rpb24uYCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3RhY2sucHVzaCh7IHY6IHZhbHVlLCBkOiBkaXNwb3NlLCBhOiBpc0F3YWl0IH0pOwogICAgICAgIH0gZWxzZSBpZiAoaXNBd2FpdCkgewogICAgICAgICAgICAvLyBwcm92aWRlIHRoZSBudWxsaXNoIGB2YWx1ZWAgYXMgYGRgIGZvciBtaW5pZmljYXRpb24gZ2FpbgogICAgICAgICAgICBzdGFjay5wdXNoKHsgZDogdmFsdWUsIGE6IGlzQXdhaXQgfSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2YWx1ZTsKICAgIH0KICAgIHJldHVybiB7CiAgICAgICAgLy8gZXJyb3IKICAgICAgICBlOiBlbXB0eSwKICAgICAgICAvLyB1c2luZwogICAgICAgIHU6IHVzaW5nLmJpbmQobnVsbCwgZmFsc2UpLAogICAgICAgIC8vIGF3YWl0IHVzaW5nCiAgICAgICAgYTogdXNpbmcuYmluZChudWxsLCB0cnVlKSwKICAgICAgICAvLyBkaXNwb3NlCiAgICAgICAgZDogZnVuY3Rpb24gKCkgewogICAgICAgICAgICB2YXIgZXJyb3IgPSB0aGlzLmU7CgogICAgICAgICAgICBmdW5jdGlvbiBuZXh0KCkgewogICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11c2UtYmVmb3JlLWRlZmluZQogICAgICAgICAgICAgICAgd2hpbGUgKChyZXNvdXJjZSA9IHN0YWNrLnBvcCgpKSkgewogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciByZXNvdXJjZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3Bvc2FsUmVzdWx0ID0gcmVzb3VyY2UuZCAmJiByZXNvdXJjZS5kLmNhbGwocmVzb3VyY2Uudik7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNvdXJjZS5hKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGRpc3Bvc2FsUmVzdWx0KS50aGVuKG5leHQsIGVycik7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlcnIoZSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGVycm9yICE9PSBlbXB0eSkgdGhyb3cgZXJyb3I7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGVycihlKSB7CiAgICAgICAgICAgICAgICBlcnJvciA9IGVycm9yICE9PSBlbXB0eSA/IG5ldyBfZGlzcG9zZVN1cHByZXNzZWRFcnJvcihlcnJvciwgZSkgOiBlOwoKICAgICAgICAgICAgICAgIHJldHVybiBuZXh0KCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybiBuZXh0KCk7CiAgICAgICAgfSwKICAgIH07Cn1jYWxsZWQgZXhwZWN0IG9uIABa1hcAEQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX2FzdC0xLjAuMC9zcmMvcGF0LnJzdNYXAFwAAAANAAAAFAAAAA8FAAAEAAAABAAAADcBAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX2Jhc2UtMS4wLjEvc3JjL2ZpeGVyLnJzAADw1hcAagAAAMQAAABAAAAA8NYXAGoAAACxAgAAFgAAAPDWFwBqAAAAFgQAACAAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9pbmRleG1hcC0yLjQuMC9zcmMvbWFwL2NvcmUucnMAAACM1xcAXQAAAC0AAAAjAAAAaW5kZXggbm90IGZvdW5kAIzXFwBdAAAAOgAAAAoAAACM1xcAXQAAAFMBAAA9AAAAjNcXAF0AAAA7AgAANAAAAIzXFwBdAAAAPAIAADQAAACM1xcAXQAAALoBAAAsAAAAjNcXAF0AAACwAQAAIgAAAGFzc2VydGlvbiBmYWlsZWQ6IGluZGljZXMuY2FwYWNpdHkoKSAtIGluZGljZXMubGVuKCkgPj0gZW50cmllcy5sZW4oKS91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2luZGV4bWFwLTIuNC4wL3NyYy9tYXAvY29yZS9yYXcucnMAALHYFwBhAAAADgAAAAUAAACM1xcAXQAAACUAAAAPAAAAAAAAAAwAAAAEAAAAEAUAABEFAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX2Jhc2UtMS4wLjEvc3JjL3Jlc29sdmVyL21vZC5ycwAAAEjZFwBxAAAAnQYAADYAAAASBQAAKAAAAAgAAAA1AQAAQ2xhc3NGblZhclVzaW5nVHNJbnRlcmZhY2VUc1R5cGVBbGlhc1RzRW51bVRzTW9kdWxlaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZGVzdHJ1Y3R1cmluZyBwYXR0ZXJuIGluc2lkZSBUc1BhcmFtZXRlclByb3BlcnR5AAAAD9oXAFoAAAC82xcAdAAAAD4BAAAhAAAAvNsXAHQAAAA8AwAADQAAAOAoGAAqAAAAvNsXAHQAAADLAwAAHQAAALzbFwB0AAAApgMAAEAAAABfa2V5vNsXAHQAAAA2BAAAUQAAALzbFwB0AAAAQAQAACcAAABfY3JlYXRlUmVxdWlyZV9fcmVxdWlyZWV4cG9ydHNjcmVhdGVSZXF1aXJldXJsAAC82xcAdAAAACwFAAAaAAAAvNsXAHQAAAAuBQAAGgAAAE9ubHkgYW1iaWVudCBtb2R1bGVzIGNhbiB1c2UgcXVvdGVkIG5hbWVzLgAAvNsXAHQAAADYBQAADgAAAG5vdCBpbXBsZW1lbnRlZABQ4BcAXgAAAE4MAAA+AAAAUOAXAF4AAABaDAAAPAAAAFDgFwBeAAAAOwwAACYAAAATBQAABAAAAAQAAAA3AQAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdHJhbnNmb3Jtc190eXBlc2NyaXB0LTEuMC4xL3NyYy90cmFuc2Zvcm0ucnO82xcAdAAAALoCAAA4AAAASW1wb3J0IGRlY2xhcmF0aW9ucyBpbiBhIG5hbWVzcGFjZSBjYW5ub3QgcmVmZXJlbmNlIGEgbW9kdWxlLkVTTS1zdHlsZSBtb2R1bGUgZGVjbGFyYXRpb25zIGFyZSBub3QgcGVybWl0dGVkIGluIGEgbmFtZXNwYWNlLkltcG9ydCBhc3NpZ25tZW50IGNhbm5vdCBiZSB1c2VkIHdoZW4gdGFyZ2V0aW5nIEVDTUFTY3JpcHQgbW9kdWxlcy4gQ29uc2lkZXIgdXNpbmcgYGltcG9ydCAqIGFzIG5zIGZyb20gIm1vZCJgLCBgaW1wb3J0IHthfSBmcm9tICJtb2QiYCwgYGltcG9ydCBkIGZyb20gIm1vZCJgLCBvciBhbm90aGVyIG1vZHVsZSBmb3JtYXQgaW5zdGVhZC5FeHBvcnQgYXNzaWdubWVudCBjYW5ub3QgYmUgdXNlZCB3aGVuIHRhcmdldGluZyBFQ01BU2NyaXB0IG1vZHVsZXMuIENvbnNpZGVyIHVzaW5nIGBleHBvcnQgZGVmYXVsdGAgb3IgYW5vdGhlciBtb2R1bGUgZm9ybWF0IGluc3RlYWQuL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdHJhbnNmb3Jtc190eXBlc2NyaXB0LTEuMC4xL3NyYy90eXBlc2NyaXB0LnJzAALeFwB1AAAAQQAAACwAAAAXAwAADAAAAAQAAABXAwAAWAMAAB8EAEGovd8AC5YDAQAAABsDAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX3R5cGVzY3JpcHQtMS4wLjEvc3JjL3RzX2VudW0ucnNOYU4AAACw3hcAcgAAAK8AAAASAAAAsN4XAHIAAADZAAAAGgAAABQFAAAEAAAABAAAADcBAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX3R5cGVzY3JpcHQtMS4wLjEvc3JjL3N0cmlwX3R5cGUucnMAAABY3xcAdQAAAMkAAAApAAAAc3RydWN0IENvbmZpZ2VudW0gVHNJbXBvcnRFeHBvcnRBc3NpZ25Db25maWdlbnVtIEltcG9ydHNOb3RVc2VkQXNWYWx1ZXMAHgQAAAwAAAAEAAAAVwMAAFgDAAAfBABByMDfAAv6AwEAAAAbAwAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdXRpbHMtMS4wLjEvc3JjL2xpYi5yc18AAQAAAAAAAACu4BcAAQAAAHN1cGVyXwAAwOAXAAYAAACu4BcAAQAAAGNhcGFjaXR5IG92ZXJmbG93AAAA2OAXABEAAAAvcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L2FsbG9jL3NyYy92ZWMvc3BlY19mcm9tX2l0ZXJfbmVzdGVkLnJzAAD04BcAXgAAADkAAAASAAAA3CsYAEwAAACxDQAADQAAANwrGABMAAAADgoAACQAAAAAAAAADAAAAAQAAAAVBQAAFgUAAGNvbnN0cnVjdG9yIHNob3VsZCBoYXZlIGEgYm9keS91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3V0aWxzLTEuMC4xL3NyYy9jb25zdHJ1Y3Rvci5yc7bhFwBmAAAADgAAACAAAAAeBAAADAAAAAQAAABXAwAANQQAAB8EAEHMxN8AC/oHAQAAABsDAADoExgAAQAAAOgTGAABAAAA6BMYAAEAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9taWV0dGUtNy4yLjAvc3JjL2hhbmRsZXJzL2dyYXBoaWNhbC5ycyAgANHiFwACAAAA6BMYAAEAAAABAAAAAAAAAHIzGAABAAAA0eIXAAIAAAABAAAAAAAAAAEAAAAAAAAA6BMYAAEAAAAgICAA0eIXAAIAAAAU4xcAAwAAACAgaGVscDogKOMXAAgAAAAgICAg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AGkAAAA2AAAAHAAAAKgQGABpAAAAUQAAABoAAACoEBgAaQAAAGsAAAAVAAAAqBAYAGkAAAA9AAAAGgAAAKgQGABpAAAARQAAABoAAACoEBgAaQAAAE0AAAAaAAAAaWRlbnRpZmllciwgc3RyaW5nIGxpdGVyYWwsIG51bWVyaWMgbGl0ZXJhbCBvciBbIGZvciB0aGUgY29tcHV0ZWQga2V5AAAAqBAYAGkAAAByAAAAFgAAABcDAAAMAAAABAAAAFcDAAA7BAAAHwQAQbim4AAL6g4BAAAAGwMAAElkZW50QXJyYXlSZXN0T2JqZWN0QXNzaWduSW52YWxpZEV4cHIAAAAAAAAABAAAAAAAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9jb2RlZ2VuLTEuMC4wL3NyYy90ZXh0X3dyaXRlci9iYXNpY19pbXBsLnJzOyB2YXJsZXRjb25zdCshfnR5cGVvZnZvaWRkZWxldGU9Kz0tPSo9Lz0lPTw8PT4+PT4+Pj18PV49Jj0qKj0mJj18fD0/Pz09PSE9PT09IT09PDw9Pj49PDw+Pj4+PiovJXxeJnx8JiZpbmluc3RhbmNlb2YqKj8/KystLS91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL2l0ZXIucnN1bmV4cGVjdGVkIHJlZ2V4IGZpbmQgZXJyb3I6IAp0byBoYW5kbGUgZmluZCBlcnJvcnMsIHVzZSAndHJ5JyBvciAnc2VhcmNoJyBtZXRob2RzAAAAxxQYAB0AAADkFBgANQAAAGMUGABkAAAAfgEAABkAAABAHxgAZAAAAF4CAAAcAAAAQB8YAGQAAABrAgAAMgAAAAIAAABAHxgAZAAAAAEDAAAVAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvc2VhcmNoLnJzaW52YWxpZCBzcGFuICBmb3IgaGF5c3RhY2sgb2YgbGVuZ3RoIADWFRgADQAAAOMVGAAYAAAAcBUYAGYAAACqAQAACQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX2NvZGVnZW4tMS4wLjAvc3JjL3R5cGVzY3JpcHQucnNhcyg9Pnt9ZGVjbGFyZW5hbWVzcGFjZWAAHBYYAGcAAAC2AQAAIgAAACR7AAAcFhgAZwAAALkBAAAhAAAAZXh0ZW5kcz86ZW51bS4uLltdaW5mZXJyZWFkb25seW91dGltcG9ydC5tb2R1bGVnbG9iYWxhbnl1bmtub3dubnVtYmVyb2JqZWN0Ym9vbGVhbmJpZ2ludHN0cmluZ3N5bWJvbHVuZGVmaW5lZG51bGxuZXZlcmludHJpbnNpY2tleW9mdW5pcXVlaW50ZXJmYWNlZXhwb3J0c2F0aXNmaWVzYXNzZXJ0c2lzdHlwZWFic3RyYWN0bmV3Z2V0c2V0cmVxdWlyZQB0ExgAcwAAAHEAAAAaAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfY29kZWdlbi0xLjAuMC9zcmMvbGliLnJzmBcYAGAAAADiBwAALwAAAJgXGABgAAAA3AcAADAAAABzdXBlcmRlZmVyLGZyb213aXRoYXNzZXJ0YXNzZXJ0aW9uIGZhaWxlZDogbi5zcGVjaWZpZXJzLmxlbigpIDw9IDIAAJgXGABgAAAAaAEAABUAAAAjIQAAmBcYAGAAAABrDgAAEgAAAG4tMHiBGBgAAwAAADB4AACMGBgAAgAAAGZ1bmN0aW9uYXN5bmNpZmVsc2U8aW52YWxpZD51c2Ugc3RyaWN0PCEtLVx4M2MhLS0tLT4tLVx4M2UAAJgXGABgAAAAugcAACIAAACYFxgAYAAAAL0HAAAhAAAAZm9ydHJ5ZmluYWxseUA/LmF3YWl0YnJlYWtjbGFzc3Rocm93d2hpbGV5aWVsZG9mcmV0dXJuY2FzZWRlZmF1bHQAAACYFxgAYAAAAHgNAAAaAAAAmBcYAGAAAAB7DQAAOwAAAHN3aXRjaGNhdGNoI3B1YmxpY3Byb3RlY3RlZHByaXZhdGVhY2Nlc3NvcmNvbnRpbnVlZGVidWdnZXJkb2ltcGxlbWVudHNuZXcudGFyZ2V0aW1wb3J0Lm1ldGFub3QgaW1wbGVtZW50ZWQ6IGNvZGVnZW4gb2YgYGV4cG9ydCBkZWZhdWx0IGZyb20gJ2Zvbyc7YACzGRgAOAAAAJgXGABgAAAAtgEAABEAAACYFxgAYAAAAOACAAA0AAAASW5maW5pdHllY29uc3RydWN0b3KYFxgAYAAAAB0KAABIAAAAmBcYAGAAAAAeCgAAKAAAAJgXGABgAAAABggAAEwAAACYFxgAYAAAAAkIAAAnAAAAZmFsc2V0cnVlPC88Lz48PnVzaW5nLy8vKiovI19fUFVSRV9fFwMAAAwAAAAEAAAAVwMAAA0EAAAfBABBrLXgAAseAQAAABsDAAAXAwAADAAAAAQAAABXAwAAWAMAAB8EAEHUteAAC/0FAQAAABsDAABhIERpc3BsYXkgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IgdW5leHBlY3RlZGx5L3J1c3RjLzU1YTIyZDJhNjMzMzRlMGZhZmYwMjAyYjcyYTMxY2U4MzJiNTYxMjUvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzAAATGxgASwAAAG8KAAAOAAAAQAUAAAgAAAAEAAAAQQUAAEIFAAAEAAAABAAAAEMFAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZmFzdF90c19zdHJpcC0xLjAuMC9zcmMvbGliLnJzAAAARAUAAAgAAAAEAAAARQUAAEYFAABHBQAASAUAAEkFAABKBQAASwUAAEwFAABNBQAATgUAAE8FAABQBQAAUQUAAFIFAABmYWlsZWQgdG8gcGFyc2UAOBwYAA8AAACQGxgAYQAAAMQAAABJAAAAkBsYAGEAAAAJAQAAFQAAAJAbGABhAAAA3AAAACUAAACQGxgAYQAAAOsAAAAlAAAAkBsYAGEAAADvAAAAJQAAAJAbGABhAAAA8AAAACUAAACQGxgAYQAAAPQAAAAlAAAAkBsYAGEAAAD1AAAAJQAAAJAbGABhAAAA9gAAACUAAACQGxgAYQAAAPwAAAAlAAAAkBsYAGEAAAD+AAAAJQAAAJAbGABhAAAA/wAAACUAAACQGxgAYQAAAAABAAAlAAAAkBsYAGEAAABHAQAAMAAAAGdlbmVyYXRlZCBjb2RlIHdhcyBub3QgdXRmLThmYWlsZWQgdG8gd3JpdGUgc291cmNlIG1hcHNvdXJjZSBtYXAgd2FzIG5vdCB1dGY4AAAAkBsYAGEAAACAAQAAEgAAAJAbGABhAAAAjAEAABUAAACQGxgAYQAAAJgBAAAVAAAAkBsYAGEAAACmAQAAGQAAAJAbGABhAAAAsgEAABkAAAAPAEHou+AAC3HQHRgAkBsYAGEAAADWAQAAGQAAAJAbGABhAAAA4AEAAEAAAACQGxgAYQAAAOQBAAAkAAAAb3ZlcnJpZGUcHhgACAAAAJAbGABhAAAAGgIAADwAAACQGxgAYQAAAE8CAAAYAAAAc3RhdGljAAAAAAAAEABB8LzgAAvxJHRoaXOQGxgAYQAAAFEEAAAkAAAAc3RydWN0IE9wdGlvbnN2YXJpYW50IGlkZW50aWZpZXJlbnVtIE1vZGUvcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc3RhYmxlL3F1aWNrc29ydC5yc21pZCA+IGxlbgAAAAwfGAAJAAAArR4YAF8AAABMAAAAHwAAAK0eGABfAAAARgAAABcAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC9wb29sLnJzQB8YAGQAAAA9AgAAHAAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IE1vZHVsZSBpcyBoYW5kbGVkIGFib3ZlAAAAtB8YAEEAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItMS4wLjEvc3JjL3BhcnNlci9tb2QucnMAAAAgGABmAAAAsAAAADIAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItMS4wLjEvc3JjL3BhcnNlci9wYXQucnMAAHggGABmAAAAmgIAACoAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItMS4wLjEvc3JjL3BhcnNlci9leHByLnJzAPAgGABnAAAApwMAABoAAABTBQAAVAUAAFUFAABWBQAAVwUAAFgFAABZBQAAWgUAAFsFAABcBQAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfcGFyc2VyLTEuMC4xL3NyYy9wYXJzZXIvaW5wdXQucnOQIRgAaAAAAMcAAAArAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfcGFyc2VyLTEuMC4xL3NyYy9sZXhlci9zdGF0ZS5ycwAIIhgAZwAAAH8AAAAuAAAACCIYAGcAAACAAAAAOAAAAAgiGABnAAAAgQAAABkAAACQIRgAaAAAAK0BAAAnAAAAkCEYAGgAAACzAQAAIwAAADxlb2Y+UmVmQ2VsbHZhbHVlPGJvcnJvd2VkPgDRIhgACgAAAC9ydXN0Yy81NWEyMmQyYTYzMzM0ZTBmYWZmMDIwMmI3MmEzMWNlODMyYjU2MTI1L2xpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zdGFibGUvZHJpZnQucnMA5CIYAFsAAAD/AAAAGQAAAOQiGABbAAAA8gAAABIAAADkIhgAWwAAAM4AAAAkAAAA5CIYAFsAAADRAAAAJAAAAOQiGABbAAAAQAAAACIAAAAgICAgZXZhbEhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3eYIxgAHAAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2hhc2hicm93bi0wLjE0LjUvc3JjL3Jhdy9tb2QucnMAALwjGABeAAAAVgAAACgAAABkZXNjcmlwdGlvbigpIGlzIGRlcHJlY2F0ZWQ7IHVzZSBEaXNwbGF5XQUAAAwAAAAEAAAAXgUAAF0FAAAMAAAABAAAAKkCAABeBQAAVCQYAB4DAABfBQAAugIAAGAFAABFAAAASW9VdGY4QmFkSnNvblZscUxlZnRvdmVyVmxxTm9WYWx1ZXNWbHFPdmVyZmxvd0JhZFNlZ21lbnRTaXplQmFkU291cmNlUmVmZXJlbmNlQmFkTmFtZVJlZmVyZW5jZUluY29tcGF0aWJsZVNvdXJjZU1hcEludmFsaWREYXRhVXJsQ2Fubm90RmxhdHRlbkludmFsaWRSYW1CdW5kbGVNYWdpY0ludmFsaWRSYW1CdW5kbGVJbmRleEludmFsaWRSYW1CdW5kbGVFbnRyeU5vdEFSYW1CdW5kbGVJbnZhbGlkUmFuZ2VNYXBwaW5nSW5kZXhJbnZhbGlkQmFzZTY0AEAFAAAIAAAABAAAAGEFAABABQAACAAAAAQAAABBBQAAYQUAAJAlGABiBQAAYwUAAGQFAABlBQAARQAAAAAAAAAIAAAABAAAAGYFAAAAAAAACAAAAAQAAADYAgAAZgUAAMwlGAAeAwAAZwUAAGgFAAAeAwAARQAAAGkFAAAEAAAABAAAAGoFAABpBQAABAAAAAQAAABrBQAAagUAAAgmGABsBQAAbQUAALoCAABuBQAARQAAAAAAAAAEAAAABAAAAC0AAABVdGY4RXJyb3J2YWxpZF91cF90b2Vycm9yX2xlbkZyb21VdGY4RXJyb3JieXRlc2Vycm9yaW52YWxpZCB1dGYtODogY29ycnVwdCBjb250ZW50c2ludmFsaWQgdXRmLThvBQAAFAAAAAQAAABwBQAAbwUAABQAAAAEAAAAcQUAAHAFAAC0JhgAcgUAAHMFAAC6AgAAcgUAAEUAAAB0BQAAHAAAAAQAAAB1BQAAdAUAABwAAAAEAAAAdgUAAHUFAADwJhgAdwUAAHgFAAC6AgAAdwUAAEUAAAB5BQAAOAAAAAQAAAC+AgAAeQUAADgAAAAEAAAAvwIAAL4CAAAsJxgAwAIAAHoFAADCAgAAwAIAAMMCAAB7BQAAMAAAAAQAAAC+AgAAewUAADAAAAAEAAAAvwIAAL4CAABoJxgAwAIAAHwFAADCAgAAwAIAAMMCAABFcnJvcmNvbnRleHRzb3VyY2UAAEUDAAAUAAAABAAAAH0FAABFAwAAFAAAAAQAAACqAgAAfQUAALgnGAAeAwAAfgUAAH8FAAAeAwAARQAAAFRva2VuQW5kU3BhbnRva2VuaGFkX2xpbmVfYnJlYWtzcGFuAAAAAAAMAAAABAAAAIAFAACBBQAAY2Fubm90IGFjY2VzcyBhIHNjb3BlZCB0aHJlYWQgbG9jYWwgdmFyaWFibGUgd2l0aG91dCBjYWxsaW5nIGBzZXRgIGZpcnN0L3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc2NvcGVkLXRscy0xLjAuMS9zcmMvbGliLnJzAAB0KBgAWgAAAKgAAAAJAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogIGlzIGFscmVhZHkgcmVuYW1lZCB0byAsIGJ1dCBpdCdzIHJlbmFtZWQgYXMgAOAoGAAqAAAACikYABcAAAAhKRgAFgAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3RyYW5zZm9ybXNfYmFzZS0xLjAuMS9zcmMvcmVuYW1lL21vZC5ycwBQKRgAbwAAAM0AAAAZAAAARAUAAAgAAAAEAAAARQUAAEYFAABHBQAASAUAAEkFAABKBQAASwUAAEwFAABNBQAATgUAAE8FAABQBQAAUQUAAFIFAABUeXBlU2NyaXB0IGV4cG9ydCBhc3NpZ25tZW50IGlzIG5vdCBzdXBwb3J0ZWQgaW4gc3RyaXAtb25seSBtb2RlVHlwZVNjcmlwdCBpbXBvcnQgZXF1YWxzIGRlY2xhcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgaW4gc3RyaXAtb25seSBtb2RlVHlwZVNjcmlwdCBlbnVtIGlzIG5vdCBzdXBwb3J0ZWQgaW4gc3RyaXAtb25seSBtb2RlVHlwZVNjcmlwdCBuYW1lc3BhY2UgZGVjbGFyYXRpb24gaXMgbm90IHN1cHBvcnRlZCBpbiBzdHJpcC1vbmx5IG1vZGVUeXBlU2NyaXB0IHBhcmFtZXRlciBwcm9wZXJ0eSBpcyBub3Qgc3VwcG9ydGVkIGluIHN0cmlwLW9ubHkgbW9kZVRoZSBhbmdsZS1icmFja2V0IHN5bnRheCBmb3IgdHlwZSBhc3NlcnRpb25zLCBgPFQ+ZXhwcmAsIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdHlwZSBzdHJpcCBtb2RlLiBJbnN0ZWFkLCB1c2UgdGhlICdhcycgc3ludGF4OiBgZXhwciBhcyBUYC4vcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L2FsbG9jL3NyYy92ZWMvbW9kLnJz3CsYAEwAAACVBwAADQAAANwsGABaAAAAKwEAACkAAADcLBgAWgAAADoBAAAlAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdW5pY29kZS13aWR0aC0wLjEuMTMvc3JjL3RhYmxlcy5ycwAAAFgsGABhAAAAJwAAABkAAABYLBgAYQAAAC0AAAAdAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy9jb3JlLnJzAADcLBgAWgAAAAwBAAAeAAAA1DQYAGQAAADBAAAAKAAAANQ0GABkAAAAwwAAACUAAADUNBgAZAAAAMQAAAAvAAAALQAAANQ0GABkAAAAzgAAACUAAADUNBgAZAAAAM8AAAAvAAAAAAAAABwAAAAEAAAAggUAAIMFAACEBQAAhQUAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3RleHR3cmFwLTAuMTYuMS9zcmMvd29yZF9zZXBhcmF0b3JzLnJzAAAAuC0YAGUAAADcAAAAKAAAALgtGABlAAAA0gAAACwAAACGBQAALAAAAAQAAACHBQAAgwUAAIgFAACJBQAAuC0YAGUAAAAWAQAAHAAAALgtGABlAAAANQEAACgAAAC4LRgAZQAAAC4BAAAsAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc21hd2stMC4zLjIvc3JjL2xpYi5ycwAAAIwuGABVAAAAHgEAABsAAACMLhgAVQAAACIBAAAUAAAAjC4YAFUAAAAiAQAADQAAAIwuGABVAAAAIAEAABEAAACMLhgAVQAAACwBAAAJAAAAjC4YAFUAAAAnAQAAFwAAAIwuGABVAAAACAEAABwAAACMLhgAVQAAAAgBAAAvAAAAKGksIGopIG5vdCBhYm92ZSBkaWFnb25hbDogKCwgAABkLxgAHAAAAIAvGAACAAAA8MsYAAEAAACMLhgAVQAAAIYBAAAUAAAAKGksIGopIG91dCBvZiBib3VuZHM6ICgpLCBzaXplOiCsLxgAFwAAAIAvGAACAAAAwy8YAAkAAACMLhgAVQAAAIcBAAAZAAAAjC4YAFUAAACSAQAADAAAAIwuGABVAAAAkgEAACoAAACMLhgAVQAAAIgBAAATAAAAjC4YAFUAAAB1AQAAIQAAAIwuGABVAAAAdgEAABkAAACMLhgAVQAAAHkBAAAlAAAAjC4YAFUAAAB6AQAAGwAAAIwuGABVAAAAcwEAACEAAADoNRgAcQAAAEsBAAAgAAAA6DUYAHEAAABLAQAALAAAAOg1GABxAAAASwEAADIAAADoNRgAcQAAAFMBAAAYAAAAczQYAE8AAADIBQAAFAAAAHM0GABPAAAAyAUAACEAAABzNBgATwAAALwFAAAhAEHs4eAAC5UFAQAAAIoFAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAHM0GABPAAAATAQAACQAAAA8MhgAZQAAALkAAABGAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy93cmFwLnJzAABAMRgAWgAAABcBAAAYAAAAT3ZlcmZsb3dFcnJvcmludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGUvcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L2FsbG9jL3NyYy9ib3Jyb3cucnPhMRgASwAAABcBAAAlAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy93cmFwX2FsZ29yaXRobXMucnMAAAA8MhgAZQAAAHEBAAAaAAAAPDIYAGUAAABrAQAAIgAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3VuaWNvZGUtbGluZWJyZWFrLTAuMS41L3NyYy9saWIucnMAAADEMhgAYQAAAGEAAAAXAAAAxDIYAGEAAAA1AAAAGAAAAMQyGABhAAAAOQAAABoAAADEMhgAYQAAAD4AAAAFAAAATm9uZVNvbWUNCgoCAgICAgICAgIDAwEBAQBBk+fgAAsQAQAAAAAAAAACAgAAAAAAAgBB0ufgAAsBAgBB+OfgAAsBAQBBk+jgAAsBAQBB8+jgAAvRBy9ydXN0Yy81NWEyMmQyYTYzMzM0ZTBmYWZmMDIwMmI3MmEzMWNlODMyYjU2MTI1L2xpYnJhcnkvY29yZS9zcmMvc3RyL3BhdHRlcm4ucnMAAHM0GABPAAAAvgEAADcAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi90ZXh0d3JhcC0wLjE2LjEvc3JjL3dvcmRfc3BsaXR0ZXJzLnJz1DQYAGQAAACZAAAAJAAAANQ0GABkAAAAmgAAACQAAAAvcnVzdGMvNTVhMjJkMmE2MzMzNGUwZmFmZjAyMDJiNzJhMzFjZTgzMmI1NjEyNS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5ycwAAAFg1GABNAAAA4QMAACEAAABYNRgATQAAAOEDAAAuAAAAWDUYAE0AAADlAwAAIAAAAFg1GABNAAAA5QMAACsAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi90ZXh0d3JhcC0wLjE2LjEvc3JjL3dyYXBfYWxnb3JpdGhtcy9vcHRpbWFsX2ZpdC5ycwAAAOg1GABxAAAArgAAACEAAADoNRgAcQAAALQAAAAbAAAA6DUYAHEAAAC0AAAAIwAAAOg1GABxAAAArwAAACkAAADoNRgAcQAAALAAAAAsAAAA6DUYAHEAAACxAAAAHwAAAOg1GABxAAAAewEAABoAAADoNRgAcQAAAHwBAAAeAAAAL3J1c3RjLzU1YTIyZDJhNjMzMzRlMGZhZmYwMjAyYjcyYTMxY2U4MzJiNTYxMjUvbGlicmFyeS9hbGxvYy9zcmMvc3luYy5ycwAAAAEAAAAAAAAATGF6eSBpbnN0YW5jZSBoYXMgcHJldmlvdXNseSBiZWVuIHBvaXNvbmVkAAAwNxgAKgAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL29uY2VfY2VsbC0xLjE5LjAvc3JjL2xpYi5ycwAAZDcYAFoAAAAfBQAAGQAAAP////8AAAAABAsPExcbHyMnLTE0ODxAAkUAAAAAAEkATQAFBQUFBQUFBQUFBQUGBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVFUWFwFBQUFBQUFBQUFBQUFBQUFBQUFBQUJAEHU8OAACygBYChkaGxwK3R2en6ChoqOkpacoAUypAAAAACXBQWmAAAAAAAAAAWsAEGM8eAACxMFrwCzBQUFBQUFBQUFBQVDBQW3AEGv8eAACwiaUrkAAAAAvABBwvHgAAuaAsTGAAAArczQ1LrYAADcAAAAAAAAAAAFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBd4FBQUFBQUF3+EFBQUFBQUFBQUF5AUFBQUFBQUFBQUFBQXiBecAAAAABekAAAUFBQUFBQUFBeUFBQUFBQUF6wAAAAAAAAgNERUZHSElKi8xNjo+QgJHAAAAAABLAE8ABQUFBQUFBQUFBQUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVRVlpeBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQBB7PPgAAsoAWIoZmpucit0eHyAhIiMkJSZnqIFMqQAAAAAlwUFqQAAAAAAAAAFrABBpPTgAAsTBbEAtQUFBQUFBQUFBQUFQwUFtwBBx/TgAAu7AZpSuQAAAAC/AAAAAAAAAACnqsLEyADKAK3O0ta62gAA3AAAAAAAvQAABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXeBQUFBQUFBd/hBQUFBQUFBQUFBeQFBQUFBQUFBQUFBQUF4gXnAAAAAAXpAAAFBQUFBQUFBQXlBQUFBQUFBesAQfCA4QALAcAAQcCB4QALQP////////////////////////////////////////////8/P/////8/P/+q////P////////99f3B/PD/8f3B8AQZWC4QALYwQgBP//f////3///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wBBlYPhAAtpBKAE//9/////f///////////////////////////////////////////////////////////////////////DwD//3/4//////8P////////////////////////////////w/8DAB9QAEGOhOEAC4QG37xA1///+////////////7//////////////////////////////////w/8DAB9QAAD//////////////////9+8wNf///v///////////+///////////////////////8D/P///////////////////////////v///38C//////8BAAAAAAAAAAD///+HBwD/////////////////////+/z///////////////////////////7///9/Av//////Af7/////v7YA////hwcAAAAAAP//////BwAAAMD+//////////////8vAGDAAJwAAP3///8AAADg/////////////z8AAgAA/P///wcwBAAA/wf////////////D////////////////75///f+fAAD/////////5////////////////wMA////////PyT//z8EEAEAAP///wH/B////34AAP//////AwAAAAAAAPD///////8jAAAB/wMA/v/hn/n///3FIwBAALADAAMQ//////8/AAD///8P/wf///9+AP////////////v////////////////////P//7/75/5///9xfOfeYCwz/8DUOCH+f///W0DAAAAXgAAHADgv/v///3tIwAAAQADAAAC4J/5///97SMAAACwAwACAOjHPdYYx/8DAAABAAAAAADuh/n///1t04c5Al7A/z8A7r/7///97fO/OwEAz/8A/u6f+f///e3znzngsM//AgDsxz3WGMf/w8c9gQDA/wAA4N/9///9/yMAAAAnAwAAAOHf/f///e8jAAAAYAMABgDw3/3/////JwBAcIADAAD84P9//P//+y9/AAAAAAAAAP/f/f///f/z3z1gJ8//AADv3/3///3v8989YGDP/w4A/9/9///////fffCAz/8A/O7/f/z///svf4Rf/8D/DAD+//////8NAH8AAAAAAAAA1vf//6//DSBfAADwAAAAAAEAAAAAAAAA//7///8fAAAAHwBBoIrhAAvUA/7///////8H/3//AwAAAADW9///r///P19///MAAAAAAQAAA/8DoML//v///x/+/9////7///8fQAAAAAAAAAD//////wcAgAAAPzxiwOH/A0AAAP////+/IP//////9////////////////////////////////////////////////////z8AAP///////////P///////wAAAAAA/w////////////8D////////////P/////+/IP//////9///////////////////////////////////////////////////fwD//z8A/wAAAL////////0HAAAAAAAAAAD///////////89fz3//////z3/////PX89/3//////////Pf//////////BwAAAAD//wAA/////////////z8/////////////PX89//////89/////z1/Pf9//////////z3//////////+cA/gMA//8AAP////////////8/P/7/////////////////////////////////////////////////////////////////////////////////////////////////////////////AwBBgI7hAAuLAv////////////////+f///+//8H////////////x/8B//8DgP//AwD//wMA/98BAP///////w8AAACAEAAAAAD/////////////////n////v//B////////////8f/Af//P4D//x8A//8PAP/fDQD/////////////jzD/AwAAAAAAAP//////////////Af//////Bf//////////PwD///9/AAAAAAAA////Px8A//////8P////AwAAAAAAAAC4/wP//////////////wH//////wf//////////z8A////f/8P/w/A/////z8fAP//////D////wP/BwAAAAD//38A////////HwBBlJDhAAsBgABBoJDhAAv/AeD//////w8A4B8AAAAAAAD4////AcAA/P////8/AAAA////D/////////9/////n/8D/wOAAP+//38AAAAAAAD///////////8f/wMA+A8A//////////////////8PAP////8PAAAAAOAA/P///z//Af//////5wAAAAAA3m8E////////////////////////////////AAAAAAAAAAD/////////AP/j//////8//wH//////+cAAPf/////B////////////////////////////////////////////////////////////////////////////////////wBBrpLhAAsGAoAAAP8fAEHAkuEACxKE/C8/UP3/8+BDAAD//////wEAQeGS4QALMTAAAAAAAIABABAAAAACgAAA/x8AAAAAAAD/H+L/AQCE/C8/UP3/8+BDAAD//////wEAQaCT4QAL4Ab/////////////////////////////////////H3gMAP////+/IP////////+AAAD//38Af39/f39/f38AAAAA/////////////////////////////////////x/4DwD/////vyD/////////gACA//9/AH9/f39/f39//////+AAAAD+Az4f/v///////////3/4/v/////////////34P///////v////////////9/AAD/////AAAAAAAA///gAAAA/v8+H/7///////////9//v7/////////////9+D///////7/////////////fwAA/////wAAAAAAAP////////////////////////8fAAAAAAAAAAD//////z////////////////////////////////////////////////8HAAQAAAAnAPAA/////////////////////////x///wAMAAD//////38AgP///z//////////////AAAAAID//P////////////////n/////////B+sDAAD8//8f////DwAA////////8L///////////////////wMAAACA//z////////////////5/////////wfrAwAA/P+79///BwAAAP///////w8A/P//////DwAAAAAAAAD8aAD8//8/AP//fwAAAP///x/w//////8HAACAAADf/wB8//////8QAAD///////8PAP//////////PwD/A////+j//////z//////DwD///8f//////////8BgP8D////f///////AQAA9w8AAP//f8T///////9iPgUAADj/BxwAfn5+AH9////////3/wP//////////////////wcAAAD///////9/AP8//wP//3/8//////////8HAAA4//98AH5+fgB/f///////9/8D////////////////////N/8D/////////////////z//////////////////AwAAAAB/APig//1/X9v/////////////////AwAAAPj///////////////////////8//////////////////wMAAAAAfwD44P/9f1/b/////////////////wMAAAD4//////8AQY6a4QALoQHf/////////////////////x8AAAAA/v//B/7//wfA/////////////3/8/PwcAAAAAP//AAD//xgAAOAAAAAA3/////////////////////8fAAD/A/7//4f+//8HwP////////////9//Pz8HAAAAAD/7///f///t/8//z8AAAAA////////////////////BwAAAAAAAAAA////////HwBBwJvhAAsv/+///3///7f/P/8/AAAAAP///////////////////wcAAAAAAAAAAP///////x8AQf+b4QALASAAQZCc4QALK////x////////8BAAAAAAD/////AOD///8H/////z8A////P/////8P/z4AQdCc4QALowL///8f////////AQABAAAA/////wDg////B///////B////z//////D/8+AAAAAAD/////////////////////////PwAA/////w//////D///////AP///////w8A//f/97f/+//7GwAAAAAAAAAA/////////////////////////z//A/////8P/////w///////wD///////8PAP/3//e3//v/+xsAAAAAAAAAAD/9/////7+R//8/AP//fwD///9/AAAAAAAAAAD//zcA//8/AP///wMAAAAAAAAAAP/////////AAAAAAAAAAAABAO/+//8/AAAAAAD///8f////HwAAAAD//v//HwAAAP///////z8A//8/AP//BwD//wMAQYCf4QALM2/w7/7//z+HAAAAAP///x////8fAAAAAP/+//9/AAAA////////PwD//z8A//8HAP//AwBBwJ/hAAsl////////////AQAAAAAAAP///////wcA////////BwD/////DwBBgKDhAAso////////////AQAAAAAAAP///////wcA////////BwD//////wD/AwBB0KDhAAsH//////8DAwBB4KDhAAsf////H4AA//8/AAAAAAD//wMAAAAAAP//HwAAAP//fwBBkKHhAAvdAf//////GwMAAAAAAAAAAOD///8fgAD/////AQAAAP//PwAAAAAA//8fAAAA//9/APj///////8AAAAAAAAAJgD4//////8AAAAA////AQAA+P///38AAACQAP////9HAPj//////wcAHgAAFAAAAAD//////////38AAADA/z+A/////////wcEAP///wH/A////////9//8AD/////TwD//////////x/e/xcAAAAA///7//8PAIABAAAAAAAAAH+9/7//Af//////fwAAAADgn/n///3tIwAAAeADAEGAo+EACy////v/////wAMAAAAAAAAAf73/v/8B/////////wf/A++f+f///e37nzmB4M8fHwBBwKPhAAsZ////////HwCABwCAAwAAAP///////wAAsABB8KPhAAss//////9/AAAAAAAPAAAAAP///////////wf/wwMAAAD//////////78A/wMAQbCk4QALOf///////z//AQAAPwAAAAD///////8AABAAAAAAAAAA//////8HAAEAAAAAAAAAAP///wcAAAAAfwBBgKXhAAsp//////////8RAP8DAAAAAP////////8B/wMAAAAAAAD////n/w//A38AQcCl4QALBv//////DwBB1KXhAAsV//////////8AAACAf/Jv////AIACAEH0peEACxT//P////8BAAoAAAD/////////BwBBlKbhAAtM////////////AwCAf/Jv////v/kPAP8DAAAAAAAAAAD//P///////BsAAAAB+P////8HBAAAAfD//////wMAIAAA////////////AQBBkqfhAAsu////////////////AQD/////////f4AA////////////IwAA////////////AQBB/qfhAAsU72///f///38AAAEAAAAAAPz///8AQaCo4QALFH/7/////wEAQAAAAL/9////AwABAEHAqOEACxf//f////9//wEA/wMAAPz////8///+fwBB4KjhAAsWf/v/////f7T/AP8Dv/3///9/+wH/AwBBnKnhAAsL//8HAPT//f///w8AQbap4QALAQEAQdyp4QALEP//fwD///3/////xwcA/wMAQfap4QALAQEAQYCq4QALKf////////////////9/AAD///////////////////////////////8PAEHAquEACwn///////8AAH4AQYCr4QALCf//////P///fwBBoKvhAAsL////////AAD//z8AQeyr4QALCuDjB/jnDwAAADwAQYCs4QALCf//////////fwBBwKzhAAsG////f+AHAEHgrOEACzL/////////Af///38AAP///////////38AAP///z8AAP///////wAADwAAAPj//+D//wBBoK3hAAsy/////////wH///9//wP///////////9//wP///8/HwD///////9/AA8A/wP4///g//8AQeit4QALCP//////////AEGAruEACx3///////////8HAQAAAAAAAAD4/wAAAAAAAAAACwBBqK7hAAsI//////////8AQcCu4QALQv///////////4f/////////gP//AAAAAAAAAAAbAAMA//////////////////////////////////8/AAAAAAD/AQBBoK/hAAsg/////////////////////////////////////////w8AQfyv4QALGH9v/3//////////////////B/8f/wH/AwBB3rDhAAsW/wP/////////////////B/8f/wH/YwBBoLHhAAse////////////////////////////////////////AEHIseEACwEcAEGAsuEAC9YB/////////////9///////////99k3v/r7/////////+/59/f////e1/8/f//////////////////////////////////////////////////////P/////3///f////3///f////3///f////3/////9/////f//9w8AAAAAAAD//////////////////////////z/////9///3////9///3////9///3////9//////f////3///fP////////////////f/j//////x8gABAAAPj+/wBBhrThAAsI/////////z8AQaC04QALCv//////H4A/AEAAQcC04QALEn////nbB/////////8/AAAAgABB4LThAAsK//////8f/z//QwBBkrXhAAsM////PwAA//////8PAEHSteEACw7///9/AAD/////////AwBBmrbhAAsE////DwBB2rbhAAsG//////8DAEGAt+EACyr///////////////////////////////8fAAAAAAAAAP//////////DwgAQcC34QALLP///////////////////////////////x8AfwAAAAAA////////////D/8DAEGAuOEACxjv////lv73CoTqlqqW9/de//v/D+77/w8AQcC44QALrAL/////////////////////////////////////AAAAAP///////////////////////////////////////////////////wP///////////////////////////////////8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wEA/////////////////////////////wMA////////////////////////////////////////////////////////////////////B////////////////////////////////////////////z8AQaC74QALBP///z8AQeC74QALNv///////////////////////////////////////////////////////////////////////wBBwrzhAAuWpAFAAH8AvwD3APcA9wD3APcA9wD3ADABcAGhAeEB9wD3APcAHgL3AC4CXwKWAtYCFgNLA/cAfAO2A+sDBQRFBIUExQT2BCwFaAWmBeUFIwZiBqAG3wYdB10HmwfZBxcIVwiVCNQIEglSCZAJ0AkQCk8KjwrOCg4LTguOC8gLCAxIDIgMuAzyDDINUg1yDZoN9wDaDREOTw5+DqMOxg7mDiYP9wD3APcA9wD3APcA9wD3APcAZg+GD8YPBhBIDEYQhhCmEOYQFhFWEZYR1hEMEjUSVhKWEscSBxNCE4ITvBP4EzgUeBS1FPcA9wD3APUU9wD3APcA9wA1FW8VKQKvFe8VLRZtFqsW6xYXF1EXfxe/F/0XOxh7GLMY9wD3AN4YEhlSGXIZcxlyGaYZ5hkiGmIaohriGh8bXBuFG7sb9hv3APcA9wD3APcA9wAzHFsc9wD3APcA9wD3AJkczxz3APcA9wD3AOYcJh1WHZYdth32HTYedh6RHtEe0R7RHvseOx97H7gf9R81INEegR5mIEYgpiDRHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHvcA0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RINEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R4EIT0h9wD3APcA9wB9Ib0h+yEbIvcA9wD3AFsimSLZIhkjUyOTI8wjDCRLJIskyyRIDAglRyV3JfcApyXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yUzJmwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm0R7RHtEe0R7RHtEe0R7RHiwnbCf3AKkn9wD3APcA9wC8J/cA/Cc0KHQosCj3AOYoJilkKZUp1ClgCn4Kmwq6CtoK2graCtsK2graCtoK2wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7ChsL9wH3APwBFCpoAmgC7CbsJvcA9wD3APcA9wD3APcA5QQkKvcA9wDjCfcA9wD3APcA9AHaCS0H7CbsJvcA9wArKuwm7CbsJuwm7CbsJuwm7Cb3ANoJ9wD3APcALQcnAgcI9wD3AKkd9wDlBPcA9wA7KvcASyr3APcAnyVaKuwm7Cb3APcA9wD3APcA9wD3APcA9wBoArsI9wD3AJ8l9wAHCPcA9wDLB/cA9wD3AFwq+AH4AWsqAQJ5Kuwm7CbsJuwm9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wBFEfcARhHLB+wm/QH3APcAiSrsJuwm7CbsJpkq9wD3AKMq9wCyKvcA9wD3APQBDwPsJuwm7Cb3AL8q9wDKKvcA5gTsJuwm7CbsJvcA9wD3AJsl9wB2AvcA9wDaKukG9wDqKrYP+ir3APcA9wD3AOwm7Cb3APcACisaK/cA9wD3ACor9wBwAvcA7QT3ADorDQPsJuwm7CbsJuwm9wD3APcA9wC2D+wm7CbsJvcA9wD3ADYZ9wD3APcAvA/3APcA1A+7COwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJvcA9AH3APcASis3Gewm7CbsJvoS9wD3AMsH9wBqAVor7Cb3AGor7CbsJvcABwjsJvcARRElAvcA9wBoAXordgJoC4orJQL3APcAmSunK/cAtg+7CCUC9wBpAbcrxyv3APcA1yslAvcA9wBtAecr9yvuATQZ9wABAmQBBywWLOwm7CbsJiYs9QE1LPcA9wBhAcsSuwhFLHUC+gFULJsHZCxyLNES7CbsJuwm7CbsJuwm7CbsJvcA9wD3AGsBgiySLDcZ7Cb3APcA9wBwAaIsuwjsJuwm7CbsJuwm7CbsJuwm7CbsJvcA9wBhAbIswSzKLOwm7Cb3APcA9wBwAdosuwjqLOwm9wD3AGUB+iy7COwm7CbsJkgMAQt+CgotBCXsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wD3AGQBKwTsJuwm7CbsJuwm7Cb3APcA9wD3AKwDMCcaLSYt9wA2LUQtuwjsJuwm7CbsJm4C9wD3AFQtYy3sJvAh9wD3AHMtgy2TLfcA9wBmAaMtsi33APcA9wD3ALYPwi3sJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb6AfcAYQHZC9ItrAPaCeIt9wC9C9gLzxLsJuwm7CbsJgkH9wD3APEtAC67CBAu9wBCEiAuuwjsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wAwLkAu7QH3AEwuWi67COwm7CbsJuwm7CYtB/cAai55Locu9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3ANYO7CbsJuwm7CbsJuwm9wD3APcA9wD3APcA9AGWLvcA9wD3APcA9wD3APcA9wD3APcA9wD3ADUZ7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APcA9wD3APcA9wA2GfcA9wD3APcA9wCmLvcA9wC0LvcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wC+LvcA9wD3APcA9wD3APcA9wDOLt4u0BLsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wBzD/cA9wD3APcARRHsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APcA9wC2D/cA9AHuLvcA9wD3APcA9AG7CPcAaAL+LvcA9wD3AA4vGi8qLwEC6AT3AOwm7CbsJuwm7CbsJuwm9wD3APcA9wD3ADUv7CbsJuwm7CbsJuwm9wD3APcA9wAICG8BcAFwAUUvJQLsJuwm7CbsJlUv1BLRHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHr0e0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R73APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3AEYR7CbsJrwe7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CaHBtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHg4fYy/sJnMvfy/RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R65Huwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wD3APcA9wD3APcA5QTaCbYPjy/SEuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJnABcAHoA3ABzxL3APcA9wD3APcA9wD3ADUZ7CbsJuwm9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcARhH3APcAbwL3APcA9wCfL3ABrC/3ALgv9wD3APcA5QTsJvcA9wD3APcAxi/sJuwm7CbsJuwm7CbsJvcANRn3ADUZ9wD3APcA9wD3AEUR9wC2D+wm7CbsJuwm7CbsJuwm7Cb3APcA9wD3APcA/gH3APcA9wD2AdQv4i//AfcA9wD3AN0Nhgb3ABAO7y/tAfcA9wD3APcA9wD3APcA9wD3APcAcAL3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA+S8HMAcwBzBwAXABcAGYLXABcAHEARcwIzD8EqYC7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wD0AS8w7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbZCz8wTTD3APcA9wBoAuwm+BLsJuwm7CbsJuwm7CbsJvcA9wDaCV0wWyTsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wBtMOwm9wD3AGQBfTDsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJvcAZAG7COwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJo0w9AH3APcA9wD3APcA9wD3APcA9wD3APcA9wBxAs8S7CbsJvcA9wD3APcAnTCtMOwm7CbsJuwm7CbsJuwm7CbsJuwm7gH3APcAZCi9MOwm7CbsJuwm7gH3APcAaALsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb/AfcAzDDZMOcw9zAFMQ0x+QEHCBwxBwjsJuwm7CY3Gewm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R4sMXIZpBlyGXIZchk8MXIZchlyGSwx0R7RHtEeSTFPMdEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHl8xZTHRHmwxejHRHtEehzHRHtEe0R7RHpcxpjGwMbcxxjHUMeQx8jHRHtEe0R7RHhgbYy4CMhAZFRvRHtEeDjLRHh4y0R7RHtEeKjLRHjYy0R7RHtEe0R5BMvcA9wBRMtEe0R5hMWEyZzLRHtEe0R73APcA9wD3APcA9wD3AHcy9wD3APcA9wD3AAIy0R7RHgIZ9wD3APcAFxsVG/cA9wAXG/cAABnRHtEe0R7RHtEehzKuMc8xljLRHtEe0R7OMdEe0R7RHqUyqTG0MtEe0R73APcA9wD3APcAdzLRHtEe0R7RHtEe0R5iMtEe0R6eMfcA9wD3APcA9wD3APcA9wD3AAAC9wD3AOUE7CbsJrsI0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R63Hi0I7CZwAXABcAFwAXABcAHsJuwm7CbsJuwm7CbsJuwmcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAB7CY1BFUEdQSVBLUE1QT1BA8FLwVPBW8FjwWvBc8F7wUKBioGMQZRBoADgAOAA4ADZgYqBoYGowaAA4ADgAOAA4ADwwbgBoADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADKgYAB4ADHAfKAMoAygDKAMoAygDKAMoAPAfKAFwHbweAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AHoAe3B4ADgAOAA4AD1weAA4ADgAOAA4ADgAOAA+cHBwgnCEcIXQgqBn0IgAONCK0IxAjXCOcIBwmAAyAJQAlgCYAJoAnACeAJAArKACAKygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKACAKgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA0AKAwMDAwMDAwMDDAIAAAEDAwMDAwMDAwMDAwMDAwMDAwMJEhYdGhkdFhURHRoXDhcbGBgYGBgYGBgYGBcXHR0dEh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUaER0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dFQwQHQMDAwMDBAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDCBUZGhoaHRwcHRwWHQwdHRkaHBwNHRwcHBwcFhwcHBUdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cDRwcHA0cHR0cHR0dHR0dHRwcHBwdHB0NHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDCAMDAwMDAwMDAwMDAwgICAgICAgDAwMDAwMDAwMDAwMDHR0dHR0dHR0qKh0dHR0XHSoqKiodHR0dHR0dKh0qHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0XDCoqHR0aKgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwwDHQMDHQMDEgMqKioqKioqKiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyoqKiojIyMjHR0qKioqKioqKioqKh0dHR0dHR0dHRkZGRcXHR0DAwMDAwMDAwMDAxIDEhISHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAwMDAwMDAwMYGBgYGBgYGBgYGRgYHR0dAx0dHR0dHR0dHR0dHR0dHR0dHR0dEh0DAwMDAwMDHR0DAwMDAwMdHQMDHQMDAwMdHRgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHSodHQMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAwMDKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAx0qKioqKioqKioqKioqKhgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMdHR0dFxIdKioDGhodHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAx0DAwMDAwMDAwMdAwMDHQMDAwMDKiodHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAyoqHSodHR0dHR0dHR0dHSoqKioqHR0dHR0dHR0dHR0dHR0dHSodHSoqKioqKgMDAwMDAwMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMdAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMdAwMDAwMDAwMDAwMDAwMDAx0DAwMDAwMDHR0dHR0dHR0dHQMDDAwYGBgYGBgYGBgYHR0dHR0dHR0dHR0dHR0dHQMDAyodHR0dHR0dHSoqHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHSodKioqHR0dHSoqAx0DAwMDAyoqAwMqKgMDAx0qKioqKioqKgMqKioqHR0qHR0dAwMqKhgYGBgYGBgYGBgdHRkZHR0dHR0ZHRodHQMqAwMDKh0dHR0dHSoqKiodHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dHR0dKh0dKh0dKh0dKioDKgMDAyoqKioDAyoqAwMDKioqAyoqKioqKiodHR0dKh0qKioqKioqGBgYGBgYGBgYGAMDHR0dAx0qKioqKioqKioDAwMqHR0dHR0dHR0dKh0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0qHR0qHR0dHR0qKgMdAwMDAwMDKgMDAyoDAwMqKh0qKioqKioqKioqKioqKiodHQMDKioYGBgYGBgYGBgYHRoqKioqKioqHQMDAwMDAyoDAwMqHR0dHR0dHR0qKh0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0qHR0qHR0dHR0qKgMdAwMDAwMqKgMDKioDAwMqKioqKioqAwMDKioqKh0dKh0dHQMDKioYGBgYGBgYGBgYHR0dHR0dHR0qKioqKioqKgMdKh0dHR0dHSoqKh0dHSodHR0dKioqHR0qHSodHSoqKh0dKioqHR0dKioqHR0dHR0dHR0dHR0dKioqKgMDAyoqKgMDAyoDAwMDKiodKioqKioqAyoqKioqKioqKioqKioqGBgYGBgYGBgYGB0dHR0dHR0dHRodKioqKioDAwMDAx0dHR0dHR0dKh0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dKioDHQMDAwMDKgMDAyoDAwMDKioqKioqKgMDKh0dHSoqHSoqHR0DAyoqGBgYGBgYGBgYGCoqKioqKioNHR0dHR0dHR0DAwMNHR0dHR0dHR0qHR0dKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0dHR0qHR0dHR0qKgMdAwMDAwMqAwMDKgMDAwMqKioqKioqAwMqKioqKiodHSodHQMDKioYGBgYGBgYGBgYKh0dAyoqKioqKioqKioqKgMDAwMdHR0dHR0dHR0qHR0dKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMdAwMDAwMqAwMDKgMDAwMdHSoqKiodHR0DHR0dHR0dHR0dHQMDKioYGBgYGBgYGBgYHR0dHR0dHR0dGR0dHR0dHSoDAwMqHR0dHR0dHR0dHR0dHR0dHR0dKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0dHSodKiodHR0dHR0dKioqAyoqKioDAwMDAwMqAyoDAwMDAwMDAyoqKioqKhgYGBgYGBgYGBgqKgMDHSoqKioqKioqKioqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSoqKioaKSkpKSkpKSkpKSkpKSkpHRgYGBgYGBgYGBgMDCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKikpKikqKSkpKSkqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKikqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKikpKSkpKikqKSkpKSkpKSoYGBgYGBgYGBgYKiopKSkpKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiodDQ0NDR0NDQgNDQwIEhISEhIIHRIdHR0DAx0dHR0dHRgYGBgYGBgYGBgdHR0dHR0dHR0dDAMdAx0DFRAVEAMDHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKgMDAwMDAwMDAwMDAwMDDAMDHR0dHR0DAwMDAwMDAwMDAyoDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMqDAwdHR0dHR0DHR0dHR0dKh0dDQ0MDR0dHR0dCAgqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKRgYGBgYGBgYGBgMDB0dHR0pKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkYGBgYGBgYGBgYKSkpKSkpHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHSoqKioqHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnHR0dHR0dHR0dKh0dHR0qKh0dHR0dHR0qHSodHR0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHSoqHR0dHR0dHSodHR0dKiodHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioDAwMdDB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqHR0dHR0dKioMHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dDB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dFRAqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dDAwMHR0dHR0dHR0dHR0qKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dAwMDAyoqKioqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0DAwMMDCoqKioqKioqKh0dHR0dHR0dHR0dHR0dHR0dHQMDKioqKioqKioqKioqHR0dHR0dHR0dHR0dHSodHR0qAwMqKioqKioqKioqKiopKSkpKSkpKSkpKSkpKSkpKSkpKQwMFCkMHQwaKSkqKhgYGBgYGBgYGBgqKioqKiodHR0dHR0dHR0dKioqKioqHR0SEgwMDR0SEh0DAwMIAxgYGBgYGBgYGBgqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKioqKioqHR0dHR0DAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DHSoqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qAwMDAwMDAwMDAwMDKioqKgMDAwMDAwMDAwMDAyoqKiodKioqEhIYGBgYGBgYGBgYKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKiopKSkpKSoqKioqKioqKioqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKioqKSkpKSkpKSkpKSkpKSkpKSoqKioqKhgYGBgYGBgYGBgpKioqKSkdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDKiodHSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKikpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKioDGBgYGBgYGBgYGCoqKioqKhgYGBgYGBgYGBgqKioqKiopKSkpKSkpKSkpKSkpKSoqAwMDAwMDAwMDAwMDAwMDAyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioDAwMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDHR0dHR0dHR0qKioYGBgYGBgYGBgYDAwdDAwMDB0dHR0dHR0dHR0DAwMDAwMDAwMdHR0dHR0dHR0MDCoDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDHR0YGBgYGBgYGBgYHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAyoqKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDAwMDAwMDAwMqKioMDAwMDBgYGBgYGBgYGBgqKiodHR0YGBgYGBgYGBgYHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dDAwdHR0dHR0dHR0qKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqHR0dHR0dHR0qKioqKioqKgMDAx0DAwMDAwMDAwMDAwMDAwMDAwMDAwMdHR0dAx0dHR0dHQMdHQMDAx0qKioqKgMDAwMDAwMDAwMDAwMIAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwgDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0qKh0dHR0dHR0dKh0qHSodKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKh0dHR0dKh0dHR0dHR0dHR0dHR0dKiodHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHSoqHR0dKh0dHR0dHR0NHSoMDAwMDAwMCAwMDAcDCgMDDAgMDAscHB0WFhUWFhYVFhwcHR0TExMMAAADAwMDAwgZGRkZGRkZGR0WFhwUFB0dHR0XFRAUFBQdHR0dHR0dHR0dHR0MGQwMDAwdDAwMBh0dHR0qAwMDAwMDAwMDAx0dKiocHR0dHR0dHR0VEBwdHBwcHB0dHR0dHR0dFRAqHR0dHR0dHR0dHR0dHSoqKhoaGhoaGhoZGhoaGhoaGhoaGhoaGhoZGhoaGhkaGhkaGhoaGhoaGhoaGhoaGhoDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMqKioqKioqKioqKioqKiodHR0ZHRwdHR0ZHR0dHR0dHR0dHB0dGh0dHR0dHR0dHR0cHB0dHR0dHR0dHB0dHR0dHR0dHR0dHR0dHR0dHR0dHBwdHR0dHRwdHRwdHBwcHBwcHBwcHBwcHR0dHRwcHBwcHBwcHBwdHR0dHR0dHR0cHR0qKioqHBwcHBwcHBwcHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHB0cHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwdHBwdHR0cHB0dHB0dHRwdHBoaHRwdHR0dHB0dHBwcHB0dHB0cHRwcHBwcHB0cHR0dHR0cHBwcHR0dHRwcHR0dHR0dHR0cHR0dHB0dHR0dHB0dHR0dHR0dHR0dHR0cHB0dHBwcHB0dHBwdHRwcHR0dHR0dHR0dHR0dHR0dHRwcHR0cHB0dHR0dHR0dHR0dHR0cHR0dHB0dHR0dHR0dHR0dHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0THR0dHR0dHR0dHR0dHR0dHRUQFRAdHR0dHR0cHR0dHR0dHSQkHR0dHR0dHR0dHR0dHRUQHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dJCQkJB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKioqKioqKioqKioqKioqKioqKiodHR0dHR0dHR0dHSoqKioqKioqKioqKioqKioqKioqKhwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdHR0dHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB0dHR0dHR0dHR0dHBwcHBwcHBwcHBwcHBwcHB0dHBwcHB0dHR0dHR0dHR0cHB0cHBwcHBwcHR0dHR0dHR0cHB0dHBwdHR0dHBwdHR0dHBwcHR0cHR0cHBwcHR0dHR0dHR0dHR0dHR0dHRwcHBwdHR0dHR0dHR0cHR0dHR0dHR0dHR0dHR0dHSQkJCQdHBwdHRwdHR0dHBwdHR0dJCQcHCQdJCQkHyQkHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSQkJB0dHR0cHRwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwcHRwcHB0cJBwcHRwcHRwdHR0dHR0dHR0dHR0dHR0kHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHBwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSQkJCQkJCQkJBwcHBwkHSQkJBwkJBwcHCQkHBwkHBwkJCQdHB0dHR0cHCQcHBwcHBwkJCQkJBwkJB8kHBwkJCQkJB0dHSQkHx8fHx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHB0dHRYWFhYWFh0SEiQdHR0VEBUQFRAVEBUQFRAVEBwcHBwcHBwcHBwcHBwcHBwcHBwcHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VEB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VEBUQFRAVEBUQHR0dHR0dHR0dHR0dHR0dHRUQFRAVEBUQFRAVEBUQFRAVEBUQFRAdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VEBUQHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VEB0dHR0dHR0dHR0dHR0dHR0dHR0dHRwcHBwcHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMdHSoqKioqEgwMDB0SDB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0qKioqKh0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKioqKioqHQwqKioqKioqKioqKioqKgMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKioqKh0dHR0dHR0qHR0dHR0dHSodHR0dHR0dKh0dHR0dHR0qAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMWFhYWFhYWFhYWFhYWFgwMDAwMDAwMHQwVDB0dFhYdHRYWFRAVEBUQFRAMDAwMEh0MDB0MDB0dHR0dCwsMDAwdDAwVDAwMDAwMDAwdDB0MDB0dHRISFRAVEBUQFRAMKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkKiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqKioqKioqKioqKiokJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkKioqKioqKioqKioqKioqKioqKioqKioqKiokJCQkJCQkJCQkJCQqKioqDBAQJCQUJCQVEBUQFRAVEBUQJCQVEBUQFRAVEBQVEBAkJCQkJCQkJCQkAwMDAwMDJCQkJCQDJCQkJCQUFCQkJCoeJB4kHiQeJB4kJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkHiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQeJB4kHiQkJCQkJB4kJCQkJCQeHioqAwMUFBQUJBQeJB4kHiQeJB4kJCQkJCQkJCQkJCQkJCQkJCQkJCQkHiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQeJB4kHiQkJCQkJB4kJCQkJCQeHiQkJCQUHhQUJCoqKioqJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCokJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqKioqKioqKioqKioeHh4eHh4eHh4eHh4eHh4eJCQkJCQkJCQcHBwcHBwcHCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJBQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqKiokJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqKioqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dDAwdHR0dHR0dHR0dHR0dDBIMHR0dHR0dHR0dHR0dHR0dHRgYGBgYGBgYGBgdHSoqKioqKioqKioqKioqKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDHQMDAwMDAwMDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDHQwMDAwMKioqKioqKiodHR0dHR0dHR0dHSoqKioqHR0qHSodHR0dHSoqKioqKioqKioqKioqKioqKioqKioqKh0dHR0dHR0dHR0dHR0dAx0dHQMdHR0dAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMdHR0dAyoqKh0dHR0dHR0dGR0qKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dDQ0SEioqKioqKioqAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAyoqKioqKioqDAwYGBgYGBgYGBgYKioqKioqAwMDAwMDAwMDAwMDAwMDAwMDHR0dHR0dHR0dHQ0dHQMYGBgYGBgYGBgYHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDDAwdHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDAyoqKioqKioqKioqHSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlKioqAwMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDAx0dHR0dHQwMDB0dHR0qHRgYGBgYGBgYGBgqKioqHR0pKSkpKSkpKSkpKSkpKSkpGBgYGBgYGBgYGCkpKSkpKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDAwMqKioqKioqKiodHR0DHR0dHR0dHR0DAyoqGBgYGBgYGBgYGCoqHQwMDCkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKioqKioqKioqKioqKioqKioqKioqKioqKSkpKSkdHR0dHR0dHR0dHQMDAwMDDAwdHR0DAyoqKioqKioqKh0dHR0dHSoqHR0dHR0dKiodHR0dHR0qKioqKioqKiodHR0dHR0dKh0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwwDAyoqGBgYGBgYGBgYGCoqKioqKiEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIhIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiISIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIqKioqKioqKioqKiomJiYmJiYmJiYmJiYmJiYmKioqKicnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycqKioqBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiodHR0dHR0dKioqKioqKioqKioqHR0dHR0qKioqKiMDIyMjIyMjIyMjIx0jIyMjIyMjIyMjIyMjKiMjIyMjKiMqIyMqIyMqIyMjIyMjIyMjIx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKioqKioqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRAVHR0dHR0dHR0dHR0dHR0dHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKiodKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiodHR0dHR0dHR0dHR0ZHR0dAwMDAwMDAwMDAwMDAwMDAxcQEBcXEhIVEBMqKioqKioDAwMDAwMDAwMDAwMDAwMDJCQkJCQVEBUQFRAVEBUQFRAkJBUQJCQkJCQkJBAkECoUFBISJBUQFRAVECQkJCQkJCQkKiQaGSQqKioqHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqBioSJCQaGSQkFRAkJBAkECQkJCQkJCQkJCQkFBQkJCQSJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkFSQQJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkFSQQJBUQEBUQEBQkHh4eHh4eHh4eHiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJBQUJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCoqJCQkJCQkKiokJCQkJCQqKiQkJCQkJCoqJCQkKioqGRokJCQaGiodHR0dHR0dKioqKioqKioqKgMDAw8cKiodHR0dHR0dHR0dHSodHSodDAwMKioqKh0dHR0dHR0dHR0dHR0DKiodHR0dHR0DAwMDAyoqKioqHR0dHR0dHR0dHR0dHR0qDB0dHR0dKioqKioqKioqKiodHR0qHR0qHR0dHR0dHR0dKh0dHR0dHR0qHR0qKiodKh0dHR0dHR0dHSoqKioqHR0dHR0dKiodKh0dHR0dHSodHSoqKh0qKh0dHR0dHSoMHR0dHR0dHR0qHR0qKioqKh0dHR0dHR0dHR0dHSoqKgwdAwMDKgMDKioqKioDAwMDHR0dHR0dKioDAwMqKioqAwwMDAwMDAwMHSoqKioqKiodHR0dHQMDKioqKh0dHR0dDAwMDAwMEyoqKioqKioqKh0dHR0dHSoqKgwMDAwMDAwdHSoqKioqKiodHR0dKioqHR0dHR0dHR0dHSoDAwwqKgMdHR0dHR0dHR0qKioqKiodHQMDAwMdHR0dKioqKioqAwMDAwMDAwwMHR0dHR0qKgMdHQMDHSoqKioqKioqKgMDAwMDAwMDAwMDHR0dDAwDKioqKioqKioqKh0qKgMDAwMDKhgYGBgYGBgYGBgMDAwMHQMDHSoqKioqKioqHR0dAx0NHSoqKioqKioqKgMdHR0dDAwdDAMDAwMdAwMYGBgYGBgYGBgYHQ0dDAwMAwMDAwMDAwMMDB0MDB0DHQMqKioqKioqKioqKioqKh0dHR0dHR0qHSodHR0dKh0dHR0dHR0dHQwqKioqKioDAwMDKh0dHR0dHR0dKiodKh0dKh0dHR0dKgMDHQMDHSoqKioqKgMqKioqKh0dHQMDKioDAwMDAwMDKioqAwMDAwMDAx0dHR0MDAwMHRgYGBgYGBgYGBgMDCodAx0DAwMDHR0dHSoqKioqKioqAwMDAwMDKioDAwMDAwMDAw0MDBISHR0dDAwMDAwMDAwdHR0dAwMqKgMMDB0dKioqKioqKioqKioNDQ0NDQ0NDQ0NDQ0NKioqAwMDAwMDAwMdHSoqKioqKhgYGBgYGBgYGBgpKQwMDCkdHR0dHR0dKiodKiodHR0dKh0dKh0dHR0dHR0dAwMDAwMDKgMDKioDAwMDHQMDDAwMKioqKioqKioqHQMDAwMDAwMqKgMDAwMDAx0NHQMqKioqKioqKioqKh0dHQMDAwMDAwMdAwMDAw0dDAwMDA0dAyoqKioqKioqHQMDAwMDAwMDAwMDHR0dHQMDAwMDAwMDAwMMDAwdDQ0MDCoqKioqKioqKioqKioNDQ0NDQ0NDQ0NKioqKioqHQwMDAwMKioqKioqKioqKg0SHR0dHR0dHR0dHR0dHR0DAwMDAwMqKioDKgMDKgMDAwMDAx0DKioqKioqKiodHR0dHR0qHR0qHR0dHR0dAwMqAwMDAwMdKioqKioqKh0dHQMDAwMdHSoqKioqKioDAx0DHR0dHR0dHR0dHR0dAwMDAwMDAyoqKgMDAwwMJCQkJCQkJCQkJCQdHR0dHR0dHR0dHR0dGRkZHR0dHR0dHR0dHR0dHR0dKioqKioqKioqKioqKgwMDAwMKioqKioqKioqKiodHR0dHR0dHRUVFRAQEB0dEB0dHRUQFRAdHR0dHR0dHR0VEBAdHR0dCAgICAgICBUQCAgIFRAVEAMdHR0dHR0DAwMDAwMDAwMYGBgYGBgYGBgYKioqKgwMAwMDAwMMKioqKioqKioqKgMDAwMDAwMMDAwdHR0dHR0MHSoqKioqKioqKioYGBgYGBgYGBgYKh0dHR0dHR0MDB0dKioqKioDAwMDAwMDAyoqKioqKioDFBQUFAgqKioqKioqKioqKh4qKioqKioqKioqKioqHh4eKioeKioqKioqKioqKh4eHh4qKioqKioqKh0dHR0dHR0dHR0qKh0DAwwdHR0dHQMDAwMDHR0dAwMDHR0DAwMDAwMDHR0dHR0dHR0dHQMDAwMdHQMDAx0qKioqKioqKioqHSoqHR0qKh0dHR0qHR0dHR0dHR0dHSodKh0dHR0dKh0qKiodHR0dHR0dHR0dHR0qKhgYGBgYGBgYGBgYGBgYGBgdHR0dHQMdHR0dHR0dHR0dAx0dDAwMDB0qKioqKh0dHR0dHSoqKioqAwMDAwMDAwMDKioDAwMDAyoDAyoDAwMDAyoqKioqAwMDAwMDAx0dHR0dHR0qKh0dHR0dHR0dHR0dHR0dAyoYGBgYGBgYGBgYKioqKioaHR0dHR0dHSodHR0dKh0dKh0dHR0DAwMDAwMDHSoqKioYGBgYGBgYGBgYKioqKhUVGR0dHR0qKioqKioqKioqKh0dKh0qKh0qHR0dHR0dHSodHR0dKh0qHSoqKiodKioqKh0qHSodKh0dHSodHSodKiodKh0qHSodKh0dKh0qKh0dHR0qHR0dHSodHR0dKh0qHR0dKh0dHR0dKh0dHR0dHBwcHBwcHBwcHBwcHCQkJBwcHBwcHBwcHBwdHR0kJCQkJCQoKCgoKCgoKCgoKCgoKCgoJCQkJCQfJCQkJCQkJCQkJCQkHR0kJCQkJB0kJCQfHx8kJB8kJB8fHyQkJCQkJCQkJCQkICAgICAkJB8fJCQfHx8fHx8fHx8fJCQkJCQkJCQkJCQkJCQkHx8fHx8fHx8fHyQkJB8kJCQfHx8kHx8fJCQkJCQkJB8kJCQkJCQkJCQkJCQkJB0kHSQdJCQkJCQfJCQkJB0dJCQkJCQkJCQkJCQkJB0dHR0dJCQkJCQkJCQkJCQfHyQkJCQfJCQkJCQfJCQkJB8fJCQkJCQkJCQkHR0dHR0dHR0kJCQkHR0dHR0dJCQkJCQkHx8fJCQkHx8fHx8dHR0dHR0WFhYUFBQdHR0dJCQkJB8fHyQkJCQkJCQkJCQkHyQkJB0dHR0kJCQkJCQkJCQkJCQdHR0dHR0dHR0dHR0fJCQfHx8fHx8fHx8fJCQfHx8kJCQkJB8fJB8fJB8kJCQkHx8fHx8fHx8fHx8fHyQkwMHC3cTdxsfIyd3LzM3Oz9DR0tPU1dbX2Nna293d1N/g4eLj5OXm5+jd3evAwQLdxN3Gx8jJ3cvMzc7P0NHS09TV1tfY2drb3d3U3+Dh4uPk5ebn6N3d68DBwt3E3cbHyMndy8zNzs/Q0dLT1NXW19jZ2tvd3dTf4OHi4+Tl5ufo3d3rAAECAwQdBgcICQOLDI0OjxAREhMUFRYXGBkaGx0dFJ+goaIjpKWmp6gdHevAwcLdxN3Gx8jJ3cvMzc7P0NHS09TV1tfY2drb3d3U3+Dh4uPk5ebn6N3d6wABAh0EHQYHCAkdiwyNDo8QERITFBUWFxgZGhsdHRSfoKGiI6SlpqeoHR3rAAECBgQdBgcICQYLDA0ODxAREhMUFRYXGBkaGx0dFB8gISIjJCUmJygdHesAAQKdBJ2GB4gtnYuMjY6PkJGSk5SVlpeYmZqbnZ2Un6ChoqOkpaanqJ2d6wABAggEHQYHCAkICwwNDg8QERITFBUWFxgZGhsdHRQfICEiIyQlJicoHR3rAAECnQSdBgeICZ2LjI2OjxAREpOUlZYXmJmaG52dlJ+goaKjpKWmp6idnesAAQIKBB0GBwgJCosMjQ6PEBESExQVFhcYGRobHR0Un6ChoiOkpaanqB0d6wABAgsEnQYHCDILCwyNDo8QERITFJUWF5iZmhudnRSfoKGio6SlpqeonZ3rAAECDASdBgeICQyLDI0OjxAREhMUlRYXmJmaG52dFJ+goaKjpKWmp6idnesAAQINBB0GBwgJDQsMDQ6PEBESExQVFhcYGRobHR0UHyAhIiMkJSYnKB0d6wABAg4EnQYHiAkOiwyNDo8QERITFJUWFxiZmhudnRSfoKGio6SlpqeonZ3rAAECDwSdBgcICQ+LjI2OjxAREpOUlRYXmJmaG52dlJ+goaKjpKWmp6idnesAAQIQBJ0GBwgwEIsMjQ6PEBESExSVFheYGRobnZ0Un6ChoqOkpaanqJ2d6wABAhEEHQYHCDERiwyNDo8QERITFJUWFxgZGhsdHRSfoKGiI6SlpqeoHR3rAAECEgSdBgcICRKLDI0OjxAREhMUlRYXmJmaG52dFJ+goaKjpKWmp6idnesAAQITBJ0GBwgJE4sMjQ6PEBESExSVFheYmZobnZ0Un6ChoqOkpaanqJ2d6wABAhQEnQYHCAkUiwyNDo8QERITFJUWF5iZmhudnRSfoKGio6SlpqeonZ3rAAECFQQdBgcILhULDA0ODxAREhMUFRYXGBkaGx0dFB8gISIjJCUmJygdHesAAQIWBB0GBwgvFgsMDQ4PEBESExQVFhcYGRobHR0UHyAhIiMkJSYnKB0d6wABAhcEHQYHCAkXiwyNDo8QERITFJUWFxiZmhsdHRSfoKGiI6SlpqeoHR3rAAECGAQdBgcICRiLDI0OjxAREhMUFRYXGBkaGx0dFJ+goaIjpKWmp6gdHesAAQIZBB0GBwgJGYsMjQ6PEBESExQVFhcYmZobHR0Un6ChoiOkpaanqB0d6wABAhoEHQYHCAkaiwyNDo8QERITFBUWFxiZmhsdHRQfICEiIyQlJieoHR3rAAECGwSdBgcICRuLDI0OjxAREhMUlRYXGJmaG52dFJ+goaIjpKWmp6idnesAAQIdBB0GBwgJHYsMjQ6PEBESExQVFhcYGRobHR0Un6ChoiOkpaanqB0d6wABAh0EHQYHCAkdiwyNDo8QERITFBUWFxgZGhsdHRSfoKGiI6SlpqeoHR3rAAECFASdBgcICRSLDI0OjxAREhMUlRYXmJmaG52dFJ+goaKjpKWmp6idnesAAQIfBJ0GBwgJH4sMjQ6PEBESExSVFheYGZobnZ0UnyChoqOkpaanqJ2d6wABAiAEnQYHCAkgiwyNDo8QERITFJUWF5gZmhudnRSfoKGio6SlpqeonZ3rAAECIQSdBgcICSGLDI0OjxAREhMUlRYXmBmaG52dFJ+goaKjpKUmJ6idnesAAQIiBJ0GBwgJIosMjQ6PEBESExSVFheYGZobnZ0Un6ChoqOkpaYnqJ2d6wABAiMEHQYHCAkjizONM48QERITFBUWFxgZGhsdHRSfoKGiI6SlpqeoHR3rAAECJASdBgcICSSLDI0OjxAREhMUlRYXmBmaG52dFJ+goaKjpKWmp6idnesAAQIlBJ0GBwgJJYsMjQ6PEBESExSVFheYGZobnZ0Un6AhIqOkJSanqJ2d6wABAiYEnQYHCAkmiwyNDo8QERITFJUWF5gZmhudnRSfoKGio6SlJieonZ3rAAECJwSdBgcICSeLDI0OjxAREhMUlRYXmBmaG52dFJ+goaKjpKWmJ6idnesAAQIoBJ0GBwgJKIsMjQ6PEBESExSVFheYmZobnZ0Un6ChoqOkpaanNJ2d6wABAh0EHQYHCAkdiwyNDo8QERITFBUWFxgZGhsdHRSfoKGiI6SlpqeoHR3rAAECHQQdBgcICR2LDI0OjxAREhMUFRYXGBkaGx0dFJ+goaIjpKWmp6gdHesAAQKdBJ0GB4gJnYsMjQ6PEBESExSVFheYmZobnZ0Un6ChoqOkpaanqJ2d6wABAh0EHQYHCAkdCwwNDg8QERITFBUWFxgZGhsdHRQfICEiIyQlJicoHR0rAAECnQSdhgeILZ2LjI2Oj5CRkpOUlZaXmJmam52dlJ+goaKjpKWmp6idnesAAQIdBB0GBwguHQsMDQ4PEBESExQVFhcYGRobHR0UHyAhIiMkJSYnKB0d6wABAp0EnQYHiC+di4yNjo8QERKTlBWWF5iZmhudnZSfoKGio6SlpqeonZ3rAAECnQSdBgeIMJ2LjI2OjxAREpMUlZYXmJmaG52dFJ+goaKjpKWmp6idnesAAQKdBJ0GB4gxnYuMjY6PEBESkxSVlheYmZobnZ0Un6ChoqOkpaanqJ2d6wABAp0EnQYHiDKdC4yNjo8QERKTlJWWF5iZmhudnZSfoKGio6SlpqeonZ3rAAECMwQdBgcICTMLDA0OjxAREhMUFRYXGBkaGx0dFB8gISIjJCUmJygdHesAAQI0BJ0GBwgJNIsMjQ6PEBESExSVFheYmZobnZ0Un6ChoqOkpaanqJ2d6wBBgeHiAAuHAQECAwMEBQYHCAkKCwwNDgMDAwMDAwMPAwMDAwMDAw8JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCRAJCQkJCQkJERERERERERIREREREREREgBBguPiAAtMAQIAAAAAAAAAAwQFBgAAAAcAAAAICQoLAAwNDg8QERITFBUWFxgZGhkbHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIAMzQEBAAAAAAANQBB3OPiAAtDNjc4OToAOwA8AAAAPT4/QEFCQ0RFAABGAAAABAAAAAAAAAAAR0hJSktMTU5PUFEAUgAAUwBUVVZVV1hZWltcXV5fYABBrOTiAAu0BGFiAAAAAABjAGQAZQAAZmczMzNoaWprM2xtbm9wcTMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMAMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzNycwAAAAAAdHV2AAAAAHcAAHh5ent8fX5/gAAAAIEzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzOCgwBBgOniAAttVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTMzMzMzMzMzhABB+OniAAsWhYYAZGqHiIkAAAAAAAAAigAAAIsAjABBqOriAAtWjQAAjgAAAAAAAAAAjwAAAAAAkJEAkpMAlJWWl5iZmpucJgCdJJ4AAJ+goaIAAKOkpaanAKgAAACpAAAAqqsArK2urwAAAAAAsACxALKztAAAAAC1trcAQdHr4gALAbgAQavt4gALArm6AEG97eIAC3i7vL0zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzM74zMzMzMzMzMzMzMzMzMzMzMzMzv8AAQb/v4gALDcEzMzMzwsMzMzMzM8QAQfLv4gALAcUAQbzw4gALDsbHAAAAAAAAAMjJAADKAEHo8OIACwPLzM0AQYDx4gALFM4AuwC6AAAAAADP0AAAAAAAAADQAEGj8eIACwPRANIAQcDx4gALLNMAANTV1tcA2NkAANrb3N3e3zPg4eLj5DPlM+YAAADnAAAAAOjpMzMA6uvsAEGA8uIAC8ABMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzM+EEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAEGA9OIAC8ACVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV7VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV3XVXH/9V3/VVVVVVXVVVVVVVVVVdVVVVXV/V1XVVVVVVVVVVVVVVUAQdz24gALKVVVVVVV1VVVVVVVVVVVVVVVVVVVFQBQVVVVVVVVVVVVVVVVVVVVVVUBAEGP9+IAC7QBEEEQVVVVVVVVVVVVVVVVVVVVUVVVAABAVFVVVVVVVVVVVVUVAAAAAABVVVVVVFVVVVVVVVVVBQAUABQEUFVVVVVVVVUVUVVVVVVVVVUAAAAAAABAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQUAAFRVVVVVVVVVVVVVVVVVFQAAVVVRVVVVVVUFEAAAAQFQVVVVVVVVVVVVVQFVVVVVVVVVVVVVVVVVUFUAAFVVVVVVVVVVVVUFAEHQ+OIAC+MNQFVVVVVVVVVVVVVVVVVFVAEAVFEBAFVVBVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVEAVRVUVUVVVUFVVVVVVVVRUFVVVVVVVVVVVVVVVVVVVRBFRRQUVVVVVVVVVVQUVVVARBUUVVVVVUFVVVVVVUFAFFVVVVVVVVVVVVVVVVVVQQBVFVRVQFVVQVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVRVRVVVFVFVVVVVVVVVVVVVVUVFVVVVVVVVVVVVVVVVUEVAUEUFVBVVUFVVVVVVVVVVFVVVVVVVVVVVVVVVVVVRREBQRQVUFVVQVVVVVVVVVVUFVVVVVVVVVVVVVVVVUVRAFUVVFVFVVVBVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVVVVVFFQVEVRVVVVVVVVVVVVVVVVVVVVVVVVVVVVEAQFVVFQBAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUQAAVFVVAEBVVVVVVVVVVVVVVVVVVVVVVVVQVVVVVVVVEVFVVVVVVVVVVVVVVVVVAQAAQAAEVQEAAAEAAAAAAAAAAFRVRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUBBABBQVVVVVVVVVAFVFVVVQFUVVVFQVVRVVVVUVVVVVVVVVVVqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAAAAAAAAABVVVVVVVVVAVVVVVVVVVVVVVVVVQVUVVVVVVVVBVVVVVVVVVUFVVVVVVVVVQVVVVVVVVVVVVVVVVVVVVVVEABQVUUBAABVVVFVVVVVVVVVVVVVFQBVVVVVVVVVVVVVVVVVQVVVVVVVVVVVUVVVVVVVVVVVVVVVVVVAFVRVRVUBVVVVVVVVFRRVVVVVVVVVVVVVVVVVVUUAQEQBAFQVAAAUVVVVVVVVVVVVVVVVAAAAAAAAAEBVVVVVVVVVVVVVVVUAVVVVVVVVVVVVVVVVAABQBVVVVVVVVVVVVRUAAFVVVVBVVVVVVVVVBVAQUFVVVVVVVVVVVVVVVVVFUBFQVVVVVVVVVVVVVVVVVVUAAAVVVVVVVVVAAAAABABUUVVUUFVVVRUA139fX3//BUD3XdV1VVVVVVVVVVUAAAAAVVdVVf1XVVVVVVVVVVVVV1VVVVVVVVVVAAAAAAAAAABUVVVV1V1dVdV1VVV9VVVVVVVVVVVVVVXVV9V/////Vf//X1VVVV1V////VVVVVXVVVV9VVVVV9XVXVVVV1VVVVVVVVffX39ddXXX91///d1X/VV9dVV9XdVVVVX//9fVfVVVV9f9fVVVdXVVVXVVVVVVV1VVVVVV1VaVVVVVpVVVVVVVVVVVVVVVVVVVVqVaWVVVVVVVVVVVVVVX/////////////////////////////////////////////3///////////Vf///////////1VVVf/////1X1VV3/9fVfX1VV9f9df1X1VVVfVfVdVVVVVpVX1d9VVaVXdVVVVVVVVVVXdVqqqqVVVV399/31VVVZVVVVVVlVVV9VlVpVVVVVXpVfr/7//+///fVe//r/vv+1VZpVVVVVVVVVVWVVVVVV1VVVVmlZpVVVVVVVVV9f//VVVVVVWpVVVVVVVVVlVVlVVVVVVVVZVWVVVVVVVVVVVVVVVVVvlfVVVVVVVVVVVVVVVVVVVVVVVVVVUVUFVVVVVVVVVVVVVVVVVVVVVVVRVVVVVVVVVVVQAAAAAAAAAAqqqqqqqqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpVVVWqqqqqqlpVVVVVVVWqqqqqqqqqqqqqqqqqqgoAqqqqaqmqqqqqqqqqqqqqqqqqqqqqqqqqqmqBqqqqqqqqqqqqVamqqqqqqqqqqqqqqaqqqqqqqqqqqqqqqqiqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqVVWVqqqqqqqqqqqqqqpqqqqqqqqqqqqqqv//qqqqqqqqqqqqqqqqqqqqVqqqqqqqqqqqqqqqqqpqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRVAAABQVVVVVVVVVQVVVVVVVVVVVVVVVVVVVVVVVVVVVVBVVVVFRRVVVVVVVVVBVVRVVVVVVVBVVVVVVVUAAAAAUFVFFVVVVVVVVVVVVQUAUFVVVVVVFQAAUFVVVaqqqqqqqqpWQFVVVVVVVVVVVVVVFQVQUFVVVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVVVAUBBQVVVFVVVVFVVVVVVVVVVVVVVVFVVVVVVVVVVVVVVVQQUVAVRVVVVVVVVVVVVVVBVRVVVVVVVVVVVVVVVUVRRVVVVVaqqqqqqqqqqqlVVVQAAAAAAQBUAQb+G4wALoQhVVVVVVVVVVUVVVVVVVVVVVQAAAACqqlpVAAAAAKqqqqqqqqqqaqqqqqpqqlVVVVVVqqqqqqqqqqpWVVVVVVVVVVVVVVVVVVUFVFVVVVVVVVVVVVVVVVVVVapqVVUAAFRdVVVVVVVVVVVVVVVVVVVVUVVVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVVVVVVVVBUBVAUFVAFVVVVVVVVVVVVVAFVVVVVVVVVVVVUFVVVVVVVVVVVVVVVVVVVUAVVVVVVVVVVVVVVVVVVVVVRVUVVVVVVVVVVVVVVVVVVVVVVVVVQFVBQAAVFVVVVVVVVVVVVVVBVBVVVVVVVVVVVVVVVVVVVFVVVVVVVVVVVVVVVVVAAAAQFVVVVVVVVVVVVUUVFUVUFVVVVVVVVVVVVVVFUBBVUVVVVVVVVVVVVVVVVVVVVVAVVVVVVVVVVUVAAEAVFVVVVVVVVVVVVVVVVVVFVVVVVBVVVVVVVVVVVVVVVUFAEBVVQEUVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUVUARVRVVVVVVVVVUVFQBAVVVVVVVUVVVVVRVVVVUFAFQAVFVVVVVVVVVVVVVVVVVVVVUAAAVEVVVVVVVFVVVVVVVVVVVVVVVVVVVVVVVVVVUUAEQRBFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFQVQVRBUVVVVVVVVUFVVVVVVVVVVVVVVVVVVVVVVVVVVFQBAEVRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFVEAEFVVVVVVVVVVVQEFEABVVVVVVVVVVVVVVVVVVVVVFQAAQVVVVVVVVVVVVVVVVVVUVRVEFVVVVVVVVVVVVVVVVVVVVVVVVVVVAAVVVFVVVVVVVVUBAEBVVVVVVVVVVVUVABRAVRVVVQFAAVVVVVVVVVVVVVVVBQAAQFBVVVVVVVVVVVVVVVVVVVVVVVVVVVUAQAAQVVVVVQUAAAAAAAUABEFVVVVVVVVVVVVVVVVVVQFARRAAEFVVVVVVVVVVVVVVVVVVVVVVVVARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRVUVVVQVVVVVVVVVVVVVVVVBUBVRFVVVVVVVVVVVVVVVVVVVVQVAAAAUFVVVVVVVVVVVVVVVVVVVVVVVVVVVVUAVFVVVVVVVVVVVVVVVVVVAEBVVVVVVRVVVVVVVVVVVVVVVVVVVVUVQFVVVVVVVVVVVVVVVVVVVVVVVVWqVFVVWlVVVaqqqqqqqqqqqqqqqqqqVVWqqqqqqlpVVVVVVVVVVVVVqqpWVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVaqpqmmqqqqqqqqqqmpVVVVlVVVVVVVVVWpZVVVVqlVVqqqqqqqqqqqqqqqqqqqqqqqqqlVVVVVVVVVVQQBVVVVVVVVVAEHrjuMAC0VQAAAAAABAVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVURUAUAAAAAQAEAVVVVVVVVVQVQVVVVVQVUVVVVVVVVVVVVVVVVVVUAQb2P4wALAkAVAEHLj+MAC4gHVFVRVVVVVFVVVVUVAAEAAABVVVVVAEAAAAAAFAAQBEBVVVVVVVVVVVVVVVVVVVVVRVVVVVVVVVVVVVVVVVVVVQBVVVVVVVVVVQBAVVVVVVVVVVVVVVUAQFVVVVVVVVVVVVVVVVVVVlVVVVVVVVVVVVVVVVVVVVVVlVVVVVVVVVVVVVVVVf//f1X/////////X///////////////////X1X/////////76uq6v////9XVVVVVWpVVVWqqqqqqqqqqqqqqlWqqlZVWlVVVapaVVVVVVVVqqqqqqqqqqpWVVWpqpqqqqqqqqqqqqqqqqqqqqqqqqaqqqqqqlVVVaqqqqqqqqqqqqpqlapVVVWqqqqqVlaqqqqqqqqqqqqqqqqqqqqqqmqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqlqqqqqqqqqqqqqqqqqqqqlpVVZVqqqqqqqqqVVVVVWVVVVVVVVVpVVVVVlVVVVVVVVVVVVVVVVVVVVVVVVVVlaqqqqqqVVVVVVVVVVVVVVVVqlpVVmqpVapVVZVWVaqqVlVVVVVVVVVVqqqqVVZVVVVVVVWqqqqqqqqqqqqqqmqqqpqqqqqqqqqqqqqqqqqqqlVVVVVVVVVVVVVVVaqqqlaqqlZVqqqqqqqqqqqqqqqaqlpVpaqqqlWqqlZVqqpWVf///////////////////19FbXB0eUludmFsaWREaWdpdFBvc092ZXJmbG93TmVnT3ZlcmZsb3daZXJvAB4EAAAMAAAABAAAAFcDAABYAwAAHwQAADAxMjM0NTY3ODlhYmNkZWYvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi91dWlkLTEuMTAuMC9zcmMvZm10LnJzAAAANMoYAFUAAAC5AAAADQAAADTKGABVAAAAsQAAABUAAAA0yhgAVQAAALQAAAANAAAANMoYAFUAAAC1AAAADQAAAC91c3IvbG9jYWwvY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3dhc20tYmluZGdlbi0wLjIuOTMvc3JjL2NhY2hlL2ludGVybi5ycwAAzMoYAGYAAAAbAAAAKwAAAAAAAAD//////////0jLGABB4JbjAAvqAVRyaWVkIHRvIHNocmluayB0byBhIGxhcmdlciBjYXBhY2l0eWDLGAAkAAAAL3J1c3RjLzU1YTIyZDJhNjMzMzRlMGZhZmYwMjAyYjcyYTMxY2U4MzJiNTYxMjUvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc4zLGABMAAAApgIAAAkAAABKc1ZhbHVlKCkAAADoyxgACAAAAPDLGAABAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGFmdGVyIGJlaW5nIGRyb3BwZWQAAIsFAAAEAAAABAAAAIwFAACNBQBB1JjjAAvwAwEAAACOBQAAY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbi9ydXN0Yy81NWEyMmQyYTYzMzM0ZTBmYWZmMDIwMmI3MmEzMWNlODMyYjU2MTI1L2xpYnJhcnkvc3RkL3NyYy90aHJlYWQvbG9jYWwucnMAAACizBgATwAAAAQBAAAaAAAAL3Vzci9sb2NhbC9jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvd2FzbS1iaW5kZ2VuLWZ1dHVyZXMtMC40LjQzL3NyYy9xdWV1ZS5ycwAEzRgAZwAAACUAAAAuAAAABM0YAGcAAAAoAAAAKQAAAATNGABnAAAAPgAAABoAAAAvdXNyL2xvY2FsL2NhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi93YXNtLWJpbmRnZW4tZnV0dXJlcy0wLjQuNDMvc3JjL3Rhc2svc2luZ2xldGhyZWFkLnJzAJzNGABzAAAAIQAAABUAAACPBQAAkAUAAJEFAACSBQAAnM0YAHMAAABmAAAAJQAAAAAAAIAAQdyc4wALrFMBAgICAAAAAQECAgIIAAAADQAAAA8AAADg7hAA6O4QAPXuEAAAAAAAAQAAAAEAAAAIAAAADQAAAA8AAADg7hAA6O4QAPXuEAAIAAAADQAAAA8AAADg7hAA6O4QAPXuEAAGAAAABgAAAAgAAAAHAAAAOHoQAOknEgA+ehAARnoQAEiZEABKmRAATJkQAE6ZEABQmRAAUpkQAFSZEABWmRAAWJkQAFqZEABcmRAAXpkQAGCZEABimRAAZJkQAGaZEABomRAAJKEQADShEABEoRAAVKEQAFShEABkoRAAdKEQAIShEACUoRAApKEQALShEADEoRAA1KEQAOShEAD0oRAABKIQABSiEAAkohAANKIQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAAlJkQAJSZEACUmRAApJkQALSZEADEmRAA1JkQAOSZEAD0mRAABJoQABSaEAAkmhAANJoQAESaEABUmhAAZJoQAHSaEACEmhAAlJoQAKSaEAC0mhAAxJoQANSaEADkmhAA9JoQAASbEAAEmxAAFJsQACSbEAA0mxAARJsQAFSbEABkmxAAdJsQAISbEACUmxAApJsQALSbEAC0mxAAxJsQANSbEADkmxAA9JsQAAScEAAE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sRAA7rEQAPaxEAD+sRAABrIQAA6yEAAWshAAHrIQACayEAAushAANrIQAD6yEABGshAATrIQAFayEABeshAAZrIQAG6yEAB2shAAfrIQAPSqEAD6qhAAAKsQAAarEAAMqxAAEqsQABirEAAeqxAAJKsQACqrEAAwqxAAN6sQAD6rEABFqxAATKsQAFOrEABaqxAAYasQAGirEABvqxAAdqsQAH2rEACEqxAAi6sQAJKrEACZqxAAoKsQAKerEACuqxAAtasQALyrEADDqxAAyqsQANGrEADYqxAA36sQAOarEADtqxAA9KsQAPurEAACrBAACawQABCsEAAXrBAAHqwQACWsEAAsrBAAM6wQADqsEABBrBAASKwQAE+sEABWrBAAXawQAGSsEABrrBAAcqwQAHmsEACArBAAh6wQAI6sEACVrBAAnKwQAKOsEACqrBAAsawQALisEAC/rBAAxqwQAM2sEADUrBAA26wQAOKsEADprBAA8KwQAPesEAD+rBAABa0QAAytEAATrRAAGq0QACGtEAAorRAAL60QADatEAA9rRAARK0QAEutEABSrRAAWa0QAGCtEABnrRAAbq0QAHWtEAB8rRAAg60QAIqtEACRrRAAmK0QAJ+tEACmrRAArq0QALatEAC+rRAAxq0QAM6tEADWrRAA3q0QAOatEADurRAA9q0QAP6tEAAGrhAADq4QABauEAAerhAAJq4QAC6uEAA2rhAAPq4QAEauEABOrhAAVq4QAF6uEABmrhAAbq4QAHauEAB+rhAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAABqmRAAbJkQAG6ZEABwmRAAcpkQAHSZEAB2mRAAeJkQAHqZEAB8mRAAf5kQAIKZEACFmRAAiJkQAIuZEACOmRAAkZkQANSpEADkqRAA9KkQAASqEAAEqhAAFKoQACSqEAA0qhAARKoQAFSqEABkqhAAdKoQAISqEACUqhAApKoQALSqEADEqhAA1KoQAOSqEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAESiEABEohAARKIQAFSiEABkohAAdKIQAISiEACUohAApKIQALSiEADEohAA1KIQAOSiEAD0ohAABKMQABSjEAAkoxAANKMQAESjEABUoxAAZKMQAHSjEACEoxAAlKMQAKSjEAC0oxAAtKMQAMSjEADUoxAA5KMQAPSjEAAEpBAAFKQQACSkEAA0pBAARKQQAFSkEABkpBAAZKQQAHSkEACEpBAAlKQQAKSkEAC0pBAAtKQQAMSkEADUpBAA5KQQAPSkEAAEpRAAFKUQACSlEAA0pRAARKUQAFSlEABUpRAAZKUQAHSlEACEpRAAlKUQAKSlEAC0pRAAxKUQANSlEADkpRAA9KUQAASmEAAUphAAJKYQADSmEABEphAAVKYQAGSmEABkphAAdKYQAISmEACUphAApKYQALSmEADEphAAxKYQANSmEADkphAA9KYQAASnEAAUpxAABKUQACSnEAA0pxAARKcQAFSnEABkpxAAdKcQAISnEACUpxAApKcQALSnEADEpxAA1KcQAOSnEAD0pxAABKgQABSoEAAkqBAANKgQAESoEABUqBAAZKgQAHSoEACEqBAAlKgQAKSoEAC0qBAAxKgQANSoEADkqBAA9KgQAASpEAAUqRAAJKkQADSpEABEqRAAVKkQAGSpEAB0qRAAhKkQAJSpEACkqRAAtKkQAMSpEAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAAGLYQACC2EAAothAAMLYQADi2EABAthAASLYQAFC2EABYthAAYLYQAGi2EABwthAAeLYQAIC2EACIthAAkLYQAJi2EACgthAAqLYQALC2EAC4thAAwLYQAMi2EADQthAA2LYQAOC2EADothAA8LYQAPi2EAAAtxAACLcQABC3EAAYtxAAILcQACi3EAAwtxAAOLcQAEC3EABItxAAULcQAFi3EABgtxAAaLcQAHC3EAB4txAAgLcQAIi3EACQtxAAmLcQAKC3EACotxAAsLcQALi3EADAtxAAyLcQANC3EADYtxAA4LcQAOi3EADwtxAA+LcQAAC4EAAIuBAAELgQABi4EAAguBAAKLgQADC4EAA4uBAAQLgQAEi4EABQuBAAWLgQAGC4EABouBAAcLgQAHi4EACAuBAAiLgQAJC4EACYuBAAoLgQAKi4EACwuBAAuLgQAMC4EADIuBAA0LgQANi4EADguBAA6LgQAPC4EAD4uBAAALkQAAi5EAAQuRAAGLkQACC5EAAouRAAMLkQADi5EABAuRAASLkQAFC5EABYuRAAYLkQAGi5EABwuRAAeLkQAIC5EACIuRAAkLkQAJi5EACguRAAqLkQALC5EAC4uRAAwLkQAMi5EADQuRAA2LkQAOC5EADouRAA8LkQAPi5EAAAuhAACLoQABC6EACGshAAjLIQAJKyEACYshAAnrIQAKSyEACqshAAsLIQALayEAC8shAAwrIQAMmyEADQshAA17IQAN6yEADlshAA7LIQAPOyEAD6shAAAbMQAAizEAAPsxAAFrMQAB2zEAAksxAAK7MQADKzEAA5sxAAQLMQAEezEABOsxAAVbMQAFyzEABjsxAAarMQAHGzEAB4sxAAf7MQAIazEACNsxAAlLMQAJuzEACisxAAqbMQALCzEAC3sxAAvrMQAMWzEADMsxAA07MQANqzEADhsxAA6LMQAO+zEAD2sxAA/bMQAAS0EAALtBAAErQQABm0EAAgtBAAJ7QQAC60EAA1tBAAPLQQAEO0EABKtBAAUbQQAFi0EABftBAAZrQQAG20EAB0tBAAe7QQAIK0EACJtBAAkLQQAJe0EACetBAApbQQAKy0EACztBAAurQQAMG0EADItBAAz7QQANa0EADdtBAA5LQQAOu0EADytBAA+bQQAAC1EAAHtRAADrUQABW1EAActRAAI7UQACq1EAAxtRAAOLUQAEC1EABItRAAULUQAFi1EABgtRAAaLUQAHC1EAB4tRAAgLUQAIi1EACQtRAAmLUQAKC1EACotRAAsLUQALi1EADAtRAAyLUQANC1EADYtRAA4LUQAOi1EADwtRAA+LUQAAC2EAAIthAAELYQAAsAAAAIAAAABAAAAAYAAAAGAAAAFAAAAATTEAAP0xAAF9MQABvTEAAh0xAAJ9MQAAMAAAAIAAAABAAAAL3uEABw2RAAaDMYAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAEAAAACAAAAAAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAEAAAACAAAAAAAEAAAACAAIAAAABAAAACAAAAAQAAAAgAAAAEAAAAEAAAACAAAAAAAEAAAACAAAACAAAAAQAAAAgAAAAEAAAAIAAAABAAAAAAAIAAAABAAUAAAADAAAABwAAAAUAAAAJAAAABwAAAAkAAAAPAAAACwAAABEAAAAOAAAADAAAABAAAAAOAAAAEgAAABAAAAAUAAAAEgAAANsWEQDgFhEA4xYRAOoWEQDvFhEA+BYRAP8WEQAIFxEAFxcRACIXEQAzFxEAQRcRAE0XEQBdFxEAaxcRAH0XEQCNFxEAoRcRAEEAAAB6AAAAXgAAACQAAAByAAAAUgAAAGIAAABCAAAAw9YBAKnWAQA8AAAAPgAAAAgwAAAJMAAAwSUAALclAADAJQAAtiUAAAgAAAANAAAADwAAAODuEADo7hAA9e4QAAgAAAAEAAAABAAAAAQAAAAcAAAAAgAAAAQAAAAIAAAABQAAAAMAAAAHAAAABQAAAAkAAAAHAAAACQAAAA8AAAALAAAAEQAAAA4AAAAMAAAAEAAAAA4AAAASAAAAEAAAABQAAAASAAAA2xYRAOAWEQDjFhEA6hYRAO8WEQD4FhEA/xYRAAgXEQAXFxEAIhcRADMXEQBBFxEATRcRAF0XEQBrFxEAfRcRAI0XEQChFxEAGAAAAB8AAAAmAAAAGgAAACAAAABSAAAAagAAAPQUEQAMFREAKxURAFEVEQBrFREAixURAN0VEQBBAAAAegAAAF4AAAAkAAAAcgAAAFIAAABiAAAAQgAAAMPWAQCp1gEAPAAAAD4AAAAIMAAACTAAAMElAAC3JQAAwCUAALYlAAAwJBEAcjMYAFRMFgADAAAAAgAAAAEAAAACAAAAAgAAAAEAAAABAAAAAQAAAAEAAAAEAAAABgAAAAEAAAAEAAAAAwAAAGwkEQByJBEAdiQRAHgkEQB8JBEAgCQRAIIkEQCEJBEAhiQRAIgkEQCQJBEAnCQRAJ4kEQCmJBEAfwAAAP8HAAD//wAABQAAAAwAAAALAAAACwAAAAQAAADgyRgA5ckYAPHJGAD8yRgAB8oYABEAAAAPAAAADgAAAAsAAAAMHxYAHR8WACwfFgA6HxYAAwAAAAUAAAAKAAAABQAAAAcAAAAEAAAABAAAAAkAAAALAAAAVOkXAFfpFwBc6RcApCcYAGbpFwBt6RcAcekXAHXpFwB+6RcAAwAAAAUAAAAKAAAABQAAAAcAAAAEAAAABAAAAAkAAAALAAAAVOkXAFfpFwBc6RcApCcYAGbpFwBt6RcAcekXAHXpFwB+6RcABQAAAAYAAAAIAAAAPxcYAEQXGADXFhgAAgAAAAIAAAADAAAAAwAAAAEAAAACAAAAAQAAAAIAAAACAAAAAgAAAAMAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAoAAAACAAAAAgAAAC4UGAAwFBgAMhQYADUUGAA4FBgAORQYADsUGAA8FBgAPhQYAEAUGABCFBgA9BMYAHgtGABFFBgARhQYAEcUGABIFBgASRQYAEoUGABLFBgATRQYAE8UGABRFBgAWxQYAF0UGAABAAAAAgAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAQAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABxQYAAgUGAAKFBgADBQYAA4UGAAQFBgAEhQYABUUGAAYFBgAHBQYAB4UGAAgFBgAIhQYACUUGAAoFBgAKxQYAAEAAAABAAAAAQAAAAEAAAAGAAAABAAAAAYAAAB4LRgA9BMYAPUTGAD2ExgA9xMYAP0TGAABFBgAAwAAAAMAAAAFAAAA6RMYAOwTGADvExgAIAAAABgAAAAYAAAAGAAAABAAAAAQAAAACAAAAAgAAAAIAAAAFAAAABQAAAAMAAAADAAAAAwAAAAQAAAABAAAAAQAAAAIAAAACAAAABgAAAAYAAAAFAAAAAgAAAAIAAAADAAAAAwAAAAcAAAAHAAAAAQAAAAEAAAABQAAAB04FgAhOBYAJTgWAAwAAAAQAAAADwAAAA8AAAAQAAAADwAAAA8AAAAPAAAADQAAABIAAAANAAAADgAAABIAAAAiORYALjkWAD45FgBNORYAXDkWAGw5FgB7ORYAijkWAJk5FgCmORYAuDkWAMU5FgDTORYABgAAAAkAAAAHAAAAQoYWABQ4FgA7hhYACgAAAAYAAAAFAAAA5kYWAPBGFgD2RhYAAgAAAAIAAAADAAAAAwAAAAEAAAACAAAAAQAAAAIAAAACAAAAAgAAAAMAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAAuFBgAMBQYADIUGAA1FBgAOBQYADkUGAA7FBgAPBQYAD4UGABAFBgAQhQYAPQTGAB4LRgARRQYAEYUGABHFBgASBQYAEkUGABKFBgAWxQYAEsUGABNFBgAXRQYAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAMAAAADAAAABAAAAAIAAAACAAAAAgAAAAMAAAADAAAAAwAAAAMAAAAHFBgACBQYAAoUGAAMFBgADhQYABAUGAASFBgAFRQYABgUGAAcFBgAHhQYACAUGAAiFBgAJRQYACgUGAArFBgAbxcYAIMWGACgGBgAIxgYACIZGABrFxgA7xYYAEweGAB4GhgA1xYYAEQXGAA/FxgAihYYAMkWGABpFxgA0hYYAB4XGAAkFxgAShcYAJQZGABiFxgAgBcYAHoXGAB9FxgA9RYYADYXGAD4FhgAGBcYAAUXGAD/FhgAEhcYAAsXGAAxFxgAKxgYAJEWGAB6GRgArAEYAEgFGABZFxgAPEoWAGoZGABzGRgAZBkYAAgAAAACAAAABQAAAAQAAAACAAAABAAAAAYAAAAGAAAABQAAAAgAAAAGAAAABQAAAAcAAAAEAAAAAgAAAAUAAAAGAAAACQAAAAkAAAAKAAAABwAAAAcAAAADAAAAAwAAAAMAAAAJAAAABwAAAAYAAAAGAAAABgAAAAYAAAAHAAAABQAAAAYAAAAJAAAACAAAAAQAAAAGAAAACQAAAAcAAAAJAAAABwAAAAYAAAAEGRgACRkYACoZGABeGRgAghkYAIoZGAAuGRgAkhkYAKcYGAD6GBgA9BgYAJgYGAClGBgAJBkYAFgZGAATGRgA9xgYAOkTGADsExgA7xMYABgZGAAnGBgAdxcYAHAeGAAYGBgADhkYAMAWGABTFxgA4hYYAB0ZGABPFBgAURQYAPcTGAD9ExgAARQYAAUAAAAFAAAABAAAAAUAAAAIAAAACAAAAAcAAAACAAAABAAAAAcAAAADAAAACAAAAAIAAAAGAAAABgAAAAUAAAADAAAAAwAAAAMAAAAFAAAABQAAAAQAAAADAAAABAAAAAUAAAAFAAAABwAAAAYAAAAGAAAABQAAAAIAAAAKAAAABgAAAAQAAAAGAAAAEAAAAAQAAAAEAAAACAAAAAgAAAAYAAAAGAAAABQAAAAIAAAACAAAAAwAAAAMAAAAHAAAABwAAAAQAAAAEAAAAAgAAAAIAAAACAAAAFWJFgBbiRYAYYkWACAAAAAQAAAAEAAAADAAAAAgAAAAIAAAABAAAAAEAAAABAAAAAgAAAAIAAAAGAAAABgAAAAUAAAACAAAAAgAAAAMAAAADAAAABwAAAAcAAAABgYGBgcHBwcICAgJCQoKCgMEBQECBwcLAQAAADgAAAAoAAAAGAAAACgAAAAYAAAAFAAAAAQAAAAcAAAAKAAAADwAAAAsAAAAHAAAACwAAAAcAAAAGAAAAAgAAAAgAAAALAAAABAAAAAEAAAABAAAAAgAAAAIAAAAGAAAABgAAAAUAAAACAAAAAgAAAAMAAAADAAAABwAAAAcAAAAAgICAgEAAAMCAAAAAwAAAAUAAAAKAAAABQAAAAcAAAAEAAAABAAAAAkAAAALAAAAVOkXAFfpFwBc6RcApCcYAGbpFwBt6RcAcekXAHXpFwB+6RcAEAAAAAQAAAAEAAAACAAAAAgAAAAYAAAAGAAAABQAAAAIAAAACAAAAAwAAAAMAAAAHAAAABwAAAAQAAAAEAAAAAgAAAAIAAAACAAAABQAAAAUAAAADAAAAAwAAAAMAAAAIAAAABgAAAAYAAAAGAAAABAAAAAQAAAABAAAAAgAAAAoAAAAFAAAABQAAAAUAAAAFAAAAAgAAAAMAAAALAAAABgAAAAYAAAAFAAAABQAAAAIAAAADAAAACwAAAAYAAAAGAAAABAAAAAQAAAACAAAAAgAAAAIAAAAFAAAABQAAAAMAAAADAAAAAwAAAACAAAAAgAAAAMAAAADAAAAAQAAAAIAAAABAAAAAgAAAAIAAAACAAAAAwAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAACAAAACgAAAAIAAAACAAAALhQYADAUGAAyFBgANRQYADgUGAA5FBgAOxQYADwUGAA+FBgAQBQYAEIUGAD0ExgAeC0YAEUUGABGFBgARxQYAEgUGABJFBgAShQYAEsUGABNFBgATxQYAFEUGABbFBgAXRQYADgAAAAoAAAAGAAAACgAAAAYAAAAFAAAAAQAAAAcAAAAKAAAADwAAAAsAAAAHAAAACwAAAAcAAAAGAAAAAgAAAAgAAAALAAAADwAAAAsAAAAHAAAACwAAAAcAAAAGAAAAAgAAAAgAAAALAAAABAAAAAQAAAACAAAAAgAAAAIAAAAEAAAAAQAAAAEAAAACAAAAAgAAAAYAAAAGAAAABQAAAAIAAAACAAAAAwAAAAMAAAAHAAAABwAAAABAAAAAQAAAAEAAAABAAAABgAAAAQAAAAGAAAAeC0YAPQTGAD1ExgA9hMYAPcTGAD9ExgAARQYAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAMAAAADAAAABAAAAAIAAAACAAAAAgAAAAMAAAADAAAAAwAAAAMAAAAHFBgACBQYAAoUGAAMFBgADhQYABAUGAASFBgAFRQYABgUGAAcFBgAHhQYACAUGAAiFBgAJRQYACgUGAArFBgAAwAAAAMAAAAFAAAA6RMYAOwTGADvExgAEAAAABAAAAAIAAAACAAAAAgAAAAUAAAAFAAAAAwAAAAMAAAADAAAABQAAAAIAAAACAAAAAwAAAAMAAAAHAAAABwAAAAoAAAAEAAAAEAAAAAsAAAAFAAAAEQAAAAgAAAAEAAAABAAAAAwAAAAIAAAACAAAAAFAAAADAAAAAsAAAALAAAABAAAAODJGADlyRgA8ckYAPzJGAAHyhgAAAAAAAAA8D8AAAAAAAD4PwAAAAAAAAAABtDPQ+v9TD4AQZPw4wALBUADuOI/AEGY8OMACwkBAAAAAwAAAAEAQazw4wALDgEAAIAAAAAAAAAAACsEAEH48OMACwECAEGQ8eMACwI4BABBn/HjAAsLgAAAAAAAAAAAqAQAQbPx4wALC4AAAAAAAAAAAKkEAEHH8eMACwuAAAAAAAAAAACqBABB2/HjAAsLgAAAAAAAAAAAqwQAQe/x4wALC4AAAAAAAAAAAKwEAEGD8uMACwuAAAAAAAAAAACtBABBl/LjAAsLgAAAAAAAAAAArgQAQavy4wALC4AAAAAAAAAAAK8EAEG/8uMACwuAAAAAAAAAAACwBABB0/LjAAsLgAAAAAAAAAAAsQQAQefy4wALC4AAAAAAAAAAALIEAEH78uMACwuAAAAAAAAAAACzBABBj/PjAAsLgAAAAAAAAAAAtAQAQaPz4wALC4AAAAAAAAAAALUEAEG38+MACwuAAAAAAAAAAAC2BABBy/PjAAsLgAAAAAAAAAAAtwQAQd/z4wALC4AAAAAAAAAAALgEAEHz8+MACwuAAAAAAAAAAAC5BABBh/TjAAsLgAAAAAAAAAAAugQAQZv04wALC4AAAAAAAAAAALsEAEGv9OMACwuAAAAAAAAAAAC8BABBw/TjAAsLgAAAAAAAAAAAvQQAQdf04wALC4AAAAAAAAAAAL4EAEHr9OMACwuAAAAAAAAAAAC/BABB//TjAAsLgAAAAAAAAAAAwAQAQZP14wALC4AAAAAAAAAAAMEEAEGn9eMACwuAAAAAAAAAAADCBABBu/XjAAsLgAAAAAAAAAAAwwQAQc/14wALC4AAAAAAAAAAAMQEAEHj9eMACwuAAAAAAAAAAADFBABB9/XjAAsLgAAAAAAAAAAAxgQAQYv24wALC4AAAAAAAAAAAMcEAEGf9uMACwuAAAAAAAAAAADIBABBs/bjAAsLgAAAAAAAAAAAyQQAQcf24wALC4AAAAAAAAAAAMoEAEHb9uMACwuAAAAAAAAAAADLBABB7/bjAAsLgAAAAAAAAAAAzAQAQYP34wALC4AAAAAAAAAAAM0EAEGX9+MACwuAAAAAAAAAAADOBABBq/fjAAsLgAAAAAAAAAAAzwQAQb/34wALC4AAAAAAAAAAANAEAEHT9+MACwuAAAAAAAAAAADRBABB5/fjAAsLgAAAAAAAAAAA0gQAQfv34wALC4AAAAAAAAAAANMEAEGP+OMACwuAAAAAAAAAAADUBABBo/jjAAsLgAAAAAAAAAAA1QQAQbf44wALC4AAAAAAAAAAANYEAEHL+OMACwuAAAAAAAAAAADXBABB3/jjAAsLgAAAAAAAAAAA2AQAQfP44wALC4AAAAAAAAAAANkEAEGH+eMACwuAAAAAAAAAAADaBABBm/njAAsLgAAAAAAAAAAA2wQAQa/54wALC4AAAAAAAAAAANwEAEHD+eMACwuAAAAAAAAAAADdBABB1/njAAsLgAAAAAAAAAAA3gQAQev54wALC4AAAAAAAAAAAN8EAEH/+eMACwuAAAAAAAAAAADgBABBk/rjAAsLgAAAAAAAAAAA4QQAQaf64wALC4AAAAAAAAAAAOIEAEG7+uMACwuAAAAAAAAAAADjBABBz/rjAAsLgAAAAAAAAAAA5AQAQeP64wALC4AAAAAAAAAAAOUEAEH3+uMACwuAAAAAAAAAAADmBABBi/vjAAsLgAAAAAAAAAAA5wQAQZ/74wALC4AAAAAAAAAAAOgEAEGz++MACwuAAAAAAAAAAADpBABBx/vjAAsLgAAAAAAAAAAA6gQAQdv74wALC4AAAAAAAAAAAOsEAEHv++MACwuAAAAAAAAAAADsBABBg/zjAAsLgAAAAAAAAAAA7QQAQZf84wALC4AAAAAAAAAAAO4EAEGr/OMACwuAAAAAAAAAAADvBABBv/zjAAsLgAAAAAAAAAAA8AQAQdP84wALC4AAAAAAAAAAAPEEAEHn/OMACwuAAAAAAAAAAADyBABB+/zjAAsLgAAAAAAAAAAA8wQAQY/94wALC4AAAAAAAAAAAPQEAEGj/eMACwuAAAAAAAAAAAD1BABBt/3jAAsLgAAAAAAAAAAA9gQAQcv94wALC4AAAAAAAAAAAPcEAEHf/eMACwuAAAAAAAAAAAD4BABB8/3jAAsLgAAAAAAAAAAA+QQAQYf+4wALC4AAAAAAAAAAAPoEAEGb/uMACwuAAAAAAAAAAAD7BABBr/7jAAsLgAAAAAAAAAAA/AQAQcP+4wALC4AAAAAAAAAAAP0EAEHX/uMACwuAAAAAAAAAAAD+BABB6/7jAAsLgAAAAAAAAAAA/wQAQf/+4wALAYAAQYn/4wALAQUAQZP/4wALC4AAAAAAAAAAAAEFAEGn/+MACwuAAAAAAAAAAAACBQBBu//jAAsLgAAAAAAAAAAAAwUAQc//4wALC4AAAAAAAAAAAAQFAEHj/+MACwuAAAAAAAAAAAAFBQBB9//jAAsLgAAAAAAAAAAABgUAQYuA5AALC4AAAAAAAAAAAAcFAEGfgOQACwuAAAAAAAAAAAAIBQBBs4DkAAsLgAAAAAAAAAAACQUAQceA5AALC4AAAAAAAAAAAAoFAEHbgOQACwuAAAAAAAAAAAALBQBB74DkAAsLgAAAAAAAAAAADAUAQYOB5AALC4AAAAAAAAAAAA0FAEGXgeQACwuAAAAAAAAAAAAOBQBBsIHkAAsCFwUAQciB5AALAj8FAEHggeQACwECAEcJcHJvZHVjZXJzAQxwcm9jZXNzZWQtYnkCBndhbHJ1cwYwLjIxLjEMd2FzbS1iaW5kZ2VuEjAuMi45MyAoYmY5ODA3YzVhKQ==", "base64"); + var bytes = Buffer2.from("AGFzbQEAAAABzgRJYAJ/fwBgAX8AYAJ/fwF/YAN/f38Bf2ADf39/AGABfwF/YAR/f39/AGAFf39/f38AYAZ/f39/f38AYAR/f39/AX9gAAF/YAd/f39/f39/AGADf39/AX5gA39+fwBgBX9/f39/AX9gAX8BfmACf38BfmAHf39/f39/fwF/YAN/fn4AYAN/fn4Bf2AAAGAAAX5gBn9/f39/fwF/YAJ+fwBgAn9+AGABfgF+YAJ+fgBgBH9+f38AYAR/f39+AGADf39+AX9gAX4AYAR/fH9/AX9gDX9/f39/f39/f39/f38AYAJ/fABgBn9/f39+fwBgD39/f39/f39/f39/f39/fwF/YAR/f35/AGAGf39/fn9/AGADf35/AX9gAn9+AX9gBH5+f38BfmADfn9/AGACfn8Bf2ACfn4BfmADf39+AGAOf39/f39/f39/f39/f38Bf2AIf39/f39/f38Bf2AJf39/f39/f39/AGAEf35/fgF+YAl/f39/f39+fn4AYAV/f39/fwF8YAF8AXxgBn9/fn9+fwBgA35/fwF/YAF/AXxgBX9/f39+AGADf39/AXxgF39/f39/f39/f39/f39/f39/f39/f39/AX9gE39/f39/f39/f39/f39/f39/f38Bf2ALf39/f39/f39/f38Bf2AEf39/fABgAXwBf2AEfn5+fwF+YAR/fn5/AGAEf39/fwF8YAd+fn5/f39/AX5gAn5/AX5gA398fwBgBX9/fX9/AGAEf31/fwBgBX9/fH9/AGAEf3x/fwBgBX9/fn9/AALnEisYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFl9fd2JpbmRnZW5fYm9vbGVhbl9nZXQABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18VX193YmluZGdlbl9zdHJpbmdfbmV3AAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAAGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxRfX3diaW5kZ2VuX2lzX3N0cmluZwAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxRfX3diaW5kZ2VuX2lzX29iamVjdAAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxdfX3diaW5kZ2VuX2lzX3VuZGVmaW5lZAAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXw1fX3diaW5kZ2VuX2luAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld18zZDQ0NmRmOTE1NTEyOGVmAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fE19fd2JpbmRnZW5faXNfZmFsc3kABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18kX193YmdfZ2V0d2l0aHJlZmtleV8xZGMzNjFiZDEwMDUzYmZlAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2xlbmd0aF9kNjVjZjA3ODZiZmM1NzM5AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX2dldF85YWEzZGZmM2YwMjY2MDU0AAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld182ODg4NDZmMzc0MzUxYzkyAAoYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX3NldF8zZjFkMGI5ODRlZDI3MmVkAAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fIF9fd2JnX25ld25vYXJnc19mZDllNGJmOGJlMmJjMTZkAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JnX2NhbGxfYjBkOGUzNjk5MmQ5OTAwZAACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXy1fX3diZ19zdGF0aWNfYWNjZXNzb3JfR0xPQkFMXzBiZTc0NzJlNDkyYWQzZTMAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18yX193Ymdfc3RhdGljX2FjY2Vzc29yX0dMT0JBTF9USElTXzFhNmViNDgyZDEyYzliZmIAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18tX193Ymdfc3RhdGljX2FjY2Vzc29yX1dJTkRPV19hZTFjODBjN2VlYThkNjRhAAoYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fK19fd2JnX3N0YXRpY19hY2Nlc3Nvcl9TRUxGXzFkYzM5OGE4OTVjODIzNTEAChhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18bX193YmdfY2FsbF81MDBkYjk0OGU2OWM3MzMwAAMYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2xlbmd0aF82NWQxY2QxMTcyOWNlZDExAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEV9fd2JpbmRnZW5fbWVtb3J5AAoYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHV9fd2JnX2J1ZmZlcl82MWI3Y2UwMTM0MWQ3Zjg4AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX25ld18zZmY1YjMzYjFjZTcxMmRmAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JnX3NldF8yM2Q2OWRiNGU1YzY2YTZlAAQYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAEYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fG19fd2JpbmRnZW5fb2JqZWN0X2Nsb25lX3JlZgAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxRfX3diaW5kZ2VuX2Vycm9yX25ldwACGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxlfX3diaW5kZ2VuX2pzdmFsX2xvb3NlX2VxAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fFV9fd2JpbmRnZW5fbnVtYmVyX2dldAAAGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXyxfX3diZ19pbnN0YW5jZW9mX1VpbnQ4QXJyYXlfMjhhZjViYzE5ZDZhY2FkOAAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXy1fX3diZ19pbnN0YW5jZW9mX0FycmF5QnVmZmVyXzY3MGRkZGU0NGNkYjI2MDIABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18eX193YmdfZW50cmllc180ZjJiYjliMGQ3MDFjMGY2AAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fF19fd2JpbmRnZW5fZGVidWdfc3RyaW5nAAAYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fEF9fd2JpbmRnZW5fdGhyb3cAABhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18bX193YmdfdGhlbl8wNDM4ZmFkODYwZmUzOGUxAAIYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fJV9fd2JnX3F1ZXVlTWljcm90YXNrXzIxODEwNDBlMDY0YzBkYzgAARhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18lX193YmdfcXVldWVNaWNyb3Rhc2tfZWY5YWM0Mzc2OWNiY2M0ZgAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxZfX3diaW5kZ2VuX2lzX2Z1bmN0aW9uAAUYX193YmluZGdlbl9wbGFjZWhvbGRlcl9fHl9fd2JnX3Jlc29sdmVfMGJmN2M0NGQ2NDE4MDRmOQAFGF9fd2JpbmRnZW5fcGxhY2Vob2xkZXJfXxJfX3diaW5kZ2VuX2NiX2Ryb3AABRhfX3diaW5kZ2VuX3BsYWNlaG9sZGVyX18eX193YmluZGdlbl9jbG9zdXJlX3dyYXBwZXI3Mzc0AAMDmy6ZLggIAAAABAYEBAQGBgQEBwcHERYGBh8ABgQEAAYHAgQEAAAAAAAEBAAAAggEAAAACAcHBAADBQQEBgYECAQABgIAAgYAAAsLCAAGBgACBgIGAAYGBgkAAAAIBAQIBgAAAAACAA4JICAABgYGBAQCAgcICAQEAgAABAgABAcLAAcAAAYAAAgICCEAAAUCBQYEAAYEAAQiIgcLCAYEAgEEAAQAAAMAAAIEBAsEBggACwAABxEHBwcHAAAHAgAABwAAAAAEBAQAAAQABAgCBgAAAA4FBgYFCQYCBgQBBAAABgYAAAECBQABAQEIAAgABAIIBwUHAAQEAAoAAQABAAEEBAsHAQQGAAAABwQBBAEEBgcGAAEDAQEIBgECBgAAAQIHBgAIAAEABAAEAQQEAAQEAAQGAQEBAQEBBwcDAQEBAAYGAAYGAAABAAAACwkBCwAJBAAAAAQEBSMABwICCy0HAwIEAAAAAAYEBgYGAAUBBAkCBAsLAAELCAIABQEAAAEDAwcAAQAABwIBAC4AEQYCAAEFAAAACQAGBAYABAQEAAkAAAcIBwYAAQAABAQCAQEEAQcAAAIGBQEABwEBBgIEAwMHAAAHHwIBBgAEAwcHAAAABAQAAgICAAUAABYDAAgIAgYBBggEAC8DAA4DCQEBAQAAAAQEBgQGAwgGAAYGAAMDBgAAAgEAAAMIBAAEAgAEAAQGBgAEAAADAgAACAgGAQQEGwQAAgkAAQAIAAAAAAAAAAABAQACABYIBgYABgIAADAAAQQCAQEBAQEBAQEAAQEDAQAIAwIBAQEAAgQCAQEBAQEBAQEBAQEBARYAAAAABAQAAQEEAAQLAAIAAAcABAAAAwEBBgsHAQAABwYDARICAQEJAAQCCAAAAAIECAcABQUFAAEBAQEBAAEBAQEEBQYEAAIBBwEAFwEAAAQBAgYCBAQDAAcAAAAAAAAAAAgABAIxBAACCAAAAQAEBwUEAAAABAIAAgEABAQGAgQECggGGwYGAQQEAgEAAAQCBgYDAAQRAAAEAAAAAQAGAQYAADIGBAAGBgYCBQQCFgQFBQUAAgIEBAAHAQABMwIEAgYAAAQECAUAAAIGBhEAADQEBAAABgIBAQEBAQ4EBQQLDwEkAzUcBAYHBQIEBgcCAAIICAMAAgQCAwgEAAADAgc2AAcAAQEEAQAABwQCAgAEAAYIBAAEAgAABwcGBgIFAgABAAQEBAAAAgIAAQAABAAEBAYGAAAENwAAAQACAAIBBwEICQQBBwIGBgIAAgMBBgQFASUAAQACAAAABAAACQICAgkCAwAAADgEAQgAAAACBQgAAQEIAAQEBwMDCAIACQQAAQUCBAAIAAgEDwAEACUCAAQABA0AAAEFAQMIAAEAAQACBAQJBAAADwICAQAmAQEAAAEABAgRAgcABAANBAAABgIHAgQAAgACAgEAAQECBAQBAgAEAAQEAgYGAAEAAQUABAQAAQICBAIAAAgIAgAABgEAAQIEAQAIAAYEBAAAAgAACAQJCQMEAAAAAAEACAgABAQBBAECAAEEBgAACQAAAAECAgABAhgBBAMBAAYEAAEGAQAAAAQAAAEBAQEBAQQBAAAGBAQDDwEBAAQFAAEBAgcBAQIGBAABAAACBAQGBgAEBAMBBAYAGAACBAAIOQEHAAQAAAMABAYBAQIEBAIHBgIACQgBAgAEAAQACAQABAICBAECAAEFEQYDAgICADoJEAQDAQQACQACBAYAAQEEBAEADgABAgcAAAABAgQAAwYCBgACBQIGBwQAAAIjAgADBgQCAgIBAQMCAAYCCwIEBAQGAAYEAAABBgYnAAAABgIEAwADBAAEBQQIAgIAOwAAAQUEBQEJAAYFCAYGBgMFAAAAAAMLAwAABQUICAAGAgIEAAAAAAADAAUAAAACEQQCAgABAgIAAgQAAQEBAQAAAAAABQUABRgOEAYGAgIBBgYCAAYAAAYGAgECAgEAAQEBBggFBQUAAAAAAAABAAABBAUEAAAAAAAGAQAAAAMGBgMAAgAFDwIAAAAAAAAAAAAABAQBBwUEBQIAAAUCAgICAAAAAAECAAIFBgIAAAAFAAICAQMHAAAFAAIAAgICAgABAwMEAAsABQIAAAUBAAECAQIACwICAgICAgICAgICAgICAgIBAAQCAQYBAAAEAgAAAAACAgICAgkAAAAJAgICAgACAgAGBAAEBAICAgIAAAQCAgICAgICAgICAgICAgICAgUAAAAAAAAAAAQGBgYAAAUFBQAFAAoCBQIEAwYAAAAAAgIBBAYCBQEFBQUGBAkCBQICGAIAAAABCAABCAEIBgYBAAECAAABBwEDAgIDCAwHCQACAQIAAgACAgEBAAACAAYCDQ4AAQIAAAQFBAAGBAAGBAUAAgQAAQABAAcCPAAFAAAAAAAAAAMAEgcDBAAABAAGAgA9BgAAAwQHCAg+AAIFBgYGBggCBQkAAQABBAUEAAAAAQUFAQgDHQAAAgUCAgABBQUAAgAEAAUCAAQBCQUEAQAFAwAFBQgABQEEBQMHCQAFBAUFAgAFAAAAAAYAAAYABwQABQIACAICAAIoKAACBQMAAAAAAAAABQAAAAAAAAAAAAAAAAIDAAAAAAAABAAIBAACAQAAAAAGAAABBAQACQAABQAAABICAAUAAAUBAQAABgICAgICAQAGAQIHBAAHAAkGAAAHAQECAgICAgICAgICAgIABwAAAAAHAAICBQQEBAQABAQEAAQIAAMCAAUBAAAAAQgAAAABAAEBAgAIBQUFBQkECQcBBAIAAwABHQADBQEAAh0BBgACAAECAAQABQICAQMHAwICAgAFAQQAAQYGBgIBAQEBAQEBAQEBBAIAAQACBAABBgMBAQAEAgUPAQACAgICAgICAgICAAANAAAAAAAFABQAAD8AAAAEAQkJBQAFAQAHAgICAgIAAAAAAQAAAAYAAAEEAgICCAYAAAAGAgIBAAUEAgIFBQQABQUEAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUAAgUADQIABAMBAAAGAAEBAQEBAAAAAAEBAAEAAAAAAQEBAQABAAYBAAACAAIEAgEZAAAHAgMIAQABAQcBAQAAAAAABAQFAgABAgICAgIBAAABAAUEBAQCAAAABgACBAAAAgICAgYAAgICAAACAgICAgICAgAAABAAAAUABAICAgICAgABBQACBAEAAAAECQAFBAIDAQAIAAUGAAQEBAQFAgABAAcEBAUFAAECAgcHAAECAgICAgICAgIDAgAABwcEAQEFAgICAgICAgICAgICAgICAgICAgICAgAAAAAAAA8BAQAAAAAAAgQEAgICAgQAAAQEAgUCAAECBQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAABAAAAAQABAAEGAAACBgAEBAIFAQgKBQQHAgICAQICAQICAgICAgIBKQECAAEBAQEBAQECBwEBAAQCAgEEAAEBAAAAAgIABAQBAAYBBAQAAAMEBQUFBQQGBgACAgABAAAFBQABAQEEAAQAAAADBgoBAAYEAAQAAQcDBAQAAQAAAQQBAQAAAAAAAAABAAcGBAEEAAYEAQUBAAUABAEPAAEBBgAEAQANBQEAAQACAgIABgIAAAAAAAAAAAADAAgAAQADAggFAQEEAAUEAQECAgIBAAEBAQABAAEBAQEBAQIAAgICAQICAgICBAQCAgEEAQICAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgEFAAEAAQEBAQEBAQQBBQABEAEBAQEIAQEDAwEBAQIBAAABAQEBBAIBBQEHAQoBAQBAAAEAAAAAAAAAAAAAAAAAAAICAgcCAgIBAgAABwIJBgECAgICAgICAggAAgICAAEHAQIAAgECAgEBAgEBAQEBAAAAAQEBAQUBAQEBAQEBAQEAAQAAAQICAgEBAQABAQEBAQEBAAAABwAAAAUABAEFAQQBBQEFAAAAAAUCAAAAAQIAAAABAAABQQICAQEAAgACAg0BBAAFBAAEAAkIBAQCAAYCAgIFAQUFAwUFBQUFBQUFBQEBAQEBAQEBAAEqAQEBAQUBAQEBBQEAAQEBAgACCwYAABUEBAEJBAkABAcDBQIEAAEAHgEBAQEBAQEBAAAAAQANAAAAAAEBAQwBAAAAAAAAAAEBAQEBAQEBAAEBAQEEAAAAAAEBAAEBBQIEAg8GAgICBAkGAQEACwIAAQUADAwDAgQAAQEBAQEFCQUCBgICBgUBAQEBAQABAAEBAQEBBgATEwUCAgUAAwYOAgAAAAECAgQAAAICAAAAAAQCAgUFAQICAAAAAAAAAAIMBgYGBgICAgICAgICAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwcCBwQCAgEQEAUCAgAGAgICAgIFAAICBgACAgICBgQCAgAABQAeDAYZAQIAAAICAQEBAgEBAQIAAgEBDQAAAQEBAQEBAQEBAQEFAQEBAQEBEgETAgACABQUAQIBARQUAAAhAAUDFBQFAgEBAgMCAgICCQAYAgICAgICAgACAgMCAgAAAQIFBQABBQAFAQIBARcAAAIFAgICBwcFAgIGAgIGBwICAgICAgICAAICAAQHAgAHAAQCAwIBAgUFBwcCBQEDBQIrAgIFAQEBAQEBAAEBAAIFAAAFAgICAAEBAQEAQgAAAAAAAQEBAQAAACkAAAEFAQEBBQUBAQEAAQEBBgAEAAMAAAAEBwAAAAABAQkABQAAAAAABQQrAAABAAAABAUAAAAABQEABQICBAACAQEAAQABBAAEBBIAAQECHAcFABAAAQEBDAAAAgcGAgcFAQEBAQEBBgEAAAUAARwFAA0BAQEBAQEBAQEAAAQEAgEAAgIFAAICASwBJAIJAQICAgABAQcCAgEAAAICAgIBAAABAAoBAQoAAAICAgsGBAQFAQEEAAQCAgICCwIGBgYCAgkAAAAAAAEBAQUBAQYGBgYBAQAAAAABAQEBAQICAgEDAAAAAQcGBAUJAgYCAQEHBwEEAgUFBioCAgwGAAAAAQUCAgICAgUABgICAQEAAAAAAQACBgAAAAAAAQgCAAEAAAAHAAAACQIBAQEBAQAAAAAGAQUAAAEBAAAJAwUCAAEDAwYAAAAAAQEQAQEAAAMAAAAAAAAABAIAAAAZAAAAAAABAAAAAABDAAABABAAAAAAAAADCQkJCQEJAwcHAQEWAwkEAwMsAQMDAwMHAwkCGAkCCQYCBQwABQQCDAEBAAwCAQkECQEAAQkEAQUEAAEHDkRGSAADAQEFBQUQAQkEAgICAwQEBgYGCQEBAQECDAEBAAEBAQEBAQEBAQQAAAQGAAUTBAQKCgICCQITBgABAQEBAAUAAgEFAAAAAAAXBQIFAQEBAQEKAQEBAQEBAQACAgIBAAEBAgUBAQQFAQEBAQQEBQQEBAUBAgUEBAABAAIDCQAEAwECAAUCAgQDBwQMAQEBAQUFAQEFAQEBAQEKAQEMAQEBAQAAAAEAAAEBAAEMAQEAAQEBAQEBAQEBAQoBAQEBAQEBAQoFAQEFAQEAAQEEBAIBAQQBCQkBAgICBQQDAgABAQEBBQEBAQECAQEBBgYBAQEBAQEBAQEBAQAAAAEAAQAABAAAAAAEBAAAAAEBAQEBAQEAAAAAAAAAAQEBAAAAAAAAAAAAAAEBAQEMBAEBAQEBAQEBAQEBAQEBAQEAAAEBAQEBAQABBAEBAQAAAAAAAAAAAAABAQEAAQEBAQEGAAECAQEAAQEBBwMBAQABAAABAAQBBAIBCgoKCgoKCgoKCgoKAAoBAQABAQEBDwoCBQEBAQEBAQEBAQEBDAwAAAEBAQEAAAABAQIBAQEAAAAABQECAgICAgUKAwEABAQDBwIMAgUZAAEBFwENAQEBAQEBAQEFAQQBAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAEAAAACAAAAAAAAAAABAQAAAQAAAQIBAQABAAABAQEBAQEBAQEBAAACAAAAAAAAAAAAAAAAAAAAAAABAQICAgICAgICAQQAABIDAAICAgQCAgICEgACAQAEAgICAAIEAQEBAQIBAQEBAQEBAQEAAQUBAQEBAQEBAQEBAQIBAQEBAQECAgICBgICAgIFBQEBAQEBAQEBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQABAQEBAQABAQEBAQAAAAAAAAABAQEBAQEBAQEAAAABAQEBAQEBAQAAAAEBAQEBAQEBAQEAAAAAAQEBAAAAAQEBAQAAAQEBAQEAAAEBAQEBAQABAQEBAQEBAQEEAwEDAAAAAAAEAAAAAAAAAAAAAAAAAAABAQEBAQEBAQIBAgUFBQMFAgcBAAEBAQECBQEAAQMBBgEBAQEBAQEBAQEeAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEJAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAEBAQEBAQEBAQEBAQEBAQEaAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAEAAQEBAQEBAQEBAQAAAAACAQEAAAICAgICAQIAAQAAAAIEBgEBAQEBAgMAAQEBAQACAQQBAQEBAQEBAQEBAQUBAQQBBQEBAQEBAQEBBAAEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAQEBAQEBBQEFAQEBASYBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAUFAAAFAQEBAQEBAQEEBAQBAAABAAAAAAAAAAAAAQEAAAEBAAEBAQABBQIDAAEAAAMAAAICAwIAAAAAAQAAAwAAAgkAAAEAAQIEBAUCAgIFAAUAAgIBAAAAAAMJAAAAAAAAAAABAgIABQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQIBAQIABAQEBAIAAQEBBQACAgQCBAMEAgICAgICAgUFBQICAgICAgICAgUFBQEFAgECAgIBAgEBAwIBAQICAgICAAIDAgICAAADAgAFBRoaAQUBARcBAQEVAgEBARUVFRUVAgICAwMCAgICAgICFwEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgICAgICAgICAgICAgICAgICAgUCAgEBAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBQAAAAAAAAAAAgABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAUCAAIEAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgEFAAAAAAEBAwUCAgsFAQUFBQUAAAAAAAABAQABAQEAAQAAAAAAAAAAAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAAEABQEAAAAAAAAAAgABBQUFBQUFBQUCBQUFBQUFAQUFBQEBAQUFAQUFBQUFBQoEAAQHAXABoAugCwUDAQAaBgkBfwFBgIDAAAsH1AEKBm1lbW9yeQIACXRyYW5zZm9ybQC8Eg10cmFuc2Zvcm1TeW5jAIAUE19fd2JpbmRnZW5fZXhwb3J0XzAA6h8TX193YmluZGdlbl9leHBvcnRfMQEAE19fd2JpbmRnZW5fZXhwb3J0XzIA1BgTX193YmluZGdlbl9leHBvcnRfMwDiHB9fX3diaW5kZ2VuX2FkZF90b19zdGFja19wb2ludGVyAMsqE19fd2JpbmRnZW5fZXhwb3J0XzQAxCETX193YmluZGdlbl9leHBvcnRfNQCvIAnFFgIAQQELrAXXBq0o0Q3dBbIozSbdKeMqqCPBHZkOzirHJNMmzSatKJcK3RnsHd0tpxvLBtYY3i30CtcY9AKqAtga3hntCYwN0CrWEd8PuhL7E9UqjhbvG7EP7R2pG7ED7h2AD9cR1CroDOsSkBGsI50XuyS+KN8ejQ2PDdkqjg38E68e8xuoGdALgyvDBLMokBb5DsEXqxjNKsYkxSTUDK4b0w3EHcAMkhaNDvMfsw/yH/Mfwh/zIK8g8h/yH/Qf9R/2H/QWzSbkGaQXqRnfB6oZ4A3IAuIq5CrQAcUd5irWB+8SzBvwEs0b8RLKG7wblhbPJIIU8hLBB5gNwxv2Eu4QugXfCrcPzwr0FNsm/RvBG/US/BLcJsgb5SrjGsIboBPvEK0e/xuFDu4q9RTCEowB5BqCGLIZgBznCMQb9xLsKs4hwBO4IKID6gzhCIUPyRuGB8wGlgeVC40HmQ2WDZcNhxjmELgLyB3KDMMM+h2yF8IT+hL7EuULyQvqGbYelBbkAY0CyxuVFu8qnR3aCLYBzhvJHbcZhxi4GYkc/xK0F8YT/RLOHfELmwyVBskThiqXFpwNmBabDcMC0AigHeARhBTtDNYM1QygF8sU0CHtBrcO9irvGe4ZsQzpDfkq0R2sI+sN1hiqIOYpxAaqCqUZ1QayKOgEuAOuB5AdgSuCK/8q6RCDK+cYtSOAIcwT8hDNE80MvB7zJPQQgyt3qRuCHqgj1CHlLYUrvRe9HtMbmhypGJsW5RGlDdMdqhjhBocr9hnvDOYRgx6jDb4XgRPSHaQN7gycFs4o9iSCIfoatyPZH9cM/hrZHZYrzxTfCMYrgQKfK6AroSvvEfAR8RGHFIMatA3NK8IIsA2XHJAaxxbIFskWphSFEoYShxKnFKgUiBKcEJ0QyhbUK8MIqRSeEIkLyxaqFMwWzRbOFp0UmhSNGscR+hGhFL0WxRafFKUUnhTRK6sUgRvMHs0e1BKlK5wI/xGAErUMgRL8Ec4LlRDyEdIUixOgFokU/hHVK4oU+AzlE8URwxaGCacrixTUE/ADkhSKGosakxSqFpEUqxapFvYRkBSsFsYRlBSVFJcQ9BGYEOIHrRafEaUH8xHmE8srjBTYE4IHzQu0CrUKqAjrCKgW6QmNFLkNkQ6uFpcUoBGZFIcN0RaRGokSoRG2DKor2gqcFLAWuRbzC+EMixLUFtAWoRaIC4gV3A7dDv0Q3g6FGpEKkB6RHpIe3w6GGv4QiRXoC+kL/xCHGogakx6/CccryCvJK4ka+g7dHaQWyiuOFKUWjxT0D48T9QzXEswrzBT1Gc4rpha6Df0VpCvNDv8P1RPPK8Ue8gzuCtArtw3RFNIr0yvZE40TjBXhE9oTrhStFJ8MgxCBEIIQohH+FfYM/xX3DPgRvBaaEN4XuAzPFqAQ0hbTFooSgBC+FrsW9Av5EZAT3xexFo4amxSjEeEQtg2ME4YbjBr7EZkQ0xSyFt4d2BLdE4sV3hPWK98T2RK2FtwTnwqgFKoN+gz5DN4DsxaPGqQRoxSiFMQWuhbCFsAWtBamEZsQvxa3FqQUghK3DLgWhBL9EdoSyBHbEvEM+wzEHt8dtRbGFpQhkSCWFPMM5BPIHt8hxh7HHowSlA6KG6gR3A2rDecTqSutDdUU4hOtCpofgBHbDbENVPwq/AyfEKUR9AyOE68WmBT3EZYQpxbjE9grsg3WFNsTkw6sFNcrpivgHY8Grw7aK9UW2yvSINMgjBvSINQgkSOjIZIjkSPeH+8H2SDiH+IfoSLjH9kgtiOmEMEOmhHJDKsmjxL9LIANvii9FJkB0S2RFqEOzwSeF+UtAEGuBQvyBcQh1ibEIY4d3QrAHcIJ6iCyKIgQ8xepKM8p8xfCLtspjBGYF+UtqiinI6MZ3C28FasozynCLrAkrCiuKLIksSimG/MP2y2vKLMksCilILQkuy7VGukbuBPqG/gFux/rG5sJmRfzDeoUtQu4EpML2RrLEJoX3A/rFPIOnBfaGr8VrB7YKqoutiirI6surSDvFqwuuSStLq4u7hvQJtEq0irtH2ruINAE1yq1KKojpi71CpMIpy64JKguqS7uH88m0yrjKfUXmAHtIPYH1iq0KKkjoi65E4QOoy63JKQupS72F84mzyreKfAb2BHHIfAWiAfaKrwkvSTbKegp9we+JLwksiioI7wopyO5KOoD/gjBJLoowCS7KK4gvySrJK4kqSStJKok9CSsJK8kqCTrIrAelhL/CN4qgQvrAr0u2ymNKvsH4C3yG7UH4CqiBN4V3yq6E80QzxDOEMwQ8SnhKskktA/AKOAV+Af5B+ck+Cn8G80h5RqxLuIa6CrsEOcZvS6yLpQGnQaVB5MClBHCKKgX6CrsEOcZsC7bJJADlAP7BIMBlBH/H9YQ6CqwC9cQry6BGMoC2wKpA3KUEacX7BDnKq4Mwgz6C9UNzQOUEbUurhe8LuQVwy67LuAKiQmOCtoH7gnDKKkXvC7kFbsu6SrFDYILlgyECeMLxSisF+Mt5xXDLrQu+g2lC9sMqAmYDK0Xxg2DC5kMhQnkC68XpgvKCdgKgwiyCuoqqhfhLeUVtwvcCekKlAjECsQoqxfiLeYV6yqzLvkNpAvaDKcJlwzuHvsbziS/E+we2ibCFMEo+hv6H/kbmR34G/gg9xvRG/ophBzBE48H7Sq7CekarxnFE8QTwxPwKrMX8iq2Locc7Bq9JMcTixzwGrwJwAf+EpMIgAajGLsuvS7HBcUU1ATZEfsLthC0LssoigejC4QP6yr4DbAXuy7tHtYO1w72HvMauw+AE7kX+iqSHPsq2SrxFdQH/Sr0Gu4kzAy7Hu8k8CTxJJUIuxfBBu4qiA/8Cd0QzQGBCfUkmRzPKIYrqw7iJr4uiSuyC4ormwLDLsMuwy7UG78usi3gIeoFzAuOK7MLtC2CG5knrSu+A5onvg+kD6UPmyecJ6YPriudJ68rvw/mLcAPkg7BD54n5y2wK8IPnyegJ6En0hWiJ7ErsiuzK7QrtSu2K7cruCu5K7oruyu8K70rviu/K8ArwSvCK8MrxCvFK6Mnpw+kJ6Un2g2gB6gnoxamJ+4m0xPcF7YKkCCLJ7MN+yTWE7cu3RfMIPURowLwJoMSty6rJ9QU1xPgE5Mh6gupJ4Ynrg2tJ9UdoSWoK/wmrw37JO8mrA3BFqMliyO4DYQh1xSFJ7UNqh2nEb0u2SvCBsAu4yvkK+Ur5ivnK+gr6SvqK+sr7CvtK+4r7yvwK/Er8ivzK/Qr9Sv2K/cr+Cv5K/or+yv8K/0r/iv/K4AsgSyCLIMshCyFLIYshyyILIksiiyLLIwsjSyOLI8skCyRLJIskyyULJUsliyXLJgsmSyaLJssnCydLJ4snyygLKEsoiyjLKQspSymLKcsqCypLKosqyysLK0sriyvLLAssSyyLLMstCy1LLYstyy4LLksuiy7LLwsvSy+LL8swCzBLMIswyzELMUsxizHLMgsySyJKfQsnQumEpYprCmxLe8OwS6+KrMtli73H6wuuC65Lo8ooB6+DLYp5Ru3KesX7BdHui7OEasfyRDdIOYbrB/kFJgZnx69KrIpsym1KaUQ0g+hHtkiviL2E8AfnCOmDfAMuAXmFMUFly7VCsMpqROqE/UQ+AqqFekPqxOsE/YQ+QqrFeoP9AeJD6EGzBLFKdcNzRLCCskpyimdGewN3AioE80o9RrSLZ8uqRDAJswpyCqfLqoQvybLKcMmzimmJM0p5ynHKcgp5xSYAtYp6BTQKcIm0ynaGaQb0SnBJtIp2xmMHdMtgAPLCqAu+hPoIKgo3AX5E+cgyya+HaceoRnZLaEujR3qBvIVCvL4fZku37kBAg9/A34jAEGACGsiBiQAIAFBKGohBwJAAkACQCABLQD4AiIKQQJHDQAgBxDjDSIIRQ0AIAgoAgBBAkcNACAILQAIQQJHDQAgCC0ACUETRw0AIAcQ4RIiCEUNACAIKAIAQQJHDQAgCC0ACA0AIAgtAAlBDUcNACAHEOMNIgNFBEAgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahCBFSEBIABBEzYCACAAIAE2AgQMAgsCQCADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBEzYCACAAIAE2AgQMAwsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahDHCiAHEOMNIgMEQAJAIAMoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYNAUHl7OAAQShBsKXgABD0FwALIAEoAighBCABQSU2AiggASABKQNANwN4QQwhCCAGQcQGaiABQSxqIgNBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgBDYCuAYgBkG4BmoQxwogBkGQBGogASACQQEQfCAGKAKUBCEBIAACfyAGKAKQBEEBcQRAQQQhCEETDAELIABBBjYCCEERCzYCACAAIAhqIAE2AgAMBAsgASgCLCEBIABBEzYCACAAIAE2AgQMAwsgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahCBFSEBIABBEzYCACAAIAE2AgQMAgtB5ezgAEEoQaCl4AAQ9BcACyAHEOMNIghFBEAgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahCBFSEBIABBEzYCACAAIAE2AgQMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCCgCACIJQQJHBEAgCUENRg0BIAlBJEcNMyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNEiABKAIsIQEgAEETNgIAIAAgATYCBAw0C0EEIAgtAAgiD0ECa0H/AXEiCSAJQQRPGw4FATIyMgIyCyAGQQE6ALcEIAYgASkBggM3AJsEIAYgASgBmgM2ALMEIAYgAUGKA2oiAikBADcAowQgBiABQZIDaiIDKQEANwCrBCAGQdEGaiABQZcDaikAADcAACAGQcwGaiADKQEANwIAIAZBxAZqIAIpAQA3AgAgBiABKQGCAzcCvAYgAUGAAWogBkGbBGoQyQggBiABNgK4BkEAIQMgBkHwBWogAUEAEJcGAkAgBigC8AVBgICAgHhHBEAgACAGKQLwBTcCBCAAQRRqIAZBgAZqKQIANwIAIABBDGogBkH4BWopAgA3AgAMAQsgACAGKAL0BTYCBEETIQMLIAAgAzYCACAGQbgGahCjJgwyCyAILQAJDhobATACARYwAzAEBRUGBwgfHhQTEh0cMDAwETALIA9BAXFFDQ8MLwtBACEIAkAgBxDjDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUEBRiEICyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEMcKIAcQ4w0iBEUNFyABQSxqIQMgBCgCAEEOaw4CFxYVCyAGQfgAaiAHELgUIAYoAnwhAiAGKAJ4IQMgBkH1ADoAuAYgASADIAIgBkG4BmoiBBDYGSAEIAEQ5QECQCAGKAK4BkEJRwRAIAQQvyEMAQsgBkG4BmpBBHIQnSMLIAZBuAZqIgQgARDKCCAEEOIgIAMgAhCmHCEBIAAgAjYCDCAAIAM2AgggACABNgIEIABBEjYCAAwuCyAHEN4gIQMgBxDjDSICRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDC4LIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNCyABKAIsIQEgAEETNgIAIAAgATYCBAwuCyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAI2ArgGIAZBuAZqIgQQxwogBkGBAjsAggUgBiABLQCeAzoAlAUgBiABKQGCAzcA+AQgBiABQYoDaiICLwEAOwCABSAGIAEpAY4DNwCEBSAGIAEpAZYDNwCMBSAGQYkGaiABQZcDaikAADcAACAGQYQGaiABQZIDaikBADcCACAGQfwFaiACKQEANwIAIAYgASkBggM3AvQFIAFBgAFqIAZB+ARqEMkIIAYgATYC8AUgBCABEMEqIAZBqAFqIAQQ/xogBigCrAEhBCAGKAKoAQRAIABBEzYCACAAIAQ2AgQgBkHwBWoQoyYMLgsgBiAENgLgByAGQfAFahCjJgJAAkACQCAHEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRRGDQELIAZBwAZqIAcQlgsgBkGIAWogBxC4FCAGQaCe4AA2ArwGIAZBNDoAuAYgBigCiAEgBigCjAEgBkG4BmoQgRUhAiAHEOMNIgNFDSwgAygCAEEkRg0BDCwLIAEoAighCCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAINgK4BiAGQbgGahDHCgJAAkAgBxDjDSIIBEAgCCgCAEEJRg0BCyAGQcAGaiAHEJYLIAZBkAFqIAcQuBQgBkHw5d8ANgK8BiAGQTQ6ALgGIAYoApABIAYoApQBIAZBuAZqEIEVIQIgBxDjDSIDRQ0sIAMoAgBBJEYNAQwsCyABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQcQGaiINIAJBCGopAgA3AgAgBkHMBmoiCyACQRBqKAIANgIAIAYgAikCADcCvAYgBiAINgK4BiAGQbgGaiIJEMcKIAkgAUEBEOISIAZBoAFqIAYoArgGEJEGIAYoAqQBIQggBigCoAFFBEAgBiAINgLwBSAJEKMmAkACQCAHEOMNIgpFDQAgCigCAEEKRw0AIAEoAighCiABQSU2AiggASABKQNANwN4IA0gAkEIaikCADcCACALIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAo2ArgGIAkQxwogBxDjDSIKDQEMLQsgBkHABmogBxCWCyAGQZgBaiAHELgUIAZByOXfADYCvAYgBkE0OgC4BiAGKAKYASAGKAKcASAGQbgGahCBFSECIAcQ4w0iA0UNKyADKAIAQSRHDSsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQ0gASABKAIsEIYMDCsLAkACQCAKKAIAQQ5rDgItAQALIAcQuyEaDCwLIAEoAighCiABQSU2AiggASABKQNANwN4IAZBxAZqIAJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgCjYCuAYgBkG4BmoQxwoMKwsgAEETNgIAIAAgCDYCBCAGQbgGahCjJgwtCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNCSABIAEoAiwQhgwMKgsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQcgASABKAIsEIYMDCoLIAZBsAFqIAcQuBQgBigCtAEhAiAGKAKwASEDIAZB9QA6ALgGIAEgAyACIAZBuAZqIgQQ2BkgBCABEMoIIAQQ4iAgAyACEKYcIQEgACACNgIMIAAgAzYCCCAAIAE2AgQgAEESNgIADCwLIAcQ3iAhCiAHEOMNIgJFBEAgASgC2AIhASAGQQA6ALgGIAEgASAGQbgGahCBFSEBIABBEzYCACAAIAE2AgQMLAsCQAJAIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYNAUHl7OAAQShBmKDgABD0FwALIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAjYCuAYgAUEsaiEEIAZBuAZqEMcKQQAhAyAHEN4gIQIgBxDjDSIIDQEMJgsgASgCLCEBIABBEzYCACAAIAE2AgQMLAsgCCgCAEECRw0kIAgtAAhBAkcNJCAILQAJDSQgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiADNgK4BiAGQbgGahDHCiACIAEoAnwiAyACIANJGyEOIAIgAyACIANLGyEPQQEhAwwkCyAGQbgGaiABEIEBIAACfyAGKAK4BgRAIAAgBikCuAY3AgQgAEEUaiAGQcgGaigCADYCACAAQQxqIAZBwAZqKQIANwIAQQgMAQsgACAGKAK8BjYCBEETCzYCAAwqCyAHEN4gIQIgBxDjDSIDRQRAIAEoAtgCIQMgBkEAOgC4BiADIAMgBkG4BmoQgRUhAyAAQRM2AgAgACADNgIEDCILIAMoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABKAIsIQMgAEETNgIAIAAgAzYCBAwiCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEMcKAkACQAJAAkAgBxDjDSIDRQ0AIAMoAgBBPnFBDkYNACAHELshRQ0BC0EAIQogBkEANgLwBQwBCyAGQbgGaiIDIAFBARDiEiAGQaACaiAGKAK4BhCRBiAGKAKkAiEKIAYoAqACDQEgBiAKNgLwBSADEKMmCyAHEOMNIgNFDSECQAJAIAMoAgBBDmsOAiMAAQsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUEsaiIDQQhqKQIANwIAIAZBzAZqIANBEGooAgA2AgAgBiADKQIANwK8BiAGIAQ2ArgGIAZBuAZqEMcKDCILIAcQuyENISAGQcAGaiAHEJYLIAZBmAJqIAcQuBQgBkGQxOAANgK8BiAGQTQ6ALgGIAYoApgCIAYoApwCIAZBuAZqEIEVIQMgBxDjDSIERQ0gIAQoAgBBJEcNICABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABIAEoAiwQhgwMIAsgAEETNgIAIAAgCjYCBCAGQbgGahCjJgwhCyAHEN4gIQkgBxDjDSICRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDCkLAkAgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDCoLIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAjYCuAYgBkG4BmoQxwoCQCAHEOMNIgIEQCACKAIAQQlGDQELIAZBwAZqIAcQlgsgBkGoAmogBxC4FCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCqAIgBigCrAIgBkG4BmoQgRUhAiAHEOMNIgNFDR8gAygCAEEkRg0ZDB8LIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiCEEIaikCADcCACAGQcwGaiAIQRBqKAIANgIAIAYgCCkCADcCvAYgBiACNgK4BiAGQbgGaiIDEMcKIAMgAUEBEOISIAZB4AJqIAYoArgGEJEGIAYoAuQCIQIgBigC4AJFBEAgBiACNgKgBSADEKMmAkAgBxDjDSICBEAgAigCAEEKRg0BCyAGQcAGaiAHEJYLIAZBsAJqIAcQuBQgBkHI5d8ANgK8BiAGQTQ6ALgGIAYoArACIAYoArQCIAZBuAZqEIEVIQIgBxDjDSIDRQ0eIAMoAgBBJEYNGwweCyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAGQcQGaiIDIAhBCGoiDSkCADcCACAGQcwGaiIEIAhBEGoiCygCADYCACAGIAgpAgA3ArwGIAYgAjYCuAYgBkG4BmoiChDHCiAGQQA2AsgFIAZCgICAgMAANwLABSAHEOMNIgJFDRsgAigCAEENRw0bIAEoAighAiABQSU2AiggASABKQNANwN4IAMgDSkCADcCACAEIAsoAgA2AgAgBiAIKQIANwK8BiAGIAI2ArgGIAoQxwogBkEBOgDrByAGIAEtAIwDOgDqByAGIAEtAJ4DOgD8ByAGIAEpAYIDNwDgByAGIAFBigNqIgIvAQA7AOgHIAYgASkBjgM3AOwHIAYgASkBlgM3APQHIAZBkQVqIAFBlwNqKQAANwAAIAZBjAVqIAFBkgNqKQEANwIAIAZBhAVqIAIpAQA3AgAgBiABKQGCAzcC/AQgAUGAAWogBkHgB2oQyQggBiABNgL4BCAGQfAFakEEciEKIAZBwAZqIREgBkH4BWohEAJAAkACQANAAkACQAJAAkACQAJAIAcQ4w0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBAkYNAQsgBxDjDSICRQ0BIAIoAgBBAkcNASACLQAIQQJHDQEgAi0ACUEGRw0BCyAGQQA2AuwFIAZCgICAgIABNwLkBSAHEOMNIgJFDQEgAigCAEECRw0BIAItAAhBAkcNASACLQAJIAcQ3iAhBCAKIAgpAgA3AgAgCkEIaiANKQIANwIAIApBEGogCygCADYCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGIAM2AvAFIAZB8AVqIgMQxwpBAkcNAiADIAFBARDiEiAGQdgCaiAGKALwBRCRBiAGKALcAiECIAYoAtgCRQRAIAYgAjYCsAUgAxCjJgwECyAGQfAFahCjJgwGCyAGQfgEahCjJgJAIAcQ4w0iAkUNACACKAIAQQ5HDQAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogCEEIaikCADcCACAGQcwGaiAIQRBqKAIANgIAIAYgCCkCADcCvAYgBiACNgK4BiAGQbgGahDHCiAAIAYpAsAFNwIEIABBDGogBkHIBWooAgA2AgAgACAGKAKgBTYCECAAQQk2AgAgACAJIAEoAnwiASABIAlJGzYCGCAAIAkgASABIAlLGzYCFAwyCyAGQcAGaiAHEJYLIAZBwAJqIAcQuBQgBkGw4d8ANgK8BiAGQTQ6ALgGIAYoAsACIAYoAsQCIAZBuAZqEIEVIQICQCAHEOMNIgNFDQAgAygCAEEkRw0AIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEgASgCLBCGDAwBC0Hl7OAAQShBqKTgABD0FwALIABBEzYCACAAIAI2AgQMIwsgBxDeICEEIAogCCkCADcCACAKQQhqIA0pAgA3AgAgCkEQaiALKAIANgIAIAEoAighAiABQSU2AiggASABKQNANwN4IAYgAjYC8AUgBkHwBWoQxwoLAkAgDgRAIAZByAJqIAcQuBQgBigCzAIhAiAGKALIAiAGIBI2AvgFIAYgEzYC9AUgBkE5OgDwBSACIAZB8AVqEIEVIQIgBxDjDSIDRQ0FIAMoAgBBJEcNBSABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABIAEoAiwQhgwMBQtBACECIAZBADYCsAUgBCABKAJ8IgMgAyAESxshEyAEIAMgAyAESRshEkEBIQ4MAQtB5ezgAEEoQdik4AAQ9BcACwJAIAcQ4w0iAwRAIAMoAgBBE0YNAQsgBkH4BWogBxCWCyAGQdACaiAHELgUIAZBoODfADYC9AUgBkE0OgDwBSAGKALQAiAGKALUAiAGQfAFahCBFSECIAcQ4w0iA0UNAiADKAIAQSRHDQIgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQQgASABKAIsEIYMDAILIAogCCkCADcCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAKQQhqIA0pAgA3AgAgCkEQaiALKAIANgIAIAYgAzYC8AUgBkHwBWoQxwoCQAJAA0AgBxDjDSIDBEAgBkEANgK4ByAGIAM2ArwHIAZBuAdqEJAkAkAgBxDjDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUECRg0DCwJAIAcQ4w0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBBkYNAwsgBxDjDSIDBEAgAygCAEEORg0DCyAGQfAFaiABQQFBABC4AiAGKAL0BSEDIAYoAvAFIgxBE0YNAyARIBBBKBD7BhogBiADNgK8BiAGIAw2ArgGIAZB5AVqIAZBuAZqEPwZDAELCyABKALYAiEDIAZBADoA8AUgBiADIAMgBkHwBWoQgRU2ArwHIAZBATYCuAcgBkG4B2oQkCQLIAQgASgCfCIMIAQgDEkbIRQgBigCyAUiDyAGKALABUYEQCAGQcAFahDEFwsgBigCxAUgD0EYbGoiAyAGKQLkBTcCACADIAI2AhQgAyAEIAwgBCAMSxs2AhAgAyAUNgIMIANBCGogBkHsBWooAgA2AgAgBiAPQQFqNgLIBQwBCwsgAyECCyAGQbAFahCQKAsgBkHkBWoQ6SYgAEETNgIAIAAgAjYCBCAGQfgEahCjJgwdC0Hl7OAAQShB6KTgABD0FwALIABBEzYCACAAIAI2AgQgBkG4BmoQoyYMKQtB5ezgAEEoQYik4AAQ9BcAC0Hl7OAAQShB+KPgABD0FwALQeXs4ABBKEHoo+AAEPQXAAtB5ezgAEEoQbie4AAQ9BcAC0Hl7OAAQShBkJ7gABD0FwALQeXs4ABBKEGAnuAAEPQXAAtB5ezgAEEoQfCd4AAQ9BcAC0Hl7OAAQShBwKXgABD0FwALAkACQAJAAkACQAJAIAgtAAkiBEEFaw4EASUlAgALIARBDUYNAiAEQRJHIApBAkdyDSQgBxDhEiIDRQ0kIAMoAgBBAkcNJCAHEL4hDSQgBxDeICECIAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQxwogBkGIBGogASACEJ8CIAYoAowEIQEgBigCiAQNAyAAIAE2AgwgAEEENgIIIABBETYCAAwlCyAKQQJHDSMgBxDhEiIDRQ0jIAMoAgBBAkcNIyAHEL4hDSMgBxDeICECIAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQxwogBkHwA2ogASACELsEIAYoAvQDIQEgBigC8ANFBEAgACABNgIMIABBBTYCCCAAQRE2AgAMJQsgAEETNgIAIAAgATYCBAwkCyADRQ0iIAZB+ANqIAEgAkEAEIICIAYoAvwDIQMgBigC+AMNAiADRQ0iIAAgAzYCDCAAQQM2AgggAEERNgIADCMLIApBAkcNISAHEOESIgNFDSEgAygCAEECRw0hIAcQviENISAHEN4gIQIgBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAEoAighAyABQSU2AiggASABKQNANwN4IAYgASkCLDcCvAYgBiADNgK4BiAGQbgGahDHCiAGQYAEaiABIAJBABB8IAYoAoQEIQEgBigCgARFBEAgACABNgIMIABBBjYCCCAAQRE2AgAMIwsgAEETNgIAIAAgATYCBAwiCyAAQRM2AgAgACABNgIEDCELIABBEzYCACAAIAM2AgQMIAsgA0UEQCAGQegDaiAHELgUIAYoAuwDIQMgBigC6AMhBCAGQQE6ALgGIAEgBCADIAZBuAZqENgZCyAGQfAFaiIDIAEgAiACIAVBABCIBCAAAn8gBigC8AVBCEcEQCAGQbwGaiADQSgQ+wYaIABBBGogBkG4BmpBLBD7BhpBEQwBCyAAIAYoAvQFNgIEQRMLNgIADCALIANFDR0gBkGQA2ogAUEAEIQBIAYoApQDIQEgBigCkANFBEAgACABNgIMIABBAjYCCCAAQRE2AgAMHwsgAEETNgIAIAAgATYCBAweCyADRQ0cIAcQ4RIiA0UNHCADEIcGEN4QRQ0cIAZBiANqIAFBABCEASAGKAKMAyEBIAYoAogDRQRAIAAgATYCDCAAQQI2AgggAEERNgIADB4LIABBEzYCACAAIAE2AgQMHQsgBkGAA2ogAUEAEIQBIAYoAoQDIQEgBigCgAMEQCAAQRM2AgAgACABNgIEDB0LIAAgATYCDCAAQQI2AgggAEERNgIADBwLIANFBEAgBkGQAmogBxC4FCAGKAKUAiECIAYoApACIQMgBkEBOgC4BiABIAMgAiAGQbgGahDYGQsgBkHABmogBUEIaigCADYCACAGIAUpAgA3A7gGIAZB8AVqIgIgASAGQbgGaiIBEMApIAACfyAGKALwBUEIRwRAIAZBvAZqIAJBKBD7BhogAEEEaiABQSwQ+wYaQREMAQsgACAGKAL0BTYCBEETCzYCAAwcCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEMcKAkACQAJAIAcQ4w0iA0UNAAJAAkAgAygCAEEOaw4CAgABCyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQSxqIgNBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgBDYCuAYgBkG4BmoQxwoMAQsgBxC7IQ0AIAZBwAZqIAcQlgsgBkGAAWogBxC4FCAGQZDE4AA2ArwGIAZBNDoAuAYgBigCgAEgBigChAEgBkG4BmoQgRUhAiAHEOMNIgNFDQIgAygCAEEkRg0BDAILIABBAjYCACAAIAIgASgCfCIBIAEgAkkbNgIIIAAgAiABIAEgAksbNgIEDBwLIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEgASgCLBCGDAwBC0Hl7OAAQShB8KXgABD0FwALIABBEzYCACAAIAI2AgQMGgsgBxC7IQ0BIAZBuAZqIAEgAS0AigNBf3NBAXEgAS0AiQNBf3NBAXEQ/QEgBigCuAYhBAJAAkAgBi0AzAYiCkECRwRAIAZBgAVqIg0gBkHIBmooAgA2AgAgBkHiB2ogBkHPBmotAAA6AAAgBiAGKQPABjcD+AQgBiAGLwDNBjsB4AcgBigCvAYhCQJAAkAgBxDjDSILRQ0AAkACQCALKAIAQQ5rDgICAAELIAEoAighCyABQSU2AiggASABKQNANwN4IAZBxAZqIANBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgCzYCuAYgBkG4BmoQxwoMAQsgBxC7IUUNAQsgBkGABmogDSgCADYCACAGQYcGaiAGQeIHai0AADoAACAGIAk2AvQFIAYgBDYC8AUgBiAGKQP4BDcD+AUgBiAKOgCEBiAGIAYvAeAHOwCFBkEADAYLIAZBwAZqIAcQlgsgBkHwAGogBxC4FCAGQZDE4AA2ArwGIAZBNDoAuAYgBigCcCAGKAJ0IAZBuAZqEIEVIQIgBxDjDSIDRQ0CIAMoAgBBJEcNAiABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABIAEoAiwQhgwMAgsgAEETNgIAIAAgBDYCBAwbC0Hl7OAAQShB4KXgABD0FwALIABBEzYCACAAIAI2AgQgBK0gCa1CIIaEIAoQviMMGQsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahDHCgsgBkECOgCEBkEBCyEDIAIgASgCfCIKIAIgCkkbIQQgAiAKIAIgCksbIQICfwJAIAhFBEAgAS0AjANBAXFFBEAgBkGOAToAuAYgASAEIAIgBkG4BmoQ2BkMAgsgAw0BIAZB8AVqIAEoAgwgASgCEBCwGA0BIAZBigE6ALgGIAEgBCACIAZBuAZqENgZDAELAkACQCADRQRAIAZB8AVqIAEoAgwgASgCEBCwGEUNAQsgAS0AjQNBAXENASAGQYgBOgC4BiABIAQgAiAGQbgGahDYGQwBCyAGQY8BOgC4BiABIAQgAiAGQbgGahDYGQtBBgwBC0EHCyEBIAAgAjYCDCAAIAQ2AgggACABNgIAIAAgBikD8AU3AxAgAEEYaiAGQfgFaikDADcDACAAQSBqIAZBgAZqKQMANwMADBYLAkACQCADRQRAIARFDRcMAQsgBEUNAQsgAUEBOgAkIAEtAIQDQQFxDQAgBkHoAGogBxC4FCAGKAJsIQMgBigCaCEEIAZBEzoAuAYgASAEIAMgBkG4BmoQ2BkLIAcQ4RIiA0UNFCADKAIAQQJHDRQgAy0ACA0UIAMtAAlBCEcNFCAHEN4gIQQgBxDjDSIDRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBYLAkACQAJAAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDBoLIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQxwogBkHgAGogASACQQEQggIgBigCZCEDIAYoAmAEQCAAQRM2AgAgACADNgIEDBoLIAMEQCAAIAM2AgwgAEEDNgIIIABBETYCAAwaCyAGQdgAaiABQQEgBBCTAyAGKAJcIQMgBigCWA0BIAZBuAZqIgQgAUEBEOISIAZB0ABqIAYoArgGIANBABD9CiAGKAJUIQMgBigCUA0CIAQQoyYgBxDjDSIERQ0DAkACQCAEKAIAQQ5rDgIFAQALIAcQuyEaDAQLIAEoAighCCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiAINgK4BiAGQbgGahDHCgwDC0Hl7OAAQShB0KXgABD0FwALIABBEzYCACAAIAM2AgQMFwsgAEETNgIAIAAgAzYCBCAGQbgGahCjJgwWCyAAIAM2AgQgAEESNgIAIAAgAiABKAJ8IgEgASACSRs2AgwgACACIAEgASACSxs2AggMFQsgAS0A+AJBAkYEQCAGQeADaiAHELgUIAYoAuQDIQIgBigC4AMhAyAGQasBOgC4BiABIAMgAiAGQbgGahDYGQsgBkHYA2ogBxC4FCAGKALcAyECIAYoAtgDIQMgBkHKADoAuAYgASADIAIgBkG4BmoiBBDXHiAHEN4gIQMgBxDjDSICRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBBCBFSEBIABBEzYCACAAIAE2AgQMFQsCQAJAAkACQAJAAkACQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBEzYCACAAIAE2AgQMHAsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUE0aikCADcCACAGQcwGaiABQTxqKAIANgIAIAYgASkCLDcCvAYgBiACNgK4BiAGQbgGahDHCgJAAkAgBxDjDSICBEAgAigCAEEJRg0BCyAGQcAGaiAHEJYLIAZBuANqIAcQuBQgBkHw5d8ANgK8BiAGQTQ6ALgGIAYoArgDIAYoArwDIAZBuAZqEIEVIQIgBxDjDSIDRQ0IIAMoAgBBJEYNAQwICyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQSxqIgJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgBDYCuAYgBkG4BmoiCRDHCiAJIAFBARDiEiAGQdADaiAGKAK4BhCRBiAGKALUAyEEIAYoAtADDQIgBiAENgLgByAJEKMmAkACQCAHEOMNIggEQCAIKAIAQQpGDQELIAZBwAZqIAcQlgsgBkHAA2ogBxC4FCAGQcjl3wA2ArwGIAZBNDoAuAYgBigCwAMgBigCxAMgBkG4BmoQgRUhAiAHEOMNIgNFDQcgAygCAEEkRg0BDAcLIAEoAighCCABQSU2AiggASABKQNANwN4IAZBxAZqIAJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgCDYCuAYgBkG4BmoiCRDHCiAGQQE6AIsFIAYgAS0AlAM6AIoFIAYgAS0AngM6AJQFIAYgASkBggM3APgEIAYgAUGKA2oiAikBADcAgAUgBiABQZIDaiIILwEAOwCIBSAGIAEpAZYDNwCMBSAGQYkGaiABQZcDaikAADcAACAGQYQGaiAIKQEANwIAIAZB/AVqIAIpAQA3AgAgBiABKQGCAzcC9AUgAUGAAWogBkH4BGoQyQggBiABNgLwBSAJIAEQwSogBkHIA2ogCRD/GiAGKALMAyECIAYoAsgDRQRAIAZB8AVqEKMmIAAgAjYCCCAAIAQ2AgQgAEEDNgIAIAAgAyABKAJ8IgEgASADSRs2AhAgACADIAEgASADSxs2AgwMHgsgAEETNgIAIAAgAjYCBCAGQfAFahCjJgwHCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQhgwMBQsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIYMDAYLQeXs4ABBKEGYoeAAEPQXAAsgAEETNgIAIAAgBDYCBCAGQbgGahCjJgwZC0Hl7OAAQShBqKHgABD0FwALQeXs4ABBKEG4oeAAEPQXAAsgAEETNgIAIAAgAjYCBAsgBkHgB2oQuCkMFQsgAEETNgIAIAAgAjYCBAwUCyAHEN4gIQMgBxDjDSICRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBQLAkACQAJAAkACQAJAAkAgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDBsLIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAjYCuAYgBkG4BmoQxwoCQAJAIAcQ4w0iAgRAIAIoAgBBCUYNAQsgBkHABmogBxCWCyAGQZgDaiAHELgUIAZB8OXfADYCvAYgBkE0OgC4BiAGKAKYAyAGKAKcAyAGQbgGahCBFSECIAcQ4w0iA0UNCCADKAIAQSRGDQEMCAsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggBkHEBmogAUEsaiICQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAQ2ArgGIAZBuAZqIgkQxwogCSABQQEQ4hIgBkGwA2ogBigCuAYQkQYgBigCtAMhBCAGKAKwAw0CIAYgBDYC4AcgCRCjJgJAAkAgBxDjDSIIBEAgCCgCAEEKRg0BCyAGQcAGaiAHEJYLIAZBoANqIAcQuBQgBkHI5d8ANgK8BiAGQTQ6ALgGIAYoAqADIAYoAqQDIAZBuAZqEIEVIQIgBxDjDSIDRQ0HIAMoAgBBJEYNAQwHCyABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQcQGaiACQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAg2ArgGIAZBuAZqIgkQxwogBkGBAjsAggUgBiABLQCeAzoAlAUgBiABKQGCAzcA+AQgBiABQYoDaiICLwEAOwCABSAGIAEpAY4DNwCEBSAGIAEpAZYDNwCMBSAGQYkGaiABQZcDaikAADcAACAGQYQGaiABQZIDaikBADcCACAGQfwFaiACKQEANwIAIAYgASkBggM3AvQFIAFBgAFqIAZB+ARqEMkIIAYgATYC8AUgCSABEMEqIAZBqANqIAkQ/xogBigCrAMhAiAGKAKoA0UEQCAGQfAFahCjJiAAIAI2AgggACAENgIEIABBDDYCACAAIAMgASgCfCIBIAEgA0kbNgIQIAAgAyABIAEgA0sbNgIMDB0LIABBEzYCACAAIAI2AgQgBkHwBWoQoyYMBwsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIYMDAULIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0DIAEgASgCLBCGDAwGC0Hl7OAAQShBqKPgABD0FwALIABBEzYCACAAIAQ2AgQgBkG4BmoQoyYMGAtB5ezgAEEoQbij4AAQ9BcAC0Hl7OAAQShByKPgABD0FwALIABBEzYCACAAIAI2AgQLIAZB4AdqELgpDBQLIABBEzYCACAAIAI2AgQMEwsgBxDeICECIAcQ4w0iA0UEQCABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwTCwJAAkACQAJAAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDBgLIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoiCRDHCiAJIAFBABCXBiAGKAK8BiEDIAYoArgGIgRBgICAgHhGDQEgBkGIBWogBkHIBmopAgA3AgAgBiAGKQLABjcCgAUgBiADNgL8BCAGIAQ2AvgEIAcQ3iAhAyAJIAEQ5QEgBigCvAYhBCAGKAK4BiIIQQlHBEAgBkH4BWogBkHABmpBwAAQ+wYaIAYgBDYC9AUgBiAINgLwBSAJIAEQygggBigCvAYhBCAGKAK4BiIKQYGAgIB4Rg0DIAZB6AdqIAZByAZqKQIANwMAIAYgBikCwAY3A+AHIApBgICAgHhHIAhBCEdyDQUgBkH1ADoAuAYgASADIAMgCRDYGQwFCyAAQRM2AgAgACAENgIEDAMLQeXs4ABBKEHooOAAEPQXAAsgAEETNgIAIAAgAzYCBAwVCyAAQRM2AgAgACAENgIEIAZB8AVqEL8hCyAGQfgEahDpJgwTCyABKAJ8IQEgBkGQB2ogBkGIBWopAgA3AwAgBkGIB2ogBkGABWopAgA3AwAgBiAGKQL4BDcDgAcgBkG4BmoiAyAGQfAFakHIABD7BhogBkGoB2ogBkHoB2opAwA3AwAgBiACIAEgASACSRs2ArQHIAYgAiABIAEgAksbNgKwByAGIAQ2ApwHIAYgCjYCmAcgBiAGKQPgBzcDoAcgACADEJsqNgIEIABBCzYCAAwSCyAHEN4gIQIgBxDjDSIDRQRAIAEoAtgCIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBILAkACQAJAAkACQAJAAkAgAygCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEoAiwhASAAQRM2AgAgACABNgIEDBkLIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoiBBDHCiAHELshRQRAIAQgAUEBEOISIAZB+AJqIAYoArgGEJEGIAYoAvwCIQMgBigC+AINAiAGIAM2AvAFIAQQoyYgBxDjDSIERQ0HAkACQCAEKAIAQQ5rDgIJAAELIAEoAighCCABQSU2AiggASABKQNANwN4IAZBxAZqIAFBLGoiBEEIaikCADcCACAGQcwGaiAEQRBqKAIANgIAIAYgBCkCADcCvAYgBiAINgK4BiAGQbgGahDHCgwICyAHELshDQcgBkHABmogBxCWCyAGQfACaiAHELgUIAZBkMTgADYCvAYgBkE0OgC4BiAGKALwAiAGKAL0AiAGQbgGahCBFSECIAcQ4w0iA0UNBiADKAIAQSRHDQYgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIYMDAYLIAZB6AJqIAcQuBQgBigC7AIhAiAGKALoAiAGQS46ALgGIAIgBkG4BmoQgRUhAiAHEOMNIgNFDQQgAygCAEEkRw0EIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0DIAEgASgCLBCGDAwEC0Hl7OAAQShB6KLgABD0FwALIABBEzYCACAAIAM2AgQgBkG4BmoQoyYMFgtB5ezgAEEoQfii4AAQ9BcAC0Hl7OAAQShBiKPgABD0FwALIABBEzYCACAAIAI2AgQMEwsgAEETNgIAIAAgAjYCBCAGQfAFahC4KQwSCyAAIAM2AgQgAEEKNgIAIAAgAiABKAJ8IgEgASACSRs2AgwgACACIAEgASACSxs2AggMEQsgASABKQNANwN4IAEoAiggAUElNgIoQSRGBEAgASABKAIsEIYMDAYLQeXs4ABBKEHIpOAAEPQXAAsgASABKQNANwN4IAEoAiggAUElNgIoQSRGBEAgASABKAIsEIYMDAMLQeXs4ABBKEG4pOAAEPQXAAsgBkHABmogBxCWCyAGQbgCaiAHELgUIAZB2OHfADYCvAYgBkE0OgC4BiAGKAK4AiAGKAK8AiAGQbgGahCBFSECAkAgBxDjDSIDRQ0AIAMoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQhgwMAQtB5ezgAEEoQZik4AAQ9BcACyAAQRM2AgAgACACNgIECyAGQcAFahCBJwwBCyAAQRM2AgAgACACNgIECyAGQaAFahC4KQwLCyAAQRM2AgAgACACNgIEDAoLIABBEzYCACAAIAM2AgQgBkHwBWoQkCgMAQsgACAKNgIMIABBBDYCACAAIAIgASgCfCIDIAIgA0sbNgIIIAAgAiADIAIgA0kbNgIECyABLQCVA0EBcQ0HIAEtAPgCQQJHBEAgAS0A/wJBAXENCAsgASgCfCEAIAZBywA6ALgGIAEgAiAAIAAgAksbIAIgACAAIAJJGyAGQbgGahDYGQwHCwJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAHEOMNIgIEQCACKAIAQQlGDQELIAZBwAZqIAcQlgsgBkG4AWogBxC4FCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCuAEgBigCvAEgBkG4BmoQgRUhAiAHEOMNIgNFDREgAygCAEEkRg0BDBELIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAjYCuAYgBkG4BmoiCRDHCiABKAGCAyECIAZBzQZqIAFBlwNqIggpAAA3AAAgBkHGBmogAUGQA2opAQA3AQAgBiABKQGIAzcBvgYgBkGEBWogAUGKA2opAQA3AgAgBkGMBWogAUGSA2opAQA3AgAgBkGRBWogCCkAADcAACAGIAM6AL0GIAZBAToAvAYgBiACNgK4BiAGIAEpAYIDNwL8BCABQYABaiIRIAkQyQggBiABNgL4BAJAAkACQCAHEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRNGDQELAkAgBxDjDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUERRg0BCwJAIAcQ4w0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBEkcNACAHEOESIgJFDQAgAhCHBhDeEA0BCyAHEOMNIgJFDQEgAigCAEEPRw0BIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIARBCGopAgA3AgAgBkHMBmogBEEQaigCADYCACAGIAQpAgA3ArwGIAYgAjYCuAYgBkG4BmoQxwogBkGwBWogAUECIAYQjQQMDwsgBkGIAmogAUEBEIQBIAYoAowCIQIgBigCiAIEQCAGQQU2ArAFIAYgAjYCtAUMEAsCQAJAAkAgBxDjDSIIRQ0AIAgoAgBBAkcNACAILQAIDQAgCC0ACUEERg0BCwJAIAcQ4w0iCEUNACAIKAIAQQJHDQAgCC0ACEECRw0AIAgtAAlBHkYNAQsgBxDjDSIIRQ0BIAgoAgBBD0cNASABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAg2ArgGIAZBuAZqEMcKIAZBsAVqIAFBACACEI0EDBALIAJBCGooAgAiCEEBRg0NIAIoAgQiDCAIQThsaiEIQQAhCUEBIQsDQAJAIAlBAXEEQCAIIAxGDREMAQsgCCAMa0E4biALTQ0QIAwgC0E4bGohDAsgBkGAAmogDBCQDCAGKAKEAiEJIAYoAoACIQ0gBkHMADoAuAYgASANIAkgBkG4BmoQ2BkgDEE4aiEMQQAhC0EBIQkMAAsACyAGQcAGaiAHEJYLIAZB6AFqIAcQuBQgBkGQxOAANgK8BiAGQTQ6ALgGIAYoAugBIAYoAuwBIAZBuAZqEIEVIQMgBxDjDSIERQ0LIAQoAgBBJEcNCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABIAEoAiwQhgwMCwsgBxDeICEIIAZBuAZqIgkgAUEAEOISIAZB4AFqIAYoArgGEJEGIAYoAuQBIQIgBigC4AFFBEAgBiACNgLMByAJEKMmAkACQCABLQD4AkECRwRAIAEtAIEDQQFxRQ0BCyACQZi94ABBBRCRHyILRQRAIAIoAgBBIkcNASACKAIEQZi94ABBBRCRH0UNAQsCQCAHEOMNIglFDQAgCSgCAEECRw0AIAktAAgNACAJLQAJQQRGDQELAkAgBxDhEiIJRQ0AIAkoAgBBAkcNACAJLQAIDQAgCS0ACUEERg0CCyAHEOESIglFDQAgCSgCAEECRw0AIAktAAhBAkcNACAJLQAJQR5GDQELAkACQAJAAkAgBxDjDSIIRQ0AIAgoAgBBAkcNACAILQAIDQAgCC0ACUEERg0BCwJAIAcQ4w0iCEUNACAIKAIAQQJHDQAgCC0ACEECRw0AIAgtAAlBHkYNAQsgBxDjDSIIRQ0BIAgoAgBBD0cNASABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAg2ArgGIAZBuAZqEMcKIAZBsAVqIAFBASACEI0EDBILQQEhCwJAIAcQ4w0iCEUNACAIKAIAQQJHDQAgCC0ACEECRw0AIAgtAAlBHkchCwsgBkG4BmogAUECIAIQYyAGKAK8BiEJIAYoArgGIghBB0YNByAGQfgHaiINIAZB2AZqKQMAIhU3AwAgBkHwB2oiDCAGQdAGaikDACIWNwMAIAZB6AdqIhAgBkHIBmopAwAiFzcDACAGQYAGaiAXNwMAIAZBiAZqIBY3AwAgBkGQBmogFTcDACAGIAYpA8AGIhU3A+AHIAYgCTYC9AUgBiAINgLwBSAGIBU3A/gFIAEtAPgCQQJHIAtyRQ0BDA0LIAZBwAZqIAcQlgsgBkHQAWogBxC4FCAGQZDE4AA2ArwGIAZBNDoAuAYgBigC0AEgBigC1AEgBkG4BmoQgRUhAiAHEOMNIghFDQogCCgCAEEkRw0KIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0FIAEgASgCLBCGDAwKCyAIRSAIQQZGcg0LIAZB2AFqIAZB8AVqEJAMIAYoAtwBIQIgBigC2AEhCyAGQbABOgC4BiABIAsgAiAGQbgGahDYGQwLCyAGQbgGaiISIAFBABCgBCAGKAK4BiENIAYtAMwGIgxBAkYNBSAGQcAHaiIQIAZBxAZqKQIANwMAIAYgBikCvAY3A7gHIAYgBikAzQY3A9AHIAYgBkHUBmooAAA2ANcHIAEoAnwhCUE4QQgQqyAiAiANNgIIIAJBADYCACACIAw6ABwgAkEAOgA0IAJBADYCMCACIAYpA7gHNwIMIAJBFGogECkDADcCACACIAYpA9AHNwAdIAJBJGogBigA1wc2AAAgAiAIIAkgCCAJSxsiDTYCLCACIAggCSAIIAlJGyIJNgIoQRhBBBCrICIIIAtBAXM6ABQgCCANNgIQIAggCTYCDCAIQQE2AgggCCACNgIEIAhBATYCACAHEOMNIgJFBEAgASgC2AIhAiAGQQA6ALgGIAIgAiASEIEVIQIMCAsCQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCECDAkLIAZBsAVqIAFBASAIEL8GDAoLQeXs4ABBKEGIoOAAEPQXAAsgBkEFNgKwBSAGIAI2ArQFIAZBuAZqEKMmDA0LIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0EIAEgASgCLBCGDAwPC0Hl7OAAQShB6J/gABD0FwALQeXs4ABBKEH4n+AAEPQXAAsgBiAJNgK0BSAGQQU2ArAFDAkLIAYgDTYCtAUgBkEFNgKwBQwDC0Hl7OAAQShB2KDgABD0FwALIAZBBTYCsAUgBiACNgK0BSAIEOAoDAELIAZBBTYCsAUgBiACNgK0BQsgBkHMB2oQuCkMBAtBKEEIEKsgIgIgCTYCBCACIAg2AgAgAiAGKQPgBzcDCCACQRBqIBApAwA3AwAgAkEYaiAMKQMANwMAIAJBIGogDSkDADcDACAGQbAFaiABQQIgAhC/BgwDCyAGQQU2ArAFIAYgAzYCtAUgAhCUKwwDCwJAIAEtAIUDQQFxRQRAIAcQ4w0iCEUNASAIKAIAQQJHDQEgCC0ACA0BIAgtAAlBBEcNAQsgAkEEaiIIKAIAIAJBCGoiCSgCAEGon+AAEK8jKAIwRQ0AIAZB+AFqIAgoAgAgCSgCAEG4n+AAEK8jEJAMIAYoAvwBIQggBigC+AEhCSAGQc0AOgC4BiABIAkgCCAGQbgGahDYGQsgAS0A+AJBAkcNACACQQRqKAIAIAJBCGooAgBByJ/gABCvIyIIKAIAIglBA0sNACAIIAlBAnRBqPPjAGooAgBqKAIARQ0AIAZB8AFqIAJBBGooAgAgAkEIaigCAEHYn+AAEK8jEJAMIAYoAvQBIQggBigC8AEhCSAGQa8BOgC4BiABIAkgCCAGQbgGahDYGQsgBkGwBWogAUEAIAIQvwYLIAYoArQFIgwgBigCsAUiAkEFRg0BGiAGIAYpArgFNwKoBSAGIAw2AqQFIAYgAjYCoAUgBkH4BGoQoyYCQAJAAkACfwJAAkACQAJAAkACQAJAAkAgBxDjDSIIBEAgCCgCAEEKRg0BCyAGQcAGaiAHEJYLIAZBwAFqIAcQuBQgBkHI5d8ANgK8BiAGQTQ6ALgGIAYoAsABIAYoAsQBIAZBuAZqEIEVIQMgBxDjDSIERQ0KIAQoAgBBJEYNAQwKCyABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQcQGaiAEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAg2ArgGIAZBuAZqIgkQxwogBkGBAjsAygUgBiABLQCeAzoA3AUgBiABKQGCAzcAwAUgBiABLwGKAzsAyAUgBiABKQGOAzcAzAUgBiABKQGWAzcA1AUgBkGJBmogAUGCA2oiBEEVaikAADcAACAGQYQGaiAEQRBqKQEANwIAIAZB/AVqIARBCGopAQA3AgAgBiAEKQEANwL0BSARIAZBwAVqEMkIIAYgATYC8AUgCSABEMEqIAZByAFqIAkQ/xogBigCzAEhCCAGKALIAUUEQCAGIAg2ArgHIAZB8AVqEKMmIAogASgCfCIEIAQgCksbIQkgCiAEIAQgCkkbIQoCQAJAAkAgAkECa0EAIAJBA2tBAkkbQQFrDgICAQALIAYgDDYC9AUgBiACNgLwBSAGIAYoAqgFIg02AuAHIAYgBigCrAUiCzYC+AQgA0UEQEEOIQEgCCEEIAkhCCAKIQkgDSEKIAshAwwJCyAGQdIAOgC4BiAOIA8gBkG4BmoQgRUhAiAHEOMNIgNFDQkgAygCAEEkRw0JIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0EIAEgASgCLBCGDAwJC0EQIQEgBigCrAUhBCAGKAKoBSEMIAYoAqQFIQIMBwsgBiAGKAKoBSIMNgL0BSAGIAYoAqQFIgI2AvAFIAYgBigCrAUiBDYC+AQgA0UEQEEPIQEMBwsgBkHSADoAuAYgDiAPIAZBuAZqEIEVIQIgBxDjDSIDRQ0FIAMoAgBBJEcNBSABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQhgwMBQsgAEETNgIAIAAgCDYCBCAGQfAFahCjJkEBIQNBASEADAgLIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0CIAEgASgCLBCGDAwIC0Hl7OAAQShBqKDgABD0FwALQeXs4ABBKEG4oOAAEPQXAAtB5ezgAEEoQcig4AAQ9BcACyAAQRM2AgAgACACNgIEIAZB+ARqELgpIAZB8AVqELsdQQEhA0EADAILIAAgAzYCHCAAIAo2AhggACAJNgIUIAAgCDYCECAAIAQ2AgwgACAMNgIIIAAgAjYCBCAAIAE2AgAMDgsgAEETNgIAIAAgAjYCBCAGQfgEahCQKCAGQeAHahCQKCAGQfAFahC8HUEAIQNBAQshACAGQbgHahDTBgsgBigCoAUhAgwBCyAAQRM2AgAgACADNgIEQQEhA0EBIQALIAZBpAVqIQECQAJAAkAgAkECa0EAIAJBA2tBAkkbQQFrDgICAAELIAEQux0gBkGsBWoQuCkMCwsgA0UNCiAGQaAFahC8HSAGQagFahCQKCAGQawFahCQKAwKCyAARQ0JIAEQux0gBkGsBWoQuCkMCQsgBigCtAULIQwgAEETNgIAIAAgDDYCBCAGQfgEahCjJgwHCyAAQRM2AgAgACACNgIEDAYLIABBEzYCACAAIAI2AgQgBkHwBWoQuCkMAwsgACAENgIIIAAgCDYCBCAAQQ02AgAgACADIAEoAnwiASABIANJGzYCECAAIAMgASABIANLGzYCDAwECyAAQRM2AgAgACACNgIEDAELIABBEzYCACAAIAI2AgQLIAZB4AdqENMGDAELAkAgBxDjDSIDRQ0AIAMoAgBBD0cNACABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEMcKIABBATYCACAAIAIgASgCfCIBIAEgAkkbNgIIIAAgAiABIAEgAksbNgIEDAELAkAgBxDjDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUECRw0AIAcQ4RIiA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBC0cNACAHEL4hDQAgBkHwBWoiAiABIAUQyQcgAAJ/IAYoAvAFQQhHBEAgBkG8BmogAkEoEPsGGiAAQQRqIAZBuAZqQSwQ+wYaQREMAQsgACAGKAL0BTYCBEETCzYCAAwCCyAGQbgGaiIEIAFBARDiEiAGQcgAaiAGKAK4BhCRBiAGKAJMIQ0CQAJAAkACQAJAIAYoAkhFBEAgBBCjJiANIggoAgAiCUEaRw0DIAZByARqIgogCEEYaikDADcDACAGQcAEaiILIAhBEGopAwA3AwAgBiAIKQMINwO4BCAHEOMNIgNFDQIgAygCAEETRw0CIAEoAighAiABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAjYCuAYgBBDHCiAGQQE6AIMFQQAhBCAGQQA6AJQFIAYgAS0AjAM6AIIFIAYgASkBggM3APgEIAYgAUGKA2oiAi8BADsAgAUgBiABKQGOAzcAhAUgBiABKQGWAzcAjAUgBkGJBmogAUGXA2opAAA3AAAgBkGEBmogAUGSA2opAQA3AgAgBkH8BWogAikBADcCACAGIAEpAYIDNwL0BSABQYABaiAGQfgEahDJCCAGIAE2AvAFIAZB0AVqIAopAwA3AwAgBkHIBWogCykDACIVNwMAIAYgBikDuAQ3A8AFIAZBADYCwAcgBkKAgICAwAA3ArgHIAEoAgwiCCABKAIQQQN0aiECIBWnIQxBBCEJDAELIABBEzYCACAAIA02AgQgBkG4BmoQoyYMBQsDQAJAIAIgCEcEQCAGQcAFaiAIEJoKIAhBCGohCA0BDAILIAFBCGohDyAGKQPABRD8GiEVIAEoAhAiCCABKAIIRgRAIA8QzBcLIAEoAgwgCEEDdGogFTcDACABIAhBAWo2AhACQAJAAn8CQAJAAkACQCAHEOMNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQQtGDQELIAZBuAZqIAEQwSogBigCvAYhCCAGKAK4BiIKQRNGDQIgBkHoB2ogBkHQBmopAwA3AwAgBkHwB2ogBkHYBmopAwA3AwAgBiAGKQPIBjcD4AcgBigCxAYhAyAGKALABiEJIAYoAuAGIQsgBigC5AYhAgwBCyAGQQA2AugHIAZCgICAgMAANwLgByAGQbgGaiIHIAEgBkHgB2oQwCkgBigCvAYiAyAGKAK4BiIJQQhGDQIaIAZB8AdqIAZB0AZqKQMANwMAIAZB6AdqIAZByAZqKQMANwMAIAYgBikDwAY3A+AHIAYoAtgGIQsgBigC3AYhAkERIQoCQCAJQQFHDQAgAS0AhQNBAXEEQCALKAI0IQggCygCMCEJIAZBzwA6ALgGIAEgCSAIIAcQ2BkLIAstAERFBEBBASEJIAstAEVBAUcNAQsgCygCNCEIIAsoAjAhCSAGQc4AOgC4BiABIAkgCCAGQbgGahDYGUEBIQkLC0EwQQgQqyAiByADNgIMIAcgCTYCCCAHIAg2AgQgByAKNgIAIAcgAjYCLCAHIAs2AiggByAGKQPgBzcDECAHQRhqIAZB6AdqKQMANwMAIAdBIGogBkHwB2opAwA3AwAgBigCuAchAiAGIAYoArwHIgMgDkECdGoiCDYCxAYgBiACNgLABiAGIAM2ArgGDAILIAgLIQMgAEETNgIAIAAgAzYCBCAGKAK8ByIAIA4QlB8gBigCuAcgABDfKSAGKQPABRD5GgwBCwNAIAQEQCABIAMoAgAQhgwgBEEEayEEIANBBGohAwwBCwsgBiAINgK8BiAGQbgGahDNFyABKAIQQQN0IQMgASgCDCEIQQAhCgJAA0AgA0UNASAIIAZBwAVqEJoKRQRAIANBCGshAyAKQQFqIQogCEEIaiEIDAELCyAPIAoQhRMQ+RoLIAAgBikDwAU3AxAgACAHNgIoIABBBTYCACAAQRhqIAZByAVqKQMANwMAIABBIGogBkHQBWopAwA3AwAgACAMIAEoAnwiASABIAxJGzYCDCAAIAwgASABIAxLGzYCCAsgBkHwBWoQoyZBASEKDAQLIAYoAswFIQMgBigCyAUgBikDwAUQ/BohFSAGQcQAOgC4BiAGIBU3A8AGIAMgBkG4BmoQgRUhAyAGKAK4ByAORgRAIAZBuAdqELwXIAYoArwHIQkLIAkgDkECdGogAzYCACAGIA5BAWoiDjYCwAcgBEEEaiEEDAALAAsgBkG4BGoQgxUhCAsgBiAINgKwBUEBIQoCQAJAIAgoAgAiBEEaRgR/IAZBQGsgCEEIahCUDAJAAkACQAJAAkACQAJAIAYoAkAgBigCREHltuAAQQkQjioEQCAHELshDQELIAEtAPgCQQJHIgpFDQEMBgsgCCgCFCEDIAgoAhAhBCAIKQMIEPwaIRUgBkEnOgC4BiAGIBU3A8AGIAEgBCADIAZBuAZqENceIAcQ4w0iAw0BDAQLIAgoAhAhAyAIKQIUIRUgCCkDCBD8GiEWIAYgFTcCzAUgBiADNgLIBSAGIBY3A8AFIAYgCC0AHDoA1AUgBkE4aiAGQcAFahCUDAJAAkACQCAGKAI4IgQgBigCPCILQaS14ABBBxDrH0UEQCAEIAtBirbgAEEGEOsfRQRAIAZB+ARqIAEgAyAFIAYpA8AFQQAQwAEMAgsCQAJAIAcQ4w0iBARAIAQoAgBBDUYNAQsgBkEINgL4BCAGKQPABRD5GgwBCyAGQfgHaiIEIAZB0AVqKQMANwMAIAZB8AdqIgsgBkHIBWopAwA3AwAgBiAGKQPABTcD6AcgBkIANwPgByAGQbgHaiABELQGIAYoArgHIgxBgICAgHhGDQYgBkHkBmogBkHEB2opAgA3AgAgBkHABmogBkHoB2opAwA3AwAgBkHIBmogCykDADcDACAGQdAGaiAEKQMANwMAIAYgBikCvAc3AtwGIAYgBikD4Ac3A7gGIAZBgAI7AYgHIAYgDDYC2AYgBkECOgD9BiAGIAMgASgCfCIEIAMgBEsbNgKEByAGIAMgBCADIARJGzYCgAcgBiAGQbgGahCcKjYC/AQgBkEHNgL4BAsgBRDuJgwBCyAGQbgGaiABIAMgBRB0IAYoArwGIQQgBigCuAYiA0EJRg0BIAZB+AdqIgsgBkHYBmopAwA3AwAgBkHwB2oiDCAGQdAGaikDADcDACAGQegHaiIOIAZByAZqKQMANwMAIAYgBikDwAY3A+AHAkAgA0EIRwRAIAZBgAZqIA4pAwA3AwAgBkGIBmogDCkDADcDACAGQZAGaiALKQMANwMAIAYgBDYC9AUgBiADNgLwBSAGIAYpA+AHNwP4BSAGQfgEaiAGQfAFahCADAwBCyAGQQg2AvgECyAGKQPABRD5GgsgBigC/AQhBCAGKAL4BCIDQQlGDQQgBkHwBGogBkGYBWopAwA3AwAgBkHoBGogBkGQBWopAwA3AwAgBkHgBGogBkGIBWopAwA3AwAgBiAGKQOABTcD2AQgBiAENgLUBCAGIAM2AtAEIANBCEYNASAGQbwGaiAGQdAEakEoEPsGGiAAQRE2AgAgAEEEaiAGQbgGakEsEPsGGkEAIQoMCQsgBiAENgL8BCAGKQPABRD5GgwDCyAGQdAEahCqJgwECwJAAkAgAygCAEEOaw4CBAEACyAHELshGgwDCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAGQcQGaiABQTRqKQIANwIAIAZBzAZqIAFBPGooAgA2AgAgBiABKQIsNwK8BiAGIAM2ArgGIAZBuAZqEMcKDAILIAYgBigCvAciBDYC/AQgBkHgB2oQjCAgBRDuJgsgAEETNgIAIAAgBDYCBEEAIQoMBAsgACAINgIEIABBEjYCACAAIAIgASgCfCIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIIAlBGkYNBAwGCyAIKAIABSAEC0EaRw0AIAgoAhQhAyAIKAIQIQQgBkEwaiAIQQhqIgsQlAwgBigCMCIMIAYoAjQiDkHlteAAQQQQ6x9FBEAgDCAOQeW24ABBCRDrH0UNAQsgCykDABD8GiEVIAZBJzoAuAYgBiAVNwPABiABIAQgAyAGQbgGahDXHgsCQCABLQD4AkECRw0AIAgoAgBBGkcNACAGQShqIAhBCGoQlAwCQCAGKAIoIgMgBigCLCIEQYS74ABBBhDrHw0AIAMgBEGexeAAQQYQ6x8NACADIARBirfgAEEIEOsfRQ0BCyAHEOMNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRJHDQAgASgCKCEEIAFBJTYCKCABIAEpA0A3A3hBDCEDIAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgBDYCuAYgBkG4BmoiCxDHCiAIKAIUIQQgCCgCECEIIAZBrQE6ALgGIAEgCCAEIAsQ2BkgBkEgaiABIAIQnwIgBigCJCEBIAACfyAGKAIgQQFxBEBBBCEDQRMMAQsgAEEENgIIQRELNgIAIAAgA2ogATYCAAwBCwJAAkAgBxDjDSIDRQ0AAkACQCADKAIAQQ5rDgICAAELIAEoAighAyABQSU2AiggASABKQNANwN4IAZBxAZqIAFBNGopAgA3AgAgBkHMBmogAUE8aigCADYCACAGIAEpAiw3ArwGIAYgAzYCuAYgBkG4BmoQxwoMAQsgBxC7IUUNAQsgACAINgIEIABBEjYCACAAIAIgASgCfCIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIIAlBGkcNAwwCCwJAAkACQCAHEOMNIgsEQCAGQRhqIAcQuBQgBigCHCEDIAYoAhghBCALKAIAQRRGBEAgBkH1ADoAuAYgASAEIAMgBkG4BmoQ2BkgBkEIaiABIAhBABD9CiAGKAIMIQMgBigCCA0CIAAgAzYCBCAAQRI2AgAgACACIAEoAnwiASABIAJJGzYCDCAAIAIgASABIAJLGzYCCCAJQRpGDQYMBwsgBkEQaiAIEI4DIAZBNToAuAYgBiAGKQMQNwK8BiAEIAMgBkG4BmoQgRUhAiAHEOMNIgNFDQMgAygCAEEkRw0DIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0CIAEgASgCLBCGDAwDCyABKALYAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwDCyAAQRM2AgAgACADNgIEIAlBGkYNAwwEC0Hl7OAAQShBgKbgABD0FwALIABBEzYCACAAIAI2AgQLIAZBsAVqELgpIAlBGkcNAQsgDSgCAEEaRwRAIA0Q3gQLIA0QjSsLIApFDQELIAUQ7iYLIAZBgAhqJAALpL0BAg9/A34jAEGACGsiBiQAIAFBKGohBwJAAkACQCABLQCgAiIIQQJHDQAgBxDKDSIJRQ0AIAkoAgBBAkcNACAJLQAIQQJHDQAgCS0ACUETRw0AIAcQrRMiCUUNACAJKAIAQQJHDQAgCS0ACA0AIAktAAlBDUcNACAHEMoNIgNFBEAgASgCgAIhASAGQQA6ALgGIAEgASAGQbgGahCBFSEBIABBEzYCACAAIAE2AgQMAgsCQCADKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEoAswCIQEgAEETNgIAIAAgATYCBAwDCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahDGCiAHEMoNIgMEQAJAIAMoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGDQFB5ezgAEEoQbCl4AAQ9BcACyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmANBDCEJIAZBxAZqIAFBzAJqIgNBCGopAgA3AgAgBkHMBmogA0EQaigCADYCACAGIAMpAgA3ArwGIAYgBDYCuAYgBkG4BmoQxgogBkGQBGogASACQQEQeiAGKAKUBCEBIAACfyAGKAKQBEEBcQRAQQQhCUETDAELIABBBjYCCEERCzYCACAAIAlqIAE2AgAMBAsgASgCzAIhASAAQRM2AgAgACABNgIEDAMLIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDAILQeXs4ABBKEGgpeAAEPQXAAsgBxDKDSIJRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDAELAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAkoAgAiCkECRwRAIApBDUYNASAKQSRHDTMgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0SIAEoAswCIQEgAEETNgIAIAAgATYCBAw0C0EEIAktAAgiD0ECa0H/AXEiCiAKQQRPGw4FATIyMgIyCyAGQQE6ALcEIAYgASkBqgI3AJsEIAYgASgBwgI2ALMEIAYgAUGyAmoiAikBADcAowQgBiABQboCaiIDKQEANwCrBCAGQdEGaiABQb8CaikAADcAACAGQcwGaiADKQEANwIAIAZBxAZqIAIpAQA3AgAgBiABKQGqAjcCvAYgByAGQZsEahDSCCAGIAE2ArgGQQAhAyAGQfAFaiABQQAQlgYCQCAGKALwBUGAgICAeEcEQCAAIAYpAvAFNwIEIABBFGogBkGABmopAgA3AgAgAEEMaiAGQfgFaikCADcCAAwBCyAAIAYoAvQFNgIEQRMhAwsgACADNgIAIAZBuAZqEIclDDILIAktAAkOGhsBMAIBFjADMAQFFQYHCB8eFBMSHRwwMDARMAsgD0EBcUUNDwwvC0EAIQkCQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQQFGIQkLIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAM2ArgGIAZBuAZqEMYKIAcQyg0iBEUNFyABQcwCaiEDIAQoAgBBDmsOAhcWFQsgBkH4AGogBxCFFCAGKAJ8IQIgBigCeCEDIAZB9QA6ALgGIAEgAyACIAZBuAZqIgQQxhkgBCABEOYBAkAgBigCuAZBCUcEQCAEEIkhDAELIAZBuAZqQQRyEP8iCyAGQbgGaiIEIAEQwAggBBDFICADIAIQphwhASAAIAI2AgwgACADNgIIIAAgATYCBCAAQRI2AgAMLgsgBxDDICEDIAcQyg0iAkUEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwuCyACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0LIAEoAswCIQEgAEETNgIAIAAgATYCBAwuCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiACNgK4BiAGQbgGaiIEEMYKIAZBgQI7AIIFIAYgAS0AxgI6AJQFIAYgASkBqgI3APgEIAYgAUGyAmoiAi8BADsAgAUgBiABKQG2AjcAhAUgBiABKQG+AjcAjAUgBkGJBmogAUG/AmopAAA3AAAgBkGEBmogAUG6AmopAQA3AgAgBkH8BWogAikBADcCACAGIAEpAaoCNwL0BSAHIAZB+ARqENIIIAYgATYC8AUgBCABEJoqIAZBqAFqIAQQ/xogBigCrAEhBCAGKAKoAQRAIABBEzYCACAAIAQ2AgQgBkHwBWoQhyUMLgsgBiAENgLgByAGQfAFahCHJQJAAkACQCAHEMoNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRRGDQELIAZBwAZqIAcQkRAgBkGIAWogBxCFFCAGQaCe4AA2ArwGIAZBNDoAuAYgBigCiAEgBigCjAEgBkG4BmoQgRUhAiAHEMoNIgNFDSwgAygCAEEkRg0BDCwLIAEoAsgCIQkgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiICQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAk2ArgGIAZBuAZqEMYKAkACQCAHEMoNIgkEQCAJKAIAQQlGDQELIAZBwAZqIAcQkRAgBkGQAWogBxCFFCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCkAEgBigClAEgBkG4BmoQgRUhAiAHEMoNIgNFDSwgAygCAEEkRg0BDCwLIAEoAsgCIQkgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiIOIAJBCGopAgA3AgAgBkHMBmoiCyACQRBqKAIANgIAIAYgAikCADcCvAYgBiAJNgK4BiAGQbgGaiIKEMYKIAogAUEBENESIAZBoAFqIAYoArgGEI4GIAYoAqQBIQkgBigCoAFFBEAgBiAJNgLwBSAKEIclAkACQCAHEMoNIghFDQAgCCgCAEEKRw0AIAEoAsgCIQggAUElNgLIAiABIAEpA+ACNwOYAyAOIAJBCGopAgA3AgAgCyACQRBqKAIANgIAIAYgAikCADcCvAYgBiAINgK4BiAKEMYKIAcQyg0iCA0BDC0LIAZBwAZqIAcQkRAgBkGYAWogBxCFFCAGQcjl3wA2ArwGIAZBNDoAuAYgBigCmAEgBigCnAEgBkG4BmoQgRUhAiAHEMoNIgNFDSsgAygCAEEkRw0rIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNDSABIAEoAswCEP8LDCsLAkACQCAIKAIAQQ5rDgItAQALIAcQiCEaDCwLIAEoAsgCIQggAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiACQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAg2ArgGIAZBuAZqEMYKDCsLIABBEzYCACAAIAk2AgQgBkG4BmoQhyUMLQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0JIAEgASgCzAIQ/wsMKgsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0HIAEgASgCzAIQ/wsMKgsgBkGwAWogBxCFFCAGKAK0ASECIAYoArABIQMgBkH1ADoAuAYgASADIAIgBkG4BmoiBBDGGSAEIAEQwAggBBDFICADIAIQphwhASAAIAI2AgwgACADNgIIIAAgATYCBCAAQRI2AgAMLAsgBxDDICEOIAcQyg0iAkUEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwsCwJAAkAgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUHl7OAAQShBmKDgABD0FwALIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAI2ArgGIAFBzAJqIQkgBkG4BmoQxgpBACEDIAcQwyAhAiAHEMoNIggNAQwmCyABKALMAiEBIABBEzYCACAAIAE2AgQMLAsgCCgCAEECRw0kIAgtAAhBAkcNJCAILQAJDSQgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAlBCGopAgA3AgAgBkHMBmogCUEQaigCADYCACAGIAkpAgA3ArwGIAYgAzYCuAYgBkG4BmoQxgogAiABKAKcAyIDIAIgA0kbIQ8gAiADIAIgA0sbIQRBASEDDCQLIAZBuAZqIAEQggEgAAJ/IAYoArgGBEAgACAGKQK4BjcCBCAAQRRqIAZByAZqKAIANgIAIABBDGogBkHABmopAgA3AgBBCAwBCyAAIAYoArwGNgIEQRMLNgIADCoLIAcQwyAhAiAHEMoNIgNFBEAgASgCgAIhAyAGQQA6ALgGIAMgAyAGQbgGahCBFSEDIABBEzYCACAAIAM2AgQMIgsgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABKALMAiEDIABBEzYCACAAIAM2AgQMIgsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgoCQAJAAkACQCAHEMoNIgNFDQAgAygCAEE+cUEORg0AIAcQiCFFDQELQQAhCCAGQQA2AvAFDAELIAZBuAZqIgMgAUEBENESIAZBoAJqIAYoArgGEI4GIAYoAqQCIQggBigCoAINASAGIAg2AvAFIAMQhyULIAcQyg0iA0UNIQJAAkAgAygCAEEOaw4CIwABCyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHMAmoiA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAENgK4BiAGQbgGahDGCgwiCyAHEIghDSEgBkHABmogBxCRECAGQZgCaiAHEIUUIAZBkMTgADYCvAYgBkE0OgC4BiAGKAKYAiAGKAKcAiAGQbgGahCBFSEDIAcQyg0iBEUNICAEKAIAQSRHDSAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ/wsMIAsgAEETNgIAIAAgCDYCBCAGQbgGahCHJQwhCyAHEMMgIQogBxDKDSICRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDCkLAkAgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiEBIABBEzYCACAAIAE2AgQMKgsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAjYCuAYgBkG4BmoQxgoCQCAHEMoNIgIEQCACKAIAQQlGDQELIAZBwAZqIAcQkRAgBkGoAmogBxCFFCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCqAIgBigCrAIgBkG4BmoQgRUhAiAHEMoNIgNFDR8gAygCAEEkRg0ZDB8LIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiIJQQhqKQIANwIAIAZBzAZqIAlBEGooAgA2AgAgBiAJKQIANwK8BiAGIAI2ArgGIAZBuAZqIgMQxgogAyABQQEQ0RIgBkHgAmogBigCuAYQjgYgBigC5AIhAiAGKALgAkUEQCAGIAI2AqAFIAMQhyUCQCAHEMoNIgIEQCACKAIAQQpGDQELIAZBwAZqIAcQkRAgBkGwAmogBxCFFCAGQcjl3wA2ArwGIAZBNDoAuAYgBigCsAIgBigCtAIgBkG4BmoQgRUhAiAHEMoNIgNFDR4gAygCAEEkRg0bDB4LIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiIDIAlBCGoiCykCADcCACAGQcwGaiIEIAlBEGoiDigCADYCACAGIAkpAgA3ArwGIAYgAjYCuAYgBkG4BmoiCBDGCiAGQQA2AsgFIAZCgICAgMAANwLABSAHEMoNIgJFDRsgAigCAEENRw0bIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADIAspAgA3AgAgBCAOKAIANgIAIAYgCSkCADcCvAYgBiACNgK4BiAIEMYKIAZBAToA6wcgBiABLQC0AjoA6gcgBiABLQDGAjoA/AcgBiABKQGqAjcA4AcgBiABQbICaiICLwEAOwDoByAGIAEpAbYCNwDsByAGIAEpAb4CNwD0ByAGQZEFaiABQb8CaikAADcAACAGQYwFaiABQboCaikBADcCACAGQYQFaiACKQEANwIAIAYgASkBqgI3AvwEIAcgBkHgB2oQ0gggBiABNgL4BCAGQfAFakEEciEIIAZBwAZqIRAgBkH4BWohEQJAAkACQANAAkACQAJAAkACQAJAIAcQyg0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBAkYNAQsgBxDKDSICRQ0BIAIoAgBBAkcNASACLQAIQQJHDQEgAi0ACUEGRw0BCyAGQQA2AuwFIAZCgICAgIABNwLkBSAHEMoNIgJFDQEgAigCAEECRw0BIAItAAhBAkcNASACLQAJIAcQwyAhBCAIIAkpAgA3AgAgCEEIaiALKQIANwIAIAhBEGogDigCADYCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBiADNgLwBSAGQfAFaiIDEMYKQQJHDQIgAyABQQEQ0RIgBkHYAmogBigC8AUQjgYgBigC3AIhAiAGKALYAkUEQCAGIAI2ArAFIAMQhyUMBAsgBkHwBWoQhyUMBgsgBkH4BGoQhyUCQCAHEMoNIgJFDQAgAigCAEEORw0AIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAJQQhqKQIANwIAIAZBzAZqIAlBEGooAgA2AgAgBiAJKQIANwK8BiAGIAI2ArgGIAZBuAZqEMYKIAAgBikCwAU3AgQgAEEMaiAGQcgFaigCADYCACAAIAYoAqAFNgIQIABBCTYCACAAIAogASgCnAMiASABIApJGzYCGCAAIAogASABIApLGzYCFAwyCyAGQcAGaiAHEJEQIAZBwAJqIAcQhRQgBkGw4d8ANgK8BiAGQTQ6ALgGIAYoAsACIAYoAsQCIAZBuAZqEIEVIQICQCAHEMoNIgNFDQAgAygCAEEkRw0AIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEP8LDAELQeXs4ABBKEGopOAAEPQXAAsgAEETNgIAIAAgAjYCBAwjCyAHEMMgIQQgCCAJKQIANwIAIAhBCGogCykCADcCACAIQRBqIA4oAgA2AgAgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAYgAjYC8AUgBkHwBWoQxgoLAkAgDARAIAZByAJqIAcQhRQgBigCzAIhAiAGKALIAiAGIBI2AvgFIAYgEzYC9AUgBkE5OgDwBSACIAZB8AVqEIEVIQIgBxDKDSIDRQ0FIAMoAgBBJEcNBSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwFC0EAIQIgBkEANgKwBSAEIAEoApwDIgMgAyAESxshEyAEIAMgAyAESRshEkEBIQwMAQtB5ezgAEEoQdik4AAQ9BcACwJAIAcQyg0iAwRAIAMoAgBBE0YNAQsgBkH4BWogBxCRECAGQdACaiAHEIUUIAZBoODfADYC9AUgBkE0OgDwBSAGKALQAiAGKALUAiAGQfAFahCBFSECIAcQyg0iA0UNAiADKAIAQSRHDQIgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMAgsgCCAJKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAIQQhqIAspAgA3AgAgCEEQaiAOKAIANgIAIAYgAzYC8AUgBkHwBWoQxgoCQAJAA0AgBxDKDSIDBEAgBkEANgK4ByAGIAM2ArwHIAZBuAdqEMIjAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUECRg0DCwJAIAcQyg0iA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBBkYNAwsgBxDKDSIDBEAgAygCAEEORg0DCyAGQfAFaiABQQFBABC6AiAGKAL0BSEDIAYoAvAFIg1BE0YNAyAQIBFBKBD7BhogBiADNgK8BiAGIA02ArgGIAZB5AVqIAZBuAZqEPwZDAELCyABKAKAAiEDIAZBADoA8AUgBiADIAMgBkHwBWoQgRU2ArwHIAZBATYCuAcgBkG4B2oQwiMLIAQgASgCnAMiDSAEIA1JGyEUIAYoAsgFIg8gBigCwAVGBEAgBkHABWoQxBcLIAYoAsQFIA9BGGxqIgMgBikC5AU3AgAgAyACNgIUIAMgBCANIAQgDUsbNgIQIAMgFDYCDCADQQhqIAZB7AVqKAIANgIAIAYgD0EBajYCyAUMAQsLIAMhAgsgBkGwBWoQgCcLIAZB5AVqEOkmIABBEzYCACAAIAI2AgQgBkH4BGoQhyUMHQtB5ezgAEEoQeik4AAQ9BcACyAAQRM2AgAgACACNgIEIAZBuAZqEIclDCkLQeXs4ABBKEGIpOAAEPQXAAtB5ezgAEEoQfij4AAQ9BcAC0Hl7OAAQShB6KPgABD0FwALQeXs4ABBKEG4nuAAEPQXAAtB5ezgAEEoQZCe4AAQ9BcAC0Hl7OAAQShBgJ7gABD0FwALQeXs4ABBKEHwneAAEPQXAAtB5ezgAEEoQcCl4AAQ9BcACwJAAkACQAJAAkACQCAJLQAJIgRBBWsOBAElJQIACyAEQQ1GDQIgBEESRyAIQQJHcg0kIAcQrRMiA0UNJCADKAIAQQJHDSQgBxCHIQ0kIAcQwyAhAiAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahDGCiAGQYgEaiABIAIQngIgBigCjAQhASAGKAKIBA0DIAAgATYCDCAAQQQ2AgggAEERNgIADCULIAhBAkcNIyAHEK0TIgNFDSMgAygCAEECRw0jIAcQhyENIyAHEMMgIQIgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgogBkHwA2ogASACELkEIAYoAvQDIQEgBigC8ANFBEAgACABNgIMIABBBTYCCCAAQRE2AgAMJQsgAEETNgIAIAAgATYCBAwkCyADRQ0iIAZB+ANqIAEgAkEAEIACIAYoAvwDIQMgBigC+AMNAiADRQ0iIAAgAzYCDCAAQQM2AgggAEERNgIADCMLIAhBAkcNISAHEK0TIgNFDSEgAygCAEECRw0hIAcQhyENISAHEMMgIQIgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgogBkGABGogASACQQAQeiAGKAKEBCEBIAYoAoAERQRAIAAgATYCDCAAQQY2AgggAEERNgIADCMLIABBEzYCACAAIAE2AgQMIgsgAEETNgIAIAAgATYCBAwhCyAAQRM2AgAgACADNgIEDCALIANFBEAgBkHoA2ogBxCFFCAGKALsAyEDIAYoAugDIQQgBkEBOgC4BiABIAQgAyAGQbgGahDGGQsgBkHwBWoiAyABIAIgAiAFQQAQiQQgAAJ/IAYoAvAFQQhHBEAgBkG8BmogA0EoEPsGGiAAQQRqIAZBuAZqQSwQ+wYaQREMAQsgACAGKAL0BTYCBEETCzYCAAwgCyADRQ0dIAZBkANqIAFBABCFASAGKAKUAyEBIAYoApADRQRAIAAgATYCDCAAQQI2AgggAEERNgIADB8LIABBEzYCACAAIAE2AgQMHgsgA0UNHCAHEK0TIgNFDRwgAxCHBhDeEEUNHCAGQYgDaiABQQAQhQEgBigCjAMhASAGKAKIA0UEQCAAIAE2AgwgAEECNgIIIABBETYCAAweCyAAQRM2AgAgACABNgIEDB0LIAZBgANqIAFBABCFASAGKAKEAyEBIAYoAoADBEAgAEETNgIAIAAgATYCBAwdCyAAIAE2AgwgAEECNgIIIABBETYCAAwcCyADRQRAIAZBkAJqIAcQhRQgBigClAIhAiAGKAKQAiEDIAZBAToAuAYgASADIAIgBkG4BmoQxhkLIAZBwAZqIAVBCGooAgA2AgAgBiAFKQIANwO4BiAGQfAFaiICIAEgBkG4BmoiARDfKCAAAn8gBigC8AVBCEcEQCAGQbwGaiACQSgQ+wYaIABBBGogAUEsEPsGGkERDAELIAAgBigC9AU2AgRBEws2AgAMHAsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgoCQAJAAkAgBxDKDSIDRQ0AAkACQCADKAIAQQ5rDgICAAELIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiIDQQhqKQIANwIAIAZBzAZqIANBEGooAgA2AgAgBiADKQIANwK8BiAGIAQ2ArgGIAZBuAZqEMYKDAELIAcQiCENACAGQcAGaiAHEJEQIAZBgAFqIAcQhRQgBkGQxOAANgK8BiAGQTQ6ALgGIAYoAoABIAYoAoQBIAZBuAZqEIEVIQIgBxDKDSIDRQ0CIAMoAgBBJEYNAQwCCyAAQQI2AgAgACACIAEoApwDIgEgASACSRs2AgggACACIAEgASACSxs2AgQMHAsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMAQtB5ezgAEEoQfCl4AAQ9BcACyAAQRM2AgAgACACNgIEDBoLIAcQiCENASAGQbgGaiABIAEtALICQX9zQQFxIAEtALECQX9zQQFxEPwBIAYoArgGIQQCQAJAIAYtAMwGIghBAkcEQCAGQYAFaiILIAZByAZqKAIANgIAIAZB4gdqIAZBzwZqLQAAOgAAIAYgBikDwAY3A/gEIAYgBi8AzQY7AeAHIAYoArwGIQoCQAJAIAcQyg0iDkUNAAJAAkAgDigCAEEOaw4CAgABCyABKALIAiEOIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogA0EIaikCADcCACAGQcwGaiADQRBqKAIANgIAIAYgAykCADcCvAYgBiAONgK4BiAGQbgGahDGCgwBCyAHEIghRQ0BCyAGQYAGaiALKAIANgIAIAZBhwZqIAZB4gdqLQAAOgAAIAYgCjYC9AUgBiAENgLwBSAGIAYpA/gENwP4BSAGIAg6AIQGIAYgBi8B4Ac7AIUGQQAMBgsgBkHABmogBxCRECAGQfAAaiAHEIUUIAZBkMTgADYCvAYgBkE0OgC4BiAGKAJwIAYoAnQgBkG4BmoQgRUhAiAHEMoNIgNFDQIgAygCAEEkRw0CIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEP8LDAILIABBEzYCACAAIAQ2AgQMGwtB5ezgAEEoQeCl4AAQ9BcACyAAQRM2AgAgACACNgIEIAStIAqtQiCGhCAIEL4jDBkLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiADQQhqKQIANwIAIAZBzAZqIANBEGooAgA2AgAgBiADKQIANwK8BiAGIAQ2ArgGIAZBuAZqEMYKCyAGQQI6AIQGQQELIQMgAiABKAKcAyIIIAIgCEkbIQQgAiAIIAIgCEsbIQICfwJAIAlFBEAgAS0AtAJBAXFFBEAgBkGOAToAuAYgASAEIAIgBkG4BmoQxhkMAgsgAw0BIAZB8AVqIAEoAgwgASgCEBCwGA0BIAZBigE6ALgGIAEgBCACIAZBuAZqEMYZDAELAkACQCADRQRAIAZB8AVqIAEoAgwgASgCEBCwGEUNAQsgAS0AtQJBAXENASAGQYgBOgC4BiABIAQgAiAGQbgGahDGGQwBCyAGQY8BOgC4BiABIAQgAiAGQbgGahDGGQtBBgwBC0EHCyEBIAAgAjYCDCAAIAQ2AgggACABNgIAIAAgBikD8AU3AxAgAEEYaiAGQfgFaikDADcDACAAQSBqIAZBgAZqKQMANwMADBYLAkACQCADRQRAIARFDRcMAQsgBEUNAQsgAUEBOgAkIAEtAKwCQQFxDQAgBkHoAGogBxCFFCAGKAJsIQMgBigCaCEEIAZBEzoAuAYgASAEIAMgBkG4BmoQxhkLIAcQrRMiA0UNFCADKAIAQQJHDRQgAy0ACA0UIAMtAAlBCEcNFCAHEMMgIQQgBxDKDSIDRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBYLAkACQAJAAkAgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiEBIABBEzYCACAAIAE2AgQMGgsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgogBkHgAGogASACQQEQgAIgBigCZCEDIAYoAmAEQCAAQRM2AgAgACADNgIEDBoLIAMEQCAAIAM2AgwgAEEDNgIIIABBETYCAAwaCyAGQdgAaiABQQEgBBCSAyAGKAJcIQMgBigCWA0BIAZBuAZqIgQgAUEBENESIAZB0ABqIAYoArgGIANBABD7CiAGKAJUIQMgBigCUA0CIAQQhyUgBxDKDSIERQ0DAkACQCAEKAIAQQ5rDgIFAQALIAcQiCEaDAQLIAEoAsgCIQkgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiIEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAk2ArgGIAZBuAZqEMYKDAMLQeXs4ABBKEHQpeAAEPQXAAsgAEETNgIAIAAgAzYCBAwXCyAAQRM2AgAgACADNgIEIAZBuAZqEIclDBYLIAAgAzYCBCAAQRI2AgAgACACIAEoApwDIgEgASACSRs2AgwgACACIAEgASACSxs2AggMFQsgAS0AoAJBAkYEQCAGQeADaiAHEIUUIAYoAuQDIQIgBigC4AMhAyAGQasBOgC4BiABIAMgAiAGQbgGahDGGQsgBkHYA2ogBxCFFCAGKALcAyECIAYoAtgDIQMgBkHKADoAuAYgASADIAIgBkG4BmoiBBDLHiAHEMMgIQMgBxDKDSICRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBBCBFSEBIABBEzYCACAAIAE2AgQMFQsCQAJAAkACQAJAAkACQCACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEoAswCIQEgAEETNgIAIAAgATYCBAwcCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiACNgK4BiAGQbgGahDGCgJAAkAgBxDKDSICBEAgAigCAEEJRg0BCyAGQcAGaiAHEJEQIAZBuANqIAcQhRQgBkHw5d8ANgK8BiAGQTQ6ALgGIAYoArgDIAYoArwDIAZBuAZqEIEVIQIgBxDKDSIDRQ0IIAMoAgBBJEYNAQwICyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHMAmoiAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAENgK4BiAGQbgGaiIKEMYKIAogAUEBENESIAZB0ANqIAYoArgGEI4GIAYoAtQDIQQgBigC0AMNAiAGIAQ2AuAHIAoQhyUCQAJAIAcQyg0iCQRAIAkoAgBBCkYNAQsgBkHABmogBxCRECAGQcADaiAHEIUUIAZByOXfADYCvAYgBkE0OgC4BiAGKALAAyAGKALEAyAGQbgGahCBFSECIAcQyg0iA0UNByADKAIAQSRGDQEMBwsgASgCyAIhCSABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAJBCGopAgA3AgAgBkHMBmogAkEQaigCADYCACAGIAIpAgA3ArwGIAYgCTYCuAYgBkG4BmoiChDGCiAGQQE6AIsFIAYgAS0AvAI6AIoFIAYgAS0AxgI6AJQFIAYgASkBqgI3APgEIAYgAUGyAmoiAikBADcAgAUgBiABQboCaiIJLwEAOwCIBSAGIAEpAb4CNwCMBSAGQYkGaiABQb8CaikAADcAACAGQYQGaiAJKQEANwIAIAZB/AVqIAIpAQA3AgAgBiABKQGqAjcC9AUgByAGQfgEahDSCCAGIAE2AvAFIAogARCaKiAGQcgDaiAKEP8aIAYoAswDIQIgBigCyANFBEAgBkHwBWoQhyUgACACNgIIIAAgBDYCBCAAQQM2AgAgACADIAEoApwDIgEgASADSRs2AhAgACADIAEgASADSxs2AgwMHgsgAEETNgIAIAAgAjYCBCAGQfAFahCHJQwHCyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwFCyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwGC0Hl7OAAQShBmKHgABD0FwALIABBEzYCACAAIAQ2AgQgBkG4BmoQhyUMGQtB5ezgAEEoQaih4AAQ9BcAC0Hl7OAAQShBuKHgABD0FwALIABBEzYCACAAIAI2AgQLIAZB4AdqEN4oDBULIABBEzYCACAAIAI2AgQMFAsgBxDDICEDIAcQyg0iAkUEQCABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwUCwJAAkACQAJAAkACQAJAIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhASAAQRM2AgAgACABNgIEDBsLIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAI2ArgGIAZBuAZqEMYKAkACQCAHEMoNIgIEQCACKAIAQQlGDQELIAZBwAZqIAcQkRAgBkGYA2ogBxCFFCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCmAMgBigCnAMgBkG4BmoQgRUhAiAHEMoNIgNFDQggAygCAEEkRg0BDAgLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiICQQhqKQIANwIAIAZBzAZqIAJBEGooAgA2AgAgBiACKQIANwK8BiAGIAQ2ArgGIAZBuAZqIgoQxgogCiABQQEQ0RIgBkGwA2ogBigCuAYQjgYgBigCtAMhBCAGKAKwAw0CIAYgBDYC4AcgChCHJQJAAkAgBxDKDSIJBEAgCSgCAEEKRg0BCyAGQcAGaiAHEJEQIAZBoANqIAcQhRQgBkHI5d8ANgK8BiAGQTQ6ALgGIAYoAqADIAYoAqQDIAZBuAZqEIEVIQIgBxDKDSIDRQ0HIAMoAgBBJEYNAQwHCyABKALIAiEJIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAkEIaikCADcCACAGQcwGaiACQRBqKAIANgIAIAYgAikCADcCvAYgBiAJNgK4BiAGQbgGaiIKEMYKIAZBgQI7AIIFIAYgAS0AxgI6AJQFIAYgASkBqgI3APgEIAYgAUGyAmoiAi8BADsAgAUgBiABKQG2AjcAhAUgBiABKQG+AjcAjAUgBkGJBmogAUG/AmopAAA3AAAgBkGEBmogAUG6AmopAQA3AgAgBkH8BWogAikBADcCACAGIAEpAaoCNwL0BSAHIAZB+ARqENIIIAYgATYC8AUgCiABEJoqIAZBqANqIAoQ/xogBigCrAMhAiAGKAKoA0UEQCAGQfAFahCHJSAAIAI2AgggACAENgIEIABBDDYCACAAIAMgASgCnAMiASABIANJGzYCECAAIAMgASABIANLGzYCDAwdCyAAQRM2AgAgACACNgIEIAZB8AVqEIclDAcLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEP8LDAULIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEP8LDAYLQeXs4ABBKEGoo+AAEPQXAAsgAEETNgIAIAAgBDYCBCAGQbgGahCHJQwYC0Hl7OAAQShBuKPgABD0FwALQeXs4ABBKEHIo+AAEPQXAAsgAEETNgIAIAAgAjYCBAsgBkHgB2oQ3igMFAsgAEETNgIAIAAgAjYCBAwTCyAHEMMgIQIgBxDKDSIDRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBMLAkACQAJAAkACQCADKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEoAswCIQEgAEETNgIAIAAgATYCBAwYCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGaiIKEMYKIAogAUEAEJYGIAYoArwGIQMgBigCuAYiBEGAgICAeEYNASAGQYgFaiAGQcgGaikCADcCACAGIAYpAsAGNwKABSAGIAM2AvwEIAYgBDYC+AQgBxDDICEDIAogARDmASAGKAK8BiEEIAYoArgGIglBCUcEQCAGQfgFaiAGQcAGakHAABD7BhogBiAENgL0BSAGIAk2AvAFIAogARDACCAGKAK8BiEEIAYoArgGIghBgYCAgHhGDQMgBkHoB2ogBkHIBmopAgA3AwAgBiAGKQLABjcD4AcgCEGAgICAeEcgCUEIR3INBSAGQfUAOgC4BiABIAMgAyAKEMYZDAULIABBEzYCACAAIAQ2AgQMAwtB5ezgAEEoQeig4AAQ9BcACyAAQRM2AgAgACADNgIEDBULIABBEzYCACAAIAQ2AgQgBkHwBWoQiSELIAZB+ARqEOkmDBMLIAEoApwDIQEgBkGQB2ogBkGIBWopAgA3AwAgBkGIB2ogBkGABWopAgA3AwAgBiAGKQL4BDcDgAcgBkG4BmoiAyAGQfAFakHIABD7BhogBkGoB2ogBkHoB2opAwA3AwAgBiACIAEgASACSRs2ArQHIAYgAiABIAEgAksbNgKwByAGIAQ2ApwHIAYgCDYCmAcgBiAGKQPgBzcDoAcgACADEJsqNgIEIABBCzYCAAwSCyAHEMMgIQIgBxDKDSIDRQRAIAEoAoACIQEgBkEAOgC4BiABIAEgBkG4BmoQgRUhASAAQRM2AgAgACABNgIEDBILAkACQAJAAkACQAJAAkAgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABKALMAiEBIABBEzYCACAAIAE2AgQMGQsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoiBBDGCiAHEIghRQRAIAQgAUEBENESIAZB+AJqIAYoArgGEI4GIAYoAvwCIQMgBigC+AINAiAGIAM2AvAFIAQQhyUgBxDKDSIERQ0HAkACQCAEKAIAQQ5rDgIJAAELIAEoAsgCIQkgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiABQcwCaiIEQQhqKQIANwIAIAZBzAZqIARBEGooAgA2AgAgBiAEKQIANwK8BiAGIAk2ArgGIAZBuAZqEMYKDAgLIAcQiCENByAGQcAGaiAHEJEQIAZB8AJqIAcQhRQgBkGQxOAANgK8BiAGQTQ6ALgGIAYoAvACIAYoAvQCIAZBuAZqEIEVIQIgBxDKDSIDRQ0GIAMoAgBBJEcNBiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwGCyAGQegCaiAHEIUUIAYoAuwCIQIgBigC6AIgBkEuOgC4BiACIAZBuAZqEIEVIQIgBxDKDSIDRQ0EIAMoAgBBJEcNBCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwEC0Hl7OAAQShB6KLgABD0FwALIABBEzYCACAAIAM2AgQgBkG4BmoQhyUMFgtB5ezgAEEoQfii4AAQ9BcAC0Hl7OAAQShBiKPgABD0FwALIABBEzYCACAAIAI2AgQMEwsgAEETNgIAIAAgAjYCBCAGQfAFahDeKAwSCyAAIAM2AgQgAEEKNgIAIAAgAiABKAKcAyIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIDBELIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEP8LDAYLQeXs4ABBKEHIpOAAEPQXAAsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMAwtB5ezgAEEoQbik4AAQ9BcACyAGQcAGaiAHEJEQIAZBuAJqIAcQhRQgBkHY4d8ANgK8BiAGQTQ6ALgGIAYoArgCIAYoArwCIAZBuAZqEIEVIQICQCAHEMoNIgNFDQAgAygCAEEkRw0AIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEP8LDAELQeXs4ABBKEGYpOAAEPQXAAsgAEETNgIAIAAgAjYCBAsgBkHABWoQgScMAQsgAEETNgIAIAAgAjYCBAsgBkGgBWoQ3igMCwsgAEETNgIAIAAgAjYCBAwKCyAAQRM2AgAgACADNgIEIAZB8AVqEIAnDAELIAAgCDYCDCAAQQQ2AgAgACACIAEoApwDIgMgAiADSxs2AgggACACIAMgAiADSRs2AgQLIAEtAL0CQQFxDQcgAS0AoAJBAkcEQCABLQCnAkEBcQ0ICyABKAKcAyEAIAZBywA6ALgGIAEgAiAAIAAgAksbIAIgACAAIAJJGyAGQbgGahDGGQwHCwJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAHEMoNIgIEQCACKAIAQQlGDQELIAZBwAZqIAcQkRAgBkG4AWogBxCFFCAGQfDl3wA2ArwGIAZBNDoAuAYgBigCuAEgBigCvAEgBkG4BmoQgRUhAiAHEMoNIgNFDREgAygCAEEkRg0BDBELIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAJQQhqKQIANwIAIAZBzAZqIAlBEGooAgA2AgAgBiAJKQIANwK8BiAGIAI2ArgGIAZBuAZqIgoQxgogASgBqgIhAiAGQc0GaiABQb8CaiIIKQAANwAAIAZBxgZqIAFBuAJqKQEANwEAIAYgASkBsAI3Ab4GIAZBhAVqIAFBsgJqKQEANwIAIAZBjAVqIAFBugJqKQEANwIAIAZBkQVqIAgpAAA3AAAgBiADOgC9BiAGQQE6ALwGIAYgAjYCuAYgBiABKQGqAjcC/AQgByAKENIIIAYgATYC+AQCQAJAAkAgBxDKDSICRQ0AIAIoAgBBAkcNACACLQAIQQJHDQAgAi0ACUETRg0BCwJAIAcQyg0iAkUNACACKAIAQQJHDQAgAi0ACEECRw0AIAItAAlBEUYNAQsCQCAHEMoNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQRJHDQAgBxCtEyICRQ0AIAIQhwYQ3hANAQsgBxDKDSICRQ0BIAIoAgBBD0cNASABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogCUEIaikCADcCACAGQcwGaiAJQRBqKAIANgIAIAYgCSkCADcCvAYgBiACNgK4BiAGQbgGahDGCiAGQbAFaiABQQIgBhCLBAwPCyAGQYgCaiABQQEQhQEgBigCjAIhAiAGKAKIAgRAIAZBBTYCsAUgBiACNgK0BQwQCwJAAkACQCAHEMoNIghFDQAgCCgCAEECRw0AIAgtAAgNACAILQAJQQRGDQELAkAgBxDKDSIIRQ0AIAgoAgBBAkcNACAILQAIQQJHDQAgCC0ACUEeRg0BCyAHEMoNIghFDQEgCCgCAEEPRw0BIAEoAsgCIQggAUElNgLIAiABIAEpA+ACNwOYAyAGQcQGaiAJQQhqKQIANwIAIAZBzAZqIAlBEGooAgA2AgAgBiAJKQIANwK8BiAGIAg2ArgGIAZBuAZqEMYKIAZBsAVqIAFBACACEIsEDBALIAJBCGooAgAiCEEBRg0NIAIoAgQiDCAIQThsaiEIQQEhCgNAAkAgC0EBcQRAIAggDEYNEQwBCyAIIAxrQThuIApNDRAgDCAKQThsaiEMCyAGQYACaiAMEI4MIAYoAoQCIQogBigCgAIhCyAGQcwAOgC4BiABIAsgCiAGQbgGahDGGSAMQThqIQxBACEKQQEhCwwACwALIAZBwAZqIAcQkRAgBkHoAWogBxCFFCAGQZDE4AA2ArwGIAZBNDoAuAYgBigC6AEgBigC7AEgBkG4BmoQgRUhAyAHEMoNIgRFDQsgBCgCAEEkRw0LIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEP8LDAsLIAcQwyAhCCAGQbgGaiIKIAFBABDREiAGQeABaiAGKAK4BhCOBiAGKALkASECIAYoAuABRQRAIAYgAjYCzAcgChCHJQJAAkAgAS0AoAJBAkcEQCABLQCpAkEBcUUNAQsgAkGYveAAQQUQkR8iDUUEQCACKAIAQSJHDQEgAigCBEGYveAAQQUQkR9FDQELAkAgBxDKDSIKRQ0AIAooAgBBAkcNACAKLQAIDQAgCi0ACUEERg0BCwJAIAcQrRMiCkUNACAKKAIAQQJHDQAgCi0ACA0AIAotAAlBBEYNAgsgBxCtEyIKRQ0AIAooAgBBAkcNACAKLQAIQQJHDQAgCi0ACUEeRg0BCwJAAkACQAJAIAcQyg0iCEUNACAIKAIAQQJHDQAgCC0ACA0AIAgtAAlBBEYNAQsCQCAHEMoNIghFDQAgCCgCAEECRw0AIAgtAAhBAkcNACAILQAJQR5GDQELIAcQyg0iCEUNASAIKAIAQQ9HDQEgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAlBCGopAgA3AgAgBkHMBmogCUEQaigCADYCACAGIAkpAgA3ArwGIAYgCDYCuAYgBkG4BmoQxgogBkGwBWogAUEBIAIQiwQMEgtBASEKAkAgBxDKDSIIRQ0AIAgoAgBBAkcNACAILQAIQQJHDQAgCC0ACUEeRyEKCyAGQbgGaiABQQIgAhBkIAYoArwGIQsgBigCuAYiCEEHRg0HIAZB+AdqIg0gBkHYBmopAwAiFTcDACAGQfAHaiIMIAZB0AZqKQMAIhY3AwAgBkHoB2oiECAGQcgGaikDACIXNwMAIAZBgAZqIBc3AwAgBkGIBmogFjcDACAGQZAGaiAVNwMAIAYgBikDwAYiFTcD4AcgBiALNgL0BSAGIAg2AvAFIAYgFTcD+AUgCiABLQCgAkECR3JFDQEMDQsgBkHABmogBxCRECAGQdABaiAHEIUUIAZBkMTgADYCvAYgBkE0OgC4BiAGKALQASAGKALUASAGQbgGahCBFSECIAcQyg0iCEUNCiAIKAIAQSRHDQogASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0FIAEgASgCzAIQ/wsMCgsgCEUgCEEGRnINCyAGQdgBaiAGQfAFahCODCAGKALcASECIAYoAtgBIQogBkGwAToAuAYgASAKIAIgBkG4BmoQxhkMCwsgBkG4BmoiESABQQAQngQgBigCuAYhCyAGLQDMBiIMQQJGDQUgBkHAB2oiECAGQcQGaikCADcDACAGIAYpArwGNwO4ByAGIAYpAM0GNwPQByAGIAZB1AZqKAAANgDXByABKAKcAyEKQThBCBCrICICIAs2AgggAkEANgIAIAIgDDoAHCACQQA6ADQgAkEANgIwIAIgBikDuAc3AgwgAkEUaiAQKQMANwIAIAIgBikD0Ac3AB0gAkEkaiAGKADXBzYAACACIAggCiAIIApLGyILNgIsIAIgCCAKIAggCkkbIgo2AihBGEEEEKsgIgggDUEBczoAFCAIIAs2AhAgCCAKNgIMIAhBATYCCCAIIAI2AgQgCEEBNgIAIAcQyg0iAkUEQCABKAKAAiECIAZBADoAuAYgAiACIBEQgRUhAgwICwJAIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASgCzAIhAgwJCyAGQbAFaiABQQEgCBC+BgwKC0Hl7OAAQShBiKDgABD0FwALIAZBBTYCsAUgBiACNgK0BSAGQbgGahCHJQwNCyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQQgASABKALMAhD/CwwPC0Hl7OAAQShB6J/gABD0FwALQeXs4ABBKEH4n+AAEPQXAAsgBiALNgK0BSAGQQU2ArAFDAkLIAYgCzYCtAUgBkEFNgKwBQwDC0Hl7OAAQShB2KDgABD0FwALIAZBBTYCsAUgBiACNgK0BSAIEOAoDAELIAZBBTYCsAUgBiACNgK0BQsgBkHMB2oQ3igMBAtBKEEIEKsgIgIgCzYCBCACIAg2AgAgAiAGKQPgBzcDCCACQRBqIBApAwA3AwAgAkEYaiAMKQMANwMAIAJBIGogDSkDADcDACAGQbAFaiABQQIgAhC+BgwDCyAGQQU2ArAFIAYgAzYCtAUgAhCUKwwDC0EBIQwCQCABLQCtAkEBcUUEQCAHEMoNIghFDQEgCCgCAEECRw0BIAgtAAgNASAILQAJQQRHDQEgAkEIaigCACEMCyACQQRqIggoAgAgDEGon+AAEK8jKAIwRQ0AIAZB+AFqIAgoAgAgAkEIaigCAEG4n+AAEK8jEI4MIAYoAvwBIQggBigC+AEhCiAGQc0AOgC4BiABIAogCCAGQbgGahDGGQsgAS0AoAJBAkcNACACQQRqKAIAIAJBCGooAgBByJ/gABCvIyIIKAIAIgpBA0sNACAIIApBAnRBsOXjAGooAgBqKAIARQ0AIAZB8AFqIAJBBGooAgAgAkEIaigCAEHYn+AAEK8jEI4MIAYoAvQBIQggBigC8AEhCiAGQa8BOgC4BiABIAogCCAGQbgGahDGGQsgBkGwBWogAUEAIAIQvgYLIAYoArQFIgwgBigCsAUiAkEFRg0BGiAGIAYpArgFNwKoBSAGIAw2AqQFIAYgAjYCoAUgBkH4BGoQhyUCQAJAAkACfwJAAkACQAJAAkACQAJAAkAgBxDKDSIIBEAgCCgCAEEKRg0BCyAGQcAGaiAHEJEQIAZBwAFqIAcQhRQgBkHI5d8ANgK8BiAGQTQ6ALgGIAYoAsABIAYoAsQBIAZBuAZqEIEVIQMgBxDKDSIERQ0KIAQoAgBBJEYNAQwKCyABKALIAiEIIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogCUEIaikCADcCACAGQcwGaiAJQRBqKAIANgIAIAYgCSkCADcCvAYgBiAINgK4BiAGQbgGaiIKEMYKIAZBgQI7AMoFIAYgAS0AxgI6ANwFIAYgASkBqgI3AMAFIAYgAS8BsgI7AMgFIAYgASkBtgI3AMwFIAYgASkBvgI3ANQFIAZBiQZqIAFBqgJqIglBFWopAAA3AAAgBkGEBmogCUEQaikBADcCACAGQfwFaiAJQQhqKQEANwIAIAYgCSkBADcC9AUgByAGQcAFahDSCCAGIAE2AvAFIAogARCaKiAGQcgBaiAKEP8aIAYoAswBIQkgBigCyAFFBEAgBiAJNgK4ByAGQfAFahCHJSAOIAEoApwDIgggCCAOSxshCiAOIAggCCAOSRshCAJAAkACQCACQQJrQQAgAkEDa0ECSRtBAWsOAgIBAAsgBiAMNgL0BSAGIAI2AvAFIAYgBigCqAUiDjYC4AcgBiAGKAKsBSINNgL4BCADRQRAQQ4hASAJIQsgCiEJIAghCiAOIQggDSEDDAkLIAZB0gA6ALgGIA8gBCAGQbgGahCBFSECIAcQyg0iA0UNCSADKAIAQSRHDQkgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMCQtBECEBIAYoAqwFIQsgBigCqAUhDCAGKAKkBSECDAcLIAYgBigCqAUiDDYC9AUgBiAGKAKkBSICNgLwBSAGIAYoAqwFIgs2AvgEIANFBEBBDyEBDAcLIAZB0gA6ALgGIA8gBCAGQbgGahCBFSECIAcQyg0iA0UNBSADKAIAQSRHDQUgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ/wsMBQsgAEETNgIAIAAgCTYCBCAGQfAFahCHJUEBIQNBASEADAgLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEP8LDAgLQeXs4ABBKEGooOAAEPQXAAtB5ezgAEEoQbig4AAQ9BcAC0Hl7OAAQShByKDgABD0FwALIABBEzYCACAAIAI2AgQgBkH4BGoQ3iggBkHwBWoQox1BASEDQQAMAgsgACADNgIcIAAgCDYCGCAAIAo2AhQgACAJNgIQIAAgCzYCDCAAIAw2AgggACACNgIEIAAgATYCAAwOCyAAQRM2AgAgACACNgIEIAZB+ARqEIAnIAZB4AdqEIAnIAZB8AVqEKQdQQAhA0EBCyEAIAZBuAdqENEGCyAGKAKgBSECDAELIABBEzYCACAAIAM2AgRBASEDQQEhAAsgBkGkBWohAQJAAkACQCACQQJrQQAgAkEDa0ECSRtBAWsOAgIAAQsgARCjHSAGQawFahDeKAwLCyADRQ0KIAZBoAVqEKQdIAZBqAVqEIAnIAZBrAVqEIAnDAoLIABFDQkgARCjHSAGQawFahDeKAwJCyAGKAK0BQshDCAAQRM2AgAgACAMNgIEIAZB+ARqEIclDAcLIABBEzYCACAAIAI2AgQMBgsgAEETNgIAIAAgAjYCBCAGQfAFahDeKAwDCyAAIAQ2AgggACAJNgIEIABBDTYCACAAIAMgASgCnAMiASABIANJGzYCECAAIAMgASABIANLGzYCDAwECyAAQRM2AgAgACACNgIEDAELIABBEzYCACAAIAI2AgQLIAZB4AdqENEGDAELAkAgBxDKDSIDRQ0AIAMoAgBBD0cNACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahDGCiAAQQE2AgAgACACIAEoApwDIgEgASACSRs2AgggACACIAEgASACSxs2AgQMAQsCQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQJHDQAgBxCtEyIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUELRw0AIAcQhyENACAGQfAFaiICIAEgBRDIByAAAn8gBigC8AVBCEcEQCAGQbwGaiACQSgQ+wYaIABBBGogBkG4BmpBLBD7BhpBEQwBCyAAIAYoAvQFNgIEQRMLNgIADAILIAZBuAZqIgQgAUEBENESIAZByABqIAYoArgGEI4GIAYoAkwhDgJAAkACQAJAAkAgBigCSEUEQCAEEIclIA4iCSgCACIKQRpHDQMgBkHIBGoiCCAJQRhqKQMANwMAIAZBwARqIgsgCUEQaikDADcDACAGIAkpAwg3A7gEIAcQyg0iA0UNAiADKAIAQRNHDQIgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAjYCuAYgBBDGCiAGQQE6AIMFQQAhBCAGQQA6AJQFIAYgAS0AtAI6AIIFIAYgASkBqgI3APgEIAYgAUGyAmoiAi8BADsAgAUgBiABKQG2AjcAhAUgBiABKQG+AjcAjAUgBkGJBmogAUG/AmopAAA3AAAgBkGEBmogAUG6AmopAQA3AgAgBkH8BWogAikBADcCACAGIAEpAaoCNwL0BSAHIAZB+ARqENIIIAYgATYC8AUgBkHQBWogCCkDADcDACAGQcgFaiALKQMAIhU3AwAgBiAGKQO4BDcDwAUgBkEANgLAByAGQoCAgIDAADcCuAcgASgCDCIJIAEoAhBBA3RqIQIgFachDEEEIQpBACELDAELIABBEzYCACAAIA42AgQgBkG4BmoQhyUMBQsDQAJAIAIgCUcEQCAGQcAFaiAJEJoKIAlBCGohCQ0BDAILIAFBCGohDyAGKQPABRD8GiEVIAEoAhAiCSABKAIIRgRAIA8QzBcLIAEoAgwgCUEDdGogFTcDACABIAlBAWo2AhACQAJAAn8CQAJAAkACQCAHEMoNIgJFDQAgAigCAEECRw0AIAItAAhBAkcNACACLQAJQQtGDQELIAZBuAZqIAEQmiogBigCvAYhCSAGKAK4BiIIQRNGDQIgBkHoB2ogBkHQBmopAwA3AwAgBkHwB2ogBkHYBmopAwA3AwAgBiAGKQPIBjcD4AcgBigCxAYhAyAGKALABiEKIAYoAuAGIQcgBigC5AYhAgwBCyAGQQA2AugHIAZCgICAgMAANwLgByAGQbgGaiINIAEgBkHgB2oQ3yggBigCvAYiAyAGKAK4BiIKQQhGDQIaIAZB8AdqIAZB0AZqKQMANwMAIAZB6AdqIAZByAZqKQMANwMAIAYgBikDwAY3A+AHIAYoAtgGIQcgBigC3AYhAkERIQgCQCAKQQFHDQAgAS0ArQJBAXEEQCAHKAI0IQkgBygCMCEKIAZBzwA6ALgGIAEgCiAJIA0QxhkLIActAERFBEBBASEKIActAEVBAUcNAQsgBygCNCEJIAcoAjAhCiAGQc4AOgC4BiABIAogCSAGQbgGahDGGUEBIQoLC0EwQQgQqyAiDSADNgIMIA0gCjYCCCANIAk2AgQgDSAINgIAIA0gAjYCLCANIAc2AiggDSAGKQPgBzcDECANQRhqIAZB6AdqKQMANwMAIA1BIGogBkHwB2opAwA3AwAgBigCuAchAiAGIAYoArwHIgMgC0ECdGoiCTYCxAYgBiACNgLABiAGIAM2ArgGDAILIAkLIQMgAEETNgIAIAAgAzYCBCAGKAK8ByIAIAsQlB8gBigCuAcgABDfKSAGKQPABRD5GgwBCwNAIAQEQCABIAMoAgAQ/wsgBEEEayEEIANBBGohAwwBCwsgBiAJNgK8BiAGQbgGahDNFyABKAIQQQN0IQMgASgCDCEJQQAhCAJAA0AgA0UNASAJIAZBwAVqEJoKRQRAIANBCGshAyAIQQFqIQggCUEIaiEJDAELCyAPIAgQhRMQ+RoLIAAgBikDwAU3AxAgACANNgIoIABBBTYCACAAQRhqIAZByAVqKQMANwMAIABBIGogBkHQBWopAwA3AwAgACAMIAEoApwDIgEgASAMSRs2AgwgACAMIAEgASAMSxs2AggLIAZB8AVqEIclQQEhCAwECyAGKALMBSEDIAYoAsgFIAYpA8AFEPwaIRUgBkHEADoAuAYgBiAVNwPABiADIAZBuAZqEIEVIQMgBigCuAcgC0YEQCAGQbgHahC8FyAGKAK8ByEKCyAKIAtBAnRqIAM2AgAgBiALQQFqIgs2AsAHIARBBGohBAwACwALIAZBuARqEIMVIQkLIAYgCTYCsAVBASEIAkACQCAJKAIAIgRBGkYEfyAGQUBrIAlBCGoQlAwCQAJAAkACQAJAAkACQCAGKAJAIAYoAkRB5bbgAEEJEI4qBEAgBxCIIQ0BCyABLQCgAkECRyIIRQ0BDAYLIAkoAhQhAyAJKAIQIQQgCSkDCBD8GiEVIAZBJzoAuAYgBiAVNwPABiABIAQgAyAGQbgGahDLHiAHEMoNIgMNAQwECyAJKAIQIQMgCSkCFCEVIAkpAwgQ/BohFiAGIBU3AswFIAYgAzYCyAUgBiAWNwPABSAGIAktABw6ANQFIAZBOGogBkHABWoQlAwCQAJAAkAgBigCOCIEIAYoAjwiC0GkteAAQQcQ6x9FBEAgBCALQYq24ABBBhDrH0UEQCAGQfgEaiABIAMgBSAGKQPABUEAEL8BDAILAkACQCAHEMoNIgQEQCAEKAIAQQ1GDQELIAZBCDYC+AQgBikDwAUQ+RoMAQsgBkH4B2oiBCAGQdAFaikDADcDACAGQfAHaiILIAZByAVqKQMANwMAIAYgBikDwAU3A+gHIAZCADcD4AcgBkG4B2ogARAvIAYoArgHIg1BgICAgHhGDQYgBkHkBmogBkHEB2opAgA3AgAgBkHABmogBkHoB2opAwA3AwAgBkHIBmogCykDADcDACAGQdAGaiAEKQMANwMAIAYgBikCvAc3AtwGIAYgBikD4Ac3A7gGIAZBgAI7AYgHIAYgDTYC2AYgBkECOgD9BiAGIAMgASgCnAMiBCADIARLGzYChAcgBiADIAQgAyAESRs2AoAHIAYgBkG4BmoQnCo2AvwEIAZBBzYC+AQLIAUQ7iYMAQsgBkG4BmogASADIAUQdSAGKAK8BiEEIAYoArgGIgNBCUYNASAGQfgHaiILIAZB2AZqKQMANwMAIAZB8AdqIg0gBkHQBmopAwA3AwAgBkHoB2oiDCAGQcgGaikDADcDACAGIAYpA8AGNwPgBwJAIANBCEcEQCAGQYAGaiAMKQMANwMAIAZBiAZqIA0pAwA3AwAgBkGQBmogCykDADcDACAGIAQ2AvQFIAYgAzYC8AUgBiAGKQPgBzcD+AUgBkH4BGogBkHwBWoQgAwMAQsgBkEINgL4BAsgBikDwAUQ+RoLIAYoAvwEIQQgBigC+AQiA0EJRg0EIAZB8ARqIAZBmAVqKQMANwMAIAZB6ARqIAZBkAVqKQMANwMAIAZB4ARqIAZBiAVqKQMANwMAIAYgBikDgAU3A9gEIAYgBDYC1AQgBiADNgLQBCADQQhGDQEgBkG8BmogBkHQBGpBKBD7BhogAEERNgIAIABBBGogBkG4BmpBLBD7BhpBACEIDAkLIAYgBDYC/AQgBikDwAUQ+RoMAwsgBkHQBGoQiiUMBAsCQAJAIAMoAgBBDmsOAgQBAAsgBxCIIRoMAwsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZBxAZqIAFB1AJqKQIANwIAIAZBzAZqIAFB3AJqKAIANgIAIAYgASkCzAI3ArwGIAYgAzYCuAYgBkG4BmoQxgoMAgsgBiAGKAK8ByIENgL8BCAGQeAHahCMICAFEO4mCyAAQRM2AgAgACAENgIEQQAhCAwECyAAIAk2AgQgAEESNgIAIAAgAiABKAKcAyIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIIApBGkYNBAwGCyAJKAIABSAEC0EaRw0AIAkoAhQhAyAJKAIQIQQgBkEwaiAJQQhqIgsQlAwgBigCMCINIAYoAjQiDEHlteAAQQQQ6x9FBEAgDSAMQeW24ABBCRDrH0UNAQsgCykDABD8GiEVIAZBJzoAuAYgBiAVNwPABiABIAQgAyAGQbgGahDLHgsCQCABLQCgAkECRw0AIAkoAgBBGkcNACAGQShqIAlBCGoQlAwCQCAGKAIoIgMgBigCLCIEQYS74ABBBhDrHw0AIAMgBEGexeAAQQYQ6x8NACADIARBirfgAEEIEOsfRQ0BCyAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRJHDQAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDQQwhAyAGQcQGaiABQdQCaikCADcCACAGQcwGaiABQdwCaigCADYCACAGIAEpAswCNwK8BiAGIAQ2ArgGIAZBuAZqIgsQxgogCSgCFCEEIAkoAhAhCSAGQa0BOgC4BiABIAkgBCALEMYZIAZBIGogASACEJ4CIAYoAiQhASAAAn8gBigCIEEBcQRAQQQhA0ETDAELIABBBDYCCEERCzYCACAAIANqIAE2AgAMAQsCQAJAIAcQyg0iA0UNAAJAAkAgAygCAEEOaw4CAgABCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBkHEBmogAUHUAmopAgA3AgAgBkHMBmogAUHcAmooAgA2AgAgBiABKQLMAjcCvAYgBiADNgK4BiAGQbgGahDGCgwBCyAHEIghRQ0BCyAAIAk2AgQgAEESNgIAIAAgAiABKAKcAyIBIAEgAkkbNgIMIAAgAiABIAEgAksbNgIIIApBGkcNAwwCCwJAAkACQCAHEMoNIgsEQCAGQRhqIAcQhRQgBigCHCEDIAYoAhghBCALKAIAQRRGBEAgBkH1ADoAuAYgASAEIAMgBkG4BmoQxhkgBkEIaiABIAlBABD7CiAGKAIMIQMgBigCCA0CIAAgAzYCBCAAQRI2AgAgACACIAEoApwDIgEgASACSRs2AgwgACACIAEgASACSxs2AgggCkEaRg0GDAcLIAZBEGogCRCNAyAGQTU6ALgGIAYgBikDEDcCvAYgBCADIAZBuAZqEIEVIQIgBxDKDSIDRQ0DIAMoAgBBJEcNAyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQIgASABKALMAhD/CwwDCyABKAKAAiEBIAZBADoAuAYgASABIAZBuAZqEIEVIQEgAEETNgIAIAAgATYCBAwDCyAAQRM2AgAgACADNgIEIApBGkYNAwwEC0Hl7OAAQShBgKbgABD0FwALIABBEzYCACAAIAI2AgQLIAZBsAVqEN4oIApBGkcNAQsgDigCAEEaRwRAIA4Q3QQLIA4QjSsLIAhFDQELIAUQ7iYLIAZBgAhqJAALx4EBAi9/BH4jAEGQCGsiAiQAIAJBADoAtwIgAiABKQGqAjcApwIgAiABQbICaiIEKQEANwCvAiACIAEpALsCNwC4AiACIAEoAMMCNgDAAiACQd0CaiABQb8CaikAADcAACACQdgCaiABQboCaikBADcCACACQdACaiAEKQEANwIAIAIgASkBqgI3AsgCIAFBKGoiByACQacCahDSCCACIAE2AsQCIAcQwyAhHwJAAkACfwJAIAcQyg0iBEUEQCABKAKAAiEBIAJBADoA6AYgASABIAJB6AZqEIEVIQMMAQsgBCgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABKALMAiEDDAILQeXs4ABBKEHMrOAAEPQXAAsgAUGqAmohEyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgAkH0BmoiFSABQdQCaikCADcCACACQfwGaiABQdwCaigCADYCACACIAEpAswCNwLsBiACIAQ2AugGIAJB6AZqIgQQxgogAkEANgLwAiACQoCAgIDAADcC6AIgAUHMAmohDCAEQQRyIQ0gAkHsBmohCyACQYQFaiEUIAJB6AVqISIgAkHoB2ohIyACQZgHaiEkIAJB8AZqIQ8gAkHYBGohFyACQcAFaiEtIAJBtARqISUgAkGwB2ohJiACQYgHaiEuIAJB+AdqISwgAkHwB2ohJyACQdQHaiEgIAJBsAVqISggAkGMBWohLyACQYgFaiEbIAJB7ANqISEgAkGwA2ohHCACQcwHaiEZIAJBgANqIRoDQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQCAHEMoNIgQEQCAEKAIAQQ5GDQELIAIgBxDDIDYC9AICQAJAAkACQCAHEMoNIgQEQCAEKAIAQQdGDQELAkAgBxDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQ1GDQILIAJB6AZqIgQgARCECCACLQDoBg0CIAItAOkGIQYgASgCnAMhCCABKAKYAyEJIAQgARCuASACKALsBiEDIAIoAugGIgRBBUYNDSAaIA8pAwA3AwAgGkEQaiAPQRBqIhApAwA3AwAgGkEIaiIRIA9BCGoiCikDADcDACACIAM2AvwCIAIgBDYC+AIgAS0AoAJBAkcNCiAHEMoNIgMEQCADKAIAQQlGDQsLIAcQyg0iAwRAIAMoAgBBC0YNCwsgBxDKDSIDBEAgAygCAEETRg0LCyAHEMoNIgMEQCADKAIAQRBGDQsLIAcQyg0iAwRAIAMoAgBBF0YNCwsCQCAHEMoNIgNFDQAgAygCAEEVRw0AIAMtAARFDQsLAkAgBxDKDSIDRQ0AIAMoAgBBFEcNACADLQAEQQ1GDQsLIAcQyg0iAwRAIAMoAgBBAkYNCwsgBxDKDSIDBEAgAygCAEEbRg0LCyAHEMoNIgMEQCADKAIAQR1GDQsLIAEtAKACQQJHDQkgBxDKDSIDDQMMCQsgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIAxBCGopAgA3AgAgDUEQaiAMQRBqKAIANgIAIAIgBDYC6AYgAkHoBmoiCBDGCiABKAKcAyEEIAIoAvQCIQYgCCABQQEQ0RIgAkGYAmogAigC6AYQuAYgAigCnAIhAyACKAKYAkUEQCAGIAQgBCAGSRshMCAGIAQgBCAGSxshDiAIEIclDAwLIAJB6AZqEIclDAwLIA0gDCkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgDUEIaiIFIAxBCGoiCCkCADcCACANQRBqIgkgDEEQaiIRKAIANgIAIAIgBDYC6AYgAkHoBmoiEhDGCiASIAEQrgEgAigC7AYhBiACKALoBiIdQQVHBEAgFyAPKQMANwMAIBdBEGogD0EQaikDADcDACAXQQhqIA9BCGoiHikDADcDACAZQRVqIBNBFWoiAykAADcAACAZQRBqIBNBEGoiECkBADcBACAZQQhqIBNBCGoiFikBADcBACAZIBMpAQA3AQBBACEKIAJBADoA+gYgAkEBOgCBByACIAEtAMYCOgCEByACIAEpAaoCNwDoBiACIAEpAbICNwDwBiACIAEvAboCOwD4BiACIAEoAL0CNgD7BiACIAEvAMECOwD/BiACIAEvAcQCOwCCByAHIBIQ0gggAiABNgLIByACKAL0AiEEIAJBgAI7AK8EIAJBAToAkAQgAkEAOgDYBiACIAQ2AqAGIAIgAS0AsAI6AK4EIAIgASgBqgI2AKgEIAIgAS8BrgI7AKwEIAIgASkAswI3ALEEIAIgASkAuwI3ALkEIAIgASgAwwI2AMEEIBRBFWogAykAADcAACAUQRBqIBApAQA3AQAgFEEIaiAWKQEANwEAIBQgEykBADcBACAHIAJBqARqENIIIAIgATYCgAUgAkEANgLwAyACQoCAgIDAADcC6AMgAiACQaAGajYC/AMgAiACQZAEajYC+AMgAiACQdgGajYC9AMgAS0AoAJBAkcNBSASIAEQzhUCQAJAAkAgAigC6AYiBEEoaiISEMoNIgpFDQAgCigCAEEURw0AIAotAARBBEYNAQtBACEKIBIQyg0iEkUNBiASKAIAQSFHDQYgBEE8aiIKEJMYIAoQkxggAkGIAmogBEEAQQEQkwEgAigCjAIhCiACKAKIAg0BDAYLIAJBkAJqIARBAEEBEJMBIAIoApQCIQogAigCkAJFDQULIAJB6AZqEIclIAohBAwGCyAGIQMMCwsgAigC7AYhAwwKCyADKAIAQRRHDQUgAy0ABEEERw0FDAYLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyACQfQGaiIGIAxBCGopAgA3AgAgAkH8BmogDEEQaigCADYCACACIAwpAgA3AuwGIAIgBDYC6AYgAkHoBmoiCBDGCiAfIAEoApwDIgQgBCAfSxshAyApQQFxBEAgCCABQRRqIAMgMacgMUIgiKcQpwULIAYgAkHwAmooAgA2AgAgAiACKQLoAjcC7AYgAiAfIAQgBCAfSRs2AvwGIAIgAzYC+AYgAkEONgLoBiACQegGahDcKCEDQQAMDQsgAkHoBmoQhyULAkACQAJAIAcQyg0iBARAIAQoAgBBCUYNAQsgDyAHEJEQIAJB8AFqIAcQhRQgAkHw5d8ANgLsBiACQTQ6AOgGIAIoAvABIAIoAvQBIAJB6AZqEIEVIQQgBxDKDSIDRQ0BIAMoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDRAgASABKALMAhD/CwwBCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAUgCCkCADcCACAJIBEoAgA2AgAgAiAENgLoBiACQegGaiISEMYKIAJBADoA6wUgAkEBOgDtBSACIAItANgGOgDfBSACIAItAJAEOgDgBSACIAEtALACOgDeBSACIAEtAL4COgDsBSACIAEtAMYCOgD0BSACIAEoAaoCNgDYBSACIAEvAa4COwDcBSACIAEpALMCNwDhBSACIAEvALsCOwDpBSACIAEoAsACNgDuBSACIAEvAcQCOwDyBSALQRVqIAMpAAA3AAAgC0EQaiAQKQEANwEAIAtBCGogFikBADcBACALIBMpAQA3AQAgByACQdgFahDSCCACIAE2AugGIAJBqANqIAEQswEgAigCrAMhAyACKAKoAyIEQYCAgIB4RwRAIAIgAigCsAMiEDYCwAYgAiADNgK8BiACIAQ2ArgGIBIQhyUCQAJAIAcQyg0iBARAIAQoAgBBCkYNAQsgDyAHEJEQIAJB+AFqIAcQhRQgAkHI5d8ANgLsBiACQTQ6AOgGIAIoAvgBIAIoAvwBIAJB6AZqEIEVIQQgBxDKDSIDRQ0BIAMoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDREgASABKALMAhD/CwwBCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAUgCCkCADcCACAJIBEoAgA2AgAgAiAENgLoBiACQegGahDGCkEAIQQCQCABLQCgAkECRw0AIAcQyg0iBUUNACAFKAIAQRNHDQAgAkGAAmogAUGg4N8AEPEBIAIoAoQCIQQgAigCgAINAQsgAiAENgKABiACQegGaiABIAItANgGIAItAJAEIAMgEBDFGRCwAyACKALsBiEIIAIoAugGIhZBgYCAgHhHBEAgHCAeKQIANwMAIAIgDykCADcDqAMgFkGAgICAeEcNBCABLQCgAkECRw0EIBBBBnQhBQNAIAVFDQUgAygCAEEERgRAIAMoAhAhCSADKAIMIREgAkGpAToA6AYgASARIAkgAkHoBmoQxhkLIANBQGshAyAFQUBqIQUMAAsACyACQYAGahD7JiAIIQQLIAJBuAZqEPwmDAELIAJB6AZqEIclIAMhBAsgChDdKAwBCyAVIAIpAugDNwIAIBVBCGogAkHwA2ooAgA2AgAgDyACQcAGaigCADYCACACIAIpArgGNwPoBiABKAKcAyEJIAIoAqAGIREgAi0AkAQhBSACLQDYBiEQQcgAQQQQqyAiAyAINgIcIAMgFjYCGCADIBA6AEUgAyAFOgBEIAMgBDYCQCADIAo2AjwgA0EANgI4IAMgESAJIAkgEUkbNgI0IAMgESAJIAkgEUsbNgIwIANBEGogAkH4BmopAwA3AgAgA0EIaiAPKQMANwIAIAMgAikD6AY3AgAgAyACKQOoAzcCICADQShqIBwpAwA3AgBBAAwBCyACQegDahDuJiAEIQNBAQshBSACQYAFahCHJSACIAY2AtQEIAIgHTYC0AQCfyAFRQRAIAsgAikD0AQ3AgAgC0EYaiACQegEaikDADcCACALQRBqIAJB4ARqKQMANwIAIAtBCGogFykDADcCAEHwAEEIEKsgIg5BCjYCACAOQQRqIAJB6AZqQSQQ+wYaIA4gAzYCKEEAIQNBAAwBCyACQdAEahCfFkEBCyEFIAJByAdqEIclDAILIAcQyg0iA0UgBHJFBEAgAygCAEEORg0BCyACQQhqIAcQhRQgAigCDCEEIAIoAgghAyACQfUAOgDoBiABIAMgBCACQegGaiIGEMYZIAIoAvQCIgQgASgCnAMiAyADIARLGyAEIAMgAyAESRsQphwhBCALQRhqIAJBkANqKQMANwIAIAtBEGogAkGIA2opAwA3AgAgC0EIaiAaKQMANwIAIAsgAikD+AI3AgBB8ABBCBCrICIOQQY2AgAgDkEEaiAGQSQQ+wYaIA4gBDYCKEEAIQMMAgsCfwJAAkACQAJ/AkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBxDKDSIDRQ0AIAMoAgBBE0cNACANIAwpAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiADNgLoBiACQegGaiIIEMYKIAggAUEBENESIAJB6AFqIAIoAugGELgGIAIoAuwBIQMgAigC6AEgCBCHJQ0BIAsgAikD+AI3AgAgC0EYaiACQZADaikDADcCACALQRBqIAJBiANqKQMANwIAIAtBCGogGikDADcCAEHwAEEIEKsgIg5BBjYCACAOQQRqIAhBJBD7BhogDiADNgIoQQAhAwwoCyABLQCgAkECRw0BIAcQyg0iA0UNASADKAIAQRRHDQEgAy0ABEEERw0BDAILIAQNByACKQOAAxD5GgwnCyAHEMoNIgMEQCADKAIAQQlGDQELIAQNAyACQaADaiIFIBEpAwA3AwAgAiAaKQMANwOYAwJAIAcQyg0iBEUNACAEKAIAQRdHDQAgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIAxBCGopAgA3AgAgDUEQaiAMQRBqKAIANgIAIAIgBDYC6AYgAkHoBmoiERDGCiABKAKcAyEEIAEoApgDIQMgAkGSAToA6AYgASADIAQgERDGGQsCQCAHEMoNIgRFDQAgBCgCAEEVRw0AIAQtAARFDQMLIAcQyg0iBARAIAQoAgBBEEYNAwsgBxDKDSIEBEAgBCgCAEEORg0DCyACQagBaiACQZgDahCUDCACKAKoASIEIAIoAqwBIgNBmMXgAEEDEOsfDRIgBCADQZvF4ABBAxDrH0UNAQwSCyAZQRVqIBNBFWoiAykAADcAACAZQRBqIBNBEGoiBSkBADcBACAZQQhqIBNBCGoiCCkBADcBACAZIBMpAQA3AQBBACEGIAJBADoA+gYgAkEBOgCBByACIAEtAMYCOgCEByACIAEpAaoCNwDoBiACIAEpAbICNwDwBiACIAEvAboCOwD4BiACIAEoAL0CNgD7BiACIAEvAMECOwD/BiACIAEvAcQCOwCCByAHIAJB6AZqIgkQ0gggAiABNgLIByACKAL0AiEEIAJBADsA3wUgAkEAOgCgBiACQQA6AJAEIAIgBDYCgAYgAiABLQCwAjoA3gUgAiABKAGqAjYA2AUgAiABLwGuAjsA3AUgAiABKQCzAjcA4QUgAiABKQC7AjcA6QUgAiABKADDAjYA8QUgFEEVaiADKQAANwAAIBRBEGogBSkBADcBACAUQQhqIAgpAQA3AQAgFCATKQEANwEAIAcgAkHYBWoQ0gggAiABNgKABSACQQA2ArAEIAJCgICAgMAANwKoBCACIAJBgAZqNgK8BCACIAJBoAZqNgK4BCACIAJBkARqNgK0BCABLQCgAkECRw0OIAkgARDOFQJAIAIoAugGIgRBKGoiCRDKDSIGRQ0AIAYoAgBBFEcNACAGLQAEQQRGDQQLQQAhBiAJEMoNIglFDQ0gCSgCAEEhRw0NIARBPGoiBhCTGCAGEJMYIAJB2AFqIARBAEEBEJMBIAIoAtwBIQYgAigC2AENBAwNCyAEIANBvLngAEEFEOsfDRAgAS0AoAJBAkcEQCAVIAcQkRAgAkGgAWogBxCFFCACQSo2AvAGIAJB0KrgADYC7AYgAkEwOgDoBiACKAKgASACKAKkASACQegGahCBFSEDIAcQyg0iBEUNEiAEKAIAQSRHDRIgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0GIAEgASgCzAIQ/wsMEgsgFSAHEJEQIAJBmAFqIAcQhRQgAkHSADYC8AYgAkGMq+AANgLsBiACQTA6AOgGIAIoApgBIAIoApwBIAJB6AZqEIEVIQMgBxDKDSIERQ0RIAQoAgBBJEcNESABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD/CwwRCyAHEMoNIgQNBwwICyAVIAcQkRAgAkG4AWogBxCFFCACQQo2AvAGIAJB8KvgADYC7AYgAkEwOgDoBiACKAK4ASACKAK8ASACQegGahCBFSEDIAcQyg0iBEUNAiAEKAIAQSRHDQIgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0FIAEgASgCzAIQ/wsMAgsgAkHgAWogBEEAQQEQkwEgAigC5AEhBiACKALgAUUNCQsgAkHoBmoQhyUgBiEEDAoLIAJB+AJqEJ8WDB8LQeXs4ABBKEH8quAAEPQXAAtB5ezgAEEoQeCr4AAQ9BcAC0Hl7OAAQShB/KvgABD0FwALIAQoAgBBFUcNACAELQAEDQAgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIAxBCGopAgA3AgAgDUEQaiAMQRBqKAIANgIAIAIgBDYC6AYgAkHoBmoiCBDGCiAIIAFBARDREiACQbABaiACKALoBhC4BiACKAK0ASEDIAIoArABIAgQhyUNAiABKAKcAyEEIAIoAvQCIQYgGyAFKQMANwMAIAIgAikDmAM3A4AFIAggAkGABWoQpRxB8ABBCBCrICIOIAYgBCAEIAZJGzYCDCAOIAYgBCAEIAZLGzYCCCAOQQc2AgAgDiADNgIoIA4gAikD6AY3AxAgDkEYaiAPKQMANwMAIA5BIGogAkH4BmopAwA3AwAMAQsgAkHQB2ogBSkDADcDACACIAIpA5gDNwPIByACQYAFaiACQcgHahClHCALQRBqIAJBkAVqKQMANwIAIAtBCGogGykDADcCACALIAIpA4AFNwIAQfAAQQgQqyAiDkEFNgIAIA4gAikC6AY3AgQgDkEMaiAPKQIANwIAIA5BFGogAkH4BmopAgA3AgAgDkEcaiACQYAHaigCADYCAAtBACEDQQAhBQwXCyACKQOYAxD5GkEBIQUMFgsgAkHoBmoQhyULAkACQAJAIAcQyg0iBARAIAQoAgBBCUYNAQsgDyAHEJEQIAJBwAFqIAcQhRQgAkHw5d8ANgLsBiACQTQ6AOgGIAIoAsABIAIoAsQBIAJB6AZqEIEVIQQgBxDKDSIDRQ0BIAMoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDSAgASABKALMAhD/CwwBCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGoiCSAMQQhqIhEpAgA3AgAgDUEQaiIQIAxBEGoiFigCADYCACACIAQ2AugGIAJB6AZqIhIQxgogAkEAOgDjBCACQQE6AOUEIAIgAi0AkAQ6ANcEIAIgAi0AoAY6ANgEIAIgAS0AsAI6ANYEIAIgAS0AvgI6AOQEIAIgAS0AxgI6AOwEIAIgASgBqgI2ANAEIAIgAS8BrgI7ANQEIAIgASkAswI3ANkEIAIgAS8AuwI7AOEEIAIgASgCwAI2AOYEIAIgAS8BxAI7AOoEIAtBFWogAykAADcAACALQRBqIAUpAQA3AQAgC0EIaiAIKQEANwEAIAsgEykBADcBACAHIAJB0ARqENIIIAIgATYC6AYgAkHoA2ogARCzASACKALsAyEDIAIoAugDIgRBgICAgHhHBEAgAiACKALwAyIFNgKwAyACIAM2AqwDIAIgBDYCqAMgEhCHJQJAAkAgBxDKDSIEBEAgBCgCAEEKRg0BCyAPIAcQkRAgAkHIAWogBxCFFCACQcjl3wA2AuwGIAJBNDoA6AYgAigCyAEgAigCzAEgAkHoBmoQgRUhBCAHEMoNIgNFDQEgAygCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNISABIAEoAswCEP8LDAELIA0gDCkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgCSARKQIANwIAIBAgFigCADYCACACIAQ2AugGIAJB6AZqEMYKQQAhBAJAIAEtAKACQQJHDQAgBxDKDSIIRQ0AIAgoAgBBE0cNACACQdABaiABQaDg3wAQ8QEgAigC1AEhBCACKALQAQ0BCyACIAQ2ArgGIAJB6AZqIAEgAi0AkAQgAi0AoAYgAyAFEMUZELADIAIoAuwGIQggAigC6AYiEUGBgICAeEcEQCACQfADaiIQIAopAgA3AwAgAiAPKQIANwPoAyARQYCAgIB4Rw0EIAEtAKACQQJHDQQgBUEGdCEFA0AgBUUNBSADKAIAQQRGBEAgAygCECEKIAMoAgwhCSACQakBOgDoBiABIAkgCiACQegGahDGGQsgA0FAayEDIAVBQGohBQwACwALIAJBuAZqEPsmIAghBAsgAkGoA2oQ/CYMAQsgAkHoBmoQhyUgAyEECyAGEN0oDAELIBUgAikCqAQ3AgAgFUEIaiACQbAEaigCADYCACAPIBwoAgA2AgAgAiACKQKoAzcD6AYgASgCnAMhCiACKAKABiEJIAItAKAGIQUgAi0AkAQhFkHIAEEEEKsgIgMgCDYCHCADIBE2AhggAyAWOgBFIAMgBToARCADIAQ2AkAgAyAGNgI8IANBADYCOCADIAkgCiAJIApLGzYCNCADIAkgCiAJIApJGzYCMCADQRBqIAJB+AZqKQMANwIAIANBCGogDykDADcCACADIAIpA+gGNwIAIAMgAikD6AM3AiAgA0EoaiAQKQMANwIAQQAMAQsgAkGoBGoQ7iYgBCEDQQELIQUgAkGABWoQhyUCfyAFBEAgAkH4AmoQnxZBAQwBCyALIAIpA/gCNwIAIAtBGGogAkGQA2opAwA3AgAgC0EQaiACQYgDaikDADcCACALQQhqIBopAwA3AgBB8ABBCBCrICIOQQo2AgAgDkEEaiACQegGakEkEPsGGiAOIAM2AihBACEDQQALIQUgAkHIB2oQhyUMEgsgBkEBcQRAIAJB/QA6AOgGIAEgCSAIIAJB6AZqEMYZC0EAIQYCQCACQZgDakG8ueAAQQUQ0htFDQAgBxDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQ1HDQAgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIAxBCGopAgA3AgAgDUEQaiAMQRBqKAIANgIAIAIgBDYC6AYgAkHoBmoQxgpBASEGCyACQegGaiIIIAEQrgEgAigC7AYhESACKALoBiIWQQVHBEAgAkHYA2oiHSAQKQMAIjI3AwAgAkHQA2oiHiAKKQMAIjM3AwAgAiAPKQMAIjQ3A8gDIBwgNDcDACAcQQhqIDM3AwAgHEEQaiAyNwMAIAIgETYCrAMgAiAWNgKoAyACQZABaiACQagDahCpHCACIAIpA5ABNwLgAyAhQRVqIBNBFWoiBCkAADcAACAhQRBqIBNBEGoiAykBADcBACAhQQhqIBNBCGoiBSkBADcBACAhIBMpAQA3AQAgAkEAOgD6BiACQQE6AIEHIAIgAS0AxgI6AIQHIAIgASkBqgI3AOgGIAIgASkBsgI3APAGIAIgAS8BugI7APgGIAIgASgAvQI2APsGIAIgAS8AwQI7AP8GIAIgAS8BxAI7AIIHIAcgCBDSCCACIAE2AugDIAJBiAFqIAJBmANqEJQMAkACQCACKAKIASIIIAIoAowBIglBmMXgAEEDEOsfRQRAIAggCUGbxeAAQQMQ6x8NASAIIAlBvLngAEEFEOsfDQJB5ezgAEEoQYys4AAQ9BcACyACKAL0AiEGQQAhCCACQQA7ANcEIAJBADoAzAUgAkEAOgCPCCACIAY2AtgGIAIgAS0AsAI6ANYEIAIgASgBqgI2ANAEIAIgAS8BrgI7ANQEIAIgASkAswI3ANkEIAIgASkAuwI3AOEEIAIgASgAwwI2AOkEIBRBFWogBCkAADcAACAUQRBqIAMpAQA3AQAgFEEIaiAFKQEANwEAIBQgEykBADcBACAHIAJB0ARqENIIIAIgATYCgAUgAkEANgKwBCACQoCAgIDAADcCqAQgAiACQdgGajYCwAQgAiACQeADajYCvAQgAiACQcwFajYCuAQgAiACQY8IajYCtAQgAS0AoAJBAkcNDSACQegGaiABEM4VAkACQAJAIAIoAugGIgZBKGoiCRDKDSIIRQ0AIAgoAgBBFEcNACAILQAEQQRGDQELQQAhCCAJEMoNIglFDQ4gCSgCAEEhRw0OIAZBPGoiCBCTGCAIEJMYIAJBKGogBkEAQQEQkwEgAigCLCEIIAIoAigNAQwOCyACQTBqIAZBAEEBEJMBIAIoAjQhCCACKAIwRQ0NCyACQegGahCHJSAIIQQMDgsgAigC9AIhBkEAIQggAkEAOwDXBCACQQA6AMwFIAJBADoAjwggAiAGNgLYBiACIAEtALACOgDWBCACIAEoAaoCNgDQBCACIAEvAa4COwDUBCACIAEpALMCNwDZBCACIAEpALsCNwDhBCACIAEoAMMCNgDpBCAUQRVqIAQpAAA3AAAgFEEQaiADKQEANwEAIBRBCGogBSkBADcBACAUIBMpAQA3AQAgByACQdAEahDSCCACIAE2AoAFIAJBADYC4AUgAkKAgICAwAA3AtgFIAIgAkHYBmo2AvAFIAIgAkHgA2o2AuwFIAIgAkHMBWo2AugFIAIgAkGPCGo2AuQFIAEtAKACQQJHDQggAkHoBmogARDOFQJAAkACQCACKALoBiIGQShqIgkQyg0iCEUNACAIKAIAQRRHDQAgCC0ABEEERg0BC0EAIQggCRDKDSIJRQ0JIAkoAgBBIUcNCSAGQTxqIggQkxggCBCTGCACQdAAaiAGQQBBARCTASACKAJUIQggAigCUA0BDAkLIAJB2ABqIAZBAEEBEJMBIAIoAlwhCCACKAJYRQ0ICyACQegGahCHJSAIIQQMCQsgAigC9AIhCCACQQE6ANcEIAIgBjoA2AQgAiAGOgCQBCACQQE6ANgGIAIgCDYCoAYgAiABLQCwAjoA1gQgAiABKAGqAjYA0AQgAiABLwGuAjsA1AQgAiABKQCzAjcA2QQgAiABKQC7AjcA4QQgAiABKADDAjYA6QQgFEEVaiAEKQAANwAAIBRBEGogAykBADcBACAUQQhqIAUpAQA3AQAgFCATKQEANwEAIAcgAkHQBGoQ0gggAiABNgKABUEAIQYgAkEANgLgBSACQoCAgIDAADcC2AUgAiACQaAGajYC7AUgAiACQZAEajYC6AUgAiACQdgGajYC5AUgAS0AoAJBAkcNAyACQegGaiABEM4VAkACQAJAIAIoAugGIghBKGoiCRDKDSIGRQ0AIAYoAgBBFEcNACAGLQAEQQRGDQELQQAhBiAJEMoNIglFDQQgCSgCAEEhRw0EIAhBPGoiBhCTGCAGEJMYIAJB+ABqIAhBAEEBEJMBIAIoAnwhBiACKAJ4DQEMBAsgAkGAAWogCEEAQQEQkwEgAigChAEhBiACKAKAAUUNAwsgAkHoBmoQhyUgBiEEDAQLIBEhAwsgAikDmAMQ+RoMEgsgAkHoBmoQhyULAkACQAJAIAcQyg0iCARAIAgoAgBBCUYNAQsgDyAHEJEQIAJB4ABqIAcQhRQgAkHw5d8ANgLsBiACQTQ6AOgGIAIoAmAgAigCZCACQegGahCBFSEEIAcQyg0iA0UNASADKAIAQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0aIAEgASgCzAIQ/wsMAQsgDSAMKQIANwIAIAEoAsgCIQggAUElNgLIAiABIAEpA+ACNwOYAyANQQhqIgkgDEEIaiIQKQIANwIAIA1BEGoiEiAMQRBqIhgoAgA2AgAgAiAINgLoBiACQegGaiIIEMYKIAJBADoA2wcgAkEBOgDdByACIAItANgGOgDPByACIAItAJAEOgDQByACIAEtALACOgDOByACIAEtAL4COgDcByACIAEtAMYCOgDkByACIAEoAaoCNgDIByACIAEvAa4COwDMByACIAEpALMCNwDRByACIAEvALsCOwDZByACIAEoAsACNgDeByACIAEvAcQCOwDiByALQRVqIAQpAAA3AAAgC0EQaiADKQEANwEAIAtBCGogBSkBADcBACALIBMpAQA3AQAgByACQcgHahDSCCACIAE2AugGIAJBqARqIAEQswEgAigCrAQhAyACKAKoBCIEQYCAgIB4RwRAIAIgAigCsAQiBTYCwAYgAiADNgK8BiACIAQ2ArgGIAgQhyUCQAJAIAcQyg0iBARAIAQoAgBBCkYNAQsgDyAHEJEQIAJB6ABqIAcQhRQgAkHI5d8ANgLsBiACQTQ6AOgGIAIoAmggAigCbCACQegGahCBFSEEIAcQyg0iA0UNASADKAIAQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0bIAEgASgCzAIQ/wsMAQsgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAJIBApAgA3AgAgEiAYKAIANgIAIAIgBDYC6AYgAkHoBmoQxgpBACEEAkAgAS0AoAJBAkcNACAHEMoNIghFDQAgCCgCAEETRw0AIAJB8ABqIAFBoODfABDxASACKAJ0IQQgAigCcA0BCyACIAQ2AoAGIAJB6AZqIAEgAi0A2AYgAi0AkAQgAyAFEMUZELADIAIoAuwGIQggAigC6AYiEEGBgICAeEcEQCACQbAEaiISIAopAgA3AwAgAiAPKQIANwOoBCAQQYCAgIB4Rw0EIAEtAKACQQJHDQQgBUEGdCEFA0AgBUUNBSADKAIAQQRGBEAgAygCECEKIAMoAgwhCSACQakBOgDoBiABIAkgCiACQegGahDGGQsgA0FAayEDIAVBQGohBQwACwALIAJBgAZqEPsmIAghBAsgAkG4BmoQ/CYMAQsgAkHoBmoQhyUgAyEECyAGEN0oDAELIBUgAikC2AU3AgAgFUEIaiACQeAFaigCADYCACAPIAJBwAZqKAIANgIAIAIgAikCuAY3A+gGIAEoApwDIQogAigCoAYhCSACLQCQBCEFIAItANgGIRhByABBBBCrICIDIAg2AhwgAyAQNgIYIAMgGDoARSADIAU6AEQgAyAENgJAIAMgBjYCPCADQQA2AjggAyAJIAogCSAKSxs2AjQgAyAJIAogCSAKSRs2AjAgA0EQaiACQfgGaikDADcCACADQQhqIA8pAwA3AgAgAyACKQPoBjcCACADIAIpA6gENwIgIANBKGogEikDADcCAEEADAELIAJB2AVqEO4mIAQhA0EBCyACQYAFahCHJSAbIAIpA8gDNwMAIBtBCGogHikDADcDACAbQRBqIB0pAwA3AwAgAiARNgKEBSACIBY2AoAFRQRAIAsgAikDgAU3AgAgC0EYaiACQZgFaikDADcCACALQRBqIAJBkAVqKQMANwIAIAtBCGogGykDADcCAEHwAEEIEKsgIg5BCjYCACAOQQRqIAJB6AZqQSQQ+wYaIA4gAzYCKAwJCyACQYAFahCfFgwKCyACQegGahCHJQsCQAJAAkAgBxDKDSIGBEAgBigCAEEJRg0BCyAPIAcQkRAgAkE4aiAHEIUUIAJB8OXfADYC7AYgAkE0OgDoBiACKAI4IAIoAjwgAkHoBmoQgRUhBCAHEMoNIgNFDQEgAygCAEEkRw0BIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNFiABIAEoAswCEP8LDAELIA0gDCkCADcCACABKALIAiEGIAFBJTYCyAIgASABKQPgAjcDmAMgDUEIaiIQIAxBCGoiEikCADcCACANQRBqIhggDEEQaiIqKAIANgIAIAIgBjYC6AYgAkHoBmoQxgogAkEAOgDbByACQQE6AN0HIAIgAi0Ajwg6AM8HIAIgAi0AzAU6ANAHIAIgAS0AsAI6AM4HIAIgAS0AvgI6ANwHIAIgAS0AxgI6AOQHIAIgASgBqgI2AMgHIAIgAS8BrgI7AMwHIAIgASkAswI3ANEHIAIgAS8AuwI7ANkHIAIgASgCwAI2AN4HIAIgAS8BxAI7AOIHIAtBFWogBCkAADcAACALQRBqIAMpAQA3AQAgC0EIaiAFKQEANwEAIAsgEykBADcBACAHIAJByAdqENIIIAIgATYC6AYgAkG4BmogARCzASACKAK8BiEGIAIoArgGIitBgICAgHhHBEACQCACKALABiIJBEBBACEFIAYhAyAJIQQDQCADEPQVIAVqIQUgA0FAayEDIARBAWsiBA0ACyAFQQFHBEAgAigC5AMhBCACKALgAyEDIAJBEjoAuAYgASADIAQgAkG4BmoQxhkLIAYgCUGsrOAAEK8jIgQoAgBBAkcNASAEIAlBvKzgABCvIyIEKAIsIQMgBCgCKCEEIAJBGToAuAYgASAEIAMgAkG4BmoQxhkMAQsgAigC5AMhBCACKALgAyEDIAJBEjoAuAYgASADIAQgAkG4BmoQxhkLAkAgAS0AoAJBAkcNACABLQDHAg0AIAIoAuQDIQQgAigC4AMhAyACQYABOgC4BiABIAMgBCACQbgGahDGGQsgAiAJNgKIBiACIAY2AoQGIAIgKzYCgAYgAkHoBmoQhyUCQAJAIAcQyg0iBARAIAQoAgBBCkYNAQsgDyAHEJEQIAJBQGsgBxCFFCACQcjl3wA2AuwGIAJBNDoA6AYgAigCQCACKAJEIAJB6AZqEIEVIQQgBxDKDSIDRQ0BIAMoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDRcgASABKALMAhD/CwwBCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIBAgEikCADcCACAYICooAgA2AgAgAiAENgLoBiACQegGahDGCkEAIQQCQCABLQCgAkECRw0AIAcQyg0iA0UNACADKAIAQRNHDQAgAkHIAGogAUGg4N8AEPEBIAIoAkwhBCACKAJIDQELIAIgBDYCoAYgAkHoBmogASACLQCPCCACLQDMBSAGIAkQxRkQsAMgAigC7AYhECACKALoBiISQYGAgIB4RwRAIAJBwAZqIhggCikCADcDACACIA8pAgA3A7gGIBJBgICAgHhHDQQgAS0AoAJBAkcNBCAJQQZ0IQMDQCADRQ0FIAYoAgBBBEYEQCAGKAIQIQUgBigCDCEKIAJBqQE6AOgGIAEgCiAFIAJB6AZqEMYZCyAGQUBrIQYgA0FAaiEDDAALAAsgAkGgBmoQ+yYgECEECyACQYAGahD8JgwBCyACQegGahCHJSAGIQQLIAgQ3SgMAQsgFSACKQLYBTcCACAVQQhqIAJB4AVqKAIANgIAIA8gAkGIBmooAgA2AgAgAiACKQKABjcD6AYgASgCnAMhCiACKALYBiEGIAItAMwFIQMgAi0AjwghCUHIAEEEEKsgIgUgEDYCHCAFIBI2AhggBSAJOgBFIAUgAzoARCAFIAQ2AkAgBSAINgI8IAVBADYCOCAFIAYgCiAGIApLGzYCNCAFIAYgCiAGIApJGzYCMCAFQRBqIAJB+AZqKQMANwIAIAVBCGogDykDADcCACAFIAIpA+gGNwIAIAUgAikDuAY3AiAgBUEoaiAYKQMANwIAQQAMAQsgAkHYBWoQ7iYgBCEFQQELIQMgAkGABWoQhyVBgICAgHghBAJAIAMEQCAFIQMMAQsgBSgCCCEKIAUoAgQhAyAFKAIAIQQgAkGoBGogBUEMakEkEPsGGiACQaAEaiAFQUBrKQIANwMAIAJBmARqIAVBOGopAgA3AwAgAiAFKQIwNwOQBCAFEI8rCyAXIAIpA8gDNwMAIBdBCGogHikDADcDACAXQRBqIB0pAwA3AwAgAiABNgLwBCACIBE2AtQEIAIgFjYC0AQgAiACQfQCajYC+AQgAiACQeADajYC9AQgBEGAgICAeEcEQCACIAo2AogFIAIgAzYChAUgAiAENgKABSAvIAJBqARqQSQQ+wYgKEEQaiACQaAEaikDADcCACAoQQhqIAJBmARqKQMANwIAICggAikDkAQ3AgAgAiAKNgLUBSACIAM2AtAFIAIgBDYCzAUgAkEHNgLYBSACIApBAk8EfyACQcgHaiIEIAJBzAVqEK8VIAJB2AVqIgMQjCUgAyAEQSgQ+wYaICwQ7iYgAigC0AUhAyACKALUBSEKIAIoAswFBSAECzYC4AYgAiADNgLYBiACIAMgCkEGdGo2AuQGIAIgAzYC3AYCQAJAIAoEQCADKAIIIQUgAygCBCEEIAMoAgAhDiACQcAGaiIGIANBFGopAgA3AwAgAkHIBmoiCCADQRxqKQIANwMAIAJB0AZqIgogA0EkaigCADYCACADKQIMITIgAkGoBmoiESADQTBqKQMANwMAIAJBsAZqIhAgA0E4aikDADcDACACIANBQGs2AtwGIAIgAykDKDcDoAYgAiAyNwO4BiAOQQdHDQELIAIoAuADIQQgAigC5AMhAyACQRI6AMgHIAEgBCADIAJByAdqEMYZQQUhDkEAIQVBACEEDAELICAgAikDuAY3AgAgJyACKQOgBjcDACAgQQhqIAYpAwA3AgAgIEEQaiAIKQMANwIAICBBGGogCigCADYCACAnQQhqIBEpAwA3AwAgJ0EQaiAQKQMANwMAIAIgBTYC0AcgAiAENgLMByACIA42AsgHIAJBmAZqIAooAgA2AgAgAkGQBmogCCkDADcDACACQYgGaiAGKQMANwMAIAIgAikDuAY3A4AGICwQ7iYLQShBCBCrICIDIAU2AgggAyAENgIEIAMgDjYCACADIAIpA4AGNwIMIANBFGogAkGIBmopAwA3AgAgA0EcaiACQZAGaikDADcCACADQSRqIAJBmAZqKAIANgIAIAJB2AZqEM8XIAEoApwDIQQgAigC9AIhBiAuIAJB2AVqQSgQ+wYaIAJBgAdqIAJB6ARqKQMANwMAIAJB+AZqIAJB4ARqKQMANwMAIA8gFykDADcDACAmICUpAgA3AgAgJkEIaiAlQQhqKQIANwIAICZBEGogJUEQaikCADcCACACIAIpA9AENwPoBkHwAEEIEKsgIg4gAkHoBmpB4AAQ+wYiBSADNgJoIAUgBiAEIAQgBkkbNgJkIAUgBiAEIAQgBksbNgJgEO4mIAIoArwFEN0oIC0Q+yYMBQsgAkHQBGoQnxYMBgsgAkHoBmoQhyULAkACQAJAIAcQyg0iBgRAIAYoAgBBCUYNAQsgDyAHEJEQIAJBEGogBxCFFCACQfDl3wA2AuwGIAJBNDoA6AYgAigCECACKAIUIAJB6AZqEIEVIQQgBxDKDSIDRQ0BIAMoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDRIgASABKALMAhD/CwwBCyANIAwpAgA3AgAgASgCyAIhBiABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGoiECAMQQhqIhIpAgA3AgAgDUEQaiIYIAxBEGoiKigCADYCACACIAY2AugGIAJB6AZqEMYKIAJBADoA2wcgAkEBOgDdByACIAItAI8IOgDPByACIAItAMwFOgDQByACIAEtALACOgDOByACIAEtAL4COgDcByACIAEtAMYCOgDkByACIAEoAaoCNgDIByACIAEvAa4COwDMByACIAEpALMCNwDRByACIAEvALsCOwDZByACIAEoAsACNgDeByACIAEvAcQCOwDiByALQRVqIAQpAAA3AAAgC0EQaiADKQEANwEAIAtBCGogBSkBADcBACALIBMpAQA3AQAgByACQcgHahDSCCACIAE2AugGIAJBuAZqIAEQswEgAigCvAYhBiACKAK4BiIrQYCAgIB4RwRAAkAgAigCwAYiCUUNAEEAIQUgBiEDIAkhBANAIAMQ9BUgBWohBSADQUBrIQMgBEEBayIEDQALIAVFDQAgAigC5AMhBCACKALgAyEDIAJBEToAuAYgASADIAQgAkG4BmoQxhkLIAIgCTYCqAYgAiAGNgKkBiACICs2AqAGIAJB6AZqEIclAkACQCAHEMoNIgQEQCAEKAIAQQpGDQELIA8gBxCRECACQRhqIAcQhRQgAkHI5d8ANgLsBiACQTQ6AOgGIAIoAhggAigCHCACQegGahCBFSEEIAcQyg0iA0UNASADKAIAQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0TIAEgASgCzAIQ/wsMAQsgDSAMKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAQIBIpAgA3AgAgGCAqKAIANgIAIAIgBDYC6AYgAkHoBmoQxgpBACEEAkAgAS0AoAJBAkcNACAHEMoNIgNFDQAgAygCAEETRw0AIAJBIGogAUGg4N8AEPEBIAIoAiQhBCACKAIgDQELIAIgBDYCkAQgAkHoBmogASACLQCPCCACLQDMBSAGIAkQxRkQsAMgAigC7AYhECACKALoBiISQYGAgIB4RwRAIAJBwAZqIhggCikCADcDACACIA8pAgA3A7gGIBJBgICAgHhHDQQgAS0AoAJBAkcNBCAJQQZ0IQMDQCADRQ0FIAYoAgBBBEYEQCAGKAIQIQUgBigCDCEKIAJBqQE6AOgGIAEgCiAFIAJB6AZqEMYZCyAGQUBrIQYgA0FAaiEDDAALAAsgAkGQBGoQ+yYgECEECyACQaAGahD8JgwBCyACQegGahCHJSAGIQQLIAgQ3SgMAQsgFSACKQKoBDcCACAVQQhqIAJBsARqKAIANgIAIA8gAkGoBmooAgA2AgAgAiACKQKgBjcD6AYgASgCnAMhBiACKALYBiEKIAItAMwFIQMgAi0AjwghCUHIAEEEEKsgIgUgEDYCHCAFIBI2AhggBSAJOgBFIAUgAzoARCAFIAQ2AkAgBSAINgI8IAVBADYCOCAFIAogBiAGIApJGzYCNCAFIAogBiAGIApLGzYCMCAFQRBqIAJB+AZqKQMANwIAIAVBCGogDykDADcCACAFIAIpA+gGNwIAIAUgAikDuAY3AiAgBUEoaiAYKQMANwIAQQAMAQsgAkGoBGoQ7iYgBCEFQQELIQMgAkGABWoQhyVBgICAgHghBAJAIAMEQCAFIQMMAQsgBSgCBCEDIAUoAgAhBCACQdgFaiAFQQhqQSgQ+wYaIAJBkAZqIAVBQGspAgA3AwAgAkGIBmogBUE4aikCADcDACACIAUpAjA3A4AGIAUQjysLIBcgAikDyAM3AwAgF0EIaiAeKQMANwMAIBdBEGogHSkDADcDACACIAE2AvAEIAIgETYC1AQgAiAWNgLQBCACIAJB9AJqNgL4BCACIAJB4ANqNgL0BCAEQYCAgIB4Rg0BIAIgAzYC7AYgAiAENgLoBiAPIAJB2AVqQSgQ+wYaICRBEGogAkGQBmopAwA3AgAgJEEIaiACQYgGaikDADcCACAkIAIpA4AGNwIAIAIoAqgHIQYCQCABLQCgAkECRw0AIAEtAMcCDQAgAigC5AMhBCACKALgAyEDIAJBgAE6AIAFIAEgAyAEIAJBgAVqEMYZCyACQdAHaiAXKQMANwMAIAJB2AdqIAJB4ARqKQMANwMAIAJB4AdqIAJB6ARqKQMANwMAICMgIikCADcCACAjQQhqICJBCGopAgA3AgAgI0EQaiAiQRBqKQIANwIAIAIgAikD0AQ3A8gHIAEoApwDIQQgAigC9AIhAyAUIAJByAdqQTgQ+wYaQfAAQQgQqyAiDkEINgIAIA5BBGogAkGABWpBPBD7BhogDiAGNgJIIA4gAyAEIAMgBEsbNgJEIA4gAyAEIAMgBEkbNgJAIAJB6AZqEPwmIBUQ7iYgAigCpAcQ3SgLQQAhA0EADAILIAJB0ARqEJ8WC0EBCyEFIAJB6ANqEIclIAIpA5gDEPkaIAIoAvgCRQ0AIAJB+AJqEJ8WCyAFDQELIAIoAvACIgQgAigC6AJGBEAgAkHoAmoQwhcLIAIoAuwCIARBDGxqIgYgMDYCCCAGIA42AgQgBiADNgIAIAIgBEEBajYC8AIgBxDKDSIEBEAgBCgCAEEORg0ECyAHEMoNIgQEQCAEKAIAQRBGDQILIAJB8AZqIAcQkRAgAiAHEIUUIAJBqMXgADYC7AYgAkE0OgDoBiACKAIAIAIoAgQgAkHoBmoQgRUhAyAHEMoNIgRFDQAgBCgCAEEkRw0AIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEP8LCyACQegCahDkJgwDCyANIAwpAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1BCGogDEEIaikCADcCACANQRBqIAxBEGooAgA2AgAgAiAENgLoBiACQegGahDGCiAHEMoNIgRFDQFBASApIAQoAgBBDkYiBBshKSABKQOYAyAxIAQbITEMAQsLQeXs4ABBKEHcrOAAEPQXAAtBAQshASACQcQCahCHJSAAIAM2AgQgACABNgIAIAJBkAhqJAAPC0Hl7OAAQShB+PjfABD0FwALQeXs4ABBKEGI+d8AEPQXAAuogAECMH8EfiMAQZAIayICJAAgAkEAOgC3AiACIAEpAYIDNwCnAiACIAFBigNqIgQpAQA3AK8CIAIgASkAkwM3ALgCIAIgASgAmwM2AMACIAJB3QJqIAFBlwNqKQAANwAAIAJB2AJqIAFBkgNqKQEANwIAIAJB0AJqIAQpAQA3AgAgAiABKQGCAzcCyAIgAUGAAWoiFyACQacCahDJCCACIAE2AsQCIAFBKGoiBxDeICEgAkACQAJ/AkAgBxDjDSIERQRAIAEoAtgCIQEgAkEAOgDoBiABIAEgAkHoBmoQgRUhAwwBCyAEKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGBEAgASgCLCEDDAILQeXs4ABBKEHMrOAAEPQXAAsgAUGCA2ohEyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCACQfQGaiIVIAFBNGopAgA3AgAgAkH8BmogAUE8aigCADYCACACIAEpAiw3AuwGIAIgBDYC6AYgAkHoBmoiBBDHCiACQQA2AvACIAJCgICAgMAANwLoAiABQSxqIQwgBEEEciENIAJB7AZqIQsgAkGEBWohFCACQegFaiEjIAJB6AdqISQgAkGYB2ohJSACQfAGaiEPIAJB2ARqIRggAkHABWohLiACQbQEaiEmIAJBsAdqIScgAkGIB2ohLyACQfgHaiEtIAJB8AdqISggAkHUB2ohISACQbAFaiEpIAJBjAVqITAgAkGIBWohHCACQewDaiEiIAJBsANqIR0gAkHMB2ohGiACQYADaiEbA0ACQAJAAkACQAJAAkACQAJ/AkACQAJAAkAgBxDjDSIEBEAgBCgCAEEORg0BCyACIAcQ3iA2AvQCAkACQAJAAkAgBxDjDSIEBEAgBCgCAEEHRg0BCwJAIAcQ4w0iBEUNACAEKAIAQRRHDQAgBC0ABEENRg0CCyACQegGaiIEIAEQhQggAi0A6AYNAiACLQDpBiEGIAEoAnwhCCABKAJ4IQkgBCABEK0BIAIoAuwGIQMgAigC6AYiBEEFRg0NIBsgDykDADcDACAbQRBqIA9BEGoiECkDADcDACAbQQhqIhEgD0EIaiIKKQMANwMAIAIgAzYC/AIgAiAENgL4AiABLQD4AkECRw0KIAcQ4w0iAwRAIAMoAgBBCUYNCwsgBxDjDSIDBEAgAygCAEELRg0LCyAHEOMNIgMEQCADKAIAQRNGDQsLIAcQ4w0iAwRAIAMoAgBBEEYNCwsgBxDjDSIDBEAgAygCAEEXRg0LCwJAIAcQ4w0iA0UNACADKAIAQRVHDQAgAy0ABEUNCwsCQCAHEOMNIgNFDQAgAygCAEEURw0AIAMtAARBDUYNCwsgBxDjDSIDBEAgAygCAEECRg0LCyAHEOMNIgMEQCADKAIAQRtGDQsLIAcQ4w0iAwRAIAMoAgBBHUYNCwsgAS0A+AJBAkcNCSAHEOMNIgMNAwwJCyANIAwpAgA3AgAgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggDUEIaiAMQQhqKQIANwIAIA1BEGogDEEQaigCADYCACACIAQ2AugGIAJB6AZqIggQxwogASgCfCEEIAIoAvQCIQYgCCABQQEQ4hIgAkGYAmogAigC6AYQrQYgAigCnAIhAyACKAKYAkUEQCAGIAQgBCAGSRshMSAGIAQgBCAGSxshDiAIEKMmDAwLIAJB6AZqEKMmDAwLIA0gDCkCADcCACABKAIoIQQgAUElNgIoIAEgASkDQDcDeCANQQhqIgUgDEEIaiIIKQIANwIAIA1BEGoiCSAMQRBqIhEoAgA2AgAgAiAENgLoBiACQegGaiISEMcKIBIgARCtASACKALsBiEGIAIoAugGIh5BBUcEQCAYIA8pAwA3AwAgGEEQaiAPQRBqKQMANwMAIBhBCGogD0EIaiIfKQMANwMAIBpBFWogE0EVaiIDKQAANwAAIBpBEGogE0EQaiIQKQEANwEAIBpBCGogE0EIaiIWKQEANwEAIBogEykBADcBAEEAIQogAkEAOgD6BiACQQE6AIEHIAIgAS0AngM6AIQHIAIgASkBggM3AOgGIAIgASkBigM3APAGIAIgAS8BkgM7APgGIAIgASgAlQM2APsGIAIgAS8AmQM7AP8GIAIgAS8BnAM7AIIHIBcgEhDJCCACIAE2AsgHIAIoAvQCIQQgAkGAAjsArwQgAkEBOgCQBCACQQA6ANgGIAIgBDYCoAYgAiABLQCIAzoArgQgAiABKAGCAzYAqAQgAiABLwGGAzsArAQgAiABKQCLAzcAsQQgAiABKQCTAzcAuQQgAiABKACbAzYAwQQgFEEVaiADKQAANwAAIBRBEGogECkBADcBACAUQQhqIBYpAQA3AQAgFCATKQEANwEAIBcgAkGoBGoQyQggAiABNgKABSACQQA2AvADIAJCgICAgMAANwLoAyACIAJBoAZqNgL8AyACIAJBkARqNgL4AyACIAJB2AZqNgL0AyABLQD4AkECRw0FIBIgARDbFQJAAkACQCACKALoBiIEQShqIhIQ4w0iCkUNACAKKAIAQRRHDQAgCi0ABEEERg0BC0EAIQogEhDjDSISRQ0GIBIoAgBBIUcNBiAEQZQBaiIKEJMYIAoQkxggAkGIAmogBEEAQQEQlAEgAigCjAIhCiACKAKIAg0BDAYLIAJBkAJqIARBAEEBEJQBIAIoApQCIQogAigCkAJFDQULIAJB6AZqEKMmIAohBAwGCyAGIQMMCwsgAigC7AYhAwwKCyADKAIAQRRHDQUgAy0ABEEERw0FDAYLIAEoAighBCABQSU2AiggASABKQNANwN4IAJB9AZqIgYgDEEIaikCADcCACACQfwGaiAMQRBqKAIANgIAIAIgDCkCADcC7AYgAiAENgLoBiACQegGaiIIEMcKICAgASgCfCIEIAQgIEsbIQMgKkEBcQRAIAggAUEUaiADIDKnIDJCIIinEKcFCyAGIAJB8AJqKAIANgIAIAIgAikC6AI3AuwGIAIgICAEIAQgIEkbNgL8BiACIAM2AvgGIAJBDjYC6AYgAkHoBmoQ3CghA0EADA0LIAJB6AZqEKMmCwJAAkACQCAHEOMNIgQEQCAEKAIAQQlGDQELIA8gBxCWCyACQfABaiAHELgUIAJB8OXfADYC7AYgAkE0OgDoBiACKALwASACKAL0ASACQegGahCBFSEEIAcQ4w0iA0UNASADKAIAQSRHDQEgASABKQNANwN4IAEoAiggAUElNgIoQSRHDRAgASABKAIsEIYMDAELIA0gDCkCADcCACABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAFIAgpAgA3AgAgCSARKAIANgIAIAIgBDYC6AYgAkHoBmoiEhDHCiACQQA6AOsFIAJBAToA7QUgAiACLQDYBjoA3wUgAiACLQCQBDoA4AUgAiABLQCIAzoA3gUgAiABLQCWAzoA7AUgAiABLQCeAzoA9AUgAiABKAGCAzYA2AUgAiABLwGGAzsA3AUgAiABKQCLAzcA4QUgAiABLwCTAzsA6QUgAiABKAKYAzYA7gUgAiABLwGcAzsA8gUgC0EVaiADKQAANwAAIAtBEGogECkBADcBACALQQhqIBYpAQA3AQAgCyATKQEANwEAIBcgAkHYBWoQyQggAiABNgLoBiACQagDaiABELQBIAIoAqwDIQMgAigCqAMiBEGAgICAeEcEQCACIAIoArADIhA2AsAGIAIgAzYCvAYgAiAENgK4BiASEKMmAkACQCAHEOMNIgQEQCAEKAIAQQpGDQELIA8gBxCWCyACQfgBaiAHELgUIAJByOXfADYC7AYgAkE0OgDoBiACKAL4ASACKAL8ASACQegGahCBFSEEIAcQ4w0iA0UNASADKAIAQSRHDQEgASABKQNANwN4IAEoAiggAUElNgIoQSRHDREgASABKAIsEIYMDAELIA0gDCkCADcCACABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAFIAgpAgA3AgAgCSARKAIANgIAIAIgBDYC6AYgAkHoBmoQxwpBACEEAkAgAS0A+AJBAkcNACAHEOMNIgVFDQAgBSgCAEETRw0AIAJBgAJqIAFBoODfABDzASACKAKEAiEEIAIoAoACDQELIAIgBDYCgAYgAkHoBmogASACLQDYBiACLQCQBCADIBAQxRkQqwMgAigC7AYhCCACKALoBiIWQYGAgIB4RwRAIB0gHykCADcDACACIA8pAgA3A6gDIAEtAPgCQQJHIBZBgICAgHhHcg0EIBBBBnQhBQNAIAVFDQUgAygCAEEERgRAIAMoAhAhCSADKAIMIREgAkGpAToA6AYgASARIAkgAkHoBmoQ2BkLIANBQGshAyAFQUBqIQUMAAsACyACQYAGahCRKCAIIQQLIAJBuAZqEPwmDAELIAJB6AZqEKMmIAMhBAsgChDdKAwBCyAVIAIpAugDNwIAIBVBCGogAkHwA2ooAgA2AgAgDyACQcAGaigCADYCACACIAIpArgGNwPoBiABKAJ8IQkgAigCoAYhESACLQCQBCEFIAItANgGIRBByABB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EUkbIS9BASErQgAhZ0IAIWkMBQsgESACKALMCiIDIAMgEUsbIS4gESADIAMgEUkbIS8gAikD0AohZSACKQPICiFmIAIoAsQKIQ0gAkGAA2ogBSkCADcDACACQfYCaiBALQAAOgAAIAIgPykCADcD+AIgAiA+LwAAOwH0AiACKALACiEHIAIoArgDIQMgAi0AzAMhBSACKQP4BhD5GkIAIWlBACErQgAhZwwJCyARIAEoApwDIgMgAyARSxshLiARIAMgAyARSRshL0EBIStCAiFpQgAhZyACKQOIByFlIAIpA4AHIWYgAigC/AYhDSACKAL4BiEHIAwhAyAQIQUMAwsgAikD+AYQ+RoLQgILIWcgDCEDIBAhBSAOIQ0gayFmIGwhZQsgAikDwAoQ+RogZ0ICUQ0MDAQLIAIpA4gHIWUgAikDgAchZiACKAL8BiENIAIoAvgGIQcgAikDwAoQ+RpBAQwBCyACKQPQCiFlIAIpA8gKIWYgAigCxAohDSACKALACiEHQQALIStCACFnC0ICIWkCQCAIEMoNIgVFDQAgBSgCAEECRw0AIAUtAAgNACAFLQAJQQFHDQAgICALKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAgQQhqIE8pAgA3AgAgIEEQaiBQKAIANgIAIAIgAzYCoAcgAkGgB2oiAxDGCiADIAEQsAQgAigCqAchAyACKQOgByJpQgJSBEAgAkHgBmogTkEIaikCADcDACACQbYDaiBUQQJqLQAAOgAAIAIgTikCADcD2AYgAiBULwAAOwG0AyACLQC8ByEtDAELIAetIA2tQiCGhCFmIGdQBEAgZhD5GiADIQcMCgsgZiBlEIwrIAMhBwwJCyACQYADaiACQeAGaikDADcDACACQfYCaiACQbYDai0AADoAACACIAIpA9gGNwP4AiACIAIvAbQDOwH0AiARIAEoApwDIgUgBSARSxshLiARIAUgBSARSRshLyAtIQULIFMgAikD+AI3AgAgUiACLwH0AjsAACBTQQhqIAJBgANqKQMANwIAIFJBAmogAkH2AmotAAA6AAAgAiADNgLIByACIGk3A8AHIAIgZTcDuAcgAiBmNwOwByACIA02AqwHIAIgBToA3AcgAiArOgDoByACIC82AuQHIAIgLjYC4AcgUSACKADtAjYAACBRQQNqIAJB8AJqKAAANgAAIAIgZzcDoAcgAiAHNgKoByACQeACaiACQaAHahD/GSAIEMoNIgwEQCAMKAIAQQ5GDQILAkAgCBDKDSIMRQ0AIAwoAgBBEEcNACAgIAspAgA3AgAgASgCyAIhDCABQSU2AsgCIAEgASkD4AI3A5gDICBBCGogTykCADcCACAgQRBqIFAoAgA2AgAgAiAMNgKgByACQaAHahDGCiADIQwgBSEQIA0hDiBmIWsgZSFsDAELCyACQagHaiAIEJEQIAJBEGogCBCFFCACQajF4AA2AqQHIAJBNDoAoAcgAigCECACKAIUIAJBoAdqEIEVIQcgCBDKDSIDRQ0GIAMoAgBBJEcNBiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwGCyAIEMoNIgNFDQMgAygCAEEORw0DIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQawHaiALQQhqKQIANwIAIAJBtAdqIAtBEGooAgA2AgAgAiALKQIANwKkByACIAM2AqAHIAJBoAdqEMYKAkAgCBDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEDRg0CCyACKALoAkHQAGwhBUEAIREgAigC5AIhBwNAIAUgEUYEQEEAIRECQCAIEMoNIgNFDQACQAJAIAMoAgBBDmsOAgcBAAsgCBCIIRoMAQsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJBrAdqIAtBCGopAgA3AgAgAkG0B2ogC0EQaigCADYCACACIAspAgA3AqQHIAIgAzYCoAcgAkGgB2oQxgoLDAQFAkACQAJAAkBCAiAHIBFqIgMpAwAiZUICfSJmIGZCAlobp0EBaw4CAQACCyBlUARAIANBCGoiDBCnHEUNAyADQRRqKAIAIRAgA0EQaigCACEDIAwpAwAQ/BohZSACQewAOgCgByACIGU3A6gHIAEgAyAQIAJBoAdqEMYZDAMLIANBFGooAgAhDCADQRBqKAIAIQMgAkHwADoAoAcgASADIAwgAkGgB2oQxhkMAgsgA0EUaigCACEMIANBEGooAgAhECADQQhqKQMAEPwaIWUgAkHsADoAoAcgAiBlNwOoByABIBAgDCACQaAHahDGGQwBCyADQRBqKQMAEPwaIWUgA0EsaigCACEMIANBKGooAgAhAyACQewAOgCgByACIGU3A6gHIAEgAyAMIAJBoAdqEMYZCyARQdAAaiERDAELAAsAC0Hl7OAAQShB8JngABD0FwALIAJBoAdqIAEQ6AEgAigCpAchByACKAKgByIRRQ0DCyAGIAIpAuACNwIEIAYgJzoAICAGIBE2AhggBkECNgIAIAYgB0EAIBEbNgIcIAZBDGogAkHoAmooAgA2AgAgBiAPIAEoApwDIgMgAyAPSRs2AhQgBiAPIAMgAyAPSxs2AhAMAwsgAkGoB2ogCBCRECACQQhqIAgQhRQgAkGw4d8ANgKkByACQTQ6AKAHIAIoAgggAigCDCACQaAHahCBFSEHIAgQyg0iA0UNASADKAIAQSRHDQEgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMAgtB5ezgAEEoQYCa4AAQ9BcACyACQagHaiAIEJEQIAIgCBCFFCACQdjh3wA2AqQHIAJBNDoAoAcgAigCACACKAIEIAJBoAdqEIEVIQcgCBDKDSIDRQ0AIAMoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD/CwwBC0Hl7OAAQShB4JngABD0FwALIAZBCTYCACAGIAc2AgQgAigC5AIiAyACKALoAhD3ECACKALgAiADEJYqCyA9RSAcQQJGcg0FIBKtICKtQiCGhBD5GgwFCyABKAKAAiEDQQAhJCACQQA6AKAHIAMgAyACQaAHahCBFSEDIAZBCTYCACAGIAM2AgQMBAsgBkEJNgIAIAYgAzYCBEEAISRBAAwECyAGIAM2AgwgBiARNgIIIAZBATYCACAGIAIpA7gCNwMQIAZBGGogAkHAAmopAwA3AwAgBkEgaiACQcgCaikDADcDACAGQShqIAJB0AJqKQMANwMAIAYgDyABKAKcAyIDIAMgD0kbNgI0IAYgDyADIAMgD0sbNgIwIBetIBqtQiCGhCAYEL4jIA1FDQYMBQsgBkEJNgIAIAYgAzYCBCACQbgDahDuJgtBACEkC0EBCyAkIBhBAkZyRQRAIBetIBqtQiCGhBD5GgsNAQwCCyABKAKAAiEDIAJBADoAoAcgAyADIAJBoAdqEIEVIQMgBkEJNgIAIAYgAzYCBAsgGRDuJgsgAkHgCmokACAEKALEBSEMIAQoAsAFIg5BCUcEQCAEQdYCaiIDICpBDmopAQA3AQAgBEHQAmoiBSAqQQhqKQEANwMAIARBiAJqIAUpAwA3AwAgBEGOAmogAykBADcBACAEICopAQA3A4ACIAQtAOEFITYgBC0A4AUhNyAEKALcBSE4IAQoAtgFITkgBCgC1AUhOiAEKALQBSEFIAQoAswFIQMgBCgCyAUhOwwdC0EKIQ4gFCEFICwhAwwcCyAEQQA6ALsCIARBAToAxwIgBCABLQDFAjoAxgIgBCABKQGqAjcAqwIgBCABKQGyAjcAswIgBCABKQC7AjcAvAIgBCABLwDDAjsAxAIgM0EVaiAjQRVqKQAANwAAIDNBEGogI0EQaikBADcBACAzQQhqICNBCGopAQA3AQAgMyAjKQEANwEAIAkgBEGrAmoQ0gggBCABNgLgBCAEQcAFaiABIAVBAUEBIARBnAJqECwCfyAEKALABSIDQRNHBEAgBEGIAmogPEEIaikBADcDACAEQY4CaiA8QQ5qKQEANwEAIAQgPCkBADcDgAJBCSEOIAQtANkFITYgBC0A2AUhNyAEKALUBSE4IAQoAtAFITkgBCgCzAUhOiAEKALIBSEFIAMhOyAEKALEBQwBC0EKIQ4gBCgCxAUhDCAUIQUgLAshAyAEQeAEahCHJQwbCyAEQcgFaiAJEJEQIARBEGogCRCFFCAEQbDh3wA2AsQFIARBNDoAwAUgASAEKAIQIAQoAhQgBEHABWoQxhkMIAtB5ezgAEEoQYCb4AAQ9BcAC0Hl7OAAQShBsJvgABD0FwALIBsgDCkCADcCACAfIAcvAAA7AAAgLSAMQQhqKQIANwIAIAIgB0ECai0AADoAACAEIAo2AsgHIAQgEDoA3AdBASEHCyABLQCgAkECRw0AIAkQyg0iA0UNACADKAIAQRVHDQAgAy0ABEUNAQsgBEHoAGogBEHIB2oQlAwgBCgCaCIDIAQoAmwiCkGw0eAAQQYQ6x8NAUEAIRAgAyAKQbm44ABBBRDrHw0BDAILIDQgBEHYB2opAwA3AwAgISAEQdAHaikDADcDACAEIAQpA8gHNwPgBCAEQfAAaiABIBcgBEHgBGpBACAHELABQQpBBiAEKAJwQQFxGyEOIAQoAnQhCgwICyAEQeAAaiAEQcgHahCUDAJAAkAgBCgCYCIDIAQoAmQiCkGw0eAAQQYQ6x8Ef0EBBSADIApBubjgAEEFEOsfRQ0BQQILIQMCQCAJEMoNIgpFDQAgCigCAEEURw0AIAotAARBDUYNAgsgCRDKDSIKBEAgCigCAEENRg0CCyAEQb0EaiAiKQAANwAAIARBuARqIA4pAAA3AwAgBEGwBGogDSkAADcDACAEICMpAAA3A6gEAkACQCAJEMoNIgpFDQAgCigCAEECRw0AIARBqARqIAotAAggCkEJai0AABDfCQ0AIAkQyg0iCkUNASAKKAIAQQJHDQEgCi0ACA0BIAotAAlBA0cNAQtBACEQIAkQrRMiCkUNAyAKKAIAQQJHDQMgCi0ACA0DIAotAAlBA0cNAwsgBEHgBGogARDZBiAEKALgBCEKIAQtAPQEIgxBAkYNAyAEQdgEaiIQIBIpAgA3AwAgBEHOBGoiDSAFLQAAOgAAIAQgFikCADcD0AQgBCAmLwAAOwHMBCAEKQPIBxD5GiAbIAQpA9AENwIAIC0gECkDADcCACAfIAQvAcwEOwAAIAIgDS0AADoAACAEIAo2AsgHIAQgDDoA3AcgAyEQDAILQeXs4ABBKEHAm+AAEPQXAAsgAwwECwJAAkACQCAJEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQNGDQELIAkQyg0iA0UNASADKAIAQRBHDQEgFiAVKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyASIBgpAgA3AgAgHCAaKAIANgIAIAQgAzYC4AQgBEHgBGoQxgoLIDQgBCkDyAc3AwAgNEEIaiAEQdAHaikDACJlNwMAIDRBEGogBEHYB2opAwA3AwAgBEIDNwPgBCAEIGU3A+gEIARBrANqIARB4ARqEP4ZDAULICEgCRCRECAEQdgAaiAJEIUUIARBqMXgADYC5AQgBEE0OgDgBCAEKAJYIAQoAlwgBEHgBGoQgRUhCiAJEMoNIgNFDQAgAygCAEEkRw0AIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEP8LCyAEKQPIBxD5GgwEC0Hl7OAAQShB0JvgABD0FwALQQEhB0EACyEQIAQpA8gHEPkaCyAJEMMgIQMCQAJAAkACQCAJEMoNIgVFDQAgBSgCAEEURw0AIAUtAARBDUcNACAWIBUpAgA3AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIBIgGCkCADcCACAcIBooAgA2AgAgBCAFNgLgBCAEQeAEaiIMEMYKIAkQyg0iBUUNASAFKAIAQQJHDQEgBS0ACA0BIAUtAAlBAUcNASAWIBUpAgA3AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIBIgGCkCADcCACAcIBooAgA2AgAgBCAFNgLgBCAMEMYKIARByAdqIAEQ2QYgBCgCyAchCiAELQDcByIFQQJGDQQgTSAbKQIANwIAIEwgHy8AADsAACBNQQhqIBtBCGopAgA3AgAgTEECaiAfQQJqLQAAOgAAIAQgBToAhAUgBCAKNgLwBCAEQgQ3A+AEIAQgAyABKAKcAyIFIAMgBUsbNgLsBCAEIAMgBSADIAVJGzYC6AQgBEGsA2ogDBD+GQwDCyAJEMoNIgNFDQIgAygCAEENRw0CIBYgFSkCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgEiAYKQIANwIAIBwgGigCADYCACAEIAM2AuAEIARB4ARqEMYKAkACQAJAA0AgEyEDAkACQAJAAn8CfgJAAkACQAJ+AkACQAJAAkACQAJAAkACQAJAAkAgCRDKDSIFBEAgBEEANgLIByAEIAU2AswHIARByAdqEMIjIAkQyg0iBQRAIAUoAgBBDkYNFgsgCRDDICEOIARByAdqIiIgARCwBCAEKALQByEFIAQpA8gHImZCAlIEQCAEKQPgByFlIAQoAtwHIQwgBCgC2AchDSAEKALUByEKAkAgZlAEQCAEIGU3A7AGIAQgDDYCrAYgBCANNgKoBiAEIAo2AqQGIAQgBTYCoAZBACETIAEtAKACQQJHDRAgBEGgBmpBhrfgAEEEENIbRQ0QIAkQyg0iBUUNECAFKAIAQQJHDRAgBEHQBmoiBSABENEEICIgBRCVHyAEKALIByEFIAQtANwHIgpBAkYNASBLIBspAgA3AgAgSiAfLwAAOwAAIEtBCGogG0EIaiITKQIANwIAIEpBAmogH0ECai0AADoAACAEIAo6AMwGIAQgBTYCuAYgBEG4BmpBnbXgAEECENIbRQRAIAdFDRAgBCgCrAYhBSAEKAKoBiETIARBpgE6AMgHIAEgEyAFICIQxhkMEAsCQAJAAkAgCRDKDSIFBEAgBSgCAEECRg0BCyAHDQEMEAsgBEHIB2ogAUEAEJ4EIAQoAsgHIR4gBC0A3AciCkECRg0BIEkgGykCADcCACBJQQhqIBMpAgA3AgAgSCAfKQAANwAAIEhBB2ogH0EHaiIMKAAANgAAIARB2AZqIgUgBEHwBmopAwA3AwAgBCAKOgD8BiAEQeAGaiAEQfgGaikDADcDACAEIB42AugGIAQgBCkD6AY3A9AGIGIQ+SYgBEHQBmpBnbXgAEECENIbRQRAIARBuAVqIAUoAgA2AgAgBCAEKQPQBjcDsAUgDiAEKAKsBiIlIA4gJUkbISggDiAlIA4gJUsbISkgBCgCqAYhMCAEKAKkBiExIAQpA+AGIWggBCgC3AYhHQwPCwJAIAkQyg0iCgRAIAooAgBBAkYNAQsgBEG4BWogBSgCADYCACAEIAQpA9AGNwOwBSAOIAQoAtwGIh0gDiAdSRshKCAOIB0gDiAdSxshKSAEKAKsBiElIAQoAqgGITAgBCgCpAYhMSAEKQPgBiFoDA8LIARByAdqIgUgAUEAEJ4EIAQoAsgHIR4gBC0A3AciCkECRg0GIEcgGykCADcCACBGIB8pAAA3AAAgR0EIaiATKQIANwIAIEZBB2ogDCgAADYAACAEIAo6AJwHIAQgHjYCiAcgBCkDmAchaCAEKAKUByEdIGEQ+SYgB0UNDSAEKAKsBiEDIAQoAqgGIRMgBEGmAToAyAcgASATIAMgBRDGGQwNCyAEKAKsBiEDIAQoAqgGIQUgBEGmAToAyAcgASAFIAMgBEHIB2oQxhkMDgsgBCkDuAYQ+RoMEQsgCRDKDSITDQQMBQsgBSEeQgUMEAsgBSEeDAYLIAEoAoACIQUgBEEAOgDgBCAEIAUgBSAEQeAEahCBFTYCzAcgBEEBNgLIByAEQcgHahDCIwwUCyAEKQPQBhD5GiAEKQO4BhD5GgwMCyATKAIAQQJHDQAgEy0ACA0AIBMtAAlBAUcNACAbIBUpAgA3AgAgASgCyAIhEyABQSU2AsgCIAEgASkD4AI3A5gDIBtBCGoiIiAYKQIANwIAIBtBEGogGigCADYCACAEIBM2AsgHIARByAdqIhMQxgogEyABQQAQngQgBCgCyAchHiAELQDcByITQQJGDQEgFiAbKQIANwIAIBIgIikCADcCACAmIB8pAAA3AAAgJkEHaiAfQQdqKAAANgAAIARBuAVqICEoAgA2AgAgBCAeNgLgBCAEIBM6APQEIAQgBCkD4AQ3A7AFIAQpA/AEIWggBCgC7AQhHSBjEPkmIA4gHSAOIB1JGyEoIA4gHSAOIB1LGyEpQQAhE0IBIWYgZSFqIAwhJSANITAgCiExIAUhHgwQCyAEIAo2AtQHIAQgBTYC0AcgBEHvADoAyAcgDSAMIARByAdqEIEVIR4gCRDKDSIFRQ0BIAUoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwBCyAFrSAKrUIghoQQ+RoLIGUQ7SYLIAMhEwwKC0Hl7OAAQShB8JzgABD0FwALIARBuAVqIARBkAdqKAIANgIAIAQgBCkDiAc3A7AFIAQpA8gGIWogBCgCxAYhJSAEKALABiEwIAQoArwGITEgBCgCuAYhHiAEKAKsBiEDIAQpA9AGEPkaIA4gAyADIA5LGyEoIA4gAyADIA5JGyEpQgAMAgsgBCgCoAYhHiAEKQOwBiFqIAQpA7gGEPkaQQAhEwwICyAEQbgFaiAEQcAGaigCADYCACAEIAQpA7gGNwOwBSAOIAEoApwDIgMgAyAOSxshKCAOIAMgAyAOSRshKSAEKQPIBiFoIAQoAsQGIR1CAgshZkEBDAQLIARB2AdqIgUgBEHIBmopAwA3AwAgBEHQB2oiEyAEQcAGaikDADcDACAEIAQpA7gGNwPIByAEKQOgBhD5GiAEQbAGaiAFKQMANwMAIARBqAZqIBMpAwA3AwAgBCAEKQPIBzcDoAZBASETCwJAAkAgCRDKDSIFRQ0AIAUoAgBBAkcNACAFLQAIDQAgBS0ACUEBRg0BCyAEQbgFaiAEQagGaigCADYCACAEIAQpA6AGNwOwBSAOIAEoApwDIgMgAyAOSxshKCAOIAMgAyAOSRshKSAEKAKsBiEdIAQpA7AGIWhCAiFmDAYLIBsgFSkCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgG0EIaiIKIBgpAgA3AgAgG0EQaiAaKAIANgIAIAQgBTYCyAcgBEHIB2oiBRDGCiAFIAFBABCeBCAEKALIByEeIAQtANwHIgVBAkYNACBFIBspAgA3AgAgRUEIaiAKKQIANwIAIEQgHykAADcAACBEQQdqIB9BB2ooAAA2AAAgBEG4BWogBEGwB2ooAgA2AgAgBCAeNgKoByAEIAU6ALwHIAQgBCkDqAc3A7AFIAQpA7gHIWggBCgCtAchHSBgEPkmIA4gHSAOIB1JGyEoIA4gHSAOIB1LGyEpIAQpA7AGIWogBCgCrAYhJSAEKAKoBiEwIAQoAqQGITEgBCgCoAYhHgwEC0IFCyFmIAMLIRMgBCkDoAYQ+RogZkIFUg0CC0EKIQ4gHiEKDAoLQgAhZgsgQyAEKQOwBTcDACBCIAQoAKkFNgAAIENBCGogBEG4BWooAgA2AgAgQkEDaiAEQawFaigAADYAACAEIGo3A9gFIAQgJTYC1AUgBCAwNgLQBSAEIDE2AswFIAQgEzoAgAYgBCApNgL8BSAEICg2AvgFIAQgaDcD8AUgBCAdNgLsBSAEIGY3A8AFIAQgHjYCyAUgBEGsA2ogBEHABWoQ/hkCQCAJEMoNIgNFDQAgAygCAEEORw0AIBMhAwwCCwJAIAkQyg0iA0UNACADKAIAQRBHDQAgFiAVKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyASIBgpAgA3AgAgHCAaKAIANgIAIAQgAzYC4AQgBEHgBGoQxgoMAQsLICEgCRCRECAEQcgAaiAJEIUUIARBqMXgADYC5AQgBEE0OgDgBCAEKAJIIAQoAkwgBEHgBGoQgRUhCkEKIQ4gCRDKDSIDRQ0HIAMoAgBBJEcNByABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwHCwJAIAkQyg0iBUUNACAFKAIAQQ5HDQAgFiAVKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyASIBgpAgA3AgAgHCAaKAIANgIAIAQgBTYC4AQgBEHgBGoQxgogAyETDAULICEgCRCRECAEQUBrIAkQhRQgBEGw4d8ANgLkBCAEQTQ6AOAEIAQoAkAgBCgCRCAEQeAEahCBFSEKQQohDiAJEMoNIgVFDQMgBSgCAEEkRw0DIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEP8LDAMLQeXs4ABBKEHgm+AAEPQXAAtB5ezgAEEoQfCb4AAQ9BcACyAhIAkQkRAgBEHQAGogCRCFFCAEQYCZ4AA2AuQEIARBNDoA4AQgBCgCUCAEKAJUIARB4ARqEIEVIQpBCiEOIAkQyg0iA0UNAyADKAIAQSRHDQMgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMBAtB5ezgAEEoQYCc4AAQ9BcACyADIRMMAgsCQAJAAkACQAJAAkACQAJAIAkQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBA0cNACAWIBUpAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIBIgGCkCADcCACAcIBooAgA2AgAgBCADNgLgBCAEQeAEaiIFEMYKIAkQwyAhAyAJEMoNIgoNASABKAKAAiEDIARBADoA4AQgAyADIAUQgRUhCgwICyAhIAkQkRAgBEEgaiAJEIUUIARBqJngADYC5AQgBEE0OgDgBCAEKAIgIAQoAiQgBEHgBGoQgRUhCkEKIQ4gCRDKDSIDRQ0IIAMoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwICyAKKAIAIgVBG0cEQCAFQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEoAswCIQoMCQtB5ezgAEEoQaCc4AAQ9BcACyBfIAkQkRAgBEEoaiAJEIUUIARBEDYC6AQgBEHY8N8ANgLkBCAEQTA6AOAEIAQoAiggBCgCLCAEQeAEahCBFSEKQQohDiAJEMoNIgNFDQggAygCAEEkRw0IIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEP8LDAgLIAEgASgC5AIiCjYCnAMgASABKALgAjYCmAMgASgCyAIgAUElNgLIAkEbRw0BIAEpA9gCIWUgASkD0AIhZkEYQQgQqyAiBSBlNwMQIAUgZjcDACAFIAMgCiADIApLGzYCDCAFIAMgCiADIApJGzYCCEEAIQ1BACEMIAkQyg0iCkUEQCABKAKAAiEDIARBADoA4ARBASEMIAMgAyAEQeAEahCBFSEKCyAEIAw2AuAEIAQgCjYC5AQgBEHgBGoQwiMgAS0AoAJBAkcEQCABLQClAkEBcUUNBQsgCRCIIQ0EAkAgCRDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEhRw0ADAQLIAkQyg0iA0UNBCADKAIAQQJHDQQgAy0ACEECRw0EIAMtAAlBFUcNBAwDC0Hl7OAAQShBkJzgABD0FwALQeXs4ABBKEHQnOAAEPQXAAtB5ezgAEEoQeCc4AAQ9BcACyAWIBUpAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIBIgGCkCADcCACAcIBooAgA2AgAgBCADNgLgBCAEQeAEahDGCiAEQThqIAEQLSAEKAI8IQogBCgCOA0BAkACQCAKKAIAQQ5GBEAgBEGYBmoiAyAKQRRqKAIANgIAIARBkAZqIgwgCkEMaikCADcDACAEIAopAgQ3A4gGQRRBBBCrICINQRBqIAMoAgA2AgAgDUEIaiAMKQMANwIAIA0gBCkDiAY3AgAgCigCAEEORw0BDAILQeXs4ABBKEGwnOAAEPQXAAsgChDdBAsgChCNKwsCQAJAIAkQyg0iA0UNAAJAAkAgAygCAEEOaw4CAgABCyAWIBUpAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIBIgGCkCADcCACAcIBooAgA2AgAgBCADNgLgBCAEQeAEahDGCgwBCyAJEIghRQ0BCyAXIAEoApwDIgMgAyAXSxshQSAXIAMgAyAXSRshWCAEKAK0AyEDIAQoAqwDIQpBACEOIBAhWSAHIVogDSFbIAQoArADDA0LICEgCRCRECAEQTBqIAkQhRQgBEGQxOAANgLkBCAEQTQ6AOAEIAQoAjAgBCgCNCAEQeAEahCBFSEKAkAgCRDKDSIDRQ0AIAMoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD/CwwBC0Hl7OAAQShBwJzgABD0FwALIA0QgSMLIAUQ2SELQQohDgsgBCgCsAMiAyAEKAK0AxD8DyAEKAKsAyADEJUqDAQLIBYgFSkCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgEiAYKQIANwIAIBwgGigCADYCACAEIAM2AuAEIARB4ARqEMYKIARBgAFqIAEQLSAEKAKEASEKIAQoAoABDQECQAJAIAooAgBBDkYEQCAEQagDaiIFIApBFGooAgA2AgAgBEGgA2oiDCAKQQxqKQIANwMAIAQgCikCBDcDmANBFEEEEKsgIgNBEGogBSgCADYCACADQQhqIAwpAwA3AgAgAyAEKQOYAzcCACAKKAIAQQ5HDQEMAgtB5ezgAEEoQZCb4AAQ9BcACyAKEN0ECyAKEI0rCwJAAkAgCRDKDSIFRQ0AAkACQCAFKAIAQQ5rDgICAAELIBYgFSkCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgEiAYKQIANwIAIBwgGigCADYCACAEIAU2AuAEIARB4ARqEMYKDAELIAkQiCFFDQELIBcgASgCnAMiBSAFIBdLGyFBIBcgBSAFIBdJGyFYQQghXEEAIVlBACFaQQAhXUEAIQogAyFbIBAhXkEADAILICEgCRCRECAEQfgAaiAJEIUUIARBkMTgADYC5AQgBEE0OgDgBCAEKAJ4IAQoAnwgBEHgBGoQgRUhCgJAIAkQyg0iBUUNACAFKAIAQSRHDQAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMAQtB5ezgAEEoQaCb4AAQ9BcACyADEIEjCyAQENkhQQoLIQ4gBEHIB2oQwiMLIF0hAyBeIQUgDkEKRw0FCyAEQZwCahDuJkEKIQ4gFCEFICwhAyAKIQwMBQsgFyABKAKcAyIUIBQgF0sbIQUgFyAUIBQgF0kbDAELIBcgASgCnAMiFCAUIBdLGyEFIBcgFCAUIBdJGwshQUEJIQ5BEgshXCAFIV4gAyFdCyAEQdYCaiIUIARB8gJqKQEANwEAIARB0AJqIgwgBEHsAmopAQA3AwAgBEGIAmogDCkDADcDACAEQY4CaiAUKQEANwEAIAQgBCkB5AI3A4ACIARBnAJqEO4mIFkhNiBaITcgWyE4IFghOSBBITogXCE7IAohDAsgDkEKRg0AIARB9gFqIhAgBEGOAmopAQA3AQAgBEHwAWoiLCAEQYgCaikDADcDACAEIAQpA4ACNwPoASAEKALMAQ0BIAQoAtgBIgcgBCgC0AFJBEAgBCgC1AEgB0E4bGoiFCA2OgAhIBQgNzoAICAUIDg2AhwgFCA5NgIYIBQgOjYCFCAUIAU2AhAgFCADNgIMIBQgOzYCCCAUIAw2AgQgFCAONgIAIBQgBCkD6AE3ASIgFEEqaiAsKQMANwEAIBRBMGogECkBADcBACAEIAdBAWo2AtgBIARBADYCzAEMAwsgBEEANgLMASAqIAQpA+gBNwEAICpBCGogLCkDADcBACAqQQ5qIBApAQA3AQAgBCA2OgDhBSAEIDc6AOAFIAQgODYC3AUgBCA5NgLYBSAEIDo2AtQFIAQgBTYC0AUgBCADNgLMBSAEIDs2AsgFIAQgDDYCxAUgBCAONgLABSAEQcwBaiAEQcAFahDEBAwCCyBkEIonIAQoAuABIgEgBCgC5AEQlh8gBCgC3AEgARDiKQwFC0GM3t8AEO8UAAsgBSEUIAMhLAwACwALIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEP8LDAMLQeXs4ABBKEG86d8AEPQXAAsgCRDKDQRAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAEQcwFaiAVQQhqKQIANwIAIARB1AVqIBVBEGooAgA2AgAgBCAVKQIANwLEBSAEIAM2AsAFIARBwAVqEMYKCyAJIARBqAFqENIIIARBmAFqIARBzAFqEIoGIAQoApwBIQwgBCgCmAEiA0GAgICAeEYNACAAIAQoAqABNgIIIAAgDDYCBCAAIAM2AgAgACAyIAEoApwDIgEgASAySRs2AhAgACAyIAEgASAySxs2AgwMAgsgAEGAgICAeDYCACAAIAw2AgQMAQsgAEGAgICAeDYCACAAIAM2AgQLIARB8AdqJAALoFYCI38DfiMAQeADayIDJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCACKAIAQQFrDgcAFgECAwQHBQsgAyACKAIEIgUgAigCCGo2AvQCIAMgBTYC8AIgAyABNgL4AgJAIAEtAAtBAXFFBEAgA0HwAGogA0HwAmoQhBgMAQsgA0HwAGogA0HwAmoQhRgLIAMoAnAiBUErRg0EIAMoAnghAiADKAJ0IQQgBUEqRw0UIANB1AFqIQgDQAJAIAEtAAtBAXFFBEAgA0HIAWogA0HwAmoQhBgMAQsgA0HIAWogA0HwAmoQhRgLIAMoAsgBIgZBK0YEQCAAIAI2AgggACAENgIEIABBKjYCAAwcCyADKALQASEFIAMoAswBIQcgBkEqRw0UIANBgANqIAEgAiAHENkIIAMoAoADIgJBKkYEQCAFIQIMAQsLIABBBGogA0GAA2pBBHJBPBD7BhogACACNgIADBoLIAIoAgRoQQJ0QfDZ4wBqKAIAIQIgAS0AC0EBcQRAIAJoQQJ0Qbja4wBqKAIAIQILIANB0ABqIAFBIGpBgLjDABC/HSADKAJUIQEgAygCUCEFIAMgAjYC0AEgA0IDNwLIASADQYADaiAFIANByAFqEOgIIAEgASgCAEEBajYCACAAQQhqIQEgAygChAMhAgJAIAMoAoADIgVBKkYEQCABIAI2AgAMAQsgASADQYgDakE4EPsGGgsgACAFNgIAIAAgAjYCBAwZCwJAIAIoAhAiBCACKAIEIgVFckUgAigCCCIGQQFGcUUEQCAFDQEgACABIAIoAgwgAi0AFCAEEN0BDBoLIAIoAgwhBAJAIAItABRFBEAgA0GAA2ogARD4EgwBCyADQYADaiABEPkSCyADKAKEAyECIAMoAoADIgVBKkcNESADQYADaiIFIAEgBBAwIAMoAogDIQYgAygChAMhByADKAKAAyIEQSpHDRAgBSABELEXIAMoAoQDIQQgAygCgAMiCEEqRw0PIAUgASACIAcQ2QggAygCgAMiB0EqRw0OIAUgASACIAQQ2QggAygCgAMiB0EqRw0NIAUgASAGIAQQ2QggAygCgAMiAUEqRgRAIAAgBDYCCCAAIAI2AgQgAEEqNgIADBoLIABBBGogA0GAA2pBBHJBPBD7BhogACABNgIADBkLIAIoAgwhCCAEIAZHBEAgAi0AFCADQYADaiABIAggBBC3BiADKAKIAyEFIAMoAoQDIQkgAygCgAMiB0EqRwRAIABBDGogA0GMA2pBNBD7BhogACAFNgIIIAAgCTYCBCAAIAc2AgAMGgsgA0GAA2ogARCxFyADKAKEAyEHIAMoAoADIgpBKkcNDCAGIARrIgRBACAEIAZNGyEGQQFxIQ8DQCAGRQRAIANBgANqIAEgBSAHENkIIAMoAoADIgFBKkYEQCAAIAc2AgggACAJNgIEIABBKjYCAAwcCyAAQQRqIANBgANqQQRyQTwQ+wYaIAAgATYCAAwbCwJAIA9FBEAgA0GAA2ogARD4EgwBCyADQYADaiABEPkSCyADKAKEAyEEIAMoAoADIgJBKkcNDCADQYADaiIKIAEgCBAwIAMoAogDIQIgAygChAMhDiADKAKAAyILQSpHDQsgCiABIAUgBBDZCCADKAKAAyIFQSpHDQogCiABIAQgDhDZCCADKAKAAyIFQSpHDQkgCiABIAQgBxDZCCADKAKAAyIFQSpGBEAgBkEBayEGIAIhBQwBCwsgAEEEaiADQYADakEEckE8EPsGGiAAIAU2AgAMGQsgACABIAggBBC3BgwYCyAAIAEgAigCCCACKAIMIAIoAhAgAigCBBDAAgwXCyADIAIoAggiBTYC8AIgAyAFIAIoAgxBHGxqNgL0AiADIAE2AvgCAkAgAS0AC0EBcUUEQCADQfAAaiADQfACahDGGwwBCyADQfAAaiADQfACahDoGgsgAygCcCIFQStHDQELIAAgARDdEQwVCyADKAJ4IQIgAygCdCEEIAVBKkcNAiADQdQBaiEIA0ACQCABLQALQQFxRQRAIANByAFqIANB8AJqEMYbDAELIANByAFqIANB8AJqEOgaCyADKALIASIGQStGBEAgACACNgIIIAAgBDYCBCAAQSo2AgAMFgsgAygC0AEhBSADKALMASEHIAZBKkcNAiADQYADaiABIAIgBxDZCCADKAKAAyICQSpGBEAgBSECDAELCyAAQQRqIANBgANqQQRyQTwQ+wYaIAAgAjYCAAwUCyACKAIIIgUgAigCDCIHQRxsaiEMAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAdFDQAgBSECIAchBgNAIAQgAigCAEEBRmohBCACQRxqIQIgBkEBayIGDQALIARBAkkNACAEIAdPDQELIAMgATYC+AIgAyAMNgL0AiADIAU2AvACIANBgANqIANB8AJqEIUcIAMoAoADIgJBK0YEQCAAIAEQxAwMHwsgAygCiAMhBiADKAKEAyEHIAJBKkcNCiADQYADaiADQfACahCFHCADKAKAAyICQStGBEAgACAGNgIIIAAgBzYCBCAAQSo2AgAMHwsgAygCiAMhCCADKAKEAyEKIAJBKkcNCSADQYADaiICIAEQ+RIgAygChAMhBSADKAKAAyIEQSpHDQggAiABELEXIAMoAoQDIQQgAygCgAMiCUEqRw0HIAIgASAFIAcQ2QggAygCgAMiB0EqRw0GIAIgASAGIAQQ2QggAygCgAMiBkEqRw0FIAIgASAFIAoQ2QggAygCgAMiBkEqRw0EIAIgASAIIAQQ2QggAygCgAMiAkEqRw0DIANB+ABqIANB+AJqKAIANgIAIAMgAykC8AI3A3AgA0HUAWohCANAIANByAFqIANB8ABq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BSADQegCaiADQdgCai0AADoAACADIAMpANACIiY3A+ACQQIhAgJAAkACQAJAAkACQCAmp0H/AXFBAWsOAwIAAQMLQQMhAgwBC0EEIQILIANBKGogAkEBdiIFIBogBUGA9eAAELMeIAMoAiwhByADKAIoIQkgA0EgaiAFIBogAkEBdGogAkEGcSIIayAFQZD14AAQsx4gAygCICAIakECayEEQQAhAiADKAIkIQogByEGIAVBAWsiDiEFA0AgAiAIRg0BIAZFDQIgCiAOSwRAIAIgCWoiCy8AACENIAsgBC8AADsAACAEIA07AAAgBkEBayEGIARBAmshBCAFQQFrIQUgAkECaiECDAELCyAFIApBsPXgABCsEAALIANBGGogA0HgAmoQtyAgASkCrAEhJiADKAIcIQIgAygCGCEFIAFCgICAgMAANwKsASABQQA2ArQBIANBADYCyAMgAyAmNwPAAyADQYADaiIEQQEgBSACEMcNIANBwANqIAQQ6hUCQAJAA0AgAygCyAMiAkUNBCADIAJBAWsiAjYCyAMgA0H4AGogAygCxAMgAkEEdGoiAkEIaikCACImNwMAIAMgAikCADcDcCADLQB8IgJBBEsNAiACRQ0BIAJBAWshEiADLQBxIQUgAy0AcCEKIBAgJqciExD5HSICKAIEIQdBACELIAIoAggiBiECAkADQCACIAtNDQEgBiACIAtqQQF2IgRLBEAgBEEBaiALIAcgBEEDdGotAAUgCkH/AXFJIggbIQsgAiAEIAgbIQIMAQsLIAQgBkHsr8MAEKwQAAsgECATEPkdKAIIIAtGBEAgECADQcADaiAUIBIQ4RghAiAWKAIAIBUoAgAgEyAKIAUgAhDEEgwBCwNAIBAgExD5HSICKAIEIAIoAgggC0G8rsMAELofIgctAAUhCAJAIAVB/wFxIgYgBy0ABCIETwRAIApB/wFxIgIgCE0NAQsgECADQcADaiAUIBIQ4RghAiAWKAIAIBUoAgAgCyATIAogBSACEOwMDAELIAcoAgAhDgJAAkACQAJ/AkACQAJAAkACQAJAAkACfwJAIAIgBEcNACAGIAhHBEAgBiAITQ0BIAhBAWpB/wFxQQh0IAVBEHRyQQFyIQ0gCEEIdCACcgwCCyAFQQh0IAJyIQJBAiEEQQAhBUEBIQZBASERQQAhB0EAIQlBACENDAwLAkAgBiAIRiIHIAIgBE8iCUVxRQRAIAYgCEkiFyINIAIgBEZxDQEgAiAETSIRQQEgBxtFDQMgBiAISyIHIAlFcQ0EIBFBASANG0UNBSAEIAZPIglFIAIgCEZxDQYgAiAISSINIAQgBkZxDQcgByANcQ0IIBcgCUVxDQlB5ezgAEEoQeSwwwAQ9BcAC0ECIREgBEEIdCIEIAVBEHRyQQJyIQ0gAiAEckGAAmshAkEBIQRBACEGQQAhBUEAIQdBACEJDAwLIAhBEHQgBUEBakH/AXFBCHRyIQ0gBUEIdCACcgshAkECIRFBACEGQQAhBUEAIQdBACEJQQIhBAwKC0ECIREgBUEQdCACQQh0ckECciENIApBCHQgBHJBgAJrIQJBACEGQQAhBUEAIQcMCAsgBEEIdCIEIAhBEHRyQQJyIQ0gAiAEckGAAmshAkEBIQkgCEEBaiEHQQMhEUEAIQZBASEEDAgLIAJBCHQgBUEQdHJBAnIhDSAFQQFqIQcgCkEIdCAEckGAAmshAkEAIQZBAyERIAghBQwGC0EBIQkgCkEBaiEHIAJBgIIEbEECciENDAQLQQEhBCAFQQFqIQcgBkGAggRsQQJyIQ0gBUEIdCACckGAAmsMAgsgCEEQdCACQQh0ckECciENQQEhCSAIQQFqIQcMAgsgBEEIdCIGIAVBEHRyQQJyIQ1BASEEIAVBAWohByACIAZyQYACawshAkEAIQZBAyERIAghBUEAIQkMAgsgCkEIdCAEckGAAmshAkEAIQZBAyERQQAhBAwBC0EAIQlBACEECyAfIAU6AAAgICACQQh2OgAAIAMgDTsAzwEgISANQRB2OgAAIAMgETYCyAEgAyAHQQh0IAlyOwHSASADIAJBCHQgBHI7AcwBIAYEQCASRQ0CIANBgANqIgIgDiAUIBIQxw0gA0HAA2ogAhDqFQwCCyAPIBFBA2xqISNBACEHQQEhCCAPIQYDQCAGICNGDQIgB0EBaiEHIAYtAAIhBSAGLQABIQoCQAJAAkACQAJAAkACQAJAIAYtAABBAWsOAgECAAsgDkUEQEEAIQQMBwsgAUEANgKoASABKQKgASEmIAFCgICAgMAANwKgASADQQA2AtgDIAMgJjcD0AMgA0HQA2ogDiAQEMILIgQQ4BgDQCADKALYAyICRQ0FIAMgAkEBayICNgLYAyADKALUAyACQQN0aiICKAIEIQkgECACKAIAIiQQ+R0oAgghJUEAIQIDQCACICVGDQEgECAkEPkdIg0oAgQgDSgCCCACQayvwwAQuh8iDS0ABSEbIA0tAAQhHAJAIA0oAgAiFwRAIBAQwgshDSAWKAIAIBUoAgAgCSAcIBsgDRDEEiADQdADaiAXIA0Q4BgMAQsgFigCACAVKAIAIAkgHCAbQQAQxBILIAJBAWohAgwACwALAAsgECATEPkdIQIgByARRw0EIAsgAigCCCIESQ0BDAQLIA4hBCASDQEMBAsgAigCBCAEIAtBzK7DABC6HyICLQAEIAVB/wFxSw0CIAItAAUgCkH/AXFPDQUMAgsgA0GAA2oiAiAOIBQgEhDHDSADQcADaiACEOoVDAILIAEoAqABICIoAgAQ5SkgGEEIaiADQdgDaigCADYCACAYIAMpA9ADNwIADAELIBAgA0HAA2ogFCASEOEYIQQLIBUoAgAhAiAWKAIAIQkCQAJAIAhFBEAgCSACIAsgEyAKIAUgBBDsDAwBCyAJIAIgExDPHyICKAIIIgggC00NASACKAIEIAtBA3RqIgIgBToABSACIAo6AAQgAiAENgIAQQAhCAsgBkEDaiEGIAtBAWohCwwBCwsLCyALIAhBvK/DABCsEAALQdi6wwBBJEHcrsMAEPQXAAsgAkEEQdSwwwAQrhAAC0EBIAdBoPXgABCsEAALIAEoAqwBIB4oAgAQ7SkgGUEIaiADQcgDaigCADYCACAZIAMpA8ADNwIADAELAAsACwsgAEEQaiADQZADakEwEPsGGiAAQQxqIAIoAgA2AgAgACADKQPIATcCBAwIC0GcrsMAEO8UAAtBjK7DABDvFAALQcC2wwAQ7xQACyADQQA2AogDIANCADcDgAMgA0EAOwGMAyADQcgBaiADQYADaiABKALoARDzByABKALcASABQeABaigCABDtKSAFQQhqIANB0AFqKAIANgIAIAUgAykCyAE3AgAMBQtBkLfDABDvFAALIABBEGogA0GQA2pBMBD7BhogAEEMaiAEKAIANgIAIAAgAykDyAE3AgQgACAGNgIADAQLIANBgANqIAEQsRcgAygChAMhBSADKAKAAyIEQSpGBEAgA0G8AWogAigCECIEEJkSIARBAXQhBCAFrSEmIAIoAgwhAgNAIAQEQCADQbwB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OBCOBAJAIAMtAChBBEcEQCADKQMoIhVC/wGDQgRSDQELIANBKGogASAELQBIEI8IIAMtAChBBEcEQCADKQMoIhVC/wGDQgRSDQELAkAgBC0AREUNACADQQA2AiggA0E4aiABIANBKGpBnsXgAEEGELITIAMtADhBBEcEQCADKQM4IhVC/wGDQgRSDQILIANBKGogARDQESADLQAoQQRGDQAgAykDKCIVQv8Bg0IEUg0BCwJAIAQtAEVFDQAgA0EANgIoIANBOGogASADQShqQYq34ABBCBCyEyADLQA4QQRHBEAgAykDOCIVQv8Bg0IEUg0CCyADQShqIAEQ0BEgAy0AKEEERg0AIAMpAygiFUL/AYNCBFINAQsCQCAELQBGRQ0AIANBADYCKCADQThqIAEgA0EoakHcxOAAQQgQshMgAy0AOEEERwRAIAMpAzgiFUL/AYNCBFINAgsgA0EoaiABENARIAMtAChBBEYNACADKQMoIhVC/wGDQgRSDQELIANBADYCQCADQShqIAEgA0FAa0Gau+AAQQgQshMgAy0AKEEERwRAIAMpAygiFUL/AYNCBFINAQsgA0EoaiABENARIAMtAChBBEcEQCADKQMoIhVC/wGDQgRSDQELAkACQCAEQQhqIgIoAgBBBUYEQCADQShqIARBEGogARCnByADLQAoQQRGDQIgAykDKCIVQv8Bg0IEUg0BDAILIANBKGogASACEL8EIAMtAChBBEYNASADKQMoIhVC/wGDQgRRDQELIBVC/wGDQgRSDQELAkAgBCgCQEUNAAJAIAQtAEdFDQAgA0EoaiABIANBQGtBh7DgAEEBELITIAMtAChBBEYNACADKQMoIhVC/wGDQgRSDQILIANBKGogASADQUBrQeS14ABBARCyEyADLQAoQQRHBEAgAykDKCIVQv8Bg0IEUg0CCyADQShqIAEQ0BEgAy0AKEEERwRAIAMpAygiFUL/AYNCBFINAgsgA0EoaiAEQUBrIAEQ3g0gAy0AKEEERg0AIAMpAygiFUL/AYNCBFINAQsCQCAEKAI8RQ0AAkAgAS0ATQ0AIANBKGogARDQESADLQAoQQRGDQAgAykDKCIVQv8Bg0IEUg0CCyADQShqIAEgA0FAa0GZsOAAQQEQshMgAy0AKEEERwRAIAMpAygiFUL/AYNCBFINAgsCQCABLQBN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0BEgAy0AKEEERg0AIAMpAygiFUL/AYNCBFINAQsCQCAELQA1RQ0AIANBADYCKCADQThqIAEgA0EoakGKt+AAQQgQshMgAy0AOEEERwRAIAMpAzgiFUL/AYNCBFINAgsgA0EoaiABENARIAMtAChBBEYNACADKQMoIhVC/wGDQgRSDQELAkAgBC0AN0UNACADQQA2AiggA0E4aiABIANBKGpB3MTgAEEIELITIAMtADhBBEcEQCADKQM4IhVC/wGDQgRSDQILIANBKGogARDQESADLQAoQQRGDQAgAykDKCIVQv8Bg0IEUg0BCwJAAkACQAJAAkACQAJAAkACQCAELQA4QQFrDgIAAQILIANBADYCKCADQThqIAEgA0EoakGYxeAAQQMQshMgAy0AOEEERwRAIAMpAzgiFUL/AYNCBFINCQtBASAHKAIAdEEVcQ0CIAEtAE0NAyADQShqIAEQ0BEgAy0AKEEERg0DIAMpAygiFUL/AYNCBFENAwwICyADQQA2AiggA0E4aiABIANBKGpBm8XgAEEDELITIAMtADhBBEcEQCADKQM4IhVC/wGDQgRSDQgLQQEgBygCAHRBFXENAyABLQBNDQQgA0EoaiABENARIAMtAChBBEYNBCADKQMoIhVC/wGDQgRRDQQMBwsgBS0ARUUNBCADQQA2AiggA0E4aiABIANBKGpBvLngAEEFELITIAMtADhBBEcEQCADKQM4IhVC/wGDQgRSDQcLIANBKGogARDQESADLQAoQQRGDQQgAykDKCIVQv8Bg0IEUQ0EDAYLIANBKGogARDQESADLQAoQQRGDQAgAykDKCIVQv8Bg0IEUg0FCyADQShqIAEgBxC/BCADLQAoQQRGDQMgAykDKCIVQv8Bg0IEUQ0DDAQLIANBKGogARDQESADLQAoQQRGDQAgAykDKCIVQv8Bg0IEUg0DCyADQShqIAEgBxC/BCADLQAoQQRGDQEgAykDKCIVQv8Bg0IEUg0CDAELAkAgBS0AREUNACADQQA2AiggA0E4aiABIANBKGpB17DgAEEBELITIAMtADhBBEYNACADKQM4IhVC/wGDQgRSDQILIANBKGogASAHEL8EIAMtAChBBEYNACADKQMoIhVC/wGDQgRSDQELAkAgBC0ANkUNACADQQA2AiggA0E4aiABIANBKGpB47XgAEEBELIT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AiABKAIAIQMgBEGUA2ohASAEQawBaiEFAkADQAJAIARBqAFqIAMQlQwgBCgCqAEiAkEQRg0AIAEgBSkCADcCACABQRBqIAVBEGopAgA3AgAgAUEIaiIGIAVBCGopAgA3AgAgBCACNgKQAwJAAkACQAJAAkACQAJAAkACQAJAIAJBB2tBACACQQhPG0EBaw4IAAECAwQFBgcICyAEQYADaiAGKAIANgIAIAQgASkCADcD+AIgBEHIAmogBEH4AmoQ3BAMCAsgBEEBNgKsASAEQYTKxAA2AqgBIARCADcCtAEgBCAEQdAAajYCsAEgBEGoAWpBjMrEABDDHQALIARBATYCrAEgBEHsysQANgKoASAEQgA3ArQBIAQgBEHQAGo2ArABIARBqAFqQfTKxAAQwx0ACyAEQQE2AqwBIARB1MvEADYCqAEgBEIANwK0ASAEIARB0ABqNgKwASAEQagBakHcy8QAEMMdAAsgBEEBNgKsASAEQbjMxAA2AqgBIARCADcCtAEgBCAEQdAAajYCsAEgBEGoAWpBwMzEABDDHQALIARBATYCrAEgBEGkzcQANgKoASAEQgA3ArQBIAQgBEHQAGo2ArABIARBqAFqQazNxAAQwx0ACyAEQQg2AsgCDAILIARBATYCrAEgBEGUzsQANgKoASAEQgA3ArQBIAQgBEHQAGo2ArABIARBqAFqQZzOxAAQwx0ACyAEQeACaiAEQagDaigCADYCACAEQdgCaiAEQaADaikCADcDACAEQdACaiAEQZgDaikCADcDACAEIAQpApADNwPIAgsgAkEJTwRAIARBkANqEPwUCyAEKALIAkEIRg0CIARBqAFqIAMQlQwgBCgCqAFBEEYNDSAEQagDaiAEQcABaigCADYCACAEQaADaiAEQbgBaikCADcDACAEQZgDaiAEQbABaikCADcDACAEIAQpAqgBIhY3A5ADIBanQQ9HDQ4gBEGQA2oQ/BQgBEG8AmogBEHIAmoQuhAMAQsLIARBCDYCyAILIARByAJqEOYkIAQoAsACIAQoAsQCEKkIIARBqAFqIgEgBEG8AmoQWSADIAEQoRgMEwsgBEEANgKcAiAEQoCAgIDAADcClAIgASgCACEFIARBlANqIQEgBEGsAWohAwNAIARBqAFqIAUQlQwCQAJAIAQoAqgBIgJBEEcEQCABIAMpAgA3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QdgmahD9GQsgCC0AAQRAQQAgBigCABCKBCENQd2f2gBBFBDcGiFCIANB+MjfAEEBENwaNwNYIANCADcDYCADQeAmaiIEIANB2ABqEKUcIANBQGsiDCAEKQMANwMAIANByABqIg8gA0HoJmopAwA3AwAgA0HQAGoiByADQfAmaikDADcDACADQgA3AzhB8Z/aAEEjENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpAzg3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQACBEBBACAGKAIAEIoEIQ1BlKDaAEERENwaIUIgA0H4yN8AQQEQ3Bo3A4gBIANCADcDkAEgA0HgJmoiBCADQYgBahClHCADQfAAaiIMIAQpAwA3AwAgA0H4AGoiDyADQegmaikDADcDACADQYABaiIHIANB8CZqKQMANwMAIANCADcDaEGloNoAQSAQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDaDcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAAMEQEEAIAYoAgAQigQhDUHFoNoAQRQQ3BohQiADQfjI3wBBARDcGjcDuAEgA0IANwPAASADQeAmaiIEIANBuAFqEKUcIANBoAFqIgwgBCkDADcDACADQagBaiIPIANB6CZqKQMANwMAIANBsAFqIgcgA0HwJmopAwA3AwAgA0IANwOYAUHZoNoAQSMQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDmAE3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAEBEBBACAGKAIAEIoEIQ1B/KDaAEEYENwaIUIgA0H4yN8AQQEQ3Bo3A+gBIANCADcD8AEgA0HgJmoiBCADQegBahClHCADQdABaiIMIAQpAwA3AwAgA0HYAWoiDyADQegmaikDADcDACADQeABaiIHIANB8CZqKQMANwMAIANCADcDyAFBlKHaAEEnENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA8gBNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ABQRAQQAgBigCABCKBCENQbuh2gBBEBDcGiFCIANB+MjfAEEBENwaNwOYAiADQgA3A6ACIANB4CZqIgQgA0GYAmoQpRwgA0GAAmoiDCAEKQMANwMAIANBiAJqIg8gA0HoJmopAwA3AwAgA0GQAmoiByADQfAmaikDADcDACADQgA3A/gBQcuh2gBBHxDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQP4ATcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAAYEQEEAIAYoAgAQigQhDUHqodoAQRkQ3BohQiADQfjI3wBBARDcGjcDyAIgA0IANwPQAiADQeAmaiIEIANByAJqEKUcIANBsAJqIgwgBCkDADcDACADQbgCaiIPIANB6CZqKQMANwMAIANBwAJqIgcgA0HwJmopAwA3AwAgA0IANwOoAkGDotoAQSgQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDqAI3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAHBEBBACAGKAIAEIoEIQ1Bq6LaAEEPENwaIUIgA0H4yN8AQQEQ3Bo3A/gCIANCADcDgAMgA0HgJmoiBCADQfgCahClHCADQeACaiIMIAQpAwA3AwAgA0HoAmoiDyADQegmaikDADcDACADQfACaiIHIANB8CZqKQMANwMAIANCADcD2AJBuqLaAEEeENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA9gCNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ACARAQQAgBigCABCKBCENQdii2gBBExDcGiFCIANB+MjfAEEBENwaNwOoAyADQgA3A7ADIANB4CZqIgQgA0GoA2oQpRwgA0GQA2oiDCAEKQMANwMAIANBmANqIg8gA0HoJmopAwA3AwAgA0GgA2oiByADQfAmaikDADcDACADQgA3A4gDQeui2gBBIhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOIAzcDACAEQUBrQQA6AAAgA0EBNgLk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AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ADgRAQQAgBigCABCKBCENQbCl2gBBGxDcGiFCIANB+MjfAEEBENwaNwPIBSADQgA3A9AFIANB4CZqIgQgA0HIBWoQpRwgA0GwBWoiDCAEKQMANwMAIANBuAVqIg8gA0HoJmopAwA3AwAgA0HABWoiByADQfAmaikDADcDACADQgA3A6gFQcul2gBBKhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOoBTcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAA8EQEEAIAYoAgAQigQhDUH1pdoAQRsQ3BohQiADQfjI3wBBARDcGjcD+AUgA0IANwOABiADQeAmaiIEIANB+AVqEKUcIANB4AVqIgwgBCkDADcDACADQegFaiIPIANB6CZqKQMANwMAIANB8AVqIgcgA0HwJmopAwA3AwAgA0IANwPYBUGQptoAQSoQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD2AU3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAQBEBBACAGKAIAEIoEIQ1BuqbaAEEeENwaIUIgA0H4yN8AQQEQ3Bo3A6gGIANCADcDsAYgA0HgJmoiBCADQagGahClHCADQZAGaiIMIAQpAwA3AwAgA0GYBmoiDyADQegmaikDADcDACADQaAGaiIHIANB8CZqKQMANwMAIANCADcDiAZB2KbaAEEtENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA4gGNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AEQRAQQAgBigCABCKBCENQYWn2gBBERDcGiFCIANB+MjfAEEBENwaNwPYBiADQgA3A+AGIANB4CZqIgQgA0HYBmoQpRwgA0HABmoiDCAEKQMANwMAIANByAZqIg8gA0HoJmopAwA3AwAgA0HQBmoiByADQfAmaikDADcDACADQgA3A7gGQZan2gBBIBDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQO4BjcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtABIEQEEAIAYoAgAQigQhDUG2p9oAQSwQ3BohQiADQfjI3wBBARDcGjcDiAcgA0IANwOQByADQeAmaiIEIANBiAdqEKUcIANB8AZqIgwgBCkDADcDACADQfgGaiIPIANB6CZqKQMANwMAIANBgAdqIgcgA0HwJmopAwA3AwAgA0IANwPoBkHip9oAQTsQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD6AY3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQATBEBBACAGKAIAEIoE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IANBkAlqIgwgBCkDADcDACADQZgJaiIPIANB6CZqKQMANwMAIANBoAlqIgcgA0HwJmopAwA3AwAgA0IANwOICUGOq9oAQS0Q3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDiAk3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAZBEBBACAGKAIAEIoEIQ1Bu6vaAEEYENwaIUIgA0H4yN8AQQEQ3Bo3A9gJIANCADcD4AkgA0HgJmoiBCADQdgJahClHCADQcAJaiIMIAQpAwA3AwAgA0HICWoiDyADQegmaikDADcDACADQdAJaiIHIANB8CZqKQMANwMAIANCADcDuAlB06vaAEEnENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA7gJNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AGgRAQQAgBigCABCKBCENQfqr2gBBGxDcGiFCIANB+MjfAEEBENwaNwOICiADQgA3A5AKIANB4CZqIgQgA0GICmoQpRwgA0HwCWoiDCAEKQMANwMAIANB+AlqIg8gA0HoJmopAwA3AwAgA0GACmoiByADQfAmaikDADcDACADQgA3A+gJQZWs2gBBKhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQPoCTcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtABsEQEEAIAYoAgAQigQhDUG/rNoAQRkQ3BohQiADQfjI3wBBARDcGjcDuAogA0IANwPACiADQeAmaiIEIANBuApqEKUcIANBoApqIgwgBCkDADcDACADQagKaiIPIANB6CZqKQMANwMAIANBsApqIgcgA0HwJmopAwA3AwAgA0IANwOYCkHYrNoAQSgQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDmAo3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAcBEBBACAGKAIAEIoEIQ1BgK3aAEEaENwaIUIgA0H4yN8AQQEQ3Bo3A+gKIANCADcD8AogA0HgJmoiBCADQegKahClHCADQdAKaiIMIAQpAwA3AwAgA0HYCmoiDyADQegmaikDADcDACADQeAKaiIHIANB8CZqKQMANwMAIANCADcDyApBmq3aAEEpENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA8gKNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AHQRAQQAgBigCABCKBCENQcOt2gBBGRDcGiFCIANB+MjfAEEBENwaNwOYCyADQgA3A6ALIANB4CZqIgQgA0GYC2oQpRwgA0GAC2oiDCAEKQMANwMAIANBiAtqIg8gA0HoJmopAwA3AwAgA0GQC2oiByADQfAmaikDADcDACADQgA3A/gKQdyt2gBBKBDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQP4CjcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAB4EQEEAIAYoAgAQigQhDUGErtoAQSQQ3BohQiADQfjI3wBBARDcGjcDyAsgA0IANwPQCyADQeAmaiIEIANByAtqEKUcIANBsAtqIgwgBCkDADcDACADQbgLaiIPIANB6CZqKQMANwMAIANBwAtqIgcgA0HwJmopAwA3AwAgA0IANwOoC0GortoAQTMQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDqAs3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAfBEBBACAGKAIAEIoEIQ1B267aAEEkENwaIUIgA0H4yN8AQQEQ3Bo3A/gLIANCADcDgAwgA0HgJmoiBCADQfgLahClHCADQeALaiIMIAQpAwA3AwAgA0HoC2oiDyADQegmaikDADcDACADQfALaiIHIANB8CZqKQMANwMAIANCADcD2AtB/67aAEEzENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA9gLNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AIARAQQAgBigCABCKBCENQbKv2gBBIhDcGiFCIANB+MjfAEEBENwaNwOoDCADQgA3A7AMIANB4CZqIgQgA0GoDGoQpRwgA0GQDGoiDCAEKQMANwMAIANBmAxqIg8gA0HoJmopAwA3AwAgA0GgDGoiByADQfAmaikDADcDACADQgA3A4gMQdSv2gBBMRDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOIDDcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtACEEQEEAIAYoAgAQigQhDUGFsNoAQQoQ3BohQiADQfjI3wBBARDcGjcD2AwgA0IANwPgDCADQeAmaiIEIANB2AxqEKUcIANBwAxqIgwgBCkDADcDACADQcgMaiIPIANB6CZqKQMANwMAIANB0AxqIgcgA0HwJmopAwA3AwAgA0IANwO4DEGPsNoAQRkQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDuAw3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAiBEBBACAGKAIAEIoEIQ1BqLDaAEENENwaIUIgA0H4yN8AQQEQ3Bo3A4gNIANCADcDkA0gA0HgJmoiBCADQYgNahClHCADQfAMaiIMIAQpAwA3AwAgA0H4DGoiDyADQegmaikDADcDACADQYANaiIHIANB8CZqKQMANwMAIANCADcD6AxBtbDaAEEcENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA+gMNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AIwRAQQAgBigCABCKBCENQdGw2gBBCRDcGiFCIANB+MjfAEEBENwaNwO4DSADQgA3A8ANIANB4CZqIgQgA0G4DWoQpRwgA0GgDWoiDCAEKQMANwMAIANBqA1qIg8gA0HoJmopAwA3AwAgA0GwDWoiByADQfAmaikDADcDACADQgA3A5gNQdqw2gBBGBDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOYDTcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtACQEQEEAIAYoAgAQigQhDUHysNoAQQkQ3BohQiADQfjI3wBBARDcGjcD6A0gA0IANwPwDSADQeAmaiIEIANB6A1qEKUcIANB0A1qIgwgBCkDADcDACADQdgNaiIPIANB6CZqKQMANwMAIANB4A1qIgcgA0HwJmopAwA3AwAgA0IANwPIDUH7sNoAQRgQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDyA03AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAlBEBBACAGKAIAEIoEIQ1Bk7HaAEEdENwaIUIgA0H4yN8AQQEQ3Bo3A5gOIANCADcDoA4gA0HgJmoiBCADQZgOahClHCADQYAOaiIMIAQpAwA3AwAgA0GIDmoiDyADQegmaikDADcDACADQZAOaiIHIANB8CZqKQMANwMAIANCADcD+A1BsLHaAEEsENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA/gNNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AJgRAQQAgBigCABCKBCENQdyx2gBBEBDcGiFCIANB+MjfAEEBENwaNwPIDiADQgA3A9AOIANB4CZqIgQgA0HIDmoQpRwgA0GwDmoiDCAEKQMANwMAIANBuA5qIg8gA0HoJmopAwA3AwAgA0HADmoiByADQfAmaikDADcDACADQgA3A6gOQeyx2gBBHxDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOoDjcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtACcEQEEAIAYoAgAQigQhDUGLstoAQQwQ3BohQiADQfjI3wBBARDcGjcD+A4gA0IANwOADyADQeAmaiIEIANB+A5qEKUcIANB4A5qIgwgBCkDADcDACADQegOaiIPIANB6CZqKQMANwMAIANB8A5qIgcgA0HwJmopAwA3AwAgA0IANwPYDkGXstoAQRsQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD2A43AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAoBEBBACAGKAIAEIoEIQ1BsrLaAEEIENwaIUIgA0H4yN8AQQEQ3Bo3A6gPIANCADcDsA8gA0HgJmoiBCADQagPahClHCADQZAPaiIMIAQpAwA3AwAgA0GYD2oiDyADQegmaikDADcDACADQaAPaiIHIANB8CZqKQMANwMAIANCADcDiA9BurLaAEEXENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA4gPNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AKQRAQQAgBigCABCKBCENQdGy2gBBBBDcGiFCIANB+MjfAEEBENwaNwPYDyADQgA3A+APIANB4CZqIgQgA0HYD2oQpRwgA0HAD2oiDCAEKQMANwMAIANByA9qIg8gA0HoJmopAwA3AwAgA0HQD2oiByADQfAmaikDADcDACADQgA3A7gPQdWy2gBBExDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQO4DzcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtACoEQEEAIAYoAgAQigQhDUHostoAQREQ3BohQiADQfjI3wBBARDcGjcDiBAgA0IANwOQECADQeAmaiIEIANBiBBqEKUcIANB8A9qIgwgBCkDADcDACADQfgPaiIPIANB6CZqKQMANwMAIANBgBBqIgcgA0HwJmopAwA3AwAgA0IANwPoD0H5stoAQSAQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD6A83AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQArBEBBACAGKAIAEIoEIQ1BmbPaAEEJENwaIUIgA0H4yN8AQQEQ3Bo3A7gQIANCADcDwBAgA0HgJmoiBCADQbgQahClHCADQaAQaiIMIAQpAwA3AwAgA0GoEGoiDyADQegmaikDADcDACADQbAQaiIHIANB8CZqKQMANwMAIANCADcDmBBBorPaAEEYENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA5gQNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ALARAQQAgBigCABCKBCENQbqz2gBBDxDcGiFCIANB+MjfAEEBENwaNwPoECADQgA3A/AQIANB4CZqIgQgA0HoEGoQpRwgA0HQEGoiDCAEKQMANwMAIANB2BBqIg8gA0HoJmopAwA3AwAgA0HgEGoiByADQfAmaikDADcDACADQgA3A8gQQcmz2gBBHhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQPIEDcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAC0EQEEAIAYoAgAQigQhDUHns9oAQRwQ3BohQiADQfjI3wBBARDcGjcDmBEgA0IANwOgESADQeAmaiIEIANBmBFqEKUcIANBgBFqIgwgBCkDADcDACADQYgRaiIPIANB6CZqKQMANwMAIANBkBFqIgcgA0HwJmopAwA3AwAgA0IANwP4EEGDtNoAQSsQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD+BA3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAuBEBBACAGKAIAEIoEIQ1BrrTaAEEbENwaIUIgA0H4yN8AQQEQ3Bo3A8gRIANCADcD0BEgA0HgJmoiBCADQcgRahClHCADQbARaiIMIAQpAwA3AwAgA0G4EWoiDyADQegmaikDADcDACADQcARaiIHIANB8CZqKQMANwMAIANCADcDqBFBybTaAEEqENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA6gRNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ALwRAQQAgBigCABCKBCENQfO02gBBCxDcGiFCIANB+MjfAEEBENwaNwP4ESADQgA3A4ASIANB4CZqIgQgA0H4EWoQpRwgA0HgEWoiDCAEKQMANwMAIANB6BFqIg8gA0HoJmopAwA3AwAgA0HwEWoiByADQfAmaikDADcDACADQgA3A9gRQf602gBBGhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQPYETcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtADAEQEEAIAYoAgAQigQhDUGYtdoAQRgQ3BohQiADQfjI3wBBARDcGjcDqBIgA0IANwOwEiADQeAmaiIEIANBqBJqEKUcIANBkBJqIgwgBCkDADcDACADQZgSaiIPIANB6CZqKQMANwMAIANBoBJqIgcgA0HwJmopAwA3AwAgA0IANwOIEkGwtdoAQScQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDiBI3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQAxBEBBACAGKAIAEIoEIQ1B17XaAEEZENwaIUIgA0H4yN8AQQEQ3Bo3A9gSIANCADcD4BIgA0HgJmoiBCADQdgSahClHCADQcASaiIMIAQpAwA3AwAgA0HIEmoiDyADQegmaikDADcDACADQdASaiIHIANB8CZqKQMANwMAIANCADcDuBJB8LXaAEEoENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA7gSNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AMgRAQQAgBigCABCKBCENQZi22gBBExDcGiFCIANB+MjfAEEBENwaNwOIEyADQgA3A5ATIANB4CZqIgQgA0GIE2oQpRwgA0HwEmoiDCAEKQMANwMAIANB+BJqIg8gA0HoJmopAwA3AwAgA0GAE2oiByADQfAmaikDADcDACADQgA3A+gSQau22gBBIhDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQPoEjcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtADMEQEEAIAYoAgAQigQhDUHNttoAQRIQ3BohQiADQfjI3wBBARDcGjcDuBMgA0IANwPAEyADQeAmaiIEIANBuBNqEKUcIANBoBNqIgwgBCkDADcDACADQagTaiIPIANB6CZqKQMANwMAIANBsBNqIgcgA0HwJmopAwA3AwAgA0IANwOYE0HfttoAQSEQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDmBM3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQA0BEBBACAGKAIAEIoEIQ1BgLfaAEEYENwaIUIgA0H4yN8AQQEQ3Bo3A+gTIANCADcD8BMgA0HgJmoiBCADQegTahClHCADQdATaiIMIAQpAwA3AwAgA0HYE2oiDyADQegmaikDADcDACADQeATaiIHIANB8CZqKQMANwMAIANCADcDyBNBmLfaAEEnENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA8gTNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0ANQRAQQAgBigCABCKBCENQb+32gBBHhDcGiFCIANB+MjfAEEBENwaNwOYFCADQgA3A6AUIANB4CZqIgQgA0GYFGoQpRwgA0GAFGoiDCAEKQMANwMAIANBiBRqIg8gA0HoJmopAwA3AwAgA0GQFGoiByADQfAmaikDADcDACADQgA3A/gTQd232gBBLRDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQP4EzcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtADYEQEEAIAYoAgAQigQhDUGKuNoAQQQQ3BohQiADQfjI3wBBARDcGjcDyBQgA0IANwPQFCADQeAmaiIEIANByBRqEKUcIANBsBRqIgwgBCkDADcDACADQbgUaiIPIANB6CZqKQMANwMAIANBwBRqIgcgA0HwJmopAwA3AwAgA0IANwOoFEGOuNoAQRMQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDqBQ3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQA3BEBBACAGKAIAEIoEIQ1BobjaAEEQENwaIUIgA0H4yN8AQQEQ3Bo3A/gUIANCADcDgBUgA0HgJmoiBCADQfgUahClHCADQeAUaiIMIAQpAwA3AwAgA0HoFGoiDyADQegmaikDADcDACADQfAUaiIHIANB8CZqKQMANwMAIANCADcD2BRBsbjaAEEfENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA9gUNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AOARAQQAgBigCABCKBCENQdC42gBBEhDcGiFCIANB+MjfAEEBENwaNwOoFSADQgA3A7AVIANB4CZqIgQgA0GoFWoQpRwgA0GQFWoiDCAEKQMANwMAIANBmBVqIg8gA0HoJmopAwA3AwAgA0GgFWoiByADQfAmaikDADcDACADQgA3A4gVQeK42gBBIRDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOIFTcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtADkEQEEAIAYoAgAQigQhDUGDudoAQRQQ3BohQiADQfjI3wBBARDcGjcD2BUgA0IANwPgFSADQeAmaiIEIANB2BVqEKUcIANBwBVqIgwgBCkDADcDACADQcgVaiIPIANB6CZqKQMANwMAIANB0BVqIgcgA0HwJmopAwA3AwAgA0IANwO4FUGXudoAQSMQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDuBU3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQA6BEBBACAGKAIAEIoEIQ1BurnaAEEbENwaIUIgA0H4yN8AQQEQ3Bo3A4gWIANCADcDkBYgA0HgJmoiBCADQYgWahClHCADQfAVaiIMIAQpAwA3AwAgA0H4FWoiDyADQegmaikDADcDACADQYAWaiIHIANB8CZqKQMANwMAIANCADcD6BVB1bnaAEEqENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA+gVNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AOwRAQQAgBigCABCKBCENQf+52gBBDhDcGiFCIANB+MjfAEEBENwaNwO4FiADQgA3A8AWIANB4CZqIgQgA0G4FmoQpRwgA0GgFmoiDCAEKQMANwMAIANBqBZqIg8gA0HoJmopAwA3AwAgA0GwFmoiByADQfAmaikDADcDACADQgA3A5gWQY262gBBHRDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOYFjcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtADwEQEEAIAYoAgAQigQhDUGqutoAQRQQ3BohQiADQfjI3wBBARDcGjcD6BYgA0IANwPwFiADQeAmaiIEIANB6BZqEKUcIANB0BZqIgwgBCkDADcDACADQdgWaiIPIANB6CZqKQMANwMAIANB4BZqIgcgA0HwJmopAwA3AwAgA0IANwPIFkG+utoAQSMQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykDyBY3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQA9BEBBACAGKAIAEIoEIQ1B4braAEEaENwaIUIgA0H4yN8AQQEQ3Bo3A5gXIANCADcDoBcgA0HgJmoiBCADQZgXahClHCADQYAXaiIMIAQpAwA3AwAgA0GIF2oiDyADQegmaikDADcDACADQZAXaiIHIANB8CZqKQMANwMAIANCADcD+BZB+7raAEEpENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA/gWNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0APgRAQQAgBigCABCKBCENQaS72gBBIBDcGiFCIANB+MjfAEEBENwaNwPIFyADQgA3A9AXIANB4CZqIgQgA0HIF2oQpRwgA0GwF2oiDCAEKQMANwMAIANBuBdqIg8gA0HoJmopAwA3AwAgA0HAF2oiByADQfAmaikDADcDACADQgA3A6gXQcS72gBBLxDcGiFBQcgAEOkgIgRCADcDOCAEQQA6ADQgBCANNgIwIARCADcDKCAEIEI3AyAgBEEYaiAHKQMANwMAIARBEGogDykDADcDACAEQQhqIAwpAwA3AwAgBCADKQOoFzcDACAEQUBrQQA6AAAgA0EBNgLkJiADIAQ2AuAmIANBATYC3CZBGBDpICIEQgA3AwggBCBBNwMAIANB8iZqQgA3AQAgBEEQakIANwMAIANCADcC7CYgAyAENgLoJiADQQA2AtgmIAogA0HYJmoQ/RkLIAgtAD8EQEEAIAYoAgAQigQhDUHzu9oAQRwQ3BohQiADQfjI3wBBARDcGjcD+BcgA0IANwOAGCADQeAmaiIEIANB+BdqEKUcIANB4BdqIgwgBCkDADcDACADQegXaiIPIANB6CZqKQMANwMAIANB8BdqIgcgA0HwJmopAwA3AwAgA0IANwPYF0GPvNoAQSsQ3BohQUHIABDpICIEQgA3AzggBEEAOgA0IAQgDTYCMCAEQgA3AyggBCBCNwMgIARBGGogBykDADcDACAEQRBqIA8pAwA3AwAgBEEIaiAMKQMANwMAIAQgAykD2Bc3AwAgBEFAa0EAOgAAIANBATYC5CYgAyAENgLgJiADQQE2AtwmQRgQ6SAiBEIANwMIIAQgQTcDACADQfImakIANwEAIARBEGpCADcDACADQgA3AuwmIAMgBDYC6CYgA0EANgLYJiAKIANB2CZqEP0ZCyAILQBABEBBACAGKAIAEIoEIQ1BurzaAEEQENwaIUIgA0H4yN8AQQEQ3Bo3A6gYIANCADcDsBggA0HgJmoiBCADQagYahClHCADQZAYaiIMIAQpAwA3AwAgA0GYGGoiDyADQegmaikDADcDACADQaAYaiIHIANB8CZqKQMANwMAIANCADcDiBhByrzaAEEfENwaIUFByAAQ6SAiBEIANwM4IARBADoANCAEIA02AjAgBEIANwMoIAQgQjcDICAEQRhqIAcpAwA3AwAgBEEQaiAPKQMANwMAIARBCGogDCkDADcDACAEIAMpA4gYNwMAIARBQGtBADoAACADQQE2AuQmIAMgBDYC4CYgA0EBNgLcJkEYEOkgIgRCADcDCCAEIEE3AwAgA0HyJmpCADcBACAEQRBqQgA3AwAgA0IANwLsJiADIAQ2AugmIANBADYC2CYgCiADQdgmahD9GQsgCC0AQQRAQQAgBigCABCKBCENQem82gBBBBDcGiFCIANB+MjfAEEBENwaNwPYGCADQgA3A+AYIANB4CZqIgQgA0HYGGoQpRwgA0HAGGoiDCAEKQMANwMAIANByBhqIg8gA0HoJmopAwA3AwAgA0HQGGoiByADQfAmaikDADcDACADQgA3A7gYQe282gBBExDcGiFBQcgAEOkgIgRCADcDOCAE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QQA6AKkCIAMgAS0AjgM6AKgCIAMgAS0AngM6ALgCIAMgASkBggM3AJwCIAMgASgBigM2AKQCIAMgASkDkAM3AKoCIAMgASgCmAM2ALICIAMgAS8BnAM7ALYCIANBsQVqIAFBggNqIgVBFWopAAA3AAAgA0GsBWogBUEQaikBADcCACADQaQFaiAFQQhqKQEANwIAIAMgBSkBADcCnAUgBiADQZwCahDJCCADIAE2ApgFIANByAJqIgogARCvAyADKALIAiEOAkAgAy0A9AIiBUEGRwRAIANB4AFqIhNBBHIgCkEEckEoEPsGGiADQY8CaiADQfcCai0AADoAACADIAMvAPUCOwCNAiADIAU6AIwCIAMgDjYC4AEgA0GYBWoQoyYgAiEOQQAhBiMAQaAJayIEJAAgAUEoaiEJAkAgAS0A+AJBAkcNACAJEOMNIgJFDQAgAigCAEEURw0AIAItAARBBEcNACABLQD4AkECRw0AIAEtAIIDIQUgBEGQAWoiAiABENECIARBAToAiwggBCABKQCDAzcAjAggBCABKQCLAzcAlAggBCABKQCTAzcAnAggBCABKACbAzYApAggBEGQAmogBEGLCGoQyQggBEEoaiACEPABIAQgBCgCLCIcNgKMCSAEIAQoAigiDzYCiAkgDwRAIARBiAlqEJ0gIAIQhBBBACEcDAELIARBuARqIgIgBEGQAWpBqAMQ+wYaIAEQhBAgASACQagDEPsGIQIgBCAFOgDACCAEIAIpAIMDNwDBCCAEIAIpAIsDNwDJCCAEIAIpAJMDNwDRCCAEIAIoAJsDNgDZCCABQYABaiAEQcAIahDJCAsgBEKAgICAgAE3AjQgAUGAAWohKiABQYIDaiEfIAFBLGohDyAEQewIaiEmIARBwARqIRggBEHMBWohJyAEQdwEaiErIARBxARqISUgBEHECGohICAEQbgEakEEciEVIARB2ARqIShBCCEpAkACQAJAAkACQANAAkAgBCAUNgI8IAkQ4w0iAkUEQCABKALYAiECIARBADoAuAQgBCACIAIgBEG4BGoQgRU2ApQBIARBATYCkAEgBEGQAWoQkCQMAQsgBEEANgKQASAEIAI2ApQBIARBkAFqEJAkAkAgCRDjDSICRQ0AIAIoAgBBFEcNACACLQAEQQ5GDQELIAkQ4w0iAgRAIAIoAgBBIkYN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D0EIaikCADcCACAEQcwEaiAPQRBqKAIANgIAIAQgDykCADcCvAQgBCACNgK4BCAEQbgEahDHCkEACwJAIAEtAJoDQQFxRQ0AIAkQ4w0iAkUNACACKAIAQRRHDQAgAi0ABEEGRw0AIAEoAighAiABQSU2AiggASABKQNANwN4IARBxARqIA9BCGopAgA3AgAgBEHMBGogD0EQaigCADYCACAEIA8pAgA3ArwEIAQgAjYCuAQgBEG4BGoQxwoMAgtFDQEgBEHEBGogCRCWCyAEIAkQuBQgBEETNgLABCAEQcCC4AA2ArwEIARBMDoAuAQgBCgCACAEKAIEIARBuARqEIEVIQIgCRDjDSIFRQ0AIAUoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQhgwLIApBgICAgHg2AjwgCiACNgIAIARBNGoQjCcgHBDZKCATEMYXDAELIAogBCkCNDcCPCAKQcQAaiAEQTxqKAIANgIAIAEoAnwhAiAKIBNBMBD7BiIFIBQ6AEggBSAcNgI4IAUgDiACIAIgDkkbNgI0IAUgDiACIAIgDksbNgIwCyAEQaAJaiQADAELQeXs4ABBKEHUguAAEPQXAAsgAygChAMiE0GAgICAeEYEQCADKALIAiEODAILIAMoAswCIRAgAygCyAIhESADQegFaiADQdACakE0EPsGGiADQegEaiADQZADaikDADcDACADIAMpA4gDNwPgBAwDCyADQZgFahCjJgsgAEGBgICAeDYCkAEgACAONgIADAILIAEoAighBSABQSU2AiggASABKQNANwN4IANB1AJqIA1BCGopAgA3AgAgA0HcAmogDUEQaigCADYCACADIA0pAgA3AswCIAMgBTYCyAIgA0HIAmoQxwogAiABKAJ8IgUgAiAFSRshESACIAUgAiAFSxshEEGAgICAeCETCyADIBA2AoQBIANBiAFqIANB6AVqQTQQ+wYaIANByAFqIANB6ARqIgkpAwA3AwAgAyADKQPgBDcDwAEgAyARNgKAASADIBM2ArwBIANBADYC3AEgA0KAgICAgAE3AtQBIANBBzoAlAICQAJAIBNBgICAgHhGDQAgAy0AyAFBAUcNAEEHIQZBACEOIAMoAuQBIQoMAQsgA0HQAmohGSADQcgCakEEciEHIANBzAJqIQ8g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QShB4P/fABD0FwALIANBwAZqJAALyEsCKH8FfiMAQcAGayIDJAACQCABQShqIggQyg0iBUUEQCABKAKAAiEBIANBADoAyAIgASABIANByAJqEIEVIQEgAEGBgICAeDYCkAEgACABNgIADAELAkACfwJAAkAgBSgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUHl7OAAQShB0P/fABD0FwALIAgQwyAhGyADQdQCaiABQdQCaikCADcCACADQdwCaiABQdwCaigCADYCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgAyABKQLMAjcCzAIgAyAFNgLIAiAFQRRGDQEgBUEhRw0DQQAMAgsgASgCzAIhASAAQYGAgIB4NgKQASAAIAE2AgAMAwsgAy0AzAJBBEcNAUEBCyEFIAFBzAJqIQ0gA0HIAmoQxgogA0EAOgBMIAMgBToAVyADIAEtALYCOgBLIAMgASkBqgI3AD8gAyABQbICaiIFKAEANgBHIAMgASkDuAI3AE0gAyABLwHAAjsAVSADIAEoAMMCNgBYIANB9QBqIAFBvwJqKQAANwAAIANB8ABqIAFBugJqKQEANwIAIANB6ABqIAUpAQA3AgAgAyABKQGqAjcCYCAIIANBP2oQ0gggAyABNgJcAkACQAJAIAgQyg0iBQRAIAUoAgBBIkYNAQsgA0EAOgCpAiADIAEtALYCOgCoAiADIAEtAMYCOgC4AiADIAEpAaoCNwCcAiADIAEoAbICNgCkAiADIAEpA7gCNwCqAiADIAEoAsACNgCyAiADIAEvAcQCOwC2AiADQbEFaiABQaoCaiIFQRVqKQAANwAAIANBrAVqIAVBEGopAQA3AgAgA0GkBWogBUEIaikBADcCACADIAUpAQA3ApwFIAggA0GcAmoQ0gggAyABNgKYBSADQcgCaiIKIAEQrgMgAygCyAIhDgJAIAMtAPQCIgVBBkcEQCADQeABaiITQQRyIApBBHJBKBD7BhogA0GPAmogA0H3AmotAAA6AAAgAyADLwD1AjsAjQIgAyAFOgCMAiADIA42AuABIANBmAVqEIclIAIhDiMAQZAJayIEJAAgAUEoaiEJAkAgAS0AoAJBAkcNACAJEMoNIgJFDQAgAigCAEEURw0AIAItAARBBEcNACABLQCgAkECRw0AIAEtAKoCIQUgBEGQAWoiAiABEKMDIARBAToA+wcgBCABKQCrAjcA/AcgBCABKQCzAjcAhAggBCABKQC7AjcAjAggBCABKADDAjYAlAggBEG4AWogBEH7B2oQ0gggBEEoaiACEO8BIAQgBCgCLCIcNgL8CCAEIAQoAigiDzYC+AggDwRAIARB+AhqEI8gIAIQ3xBBACEcDAELIARBsARqIgIgBEGQAWpBoAMQ+wYaIAEQ3xAgASACQaADEPsGIQIgBCAFOgCwCCAEIAIpAKsCNwCxCCAEIAIpALMCNwC5CCAEIAIpALsCNwDBCCAEIAIoAMMCNgDJCCAJIARBsAhqENIICyAEQoCAgICAATcCNCABQaoCaiEfIAFBzAJqIQ8gBEHcCGohJiAEQbgEaiEYIARBxAVqIScgBEHUBGohKiAEQbwEaiElIARBtAhqISAgBEGwBGpBBHIhFSAEQdAEaiEoQQghKQJAAkACQAJAAkADQAJAIAQgFDYCPCAJEMoNIgJFBEAgASgCgAIhAiAEQQA6ALAEIAQgAiACIARBsARqEIEVNgKUASAEQQE2ApABIARBkAFqEMIjDAELIARBADYCkAEgBCACNgKUASAEQZABahDCIwJAIAkQyg0iAkUNACACKAIAQRRHDQAgAi0ABEEORg0BCyAJEMoNIgIEQCACKAIAQSJGDQELIAkQwyAhDAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCRDKDSICBEAgAigCAEENRg0BCyAEQbAEaiABEPIFIAQoArAEDQEgBEHYB2oiHSAoQQhqKQMANwMAIAQgKCkDADcD0AcgBCkDyAQhLCAEKQPABCEtIAQpA7gEIStBBCEXIAkQyg0iAg0CDAsLIBUgDykCADcCACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgFUEIaiIXIA9BCGoiISkCADcCACAVQRBqIiIgD0EQaiIjKAIANgIAIAQgAjYCsAQgBEGwBGoQxgogCRDDICEFAkAgCRDKDSICBEAgAigCAEEHRg0BCyAEQbgEaiAJEJEQIARBEGogCRCFFCAEQaj+3wA2ArQEIARBNDoAsAQgBCgCECAEKAIUIARBsARqEIEVIQIgCRDKDSIFRQ0QIAUoAgBBJEcNECABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQUgASABKALMAhD/CwwQCyAVIA8pAgA3AgAgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIBcgISkCADcCACAiICMoAgA2AgAgBCACNgKwBCAEQbAEahDGCiABKAKcAyEMIARBIGogARC4BiAEKAIkIQcgBCgCIARAIAchAgwQCyAEIAc2ApABIAkQyg0iAgRAIAIoAgBBDkYNAwsgGCAJEJEQIARBGGogCRCFFCAEQbDh3wA2ArQEIARBNDoAsAQgBCgCGCAEKAIcIARBsARqEIEVIQIgCRDKDSIFRQ0JIAUoAgBBJEcNCSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwJCyAEKAK0BCECDA4LIAIoAgBBFUcNCCACLQAEDQggFSAPKQIANwIAIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAVQQhqIA9BCGopAgA3AgAgFUEQaiAPQRBqKAIANgIAIAQgAjYCsAQgBEGwBGoiBxDGCiAEQQA7AIoIIAQgAS0AuAI6AIkIIAQgASkBqgI3APsHIAQgASgBsgI2AIMIIAQgAS8BtgI7AIcIIAQgASkAuwI3AIwIIAQgASgAwwI2AJQIICBBFWogH0EVaikAADcAACAgQRBqIB9BEGopAQA3AQAgIEEIaiAfQQhqKQEANwEAICAgHykBADcBACAJIARB+wdqENIIIAQgATYCsAggCRDDICEFIAkQyg0iAkUEQCABKAKAAiECIARBADoAsAQgAiACIAcQgRUhAgwHCwJAAn8CQAJAAkACQAJAAkACQCACKAIAIgJBIWsOBAUBAQIACyACQQ1GDQIgAkEbRg0DCyAEQQhqIAkQhRQgBCgCDCECIAQoAgggBEHWADoAsAQgAiAEQbAEahCBFSECIAkQyg0iBUUNDSAFKAIAQSRHDQ0gASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0LIAEgASgCzAIQ/wsMDQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEoAswCIQIMDQtB5ezgAEEoQaD/3wAQ9BcACyAEQbAEaiIHIAEQgwQgBCgCtAQhAiAEKAKwBCIGQQJGDQsgJiAYKQIANwIAICZBCGogGEEIaigCADYCACAEIAI2AtgIIAQgBjYC1AggBkEBcQ0CIAEoApwDIQIgBEHVADoAsAQgBSACIAIgBUsbIAUgAiACIAVJGyAHEIEVIQIgCRDKDSIFRQ0KIAUoAgBBJEcNCiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQggASABKALMAhD/CwwKCyAEQbAEaiABEMUCIAQoArQEIQUgBCgCsAQiAkEHRwRAIARBqAhqIBhBEGopAwA3AwAgBEGgCGogGEEIaikDADcDACAEIBgpAwA3A5gIQQAMAwsgBSECDAoLIARBsARqIAEQqQsgBCgCsAQhBiAEKALABSIQQYGAgIB4Rg0CIARBgAlqIhEgJUEIaikCADcDACAEQYgJaiIXICVBEGopAgA3AwAgBCAlKQIANwP4CCAEKAK4BCEFIAQoArQEIQIgBEGQAWogKkHsABD7BhogBEHwCGoiHiAnQQhqKAIANgIAIAQgJykCADcD6AggEEGAgICAeEYEQCAEQagIaiAXKQMANwMAIARBoAhqIBEpAwA3AwAgBCAEKQP4CDcDmAhBAwwCC0GgAUEIEKsgIgcgBTYCCCAHIAI2AgQgByAGNgIAIAcgBCkD+Ag3AgwgB0EUaiARKQMANwIAIAdBHGogFykDADcCACAHQSRqIARBkAFqQewAEPsGGiAHIBA2ApABIAcgBCkD6Ag3ApQBIAdBnAFqIB4oAgA2AgAgByEGIAshAiASIQVBAgwBCyAEIAQpAuAINwOYCCAEKALcCCEFQQELIRcgBEHoB2ogBEGgCGopAwA3AwAgBEHwB2ogBEGoCGopAwA3AwAgBCAEKQOYCDcD4AcgBEGwCGoQhyUgAiELIAUhEiAGIQcMCgsgBiECDAYLIAUgDCAFIAxJGyECIAUgDCAFIAxLGyEFIBUgDykCADcCACABKALIAiEMIAFBJTYCyAIgASABKQPgAjcDmAMgFyAhKQIANwIAICIgIygCADYCACAEIAw2ArAEIARBsARqEMYKQQUhFwwJC0Hl7OAAQShBmP7fABD0FwALQeXs4ABBKEHA/t8AEPQXAAtB5ezgAEEoQbD/3wAQ9BcAC0Hl7OAAQShBwP/fABD0FwALIARB1AhqEMojCyAEQbAIahCHJSArUARAIC0Q+RoMBwsgKyAsEIsrDAYLIARBkAFqEN4oDAULIBAhAiARIQULIARByABqIB0pAwA3AwAgBEHYAGogBEHoB2opAwA3AwAgBEHgAGogBEHwB2opAwA3AwAgBCAEKQPQBzcDQCAEIAQpA+AHNwNQIAwgASgCnAMiECAMIBBJGyEdIAwgECAMIBBLGyEeIAUhESACIRALIARBiAFqIiEgBEHgAGopAwA3AwAgBEGAAWoiIiAEQdgAaikDADcDACAEQfAAaiIjIARByABqKQMANwMAIAQgBCkDUDcDeCAEIAQpA0A3A2ggBCgCNCAURgRAIARBNGoQ1xcgBCgCOCEpCyAkIClqIgwgFzYCACAMQQxqIAU2AgAgDEEIaiACNgIAIAxBBGogBzYCACAMQRhqICIpAwA3AwAgDEEQaiAEKQN4NwMAICEpAwAhLyAMQUBrICw3AwAgDEE4aiAtNwMAIAxBMGogKzcDACAMQSxqIB42AgAgDEEoaiAdNgIAIAxBIGogLzcDACAMQcgAaiAEKQNoNwMAIAxB0ABqICMpAwA3AwAgJEHYAGohJCAUQQFqIRQMAQsLQQAhFAJAIAkQyg0iAkUNACACKAIAQRRHDQAgAi0ABEEORw0AIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAEQbwEaiAPQQhqKQIANwIAIARBxARqIA9BEGooAgA2AgAgBCAPKQIANwK0BCAEIAI2ArAEIARBsARqEMYKQQEhFAsCf0EBIAkQyg0iAkUNABpBASACKAIAQSJHDQAaIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyAEQbwEaiAPQQhqKQIANwIAIARBxARqIA9BEGooAgA2AgAgBCAPKQIANwK0BCAEIAI2ArAEIARBsARqEMYKQQALAkAgAS0AwgJBAXFFDQAgCRDKDSICRQ0AIAIoAgBBFEcNACACLQAEQQZHDQAgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIARBvARqIA9BCGopAgA3AgAgBEHEBGogD0EQaigCADYCACAEIA8pAgA3ArQEIAQgAjYCsAQgBEGwBGoQxgoMAgtFDQEgBEG8BGogCRCRECAEIAkQhRQgBEETNgK4BCAEQcCC4AA2ArQEIARBMDoAsAQgBCgCACAEKAIEIARBsARqEIEVIQIgCRDKDSIFRQ0AIAUoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwsgCkGAgICAeDYCPCAKIAI2AgAgBEE0ahCMJyAcENkoIBMQxhcMAQsgCiAEKQI0NwI8IApBxABqIARBPGooAgA2AgAgASgCnAMhAiAKIBNBMBD7BiIFIBQ6AEggBSAcNgI4IAUgDiACIAIgDkkbNgI0IAUgDiACIAIgDksbNgIwCyAEQZAJaiQADAELQeXs4ABBKEHUguAAEPQXAAsgAygChAMiE0GAgICAeEYEQCADKALIAiEODAILIAMoAswCIRAgAygCyAIhESADQegFaiADQdACakE0EPsGGiADQegEaiADQZADaikDADcDACADIAMpA4gDNwPgBAwDCyADQZgFahCHJQsgAEGBgICAeDYCkAEgACAONgIADAILIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAU2AsgCIANByAJqEMYKIAIgASgCnAMiBSACIAVJGyERIAIgBSACIAVLGyEQQYCAgIB4IRMLIAMgEDYChAEgA0GIAWogA0HoBWpBNBD7BhogA0HIAWogA0HoBGoiCSkDADcDACADIAMpA+AENwPAASADIBE2AoABIAMgEzYCvAEgA0EANgLcASADQoCAgICAATcC1AEgA0EHOgCUAgJAAkAgE0GAgICAeEYNACADLQDIAUEBRw0AQQchBkEAIQ4gAygC5AEhCgwBCyADQdACaiEZIANByAJqQQRyIQcgA0HMAmohDyADQZgEaiEEIANB8ANqIRIgA0HsAmohFiADQdwDaiEaQQAhAkEAIQ4CQAJAA0AgCBDKDSIFRQRAIAEoAoACIQEgA0EAOgDIAiABIAEgA0HIAmoQgRUhBQwDCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAFKAIAIgVBIGsOBQQFAgIAAQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0PQeXs4ABBKEHw/98AEPQXAAsgBUENRg0BCyADQdQCaiAIEJEQIANBCGogCBCFFCADQSA2AtACIANB4IDgADYCzAIgA0EwOgDIAiADKAIIIAMoAgwgA0HIAmoQgRUhBSAIEMoNIgJFDQ4gAigCAEEkRw0OIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBiABIAEoAswCEP8LDA4LIAgQwyAaAkACQAJAIAgQrRMiBQRAIAUoAgBBB0YNAQsgA0HIAmogARCDBCADKALIAiIFQQJGDQEgCSAPKQIANwIAIAlBCGogD0EIaikCADcCACADIAU2AuQEIANBATYC4AQgA0HgBGohCgwMCyAIEMMgIQsCQAJAAkACQAJAIAgQyg0iBQRAIAUoAgBBDUYNAQsgA0HQAmogCBCRECADQRBqIAgQhRQgA0HY4d8ANgLMAiADQTQ6AMgCIAMoAhAgAygCFCADQcgCahCBFSEFIAgQyg0iAkUNFCACKAIAQSRHDRQgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0BQeXs4ABBKEH4geAAEPQXAAsgByANKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAHQQhqIgYgDUEIaiIKKQIANwIAIAdBEGoiDCANQRBqIhUoAgA2AgAgAyAFNgLIAiADQcgCahDGCiAIEMoNIgUEQCAFKAIAQQdGDQILIANB0AJqIAgQkRAgA0EYaiAIEIUUIANBqP7fADYCzAIgA0E0OgDIAiADKAIYIAMoAhwgA0HIAmoQgRUhBSAIEMoNIgJFDRMgAigCAEEkRw0TIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAgsgASABKALMAhD/CwwSCyAHIA0pAgA3AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIAYgCikCADcCACAMIBUoAgA2AgAgAyAFNgLIAiADQcgCahDGCiADQShqIAEQjgYgAygCLCEFIAMoAigNESADIAU2AugFIAgQyg0iFARAIBQoAgBBDkYNAgsgGSAIEJEQIANBIGogCBCFFCADQbDh3wA2AswCIANBNDoAyAIgAygCICADKAIkIANByAJqEIEVIQUgCBDKDSICRQ0OIAIoAgBBJEcNDiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD/CwwOC0Hl7OAAQShB6IHgABD0FwALIAcgDSkCADcCACABKALIAiEUIAFBJTYCyAIgASABKQPgAjcDmAMgBiAKKQIANwIAIAwgFSgCADYCACADIBQ2AsgCIANByAJqEMYKIAsgASgCnAMiCiAKIAtLGyEGIAUNASAGIQUMDwsgAygCzAIhBQwOCyADIAsgCiAKIAtJGzYCxAQgAyAGNgLABCADIAU2ArwEIANBAjYCuAQgA0G4BGohCgwJCyADQcgCaiABEOoRIAMpA8gCUEUEQCAEIAMpA8gCNwMAIARBEGogA0HYAmopAwA3AwAgBEEIaiAZKQMANwMAIANBADYCkAQgA0GQBGohCgwJCyADKALQAiEFDAwLIAgQwyAhCwJ/AkACQAJAIAgQrRMiBUUNACAFKAIAQRRHDQAgBS0ABEEORg0BCyADQcgCaiABIAsQSiADKALIAiEFIAMoAtgDIgtBgYCAgHhGDQ4gC0GAgICAeEcNASADQYAGaiAHQRhqKQIANwMAIANB+AVqIAdBEGopAgA3AwAgA0HwBWogB0EIaikCADcDACADIAcpAgA3A+gFQQQMAgsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANB1AJqIA1BCGopAgA3AgAgA0HcAmogDUEQaigCADYCACADIA0pAgA3AswCIAMgAjYCyAIgA0HIAmoiAhDGCiAIEMoNIgVFBEAgASgCgAIhASADQQA6AMgCIAEgASACEIEVIQUMDgsgBSgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNDUHl7OAAQShBgIDgABD0FwALIAgQyg0iAkUNCCACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0NQeXs4ABBKEGQgOAAEPQXAAsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANB1AJqIA1BCGopAgA3AgAgA0HcAmogDUEQaigCADYCACADIA0pAgA3AswCIAMgAjYCyAIgA0HIAmoQxgoCQCAIEMoNIgIEQCACKAIAQSJGDQELIANByAJqIgIgARCuAyADKALIAiEFIAMtAPQCIgZBBkYNDiADQegFakEEciACQQRyQSgQ+wYaIANBlwZqIANB9wJqLQAAOgAAIAMgAy8A9QI7AJUGIAMgBjoAlAYgAyAFNgLoBSAIEMoNIgIEQCACKAIAQSJGDQULIANB0AJqIAgQkRAgA0EwaiAIEIUUIANBmILgADYCzAIgA0E0OgDIAiADKAIwIAMoAjQgA0HIAmoQgRUhBSAIEMoNIgJFDQggAigCAEEkRw0IIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBSABIAEoAswCEP8LDAgLIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQdQCaiANQQhqKQIANwIAIANB3AJqIA1BEGooAgA2AgAgAyANKQIANwLMAiADIAI2AsgCIANByAJqEMYKIAsgASgCnAMiAiACIAtLGyEWIAsgAiACIAtJGyEKQQYhBgwGC0GgAUEIEKsgIgYgBTYCACAGIAcpAgA3AgQgBkEMaiAHQQhqKQIANwIAIAZBFGogB0EQaikCADcCACAGQRxqIAdBGGopAgA3AgAgBkEkaiAWQewAEPsGGiAGIAs2ApABIAYgGikCADcClAEgBkGcAWogGkEIaigCADYCACAGIQVBAwshBiASIAMpA+gFNwMAIBJBGGogA0GABmopAwA3AwAgEkEQaiADQfgFaikDADcDACASQQhqIANB8AVqKQMANwMAIAMgBTYC7AMgAyAGNgLoAyADQegDaiEKDAcLQeXs4ABBKEHYgeAAEPQXAAsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANB1AJqIA1BCGopAgA3AgAgA0HcAmogDUEQaigCADYCACADIA0pAgA3AswCIAMgAjYCyAIgA0HIAmoQxgogASgCnAMhAiADQZgFaiADQegFakEsEPsGGiADQaoGaiADQZUGaiIFQQJqLQAAOgAAIAMgBS8AADsBqAYgCyACIAIgC0sbIRYgCyACIAIgC0kbIQoMAgtB5ezgAEEoQbCC4AAQ9BcAC0Hl7OAAQShBgIHgABD0FwALIANBnAJqIgIgA0GYBWpBLBD7BhogA0GaAmoiBSADQaoGai0AADoAACADIAMvAagGOwGYAiADQeABahCOISADIAo2AuQBIAMgFjYC4AEgA0HoAWogAkEsEPsGGiADQZcCaiAFLQAAOgAAIAMgBjoAlAIgAyADLwGYAjsAlQIMBwsgA0HoBWoQxhcMBQsgASgCgAIhASADQQA6AMgCIAEgASADQcgCahCBFSEFDAQLIAMoAtQBIA5GBEAgA0HUAWoQ0xcLIAMoAtgBIAJqIApBKBD7BhogAyAOQQFqIg42AtwBIAJBKGohAgwBCwsgA0HoBWoQ3igMAQsgASgCzAIhBQsgAEGBgICAeDYCkAEgACAFNgIAIANB4AFqEI4hIANB1AFqEOwmIBNBgICAgHhGDQEgA0GAAWoQxiMMAQsgGyABKAKcAyIFIAUgG0sbIQIgGyAFIAUgG0kbIQUgA0GVAmohCyADQegBaiESAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBNBgICAgHhGBEAgBkEGaw4CAgEDCyADQcABaiEOIANBiAFqIQcgBkEGaw4CBAMFC0Hl7OAAQShBsIDgABD0FwALQYCAgIB4IQEgAygC2AEhByADKALUASEGIAIhGSAFIRoMDAsgAyAKNgLMAiADIBY2AsgCIANB0AJqIBJBLBD7BiECIANB/wJqIAtBAmotAAA6AAAgAyAGOgD8AiADIAsvAAA7AP0CIANB1wA6AOgFIBYgCiADQegFahCBFSEFIAgQyg0iBkUNCSAGKAIAQSRHDQkgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ/wsMCQsgA0GYBWogB0E0EPsGGiADQZAFaiAOQQhqKQMANwMAIAMgDikDADcDiAVBBiENIAMpAtgBIS4gAygC1AEhASARIQsgECESIAIhBiAFIQcMCgsgAyAQNgLMAiADIBE2AsgCIANB0AJqIAdBNBD7BhogA0GQA2ogDkEIaikDADcDACADIBM2AoQDIAMgDikDADcDiAMgA0HIAmoQwQghKyADQdgAOgDoBSADICs3A/AFIBYgCiADQegFahCBFSECIAgQyg0iBUUNBiAFKAIAQSRHDQYgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ/wsMBgsgAyAQNgLMAiADIBE2AsgCIANB0AJqIAdBNBD7BiEQIANBkANqIA5BCGopAwA3AwAgAyATNgKEAyADIA4pAwA3A4gDIAMgCjYC7AUgAyAWNgLoBSADQfAFaiASQSwQ+wYhByADQZ8GaiALQQJqLQAAOgAAIAMgBjoAnAYgAyALLwAAOwCdBiADIAcQwQg3A6AGIAMgA0HIAmoQwQgiKzcDqAYgA0GgBmogA0GoBmoiBhCaCiArEPkaIAMpA6AGEPkaDQQgAygC7AUhAiADKALoBSADQcgCahDBCCErIANB2AA6AKgGIAMgKzcDsAYgAiAGEIEVIQIgCBDKDSIFRQ0DIAUoAgBBJEcNAyABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQIgASABKALMAhD/CwwDC0Hl7OAAQShBoIDgABD0FwALQeXs4ABBKEHAgOAAEPQXAAtB5ezgAEEoQdCA4AAQ9BcACyAAQYGAgIB4NgKQASAAIAI2AgAgBxDGFyADQcgCahDGIwwDCyADKALMAiESIAMoAsgCIQsgA0GYBWogEEE0EPsGGiADQZAFaiADQYgDaiIBQQhqKQMANwMAIANB2AVqIANBjAZqKQIANwMAIANB4AVqIANBlAZqKQIANwMAIAMgASkDADcDiAUgAyADKQKEBjcD0AUgAygChAMhEyADKALUASEBIAMpAtgBIS4gAygC6AUhDiADKALsBSEZIAMoAvAFIRogAygC9AUhESADKAL4BSEQIAMoAvwFIRYgAygCgAYhCiADQc4FaiADQZ0GaiIGQQJqLQAAOgAAIAMgBi8AADsBzAUgAy0AnAYhDSACIQYgBSEHDAMLIABBgYCAgHg2ApABIAAgAjYCACADQcgCahDGIwwBCyAAQYGAgIB4NgKQASAAIAU2AgAgAhDGFwsgA0HUAWoQ7CYMAQsgACAKNgIgIAAgFjYCHCAAIBA2AhggACARNgIUIAAgGjYCECAAIBk2AgwgACAONgIIIAAgBzYCBCAAIAY2AgAgACADKQPQBTcCJCAAIA06ADwgACADLwHMBTsAPSAAQSxqIANB2AVqKQMANwIAIABBNGogA0HgBWopAwA3AgAgAEE/aiADQc4Fai0AADoAACAAIBI2AkQgACALNgJAIABByABqIANBmAVqQTQQ+wYaIAAgEzYCfCAAIC43ApQBIAAgATYCkAEgACADKQOIBTcDgAEgAEGIAWogA0GQBWopAwA3AwALIANB3ABqEIclDAELQeXs4ABBKEHg/98AEPQXAAsgA0HABmokAAvnLAEvfyMAQaAJayICJAACQAJAAkACQCABQShqIgcQ4w0iAwRAIAMoAgBBDUYNAQsgAkHABWogBxCWCyACIAcQuBQgAkHY4d8ANgK8BSACQTQ6ALgFIAIoAgAgAigCBCACQbgFahCBFSEDIAcQ4w0iBkUNAiAGKAIAQSRGDQEMAgsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkHEBWogAUE0aikCADcCACACQcwFaiABQTxqKAIANgIAIAIgASkCLDcCvAUgAiADNgK4BSACQbgFaiIDEMcKIAJBADYCVCACQoCAgICAATcCTCABQYABaiEnIAFBLGohESACQcAFaiESIANBBHIhCiACQagFaiEkIAJBgAVqQQRyIRsgAkHkAWohEyACQeABaiELIAJBuAJqISggAkGMAWohHiACQeQFaiEfIAJB4AVqISUgAkG4BmohKSACQfwBaiEWIAJBtAJqIRcgAkH4AWohGCACQbACaiEZAkADQAJAIAJBuAVqIAFBAxDWCAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAItALgFRQRAIAItALkFRQRAAkACQAJAAkACQCAHEOMNIgMEQCADKAIAQQlGDQELIAcQ4w0iA0UNASADKAIAQRRHDQEgAy0ABEEERw0BCyACQbgFaiABQQAQ/wIgAigCuAUiA0ECRg0BDBoLIAcQ4w0iA0UNAiADKAIAQQJHDQIgAy0ACEECRw0CIAMtAAlBFkcNAiACQbgFaiABENECIAJBAToAuAEgAiACKQC7CDcAuQEgAiACKQDDCDcAwQEgAiACKQDLCDcAyQEgAiACKADTCDYA0QEgKSACQbgBahDJCCAbIB8pAgA3AgAgG0EIaiAfQQhqKQIANwIAIBtBEGogH0EQaigCADYCACACKALgBSEDIAJBJTYC4AUgAiADNgKABSACIAIpA/gFNwOwBiACQYAFahDHCgJAAkAgJRDjDSIDBEAgAygCAEEJRg0BCyAlEOMNIgNFDQMgAygCAEEURw0DIAMtAAQgAkG4BWoQhBBBBEYNAQwECyACQbgFahCEEAsgAkG4BWogAUEBEP8CIAIoArgFIgNBAkYNAAwZC0ELIQggAigCvAUhAwwZCyACQbgFahCEEAsgBxDeICEUIAJBuAVqIAFBuOffAEEBQQAQsgIgAigCvAUhCSACKAK4BQRAIAkhAwwZCyACQbgFaiABIBQgCUEARyIgQQAQpgEgAigCvAUhAyACKAK4BSIEQYGAgIB4Rg0CIB4gEikCADcCACAeQRBqIBJBEGooAgA2AgAgHkEIaiASQQhqKQIANwIAIAIgAzYCiAEgAiAENgKEASAEQYCAgIB4RwRAQQohCCACKAKcASEGIAIoApgBIRwgAigClAEhGiACKAKQASEdIAIoAowBIRAgAyENIAQhAwwYCyABLQD4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AkAgAkGYAWogAkHYAWoQ3BQgAikDmAEiGVANACACKAKgASEEIAIgGTcD4AIgAiAENgLoAiACQYgDaiACQeACahD0CQRAIAIpA+ACEPkaDAIFIAJByAJqIBkQwAkMAgsACwtCABDtJiACQdgBahC1FAsgAigCgARBgYCAgHhHBEAgAkHYAWogEEEwEPsGGgNAIAJBiAFqIAJB2AFqENwUIAIpA4gBIhlQRQRAIAJByAJqIBkQwAkMAQsLQgAQ7SYgAkHYAWoQtRQLIA4gAykDADcDACACIAIpA8gCNwPYASACQYgDahDvCiACQbgCaiACQdgBahChByACQbACaiACQcACaikCADcDACACIAIpArgCNwOoAgJAIAEoAhwiBEUNACACQagCahC2EyEHIA8oAgAiBSkDACAHIARBAWpBAXYgBCACKAK0AhsgFhD9ISAFQQhqIQNCf4VCgIGChIiQoMCAf4MhGQNAIBlQRQRAIAcgBSAZeqdBAXRB8AFxa0EQaykDABD8GhDACSAEQQFrIQQgGUIBfSAZgyEZDAELIARFDQEgBUGAAWshBSADKQMAQn+FQoCBgoSIkKDAgH+DIRkgA0EIaiEDDAALAAsgASgCTCIDBEAgAkGoAmoQthMgAiADNgLAAyACIAEoAkAiAzYCuAMgAiADQQhqNgKwAyACIAMgASgCRGpBAWo2ArQDIAIgAykDAEJ/hUKAgYKEiJCgwIB/gzcDqAMgAkGoA2oQvwwLIAJBADYCuAMgCCAaNwMAIAIgGzcDqAMgAkGsAWogAkGYAmogEyACQagDaiIDIA8gAkGoAmogAigCrAIgAigCqAIbEK8BIAMQywggASgCAEUNASABIAIoAqQCEMQpIAIoApgCIgMpAwAhGSACKAKcAiEEIAIgAigCpAI2AvABIAIgAzYC6AEgAiADIARqQQFqNgLkASACIANBCGo2AuABIAIgGUJ/hUKAgYKEiJCgwIB/gzcD2AEDQCACQYABaiACQdgBahC6FSACKAKAASIDRQ0CIAIgAigChAEiBDYCiAMgAkHwAGogAykDACADQQhqKAIAEMAjIAJBqANqIgUgASACKQNwIAIoAngQ+gYgAikDqANQDQUgBSAEKQMAEPwaEOALDAALAAsgAyABEMYiIAYoAiggARC5FSAAIQMMAgsgAkHoAmogEikDADcDACAC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JAAPCyADQQhqIAAgAkEBEMYJIAMoAggiAkGBgICAeEYNACACIAMoAgwQ4SkACyAAKAIAIQUgACgCCCECCyACIAVGBEAgABDAFwsgACACQQFqNgIIIAAoAgQgAkEUbGoiAiAYNgIQIAIgFzYCDCACIBY2AgggAiAVNgIEIAIgFDYCAAwACwAL1SoCF38BfiMAQYADayIDJAACQCABQShqIgQQ4w0iBkUEQCABKALYAiEBIANBADoAkAEgASABIANBkAFqEIEVIQEgAEEHNgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKAIAIgZBC2sOAwEJAgALIAZBAkcEQCAGQSRHDQkgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQggASgCLCEBIABBBzYCACAAIAE2AgQMDAsgA0HIAWogASACEKAEIAACfyADLQDcAUECRwRAIANBrAFqIANB4AFqKQMANwIAIANBpAFqIANB2AFqKQMANwIAIANBnAFqIANB0AFqKQMANwIAIAMgAykDyAE3ApQBIABBBGogA0GQAWpBJBD7BhpBAAwBCyAAIAMoAsgBNgIEQQcLNgIADAsLIAQQ3iAhDCAEEOMNIgJFBEAgASgC2AIhASADQQA6AJABIAEgASADQZABahCBFSEBIABBBzYCACAAIAE2AgQMCwsgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0GIAEoAiwhASAAQQc2AgAgACABNgIEDAsLIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAFBNGopAgA3AgAgA0GkAWogAUE8aigCADYCACADIAEpAiw3ApQBIAMgAjYCkAEgA0GQAWoiAhDHCiADQQA2AmggA0KAgICAgAE3AmAgAUEsaiEGIAJBBHIhCSADQdABaiEOIANBmAFqIQpBACECAkADQCACIA1yRSACQf7/e0tyIQhBACEFAkACfwJAAkACQANAIAQQ4w0iC0UNASADQQA2AuACIAMgCzYC5AIgA0HgAmoQkCQgBBDjDSILBEAgCygCAEEMRg0DCyAIRQRAIANBOzoAkAEgASACIA0gA0GQAWoQ2BkLAkAgBBDjDSILRQ0AIAsoAgBBEEcNACAJIAYpAgA3AgAgASgCKCELIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAs2ApABIAVBAWohBSADQZABahDHCgwBCwsgBQRAIAMgBTYCuAEgA0EHNgKQASADQeAAaiADQZABahCLCQsgBBDeICEFIAQQ4w0iCARAIAgoAgBBB0YNAwsgA0GQAWogARDqBCADKAKUASEFIAMoApABIghBB0YNCyAOIAopAwA3AwAgDkEYaiAKQRhqKQMANwMAIA5BEGogCkEQaikDADcDACAOQQhqIApBCGopAwA3AwAgAyAFNgLMASADIAg2AsgBIANB4ABqIANByAFqEIAaQQAMAwsgASgC2AIhAiADQQA6AJABIAMgAiACIANBkAFqEIEVNgLkAiADQQE2AuACIANB4AJqEJAkCyAEEOMNIgJFDQIgAigCAEEMRw0CIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQxwogAS0A+AJBAkYEQCABLQD7AkEBcQ0FC0EAIQIgAS0AkANBAXENBAwOCyAJIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqIg8QxwogASgCfCECIA8gAUEAEFAgAygCkAEiDUEHRg0HIANBwAJqIgcgCkEIaikDADcDACADQcgCaiIRIApBEGopAwA3AwAgA0HQAmoiEiAKQRhqKQMANwMAIAMgCikDADcDuAIgAygClAEhECABKAJ8IQtBKEEIEKsgIgggEDYCBCAIIA02AgAgCCADKQO4AjcDCCAIQRBqIAcpAwA3AwAgCEEYaiARKQMANwMAIAhBIGogEikDADcDACADQQA2AqgBIAMgBSACIAIgBUkbNgKkASADIAUgAiACIAVLGzYCoAEgAyAFIAsgBSALSxsiDTYCnAEgAyAFIAsgBSALSRsiAjYCmAEgAyAINgKUASADQQI2ApABIANB4ABqIA8QgBpBAQsgBBDjDSIIBEAgCCgCAEEMRg0CCwJAIAQQ4w0iCARAIAgoAgBBEEYNAQsgA0GYAWogBBCWCyADQRBqIAQQuBQgA0GoxeAANgKUASADQTQ6AJABIAMoAhAgAygCFCADQZABahCBFSEFIAQQ4w0iAkUNCCACKAIAQSRHDQggASABKQNANwN4IAEoAiggAUElNgIoQSRHDQYgASABKAIsEIYMDAgLIAkgBikCADcCACABKAIoIQggAUElNgIoIAEgASkDQDcDeCAJQQhqIAZBCGopAgA3AgAgCUEQaiAGQRBqKAIANgIAIAMgCDYCkAEgA0GQAWoiEBDHCkUNASAEEOMNIgVFDQEgBSgCAEEMRw0BIAEoAnwhBSABKAJ4IQggA0E6OgCQASABIAggBSAQENgZDAELCyADQZgBaiAEEJYLIANBCGogBBC4FCADQdjk3wA2ApQBIANBNDoAkAEgAygCCCADKAIMIANBkAFqEIEVIQUgBBDjDSICRQ0FIAIoAgBBJEcNBSABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABIAEoAiwQhgwMBQtBACECIAQQ4w0iBEUNCSAEKAIAQRdHDQkgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahDHCkEBIQIMCQsgA0EAOgBTIAMgASkBggM3AEMgAyABKQCTAzcAVCADIAEoAJsDNgBcIAMgAUGKA2oiAikBADcASyADQfkAaiABQZcDaikAADcAACADQfQAaiABQZIDaikBADcCACADQewAaiACKQEANwIAIAMgASkBggM3AmQgAUGAAWogA0HDAGoQyQggAyABNgJgIAQQ3iAhDiAEEOMNIgJFBEAgASgC2AIhASADQQA6AJABIAEgASADQZABahCBFSEBIABBBzYCACAAIAE2AgQMCAsCQCACKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGDQFB5ezgAEEoQcys4AAQ9BcACyABKAIoIQIgAUElNgIoIAEgASkDQDcDeCADQZwBaiABQTRqKQIANwIAIANBpAFqIAFBPGooAgA2AgAgAyABKQIsNwKUASADIAI2ApABIANBkAFqIgIQxwogA0EANgKMASADQoCAgICAATcChAEgAUEsaiEGIAJBBHIhCyADQbgCakEEciEJIANBxAJqIRcgA0G8AmohDSADQcACaiEKIANBoAJqIQwgA0GgAWohGCADQZgBaiEZQQghEANAIAhBOGwhEgJAA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEEOMNIgIEQCACKAIAQQ5GDQELIAQQ3iAhBQJAAkACQAJAIAQQ4w0iAgRAIAIoAgBBB0YNAQsgA0G4AmogARCtASADKAK8AiECIAMoArgCIgdBBUYNDSAMIAopAwA3AwAgDEEQaiAKQRBqIg8pAwA3AwAgDEEIaiAKQQhqIhQpAwA3AwAgAyACNgKcAiADIAc2ApgCIAQQ4w0iAgRAIAIoAgBBE0YNAgsgBw0CQQAhAgJAIAQQ4w0iB0UNACAHKAIAQRVHDQAgBy0ABA0AIAkgBikCADcCACABKAIoIQIgAUElNgIoIAEgASkDQDcDeCAJQQhqIAZBCGopAgA3AgAgCUEQaiAGQRBqKAIANgIAIAMgAjYCuAIgA0G4AmoiDxDHCiAPIAFBARDiEiADQSBqIAMoArgCEK0GIAMoAiQhAiADKAIgIA8QoyYNBAsgASgCfCEHIBggDBD9IiADIAI2AsABQQEhAiADQQE2ApABIAMgBSAHIAUgB0sbNgKcASADIAUgByAFIAdJGzYCmAEMDAsgCSAGKQIANwIAIAEoAighAiABQSU2AiggASABKQNANwN4IAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyACNgK4AiADQbgCaiICEMcKIAEoAnwhByACIAFBABBQIAMoArgCIg9BB0cEQCADQYACaiIUIApBCGopAwA3AwAgA0GIAmoiFSAKQRBqKQMANwMAIANBkAJqIhYgCkEYaikDADcDACADIAopAwA3A/gBIAMoArwCIRNBKEEIEKsgIgIgEzYCBCACIA82AgAgAiADKQP4ATcDCCACQRBqIBQpAwA3AwAgAkEYaiAVKQMANwMAIAJBIGogFikDADcDACADQQA2AqgBIAMgBSAHIAUgB0sbNgKkASADIAUgByAFIAdJGzYCoAEgAyACNgKUAUECIQIgA0ECNgKQASADIAUgASgCfCIHIAUgB0sbNgKcASADIAUgByAFIAdJGzYCmAEMDAsgAygCvAIhAgwMCyAJIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ArgCIANBuAJqIhMQxwogEyABEOoEIAMoArwCIQIgAygCuAIiFUEHRg0DIANB+AJqIgcgCkEYaikDADcDACADQfACaiIWIA8pAwA3AwAgA0HoAmoiDyAUKQMANwMAIAMgCikDADcD4AJBKEEIEKsgIgUgAjYCBCAFIBU2AgAgBSADKQPgAjcDCCAFQRBqIA8pAwA3AwAgBUEYaiAWKQMANwMAIAVBIGogBykDADcDACANQRhqIANBsAJqKQMANwIAIA1BEGogA0GoAmopAwA3AgAgDUEIaiAMKQMANwIAIA0gAykDmAI3AgBBACECIANBADYCkAEgCyATQSQQ+wYaIAMgBTYCuAEMCgsgFyAEEJYLIANBKGogBBC4FCADQQ02AsACIANBsKrgADYCvAIgA0EwOgC4AiADKAIoIAMoAiwgA0G4AmoQgRUhAgJAIAQQ4w0iBEUNACAEKAIAQSRHDQAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQUgASABKAIsEIYMCyADIAI2ApQBDAMLIAMpA6ACEPkaDAkLIAEoAighAiABQSU2AiggASABKQNANwN4IANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQxwogDiABKAJ8IgIgAiAOSxshCiAOIAIgAiAOSRshDCADKAKMASICQThsIQUgAkEBayEIIBpCIIinIQ4gGqchCyADKAKIASECIBFBAXEhDQNAIAVFBEACQCABLQD4AkECRgRAIAEtAPsCQQFxDQELQQAhAiABLQCQA0EBcUUNCAtBACECIAQQ4w0iBEUNByAEKAIAQRdHDQcgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahDHCkEBIQIMBwsgAigCACEJAkACQCAIBEAgCUECRw0BIANBOGogAhCsDyADKAI8IQkgAygCOCEHIANBOzoAkAEgASAHIAkgA0GQAWoQ2BkMAQsgCUECRw0AIAIoAgQoAgANASANRQ0AIANBOjoAkAEgASALIA4gA0GQAWoQ2BkLIAJBOGohAiAIQQFrIQggBUE4ayEFDAELCyADQTBqIAIQrA8gAygCNCECIAMoAjAgA0HtADoAkAEgAiADQZABahCBFSECIAQQ4w0iBEUNBCAEKAIAQSRHDQQgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIYMDAQLIAMgAjYClAEgB0UNBQsgA0GYAmoQ4RYgAygClAEhAgwGC0Hl7OAAQShBwKrgABD0FwALQeXs4ABBKEGgquAAEPQXAAsgAEEHNgIAIAAgAjYCBCADQYQBahCJJwwSCyAAIAMpAoQBNwIEIAAgAjoAHCAAQQA2AhggACAMNgIUIAAgCjYCECAAQQM2AgAgAEEMaiADQYwBaigCADYCAAwRCyADKQOgAhD5GgwBCyADKAKUASEHIANByAFqIBlBMBD7BhogAygChAEgCEYEQCADQYQBahDSFyADKAKIASEQCyAQIBJqIgUgAjYCACAFQQRqIAc2AgAgBUEIaiADQcgBakEwEPsGGiADIAhBAWoiCDYCjAEgBBDjDSICBEAgAigCAEEORg0DCyAEEOMNIgIEQCACKAIAQRBGDQILIANBmAFqIAQQlgsgA0EYaiAEELgUIANBqMXgADYClAEgA0E0OgCQASADKAIYIAMoAhwgA0GQAWoQgRUhAiAEEOMNIgRFDQAgBCgCAEEkRw0AIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0FIAEgASgCLBCGDAsgAEEHNgIAIAAgAjYCBCADQYQBahCJJwwOCyALIAYpAgA3AgAgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggC0EIaiAGQQhqKQIANwIAIAtBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqEMcKIAQQ4w0iAg0BCyASQThqIRIMAQsLQQEgESACKAIAQQ5GIgIbIREgASkDeCAaIAIbIRoMAQsLQeXs4ABBKEHcrOAAEPQXAAsgASgCLCEBIABBBzYCACAAIAE2AgQMBwtB5ezgAEEoQdyE4AAQ9BcAC0Hl7OAAQShBzITgABD0FwALIAMoApQBIQULIABBBzYCACAAIAU2AgQgA0HgAGoQiCcMBQtB5ezgAEEoQbyE4AAQ9BcAC0Hl7OAAQShBnIXgABD0FwALIANBnAFqIAQQlgsgAyAEELgUIANBHDYCmAEgA0GsheAANgKUASADQTA6AJABIAMoAgAgAygCBCADQZABahCBFSECAkAgBBDjDSIERQ0AIAQoAgBBJEcNACABIAEpA0A3A3ggASgCKCABQSU2AihBJEYEQCABIAEoAiwQhgwMAQtB5ezgAEEoQciF4AAQ9BcACyAAQQc2AgAgACACNgIEDAILIANB4ABqEKMmDAELIAAgAykCYDcCBCAAIAI6ABwgAEEANgIYIABBATYCACAAQQxqIANB6ABqKAIANgIAIAAgDCABKAJ8IgEgASAMSRs2AhQgACAMIAEgASAMSxs2AhALIANBgANqJAALxCsCF38BfiMAQYADayIDJAACQCABQShqIgQQyg0iBkUEQCABKAKAAiEBIANBADoAkAEgASABIANBkAFqEIEVIQEgAEEHNgIAIAAgATYCBAwBCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCAGKAIAIgZBC2sOAwEJAgALIAZBAkcEQCAGQSRHDQkgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0IIAEoAswCIQEgAEEHNgIAIAAgATYCBAwMCyADQcgBaiABIAIQngQgAAJ/IAMtANwBQQJHBEAgA0GsAWogA0HgAWopAwA3AgAgA0GkAWogA0HYAWopAwA3AgAgA0GcAWogA0HQAWopAwA3AgAgAyADKQPIATcClAEgAEEEaiADQZABakEkEPsGGkEADAELIAAgAygCyAE2AgRBBws2AgAMCwsgBBDDICEMIAQQyg0iAkUEQCABKAKAAiEBIANBADoAkAEgASABIANBkAFqEIEVIQEgAEEHNgIAIAAgATYCBAwLCyACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0GIAEoAswCIQEgAEEHNgIAIAAgATYCBAwLCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0GcAWogAUHUAmopAgA3AgAgA0GkAWogAUHcAmooAgA2AgAgAyABKQLMAjcClAEgAyACNgKQASADQZABaiICEMYKIANBADYCaCADQoCAgICAATcCYCABQcwCaiEGIAJBBHIhCSADQdABaiEOIANBmAFqIQpBACECAkADQCACIA1yRSACQf7/e0tyIQhBACEFAkACfwJAAkACQANAIAQQyg0iC0UNASADQQA2AuACIAMgCzYC5AIgA0HgAmoQwiMgBBDKDSILBEAgCygCAEEMRg0DCyAIRQRAIANBOzoAkAEgASACIA0gA0GQAWoQxhkLAkAgBBDKDSILRQ0AIAsoAgBBEEcNACAJIAYpAgA3AgAgASgCyAIhCyABQSU2AsgCIAEgASkD4AI3A5gDIAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyALNgKQASAFQQFqIQUgA0GQAWoQxgoMAQsLIAUEQCADIAU2ArgBIANBBzYCkAEgA0HgAGogA0GQAWoQiwkLIAQQwyAhBSAEEMoNIggEQCAIKAIAQQdGDQMLIANBkAFqIAEQ6QQgAygClAEhBSADKAKQASIIQQdGDQsgDiAKKQMANwMAIA5BGGogCkEYaikDADcDACAOQRBqIApBEGopAwA3AwAgDkEIaiAKQQhqKQMANwMAIAMgBTYCzAEgAyAINgLIASADQeAAaiADQcgBahCAGkEADAMLIAEoAoACIQIgA0EAOgCQASADIAIgAiADQZABahCBFTYC5AIgA0EBNgLgAiADQeACahDCIwsgBBDKDSICRQ0CIAIoAgBBDEcNAiABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0GcAWogBkEIaikCADcCACADQaQBaiAGQRBqKAIANgIAIAMgBikCADcClAEgAyACNgKQASADQZABahDGCiABLQCgAkECRgRAIAEtAKMCQQFxDQULQQAhAiABLQC4AkEBcQ0EDA4LIAkgBikCADcCACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ApABIANBkAFqIg8QxgogASgCnAMhAiAPIAFBABBRIAMoApABIg1BB0YNByADQcACaiIHIApBCGopAwA3AwAgA0HIAmoiESAKQRBqKQMANwMAIANB0AJqIhIgCkEYaikDADcDACADIAopAwA3A7gCIAMoApQBIRAgASgCnAMhC0EoQQgQqyAiCCAQNgIEIAggDTYCACAIIAMpA7gCNwMIIAhBEGogBykDADcDACAIQRhqIBEpAwA3AwAgCEEgaiASKQMANwMAIANBADYCqAEgAyAFIAIgAiAFSRs2AqQBIAMgBSACIAIgBUsbNgKgASADIAUgCyAFIAtLGyINNgKcASADIAUgCyAFIAtJGyICNgKYASADIAg2ApQBIANBAjYCkAEgA0HgAGogDxCAGkEBCyAEEMoNIggEQCAIKAIAQQxGDQILAkAgBBDKDSIIBEAgCCgCAEEQRg0BCyADQZgBaiAEEJEQIANBEGogBBCFFCADQajF4AA2ApQBIANBNDoAkAEgAygCECADKAIUIANBkAFqEIEVIQUgBBDKDSICRQ0IIAIoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD/CwwICyAJIAYpAgA3AgAgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyAINgKQASADQZABaiIQEMYKRQ0BIAQQyg0iBUUNASAFKAIAQQxHDQEgASgCnAMhBSABKAKYAyEIIANBOjoAkAEgASAIIAUgEBDGGQwBCwsgA0GYAWogBBCRECADQQhqIAQQhRQgA0HY5N8ANgKUASADQTQ6AJABIAMoAgggAygCDCADQZABahCBFSEFIAQQyg0iAkUNBSACKAIAQSRHDQUgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ/wsMBQtBACECIAQQyg0iBEUNCSAEKAIAQRdHDQkgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQxgpBASECDAkLIANBADoAUyADIAEpAaoCNwBDIAMgASkAuwI3AFQgAyABKADDAjYAXCADIAFBsgJqIgIpAQA3AEsgA0H5AGogAUG/AmopAAA3AAAgA0H0AGogAUG6AmopAQA3AgAgA0HsAGogAikBADcCACADIAEpAaoCNwJkIAQgA0HDAGoQ0gggAyABNgJgIAQQwyAhDiAEEMoNIgJFBEAgASgCgAIhASADQQA6AJABIAEgASADQZABahCBFSEBIABBBzYCACAAIAE2AgQMCAsCQCACKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0BQeXs4ABBKEHMrOAAEPQXAAsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBnAFqIAFB1AJqKQIANwIAIANBpAFqIAFB3AJqKAIANgIAIAMgASkCzAI3ApQBIAMgAjYCkAEgA0GQAWoiAhDGCiADQQA2AowBIANCgICAgIABNwKEASABQcwCaiEGIAJBBHIhCyADQbgCakEEciEJIANBxAJqIRcgA0G8AmohDSADQcACaiEKIANBoAJqIQwgA0GgAWohGCADQZgBaiEZQQghEANAIAhBOGwhEgJAA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEEMoNIgIEQCACKAIAQQ5GDQELIAQQwyAhBQJAAkACQAJAIAQQyg0iAgRAIAIoAgBBB0YNAQsgA0G4AmogARCuASADKAK8AiECIAMoArgCIgdBBUYNDSAMIAopAwA3AwAgDEEQaiAKQRBqIg8pAwA3AwAgDEEIaiAKQQhqIhQpAwA3AwAgAyACNgKcAiADIAc2ApgCIAQQyg0iAgRAIAIoAgBBE0YNAgsgBw0CQQAhAgJAIAQQyg0iB0UNACAHKAIAQRVHDQAgBy0ABA0AIAkgBikCADcCACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ArgCIANBuAJqIg8QxgogDyABQQEQ0RIgA0EgaiADKAK4AhC4BiADKAIkIQIgAygCICAPEIclDQQLIAEoApwDIQcgGCAMEP0iIAMgAjYCwAFBASECIANBATYCkAEgAyAFIAcgBSAHSxs2ApwBIAMgBSAHIAUgB0kbNgKYAQwMCyAJIAYpAgA3AgAgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAlBCGogBkEIaikCADcCACAJQRBqIAZBEGooAgA2AgAgAyACNgK4AiADQbgCaiICEMYKIAEoApwDIQcgAiABQQAQUSADKAK4AiIPQQdHBEAgA0GAAmoiFCAKQQhqKQMANwMAIANBiAJqIhUgCkEQaikDADcDACADQZACaiIWIApBGGopAwA3AwAgAyAKKQMANwP4ASADKAK8AiETQShBCBCrICICIBM2AgQgAiAPNgIAIAIgAykD+AE3AwggAkEQaiAUKQMANwMAIAJBGGogFSkDADcDACACQSBqIBYpAwA3AwAgA0EANgKoASADIAUgByAFIAdLGzYCpAEgAyAFIAcgBSAHSRs2AqABIAMgAjYClAFBAiECIANBAjYCkAEgAyAFIAEoApwDIgcgBSAHSxs2ApwBIAMgBSAHIAUgB0kbNgKYAQwMCyADKAK8AiECDAwLIAkgBikCADcCACABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAI2ArgCIANBuAJqIhMQxgogEyABEOkEIAMoArwCIQIgAygCuAIiFUEHRg0DIANB+AJqIgcgCkEYaikDADcDACADQfACaiIWIA8pAwA3AwAgA0HoAmoiDyAUKQMANwMAIAMgCikDADcD4AJBKEEIEKsgIgUgAjYCBCAFIBU2AgAgBSADKQPgAjcDCCAFQRBqIA8pAwA3AwAgBUEYaiAWKQMANwMAIAVBIGogBykDADcDACANQRhqIANBsAJqKQMANwIAIA1BEGogA0GoAmopAwA3AgAgDUEIaiAMKQMANwIAIA0gAykDmAI3AgBBACECIANBADYCkAEgCyATQSQQ+wYaIAMgBTYCuAEMCgsgFyAEEJEQIANBKGogBBCFFCADQQ02AsACIANBsKrgADYCvAIgA0EwOgC4AiADKAIoIAMoAiwgA0G4AmoQgRUhAgJAIAQQyg0iBEUNACAEKAIAQSRHDQAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0FIAEgASgCzAIQ/wsLIAMgAjYClAEMAwsgAykDoAIQ+RoMCQsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANBnAFqIAZBCGopAgA3AgAgA0GkAWogBkEQaigCADYCACADIAYpAgA3ApQBIAMgAjYCkAEgA0GQAWoQxgogDiABKAKcAyICIAIgDksbIQogDiACIAIgDkkbIQwgAygCjAEiAkE4bCEFIAJBAWshCCAaQiCIpyEOIBqnIQsgAygCiAEhAiARQQFxIQ0DQCAFRQRAAkAgAS0AoAJBAkYEQCABLQCjAkEBcQ0BC0EAIQIgAS0AuAJBAXFFDQgLQQAhAiAEEMoNIgRFDQcgBCgCAEEXRw0HIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQZwBaiAGQQhqKQIANwIAIANBpAFqIAZBEGooAgA2AgAgAyAGKQIANwKUASADIAI2ApABIANBkAFqEMYKQQEhAgwHCyACKAIAIQkCQAJAIAgEQCAJQQJHDQEgA0E4aiACEKIPIAMoAjwhCSADKAI4IQcgA0E7OgCQASABIAcgCSADQZABahDGGQwBCyAJQQJHDQAgAigCBCgCAA0BIA1FDQAgA0E6OgCQASABIAsgDiADQZABahDGGQsgAkE4aiECIAhBAWshCCAFQThrIQUMAQsLIANBMGogAhCiDyADKAI0IQIgAygCMCADQe0AOgCQASACIANBkAFqEIEVIQIgBBDKDSIERQ0EIAQoAgBBJEcNBCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwECyADIAI2ApQBIAdFDQULIANBmAJqEJ8WIAMoApQBIQIMBgtB5ezgAEEoQcCq4AAQ9BcAC0Hl7OAAQShBoKrgABD0FwALIABBBzYCACAAIAI2AgQgA0GEAWoQiScMEgsgACADKQKEATcCBCAAIAI6ABwgAEEANgIYIAAgDDYCFCAAIAo2AhAgAEEDNgIAIABBDGogA0GMAWooAgA2AgAMEQsgAykDoAIQ+RoMAQsgAygClAEhByADQcgBaiAZQTAQ+wYaIAMoAoQBIAhGBEAgA0GEAWoQ0hcgAygCiAEhEAsgECASaiIFIAI2AgAgBUEEaiAHNgIAIAVBCGogA0HIAWpBMBD7BhogAyAIQQFqIgg2AowBIAQQyg0iAgRAIAIoAgBBDkYNAwsgBBDKDSICBEAgAigCAEEQRg0CCyADQZgBaiAEEJEQIANBGGogBBCFFCADQajF4AA2ApQBIANBNDoAkAEgAygCGCADKAIcIANBkAFqEIEVIQIgBBDKDSIERQ0AIAQoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQUgASABKALMAhD/CwsgAEEHNgIAIAAgAjYCBCADQYQBahCJJwwOCyALIAYpAgA3AgAgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIAtBCGogBkEIaikCADcCACALQRBqIAZBEGooAgA2AgAgAyACNgKQASADQZABahDGCiAEEMoNIgINAQsgEkE4aiESDAELC0EBIBEgAigCAEEORiICGyERIAEpA5gDIBogAhshGgwBCwtB5ezgAEEoQdys4AAQ9BcACyABKALMAiEBIABBBzYCACAAIAE2AgQMBwtB5ezgAEEoQdyE4AAQ9BcAC0Hl7OAAQShBzITgABD0FwALIAMoApQBIQULIABBBzYCACAAIAU2AgQgA0HgAGoQiCcMBQtB5ezgAEEoQbyE4AAQ9BcAC0Hl7OAAQShBnIXgABD0FwALIANBnAFqIAQQkRAgAyAEEIUUIANBHDYCmAEgA0GsheAANgKUASADQTA6AJABIAMoAgAgAygCBCADQZABahCBFSECAkAgBBDKDSIERQ0AIAQoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRGBEAgASABKALMAhD/CwwBC0Hl7OAAQShByIXgABD0FwALIABBBzYCACAAIAI2AgQMAgsgA0HgAGoQhyUMAQsgACADKQJgNwIEIAAgAjoAHCAAQQA2AhggAEEBNgIAIABBDGogA0HoAGooAgA2AgAgACAMIAEoApwDIgEgASAMSRs2AhQgACAMIAEgASAMSxs2AhALIANBgANqJAALwioDHn8CfgF8IwBBoARrIgIkACAAIAEQuhogAkHYAGogAUGIAWoiAygCADYCACADQQA2AgAgASkCgAEhICABQoCAgICAATcDgAEgASkCjAEhISABQoCAgIDAADcCjAEgAUGUAWoiAygCACEGIANBADYCACACQegAaiAGNgIAIAIgIDcDUCACICE3A2AgAUGMAWohCiABQYABaiEMIABBDGohEyAAKAIQIgcgACgCFEHYAGxqIRQgAkGoAmohFSACQbwDaiERIAJBmAFqIRYDQAJAAkACQAJAAkACQCAUIAciA0cEQCADQdgAaiEHAkAgAygCACIGQQRrQQAgBkEFa0EISRtBAWsOCAcGBQQICAMCAAsgAygCSEEGdCEXIAMoAkQhGkEAIQgDQAJAAn8CQCAIIBdHBEAgCCAaaiIGKAIAQQdHDQMgBkEIaiEJIAZBHGoiEi0AAEECRwRAIAJBQGsgCSkDACAGQRhqKAIAEMAjIAIoAkghBCACKQNAISAgAkHIA2oiDSAJENYbQQAhCyACQQA2ApADIAIgAikD0AM3A6ADIAIgAikDyAM3A5gDIBYgCRDWGyACQRo2ApABIAJBsANqIAkQ1htBACEFIAZBIGooAgAiDwRAEPciIQUgDykCBCEhEPAiIQ4gDSAPKAIAEKgBIA4gDUHYABD7BiENIAUgITcCBCAFIA02AgAL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CGooAgAQxBUgAyACKQLIAzcCACACIAQ6ANQDIANBCGogAkHQA2opAgA3AgAgBykDGBC6IyEhIAIgAzYCgAIgAiAhNwP4ASACICA3A/ABIAJBBDYC6AEMBgsgBygCDCEDQQBBABC+ERCKBCENAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgAygCAEEMayIIIAhBJk8bQQFrDiUBAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlAAsgA0EIaiEFIANBBGohBAwlCyADQRRqIQUgA0EQaiEEDCQLIANBFGohBSADQRBqIQQMIwsgAygCICIIQTRqIQUgCEEwaiEEDCILIANBDGohBSADQQhqIQQMIQsgA0EIaiEFIANBBGohBAwgCyADQRBqIQUgA0EMaiEEDB8LIANBNGohBSADQTBqIQQMHgsgA0EkaiEFIANBIGohBAwdCyADQSRqIQUgA0EgaiEEDBwLIANBFGohBSADQRBqIQQMGwsgA0EgaiEFIANBHGohBAwaCyADQRhqIQUgA0EUaiEEDBkLIANBFGohBSADQRBqIQQMGAsgA0EUaiEFIANBEGohBAwXCyADQQhqIgggAygCCEECdCIEQaDx4wBqKAIAaiEFIAggBEGE8eMAaigCAGohBAwWCyADQSBqIQUgA0EcaiEEDBULIANBEGohBSADQQxqIQQMFAsgA0EYaiEFIANBFGohBAwTCyADKAIgIghBKGohBSAIQSRqIQQMEgsgA0EIaiEFIANBBGohBAwRCyADQQhqIQUgA0EEaiEEDBALIANBDGohBSADQQhqIQQMDwsgA0EMaiEFIANBCGohBAwOCyADQRxqIQUgA0EYaiEEDA0LIANBLGohBSADQShqIQQMDAsgA0EIaiEFIANBBGohBAwLCyADKAIEIgRBBGohBQwKCyADQRRqIQUgA0EQaiEEDAkLIANBEGohBSADQQxqIQQMCAsgA0EMaiEFIANBCGohBAwHCyADQQxqIQUgA0EIaiEEDAYLIANBEGohBSADQQxqIQQMBQsgA0EQaiEFIANBDGohBAwECyADQRBqIQUgA0EMaiEEDAMLIANBFGohBSADQRBqIQQMAgsg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B0EFdGo2AqQCIAMgCjYCnAIgB0UNBiANIApBCGopAwA3AwAgCSAKQRBqKQMANwMAIAMgCkEgajYCnAIgAyAKKQMANwPgASADIAooABk2AtgCIAMgCkEcaigAADYA2wIgCi0AGCIHQQJGDQYgBCADKADbAjYAACADQZADaiIFIAkpAwA3AwAgA0GIA2oiBCANKQMANwMAIAMgAykD4AE3A4ADIAMgBzoAmAMgAyADKALYAjYAmQMgA0HAAmogDxC9DSADKQOAAyAFKQMAEJstIAMoAsACQYCAgIB4Rg0GIANBsAJqIANByAJqIgYoAgA2AgAgAyADKQLAAjcDqAIgBCADQaACaikCADcDACADIAMpApgCNwOAAyADQQA2AqgDIANCADcDoAMgAyAIIAtBAnQiC2o2ApwDIAMgDjYCmAMgAyAINgKUAyADIAg2ApADIAMoAoQDIQcgAygCjAMhDCADQfkBaiIKQQNqIQ8DQAJAAkAgByAMRg0AIAMgB0EgaiIFNgKEAyAHLQAYIg5BAkYNACALDQEgBykDACAHKQMQEJstCyADQYADahCnKSADQagCahCmGSEZIABBADYCACAAIBk3AwggA0GIAmoQmiAMCQsgBiAHQQhqKQMAIhs3AwAgA0HQAmogB0EQaikDACIaNwMAIAMgCEEEaiIENgKUAyADIAcpAwAiGTcDwAIgAyAHKAAZNgK4AiADIAdBHGooAAA2ALsCIAgoAgAhByAJIBo3AwAgDSAbNwMAIAogAygCuAI2AAAgDyADKAC7AjYAACADIBk3A+ABIAMgDjoA+AEgA0HYAmogASAHEFYCQAJAAkACQCADKALYAiIODgIBAgALIAAgAykDiAI3AwAgAEEIaiADQZACaikDADcDACADQdgCahCaICADKQPgASADKQPwARCbLSADQYADahCnKSADKAKoAiADKAKsAhDaKQwLCyADIAMpA+ACNwP4AiADQewCaiADQfgCahC9DSADKQP4AhD5GgwBCyADQewCaiADKwPgAhCyAQsgA0GoAmoiCCADKALwAiIHIAMoAvQCEPYdIANBQGsgA0HgAWoQlAwgCCADKAJAIAMoAkQQ9h0gAygC7AIgBxDaKSAOBEAgA0HYAmoQmiALIAMpA+ABIAMpA/ABEJstIAtBBGshCyAEIQggBSEHDAALAAsgAysD+AEhESADKwPoASEQIARBCGsOEBYVFBMSERAPDg0MGRkZGQsZCyAAQQE2AgAgACACKwMYOQMIIAIpAyAQ7SYMAgsgAEEANgIAIAAgAikDEDcDCCACKQMgEO0mDAELIANBOGogAkEIaiIIEJQMAkAgAygCOCADKAI8QeTF3wBBAxCOKgRAIAIoAhggASgCCEYNAQsgA0EwaiAIEJQMAkAgAygCMCADKAI0QbS84ABBCBCOKgRAIAIoAhggASgCCEYNAQsgASgCBCEEIANBIGogASgCACIHKQMAIAdBCGooAgAQwCMgAykDICEZIAMoAighASADIAgpAwAQ/Bo3A/ABIAMgATYC6AEgAyAZNwPgASADQcACaiIFIAQgA0HgAWoQgSQQmiMCQAJAAkAgAygCwAIiBEEERwRAQQIhCyAEQQJJDQEgA0EQaiAHKQMAIAdBCGooAgAQwCMgAygCGCEEIAMpAxAhGyADQYADaiIBIAgQ1hsgAykDgAMhGiADKQOIAyEZIAMgGyAEEMQYNgKgAyADQgA3A5gDIAMgGTcDkAMgAyAaNwOIAyADQQA2AoADIAEQ3xshASAFEJogDAILIABBAjYCACAAIAI2AgQMAgsgAykDyAIhGyADKALEAiEBIAQhCwsgACAbNwMIIAAgATYCBCAAIAs2AgAgAyACNgKAAyADQYADahCmKQsgAykD4AEgAykD8AEQiysMIwsgAEKAgICAgICA+P8ANwMIIABBATYCACAIKQMAEPkaDAELIABCgICAgICAgPz/ADcDCCAAQQE2AgAgCCkDABD5GgsgAigCAEEQayIAQRNLDRxBASAAdEGVqCBxDR4gAEELRg0bDBwLIAAgASACKAIEEFYgAigCAEEQayIAQRNLDRtBASAAdEGVqCBxDR0gAEELRg0aDBsLIAAgAykDiAI3AwAgAEEIaiADQZACaikDADcDACADQZgCahCVFSADQZgBahDoJgsgAigCAEEQayIAQRNLDRlBASAAdEGVqCBxDRsgAEELRw0ZDBgLIAYoAgBBGkYEQCABKAIEIQEgAyAGKQMIIhkgBigCGBDAIyADIBs3A5ADIAMgAygCCDYCiAMgAyADKQMANwOAAyADQeABaiABIANBgANqEIEkEJojAkACQAJAAkAgAygC4AEiAUEDaw4CAAECCyADQeABahCaIAsgACADKQPA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BSAKNwIAIAJB2ANqIgYgCjcCACACIAs3AsADIAIgCzcC0AMgAkEAOgDgAyACQQA2ArgDIAMgBxClIyACQYACaiAFKQIAIg03AwAgAkGQAmogBikCACIMNwMAIAJBsANqIAw3AwAgAiACKQLAAyIMNwP4ASACIAIpAtADIg43A4gCIAJBoANqIA03AwAgAiAONwOoAyACIAw3A5gDIAMgAkGIA2oQ2AsgAkHwA2oiBSACQagDahDYCyACIAJBmANqNgLoAyACQeACaiAKNwMAIAIgCzcD2AIgBCADEMMOIAJB2AJqIAIoAvgBIAJB6AJqEP0hIAIoAtgDQYGAgIB4RwRAIAQgA0EwEPsGGgNAAkAgAkEwaiACQfgBahDcFCACKQMwIgpQDQAgAigCOCEDIAIgCjcD8AIgAiADNgL4AiACQZgDaiACQfACahD0CQRAIAIpA/ACEPkaBSACQdgCaiAKEMAJCwwBCwtCABDtJiACQfgBahC1FAsgAigCkARBgYCAgHhHBEAgAkH4AWogBUEwEPsGGgNAIAJBIGogAkH4AWoQ3BQgAikDICIKUEUEQCACQdgCaiAKEMAJDAELC0IAEO0mIAJB+AFqELUUCyACQYACaiACQeACaikDADcDACACIAIpA9gCNwP4ASACQZgDahDvCiACQcgCaiACQfgBahChByACQbADaiACQdACaikCADcDACACIAIpAsgCNwOoAwJAIAEoAhwiBUUNACACQagDahC2EyEGIAgoAgAiBCkDACAGIAVBAWpBAXYgBSAGKAIMGyAGQRBqEP0hIARBCGohA0J/hUKAgYKEiJCgwIB/gyEKA0AgClBFBEAgBiAEIAp6p0EBdEHwAXFrQRBrKQMAEPwaEMAJIAVBAWshBSAKQgF9IAqDIQoMAQsgBUUNASAEQYABayEEIAMpAwBCf4VCgIGChIiQoMCAf4MhCiADQQhqIQMMAAsACyABKAJMIgMEQCACQagDahC2EyACIAM2AtADIAIgASgCQCIDNgLIAyACIANBCGo2AsADIAIgAyABKAJEakEBajYCxAMgAiADKQMAQn+FQoCBgoSIkKDAgH+DNwO4AyACQbgDahC/DAsgAkEANgLIAyACQcADakHIoOMAKQMANwMAIAJBwKDjACkDADcDuAMgAkHMAWogAkG4AmogAUEwaiACQbgDaiID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IAJBCGogBUEIaigCADYCACACIAUpAgA3AwAgAUEsaiACEKEQIAFBHGogAiACQYABakEsEPsGEKEaCyAEQeAAaiABEOEjDAcLIABBBGogARDXLCAAQQhqIAEQ7iwMBgsgAEEEaiABENcsIABBCGogARDuLAwFCyACQRRqQcig4wApAwAiCDcCACACQQA7AT4gAkEANgI0IAJCgICAgIABNwIsIAJBAToAKCACQQA2AiQgAkKAgICAwAA3AhwgAkEANgIIIAJCgICAgIABNwIAIAJBwKDjACkDACIJNwIMIAIgAS8BPDsBPCACIAEoAjg2AjgCQCAAKAIEIgRBAkYNACAAQQhqIQMgBEEBcUUEQCADIAIQ7ywMAQsgAyACENcsCyACQSxqIQQgAkEcaiEFIABBGGogAhC/JSAAQRxqIAIQvyUgAkGUAWogCDcCACACIAk3AowBIAJBADsBvgEgAiACLwE8OwG8ASACIAIoAjg2ArgBIAJBADYCtAEgAkKAgICAgAE3AqwBIAJBAToAqAEgAkEANgKkASACQoCAgIDAADcCnAEgAkEANgKIASACQoCAgICAATcCgAEgAkGAAWogACgCDBDWICACQawBaiEGAkACQCACKAK0ASIABEAgAkEMaiAAEIQpIAJBxABqIAIoArABIAIoArQBEKEKIAIgAigCRDYCWCACIAIoAkgiADYCUCACIAAgAigCTEEEdCIDaiIHNgJcA0AgA0UNAiACQYABaiAAKQMAIAAoAggQqxEgA0EQayEDIABBEGohAAwACwALIAJB0ABqIgAgAkGAAWpBLBD7BhogBSAAEKEaIAYQjiMMAQsgAiAHNgJUIAJB0ABqEIkXIAItAChFBEAgAiACKAK0ARCWHiACIAIoAqwBNgJYIAIgAigCsAEiADYCUCACIAAgAigCtAFBBHQiA2oiBjYCXANAIAMEQCACIAApAwAgACgCCEEBEJsGIANBEGshAyAAQRBqIQAMAQsLIAIgBjYCVCACQdAAaiIAEIkXIAAgAkGAAWpBLBD7BhogBSAAEKEaDAELIAJB2ABqIAZBCGooAgA2AgAgAiAGKQIANwNQIAQgAkHQAGoiABChECAAIAJBgAFqQSwQ+wYaIAUgABChGgsCQCACKAI0IgAEQCABQQxqIAAQhCkgAkHQAGogAigCMCACKAI0EKEKIAIgAigCUDYCiAEgAiACKAJUIgA2AoABIAIgACACKAJYQQR0IgNqIgU2AowBA0AgA0UNAiACIAApAwAgACgCCBCrESADQRBrIQMgAEEQaiEADAALAAsgAkGAAWoiACACQSwQ+wYaIAFBHGogABChGiAEEI4jDAULIAIgBTYChAEgAkGAAWoQiRcgAS0AKEUEQCABIAIoAjQQlh4gAiACKAIsNgKIASACIAIoAjAiADYCgAEgAiAAIAIoAjRBBHQiA2oiBDYCjAEDQCADBEAgASAAKQMAIAAoAghBARCbBiADQRBrIQMgAEEQaiEADAELCyACIAQ2AoQBIAJBgAFqIgAQiRcgACACQSwQ+wYaIAFBHGogABChGgwFCyACQYgBaiAEQQhqKAIANgIAIAIgBCkCADcDgAEgAUEsaiACQYABaiIAEKEQIAAgAkEsEPsGGiABQRxqIAAQoRoMBAsgAkEUakHIoOMAKQMAIgg3AgAgAkEAOwE+IAJBADYCNCACQoCAgICAATcCLCACQQE6ACggAkEANgIkIAJCgICAgMAANwIcIAJBADYCCCACQoCAgICAATcCACACQcCg4wApAwAiCTcCDCACIAEvATw7ATwgAiABKAI4NgI4IABBBGogAhC5HCAAQQxqIAIQ1ywgAkGUAWogCDcCACACIAk3AowBIAJBADsBvgEgAiACLwE8OwG8ASACIAIoAjg2ArgBIAJBADYCtAEgAkKAgICAgAE3AqwBIAJBAToAqAEgAkEANgKkASACQoCAgIDAADcCnAEgAkEANgKIASACQoCAgICAATcCgAEgAkGAAWogACgCEBDWICACQawBaiEFIAJBLGohBCACQRxqIQYCQAJAIAIoArQBIgAEQCACQQxqIAAQhCkgAkHEAGogAigCsAEgAigCtAEQoQogAiACKAJENgJYIAIgAigCSCIANgJQIAIgACACKAJMQQR0IgNqIgc2AlwDQCADRQ0CIAJBgAFqIAApAwAgACgCCBCrESADQRBrIQMgAEEQaiEADAALAAsgAkHQAGoiACACQYABakEsEPsGGiAGIAAQoRogBRCOIwwBCyACIAc2AlQgAkHQAGoQiRcgAi0AKEUEQCACIAIoArQBEJYeIAIgAigCrAE2AlggAiACKAKwASIANgJQIAIgACACKAK0AUEEdCIDaiIFNgJcA0AgAwRAIAIgACkDACAAKAIIQQEQmwYgA0EQayEDIABBEGohAAwBCwsgAiAFNgJUIAJB0ABqIgAQiRcgACACQYABakEsEPsGGiAGIAAQoRoMAQsgAkHYAGogBUEIaigCADYCACACIAUpAgA3A1AgBCACQdAAaiIAEKEQIAAgAkGAAWpBLBD7BhogBiAAEKEaCwJAIAIoAjQiAARAIAFBDGogABCEKSACQdAAaiACKAIwIAIoAjQQoQogAiACKAJQNgKIASACIAIoAlQiADYCgAEgAiAAIAIoAlhBBHQiA2oiBTYCjAEDQCADRQ0CIAIgACkDACAAKAIIEKsRIANBEGshAyAAQRBqIQAMAAsACyACQYABaiIAIAJBLBD7BhogAUEcaiAAEKEaIAQQjiMMBAsgAiAFNgKEASACQYABahCJFyABLQAoRQRAIAEgAigCNBCWHiACIAIoAiw2AogBIAIgAigCMCIANgKAASACIAAgAigCNEEEdCIDaiIENgKMAQNAIAMEQCABIAApAwAgACgCCEEBEJsGIANBEGshAyAAQRBqIQAMAQsLIAIgBDYChAEgAkGAAWoiABCJFyAAIAJBLBD7BhogAUEcaiAAEKEaDAQLIAJBiAFqIARBCGooAgA2AgAgAiAEKQIANwOAASABQSxqIAJBgAFqIgAQoRAgACACQSwQ+wYaIAFBHGogABChGgwDCyACQRRqQcig4wApAwAiCDcCACACQQA7AT4gAkEANgI0IAJCgICAgIABNwIsIAJBAToAKCACQQA2AiQgAkKAgICAwAA3AhwgAkEANgIIIAJCgICAgIABNwIAIAJBwKDjACkDACIJNwIMIAIgAS8BPDsBPCACIAEoAjg2AjggAEEEaiACELkcIABBDGogAhDXLCACQZQBaiAINwIAIAIgCTcCjAEgAkEAOwG+ASACIAIvATw7AbwBIAIgAigCODYCuAEgAkEANgK0ASACQoCAgICAATcCrAEgAkEBOgCoASACQQA2AqQBIAJCgICAgMAANwKcASACQQA2AogBIAJCgICAgIABNwKAASACQYABaiAAKAIQENYgIAJBrAFqIQUgAkEsaiEEIAJBHGohBgJAAkAgAigCtAEiAARAIAJBDGogABCEKSACQcQAaiACKAKwASACKAK0ARChCiACIAIoAkQ2AlggAiACKAJIIgA2AlAgAiAAIAIoAkxBBHQiA2oiBzYCXANAIANFDQIgAkGAAWogACkDACAAKAIIEKsRIANBEGshAyAAQRBqIQAMAAsACyACQdAAaiIAIAJBgAFqQSwQ+wYaIAYgABChGiAFEI4jDAELIAIgBzYCVCACQdAAahCJFyACLQAoRQRAIAIgAigCtAEQlh4gAiACKAKsATYCWCACIAIoArABIgA2AlAgAiAAIAIoArQBQQR0IgNqIgU2AlwDQCADBEAgAiAAKQMAIAAoAghBARCbBiADQRBrIQMgAEEQaiEADAELCyACIAU2AlQgAkHQAGoiABCJFyAAIAJBgAFqQSwQ+wYaIAYgABChGgwBCyACQdgAaiAFQQhqKAIANgIAIAIgBSkCADcDUCAEIAJB0ABqIgAQoRAgACACQYABakEsEPsGGiAGIAAQoRoLAkAgAigCNCIABEAgAUEMaiAAEIQpIAJB0ABqIAIoAjAgAigCNBChCiACIAIoAlA2AogBIAIgAigCVCIANgKAASACIAAgAigCWEEEdCIDaiIFNgKMAQNAIANFDQIgAiAAKQMAIAAoAggQqxEgA0EQayEDIABBEGohAAwACwALIAJBgAFqIgAgAkEsEPsGGiABQRxqIAAQoRogBBCOIwwDCyACIAU2AoQBIAJBgAFqEIkXIAEtAChFBEAgASACKAI0EJYeIAIgAigCLDYCiAEgAiACKAIwIgA2AoABIAIgACACKAI0QQR0IgNqIgQ2AowBA0AgAwRAIAEgACkDACAAKAIIQQEQmwYgA0EQayEDIABBEGohAAwBCwsgAiAENgKEASACQYABaiIAEIkXIAAgAkEsEPsGGiABQRxqIAAQoRoMAwsgAkGIAWogBEEIaigCADYCACACIAQpAgA3A4ABIAFBLGogAkGAAWoiABChECAAIAJBLBD7BhogAUEcaiAAEKEaDAILIABBCGogARD7AgwBCyAAQQRqIAEQ1ywLIAJBwAFqJAALhSMCF38IfiMAQbACayIDJAACQAJAIAIoAgQiBSACKAIIIgRB//0DEOUYRQ0AQQMgBEGcy9gAEPcgGgJAIARBBE8EQCAFLAADQb9/Sg0BDAMLIARBA0cNAiACQQA2AggMAQsgAkEANgIIIAUgBUEDaiAEQQNrIgQQ2i0aIAIgBDYCCAtBFEEEEKsgIg5CgYCAgBA3AgAgDiACKQIANwIIIA5BEGogAkEIaigCADYCACABIAEoAgAiAkEBajYCACADIAE2AiwCQCACQQBIDQAgASICKAIIIhdBAkYEQCAAKAJQIhggACgCVEEYbGohEyADQbkBaiEVIANB+QFqIRQgAigCFCEPIAIoAhAhEQJAA0AgGCATIgxHIhlFBEAgA0HwAWogESAPEP0TDAILIAxBEGsoAgAhAkEAIQggDwRAIBEtAABBL0YhCAsgDEEUaygCACEEIAxBGGshEyADIAIEfyAELQAAQS9GBUEACzoAzgFBBiEFIANBBjoAuAEgAyACNgK0ASADIAQ2ArABIANBgAQ7AcwBQQAhCkECIQkgDyEEIBEhBgJAA0AgBUH/AXEiDUEGRiIQRQRAIANBpwFqIANB1wBqKAAANgAAIANBoAFqIANB0ABqKQAANwMAIAMgAykASDcDmAELIBQgAykDmAE3AAAgFEEIaiISIANBoAFqKQMANwAAIBRBD2oiFiADQacBaigAADYAACADIAU6APgBIAMgBDYC9AEgAyAGNgLwASADIAg6AI4CIAMgCToAjQIgAyAKOgCMAiADQeAAaiADQfABahCCAyADQfwAaiADQbABahCCAyADLQB8IQICQAJAAkAgAy0AYCILQQpGBEAgAkEKRg0BDAMLIAJBCkcNAQsgA0E/aiICIANB1wBqKAAANgAAIANBOGoiCyADQdAAaikDADcDACADIAMpA0g3AzBBACEHIAhBAkYNAyAQRQRAIANB/wFqIAIoAAA2AAAgA0H4AWogCykDADcDACADIAMpAzA3A/ABCyAVIAMpA/ABNwAAIBVBCGogA0H4AWopAwA3AAAgFUEPaiADQf8BaigAADYAACADIAU6ALgBIAMgBDYCtAEgAyAGNgKwASADIAg6AM4BIAMgCToAzQEgAyAKOgDMAQJAIApBAkcEQCAGIQcMAQsgBEUEQEEAIQQgBiEHDAULAkACQAJAIA1BA08EQCAGIQcDQEEAIQICfwNAQQEgAiAHai0AAEEvRg0BGiAEIAJBAWoiAkcNAAsgBCECQQALIQUCQAJAIAIOAgEABQsgBy0AAEEuRw0ECyACIAVqIgIgBE0EQCACIAdqIQcgBCACayIEDQEMAwsLIAIgBEHMsdgAEK0QAAsgBCAGaiEHA0BBACECAkADQCACIAZqLQAAQS9GDQEgBCAC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QQI2AqABIAMgA0GgAWo2AvABIAMgA0GQAWo2AugBIANB7ABqIANB4AFqEPAkGgwRCyAMDQcgCkEBcUUEQCADQewAaiABEOsPDBELIANBzAA2ApQBIAMgATYChAEgA0EBNgL0ASADQQI2AuQBIANBsODYADYC4AEgA0EBNgLsASADIANBhAFqNgKQASADQQM6ALwBIANBCDYCuAEgA0IgNwKwASADQoCAgIDAADcCqAEgA0ECNgKgASADIANBoAFqNgLwASADIANBkAFqNgLoASADQewAaiADQeABahDwJBoMEAsgDQ0LIANB7ABqIAEQ6w8MDwsgA0HgAWoiASADKAJwIAMoAnRBJ0GW4dgAENAGIANBBTYClAEgA0ECNgKkASADQZjh2AA2AqABCyADQgE3AqwBIAMgATYCkAEgAyADQZABajYCqAEgA0HgAGogA0GgAWoQgBUgAygC4AEgAygC5AEQ2ikgAygCbCADKAJwENopIAItAFBFDQggAygCZCEEIAMoAmghASADQQg2AnggAyABNgL8ASADIAQ2AvgBIANBADYC8AEgAyABIARqNgLsASADIAQ2AugBIANBAjYC4AEgAyADQfgAajYC9AEgA0EQaiADQegBaiIFEOUGIAMgAygCFDYC5AEgAyADKAIQIgY2AuABIAZBAXEEQCADQQhqIAEQ/xQgAygCCCEHIAMoAgwiBiAEIAEQ+wYhBCADIAE2ApgBIAMgBDYClAEgAyAHNgKQASADQbgBaiADQfgBaikCADcDACADQbABaiADQfABaikCADcDACADQagBaiIHIAUpAgA3AwAgAyADKQLgATcDoAEgA0EANgLAAQNAIAMoAqABIQQgA0ECNgKgAQJ/IARBAkcEQCADKAKkAQwBCyADIAcQ5QYgAygCACEEIAMoAgQLIQUgBEUNByADIAMoAsABIghBAWoiBDYCwAECQCAEIAVqIgRFDQAgASAESwRAIAQgBmosAABBv39KDQEMCwsgASAERw0KCyADKAKQASABRgRAIANBkAFqIAFBARDWCiADKAKUASEGCyAEIAZqIgRBAWogBCAFIAhqQX9zIAFqENotGiAEQdwAOgAAIAMgAUEBaiIBNgKYAQwACwALQYCAgIB4IQUgBAwGCyADQeABaiIBEMkeGiABEKIdIQEMCQsgA0EBNgKkASADQeTf2AA2AqABIANCATcCrAEgA0HgATYC5AEgAyABOgCQASADIANB4AFqNgKoASADIANBkAFqNgLgASADQewAaiADQaABahDwJBoMCwsgA0EBNgKkASADQYjf2AA2AqABIANCATcCrAEgA0HgATYC5AEgAyABOgCQASADIANB4AFqNgKoASADIANBkAFqNgLgASADQewAaiADQaABahDwJBoMCgsgA0HsAGogARDrDwwJCyADIAFBgIAEa0EKdkGAsANqNgKMASADIAFB/wdxQYC4A3I2AoQBIANBzAA2ApwBIANBzAA2ApQBIANBAjYC9AEgA0ECNgLkASADQYTh2AA2AuABIAMgA0GEAWo2ApgBIAMgA0GMAWo2ApABIANBAzoA3AEgA0EINgLYASADQqCAgIAQNwLQASADQoCAgIDAADcCyAEgA0ECNgLAASADQQM6ALwBIANBCDYCuAEgA0IgNwKwASADQoCAgIDAADcCqAEgA0ECNgKgASADIANBoAFqNgLwASADQQI2AuwBIAMgA0GQAWo2AugBIANB7ABqIANB4AFqEPAkGgwICyADKAKQASEFIAMoAmQhBCADKAKUAQsiBiABQeC54ABBBEHkueAAQQcQrgsgA0HgAWogAygCpAEiASADKAKoAUHrueAAQQNB7rngAEEGEK4LIAMoAmAgBBDaKSADQegAaiADQegBaigCADYCACADIAMpAuABNwNgIAMoAqABIAEQ2ikgBSAGELYkDAELQbjd2ABBLEHk3dgAEPQXAAsgA0GgAWogAkEAQQAgAygCZCIBIAMoAmgQkw8CQCADLQCgAUEERwRAIAMpA6ABIg5C/wGDQgRSDQELIAMoAmAgARDaKSAAQQQ6AAAMBwsgACAONwIAIAMoAmAgARDaKQwGCyADQQE2AqQBIANBiN/YADYCoAEgA0IBNwKsASADQeABNgLkASADIAE6AJABIAMgA0HgAWo2AqgBIAMgA0GQAWo2AuABIANB7ABqIANBoAFqEPAkGgwDCwJAAkACQAJAIAEEQCABKAIAQSByQeQARg0BCyAJDQEgA0HsAGpB3AAQ6w8MBgsgA0EANgKoASADQoCAgIAQNwKgASADQaABaiIEQdwAEOsPIARB9QAQ6w8gCQ0BDAILIANB7ABqQZDg2ABBAhD2HQwECyADQaABakH7ABDrDwsgA0Gg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BUHI6+AAENQmAAsgA0GUAWogC0HQAGoiBkEIaigCACIENgIAIANBiAFqIAQ2AgAgAyAGKQIAIhw3AowBIAMgHDcDgAEgA0EKNgLAASAIIAEoAgQgBSADQYABaiADQcABahCaDwwDCyADQUBrIAkgCkE6EOwGQQEhBSADKAJAQQFGBEAgA0EgaiAJIAogAygCRCIBQbytxAAQqBUgA0GAAWogAygCICADKAIkELoRIANBGGogCSAKIAFBAWpBzK3EABDJFCADQcABaiADKAIYIAMoAhwQuhEgAzUCiAEgAzUCwAFCIIaEIRwgAykCxAEhHSADKAKEASEHIAMoAoABIQEgA0HgAGoMAgsgA0E4aiAJIApBPRDsBiADKAI4QQFGBEAgA0EwaiAJIAogAygCPCIBQdytxAAQqBUgA0GAAWogAygCMCADKAI0ELoRIANBKGogCSAKIAFBAWpB7K3EABDJFCADQcABaiADKAIoIAMoAiwQuhEgAzUCiAEgAzUCwAFCIIaEIRwgAykCxAEhHSADKAKEASEHIAMoAoABIQFBACEFIANB4ABqDAILIANBwAFqIAkgChC6ESADKQLEASEcIAMoAsABIQdBACEFQYGAgIB4IQEgA0HgAGoMAQsgA0EQaiAJIAogB0GcrcQAEKgVIANBgAFqIAMoAhAgAygCFBC6EUECIQUgA0EIaiAJIAogB0ECakGsrcQAEMkUIANBwAFqIAMoAgggAygCDBC6ESADNQKIASADNQLAAUIghoQhHCADKQLEASEdIAMoAoQBIQcgAygCgAEhASADQeAAagshBiADQaABaiIEIAZBCGooAgAiCTYCACADQawBaiALQdgAaigCADYCACAIIAU6ABwgCCAdNwIUIAggHDcCDCAIIAc2AgggCCABNgIEIAggBikCACIcNwIgIANBuAFqIAk2AgAgAyALKQJQNwKkASAIQShqIAQpAwA3AgAgCEEwaiADQagBaikDADcCACADIBw3A7ABIAMgHDcDmAEgCEEiNgIAIAggE0HQAEY6ADgLIBEgESgCAEEBajYCACADQYACaiQAIAIoAqQCIQEgAkGYAWoiBSACQagCakE4EPsGGiABQSJGDQQgAigC4AIhBiAAQQRqIAVBOBD7BhogACAGNgI8DAULIAJBmANqIAEQ6AogAkGcAmogAkGsA2ooAgA2AgAgAkGQAmogAkEYaigCADYCACACIAIpAqQDNwKUAiACIAIpAxA3A4gCIAJBIDYCmAEgAkGkAmoiBSABKAIEIAEoAgggAkGIAmogAkGYAWoQmg8gACAFQcAAEPsGGgweC0EBIAN0QeubgIABcUUNBgwHCyAELQBlRQRAIAJBmANqIAEQ6AogAkGcAmogAkGsA2ooAgA2AgAgAkGQAmogAkEYaigCADYCACACIAIpAqQDNwKUAiACIAIpAxA3A4gCIAJBIDYCmAEgAkGkAmoiBSABKAIEIAEoAgggAkGIAmogAkGYAWoQmg8gACAFQcAAEPsGGgwdCyACQSBqIQYjAEEgayIFJAACQAJAIAEoAgAiBC0AZQRAIAEQwQxBMEkNASABEMEMQThPDQEgBCkCVCEcIAQoAlAhAwNAIAEQ+AhFDQMgARDBDEEwSQ0DIAEQwQxBN0sNAyAEKAJQIANrQQNJDQALDAILQZioxABBJUHAqMQAEPQXAAtB0KjEAEE6QYypxAAQ9BcACyAEKQJUIR0gBUEIaiABKAIEIAEoAgggAyAEKAJQIgFBnKnEABD2DSAFQRRqIAUoAgggBSgCDEEIEMgEAkACQCAFLQAUQQFHBEAgBSgCGCIEQYCwA3NBgIDEAGtB/4+8f00NASAGQQM6ABwgBiAdNwIUIAYgATYCECAGIBw3AgggBiADNgIEIAYgBDYCACAFQSBqJAAMAgsgBSAFLQAVOgAfQaypxABBEiAFQR9qQbyexABBwKnEABDFDgALQdCpxABBFEHkqcQAELsSAAsgAkEsaiACQRhqKAIANgIAIABCooCAgKCAgICAfzcCACAAQRhqIAJBMGopAgA3AgAgAEEgaiACQThqKQIANwIAIAIgAikDEDcCJCAAIAIpAiA3AgggAEEQaiACQShqKQIANwIADBwLIAJBADYCpAIgAkEMakHQp8QAIAJBpAJqQdSnxAAQ8RoACyACQeAAaiIFIAJBmAFqQTgQ+wYaIAJBhAFqIAJBGGooAgA2AgAgAiACKQMQNwJ8IABBBGogBUE4EPsGGgsgACABNgIADBkLIAJByABqIgMgASkDADcDACACQdAAaiAFKQMAIhw3AwAgAkHYAGogBikDACIdNwMAIAJBzABqIAJBGGooAgA2AgAgAiACKQOYATcDQCAAQYKAgIB4NgIEIABBGGogHDcCACAAQSBqIB03AgAgAiACKQMQNwJEIAAgAikDQDcCCCAAQRBqIAMpAwA3AgALIAAgBDYCAAwXCyAFQdsAa0EESSAFQfsAa0EESXINACAFQTBrQQpJIAVB/wBLciAFQcEAa0EaSSAFQeEAa0EaSXJyRSAFQf0AcUE8R3ENAiAFQTxrDgcPBBAEBAsOAQsgACACKQPwATcCDCAAQQE6ACQgACAFNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMFQsCQCAFQfIAaw4JCAMGAwkDAwMLAAsgBUHhAGsOBgMLAgICBAELIAAgAikD8AE3AgwgAEECOgAkIAAgBTYCCCAAQqKAgICggICAgH83AgAgAEEcaiACQYACaikDADcCACAAQRRqIAJB+AFqKQMANwIADBMLIAVB7gBGDQQLIAJBCzYCmAEgAkGkAmoiBSABKAIEIAEoAgggAkHwAWogAkGYAWoQmg8gACAFQcAAEPsGGgwRCyAAIAIpA/ABNwIMIABBBjsBJCAAQQc2AgggAEKigICAoICAgIB/NwIAIABBHGogAkGAAmopAwA3AgAgAEEUaiACQfgBaikDADcCAAwQCyAAIAIpA/ABNwIMIABBhgI7ASQgAEEMNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMDwsgACACKQPwATcCDCAAQYYEOwEkIABBCTYCCCAAQqKAgICggICAgH83AgAgAEEcaiACQYACaikDADcCACAAQRRqIAJB+AFqKQMANwIADA4LIAAgAikD8AE3AgwgAEGGBjsBJCAAQQo2AgggAEKigICAoICAgIB/NwIAIABBHGogAkGAAmopAwA3AgAgAEEUaiACQfgBaikDADcCAAwNCyAAIAIpA/ABNwIMIABBhgg7ASQgAEENNgIIIABCooCAgKCAgICAfzcCACAAQRxqIAJBgAJqKQMANwIAIABBFGogAkH4AWopAwA3AgAMDAsgACACKQPwATcCDCAAQYYKOwEkIABBCzYCCCAAQqKAgICggICAgH83AgAgAEEcaiACQYACaikDADcCACAAQRRqIAJB+AFqKQMANwIADAsLIAAgAikD8AE3AgggAEECOgAgIABCooCAgLCAgICAfzcCACAAQRhqIAJBgAJqKQMANwIAIABBEGogAkH4AWopAwA3AgAMCgsgACACKQPwATcCCCAAQQM6ACAgAEKigICAsICAgIB/NwIAIABBGGogAkGAAmopAwA3AgAgAEEQaiACQfgBaikDADcCAAwJCyACQZgCaiIKIAJBgAJqKQMANwMAIAJBkAJqIgsgAkH4AWopAwA3AwAgAiACKQPwATcDiAJBBCEFIAEoAggiAyAGKAIARg0HIAEQwQxB+wBHDQcgAiABEMEMIgc2AuQCIAdB+wBHDQQgAkHwAmogBkEIaiIHKAIANgIAIAIgBikCADcD6AIgARC3Hg0DIAJBrANqIAcoAgA2AgAgAkGgA2ogAkEYaigCADYCACACIAIpAxA3A5gDIAIgBikCADcCpAMgAkEeNgKYASACQaQCaiABKAIEIAMgAkGYA2ogAkGYAWoQmg8MBgsgACACKQPwATcCCCAAQQU6ACAgAEKigICAsICAgIB/NwIAIABBGGogAkGAAmopAwA3AgAgAEEQaiACQfgBaikDADcCAAwHCyAAIAIpA/ABNwIIIABBCDoAICAAQqKAgICwgICAgH83AgAgAEEYaiACQYACaikDADcCACAAQRBqIAJB+AFqKQMANwIADAYLIAAgAikD8AE3AgggAEEJOgAgIABCooCAgLCAgICAfzcCACAAQRhqIAJBgAJqKQMANwIAIABBEGogAkH4AWopAwA3AgAMBQsgAkGAA2ogBygCADYCACACIAYpAgA3A/gCIAEQwQwiB0EtRiAHQd///wBxQcEAa0EaSXJFBEAgBiACKQPoAjcCACAGQQhqIAJB8AJqKAIANgIADAQLIAIgBEFAa0Hkp8QAEL8dIAIoAgQhBCACKAIAIgdBADYCCANAAkACQAJAAkAgBigCACADRg0AIAEQwQwiCEEtRiAIQd///wBxQcEAa0EaSXINAyAGKAIAIANGDQAgARDBDEH9AEYNAQsgAkGsA2ogBkEIaigCADYCACACQaADaiACQfACaigCADYCACACIAIpA+gCNwOYAyACIAYpAgA3AqQDIAJBHDYCmAEMAQsgAkGQA2ogBkEIaigCADYCACACIAYpAgA3A4gDIAEQ+AgaIAcoAgQiCCAHKAIIIglBobPEAEEFEOsfBEBBBiEHDAULIAggCUGms8QAQQMQ6x8E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QfgCahCaCkUEQCACQcADaiIGIAJBiANqKQMANwMAIAJBuANqIgMgDikDADcDACACIAIpA/gCNwOwAyAFEIElIAVCADcDACAFIAIpA7ADNwMIIAVBEGogAykDADcDACAFQRhqIAYpAwA3AwAMBAsgAikD+AIQ+RoMAwsgAigCtAEgBUEQahD7BRoMAgsgAigCtAEgBUEQahD7BRoMAQsgFiACQZABahCXJAwNCyAFQcgAaiEFIARByABrIQQMAAsACyACQRRqENkXIAJBCGogABDaFyABEIonIAFBCGogAkEQaigCADYCACABIAIpAgg3AgAgAkHwA2okAA8LIAIoAowBIQcgAigCiAEhCgJAAkACQAJAIAIoAmAOAwECAAwLIAIoAmQiBCgCCCEGIARBADYCCCAEKAIEIQMgBEEINgIEIAQoAgAhCCAEQQA2AgAgAkEANgLAASACQoCAgICAATcCuAEgBiEFIAMhBANAIAVFDQMgAkHAAmoiDSAEQTgQ+wYaIAJBsANqIhsgDUE4EPsGGiACIAJBuAFqNgLsAyACIAJBkAFqIhw2AugDIBsgAkHoA2oQyAkgAigC4AMiDQRAIA0gHBD4AgsgAkH4AmoiDSACQbADakE4EPsGGiAFQQFrIQUgBCANQTgQ+wZBOGohBAwACwALIAJBuAFqIgQgDxDZFSACIBkQtRMiAzYC6AMgAyACQZABaiIFENMFIAJBwAJqIAQQ1hsCQCACKAK0ASAEEPsFRQRAIAJBsANqIgggBBDWGyACQegDahC1EyEGIBIgAikDsAM3AgAgEkEIaiACQbgDaikDADcCACASQRBqIAJBwANqKQMANwIAIAItAIQBIQMgAkHYAGoQsAggDCACKQKIAjcCACAMQQhqIAJBkAJqKQIANwIAIAxBEGogAkGYAmopAgA3AgAgDEEYaiACQaACaigCADYCACACQQA2AmggAkERNgJgIAJBCTYCWCACIAM6AIwBIAIgBjYCiAFB0ABBCBCrICEDIAJB+AJqIAQQ2RUgA0IANwMAIANCADcDICADQgA3A0AgA0HIAGpBADoAACADIAIpA/gCNwMIIANBEGogDikDADcDACADQRhqIAJBiANqKQMANwMAIAMgAikDwAI3AyggA0EwaiACQcgCaikDADcDACADQThqIAJB0AJqKQMANwMAIAtCADcDACALQQhqQQA6AAAgAiADNgK4AyACQQE2ArwDIAIgCjYCwAMgAiAHNgLEAyACQoKAgIAQNwOwAyAFIAgQ/RkMAQsgAikDiAEhHSACQbADaiACQbgBahDZFSACQegDahC1EyEGIBEgAikDsAM3AgAgEUEIaiACQbgDaikDADcCACARQRBqIAJBwANqKQMANwIAIAItAIQBIQMgAkHYAGoQsAggCSACKQLQATcCACAJQQhqIAJB2AFqKQIANwIAIAlBEGogAkHgAWopAgA3AgAgCUEYaiACQegBaigCADYCACACQQA2AmAgAkEBNgJYIAIgHTcDiAEgAiADOgCEASACIAY2AoABIAIpA8ACEPkaCyACQegDahCNFiACKQO4ARD5GgwLCyACQcACaiIEIA8Q2RVByABBBBDXIiIDQgA3AjAgA0GAgICAeDYCGCADQgQ3AhAgA0IANwIIIANCgICAgIABNwIAIANBOGpCADcCACADQT5qQgA3AQAgAigCgAEhBiACIAM2AoABIAYgAkGQAWoiBRC4FSACQfgCaiAEENYbIAIoArQBIAQQ+wVFBEAgAkGwA2oiCCAEENYbIBQgAikDsAM3AgAgFEEIaiACQbgDaikDADcCACAUQRBqIAJBwANqKQMANwIAIAItAIQBIQMgAkHYAGoQsAggDCACKQKkAjcCACAMQQhqIAJBrAJqKQIANwIAIAxBEGogAkG0AmopAgA3AgAgDEEYaiACQbwCaigCADYCACACQQE2AmggAkERNgJgIAJBCTYCWCACIAM6AIwBIAIgBjYCiAFB0ABBCBCrICIDQgA3AwAgA0IANwMgIANCADcDQCADIAIpA8ACNwMIIANBEGogAkHIAmopAwA3AwAgA0EYaiACQdACaikDADcDACADIAIpA/gCNwMoIANBMGogDikDADcDACADQThqIAJBiANqKQMANwMAIANByABqQQA6AAAgAiAHNgLEAyACIAo2AsADIAJBATYCvAMgAiADNgK4AyACQoKAgIAQNwOwAyALQQhqQQA6AAAgC0IANwMAIAUgCBD9GQwLCyATIAIpA8ACNwIAIBNBCGogAkHIAmopAwA3AgAgE0EQaiACQdACaikDADcCACACLQCEASEDIAIpA4gBIR0gAkHYAGoQsAggCSACKQLsATcCACAJQQhqIAJB9AFqKQIANwIAIAlBEGogAkH8AWopAgA3AgAgCUEYaiACQYQCaigCADYCACACQQE2AmAgAkEBNgJYIAIgHTcDiAEgAiADOgCEASACIAY2AoABIAIpA/gCEPkaDAoLIAIoAsABBEAgCRDkFiEEIAIgBjYCuAMgAiADNgK0AyACIAg2ArADIAIgBCkCDDcCvAMgAiAEKAIUNgLEAyACIAQvARg7AcgDIAJBsANqIgYQ1xYhAyACQdgAahCwCCACIAM2AmwgAkECNgJoIAJBETYCYCACQQk2AlggBBDtKCAVQQhqIAJBwAFqKAIANgIAIBUgAikCuAE3AgAgC0IANwMAIAtBCGpBADoAACACIAc2AsQDIAIgCjYCwAMgAkECNgKwAyACQZABaiAGEP0ZDAoLIAkQ5BYhBCACIAY2ArgDIAIgAzYCtAMgAiAINgKwAyACIAQpAgw3ArwDIAIgBCgCFDYCxAMgAiAELwEYOwHIAyACQbADahDXFiEDIAJB2ABqELAIIAIgBzYCjAEgAiAKNgKIASACIAM2AmQgAkECNgJgIAJBATYCWCAEEO0oIAJBuAFqEIojDAkLIBcgAkGQAWoQzgQMCAsgAigCtAEgDxD7BRoMBwsgAigCXCACQZABahD4AgwGCyACKAK0ASACKAJcQShqEPsFGgwFCyAPIAJBkAFqEJckDAQLIAIoAlwgAkGQAWoQ+AIMAwsCQAJAIAIoAmBBAWsOAgEEAAsgAkGQAWogDxDTDAwDCyAPIAJBkAFqEOkfDAILIAIoAnANASACKAJkQdAAbCENQQAhBSACKAJgIQQDQAJAIAUgDUcEQAJAAkACQEICIAQgBWoiBykDACIeQgJ9Ih0gHUICWhunQQFrDgIBAgALIAdBCGogAigCtAEQoiMMAwsgAigCtAEgB0EIahD7BRoMAgsCQAJAIAdBIGoiCikDAEICUQRAIAdBCGohCCACAn4gHqdBAXFFBEAgDiAIENYbQgAMAQsgB0EUaigCACEGIAdBEGooAgAhAyAIKQMAEPwaIR4gAiAHQRhqKQMAIh1QBH5CAAUgHRD8Ggs3A5ADIAIgBjYCjAMgAiADNgKIAyACIB43A4ADQgELIh03A/gCIAcoAgANAiACKAK0ASAIEPsFDQIgHVAEQCAIIA4QmgoNAgsgCyACQZADaikDADcDACACQcADaiIGIAJBiANqKQMANwMAIAJBuANqIgMgDikDADcDACACIAIpA/gCNwOwAyAKEIElIApBGGogCykDADcDACAKQRBqIAYpAwA3AwAgCkEIaiADKQMANwMAIAogAikDsAM3AwAMBAsgByACKAK0ARCiIwwDCyACQfgCahCMIAwCCyACQfgCahCMIAwBCyAWIAJBkAFqEJckDAMLIAVB0ABqIQUMAAsACyACQZABaiAXEJoECyACQbADaiIDIAJB2ABqQTgQ+wYaIAJBCGoiBCADEP0ZIAQgAkGQAWoiAxDaFyADENcpDAALAAvYFwIKfwV+IwBBQGoiAiQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAALQAAQQFrDgUAAQIDBQQLIAJBCGoiBSABKAIAQY294ABBiL3gACAALQABIgAbQQRBBSAAGxDyJCAFEOYYIQEMDAsCQAJAAkAgACgCCEEBaw4CAQIAC0EUIQMgACkDECINQpDOAFQEQCANIQwMDQsDQCACQQhqIANqIgBBBGsgDSANQpDOAIAiDEKQzgB+faciBUH//wNxQeQAbiIEQQF0QbSL2ABqLwAAOwAAIABBAmsgBSAEQeQAbGtB//8DcUEBdEG0i9gAai8AADsAACADQQRrIQMgDUL/wdcvViAMIQ0NAAsMDAtBFCEDIAApAxAiDiAOQj+HIgyFIAx9Ig1CkM4AVARAIA0hDAwLCwNAIAJBCGogA2oiAEEEayANIA1CkM4AgCIMQpDOAH59pyIFQf//A3FB5ABuIgRBAXRBtIvYAGovAAA7AAAgAEECayAFIARB5ABsa0H//wNxQQF0QbSL2ABqLwAAOwAAIANBBGshAyANQv/B1y9WIAwhDQ0ACwwKCyAAKQMQIgxC////////////AINC//////////f/AFgEQCAMQv////////8HgyENIAxCNIinIQAgDEIAUw0FIAJBCGohBQwJCyACQQhqIgAgASgCAEHItuAAQQQQ8iQgABDmGCEBDAsLIAEoAgAgACgCCCAAKAIMEJUcIQEMCgsgASAAQQRqEPcKIQEMCQsgASgCABCWHCEBDAgLIAJBCGogASAAKAIMIgEQog0gAi0ADCIKQQNGDQEgAigCCCEJIAAoAgghAyACIAFBACAAKAIEIgAbIgs2AiggAiADNgIkIAIgADYCICACQQA2AhwgAiAAQQBH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AkHAAWopAwA3AwAgAkEwaiACQcgBaikDADcDACACIC83AxhCAwwBCyAFQQhqKQIAIS8gByAFQRBqENYbIAJBIGogBykDADcDACACQShqIAJBwAFqKQMANwMAIAJBMGogAkHIAWopAwA3AwAgAiAvNwMYQgQLIS8gByACQSBqKQMANwMAIAJBwAFqIhAgAkEoaikDADcDACACQcgBaiINIAJBMGopAwA3AwAgEiATKQMANwMAIAJB8ABqIhQgAkHQAGopAwA3AwAgAkH4AGoiESACQdgAaikDADcDACACIAIpAxg3A7ABIAIgAikDQDcDYCABIA9qIgUgLzcDACAFQQhqIAIpA7ABNwMAIAVBEGogBykDADcDACAFQRhqIBApAwA3AwAgBUEgaiANKQMANwMAIAVBKGogAikDYDcDACAFQTBqIBIpAwA3AwAgBUE4aiAUKQMANwMAIAVBQGsgESkDADcDACAKQQFrIQogAUHIAGohAQwBCwsgAygCEBCbESEFIAMtACAhCyADQRxqEK0OIQwgAy0AISEQDAsLIAMoAjQhCiADKAIwIQ0CQAJAAkACQAJAAkACQAJAAkAgAygCCCIPQQFrDgcBAgMEBQYHAAsgAkGwAWogA0EQahDWGyADLQAsIQEgAiADQShqEP0LNgLIAQwUCyACQbABaiADQRBqENYbIAMtACwhASACIANBKGoQ/gs2AsgBDBMLEO0iIQYgAygCDCIBKAIUIQQgASkCDCEvIAEvARghCSACQbABaiABENEKIAJByAFqIgEgCTsBACAGIAIpArABNwIAIAIgLzcCvAEgBkEIaiAHKQIANwIAIAIgBDYCxAEgBkEQaiACQcABaikCADcCACAGQRhqIAEoAgA2AgAMBQsQ7iIhBiADKAIMIgEtABQhBCABKQIMIS8gAkGwAWogARDRCiAGIAIpArABNwIAIAIgLzcCvAEgBkEIaiAHKQIANwIAIAIgBDoAxAEgBkEQaiACQcABaikCADcCAAwECyADQQxqEJsLIQYMAwsQ7yIhBiADKAIMIgEpAwAhLyABLQAoIQQgByABQQhqENYbIAFBIGoQnw8hCSABQSRqEPcZIQEgAiAEOgDYASACIC83A7ABIAIgATYC1AEgAiAJNgLQASAGIAJBsAFqQTAQ+wYaDAILEO8iIQYgAygCDCIBKQMYIS8g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2AEgARCPKwwBCyAELQCsASECIARB4AFqIANBCGopAwA3AwAgBEHoAWogA0EQaikDADcDACAEQdYBaiAEQa8Bai0AADoAACAEIAQvAK0BOwHUASAEIAMpAwA3A9gBIAQoAowBIQMgASEFCyAAIAM2AgQgACAHNgIAIAAgBCkD2AE3AwggACACOgAkIAAgBTYCICAAIAQvAdQBOwAlIABBEGogBEHgAWopAwA3AwAgAEEYaiAEQegBaikDADcDACAAQSdqIARB1gFqLQAAOgAADA8LIAQoAowBIQEgAEEJNgIAIAAgATYCBAwOCyAEQfABaiABIAQoAiQiASABIANBABCIBCAEKALwASIGQQhHBEAgBEH4AWohAyAEKAKQAiEBAkAgBkUEQCAEQZABaiABQQhqKAIANgIAIARBnAFqIAFBFGooAgA2AgAgBEGoAWogAUEgaigCADYCACAEIAEpAgA3A4gBIAQgASkCDDcClAEgBCABKQIYNwOgASABKQIoIQogASkCMCELIAEoAjghByABLQA8IQggBCgCKCEJQcAAQQQQqyAiAiAEQYgBakEkEPsGIgUgCDoAPCAFIAc2AjggBSALNwIwIAUgCjcCKCAFIAk2AiQgBEHAAWogA0EIaikDADcDACAEQcgBaiADQRBqKQMANwMAIAQgAykDADcDuAEgARCXK0EBIQUMAQsgBC0AlAIhBSAEQcABaiADQQhqKQMANwMAIARByAFqIANBEGopAwA3AwAgBEG2AWogBEGXAmotAAA6AAAgBCAELwCVAjsBtAEgBCADKQMANwO4ASAEKAL0ASEDIAEhAgsgACADNgIEIAAgBjYCACAAIAQpA7gBNwMIIAAgBToAJCAAIAI2AiAgACAELwG0ATsAJSAAQRBqIARBwAFqKQMANwMAIABBGGogBEHIAWopAwA3AwAgAEEnaiAEQbYBai0AADoAAAwOCyAEKAL0ASEBIABBCTYCACAAIAE2AgQMDQsgAhDjDSIDRQRAIAEoAtgCIQEgBEEAOgDwASABIAEgBEHwAWoQgRUhASAAQQk2AgAgACABNgIEDAwLIAMoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBSABKAIsIQEgAEEJNgIAIAAgATYCBAwMCyABKAIoIQMgAUElNgIoIAEgASkDQDcDeCAEQfwBaiABQTRqKQIANwIAIARBhAJqIAFBPGooAgA2AgAgBCABKQIsNwL0ASAEIAM2AvABIARB8AFqEMcKIAIQ4w0iA0UNAyADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQYgASgCLCEBIABBCTYCACAAIAE2AgQMDAsgAhDjDSICRQ0KAkAgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRg0BQeXs4ABBKEGM6d8AEPQXAAsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggBEH8AWogAUEsaiICQQhqKQIANwIAIARBhAJqIAJBEGooAgA2AgAgBCACKQIANwL0ASAEIAM2AvABIARB8AFqEMcKIARBGGogASAEKAIkQQEQfCAEKAIcIQEgBCgCGEEBcUUEQCABKAIAIQIgBEH4AWogAUEMaikCADcDACAEQYACaiABQRRqKAIANgIAIAQgASkCBDcD8AEgAS0ALSEFIAEoAhwhBiABKQIkIQogASgCICEDIAQoAighByABEJkrIANBgICAgHhHDQggAiEBCyAAQQk2AgAgACABNgIEDAwLIAEoAiwhASAAQQk2AgAgACABNgIEDAsLIARBEGogAUEAEIQBIAQoAhQhASAEKAIQQQFxRQRAIAEoAgghBSABKAIEIQIgAS0AGSEGIAEoAhQhByABKAIQIQggASgCACEDIAQoAighCSABEPEqIANBgICAgHhHDQcgAiEBCyAAQQk2AgAgACABNgIEDAoLIARBCGogASAEKAIkEKkCIAQoAgwhASAEKAIIQQFxRQRAIARBBzYC8AEgBCABNgL0ASAEQYgBaiAEQfABahD7HCAEKAKIAUEIRw0HIAQoAowBIQELIABBCTYCACAAIAE2AgQMCQsgAhDjDSICRQRAIAEoAtgCIQEgBEEAOgDwASABIAEgBEHwAWoQgRUhASAAQQk2AgAgACABNgIEDAkLAkAgAigCACIFQQJHBEAgBUEkRw0BIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0IIAEoAiwhASAAQQk2AgAgACABNgIEDAoLIARB8AFqIgUgAkEIahCHEyAFEJwRIQogBEGIAWogASAEKAIkIAMgCkEBEMABIAQoAogBIgFBCUcEQAJAIAFBCEYEQCAEQQg2AvABDAELIARB8AFqIARBiAFqEPscCyAAIARB8AFqQSgQ+wYaDAsLIAAgBCgCjAE2AgQgAEEJNgIADAoLQeXs4ABBKEGs6d8AEPQXAAsgASgC2AIhASAEQQA6APABIAEgASAEQfABahCBFSEBIABBCTYCACAAIAE2AgQMBwtB5ezgAEEoQezo3wAQ9BcAC0Hl7OAAQShB/OjfABD0FwALQTBBCBCrICIBIAI2AgAgASAFOgAtIAFBAToALCABIAo3AiQgASADNgIgIAEgBjYCHCABIAc2AhggASAEKQPwATcCBCABQQxqIARB+AFqKQMANwIAIAFBFGogBEGAAmooAgA2AgAgACABNgIEIABBBjYCAAwEC0EcQQQQqyAiASAGOgAZIAFBAToAGCABIAc2AhQgASAINgIQIAEgCTYCDCABIAU2AgggASACNgIEIAEgAzYCACAAIAE2AgQgAEECNgIADAMLIAAgBEGIAWpBKBD7BhoMAgtB5ezgAEEoQZzp3wAQ9BcACyABKALYAiEBIARBADoA8AEgASABIARB8AFqEIEVIQEgAEEJNgIAIAAgATYCBAsgBEHwAGoQ7iYLIARBzABqEKMmCyAEQaACaiQAC5IaAgZ/An4jAEGgAmsiBCQAIAQgAjYCJAJAIAEtAKACQQJHBEAgAEEINgIAIAMQ7iYMAQsgAUGqAmohBQJAIAEtALgCQQFxRQ0AIAEtAKMCQQFxDQAgASgCnAMhBiAEQfwAOgDwASABIAIgBiACIAZJGyACIAYgAiAGSxsgBEHwAWoQxhkgBCgCJCECCyAEIAI2AiggBEEBOgA9IAQgASkBqgI3AC8gBCABKAGyAjYANyAEIAEvAbYCOwA7IAQgASkAuQI3AD4gBCABKADBAjYARiAEIAEvAMUCOwBKIARB5QBqIAVBFWopAAA3AAAgBEHgAGogBUEQaikBADcCACAEQdgAaiAFQQhqKQEANwIAIAQgBSkBADcCUCABQShqIgIgBEEvahDSCCAEIAE2AkwgBEH4AGogA0EIaigCADYCACAEIAMpAgA3A3AgBCAEQSRqNgKAASAEIARBKGo2AnwCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAIQyg0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBC0YNAQsCQCACEMoNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQRlGDQILAkAgAhDKDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUETRw0AIAIQrRMiBUUNACAFKAIAQQJHDQAgBS0ACA0AIAUtAAlBDUYNAwsCQCACEMoNIgVFDQAgBSgCAEECRw0AIAUtAAhBAkcNACAFLQAJQRNGDQQLAkAgAhDKDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUERRg0ECwJAIAIQyg0iBUUNACAFKAIAQQJHDQAgBS0ACEECRw0AIAUtAAlBEkYNBAsCQCACEMoNIgVFDQAgBSgCAEECRw0AIAUtAAgNACAFLQAJQQZGDQULIAIQyg0iBQRAIAUoAgBBAkYNBgsgAEEINgIAIARB8ABqEO4mDA8LIARB+AFqIgUgA0EIaigCADYCACAEIAMpAgA3A/ABIARBiAFqIAEgBEHwAWoiBhDfKCAEKAKIASIHQQhHBEBBASECIARBkAFqIQMgBCgCqAEhAQJAIAdBAUYEQCAFIAFBCGooAgA2AgAgBEGEAmogAUEUaigCADYCACAEQZACaiABQSBqKQIANwMAIARBmAJqIAFBKGopAgA3AwAgBCABKQIANwPwASAEIAEpAgw3AvwBIAQgASkCGDcDiAIgASkCNCEKIAEpAjwhCyABLwFEIQggBCgCKCEJQcgAQQQQqyAiBSAGQTAQ+wYiBiAIOwFEIAYgCzcCPCAGIAo3AjQgBiAJNgIwIARB4AFqIANBCGopAwA3AwAgBEHoAWogA0EQaikDADcDACAEIAMpAwA3A9gBIAEQjysMAQsgBC0ArAEhAiAEQeABaiADQQhqKQMANwMAIARB6AFqIANBEGopAwA3AwAgBEHWAWogBEGvAWotAAA6AAAgBCAELwCtATsB1AEgBCADKQMANwPYASAEKAKMASEDIAEhBQsgACADNgIEIAAgBzYCACAAIAQpA9gBNwMIIAAgAjoAJCAAIAU2AiAgACAELwHUATsAJSAAQRBqIARB4AFqKQMANwMAIABBGGogBEHoAWopAwA3AwAgAEEnaiAEQdYBai0AADoAAAwPCyAEKAKMASEBIABBCTYCACAAIAE2AgQMDgsgBEHwAWogASAEKAIkIgEgASADQQAQiQQgBCgC8AEiBkEIRwRAIARB+AFqIQMgBCgCkAIhAQJAIAZFBEAgBEGQAWogAUEIaigCADYCACAEQZwBaiABQRRqKAIANgIAIARBqAFqIAFBIGooAgA2AgAgBCABKQIANwOIASAEIAEpAgw3ApQBIAQgASkCGDcDoAEgASkCKCEKIAEpAjAhCyABKAI4IQcgAS0APCEIIAQoAighCUHAAEEEEKsgIgIgBEGIAWpBJBD7BiIFIAg6ADwgBSAHNgI4IAUgCzcCMCAFIAo3AiggBSAJNgIkIARBwAFqIANBCGopAwA3AwAgBEHIAWogA0EQaikDADcDACAEIAMpAwA3A7gBIAEQlytBASEFDAELIAQtAJQCIQUgBEHAAWogA0EIaikDADcDACAEQcgBaiADQRBqKQMANwMAIARBtgFqIARBlwJqLQAAOgAAIAQgBC8AlQI7AbQBIAQgAykDADcDuAEgBCgC9AEhAyABIQILIAAgAzYCBCAAIAY2AgAgACAEKQO4ATcDCCAAIAU6ACQgACACNgIgIAAgBC8BtAE7ACUgAEEQaiAEQcABaikDADcDACAAQRhqIARByAFqKQMANwMAIABBJ2ogBEG2AWotAAA6AAAMDgsgBCgC9AEhASAAQQk2AgAgACABNgIEDA0LIAIQyg0iA0UEQCABKAKAAiEBIARBADoA8AEgASABIARB8AFqEIEVIQEgAEEJNgIAIAAgATYCBAwMCyADKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0FIAEoAswCIQEgAEEJNgIAIAAgATYCBAwMCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgBEH8AWogAUHUAmopAgA3AgAgBEGEAmogAUHcAmooAgA2AgAgBCABKQLMAjcC9AEgBCADNgLwASAEQfABahDGCiACEMoNIgNFDQMgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBiABKALMAiEBIABBCTYCACAAIAE2AgQMDAsgAhDKDSICRQ0KAkAgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNAUHl7OAAQShBjOnfABD0FwALIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyAEQfwBaiABQcwCaiICQQhqKQIANwIAIARBhAJqIAJBEGooAgA2AgAgBCACKQIANwL0ASAEIAM2AvABIARB8AFqEMYKIARBGGogASAEKAIkQQEQeiAEKAIcIQEgBCgCGEEBcUUEQCABKAIAIQIgBEH4AWogAUEMaikCADcDACAEQYACaiABQRRqKAIANgIAIAQgASkCBDcD8AEgAS0ALSEFIAEoAhwhBiABKQIkIQogASgCICEDIAQoAighByABEJkrIANBgICAgHhHDQggAiEBCyAAQQk2AgAgACABNgIEDAwLIAEoAswCIQEgAEEJNgIAIAAgATYCBAwLCyAEQRBqIAFBABCFASAEKAIUIQEgBCgCEEEBcUUEQCABKAIIIQUgASgCBCECIAEtABkhBiABKAIUIQcgASgCECEIIAEoAgAhAyAEKAIoIQkgARDxKiADQYCAgIB4Rw0HIAIhAQsgAEEJNgIAIAAgATYCBAwKCyAEQQhqIAEgBCgCJBCoAiAEKAIMIQEgBCgCCEEBcUUEQCAEQQc2AvABIAQgATYC9AEgBEGIAWogBEHwAWoQ+xwgBCgCiAFBCEcNByAEKAKMASEBCyAAQQk2AgAgACABNgIEDAkLIAIQyg0iAkUEQCABKAKAAiEBIARBADoA8AEgASABIARB8AFqEIEVIQEgAEEJNgIAIAAgATYCBAwJCwJAIAIoAgAiBUECRwRAIAVBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQggASgCzAIhASAAQQk2AgAgACABNgIEDAoLIARB8AFqIgUgAkEIahCHEyAFEJwRIQogBEGIAWogASAEKAIkIAMgCkEBEL8BIAQoAogBIgFBCUcEQAJAIAFBCEYEQCAEQQg2AvABDAELIARB8AFqIARBiAFqEPscCyAAIARB8AFqQSgQ+wYaDAsLIAAgBCgCjAE2AgQgAEEJNgIADAoLQeXs4ABBKEGs6d8AEPQXAAsgASgCgAIhASAEQQA6APABIAEgASAEQfABahCBFSEBIABBCTYCACAAIAE2AgQMBwtB5ezgAEEoQezo3wAQ9BcAC0Hl7OAAQShB/OjfABD0FwALQTBBCBCrICIBIAI2AgAgASAFOgAtIAFBAToALCABIAo3AiQgASADNgIgIAEgBjYCHCABIAc2AhggASAEKQPwATcCBCABQQxqIARB+AFqKQMANwIAIAFBFGogBEGAAmooAgA2AgAgACABNgIEIABBBjYCAAwEC0EcQQQQqyAiASAGOgAZIAFBAToAGCABIAc2AhQgASAINgIQIAEgCTYCDCABIAU2AgggASACNgIEIAEgAzYCACAAIAE2AgQgAEECNgIADAMLIAAgBEGIAWpBKBD7BhoMAgtB5ezgAEEoQZzp3wAQ9BcACyABKAKAAiEBIARBADoA8AEgASABIARB8AFqEIEVIQEgAEEJNgIAIAAgATYCBAsgBEHwAGoQ7iYLIARBzABqEIclCyAEQaACaiQAC4IbAQt/IwBBoAhrIgIkACACQcgAaiABQShqIgUQhRQCQAJAAkACQAJAAkAgAS0AoAJBAkcNACACKAJMIQkgAigCSCEKAkACQCAFEMoNIgNFDQAgAygCAEEURw0AIAMtAARBBEYNAQsgBRDKDSIDRQ0BIAMoAgBBIUcNAQsCQCAFEK0TIgMEQCADKAIAQQJGDQELIAUQrRMiA0UNASADKAIAQR9HDQELQQAhAyACQQA6AGMgAiABKQGqAjcAUyACIAEpALsCNwBkIAIgASgAwwI2AGwgAiABQbICaiIEKQEANwBbIAJBjQFqIAFBvwJqKQAANwAAIAJBiAFqIAFBugJqKQEANwIAIAJBgAFqIAQpAQA3AgAgAiABKQGqAjcCeCAFIAJB0wBqENIIIAIgATYCdAJAIAEtAKACQQJHDQAgAS0AqgIhCyACQZgBaiABEKMDIAJBAToAuAQgAiABKQCrAjcAuQQgAiABKQCzAjcAwQQgAiABKQC7AjcAyQQgAiABKADDAjYA0QQgAkHAAWoiByACQbgEahDSCAJAIAcQyg0iA0UNACADKAIAQSFHDQAgAkHUAWoQzhdB/wFxQQpHDQAgAigC2AIiAyEEIAJB2AJqIgYhCCADQYEBTwRAIAJB2AFqIQggAigC2AEhBAsgBARAIAggBEEBazYCACACKALYAiEDCyADQYEBTwRAIAJB2AFqIQYgAigC2AEhAwsgA0UNACAGIANBAWs2AgALQQAhAyACQUBrIAJBmAFqQQBBARCTASACKAJEIQYCQCACKAJABEAgBiEEDAELIAJBOGogAkGYAWoiDBB2IAIoAjwhBCACKAI4RQRAIAIgBDYCgAgCQAJAIAQoAgBBHkcEQCACQewEaiAHEJEQIAJBATYC6AQgAkGfteAANgLkBCACQTA6AOAEIAJBsARqIAJB+ANqIAIoAuADQSVGIggbKAIAIgQgAkG0BGogAkH8A2ogCBsoAgAiCCAEIAhJGyAEIAggBCAISxsgAkHgBGoQgRUhBCAHEMoNIgdFDQIgBygCAEEkRw0CIAIgAikD+AM3A7AEIAIoAuADIAJBJTYC4ANBJEcNASAMIAIoAuQDEP8LDAILIAQgBigCDCIDIAQoAhgiByADIAdLGzYCGCAEIAMgByADIAdJGzYCFCAEKAIgEN0oIAQgBjYCICACQeAEaiIDIAJBmAFqQaADEPsGGiABEN8QIAEgA0GgAxD7BiEDIAIgCzoAgAggAiADKQCrAjcAgQggAiADKQCzAjcAiQggAiADKQC7AjcAkQggAiADKADDAjYAmQggBSACQYAIahDSCCAEIQMMBAtB5ezgAEEoQfyQ4AAQ9BcACyACQYAIahDeKAsgBhCQKwsgAiAENgLcBCACQQE2AtgEIAJB2ARqEMggIAJBmAFqEN8QCyACIAM2AnAgAkH0AGoQhyUgAwRAIAEtAKACQQJHDQIgAS0ApQJBAXFFDQIgAkG6AToA4AQgASAKIAkgAkHgBGoQxhkMAgsgAkHwAGoQgCcLIAEtALICQQFxRQ0BIAUQyg0iA0UNASADKAIAQQJHDQEgAy0ACEECRw0BIAMtAAlBHUcNASAFEMMgIQMgBRDKDSIERQRAIAEoAoACIQEgAkEAOgDgBCABIAEgAkHgBGoQgRUhAwwECyAEKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0DQeXs4ABBKEHAjOAAEPQXAAsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAJB7ARqIAFB1AJqKQIANwIAIAJB9ARqIAFB3AJqKAIANgIAIAIgASkCzAI3AuQEIAIgBDYC4AQgAkHgBGoQxgoCQAJAAkACQAJAIAEtAL8CQQFxBEAgAS0AvQJBAXFFDQELIAUQyg0iBEUNAiAEKAIAQT5xQQ5GDQIgBRCIIQ0CAkAgBRDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQ1GDQULAkAgBRDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQ5GDQULIAUQyg0iBEUNASAEKAIAQRVHDQEgBC0ABEEERw0BDAQLIAEoApwDIQMgASgCmAMgAkHQADoA4AQgAyACQeAEahCBFSEDQQEhBCAFEMoNIgZFDQggBigCAEEkRw0IIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAiABIAEoAswCEP8LDAgLIAUQyg0iBEUEQCABKAKAAiEEIAJBADoA4AQgAiAEIAQgAkHgBGoQgRU2ApwBIAJBAToAmAEgAkGYAWoQwyMMAwsgBBCHBhCdDA0CC0EAIQQgAkEAOgDsBCACQQA2AugEIAIgAyABKAKcAyIBIAEgA0kbNgLkBCACIAMgASABIANLGzYC4AQgAkHgBGoQsRghAwwGC0Hl7OAAQShB0IzgABD0FwALQQAhBgJAIAUQyg0iBEUNACAEKAIAQRRHDQAgBC0ABEENRw0AIAEoAsgCIQYgAUElNgLIAiABIAEpA+ACNwOYAyACQewEaiABQcwCaiIEQQhqKQIANwIAIAJB9ARqIARBEGooAgA2AgAgAiAEKQIANwLkBCACIAY2AuAEIAJB4ARqEMYKQQEhBgsgASgCnAMhBSACQTBqIAEQuAZBASEEIAIoAjQhByACKAIwQQFxRQRAIAIgBjoA7AQgAiAHNgLoBCACIAMgASgCnAMiASABIANJGzYC5AQgAiADIAEgASADSxs2AuAEIAJB4ARqELEYIQMMAQsgBygCBCEBIAcoAgBBBEEEEKsgIgggBzYCACACIAg2AuwEIAJBIzYC9AQgAkHgjOAANgLwBCACIAMgBSADIAVLGzYC6AQgAiADIAUgAyAFSRs2AuQEIAJBuAE6AOAEIAEgAkHgBGoQgRUhAwwEC0EAIQQMAwsgBRDKDSIDRQRAIAEoAoACIQEgAkEAOgDgBCABIAEgAkHgBGoQgRUhAwwCC0EAIQYCQAJAIAMoAgAiB0ECRwRAIAdBCUYNASAHQSRHDQIgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0DQeXs4ABBKEHskOAAEPQXAAsCQEEEIAMtAAhBAmtB/wFxIgcgB0EETxsOBQACAgIBAgsgAy0ACUEdRw0BC0EBIQYgBRDDICEECyABIAQ2AgQgASAGNgIAIAUQwyAhCCAFEMMgIQcgAkEoaiABEIIGIAIoAiwhBiACKAIoBEAgBiEDDAILIAIgBjYCuAQCQAJAAkACQAJAAkAgBigCAEEeRg0AIAUQyg0iA0UNACADKAIAQRdHDQAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJB7ARqIgQgAUHUAmopAgA3AgAgAkH0BGoiCSABQdwCaigCADYCACACIAEpAswCNwLkBCACIAM2AuAEIAJB4ARqIgoQxgogAkEBOgB6IAJBgQI7AIMBIAIgASgBqgI2AHQgAiABLwGuAjsAeCACIAEpALECNwB7IAIgASkAuwI3AIUBIAIgASgAwwI2AI0BIAJB+QRqIAFBvwJqKQAANwAAIAkgAUG6AmopAQA3AgAgBCABQbICaikBADcCACACIAEpAaoCNwLkBCAFIAJB9ABqENIIIAIgATYC4AQgAkEgaiABELgGIAIoAiQhAyACKAIgDQEgAiADNgKACCAKEIclAkAgBRDKDSIEBEAgBCgCAEETRg0BCyACQegEaiAFEJEQIAJBCGogBRCFFCACQaDg3wA2AuQEIAJBNDoA4AQgAigCCCACKAIMIAJB4ARqEIEVIQMgBRDKDSIERQ0FIAQoAgBBJEcNBSABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQQgASABKALMAhD/CwwFCyABKALIAiEJIAFBJTYCyAIgASABKQPgAjcDmAMgAkHsBGoiCiABQcwCaiIEQQhqKQIANwIAIAJB9ARqIgsgBEEQaigCADYCACACIAQpAgA3AuQEIAIgCTYC4AQgAkHgBGoiCRDGCiACQQE7AKcBIAIgAS0AuAI6AKYBIAIgASkBqgI3AJgBIAIgASgBsgI2AKABIAIgAS8BtgI7AKQBIAIgASkAuwI3AKkBIAIgASgAwwI2ALEBIAJB+QRqIAFBqgJqIgRBFWopAAA3AAAgCyAEQRBqKQEANwIAIAogBEEIaikBADcCACACIAQpAQA3AuQEIAUgAkGYAWoQ0gggAiABNgLgBCACQRhqIAEQuAYgAigCHCEEIAIoAhggCRCHJQRAIAQhAwwFCyACQRBqIAQQjAMgAigCFCEFIAIgBDYC6AQgAiADNgLkBCACIAY2AuAEIAIgByAFIAUgB0kbNgLwBCACIAcgBSAFIAdLGzYC7AQgAkHgBGoQhRUhBgsgBigCACIDQR5LQQEgA3RBgICcggRxRXINAUEAIQQgBiEDDAcLIAJB4ARqEIclDAMLIAIgASAIIAYQ6QIgAigCBCEDIAIoAgAhBAwFC0Hl7OAAQShBiIngABD0FwALIAJBgAhqEN4oCyACQbgEahDeKAwBCyABKALMAiEDC0EBIQQLIAAgAzYCBCAAIAQ2AgAgAkGgCGokAAuIFwIRfwF+IwBBMGsiCSQAAkACQAJAIAAoAgAiAygCACIABEAgAygCCCENIAMoAgQhCwNAIA4iByANRyEPIAcgDUYEQCAPIQYMAwsgC0UNBCAHQQFqIQ4gC0EBayEMQQAhAiAALQAAIgYhBSALIQoCQAJAAkACQAJAA0ACQCAFwEEASARAIAVBH3EhAyAAIAJqIgRBAWotAABBP3EhCCAFQf8BcSIQQd8BTQRAIANBBnQgCHIhAwwCCyAEQQJqLQAAQT9xIAhBBnRyIQggEEHwAUkEQCAIIANBDHRyIQMMAgsgA0ESdEGAgPAAcSAEQQNqLQAAQT9xIAhBBnRyciIDQYCAxABHDQEMDAsgBUH/AXEhAwsgACACaiIEIQgCQAJAIANBMGtBCU0EQCACIAxGDQ0gBEEBaiwAACIFQb9/Sg0BIAggCkEBIApB0NDWABDUJgALIAsgCmshBCAKIAtHBEAgACAEaiwAAEG/f0wNAgtBACEDAkACQCAEDgIIAAELQQEhAyAGQStrDgMHBQcFCyAGQStHDQMgAEEBaiEAIARBCkkgBEEBayIDIQQNBAwFCyACQQFqIQIgCkEBayEKDAELCyAAIAtBACAEQeDQ1gAQ1CYACyAEIQMgBEEJTw0BC0EAIQIDQCAALQAAQTBrIgRBCUsEQEEBIQMMAwsgAEEBaiEAIAQgAkEKbGohAiADQQFrIgMNAAsMAgtBACECA0AgBEUNAiAALQAAQTBrIgZBCUsEQEEBIQMMAgtBAiEDIAKtQgp+IhNCIIinDQEgAEEBaiEAIARBAWshBCAGIBOnIgtqIgIgC08NAAsLIAkgAzoAFEGc6+AAQSsgCUEUakGo0tYAQbjS1gAQxQ4ACwJAIAJFDQAgAiAKSQRAIAIgCGosAABBv39KDQEMBQsgAiAKRw0ECyACIAhqIQACQCANIA5HDQAgAkUgASgCHEEEcUUgBUH/AXFB6ABHcnINAAJAIAJBAUcEQCAILAABQb9/TA0BCyAIQQFqIQUDQEEAIQYgACAFRg0FAn8gBSwAACIDQQBOBEAgA0H/AXEhAyAFQQFqDAELIAUtAAFBP3EhCyADQR9xIQQgA0FfTQRAIARBBnQgC3IhAyAFQQJqDAELIAUtAAJBP3EgC0EGdHIhCyADQXBJBEAgCyAEQQx0ciEDIAVBA2oMAQsgBEESdEGAgPAAcSAFLQADQT9xIAtBBnRyciIDQYCAxABGDQYgBUEEagshBSADQTBrQQpJIANBIHJB4QBrQQZJcg0ACwwBCyAIIAJBASACQbDQ1gAQ1CYACwJAIAdFDQAgASgCFEGA0dYAQQIgASgCGCgCDBEDAEUNACAPIQYMAwsCQAJ/IAIgAkECSQ0AGiACIAgvAABB38gARw0AGiAILAABQb9/TA0BIAhBAWohCCACQQFrCyEDIAogAmshCwNAIAghBAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMiB0UNAAJAIAQtAABBJGsOCwIBAQEBAQEBAQEAAQsgB0EBRg0FIAQsAAEiA0G/f0oNBCAEIAdBASAHQfjR1gAQ1CYACyAEIAdqIQxBACECIAQhBQNAIAIhAyAFIgIgDEYNCAJ/IAIsAAAiBkEATgRAIAZB/wFxIQogAkEBagwBCyACLQABQT9xIQggBkEfcSEFIAZBX00EQCAFQQZ0IAhyIQogAkECagwBCyACLQACQT9xIAhBBnRyIQggBkFwSQRAIAggBUEMdHIhCiACQQNqDAELIAVBEnRBgIDwAHEgAi0AA0E/cSAIQQZ0cnIhCiACQQRqCyIFIAMgAmtqIQIgCkEkaw4LAgAAAAAAAAAAAAIACwALIAdBAUYNASAELAABQb9/Sg0BIAQgB0EBIAdBtNHWABDUJgALAkACQCADBEACQCADIAdJBEAgAyAEaiICLAAAQb9/TA0BIAEoAhQgBCADIAEoAhgoAgwRAwBFDQRBASEGDBMLIAMgB0YNAgsgBCAHQQAgA0GU0dYAENQmAAsgASgCFCAEQQAgASgCGCgCDBEDAEUNC0EBIQYMEAsgASgCFCAEIAcgASgCGCgCDBEDAEUNCkEBIQYMDwsgAiwAAEG/f0oNCSAEIAcgAyAHQaTR1gAQ1CYACyAJIAdBAWsiAzYCJCAJQQA2AiAgCSADNgIcIAlBJDYCFCAJQSQ2AiggCUEBOgAsIAkgBEEBaiICNgIYIAlBCGogCUEUahCmBSAJKAIIQQFHDQQCQCAJKAIMIgZBf0cEQCAGQQFqIQMgB0EBRw0BDAULQcTR1gAQrxsACyACLAAAQb9/Sg0DDAcLAkACfyADQf8BcSADQQBODQAaIAQtAAJBP3EhBiADQR9xIQIgAkEGdCAGciADQV9NDQAaIAQtAANBP3EgBkEGdHIhBiAGIAJBDHRyIANBcEkNABogAkESdEGAgPAAcSAELQAEQT9xIAZBBnRycgtBLkcEQEEBIQYgASgCFEGDtuAAQQEgASgCGCgCDBEDAA0OIAQsAAFBQEgNAQwDCyABKAIUQYDR1gBBAiABKAIYKAIMEQMABEBBASEGDA4LAkAgB0EDTwRAIAQsAAJBQEgNAQsgBEECaiEIIAdBAmshAwwKCyAEIAdBAiAHQYjS1gAQ1CYACyAEIAdBASAHQZjS1gAQ1CYAC0EBIQYgASgCFEGDtuAAQQEgASgCGCgCDBEDAA0LCyAEQQFqIQggB0EBayEDDAYLAkACQAJAAkAgAyAHSQRAIAMgBGosAABBQEgNCCAGQQJqIQUMAQsgAyAHRw0HIAchAyAGQQJqIgVFDQELAkAgBSAHSQRAIAQgBWosAABBv39KDQEMBwsgBSAHRw0GCyAEIAVqIQggByAFayEDAkACQCAGDgMFAQACCyACLwAAQdOgAUYEQEGhuuAAIQIMBgsgAi8AAEHCoAFGBEBB17DgACECDAYLIAIvAABB0owBRgRAQdyw4AAhAgwGCyACLwAAQcyoAUYEQEHKsOAAIQIMBgsgAi8AAEHHqAFGBEBBzbDgACECDAYLIAIvAABBzKABRgRAQZ+14AAhAgwGCyACLwAAQdKgAUcNAUHgoeMAIQIMBQsgAi0AACIFQcMARgRAQb644AAhAgwFCyAFQfUARg0BDAMLIAQtAAFB9QBHDQIgBCwAAkG/f0wNAQsgAiAGaiEQIAZBAWshESAEQQJqIhIhAgJAA0BBASEKIAIgEEYNAQJ/IAIsAAAiBkEATgRAIAZB/wFxIQUgAkEBagwBCyACLQABQT9xIQwgBkEfcSEFIAZBX00EQCAFQQZ0IAxyIQUgAkECagwBCyACLQACQT9xIAxBBnRyIQwgBkFwSQRAIAwgBUEMdHIhBSACQQNqDAELIAVBEnRBgIDwAHEgAi0AA0E/cSAMQQZ0cnIiBUGAgMQARg0CIAJBBGoLIQIgBUEwa0EKSSAFQeEAa0EGSXINAAtBACEKCyAJQRRqIBIgEUEQEMgEIAktABQNASAKQQFzQYCAxAAgCSgCGCICIAJBgLADc0GAgMQAa0GAkLx/SRsiAkGAgMQARnINASAJIAI2AgQgAkEgSSACQf8Aa0EhSXINASAJQQRqIAEQ3wdFDQZBASEGDAoLIAIgBkEBIAZB6NHWABDUJgALIA8hBiABKAIUIAQgByABKAIYKAIMEQMARQ0GDAgLQQEhBiABKAIUIAJBASABKAIYKAIMEQMARQ0DDAcLIAQgByAFIAdB1NHWABDUJgALIAQgB0EBIANBxNHWABDUJgALIAMgBGohCCAHIANrIQMMAAsACwsgCCACQQEgAkGE0dYAENQmAAsgCUEANgIoIAkgATYCJCAJQgA3AhwgCSADKQIENwIUIAlBFGpBARCfASEGCyAJQTBqJAAgBg8LIAggCiACIApB8NDWABDUJgALQcDQ1gAQ4CkAC6sYAhh/AX4jAEGgAWsiBSQAIAEoAgAiDCgC/AQhBCABKAIEIggpAqQBIRwgCEKAgICAEDcCpAEgCEGsAWoiBigCACEJIAZBADYCACAFQdgAaiAJNgIAIAUgHDcDUCAMLQBQIQYgCEGQAWooAgAgCEGUAWooAgAgAkH///8/cSAEdkH068MAELofIQkgCEEANgJkIAhBADYCSCAMKAL4BCIOLQDcAiERAkACQAJAAkACQAJAIAkoAgBBCGoiCiAJKAIEIgsQ0BsiBAR/IARBgICAgARPDQEgBEH9////A08NAiAEQQJ0QQ1qBUEJCyEHIAhBjAFqIRogCEGYAWohFSAIQTBqIRIgBkECRiAGciEbIAVByABqIAcgCiALQZjdwwAQkh0gCEE4aiITKAIAIRQgCCgCSCEGIAUoAkwhDSAFKAJIIQ8gCEHEAGohFiAIQUBrIRcgCEE0aiEYQQAhCwNAIA0EQEEAIRlBACEEQQAhB0EAIQoCfwNAQQAgBCANRg0BGiAEIA9qLAAAIhBBAEgEQCAEQQFqIQQgEEH/AHEgB3QgCnIhCiAHQQdqIQcMAQsLIARBAWohGSAQIAd0IApyCyEEIAVBQGsgGSAPIA1BqN3DABCSHSAFKAJEIQ0gBSgCQCEPIAVBACAEQQFxayAEQQF2cyALaiILNgJoIAYgFygCACAWKAIAIAtBzJnEABC3HygCACIESwRAIBgoAgAgEygCACAEQdyZxAAQtx8oAgAgC0YNAgsgBSAGNgJsIAYgFE8NBCAYKAIAIBMoAgAgBkGsmcQAELcfIAs2AgAgFygCACAWKAIAIAtBvJnEABC3HyAIIAZBAWoiBDYCSCAGNgIAIAQhBgwBCwsgCSgCACAJKAIEEIEqRQ0FIAkoAgAgCSgCBBCAKiEEIANBAXFFDQMgBEEqciEEIANBCHYiByEKDAQLQbjdwwAQ4CkAC0HI3cMAEOApAAsgBUEDNgJ0IAVBhJnEADYCcCAFQgM3AnwgBUH8ADYCnAEgBUEVNgKUASAFQRU2AowBIAUgFDYCXCAFIAVBiAFqNgJ4IAUgBUHoAGo2ApgBIAUgBUHcAGo2ApABIAUgBUHsAGo2AogBIAVB8ABqQZyZxAAQwx0ACyADQQh2IgohBwJAAkAgCkH/AXFBCmsOBAACAgECCwJAIBFBAXFFBEAgCSgCACAJKAIEEIQgDQELIARBIHIhBAtBCiEHDAELAkAgEUEBcQRAIAkoAgAgCSgCBBCEIA0BCyAEQSByIQQLQQ0hBwsgBCAEIARBCHIgA0EBcSIQIgsbIA4tANgCIAdB/wFxRxshBAJAIAkoAgAgCSgCBBCEIEUNACADQYD+A3EhBgJAIBFBAXEEQCAGQYAaRw0BIBBFDQIMAQsgBkGAFEcNACADQQFxRQ0BCyAEQRByIQQLIAkoAgAgCSgCBBCDICEGIAsEf0HAAkGABSAGGyAEckGAgApyBSAEQcACQYAFIAYgCkH/AXFB/JnEAGotAAAiBHMbciIGIAZBgIAKciAEGwshBwJAAkAgCSgCACAJKAIEEIMgRQ0AIANBAXFFBEAgCkH/AXFB/JnEAGotAAANAQsgB0GA0AByIQcMAQsgCSgCACAJKAIEEIMgIANBAXFyDQAgB0GAKHIgByAKQf8BcUH8mcQAai0AABshBwsgCSgCACAJKAIEEIAqIQQgCSgCACAJKAIEEIEqIARBf3NxIAdxRQ0AIAVBOGogEhC2GSAIQcwAaiEGIAUoAjwhCSAFKAI4IQQDQCAEIAlGBEACQEEAIQQDQCAEQRxGDQEgBCAIaiIGQcwAaiIJKAIAIQcgCSAGQTBqIgYoAgA2AgAgBiAHNgIAIARBBGohBAwACwALBSAMKAL4BCAEKAIAIAcgFSAGEM4DIARBBGohBAwBCwsgCEEANgJkCyAFQdwAaiIGIAVB0ABqEIEfAkAgDigCsAIiBEE8cUUNACADQQFxIA4tANgCIANBCHZB/wFxR3INACAGEP4pIAVBMGogBSgCYCAFKAJkQQFBqN7DABCeHUEEciAFKAIwIAUoAjQQ6g4gDigCsAIhBAsCQCAEQTBxRQ0AIANBgP4DcSEGAkAgEUEBcQRAIANBAXEgBkGAGkdyDQIMAQsgA0EBcSAGQYAUR3INAQsgBUHcAGoQ/ikgBUEoaiAFKAJgIAUoAmRBAUGo3sMAEJ4dQRByIAUoAiggBSgCLBDqDiAOKAKwAiEECwJ/IARBwP8PcQRAIANBAXFFBEBBACADQQh2Qf8BcUH8mcQAai0AAEEBRg0CGgsgBUHcAGoQ/ikgBUEgaiAFKAJgIAUoAmRBAUGo3sMAEJ4dQYCABXIgBSgCICAFKAIkEOoOCyADCyEJIAVBGGogEhC2GSAIQcwAaiEPIAUoAhwhEiAFKAIYIQQgCUEBcSENIANBCHZB/wFxIgtBAnQhEyAbQQFxIRQDQAJAIAQgEkYNACAEKAIAIQcgBEEEaiIGIQQCQAJAAkACQAJAAkACQAJ/AkACQCAMKAL4BCAHEPsdIgooAgBBAWsOCAEDCwsLCwsFAAsgDQ0KIAotAAggC0sNCiAKLQAJIAtJDQogCkEEagwBCyANDQkgCigCCEEDdCEHIAooAgRBBWohBANAIAdFDQggBEEBay0AACALSw0IIAdBCGshByAELQAAIARBCGohBCALSQ0ACyAEQQ1rCygCACEHDAELIA0NByAKKAIIIgcgC00NAiAKKAIEIBNqKAIAIgdFDQcLIAUoAmAgBSgCZBDvGiEEIAwoAvgEIAcgBCAVIA8QzgMMBAsgCigCBCEEAkAgBSgCYCAFKAJkEIAfDQAgBEUNAiAFQdwAaiIQEPoeIAUoAmAgBSgCZEH43cMAEK8jIgcgBy0AAEECcjoAACAFKAJgIAUoAmQQgiBFBEAgEBCCHwwBCyAFQdwAakEAEKUTCyAFQdwAaiAEEKUTDAILIAsgB0GgkcQAEKwQAAsgBUHcAGoQgh8LIAYhBCAURQ0CDAELIAYhBAwBCwsCQCAIKAJkRQ0AAkAgDigCsAIiBEHA/w9xRSAJckEBcQ0AIAtB/JnEAGotAABFDQAgBSgCYCAFKAJkEOQiIA4oArACIQQLIARBMHFFDQAgA0GA/gNxIQQCQCARQQFxBEAgBEGAFEcgCXJBAXFFDQEMAgsgBEGAGkcgCXJBAXENAQsgBSgCYCAFKAJkEOUiCyAFQfgAaiAFQeQAaigCADYCACAFIAUpAlw3A3AgBUGIAWoiBiAFQfAAahCaDCAMKAL4BCAPIAYQ3QkgBSkDiAEhHAJAAkACQCAIEKYTIAUoApABIgRqQQQgDCgC/AR0akEUaiAMKAKABUsiCQRAIAwgCCACEIMfIgcoAgAiBiAGKAIAIgpBAWo2AgAgCkEASA0BIAcoAgQhByAIQSBqEOYiIAggBzYCLCAIIAY2AiggCCACNgIkIAhBATYCIAsgCCAcQiCIpyIGIAQQqQYiBwRAIAcoAgAhBCAIIBwQ0h9BACEHDAILIAVBEGogBiAEEOsZIAUoAhAhBCAFIAUoAhQiBjYCdCAFIAQ2AnACfwJAAkAgDCAIIAYQhSBFBEAgARD8Cw0BCyAFQQhqIAEQug8gBSgCCEUNAQsgBUHwAGoQ+R5BASEHQQAMAQsgBSgCDCEBIAQgBhD/KSEEIAhB9ABqQQEgDCgC/AR0EOQPIAFBgICAwAByIAEgBBshBAJAIAxB2ARqIgEQgioNACAMIAQQ/h0NACAMEMkVIQYgBUEANgKMASAFIAE2AogBA0AgBSAFQYgBahDcESAFLQAARQ0BIAwgCCAEIAUtAAFBCHQgBhDbCAwACwALIAggBSgCdCIGIAgoAmhqNgJoIAUoAnAiASABKAIAIgdBAWo2AgAgB0EASA0BIBogASAGEOAYIAggASAGIAQQ4QdBACEHQQELIAggHBDSHw0BDAILAAsCQCAJRQ0AIAgpAiAhHEEAIQogCEEANgIgIAVBkAFqIAhBKGopAgA3AwAgBSAcNwOIAQJAAkAgHKdBAWsOAgAAAQtBASEKIAUoAowBIQILIAVBiAFqEOYiIAoNAEHk7cMAQShBjO7DABC7EgALIAwgCCACIAMgBBDbCAsgACAHNgIAIAAgBDYCBCAFQaABaiQAC8kYAQ9/IwBBkAFrIgIkACACQUBrIgkgASAALQCYASILIAAoAiwiBEGAgICAeEdBAkEDIAAtAAgiA0EGRhtqIAAoAjgiBUGAgICAeEdqIAAoAkQiBkGAgICAeEdqIAAoAlAiCEGAgICAeEdqIAAoAlwiCkGAgICAeEdqIAAoAmgiDEGAgICAeEdqIAAoAnQiDUGAgICAeEdqIAAoAoABIg5BgICAgHhHaiAAKAKMASIPQYCAgIB4R2pqEKINIAIoAkAhAQJAAkACQAJAIAItAEQiB0EDRg0AIAIgBzoACCACIAE2AgQgAkEEaiIQQZqX2ABBBxDzECIBDQAgCSACKAIEIgcoAgAQiyogCRDmGCIBDQAgACgCACAAKAIEIAcoAgAQ0yEiAQ0AIAJBBDoAQCACQUBrEOYYIgENACADQQZHBEAgEEGhl9gAQQQQ8xAiAQ0BIAkgAigCBCIDKAIAEIsqIAJBQGsQ5hgiAQ0BIABBCGogAxBsIgENASACQQQ6AEAgAkFAaxDmGCIBDQELIAJBBGoiA0Gll9gAQQcgAEEgahD6ByIBDQAgBEGAgICAeEcEQCADQayX2ABBCiAAQSxqELwRIgENAQsgBUGAgICAeEcEQCACQQRqQbaX2ABBDiAAQThqEPoHIgENAQsgBkGAgICAeEcEQCACQQRqQcSX2ABBCBDzECIBDQEgAkFAayIDIAIoAgQiBCgCABCLKiADEOYYIgENASAAKAJIIQUgAyAEIAAoAkwiARChDSACKAJAIQQgAi0ARCIDQQNGBEAgBCEBDAILIAFBGGwhBwNAIAcEQCACQUBrIgYgBCgCACADQQFGEIEhIAYQ5hgiAQ0DIAYgBEEDEKINIAIoAkAhASACLQBEIgNBA0YNAyACIAM6ACAgAiABNgIcIAJBHGoiCUGEl9gAQQYQ8xAiAQ0DIAYgAigCHCIDKAIAEIsqIAJBQGsQ5hgiAQ0DIAYgA0ECEKINIAIoAkAhASACLQBEIgNBA0YNAyACIAM6AGwgAiABNgJoIAJB6ABqIgNB+pbYAEEEIAUoAgwQvREiAQ0DIANB/pbYAEEGIAUoAhAQvREiAQ0DIAIoAmgoAgAgAi0AbBCRGCIBDQMgAkEEOgBAIAJBQGsQ5hgiAQ0DIAlBt73fAEEDIAUQvBEiAQ0DIAlBipfYAEEDEPMQIgENAyAGIAIoAhwiAygCABCLKiACQUBrEOYYIgENAwJ/IAUoAhQiAUUEQCADKAIAEJYcDAELIAEgAxB5CyIBDQMgAkEEOgBAIAJBQGsQ5hgiAQ0DIAMoAgAgAi0AIBCRGCIBDQMgBUEYaiEFIAJBBDoAQCAHQRhrIQdBAiEDIAJBQGsQ5hgiAUUNAQwDCwsgBCgCACADEJAYIgENASACQQQ6AEAgAkFAaxDmGCIBDQELIAhBgICAgHhHBEAgAkEEakGNl9gAQQUQ8xAiAQ0BIAJBQGsiASACKAIEIgQoAgAQiyogARDmGCIBDQEgBCAAQdAAahD3CiIBDQEgAkEEOgBAIAJBQGsQ5hgiAQ0BCyAKQYCAgIB4RwRAIAJBBGpBzJfYAEENIABB3ABqELwRIgENAQsgDEGAgICAeEcEQCACQQRqQZKX2ABBCCAAQegAahC8ESIBDQELIA1BgICAgHhHBEAgAkEEakHZl9gAQRIQ8xAiAQ0BIAJBQGsiAyACKAIEIgQoAgAQiyogAxDmGCIBDQEgACgCeCEFIAMgBCAAKAJ8IgEQoQ0gAigCQCEEIAItAEQiB0EDRgRAIAQhAQwCCyABQQN0IQYgB0EBRiEDA0AgBgRAIAJBQGsiASAEKAIAIANBAXEQgSEgARDmGCIBDQMgBSgCACAFQQRqKAIAIAQoAgAQ0yEiAQ0DIAVBCGohBSACQQQ6AEAgBkEIayEGQQAhA0ECIQcgAkFAaxDmGCIBRQ0BDAMLCyAEKAIAIAcQkBgiAQ0BIAJBBDoAQCACQUBrEOYYIgENAQsgDkGAgICAeEcEQCACQQRqQeuX2ABBFBDzECIBDQEgAkFAayIBIAIoAgQiBCgCABCLKiABEOYYIgENASAEIAAoAoQBIAAoAogBELMKIgENASACQQQ6AEAgAkFAaxDmGCIBDQELIA9BgICAgHhHBEAgAkEEakH/l9gAQRIQ8xAiAQ0BIAJBQGsiAyACKAIEIgQoAgAQiyogAxDmGCIBDQEgACgCkAEhBiADIAQgACgClAEiARChDSACKAJAIQQgAi0ARCIFQQNGBEAgBCEBDAILIAYgAUEMbGohDCAFQQFGIQcDQCAGIAxHBEAgAkFAayIBIAQoAgAgB0EBcRCBISABEOYYIgENAwJ/IAYoAgBBgICAgHhGBEAgBCgCABCWHAwBCyAGKAIEIQUgAkFAayAEIAYoAggiARChDSACKAJAIQMgAi0ARCIIQQNGBEAgAyEBDAULIAFBGGwhByAIQQFGIQoDQCAHBEAgAkFAayIJIAMoAgAgChCBISAJEOYYIgENBiAJIANBAhCiDSACKAJAIQEgAi0ARCIIQQNGDQYgAiAIOgBsIAIgATYCaCACQegAaiIKQY2X2ABBBRDzECIBDQYgCSACKAJoIggoAgAQiyogAkFAaxDmGCIBDQYgCCAFQQRqKAIAIAVBCGooAgAQswoiAQ0GIAJBBDoAQCACQUBrEOYYIgENBiAKQZKX2ABBCBDzECIBDQYgCSACKAJoIggoAgAQiyogAkFAaxDmGCIBDQYgBUEQaigCACAFQRRqKAIAIAgoAgAQgCsiAQ0GIAJBBDoAQCACQUBrEOYYIgENBiAIKAIAIAItAGwQkRgiAQ0GIAVBGGohBSACQQQ6AEAgB0EYayEHQQAhCkECIQggAkFAaxDmGCIBRQ0BDAYLCyADKAIAIAgQkBgLIgENAyAGQQxqIQYgAkEEOgBAQQAhB0ECIQUgAkFAaxDmGCIBRQ0BDAMLCyAEKAIAIAUQkBgiAQ0BIAJBBDoAQCACQUBrEOYYIgENAQsCQCALRQRAIAIoAgQhAwwBCyACQQRqQZGY2ABBCBDzECIBDQEgAkFAayIBIAIoAgQiAygCABCLKiABEOYYIgENAUEAIQUgAkEANgIUIAJCgICAgBA3AgwgAEGZAWohBgJAIAAtALgBQQFHBEAgAkKYgICAwAQ3AmAgAkKTgICA8AI3AlggAkKOgICAoAI3AlAgAkKJgICA0AE3AkggAkKAgICAgAE3AkAgAkHoAGpBAEEkEI0LGkEAIQgCQANAIAhBBUYNAUEQIAUgBUEQTRshByACQUBrIAhBA3RqIgEoAgQhBCABKAIAIQEDQCABIARPBEACQCAIQQRHBEAgBEEkTw0BIAJB6ABqIARqQS06AAALIAhBAWohCAwDCyAEQSRB+J7jABCsEAALIAUgB0YNByABQSRPDQggAkHoAGogAWoiCiAFIAZqLQAAIgtBBHZBi57jAGotAAA6AAAgAUEjRwRAIApBAWogC0EPcUGLnuMAai0AADoAACAFQQFqIQUgAUECaiEBDAELCwtBJEEkQaif4wAQrBAACyACQRxqIgEgAkHoAGpBJBD7BhogAkEMaiABQSQQjSpFDQEMBgsgAiAGKAAAIgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyNgIYIAJBzAA2AiAgAkEBNgJ8IAJBATYCbCACQYT44AA2AmggAkEBNgJ0IAIgAkEYajYCHCACQQM6AFwgAkEINgJYIAJCIDcCUCACQoCAgICAATcCSCACQQI2AkAgAiACQUBrNgJ4IAIgAkEcajYCcCACQQxqQayT2AAgAkHoAGoQtSQNBQsgACgAqQEiAARAIAJBATYCRCACQeSawwA2AkAgAkIBNwJMIAJB4QE2AmwgAiAANgIcIAIgAkHoAGo2AkggAiACQRxqNgJoIAJBDGpBrJPYACACQUBrELUkDQULIAIoAgwgAkHoAGogAygCACACKAIQIgQgAigCFBDyA0EAIQEgAi0AaEEERwRAIAIgAikDaDcDQCACQUBrEJMcIQELIAQQ2ikgAQ0BIAJBBDoAQCACQUBrEOYYIgENAQsgAygCACACLQAIEJEYIQELIAJBkAFqJAAgAQ8LIAdBEEGIn+MAEKwQAAsgAUEkQZif4wAQrBAAC0H8veAAQTcgAkFAa0HEk9gAQYC/4AAQxQ4AC84ZAhJ/A34jAEHAAWsiBCQAIARBmAFqIAEQ0QQgBCgCoAEhBQJ/IAQpA5gBIhZQRQRAIAQgBCgCpAE2AkQgBCAFNgJAIAQgFjcDOAJAAkACQAJAAkACQAJAIAFBKGoiBxDKDSIFBEAgBSgCAEENRg0BCyAEQaABaiAHEJEQIAQgBxCFFCAEQdjh3wA2ApwBIARBNDoAmAEgBCgCACAEKAIEIARBmAFqEIEVIQUgBxDKDSICRQ0GIAIoAgBBJEcNBiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwGCyABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgBEGkAWogAUHUAmopAgA3AgAgBEGsAWogAUHcAmooAgA2AgAgBCABKQLMAjcCnAEgBCAFNgKYASAEQZgBaiIGEMYKIARBADYCXCAEQoCAgICAATcCVCABQcwCaiEIIAFByAJqIRAgBkEEciEJIARBoAFqIRJBCCEVAkADQAJAIARBmAFqIgYgAUEAENMIAkACQAJAAkAgBC0AmAENACAELQCZAQ0GIAcQwyAaIAcQwyAhCiAHEMoNIgVFBEAgASgCgAIhASAEQQA6AJgBIAEgASAGEIEVIQUMCwsCfwJAAkACQAJAAkACfwJAAkACQAJAAkAgBSgCACIGQRtrDgMBBgIACyAGQQtGDQIgBkEkRw0FIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNFEHl7OAAQShBuOTfABD0FwALIARBmAFqIAEQxQIgBCgCmAEiBUUNAiAFQQdGDQpB5ezgAEEoQYDl3wAQ9BcACyAEQQA2AnQgBEKAgICAEDcCbCAEIAUrAxA5A2AgBEHsAGoiDEEiEP4HIARBMGogBUEIahCUDCAMIAQoAjAgBCgCNBD2HSAMQSIQ/gcgCSAIKQIANwIAIAlBCGogCEEIaikCADcCACAJQRBqIAhBEGooAgA2AgAgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIAQgBTYCmAEgBEGYAWoiBhDGCiABKAKcAyEFIARBrgE6AJgBIAEgCiAFIAUgCksbIg8gCiAFIAUgCkkbIhEgBhDGGSAEQQA2ApABIARCgICAgBA3AogBIARBAzoAuAEgBEEgNgKoASAEQQA2ArQBIARBiOTYADYCsAEgBEEANgKgASAEQQA2ApgBIAQgBEGIAWo2AqwBIARB4ABqIAYQpRkNBSAEQYABaiAEQZABaigCADYCACAEIAQpAogBNwN4IARB+ABqEKYZIhdCIIinIQ4gDBCmGSEWIBenDAILIAcQyg0iBUUNAyAFKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0SQeXs4ABBKEHI5N8AEPQXAAsgCSAIKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAJQQhqIgYgCEEIaiILKQIANwIAIAlBEGoiDiAIQRBqIg8oAgA2AgAgBCAFNgKYASAEQZgBaiIMEMYKIARBKGogARCOBiAEKAIsIQUgBCgCKA0SIAQgBTYCmAEgDBDeKCABKAKcAyEFIARBkwE6AJgBIAEgCiAFIAUgCksbIAogBSAFIApJGyAMEMYZAkAgBxDKDSIFBEAgBSgCAEEMRg0BCyASIAcQkRAgBEEgaiAHEIUUIARB2OTfADYCnAEgBEE0OgCYASAEKAIgIAQoAiQgBEGYAWoQgRUhBSAHEMoNIgJFDRMgAigCAEEkRw0TIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNBiABIAEoAswCEP8LDBMLIAkgCCkCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgBiALKQIANwIAIA4gDygCADYCACAEIAU2ApgBIARBmAFqEMYKEJUrIRcgCiABKAKcAyIFIAUgCksbIQ8gCiAFIAUgCkkbIREgFkKAgICAgGCDIRYgF0IgiKchDiAXpyEFDAYLIAQpA7ABIRYgBCgCrAEhESAEKAKoASEPIAQoAqQBIQ4gBCgCoAELIQVCASEXQQAMBQsgBEGIAWoiBiABENEEIARBmAFqIAYQlR8gBCgCmAEhBSAELQCsAUECRg0PIAQpA6gBIRYgBCgCpAEhESAEKAKgASEPIAQoApwBIQ4MAwsgASgCgAIhASAEQQA6AJgBIAEgASAEQZgBahCBFSEFDA4LQfy94ABBNyAEQfgAakGg5NgAQYC/4AAQxQ4AC0Hl7OAAQShB8OTfABD0FwALQgAhF0EBCyELAn8CQAJAAkAgBxDKDSIGRQ0AIAYoAgBBFUcNACAGLQAEDQAgCSAIKQIANwIAIAEoAsgCIQYgAUElNgLIAiABIAEpA+ACNwOYAyAJQQhqIAhBCGopAgA3AgAgCUEQaiAIQRBqKAIANgIAIAQgBjYCmAEgBEGYAWoQxgogBEEYaiABELgGIAQoAhwiBiAEKAIYRQ0DGiAFrSAOrUIghoQhFyALRQ0BIBcQ+RogBiEFDA4LIAcQyg0iBgRAIAYoAgBBEEYNAgsgBxDKDSIGBEAgBigCAEEORg0CCyAHEMMgIQsgCSAIKQIANwIAIAlBCGogCEEIaikCADcCACAJQRBqIAhBEGooAgA2AgAgASgCyAIhBiABQSU2AsgCIAEgASkD4AI3A5gDIAQgBjYCmAEgBEGYAWoiBhDGCiABKQOYAyEYIBAQiyUgAUEAOgDoAiABIBg3A+ACIBBBEGpBuMXgACkDADcDACAQQQhqQbDF4AApAwA3AwAgEEGoxeAAKQMANwMAIARB9QA6AJgBIAEgCyALIAYQxhlBAAwCCyAXIBYQjCsgBiEFDAwLQQALIQYgCiABKAKcAyIUIAogFEkbIQwgBCgCVCANRgRAIARB1ABqEMoXIAQoAlghFQsgEyAVaiILIBc3AwAgC0EoaiAGNgIAIAtBJGogCiAUIAogFEsbNgIAIAtBIGogDDYCACALQRhqIBY3AgAgC0EUaiARNgIAIAtBEGogDzYCACALQQxqIA42AgAgC0EIaiAFNgIAIAQgDUEBaiIGNgJcAkAgBxDKDSIFBEAgBSgCAEEQRg0BCyAEQZgBaiIMIAFBABDTCCAELQCYAQ0BIAQtAJkBDQUgBxDKDSIFDQIgASgCgAIhBSAEQQA6AJgBIAUgBSAMEIEVEK8YIgUNAiAEQYgBakGg8t8AQQMQyxUMAwsgCSAIKQIANwIAIAEoAsgCIQUgAUElNgLIAiABIAEpA+ACNwOYAyAJQQhqIAhBCGopAgA3AgAgCUEQaiAIQRBqKAIANgIAIAQgBTYCmAEgBEGYAWoQxgoMAwsgBCgCnAEhBQwJCyAEIAU2AmAgBEEBNgKcASAEQYT44AA2ApgBIARCATcCpAEgBEGzAjYCfCAEIARB+ABqNgKgASAEIARB4ABqNgJ4IARBiAFqIARBmAFqEPoUCyAEQRBqIAcQhRQgBCgCFCEFIAQoAhAhDSASQQhqIARBkAFqKAIANgIAIBIgBCkCiAE3AgAgBEGoxeAANgKcASAEQTQ6AJgBIAEgDSAFIARBmAFqEMYZCyATQTBqIRMgBiENDAELCyANQQFqIQ0LIAQoAlghBSAEKAJUIgZBgICAgHhGDQQgBCANNgJQIAQgBTYCTCAEIAY2AkgCQAJAIAcQyg0iBQRAIAUoAgBBDkYNAQsgBEGgAWogBxCRECAEQQhqIAcQhRQgBEGw4d8ANgKcASAEQTQ6AJgBIAQoAgggBCgCDCAEQZgBahCBFSEFIAcQyg0iAkUNAyACKAIAQSRGDQEMAwsgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIARBpAFqIAhBCGopAgA3AgAgBEGsAWogCEEQaigCADYCACAEIAgpAgA3ApwBIAQgBTYCmAEgBEGYAWoiBhDGCiABKAKcAyEBIAYgBEE4ahClHEEwQQgQqyAiBSACIAEgASACSRs2AhwgBSACIAEgASACSxs2AhggBSADOgAtIAVBADoALCAFQRBqIARBqAFqKQMANwMAIAVBCGogBEGgAWopAwA3AwAgBSAEKQOYATcDACAFIAQpAkg3AiAgBUEoaiAEQdAAaigCADYCAEEADAgLIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABIAEoAswCEP8LDAILQeXs4ABBKEHI4d8AEPQXAAtB5ezgAEEoQfDh3wAQ9BcACyAEQcgAahCCJwwCCyABKALMAiEFCyAEQdQAahCCJwsgBCkDOCEWCyAWEPkaC0EBCyEBIAAgBTYCBCAAIAE2AgAgBEHAAWokAAvslQEDI38CfgF8IwBBkAhrIgYkAAJAAkAgBgJ/AkACQAJAAkACQAJAAkACQAJAAkAgAUEoaiIMEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQtGDQELAkAgDBDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEKRg0CCyAMEMoNIgNFDQogAygCAEECRw0KIAMtAAgNCiADLQAJQQlHDQogDBDDICEDAkAgDBDKDSIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACUEJRg0DCyAGQbABaiAMEJEQIAZBQGsgDBCFFCAGQZjm3wA2AqwBIAZBNDoAqAEgBigCQCAGKAJEIAZBqAFqEIEVIQQgDBDKDSIDRQ0IIAMoAgBBJEcNCCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQYgASABKALMAhD/CwwICyAMEMMgIQMCQAJAIAwQyg0iBEUNACAEKAIAQQJHDQAgBC0ACA0AIAQtAAlBC0YNAQsgBkGwAWogDBCRECAGQdgAaiAMEIUUIAZBuOrfADYCrAEgBkE0OgCoASAGKAJYIAYoAlwgBkGoAWoQgRUhBCAMEMoNIgNFDQggAygCAEEkRw0IIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEP8LDAgLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEMYKDAYLIAwQwyAhAwJAIAwQyg0iBEUNACAEKAIAQQJHDQAgBC0ACA0AIAQtAAlBCkYNAwsgBkGwAWogDBCRECAGQdAAaiAMEIUUIAZB4OrfADYCrAEgBkE0OgCoASAGKAJQIAYoAlQgBkGoAWoQgRUhBCAMEMoNIgNFDQYgAygCAEEkRw0GIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNAyABIAEoAswCEP8LDAYLIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEMYKQQIhBQwEC0Hl7OAAQShB0OrfABD0FwALIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAGQbQBaiABQdQCaikCADcCACAGQbwBaiABQdwCaigCADYCACAGIAEpAswCNwKsASAGIAQ2AqgBIAZBqAFqEMYKQQEhBQwCC0Hl7OAAQShB+OrfABD0FwALQeXs4ABBKEGI698AEPQXAAsgBkHIAGogARB7IAYoAkwhBCAGKAJIDQAgBkGDBWogBkHiAGotAAA6AAAgBiAFOgCABSAGIAYvAGA7AIEFIAYgAyABKAKcAyIBIAEgA0kbNgL8BCAGIAMgASABIANLGzYC+ARBDgwBC0EUCzYC8AQgBiAENgL0BCAGQThqIAZB8ARqEJYYIAYoAjwhAyAGKAI4IQQMAQsgBgJ/AkACQAJAAkACQAJAAkACQAJAIAwQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBD0YNAQtBASEEIAZB8ARqIAFBuOffAEEBQQAQuQIgBigC9AQhDiAGKALwBEUNASAOIQMMCQsgDBDDICEIAkACQAJAAkACQAJAIAwQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBD0YNAQsgBkH4BGogDBCRECAGQShqIAwQhRQgBkHQ4t8ANgL0BCAGQTQ6APAEIAYoAiggBigCLCAGQfAEahCBFSEDIAwQyg0iBEUNCyAEKAIAQSRGDQEMCwsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAZB/ARqIAFB1AJqKQIANwIAIAZBhAVqIAFB3AJqKAIANgIAIAYgASkCzAI3AvQEIAYgAzYC8AQgBkHwBGoiAxDGCiADIAEQ0QQgBigC+AQhAyAGKQPwBCIlUA0DIAYgBigC/AQiBzYCpAEgBiADNgKgASAGICU3A5gBIAEtAKACQQJHDQIgAS0AqgIhCSAGQagBaiABEKMDQQEhBCAGQQE6AMsEIAYgASkAqwI3AMwEIAYgASkAswI3ANQEIAYgASkAuwI3ANwEIAYgASgAwwI2AOQEIAZB0AFqIg4gBkHLBGoQ0ggCQAJAAkAgDhDKDSIFRQ0AIAUoAgBBAkcNACAFLQAIQQJHDQAgBS0ACUEaRg0BCyAGQfgEaiAOEJEQIAZB+OLfADYC9AQgBkE0OgDwBCAGQcAEaiAGQYgEaiAGKALwA0ElRiICGygCACIFIAZBxARqIAZBjARqIAIbKAIAIgIgAiAFSxsgBSACIAIgBUkbIAZB8ARqEIEVIQUgDhDKDSIORQ0BIA4oAgBBJEcNASAGIAYpA4gENwPABCAGKALwAyAGQSU2AvADQSRHDQggBkGoAWogBigC9AMQ/wsMAQsgBkH8BGogBkH8A2opAgA3AgAgBkGEBWogBkGEBGooAgA2AgAgBigC8AMhBCAGQSU2AvADIAYgBikC9AM3AvQEIAYgBDYC8AQgBiAGKQOIBDcDwAQgBkHwBGoQxgogBkEwaiAGQagBahDZASAGIAYoAjQiBTYC9AQgBiAGKAIwIgQ2AvAEIAYtAO0DQQFxDQAgDhDKDSIORQ0AIA4oAgBBF0cNACAGQfQEaiEFAkAgBEUEQCAFELsFDAELIAUQ/yILQQAhBUEAIQQLIAYgBTYC7AQgBiAENgLoBCAEQQEgBRtFDQEgBEEBcQRAIAZB7ARqEP8iCyAGQagBahDfEEEAIQUMAgsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMCQsgBkHwBGoiBCAGQagBakGgAxD7BhogARDfECABIARBoAMQ+wYhBCAGIAk6AGAgBiAEKQCrAjcAYSAGIAQpALMCNwBpIAYgBCkAuwI3AHEgBiAEKADDAjYAeSAMIAZB4ABqENIICyAGQfAAaiAGQZgBahClHCAGQY8BakEANgAAIAZBADYCjAEgBiAFNgKIASAGIAc2AmwgBiADNgJoIAYgCCABKAKcAyIBIAEgCEkbNgJkIAYgCCABIAEgCEsbNgJgIAZBrAFqIAZB4ABqQTgQ+wYaIAZB8ARqQQRyIAZBqAFqQTwQ+wYaQQwMCAsMBgsgBkEYaiEYQQAhAyMAQcAMayICJAAgAUEoaiIHEMMgIQQCQCAHEMoNIgVFBEAgASgCgAIhAyACQQA6APAIIAMgAyACQfAIahCBFSEDQQEhBQwBCwJAAkAgAgJ/AkACQCACAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAFKAIAIghBCWsODAEgAiAYICAgFyAgBgALAkACQCAIQRtrDgoYIRgYISEhISEAAQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0hQeXs4ABBKEHI698AEPQXAAsgCEECRw0fQQQgBS0ACEECa0H/AXEiAyADQQRPG0EBaw4EBxYWBwYLIAcQwyAhBQJAIAcQyg0iAwRAIAMoAgBBCUYNAQsgAkH4CGogBxCRECACQYABaiAHEIUUIAJB8OXfADYC9AggAkE0OgDwCCACKAKAASACKAKEASACQfAIahCBFSEDIAcQyg0iBEUNHSAEKAIAQSRHDR0gASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ/wsMHQsgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFB1AJqKQIANwIAIAJBhAlqIAFB3AJqKAIANgIAIAIgASkCzAI3AvQIIAIgAzYC8AggAkHwCGoQxgogAkGQAWogARCWAiACKAKUASEDIAIoApABDRwgAiADNgKwBQJAIAcQyg0iBARAIAQoAgBBCkYNAQsgAkH4CGogBxCRECACQYgBaiAHEIUUIAJByOXfADYC9AggAkE0OgDwCCACKAKIASACKAKMASACQfAIahCBFSEDIAcQyg0iBEUNHCAEKAIAQSRHDRwgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMHAsgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFBzAJqIgRBCGopAgA3AgAgAkGECWogBEEQaigCADYCACACIAQpAgA3AvQIIAIgCDYC8AggAkHwCGoQxgogBSABKAKcAyIIIAUgCEkbIQQgAw0BIAQhAwwcCyAHEMMgIRECQAJAIAcQyg0iBARAIAQoAgBBC0YNAQsgAkH4CGogBxCRECACQaABaiAHEIUUIAJBwObfADYC9AggAkE0OgDwCCACKAKgASACKAKkASACQfAIahCBFSEFIAcQyg0iA0UNGiADKAIAQSRHDRogASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ/wsMGgsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAJB/AhqIAFB1AJqKQIANwIAIAJBhAlqIAFB3AJqKAIANgIAIAIgASkCzAI3AvQIIAIgBDYC8AggAkHwCGoiBBDGCiACQQA2AsQEIAJCgICAgIABNwK8BCABQcwCaiELIARBBHIhCiACQZAFaiENIAJB+AhqIRkgAkHoAmpBBHIhHSACQfACaiEeIAJBpQxqIRogAkGFCWohGyACQZAMakEEciEcIAJB/AdqIQ8gAkHYBWohEiACQZQIaiEfIAJBzAhqISAgAkGQCGohISACQcgIaiEiA0ACQCACQfAIaiABQQIQ0wgCQAJAIAItAPAIDQAgAi0A8QhBAUYEQCACKALEBCEJIAIoAsAEIQgMHQsgBxDDIBogBxDDICEIAkAgAS0AoAJBAkcEQCACQQc2AogFDAELIAEtAKoCISMgAkGwBWogARCjAyACQQE6ANMIIAIgASkAqwI3ANQIIAIgASkAswI3ANwIIAIgASkAuwI3AOQIIAIgASgAwwI2AOwIIBIgAkHTCGoQ0ghBACEFIBIQwyAhBAJAIBIQyg0iCUUNACAJKAIAQQdHDQAgCiAPKQIANwIAIApBCGogD0EIaikCADcCACAKQRBqIA9BEGooAgA2AgAgAigC+AchBSACQSU2AvgHIAIgBTYC8AggAiACKQOQCDcDyAggAkHwCGoQxgpBASEFIAIoAswIIRAgAigCyAghFAsgAkGwDGoiCSACQbAFahDRBCACQfAIaiITIAkQlR8gAigC8AghCQJAAkACQCACLQCECSIkQQJHBEAgHCAKKQIANwIAIBogGy8AADsAACAcQQhqIApBCGoiFykCADcCACAaQQJqIBtBAmotAAA6AAAgAiAkOgCkDCACIAk2ApAMAkAgEhDKDSIJRQ0AIAkoAgBBF0cNACAKIA8pAgA3AgAgFyAPQQhqKQIANwIAIApBEGogD0EQaigCADYCACACKAL4ByEJIAJBJTYC+AcgAiAJNgLwCCACIAIpA5AINwPICCATEMYKIAJBAToApAwgAiACKAKYDCIJIAIoAswIIhMgCSATSRs2ApgMIAIgCSATIAkgE0sbNgKcDAsgAgJ/AkACQAJAIBIQyg0iCQRAIAkoAgBBE0YNAQsgGSASEJEQIAJBoODfADYC9AggAkE0OgDwCCAiICEgAigC+AdBJUYiBRsoAgAiBCAgIB8gBRsoAgAiBSAEIAVJGyAEIAUgBCAFSxsgAkHwCGoQgRUhBCASEMoNIgVFDQYgBSgCAEEkRg0BDAYLIAogDykCADcCACAXIA9BCGopAgA3AgAgCkEQaiAPQRBqKAIANgIAIAIoAvgHIQkgAkElNgL4ByACIAk2AvAIIAIgAikDkAg3A8gIIAJB8AhqIgkQxgogBUUNASACKALMCCEFIBkgAkGQDGoQ6xggAkEANgLwCEEoEIUjIAlBKBD7BiEJIAJBADYCgAMgAiAQNgL8AiACIBQ2AvgCIAIgBCAFIAQgBUsbNgL0AiACIAQgBSAEIAVJGzYC8AIgAiAJNgLsAkECDAILIAIgAikDkAg3A8gIIAIoAvgHIAJBJTYC+AdBJEcNAyACQbAFaiACKAL8BxD/CwwECyAeIAJBkAxqEOsYQQALNgLoAiACQYgFaiACQegCakEoEPsGGiACQfAIaiIEIAJBsAVqQaADEPsGGiABEN8QIAEgBEGgAxD7BiEEIAIgIzoAkAwgAiAEKQCrAjcAkQwgAiAEKQCzAjcAmQwgAiAEKQC7AjcAoQwgAiAEKADDAjYAqQwgByACQZAMahDSCAwECyACIAk2AuwCIAJBCDYC6AIMAgtB5ezgAEEoQYjz3wAQ9BcACyACQQg2AugCIAIgBDYC7AIgAikDkAwQ+RoLIAJBBzYCiAUgHRD/IiACQbAFahDfEAsCQAJAAkACfwJAIAcQyg0iBARAIAQoAgBBB0YNAQsgAkG4AWogARCWAiACKAK8ASEEIAIoArgBRQ0DIAQMAQsgCiALKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyAKQQhqIAtBCGopAgA3AgAgCkEQaiALQRBqKAIANgIAIAIgBDYC8AggAkHwCGoQxgogAkHAAWogARCWAiACKALEASEQIAIoAsABRQ0BIBALIQUgAkGIBWoQjCVBCCEJIAMhBAwCCyACQfAEaiANQQhqKQMANwMAIAJB+ARqIA1BEGopAwA3AwAgAkGABWogDUEYaikDADcDACACIA0pAwA3A+gEIAEoApwDIQMgAigCjAUhBSACKAKIBSEJQdgAQQgQqyAiBCAIIAMgAyAISRsiFTYCDCAEIAggAyADIAhLGyIWNgIIIAQgEDYCBCAEQQk2AgAMAQsCQCAHEMoNIgMEQCADKAIAQRdGDQELIAJB8ARqIA1BCGopAwA3AwAgAkH4BGogDUEQaikDADcDACACQYAFaiANQRhqKQMANwMAIAIgDSkDADcD6AQgCCABKAKcAyIDIAMgCEsbIRYgCCADIAMgCEkbIRUgAigCjAUhBSACKAKIBSEJDAELIAogCykCADcCACABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgCkEIaiALQQhqKQIANwIAIApBEGogC0EQaigCADYCACACIAM2AvAIIAJB8AhqEMYKIAJB8ARqIA1BCGopAwA3AwAgAkH4BGogDUEQaikDADcDACACQYAFaiANQRhqKQMANwMAIAIgDSkDADcD6AQgASgCnAMhECACKAKIBSEJIAIoAowFIQVB2ABBCBCrICIDIAggECAIIBBLGyIVNgIMIAMgCCAQIAggEEkbIhY2AgggAyAENgIEIANBCDYCACADIQQLIAlBCEYNGyACQeAEaiIQIAJBgAVqKQMANwMAIAJB2ARqIhQgAkH4BGopAwA3AwAgAkHQBGoiFyACQfAEaikDADcDACACIAIpA+gENwPIBCACKALEBCITIAIoArwERgRAIAJBvARqENIXCyACKALABCIIIBNBOGxqIgMgBTYCBCADIAk2AgAgAyACKQPIBDcCCCADIAQ2AjAgAyAVNgIsIAMgFjYCKCADQRBqIBcpAwA3AgAgA0EYaiAUKQMANwIAIANBIGogECkDADcCACACIBNBAWoiCTYCxAQCQCAHEMoNIgMEQCADKAIAQRBGDQELIAJB8AhqIAFBAhDTCCACLQDwCA0BIAItAPEIDR0gBxDKDSIDBEAgAygCAEEQRg0DCyACQfgIaiAHEJEQIAJBsAFqIAcQhRQgAkGoxeAANgL0CCACQTQ6APAIIAIoArABIAIoArQBIAJB8AhqEIEVIQUgBxDKDSIDRQ0cIAMoAgBBJEcNHCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQMgASABKALMAhD/CwwcCyAKIAspAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIApBCGogC0EIaikCADcCACAKQRBqIAtBEGooAgA2AgAgAiADNgLwCCACQfAIahDGCiAEIQMMAwsgAigC9AghBQwaCyAKIAspAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIApBCGogC0EIaikCADcCACAKQRBqIAtBEGooAgA2AgAgAiADNgLwCCACQfAIahDGCiAEIQMMAQsLQeXs4ABBKEGQ8t8AEPQXAAtB5ezgAEEoQZjr3wAQ9BcACyACIAUgCCAFIAhLGzYC/AggAiAENgL4CCACIAM2AvQIQQ0MGwtB5ezgAEEoQZjw3wAQ9BcAC0Hl7OAAQShBiPDfABD0FwALIAUtAARBDEcNGSAHEMMgIQQgAkH8CGogAUHUAmopAgA3AgAgAkGECWogAUHcAmooAgA2AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAIgASkCzAI3AvQIIAIgAzYC8AggAkHwCGoiBRDGCiAHEMoNIgNFBEAgASgCgAIhAyACQQA6APAIIAMgAyAFEIEVIQNBASEFDBwLAkACQAJAAkAgAygCACIDQR1rQQJPBEAgA0EkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYNIEHl7OAAQShB2OvfABD0FwALIAJB/AhqIAcQkRAgAkGoAmogBxCFFCACQSE2AvgIIAJB6OvfADYC9AggAkEwOgDwCCACKAKoAiACKAKsAiACQfAIahCBFSEDQQEhBSAHEMoNIgRFDSAgBCgCAEEkRw0gIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNASABIAEoAswCEP8LDCALIAJB8AhqIAEQxQIgAigC8AgiA0EHRg0LIAIoAogJIQggAikDgAkhJSACKAL8CCEHIAIoAvgIIQoCQAJAAkAgA0EDaw4CAQIAC0Hl7OAAQShBvOzfABD0FwALIAI1AowJISYgAiAlNwPgAiACQbAFaiIDQZjk4ABBARDLFQJ8IAitICZCIIaEIiZQRQRAIAIgJjcD8AggAkGwAmogAkHwCGoQlAwgAyACKAKwAiACKAK0AhD2HSACKQPwCBD5GiAlvwwBCyACQQE2AvQIIAJBhPjgADYC8AggAkIBNwL8CCACQfUBNgLsAiACIAJB6AJqNgL4CCACIAJB4AJqNgLoAiACQbAFaiACQfAIahDwJA0DIAIrA+ACCyACQfgIaiACQbgFaigCADYCACACIAIpArAFNwPwCCACQfAIahCmGSImQoCAgIBwgyElmiEnICanIQhBgICAgHghCQwECyACIAg2AogFIAJBsAVqIgNBmOTgAEEBEMsVAkAgJVBFBEAgAiAlNwPwCCACQbgCaiACQfAIahCUDCADIAIoArgCIAIoArwCEPYdIAIpA/AIEPkaDAELIAJBATYC9AggAkGE+OAANgLwCCACQgE3AvwIIAJBuAI2AuwCIAIgAkHoAmo2AvgIIAIgAkGIBWo2AugCIAJBsAVqIAJB8AhqEPAkDQMgAigCiAUhCAsgAkH4CGoiAyAIQQhqKAIANgIAIAJB6gJqIgUgCEEPai0AADoAACACIAgpAgA3A/AIIAIgCC8ADTsB6AIgCC0ADCEJQRBBBBCrICIIQQIgCWs6AAwgCEEIaiADKAIANgIAIAggAikD8Ag3AgAgCCACLwHoAjsADSAIQQ9qIAUtAAA6AAAgAyACQbgFaigCADYCACACIAIpArAFNwPwCCACQfAIahCmGSACKAKIBRCSK78hJ0IAISVBg4CAgHghCQwDC0Hl7OAAQShBjOzfABD0FwALQZzr4ABBKyACQfAIakGg5NgAQZzs3wAQxQ4AC0Gc6+AAQSsgAkHwCGpBoOTYAEGs7N8AEMUOAAsgASgCnAMhBUHYAEEIEKsgIgMgJSAIrYQ3AyAgAyAnOQMYIAMgBzYCFCADIAo2AhAgAyAJNgIIIANBETYCACADIAQgBSAEIAVLGzYCLCADIAQgBSAEIAVJGzYCKAwJCwJAIAUtAAkiA0EXaw4LBBkZGRkCARkZAwEACyADQQJPDRgLAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEURw0AIAcQrRMiA0UNACADKAIAQQJHDQAgAy0ACEECRw0AIAMtAAlBF0YNBAsgBxDKDSIDRQ0EIAMoAgBBAkcNBCADLQAIQQJHDQQgAy0ACUEhRw0EQQghBQwNCyACQegCaiIDIAEQzwEgAgJ/IAItAJwDQQRHBEAgAkG0BWogA0HAABD7BhogAkHwCGpBBHIgAkGwBWpBxAAQ+wYaQRMMAQsgAiACKALoAjYC9AhBFAs2AvAIIAJBMGogAkHwCGoQlhggAigCNCEDIAIoAjAhBQwYCyAHEMMgIQgCQAJAAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUEgRg0BCyACQfgIaiAHEJEQIAJBQGsgBxCFFCACQZDk3wA2AvQIIAJBNDoA8AggAigCQCACKAJEIAJB8AhqEIEVIQMgBxDKDSIERQ0BIAQoAgBBJEcNASABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQggASABKALMAhD/CwwBCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAkH8CGogAUHUAmopAgA3AgAgAkGECWogAUHcAmooAgA2AgAgAiABKQLMAjcC9AggAiADNgLwCCACQfAIahDGCgJAAkACQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAhBAkcNACADLQAJQRxGDQELIAJB8AhqIAFBARDUAiACKALwCCEDIAItAIQJQQNGDQIgAkHEBWogAkGECWooAgA2AgAgAkG8BWogAkH8CGopAgA3AgAgAiACKQL0CDcCtAVBBCEEDAELIAJB8AhqIgUgARDPASACKALwCCEDIAItAKQJIgRBBEYNASACQbAFakEEciAFQQRyQTAQ+wYaIAJB7AVqIAJBrAlqKAAANgAAIAIgAikApQk3AOUFCyACIAQ6AOQFIAIgAzYCsAVBACEDAkACQCAHEIghDQAgBxDKDSIFRQ0AIAUoAgBBFEcNACAFLQAEQQRHDQAgAkEAOgD1AiACIAEtALYCOgD0AiACIAEtAMYCOgCEAyACIAEpAaoCNwDoAiACIAEpA7gCNwD2AiACIAEoAsACNgD+AiACIAEvAcQCOwCCAyACIAFBsgJqIgMoAQA2APACIAJBiQlqIAFBvwJqKQAANwAAIAJBhAlqIAFBugJqKQEANwIAIAJB/AhqIAMpAQA3AgAgAiABKQGqAjcC9AggByACQegCahDSCCACIAE2AvAIIAJByABqIAEQ7wEgAigCTCEDIAIoAkggAkHwCGoQhyUNASACLQDkBSEECyABKAKcAyEHIAJBuANqIAJBsAVqQTQQ+wYaIAIgAkHsBWooAAA2AK8DIAIgAikA5QU3A6gDIAggByAHIAhLGyEFIARB/wFxQQVHDQkgBSEDDAELIAJBsAVqEOEhCyACIAM2AvQIQRQhBwwKCyAHEMMgIQggAkHwCGoiCSABENAHIAIoAvAIDQIgAigC+AghBCACKAL0CCEFIAcQiCENAyAHEMoNIgNFDQMgAygCAEECRw0DIAMtAAgNAyADLQAJQQ5HDQMgAkHoAmoiAyABIAhBACAFIAQQiQggAgJ/IAItAIwDQQJHBEAgAkG0BWogA0EoEPsGGiAJQQRyIAJBsAVqQSwQ+wYaQRIMAQsgAiACKALoAjYC9AhBFAs2AvAIIAJBKGogAkHwCGoQlhggAigCLCEDIAIoAighBQwWCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAkH8CGogAUHUAmopAgA3AgAgAkGECWogAUHcAmooAgA2AgAgAiABKQLMAjcC9AggAiADNgLwCCACQfAIaiIDEMYKIAMgARDQByACKALwCA0BIAJB6AJqIgUgASAEQQEgAigC9AggAigC+AgQiQggAgJ/IAItAIwDQQJHBEAgAkG0BWogBUEoEPsGGiADQQRyIAJBsAVqQSwQ+wYaQRIMAQsgAiACKALoAjYC9AhBFAs2AvAIIAJBIGogAkHwCGoQlhggAigCJCEDIAIoAiAhBQwVCyAHEMoNIgMNBQwGCyACKAL0CCEDQQEhBQwTC0HYAEEIEKsgIgMgBDYCCCADIAU2AgQgA0EBNgIAC0EAIQUMEQtB5ezgAEEoQajk3wAQ9BcACyACIAggByAHIAhJGzYC/AggAiAFNgL4CCACQYAJaiACQbgDakE0EPsGGiACQbwJaiACKACvAzYAACACIAQ6ALQJIAIgAzYCwAkgAiACKQOoAzcAtQlBBCEHDAILIAMoAgBBAkcNACADLQAIQQNHDQBBCiEFDAILAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEYRw0AQQAhBQwCCwJAIAcQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBH0cNAEEEIQUMAgsCQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQR5HDQBBBSEFDAILAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEgRw0AQQshBQwCCwJAIAcQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBHUcNAEECIQUMAgsCQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRxHDQBBAyEFDAILAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUEbRw0AQQYhBQwCCwJAIAcQyg0iA0UNACADKAIAQQJHDQAgAy0ACA0AIAMtAAlBEEcNAEEHIQUMAgsCQCAHEMoNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQRpHDQBBASEFDAILAkAgBxDKDSIDRQ0AIAMoAgBBAkcNACADLQAIDQAgAy0ACUERRw0AQQkhBQwCC0ENIQUgBxDKDSIDRQ0BIAMoAgBBAkcNASADLQAIDQFBDEENIAMtAAlBGUYbIQUMAQsgAiAHNgLwCCACQThqIAJB8AhqEJYYIAIoAjwhAyACKAI4IQUMDAsgBxCtEyIDBH8gAygCAEEGRgVBAAtFIAVBDUdxRQRAIAcQwyAhBSACQfAIaiIEIAEQhAgCQAJAIAItAPAIRQRAIAItAPEIIAQgAUEBENQCIAIoAvAIIQMgAi0AhAkiCEEDRg0BIAJB9AJqIAJB/AhqIgopAgA3AgAgAkH/AmogAkGHCWotAAA6AAAgAiACKQL0CDcC7AIgAiACLwCFCTsA/QIgAiAIOgD8AiACIAM2AugCQQAhAwJAIAcQiCENACAHEMoNIghFDQAgCCgCAEEURw0AIAgtAARBBEcNACACQQA6AL0FIAIgAS0AtgI6ALwFIAIgAS0AxgI6AMwFIAIgASkBqgI3ALAFIAIgASkDuAI3AL4FIAIgASgCwAI2AMYFIAIgAS8BxAI7AMoFIAIgAUGyAmoiAygBADYAuAUgAkGJCWogAUG/AmopAAA3AAAgAkGECWogAUG6AmopAQA3AgAgCiADKQEANwIAIAIgASkBqgI3AvQIIAcgAkGwBWoQ0gggAiABNgLwCCACQRhqIAEQ7wEgAigCHCEDIAIoAhggBBCHJUUNACACQegCahDXGwwCC0EBcQRAIAEoApwDIQQgAkGoAToA8AggASAFIAQgBCAFSxsgBSAEIAQgBUkbIAJB8AhqEMYZCyACQdACaiIJIAJB8AJqKQMANwMAIAJB2AJqIgogAkH4AmooAgA2AgAgAkHGAmoiCyACQf0CaiIEQQJqLQAAOgAAIAIgAikD6AI3A8gCIAIgBC8AADsBxAIgBSABKAKcAyIIIAUgCEkbIQRBAyEHIAItAPwCIg1BA0YEQCAEIQMMAgsgAkGICWogCSkDADcDACACQZAJaiAKKAIANgIAIAJBlwlqIAstAAA6AAAgAiAFIAggBSAISxs2AvwIIAIgBDYC+AggAiACKQPIAjcDgAkgAiANOgCUCSACIAIvAcQCOwCVCSACIAM2ApgJDAILIAIoAvQIIQMLIAIgAzYC9AhBFCEHCyACIAc2AvAIIAJBEGogAkHwCGoQlhggAigCFCEDIAIoAhAhBQwMCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAkH8CGogAUHUAmopAgA3AgAgAkGECWogAUHcAmooAgA2AgAgAiABKQLMAjcC9AggAiADNgLwCCACQfAIahDGCiABKAKcAyEIQdgAQQgQqyAiAyAFOgAMQQAhBSADQQA2AgAgAyAEIAggBCAISxs2AgggAyAEIAggBCAISRs2AgQMCwsgBxDDICEKIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAHEMoNIgMEQCADKAIAQRFGDQELIAJB8AhqIAEQxQIgAigC9AghAyACKALwCCIIQQdGDREgAkHIBWogAkGICWopAwA3AwAgAkHABWogAkGACWopAwA3AwAgAiACKQP4CDcDuAUgAiADNgK0BSACIAg2ArAFIAgOBQIFAQMEAQsgBxDDICELIAcQyg0iA0UEQCABKAKAAiEDIAJBADoA8AggAyADIAJB8AhqEIEVIQMMEQsgAygCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCSABKALMAiEDDBELIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQfwIaiABQdQCaikCADcCACACQYQJaiABQdwCaigCADYCACACIAEpAswCNwL0CCACIAM2AvAIIAJB8AhqIggQxgogAkEANgLwBCACQoCAgIDAADcC6AQgAkGwBWoiDSABQQAQygQgAigCsAUhAyACLQDIBSIJQQJGDQ8gAUHMAmohBCACQfgCaiIPIAJBxAVqKAIANgIAIAJB8AJqIhEgAkG8BWopAgA3AwAgAiACKQK0BTcD6AIgAiACKADJBTYCkAwgAiACQcwFaigAADYAkwxBIEEIEKsgIgUgAzYCACAFIAk6ABggBSACKQPoAjcCBCAFQQxqIBEpAwA3AgAgBUEUaiAPKAIANgIAIAUgAigCkAw2ABkgBUEcaiACKACTDDYAACACQQE2ApAFIAIgBTYCjAUgAkEBNgKIBSANQQRyIQUgAkGJCWohDSAIQQRyIQggAkHJBWohDwNAIAlBAXFFBEACQCAHEMoNIgMEQCADKAIAQRZGDQELIAJBuAVqIAcQkRAgAkHgAGogBxCFFCACQcDv3wA2ArQFIAJBNDoAsAUgAigCYCACKAJkIAJBsAVqEIEVIQMgBxDKDSIERQ0RIAQoAgBBJEcNESABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQogASABKALMAhD/CwwRCyAFIAQpAgA3AgAgASgCyAIhAyABQSU2AsgCIAEgASkD4AI3A5gDIAVBCGoiESAEQQhqIgkpAgA3AgAgBUEQaiISIARBEGoiECgCADYCACACIAM2ArAFIAJBsAVqEMYKIAJB8ABqIAEQlgIgAigCdCEDIAIoAnANECACQegEaiADENUbAkAgBxDKDSIDBEAgAygCAEEORg0BCyACQbgFaiAHEJEQIAJB6ABqIAcQhRQgAkGw4d8ANgK0BSACQTQ6ALAFIAIoAmggAigCbCACQbAFahCBFSEDIAcQyg0iBEUNESAEKAIAQSRHDREgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0JIAEgASgCzAIQ/wsMEQsgBSAEKQIANwIAIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyARIAkpAgA3AgAgEiAQKAIANgIAIAIgAzYCsAUgAkGwBWoiAxDGCiADIAFBABDKBCACKAKwBSEDIAItAMgFIglBAkYNECAIIAUpAgA3AgAgDSAPKAAANgAAIAhBEGogEigCADYCACAIQQhqIBEpAgA3AgAgDUEDaiAPQQNqKAAANgAAIAIgCToAiAkgAiADNgLwCCACQYgFaiACQfAIahC/EAwBCwsgAkHQBGoiCCACQZAFaigCADYCACACIAIpAogFNwPIBCACKALsBCEDIAIoAugEIgVBgICAgHhGDRAgAigC8AQhCSACQbgFaiAIKAIANgIAIAIgAikDyAQ3A7AFIAIgCTYC8AIgAiADNgLsAiACIAU2AugCIAcQyg0iCARAIAgoAgBBEUYNBgsgAkH4CGogBxCRECACQdgAaiAHEIUUIAJB4OnfADYC9AggAkE0OgDwCCACKAJYIAIoAlwgAkHwCGoQgRUhAyAHEMoNIgRFDQ0gBCgCAEEkRw0NIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCSABIAEoAswCEP8LDA0LQeXs4ABBKEGI6t8AEPQXAAtBgYCAgHghBQwIC0GAgICAeCEFDAcLQYOAgIB4IQUMBgsgAikDuAUhJSACQbAFahCGFEGCgICAeCEFDAYLIAEoAsgCIQggAUElNgLIAiABIAEpA+ACNwOYAyACQfwIaiAEQQhqKQIANwIAIAJBhAlqIARBEGooAgA2AgAgAiAEKQIANwL0CCACIAg2AvAIIAJB8AhqEMYKIAVBhICAgHhGDQogCyABKAKcAyIHIAcgC0kbIQggCyAHIAcgC0sbIQQgCa0gAjUCsAVCIIaEISUgAikCtAUhJgwGC0Hl7OAAQShBsO/fABD0FwALQeXs4ABBKEHY798AEPQXAAtB5ezgAEEoQczp3wAQ9BcAC0Hl7OAAQShB+OnfABD0FwALIAIoAswFIQggAigCyAUhBCACKQPABSEmIAIpA7gFISULIAEoApwDIQcLIAIgCDYClAkgAiAENgKQCSACICY3A4gJIAIgJTcDgAkgAiADNgL8CCACIAU2AvgIIAIgCiAHIAcgCkkbNgKcCSACIAogByAHIApLGzYCmAlBEQwECyACQbAFahD7IiACQegCahDyJgwCCyACQYgFahD7IgsgAkHoBGoQ8iYLIAIgAzYC9AhBFAs2AvAIIAJB0ABqIAJB8AhqEJYYIAIoAlQhAyACKAJQIQUMCgsgAkHwCGogARCjAyACQQE6AOgCIAIgAikAmws3AOkCIAIgAikAows3APECIAIgAikAqws3APkCIAIgAigAsws2AIEDIAJBmAlqIgQgAkHoAmoQ0gggAkGUBWogAkHEC2opAgA3AgAgAkGcBWogAkHMC2ooAgA2AgAgAigCuAshAyACQSU2ArgLIAIgAikD0As3A4gMIAIgAikCvAs3AowFIAIgAzYCiAUgAkGIBWoQxgogAkG8C2ohAyACAn8CQAJAAkACQAJAAkACQAJAAn8CQAJAIAQQyg0iBUUNACAFKAIAQRRHDQAgBS0ABEELRg0BCwJAIAQQyg0iBUUNACAFKAIAQRRHDQAgBS0ABEEMRg0BCwJAIAQQyg0iBUUNACAFKAIAQQJHDQAgBS0ACA0AIAUtAAlBCUcNACACQZQFaiADQQhqKQIANwIAIAJBnAVqIANBEGooAgA2AgAgAigCuAshBSACQSU2ArgLIAIgBTYCiAUgAiACKQPQCzcDiAwgAiADKQIANwKMBSACQYgFahDGCgsgBBDKDSIFRQ0CIAUoAgBBC0cNAiACQZQFaiIIIANBCGopAgA3AgAgAkGcBWoiCSADQRBqKAIANgIAIAIoArgLIQUgAkElNgK4CyACIAU2AogFIAIgAikD0As3A4gMIAIgAykCADcCjAUgAkGIBWoiChDGCiACQbgFaiACQaILaikBADcDACACQcAFaiACQaoLaikBADcDACACQcUFaiACQa8LaikAADcAACACIAIpAZoLNwOwBSAEEMoNIgVFDQIgBSgCAEECRw0CIAJBsAVqIAUtAAggBUEJai0AABDfCQ0CIAggA0EIaikCADcCACAJIANBEGooAgA2AgAgAigCuAshBSACQSU2ArgLIAIgBTYCiAUgAiACKQPQCzcDiAwgAiADKQIANwKMBSAKEMYKIAQQyg0iA0UNAiADKAIAQQJHDQIgAy0ACEECRw0CQR4MAQsgAkGUBWogA0EIaikCADcCACACQZwFaiADQRBqKAIANgIAIAIoArgLIQUgAkElNgK4CyACIAU2AogFIAIgAikD0As3A4gMIAIgAykCADcCjAUgAkGIBWoQxgogBBDKDSIDRQ0BIAMoAgBBAkcNASADLQAIDQFBCQshBCADLQAJIAJB8AhqEN8QIARHDQEgBxDDICEKIAcQyg0iAwRAIAMoAgBBDUYNAwsgAkH4CGogBxCRECACQdgBaiAHEIUUIAJB2OHfADYC9AggAkE0OgDwCCACKALYASACKALcASACQfAIahCBFSEFIAcQyg0iA0UNByADKAIAQSRHDQcgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ/wsMBwsgAkHwCGoQ3xALIAcQwyAhAyACQbAFaiABEE0gAigCtAUhBCACAn8gAigCsAUiBUGAgICAeEcEQCACIAIoArgFNgL8CCACIAQ2AvgIIAIgBTYC9AggAiADIAEoApwDIgQgAyAESxs2AoQJIAIgAyAEIAMgBEkbNgKACUEFDAELIAIgBDYC9AhBFAs2AvAIIAJByAFqIAJB8AhqEJYYIAIoAswBIQMgAigCyAEhBQwQCyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAkH8CGogAUHUAmopAgA3AgAgAkGECWogAUHcAmooAgA2AgAgAiABKQLMAjcC9AggAiADNgLwCCABQcwCaiEIIAJB8AhqEMYKAkACQAJAAkACQAJAAkACQAJAIAcQyg0iA0UNACADKAIAQRRHDQAgAy0ABEELRg0BCyAHEMoNIgNFDQEgAygCAEEURw0BIAMtAARBDEcNAQtBAiEJAkAgBxDKDSIDRQ0A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CiAMIAcpAgA3AgAgASgCyAIhCCABQSU2AsgCIAEgASkD4AI3A5gDIAxBCGogB0EIaikCADcCACAMQRBqIAdBEGooAgA2AgAgAiAINgLAAiACQcACahDGCgJAAkAgBBDKDSIIRQ0AIAgoAgBBAkcNACAILQAIQQJHDQAgCC0ACUEMRg0BC0EAIQogAkEAOgDdASACIAEpAaoCNwDDASACIAEpAbICNwDLASACIAEpAboCNwDTASACIAEvAcICOwDbASACIAEvAMUCOwDeASACQfkBaiADQRVqKQAANwAAIAJB9AFqIANBEGopAQA3AgAgAkHsAWogA0EIaikBADcCACACIAMpAQA3AuQBIAQgAkHDAWoQ0gggAiABNgLgASACQcACaiABEJoqIAIoAsQCIQggAigCwAIiBUETRwRAIAJBmAFqIAJByAJqQSgQ+wYaIAJB4AFqEIclDAwLIABBADYCACAAIAg2AgQgAkHgAWoQhyUMCgsgAiAQOgD8ASACIBE6APsBIAJBAToA+gEgAiASOgD5ASACIBM6APgBIAIgFDoA9wEgAiAVOgD2ASACIBY6APUBIAIgFzoA9AEgAiAYOgDzASACIBk6APIBIAIgGjoA8QEgAiAbOgDwASACIBw6AO8BIAIgHToA7gEgAiAeOgDtASACIB86AOwBIAIgIDoA6wEgAiAhOgDqASACICI6AOkBIAIgIzoA6AEgAiAkOgDnASACICU6AOYBIAIgJjoA5QEgAiAnOgDkASACICg6AOMBIAIgKToA4gEgAiAqOgDhASACICs6AOABIAlBFWogA0EVaikAADcAACAJQRBqIANBEGopAQA3AQAgCUEIaiADQQhqKQEANwEAIAkgAykBADcBACAEIAJB4AFqENIIIAIgATYCwAIgAkGEAmogARCCASACKAKIAiEGIAIoAoQCIghFDQYgAkGgAmoiCiAPQQhqKAIANgIAIAIgDykCADcDmAIgAkHAAmoQhyUgAigChAEEQEEwQQgQqyAiBSAGNgIIIAUgCDYCBCAFQQg2AgAgBSACKQOYAjcCDCAFQRRqIAooAgA2AgAgASgCnAMgAkGEAWogBRDSEgUgAkGEAWoQgycgDiACKQOYAjcCACAOQQhqIAooAgA2AgAgAiAGNgKIASACIAg2AoQBCwwACwALIABBADYCACAAIAs2AgQMCwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMCQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMCgtB5ezgAEEoQcie4AAQ9BcACyADKAIEIQEgAygCAEEEQQQQqyAiByADNgIAIAIgBzYC7AEgAkEwNgL0ASACQfie4AA2AvABIAIgBTYC6AEgAiAJNgLkASACQbgBOgDgASABIAJB4AFqEIEVIQEgAEEANgIAIAAgATYCBCACQdAAahCHJSACQcACahCHJQwJCyAAQQA2AgAgACAGNgIEIAJBwAJqEIclDAILQeXs4ABBKEHYnuAAEPQXAAtB5ezgAEEoQeie4AAQ9BcACyACQYQBahCDJyACQcwAahDRBgwDCwJAIAIoAoQBBEAgAkG4AmoiAyACQZQBaigCADYCACACQbACaiIHIAJBjAFqKQIANwMAIAIgAikChAE3A6gCIApFBEBBMEEIEKsgIgQgCDYCBCAEIAU2AgAgBEEIaiACQZgBakEoEPsGGiABKAKcAyACQagCaiAEENISCyACQeQAaiADKAIANgIAIAJBCDYCUCACQdwAaiAHKQMANwIAIAIgAikDqAI3AlQMAQsgAiAINgJUIAIgBTYCUCACQdgAaiACQZgBakEoEPsGGkEAIQkgBUETRg0BCyACQdAAahDhKCEJCyAAIAk2AhAgACALNgIEIAAgAigCSDYCACAAIA0gASgCnAMiASABIA1JGzYCDCAAIA0gASABIA1LGzYCCAwDCyAAQQA2AgAgACADNgIECyACQcgAahDeKAwBCyAAQQA2AgAgACADNgIECyACQfACaiQAC+8VAhR/AX4jAEGAAmsiBiQAIAEoApQNIhMoArwCKAIQQQF0IQggAygCBCEOAkACQAJAAkAgAygCACIPQQFrQQJPBEACQAJAAkACQAJAAkACQAJAIAUgCE0EQCACQZgDaiEQIAFBiAVqIRIgASgCpA0hEyABKAKgDSEUIAEpAwAhGiADLQAYIQ4gAygCDCELIAMoAgghDCADKAIUIQpBACEIIAEtAJwNQQFxIRUgAygCECINIQcCQAJAAkADQAJAIAZB1AFqIhEgFCATIAwgCyAHIAoQsRkgBigC1AFFDQAgBigC2AEhDyAGKALcASEJIAYg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wObfADYC/AggAkE0OgD4CCACKAKgASACKAKkASACQfgIahCBFSEFIAcQ4w0iA0UNGiADKAIAQSRHDRogASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASABKAIsEIYMDBoLIAEoAighBCABQSU2AiggASABKQNANwN4IAJBhAlqIAFBNGopAgA3AgAgAkGMCWogAUE8aigCADYCACACIAEpAiw3AvwIIAIgBDYC+AggAkH4CGoiBBDHCiACQQA2AsQEIAJCgICAgIABNwK8BCABQYABaiEdIAFBLGohCyAEQQRyIQogAkGQBWohDSACQYAJaiEZIAJB6AJqQQRyIR4gAkHwAmohHyACQbUMaiEaIAJBjQlqIRsgAkGgDGpBBHIhHCACQdwFaiEOIAJB2AVqIRIgAkGwBmohICACQfQFaiEhIAJBrAZqISIgAkHwBWohIyACQagGaiEkA0ACQCACQfgIaiABQQIQ1ggCQAJAIAItAPgIDQAgAi0A+QhBAUYEQCACKALEBCEJIAIoAsAEIQYMHQsgBxDeIBogBxDeICEGAkAgAS0A+AJBAkcEQCACQQc2AogFDAELIAEtAIIDISUgAkGwBWogARDRAiACQQE6ANsIIAIgASkAgwM3ANwIIAIgASkAiwM3AOQIIAIgASkAkwM3AOwIIAIgASgAmwM2APQIICAgAkHbCGoQyQhBACEFIBIQ3iAhBAJAIBIQ4w0iCUUNACAJKAIAQQdHDQAgCiAOKQIANwIAIApBCGogDkEIaikCADcCACAKQRBqIA5BEGooAgA2AgAgAigC2AUhBSACQSU2AtgFIAIgBTYC+AggAiACKQPwBTcDqAYgAkH4CGoQxwpBASEFIAIoAqwGIRAgAigCqAYhFAsgAkHADGoiCSACQbAFahDTBCACQfgIaiITIAkQlR8gAigC+AghCQJAAkACQCACLQCMCSImQQJHBEAgHCAKKQIANwIAIBogGy8AADsAACAcQQhqIApBCGoiFykCADcCACAaQQJqIBtBAmotAAA6AAAgAiAmOgC0DCACIAk2AqAMAkAgEhDjDSIJRQ0AIAkoAgBBF0cNACAKIA4pAgA3AgAgFyAOQQhqKQIANwIAIApBEGogDkEQaigCADYCACACKALYBSEJIAJBJTYC2AUgAiAJNgL4CCACIAIpA/AFNwOoBiATEMcK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AwAgAkGYCWogCigCADYCACACQZ8JaiALLQAAOgAAIAIgBSAGIAUgBksbNgKECSACIAQ2AoAJIAIgAikDyAI3A4gJIAIgDToAnAkgAiACLwHEAjsAnQkgAiADNgKgCQwCCyACKAL8CCEDCyACIAM2AvwIQRQhBwsgAiAHNgL4CCACQRBqIAJB+AhqEJYYIAIoAhQhAyACKAIQIQUMDAsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkGECWogAUE0aikCADcCACACQYwJaiABQTxqKAIANgIAIAIgASkCLDcC/AggAiADNgL4CCACQfgIahDHCiABKAJ8IQZB2ABBCBCrICIDIAU6AAxBACEFIANBADYCACADIAQgBiAEIAZLGzYCCCADIAQgBiAEIAZJGzYCBAwLCyAHEN4gIQogAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAcQ4w0iAwRAIAMoAgBBEUYNAQsgAkH4CGogARDGAiACKAL8CCEDIAIoAvgIIgZBB0YNESACQcgFaiACQZAJaikDADcDACACQcAFaiACQYgJaikDADcDACACIAIpA4AJNwO4BSACIAM2ArQFIAIgBjYCsAUgBg4FAgUBAwQBCyAHEN4gIQsgBxDjDSIDRQRAIAEoAtgCIQMgAkEAOgD4CCADIAMgAkH4CGoQgRUhAwwRCyADKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQkgASgCLCEDDBELIAEoAighAyABQSU2AiggASABKQNANwN4IAJBhAlqIAFBNGopAgA3AgAgAkGMCWogAUE8aigCADYCACACIAEpAiw3AvwIIAIgAzYC+AggAkH4CGoiBhDHCiACQQA2AvAEIAJCgICAgMAANwLoBCACQbAFaiINIAFBABDLBCACKAKwBSEDIAItAMgFIglBAkYNDyABQSxqIQQgAkH4AmoiDiACQcQFaigCADYCACACQfACaiIRIAJBvAVqKQIANwMAIAIgAikCtAU3A+gCIAIgAigAyQU2AqAMIAIgAkHMBWooAAA2AKMMQSBBCBCrICIFIAM2AgAgBSAJOgAYIAUgAikD6AI3AgQgBUEMaiARKQMANwIAIAVBFGogDigCADYCACAFIAIoAqAMNgAZIAVBHGogAigAoww2AAAgAkEB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AvACIQUgAikD6AIiJ1ANCCACIAIoAvQCNgKUBSACIAU2ApAFIAIgJzcDiAUgAkGYAmogAUH47t8AQYzF4ABBAhCyByACKAKcAiEDIAIoApgCBEAgJxD5GiADIQUMCQsgASgCfCELIAJBgAlqIAJBiAVqEKUcQQAhBSACQZ8JakEANgAAIAJBADYCnAkgAiADNgKYCSACIAQgCyAEIAtLGzYC/AggAiAEIAsgBCALSRsiAzYC+AggAkGwBWpBBHIgAkH4CGoiBEEEckEmEPsGGiACQd8FaiACQacJai0AADoAACACIAIoAKMJNgDbBSACQQA6ANoFIAIgAzYCsAUCQCAHEOMNIgNFDQAgAygCAEECRw0AIAMtAAgNACADLQAJQQFHDQAgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkGECWogBkEIaikCADcCACACQYwJaiAGQRBqKAIANgIAIAIgBikCADcC/AggAiADNgL4CCAEEMcKIAJBkAJqIAEQlAIgAigClAIhBSACKAKQAg0ICyACIAU2AogFAkACQCAHEOMNIgNFDQAgAygCAEEMRw0AIAEoAighAyABQSU2AiggASABKQNANwN4IAJBhAlqIAZBCGopAgA3AgAgAkGMCWogBkEQaigCADYCACACIAYpAgA3AvwIIAIgAzYC+AggAkH4CGoQxwoCQCAHEOMNIgNFDQAgAygCAEEURw0AIAMtAARBC0YNAgsCQCAHEOMNIgNFDQAgAygCAEEURw0AIAMtAARBDEYNAgtBAyEDIAcQ4w0iBEUNByAEKAIAQRdHDQcgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkGECWogBkEIaikCADcCACACQYwJaiAGQRBqKAIANgIAIAIgBikCADcC/AggAiADNgL4CCACQfgIahDHCkEAIQMMBwsgAkGACWogBxCWCyACQegBaiAHELgUIAJB2OTfADYC/AggAkE0OgD4CCACKALoASACKALsASACQfgIahCBFSEFIAcQ4w0iA0UNByADKAIAQSRHDQcgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQMgASABKAIsEIYMDAcLQQIhAwJAIAcQ4w0iBEUNACAEKAIAQRRHDQBBAUECIAQtAARBC0YbIQMLIAEoAighBCABQSU2AiggASABKQNANwN4IAJBhAlq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IAQgAiACIARLGyICIAsgAiALSRsgAiALIAIgC0sbIA1B2AFqENgZIA0tADchBAwCCyANQaIBOgDYASABIAYgAiANQdgBahDYGSANLQA8IQMLIA1B5AFqIA1BiAFqKAIANgIAIA0gDSkDgAE3AtwBIAVBEHYhEkEHIQggDS0APiETIA0tADshFCANLQA6IRUgDS0APSEWIA0tADkhFyANLQA3IRggDS0AqwEhDyANLQCqASEQIA0tAKkBIREgDS0AqAEhBCANKQOgASEaIA0tADghGSAFQQh2DAELIA1B5AFqIANBCGooAgA2AgAgDSADKQIANwLcASANKAIwIgMgASgCfCIBIAEgA0sbIQkgAyABIAEgA0kbIQxBACEHIA0tAD0hDyANLQA5IRAgDSkCpAEhGiANKAKgASECIA0tADghESAKIQYgBSEOIA0tADohBSANLQA+CyEBIAAgCDYCACAAIA0pAtgBNwIEIAAgGDoASyAAIBM6AEogACAUOgBJIAAgFToASCAAIBY6AEcgACAXOgBGIAAgAzoARSAAIBk6AEQgACAKNgJAIAAgEjsBPiAAIAE6AD0gACAFOgA8IAAgDzoAOyAAIBA6ADogACAROgA5IAAgBDoAOCAAIBo3AzAgACACNgIsIAAgBjYCKCAAIA42AiQgACAHNgIgIAAgDDYCHCAAIAk2AhggACALNgIUIABBDGogDUHgAWopAgA3AgAMAQsgACADKQIANwIwIABBOGogA0EIaigCADYCACANQeQBaiANQYgBaikDADcCACANQewBaiANQZABaikDADcCACANQfQBaiANQZgBaikDADcCACANIA0pA4ABNwLcASABKAJ8IQEgDSgCMCECIA0tADghAyANLQA8IQQgDS0APSEGIA0tAD4hByANLQA3IQggAEEMNgIAIABBBGogDUHYAWpBJBD7BhogACAIOgBIIAAgBzoARyAAIAY6AEYgACAEOgBFIAAgAzoARCAAIAo2AkAgACAFNgI8IAAgAiABIAEgAkkbNgIsIAAgAiABIAEgAksbNgIoCyANQdwAahCjJgsgDUGAAmokAAvpEwINfwF+IwBBgAJrIg0kACANIAQ6ADcgDSACNgIwIA0gBjoAOCANIAg6ADkgDSAJOgA6IA0gCjoAOyANIAs6ADwgDSAMOgA9AkACQAJAAkACQCAFEPkVRQRAIAUoAgBBBUcNAQJAIApFBEAgCw0BDAMLIA1BKGogBRCvEyANKAIsIQIgDSgCKCEEQaS14ABBBxDcGiEaIA1B4QA6AIABIA0gGjcDiAEgASAEIAIgDUGAAWoQxhkgDS0APEEBcUUNAgsgDUEgaiAFEK8TIA0oAiQhAiANKAIgIQRBirfgAEEIENwaIRogDUHhADoAgAEgDSAaNwOIASABIAQgAiANQYABahDGGQwBCyANIAUQrxMgDSgCBCECIA0oAgAgDUHfADoAgAEgAiANQYABahCBFSECAkAgAUEoahDKDSIERQ0AIAQoAgBBJEcNACABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHBEBB5ezgAEEoQaz33wAQ9BcACyABIAEoAswCEP8LCyAAQQ02AgAgACACNgIEDAELIAFBKGohAgJAAkAgAS0AoAJBAkYEQCANLQA5QQFHDQELIA1BADoAPgwBCwJAIAIQyg0iBARAIAQoAgBBCEYNAQsgDUEAOgA+DAELIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANQYwBaiABQdQCaikCADcCACANQZQBaiABQdwCaigCADYCACANIAEpAswCNwKEASANIAQ2AoABIA1BgAFqEMYKIA1BAToAPgsgDUEYaiABEO0PIA0oAhwhCyANKAIYRQRAIA1BAToARSANQQE6AFEgDSABLQC7AjoAUCANIAEoAaoCNgA/IA0gAS8BrgI7AEMgDSABKQCxAjcARiANIAEvALkCOwBOIA0gASkAvQI3AFIgDSABLwDFAjsAWiANQfUAaiABQb8CaikAADcAACANQfAAaiABQboCaikBADcCACANQegAaiABQbICaikBADcCACANIAEpAaoCNwJgIAIgDUE/ahDSCCANIAE2AlwgDUGIAWogBUEIaikDADcDACANQZABaiAFQRBqKQMANwMAIA1BmAFqIAVBGGopAwA3AwAgDUGoAWogA0EIaigCADYCACANIAc2AqwBIA0gCzYC1AEgDSAFKQMANwOAASANIAMpAgA3A6ABIA0gDUEwajYCsAEgDSANQThqNgK0ASANIA1BO2o2AtABIA0gDUE6ajYCzAEgDSANQTlqNgLIASANIA1BPmo2AsQBIA0gDUE9ajYCwAEgDSANQTxqNgK8ASANIA1BN2o2ArgBQQAhBSACEMoNIgRFDQIgBCgCAEEVRw0CIAQtAAQNAgJAIAIQyg0iBEUEQCABKAKAAiEBIA1BADoA2AEgASABIA1B2AFqEIEVIQUMAQsgBCgCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABKALMAiEFDAILQeXs4ABBKEG8998AEPQXAAsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIA1B5AFqIAFB1AJqKQIANwIAIA1B7AFqIAFB3AJqKAIANgIAIA0gASkCzAI3AtwBIA0gBDYC2AEgDUHYAWoQxgogDUEQaiABELgGIA0oAhQhBSANKAIQRQ0DCyANQaABaiANQdQBaiAAQQ02AgAgACAFNgIEAkAgDSgCgAFBBUYEQCANKQOIARD5GgwBCyANQYABahCfFgsQ+yYQ7iYMAwsgAEENNgIAIAAgCzYCBAsgBRCNISADEO4mDAILAkAgAhDKDSIERQ0AAkACQCAEKAIAQQ5rDgICAAELIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyANQeQBaiABQdQCaikCADcCACANQewBaiABQdwCaigCADYCACANIAEpAswCNwLcASANIAI2AtgBIA1B2AFqEMYKDAELIAIQiCENACANQQhqIAIQhRQgDSgCDCECIA0oAgghBCANQfUAOgDYASABIAQgAiANQdgBahDGGQsgBygCAEUEQAJ/AkACQAJAAkAgDSgCgAFBBUYEQEEDIQRBCCEIIA1BiAFqIQMgDSgClAEhCiANLQA3QQNHDQEMBAsgDSgCMCICIAEoApwDIgMgAiADSRshBiACIAMgAiADSxshAiANLQA8IQMgDSgCnAEhDiANKAKYASEHIA0oApQBIQwgDSgCkAEhCSANKAKMASEKIAVFDQIgA0EBcQ0BDAILIAEoApwDIQIgDSgCMCEEIA1BtQE6ANgBIAEgBCACIAIgBEsbIgIgCiACIApJGyACIAogAiAKSxsgDUHYAWoQxhkgDS0ANyEEDAILIA1BogE6ANgBIAEgBiACIA1B2AFqEMYZIA0tADwhAwsgDUHkAWogDUGIAWooAgA2AgAgDSANKQOAATcC3AEgBUEQdiESQQchCCANLQA+IRMgDS0AOyEUIA0tADohFSANLQA9IRYgDS0AOSEXIA0tADchGCANLQCrASEPIA0tAKoBIRAgDS0AqQEhESANLQCoASEEIA0pA6ABIRogDS0AOCEZIAVBCHYMAQsgDUHkAWogA0EIaigCADYCACANIAMpAgA3AtwBIA0oAjAiAyABKAKcAyIBIAEgA0sbIQkgAyABIAEgA0kbIQxBACEHIA0tAD0hDyANLQA5IRAgDSkCpAEhGiANKAKgASECIA0tADghESAFIQ4gCyEGIA0tADohBSANLQA+CyEBIAAgCDYCACAAIA0pAtgBNwIEIAAgGDoASyAAIBM6AEogACAUOgBJIAAgFToASCAAIBY6AEcgACAXOgBGIAAgAzoARSAAIBk6AEQgACALNgJAIAAgEjsBPiAAIAE6AD0gACAFOgA8IAAgDzoAOyAAIBA6ADogACAROgA5IAAgBDoAOCAAIBo3AzAgACACNgIsIAAgBjYCKCAAIA42AiQgACAHNgIgIAAgDDYCHCAAIAk2AhggACAKNgIUIABBDGogDUHgAWopAgA3AgAMAQsgACADKQIANwIwIABBOGogA0EIaigCADYCACANQeQBaiANQYgBaikDADcCACANQewBaiANQZABaikDADcCACANQfQBaiANQZgBaikDADcCACANIA0pA4ABNwLcASABKAKcAyEBIA0oAjAhAiANLQA4IQMgDS0APCEEIA0tAD0hBiANLQA+IQcgDS0ANyEIIABBDDYCACAAQQRqIA1B2AFqQSQQ+wYaIAAgCDoASCAAIAc6AEcgACAGOgBGIAAgBDoARSAAIAM6AEQgACALNgJAIAAgBTYCPCAAIAIgASABIAJJGzYCLCAAIAIgASABIAJLGzYCKAsgDUHcAGoQhyULIA1BgAJqJAALrxMCBn8BfiMAQfABayICJAACfyAALQAMIgUgASgCACIDQRlGDQAaIAUgA0EjRg0AGiAAQQA6AAxBAAshBAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIANBDGsiBiAGQSZPG0EBaw4kAAEdAgMEBQYHCAkKCx0dDA0ODxAdERITHR0UFRYXGBkaGx0cHQsgASgCDEEEdCEEIAEoAgghAwNAIARFDR0gAygCAEECRwRAIANBDGogABClLQsgA0EQaiEDIARBEGshBAwACwALIAFB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QQR0IQYgASEEAkADQCAGBEAgBCgCCEEBRw0CIAQoAgQtAAAgA0HIAGpqQQE6AAAgBkEQayEGIARBEGohBAwBCwsgAy0ASCEEIANBmA9qIgYgA0HJAGpB/wEQ+wYaIARBAkYNACAAIAQ6AAQgAEEFaiAGQf8BEPsGGiAAQYWAgIB4NgIADAELIANBAzYCpAQgA0EAOwCpBCADQQA6AJIEIANBADoAngQgA0EBOgCUBCADQoKAgIAwNwKIBCADQQJBASACQfUDSSIGGyIEOgCsBCADQQM2ApgEIANBAToAqAQgA0EAOgCtBCADQYACOwGgBCADQQE7AZwEIANBATsBkAQgA0HIAGoiBSADQaQEaiABIAIQxAECQAJAAkACQAJAIAMoAkhFBEAgA0HoBmoiASADQeYAai8BADsBACADIAMpAV43A+AGIAMpAkwhCSADKQJUIQogAy8BXCECIANBtA9qIANB6ABqIgdByAIQ+wYaIANBsg9qIAEvAQA7AQAgAyACOwGoDyADIAo3AqAPIAMgCTcCmA8gAyADKQPgBjcBqg8gBkUEQCAFQQJBASADQZgPahCHASADKAJIIgFBgICAgHhHBEAgA0HICWoiAiADQeYAai8BADsBACADIAMpAV43A8AJIAMpAkwhCSADKQJUIQogAy8BXCEGIANB4AZqIgUgB0GoAhD7BhogA0HuCWogAi8BADsBACADIAY7AeQJIAMgCjcC3AkgAyAJNwLUCSADIAE2AtAJIAMgAykDwAk3AeYJIANB8AlqIAVBqAIQ+wYaQez8wwAhBSADQdAJahD8HyEBDAULDAILIANByABqQQBBASADQZgPahB+IAMoAkhFBEAgA0HoBmoiASADQeYAai8BADsBACADIAMpAV43A+AGIAMpAkwhCSADKQJUIQogAy8BXCECIANB0AxqIANB6ABqQcACEPsGGiADQc4MaiABLwEAOwEAIAMgAjsBxAwgAyAKNwK8DCADIAk3ArQMIAMgAykD4AY3AcYMQfD9wwAhBSADQbQMahD9HyEBDAQLDAELIANBiBJqIANB5gBqLwEAOwEAIAMgAykBXjcDgBIgAy0AXSEGIAMtAFwhBCADKAJYIQUgAygCVCEBIAMoAlAhAgwBCyADQYgSaiADQeYAai8BADsBACADIAMpAV43A4ASIAMtAF0hBiADLQBcIQQgAygCWCEFIAMoAlQhASADKAJQIQIgA0GYD2oQ9RcLIAJBA0YNASADQQM6AOEDDAILIAMtAK0EIQYgA0GYD2oQ9RcLIAMgBDoA4AMgAyAFNgLcAyADIAE2AtgDIAMgAy8BgBI7AeIDIAMgBjoA4QMgBkH/AXFBA0YNACAAIAMpAtgDNwIEIABBhoCAgHg2AgAgAEEMaiADQeADaigCADYCAAwBCyADQdgDahDYJCAAQYeAgIB4NgIACyADQZASaiQAC6URAQh/IwBB8ABrIgMkAAJAAkACQAJAAkACQAJAA0ACQAJAAkACQAJAIAIoAgBBAWsOBwEGAAIDCAQACyADQQE6AFQgA0EANgJQIANCgICAgBA3AkggACADQcgAahDwGQwLCyACKAIEIQQgA0EIaiACKAIIIgJBAUEBEPsUIAMoAgghBiADKAIMIAQgAhD7BiEEIANBAToAVCADIAI2AlAgAyAENgJMIAMgBjYCSCADQShqIgIgA0HIAGoQ8BkgASgCCCABLQAQIAIQ/iAgAEEIaiADQTBqKAIANgIAIAAgAykCKDcCAAwKCyADQRxqIAEgAigCDBCXASACKAIEIQYgAigCECIERQRAIAItABQCQCAGBEAgAigCCEEBRg0BCyADQRxqELgXC0EAIQIgA0EANgJQIANCgICAgBA3AkggA0EBOgBUIANBKGogA0HIAGoQ8BlBAXENBQNAIAJBDEYNBiADQRxqIAJqIgQoAgAhBiAEIANBKGogAmoiBCgCADYCACAEIAY2AgAgAkEEaiECDAALAAsgBCABKAIEIgcgBCAHSRshBQJAIAZFDQAgBCACKAIIRw0AIANBAToAVCADQQA2AlAgA0KAgICAEDcCSCADQTxqIANByABqEPAZA0ACQCAFRQ0AIANBPGoiBhD2Dw0AIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANByABqIgIgA0EcahDMCSAGIAEgA0EoaiACEPYBIAVBAWshBSACENEkDAELCyAEIAdNDQkgA0E8ahC4FwwJCyADQQE6AFQgA0EANgJQIANCgICAgBA3AkggA0E8aiADQcgAahDwGQNAIAVFDQggA0E8aiIEEPYPDQggA0EwaiADQcQAaigCADYCACADIAMpAjw3AyggA0HIAGoiAiADQRxqEMwJIAQgASADQShqIAIQ9gEgBUEBayEFIAIQ0SQMAAsACyACKAIEIQIMAQsLIAIoAgxBHGwhBSABLQAQIQggASgCDCEKIAIoAgghB0EEIQRBACECA0AgBUUgAkGAgICAeEZyRQRAIAMgBjYCMCADIAQ2AiwgAyACNgIoIANByABqIgkgASAHEJcBIANBPGogCiAIIANBKGogCRCGBiAFQRxrIQUgB0EcaiEHIAMoAjwhAiADKAJAIQQgAygCRCEGIAkQ0SQMAQsLIAAgBjYCCCAAIAQ2AgQgACACNgIADAYLIAIoAgQNAiACKAIMIgQgAigCEEEDdCIFaiEIIAEoAgAhBiAEIQICQANAIAUEQCAGIAdJDQIgBUEIayEFIAIoAgQgAigCAGsgB2pBAWohByACQQhqIQIMAQsLIAYgB0kNACADQQA2AiQgA0KAgICAwAA3AhwDQCAEIAhGBEAgASgCCCABLQAQIANBHGoQ/iAgAEEIaiADQSRqKAIANgIAIAAgAykCHDcCAAwIBSAEQQhqIAQoAgQhByAEKAIAIQJBACEFAkADQCAFQQFxIAIgB0tyDQEgA0EANgI4IANBEGogAiADQThqEOQJIAMoAhQhBCADKAIQIANBADYCRCADQoCAgIAQNwI8IANBAzoAaCADQSA2AlggA0EANgJkIANB7LXEADYCYCADQQA2AlAgA0EANgJIIAMgA0E8ajYCXCAEIANByABqEPUqRQRAIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANBAToANCACQYDAAyACQQFqIAJB/68DRhsgAiAHTyIFGyECIANBHGogA0EoahCGDwwBCwtB/L3gAEE3IANBKGpBhLbEAEGAv+AAEMUOAAshBAwBCwALAAsgAEGAgICAeDYCAAwFCyADQdAAaiADQSRqKAIANgIAIAMgAykCHDcDSCAAIAEoAgwgAS0AECADQcgAaiADQShqIgAQhgYgABDRJAwECyACKAIMIQQgAigCCCEFIAEtABBFBEAgA0EBOgBUIANBADYCUCADQoCAgIAQNwJIIARBHGwhAiADQTxqIANByABqEPAZA0ACQCACRQ0AIANBPGoiBhD2Dw0AIANBMGogA0HEAGooAgA2AgAgAyADKQI8NwMoIANByABqIgQgASAFEJcBIAYgASADQShqIAQQ9gEgAkEcayECIAVBHGohBSAEENEk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AhQgASgCGCACQShqELUkDBsLIAJBADYCOCACQQE2AiwgAkH889gANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahC1JAwaCyACQQA2AjggAkEBNgIsIAJBhPTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMGQsgAkEANgI4IAJBATYCLCACQYz02AA2AiggAkIENwIwIAEoAhQgASgCGCACQShqELUkDBgLIAJBADYCOCACQQE2AiwgAkGU9NgANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahC1JAwXCyACQQA2AjggAkEBNgIsIAJBnPTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMFgsgAkEANgI4IAJBATYCLCACQaT02AA2AiggAkIENwIwIAEoAhQgASgCGCACQShqELUkDBULIAJBADYCOCACQQE2AiwgAkGs9NgANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahC1JAwUCyACQQA2AjggAkEBNgIsIAJBtPTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMEwsgAiAAQRBqNgIMIAJBAjYCLCACQcz02AA2AiggAkIBNwI0IAJB2AM2AhwgAiACQRhqNgIwIAIgAkEMajYCGCABKAIUIAEoAhggAkEoahC1JAwSCyACQQA2AjggAkEBNgIsIAJB3PTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMEQsgAkEBNgIsIAJBhPjgADYCKCACQgE3AjQgAkECNgIQIAIgAC0ABEECdCIAQaDm4wBqKAIANgIcIAIgAEH85uMAaigCADYCGCACIAJBDGo2AjAgAiACQRhqNgIMIAEoAhQgASgCGCACQShqELUkDBALIAJBATYCLCACQYT44AA2AiggAkIBNwI0IAJBAjYCECACIAAtAARBAnQiAEHY5+MAaigCADYCHCACIABBmOjjAGooAgA2AhggAiACQQxqNgIwIAIgAkEYajYCDCABKAIUIAEoAhggAkEoahC1JAwPCyACQQA2AjggAkEBNgIsIAJB5PTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMDgsgAkEANgI4IAJBATYCLCACQez02AA2AiggAkIENwIwIAEoAhQgASgCGCACQShqELUkDA0LIAJBADYCOCACQQE2AiwgAkH09NgANgIoIAJCBDcCMCABKAIUIAEoAhggAkEoahC1JAwMCyACQQA2AjggAkEBNgIsIAJB/PTYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMCwsgAkEANgI4IAJBATYCLCACQYT12AA2AiggAkIENwIwIAEoAhQgASgCGCACQShqELUkDAoLIAIgAEEIajYCFCACIABBEGo2AgwgAkEDNgIsIAJBnPXYADYCKCACQgI3AjQgAkHYAzYCJCACQdgDNgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqELUkDAkLIAIgAEEIajYCFCACIABBEGo2AgwgAkEDNgIsIAJBxPXYADYCKCACQgI3AjQgAkHYAzYCJCACQdgDNgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqELUkDAgLIAIgAEEQajYCFCACIABBCGo2AgwgAkEDNgIsIAJB8PXYADYCKCACQgI3AjQgAkHYAzYCJCACQdkDNgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqELUkDAcLIAIgAEEQajYCFCACIABBCGo2AgwgAkEDNgIsIAJBmPbYADYCKCACQgI3AjQgAkHYAzYCJCACQdoDNgIcIAIgAkEYajYCMCACIAJBDGo2AiAgAiACQRRqNgIYIAEoAhQgASgCGCACQShqELUkDAYLIAIgAEEIajYCDCACQQI2AiwgAkG89tgANgIoIAJCATcCNCACQdgDNgIcIAIgAkEYajYCMCACIAJBDGo2AhggASgCFCABKAIYIAJBKGoQtSQMBQsgAiAAQRBqNgIMIAJBAjYCLCACQdj22AA2AiggAkIBNwI0IAJB2AM2AhwgAiACQRhqNgIwIAIgAkEMajYCGCABKAIUIAEoAhggAkEoahC1JAwECyACQQA2AjggAkEBNgIsIAJB6PbYADYCKCACQgQ3AjAgASgCFCABKAIYIAJBKGoQtSQMAwsgAkEANgI4IAJBATYCLCACQYD32AA2AiggAkIENwIwIAEoAhQgASgCGCACQShqELUkDAILIAJBADYCOCACQQE2AiwgAkGI99gANgIoIAJCBDcCMCAB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CkYNAQsgA0GwBGogBRCWCyADQcjl3wA2AqwEIANBNDoAqAQgA0HAAWogA0GIAWogAygCcEElRiICGygCACIBIANBxAFqIANBjAFqIAIbKAIAIgIgASACSRsgASACIAEgAksbIANBqARqEIEVIQEgBRDjDSICRQ0MIAIoAgBBJEYNAQwMCyADQbQEaiAGQQhqKQIANwIAIANBvARqIAZBEGooAgA2AgAgAygCcCECIANBJTYCcCADIAI2AqgEIAMgAykDiAE3A8ABIAMgBikCADcCrAQgA0GoBGoQxwpBACECAkACQCAFEOMNIgRFDQAgBCgCAEETRw0AIANBEGogA0HIAGpBoODfABDzASADKAIUIQIgAygCEA0BCyADIAI2ApAIIAUQ4w0iBARAIAQoAgBBA0YNBQsgA0GwBGogBRCWCyADQeDy3wA2AqwEIANBNDoAqAQgA0HAAWogA0GIAWogAygCcEElRiICGygCACIBIANBxAFqIANBjAFqIAIbKAIAIgIgASACSRsgASACIAEgAksbIANBqARqEIEVIQEgBRDjDSICRQ0LIAIoAgBBJEcNCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0IIANByABqIAMoAnQQhgwMCwsgA0GBgICAeDYCkAQgAyACNgKUBAwMCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0HIANByABqIAMoAnQQhgwMCgsgAyAENgKUBCADQYGAgIB4NgKQBAwMCyADIAMpA4gBNwPAASADKAJwIANBJTYCcEEkRw0GIANByABqIAMoAnQQhgwMCgsgA0G0BGogBkEIaikCADcCACADQbwEaiAGQRBqKAIANgIAIAMoAnAhBCADQSU2AnAgAyAENgKoBCADIAMpA4gBNwPAASADIAYpAgA3AqwEIANBqARqEMcKIANBmARqIANB/AdqKAIANgIAIAMgAjYCoAQgAyAHNgKcBCADIAMpAvQHIhQ3A5AEIBSnIgRBgICAgHhrDgIMCwELIANBgYCAgHg2ApAEIAMgBzYClAQMCgsgAykClAQhFCADQagEaiIGIANByABqQagDEPsGGiABEIQQIAEgBkGoAxD7BiEBIAMgDjoA1wcgAyABKQCDAzcA2AcgAyABKQCLAzcA4AcgAyABKQCTAzcA6AcgAyABKACbAzYA8AcgDCADQdcHahDJCCADQQE7ADIgAyABLQCIAzoAMSADIAEoAYIDNgArIAMgAS8BhgM7AC8gAyABKQCLAzcANCADIAEpAJMDNwA8IAMgASgAmwM2AEQgA0HhAGogCkEVaikAADcAACADQdwAaiAKQRBqKQEANwIAIANB1ABqIApBCGopAQA3AgAgAyAKKQEANwJMIAwgA0ErahDJCCADIAE2AkggAyACNgKkCCADIAc2AqAIIAMgFDcClAggAyAENgKQCCADIANBJGo2ApwIIANBCGogAUEBIBSnIBRCIIinEMcZEMEDIAMoAgwhBQJAIAMoAghFBEAgACADKQKQCDcCACAAQQhqIANBmAhqKAIANgIAIAEoAnwhASADKAIkIQQgBhDQFCAAQQE7ASQgACACNgIgIAAgBzYCHCAAIAQgASABIARJGzYCFCAAIAQgASABIARLGzYCECAAIAU2AgwgACADKALABDYCGCAGEOEgDAELIABBgYCAgHg2AgAgACAFNgIEIANBkAhqEIUnIAcQkCsgA0GkCGoQkSgLIANByABqEKMmDAwLAAtB5ezgAEEoQdD03wAQ9BcAC0Hl7OAAQShB4PTfABD0FwALQeXs4ABBKEHw9N8AEPQXAAsgA0GBgICAeDYCkAQgAyABNgKUBCADQZAIahCRKAwBCyADQYGAgIB4NgKQBCADIAE2ApQECyADQfQHahCFJwwBCyADQYGAgIB4NgKQBCADIAE2ApQECyAHEJArCyADQZAEakEEchCdIwsgA0HIAGoQhBALIABBgICAgHg2AgALIANB0AhqJAALtRICEX8BfiMAQcAIayIDJAAgAyACNgIkAkACQAJAAkAgAUEoaiIMEMoNIgJFDQAgAigCAEEURw0AIAItAARBBEYNAQsgDBDKDSICRQ0BIAIoAgBBIUcNAQsgAS0AoAJBAkcNACABLQCqAiEOIANByABqIgIgARCjAyADQQE6AOsDIAMgASkAqwI3AOwDIAMgASkAswI3APQDIAMgASkAuwI3APwDIAMgASgAwwI2AIQEIANB8ABqIgUgA0HrA2oQ0gggA0EYaiACQQBBABCTASADKAIcIQcCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAygCGEUEQAJAAkACQCAFEMoNIgIEQCACKAIAQQlGDQELIANBqARqIAUQkRAgA0Hw5d8ANgKkBCADQTQ6AKAEIANB4ANqIANBqANqIAMoApADQSVGIgIbKAIAIgEgA0HkA2ogA0GsA2ogAhsoAgAiAiABIAJJGyABIAIgASACSxsgA0GgBGoQgRUhASAFEMoNIgJFDQwgAigCAEEkRg0BDAwLIANBrARqIANBnANqKQIANwIAIANBtARqIANBpANqKAIANgIAIAMoApADIQIgA0ElNgKQAyADIAMpApQDNwKkBCADIAI2AqAEIAMgAykDqAM3A+ADIANBoARqIgIQxgogAiADQcgAahCzASADKAKkBCEEIAMoAqAEIglBgICAgHhHBEAgAUGqAmohCiADQZQDaiEGIAMoAqgEIQIgAyAENgLwByADIAQgAkEGdCIPaiIQNgL8ByADIAk2AvgHIAlBBnQhCyADQdAEaiERQQAhAgNAIAQgCGohDSACIA9GRQRAIANBgAhqIhIgAiAEaiITQcAAEPsGGiADQaAEaiATQcAAEPsGGiAREO4mIA0gEkEoEPsGGiAIQShqIQggAkFAayECDAELCyADIBA2AvQHIAtBKG4hCCADQfAHahCeEiAEIQICQCAJRQ0AIAsgCEEobCIJRg0AIAtFBEBBCCECDAELIAQgC0EIIAkQ+QIiAkUNBgsgAyACNgLoByADIAg2AuQHIAMgDSAEa0EobjYC7AcgA0HwB2oQzxcCQAJAIAUQyg0iAgRAIAIoAgBBCkYNAQsgA0GoBGogBRCRECADQcjl3wA2AqQEIANBNDoAoAQgA0HgA2ogA0GoA2ogAygCkANBJUYiAhsoAgAiASADQeQDaiADQawDaiACGygCACICIAEgAkkbIAEgAiABIAJLGyADQaAEahCBFSEBIAUQyg0iAkUNDCACKAIAQSRGDQEMDAsgA0GsBGogBkEIaikCADcCACADQbQEaiAGQRBqKAIANgIAIAMoApADIQIgA0ElNgKQAyADIAI2AqAEIAMgAykDqAM3A+ADIAMgBikCADcCpAQgA0GgBGoQxgpBACECAkACQCAFEMoNIgRFDQAgBCgCAEETRw0AIANBEGogA0HIAGpBoODfABDxASADKAIUIQIgAygCEA0BCyADIAI2AoAIIAUQyg0iBARAIAQoAgBBA0YNBQsgA0GoBGogBRCRECADQeDy3wA2AqQEIANBNDoAoAQgA0HgA2ogA0GoA2ogAygCkANBJUYiAhsoAgAiASADQeQDaiADQawDaiACGygCACICIAEgAkkbIAEgAiABIAJLGyADQaAEahCBFSEBIAUQyg0iAkUNCyACKAIAQSRHDQsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0IIANByABqIAMoApQDEP8LDAsLIANBgYCAgHg2AogEIAMgAjYCjAQMDAsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0HIANByABqIAMoApQDEP8LDAoLIAMgBDYCjAQgA0GBgICAeDYCiAQMDAsgAyADKQOoAzcD4AMgAygCkAMgA0ElNgKQA0EkRw0GIANByABqIAMoApQDEP8LDAoLIANBrARqIAZBCGopAgA3AgAgA0G0BGogBkEQaigCADYCACADKAKQAyEEIANBJTYCkAMgAyAENgKgBCADIAMpA6gDNwPgAyADIAYpAgA3AqQEIANBoARqEMYKIANBkARqIANB7AdqKAIANgIAIAMgAjYCmAQgAyAHNgKUBCADIAMpAuQHIhQ3A4gEIBSnIgRBgICAgHhrDgIMCwELIANBgYCAgHg2AogEIAMgBzYCjAQMCgsgAykCjAQhFCADQaAEaiIGIANByABqQaADEPsGGiABEN8QIAEgBkGgAxD7BiEBIAMgDjoAxwcgAyABKQCrAjcAyAcgAyABKQCzAjcA0AcgAyABKQC7AjcA2AcgAyABKADDAjYA4AcgDCADQccHahDSCCADQQE7ADIgAyABLQCwAjoAMSADIAEoAaoCNgArIAMgAS8BrgI7AC8gAyABKQCzAjcANCADIAEpALsCNwA8IAMgASgAwwI2AEQgA0HhAGogCkEVaikAADcAACADQdwAaiAKQRBqKQEANwIAIANB1ABqIApBCGopAQA3AgAgAyAKKQEANwJMIAwgA0ErahDSCCADIAE2AkggAyACNgKUCCADIAc2ApAIIAMgFDcChAggAyAENgKACCADIANBJGo2AowIIANBCGogAUEBIBSnIBRCIIinEMcZEMMDIAMoAgwhBQJAIAMoAghFBEAgACADKQKACDcCACAAQQhqIANBiAhqKAIANgIAIAEoApwDIQEgAygCJCEEIAYQ0BQgAEEBOwEkIAAgAjYCICAAIAc2AhwgACAEIAEgASAESRs2AhQgACAEIAEgASAESxs2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OgCAASABIAggBSAEQYABahDGGQsgBEEQaiACEIwDIAQoAhAhASAEQQhqIAYQjAMgBCgCDCEFIAQgBzoAlAEgBCAGNgKIASAEIAI2AoQBIARBEjYCgAEgBCABIAUgASAFSxs2ApABIAQgASAFIAEgBUkbNgKMASAEQYABahDcKCEBIAAgAzoABSAAQQE6AAQgACABNgIADAELIABBADoABCAAIAI2AgALIARBwAFqJAAL9Q4BEn8jAEHQAWsiAyQAAkAgAS0A+gJBAXFFBEAgAEEANgIIIABCgICAgMAANwIADAELIANBADYCTCADQoCAgIDAADcCRCABQSxqIQogA0HcAGohEyADQdAAakEEciEIIANBrAFqIRAgA0HYAGohFCABQShqIgcQ3iAhDEEIIRFBBCESAkACQAJ/A0ACQAJAAkACQAJAAkACQAJAAkACQAJAIAcQ4w0iBARAIAQoAgBBBUYNAQsgDUUNAQJAIAcQ4w0iBEUNACAEKAIAQQJHDQAgBC0ACEECRw0AIAQtAAlBG0YNAwsgBxDjDRoMBgsgBxDeICEOIAcQ4w0iBEUEQCABKALYAiEBIANBADoAUCABIAEgA0HQAGoQgRUhBQwOCyAEKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRGBEAgASgCLCEFDA8LQeXs4ABBKEHs998AEPQXAAsgCCAKKQIANwIAIAEoAighBSABQSU2AiggASABKQNANwN4IAhBCGoiBCAKQQhqIgkpAgA3AgAgCEEQaiIGIApBEGoiDygCADYCACADIAU2AlAgA0HQAGoQxwoCQAJAAkAgBxDjDSIFBEAgBSgCAEEJRg0BCyADQZABaiABQQBBABD9ASADAn8gAy0ApAFBAkcEQCAQIAMpA5ABNwIAIBBBEGogA0GgAWopAwA3AgAgEEEIaiADQZgBaikDADcCACAIIAMpAqgBNwIAIAQgA0GwAWopAgA3AgAgBiADQbgBaikCADcCACAIQRhqIANBwAFqKAIANgIAQRoMAQsgAyADKAKQATYCVEEyCzYCUCADQShqIANB0ABqIgQQlBggAygCLCEFIAMoAigNECADQQU6AFggAyAFNgJQIANBIGogASAEQQBBARA6IAMoAiQhBSADKAIgRQ0BDBALIAggCikCADcCACABKAIoIQUgAUElNgIo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0AJqIgwgBkEDIAQQYyACKALUAiEDIAIoAtACIglBB0YNDCACQbACaiACQfACaikDADcDACACQagCaiACQegCaikDADcDACACQaACaiACQeACaikDADcDACACIAIpA9gCNwOYAiACIAM2ApQCIAIgCTYCkAJBACEKIAlBBEcNACACQf8AOgDQAiAGIAggByAMENgZC0EoQQgQqyAiAyACQZACakEoEPsGGiACQQA2AmggAiAPNgJkIAIgBTYCYCACIAc2AlwgAiAINgJYQQIhBiALQQFLDQ4gBCgCAEEaRw0BIApFDQ0gBCkDCBD5GgwNCyACQRBqIAUQggogBSgCAEEFaw4DAwECBgsgBBDCAgwLCyACQegBaiIGIAVBIGopAwA3AwAgAkHgAWoiByAFQRhqKQMANwMAIAJB2AFqIgggBUEQaikDADcDACACIAUpAwg3A9ABIAJB0AJqIAEoAhRBA0EBIAEoAhgtAABBAUsbIAUoAigQYyACKALUAiEDIAIoAtACIglBB0cEQCACQYgCaiIKIAJB8AJqKQMANwMAIAJBgAJqIgsgAkHoAmopAwA3AwAgAkH4AWoiDCACQeACaikDADcDACACIAIpA9gCNwPwAUEoQQgQqyAiBCADNgIEIAQgCTYCACAEIAIpA/ABNwMIIARBEGogDCkDADcDACAEQRhqIAspAwA3AwAgBEEgaiAKKQMANwMAIAJBuAFqIgMgCCkDADcDACACQcABaiIIIAcpAwA3AwAgAkHIAWoiByAGKQMANwMAIAIgAikD0AE3A7ABIAJBqAFqIAcpAwA3AgAgAkGgAWogCCkDADcCACACQZgBaiADKQMANwIAIAIgAikDsAE3ApABIAJB0ABqQQRyIAJBjAFqQSQQ+wYaIAIgBDYCeEEADAQLIAJB0AFqEOYWQQAhBgwFCyACKAIUIQMgAigCECEEIAJBiANqIAVBIGopAwA3AwAgAkGAA2ogBUEYaikDADcDACACIAUpAxA3A/gCIAUoAighBiACQeAAaiACQfgCahDrGCACIAY2AoABIAIgAzYCXCACIAQ2AlgMAQsgBSkDCCERIAUoAhAhAyAFKAIUIQQgAiAFKQMYNwPgAiACIAQ2AtwCIAIgAzYC2AIgAiARNwPQAiACQeAAaiACQdACahDrGCACQQA2AoABIAIgBDYCXCACIAM2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BAsgAyAEOgB0IANBgICAgHg2AnAMAQsgAygCiAEhBCADKAKEASEFAkACQAJAAkAgBkEBaw4DAgEAAwsgAygCkAEhBiADKAKMASEHAkACQAJAAkACQAJAIAUgBEHgxMcAQQMQ6x9FBEAgBSAEQePExwBBERDrHw0BIAUgBEH0xMcAQRYQ6x8NAiAFIARBisXHAEEOEOsfDQMgBSAEQZjFxwBBChDrHw0EIANBgICAgHg2AnAgA0EAOgB0DAoLIANBqAFqEJgdQfB8IQQDQCAERQ0FIAcgBiAEQdyWygBqKAIAIARB4JbKAGooAgAQ6x8NBiAEQRBqIQQMAAsACyADQRhqQeSszgBBowEgByAGEOEKIANBgAFqIAMoAhggAygCHBDSISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJwIANBAToAdAwJCyADQfgAaiADQYgBaikCADcDACADIAMpAoABNwNwDAgLIANBIGpBpNbUAEENIAcgBhDhCiADQYABaiADKAIgIAMoAiQQ0iEgAygCgAFBgICAgHhGBEAgA0GAgICAeDYCcCADQQE6AHQMCAsgA0H4AGogA0GIAWopAgA3AwAgAyADKQKAATcDcAwHCyADQShqQfSy1gBBDiAHIAYQ4QogA0GAAWogAygCKCADKAIsENIhIAMoAoABQYCAgIB4RgRAIANBgICAgHg2AnAgA0EBOgB0DAcLIANB+ABqIANBiAFqKQIANwMAIAMgAykCgAE3A3AMBgsgA0EwakG8mdUAQRIgByAGEOEKIANBgAFqIAMoAjAgAygCNBDSISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJwIANBAToAdAwGCyADQfgAaiADQYgBaikCADcDACADIAMpAoABNwNwDAULIANBgICAgHg2AnAgA0EBOgB0IAMoAqgBIAMoAqwBEOUpDAQLIARBoANqIQVBzJPKACEEA0AgBQRAIANBgAFqIgYgBCgCCCAEKAIMEOIKIANBqAFqIAYQjBggAygCgAEgAygChAEQ5SkgBUEQayEFIARBEGohBAwBBSADQfgAaiADQbABaikCADcDACADIAMpAqgBNwNwDAULAAsACyADQRBqQezizQBBowEgBSAEEOEKIANBgAFqIAMoAhAgAygCFBDSISADKAKAAUGAgICAeEYEQCADQYCAgIB4NgJw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Ba1CEIaENwE2IAMgAToANAJAIAFB/wFxQYABRgRAQYABIQADQAJ/IABB/wFxQYABRwRAIARB/wFxIgEgB0H/AXFPDQQgASACai0AACEBIARBAWoMAQsgAkIANwIAQQAhByALQQA2AgBBACEAIAUhAUEAIQVBAAshBCAKIAEgCCgCEBECAEUNAAsMBAsgBEH/AXEiBCAHQf8BcSIBTw0AIAQgASABIARJGyEAIAgoAhAhAQNAIAogAiAEai0AACABEQIADQQgACAEQQFqIgRHDQALCyAGIAlHDQALC0EAIQEMAQtBASEBCyADQeAAaiQAIAELnw4CC38DfiMAQYABayICJAAgAUEoaiIDEN4gIQgCQCADEOMNIgRFBEAgASgC2AIhASACQQA6ADggASABIAJBOGoQgRUhASAAQQQ6ADQgACABNgIADAELAkACQAJAAkACQAJAAkACQCAEKAIAQSRGBEAgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQEgASgCLCEBIABBBDoANCAAIAE2AgAMCQsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggAkHEAGogAUE0aikCADcCACACQcwAaiABQTxqKAIANgIAIAIgASkCLDcCPCACIAQ2AjggAkE4ahDHCgJAAkAgAxDjDSIEBEAgBCgCAEEJRg0BCyACQUBrIAMQlgsgAiADELgUIAJB8OXfADYCPCACQTQ6ADggAigCACACKAIEIAJBOGoQgRUhBCADEOMNIgNFDQkgAygCAEEkRg0BDAkLIAEoAighBSABQSU2AiggASABKQNANwN4IAJBxABqIAFBLGoiBEEIaikCADcCACACQcwAaiAEQRBqKAIANgIAIAIgBCkCADcCPCACIAU2AjggAkE4aiIGEMcKQQAhBSACIAMQ4w0iBwR/IAUFIAEoAtgCIQUgAkEAOgA4IAUgBSAGEIEVIQdBAQs2AjggAiAHNgI8IAJBOGoiBhCQJCACQRhqIAMQuBQgAigCHCEHIAIoAhghCSADEOMNIgVFBEAgASgC2AIhASACQQA6ADggASABIAYQgRUhASAAQQQ6ADQgACABNgIADAoLAn4CQCAFKAIAIgVBG0cEQCAFQSRHDQEgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQUgASgCLCEBIABBBDoANCAAIAE2AgAMDAsgASABKQNANwN4IAEoAiggAUElNgIoQRtGBEAgASkDMCENIAEpAzgMAgtB5ezgAEEoQbDl3wAQ9BcACyABKAIoIQUgAUElNgIoIAEgASkDQDcDeCACQcQAaiAEQQhqKQIANwIAIAJBzABqIARBEGooAgA2AgAgAiAEKQIANwI8IAIgBTYCOCACQThqIgUQxwogAkGRAToAOCABIAkgByAFENgZQQFBABDcGiENQcDl3wBBAhDcGgshDgJAAkAgAxDjDSIFRQ0AIAUoAgBBCkcNACABKAIoIQUgAUElNgIoIAEgASkDQDcDeCACQcQAaiILIARBCGopAgA3AgAgAkHMAGoiDCAEQRBqKAIANgIAIAIgBCkCADcCPCACIAU2AjggAkE4aiIKEMcKQQMhBQJAIAMQ4w0iBkUNACAGKAIAQQZHDQAgASgCKCEFIAFBJTYCKCABIAEpA0A3A3ggCyIGIARBCGopAgA3AgAgDCAEQRBqKAIANgIAIAIgBCkCADcCPCACIAU2AjggChDHCiAKIAFBABDVAiACKAI4IQQgAi0ATCIFQQNGDQcgAkEsaiAGKQIANwIAIAJBN2ogAkHPAGotAAA6AAAgAiACKQI8NwIkIAIgAi8ATTsANSACIAQ2AiALIAIgBToANEEAIQQCQCADEOMNIgNFDQAgAygCAEEURw0AIAMtAARBBEcNACACQdEAaiABQZcDaikAADcAACACQcwAaiABQZIDaikBADcCACACQcQAaiABQYoDaiIDKQEANwIAIAJBADoAcCACIAEtAI4DOgBvIAIgAS0AngM6AH8gAiABKQGCAyIPNwBjIAIgAygBADYAayACIAEpA5ADNwBxIAIgASgCmAM2AHkgAiABLwGcAzsAfSACIA83AjwgAUGAAWogAkHjAGoQyQggAiABNgI4IAJBEGogARDwASACKAIUIQQgAigCEA0CIAJBOGoQoyYLIAAgDjcDGCAAIAc2AhQgACAJNgIQIAAgDTcDCCAAIAIpAyA3AyAgACAENgI4IABBKGogAkEoaikDADcDACAAQTBqIAJBMGopAwA3AwAgACAIIAEoAnwiASABIAhJGzYCBCAAIAggASABIAhLGzYCAAwLCyACQUBrIAMQlgsgAkEIaiADELgUIAJByOXfADYCPCACQTQ6ADggAigCCCACKAIMIAJBOGoQgRUh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AkEYahC1JAwaCyACQQA2AiggAkEBNgIcIAJBmLvWADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMGQsgAkEANgIoIAJBATYCHCACQby71gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDBgLIAJBADYCKCACQQE2AhwgAkGEvNYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwXCyACQQA2AiggAkEBNgIcIAJBqLzWADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMFgsgAkEANgIoIAJBATYCHCACQdC81gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDBULIAJBADYCKCACQQE2AhwgAkHovNYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwUCyACQQA2AiggAkEBNgIcIAJBkL3WADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMEwsgAkEANgIoIAJBATYCHCACQby91gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDBILIAJBADYCKCACQQE2AhwgAkHYvdYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwRCyACQQA2AiggAkEBNgIcIAJB/L3WADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMEAsgAkEANgIoIAJBATYCHCACQZy+1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDA8LIAJBADYCKCACQQE2AhwgAkHEvtYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwOCyACQQA2AiggAkEBNgIcIAJB6L7WADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMDQsgAkEANgIoIAJBATYCHCACQYC/1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDAwLIAJBADYCKCACQQE2AhwgAkGYv9YANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwLCyACIAAoAgQ2AgwgAkECNgIcIAJB3L/WADYCGCACQgE3AiQgAkEHNgIUIAIgAkEQajYCICACIAJBDGo2AhAgASgCFCABKAIYIAJBGGoQtSQMCgsgAkEANgIoIAJBATYCHCACQajA1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDAkLIAJBADYCKCACQQE2AhwgAkHgwNYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwICyACQQA2AiggAkEBNgIcIAJBhMHWADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMBwsgAkEANgIoIAJBATYCHCACQbTB1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDAYLIAJBADYCKCACQQE2AhwgAkGQwtYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwFCyACQQA2AiggAkEBNgIcIAJB/MLWADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMBAsgAkEANgIoIAJBATYCHCACQYjE1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkDAMLIAJBADYCKCACQQE2AhwgAkGwxNYANgIYIAJCBDcCICABKAIUIAEoAhggAkEYahC1JAwCCyACQQA2AiggAkEBNgIcIAJB2MTWADYCGCACQgQ3AiAgASgCFCABKAIYIAJBGGoQtSQMAQsgAkEANgIoIAJBATYCHCACQaTF1gA2AhggAkIENwIgIAEoAhQgASgCGCACQRhqELUkCyACQTBqJAALmg4BDn8jAEGwAWsiAyQAIAFBKGoiBRDDICELAkAgBRDKDSIERQRAIAEoAoACIQEgA0EAOgBoIAEgASADQegAahCBFSEBIABBgICAgHg2AgAgACABNgIEDAELAkACQAJAAkACQAJAAkACQAJAAkACQCAEKAIAQSRGBEAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRg0BQeXs4ABBKEHAlOAAEPQXAAsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIANB9ABqIgYgAUHUAmopAgA3AgAgA0H8AGoiCCABQdwCaigCADYCACADIAEpAswCNwJsIAMgBDYCaCADQegAaiIKEMYKIANBADYCPCADQoCAgIDAADcCNCAKIAEgAhDKBCADKAJoIQQgAy0AgAEiB0ECRg0FIAFBzAJqIQkgA0HYAGoiDCAIKAIANgIAIANB0ABqIgggBikCADcDACADIAMpAmw3A0ggAyADKACBATYCQCADIANBhAFqKAAANgBDQSBBCBCrICIGIAQ2AgAgBiAHOgAYIAYgAykDSDcCBCAGQQxqIAgpAwA3AgAgBkEUaiAMKAIANgIAIAYgAygCQDYAGSAGQRxqIAMoAEM2AAAgA0EBNgJkIAMgBjYCYCADQQE2AlwgCkEEciEGIANBqQFqIQwgA0GQAWpBBHIhCCADQYEBaiEKA0AgB0EBcUUEQAJAIAUQyg0iBARAIAQoAgBBFkYNAQsgA0HwAGogBRCRECADQRBqIAUQhRQgA0HA798ANgJsIANBNDoAaCADKAIQIAMoAhQgA0HoAGoQgRUhBCAFEMoNIgJFDQcgAigCAEEkRw0HIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEcNCyABIAEoAswCEP8LDAcLIAYgCSkCADcCACABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgBkEIaiINIAlBCGoiBykCADcCACAGQRBqIg4gCUEQaiIQKAIANgIAIAMgBDYCaCADQegAaiIPEMYKIA8gAUEBENESIANBIGogAygCaBCOBiADKAIkIQQgAygCIA0FIANBNGogBBDVGyAPEIclAkAgBRDKDSIEBEAgBCgCAEEORg0BCyADQfAAaiAFEJEQIANBGGogBRCFFCADQbDh3wA2AmwgA0E0OgBoIAMoAhggAygCHCADQegAahCBFSEEIAUQyg0iAkUNByACKAIAQSRHDQcgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0KIAEgASgCzAIQ/wsMBwsgBiAJKQIANwIAIAEoAsgCIQQgAUElNgLIAiABIAEpA+ACNwOYAyANIAcpAgA3AgAgDiAQKAIANgIAIAMgBDYCaCADQegAaiIEEMYKIAQgASACEMoEIAMoAmghBCADLQCAASIHQQJGDQYgCCAGKQIANwIAIAwgCigAADYAACAIQRBqIA4oAgA2AgAgCEEIaiANKQIANwIAIAxBA2ogCkEDaigAADYAACADIAc6AKgBIAMgBDYCkAEgA0HcAGogA0GQAWoQvxAMAQsLIANBMGoiAiADQeQAaigCADYCACADIAMpAlw3AyggAygCOCEEIAMoAjQiBkGAgICAeEYNBiADKAI8IQcgA0GYAWogAigCADYCACADIAMpAyg3A5ABIAMgBzYCUCADIAQ2AkwgAyAGNgJIIAUQyg0iAgRAIAIoAgBBEUYNAgsgA0HwAGogBRCRECADQQhqIAUQhRQgA0Hg6d8ANgJsIANBNDoAaCADKAIIIAMoAgwgA0HoAGoQgRUhAiAFEMoNIgVFDQogBSgCAEEkRg0CDAoLIAEoAswCIQEgAEGAgICAeDYCACAAIAE2AgQMCgsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANB9ABqIAlBCGopAgA3AgAgA0H8AGoiBSAJQRBqKAIANgIAIAMgCSkCADcCbCADIAI2AmggA0HoAGoQxgogASgCnAMhASADQfAAaiICIANB0ABqKAIANgIAIAUgA0GYAWooAgA2AgAgACADKQJINwIAIAAgCyABIAEgC0kbNgIcIAAgCyABIAEgC0sbNgIYIAMgAykDkAE3AnQgAEEIaiACKQMANwIAIABBEGogA0H4AGopAwA3AgAMCQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0GIAEgASgCzAIQ/wsMBwsgA0HoAGoQhyULIANB3ABqEPsiCyADQTRqEOgmCyAAQYCAgIB4NgIAIAAgBDYCBAwEC0Hl7OAAQShBmI7gABD0FwALQeXs4ABBKEGojuAAEPQXAAtB5ezgAEEoQdCU4AAQ9BcACyAAQYCAgIB4NgIAIAAgAjYCBCADQZABahD7IiADQcgAahDoJgsgA0GwAWokAAvxDQEOfyMAQbABayIDJAAgAUEoaiIFEN4gIQsCQCAFEOMNIgRFBEAgASgC2AIhASADQQA6AGggASABIANB6ABqEIEVIQEgAEGAgICAeDYCACAAIAE2AgQMAQsCQAJAAkACQAJAAkACQAJAAkACQAJAIAQoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEYNAUHl7OAAQShBwJTgABD0FwALIAEoAighBCABQSU2AiggASABKQNANwN4IANB9ABqIgYgAUE0aikCADcCACADQfwAaiIIIAFBPGooAgA2AgAgAyABKQIsNwJsIAMgBDYCaCADQegAaiIKEMcKIANBADYCPCADQoCAgIDAADcCNCAKIAEgAhDLBCADKAJoIQQgAy0AgAEiB0ECRg0FIAFBLGohCSADQdgAaiIMIAgoAgA2AgAgA0HQAGoiCCAGKQIANwMAIAMgAykCbDcDSCADIAMoAIEBNgJAIAMgA0GEAWooAAA2AENBIEEIEKsgIgYgBDYCACAGIAc6ABggBiADKQNINwIEIAZBDGogCCkDADcCACAGQRRqIAwoAgA2AgAgBiADKAJANgAZIAZBHGogAygAQzYAACADQQE2AmQgAyAGNgJgIANBATYCXCAKQQRyIQYgA0GpAWohDCADQZABakEEciEIIANBgQFqIQoDQCAHQQFxRQRAAkAgBRDjDSIEBEAgBCgCAEEWRg0BCyADQfAAaiAFEJYLIANBEGogBRC4FCADQcDv3wA2AmwgA0E0OgBoIAMoAhAgAygCFCADQegAahCBFSEEIAUQ4w0iAkUNByACKAIAQSRHDQcgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQsgASABKAIsEIYMDAcLIAYgCSkCADcCACABKAIoIQQgAUElNgIoIAEgASkDQDcDeCAGQQhqIg0gCUEIaiIHKQIANwIAIAZBEGoiDiAJQRBqIhAoAgA2AgAgAyAENgJoIANB6ABqIg8QxwogDyABQQEQ4hIgA0EgaiADKAJoEJEGIAMoAiQhBCADKAIgDQUgA0E0aiAEENUbIA8QoyYCQCAFEOMNIgQEQCAEKAIAQQ5GDQELIANB8ABqIAUQlgsgA0EYaiAFELgUIANBsOHfADYCbCADQTQ6AGggAygCGCADKAIcIANB6ABqEIEVIQQgBRDjDSICRQ0HIAIoAgBBJEcNByABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNCiABIAEoAiwQhgwMBwsgBiAJKQIANwIAIAEoAighBCABQSU2AiggASABKQNANwN4IA0gBykCADcCACAOIBAoAgA2AgAgAyAENgJoIANB6ABqIgQQxwogBCABIAIQywQgAygCaCEEIAMtAIABIgdBAkYNBiAIIAYpAgA3AgAgDCAKKAAANgAAIAhBEGogDigCADYCACAIQQhqIA0pAgA3AgAgDEEDaiAKQQNqKAAANgAAIAMgBzoAqAEgAyAENgKQASADQdwAaiADQZABahC/EAwBCwsgA0EwaiICIANB5ABqKAIANgIAIAMgAykCXDcDKCADKAI4IQQgAygCNCIGQYCAgIB4Rg0GIAMoAjwhByADQZgBaiACKAIANgIAIAMgAykDKDcDkAEgAyAHNgJQIAMgBDYCTCADIAY2AkggBRDjDSICBEAgAigCAEERRg0CCyADQfAAaiAFEJYLIANBCGogBRC4FCADQeDp3wA2AmwgA0E0OgBoIAMoAgggAygCDCADQegAahCBFSECIAUQ4w0iBUUNCiAFKAIAQSRGDQIMCgsgASgCLCEBIABBgICAgHg2AgAgACABNgIEDAoLIAEoAighAiABQSU2AiggASABKQNANwN4IANB9ABqIAlBCGopAgA3AgAgA0H8AGoiBSAJQRBqKAIANgIAIAMgCSkCADcCbCADIAI2AmggA0HoAGoQxwogASgCfCEBIANB8ABqIgIgA0HQAGooAgA2AgAgBSADQZgBaigCADYCACAAIAMpAkg3AgAgACALIAEgASALSRs2AhwgACALIAEgASALSxs2AhggAyADKQOQATcCdCAAQQhqIAIpAwA3AgAgAEEQaiADQfgAaikDADcCAAwJCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBiABIAEoAiwQhgwMBwsgA0HoAGoQoyYLIANB3ABqEPsiCyADQTRqEOgmCyAAQYCAgIB4NgIAIAAgBDYCBAwEC0Hl7OAAQShBmI7gABD0FwALQeXs4ABBKEGojuAAEPQXAAtB5ezgAEEoQdCU4AAQ9BcACyAAQYCAgIB4NgIAIAAgAjYCBCADQZABahD7IiADQcgAahDoJgsgA0GwAWokAAuBDAENfyMAQTBrIgskACACQQRrIRMCQAJAA0ACQAJAAkACQCABQSFPBEAgBA0BIAAgASACIANBASAGEJkCDAcLIAFBAkkNBiABQRBqIANLDQMgAUEBdiEDIAFBD0sNASABQQdLBEAgACACEMEKIAAgA0ECdCIEaiACIARqEMEKQQQhDgwGCyACIAAoAgA2AgAgAiADQQJ0IgRqIAAgBGooAgA2AgBBASEODAULIAAgAUEDdiINQRxsaiEHIAAgDUEEdGohCCAEQQFrIQQgCwJ/IAFBwABPBEAgACAIIAcgDRCRDQwBCyAAIAcgCCAAKAIAIg0gCCgCACIISSIKIAggBygCACIHSXMbIAogByANS3MbCyIOKAIAIgc2AhQgDiAAa0ECdiENIAUEQCAFKAIAIAdPDQILIAEgA0sNAiACIAFBAnQiD2ohCUEAIQggACEHIA0hCgNAIAAgCkEDayIMQQAgCiAMTxtBAnRqIRADQCAHIBBPRQRAIAhBAnQgAiAJQQRrIAcoAgAiESAOKAIAIgxJIhIbaiARNgIAIAggEmoiCEECdCACIAlBCGsgBygCBCIRIAxJIhIbaiARNgIAIAggEmoiCEECdCACIAlBDGsgBygCCCIRIAxJIhIbaiARNgIAIAggEmoiCEECdCACIAlBEGsiCSAMIAcoAgwiDEsiERtqIAw2AgAgCCARaiEIIAdBEGohBwwBCwsgACAKQQJ0aiEMA0AgByAMTwRAIAEgCkcEQCAJQQRrIgkgCEECdGogBygCADYCACAHQQRqIQcgASEKDAMLIA8gE2ohCSAAIAIgCCIHQQJ0IgoQ+wYgCmoiDCEKA0AgASAHRkUEQCAKIAkoAgA2AgAgB0EBaiEHIAlBBGshCSAKQQRqIQoMAQsLIAhFDQQgASAISQRAIAtBADYCKCALQQE2AhwgC0G83OAANgIYIAtCBDcCICALQRhqQcTc4AAQwx0ACyAMIAEgCGsgAiADIAQgC0EUaiAGENMBIAghAQwGBSAIQQJ0IAIgCUEEayIJIAcoAgAiECAOKAIASSIRG2ogEDYCACAHQQRqIQcgCCARaiEIDAELAAsACwALIAAgAiACIAFBAnRqIgQQ7x8gACADQQJ0IgVqIAIgBWogBEEgahDvH0EIIQ4MAwsgASADSw0AIAIgAUECdCIKaiEJQQAhCCAAIQcDQCAAIA1BA2siBUEAIAUgDU0bQQJ0aiEMA0AgByAMT0UEQCAIQQJ0IAIgCUEEayAOKAIAIgUgBygCACIPTyIQG2ogDzYCACAIIBBqIghBAnQgAiAJQQhrIAUgBygCBCIPTyIQG2ogDzYCACAIIBBqIghBAnQgAiAJQQxrIAUgBygCCCIPTyIQG2ogDzYCACAIIBBqIghBAnQgAiAJQRBrIgkgBSAHKAIMIg9PIgUbaiAPNgIAIAUgCGohCCAHQRBqIQcMAQsLIAAgDUECdGohBQNAIAUgB00EQCABIA1HBEAgAiAIQQJ0aiAHKAIANgIAIAdBBGohByAIQQFqIQggCUEEayEJIAEhDQwDCyABIAhrIQcgCiATaiEJIAAgAiAIQQJ0IgAQ+wYiBSAAaiEKA0AgBwRAIAogCSgCADYCACAHQQFrIQcgCUEEayEJIApBBGohCgwBCwsgC0EIaiAIIAUgARDxGyALKAIMIQEgCygCCCEAQQAhBQwEBSAIQQJ0IAIgCUEEayIJIAcoAgAiDCAOKAIATSIPG2ogDDYCACAHQQRqIQcgCCAPaiEIDAELAAsACwALCwALIAtCgICAgCA3AyAgCyADrUIghjcDGEEAIA5rIQUgASADayEGIAAgDkECdCIEaiENIAIgBGohCgNAIAsgC0EYahCPFiALKAIARQRAIAIgASAAEM4HDAILIAUgBiADIAsoAgQiBBsiByAOIAcgDksbaiEJIA0gBEECdCIEaiEIIAQgCmohByACIARqIQQDQCAJRQ0BIAcgCCgCADYCACAEIAcQ7hQgCUEBayEJIAhBBGohCCAHQQRqIQcMAAsACwALIAtBMGokAAvsDAIJfwR+IwBB8AVrIgMkACADIAI2AhwCQCABKAIAQQFxRQRAIANB4AFqQgA3AwAgA0HYAWpCADcDACADQdABakIANwMAIANCADcDyAEMAQsgA0HgAWogAUEgaikDADcDACADQdgBaiABQRhqKQMANwMAIANB0AFqIAFBEGopAwA3AwAgAyABKQMINwPIAQsCQAJ/AkAgAi8AsQJBswZxRQ0AAkACQCABLQBTQQFxRQRAQYABIQQDQCAEQf8BcUEBaiIFQf8BcSAFRw0CIANByAFqIAQQ+ykgBSEERQ0ACwwCCyADQf8BOgDuASADQYCAAjsB7AEDQCADQRhqIANB7AFqEOoSIAMtABhFDQMgA0HIAWogAy0AGRC5EgwACwALIANByAFqQf8BEPspRQ0BCyAAQbEBNgIQIABB7PDDADYCDEEsIQVBCAwBCyADQcgAaiADQdQBaikCACINNwMAIANB0ABqIANB3AFqKQIAIgw3AwAgA0HYAGogA0HkAWooAgAiBDYCACADQSxqIA03AgAgA0E0aiAMNwIAIANBPGogBDYCACADIAMpAswBIgw3A0AgAyADKALIASIKNgIgIAMgDDcCJAJAIAEtAFIiBEECRiAEQQFxckUEQCADQfABakEAQYACEI0LGiADQf8BOgBiIANBADsBYANAIANBEGogA0HgAGoQ6hIgAy0AEEUNAiADLQARIgQgA0HwAWpqIAQ6AAAMAAsACyADQfgAaiACQaACaikDADcDACADQfAAaiACQZgCaikDADcDACADQegAaiACQZACaikDADcDACADIAIpA4gCNwNgAkAgA0EgahCCKg0AQQAhBANAQYACIAQgBEGAAk0bIQYDQCAEIAZGDQIgBBDn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ai0AACEgIAFBPmotAAAhIQJAIAFBHGotAABBAkcEQCACQZACaiALELsjDAELIAFBEGopAgAhIiALEPgZIQsgAUEMahD5HCEBIAJBAjoApAIgAiAiNwOYAiACIAE2ApQCIAIgCzYCkAILIAcgAikDkAI3AwAgDyACKQOAAjcDACAHQRhqIAJBqAJqKQMANwMAIAdBEGogAkGgAmopAwA3AwAgB0EIaiACQZgCaikDADcDACAPQQhqIAJBiAJqKAIANgIAIAIgHTYC7AEgAiAeNgLoASACICE6AP4BIAIgHzoA/QEgAiAgOgD8ASACQQc2AsABDAELIAJBwAFqIAEQjx8LIAQgCGogAkHAAWpBwAAQ2i0aIAVBAWshBSAEQUBrIQQMAQsLIAIgBjYCsAEgAiAINgKsASACIBw2AqgBIBMgA0EgahC+ICACIBc2ArQBIAIgGDYCpAEgAiAZNgKgASACIAMvAVA7AbgBIAJBEGogAkHoAGpB2AAQ+wYaDAgLIAMpAighIiACQegAaiIBIANBCGoQyw4gAiADQTBqEP4LNgKQASACICI3A4gBIAIgAy0AOToAmQEgAiADLQA0OgCUASACIAMoADU2AJUBIAogAUE4EPsGGiACQQU2AhAMBwsgAykCGCEiIAJB6ABqIgEgA0EIahDVISACIANBIGoQ/gs2AoABIAIgIjcDeCACIAMtACY6AIYBIAIgAy0AKToAiQEgAiADLwAnOwCHASACIAMvACQ7AYQBIAogAUEoEPsGGiACQQY2AhAMBgsgAykCKCEiIAJB6ABqIgYgA0EIahDLDiADQTxqEPckIQEgA0FAaxCbHCEEIAMtAEQhBSAQIANBMGoQywsgAiAFOgCkASACIAQ2AqABIAIgATYCnAEgAiAiNwOIASACIAMtAEs6AKsBIAIgAy8ASTsAqQEgAiADKABFNgClASAKIAZByAAQ+wYaIAJBBzYCEAwFCyADKQIYISIgAygCICEBIAJB6ABqIgggA0EIahDVISADQSRqEPckIQQgA0EoahCbHCEFIAMtADkhBiAUIANBLGoQywsgAiAGOgCZASACIAU2AogBIAIgBDYChAEgAiABNgKAASACICI3A3ggAiADKAE6NgGaASACIAMtADg6AJgBIAogCEE4EPsGGiACQQg2AhAMBAsgCSADQQRqEL8eIAJBCTYC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IAdBEGooAgA2AgAgAiAHKQIANwJcIAIgAzYCWCACQdgAahDHCiACQSBqIAJByAFqIgNBCGopAwA3AwAgAkEoaiADQRBqKQMANwMAIAJBMGogA0EYaikDADcDACACIAMpAwA3AxggAigCxAEhBgsgAkHQAGoiAyACQTBqKQMANwMAIAJByABqIgUgAkEoaikDADcDACACQUBrIgcgAkEgaikDADcDACACIAIpAxg3AzggAkHAAWogAUEAEJcGIAJB6ABqIAcpAwA3AwAgAkHwAGogBSkDADcDACACQfgAaiADKQMANwMAIAIgBDYChAEgAiAGNgJcIAIgCDYCWCACIAIpAzg3A2AgAigCwAEgAiACQRRqNgKAAUGAgICAeEcEQCACQaABaiADKQMANwMAIAJBmAFqIAUpAwA3AwAgAkGQAWogBykDADcDACACQbABaiACQcgBaikCADcDACACQbgBaiACQdABaikCADcDACACIAIpAzg3A4gBIAIgAikCwAE3A6gBIAogASgCfCIDIAMgCksbIQEgCiADIAMgCkkbIQQMBAsgAigCxAEhBiACQdgAahCoJgsgAEEJNgIAIAAgBjYCBAwDC0Hl7OAAQShB2KPgABD0FwALQQghCAsgACAGNgIEIAAgCDYCACAAQQhqIAJBiAFqQTgQ+wYaIAAgBDYCRCAAIAE2AkALIAJBkAJqJAALpwwBDX8jAEGQAmsiAiQAIAIgAUEoaiIEEMMgIgo2AhQCQAJAAkAgBBDKDSIDRQ0AIAMoAgBBAkcNACADLQAIQQJHDQAgAy0ACUEDRw0AIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQeQAaiABQdQCaikCADcCACACQewAaiABQdwCaigCADYCACACIAEpAswCNwJcIAIgAzYCWCACQdgAahDGCgJAAkACQAJAIAQQyg0iAwRAIAMoAgBBCUYNAQtBByEIDAELIAEoAsgCIQMgAUElNgLIAiABIAEpA+ACNwOYAyACQeQAaiIFIAFBzAJqIgdBCGopAgA3AgAgAkHsAGoiCSAHQRBqKAIANgIAIAIgBykCADcCXCACIAM2AlggAkHYAGoiDBDGCiAMIAFBABBRIAIoAlwhBiACKAJYIghBB0YNASACQeABaiINIAJB+ABqKQMANwMAIAJB2AFqIg4gAkHwAGop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AGogAxDxHiACKAJUIQEgAiADBH8gASADaiACKAJQIAFBHGxqIQEDQCACQeQAaiAFEOoBIAFBGGogAkH8AGooAgA2AgAgAUEQaiACQfQAaikCADcCACABQQhqIAJB7ABqKQIANwIAIAEgAikCZDcCACABQRxqIQEgBUEcaiEFIANBAWsiAw0ACwUgAQs2AlQgACACQcwAahCrAQwDCyABKAIIIQUgAkEgaiABKAIMIgNBHBDBFCACQQA2AmAgAiACKQMgNwJYIAJB2ABqIAMQ8R4gAigCYCEBIAIgAwR/IAEgA2ogAigCXCABQRxsaiEBA0AgAkHkAGogBRDqASABQRhqIAJB/ABqKAIANgIAIAFBEGogAkH0AGopAgA3AgAgAUEIaiACQewAaikCADcCACABIAIpAmQ3AgAgAUEcaiEBIAVBHGohBSADQQFrIgMNAAsFIAELNgJgIAAgAkHYAGoQWQwCCyAECyEBAkACQAJAAkAgBQ4CAAECCyABRSAGcg0BIAAQyiggAxCwIwwCCyABRSAGQQFHcg0AIAAgAykCADcCACAAQRhqIANBGGooAgA2AgAgAEEQaiADQRBqKQIANwIAIABBCGogA0EIaikCADcCAAwBCyAAIAJBLGoQ9QY2AhggAEEENgIAIAAgAikCLDcCBCAAQRRqIAJBPGooAgA2AgAgAEEMaiACQTRqKQIANwIADAELIAMQ8SoLIAJBgAFqJAAL/AoBB38CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgJBDGsiBCAEQSZPG0EBaw4kAAECFBUDBAUGBwgJFhMTFgoLDA0TFBQOExMPEBcUFBcRFxMSEwsgACgCDEEEdCEDIAAoAgghAANAIANFDRMgACgCAEECRwRAIABBDGogARCHLQsgAEEQaiEAIANBEGshAwwACwALIABBBGogARCFCg8LIAAoAiAgARCjEA8LIABBBGogARCHLSAAQQhqIAEQhy0PCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwECAwQFBgcICQsKAAsgACkDCCAAKAIYIAEQwRwMCgsgAEEIaiABEKYfDAkLIABBCGogARCVIgwICyAAQQRqIAEQhy0MBwsgAEEEaiABEIcZDAYLIABBBGogARDcJQwFCyAAQQRqIAEQ3CUMBAsgAEEEaiABEIctDAMLIABBBGogARDcJQwCCyAAQQRqIAEQ3SUMAQsgAEEIaiECAkACQCAAKAIEQQFrDgIBAgALIAIgARCTFQwBCyACIAEQvgsLIAEQhy0PCyAAQQhqIAEQph8PCyAAQQhqIAEQlSIPCyAAQQRqIAEQhy0gAEEIaiABEIctDA0LIAAtABhBBUYEQCAAQRBqIAEQhy0LIABBBGogARCIGSAAQShqIAEQ8SMPCyAAQRBqIAEQhy0gACgCBEGAgICAeEcEQCAAQQRqIAEQiBkLIABBIGogARDxIw8LIABBBGogARCHLSAAQRhqIAEQ8SMgACgCCCABEK4aDwsgACgCDEEobCEDIAAoAgghAgNAIAMEQCACIAEQrhEgA0EoayEDIAJBKGohAgwBCwsgACgCECICKAIAQYCAgIB4RgRAIAJBBGogARCHLQsgACgCICICBEAgAiABEK8aCyAAKAIkIgBFDQcgACABENMDDwsgACgCICIFIAEQsBogBSgCECIGIAUoAhRB2ABsaiEHA0AgByAGIgBHBEAgAEHYAGohBgJAAkACQAJAAkACQAJAIAAoAgAiAkEEa0EAIAJBBWtBCEkbQQFrDggBAgMEBQgIBgALIAAgARCWIiAAKAJEIgIgACgCSEEGdGohCANAIAIgCEYNCCACQUBrIQQgAigCAEEHRgRAIAIoAjhBDGwhACACKAI0IQMDQCAABEAgAyABEIctIABBDGshACADQQxqIQMMAQsLIAItABxBAkcEQCACKQMIIAJBGGooAgAgARDBHCAEIQIMAgsgAkEIaiABEN4lBSACIAEQ3yULIAQhAgwACwALIABBCGogARCWIiAAQTBqIAEQiC0MBgsgAEEgaiABEIgtDAULIABBCGogARCWIiAAQTxqIAEQ4CUgAEFAayABEPIjIABBMGogARCwGgwECyAAQSRqIAEQ4CUgAEEoaiABEPIjIABBLGogARCwGgwDCyAAQQRqIAEQ4SUMAgsgACgCCEEFRwRAIABBCGogARCWIgsgAEE8aiABEOAlIABBQGsgARDyIyAAQTBqIAEQsBoMAQsLIAVBMGogARDgJSAFKAI0IgAEQCAAIAEQrxoLIAUoAjgiAARAIAAgARCxGgsgBSgCIEEEdCEDIAUoAhwhAANAIANFDQcgACABEIctIAEgAEEMahDiJSADQRBrIQMgAEEQaiEADAALAAsgACgCDEUNBQwHCyAAQQhqEPUhDwsgACgCBCABEL8LDwsgAEEEaiABEMwPDwsgAEEEaiABEN0lDwsgAEEEaiABEIcZCw8LIABBBGogARCHLQ8LIABBDGogARCHLQ8LIABBBGogARCuGg8LIABBBGogARDcJQu/DAILfwF+IwBBsAFrIgMkACADQQA6ADsgAyABKQGCAzcAKyADIAEpAJMDNwA8IAMgASgAmwM2AEQgAyABQYoDaiIEKQEANwAzIANB4QBqIAFBlwNqKQAANwAAIANB3ABqIAFBkgNqKQEANwIAIANB1ABqIAQpAQA3AgAgAyABKQGCAzcCTCABQYABaiADQStqEMkIIAMgATYCSCABQShqIgQQ3iAhCAJAAkACQAJAAkACQAJAAkACQAJAAkAgBBDjDSIGBEAgBigCAEEJRg0BCyADQZABaiAEEJYLIANBCGogBBC4FCADQfDl3wA2AowBIANBNDoAiAEgAygCCCADKAIMIANBiAFqEIEVIQIgBBDjDSIERQ0JIAQoAgBBJEYNAQwJCyABKAIoIQYgAUElNgIoIAEgASkDQDcDeCADQZQBaiABQTRqKQIANwIAIANBnAFqIAFBPGooAgA2AgAgAyABKQIsNwKMASADIAY2AogBIANBiAFqIgUQxwogA0EgakECQQRBEBD7FCADQQA2AnQgAyADKAIkIgw2AnAgAyADKAIgNgJsIAFBLGohBiAFQQRyIQlBCCEKQQEhBQNAAkACQAJAIAQQ4w0iBwRAIANBADYCeCADIAc2AnwgA0H4AGoQkCQgBBDjDSIHBEAgBygCAEEKRg0LCyAFDQMgBBDjDSIFBEAgBSgCAEEQRg0CCyADQZABaiAEEJYLIANBGGogBBC4FCADQajF4AA2AowBIANBNDoAiAEgAygCGCADKAIcIANBiAFqEIEVIQIgBBDjDSIERQ0LIAQoAgBBJEYNAgwLCyABKALYAiECIANBADoAiAEgAyACIAIgA0GIAWoQgRU2AnwgA0EBNgJ4IANB+ABqEJAkDAkLIAkgBikCADcCACABKAIoIQUgAUElNgIoIAEgASkDQDcDeCAJQQhqIAZBCGopAgA3AgAgCUEQaiAGQRBqKAIANgIAIAMgBTYCiAEgA0GIAWoiBxDHCiAEEOMNIgVFDQEgBSgCAEEKRw0BIAJFDQggAS0A+AJBAkYNCCABLQD9AkEBcQ0IIAEoAnwhAiADQeoAOgCIASAIIAIgAiAISxsgCCACIAIgCEkbIAcQgRUhAiAEEOMNIgRFDQcgBCgCAEEkRw0HIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0EIAEgASgCLBCGDAwHCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNBCABIAEoAiwQhgwMCAsgA0GIAWogAUEBEOISIANB+ABqIAMoAogBEKQGIAMoAnwhBSADKAJ4Ig1BAkcEQCADKQKAASEOIAMoAmwgC0YEQCADQewAahDRFyADKAJwIQwLIAogDGoiByAONwIAIAdBBGsgBTYCACAHQQhrIA02AgAgAyALQQFqIgs2AnQgCkEQaiEKIANBiAFqEKMmQQAhBQwBCwsgAEGAgICAeDYCACAAIAU2AgQgA0GIAWoQoyYMBwsgASABKQNANwN4IAEoAiggAUElNgIoQSRHDQIgASABKAIsEIYMDAcLQeXs4ABBKEHYh+AAEPQXAAtB5ezgAEEoQeiH4AAQ9BcAC0Hl7OAAQShBiIjgABD0FwALIABBgICAgHg2AgAgACACNgIEDAILAkAgBBDjDSICRQ0AIAIoAgBBCkcNACABKAIoIQIgAUElNgIoIAEgASkDQDcDeCADQZQBaiAGQQhqKQIANwIAIANBnAFqIAZBEGooAgA2AgAgAyAGKQIANwKMASADIAI2AogBIANBiAFqEMcKIABBCGogA0H0AGooAgA2AgAgACADKQJsNwIADAQLIANBkAFqIAQQlgsgA0EQaiAEELgUIANByOXfADYCjAEgA0E0OgCIASADKAIQIAMoAhQgA0GIAWoQgRUhAgJAIAQQ4w0iBEUNACAEKAIAQSRHDQAgASABKQNANwN4IAEoAiggAUElNgIoQSRGBEAgASABKAIsEIYMDAELQeXs4ABBKEH4h+AAEPQXAAsgAEGAgICAeDYCACAAIAI2AgQMAQsgAEGAgICAeDYCACAAIAI2AgQLIANB7ABqEOYmDAELIABBgICAgHg2AgAgACACNgIECyADQcgAahCjJiADQbABaiQAC+AMAgt/AX4jAEGwAWsiAyQAIANBADoAOyADIAEpAaoCNwArIAMgASkAuwI3ADwgAyABKADDAjYARCADIAFBsgJqIgQpAQA3ADMgA0HhAGogAUG/AmopAAA3AAAgA0HcAGogAUG6AmopAQA3AgAgA0HUAGogBCkBADcCACADIAEpAaoCNwJMIAFBKGoiBCADQStqENIIIAMgATYCSCAEEMMgIQgCQAJAAkACQAJAAkACQAJAAkACQAJAIAQQyg0iBgRAIAYoAgBBCUYNAQsgA0GQAWogBBCRECADQQhqIAQQhRQgA0Hw5d8ANgKMASADQTQ6AIgBIAMoAgggAygCDCADQYgBahCBFSECIAQQyg0iBEUNCSAEKAIAQSRGDQEMCQsgASgCyAIhBiABQSU2AsgCIAEgASkD4AI3A5gDIANBlAFqIAFB1AJqKQIANwIAIANBnAFqIAFB3AJqKAIANgIAIAMgASkCzAI3AowBIAMgBjYCiAEgA0GIAWoiBRDGCiADQSBqQQJBBEEQEPsUIANBADYCdCADIAMoAiQiDDYCcCADIAMoAiA2AmwgAUHMAmohBiAFQQRyIQlBCCEKQQEhBQNAAkACQAJAIAQQyg0iBwRAIANBADYCeCADIAc2AnwgA0H4AGoQwiMgBBDKDSIHBEAgBygCAEEKRg0LCyAFDQMgBBDKDSIFBEAgBSgCAEEQRg0CCyADQZABaiAEEJEQIANBGGogBBCFFCADQajF4AA2AowBIANBNDoAiAEgAygCGCADKAIcIANBiAFqEIEVIQIgBBDKDSIERQ0LIAQoAgBBJEYNAgwLCyABKAKAAiECIANBADoAiAEgAyACIAIgA0GIAWoQgRU2AnwgA0EBNgJ4IANB+ABqEMIjDAkLIAkgBikCADcCACABKALIAiEFIAFBJTYCyAIgASABKQPgAjcDmAMgCUEIaiAGQQhqKQIANwIAIAlBEGogBkEQaigCADYCACADIAU2AogBIANBiAFqIgcQxgogBBDKDSIFRQ0BIAUoAgBBCkcNASACRQ0IIAEtAKACQQJGDQggAS0ApQJBAXENCCABKAKcAyECIANB6gA6AIgBIAggAiACIAhLGyAIIAIgAiAISRsgBxCBFSECIAQQyg0iBEUNByAEKAIAQSRHDQcgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMBwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0EIAEgASgCzAIQ/wsMCAsgA0GIAWogAUEBENESIANB+ABqIAMoAogBEKMGIAMoAnwhBSADKAJ4Ig1BAkcEQCADKQKAASEOIAMoAmwgC0YEQCADQewAahDRFyADKAJwIQwLIAogDGoiByAONwIAIAdBBGsgBTYCACAHQQhrIA02AgAgAyALQQFqIgs2AnQgCkEQaiEKIANBiAFqEIclQQAhBQwBCwsgAEGAgICAeDYCACAAIAU2AgQgA0GIAWoQhyUMBwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ/wsMBwtB5ezgAEEoQdiH4AAQ9BcAC0Hl7OAAQShB6IfgABD0FwALQeXs4ABBKEGIiOAAEPQXAAsgAEGAgICAeDYCACAAIAI2AgQMAgsCQCAEEMoNIgJFDQAgAigCAEEKRw0AIAEoAsgCIQIgAUElNgLIAiABIAEpA+ACNwOYAyADQZQBaiAGQQhqKQIANwIAIANBnAFqIAZBEGooAgA2AgAgAyAGKQIANwKMASADIAI2AogBIANBiAFqEMYKIABBCGogA0H0AGooAgA2AgAgACADKQJsNwIADAQLIANBkAFqIAQQkRAgA0EQaiAEEIUUIANByOXfADYCjAEgA0E0OgCIASADKAIQIAMoAhQgA0GIAWoQgRUhAgJAIAQQyg0iBEUNACAEKAIAQSRHDQAgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRgRAIAEgASgCzAIQ/wsMAQtB5ezgAEEoQfiH4AAQ9BcACyAAQYCAgIB4NgIAIAAgAjYCBAwBCyAAQYCAgIB4NgIAIAAgAjYCBAsgA0HsAGoQ5iYMAQsgAEGAgICAeDYCACAAIAI2AgQLIANByABqEIclIANBsAFqJAALrQsCBn8BfiMAQUBqIgMkACADQTBqIAIgAUEMQQAgAS0AJSIEQQJGG2ooAgBBABDVAQJAAkACQAJAAkACQAJAAkACQCADLQAwQQRHBEAgAykDMCIJQv8Bg0IEUg0BCyADQQA2AhggA0EwaiACIANBGGpBorXgAEEBELITAkAgAy0AMEEERg0AIAMpAzAiCUL/AYNCBFENACAAIAk3AgAMCQsgAiACKAIsQQFqNgIsIARBAkcNASABKAIEIAEoAhAhByADQTBqIAEoAgwiCCABKAIIIgRBgYAEIAQQ7hcgAy0AMEEFRwRAIAMpAzAhCQwFCyADKAI0GiAERQ0CAkAgAi0ATQ0AIANBMGogAhC0ESADLQAwQQRGDQAgAykDMCIJQv8Bg0IEUg0FCyADQQA6ACYgA0EAOgAnQTRqIQEgBCEGA0AgBkUEQCADQTBqIAIgCCAHQYGABCAFIAlCIIinENgBIAMtADBBBEYNBSADKQMwIglC/wGDQgRSDQYMBQsgAyAJNwI0IAMgBTYCMCADQRBqIAFBNGsiBRDSESADQShqIAIgB0GBgAQgA0EwaiADKAIQIAMoAhQgA0EnaiADQSZqEJEEIAMtAChBBEcEQCADKQMoIglC/wGDQgRSDQYLIANBMGogBSACEDQgAy0AMEEERwRAIAMpAzAiCUL/AYNCBFINBgsCQCADLQAmRQRAIANBAToAJgwBCyACKAJERQ0AIANBMGogAgJ/AkACQAJAAkACQAJAAkACQAJAIAUoAgBBAWsOCQIBAgMEBQYHCAALIAFBHGsoAgAMCAsgAUEgaygCAAwHCyABKAIADAYLIAFBKGsoAgAMBQsgAUEoaygCAAwECyABQTBrKAIAKAIkDAMLIAFBKGsoAgAMAgsgAUEoaygCAAwBCyADQQhqIAFBLGsQrQQgAygCDAtBABDsAiADLQAwQQRGDQAgAykDMCIJQv8Bg0IEUg0GCyADLQAnBEAgAiACKAIsQQFrNgIsIANBADoAJwsgAyAFENIRIAZBAWshBiABQThqIQFBASEFIAMpAwAhCQwACwALIAAgCTcCAAwHCyADQTBqIAIgASgCAEEAENUBAkAgAy0AMEEERwRAIAMpAzAiCUL/AYNCBFINAQsCQCABLQAkRQ0AIANBADYCMCADQShqIAIgA0EwakGkteAAQQcQshMgAy0AKEEERwRAIAMpAygiCUL/AYNCBFINAgsgA0EwaiACENARIAMtADBBBEYNACADKQMwIglC/wGDQgRSDQELIANBADYCMCADQShqIAIgA0EwakGrteAAQQkQshMgAy0AKEEERwRAIAMpAygiCUL/AYNCBFINAQsgA0EwaiACENARIAMtADBBBEcEQCADKQMwIglC/wGDQgRSDQELIANBMGogAUEIaiACEOQSIAMtADBBBEcEQCADKQMwIglC/wGDQgRSDQELAkAgAi0ATQ0AIANBMGogAhDQESADLQAwQQRGDQAgAykDMCIJQv8Bg0IEUg0BCyADQTBqIAEoAiAgAhDuASADLQAwQQRGDQYgAykDMCIJQv8Bg0IEUQ0GCyAJQv8Bg0IEUQ0FIAAgCTcCAAwGCyACLQBNDQAgA0EwaiACELQRIAMtADBBBEYNACADKQMwIglC/wGDQgRSDQELIANBMGogAiAHIARFQYGABBCtDyADLQAwQQRGDQEgAykDMCIJQv8Bg0IEUQ0BCyAJQv8Bg0IEUg0BCyADQTBqIAIgCEEAENUBIAMtADBBBEYNASADKQMwIglC/wGDQgRRDQELIAlC/wGDQgRRDQAgACAJNwIADAELIAIgAigCLEEBazYCLCADQTBqIAIgA0EYakGjteAAQQEQshMCQCADLQAwQQRHBEAgAykDMCIJQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAJNwIACyADQUBrJAAL0QwBCX8jAEHwA2siAiQAIAFBKGoiCBDDICEJIAJBNGogARDOFSACQdgAaiIFIAIoAjQiA0E8aiIEEL4QIAJBADoA6AIgAkEANgLsAyACQegCaiIGIAUQrhgtAAAQrg4gAkHgAWoiBSAGQYgBEPsGGiAEEMQgIAQgBUGIARD7BiEKAkACQAJAAkACQAJAIANBKGoiBRDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQhGDQELAkAgBRDKDSIERQ0AIAQoAgBBFEcNACAELQAEQQRGDQILIAJB8AJqIAUQkRAgAkEIaiAFEIUUIAJBqOLfADYC7AIgAkE0OgDoAiACKAIIIAIoAgwgAkHoAmoQgRUhBEGAgICAeCEGAkAgBRDKDSIFRQ0AIAUoAgBBJEcNACADIAMpA+ACNwOYAyADKALIAiADQSU2AsgCQSRHDQMgAyADKALMAhD/CwsMBAsgAkEgaiAFEIUUIAIoAiQhBCACKAIgIQYgA0HIAmoQhiUgA0EAOgDoAiADQQQ6AMwCIANBFDYCyAIgAyAGQQFqIgYgBCAEIAZJGzYC5AIgAyAGIAQgBCAGSxs2AuACDAILIAMoAsgCIQQgA0ElNgLIAiADIAMpA+ACNwOYAyACQfQCaiADQdQCaikCADcCACACQfwCaiADQdwCaigCADYCACACIAMpAswCNwLsAiACIAQ2AugCIAJB6AJqEMYKDAELQeXs4ABBKEHA4t8AEPQXAAsgAkEANgLoASACQoCAgIDAADcC4AEgA0HMAmohBiACQegCakEEciEHA0ACQCACQegCaiADQQQQ0wgCQAJAAkACQCACLQDoAg0AAkAgAi0A6QINACAFEMMgGiACQRhqIAMQlgIgAigCHCEEIAIoAhgNAiACQeABaiAEENUbIAUQyg0iBARAIAQoAgBBEEYNBAsgAkHoAmogA0EEENMIIAItAOgCDQEgAi0A6QINACAFEMoNIgQEQCAEKAIAQRBGDQULIAJB8AJqIAUQkRAgAkEQaiAFEIUUIAJBqMXgADYC7AIgAkE0OgDoAiACKAIQIAIoAhQgAkHoAmoQgRUhBCAFEMoNIgVFDQIgBSgCAEEkRw0CIAMgAykD4AI3A5gDIAMoAsgCIANBJTYCyAJBJEcNBSADIAMoAswCEP8LDAILIAIoAugBIQMgAigC5AEhBCACKALgASEGDAYLIAIoAuwCIQQLIAJB4AFqEPImQYCAgIB4IQYMBAsgByAGKQIANwIAIAMoAsgCIQQgA0ElNgLIAiADIAMpA+ACNwOYAyAHQQhqIAZBCGopAgA3AgAgB0EQaiAGQRBqKAIANgIAIAIgBDYC6AIgAkHoAmoQxgoMAgsgByAGKQIANwIAIAMoAsgCIQQgA0ElNgLIAiADIAMpA+ACNwOYAyAHQQhqIAZBCGopAgA3AgAgB0EQaiAGQRBqKAIANgIAIAIgBDYC6AIgAkHoAmoQxgoMAQsLQeXs4ABBKEGQ8t8AEPQXAAsgAkHoAmoiBSACQdgAakGIARD7BhogChDEICAKIAVBiAEQ+wYaAn8CQAJAIAZBgICAgHhHBEAgAiADNgIwIAIgBDYCLCACIAY2AiggAkE0ahCHJSABQQA6AOQBAkACQAJAIAgQyg0iA0UNACADKAIAQRRHDQAgAy0ABEEGRg0BCyACQfACaiAIEJEQIAIgCBCFFCACQYDi3wA2AuwCIAJBNDoA6AIgAigCACACKAIEIAJB6AJqEIEVIQQgCBDKDSIDRQ0EIAMoAgBBJEYNAQwECyABKALIAiEDIAFBJTYCyAIgASABKQPgAjcDmAMgAkH0AmogAUHUAmopAgA3AgAgAkH8AmogAUHcAmooAgA2AgAgAiABKQLMAjcC7AIgAiADNgLoAiACQegCahDGCiABKAKcAyEBQRRBBBCrICIEQQhqIAJBMGooAgA2AgAgBCACKQIoNwIAIAQgCSABIAEgCUkbNgIQIAQgCSABIAEgCUsbNgIMQQAMBAsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0BIAEgASgCzAIQ/wsMAgsgAkE0ahCHJUEBDAILQeXs4ABBKEGY4t8AEPQXAAsgAkEoahDyJkEBCyEDIAAgBDYCBCAAIAM2AgAgAkHwA2okAAuiDAEJfyMAQfADayICJAAgAUEoaiIIEN4gIQkgAkE0aiABENsVIAJB2ABqIgQgAigCNCIDQZQBaiIFEL4QIAJBADoA6AIgAkEANgLsAyACQegCaiIGIAQQrhgtAAAQrg4gAkHgAWoiBCAGQYgBEPsGGiAFEMQgIAUgBEGIARD7BiEKAkACQAJAAkACQAJAIANBKGoiBRDjDSIERQ0AIAQoAgBBFEcNACAELQAEQQhGDQELAkAgBRDjDSIERQ0AIAQoAgBBFEcNACAELQAEQQRGDQILIAJB8AJqIAUQlgsgAkEIaiAFELgUIAJBqOLfADYC7AIgAkE0OgDoAiACKAIIIAIoAgwgAkHoAmoQgRUhBEGAgICAeCEGAkAgBRDjDSIFRQ0AIAUoAgBBJEcNACADIAMpA0A3A3ggAygCKCADQSU2AihBJEcNAyADIAMoAiwQhgwLDAQLIAJBIGogBRC4FCACKAIkIQQgAigCICEGIAUQoiYgA0EAOgBIIANBBDoALCADQRQ2AiggAyAGQQFqIgYgBCAEIAZJGzYCRCADIAYgBCAEIAZLGzYCQAwCCyADKAIoIQQgA0ElNgIoIAMgAykDQDcDeCACQfQCaiADQTRqKQIANwIAIAJB/AJqIANBPGooAgA2AgAgAiADKQIsNwLsAiACIAQ2AugCIAJB6AJqEMcKDAELQeXs4ABBKEHA4t8AEPQXAAsgAkEANgLoASACQoCAgIDAADcC4AEgA0EsaiEGIAJB6AJqQQRyIQcDQAJAIAJB6AJqIANBBBDWCAJAAkACQAJAIAItAOgCDQACQCACLQDpAg0AIAUQ3iAaIAJBGGogAxCUAiACKAIcIQQgAigCGA0CIAJB4AFqIAQQ1RsgBRDjDSIEBEAgBCgCAEEQRg0ECyACQegCaiADQQQQ1gggAi0A6AINASACLQDpAg0AIAUQ4w0iBARAIAQoAgBBEEYNBQsgAkHwAmogBRCWCyACQRBqIAUQuBQgAkGoxeAANgLsAiACQTQ6AOgCIAIoAhAgAigCFCACQegCahCBFSEEIAUQ4w0iBUUNAiAFKAIAQSRHDQIgAyADKQNANwN4IAMoAiggA0ElNgIoQSRHDQUgAyADKAIsEIYMDAILIAIoAugBIQMgAigC5AEhBCACKALgASEGDAYLIAIoAuwCIQQLIAJB4AFqEPImQYCAgIB4IQYMBAsgByAGKQIANwIAIAMoAighBCADQSU2AiggAyADKQNANwN4IAdBCGogBkEIaikCADcCACAHQRBqIAZBEGooAgA2AgAgAiAENgLoAiACQegCahDHCgwCCyAHIAYpAgA3AgAgAygCKCEEIANBJTYCKCADIAMpA0A3A3ggB0EIaiAGQQhqKQIANwIAIAdBEGogBkEQaigCADYCACACIAQ2AugCIAJB6AJqEMcKDAELC0Hl7OAAQShBkPLfABD0FwALIAJB6AJqIgUgAkHYAGpBiAEQ+wYaIAoQxCAgCiAFQYgBEPsGGgJ/AkACQCAGQYCAgIB4RwRAIAIgAzYCMCACIAQ2AiwgAiAGNgIoIAJBNGoQoyYgAUEAOgC8AgJAAkACQCAIEOMNIgNFDQAgAygCAEEURw0AIAMtAARBBkYNAQsgAkHwAmogCBCWCyACIAgQuBQgAkGA4t8ANgLsAiACQTQ6AOgCIAIoAgAgAigCBCACQegCahCBFSEEIAgQ4w0iA0UNBCADKAIAQSRGDQEMBAsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkH0AmogAUE0aikCADcCACACQfwCaiABQTxqKAIANgIAIAIgASkCLDcC7AIgAiADNgLoAiACQegCahDHCiABKAJ8IQFBFEEEEKsgIgRBCGogAkEwaigCADYCACAEIAIpAig3AgAgBCAJIAEgASAJSRs2AhAgBCAJIAEgASAJSxs2AgxBAAwECyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNASABIAEoAiwQhgwMAgsgAkE0ahCjJkEBDAILQeXs4ABBKEGY4t8AEPQXAAsgAkEoahDyJkEBCyEDIAAgBDYCBCAAIAM2AgAgAkHwA2okAAvhCwIIfwF+IwBB0AFrIgMkACADQSRqIAEQzhUgAygCJCIBQShqIgQQwyAhBwJAAkACQAJAIAQgAhChD0UEQCAEEMoNIgVFBEAgASgCgAIhBSADQQA6AGggBSAFIANB6ABqEIEVEK8YIQULIANBtAI2ApwBIAMgBTYCuAFBASEIIANBATYCTCADQYT44AA2AkggA0IBNwJUIAMgA0G4AWo2ApgBIAMgA0GYAWo2AlAgA0HwAGogA0HIAGoQ+hQgA0EYaiAEEIUUIAMgAjYCbCADQTQ6AGggAygCGCADKAIcIANB6ABqEIEVIQIgBBDKDSIERQ0EIAQoAgBBJEcNBCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwECyAEEMMgIQkgBBDKDSICRQ0BIAIoAgBBAkcNASACLQAIDQEgAi0ACUEURw0BIANB3QBqIAFBvwJqKQAANwAAIANB2ABqIAFBugJqKQAANwMAIANB0ABqIAFBsgJqKQAANwMAIAMgASkAqgI3A0ggBBCtEyICRQ0BIAIoAgBBAkcNASADQcgAaiACLQAIIAJBCWotAAAQ3wkNASAEEMoNIgJFBEAgASgCgAIhASADQQA6AGggASABIANB6ABqEIEVIQIMAwsgAigCAEEkRgRAIAEgASkD4AI3A5gDIAEoAsgCIAFBJTYCyAJBJEYEQCABKALMAiECDAQLQeXs4ABBKEGw9N8AEPQXAAsgASgCyAIhAiABQSU2AsgCIAEgASkD4AI3A5gDIANB9ABqIAFB1AJqKQIANwIAIANB/ABqIAFB3AJqKAIANgIAIAMgASkCzAI3AmwgAyACNgJoIANB6ABqIgIQxgpBASEFIAQQyg0NASABKAKAAiEBIANBADoAaCABIAEgAhCBFSECDAILQeXs4ABBKEGg9N8AEPQXAAsgA0H9AGogAUG/AmopAAA3AAAgA0H4AGogAUG6AmopAAA3AwAgA0HwAGogAUGyAmopAAA3AwAgAyABKQCqAjcDaAJAIAQQyg0iAkUNACACKAIAQQJHDQAgA0HoAGogAi0ACCACQQlqLQAAEN8JDQAgBBCtEyICRQ0AIAIoAgBBAkcNACACLQAIDQAgAi0ACUEORw0AIAQQhyFBAXMhBgsgBSAGckUEQCADQRBqIAFBACAHEP8GIAMoAhQhAiADKAIQIQgMAgsgA0GYAWoiCiABENEEIAMoAqABIQIgAykDmAEiC1ANACADIAMoAqQBNgKUASADIAI2ApABIAMgCzcDiAFBACECAkACQCAGBEAgBBDKDSICRQRAIAEoAoACIQEgA0EAOgCYASABIAEgChCBFSECDAMLIAIoAgBBJEYEQCABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQIgASgCzAIhAgwDCyABKALIAiECIAFBJTYCyAIgASABKQPgAjcDmAMgA0GkAWogAUHUAmopAgA3AgAgA0GsAWogAUHcAmooAgA2AgAgAyABKQLMAjcCnAEgAyACNgKYASADQZgBahDGCiADQQhqIAFBACAEEMMgEP8GIAMoAgwhAiADKAIIDQILIAEoApwDIQYgA0G4AWogA0GIAWoQpRwgA0GsAWogA0HIAWopAwA3AgAgA0GkAWogA0HAAWopAwA3AgAgAyADKQO4ATcCnAFB2ABBCBCrICIEQRI2AgAgBCAFOgAsIAQgAjYCKCAEIAkgBiAGIAlJGzYCJCAEIAkgBiAGIAlLGzYCICAEIAMpApgBNwIEIARBDGogA0GgAWopAgA3AgAgBEEUaiADQagBaikCADcCACAEQRxqIANBsAFqKAIANgIAIAEoApwDIQFBDEEEEKsgIgIgBDYCACACIAcgASABIAdJGzYCCCACIAcgASABIAdLGzYCBAwDC0Hl7OAAQShBwPTfABD0FwALIAsQ+RoLQQEhCAsgA0EkahCHJSAAIAI2AgQgACAINgIAIANB0AFqJAALiAwBB38jAEGgAWsiAiQAIAAtAD0hByAAQQA6AD0CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgASgCACIGQQxrIgMgA0EmTxtBAWsOJAABAgMEBQYHCAkKCwweHg0ODxARHhITFB4eFRYXGBkaGxweHR4LIAEoAgxBBHQhBCABKAIIIQMDQCAERQ0eIAMoAgBBAkcEQCADQQxqIAAQ1ywLIANBEGohAyAEQRBrIQQMAAsACyABQQRqIAAQowkMHAsgACABQQhqEIoCDBsLIAFBBGogABDXLAwaCyABQQxqIAAQ1ywMGQsgAUEEaiAAENcsIAFBCGogABDXLAwYCyABQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAZBAWsOCwECAwQFBgcICQsKAAsgASkDCCABKAIYIAAQ2RQMCgsgACABQQhqEKIfDAkLIAAgAUEIahCPIgwICyABQQRqIAAQ1ywMBwsgAUEEaiAAELccDAYLIAFBBGogABDXLAwFCyABQQRqIAAQ1ywMBAsgAUEEaiAAENcsDAMLIAFBBGogABDXLAwCCyABQQRqIAAQ1ywMAQsgAUEIaiEDAkACQCABKAIEQQFrDgIBAgALIAMgABCQFwwBCyADIAAQiQ0LIABBADoAPSAAENcsDBgLIAAgAUEIahCiHwwWCyAAIAFBCGoQjyIMFQsgAUEEaiAAENcsIAFBCGogABDXLCABQQxqIAAQ1ywMFAsgAS0AGEEFRgRAIAFBEGogABDXLAsgAUEEaiAAEP0YDBMLIAFBEGogABDXLCABKAIEQYCAgIB4Rg0SIAFBBGogABD9GAwSCyABQQRqIAAQphoMEQsgAUEEaiAAEKYaDBALIAFBBGogABDXLCABKAIIIAAQphoMDwsgACABQQRqEIEEDA4LIAJBOGpByKDjACkDADcCACACQQA6AGMgAkEAOwBhIAJBADYCWCACQoCAgICAATcCUCACQQA6AEwgAkEANgJIIAJCgICAgMAANwJAIAJBADYCLCACQoCAgICAATcCJCACQcCg4wApAwA3AjAgAiAALQA8OgBgIAIgACgCODYCXCABLQAcQQJHBEAgAkEQaiABKQMIIAEoAhgQwCMgAkEkaiACKQMQIAIoAhhBABCbBgsgAkHQAGohBSABQSBqIAJBJGoQ8SwCQCACKAJYIgMEQCAAQQxqIAMQhCkgAkHkAGogAigCVCACKAJYEKEKIAIgAigCZDYCeCACIAIoAmgiAzYCcCACIAMgAigCbEEEdCIEaiIINgJ8A0AgBEUNAiACQSRqIAMpAwAgAygCCBCrESAEQRBrIQQgA0EQaiEDDAALAAsgAkHwAGoiAyACQSRqQSwQ+wYaIABBHGogAxChGiAFEI4jDA4LIAIgCDYCdCACQfAAahCJFyAALQAoRQRAIAAgAigCWBCWHiACIAIoAlA2AnggAiACKAJUIgM2AnAgAiADIAIoAlhBBHQiBGoiBTYCfANAIAQEQCAAIAMpAwAgAygCCEEBEJsGIARBEGshBCADQRBqIQMMAQsLIAIgBTYCdCACQfAAaiIDEIkXIAMgAkEkakEsEPsGGiAAQRxqIAMQoRoMDgsgAkH4AGogBUEIaigCADYCACACIAUpAgA3A3AgAEEsaiACQfAAaiIDEKEQIAMgAkEkakEsEPsGGiAAQRxqIAMQoRoMDQsgASgCDEUNDCABQQxqIAAQ1ywMDAsgAUEEaiAAENcsDAsLIAFBBGogABDXLAwKCyABQQhqEPUhDAkLIAEoAgQgABCjDAwICyABQQRqIAAQyg8MBwsgAUEEaiAAENcsDAYLIAFBBGogABDXLAwFCyABQQRqIAAQ1ywMBAsgAUEEaiAAENcsDAMLIAFBBGogABDXLAwCCyABQQRqIAAQ1ywMAQsgAUEEaiAAELccCyAGQRpHDQAgAiABKQMIIAEoAhgQwCMgACACKQMAIAIoAggQqxELIAAgBzoAPSACQaABaiQAC8ILAgh/AX4jAEHQAWsiAyQAIANBJGogARDbFSADKAIkIgFBKGoiBBDeICEHAkACQAJAAkAgBCACEOEORQRAIAQQ4w0iBUUEQCABKALYAiEFIANBADoAaCAFIAUgA0HoAGoQgRUQzhghBQsgA0G0AjYCnAEgAyAFNgK4AUEBIQggA0EBNgJMIANBhPjgADYCSCADQgE3AlQgAyADQbgBajYCmAEgAyADQZgBajYCUCADQfAAaiADQcgAahD6FCADQRhqIAQQuBQgAyACNgJsIANBNDoAaCADKAIYIAMoAhwgA0HoAGoQgRUhAiAEEOMNIgRFDQQgBCgCAEEkRw0EIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0BIAEgASgCLBCGDAwECyAEEN4gIQkgBBDjDSICRQ0BIAIoAgBBAkcNASACLQAIDQEgAi0ACUEURw0BIANB3QBqIAFBlwNqKQAANwAAIANB2ABqIAFBkgNqKQAANwMAIANB0ABqIAFBigNqKQAANwMAIAMgASkAggM3A0ggBBDhEiICRQ0BIAIoAgBBAkcNASADQcgAaiACLQAIIAJBCWotAAAQ3wkNASAEEOMNIgJFBEAgASgC2AIhASADQQA6AGggASABIANB6ABqEIEVIQIMAwsgAigCAEEkRgRAIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRgRAIAEoAiwhAgwEC0Hl7OAAQShBsPTfABD0FwALIAEoAighAiABQSU2AiggASABKQNANwN4IANB9ABqIAFBNGopAgA3AgAgA0H8AGogAUE8aigCADYCACADIAEpAiw3AmwgAyACNgJoIANB6ABqIgIQxwpBASEFIAQQ4w0NASABKALYAiEBIANBADoAaCABIAEgAhCBFSECDAILQeXs4ABBKEGg9N8AEPQXAAsgA0H9AGogAUGXA2opAAA3AAAgA0H4AGogAUGSA2opAAA3AwAgA0HwAGogAUGKA2opAAA3AwAgAyABKQCCAzcDaAJAIAQQ4w0iAkUNACACKAIAQQJHDQAgA0HoAGogAi0ACCACQQlqLQAAEN8JDQAgBBDhEiICRQ0AIAIoAgBBAkcNACACLQAIDQAgAi0ACUEORw0AIAQQviFBAXMhBgsgBSAGckUEQCADQRBqIAFBACAHEIQHIAMoAhQhAiADKAIQIQgMAgsgA0GYAWoiCiABENMEIAMoAqABIQIgAykDmAEiC1ANACADIAMoAqQBNgKUASADIAI2ApABIAMgCzcDiAFBACECAkACQCAGBEAgBBDjDSICRQRAIAEoAtgCIQEgA0EAOgCYASABIAEgChCBFSECDAMLIAIoAgBBJEYEQCABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAiABKAIsIQIMAwsgASgCKCECIAFBJTYCKCABIAEpA0A3A3ggA0GkAWogAUE0aikCADcCACADQawBaiABQTxqKAIANgIAIAMgASkCLDcCnAEgAyACNgKYASADQZgBahDHCiADQQhqIAFBACAEEN4gEIQHIAMoAgwhAiADKAIIDQILIAEoAnwhBiADQbgBaiADQYgBahClHCADQawBaiADQcgBaikDADcCACADQaQBaiADQcABaikDADcCACADIAMpA7gBNwKcAUHYAEEIEKsgIgRBEjYCACAEIAU6ACwgBCACNgIoIAQgCSAGIAYgCUkbNgIkIAQgCSAGIAYgCUsbNgIgIAQgAykCmAE3AgQgBEEMaiADQaABaikCADcCACAEQRRqIANBqAFqKQIANwIAIARBHGogA0GwAWooAgA2AgAgASgCfCEBQQxBBBCrICICIAQ2AgAgAiAHIAEgASAHSRs2AgggAiAHIAEgASAHSxs2AgQMAwtB5ezgAEEoQcD03wAQ9BcACyALEPkaC0EBIQgLIANBJGoQoyYgACACNgIEIAAgCDYCACADQdABaiQAC68KAhF/An4jAEGQA2siCCQAIAGtIhdC//////////8/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QRhqQcig4wApAwAiBDcDACACQQhqIAQ3AwAgAkE0aiABQTRqKAIANgIAIAJBAToAKCACIAE2AiAgAiADNgIkIAJBwKDjACkDACIENwMQIAIgBDcDACACIAEpAiw3AiwgAiABLQA8OgA8IAIgAS8BOjsBOiABLQA4IQMgAiABLQA9OgA9IAIgAzoAOCACQQA6ADkgACACEM8jIAJBAToAOSACKAIkIABBPGoQmSEgAiAAQShqEKoLIAIQgSkLIABB4ABqIgAoAgBBgICAgHhGDQggASAAEL0LDAgLIABBBGogARDeKyAAQQhqIAEQ4ywMBwsgAEEEaiABEN4rIABBCGogARDjLAwGCyABKAIwEL4RIQMgAkEYakHIoOMAKQMAIgQ3AwAgAkEIaiAENwMAIAJBNGogAUE0aigCADYCACACQQA6ACggAiABNgIgIAIgAzYCJCACQcCg4wApAwAiBDcDECACIAQ3AwAgAiABKQIsNwIsIAIgAS0APDoAPCACIAEvATo7ATogAS0AOCEDIAIgAS0APToAPSACIAM6ADggAkEAOgA5AkAgACgCBCIDQQJGDQAgAEEIaiEBIANBAXFFBEAgASACEOQsDAELIAEgAhDeKwsgAkEBOgA5IABBGGogAhCsJSACQQE6ADkgAEEcaiACEKwlIAIgACgCDBDTCgwCCyABKAIwEL4RIQMgAkE0aiABQTRqKAIANgIAIAJBADoAKCACQRhqQcig4wApAwAiBDcDACACQQhqIAQ3AwAgAiABNgIgIAIgAzYCJCACQQE6ADkgAiABKQIsNwIsIAIgAS0APDoAPCACIAEvATo7ATogAkHAoOMAKQMAIgQ3AxAgAiAENwMAIAEtADghAyACIAEtAD06AD0gAiADOgA4IABBBGogAhDeGyAAQQxqIAIQ3isgAiAAKAIQENMKDAELIAEoAjAQvhEhAyACQTRqIAFBNGooAgA2AgAgAkEAOgAoIAJBGGpByKDjACkDACIENwMAIAJBCGogBDcDACACIAE2AiAgAiADNgIkIAJBAToAOSACIAEpAiw3AiwgAiABLQA8OgA8IAIgAS8BOjsBOiACQcCg4wApAwAiBDcDECACIAQ3AwAgAS0AOCEDIAIgAS0APToAPSACIAM6ADggAEEEaiACEN4bIABBDGogAhDeKyACIAAoAhAQ0woLIAIQ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DSIBRQRAIAMoAsAFIQEgA0EAOgCIByADIAEgASADQYgHahCBFTYChAcgA0EBNgKABwwBCyADQQA2AoAHIAMgATYChAcgASgCAEEjRw0AIAMgAykDoAY3A9gGIAMoAogGIANBJTYCiAZBI0cNASADKQOQBiELCyADQYAHahDCIyADQYgHaiADQcADakEBQQFBABCIAwJAIAMoAogHIgdBgICAgHhHBEAgAiADKALcBiIBIAEgAksbIQEgAygCkAchCSADKAKMByEKDAELIAMoAowHIQEgCxDtJkGAgICAeCEHCyADQeAGaiIIIAMoAsQFEPsQIAMoAuQGIQQgA0GUAWogAygC6AYiAhCSHyADKAKYASADKAKcASIFQQJ0aiAEIAJBAnQQ+wYaIANBADYC6AYgAyACIAVqNgKcASAIEIwjIAMoAswDIAMoAtADEMoeIAMoAsgDIAMoAswDEPApIAMoAtQDIAMoAtgDEIgXIAMoAugDBEAgA0HsA2oQjycgA0HwA2oQsicLIANB/ANqEMQgIAMoAsQFEO0YIAMoAsgFEO0YIAMoAswFENAXIAMoAtAFEO4YIANBiAZqEK4JIANBsAZqEK4JAkAgB0GAgICAeEcEQCADQfAAaiEIIANBEGohBCADQQRqIQUgCUEwbCECIAohAQNAIAJFDQIgAkEwayECIAEQjAQgAUEwaiEBDAALAAsgAyABNgLgBiADQQE2AsQDIANBzN3aADYCwAMgA0IBNwLMAyADQYwFNgKkASADIANBoAFqNgLIAyADIANB4AZqNgKgASADQcADakHU3doAEMMdAAsgCxDtJiAAIAk2AgggACAKNgIEIAAgBzYCACAGIAYoAgAiAEEBazYCACAAQQFGBEAgA0GEAWoQ1gsLIAMoAmggAygCbBDHFyADKAJkIAMoAmgQ3ykgCBCKCSADKAJYIQAgAygCXCIBKAIAIgIEQCAAIAIRAQALIAEoAgQiAgRAIAAgAiABKAIIENURCyADKAJQIAMoAlQQyBcgAygCTCADKAJQEPIpAkAgAygCACIAQQtGDQACQAJAQQYgAEECayIAIABBCU8bQQJrDgUCAgICAQALIAUhBAsgBCgCACAEQQRqKAIAENopCyADKAKYASIAIAMoApwBEJQfIAMoApQBIAAQ3ykgA0GgB2okAA8LQeXs4ABBKEGc/d8A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AgAgACAGNgIEIARBJGoQhScMBAsgBEHcAWogBEGwAWooAgA2AgAgBCAKNgLQASAEIAc2AswBIAQgCDYCyAEgBCAJNgLEASAEIAI2AsABIAQgBjYCvAEgBCAFNgK4ASAEIAQpA6gBNwLUASAEQSRqIARBuAFqEIAaAkAgAS0AhQNBAXFFDQAgBCgCLEEobCEGIAQoAighBQNAIAZFDQEgASAFEI4IIAZBKGshBiAFQShqIQUMAAsACyAAIAQpAiQ3AgAgAEEIaiAEQSxqKAIANgIADAMLIARBEGogBEEwahDPESAEKAIUIQggBCgCECELIARB9wA6ALgBIAEgCyAIIARBuAFqENgZIAcEQCAJELgpBSAEQTBqELISCwwACwALIAIQhiMLIARB4AFqJAALkQoCC38DfiMAQeABayICJAACQCABLQAUQQJHBEAgASgCGCEEIAJBNGpByKDjACkDACINNwIAIAJBwKDjACkDACIONwIsIAJBADsBXiACQQA2AlQgAkKAgICAgAE3AkwgAkEAOgBIIAJBADYCRCACQoCAgIDAADcCPCACQQA2AiggAkKAgICAgAE3AiAgAiAALwE8OwFcIAIgACgCODYCWCACQRBqIAEpAwAiDyABKAIQIggQwCMgAkEgaiACKQMQIAIoAhhBARCbBiACQfQAaiANNwIAIAJBADYClAEgAkKAgICAgAE3AowBIAJBADoAiAEgAkEANgKEASACQoCAgIDAADcCfCACQQA2AmggAiAONwJsIAJBADsBngEgAiACLwFcOwGcASACIAIoAlg2ApgBIAJCgICAgIABNwJgIARBGGohCSAEQQxqIAQoAghBBnQhASACQYwBaiEGIAJBzABqIQUgAkE8aiEHIAJBLGohCyAEKAIEIQMCQANAIAFFDQEgAygCACEMIAFBQGohASADQUBrIQMCQCAMQQJrDgMAAQABCwsgAiAPIAgQwCMgAkHgAGogAikDACACKAIIEKsRCyACQeAAaiIBEJ8aIAQgARCpGiABIAkQ5yMCQAJAIAIoApQBIgEEQCALIAEQhCkgAkGkAWogAigCkAEgAigClAEQoQogAiACKAKkATYCuAEgAiACKAKoASIBNgKwASACIAEgAigCrAFBBHQiA2oiBDYCvAEDQCADRQ0CIAJB4ABqIAEpAwAgASgCCBCrESADQRBrIQMgAUEQaiEBDAALAAsgAkGwAWoiASACQeAAakEsEPsGGiAHIAEQoRogBhCOIwwBCyACIAQ2ArQBIAJBsAFqEIkXIAItAEhFBEAgAkEgaiACKAKUARCWHiACIAIoAowBNgK4ASACIAIoApABIgE2ArABIAIgASACKAKUAUEEdCIDaiIENgK8AQNAIAMEQCACQSBqIAEpAwAgASgCCEEBEJsGIANBEGshAyABQRBqIQEMAQsLIAIgBDYCtAEgAkGwAWoiARCJFyABIAJB4ABqQSwQ+wYaIAcgARChGgwBCyACQbgBaiAGQQhqKAIANgIAIAIgBikCADcDsAEgBSACQbABaiIBEKEQIAEgAkHgAGpBLBD7BhogByABEKEaCwJAIAIoAlQiAQRAIABBDGogARCEKSACQbABaiACKAJQIAIoAlQQoQogAiACKAKwATYCaCACIAIoArQBIgE2AmAgAiABIAIoArgBQQR0IgNqIgQ2AmwDQCADRQ0CIAJBIGogASkDACABKAIIEKsRIANBEGshAyABQRBqIQEMAAsACyACQeAAaiIBIAJBIGpBLBD7BhogAEEcaiABEKEaIAUQjiMMAgsgAiAENgJkIAJB4ABqEIkXIAAtAChFBEAgACACKAJUEJYeIAIgAigCTDYCaCACIAIoAlAiATYCYCACIAEgAigCVEEEdCIDaiIENgJsA0AgAwRAIAAgASkDACABKAIIQQEQmwYgA0EQayEDIAFBEGohAQwBCwsgAiAENgJkIAJB4ABqIgEQiRcgASACQSBqQSwQ+wYaIABBHGogARChGgwCCyACQegAaiAFQQhqKAIANgIAIAIgBSkCADcDYCAAQSxqIAJB4ABqIgEQoRAgASACQSBqQSwQ+wYaIABBHGogARChGgwBCyABQRhqIAAQ/iwLIAJB4AFqJAALhAoCC38DfiMAQYABayICJAAgAkEIaiABEEUCQCACKAIIQSVGBEAgAEElNgIADAELIAJBMGogAkEIakEoEPsGGgJAAkACQAJAAkAgASgCoAIiBSgCCEUEQCAFQX82AgggBUEMaiEGIAIoAkghCwNAAkAgBSgCFCIDBEAgBSgCECADQQFrIgNBKGxqIgQoAhggC08NAQtBAyEBAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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CCAEIAUQmQYgBigCLCEIIAYoAighBwwKCyAGQRhqIAEgAiADIAQgBRCZBiAGKAIcIQggBigCGCEHDAkLQeXs4ABBKEGojcMAEPQXAAtByIzDABDgKQALQeXs4ABBKEH4jMMAEPQXAAtBmIzDABDgKQALIAZB2ABqIAEgAiADEKsEDAMLQeXs4ABBKEH4jMMAEPQXAAtBmIzDABDgKQALQfCGwwBBE0GEh8MAELsSAAsgBigCWARAQQEhByAGKAJkIghBAXQiAUEBciECIAYpAlwhECABIAVJBEAgBCABQQJ0aiAQp0EBajYCAAsgAiAFTw0BIAQgAkECdGogEEIgiKdBAWo2AgAMAQtBACEHCyAAIAg2AgQgACAHNgIAIAZBwAFqJAALmAoCCn8DfiMAQbABayICJAAgAUEoaiIEEN4gIQggAkHVAGogAUGXA2opAAA3AAAgAkHQAGogAUGSA2opAQAiDDcCACACQcgAaiABQYoDaikBACINNwIAIAJBADoAgwEgAiABLQCcAzoAggEgAiABLQCeAzoAhAEgAiABKQGCAyIONwBoIAIgDTcAcCACIAw3AHggAiABLwGaAzsAgAEgAiAONwJAIAFBgAFqIgcgAkHoAGoQyQggAiABNgI8IAJBMGogARDaASACKAI0IQUCQAJAAkACQAJAAkAgAigCMARAIAUhAwwBCyAEELshDQQgBBDjDSIDRQ0EIAMoAgBBAkcNBCADLQAIQQJHDQQgAy0ACUEaRw0EIAEoAighAyABQSU2AiggASABKQNANwN4IAJB9ABqIgYgAUE0aikCADcCACACQfwAaiIJIAFBPGooAgA2AgAgAiABKQIsNwJsIAIgAzYCaCACQegAaiILEMcKIAIgBTYCYCACQYEBaiABQYIDaiIDQRVqKQAANwAAIAkgA0EQaikBADcCACAGIANBCGopAQA3AgAgAkEBOgCrASACIAEtAJwDOgCqASACIAEtAJ4DOgCsASACIAEpAYIDNwCQASACIAEpAYoDNwCYASACIAEpAZIDNwCgASACIAEvAZoDOwCoASACIAMpAQA3AmwgByACQZABahDJCCACIAE2AmggAkEoaiABENoBIAIoAiwhAwJAIAIoAihFBEAgAiADNgJkIAsQoyYCQAJAIAQQ4w0iBwRAIAcoAgBBF0YNAQsgAkHwAGogBBCW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EQsgAiAAQQRqNgIIIAJBATYCFCACQYT44AA2AhAgAkIBNwIcIAJB/QE2AiwgAiACQShqNgIYIAIgAkEIajYCKCABKAIUIAEoAhggAkEQahC1JAwQCyACIABBBGo2AgggAkEBNgIUIAJBpJjYADYCECACQgE3AhwgAkH+ATYCLCACIAJBKGo2AhggAiACQQhqNgIoIAEoAhQgASgCGCACQRBqELUkDA8LIAJBADYCICACQQE2AhQgAkHMmNgANgIQIAJCBDcCGCABKAIUIAEoAhggAkEQahC1JAwOCyACQQA2AiAgAkEBNgIUIAJB/JjYADYCECACQgQ3AhggASgCFCABKAIYIAJBEGoQtSQMDQsgAkEANgIgIAJBATYCFCACQaSZ2AA2AhAgAkIENwIYIAEoAhQgASgCGCACQRBqELUkDAwLIAIgACgCBDYCCCACQQI2AhQgAkHMmdgANgIQIAJCATcCHCACQQc2AiwgAiACQShqNgIYIAIgAkEIajYCKCABKAIUIAEoAhggAkEQahC1JAwLCyACIAAoAgQ2AgggAkEBNgIUIAJB+JnYADYCECACQgE3AhwgAkEHNgIsIAIgAkEoajYCGCACIAJBCGo2AiggASgCFCABKAIYIAJBEGoQtSQMCgsgAiAAKAIENgIIIAJBATYCFCACQZia2AA2AhAgAkIBNwIcIAJBBzYCLCACIAJBKGo2AhggAiACQQhqNgIoIAEoAhQgASgCGCACQRBqELUkDAkLIAJBADYCICACQQE2AhQgAkHMmtgANgIQIAJCBDcCGCABKAIUIAEoAhggAkEQahC1JAwICyACQQA2AiAgAkEBNgIUIAJB9JrYADYCECACQgQ3AhggASgCFCABKAIYIAJBEGoQtSQMBwsgAiAANgIIIAJBATYCFCACQaSb2AA2AhAgAkIBNwIcIAJBDTYCLCACIAJBKGo2AhggAiACQQhqNgIoIAEoAhQgASgCGCACQRBqELUkDAYLIAJBADYCICACQQE2AhQgAkHQm9gANgIQIAJCBDcCGCABKAIUIAEoAhggAkEQahC1JAwFCyACQQA2AiAgAkEBNgIUIAJB/JvYADYCECACQgQ3AhggASgCFCABKAIYIAJBEGoQtSQMBAsgAkEANgIgIAJBATYCFCACQaSc2AA2AhAgAkIENwIYIAEoAhQgASgCGCAC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BCABEM8CIAMoAjwiBCADKAI4IglBgICAgHhGDQIaIAMoAkAMAQtBAAs2AjAgAyAENgIsIAMgCTYCKAJAIAcQ4w0iBEUNACAEKAIAQQJHDQAgBC0ACEECRw0AIAQtAAlBGkcNACADIAcQuBQgAygCBCEEIAMoAgAhBiADQZUBOgA4IAEgBiAEIANBOGoiBhDYGSABQSxqIQQgBkEEciEGA0AgBxDjDSIIBEAgA0EANgJgIAMgCDYCZCADQeAAahCQJCAHEOMNIggEQCAIKAIAQQ1GDQMLIAYgBCkCADcCACABKAIoIQggAUElNgIoIAEgASkDQDcDeCAGQQhqIARBCGopAgA3AgAgBkEQaiAEQRBqKAIANgIAIAMgCDYCOCADQThqEMcKDAELCyABKALYAiEEIANBADoAOCADIAQgBCADQThqEIEVNgJkIANBATYCYCADQeAAahCQJAsgBxDeICEGIANBOGoiBCABENsVIANB4ABqIgogAygCOBBLIAMoAmQhByADKAJgIghBgICAgHhHBEAgAygCaCEJIAQQoyYgASgCfCEBIANB6ABqIANBIGopAwA3AwAgAyADKQMYNwNgIAQgChClHEHIAEEIEKsgIgQgAiABIAEgAkkbNgIEIAQgAiABIAEgAksbNgIAIAQgBiABIAEgBkkbNgI0IAQgBiABIAEgBksbNgIwIAQgCTYCLCAEIAc2AiggBCAINgIkIAQgBTYCICAEQQA6AEQgBCADKQM4NwMIIARBEGogA0FAaykDADcDACAEQRhqIANByABqKQMANwMAIAQgAykDKDcDOCAEQUBrIANBMGooAgA2AgBBAAwECyADQThqEKMmIANBKGoQ7yYgBwshBCAFEN0oCyADKQMYEPkaC0EBCyEBIAAgBDYCBCAAIAE2AgAgA0HwAGokAAvlCQIIfwN+IwBBgAJrIgIkAAJAAkACQAJAAkACQCAAKAIAIgNBCUcEQAJAAkACQAJAIANBAWsOCAECCQgHBgUKAAsgAEEcaiABEP4jDAkLIABBCGogARCGAgJAAkACQCAAKAIIQQJrDgYACwsLAQILCyAAKAIMIQUgAkEANgLAASACQoCAgICAATcCuAEgBSgCCEE4bCEDIAUoAgQhBANAIAMEQCADQThrIQMgBCACQbgBahCgCiAEQThqIQQMAQsLIAIoArgBIQMgAigCvAEhBSACKALAASEEIAJBCGogASkDECABKAIYENYVIAIpAwghCiACKAIQIQYgAUEwaiIIIARBAWpBAXYgBCABKAI8GyABQUBrEKIiIAJB3AFqQgA3AgAgAkIANwLUASACIAY2AtABIAIgCjcDyAEgAiAFIARBBHRqIgE2AsQBIAIgAzYCwAEgAiAFNgK8ASACIAU2ArgBIApCA4MhDCAKp0EIayEHIAUhAwNAIAQEQAJ/IAEgA0YEQEIAIQsgAQwBCyADKAIIIQAgAykDACELIANBEGoiBQshAyACQegBaiAIIAsgACAKUAR+QgAFIAxQBEAgByAHKAIAIglBAWo2AgAgCUEASA0HCyAKCyAGEOcGIAIpA+gBUEUEQCACKQPwARDtJgsgBEEBayEEDAELCyACIAU2ArwBIAJBuAFqEIkXIAoQ7SYMCgsgAkEoaiAAKAIMIgApAwAgAEEQaigCABDAIyACKAIwIQAgAikDKCEKIAJBGGogASkDECABKAIYENYVIAJBuAFqIAFBMGogCiAAIAIpAxggAigCIBDnBiACKQO4ASACKQPAARDWJwwJCyACQcgAaiAAKAIMEJAVIAIoAlAhACACKQNIIQogAkE4aiABKQMQIAEoAhgQ1hUgAkG4AWogAUEwaiAKIAAgAikDOCACKAJAEOcGIAIpA7gBIAIpA8ABENYnDAgLIAFBMGohBSAAKAIMQdAAbCEEIAAoAgghAwNAAkAgBARAIAMpAwAiCkICWiAKp0EBcXINASACQegAaiADKQMIIANBGGooAgAQwCMgAigCcCEGIAIpA2ghCiACQdgAaiABKQMQIAEoAhgQ1hUgAkG4AWogBSAKIAYgAikDWCACKAJgEOcGIAIpA7gBIAIpA8ABENYnDAELIABBHGogARD+IwwJCyADQdAAaiEDIARB0ABrIQQMAAsACwALIABBCGogARCYBQwFCyAAQQRqIAEQhi0MBAsgACgCBCIALQBAQQFHDQMgAkGoAWogACkDKCAAQThqKAIAEMAjIAIoArABIQAgAikDqAEhCiACQZgBaiABKQMQIAEoAhgQ1hUgAkG4AWogAUEwaiAKIAAgAikDmAEgAigCoAEQ5wYgAikDuAEgAikDwAEQ1icMAwsgAEEQaiABEP4jDAILIABBBGogARCGLSAAKAIEIgAoAgBBGkcNASACQYgBaiAAKQMIIABBGGooAgAQwCMgAigCkAEhACACKQOIASEKIAJB+ABqIAEpAxAgASgCGBDWFSACQbgBaiABQTBqIAogACACKQN4IAIoAoABEOcGIAIpA7gBIAIpA8ABENYnDAELAkACQCAAKAIIQQFrDgIBAgALIABBEGogARCMLQwBCyAAQRBqIAEQiy0LIAJBgAJqJAAL2wgBA38jAEEQayIBJABBoJfkACgCACIABEAgAUEIaiAAQQRqEIsbIAEoAgwhAgJ/QQEgASgCCCIALQAADQAaQQEgAC0AAQ0AGkEBIAAtAAINABpBASAALQADDQAaQQEgAC0ABA0AGkEBIAAtAAUNABpBASAALQAGDQAaQQEgAC0ABw0AGkEBIAAtAAgNABpBASAALQAJDQAaQQEgAC0ACg0AGkEBIAAtAAsNABpBASAALQAMDQAaQQEgAC0ADQ0AGkEBIAAtAA4NABpBASAALQAPDQAaQQEgAC0AEA0AGkEBIAAtABENABpBASAALQASDQAaQQEgAC0AEw0AGkEBIAAtABQNABpBASAALQAVDQAaQQEgAC0AFg0AGkEBIAAtABcNABpBASAALQAYDQAaQQEgAC0AGQ0AGkEBIAAtABoNABpBASAALQAbDQAaQQEgAC0AHA0AGkEBIAAtAB0NABpBASAALQAeDQAaQQEgAC0AHw0AGkEBIAAtACANABpBASAALQAhDQAaQQEgAC0AIg0AGkEBIAAtACMNABpBASAALQAkDQAaQQEgAC0AJQ0AGkEBIAAtACYNABpBASAALQAnDQAaQQEgAC0AKA0AGkEBIAAtACkNABpBASAALQAqDQAaQQEgAC0AKw0AGkEBIAAtACwNABpBASAALQAtDQAaQQEgAC0ALg0AGkEBIAAtAC8NABpBASAALQAwDQAaQQEgAC0AMQ0AGkEBIAAtADINABpBASAALQAzDQAaQQEgAC0ANA0AGkEBIAAtADUNABpBASAALQA2DQAaQQEgAC0ANw0AGkEBIAAtADgNABpBASAALQA5DQAaQQEgAC0AOg0AGkEBIAAtADsNABpBASAALQA8DQAaQQEgAC0APQ0AGkEBIAAtAD4NABpBASAALQA/DQAaQQEgAC0AQA0AGkEBIAAtAEENABpBASAALQBCDQAaQQEgAC0AQw0AGkEBIAAtAEQNABpBASAALQBFDQAaQQEgAC0ARg0AGkEBIAAtAEcNABpBASAALQBIDQAaQQEgAC0ASQ0AGkEBIAAtAEoNABpBASAALQBLDQAaQQEgAC0ATA0AGkEBIAAtAE0NABpBASAALQBODQAaQQEgAC0ATw0AGkEBIAAtAFANABpBASAALQBRDQAaQQEgAC0AUg0AGkEBIAAtAFMNABpBASAALQBUDQAaQQEgAC0AVQ0AGkEBIAAtAFYNABpBASAALQBXDQAaQQEgAC0AWA0AGkEBIAAtAFkNABpBASAALQBaDQAaQQEgAC0AWw0AGkEBIAAtAFwNABpBASAALQBdDQAaQQEgAC0AXg0AGkEBIAAtAF8NABpBASAALQBgDQAaQQEgAC0AYQ0AGkEBIAAtAGINABpBASAALQBjDQAaQQEgAC0AZA0AGkEBIAAtAGUNABogAC0AZgsgAiACKAIAQQFrNgIAIAFBEGokAEEBcQ8LQczJ4ABByAAQhCsAC50KAgR/AX4jAEFAaiICJAACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgMEBQYHAAsgASAAQQhqQQAQ0xUgACgCICABEJIaIAEoAjAQvhEhAyACQRhqQcig4wApAwAiBjcDACACQQhqIAY3AwAgAkE0aiABQTRqKAIANgIAIAJBAToAKCACIAE2AiAgAiADNgIkIAJBwKDjACkDACIGNwMQIAIgBjcDACACIAEpAiw3AiwgAiABLQA8OgA8IAIgAS8BOjsBOiABLQA4IQMgAiABLQA9OgA9IAIgAzoAOCACQQE6ADkgAEEgaiACEMsBDAcLIAAoAiBBDGogARCSGiABKAIwEL4RIQMgAkEYakHIoOMAKQMAIgY3AwAgAkEIaiAGNwMAIAJBNGogAUE0aigCADYCACACQQE6ACggAiABNgIgIAIgAzYCJCACQQE6ADkgAkHAoOMAKQMAIgY3AxAgAiAGNwMAIAIgASkCLDcCLCACIAEtADw6ADwgAiABLwE6OwE6IAEtADghAyACIAEtAD06AD0gAiADOgA4IABBIGogAhDcAwwGCyABIAAoAgQQrB0MBgsgASAAKAIEEJohDAULIABBBGogARDFCAwECyABLQA6IQMgAUEBOgA6IAEgACgCBCIAQQhqQQQQ0xUgAS0ANEEBRgRAIAEoAjAQvhEhBCACQRhqQcig4wApAwAiBjcDACACQQhqIAY3AwAgAkE0aiABQTRqKAIANgIAIAJBAToAKCACIAE2AiAgAiAENgIkIAJBAToAOSACQcCg4wApAwAiBjcDECACIAY3AwAgAiABKQIsNwIsIAIgAS8AOzsAOyABLQA4IQQgAiABLQA9OgA9IAIgBDoAOCACQQE6ADogAEEgaiACELwNIABBJGogAhDhKyACEIEpCyABIAM6ADoMAwsgASAAKAIEIgBBABDTFSABKAIwEL4RIQMgAkEYakHIoOMAKQMAIgY3AwAgAkEIaiAGNwMAIAJBNGogAUE0aigCADYCACACQQA6ACggAiABNgIgIAIgAzYCJCACQQE6ADkgAkHAoOMAKQMAIgY3AxAgAiAGNwMAIAIgASkCLDcCLCACIAEtADw6ADwgAiABLwE6OwE6IAEtADghAyACIAEtAD06AD0gAiADOgA4IAAoAiQhBCAAKAIoIQMgAkEAIAJBEGoQ+CECQCADBEAgBCEBIAMhAANAIAEoAgBFBEAgAUEIaikDACIGQgODUARAIAanQQhrIgUgBSgCACIFQQFqNgIAIAVBAEgNBAsgAiAGQQAQ1QgLIAFBMGohASAAQQFrIgANAAsLIANBMGwhACAEQShqIQEDQCAARQ0DIAEoAgAEQCABIAIQ3isLIABBMGshACABQTBqIQEMAAsACwALIAAoAgQiACgCAEUEQCABIABBCGpBABDTFQsgASgCMBC+ESEDIAJBNGogAUE0aigCADYCACACQQA6ACggAkEYakHIoOMAKQMAIgY3AwAgAkEIaiAGNwMAIAIgATYCICACIAM2AiQgAkEBOgA5IAIgASkCLDcCLCACIAEvATo7ATogAkHAoOMAKQMAIgY3AxAgAiAGNwMAIAEtADghAyACIAEtAD06AD0gAiADOgA4IAJBAToAPCAALQBFQQNGDQAgAEEgaiEAA0AgAC0AJUECRgRAIAIgABDJBQUgAiAAQQhqQQAQ0xUgACgCICEADAELCwsgAhCBKQsgAkFAayQAC7IKAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiACgCACIBQQxrIgIgAkEmTxtBAWsOJAABAgMEBQYHCAkKCwwN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CyADQRhqIAIgBSAEIAEoAjwgBhCjBCADLQAYQQRGDQAgAykDGCIHQv8Bg0IEUQ0AIAAgBzcCAAwICwJAIAItAE0NACADQRhqIAIQ0BEgAy0AGEEERg0AIAMpAxgiB0L/AYNCBFINBwsgASgCNCEEIANBKGogAiABKAIwIgVBABDVAQJAAkACQCADLQAoQQRHBEAgAykDKCIHQv8Bg0IEUg0BCyADQQA2AhggA0EoaiACIANBGGpBorXgAEEBELITIAMtAChBBEcEQCADKQMoIgdC/wGDQgRSDQELIANBKGogAiAFIAQgASgCKCABKAIsEFogAy0AKEEERwRAIAMpAygiB0L/AYNCBFINAQsgA0EoaiACIANBGGpBo7XgAEEBELITIAMtAChBBEYNASADKQMoIgdC/wGDQgRRDQELIAdC/wGDQgRSDQELIABBBDoAAAwICyAAIAc3AgAMBwsgACAHNwIADAYLIAAgBzcCAAwFCyAAIAc3AgAMBAsgACAHNwIADAMLIAAgBzcCAAwCCyAAIAc3AgAMAQsgACAHNwIACyADQTBqJAALtwgCCX8BfiMAQaABayIBJAAgAUIANwIoIAFCgICAgMAANwIgIAFCCDcCGCABQgA3AhAgAUKAgICAwAA3AggCQAJAAkADQCACQQFxBEAgAUGIAWogASgCDCABKAIQEOgHIAEoAogBIgNBhICAgHhGBEAgAUEIahC2ICEDIABBhICAgHg2AgAgACADNgIEDAULIAAgASkCjAE3AgQgAEEMaiABQZQBaigCADYCACAAIAM2AgAMAwsgAUGIAWoiBCACEOMcAkACfwJAIAEoAogBRQRAIAEoAowBIQMgAUEANgJAIAFCgICAgBA3AzggAUIANwMwIAQgAUEwahDZECABKAKIAQ0BQYKAgIB4DAILIAAgASkDkAE3AwggACADNgIEIABBgICAgHg2AgAMBQsgASgCkAFFDQFBg4CAgHgLIQQgACADNgIEIAAgBDYCAAwDCyABQQhqIAMQowUgAUHYAGogAUFAaygCADYCACABQdAAaiABQThqKQMANwMAIAEgASkDMDcDSCADQQN0IQkDQCABQeAAaiABQcgAahDZECABKAJgRQRAQQEhAgwCCwJAAkACQAJAAkACQCABKAJkIgRB/v///wdNBEAgASgCbCEGIAEoAmghAiABKAIMIAEoAhAiBSADEMofIgcoAgRBAmoiCEH+////B0sNAiAHIAg2AgQgAkUNBCABIAIgBhDHDiABIAEoAgQiBTYCdCABIAEoAgAiAjYCcCABKAIYIgYgASgCHCIHIAMQyx8gAkEIaiIIIAUQiwcNASAGIAcgAxDMHyACIAIoAgAiB0EBajYCACAHQQBIDQUgAiABKAJ0IgcgBBDgByABKAIkIgIgASgCKCIGIANBpJzDABC8HyABKAJwIAcQ4BggASABKAIsIAVBAXRqQRRqNgIsIAEoAhAhBQwGCyAAIAM2AgQgAEGBgICAeDYCACAAIAStNwMIDAkLIAFBiAFqIAggBRCRESABIAM2ApQBIAEoAogBIQIgASgCjAEhBCABKQOQASEKIAFB8ABqEPkeIAJBhICAgHhGDQUMAQsgBK0hCkGBgICAeCECIAMhBAsgACAKNwMIIAAgBDYCBCAAIAI2AgAMBgsgASgCJCICIAEoAigiBiADQbScwwAQvB9BACABEOAYIAEgASgCLEEIajYCLAwBCwALIAEgBEEBaiIENgJ4IAMgBU8EQCABQQA2AnwMAwsgASABKAIMIAlqIgUoAgQgBSgCAGtBAXZBAWoiBTYCfCAEIAVHDQIgASAENgKAASABIAIgBiADEM0fKAIIIgI2AoQBIAIgBEYNAAsLIAFBADYCiAFBACABQYABaiABQYQBaiABQYgBakHknMMAENYaAAsgAUEANgKIAUEAIAFB+ABqIAFB/ABqIAFBiAFqQcScwwAQ1hoACyABQQhqEOgZCyABQaABaiQAC+AHAg9/AX4jAEHwAGsiAyQAIAFBKGoiCBDDICEJIANB2ABqIgYgARDRBCADKAJgIQUCQCADKQNYIhJQRQRAIANBIGoiBCAFNgIAIAMgAygCZDYCJCADQRBqIAQpAwA3AwAgAyASNwMYIAMgEjcDCCADIANBCGoQlAwgAygCACADKAIEQY+w4ABBBBCOKgRAIAgQwyAhBSABKAKcAyEEIANB9QA6AFggASAFIAQgBCAFSxsgBSAEIAQgBUkbIAYQxhkLIANB2ABqIgQgA0EYahClHCADQThqIhAgA0HkAGopAgA3AwAgA0EuaiIRIANB7wBqLQAAOgAAIAMgAykCXDcDMCADIAMvAG07ASwgAUHMAmohCiADKAJYIQYgAy0AbCEFIARBBHIhCyADQdUAaiEMIANBQGtBBHIhDQNAAkAgCBDKDSIEBEAgBCgCAEEGRg0BCyAAIAMpAzA3AgQgACADLwEsOwAVIAAgBToAFCAAIAY2AgAgAEEMaiADQThqKQMANwIAIABBF2ogA0Euai0AADoAAAwDCyALIAopAgA3AgAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIAtBCGogCkEIaikCADcCACALQRBqIApBEGooAgA2AgAgAyAENgJYIANB2ABqEMYKIAgQwyAhBAJAIAgQyg0iBwRAIAcoAgBBBEYNAQsgCBDKDSIHBEAgBygCAEECRg0BCyADQfQAOgBYIAEgBCAEIANB2ABqEMYZIABBDGogA0E4aikDADcCACAAIAMpAzA3AgQgACADLwEsOwAVIABBF2ogA0Euai0AADoAACAAIAU6ABQgACAGNgIADAMLIA0gAykDMDcCACAMIAMvASw7AAAgDUEIaiAQKQMANwIAIAxBAmogES0AADoAACADIAY2AkAgAyAFOgBUAkACfyACRQRAIANB2ABqIAFBAEEAEPwBIAMoAlgiBSADLQBsQQJGDQEaIAMoAmQhDiADKAJgIQQgAygCXCEPDAILIANB2ABqIAEQ0QQgAygCYCEEIAMpA1giElBFBEAgEkIgiKchDyADKAJkIQ4gEqchBQwCCyAECyEFIABBAzoAFCAAIAU2AgAgA0FAaxDXGwwDCyABKAKcAyEHQTBBCBCrICIGIA42AgwgBiAENgIIIAYgCSAHIAcgCUkbNgIUIAYgCSAHIAcgCUsbNgIQIAYgBa0gD61CIIaENwMAIAYgAykDQDcDGCAGQSBqIANByABqKQMANwMAIAZBKGogA0HQAGopAwA3AwBBAiEFDAALAAsgAEEDOgAUIAAgBTYCAAsgA0HwAGokAAvZBwIPfwF+IwBB8ABrIgMkACABQShqIggQ3iAhCSADQdgAaiIGIAEQ0wQgAygCYCEFAkAgAykDWCISUEUEQCADQSBqIgQgBTYCACADIAMoAmQ2AiQgA0EQaiAEKQMANwMAIAMgEjcDGCADIBI3AwggAyADQQhqEJQMIAMoAgAgAygCBEGPsOAAQQQQjioEQCAIEN4gIQUgASgCfCEEIANB9QA6AFggASAFIAQgBCAFSxsgBSAEIAQgBUkbIAYQ2BkLIANB2ABqIgQgA0EYahClHCADQThqIhAgA0HkAGopAgA3AwAgA0EuaiIRIANB7wBqLQAAOgAAIAMgAykCXDcDMCADIAMvAG07ASwgAUEsaiEKIAMoAlghBiADLQBsIQUgBEEEciELIANB1QBqIQwgA0FAa0EEciENA0ACQCAIEOMNIgQEQCAEKAIAQQZGDQELIAAgAykDMDcCBCAAIAMvASw7ABUgACAFOgAUIAAgBjYCACAAQQxqIANBOGopAwA3AgAgAEEXaiADQS5qLQAAOgAADAMLIAsgCikCADcCACABKAIoIQQgAUElNgIoIAEgASkDQDcDeCALQQhqIApBCGopAgA3AgAgC0EQaiAKQRBqKAIANgIAIAMgBDYCWCADQdgAahDHCiAIEN4gIQQCQCAIEOMNIgcEQCAHKAIAQQRGDQELIAgQ4w0iBwRAIAcoAgBBAkYNAQsgA0H0ADoAWCABIAQgBCADQdgAahDYGSAAQQxqIANBOGopAwA3AgAgACADKQMwNwIEIAAgAy8BLDsAFSAAQRdqIANBLmotAAA6AAAgACAFOgAUIAAgBjYCAAwDCyANIAMpAzA3AgAgDCADLwEsOwAAIA1BCGogECkDADcCACAMQQJqIBEtAAA6AAAgAyAGNgJAIAMgBToAVAJAAn8gAkUEQCADQdgAaiABQQBBABD9ASADKAJYIgUgAy0AbEECRg0BGiADKAJkIQ4gAygCYCEEIAMoAlwhDwwCCyADQdgAaiABENMEIAMoAmAhBCADKQNYIhJQRQRAIBJCIIinIQ8gAygCZCEOIBKnIQUMAgsgBAshBSAAQQM6ABQgACAFNgIAIANBQGsQ1xsMAwsgASgCfCEHQTBBCBCrICIGIA42AgwgBiAENgIIIAYgCSAHIAcgCUkbNgIUIAYgCSAHIAcgCUsbNgIQIAYgBa0gD61CIIaENwMAIAYgAykDQDcDGCAGQSBqIANByABqKQMANwMAIAZBKGogA0HQAGopAwA3AwBBAiEFDAALAAsgAEEDOgAUIAAgBTYCAAsgA0HwAGokAAvfBgEYfyMAQRBrIg0kAAJAIAEtACUNACABLQAkRQRAIAFBAToAJCANQQhqIAEQ1gIgDSgCCCIHRSANKAIMIgNFckUEQCAHIQIMAgsgAS0AJUEBRg0BCyABKAIEIgsgASgCDCIOaiIQQQNqQXxxIBBrIQ8gAUEUaiETIAtBAWshFCALQQhrIRUgAS0AGCIKQQFrIREgASAKakETaiEWIAEoAhAhAiABKAIIIRIgCkEFSSEXA0ACQAJAAkACQAJ/IAIgDkkgAiASS3JFBEAgAiAOayIJIAkgD2tBB3FBACAJIA9PGyIDayEHIAMgCUsNAiAWLQAAIQgCQAJAAkAgA0UNAAJ/IANBAWsgCCACIAtqIgZBAWsiBC0AAEYNABogBCAHIBBqIgRGDQEgA0ECayAIIAZBAmsiBS0AAEYNABogBCAFRg0BIANBA2sgCCAGQQNrIgUtAABGDQAaIAQgBUYNASADQQRrIAggBkEEayIFLQAARg0AGiAEIAVGDQEgA0EFayAIIAZBBWsiBS0AAEYNABogBCAFRg0BIANBBmsgCCAGQQZrIgUtAABGDQAaIAQgBUYNASADQQdrIAggBkEHayIGLQAARg0AGiAEIAZGDQEgA0F4cgsgB2ohAgwBCyAPIAkgCSAPSxshGCAIQYGChAhsIQUgFCACIANrIgJqIQYgAiAVaiEEA0ACQCAGIQMgByICIBhNDQAgBCgCACEMIARBBGohGSADQQhrIQYgBEEIayEEIAJBCGshB0GAgoQIIAUgDHMiDGsgDHJBgIKECCAZKAIAIAVzIgxrIAxycUGAgYKEeHFBgIGChHhGDQELCyACIAlLDQUDQCACRQ0CIAJBAWshAiADLQAAIANBAWshAyAIRw0ACwsgAiAOaiICIBFJDQYgAiARayIDIApqIgQgA0kgBCASS3INBiAXRQ0FIAMgC2ogCiATIAoQ6x9FDQYgASADNgIQIAEoAiAgASADNgIgIARrDAILIAEgDjYCEAsgAUEBOgAlIAEoAiAgASgCHCIEawshAyAEIAtqIQIMBQsgByAJQfz1wAAQrRAACyACIAlBjPbAABCuEAALIApBBEGU2t8AEK4QAAsgASACNgIQDAALAAsgACADNgIEIAAgAjYCACANQRBqJAAL3wcCAX8BfiMAQSBrIgMkACADQRBqIAEgAigCAEEAENUBAkACQAJAAkAgAy0AEEEERwRAIAMpAxAiBEL/AYNCBFINAQsgAi0AKkUNAiADQQA2AhAgA0EIaiABIANBEGpBgbDgAEEFELITIAMtAAhBBEcEQCADKQMIIgRC/wGDQgRSDQILIANBEGogARDQESADLQAQQQRGDQIgAykDECIEQv8Bg0IEUQ0CIAAgBDcCAAwDCyAAIAQ3AgAMAgsgACAENwIADAELAkAgAi0AKEUNACADQQA2AhAgA0EIaiABIANBEGpBjMXgAEECELITAkAgAy0ACEEERwRAIAMpAwgiBEL/AYNCBFINAQsgA0EQaiABENARIAMtABBBBEYNASADKQMQIgRC/wGDQgRRDQEgACAENwIADAILIAAgBDcCAAwBCwJAIAItAClFDQAgA0EANgIQIANBCGogASADQRBqQfq14ABBAxCyEwJAIAMtAAhBBEcEQCADKQMIIgRC/wGDQgRSDQELIANBEGogARDQESADLQAQQQRGDQEgAykDECIEQv8Bg0IEUQ0BIAAgBDcCAAwCCyAAIAQ3AgAMAQsgA0EQaiACQQhqIAEQ5BICQAJAAkAgAy0AEEEERwRAIAMpAxAiBEL/AYNCBFINAQsgAigCIA0BDAILIAAgBDcCAAwCCyADQRBqIAEQ0BECQAJAAkAgAy0AEEEERwRAIAMpAxAiBEL/AYNCBFINAQsgA0EANgIQIANBCGogASADQRBqQdy14ABBBxCyEyADLQAIQQRHBEAgAykDCCIEQv8Bg0IEUg0CCyADQRBqIAEQ0BEgAy0AEEEERwRAIAMpAxAiBEL/AYNCBFINAwsgA0EQaiACQSBqIAEQNyADLQAQQQRGDQMgAykDECIEQv8Bg0IEUQ0DIAAgBDcCAAwECyAAIAQ3AgAMAwsgACAENwIADAILIAAgBDcCAAwBCwJAAkACQAJAAkAgAigCJEUNAAJAIAEtAE0NACADQRBqIAEQ0BEgAy0AEEEERg0AIAMpAxAiBEL/AYNCBFINBAsgA0EANgIQIANBCGogASADQRBqQZmw4ABBARCyEyADLQAIQQRHBEAgAykDCCIEQv8Bg0IEUg0FCwJAIAEtAE0NACADQRBqIAEQ0BEgAy0AEEEERg0AIAMpAxAiBEL/AYNCBFINAgsgA0EQaiACQSRqIAEQNyADLQAQQQRGDQAgAykDECIEQv8Bg0IEUg0CCyAAQQQ6AAAMBAsgACAENwIADAMLIAAgBDcCAAwCCyAAIAQ3AgAMAQsgACAENwIACyADQSBqJAALvwgCCH8BfiMAQdAAayIDJAAgAUEoaiIFEMMgIQYCQAJAAkACQAJAAkACQAJAAkACQAJAIAJFBEACQCAFEMoNIgRFDQAgBCgCAEECRw0AIAQtAAgNACAELQAJDQAgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIANBNGogAUHUAmopAgA3AgAgA0E8aiABQdwCaigCADYCACADIAEpAswCNwIsIAMgBDYCKCADQShqEMYKQQEhBwsCQAJAIAUQyg0iBEUNACAEKAIAQQJHDQAgBC0ACEECRw0AIAQtAAlBFkYNAQsgA0EwaiAFEJEQIANBIGogBRCFFCADQdDu3wA2AiwgA0E0OgAoIAMoAiAgAygCJCADQShqEIEVIQQgBRDKDSICRQ0LIAIoAgBBJEYNAgwLCyABKALIAiEEIAFBJTYCyAIgASABKQPgAjcDmAMgA0E0aiABQdQCaikCADcCACADQTxqIAFB3AJqKAIANgIAIAMgASkCzAI3AiwgAyAENgIoIANBKGoQxgoLIANBGGogAUEAQQEQzA4gAygCHCEIIAMoAhgNASAFEMoNIgQEQCAEKAIAQQlGDQMLIANBMGogBRCRECADQQhqIAUQhRQgA0Hw5d8ANgIsIANBNDoAKCADKAIIIAMoAgwgA0EoahCBFSEEIAUQyg0iAkUNByACKAIAQSRGDQMMBwsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0DIAEgASgCzAIQ/wsMCAsgAEGBgICAeDYCACAAIAg2AgQMCAsgASgCyAIhBCABQSU2AsgCIAEgASkD4AI3A5gDIANBNGogAUHUAmopAgA3AgAgA0E8aiABQdwCaigCADYCACADIAEpAswCNwIsIAMgBDYCKCADQShqIgQQxgogBCABEK8CIAMoAiwhBCADKAIoIglBgICAgHhHBEAgAyADKAIwIgo2AkggAyAENgJEIAMgCTYCQCADQRBqIAFB4PLfABDxASADKAIUIQUgAygCEA0DIAYgASgCnAMiASABIAZLGyEEIAYgASABIAZJGyEBAn4gAkUEQCAEIQIgASEEIAghASADKQJEDAELQYCAgIB4IQkgBSECIAghByAKIQUgAykDQAshCyAAIAc2AhwgACABNgIYIAAgBDYCFCAAIAI2AhAgACAFNgIMIAAgCzcCBCAAIAk2AgAMCAsgAEGBgICAeDYCACAAIAQ2AgQMBQsgASABKQPgAjcDmAMgASgCyAIgAUElNgLIAkEkRw0CIAEgASgCzAIQ/wsMAwtB5ezgAEEoQdDy3wAQ9BcACyAAQYGAgIB4NgIAIAAgBTYCBCADQUBrEPAmDAILQeXs4ABBKEH48t8AEPQXAAsgAEGBgICAeDYCACAAIAQ2AgQLIAgQ3SgMAQsgAEGBgICAeDYCACAAIAQ2AgQLIANB0ABqJAALvwcBCH8jAEGAAWsiAiQAAkAgAUGAsANzQYCAxABrQf+PvH9NBEAgAkEANgJEIAJBADYCJCACIAFB//8DcSIDNgJIIAIgAzYCTAJAIAFBgPgDcUGAuANHBEAgAkEkaiIDQdwAEJAOIANB9QAQkA4gAkEBNgJkIAJBhPjgADYCYCACQgE3AmwgAkHhATYCfCACIAJB+ABqIgQ2AmggAiACQcgAajYCeCACQdQAaiIFIAJB4ABqIgYQgBUgAyACKAJYIgEgASACKAJcahCpBSACKAJUIAEQ2ikgA0HcABCQDiADQfUAEJAOIAJBATYCZCACQYT44AA2AmAgAkIBNwJsIAJB4QE2AnwgAiAENgJoIAIgAkHMAGo2AnggBSAGEIAVIAMgAigCWCIBIAEgAigCXGoQqQUMAQsgAiADIANBCnRqQYC4/xprNgJQIAJBJGoiAUHcABCQDiABQfUAEJAOIAJBATYCZCACQYT44AA2AmAgAkIBNwJsIAJB4QE2AnwgAiACQfgAajYCaCACIAJB0ABqNgJ4IAJB1ABqIAJB4ABqEIAVIAEgAigCWCIBIAEgAigCXGoQqQULIAIoAlQgARDaKSACIAJBJGpBJBD7BhoMAQsgAkEANgIkIAJBADYCRCACQSRqIgMgARCQDiACIANBJBD7BhoLIABBABD7HiACQQRqIQUgAkEgaiEGIAJBJGoiAUEDciEHIAFBAnIhCCABQQFyIQkDQAJAAkAgAigCICIBQQhPBEAgAigCBARAIAIoAgQhASACKAIIIQMgBSEEDAMLIAFBCEkNASABIAIoAghBBEEEENQiDAELIAUhAyAGIQQgAQ0BCyACQYABaiQADwsgAQRAIAQgAUEBazYCACADKAIAIQQgAyADQQRqIAFBAnRBBGsQ2i0aIARBgAFPBEAgAkEANgIkAn8gBEGAEE8EQCAEQYCABE8EQCACIARBEnZB8AFyOgAkIAIgBEEGdkE/cUGAAXI6ACYgAiAEQQx2QT9xQYABcjoAJSAHIQNBBAwCCyACIARBDHZB4AFyOgAkIAIgBEEGdkE/cUGAAXI6ACUgCCEDQQMMAQsgAiAEQQZ2QcABcjoAJCAJIQNBAgshASADIARBP3FBgAFyOgAAIAAgARD7HiAAKAIIIgMgACgCBGogAkEkaiABEPsGGiAAIAEgA2o2AggMAgsgACgCCCIBIAAoAgBGBEAgABD3FwsgACABQQFqNgIIIAAoAgQgAWogBDoAAAwBCwtBsPHYAEEdQdDx2AAQ9BcAC58IAgh/AX4jAEHQAGsiAyQAIAFBKGoiBRDeICEGAkACQAJAAkACQAJAAkACQAJAAkACQCACRQRAAkAgBRDjDSIERQ0AIAQoAgBBAkcNACAELQAIDQAgBC0ACQ0AIAEoAighBCABQSU2AiggASABKQNANwN4IANBNGogAUE0aikCADcCACADQTxqIAFBPGooAgA2AgAgAyABKQIsNwIsIAMgBDYCKCADQShqEMcKQQEhBwsCQAJAIAUQ4w0iBEUNACAEKAIAQQJHDQAgBC0ACEECRw0AIAQtAAlBFkYNAQsgA0EwaiAFEJYLIANBIGogBRC4FCADQdDu3wA2AiwgA0E0OgAoIAMoAiAgAygCJCADQShqEIEVIQQgBRDjDSICRQ0LIAIoAgBBJEYNAgwLCyABKAIoIQQgAUElNgIoIAEgASkDQDcDeCADQTRqIAFBNGopAgA3AgAgA0E8aiABQTxqKAIANgIAIAMgASkCLDcCLCADIAQ2AiggA0EoahDHCgsgA0EYaiABQQBBARDQDiADKAIcIQggAygCGA0BIAUQ4w0iBARAIAQoAgBBCUYNAwsgA0EwaiAFEJYLIANBCGogBRC4FCADQfDl3wA2AiwgA0E0OgAoIAMoAgggAygCDCADQShqEIEVIQQgBRDjDSICRQ0HIAIoAgBBJEYNAwwHCyABIAEpA0A3A3ggASgCKCABQSU2AihBJEcNAyABIAEoAiwQhgwMCAsgAEGBgICAeDYCACAAIAg2AgQMCAsgASgCKCEEIAFBJTYCKCABIAEpA0A3A3ggA0E0aiABQTRqKQIANwIAIANBPGogAUE8aigCADYCACADIAEpAiw3AiwgAyAENgIoIANBKGoiBBDHCiAEIAEQsAIgAygCLCEEIAMoAigiCUGAgICAeEcEQCADIAMoAjAiCjYCSCADIAQ2AkQgAyAJNgJAIANBEGogAUHg8t8AEPMBIAMoAhQhBSADKAIQDQMgBiABKAJ8IgEgASAGSxshBCAGIAEgASAGSRshAQJ+IAJFBEAgBCECIAEhBCAIIQEgAykCRAwBC0GAgICAeCEJIAUhAiAIIQcgCiEFIAMpA0ALIQsgACAHNgIcIAAgATYCGCAAIAQ2AhQgACACNgIQIAAgBTYCDCAAIAs3AgQgACAJNgIADAgLIABBgYCAgHg2AgAgACAENgIEDAULIAEgASkDQDcDeCABKAIoIAFBJTYCKEEkRw0CIAEgASgCLBCGDAwDC0Hl7OAAQShB0PLfABD0FwALIABBgYCAgHg2AgAgACAFNgIEIANBQGsQ8CYMAgtB5ezgAEEoQfjy3wAQ9BcACyAAQYGAgIB4NgIAIAAgBDYCBAsgCBDdKAwBCyAAQYGAgIB4NgIAIAAgBDYCBAsgA0HQAGokAAuBCAIUfwJ+IwBB8ABrIgQkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAygCAEEBa0ECTwRAIAJB2AFqIQ4gAkEYaiERIAFBoA1qIRIgASgCrBIhEyABKAKoEiEUIAEpAwAhGCABLQCcDSEPIAEpA6ANIRkgAy0AGCEQIAMoAgwhCyADKAIIIQwgAygCFCEIIAEtALwSQQFxIRUgAygCECINIQcDQCAEQcQAaiIJIBQgEyAMIAsgByAIELEZIAQoAkRFDQIgBCgCSCIKIAZJDQMgBCgCTCAEIBA6AFwgBCAINgJYIAQgDTYCVCAEIAs2AlAgBCAMNgJMIARBATYCRCAEQQxqIhcgCSANIAoQ/wkgFQ0EIBlCAlENBiACKALIAUECRg0FIARBKGogEiARIBcgBRCrAiAEKAIsIQUgBCgCKCIJQQJGBEAgBUEBcUUNBAwPCwJAIAlBAUcEQCAHIAhPDQQgCkF/Rw0BQfiJwwAQ4CkACyAEKAIwIQcgBCAQOgBcIAQgCDYCWCAEIA02AlQgBCALNgJQIAQgDDYCTCAEIAU2AkggBEECNgJEIARBKGoiBiAEQcQAaiIJIAcgCBD/CSAPQQFxDQgCQCAYQgJSBEAgAigCyARBAkYNCyAEQeAAaiABIA4gBhDtAiAEKAJgIgZBAkYNESAGDQEgCSAFIAcgBCgCaBDzEiAEKQJIIRggAEEBNgIAIAAgGEIgiTcCBAwSCyAEQQE2AkggBEHgisMANgJEIARCADcCUCAEIARB7ABqNgJMIARBxABqQeiKwwAQwx0ACyAKQX9GDQogBCgCZCEGCyAKQQFqIQchBQwACwALIAEtAJwNQQFGDQggASkDAEICUQ0MIAIoAsgEQQJGDQkgBEHEAGoiBSABIAJB2AFqIAMQ9wkgBEEoaiAFEIAYIAQoAihBAkYNDCAAIAQpAig3AgAgAEEIaiAEQTBqKAIANgIADA0LIABBADYCAAwMCyAPQQFxDQggGEICUQ0KIAIoAsgEQQJGDQkgBEHEAGoiBSABIA4gAxD3CSAEQShqIAUQgBggBCgCKEECRg0KIAAgBCkCKDcCACAAQQhqIARBMGooAgA2AgAMCwtB5ezgAEEoQeiNwwAQ9BcAC0HYjcMAEOApAAsgBEEBNgJIIARB4IrDADYCRCAEQgA3AlAgBCAEQewAajYCTCAEQcQAakH4isMAEMMdAAtB5ezgAEEoQZiNwwAQ9BcAC0G4jMMAEOApAAtBiIrDABDgKQALQeXs4ABBKEGIjcMAEPQXAAtBqIzDABDgKQALQeXs4ABBKEGIjcMAEPQXAAtBqIzDABDgKQALIAAgASACIAMQohULIARB8ABqJAAL0wgBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgFBDGsiAiACQSZPG0EBaw4kAAECAwQFBgcICQoLDA0ODxAREhMiFBUWFyIYGRobHB0eHyAhIgsgAEEEahDFFyAAKAIEIABBCGooAgAQ7SkMIQsgAEEEahDkJgwgCyAAQQhqEJElDB8LIABBBGoQ3AIMHgsgAEEMahDcAgwdCyAAQQRqENwCIABBCGoQ3AIMHAsCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAQ4MAAECAwQFBgcICQsKCwsgAEEIahCQJwwKCyAAQQhqEK8cDAkLIABBCGoQjyEMCAsgAEEEahDcAgwHCyAAQQRqEO8YDAYLIABBBGoQ7igMBQsgAEEEahDuKAwECyAAQQRqENwCDAMLIABBBGoQ7igMAgsgAEEEahCeKgwBCwJAAkAgACgCBA4CAAECCyAAQQhqEOUhDAELIABBCGoQ5iELIABBOGoQ3AIMGwsgAEEIahCvHAwaCyAAQQhqEI8hDBkLIABBBGoQ3AIgAEEIahDcAiAAQQxqENwCDBgLIAAtABhBBUYEQCAAQRBqENwCCyAAQQRqEOYmIAAoAigQ2SgMFwsgAEEQahDcAiAAKAIEQYCAgIB4RwRAIABBBGoQ5iYLIAAoAiAQ2SgMFgsgAEEEahDoJgwVCyAAKQMIEPkaDBQLAkACQAJAAkACQCAAKAIIDgYBGBgCAwQACyAAKQMQEPkaIAApAxgQ+RoMFwsgACkDECAAQSBqKQMAEIwrDBYLIAApAyAQ7SYMFQsgAEEYaikDACAAQSBqKAIAEMAgDBQLIAApAxAQ+RogACkDGBD5GgwTCyAAQQRqENMoDBILIABBBGoQ3AIgACgCGBDZKCAAKAIIIgEQ0yggAUEgQQQQ1REMEQsgAEEEahCdHCAAKAIEIABBCGooAgAQkCoCQCAAKAIQIgEoAgBBgICAgHhHBEAgARDpJgwBCyABQQRqENwCCyAAKAIQQRhBBBDVESAAKAIgEMIeIABBJGoQkScMEAsgAEEIahDMIwwPCyAAQQxqEJInDA4LIABBBGoQ3AIMDQsgAEEEahDcAgwMCyAAQQhqEJ4cDAsLIAApAwggAEEYaikDABCLKwwKCyAAKAIEIgFBQGsQxhcgAUH8AGoQ5wsgASgCfCABQYABaigCABCTKiABKAJ4ENkoIAFBkAFqEOwmIAEtADxBBkcEQCABQRBqEMYXCyABQaABQQgQ1REMCQsgAEEEahDsJgwICyAAQQRqEO4oDAcLIABBBGoQ3AIMBgsgAEEEahDcAgwFCyAAQQRqEO4oDAQLIABBBGoQnioMAwsgAEEEahDuKAwCCyAAKQMIEPkaDAELIABBBGoQ7xgLIABBwABBCBDVEQvTCAECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgAoAgAiAUEMayICIAJBJk8bQQFrDiQAAQIDBAUGBwgJCgsMDQ4PEBESEyIUFRYXIhgZGhscHR4fICEiCyAAQQRqEMUXIAAoAgQgAEEIaigCABDtKQwhCyAAQQRqEOQmDCALIABBCGoQyyUMHwsgAEEEahDdAgweCyAAQQxqEN0CDB0LIABBBGoQ3QIgAEEIahDdAgwcCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCABDgwAAQIDBAUGBwgJCwoLCyAAQQhqEMcnDAoLIABBCGoQuhwMCQsgAEEIahCiIQwICyAAQQRqEN0CDAcLIABBBGoQ/xgMBgsgAEEEahCHKQwFCyAAQQRqEIcpDAQLIABBBGoQ3QIMAwsgAEEEahCHKQwCCyAAQQRqEKgqDAELAkACQCAAKAIEDgIAAQILIABBCGoQgiIMAQsgAEEIahCDIgsgAEE4ahDdAgwbCyAAQQhqELocDBoLIABBCGoQoiEMGQsgAEEEahDdAiAAQQhqEN0CIABBDGoQ3QIMGAsgAC0AGEEFRgRAIABBEGoQ3QILIABBBGoQ5iYgACgCKBDZKAwXCyAAQRBqEN0CIAAoAgRBgICAgHhHBEAgAEEEahDmJgsgACgCIBDZKAwWCyAAQQRqEOgmDBULIAApAwgQ+RoMFAsCQAJAAkACQAJAIAAoAggOBgEYGAIDBAALIAApAxAQ+RogACkDGBD5GgwXCyAAKQMQIABBIGopAwAQjCsMFgsgACkDIBDtJgwVCyAAQRhqKQMAIABBIGooAgAQwCAMFAsgACkDEBD5GiAAKQMYEPkaDBMLIABBBGoQ0ygMEgsgAEEEahDdAiAAKAIYENkoIAAoAggiARDTKCABQSBBBBDVEQwRCyAAQQRqEJ0cIAAoAgQgAEEIaigCABCQKgJAIAAoAhAiASgCAEGAgICAeEcEQCABEOkmDAELIAFBBGoQ3QILIAAoAhBBGEEEENURIAAoAiAQwh4gAEEkahDIJwwQCyAAQQhqEOYjDA8LIABBDGoQxicMDgsgAEEEahDdAgwNCyAAQQRqEN0CDAwLIABBCGoQnhwMCwsgACkDCCAAQRhqKQMAEIsrDAoLIAAoAgQiAUFAaxDGFyABQfwAahDnCyABKAJ8IAFBgAFqKAIAEJMqIAEoAngQ2SggAUGQAWoQ7CYgAS0APEEGRwRAIAFBEGoQxhcLIAFBoAFBCBDVEQwJCyAAQQRqEOwmDAgLIABBBGoQhykMBwsgAEEEahDdAgwGCyAAQQRqEN0CDAULIABBBGoQhykMBAsgAEEEahCoKgwDCyAAQQRqEIcpDAILIAApAwgQ+RoMAQsgAEEEahD/GAsgAEHAAEEIENURC9MIAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiACgCACIBQQxrIgIgAkEmTxtBAWsOJAABAgMEBQYHCAkKCwwNDg8QERITIhQVFhciGBkaGxwdHh8gISILIABBBGoQxRcgACgCBCAAQQhqKAIAEO0pDCELIABBBGoQ5CYMIAsgAEEIahDpJQwfCyAAQQRqEN4CDB4LIABBDGoQ3gIMHQsgAEEEahDeAiAAQQhqEN4CDBwLAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEODAABAgMEBQYHCAkLCgsLIABBCGoQ2icMCgsgAEEIahDEHAwJCyAAQQhqEKshDAgLIABBBGoQ3gIMBwsgAEEEahCLGQwGCyAAQQRqEJcpDAULIABBBGoQlykMBAsgAEEEahDeAgwDCyAAQQRqEJcpDAILIABBBGoQrSoMAQsCQAJAIAAoAgQOAgABAgsgAEEIahCdIgwBCyAAQQhqEJ4iCyAAQThqEN4CDBsLIABBCGoQxBwMGgsgAEEIahCrIQwZCyAAQQRqEN4CIABBCGoQ3gIgAEEMahDeAgwYCyAALQAYQQVGBEAgAEEQahDeAgsgAEEEahDmJiAAKAIoENkoDBcLIABBEGoQ3gIgACgCBEGAgICAeEcEQCAAQQRqEOYmCyAAKAIgENkoDBYLIABBBGoQ6CYMFQsgACkDCBD5GgwUCwJAAkACQAJAAkAgACgCCA4GARgYAgMEAAsgACkDEBD5GiAAKQMYEPkaDBcLIAApAxAgAEEgaikDABCMKwwWCyAAKQMgEO0mDBULIABBGGopAwAgAEEgaigCABDAIAwUCyAAKQMQEPkaIAApAxgQ+RoMEwsgAEEEahDTKAwSCyAAQQRqEN4CIAAoAhgQ2SggACgCCCIBENMoIAFBIEEEENURDBELIABBBGoQnRwgACgCBCAAQQhqKAIAEJAqAkAgACgCECIBKAIAQYCAgIB4RwRAIAEQ6SYMAQsgAUEEahDeAgsgACgCEEEYQQQQ1REgACgCIBDCHiAAQSRqENsnDBALIABBCGoQ+SMMDwsgAEEMahDYJwwOCyAAQQRqEN4CDA0LIABBBGoQ3gIMDAsgAEEIahCeHAwLCyAAKQMIIABBGGopAwAQiysMCgsgACgCBCIBQUBrEMYXIAFB/ABqEOcLIAEoAnwgAUGAAWooAgAQkyogASgCeBDZKCABQZABahDsJiABLQA8QQZHBEAgAUEQahDGFwsgAUGgAUEIENURDAkLIABBBGoQ7CYMCAsgAEEEahCXKQwHCyAAQQRqEN4CDAYLIABBBGoQ3gIMBQsgAEEEahCXKQwECyAAQQRqEK0qDAMLIABBBGoQlykMAgsgACkDCBD5GgwBCyAAQQRqEIsZCyAAQcAAQQgQ1REL0wgBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgFBDGsiAiACQSZPG0EBaw4kAAECAwQFBgcICQoLDA0ODxAREhMiFBUWFyIYGRobHB0eHyAhIgsgAEEEahDFFyAAKAIEIABBCGooAgAQ7SkMIQsgAEEEahDkJgwgCyAAQQhqEP8lDB8LIABBBGoQ3wIMHgsgAEEMahDfAgwdCyAAQQRqEN8CIABBCGoQ3wIMHAsCQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAQ4MAAECAwQFBgcICQsKCwsgAEEIahD0JwwKCyAAQQhqEMwcDAkLIABBCGoQsCEMCAsgAEEEahDfAgwHCyAAQQRqEJAZDAYLIABBBGoQoykMBQsgAEEEahCjKQwECyAAQQRqEN8CDAMLIABBBGoQoykMAgsgAEEEahCyKgwBCwJAAkAgACgCBA4CAAECCyAAQQhqEK0iDAELIABBCGoQriILIABBOGoQ3wIMGwsgAEEIahDMHAwaCyAAQQhqELAhDBkLIABBBGoQ3wIgAEEIahDfAiAAQQxqEN8CDBgLIAAtABhBBUYEQCAAQRBqEN8CCyAAQQRqEOYmIAAoAigQ2SgMFwsgAEEQahDfAiAAKAIEQYCAgIB4RwRAIABBBGoQ5iYLIAAoAiAQ2SgMFgsgAEEEahDoJgwVCyAAKQMIEPkaDBQLAkACQAJAAkACQCAAKAIIDgYBGBgCAwQACyAAKQMQEPkaIAApAxgQ+RoMFwsgACkDECAAQSBqKQMAEIwrDBYLIAApAyAQ7SYMFQsgAEEYaikDACAAQSBqKAIAEMAgDBQLIAApAxAQ+RogACkDGBD5GgwTCyAAQQRqENMoDBILIABBBGoQ3wIgACgCGBDZKCAAKAIIIgEQ0yggAUEgQQQQ1REMEQsgAEEEahCdHCAAKAIEIABBCGooAgAQkCoCQCAAKAIQIgEoAgBBgICAgHhHBEAgARDpJgwBCyABQQRqEN8CCyAAKAIQQRhBBBDVESAAKAIgEMIeIABBJGoQ8icMEAsgAEEIahCAJAwPCyAAQQxqEPEnDA4LIABBBGoQ3wIMDQsgAEEEahDfAgwMCyAAQQhqEJ4cDAsLIAApAwggAEEYaikDABCLKwwKCyAAKAIEIgFBQGsQxhcgAUH8AGoQ5wsgASgCfCABQYABaigCABCTKiABKAJ4ENkoIAFBkAFqEOwmIAEtADxBBkcEQCABQRBqEMYXCyABQaABQQgQ1REMCQsgAEEEahDsJgwICyAAQQRqEKMpDAcLIABBBGoQ3wIMBgsgAEEEahDfAgwFCyAAQQRqEKMpDAQLIABBBGoQsioMAwsgAEEEahCjKQwCCyAAKQMIEPkaDAELIABBBGoQkBkLIABBwABBCBDVEQvTCAECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgAoAgAiAUEMayICIAJBJk8bQQFrDiQAAQIDBAUGBwgJCgsMDQ4PEBESEyIUFRYXIhgZGhscHR4fICEiCyAAQQRqEMUXIAAoAgQgAEEIaigCABDtKQwhCyAAQQRqEOQmDCALIABBCGoQxyYMHwsgAEEEahDgAgweCyAAQQxqEOACDB0LIABBBGoQ4AIgAEEIahDgAgwcCwJAAkACQAJAAkACQAJAAkACQAJAAkACQCABDgwAAQIDBAUGBwgJCwoLCyAAQQhqEKcoDAoLIABBCGoQ4RwMCQsgAEEIahDDIQwICyAAQQRqEOACDAcLIABBBGoQoBkMBgsgAEEEahDYKQwFCyAAQQRqENgpDAQLIABBBGoQ4AIMAwsgAEEEahDYKQwCCyAAQQRqEMoqDAELAkACQCAAKAIEDgIAAQILIABBCGoQ0CIMAQsgAEEIahDRIgsgAEE4ahDgAgwbCyAAQQhqEOEcDBoLIABBCGoQwyEMGQsgAEEEahDgAiAAQQhqEOACIABBDGoQ4AIMGAsgAC0AGEEFRgRAIABBEGoQ4AILIABBBGoQ5iYgACgCKBDZKAwXCyAAQRBqEOACIAAoAgRBgICAgHhHBEAgAEEEahDmJgsgACgCIBDZKAwWCyAAQQRqEOgmDBULIAApAwgQ+RoMFAsCQAJAAkACQAJAIAAoAggOBgEYGAIDBAALIAApAxAQ+RogACkDGBD5GgwXCyAAKQMQIABBIGopAwAQjCsMFgsgACkDIBDtJgwVCyAAQRhqKQMAIABBIGooAgAQwCAMFAsgACkDEBD5GiAAKQMYEPkaDBMLIABBBGoQ0ygMEgsgAEEEahDgAiAAKAIYENkoIAAoAggiARDTKCABQSBBBBDVEQwRCyAAQQRqEJ0cIAAoAgQgAEEIaigCABCQKgJAIAAoAhAiASgCAEGAgICAeEcEQCABEOkmDAELIAFBBGoQ4AILIAAoAhBBGEEEENURIAAoAiAQwh4gAEEkahClKAwQCyAAQQhqEKckDA8LIABBDGoQpCgMDgsgAEEEahDgAgwNCyAAQQRqEOACDAwLIABBCGoQnhwMCwsgACkDCCAAQRhqKQMAEIsrDAoLIAAoAgQiAUFAaxDGFyABQfwAahDnCyABKAJ8IAFBgAFqKAIAEJMqIAEoAngQ2SggAUGQAWoQ7CYgAS0APEEGRwRAIAFBEGoQxhcLIAFBoAFBCBDVEQwJCyAAQQRqEOwmDAgLIABBBGoQ2CkMBwsgAEEEahDgAgwGCyAAQQRqEOACDAULIABBBGoQ2CkMBAsgAEEEahDKKgwDCyAAQQRqENgpDAILIAApAwgQ+RoMAQsgAEEEahCgGQsgAEHAAEEIENURC70HAQl/IwBBEGsiBSQAAkAgACgCCCIERQ0AIABBADYCCCAFIAQ2AgwgBSAANgIAIAAoAgQhAwJAA0AgAyECIAEgBEYEQCAEIQEMAgsgAkE4aiEDIAFBAWohASACEJ0bDQALIAIQiwhBASEHCyABQThsIQIDQAJAIAEgBEcEQCAAKAIEIgYgAmoiAxCdG0UEQCADEIsIIAdBAWohBwwCCyAGIAIgB0FIbGpqIANBOBD7BhoMAQsgBSAENgIEIAUgBzYCCCAFEK4SIAAoAgghAQwCCyACQThqIQIgAUEBaiEBDAALAAsgACgCBCIHIAFBOGxqIQkDQAJAAkACQAJAAkACQAJAAkACQCAJIAciAUcEQCABQThqIQcgASgCACIAQQlGDQECQCAAQQFrDggJCAcGBQsEAwALIAEoAgwiBEUNCUEAIQAgAUEANgIMIAUgBDYCDCAFIAFBBGo2AgAgASgCCEHIAGshA0EAIQICQANAIAIgBEYEQCAEIQIMAgsgAkEBaiECIAMiBkHIAGoiAykDAEICVg0AIAZBiAFqLQAAQQFxRQ0ACyADEOgXQQEhAAsgAkHIAGwhAwNAAkAgAiAERwRAAkAgASgCCCIIIANqIgYpAwBCAlYNACAGQUBrLQAAQQFxRQ0AIAYQ6BcgAEEBaiEADAILIAggAyAAQbh/bGpqIAZByAAQ+wYaDAELIAUgBDYCBCAFIAA2AgggBRCtEgwLCyADQcgAaiEDIAJBAWohAgwACwALIAVBEGokAA8LIAFBCGoQ0gQMCAsgAUEAOgAkDAcLIAFBBGoQ/S0MBgsgAUEQahCIJgwFCyABQQRqEP0tDAQLIAFBEGohACABKAIIRQRAIAAQqiEMBAsgABCpIQwDCwJAIAEoAgwiBEUNAEEAIQAgAUEANgIMIAUgBDYCDCAFIAFBBGo2AgAgASgCCEHQAGshA0EAIQICQANAIAIgBEYEQCAEIQIMAgsgAkEBaiECIAMiBkHQAGoiAykDAEIBVg0AIAZBmAFqLQAAQQFxRQ0ACyADEOcXQQEhAAsgAkHQAGwhAwNAAkAgAiAERwRAAkAgASgCCCIIIANqIgYpAwBCAVYNACAGQcgAai0AAEEBcUUNACAGEOcXIABBAWohAAwCCyAIIAMgAEGwf2xqaiAGQdAAEPsGGgwBCyAFIAQ2AgQgBSAANgIIIAUQrxIMAgsgA0HQAGohAyACQQFqIQIMAAsACyABQRxqEIgmDAILIAFBCGoQvQoMAQsgAUEcahCIJgwACwAL+wcCA38BfiMAQaACayIFJAAgASgCUCEGIAVB4ABqIgcQ1BEgBSAGNgJYIAUgBDoAXCAFIAUtAJ0BOgBdIAUgBS8BngE7AV4gBUEgaiAHQSwQ+wYaIAVB1ABqIAVBlAFqKAIANgIAIAUgBSkCjAE3AkwgA0E4bCEEIAVBzABqA0AgBARAIARBOGshBCACIAVBIGoQywIgAkE4aiECDAELCyAFQeAAaiICIAVBIGpBLBD7BhoQjiMgAhC2CCAFQagBakHIoOMAKQMANwMAIAVBwKDjACkDADcDoAEgBUEANgK0ASAFIAFBIGo2ArgBAkAgASgCHEUNACAFQbQBahC2EyEGIAEoAhAiAikDACAGIAEoAhwiA0EBakEBdiADIAYoAgwbIAZBEGoQ/SEgAkEIaiEEQn+FQoCBgoSIkKDAgH+DIQgDQCAIUEUEQCAGIAIgCHqnQQF0QfABcWtBEGspAwAQ/BoQwAkgA0EBayEDIAhCAX0gCIMhCAwBCyADRQ0BIAJBgAFrIQIgBCkDAEJ/hUKAgYKEiJCgwIB/gyEIIARBCGohBAwACwALIAEoAkwEQCAFQbQBahC2EyAFIAEoAkw2AjggBSABKAJAIgI2AjAgBSACQQhqNgIoIAUgAiABKAJEakEBajYCLCAFIAIpAwBCf4VCgIGChIiQoMCAf4M3AyAgBUEgahC/DAsgBUEANgIwIAVBKGpByKDjACkDADcDACAFQcCg4wApAwA3AyAgBUHgAGogBUGgAWogAUEwaiAFQSBqIgIgAUEQaiAFQbQBaiAFKAK4ASAFKAK0ARsQrwEgAhDLCAJAAkAgASgCAEUNACABIAUoAqwBEMQpIAUoAqABIgIpAwAhCCAFKAKkASEDIAUgBSgCrAE2AjggBSACNgIwIAUgAiADakEBajYCLCAFIAJBCGo2AiggBSAIQn+FQoCBgoSIkKDAgH+DNwMgA0AgBUEYaiAFQSBqELoVIAUoAhgiAkUNASAFIAUoAhwiAzYCxAEgBUEIaiACKQMAIAJBCGooAgAQwCMgBUHIAWoiBCABIAUpAwggBSgCEBD6BiAFKQPIAVANAiAEIAMpAwAQ/BoQ4AsMAAsACyAAIAUpA6ABNwIAIABBCGogBUGoAWopAwA3AgAgBUG0AWoQnSggBUHgAGoQ6B8gBUGgAmokAA8LIAUoAtABIQAgBUEDNgLwASAFQazI4AA2AuwBIAVCAzcC+AEgBUHYAzYCmAIgBUHYAzYCkAIgBUHEAjYCiAIgBSACNgKEAiAFIABBCGs2ApwCIAUgBUGEAmo2AvQBIAUgBUHEAWo2ApQCIAUgBUGcAmo2AowCIAVB7AFqQbzJ4AAQwx0AC/oHAgN/AX4jAEGgAmsiBSQAIAEoAlAhBiAFQeAAaiIHENQRIAUgBjYCWCAFIAQ6AFwgBSAFLQCdAToAXSAFIAUvAZ4BOwFeIAVBIGogB0EsEPsGGiAFQdQAaiAFQZQBaigCADYCACAFIAUpAowBNwJMIANBMGwhBCAFQcwAagNAIAQEQCAEQTBrIQQgAiAFQSBqEF4gAkEwaiECDAELCyAFQeAAaiICIAVBIGpBLBD7BhoQjiMgAhC2CCAFQagBakHIoOMAKQMANwMAIAVBwKDjACkDADcDoAEgBUEANgK0ASAFIAFBIGo2ArgBAkAgASgCHEUNACAFQbQBahC2EyEGIAEoAhAiAikDACAGIAEoAhwiA0EBakEBdiADIAYoAgwbIAZBEGoQ/SEgAkEIaiEEQn+FQoCBgoSIkKDAgH+DIQgDQCAIUEUEQCAGIAIgCHqnQQF0QfABcWtBEGspAwAQ/BoQwAkgA0EBayEDIAhCAX0gCIMhCAwBCyADRQ0BIAJBgAFrIQIgBCkDAEJ/hUKAgYKEiJCgwIB/gyEIIARBCGohBAwACwALIAEoAkwEQCAFQbQBahC2EyAFIAEoAkw2AjggBSABKAJAIgI2AjAgBSACQQhqNgIoIAUgAiABKAJEakEBajYCLCAFIAIpAwBCf4VCgIGChIiQoMCAf4M3AyAgBUEgahC/DAsgBUEANgIwIAVBKGpByKDjACkDADcDACAFQcCg4wApAwA3AyAgBUHgAGogBUGgAWogAUEwaiAFQSBqIgIgAUEQaiAFQbQBaiAFKAK4ASAFKAK0ARsQrwEgAhDLCAJAAkAgASgCAEUNACABIAUoAqwBEMQpIAUoAqABIgIpAwAhCCAFKAKkASEDIAUgBSgCrAE2AjggBSACNgIwIAUgAiADakEBajYCLCAFIAJBCGo2AiggBSAIQn+FQoCBgoSIkKDAgH+DNwMgA0AgBUEYaiAFQSBqELoVIAUoAhgiAkUNASAFIAUoAhwiAzYCxAEgBUEIaiACKQMAIAJBCGooAgAQwCMgBUHIAWoiBCABIAUpAwggBSgCEBD6BiAFKQPIAVANAiAEIAMpAwAQ/BoQ4AsMAAsACyAAIAUpA6ABNwIAIABBCGogBUGoAWopAwA3AgAgBUG0AWoQnSggBUHgAGoQ6B8gBUGgAmokAA8LIAUoAtABIQAgBUEDNgLwASAFQazI4AA2AuwBIAVCAzcC+AEgBUHYAzYCmAIgBUHYAzYCkAIgBUHEAjYCiAIgBSACNgKEAiAFIABBCGs2ApwCIAUgBUGEAmo2AvQBIAUgBUHEAWo2ApQCIAUgBUGcAmo2AowCIAVB7AFqQbzJ4AAQwx0AC+gHAQZ/IwBBEGsiBSQAIAAsAAkhBCAALQAAIQcCQAJAAkACQAJAIAAQtxsiCEUEQCABQbi2wgBBAiACKAIMEQMADQELIAAtAAEiBkEERyIDBEAgBSAAKAABNgIIIAVBCGogASACEPwHDQELIAAtAAVBBEcEQCAFIAAoAAU2AgwgBkEERwRAIAFB+a/gAEEBIAIoAgwRAwANAgsgBUEMaiABIAIQ5QcNAQsgBEEARyAHckEBcQ0BDAILQQEhAwwDCwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgB0EBcUUEQCAERQ0bIARBAXENASAEQQJxDQMMCgsgBkEERw0BIAIoAgwhAAwDCyACKAIMIQAgBkEERw0DDAQLQQEhAyABQfmv4ABBASACKAIMIgARAwBFDQEMGgsgAigCDCEAIAZBBEcNBAwFC0EBIQMgAUG6tsIAQQEgABEDAA0YIARFDRYgBEEBcUUNAgtBASEDIAFB+a/gAEEBIAARAwANFwtBASEDIAFBu7bCAEEBIAARAwANFiAEQQJxRQ0DDAELIARBAnFFDQILQQEhAyABQfmv4ABBASAAEQMADRQLQQEhAyABQby2wgBBASAAEQMADRMgBEEEcQ0BIARBCHENAwwECyAEQQRxRQRAIARBCHFFDQUgAigCDCEAIAMNAwwGCyACKAIMIQAgA0UNAQtBASEDIAFB+a/gAEEBIAARAwANEQtBASEDIAFBvbbCAEEBIAARAwANECAEQQhxRQ0BC0EBIQMgAUH5r+AAQQEgABEDAEUNAgwPCwsgBEEQcUUEQCAEQSBxRQ0HIAIoAgwhACADDQUMCAsgAigCDCEAIAMNAQwDC0EBIQMgAUG+tsIAQQEgABEDAA0MIARBEHFFDQELQQEhAyABQfmv4ABBASAAEQMARQ0BDAsLIARBIHENAQwCC0EBIQMgAUG/tsIAQQEgABEDAA0JIARBIHFFDQELQQEhAyABQfmv4ABBASAAEQMARQ0CDAgLCyAEQcAAcUUNAyACKAIMIQAgAw0BDAILQQEhAyABQcC2wgBBASAAEQMADQUgBEHAAHFFDQILQQEhAyABQfmv4ABBASAAEQMADQQLQQEhAyABQcG2wgBBASAAEQMADQMLIARBAE4NAAJAIANFBEAgAigCDCEADAELQQEhAyABQfmv4ABBASACKAIMIgARAwANAwsgCCABQcK2wgBBASAAEQMAIgNyRQ0BDAILIAgEQEEAIQMMAgsgAigCDCEACyABQe/IyABBASAAEQMAIQMLIAVBEGokACADC7gIAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQEEHIAAoAgAiACgCACIBQQxrIgIgAkEmTxtBAWsOJAABAgMEBQYHCAkKCwwNDg8QERITIhQVFhciGBkaGxwdHh8gISILIABBBGoQxRcgACgCBCAAQQhqKAIAEO0pDCELIABBBGoQ5CYMIAsgAEEIahCjKgwfCyAAQQRqEOUCDB4LIABBDGoQ5QIMHQsgAEEEahDlAiAAQQhqEOUCDBwLAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEODAABAgMEBQYHCAkLCgsLIABBCGoQ+igMCgsgAEEIahCIGwwJCyAAQQhqEM8gDAgLIABBBGoQ5QIMBwsgAEEEahDzGAwGCyAAQQRqEPsoDAULIABBBGoQ+ygMBAsgAEEEahDlAgwDCyAAQQRqEPsoDAILIABBBGoQpCoMAQsCQAJAIAAoAgQOAgABAgsgAEEIahDtIQwBCyAAQQhqEO4hCyAAQThqEOUCDBsLIABBCGoQiBsMGgsgAEEIahDPIAwZCyAAQQRqEOUCIABBCGoQ5QIgAEEMahDlAgwYCyAALQAYQQVGBEAgAEEQahDlAgsgAEEEahDmJiAAKAIoENkoDBcLIABBEGoQ5QIgACgCBEGAgICAeEcEQCAAQQRqEOYmCyAAKAIgENkoDBYLIABBBGoQ6CYMFQsgAEEIahDLGQwUCwJAAkACQAJAAkAgACgCCA4GARgYAgMEAAsgAEEQahDLGSAAQRhqEMsZDBcLIABBEGoQ8ygMFgsgAEEgahCdJQwVCyAAQRBqEM8eDBQLIABBEGoQyxkgAEEYahDLGQwTCyAAQQRqENMoDBILIABBBGoQ5QIgACgCGBDZKCAAKAIIIgEQ0yggAUEgQQQQ1REMEQsgAEEEahCdHCAAKAIEIABBCGooAgAQkCoCQCAAKAIQIgEoAgBBgICAgHhHBEAgARDpJgwBCyABQQRqEOUCCyAAKAIQQRhBBBDVESAAKAIgEMIeIABBJGoQrycMEAsgAEEIahD8KAwPCyAAQQxqELAnDA4LIABBBGoQ5QIMDQsgAEEEahDlAgwMCyAAQQhqEIQbDAsLIABBCGoQ9SgMCgsgACgCBCIBQUBrEMwZIAFB/ABqEOcLIAEoAnwgAUGAAWooAgAQkyogASgCeBDZKCABQZABahDsJiABLQA8QQZHBEAgAUEQahDMGQsgAUGgAUEIENURDAkLIABBBGoQ7CYMCAsgAEEEahD7KAwHCyAAQQRqEOUCDAYLIABBBGoQ5QIMBQsgAEEEahD7KAwECyAAQQRqEKQqDAMLIABBBGoQ+ygMAgsgAEEIahDLGQwBCyAAQQRqEPMYCyAAQcAAQQgQ1REL2gcBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgFBDGsiAiACQSZPG0EBaw4kAAECGwMEBQYHCAkKCwwNDg8QERIaGxsTFBoVFh0bGx0XHRgZGgsgAEEEahDFFyAAKAIEIAAoAggQ7SkPCyAAQQRqEL4JIAAoAgQgACgCCBDiKQ8LIAApAwggAC0AHBC+IyAAKAIgEM0YDwsgAEEMahCcJg8LIABBBGoQnCYgAEEIahCcJg8LAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEODAABAgMEBQYHCAkLCgsLIABBCGoQiSgMCgsgAEEIahDQHAwJCyAAQQhqELchDAgLIABBBGoQnCYMBwsgAEEEahCWGQwGCyAAQQRqELApDAULIABBBGoQsCkMBAsgAEEEahCcJgwDCyAAQQRqELApDAILIABBBGoQuyoMAQsCQAJAIAAoAgQOAgABAgsgAEEIahC4IgwBCyAAQQhqELkiCyAAQThqEJwmDwsgAEEIahDQHA8LIABBCGoQtyEPCyAAQQRqEJwmIABBCGoQnCYgAEEMahCcJg8LIAAtABhBBUYEQCAAQRBqEJwmCyAAQQRqEOYmIAAoAigQ2SgPCyAAQRBqEJwmIAAoAgRBgICAgHhHBEAgAEEEahDmJgsgACgCIBDZKA8LIABBBGoQ6CYPCyAAKQMIEPkaDwsCQAJAAkACQCAAKAIIDgYAEBABAgMSCyAAKQMQIAApAyAQjCsPCyAAKQMgEO0mDwsgACkDGCAAKAIgEMAgDwsMDgsgAEEEahDTKA8LIABBBGoQnCYgACgCGBDZKCAAKAIIIgAQ0yggAEEgQQQQ1REPCyAAQQRqEJ0cIAAoAgQgACgCCBCQKgJAIAAoAhAiASgCAEGAgICAeEcEQCABEOkmDAELIAFBBGoQnCYLIAFBGEEEENURIAAoAiAQwh4gAEEkahCKKA8LIAApAwggAC0AHBC+IyAAQSBqEIwWDwsgAEEMahCIKA8LIABBCGoQnhwPCyAAKQMIIAApAxgQiysPCyAAKAIEIgBBQGsQxhcgAEH8AGoQ5wsgACgCfCAAQYABaigCABCTKiAAKAJ4ENkoIABBkAFqEOwmIAAtADxBBkcEQCAAQRBqEMYXCyAAQaABQQgQ1REPCyAAQQRqEOwmDwsgAEEEahC7Kg8LIAApAwgQ+RoPCyAAQQRqEJYZCw8LIABBBGoQnCYPCyAAKQMQEPkaIAApAxgQ+RoPCyAAQQRqELApC/IHAQp/IwBBsAJrIgIkAAJAAkAgACgCACIBQYiAxABHBEACQAJAQQIgAUGAgMQAayIBIAFBCE8bQQZrDgIBAAQLIAAoAgxFDQMMAgsgACgCBCgCAEGAgMQARw0BDAILIAAoAgQoAgBBgIDEAEcNACAAKAIIKAIAQYCAxABGDQELQdgAEOkgIQMgAkHEAWoiBCAAQdgAEPsGGiAAQgA3AgQgAEGAgMQANgIAIABBDGpCADcCACAAQRRqQgA3AgAgAyAEQdgAEPsGIQAgAkEBNgIUIAIgADYCECACQQE2AgwgAkHwAGohCkEAIQBBASEBA0ACQCABBEAgAiABQQFrIgU2AhQgAyAFQdgAbGoiBCgCACEBIAIoAgwhByACQRhqIARBBGpB1AAQ+wYaIAFBiYDEAEcNASAFIQALIAMhAQNAIAAEQCAAQQFrIQAgARDMHSABQdgAaiEBDAELCyACKAIMIANBBEHYABDUIgwCCyACIAE2AmwgCiACQRhqQdQAEPsGIQgCQAJAAkAgAUGIgMQARwRAQQIgAUGAgMQAayIBIAFBCE8bQQZrDgIBAgMLIAJBxAFqIgMgAigCcCIBQdgAEPsGGiABQgA3AgQgAUGAgMQANgIAIAFBDGpCADcCACABQRRqQgA3AgAgAkEMaiIEIAMQ8xkgAyACKAJ0IgFB2AAQ+wYaIAFCADcCBCABQYCAxAA2AgAgAUEMakIANwIAIAFBFGpCADcCACAEIAMQ8xkMAgsgAkHEAWoiAyACKAJwIgFB2AAQ+wYaIAFCADcCBCABQYCAxAA2AgAgAUEMakIANwIAIAFBFGpCADcCACACQQxqIAMQ8xkMAQsgAigCeCEGIAJBADYCeCACKAJ0IgEgBkHYAGwiCWohBCAGIAcgBWtLBEAgAkEMaiAFIAZBBEHYABC3FyACKAIUIQUgAigCECEDCyACQQA2AqwCIAIgCDYCpAIgAiAENgKgAiADIAVB2ABsaiEDIAIgBjYCqAIgAiABNgKcAiABQdgAaiEGA0ACQCAJBEAgASgCACIHQYiAxABHDQEgBiEECyACIAU2AhQgAigCoAIhAyACQoSAgIDAADcCnAIgAyAEa0HYAG4hAQJAIAMgBEYNAANAIAFFDQEgAUEBayEBIAQQzBUgBEHYAGohBAwACwALIAJBnAJqEMoSDAILIAJBxAFqIgggAUEEakHUABD7BhogAyAHNgIAIANBBGogCEHUABD7BhogA0HYAGohAyAJQdgAayEJIAZB2ABqIQYgBUEBaiEFIAFB2ABqIQEMAAsACyACQewAahCXESACKAIQIQMgAigCFCEBDAALAAsgAkGwAmokAAuICAIIfwJ+IwBBQGoiAiQAIAFBLGohBSAAKAIIQThsIQggAkEsaiEGIAJBEGohByAAKAIEIQlBACEAA0ACQAJAIAAgCEcEQCABLQA0QQFHDQICQAJAAkACQAJAAkACQEEEIAAgCWoiAygCAEEEayIEIARBB08bQQFrDgYBAgMEBQYACyABKAIwEL4RIQQgB0EIakHIoOMAKQMAIgo3AgAgB0HAoOMAKQMAIgs3AgAgAkEIaiAKNwMAIAYgBSkCADcCACAGQQhqIAVBCGooAgA2AgAgAkEBOgAoIAIgATYCICACIAQ2AiQgAkEBOgA5IAIgCzcDACACIAEvADs7ADsgAS0AOCEEIAIgAS0APToAPSACIAQ6ADggAkEBOgA6IANBHGogAhC8DSADQQRqIAIQlBogA0EYaiACEKolIAIQgSkMCAsgASgCMBC+ESEEIAdBCGpByKDjACkDACIKNwIAIAdBwKDjACkDACILNwIAIAJBCGogCjcDACAGIAUpAgA3AgAgBkEIaiAFQQhqKAIANgIAIAJBAToAKCACIAE2AiAgAiAENgIkIAJBAToAOSACIAs3AwAgAiABLwA7OwA7IAEtADghBCACIAEtAD06AD0gAiAEOgA4IAJBAToAOiADQRxqIAIQvA0gA0EEaiACEJQaIANBGGogAhCqJSACEIEpDAcLIANBFWotAABFDQUgA0EQaiABEN4rDAULIANBFGotAABBAUYEQCADQQRqIAEQ3isLIANBEGogARCqJQwFCyADQTRqLQAAQQFGBEAgA0EwaiABEN4rCyABIAMQtRUMBAsgASgCMBC+ESEEIAdBCGpByKDjACkDACIKNwIAIAdBwKDjACkDACILNwIAIAJBCGogCjcDACAGIAUpAgA3AgAgBkEIaiAFQQhqKAIANgIAIAJBAToAKCACIAE2AiAgAiAENgIkIAJBAToAOSACIAs3AwAgAiABLwA7OwA7IAEtADghBCACIAEtAD06AD0gAiAEOgA4IAJBAToAOiADQSBqIAIQvA0gA0Ekai0AAEEBRgRAIANBEGogAhDeKwsgA0EEaiACEJQaIANBHGogAhCqJSACEIEpDAMLIAEgA0EEahC0FQwCCyACQUBrJAAPCyABKAIwEL4RIQQgB0EIakHIoOMAKQMAIgo3AgAgB0HAoOMAKQMAIgs3AgAgAkEIaiAKNwMAIAYgBSkCADcCACAGQQhqIAVBCGooAgA2AgAgAkEBOgAoIAIgATYCICACIAQ2AiQgAkEBOgA5IAIgCzcDACACIAEvADs7ADsgAS0AOCEEIAIgAS0APToAPSACIAQ6ADggAkEBOgA6IANBDGogAhCqJSACEIEpCyAAQThqIQAMAAsAC94HAQZ/IwBBgAJrIgQkACAEIAM2AjQCQCABQShqIggQyg0iBUUNACAFKAIAQRVHDQACQAJAAkACQAJAAkACQAJAAkACQCAFLQAEIgkEQAJAIARBNGogAS0ArQJBAXEQnA4NACAEQShqIAMQjQMgBCgCLCEFIAQoAighByABLQCgAkECRwRAIARBwAA6AMABIAEgByAFIARBwAFqEMYZDAELIARBqgE6AMABIAEgByAFIARBwAFqEMYZCyABLQCgAkECRw0EIAMoAgBBGkcNBCADQQhqEKocDQEMBAsgBEHoAGogAUECIAMQZCAEKAJsIQMgBCgCaCIFQQdGDQkgBEGw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ADcCSCADQQI2AkAgA0EDOgA8IANBCDYCOCADQiA3AjAgA0KAgICA4AA3AiggA0ECNgIgIAMgA0EgajYClAEgA0ECNgKQASADIANBCGo2AowBIAEgAiADQYQBahC1JA0EIARBAWohBAwACwALIAMgBzYCBAJAIAQgC0cEQCAEIApHBEAgA0EgNgKAAQwCCyADQT42AoABDAELIANB3gA2AoABCyAHQRRqIQcgA0G+ATYCmAEgA0EVNgKQASADQeQANgKIASADIANBBGo2ApQBIAMgA0GcAWo2AowBIAMgA0GAAWo2AoQBIAMgBDYCnAEgA0EDOgB8IANBADYCeCADQqCAgIAgNwJwIANCgoCAgOAANwJoIANBAjYCYCADQQM6AFwgA0EINgJYIANCoICAgBA3AlAgA0KAgICA4AA3AkggA0ECNgJAIANBAzoAPCADQQA2AjggA0IgNwIwIANCgoCAgOAANwIoIANBAjYCICADQQM2AhwgA0EENgIMIANBsMTDADYCCCADIANBIGo2AhggA0EDNgIUIAZBFGshBiAEQQFqIQQgAyADQYQBajYCECABIAIgA0EIahC1JEUNAQwDCwsgA0EANgIwIANBATYCJCADQcDO3wA2AiAgA0IENwIoIAEgAiADQSBqELUkDQAgA0ECNgIkIANB5MPDADYCICADQgE3AiwgA0G/ATYCiAEgAyAINgKEASADIANBhAFqNgIoQQEhBSABIAIgA0EgahC1JA0BIANBADYCMCADQQE2AiQgA0H4w8MANgIgIANCBDcCKCABIAIgA0EgahC1JCEFDAELQQEhBQsgA0GgAWokACAFC88GAgZ/AX4jAEFAaiIDJABBASECAkACQAJAAkACQAJAAkACQAJAIAEoAgAOCgQIAQgCCAMICAAICyABKAIIQRFHDQcgASgCEEEHRw0HIAEoAhQtAEVBA0YNByABENUZDAULIAEtACBFDQMMBQtBAiECIAEoAgQiASgCAEEaRgRAIAAoAgggA0EIaiABKQMIIAFBGGooAgAQwCMgAyADKAIQNgI4IAMgAykDCCIINwMwIANBMGoQ1h4gCBD5GkEBcyECCyACQQJGIAJyIQIMBQsgASgCBCIBLQBBDQMgAS0AQA0EIAAoAgQgA0EYaiABKQMoIAFBOGooAgAQwCMgAyADKAIgNgI4IAMgAykD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IAEgAjoAzAIgASAENgLIAiABIAYgBSAFIAZLGyICIAcgAiAHSxs2AuQCIAEgAiAHIAIgB0kbNgLgAiADQThqEP0IIANBEGoQ/QgLIAAgCjYCACAAIAk2AgQgA0HgAGokAAuTBgEEfwJAAkACQAJAAkADQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAiACgCAEECaw4SAAECAwcEBwcPBQYHBwgJCwwNDgsgACgCBEGAgICAeEYEQCABIABBCGoQyxogASAAQSBqEJ4kIABBFGogARDCLQ8LIAEgAEEEahDLGiABIABBHGoQniQgAEEQaiABEMItDwsgAEEQaiABKAIkENkeIAEgAEEoahCdJA8LIABB0ABqIQMgAEEQaiECAkAgAC0AREEERgRAIAIgASgCJBDZHgwBCyACIAEQ2h4LIAEgAxCdJA8LIAAoAgxBOGwhAyAAKAIIIQRBACEAA0AgACADRg0LAkACQAJAAkACQAJAAkACQEEEIAAgBGoiAigCAEEEayIFIAVBB08bQQFrDgYBAgMEBQYACyABIAJBBGoQyxogASACQRhqELwmIAEgAkEcahCeJAwGCyABIAJBBGoQyxogASACQRhqELwmIAEgAkEcahCeJAwFCyACQRBqKAIAIAEQmC4gASACQQxqELwmDAQLIAJBBGooAgAgARCYLiABIAJBEGoQvCYMAwsgAkEwaigCACABEJguIAIgARDXCAwCCyACQRBqKAIAIAEQmC4gASACQQRqEMsaIAEgAkEcahC8JiABIAJBIGoQniQMAQsgAkEEaiABELkmCyAAQThqIQAMAAsACyAAKAIMQThsIQIgACgCCCEAA0AgAkUNCiAAKAIAQQdHBEAgACABEI0RCyAAQTBqIAEQvQMgAkE4ayECIABBOGohAAwACwALIABBBGogARC9AyAAQQhqIAEQvQMgAEEMaiABEL0DIABBEGohAAwECyAAQRBqIAEQ2x4PCyAAQQRqIQAMAgsgAEEEaiABEL0DIABBCGohAAwBCwsgAEEQaiABENseIAEgAEFAaxC9JiABIABBxABqEL0mDwsgACgCCEGEgICAeEgNAgwDCyAALQAcQQJHBEAgASgCJCAAQQhqEPsFGgsgASAAQShqELwmDwsgAEEIaiABENoeCw8LIABBCGogARDKGgu1BgILfwJ+IwBB0ABrIgIkACABKALQASEIAn8CQAJAIAEoAsABIAEoAsQBEP0cIgtBgIDEAEcEQCABQcABaiIGELAVIAEoAuQBIgkgCSgCAEEBaiIENgIAIARFDQEgASgC0AEhBCACQTBqIAlBCGoQ3B0gAigCNCEKIAIoAjAiB0EANgIIA0ACQCACQShqIAEoAsABIgMgASgCxAEiDBD/HAJAAkACfgJAAkAgAi0AKARAIAItACkiAyALQf8BcUcNASACQQhqIAYgBCABKALQARDRFSACKAIMIQMgAigCCCEEIAUNAiABKALoAUEIaiAEIAMQhBoMAwsgAyAMEP0cIgNBCmsOBAkEBAkDCyADQdwARwRAIANBCmsOBAkEBAkECyACQRBqIAYgBCABKALQARDRFSAHIAIoAhAgAigCFBD2HSACQThqIAFBABD6AiACKAI8IQMgAigCOCIEQYGAgIB4Rg0EIARBgICAgHhHBEAgAigCQCEFIAIgBDYCQCACIAM2AjwgAiADNgI4IAIgAyAFQQJ0aiIFNgJEA0AgAyAFRkUEQCACIANBBGo2AjwgByADKAIAENkCIAIoAjwhAyACKAJEIQUMAQsLIAJBOGoQ7ikLIAEoAtABIQRBASEFDAULIAcgBCADEPYdIAEoAugBQQhqIAcoAgQgBygCCBCEGgshDSAGELAVIAIgBiAIIAEoAtABENEVQQAhBSABKALoAUEIaiACKAIAIAIoAgQQhBohDkEbDAcLIANBgIDEAEYNBQsgBhCwFQwBCwtBASEFQSUMAwtBkO/YABDgKQsACyACQSBqIAYgBCABKALQARDRFSAHIAIoAiAgAigCJBD2HSACQRs6ADggASAIIAJBOGoiBBDLIyACQRhqIAYgCCABKALQARDRFSABKALoASACKAIcIQMgAigCGCEGIAJBgICAgHg2AjggAiAHKQIENwI8QQhqIgEgBBDiCyENQQAhBSABIAYgAxCEGiEOQRsLIQQgCiAKKAIAQQFqNgIAIAkQ0BdBJiEBIAAgBQR/IAEFIAAgDjcDECAAIA03AwggBAs2AgAgACADNgIEIAJB0ABqJAAL9AUBEn8jAEHwAGsiBCQAIAFBA2ohDyABQQVqIQogAiADQRhsaiEQIARB4ABqIREgBEE8aiESIAFBekshEwNAAkAgAiILIBBGDQAgC0EYaiECIAstABBFDQEgBEEgaiALEJQMIAQoAiAhDSAEKAIkIQVBACEOIARBADsBTCAEIAU2AkggBEEANgJEIARBAToAQCAEQQo2AjwgBCAFNgI4IARBADYCNCAEIAU2AjAgBCANNgIsIARBCjYCKEEAIQlBACEGA0AgCSEHAkACQAJAA0AgBSAGSQ0CIAYgDWohCQJAIAUgBmsiCEEHTQRAQQAhAwNAIAMgCEYNBCADIAlqLQAAQQpGDQIgA0EBaiEDDAALAAsgBEEYakEKIAkgCBC0ByAEKAIYQQFHDQIgBCgCHCEDCyAEIAMgBmoiCEEBaiIGNgI0IAUgCE0NACADIAlqQQEgEkEBEOsfRQ0ACyAEIAY2AkQgBiEJIAYhAwwCCyAEIAU2AjQgBSEGCyAODQNBASEOIARBAToATSAHIQkgByAFIgNGDQMLIARBEGogByANaiADIAdrEKwOIAQoAhAiDEUNAiAEKAIUIQcgBEEANgJoIAQgDDYCYCAEIAw2AlggBEKqgICAgAQ3A1AgBCAHNgJcIAQgByAMajYCZANAAkAgBEEIaiAREJAJIAQoAgwiFEGAgMQARgRAIAchCAwBCyAEKAIIIQhBACEDA0AgA0EIRg0BIARB0ABqIANqIRUgA0EEaiEDIBQgFSgCAEcNAAsMAQsLIAQgCCAMaiAHIAhrEKEFAkAgBCgCBCAKRw0AIAQoAgAiAyAKQcDI2ABBAxCLIEUEQCADIApBw8jYAEEDEIsgRQ0BCyADIApBht7aAEECEIQeRQ0AAkACQCATDQAgAywAA0FASA0AIAMgD2osAABBv39KDQELIAMgCkEDIA9ByMjYABDUJgALIAAgASADQQNqIAEQ6x8NAgsgDkUNAAsMAQsLIARB8ABqJAAgCyAQRwuLBgEKfyMAQeAAayIDJAAgA0E4aiIFIAEQ2xUgA0EcaiADKAI4IgJBNGopAgA3AgAgA0EkaiACQTxqKAIANgIAIAIoAighBCACQSU2AiggAiACKQNANwN4IAMgAikCLDcCFCADIAQ2AhAgA0EQahDHCiADQQhqIAIQlAIgAygCDCEJIAMoAgghCiAFEKMmAkAgAS0AjgNBAXENAAJAAkAgAUEoaiIFEOMNIgJFDQAgAigCAEEURw0AIAItAARBBkYNAQsgBRDjDSICRQ0BIAIoAgBBFEcNASACLQAEQQRHDQELIAFB/ABqIAFBxABqIAEoAihBJUYiAhsoAgAhBiABQfgAaiABQUBrIAIbKAIAIQcgBRDhEkUNAAJAAkAgASgCUCIEQSVHBEAgASgCaCAHIAYgBiAHSRtHDQMgASgCKCECIAFBJTYCKCACQSVGDQEgAyACNgIQIANBEGpBBHIgAUEsakEkEPsGGiADQThqQQRyIAFB1ABqQSQQ+wYaIAFBJTYCUCADIAQ2AjgCQCACQRRHDQACQAJAAkACQAJAAkACQAJAAkAgBEEUaw4CAAEJCyADLQAUQQRrDgMBCAIICyADLQAUQQRrDgMFBwYHC0EUIQRBCCECIAMtADxBBGsOAgkBBgtBFCEEQQkhAiADLQA8QQZrDgQIAQUCBQtBFSEEQQYhAgwHC0EVIQRBByECDAYLQQohAgwFCyADLQA8DQFBFCEEQQUhAgwECyADLQA8IgJFBEBBFCEEQQchAgwECyACQQdHDQBBFSEEQQghAgwDCyAFEKcmIAUgA0EQakEoEPsGGiABQdAAaiIBEKcmIAEgA0E4akEoEPsGGgwDC0Gw4OAAEOApAAtBwODgABDgKQALIAMoAlQhCCADLQAwIQsgBRCnJiABIAs6AEggASACOgAsIAEgBDYCKCABIAcgBiAGIAdLGyICIAggAiAISxs2AkQgASACIAggAiAISRs2AkAgA0E4ahDrCSADQRBqEOsJCyAAIAo2AgAgACAJNgIEIANB4ABqJAALywYCBX8CfiMAQdABayIEJAAgAUGCA2ohBQJAIAEtAJADQQFxRQ0AIAEtAPgCQQJHDQAgAUEoaiIGEOMNIgdFDQAgBygCAEENRw0AIARBGGogBhC4FCAEKAIcIQYgBCgCGCEHIARBmQE6AEAgASAHIAYgBEFAaxDYGQsgBEEANgArIARBAToANiAEIAI6ACogBCABLQCIAzoAKSAEIAEtAJQDOgA1IAQgAS0AngM6AD8gBCABKAGCAzYAIyAEIAEvAYYDOwAnIAQgASgBjgM2AC8gBCABLwGSAzsAMyAEIAEpAZYDNwA3IARB3ABqQcig4wApAwAiCTcCACAEQQA2AlAgBEKAgICAgAE3AkggBEEAOgBkIARBADYCQCAEQcCg4wApAwAiCjcCVCAEKAJEIQIgBEHIAGoQgCMgBEGJAWogBUEVaikAADcAACAEQYQBaiAFQRBqKQEANwIAIARB/ABqIAVBCGopAQA3AgAgBCAFKQEANwJ0IAFBgAFqIARBI2oQyQggBCABNgJwIARBQGsgAUEoEPsGGiABQQA2AhAgAUKAgICAgAE3AwggASACNgIEIAFBADYCACABQQA6ACQgASAKNwIUIAFBHGogCTcCACAEIAE2AmgCfwJAIAFBKGoQ4w0iAgRAIAIoAgBBDUYNAQsgBEEIaiABEK0GIAQgBCgCDDYCvAEgBEGBgICAeEGAgICAeCAEKAIIQQFxGzYCuAEgBCAEQbgBahDuESAEKAIAIQIgBCgCBAwBCyAEQZQBaiABQQAQlwYgBCgCmAEhAgJAIAQoApQBIgdBgICAgHhHBEAgBEGgAWohBSAEKAKcASEGAkAgAw0AIARBrAFqIAIgBhCLDyAEKAKsAUEBRw0AIAQoArQBIQMgBCgCsAEhCCAEQSs6ALgBIAEgCCADIARBuAFqENgZCyAEQcwBaiAFQQhqKAIANgIAIAQgBjYCwAEgBCACNgK8ASAEIAc2ArgBIAQgBSkCADcCxAEMAQsgBEGBgICAeDYCuAEgBCACNgK8AQsgBEEQaiAEQbgBahDuESAEKAIQIQIgBCgCFAshASAEQUBrEM8VIARB8ABqEKMmIAAgATYCBCAAIAI2AgAgBEHQAWokAAvQBgEDfyMAQSBrIgMkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABDigGAQEBAQEBAQECBAEBAwEBAQEBAQEBAQEBAQEBAQEBAQEBCAEBAQEHAAsgAUHcAEYNBAsgAkEBcUUgAUGABklyDQcgARDKBUUNByADQQA6AAogA0EAOwEIIAMgAUEUdkGLnuMAai0AADoACyADIAFBBHZBD3FBi57jAGotAAA6AA8gAyABQQh2QQ9xQYue4wBqLQAAOgAOIAMgAUEMdkEPcUGLnuMAai0AADoADSADIAFBEHZBD3FBi57jAGotAAA6AAwgAUEBcmdBAnYiAiADQQhqIgVqIgRB+wA6AAAgBEEBa0H1ADoAACAFIAJBAmsiAmpB3AA6AAAgA0EQaiIEIAFBD3FBi57jAGotAAA6AAAgAEEKOgALIAAgAjoACiAAIAMpAgg3AgAgA0H9ADoAESAAQQhqIAQvAQA7AQAMCQsgAEGABDsBCiAAQgA3AQIgAEHc6AE7AQAMCAsgAEGABDsBCiAAQgA3AQIgAEHc5AE7AQAMBwsgAEGABDsBCiAAQgA3AQIgAEHc3AE7AQAMBgsgAEGABDsBCiAAQgA3AQIgAEHcuAE7AQAMBQsgAEGABDsBCiAAQgA3AQIgAEHc4AA7AQAMBAsgAkGAAnFFDQEgAEGABDsBCiAAQgA3AQIgAEHczgA7AQAMAwsgAkGAgARxDQELIAEQsApFBEAgA0EAOgAWIANBADsBFCADIAFBFHZBi57jAGotAAA6ABcgAyABQQR2QQ9xQYue4wBqLQAAOgAbIAMgAUEIdkEPcUGLnuMAai0AADoAGiADIAFBDHZBD3FBi57jAGotAAA6ABkgAyABQRB2QQ9xQYue4wBqLQAAOgAYIAFBAXJnQQJ2IgIgA0EUaiIFaiIEQfsAOgAAIARBAWtB9QA6AAAgBSACQQJrIgJqQdwAOgAAIANBHGoiBCABQQ9xQYue4wBqLQAAOgAAIABBCjoACyAAIAI6AAogACADKQIUNwIAIANB/QA6AB0gAEEIaiAELwEAOwEADAILIAAgATYCBCAAQYABOgAADAELIABBgAQ7AQogAEIANwECIABB3MQAOwEACyADQSBqJAALygYCBX8CfiMAQdABayIEJAACQCABLQC4AkEBcUUNACABLQCgAkECRw0AIAFBKGoiBRDKDSIGRQ0AIAYoAgBBDUcNACAEQRhqIAUQhRQgBCgCHCEFIAQoAhghBiAEQZkBOgBAIAEgBiAFIARBQGsQxhkLIARBADYAKyAEIAI6ACogBCABLQCwAjoAKSAEIAEtALwCOgA1IAQgASgBqgI2ACMgBCABLwGuAjsAJyAEIAEoAbYCNgAvIARBAToANiAEIAEtAL4CQQFxOgA3IAQgAUG6AmoiAi8BADsAMyAEIAFBvwJqIgUpAAA3ADggBEHcAGpByKDjACkDACIJNwIAIARBADYCUCAEQoCAgICAATcCSCAEQQA6AGQgBEEANgJAIARBwKDjACkDACIKNwJUIAQoAkQhBiAEQcgAahCAIyAEQYkBaiAFKQAANwAAIARBhAFqIAIpAQA3AgAgBEH8AGogAUGyAmopAQA3AgAgBCABKQGqAjcCdCABQShqIgIgBEEjahDSCCAEIAE2AnAgBEFAayABQSgQ+wYaIAFBADYCECABQoCAgICAATcDCCABIAY2AgQgAUEANgIAIAFBADoAJCABIAo3AhQgAUEcaiAJNwIAIAQgATYCaAJ/AkAgAhDKDSICBEAgAigCAEENRg0BCyAEQQhqIAEQuAYgBCAEKAIMNgK8ASAEQYGAgIB4QYCAgIB4IAQoAghBAXEbNgK4ASAEIARBuAFqEO4RIAQoAgAhAiAEKAIEDAELIARBlAFqIAFBABCWBiAEKAKYASECAkAgBCgClAEiB0GAgICAeEcEQCAEQaABaiEFIAQoApwBIQYCQCADDQAgBEGsAWogAiAGEIsPIAQoAqwBQQFHDQAgBCgCtAEhAyAEKAKwASEIIARBKzoAuAEgASAIIAMgBEG4AWoQxhkLIARBzAFqIAVBCGooAgA2AgAgBCAGNgLAASAEIAI2ArwBIAQgBzYCuAEgBCAFKQIANwLEAQwBCyAEQYGAgIB4NgK4ASAEIAI2ArwBCyAEQRBqIARBuAFqEO4RIAQoAhAhAiAEKAIUCyEBIARBQGsQzxUgBEHwAGoQhyUgACABNgIEIAAgAjYCACAEQdABaiQAC5MFAgZ/AX4CQCABKAIIIgIgASgCBCIETw0AIAEoAgAgAmotAABB9QBHDQBBASEHIAEgAkEBaiICNgIICwJAAkACQCACIARPDQIgASgCACIGIAJqLQAAQTBrIgNB/wFxIgVBCUsNAiABIAJBAWoiAjYCCCAFRQRAQQAhAwwBCyADQf8BcSEDA0AgAiAERgRAIAQhAgwDCyACIAZqLQAAQTBrQf8BcSIFQQlLDQEgASACQQFqIgI2AgggA61CCn4iCEIgiFAEQCAFIAinIgVqIgMgBU8NAQsLDAILIAIgBE8NACACIAZqLQAAQd8ARw0AIAEgAkEBaiICNgIICwJAAkACQAJAIAIgAiADaiIFTQRAIAEgBTYCCCAEIAVJDQUgAkUNAiACIARJDQEMAgsMBAsgAiAGaiwAAEG/f0wNAQsgBUUgBCAFTXJFBEAgBSAGaiwAAEG/f0wNAQsgAiAGaiEEIAcNASAAQgE3AgggACADNgIEIAAgBDYCAA8LIAYgBCACIAVBzNbWABDUJgALIAIgBmpBAWshBiADIQECQAJAAn8DQCABIgJFBEBBACEBIAQhBUEBDAILIAJBAWshASACIAZqLQAAQd8ARw0ACwJAAkAgAUUNACABIANJBEAgASAEaiwAAEG/f0oNAQwFCyABIANHDQQgAg0AQQAhBgwBCyACIANJBEAgAiAEaiwAAEG/f0wNAyACIQYMAQsgAyEGIAIgA0cNAgsgBCAGaiEFIAMgBmshAyAECyECIANFBEAMAwsgACADNgIMIAAgBTYCCCAAIAE2AgQgACACNgIADwsgBCADIAIgA0Hs1tYAENQmAAsgBCADQQAgAUHc1tYAENQmAAsgAEEANgIAIABBADoABAuABgIKfwF+IwBB8ABrIgMkACADQcgAaiABENEEIAMoAlAhBAJ/AkACQAJAAkACQCADKQNIIg1QRQRAIAMgAygCVDYCFCADIAQ2AhAgAyANNwMIAn8CQAJAIAFBKGoiBBDKDSIFBEAgBSgCAEEGRg0BCyADQcgAaiABEC8gAygCSCIJQYCAgIB4Rg0BIANBIGogA0HYAGooAgA2AgAgAyADKQJQNwMYIAMoAkwhCkECIQYMCAsgASgCyAIhBSABQSU2AsgCIAEgASkD4AI3A5gDIANB1ABqIAFB1AJqKQIANwIAIANB3ABqIAFB3AJqKAIANgIAIAMgASkCzAI3AkwgAyAFNgJIIANByABqIgcQxgogAyABIAQQwyAQxQMgAygCBCIEIAMoAgANARogBCgCAA0EIANBOGoiBSAEQRBqKQMANwMAIANBQGsiBiAEQRhqKQMANwMAIAMgBCkDCDcDMCAELQBFIghBA0YNAyAEKAJIIQkgBCgCTCEKIAQvAUYhCyAHIARBIGpBJRDaLRpBKEEIEKsgIgwgB0ElEPsGIgcgCzsBJiAHIAg6ACUgA0EoaiAGKQMANwMAIANBIGogBSkDADcDACADIAMpAzA3AxggBC0AUSEGIAQtAFAhCCAEKAIADQUMBgsgAygCTAshBCANEPkaC0EBDAULQZDv3wAQ4CkAC0Hl7OAAQShBoO/fABD0FwALIAQQjCALIAQQmCsLIAEoApwDIQUgA0HIAGogA0EIahClHEHYAEEIEKsgIgRCADcDACAEIAo2AiQgBCAJNgIgIARBADsBUCAEIAIgBSACIAVLGzYCTCAEIAIgBSACIAVJGzYCSCAEIAY6AEUgBCAIOgBEIAQgDDYCQCAEIAMpA0g3AwggBEEQaiADQdAAaikDADcDACAEQRhqIANB2ABqKQMANwMAIAQgAykDGDcDKCAEQTBqIANBIGopAwA3AwAgBEE4aiADQShqKQMANwMAQQALIQEgACAENgIEIAAgATYCACADQfAAaiQAC/kFAgp/AX4jAEHwAGsiAyQAIANByABqIAEQ0wQgAygCUCEEAn8CQAJAAkACQAJAIAMpA0giDVBFBEAgAyADKAJUNgIUIAMgBDYCECADIA03AwgCfwJAAkAgAUEoaiIEEOMNIgUEQCAFKAIAQQZGDQELIANByABqIAEQtAYgAygCSCIJQYCAgIB4Rg0BIANBIGogA0HYAGooAgA2AgAgAyADKQJQNwMYIAMoAkwhCkECIQYMCAsgASgCKCEFIAFBJTYCKCABIAEpA0A3A3ggA0HUAGogAUE0aikCADcCACADQdwAaiABQTxqKAIANgIAIAMgASkCLDcCTCADIAU2AkggA0HIAGoiBxDHCiADIAEgBBDeIBDGAyADKAIEIgQgAygCAA0BGiAEKAIADQQgA0E4aiIFIARBEGopAwA3AwAgA0FAayIGIARBGGopAwA3AwAgAyAEKQMINwMwIAQtAEUiCEEDRg0DIAQoAkghCSAEKAJMIQogBC8BRiELIAcgBEEgakElENotGkEoQQgQqyAiDCAHQSUQ+wYiByALOwEmIAcgCDoAJSADQShqIAYpAwA3AwAgA0EgaiAFKQMANwMAIAMgAykDMDcDGCAELQBRIQYgBC0AUCEIIAQoAgANBQwGCyADKAJMCyEEIA0Q+RoLQQEMBQtBkO/fABDgKQALQeXs4ABBKEGg798AEPQXAAsgBBCMIAsgBBCYKwsgASgCfCEFIANByABqIANBCGoQpRxB2ABBCBCrICIEQgA3AwAgBCAKNgIkIAQgCTYCICAEQQA7AVAgBCACIAUgAiAFSxs2AkwgBCACIAUgAiAFSRs2AkggBCAGOgBFIAQgCDoARCAEIAw2AkAgBCADKQNINwMIIARBEGogA0HQAGopAwA3AwAgBEEYaiADQdgAaikDADcDACAEIAMpAxg3AyggBEEwaiADQSBqKQMANwMAIARBOGogA0EoaikDADcDAEEACyEBIAAgBDYCBCAAIAE2AgAgA0HwAGokAAuiBQIMfwN+IwBBoAFrIgMkACADQQBBoAEQjQshCQJAAkACQAJAAkAgAiAAKAKgASIETQRAIARBKU8NAiAEQQJ0IQggBEEBaiEMIAEgAkECdGohDQNAIAkgBkECdGohAwNAIAYhAiADIQUgASANRg0DIANBBGohAyACQQFqIQYgASgCACEHIAFBBGoiCyEBIAdFDQALIAetIRFCACEPIAghByACIQEgACEDAkADQCABQShPDQEgBSAPIAU1AgB8IAM1AgAgEX58IhA+AgAgEEIgiCEPIAVBBGohBSABQQFqIQEgA0EEaiEDIAdBBGsiBw0ACyAKIBBCgICAgBBaBH8gAiAEaiIBQShPDQYgCSABQQJ0aiAPPgIAIAwFIAQLIAJqIgEgASAKSRshCiALIQEMAQsLIAFBKEHsi8EAEKwQAAsgBEEpTw0DIAJBAnQhDCACQQFqIQ0gACAEQQJ0aiEOIAAhAwNAIAkgB0ECdGohBgNAIAchCyAGIQUgAyAORg0CIAVBBGohBiAHQQFqIQcgAygCACEIIANBBGoiBCEDIAhFDQALIAitIRFCACEPIAwhCCALIQMgASEGAkADQCADQShPDQEgBSAPIAU1AgB8IAY1AgAgEX58IhA+AgAgEEIgiCEPIAVBBGohBSADQQFqIQMgBkEEaiEGIAhBBGsiCA0ACyAKIBBCgICAgBBaBH8gAiALaiIDQShPDQcgCSADQQJ0aiAPPgIAIA0FIAILIAtqIgMgAyAKSRshCiAEIQMMAQsLIANBKEHsi8EAEKwQAAsgACAJQaABEPsGIAo2AqABIAlBoAFqJAAPCyAEQShB7IvBABCuEAALIAFBKEHsi8EAEKwQAAsgBEEoQeyLwQAQrhAACyADQShB7IvBABCsEAAL/wUBBn8jAEEwayICJAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAQQFrDhIMDAEMAgwMAwQMBQYHCAkKCwwACyABIABBBGoQmyEMCwsgAEEIaiABEOUsDAoLIABBKGogARDlLAwJCyAAQQhqIAEQ5SwgACgCFEUNCCAAQRRqIAEQ5SwMCAsgAS0AJSEEIAFBAToAJSAAKAIMQRhsIQMgACgCCCEAA0AgAwRAIAEgABCUByADQRhrIQMgAEEYaiEADAELCyABIAQ6ACUMBwsgASAAKAIEIgRByABqEJshQQghAyAEKAIAIgVBCEcEQCACIAEQ7AggARDwCkEAIQAgAUEIakHIoOMAKQMANwIAIAFBwKDjACkDADcCACABLQAmIQcgAkEANgIoIAJCgICAgIABNwIgIAVBB0cEQCAEIAJBIGoQoAogAigCJCEDIAIoAiAhBiACKAIoIQALIAJBEGogAUEQaiIFEOwIIAUgAEEBakEBdiAAIAEoAhwbIAFBIGoQ/SEgAiAGNgIoIAIgAzYCICACIAMgAEEEdCIAajYCLANAIAAEQCAFIAMpAwAQwAkgAEEQayEAIANBEGohAwwBCwsgAiADNgIkIAJBIGoQiRcgAUEBOgAmIAEgBEEoahCbISABQQA6ACYgBCgCAEEHRwRAIAEgBBCiCgsgBRDwCiABIAc6ACYgBUEIaiACQRhqKQIANwIAIAUgAikCEDcCACABEPAKIAFBCGogAkEIaikCADcCACABIAIpAgA3AgALIARB4ABqIAEQ2yMMBgsgAEEIaiABEOUsDAULIABBCGogARDlLAwECwJAIAAoAgQiA0ECRiADQQFxIgNyDQAgACgCCC0AGUEBa0H/AXFBAkkgA3INACAAKAIIIAEQ6i0LIABBDGogARDlLAwDCyABIAAoAgQgACgCCBDcHyAAQRBqIAEQ5SwMAgsgASAAKAIEIAAoAggQ3B8gAEEQaiABEOUsDAELIABBCGogARDkBQsgAkEwaiQAC5IFAQd/AkACfwJAAkAgAiABKAIQIgRJDQAgASgCFCAEaiACSQ0AQX9BASADGyEDIAIgBGshBCABKAIEIQIgASgCCCEGA0AgBCAGSSEBIARBAWsgBk8gBCAGT3INAkEBIAIgBGosAABBQE4NAxogAyAEaiEEDAALAAtBmIDCAEEuQciAwgAQ9BcACyABC0UgBCAGIAEbIgFFckUEQCABIAJqLAAAQb9/TA0BCyABIAJqIQoDQAJAAkACQAJAAkAgAiAKRg0AAn8gAiwAACIBQQBOBEAgAUH/AXEhAyACQQFqDAELIAItAAFBP3EhByABQR9xIQMgAUFfTQRAIANBBnQgB3IhAyACQQJqDAELIAItAAJBP3EgB0EGdHIhByABQXBJBEAgByADQQx0ciEDIAJBA2oMAQsgA0ESdEGAgPAAcSACLQADQT9xIAdBBnRyciIDQYCAxABGDQEgAkEEagshAiAFRQRAIANBCUcEQCADQRtGBEBBACEBQQEhBQwHCyADQf8ASQ0DQQAhBUEAIQEgA0GfAU0NBiADQQZ2Qf8AcSADQQ12QYDr4gBqLQAAIgVBB3RyIQEgBUESSw0EIANBAnZBD3EgAUGA7eIAai0AACIFQQR0ciEBIAVB7gFPDQVBASABQYCA4wBqLQAAIANBAXRBBnF2QQNxIgEgAUEDRhshAUEAIQUMBgsgAARAIAAgCCAAcGshAUEAIQUMBgtBtIHCABCwGwALIANB7QBHIQVBACEBDAQLIAkgBCAGS2oPCyADQR9LIQFBACEFDAILIAFBgBNB2OLgABCsEAALIAFB4B1B6OLgABCsEAALIAEgCWohCSABIAhqIQgMAAsACyACIAZBACABQdiAwgAQ1CYAC+oFAgt/AX4jAEHgAGsiAiQAIAJBADYCFCACQoCAgIAQNwIMIAEoAhghAyABKAIcIQcgAkEANgJAIAJBADsBPCACIAc2AjggAkEANgI0IAJBAToAMCACQQo2AiwgAiAHNgIoIAJBADYCJCACIAc2AiAgAiADNgIcIAJBCjYCGCABKAIgIghBAmpBBCAIGyEHIAEoAgQhCiABKAIIIQkCQAJAA0AgAiACQRhqEOEFIAIoAgAiBkUNAiACKAIEIQQgAiACKAJAIgFBAWoiAzYCQAJAIAhFBEAgAkEMakHQx+AAQQQQ9h0MAQsgAiADNgJEIAJByABqIAJBxABqEJ0NIAggAigCUCIDSQ0CIAJB1ABqIgVBICAIIANrELUQIAUgAigCTCIFIAMQ9h0gAigCVCACKAJcIQwgAigCWCEDIAIoAkggBRDaKSACQQxqIgUgAyAMEPYdIAMQ2ikgBUGIsdgAQQIQ9h0LIAJBDGoiAyAGIAQQ9h0gA0EKEP0HIAEgCUkEQCAKIAFBDGxqIgYoAghFDQEgAkEANgJcIAJCgICAgBA3AlQgByEBA0AgAQRAIAJB1ABqQSAQ/QcgAUEBayEBDAEFIAYoAgQiAyAGKAIIQRhsaiEGQQAhAQsLA0ACQCADIAZHBEAgASADKAIIIgRBAWsiBSABIAVLGyIFIAFrIQEDQCABBEAgAkHUAGpBIBD9ByABQQFrIQEMAQVBASADKAIUIgEgBGsiBEEAIAEgBE8bIgEgAUEBTRsiBCEBA0AgAUUNBCACQdQAakHeABD9ByABQQFrIQEMAAsACwALAAsgAigCVCIBQYCAgIB4Rg0DIAJBDGoiBCACKQJYIg2nIgMgDUIgiKcQ9h0gBEEKEP0HIAEgAxDaKQwDCyAEIAVqIQEgA0EYaiEDDAALAAsLIAEgCUGsytYAEKwQAAtBvMrWABDgKQALIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkHgAGokAAviBQEHfyMAQYABayICJAAgAkEYakHIoOMAKQMANwIAIAJBADsBQiACQQA2AjggAkKAgICAgAE3AjAgAkEAOgAsIAJBADYCKCACQoCAgIDAADcCICACQQA2AgwgAkKAgICAgAE3AgQgAkHAoOMAKQMANwIQIAIgAC8BPDsBQCACIAAoAjg2AjwgASACQQRqEPshIAEoAkQiBCABKAJIQQZ0aiEIIAJBMGohBgNAIAQgCEcEQCAEQUBrIQcgBCgCAEEHRgRAIAQoAjhBDGwhAyAEKAI0IQUDQCADBEAgA0EMayEDIAUgAkEEahDXLCAFQQxqIQUMAQsLIAQtABxBAkcEQCAEKQMIIARBGGooAgAgAkEEahDZFCAHIQQMAwsgBEEIaiACQQRqENAlIAchBAwCBSACQQRqIAQQ0hkgByEEDAILAAsLIAJBBGogAUEgahDnIwJAAkAgAigCOCIBBEAgAEEMaiABEIQpIAJBxABqIAIoAjQgAigCOBChCiACIAIoAkQ2AlggAiACKAJIIgM2AlAgAiADIAIoAkxBBHQiBWoiATYCXANAIAVFDQIgAkEEaiADKQMAIAMoAggQqxEgBUEQayEFIANBEGohAwwACwALIAJB0ABqIgEgAkEEakEsEPsGGiAAQRxqIAEQoRogBhCOIwwBCyACIAE2AlQgAkHQAGoQiRcgAC0AKEUEQCAAIAIoAjgQlh4gAiACKAIwNgJYIAIgAigCNCIDNgJQIAIgAyACKAI4QQR0IgVqIgE2AlwDQCAFBEAgACADKQMAIAMoAghBARCbBiAFQRBrIQUgA0EQaiEDDAELCyACIAE2AlQgAkHQAGoiARCJFyABIAJBBGpBLBD7BhogAEEcaiABEKEaDAELIAJB2ABqIAZBCGooAgA2AgAgAiAGKQIANwNQIABBLGogAkHQAGoiARChECABIAJBBGpBLBD7BhogAEEcaiABEKEaCyACQYABaiQAC+QFAgR/A34jAEGQAmsiBSQAIAVB4ABqQcig4wApAwA3AwAgBUHAoOMAKQMANwNYIANBOGwhBiACIQcDQCAGBEAgBkE4ayEGIAcgBUHYAGoQmQcgB0E4aiEHDAELCyAFQTBqIAVB4ABqIgcpAwA3AwAgBSAFKQNYNwMoQQAhBiAEBEBBACABEIoEIQhBASEGCyAFQQA6AIABIAVB6ABqQcig4wApAwAiCTcCACAFQfgAaiAJNwIAIAUgCDYCXCAFIAY2AlggBUHAoOMAKQMAIgk3AmAgBSAJNwJwIANBOGwhBiAFQfAAaiEBA0AgBgRAIAZBOGshBiACIAVB2ABqEMwIIAJBOGohAgwBCwsgBUHoAWogB0EIaikCACIJNwMAIAVB+AFqIAFBCGopAgAiCjcDACAFQdAAaiAKNwMAIAUgBykCACIKNwPgASAFIAEpAgAiCzcD8AEgBUFAayAJNwMAIAUgCzcDSCAFIAo3AzggBUHYAGoiAiAFQShqENgLIAVBkAFqIgEgBUHIAGoQ2AsgBSAFQThqNgKIASAFQcgBakHIoOMAKQMANwMAIAVBwKDjACkDADcDwAEgBUHgAWoiAyACEMMOIAVBwAFqIAUoAuABIAVB0AFqEP0hIAUoAnhBgYCAgHhHBEAgAyACQTAQ+wYaA0ACQCAFQRhqIAVB4AFqENwUIAUpAxgiCVANACAFKAIgIQIgBSAJNwPQASAFIAI2AtgBIAVBOGogBUHQAWoQ9AkEQCAFKQPQARD5GgwCBSAFQcABaiAJEMAJDAILAAsLQgAQ7SYgBUHgAWoQtRQLIAUoArABQYGAgIB4RwRAIAVB4AFqIAFBMBD7BhoDQCAFQQhqIAVB4AFqENwUIAUpAwgiCVBFBEAgBUHAAWogCRDACQwBCwtCABDtJiAFQeABahC1FAsgACAFKQPAATcCACAAQQhqIAVByAFqKQMANwIAIAVBOGoQ7wogBUGQAmokAAvwBQIEfwF+IwBBgAFrIgYkAAJAAkACQAJAAkACQAJAIAUgASgClA0oArwCKAIQQQF0TQRAIAEtAJwNQQFGDQEgASkDAEICUQ0DIAIoAsgEQQJGDQIgBkHUAGoiByABIAJB2AFqIAMQtgUgBkHwAGogBxD/FyAGKAJwQQJHBEAgBkEwaiAGQfgAaikCADcDACAGIAYpAnA3AygMBwsgBkEoaiABIAIgAxCrBAwGCwJAAkACQAJAIAEoAtQKQQNHBEAgAygCAEEBa0ECSQ0BIAEoAvgKIgcoAqgCIAcoAqwCRg0BCyABLQCcDQRAQeXs4ABBKEH4jMMAEPQXAAsgASkDAEICUQ0BIAIoAsgEQQJGDQcgBkHUAGoiByABIAJB2AFqIAMQtgUgBkHwAGogBxD/FyAGKAJwIgdBAWsOAwMCAQoLIAZBIGogASACIAMgBCAFEJkGIAYoAiQhCCAGKAIgIQcMCQsgBkEIaiABIAIgAyAEIAUQmQYgBigCDCEIIAYoAgghBwwICyAGQRBqIAEgAiADIAQgBRCZBiAGKAIUIQggBigCECEHDAcLIAYoAnQhByAGKAJ4IQggBigCfCEJIAYgAykCEDcCZCAGIAMpAgg3AlwgBiADLQAYOgBsIAYgAykCADcCVCAGQThqIgMgBkHUAGogByAIEP8JIAYgCTYCPCAGQQI2AjggBkEYaiABIAIgAyAEIAUQmQZBASEHIAYoAhhBAXFFDQQgBigCHCEIDAYLQeXs4ABBKEH4jMMAEPQXAAtBmIzDABDgKQALIAZBKGogASACIAMQqwQMAgtBmIzDABDgKQALQfCGwwBBE0GEh8MAELsSAAsgBigCKARAQQEhByAGKAI0IghBAXQiAUEBciECIAYpAiwhCiABIAVJBEAgBCABQQJ0aiAKp0EBajYCAAsgAiAFTw0BIAQgAkECdGogCkIgiKdBAWo2AgAMAQtBACEHCyAAIAg2AgQgACAHNgIAIAZBgAFqJAAL4gUBC38jAEFAaiIFJAACQAJAAkAgAygCCEUEQCAAIAEQ+x0oAgBBA2tBBE8EQCAFIAE2AgQgBCABEKYYDQMgBSAEKAIYIgA2AgggACAEKAIIIgJPDQIgBCgCBCACIABBrJnEABC3HyABNgIAIAQoAhAgBCgCFCABQbyZxAAQtx8gBCAAQQFqNgIYIAA2AgAMAwsgAyABEKobIAQoAhQhCiAEKAIQIQsgBCgCBCEMIAQoAhghCCAEKAIIIQkDQCADKAIIIgFFDQMgAyABQQFrIgE2AgggCCAJIAggCUsbIQ0gAygCBCABQQJ0aigCACEHA0AgCCEBAkACQAJAA0AgBSAHNgIEAkAgBCAHEKYYRQRAIAUgATYCCCABIA1HDQEgBUEDNgIQIAVBhJnEADYCDCAFQgM3AhggBUH8ADYCOCAFQRU2AjAgBUEVNgIoIAUgCTYCPAwLCyABIQgMBgsgDCAJIAFBrJnEABC3HyAHNgIAIAsgCiAHQbyZxAAQtx8gBCABQQFqIgg2AhggATYCAAJAAkAgACAHEPsdIgYoAgBBA2sOBAABAwQHCyAGKAIEIQcgCCEBIAYoAgggAnFFDQYMAQsLIAYoAggiAUUNBCAGKAIEIg4oAgAhByADIAFBAnRBBGsiAUECdiIGENweIAYgAygCCCIGaiEPIAMoAgQgBkECdGohBgNAIAFFDQMgBiABIA5qKAIANgIAIAFBBGshASAGQQRqIQYMAAsACyAGKAIEIQcgAyAGKAIIEKobDAILIAYoAgQhBwwBCyADIA82AggMAAsACwALQdDHwwBBIkHoyMMAEPQXAAsgBUEDNgIQIAVBhJnEADYCDCAFQgM3AhggBUH8ADYCOCAFQRU2AjAgBUEVNgIoIAUgAjYCPAwBCyAFQUBrJAAPCyAFIAVBJGo2AhQgBSAFQQRqNgI0IAUgBUE8ajYCLCAFIAVBCGo2AiQgBUEMakGcmcQAEMMdAAvmBQIDfwF+IwBBIGsiBCQAIAIoAhQhBiAEQRhqIAEgAigCECIFQQAQ1QECQAJAAkACQAJAAkACQCAELQAYQQRHBEAgBCkDGCIHQv8Bg0IEUg0BCwJAAkACQAJAAkAgBUUNACAEQRhqIAEgBRDUHCAELQAYQQRGDQAgBCkDGCIHQv8Bg0IEUg0BCyAEQQA2AgwgBEEYaiABIARBDGpBkrfgAEEDELITIAQtABhBBEcEQCAEKQMYIgdC/wGDQgRSDQILIAIoAgwQiAgNAiABLQBNDQMgBEEYaiABENARIAQtABhBBEYNAyAEKQMYIgdC/wGDQgRRDQMgACAHNwIADAoLIAAgBzcCAAwJCyAAIAc3AgAMCAsgBEEYaiABENARIAQtABhBBEYNACAEKQMYIgdC/wGDQgRRDQAgACAHNwIADAcLIARBGGogAkEMaiABEMIqIAQtABhBBEcEQCAEKQMYIgdC/wGDQgRSDQILAkAgAigCHEUNACAEQRhqIAJBHGogARDDKiAELQAYQQRGDQAgBCkDGCIHQv8Bg0IEUg0DCyACKAIAQYCAgIB4Rg0FAkAgAS0ATUUNACACKAIIDQAgAw0GCyAEQRhqIAEgBEEMakGfteAAQQEQshMgBC0AGEEERwRAIAQpAxgiB0L/AYNCBFINBAsgBEEYaiABIAUgBiACKAIEIAIoAghBkMoAEIYDIAQtABhBBEcEQCAEKQMYIgdC/wGDQgRSDQULIARBGGogASAEQQxqQeCh4wBBARCyEyAELQAYQQRGDQUgBCkDGCIHQv8Bg0IEUQ0FIAAgBzcCAAwGCyAAIAc3AgAMBQsgACAHNwIADAQLIAAgBzcCAAwDCyAAIAc3AgAMAgsgACAHNwIADAELAkAgAw0AIAEoAkRFDQAgBEEYaiABIAZBARDsAiAELQAYQQRGDQAgBCkDGCIHQv8Bg0IEUQ0AIAAgBzcCAAwBCyAAQQQ6AAALIARBIGokAAv9BQIHfwN+IwBB0AJrIgIkACABKAIQIQUgASgCBCEEIAEoAgwhBgJAA0ACQCAGIAQiA0cEQCABIANBIGoiBDYCBCACQagCaiADQRhqKQMANwMAIAJBoAJqIANBEGopAwA3AwAgAkGYAmogA0EIaikDADcDACACIAMpAwAiCTcDkAIgBS0AAEEBRyAJpyIHQQFLcg0BIAJBkAJqENQeDAILIABBEzYCAAwCCyAHQQRGDQALIAJBzABqIANBHGooAgA2AgAgAkHEAGogA0EUaikCADcCACACQTxqIANBDGopAgA3AgAgAiAHNgIwIAIgAykCBDcCNCACQSBqIAEoAhQiASkDACABQRBqKAIAEMAjIAIoAighBSACKQMgIQkgAkHQAGoiASACQTBqEP4FIAJBEGogCSAFEMAjIAJCADcD2AEgAkEAOgDkASACIAIoAhg2AuABIAIgAikDEDcD0AEgAikDQBD8GiEKIAJB0AFqIgYQgxUhAyACQbACakIANwMAIAJCADcDqAIgAiAKNwOgAiACQQA2ApgCIAJBGzYCkAIgAkGQAmoiCBDcKCEEIAEQ3CghASACQQA6AMwBIAIgATYCyAEgAkIANwPAASACIAM2ArgBIAJCADcDsAEgAkIANwOgASACIAQ2ApwBIAJBAjYCmAEgAkEBNgKQASAHBEAgChD8GiELIAJB8AFqQgA3AwAgAkIANwPoASACIAs3A+ABIAJBADYC2AEgAkEbNgLQASACIAkgBRDAIyACQgA3A5gCIAJBADoApAIgAiACKAIINgKgAiACIAIpAwA3A5ACIAgQgxUhAyACQZABahDcKCEEIAYQ3CghAQsgAikDSCELIAJBADoAzAIgAiABNgLIAiACQgA3A8ACIAIgAzYCuAIgAkIANwOwAiACQgA3A6ACIAIgBDYCnAIgAkECNgKYAiACQQE2ApACIAJBkAJqENwoIQEgACALNwMIIAAgATYCBCAAQRI2AgAgChD5GiAJEPkaCyACQdACaiQAC+kFAQ9/IwBBIGsiCCQAIAAtAAAhASAIQRhqIQogCEEQaiEMA0AgA0EJSyEGAn8DQCABQQFxRQRAIAFB/wFxIQIgACABQQFyIAAtAAAiASABIAJGIgIbOgAAIAJFDQEgCEEgaiQADwsgAUECcUUEQCADQQFqIAZFDQIaIAFB/wFxIQIgACABQQJyIAAtAAAiASABIAJGGzoAACABIAJHDQELCwJAQYiN5AAoAgANAEGAjeQAQYCN5AAoAgBBAWoiBzYCACAHQQNsIQkDQAJAQYSN5AAoAgAiBEUEQBCfFSEECyAEKAIEIgsgCU8NACAEKAIAIgIgC0EGdCIDaiENIAMhBiACIQEDQCAGRQRAIARBhI3kACgCAEYEQCAHIAQQjQYhBCACIQEDQCABIA1GBEBBhI3kACAENgIAIAtBBnQhAQNAIAFFDQYgAUFAaiEBIAIQ9B0gAkFAayECDAALAAsgAUFAayEDQQAgBCgCCGtBH3EhCSAEKAIAIQ4gBCgCBCEHIAEoAgQhAQNAIAFFBEAgAyEBDAILIAcgASgCAEG5893xeWwgCXYiBUsEQCABKAIEIA4gBUEGdGoiBSgCCCIPIAUgDxsgATYCBCAFIAE2AgggAUEANgIEIQEMAQsLCyAFIAdBsPnCABCsEAALA0AgA0UNBCADQUBqIQMgAhD0HSACQUBrIQIMAAsACyABIAEoAgAiBUEBIAUbNgIAIAUEQCABENQQCyABQUBrIQEgBkFAaiEGDAALAAsLIApBADoAAEGMjeQAQgA3AgBBlI3kAEIANwIAIAxCADcDAEGIjeQAKAIAQYiN5ABBATYCAEGcjeQAIAooAgA2AgAgCEIANwMIRQ0AQYCN5ABBgI3kACgCAEEBazYCAAsgABClDiAALQAAQQNGBEBBjI3kACAANgIAQZCN5ABBADYCAEGcjeQAQQA6AABBmI3kAEEANgIAELkbAAsQ9B1BAAshAyAALQAAIQEMAAsAC7QGAQR/IwBBIGsiAiQAAkACQAJAAkACQAJAAkACQAJAAkAgAQ4oAAcHBwcHBwcHAQMHBwIHBwcHBwcHBwcHBwcHBwcHBwcHBwQHBwcHBQYLIABBgAQ7AQogAEIANwECIABB3OAAOwEADAgLIABBgAQ7AQogAEIANwECIABB3OgBOwEADAcLIABBgAQ7AQogAEIANwECIABB3OQBOwEADAYLIABBgAQ7AQogAEIANwECIABB3NwBOwEADAULIABBgAQ7AQogAEIANwECIABB3MQAOwEADAQLIABBgAQ7AQogAEIANwECIABB3M4AOwEADAMLIAFB3ABGDQELAkAgAUH/BU0NACABEMoFRQ0AIAJBADoACiACQQA7AQggAiABQRR2QYue4wBqLQAAOgALIAIgAUEEdkEPcUGLnuMAai0AADoADyACIAFBCHZBD3FBi57jAGotAAA6AA4gAiABQQx2QQ9xQYue4wBqLQAAOgANIAIgAUEQdkEPcUGLnuMAai0AADoADCABQQFyZ0ECdiIDIAJBCGoiBWoiBEH7ADoAACAEQQFrQfUAOgAAIAUgA0ECayIDakHcADoAACACQRBqIgQgAUEPcUGLnuMAai0AADoAACAAQQo6AAsgACADOgAKIAAgAikCCDcCACACQf0AOgARIABBCGogBC8BADsBAAwCCyABELAKRQRAIAJBADoAFiACQQA7ARQgAiABQRR2QYue4wBqLQAAOgAXIAIgAUEEdkEPcUGLnuMAai0AADoAGyACIAFBCHZBD3FBi57jAGotAAA6ABogAiABQQx2QQ9xQYue4wBqLQAAOgAZIAIgAUEQdkEPcUGLnuMAai0AADoAGCABQQFyZ0ECdiIDIAJBFGoiBWoiBEH7ADoAACAEQQFrQfUAOgAAIAUgA0ECayIDakHcADoAACACQRxqIgQgAUEPcUGLnuMAai0AADoAACAAQQo6AAsgACADOgAKIAAgAikCFDcCACACQf0AOgAdIABBCGogBC8BADsBAAwCCyAAIAE2AgQgAEGAAToAAAwBCyAAQYAEOwEKIABCADcBAiAAQdy4ATsBAAsgAkEgaiQAC+QFAQR/AkACQAJAAkACQANAAkACQAJAAkACQAJAAkACQAJAAkAgACgCACIAKAIAQQJrDhIAAQIDBwQHBw8FBgcHCAkLDA0OCyAAKAIEQYCAgIB4RgRAIABBCGogARC3GiABIABBIGoQ+yMgAEEUaiABEJQtDwsgAEEEaiABELcaIAEgAEEcahD7IyAAQRBqIAEQlC0PCyAAQRBqENUgIAEgAEEoahDiJQ8LIABB0ABqIQMgAEEQaiECAkAgAC0AREEERgRAIAIQ1SAMAQsgAiAB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IAJBCGogAkG8AWoiA0HsABD7BhogAkH0AGogBEHIABD7BhogAyABQcQBahDmHiABKALcASIDIAMoAgAiBUEBajYCACAFQQBIBEAACyABKAIEIQUgASgCACEEIAEtAPIBIQYgAS0A8QEhByABLQDwASEKIAEoAuwBIQsgASgC6AEhDCACIAEoAgggASgCDBC/KCABKALgASENIAIpAwAhDiAAQdABaiABQdABahDmHiAAIAg2AuQBIAAgCToA8wEgAEEQaiACQQhqQbQBEPsGGiAAIAY6APIBIAAgBzoA8QEgACAKOgDwASAAIAs2AuwBIAAgDDYC6AEgACANNgLgASAAIAM2AtwBIAAgDjcCCCAAIAU2AgQgACAENgIAIABBzAFqIAJBxAFqKAIANgIAIAAgAikCvAE3AsQBIAJB8AJqJAALnQUCAX8BfiMAQSBrIgMkAAJAAkACQAJAIAIoAjxFDQAgAyACQTxqNgIIIANBGGogA0EIaiABEMEpIAMtABhBBEYNACADKQMYIgRC/wGDQgRSDQELIANBADYCDCADQRhqIAEgA0EMakGfteAAQQEQshMgAy0AGEEERg0BIAMpAxgiBEL/AYNCBFENASAAIAQ3AgAMAgsgACAENwIADAELIANBGGogASACKAIwIAIoAjQgAigCBCACKAIIEP4EAkACQAJAAkAgAy0AGEEERwRAIAMpAxgiBEL/AYNCBFINAQsgA0EYaiABIANBDGpB4KHjAEEBELITIAMtABhBBEcEQCADKQMYIgRC/wGDQgRSDQILAkACQAJAAkACQAJAIAIoAkBFDQAgA0EYaiABIANBDGpB5LXgAEEBELITIAMtABhBBEcEQCADKQMYIgRC/wGDQgRSDQkLAkAgAS0ATQ0AIANBGGogARDQESADLQAYQQRGDQAgAykDGCIEQv8Bg0IEUg0CCyADQRhqIAJBQGsgARDeDSADLQAYQQRGDQAgAykDGCIEQv8Bg0IEUg0CCyACKAIYQYCAgIB4Rg0CAkAgAS0ATQ0AIANBGGogARDQESADLQAYQQRGDQAgAykDGCIEQv8Bg0IEUg0JCyADQRhqIAEgAkEYakEBEOcEIAMtABhBBEYNAyADKQMYIgRC/wGDQgRRDQMgACAENwIADAkLIAAgBDcCAAwICyAAIAQ3AgAMBwsgA0EYaiABIANBDGoQ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ACwgA0EgNgIcIANBADYCKCADIAE2AiQgAyAANgIgIANBADYCFCADQQA2AgwCfwJAAkACQCACKAIQIgpFBEAgAigCDCIARQ0BIAIoAggiASAAQQN0aiEEIABBAWtB/////wFxQQFqIQcgAigCACEAA0AgAEEEaigCACIFBEAgAygCICAAKAIAIAUgAygCJCgCDBEDAA0ECyABKAIAIANBDGogASgCBBECAA0DIABBCGohACABQQhqIgEgBEcNAAsMAQsgAigCFCIARQ0AIABBBXQhCyAAQQFrQf///z9xQQFqIQcgAigCCCEFIAIoAgAhAANAIABBBGooAgAiAQRAIAMoAiAgACgCACABIAMoAiQoAgwRAwANAwsgAyAIIApqIgFBEGooAgA2AhwgAyABQRxqLQAAOgAsIAMgAUEYaigCADYCKCABQQxqKAIAIQRBACEJQQAhBgJAAkACQCABQQhqKAIAQQFrDgIAAgELIARBA3QgBWoiDCgCAA0BIAwoAgQhBAtBASEGCyADIAQ2AhAgAyAGNgIMIAFBBGooAgAhBAJAAkACQCABKAIAQQFrDgIAAgELIARBA3QgBWoiBigCAA0BIAYoAgQhBAtBASEJCyADIAQ2AhggAyAJNgIUIAUgAUEUaigCAEEDdGoiASgCACADQQxqIAEoAgQRAgANAiAAQQhqIQAgCyAIQSBqIghHDQALCyAHIAIoAgRPDQEgAygCICACKAIAIAdBA3RqIgAoAgAgACgCBCADKAIkKAIMEQMARQ0BC0EBDAELQQALIANBMGokAAvXBAIMfwJ+IwBB8ABrIgIkACACQQA2AhAgAkKAgICAgAE3AgggASgCBCEDIAFBADYCBCACIAM2AhQgAkEwaiEJIAJBGGpBBHIhByACQSlqIgpBB2ohC0EIIQRBACEBA0ACQAJAAkAgAwRAIAMoAgBBAUYEQCADQQA2AgAgAkHQAGoiDCADQRRqKAIANgIAIAIgAykCDDcDSCACIAMpABk3AzggAiADQSBqKQAANwA/IAMtABghCCADKAIIIQUCQCADQX9GDQAgAyADKAIEQQFrIg02AgQgDQ0AIANBKEEIENURCyAIQQJHDQIgBSEDCyACIAM2AlQgAkHYAGogA0EIahCeESADKAIgIgMEQCADIAMoAgBBAWoiBTYCACAFRQ0DCyACQShqIAJB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ACABNgIIDAQLQeXs4ABBKEH8qOAAEPQXAAtB5ezgAEEoQaCp4AAQ9BcACyACQSBqEJAkIAAgBTcDACAAIAIpAwg3AwggAEEQaiACQRBqKQMANwMAIABBGGogAkEYaikDADcDAAwCCyAAQgI3AwAgACADNgIICyACQSBqEJAkCyACQfAAaiQAC/oEAQJ/IwBBMGsiAyQAAn8CQAJAAkACQAJAAkACQAJAAkBBBiAAKAIAQQJrIgQgBEEJTxtBAWsOCAECAwQFBgcIAAsgA0EBNgIUIANBhPjgADYCECADQgE3AhwgA0GqAjYCDCADIAApAgg3AiggAyADQQhqNgIYIAMgA0EoajYCCCABIAIgA0EQahC1JAwICyADIABBBGo2AgggA0ECNgIUIANB9NHYADYCECADQgE3AhwgA0ENNgIsIAMgA0EoajYCGCADIANBCGo2AiggASACIANBEGoQtSQMBwsgA0EANgIgIANBATYCFCADQZjS2AA2AhAgA0IENwIYIAEgAiADQRBqELUkDAYLIANBADYCICADQQE2AhQgA0Go0tgANgIQIANCBDcCGCABIAIgA0EQahC1JAwFCyADQQA2AiAgA0EBNgIUIANBxNLYADYCECADQgQ3AhggASACIANBEGoQtSQMBAsgA0EANgIgIANBATYCFCADQeTS2AA2AhAgA0IENwIYIAEgAiADQRBqELUkDAMLIAMgADYCCCADQQE2AhQgA0GE+OAANgIQIANCATcCHCADQasCNgIsIAMgA0EoajYCGCADIANBCGo2AiggASACIANBEGoQtSQMAgsgAyAAQQRqNgIIIANBAjYCFCADQezS2AA2AhAgA0IBNwIcIANBDTYCLCADIANBKGo2AhggAyADQQhqNgIoIAEgAiADQRBqELUkDAELIAMgAEEEajYCCCADQQE2AhQgA0GE+OAANgIQIANCATcCHCADQQ02AiwgAyADQShqNgIYIAMgA0EIajYCKCABIAIgA0EQahC1JAsgA0EwaiQAC78EAgN/AX4jAEFAaiIGJAAgBkEwaiACIAVBkAogBRDuFwJAIAYtADBBBUcEQCAAIAYpAzA3AgAMAQsgBigCNBoCQCAFRQ0AIAZBAToAJiAGQQA6ACcgBSEHA0ACQAJAIAdFBEAgBkEwaiABIAIgA0GQCiAIIAlCIIinENgBIAYt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CgwGCyAFEIghDQUgA0FAayAFEJEQIANBCGogBRCFFCADQZDE4AA2AjwgA0E0OgA4IAMoAgggAygCDCADQThqEIEVIQQgBRDKDSICRQ0CIAIoAgBBJEcNAiABIAEpA+ACNwOYAyABKALIAiABQSU2AsgCQSRHDQEgASABKALMAhD/CwwCC0EBIQYMBQtB5ezgAEEoQaDu3wAQ9BcACyADQTRqELsFCyAHEN0oCyAJEPkaDAELIAEoApwDIQEgA0E4aiADQSBqEKUcQTBBCBCrICIEIAIgASABIAJJGzYCBCAEIAIgASABIAJLGzYCAEEAIQYgBEEAOgAoIAQgCDYCJCAEIAc2AiAgBCADKQM4NwMIIARBEGogA0FAaykDADcDACAEQRhqIANByABqKQMANwMACyAAIAQ2AgQgACAGNgIAIANB0ABqJAALzAQBBH8jAEGAAWsiAiQAIAEgABD7ISABKAIoIQEgAkEYakHIoOMAKQMANwIAIAJBwKDjACkDADcCECACQQA7AUIgAkEANgI4IAJCgICAgIABNwIwIAJBADoALCACQQA2AiggAkKAgICAwAA3AiAgAkEANgIMIAJCgICAgIABNwIEIAIgAC8BPDsBQCACIAAoAjg2AjwgAUEMaiACQQRqIgMQnxogASADEKkaIAMgAUEYahDnIyACQTBqIQQCQAJAIAIoAjgiAQRAIABBDGogARCEKSACQcQAaiACKAI0IAIoAjgQoQogAiACKAJENgJYIAIgAigCSCIBNgJQIAIgASACKAJMQQR0IgNqIgU2AlwDQCADRQ0CIAJBBGogASkDACABKAIIEKsRIANBEGshAyABQRBqIQEMAAsACyACQdAAaiIBIAJBBGpBLBD7BhogAEEcaiABEKEaIAQQjiMMAQsgAiAFNgJUIAJB0ABqEIkXIAAtAChFBEAgACACKAI4EJYeIAIgAigCMDYCWCACIAIoAjQiATYCUCACIAEgAigCOEEEdCIDaiIENgJcA0AgAwRAIAAgASkDACABKAIIQQEQmwYgA0EQayEDIAFBEGohAQwBCwsgAiAENgJUIAJB0ABqIgEQiRcgASACQQRqQSwQ+wYaIABBHGogARChGgwBCyACQdgAaiAEQQhqKAIANgIAIAIgBCkCADcDUCAAQSxqIAJB0ABqIgEQoRAgASACQQRqQSwQ+wYa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IAAoAiAQsx0gAEEoaiABEKMtDwsgAEEEaiABEIotIABBCGogARCjLSAAKAIURQ0GIABBFGogARCjLQ8LIABBEGogARCKLSAAKAIMQRhsIQIgACgCCCEAA0AgAkUNBiAAQRRqIAEQiyYgACABELUaIAJBGGshAiAAQRhqIQAMAAsACyAAQQRqIAEQii0PCyAAKAIEIgBByABqIAEQtRogACgCAEEIRwRAIAAgARD2IyAAQShqIAEQtRoLIABB4ABqIAEQ9SMPCwJAIAAoAgQiA0ECRg0AIABBCGohAiADQQFxRQRAIAIgARCkLQwBCyACIAEQii0LIABBGGogARCLJiAAQRxqIAEQiyYgAEEMaiABEKMtDwsgAEEIaiABELgJDwsgAEEEaiABEIotCw8LIABBBGogARCKLSAAQQhqIAEQoy0PCyAAQRBqIgAtABRBAkcEQCABIAApAwAgACgCEBCzHQsPCyAAQQRqIgNBBGohAgJAAkACQAJAIAMoAgBBAWsOAgECAAsgAiABEKQtDAILIAIoAgAgARDzEwwBCyACIAEQjy0LIABBDGogARCKLSAAQRBqIAEQoy0L/gMBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOEgoKCwECDAwDBAUGCwsHDQ0ICQALIABBBGogARCiGg8LIABBDGogARC0JQ8LIAEgAEEQahCCCSAAQShqIAEQ3iwPCyAAQQRqIAEQzSwgAEEIaiABEN4sIAAoAhRFDQYgAEEUaiABEN4sDwsgAEEQaiABEM0sIAAoAgxBGGwhAiAAKAIIIQADQCACRQ0GIABBFGogARC0JSAAIAEQohogAkEYayECIABBGGohAAwACwALIABBBGogARDNLA8LIAAoAgQiAEHIAGogARCiGiAAKAIAQQhHBEAgACABENcjIABBKGogARCiGgsgASAAQeAAahDWIw8LAkAgACgCBCIDQQJGDQAgAEEIaiECIANBAXFFBEAgAiABEN8sDAELIAIgARDNLAsgAEEYaiABELQlIABBHGogARC0JSAAQQxqIAEQ3iwPCyAAQQhqIAEQ0QcPCyAAQQRqIAEQzSwLDwsgAEEEaiABEM0sIABBCGogARDeLA8LIABBEGogARDVIw8LIABBBGoiA0EEaiECAkACQAJAAkAgAygCAEEBaw4CAQIACyACIAEQ3ywMAgsgAigCACABEK4IDAELIAIgARDYLAsgAEEMaiABEM0sIABBEGogARDeLAvCBAIFfwJ+IwBBgAFrIgIkACABKAIYQQxqIAAQkhogAEEsaiEDIAFBGGohBAJAIAEtABRBAkcEQCAAKAIwEL4RIQUgAkEYakHIoOMAKQMAIgc3AwAgAkEIaiAHNwMAIAJBNGoiBiADQQhqKAIANgIAIAJBAToAKCACIAA2AiAgAiAFNgIkIAJBAToAOSACQcCg4wApAwAiCDcDECACIAg3AwAgAiADKQIANwIsIAIgAC0APDoAPCACIAAvATo7ATogAC0AOCEDIAIgAC0APToAPSACIAM6ADggAiABQQMQ0xUgAigCMBC+ESEAIAJB2ABqIAc3AwAgAkHIAGogBzcDACACQfQAaiAGKAIANgIAIAJBAToAaCACIAA2AmQgAkEBOgB5IAIgCDcDUCACIAg3A0AgAiACKQIsNwJsIAIgAi0APDoAfCACIAIvATo7AXogAiACNgJgIAItADghACACIAItAD06AH0gAiAAOgB4IAQgAkFAayIAENwDIAAQgSkgAhCBKQwBCyAAKAIwEL4RIQEgAkHYAGpByKDjACkDACIHNwMAIAJByABqIAc3AwAgAkH0AGogA0EIaigCADYCACACQQE6AGggAiAANgJgIAIgATYCZCACQQE6AHkgAkHAoOMAKQMAIgc3A1AgAiAHNwNAIAIgAykCADcCbCACIAAtADw6AHwgAiAALwE6OwF6IAAtADghASACIAAtAD06AH0gAiABOgB4IAQgAkFAayIAENwDIAAQgSkLIAJBgAFqJAALqAQBBH8jAEGAAWsiAiQAIAJBGGpByKDjACkDADcCACACQQA7AUIgAkEANgI4IAJCgICAgIABNwIwIAJBAToALCACQQA2AiggAkKAgICAwAA3AiAgAkEANgIMIAJCgICAgIABNwIEIAJBwKDjACkDADcCECACIAAvATw7AUAgAiAAKAI4NgI8IAEgAkEEahCgGiACQTBqIQQCQAJAIAIoAjgiAQRAIABBDGogARCEKSACQcQAaiACKAI0IAIoAjgQoQogAiACKAJENgJYIAIgAigCSCIBNgJQIAIgASACKAJMQQR0IgNqIgU2AlwDQCADRQ0CIAJBBGogASkDACABKAIIEKsRIANBEGshAyABQRBqIQEMAAsACyACQdAAaiIBIAJBBGpBLBD7BhogAEEcaiABEKEaIAQQjiMMAQsgAiAFNgJUIAJB0ABqEIkXIAAtAChFBEAgACACKAI4EJYeIAIgAigCMDYCWCACIAIoAjQiATYCUCACIAEgAigCOEEEdCIDaiIENgJcA0AgAwRAIAAgASkDACABKAIIQQEQmwYgA0EQayEDIAFBEGohAQwBCwsgAiAENgJUIAJB0ABqIgEQiRcgASACQQRqQSwQ+wYaIABBHGogARChGgwBCyACQdgAaiAEQQhqKAIANgIAIAIgBCkCADcDUCAAQSxqIAJB0ABqIgEQoRAgASACQQRqQSwQ+wYaIABBHGogARChGgsgAkGAAWokAAubBAECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOEgoKCwECCgoDBAUGCwsHDAwICQALIABBBGogARC+Gg8LIABBDGogARCSJg8LIABBKGogARCpLQ8LIABBBGogARClLSAAQQhqIAEQqS0gACgCFEUNBiAAQRRqIAEQqS0PCyAAQRBqIAEQpS0gACgCDEEYbCECIAAoAgghAANAIAJFDQYgAEEUaiABEJImIAAgARC+GiACQRhrIQIgAEEYaiEADAALAAsgAEEEaiABEKUtDwsgACgCBCIAQcgAaiABEL4aIABB4ABqIQICQAJAAkAgACgCAEEHaw4CAQIACyAAIAEQsRILIABBKGogARC+GgsgAigCAEGAgICAeEYNAyACIAEQvhoPCwJAIAAoAgQiA0ECRg0AIABBCGohAiADQQFxRQRAIAIgARCqLQwBCyACIAEQpS0LIABBGGogARCSJiAAQRxqIAEQkiYgAEEMaiABEKktDwsgAEEIaiABEL8NDwsgAS0ADCECIAFBAToADCAAQQRqIAEQpS0gASACOgAMCw8LIABBBGogARClLSAAQQhqIAEQqS0PCyAAQQRqIgNBBGohAgJAAkACQAJAIAMoAgBBAWsOAgECAAsgAiABEKotDAILIAIoAgAgARD0EwwBCyACKAIAIAEQsRILIABBDGogARClLSAAQRBqIAEQqS0LjAQBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAQQFrDhIKCgsBAgoKAwQFBgsLBwwMCAkACyAAQQRqIAEQ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ESADLQAYQQRGDQAgAykDGCIGQv8Bg0IEUg0ECyADQRhqIAIgA0EIakGdteAAQQIQshMgAy0AGEEERwRAIAMpAxgiBkL/AYNCBFINBQsgA0EYaiACENARIAMtABhBBEcEQCADKQMYIgZC/wGDQgRSDQYLIANBGGogASACEMQNIAMtABhBBEcEQCADKQMYIgZC/wGDQgRSDQcLAkACQCAERQ0AIANBGGogAiAEENQcIAMtABhBBEYNACADKQMYIgZC/wGDQgRSDQELIABBBDoAAAwICyAAIAY3AgAMBwsgACAGNwIADAYLIAAgBjcCAAwFCyAAIAY3AgAMBAsgACAGNwIADAMLIAAgBjcCAAwCCyAAIAY3AgAMAQsgACAGNwIACyADQSBqJAALjAQCCH8BfiMAQSBrIgQkACAAKAIIQQxsIQUgACgCBCEAA0ACQCAFBEAgACgCAARAIAAgARCCLQwCCwJAAkACQAJAAkACQEEEIAAoAgQiAigCAEEFayIDIANBBk8bQQFrDgUAAQIDBAULIAJBCGogARCbIiACQShqIAEQgi0MBAsgAkEoaiABEIItDAMLIAJBCGogARCbIiACQShqIAEQ7yMMAgsgAiABEJsiIAJBIGogARDuIyACQegAaiABEJAtIAJByABqIAEQ7yMMAQsgAkEIaiABEJsiIAIoAiggARCrEgsgASgCAEUNASACKAIAQQVHDQEgASACQQhqIgMQlAoiBkUNASAEQQhqIAMQ2RUgBCkDCCEKIAQoAhQhByAEKAIQIQgCQAJAAkACQAJAAkACQEEEIAIoAgBBBWsiCSAJQQZPGw4FAQIDBAUACyADENsWIAIoAigQhx0MBQsgAykDABD5GgwECyADENsWIAJBKGoQlikMAwsgAikDEBD5GiACQShqEJYpDAILIAMQ2xYgAkHIAGoQ2ScgAkEoahD7JAwBCyACENsWIAJBIGoQ4yUgAkHoAGoQ5CUgAkHIAGoQ+yQLIAIgBjYCKCACIAc2AhwgAiAINgIYIAIgCjcDECACQQA2AgggAkEGNgIADAELIARBIGokAA8LIABBDGohACAFQQxrIQUMAAsAC54EAQF/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCACIAKAIADhMSEgECAwQFBgcICQoLDA0ODxARAAsgAEEIahDOHgwRCyAAKAIEQYCAgIB4RgRAIABBCGoQ8CYgACgCIBDCHiAAQRRqEJwlDBELIABBBGoQ8CYgACgCHBDCHiAAQRBqEJwlDBALIABBEGoQgh0gACgCKBDZKAwPCyAAQRBqIQECQCAALQBEQQRGBEAgARCCHQwBCyABEM4eCyAAKAJQENkoDA4LIABBBGoQ8SYMDQsgAEEEahCdBQwMCyAAQQRqEL8ZIAAoAgQgAEEIaigCABCRKgwLCyAAQQRqEJ0FDAoLIABBBGoQnQUMCQsgAEEIahDyJgwICyAAQQRqEJ0FIABBCGoQnQUgAEEMahCdBSAAQRBqEJ0FDAcLIABBEGoQkiEMBgsgAEEEahCdBQwFCyAAQQRqEJ0FDAQLIABBBGoQnQUgAEEIahCdBQwDCyAAQRBqEJIhIABBQGsQpycgAEHEAGoQpycMAgsCQAJAAkACQEEEIAAoAghBgICAgHhzIgEgAUEETxsOBAECBQMACyAAQQhqEPImIABBFGoQ+yIMBAsgAEEgahCdJQwDCyAAQRBqEPMoDAILIABBEGoQzx4MAQsgAC0AHEECRwRAIABBCGoQyxkLIABBKGoQpicLIABB2ABBCBDVEQueBAEBfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAiACgCAA4TEhIBAgMEBQYHCAkKCwwNDg8QEQALIABBCGoQzh4MEQsgACgCBEGAgICAeEYEQCAAQQhqEPAmIAAoAiAQwh4gAEEUahClJQwRCyAAQQRqEPAmIAAoAhwQwh4gAEEQahClJQwQCyAAQRBqEIIdIAAoAigQ2SgMDwsgAEEQaiEBAkAgAC0AREEERgRAIAEQgh0MAQsgARDOHgsgACgCUBDZKAwOCyAAQQRqEPEmDA0LIABBBGoQngUMDAsgAEEEahC/GSAAKAIEIABBCGooAgAQkSoMCwsgAEEEahCeBQwKCyAAQQRqEJ4FDAkLIABBCGoQ8iYMCAsgAEEEahCeBSAAQQhqEJ4FIABBDGoQngUgAEEQahCeBQwHCyAAQRBqEJYhDAYLIABBBGoQngUMBQsgAEEEahCeBQwECyAAQQRqEJ4FIABBCGoQngUMAwsgAEEQahCWISAAQUBrELEnIABBxABqELEnDAILAkACQAJAAkBBBCAAKAIIQYCAgIB4cyIBIAFBBE8bDgQBAgUDAAsgAEEIahDyJiAAQRRqEPsiDAQLIABBIGoQnSUMAwsgAEEQahDzKAwCCyAAQRBqEM8eDAELIAAtABxBAkcEQCAAQQhqEMsZCyAAQShqEK8nCyAAQdgAQQgQ1REL+AMCAX8BfiMAQRBrIgMkAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAigCAEEBaw4GAQIDBAUGAAsgA0EIaiABIAJBCGoQpQggAy0ACEEERg0GIAMpAwgiBEL/AYNCBFENBiAAIAQ3AgAMCQsgA0EIaiABIAJBBGoQrQIgAy0ACEEERg0FIAMpAwgiBEL/AYNCBFENBSAAIAQ3AgAMCAsgA0EIaiABIAJBBGoQkwYgAy0ACEEERg0EIAMpAwgiBEL/AYNCBFENBCAAIAQ3AgAMBwsgA0EIaiABIAJBBGoQpQEgAy0ACEEERg0DIAMpAwgiBEL/AYNCBFENAyAAIAQ3AgAMBgsgA0EIaiABIAJBBGoQmgUgAy0ACEEERg0CIAMpAwgiBEL/AYNCBFENAiAAIAQ3AgAMBQsgA0EIaiACKAIEIAIoAgggARDfDSADLQAIQQRGDQEgAykDCCIEQv8Bg0IEUQ0BIAAgBDcCAAwECyADQQhqIAJBBGogARDCKiADLQAIQQRGDQAgAykDCCIEQv8Bg0IEUg0BCwJAIAEoAkRFDQAgAyACEJAMIANBCGogASADKAIEQQEQ7AIgAy0ACEEERg0AIAMpAwgiBEL/AYNCBFINAgsgAEEEOgAADAILIAAgBDcCAAwBCyAAIAQ3AgALIANBEGokAAuUBAEPfyMAQTBrIgIkACABQewDaiENIAFBvANqIQ4gAUGkA2ohCyABKAKoAyEEIAEoAqwDIgwhAwNAIAUgDCAFIAxLGyEGIAEoAqADIQgCQAJAAkADQCAFIAZGBEAgAEEDNgIADAILIAJBIGoiCSAFEOMcIAIoAiBBAUYNAyAFQQFqIQUgAigCJCIHQQJJDQAgBCADIAdBhJLAABC4HygCECAIKAIATw0ACyAJIAEoAsQDEOMcIAIoAiBFBEAgAigCJCEKIA4gAS0A6wVBAWoiBBDcHiAEIAEoAsQDIgNqIQYgASgCwAMiCCADQQJ0aiEDA0AgA0EBNgIAIANBBGohAyAEQQFrIgQNAAsgASAGNgLEAyACQRBqIAsgB0EAIAIQvRUgASgCuAMhCSABKAK0AyEPIAIoAhQhAyACKAIQIQQDQCAEQQFHDQMgDyAJIANBlJLAABC5HyIEKAABIRAgCCAGIAogDSAELQAAai0AAGpBpJLAABC3HyAQNgIAIAJBCGogCyAHQQEgAxC9FSACKAIMIQMgAigCCCEEDAALAAsgACACKQMoNwMQIABC/v///wc3AwggACAKNgIEIABBADYCAAsgAkEwaiQADwsgASgCqAMiBCABKAKsAyIDIAdBtJLAABC4HyAKNgIEDAELCyACIAIpAyg3AxhBnOvgAEErIAJBGGpBrIfAAEH0kcAAEMUOAAuOAwEHfyABIAJqIQUgASEEAkADQCAGIQcgBSAEIgJGBEAgBSEEQQAhBwwCCwJ/IAIsAAAiBkEATgRAIAZB/wFxIQMgAkEBagwBCyACLQABQT9xIQMgBkEfcSEEIAZBX00EQCAEQQZ0IANyIQMgAkECagwBCyACLQACQT9xIANBBnRyIQMgBkFwSQRAIAMgBEEMdHIhAyACQQNqDAELIARBEnRBgIDwAHEgAi0AA0E/cSADQQZ0cnIhAyACQQRqCyIEIAcgAmtqIQYgAxCKDA0ACyAFIAJrIAdqIARqIAVrIQgLAkADQCAEIAUiA0YNASADQQFrIgUsAAAiAkEASAR/IAJBP3ECfyADQQJrIgUtAAAiAsAiCUFATgRAIAJBH3EMAQsgCUE/cQJ/IANBA2siBS0AACICwCIJQUBOBEAgAkEPcQwBCyAJQT9xIANBBGsiBS0AAEEHcUEGdHILQQZ0cgtBBnRyBSACCxCKDA0ACyADIARrIAZqIQgLIAAgCCAHazYCBCAAIAEgB2o2AgALxgMCDX8BfiADIAVBAWsiDSABKAIUIghqIgdLBEAgBSABKAIQIg5rIQ8gASgCHCELIAEoAgghCiABKQMAIRQDQAJAIAECfwJAIBQgAiAHajEAAIhCAYNQBEAgASAFIAhqIgg2AhQgBg0DDAELIAogCiALIAogC0sbIAYbIgkgBSAFIAlJGyEMIAIgCGohECAJIQcCQAJAAkADQCAHIAxGBEBBACALIAYbIQwgCiEHA0AgByAMTQRAIAEgBSAIaiICNgIUIAZFBEAgAUEANgIcCyAAIAI2AgggACAINgIEIABBATYCAA8LIAdBAWsiByAFTw0FIAcgCGoiCSADTw0DIAQgB2otAAAgAiAJai0AAEYNAAsgASAIIA5qIgg2AhQgDyAGRQ0GGgwHCyAHIAhqIhEgA08NAiAHIBBqIRIgBCAHaiAHQQFqIQctAAAgEi0AAEYNAAsgESAKa0EBaiEIIAZFDQMMBQsgCSADQezq4AAQrBAACyADIAggCWoiACAAIANJGyADQfzq4AAQrBAACyAHIAVB3OrgABCsEAALQQALIgc2AhwgByELCyAIIA1qIgcgA0kNAAsLIAEgAzYCFCAAQQA2AgALpwQCA38CfiMAQUBqIgIkACACIAE2AhAgAiAAKAIIIgM2AhQCQAJAIAEgA0YEQCACIAAoAhQiAzYCHCACIAE2AhggASADRw0BIAIgACgCICIDNgIkIAIgATYCICABIANHDQIgAQR/IAAoAgQgAUEDdGpBBGsoAgAFQQALIQQgASEDIAEgACgCAEYEQCAAEOoWIAAoAhQhAwsgACABQQFqNgIIIAAoAgQgAUEDdGoiASAENgIEIAEgBDYCACACEKITIAIpAwghBSACKQMAIQYgACgCDCADRgRAIwBBEGsiASQAIAFBCGogAEEMaiIEIAQoAgBBAUEIQSAQzgggASgCCCIEQYGAgIB4RwRAIAQgASgCDBDhKQALIAFBEGokAAsgACADQQFqNgIUIAAoAhAgA0EFdGoiAUHAoOMAKQMANwMAIAEgBTcDGCABIAY3AxAgAUEIakHIoOMAKQMANwMAQQgQ6SAiA0EANgIAIAAoAiAiASAAKAIYRgRAIABBGGoQ7hYLIAAgAUEBajYCICAAKAIcIAFBDGxqIgFBATYCCCABIAM2AgQgAUEBNgIAIAAgACgCJEEIajYCJCACQUBrJAAPCyACQQA2AihBACACQRBqIAJBFGogAkEoakHEm8MAENYaAAsgAkEANgIoQQAgAkEYaiACQRxqIAJBKGpB1JvDABDWGgALIAJBADYCKEEAIAJBIGogAkEkaiACQShqQeSbwwAQ1hoAC48EAQd/IwBBEGsiBCQAIABBxABqIQYgACgCRCECIAAoAkgiA0EgaiEHA0ACQEEAIQAgAkUNAANAIARBCGogARDHByACIAcoAgAgBCgCCBC8CiIADQECQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByABKAIAIghBDGsiBSAFQSZPGyIFQQZrDggAAQIDAAQNCQULIAFBBGohAAwKCyACIAEoAjAgAygCFBECAEUNBEEBIQAMCwsgAUEoaiEADAgLIAIgA0EgaigCACABKAIgELwKIQAMCQsgAUEQaiEAQQEgAS0AGEEDayIBIAFB/wFxQQNPG0H/AXFBAWsOAgMGAgsgBUEkRg0EDAcLIAhBC0cEQEEAIQACQAJAAkAgASgCAA4DAAECCgsgBkGgBSABKAIQELwKIQAMCQsgASgCKCEBDAkLIAZBoAUgASgCIBC8CiEADAcLQQAhAAJAAkAgASgCBEEBaw4CAQgACyACIANBIGooAgAgASgCFBC8CiEADAcLIAIgA0EgaigCACABKAIUELwKIQAMBgsgAiADQSBqKAIAIAAoAgAQvAohAAwFCyACIANBIGooAgAgACgCABC8CiEADAQLIAEoAgxFDQMgASgCCCEADAELIAEoAgQiACgCAEEDRwRAIABBIGohAAwBCyAAQRBqIQALIAAoAgAhAQwACwALCyAEQRBqJAAgAAvcAwELfyAAKAIYIABBJGooAgAgACgCACAAQQxqKAIAEM8dIQMgAEHIAEEwIAAoAkggAEHUAGooAgAgACgCMCAAQTxqKAIAEM8dQf8BcUH/AUYiBBtqIQIgAEEwQcgAIAQbaiIEIAAgA0H/AXEiBUH/AUdBGGxqIgMgAiACKAIAIAJBDGooAgAgACAFQf8BRkEYbGoiACgCACAAQQxqKAIAEM8dQf8BcUH/AUYiBxsgBCgCACAEQQxqKAIAIAMoAgAgA0EMaigCABDPHUH/AXFB/wFGIggbIgUoAgAhCSAAIAIgAyAIGyAHGyIGKAIAIQogBUEMaigCACELIAZBDGooAgAhDCABQRBqIAIgACAHGyIAQRBqKQIANwIAIAFBCGogAEEIaikCADcCACABIAApAgA3AgAgASAFIAYgCSALIAogDBDPHUH/AXFB/wFGIgIbIgApAgA3AhggAUEoaiAAQRBqKQIANwIAIAFBIGogAEEIaikCADcCACABQUBrIAYgBSACGyIAQRBqKQIANwIAIAFBOGogAEEIaikCADcCACABIAApAgA3AjAgASADIAQgCBsiACkCADcCSCABQdAAaiAAQQhqKQIANwIAIAFB2ABqIABBEGopAgA3AgALsgMBDH8jAEEQayIFJAACQCABKAIQIgQgASgCDCICSQ0A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IAMgBDYCACABQQE2AhAgASADNgIMIAFBATYCCANAIAEgAUEIahDuFQJAAkACQAJAAkAgASgCACICQQxHBEAgASABKAIEIgA2AhggASACNgIUIAJBCGsOBAECAwQFCyABQQhqENkmDAYLIAAoAiQhABCDFyECIAAoAgQhAyAAIAI2AgQgACgCACECIABBADYCACABQQhqIAIgAxDdGAwDCyAAKAIsIQAQgxchAiAAKAIEIQMgACACNgIEIAAoAgAhAiAAQQA2AgAgAUEIaiACIAMQ3RgMAgsgACgCCCECIABBADYCCCABQQA2AiwgASAANgIkIAEgAjYCKCABIAAoAgQiADYCHCABIAAgAkEDdGo2AiAgAUEIaiABQRxqEM4JDAELIAAoAgghAiAAQQA2AgggAUEANgIsIAEgADYCJCABIAI2AiggASAAKAIEIgA2AhwgASAAIAJBA3RqNgIgIAFBCGogAUEcahDOCQsgAUEUahDqBwwACwALIAFBMGokAAvZAwICfwN+IwBBgAJrIgQkAAJAIAIoAgBFBEAgAi0ARUEDRw0BC0Hl7OAAQShBsLzfABD0FwALIARBGGogAkEQaikDADcDACAEQSBqIAJBGGopAwAiBjcDACAEIAIpAwgiBzcDECACKQNIIQggBCAHIAanEMAjIARBKGoiBSAEKQMAIAQoAgggAkEgahDMBCAEQUBrIARBEGoiAkEAQQAgAUEQaiABKQMQUCIBG0EAIAMbIAEbEOwFQcAAQQgQqyAgBEHQAGoiAyACENYbIARBkAFqIgIgAxCFFiACQcAAEPsGIQEgBEEBNgJYIAQgATYCVCAEQQE2AlAgAiADIAUQowpBEEEEEKsgIgFBCGogBEHIAGopAgA3AgAgASAEKQJANwIAIARBATYCXCAEIAE2AlggBEEBNgJUIAIQ1xUhASAEQfQAakIANwIAIARCADcCbCAEQQU6AGggBCABNgJgIARBFzYCUCAEQgA3AvABIARBAzoA7AEgBEEANgLoASAEQgA3AvgBIARCADcC4AEgBEKAgICAwAA3AtgBIARB5AFqENIlIARB2AFqEOYmIAMQ3CghASAAIAg3AwggACABNgIEIABBEjYCACAEKQMQEPkaIARBgAJqJAALvAMCDX8BfiAFQQFrIQwgBSABKAIQIg1rIQ4gASgCHCEHIAEoAggh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IAMoAmQh7wQgAygCYCHrBCADQc0BakGCBDsAACADQYKEiBA2AMkBIANBCjoAzwEgA0EBOgDIASADQvoBNwLQASADQQM6AMYBIANCgoSIkKDAgIECNwG+ASADQQA6ALwBIANBAzoAuAEgA0ECNgKkASADQQI2ApwBIANBAjYClAEgA0ECNgKMASADQQA2AoQBIAMgBjYCsAQgAyAjNgKsBCADIBg2AqgEIAMgEjoAtAQgEkEDRgRAIANBqARqEMskQQMhEgsgA0HJAWoh3wEgAygCkAEhCCADKAKYASEQIAMoAqABIeMBIAMoAqgBIeABIAMtAL0BIQsgAygCiAEhBSADQawBaiLzBBDLJCADIEA6ANQBIAMgDjoAxgEgAyAPOgDFASADIN0BOgDEASADIB46AMMBIAMgBDoAwgEgAyAJOgDBASADIBk6AMABIANBgQI7Ab4BIAMgEjoAuAEgAyAGNgK0ASADICM2ArABIAMgGDYCrAEgAyA2NgKEASADIN4BIAUgNhs2AogBIAMgBzoAvAEgAyBEIAsgB0EBcRs6AL0BIAMgEzYCpAEgAyDgASAMIBNBAkYbNgKoASADIBY2ApwBIAMg4wEgHSAWQQJGGzYCoAEgAyA3NgKUASADIBAgRSA3QQJGGzYCmAEgAyAXNgKMASADIAggCiAXQQJGGzYCkAEgAyAiOgDVASADIBE2AtABIANBAkEAIBVBAXEbOgDNASADQQFBAiAgQQFxGzoAzgEgA0EBQQIgJkEBcRs6AMoBIANBAUECICtBAXEbOgDJASADICE6AM8BIANBAUECIENBAXEbOgDLASADQQFBAiANQQFxGzoAzAEgA0EBOgDIASADIO8ENgLcASADIOsEQQhqNgLYASADQQA2AugBIANCgICAgMAANwLgASADQQA2AvQBIANCgICAgMAANwLsASADQoCAgIAQNwLICiADIANB4AFqIkM2AsQKIAMgA0HYAWo2AsAKIANB1ARqIS4gA0HYBGohQCADQbQEaiE2IANBsARqITogA0HsBGohJiADQaADaiE3IANBmAJqISsgA0GIAmohIQNAIANB2ABqIANBwApqELYPIAMoAlwiBUUEQCADQoCAgIAQNwLAAyADIEM2ArwDIANBADYC2AMgA0IANwLQAyADIAMoAuQBIgU2AsgDIAMgBSADKALoAUEDdGo2AswDIAMgA0HYAWo2ArgDIANBrARqISEgA0GMAmohHSADQbwEaiERIANBsARqIQwgA0G0CmohBCADQaADaiEJIANBiANqIQogA0H8AWohHgNAIANBMGogA0G4A2oQtg8gA0HkAmohBQJ/QQAgAygCNCIGRQ0AGkEAIAMoAsgDIgsgAygCzANGDQAaIAMoAjAhDSADIAY2AuQCIAMgC0EIajYCyAMgA0HgAmohBSALCyEGIAUgBjYCACADKALkAiIFRQRAQQMhCyADLQDAASEbIAMtAL8BIRwgAy0AvgEhKCADKAL0ASEYIAMoAvABIQUgAy0AuAEiB0EDRwRAIAdBAkcEQCADKAKsASLeASDeASgCACINQQFqNgIAIA1BAEgNBiADKAKwASHjASADKAK0ASHgAQsgByELCyADLQC9ASEuIAMtALwBITIgAy0AxQEhOCADLQDEASE6IAMtAMMBIRMgAygCqAEhFiADKAKkASE2IAMoAqABITcgAygCnAEhFyADLQDCASHfASADLQDBASEZIAMoAogBISIgAygChAEhFSADKAKYASFAIAMoApQBISAgAygCkAEhQyADKAKMASEmIAMtAMYBISsgA0EIaiAYQQQQwRRBACENIANBADYCsAQgAyADKAIMIuwENgKsBCADIAMoAggi6AQ2AqgEAkACQCAYIOgESwRAIANBqARqQQAgGEEEQQQQmxcgAygCsAQhDSADKAKsBCHsBAwBCyAYRQ0BCyANIBhqIOwEIA1BAnRqIRIDQCASIAU2AgAgBUEcaiEFIBJBBGohEiAYQQFrIhgNAAsgAygCrAQh7AQgAygCqAQh6AQhDQtBACEYIANBADYCpAQgA0KAgICAwAA3ApwEIA1BAnQhB0EEISNBACEGA0AgByAYRgRAIAMgAygCoAQiBTYCsARBACESIANBADYCqAQgAyAFIAZBAnRqNgK0BCADQagEahCeEyEHIANBqARqEJ4TIgUEfyAFKAIAKAIAIgUoAhQh3QEgBSgCEAVBAAshOyADKAKoBCEYIAMoArQEISEgAygCsAQhCCADKAKsBCEQQQEhBkEBISNBf0EAIAcbIuQBIeUBQQAhQUEAIR5BACEpA0BBACEHA0AgHiEOA0AgByEeAn8CQAJAAkAgGEEBcUUEQCAIICFGDQIgCCIFQQRqIQgMAQsgECIF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VyACQa8Pai0AACFYIAJBtw9qLQAAIVkgAkG/D2otAAAhWiACQccPai0AACFbIAJBzw9qLQAAIVwgAkHXD2otAAAhXSACQd8Pai0AACFeIAJB5w9qLQAAIV8gAkHvD2otAAAhYCACQfcPai0AACFhIAJB/w9qLQAAIWIgAkGHEGotAAAhYyACQY8Qai0AACFkIAJBlxBqLQAAIWUgAkGfEGotAAAhZiACQacQai0AACFnIAJBrxBqLQAAIWggAkG3EGotAAAhaSACQb8Qai0AACFqIAJBxxBqLQAAIWsgAkHPEGotAAAhbCACQdcQai0AACFtIAJB3xBqLQAAIW4gAkHnEGotAAAhbyACQe8Qai0AACFwIAJB9xBqLQAAIXEgAkH/EGotAAAhciACQYcRai0AACFzIAJBjxFqLQAAIXQgAkGXEWotAAAhdSACQZ8Rai0AACF2IAJBpxFqLQAAIXcgAkGvEWotAAAheCACQbcRai0AACF5IAJBvxFqLQAAIXogAkHHEWotAAAheyACQc8Rai0AACF8IAJB1xFqLQAAIX0gAkHfEWotAAAhfiACQecRai0AACF/IAItAOQRIbwCIAIoAuARIb0CIAItANwRIb4CIAIoAtgRIb8CIAItANQRIcACIAIoAtARIcECIAItAMwRIcICIAIoAsgRIcMCIAItAMQRIcQCIAIoAsARIcUCIAItALwRIcYCIAIoArgRIccCIAItALQRIcgCIAIoArARIckCIAItAKwRIcoCIAIoAqgRIcsCIAItAKQRIcwCIAIoAqARIc0CIAItAJwRIc4CIAIoApgRIc8CIAItAJQRIdACIAIoApARIdECIAItAIwRIdICIAIoAogRIdMCIAItAIQRIdQCIAIoAoARIdUCIAItAPwQIdYCIAIoAvgQIdcCIAItAPQQIdgCIAIoAvAQIdkCIAItAOwQIdoCIAIoAugQIdsCIAItAOQQIdwCIAIoAuAQId0CIAItANwQId4CIAIoAtgQId8CIAItANQQIeACIAIoAtAQIeECIAItAMwQIeICIAIoAsgQIeMCIAItAMQQIeQCIAIoAsAQIeUCIAItALwQIeYCIAIoArgQIecCIAItALQQIegCIAIoArAQIekCIAItAKwQIeoCIAIoAqgQIesCIAItAKQQIewCIAIoAqAQIe0CIAItAJwQIe4CIAIoApgQIe8CIAItAJQQIfACIAIoApAQIfECIAItAIwQIfICIAIoAogQIfMCIAItAIQQIfQCIAIoAoAQIfUCIAItAPwPIfYCIAIoAvgPIfcCIAItAPQPIfgCIAIoAvAPIfkCIAItAOwPIfoCIAIoAugPIfsCIAItAOQPIfwCIAIoAuAPIf0CIAItANwPIf4CIAIoAtgPIf8CIAItANQPIYADIAIoAtAPIYEDIAItAMwPIYIDIAIoAsgPIYMDIAItAMQPIYQDIAIoAsAPIYUDIAItALwPIYYDIAIoArgPIYcDIAItALQPIYgDIAIoArAPIYkDIAItAKwPIYoDIAIoAqgPIYsDIAItAKQPIYwDIAIoAqAPIY0DIAItAJwPIY4DIAIoApgPIY8DIAItAJQPIZADIAIoApAPIZEDIAItAIwPIZIDIAIoAogPIZMDIAItAIQPIZQDIAIoAoAPIZUDIAItAPwOIZYDIAIoAvgOIZcDIAItAPQOIZgDIAIoAvAOIZkDIAItAOwOIZoDIAIoAugOIZsDIAItAOQOIZwDIAIoAuAOIZ0DIAItANwOIZ4DIAIoAtgOIZ8DIAItANQOIaADIAIoAtAOIaEDIAItAMwOIaIDIAIoAsgOIaMDIAItAMQOIaQDIAIoAsAOIaUDIAItALwOIaYDIAIoArgOIacDIAItALQOIagDIAIoArAOIakDIAItAKwOIaoDIAIoAqgOIasDIAItAKQOIawDIAIoAqAOIa0DIAItAJwOIa4DIAIoApgOIa8DIAItAJQOIbADIAIoApAOIbEDIAItAIwOIbIDIAIoAogOIbMDIAItAIQOIbQDIAIoAoAOIbUDIAItAPwNIbYDIAIoAvgNIbcDIAItAPQNIbgDIAIoAvANIbkDIAItAOwNIboDIAIoAugNIbsDIAItAOQNIbwDIAIoAuANIb0DIAItANwNIb4DIAIoAtgNIb8DIAItANQNIcADIAIoAtANIcEDIAItAMwNIcIDIAIoAsgNIcMDIAItAMQNIcQDIAIoAsANIcUDIAItALwNIcYDIAIoArgNIccDIAItALQNIcgDIAIoArANIckDIAItAKwNIcoDIAIoAqgNIcsDIAItAKQNIcwDIAIoAqANIc0DIAItAJwNIc4DIAIoApgNIc8DIAItAJQNIdADIAIoApANIdEDIAItAIwNIdIDIAIoAogNIdMDIAItAIQNIdQDIAIoAoANIdUDIAItAPwMIdYDIAIoAvgMIdcDIAItAPQMIdgDIAIoAvAMIdkDIAItAOwMIdoDIAIoAugMIdsDIAIvAO0MIAIvAPUMIAIvAP0MIAIvAIUNIAIvAI0NIAIvAJUNIAIvAJ0NIAIvAKUNIAIvAK0NIAIvALUNIAIvAL0NIAIvAMUNIAIvAM0NIAIvANUNIAIvAN0NIAIvAOUNIAIvAO0NIAIvAPUNIAIvAP0NIAIvAIUOIAIvAI0OIAIvAJUOIAIvAJ0OIAIvAKUOIAIvAK0OIAIvALUOIAIvAL0OIAIvAMUOIAIvAM0OIAIvANUOIAIvAN0OIAIvAOUOIAIvAO0OIAIvAPUOIAIvAP0OIAIvAIUPIAIvAI0PIAIvAJUPIAIvAJ0PIAIvAKUPIAIvAK0PIAIvALUPIAIvAL0PIAIvAMUPIAIvAM0PIAIvANUPIAIvAN0PIAIvAOUPIAIvAO0PIAIvAPUPIAIvAP0PIAIvAIUQIAIvAI0QIAIvAJUQIAIvAJ0QIAIvAKUQIAIvAK0QIAIvALUQIAIvAL0QIAIvAMUQIAIvAM0QIAIvANUQIAIvAN0QIAIvAOUQIAIvAO0QIAIvAPUQIAIvAP0QIAIvAIURIAIvAI0RIAIvAJURIAIvAJ0RIAIvAKURIAIvAK0RIAIvALURIAIvAL0RIAIvAMURIAIvAM0RIAIvANURIAIvAN0RIAIvAOURIPIEEN4YIAJBjwdqLQAAIfAEIAJBlwdqLQAAIfEEIAJBnwdqLQAAIUIgAkGnB2otAAAh5wEgAkGvB2otAAAhMSACQbcHai0AACGFAiACQb8Hai0AACHuBCACQccHai0AACESIAJBzwdqLQAAISMgAkHXB2otAAAhLCACQd8Hai0AACEtIAJB5wdqLQAAIS8gAkHvB2otAAAhMyACQfcHai0AACE7IAJB/wdqLQAAIUEgAkGHCGotAAAhPCACQY8Iai0AACFEIAJBlwhqLQAAIUUgAkGfCGotAAAhzwEgAkGnCGotAAAh0AEgAkGvCGotAAAh0QEgAkG3CGotAAAh0gEgAkG/CGotAAAh0wEgAkHHCGotAAAh1AEgAkHPCGotAAAh1QEgAkHXCGotAAAh1gEgAkHfCGotAAAh1wEgAkHnCGotAAAh2AEgAkHvCGotAAAh2QEgAkH3CGotAAAh2gEgAkH/CGotAAAh2wEgAkGHCWotAAAh3QEgAkGPCWotAAAh3gEgAkGXCWotAAAh4QEgAkGfCWotAAAh4wEgAkGnCWotAAAh4AEgAkGvCWotAAAh5AEgAkG3CWotAAAh5QEgAkG/CWotAAAh6AEgAkHHCWotAAAh6QEgAkHPCWotAAAh6gEgAkHXCWotAAAh6wEgAkHfCWotAAAh7AEgAkHnCWotAAAh7QEgAkHvCWotAAAh7gEgAkH3CWotAAAh7wEgAkH/CWotAAAh8AEgAkGHCmotAAAh8QEgAkGPCmotAAAh8gEgAkGXCmotAAAh8wEgAkGfCmotAAAh9AEgAkGnCmotAAAh9QEgAkGvCmotAAAh9gEgAkG3CmotAAAh9wEgAkG/CmotAAAh+AEgAkHHCmotAAAh+QEgAkHPCmotAAAh+gEgAkHXCmotAAAh+wEgAkHfCmotAAAh/AEgAkHnCmotAAAh/QEgAkHvCmotAAAh/gEgAkH3CmotAAAh/wEgAkH/CmotAAAhgAIgAkGHC2otAAAhMCACQY8Lai0AACGCAiACQZcLai0AACGGAiACQZ8Lai0AACGHAiACQacLai0AACGIAiACQa8Lai0AACGJAiACQbcLai0AACGKAiACQb8Lai0AACGLAiACQccLai0AACGMAiACQc8Lai0AACGNAiACQdcLai0AACGOAiACQd8Lai0AACGPAiACLQDcCyHcAyACKALYCyHdAyACLQDUCyHeAyACKALQCyHfAyACLQDMCyHgAyACKALICyHhAyACLQDECyHiAyACKALACyHjAyACLQC8CyHkAyACKAK4CyHlAyACLQC0CyHmAyACKAKwCyHnAyACLQCsCyHoAyACKAKoCyHpAyACLQCkCyHqAyACKAKgCyHrAyACLQCcCyHsAyACKAKYCyHtAyACLQCUCyHuAyACKAKQCyHvAyACLQCMCyHwAyACKAKICyHxAyACLQCECyHyAyACKAKACyHzAyACLQD8CiH0AyACKAL4CiH1AyACLQD0CiH2AyACKALwCiH3AyACLQDsCiH4AyACKALoCiH5AyACLQDkCiH6AyACKALgCiH7AyACLQDcCiH8AyACKALYCiH9AyACLQDUCiH+AyACKALQCiH/AyACLQDMCiGABCACKALICiGBBCACLQDECiGCBCACKALACiGDBCACLQC8CiGEBCACKAK4CiGFBCACLQC0CiGGBCACKAKwCiGHBCACLQCsCiGIBCACKAKoCiGJBCACLQCkCiGKBCACKAKgCiGLBCACLQCcCiGMBCACKAKYCiGNBCACLQCUCiGOBCACKAKQCiGPBCACLQCMCiGQBCACKAKICiGRBCACLQCECiGSBCACKAKACiGTBCACLQD8CSGUBCACKAL4CSGVBCACLQD0CSGWBCACKALwCSGXBCACLQDsCSGYBCACKALoCSGZBCACLQDkCSGaBCACKALgCSGbBCACLQDcCSGcBCACKALYCSGdBCACLQDUCSGeBCACKALQCSGfBCACLQDMCSGgBCACKALICSGhBCACLQDECSGiBCACKALACSGjBCACLQC8CSGkBCACKAK4CSGlBCACLQC0CSGmBCACKAKwCSGnBCACLQCsCSGoBCACKAKoCSGpBCACLQCkCSGqBCACKAKgCSGrBCACLQCcCSGsBCACKAKYCSGtBCACLQCUCSGuBCACKAKQCSGvBCACLQCMCSGwBCACKAKICSGxBCACLQCECSGyBCACKAKACSGzBCACLQD8CCG0BCACKAL4CCG1BCACLQD0CCG2BCACKALwCCG3BCACLQDsCCG4BCACKALoCCG5BCACLQDkCCG6BCACKALgCCG7BCACLQDcCCG8BCACKALYCCG9BCACLQDUCCG+BCACKALQCCG/BCACLQDMCCHABCACKALICCHBBCACLQDECCHCBCACKALACCHDBCACLQC8CCHEBCACKAK4CCHFBCACLQC0CCHGBCACKAKwCCHHBCACLQCsCCHIBCACKAKoCCHJBCACLQCkCCHKBCACKAKgCCHLBCACLQCcCCHMBCACKAKYCCHNBCACLQCUCCHOBCACKAKQCCHPBCACLQCMCCHQBCACKAKICCHRBCACLQCECCHSBCACKAKACCHTBCACLQD8ByHUBCACKAL4ByHVBCACLQD0ByHWBCACKALwByHXBCACLQDsByHYBCACKALoByHZBCACLQDkByHaBCACKALgByHbBCACLQDcByHcBCACKALYByHdBCACLQDUByHeBCACKALQByHfBCACLQDMByHgBCACKALIByHhBCACLQDEByHiBCACKALAByHjBCACLQC8ByHkBCACKAK4ByHlBCACLQC0ByHmBCACKAKwByHnBCACLQCsByHpBCACKAKoByHqBCACLQCkByFGIAIoAqAHITkgAi0AnAch4gEgAigCmAchPyACLQCUByEQIAIoApAHISogAi0AjAchPiACKAKIByEKIAIoAoQHIeYBIAIoAoAHITUgAigC/AYhHSACKAL4BiE0IAIoAvQGIQcgAigC8AYhJyACKALsBiEMIAIoAugGIQQgAigC5AYhhAIgAigC4AYhPSACKQPYBiGLBSACLwCNByGQAiACLwCVByGRAiACLwCdByGSAiACLwClByGTAiACLwCtByGUAiACLwC1ByGVAiACLwC9ByGWAiACLwDFByGXAiACLwDNByGYAiACLwDVByGZAiACLwDdByGaAiACLwDlByGbAiACLwDtByGcAiACLwD1ByGdAiACLwD9ByGeAiACLwCFCCGfAiACLwCNCCGgAiACLwCVCCGhAiACLwCdCCGiAiACLwClCCGjAiACLwCtCCGkAiACLwC1CCGlAiACLwC9CCGmAiACLwDFCCGnAiACLwDNCCGoAiACLwDVCCGpAiACLwDdCCGqAiACLwDlCCGrAiACLwDtCCGsAiACLwD1CCGtAiACLwD9CCGuAiACLwCFCSGvAiACLwCNCSGwAiACLwCVCSGxAiACLwCdCSGyAiACLwClCSGzAiACLwCtCSG0AiACLwC1CSG1AiACLwC9CSG2AiACLwDFCSG3AiACLwDNCSG4AiACLwDVCSG5AiACLwDdCSG6AiACLwDlCSG7AiACLwDtCSEUIAIvAPUJIRogAi8A/QkhGyACLwCFCiEcIAIvAI0KISggAi8AlQohLiACLwCdCiEyIAIvAKUKITggAi8ArQohOiACLwC1CiETIAIvAL0KIRYgAi8AxQohNiACLwDNCiE3IAIvANUKIRcgAi8A3Qoh3wEgAi8A5QohGSACLwDtCiEiIAIvAPUKIRUgAi8A/QohQCACLwCFCyEgIAIvAI0LIUMgAi8AlQshJiACLwCdCyErIAIvAKULIREgAi8ArQshDyACLwC1CyEJIAIvAL0LIQ4gAi8AxQshCCACLwDNCyELIAIvANULIQYgAi8A3QshBSDyBBDUJCANENMkIH9BEHRyIX8gfkEQdHIhfiB9QRB0ciF9IHxBEHRyIXwge0EQdHIheyB6QRB0ciF6IHlBEHRyIXkg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IAEgfDsA/QkgASB7OwD1CSABIHo7AO0JIAEgeTsA5QkgASB4OwDdCSABIHc7ANUJIAEgdjsAzQkgASB1OwDFCSABIHQ7AL0JIAEgczsAtQkgASByOwCtCSABIHE7AKUJIAEgcDsAnQkgASBvOwCVCSABIG47AI0JIAEgbTsAhQkgASBsOwD9CCABIGs7APUIIAEgajsA7QggASBpOwDlCCABIGg7AN0IIAEgZzsA1QggASBmOwDNCCABIGU7AMUIIAEgZDsAvQggASBjOwC1CCABIGI7AK0IIAEgYTsApQggASBgOwCdCCABIF87AJUIIAEgXjsAjQggASBdOwCFCCABIFw7AP0HIAEgWzsA9QcgASBaOwDtByABIFk7AOUHIAEgWDsA3QcgASBXOwDVByABIFY7AM0HIAEgVTsAxQcgASBUOwC9ByABIFM7ALUHIAEgUjsArQcgASBROwClByABIFA7AJ0HIAEgTzsAlQcgASBOOwCNByABIE07AIUHIAEgTDsA/QYgASBLOwD1BiABIEo7AO0GIAEgSTsA5QYgASBIOwDdBiABIEc7ANUGIAEglgE7AM0GIAEglQE7AMUGIAEglAE7AL0GIAEgkwE7ALUGIAEgkgE7AK0GIAEgkQE7AKUGIAEgkAE7AJ0GIAEgjwE7AJUGIAEgjgE7AI0GIAEgjQE7AIUGIAEgjAE7AP0FIAEgiwE7APUFIAEgigE7AO0FIAEgiQE7AOUFIAEgiAE7AN0FIAEghwE7ANUFIAEghgE7AM0FIAEghQE7AMUFIAEghAE7AL0FIAEggwE7ALUFIAEgggE7AK0FIAEggQE7AKUFIAEggAE7AJ0FIAFBADsAlQUgASDcATsAjQUgASCXATsAhQUgASCYATsA/QQgASCZATsA9QQgASCaATsA7QQgASCbATsA5QQgASCcATsA3QQgASCdATsA1QQgASCeATsAzQQgASCfATsAxQQgASCgATsAvQQgASChATsAtQQgASCiATsArQQgASCjATsApQQgASCkATsAnQQgASClATsAlQQgASCmATsAjQQgASCnATsAhQQgASCoATsA/QMgASCpATsA9QMgASCqATsA7QMgASCrATsA5QMgASCsATsA3QMgASCtATsA1QMgASCuATsAzQMgASCvATsAxQMgASCwATsAvQMgASCxATsAtQMgASCyATsArQMgASCzATsApQMgASC0ATsAnQMgASC1ATsAlQMgASC2ATsAjQMgASC3ATsAhQMgASC4ATsA/QIgASC5ATsA9QIgASC6ATsA7QIgASC7ATsA5QIgASC8ATsA3QIgASC9ATsA1QIgASC+ATsAzQIgASC/ATsAxQIgASDAATsAvQIgASDBATsAtQIgASDCATsArQIgASDDATsApQIgASDEATsAnQIgASDFATsAlQIgASDGATsAjQIgASDHATsAhQIgASDIATsA/QEgASDJATsA9QEgASDKATsA7QEgASDLATsA5QEgASDMATsA3QEgASDNATsA1QEgASDOATsAzQEgASDPATsAxQEgASDbATsAvQEgASDaATsAtQEgASDZATsArQEgASDYATsApQEgASDXATsAnQEgASDWATsAlQEgASDVATsAjQEgASDUATsAhQEgASDTATsAfSABINIBOwB1IAEg0QE7AG0gASDQATsAZSABIIACOwBdIAEgDzsAVSABIA07AE0gASAFOwBFIAFBADoApA0gASCBAjYCoA0gASCFAjYCnA0gASAsNgKYDSABIIYCNgKUDSABIIcCNgKQDSABIIgCNgKMDSABIIkCNgKIDSABIIoCNgKEDSABIIsCNgKADSABIIwCNgL8DCABII0CNgL4DCABII4CNgL0DCABII8CNgLwDCABIJACNgLsDCABIJECNgLoDCABIJICNgLkDCABIJMCNgLgDCABIJQCNgLcDCABIJUCNgLYDCABIJYCNgLUDCABIJcCNgLQDCABIJgCNgLMDCABIJkCNgLIDCABIJoCNgLEDCABIJsCNgLADCABIJwCNgK8DCABIJ0CNgK4DCABIJ4CNgK0DCABIJ8CNgKwDCABIKACNgKsDCABIKECNgKoDCABIKICNgKkDCABIKMCNgKgDCABIKQCNgKcDCABIKUCNgKYDCABIKYCNgKUDCABIKcCNgKQDCABIKgCNgKMDCABIKkCNgKIDCABIKoCNgKEDCABIKsCNgKADCABIKwCNgL8CyABIK0CNgL4CyABIK4CNgL0CyABIK8CNgLwCyABILACNgLsCyABILECNgLoCyABILICNgLkCyABILMCNgLgCyABIBE2AtwLIAEgtAI2AtgLIAEg5wE6ANQLIAEgtQI2AtALIAEgtgI6AMwLIAEgtwI2AsgLIAEguAI6AMQLIAEguQI2AsALIAEgugI6ALwLIAEguwI2ArgLIAEgFDoAtAsgASASNgKwCyABICM6AKwLIAEgGjYCqAsgASAtOgCkCyABIDs2AqALIAEgQToAnAsgASBENgKYCyABIEU6AJQLIAEgPDYCkAsgASDdAToAjAsgASDeATYCiAsgASDjAToAhAsgASDgATYCgAsgASDhAToA/AogASDkATYC+AogASDlAToA9AogASAbNgLwCiABIBw6AOwKIAEgKDYC6AogASAuOgDkCiABIDI2AuAKIAEgODoA3AogASA6NgLYCiABIBM6ANQKIAEgFjYC0AogASA2OgDMCiABIDc2AsgKIAEgFzoAxAogASDfATYCwAogASAZOgC8CiABICI2ArgKIAEgFToAtAogASBANgKwCiABIC86AKwKIAEgIDYCqAogASD/AToApAogASBDNgKgCiABICY6AJwKIAEgKzYCmAogASC8AjoAlAogASC9AjYCkAogASC+AjoAjAogASC/AjYCiAogASDAAjoAhAogASDBAjYCgAogASDCAjoA/AkgASDDAjYC+AkgASDEAjoA9AkgASDFAjYC8AkgASDGAjoA7AkgASDHAjYC6AkgASDIAjoA5AkgASDJAjYC4AkgASDKAjoA3AkgASDLAjYC2AkgASDMAjoA1AkgASDNAjYC0AkgASDOAjoAzAkgASDPAjYCyAkgASDQAjoAxAkgASDRAjYCwAkgASDSAjoAvAkgASDTAjYCuAkgASDUAjoAtAkgASDVAjYCsAkgASDWAjoArAkgASDXAjYCqAkgASDYAjoApAkgASDZAjYCoAkgASDaAjoAnAkgASDbAjYCmAkgASDcAjoAlAkgASDdAjYCkAkgASDeAjoAjAkgASDfAjYCiAkgASDgAjoAhAkgASDhAjYCgAkgASDiAjoA/AggASDjAjYC+AggASDkAjoA9AggASDlAjYC8AggASDmAjoA7AggASDnAjYC6AggASDoAjoA5AggASDpAjYC4AggASDqAjoA3AggASDrAjYC2AggASDsAjoA1AggASDtAjYC0AggASDuAjoAzAggASDvAjYCyAggASDwAjoAxAggASDxAjYCwAggASDyAjoAvAggASDzAjYCuAggASD0AjoAtAggASD1AjYCsAggASD2AjoArAggASD3AjYCqAggASD4AjoApAggASD5AjYCoAggASD6AjoAnAggASD7AjYCmAggASD8AjoAlAggASD9AjYCkAggASD+AjoAjAggASD/AjYCiAggASCAAzoAhAggASCBAzYCgAggASCCAzoA/AcgASCDAzYC+AcgASCEAzoA9AcgASCFAzYC8AcgASCGAzoA7AcgASCHAzYC6AcgASCIAzoA5AcgASCJAzYC4AcgASCKAzoA3AcgASCLAzYC2AcgASCMAzoA1AcgASCNAzYC0AcgASCOAzoAzAcgASCPAzYCyAcgASCQAzoAxAcgASCRAzYCwAcgASCSAzoAvAcgASCTAzYCuAcgASCUAzoAtAcgASCVAzYCsAcgASCWAzoArAcgASCXAzYCqAcgASCYAzoApAcgASCZAzYCoAcgASCaAzoAnAcgASCbAzYCmAcgASCcAzoAlAcgASCdAzYCkAcgASCeAzoAjAcgASCfAzYCiAcgASCgAzoAhAcgASChAzYCgAcgASCiAzoA/AYgASCjAzYC+AYgASCkAzoA9AYgASClAzYC8AYgASCmAzoA7AYgASCnAzYC6AYgASCoAzoA5AYgASCpAzYC4AYgASCqAzoA3AYgASCrAzYC2AYgASCsAzoA1AYgASCtAzYC0AYgASCuAzoAzAYgASCvAzYCyAYgASCwAzoAxAYgASCxAzYCwAYgASCyAzoAvAYgASCzAzYCuAYgASC0AzoAtAYgASC1AzYCsAYgASC2AzoArAYgASC3AzYCqAYgASC4AzoApAYgASC5AzYCoAYgASC6AzoAnAYgASC7AzYCmAYgASC8AzoAlAYgASC9AzYCkAYgASC+AzoAjAYgASC/AzYCiAYgASDAAzoAhAYgASDBAzYCgAYgASDCAzoA/AUgASDDAzYC+AUgASDEAzoA9AUgASDFAzYC8AUgASDGAzoA7AUgASDHAzYC6AUgASDIAzoA5AUgASDJAzYC4AUgASDKAzoA3AUgASDLAzYC2AUgASDMAzoA1AUgASDNAzYC0AUgASDOAzoAzAUgASDPAzYCyAUgASDQAzoAxAUgASDRAzYCwAUgASDSAzoAvAUgASDTAzYCuAUgASDUAzoAtAUgASDVAzYCsAUgASDWAzoArAUgASDXAzYCqAUgASDYAzoApAUgASDZAzYCoAUgASDaAzoAnAUgASDbAzYCmAUgAUEAOgCUBSABIIICNgKQBSABINwDOgCMBSABIN0DNgKIBSABIN4DOgCEBSABIN8DNgKABSABIOADOgD8BCABIOEDNgL4BCABIOIDOgD0BCABIOMDNgLwBCABIOQDOgDsBCABIOUDNgLoBCABIOYDOgDkBCABIOcDNgLgBCABIOgDOgDcBCABIOkDNgLYBCABIOoDOgDUBCABIOsDNgLQBCABIOwDOgDMBCABIO0DNgLIBCABIO4DOgDEBCABIO8DNgLABCABIPADOgC8BCABIPEDNgK4BCABIPIDOgC0BCABIPMDNgKwBCABIPQDOgCsBCABIPUDNgKoBCABIPYDOgCkBCABIPcDNgKgBCABIPgDOgCcBCABIPkDNgKYBCABIPoDOgCUBCABIPsDNgKQBCABIPwDOgCMBCABIP0DNgKIBCABIP4DOgCEBCABIP8DNgKABCABIIAEOgD8AyABIIEENgL4AyABIIIEOgD0AyABIIMENgLwAyABIIQEOgDsAyABIIUENgLoAyABIIYEOgDkAyABIIcENgLgAyABIIgEOgDcAyABIIkENgLYAyABIIoEOgDUAyABIIsENgLQAyABIIwEOgDMAyABII0ENgLIAyABII4EOgDEAyABII8ENgLAAyABIJAEOgC8AyABIJEENgK4AyABIJIEOgC0AyABIJMENgKwAyABIJQEOgCsAyABIJUENgKoAyABIJYEOgCkAyABIJcENgKgAyABIJgEOgCcAyABIJkENgKYAyABIJoEOgCUAyABIJsENgKQAyABIJwEOgCMAyABIJ0ENgKIAyABIJ4EOgCEAyABIJ8ENgKAAyABIKAEOgD8AiABIKEENgL4AiABIKIEOgD0AiABIKMENgLwAiABIKQEOgDsAiABIKUENgLoAiABIKYEOgDkAiABIKcENgLgAiABIKgEOgDcAiABIKkENgLYAiABIKoEOgDUAiABIKsENgLQAiABIKwEOgDMAiABIK0ENgLIAiABIK4EOgDEAiABIK8ENgLAAiABILAEOgC8AiABILEENgK4AiABILIEOgC0AiABILMENgKwAiABILQEOgCsAiABILUENgKoAiABILYEOgCkAiABILcENgKgAiABILgEOgCcAiABILkENgKYAiABILoEOgCUAiABILsENgKQAiABILwEOgCMAiABIL0ENgKIAiABIL4EOgCEAiABIL8ENgKAAiABIMAEOgD8ASABIMEENgL4ASABIMIEOgD0ASABIMMENgLwASABIMQEOgDsASABIMUENgLoASABIMYEOgDkASABIMcENgLgASABIMgEOgDcASABIMkENgLYASABIMoEOgDUASABIMsENgLQASABIMwEOgDMASABIM0ENgLIASABIM4EOgDEASABIM8ENgLAASABINAEOgC8ASABINEENgK4ASABINIEOgC0ASABINMENgKwASABINQEOgCsASABINUENgKoASABINYEOgCkASABINcENgKgASABINgEOgCcASABINkENgKYASABINoEOgCUASABINsENgKQASABINwEOgCMASABIN0ENgKIASABIN4EOgCEASABIN8ENgKAASABIOAEOgB8IAEg4QQ2AnggASDiBDoAdCABIOMENgJwIAEg5AQ6AGwgASDlBDYCaCABIOYEOgBkIAEg5wQ2AmAgASDpBDoAXCABIOoENgJYIAEgRjoAVCABIDk2AlAgASDiAToATCABID82AkggASAQOgBEIAEgKjYCQCABIAo2AjggASDmATYCNCABIDU2AjAgASAdNgIsIAEgNDYCKCABIAc2AiQgASAnNgIgIAEgDDYCHCABIAQ2AhggASCEAjYCFCABID02AhAgASCLBTcDCCABQQE2AgQgAUEBNgIAIAFB1wtqIEJBEHY6AAAgAUHPC2og6QFBEHY6AAAgAUHHC2og6gFBEHY6AAAgAUG/C2og6wFBEHY6AAAgAUG3C2og7AFBEHY6AAAgAUGvC2og7QFBEHY6AAAgAUGnC2og7gFBEHY6AAAgAUGfC2og7wFBEHY6AAAgAUGXC2og8AFBEHY6AAAgAUGPC2og8QFBEHY6AAAgAUGHC2og8gFBEHY6AAAgAUH/Cmog8wFBEHY6AAAgAUH3Cmog9AFBEHY6AAAgAUHvCmog9QFBEHY6AAAgAUHnCmog9gFBEHY6AAAgAUHfCmog6AFBEHY6AAAgAUHXCmog9wFBEHY6AAAgAUHPCmog+AFBEHY6AAAgAUHHCmog+QFBEHY6AAAgAUG/Cmog+gFBEHY6AAAgAUG3Cmog+wFBEHY6AAAgAUGvCmog/AFBEHY6AAAgAUGnCmog/QFBEHY6AAAgAUGfCmog/gFBEHY6AAAgAUGXCmogf0EQdjoAACABQY8KaiB+QRB2OgAAIAFBhwpqIH1BEHY6AAAgAUH/CWogfEEQdjoAACABQfcJaiB7QRB2OgAAIAFB7wlqIHpBEHY6AAAgAUHnCWogeUEQdjoAACABQd8JaiB4QRB2OgAAIAFB1wlqIHdBEHY6AAAgAUHPCWogdkEQdjoAACABQccJaiB1QRB2OgAAIAFBvwlqIHRBEHY6AAAgAUG3CWogc0EQdjoAACABQa8JaiByQRB2OgAAIAFBpwlqIHFBEHY6AAAgAUGfCWogcEEQdjoAACABQZcJaiBvQRB2OgAAIAFBjwlqIG5BEHY6AAAgAUGHCWogbUEQdjoAACABQf8IaiBsQRB2OgAAIAFB9whqIGtBEHY6AAAgAUHvCGogakEQdjoAACABQecIaiBpQRB2OgAAIAFB3whqIGhBEHY6AAAgAUHXCGogZ0EQdjoAACABQc8IaiBmQRB2OgAAIAFBxwhqIGVBEHY6AAAgAUG/CGogZEEQdjoAACABQbcIaiBjQRB2OgAAIAFBrwhqIGJBEHY6AAAgAUGnCGogYUEQdjoAACABQZ8IaiBgQRB2OgAAIAFBlwhqIF9BEHY6AAAgAUGPCGogXkEQdjoAACABQYcIaiBdQRB2OgAAIAFB/wdqIFxBEHY6AAAgAUH3B2ogW0EQdjoAACABQe8HaiBaQRB2OgAAIAFB5wdqIFlBEHY6AAAgAUHfB2ogWEEQdjoAACABQdcHaiBXQRB2OgAAIAFBzwdqIFZBEHY6AAAgAUHHB2ogVUEQdjoAACABQb8HaiBUQRB2OgAAIAFBtwdqIFNBEHY6AAAgAUGvB2ogUkEQdjoAACABQacHaiBRQRB2OgAAIAFBnwdqIFBBEHY6AAAgAUGXB2ogT0EQdjoAACABQY8HaiBOQRB2OgAAIAFBhwdqIE1BEHY6AAAgAUH/BmogTEEQdjoAACABQfcGaiBLQRB2OgAAIAFB7wZqIEpBEHY6AAAgAUHnBmogSUEQdjoAACABQd8GaiBIQRB2OgAAIAFB1wZqIEdBEHY6AAAgAUHPBmoglgFBEHY6AAAgAUHHBmoglQFBEHY6AAAgAUG/BmoglAFBEHY6AAAgAUG3BmogkwFBEHY6AAAgAUGvBmogkgFBEHY6AAAgAUGnBmogkQFBEHY6AAAgAUGfBmogkAFBEHY6AAAgAUGXBmogjwFBEHY6AAAgAUGPBmogjgFBEHY6AAAgAUGHBmogjQFBEHY6AAAgAUH/BWogjAFBEHY6AAAgAUH3BWogiwFBEHY6AAAgAUHvBWogigFBEHY6AAAgAUHnBWogiQFBEHY6AAAgAUHfBWogiAFBEHY6AAAgAUHXBWoghwFBEHY6AAAgAUHPBWoghgFBEHY6AAAgAUHHBWoghQFBEHY6AAAgAUG/BWoghAFBEHY6AAAgAUG3BWoggwFBEHY6AAAgAUGvBWogggFBEHY6AAAgAUGnBWoggQFBEHY6AAAgAUGfBWoggAFBEHY6AAAgAUGXBWpBADoAACABQY8FaiDcAUEQdjoAACABQYcFaiCXAUEQdjoAACABQf8EaiCYAUEQdjoAACABQfcEaiCZAUEQdjoAACABQe8EaiCaAUEQdjoAACABQecEaiCbAUEQdjoAACABQd8EaiCcAUEQdjoAACABQdcEaiCdAUEQdjoAACABQc8EaiCeAUEQdjoAACABQccEaiCfAUEQdjoAACABQb8EaiCgAUEQdjoAACABQbcEaiChAUEQdjoAACABQa8EaiCiAUEQdjoAACABQacEaiCjAUEQdjoAACABQZ8EaiCkAUEQdjoAACABQZcEaiClAUEQdjoAACABQY8EaiCmAUEQdjoAACABQYcEaiCnAUEQdjoAACABQf8DaiCoAUEQdjoAACABQfcDaiCpAUEQdjoAACABQe8DaiCqAUEQdjoAACABQecDaiCrAUEQdjoAACABQd8DaiCsAUEQdjoAACABQdcDaiCtAUEQdjoAACABQc8DaiCuAUEQdjoAACABQccDaiCvAUEQdjoAACABQb8DaiCwAUEQdjoAACABQbcDaiCxAUEQdjoAACABQa8DaiCyAUEQdjoAACABQacDaiCzAUEQdjoAACABQZ8DaiC0AUEQdjoAACABQZcDaiC1AUEQdjoAACABQY8DaiC2AUEQdjoAACABQYcDaiC3AUEQdjoAACABQf8CaiC4AUEQdjoAACABQfcCaiC5AUEQdjoAACABQe8CaiC6AUEQdjoAACABQecCaiC7AUEQdjoAACABQd8CaiC8AUEQdjoAACABQdcCaiC9AUEQdjoAACABQc8CaiC+AUEQdjoAACABQccCaiC/AUEQdjoAACABQb8CaiDAAUEQdjoAACABQbcC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BDsA3QsgASBCOwDVCyABIOkBOwDNCyABIOoBOwDFCyABIOsBOwC9CyABIOwBOwC1CyABIO0BOwCtCyABIO4BOwClCyABIO8BOwCdCyABIPABOwCVCyABIPEBOwCNCyABIPIBOwCFCyABIPMBOwD9CiABIPQBOwD1CiABIPUBOwDtCiABIPYBOwDlCiABIOgBOwDdCiABIPcBOwDVCiABIPgBOwDNCiABIPkBOwDFCiABIPoBOwC9CiABIPsBOwC1CiABIPwBOwCtCiABIP0BOwClCiABIP4BOwCdCiABIH87AJUKIAEgfjsAjQogASB9OwCFCiABIHw7AP0JIAEgezsA9QkgASB6OwDtCSABIHk7AOUJIAEgeDsA3QkgASB3OwDVCSABIHY7AM0JIAEgdTsAxQkgASB0OwC9CSABIHM7ALUJIAEgcjsArQkgASBxOwClCSABIHA7AJ0JIAEgbzsAlQkgASBuOwCNCSABIG07AIUJIAEgbDsA/QggASBrOwD1CCABIGo7AO0IIAEgaTsA5QggASBoOwDdCCABIGc7ANUIIAEgZjsAzQggASBlOwDFCCABIGQ7AL0IIAEgYzsAtQggASBiOwCtCCABIGE7AKUIIAEgYDsAnQggASBfOwCVCCABIF47AI0IIAEgXTsAhQggASBcOwD9ByABIFs7APUHIAEgWjsA7QcgASBZOwDlByABIFg7AN0HIAEgVzsA1QcgASBWOwDNByABIFU7AMUHIAEgVDsAvQcgASBTOwC1ByABIFI7AK0HIAEgUTsApQcgASBQOwCdByABIE87AJUHIAEgTjsAjQcgASBNOwCFByABIEw7AP0GIAEgSzsA9QYgASBKOwDtBiABIEk7AOUGIAEgSDsA3QYgASBHOwDVBiABIJYBOwDNBiABIJUBOwDFBiABIJQBOwC9BiABIJMBOwC1BiABIJIBOwCtBiABIJEBOwClBiABIJABOwCdBiABII8BOwCVBiABII4BOwCNBiABII0BOwCFBiABIIwBOwD9BSABIIsBOwD1BSABIIoBOwDtBSABIIkBOwDlBSABIIgBOwDdBSABIIcBOwDVBSABIIYBOwDNBSABIIUBOwDFBSABIIQBOwC9BSABIIMBOwC1BSABIIIBOwCtBSABIIEBOwClBSABIIABOwCdBSABQQA7AJUFIAEg3AE7AI0FIAEglwE7AIUFIAEgmAE7AP0EIAEgmQE7APUEIAEgmgE7AO0EIAEgmwE7AOUEIAEgnAE7AN0EIAEgnQE7ANUEIAEgngE7AM0EIAEgnwE7AMUEIAEgoAE7AL0EIAEgoQE7ALUEIAEgogE7AK0EIAEgowE7AKUEIAEgpAE7AJ0EIAEgpQE7AJUEIAEgpgE7AI0EIAEgpwE7AIUEIAEgqAE7AP0DIAEgqQE7APUDIAEgqgE7AO0DIAEgqwE7AOUDIAEgrAE7AN0DIAEgrQE7ANUDIAEgrgE7AM0DIAEgrwE7AMUDIAEgsAE7AL0DIAEgsQE7ALUDIAEgsgE7AK0DIAEgswE7AKUDIAEgtAE7AJ0DIAEgtQE7AJUDIAEgtgE7AI0DIAEgtwE7AIUDIAEguAE7AP0CIAEguQE7APUCIAEgugE7AO0CIAEguwE7AOUCIAEgvAE7AN0CIAEgvQE7ANUCIAEgvgE7AM0CIAEgvwE7AMUCIAEgwAE7AL0CIAEgwQE7ALUCIAEgwgE7AK0CIAEgwwE7AKUCIAEgxAE7AJ0CIAEgxQE7AJUCIAEgxgE7AI0CIAEgxwE7AIUCIAEgyAE7AP0BIAEgyQE7APUBIAEgygE7AO0BIAEgywE7AOUBIAEgzAE7AN0BIAEgzQE7ANUBIAEgzgE7AM0BIAEgzwE7AMUBIAEg2wE7AL0BIAEg2gE7ALUBIAEg2QE7AK0BIAEg2AE7AKUBIAEg1wE7AJ0BIAEg1gE7AJUBIAEg1QE7AI0BIAEg1AE7AIUBIAEg0wE7AH0gASDSATsAdSABINEBOwBtIAEg0AE7AGUgASCAAjsAXSABIA87AFUgASANOwBNIAEgBTsARSABIIoFNwOwDSABIAs6AKwNIAEgCDYCqA0gAUEANgKkDSABIIECNgKgDSABIIUCNgKcDSABICw2ApgNIAEghgI2AJQNIAEghwI2AJANIAEgiAI2AIwNIAEgiQI2AIgNIAEgigI2AIQNIAEgiwI2AIANIAEgjAI2APwMIAEgjQI2APgMIAEgjgI2APQMIAEgjwI2APAMIAEgkAI2AOwMIAEgkQI2AOgMIAEgkgI2AOQMIAEgkwI2AOAMIAEglAI2ANwMIAEglQI2ANgMIAEglgI2ANQMIAEglwI2ANAMIAEgmAI2AMwMIAEgmQI2AMgMIAEgmgI2AMQMIAEgmwI2AMAMIAEgnAI2ALwMIAEgnQI2ALgMIAEgngI2ALQMIAEgnwI2ALAMIAEgoAI2AKwMIAEgoQI2AKgMIAEgogI2AKQMIAEgowI2AKAMIAEgpAI2AJwMIAEgpQI2AJgMIAEgpgI2AJQMIAEgpwI2AJAMIAEgqAI2AIwMIAEgqQI2AIgMIAEgqgI2AIQMIAEgqwI2AIAMIAEgrAI2APwLIAEgrQI2APgLIAEgrgI2APQLIAEgrwI2APALIAEgsAI2AOwLIAEgsQI2AOgLIAEgsgI2AOQLIAEgswI2AOALIAEgEToA3AsgASC0AjYA2AsgASDnAToA1AsgASC1AjYA0AsgASC2AjoAzAsgASC3AjYAyAsgASC4AjoAxAsgASC5AjYAwAsgASC6AjoAvAsgASC7AjYAuAsgASAUOgC0CyABIBI2ALALIAEgIzoArAsgASAaNgCoCyABIC06AKQLIAEgOzYAoAsgASBBOgCcCyABIEQ2AJgLIAEgRToAlAsgASA8NgCQCyABIN0BOgCMCyABIN4BNgCICyABIOMBOgCECyABIOABNgCACyABIOEBOgD8CiABIOQBNgD4CiABIOUBOgD0CiABIBs2APAKIAEgHDoA7AogASAoNgDoCiABIC46AOQKIAEgMjYA4AogASA4OgDcCiABIDo2ANgKIAEgEzoA1AogASAWNgDQCiABIDY6AMwKIAEgNzYAyAogASAXOgDECiABIN8BNgDACiABIBk6ALwKIAEgIjYAuAogASAVOgC0CiABIEA2ALAKIAEgLzoArAogASAgNgCoCiABIP8BOgCkCiABIEM2AqAKIAEgJjoAnAogASArNgKYCiABILwCOgCUCiABIL0CNgKQCiABIL4COgCMCiABIL8CNgKICiABIMACOgCECiABIMECNgKACiABIMICOgD8CSABIMMCNgL4CSABIMQCOgD0CSABIMUCNgLwCSABIMYCOgDsCSABIMcCNgLoCSABIMgCOgDkCSABIMkCNgLgCSABIMoCOgDcCSABIMsCNgLYCSABIMwCOgDUCSABIM0CNgLQCSABIM4COgDMCSABIM8CNgLICSABINACOgDECSABINECNgLACSABINICOgC8CSABINMCNgK4CSABINQCOgC0CSABINUCNgKwCSABINYCOgCsCSABINcCNgKoCSABINgCOgCkCSABINkCNgKgCSABINoCOgCcCSABINsCNgKYCSABINwCOgCUCSABIN0CNgKQCSABIN4COgCMCSABIN8CNgKICSABIOACOgCECSABIOECNgKACSABIOICOgD8CCABIOMCNgL4CCABIOQCOgD0CCABIOUCNgLwCCABIOYCOgDsCCABIOcCNgLoCCABIOgCOgDkCCABIOkCNgLgCCABIOoCOgDcCCABIOsCNgLYCCABIOwCOgDUCCABIO0CNgLQCCABIO4COgDMCCABIO8CNgLICCABIPACOgDECCABIPECNgLACCABIPICOgC8CCABIPMCNgK4CCABIPQCOgC0CCABIPUCNgKwCCABIPYCOgCsCCABIPcCNgKoCCABIPgCOgCkCCABIPkCNgKgCCABIPoCOgCcCCABIPsCNgKYCCABIPwCOgCUCCABIP0CNgKQCCABIP4COgCMCCABIP8CNgKICCABIIADOgCECCABIIEDNgKACCABIIIDOgD8ByABIIMDNgL4ByABIIQDOgD0ByABIIUDNgLwByABIIYDOgDsByABIIcDNgLoByABIIgDOgDkByABIIkDNgLgByABIIoDOgDcByABIIsDNgLYByABIIwDOgDUByABII0DNgLQByABII4DOgDMByABII8DNgLIByABIJADOgDEByABIJEDNgLAByABIJIDOgC8ByABIJMDNgK4ByABIJQDOgC0ByABIJUDNgKwByABIJYDOgCsByABIJcDNgKoByABIJgDOgCkByABIJkDNgKgByABIJoDOgCcByABIJsDNgKYByABIJwDOgCUByABIJ0DNgKQByABIJ4DOgCMByABIJ8DNgKIByABIKADOgCEByABIKEDNgKAByABIKIDOgD8BiABIKMDNgL4BiABIKQDOgD0BiABIKUDNgLwBiABIKYDOgDsBiABIKcDNgLoBiABIKgDOgDkBiABIKkDNgLgBiABIKoDOgDcBiABIKsDNgLYBiABIKwDOgDUBiABIK0DNgLQBiABIK4DOgDMBiABIK8DNgLIBiABILADOgDEBiABILEDNgLABiABILIDOgC8BiABILMDNgK4BiABILQDOgC0BiABILUDNgKwBiABILYDOgCsBiABILcDNgKoBiABILgDOgCkBiABILkDNgKgBiABILoDOgCcBiABILsDNgKYBiABILwDOgCUBiAB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IAEgqAI2AowMIAEgqQI2AogMIAEgqgI2AoQMIAEgqwI2AoAMIAEgrAI2AvwLIAEgrQI2AvgLIAEgrgI2AvQLIAEgrwI2AvALIAEgsAI2AuwLIAEgsQI2AugLIAEgsgI2AuQLIAEgswI2AuALIAEgETYC3AsgASC0AjYC2AsgASDnAToA1AsgASC1AjYC0AsgASC2AjoAzAsgASC3AjYCyAsgASC4AjoAxAsgASC5AjYCwAsgASC6AjoAvAsgASC7AjYCuAsgASAUOgC0CyABIBI2ArALIAEgIzoArAsgASAaNgKoCyABIC06AKQLIAEgOzYCoAsgASBBOgCcCyABIEQ2ApgLIAEgRToAlAsgASA8NgKQCyABIN0BOgCMCyABIN4BNgKICyABIOMBOgCECyABIOABNgKACyABIOEBOgD8CiABIOQBNgL4CiABIOUBOgD0CiABIBs2AvAKIAEgHDoA7AogASAoNgLoCiABIC46AOQKIAEgMjYC4AogASA4OgDcCiABIDo2AtgKIAEgEzoA1AogASAWNgLQCiABIDY6AMwKIAEgNzYCyAogASAXOgDECiABIN8BNgLACiABIBk6ALwKIAEgIjYCuAogASAVOgC0CiABIEA2ArAKIAEgLzoArAogASAgNgKoCiABIP8BOgCkCiABIEM2AqAKIAEgJjoAnAogASArNgKYCiABILwCOgCUCiABIL0CNgKQCiABIL4COgCMCiABIL8CNgKICiABIMACOgCECiABIMECNgKACiABIMICOgD8CSABIMMCNgL4CSABIMQCOgD0CSABIMUCNgLwCSABIMYCOgDsCSABIMcCNgLoCSABIMgCOgDkCSABIMkCNgLgCSABIMoCOgDcCSABIMsCNgLYCSABIMwCOgDUCSABIM0CNgLQCSABIM4COgDMCSABIM8CNgLICSABINACOgDECSABINECNgLACSABINICOgC8CSABINMCNgK4CSABINQCOgC0CSABINUCNgKwCSABINYCOgCsCSABINcCNgKoCSABINgCOgCkCSABINkCNgKgCSABINoCOgCcCSABINsCNgKYCSABINwCOgCUCSABIN0CNgKQCSABIN4COgCMCSABIN8CNgKICSABIOACOgCECSABIOECNgKACSABIOICOgD8CCABIOMCNgL4CCABIOQCOgD0CCABIOUCNgLwCCABIOYCOgDsCCABIOcCNgLoCCABIOgCOgDkCCABIOkCNgLgCCABIOoCOgDcCCABIOsCNgLYCCABIOwCOgDUCCABIO0CNgLQCCABIO4COgDMCCABIO8CNgLICCABIPACOgDECCABIPECNgLACCABIPICOgC8CCABIPMCNgK4CCABIPQCOgC0CCABIPUCNgKwCCABIPYCOgCsCCABIPcCNgKoCCABIPgCOgCkCCABIPkCNgKgCCABIPoCOgCcCCABIPsCNgKYCCABIPwCOgCUCCABIP0CNgKQCCABIP4COgCMCCABIP8CNgKICCABIIADOgCECCABIIEDNgKACCABIIIDOgD8ByABIIMDNgL4ByABIIQDOgD0ByABIIUDNgLwByABIIYDOgDsByABIIcDNgLoByABIIgDOgDkByABIIkDNgLgByABIIoDOgDcByABIIsDNgLYByABIIwDOgDUByABII0DNgLQByABII4DOgDMByABII8DNgLIByABIJADOgDEByABIJEDNgLAByABIJIDOgC8ByABIJMDNgK4ByABIJQDOgC0ByABIJUDNgKwByABIJYDOgCsByABIJcDNgKoByABIJgDOgCkByABIJkDNgKgByABIJoDOgCcByABIJsDNgKYByABIJwDOgCUByABIJ0DNgKQByABIJ4DOgCMByABIJ8DNgKIByABIKADOgCEByABIKEDNgKAByABIKIDOgD8BiABIKMDNgL4BiABIKQDOgD0BiABIKUDNgLwBiABIKYDOgDsBiABIKcDNgLoBiABIKgDOgDkBiABIKkDNgLgBiABIKoDOgDcBiABIKsDNgLYBiABIKwDOgDUBiABIK0DNgLQBiABIK4DOgDMBiABIK8DNgLIBiABILADOgDEBiABILEDNgLABiABILIDOgC8BiABILMDNgK4BiABILQDOgC0BiABILUDNgKwBiABILYDOgCsBiABILcDNgKoBiABILgDOgCkBiABILkDNgKgBiABILoDOgCcBiABILsDNgKYBiABILwDOgCUBiABIL0DNgKQBiABIL4DOgCMBiABIL8DNgKIBiABIMADOgCEBiABIMEDNgKABiABIMIDOgD8BSABIMMDNgL4BSABIMQDOgD0BSABIMUDNgLwBSABIMYDOgDsBSABIMcDNgLoBSABIMgDOgDkBSABIMkD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QagEahDuEiEGDAULIAMgGDYCqAMLIANBqARqIANBlApqIAYoAgAgBkEEaigCABBCIAMoAqgEIgVBgICAgHhGBEAgAygCnAMiBUEBayEYIAMoApgDIAVBFGxqQRRrIRIDQAJAAkACQAJAIBhBf0YEQEEAIRgMAQsgEkEEaigCACIFQQRHDQELIAMgGDYCnAMgAygClAoiBigCACIHQf////8HTw0BIAYgB0EBajYCACADIAYoAgwiBTYC4AoCQCAFQQFGBEAgBiAHNgIAIANBqARqIAYQlQwgAygCqARBEEcNAUGswMQAEOApAAsgA0EANgKoBCADQeAKakHEntgAIANBqARqQbzAxAAQ4RoACyADQZAEaiADQcAEaigCADYCACADQYgEaiADQbgEaikCADcDACADQYAEaiAMKQIANwMAIAMgAykCqAQ3A/gDIB4gA0H4A2oQmwpBgICAgHghBUEBDAYLIBIoAgAhCyAEIBJBCGopAgA3AgAgBEEIaiASQRBqKAIANgIAIAMgBTYCsAogA0H4A2ogA0GwCmoQ0gsgAygC+ANBBEcEQCADQcgKaiADQYAEaiIFKQIANwMAIAMgGDYCnAMgAyADKQL4AyKMBTcDwAogjAWnQQNHDQcgA0EPNgKoBCADKAKUCiADQagEahChGAwHCyADQagEaiADQZQKaiALKAIAIAtBBGooAgAQQiADKAKoBCIFQYCAgIB4Rg0BIAMgGDYCnAMgHiAhQSQQ+wYaDAQLQZzAxAAQ8BQACyASQRRrIRIgGEEBayEYDAALAAsgHiAhQSQQ+wYaC0EACyADQZQDahD5HyADKAL8ASESBEAgAygClAIhCCADKAKQAiEHIAMoAowCIRAgAygCiAIhCyADKAKEAiEGIAMoAoACIQUgA0H4AmoQrAwgAygC9AEiDiADKALsAUYEQCADQewBahD4FgsgAygC8AEgDkEcbGoiDyAINgIYIA8gBzYCFCAPIBA2AhAgDyALNgIMIA8gBjYCCCAPIAU2AgQgDyASNgIAIAMgDkEBajYC9AEMAwsgA0H4AGogA0HwAmopAgA3AwAgAyADKQLoAjcDcCADKAKcAiEpIAMpApQCIYwFIAMpAowCIY4FIAMoAogCIQYgAygChAIhGCADKAKAAiEjIANB+AJqEKwMQSIhBwwGCyADQcAKahC7GyEGICEg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ADYCACAaIAspAgA3AgggGiAGKQIANwIoIBpBEGogC0EIaikCADcCACAaQRhqIAtBEGopAgA3AgAgGkEgaiALQRhqKQIANwIAIBpBMGogBkEIaikCADcCACAaQThqIAZBEGooAgA2AgAMBQsgFCgCxAIhBSAaQQhqIBRByAJqQTgQ+wYaIBogBTYCQCAaIAc2AgQgGkGIgMQANgIADAQLIBQoAsQCIQUgGkEIaiAUQcgCakE4EPsGGiAaIAU2AkAgGiAHNgIEDAILIBogFCkCrAI3AiggGkFAayAUQcQCaigCADYCACAaQThqIBRBvAJqKQIANwIAIBpBMGogFEG0AmopAgA3AgAgGkEkaiAHKAIANgIAIBpBHGogBikDADcCACAaQRRqIAspAwA3AgAgGiAUKQPIATcCDCAaIBU2AgggGiAFNgIEIBpBiIDEADYCACAUQUBrEOkiDAILIBogFCkCrAI3AiggGkFAayAUQcQCaigCADYCACAaQThqIBRBvAJqKQIANwIAIBpBMGogFEG0AmopAgA3AgAgGkEkaiAUQYACaigCADYCACAaQRxqIBRB+AFqKQMANwIAIBpBFGogFEHwAWopAwA3AgAgGiAUKQPoATcCDCAaIBA2AgggGiAFNgIEIBpBiIDEADYCAAwBCyAaQYiAxAA2AgAgFEEIahDpIgsgFEGAA2okACAbKAKgASEHIBtBMGoiBSAyQcAAEPsGGiAHQYiAxABHBEAgFyAZKQIANwIAIBdBEGogGUEQaigCADYCACAXQQhqIBlBCGopAgA3AgAgGyAHNgK4AiAdIAVBwAAQ+wYaIBtBDGogG0G4AmoQ9g4MAQsLIChBBGogG0EwakHAABD7BhoLIChBiYDEADYCACAbQQxqEN0mDAELIBtBADYCoAEgG0EIakHsosQAIBtBoAFqQcisxAAQ8RoACyAbQZADaiQAIANBgARqIg4gQEEIaikCADcDACADIEApAgA3A/gDIAMoAugEIR4gAygC1AQhKSADKQLMBCGMBSADKQLEBCGOBSADKALABCEGIAMoArwEIRggAygCuAQhIyADKAK0BCESIAMoArAEIQUgAygCrAQhByADKAKoBCIIQYmAxABGDQYgA0G4A2oiECAmQTAQ+wYaIANBgANqIgsgDikDADcDACADIAMpA/gDNwP4AkH0ABDpICIO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+ANqIg02AoACIAMgA0GwCmoiBzYC+AMgA0GgCmpBiPvCACADQfgBahC1JA0AIANBwApqIgUgA0G4A2oQygMgA0EBNgL8ASADQYT44AA2AvgBIANCATcChAIgA0EFNgL8AyADIA02AoACIAMgBTYC+AMCQCADQaAKakGI+8IAIANB+AFqELUkDQAgA0ECNgL8ASADQcDN3wA2AvgBIANCATcChAIgA0EFNgL8AyADIA02AoACIAMgBzYC+AMgA0GgCmpBiPvCACADQfgBahC1JA0AIAMoAswDIgUEQCADQQA2AtgKIANCgICAgMAANwLQCiAFQRhsIRIgAygCyAMiGEEQaiEFA0AgEgRAIANBBTYC/AMgA0HkydYANgL4AyADQgQ3AoQEIANBBzYChAIgA0EHNgL8ASAYKAIUIQcgA0EHNgKUAiADQQc2AowCIAMgBTYCiAIgAyAFQQhrNgKAAiADIAVBDGs2AvgBIAMgB0EBazYC6AIgEkEYayESIBhBGGohGCAFQRhqIQUgAyADQfgBajYCgAQgAyADQegCajYCkAIgA0HgCmoiByADQfgDahDtCyADQdAKaiAHEOIVDAEFIANB+ANqIgUgAygC1AogAygC2ApBwvDgAEEBEOsDIANBBTYC5AogA0ECNgL8ASADQcDN3wA2AvgBIANCATcChAIgAyAFNgLgCiADIANB4ApqNgKAAiADQaAKakGI+8IAIANB+AFqELUkIAMoAvgDIAMoAvwDENopIANB0ApqEMUVDQMLCwsgA0EBNgL8ASADQdjI1gA2AvgBIANCATcChAIgA0HrADYC/AMgAyAGNgL4AyADIANB+ANqNgKAAiADQaAKakGI+8IAIANB+AFqELUkRQ0CCyADKALACiADKALEChDaKQsgAygCsAogAygCtAoQ2ikMBgsgAygCwAogAygCxAoQ2ikgAygCsAogAygCtAoQ2ikMAwsgA0ECNgL8ASADQcDN3wA2AvgBIANCATcChAIgA0EFNgL8AyADIANB+ANqIg02AoACIAMgA0GwCmoiBzYC+AMgA0GgCmpBiPvCACADQfgBahC1JA0AIANBwApqIgUgA0G4A2oQygMgA0EBNgL8ASADQYT44AA2AvgBIANCATcChAIgA0EFNgL8AyADIA02AoACIAMgBTYC+AMCQCADQaAKakGI+8IAIANB+AFqELUkDQAgA0ECNgL8ASADQcDN3wA2AvgBIANCATcChAIgA0EFNgL8AyADIA02AoACIAMgBzYC+AMgA0GgCmpBiPvCACADQfgBahC1JA0AIAMoAswDIgUEQCADQQA2AtgKIANCgICAgMAANwLQCiAFQRhsIRIgAygCyAMiGEEQaiEFA0AgEgRAIANBBTYC/AMgA0HkydYANgL4AyADQgQ3AoQEIANBBzYChAIgA0EHNgL8ASAYKAIUIQcgA0EHNgKUAiADQQc2AowCIAMgBTYCiAIgAyAFQQhrNgKAAiADIAVBDGs2AvgBIAMgB0EBazYC6AIgEkEYayESIBhBGGohGCAFQRhqIQUgAyADQfgBajYCgAQgAyADQegCajYCkAIgA0HgCmoiByADQfgDahDtCyADQdAKaiAHEOIVDAEFIANB+ANqIgUgAygC1AogAygC2ApBwvDgAEEBEOsDIANBBTYC5AogA0ECNgL8ASADQcDN3wA2AvgBIANCATcChAIgAyAFNgLgCiADIANB4ApqNgKAAiADQaAKakGI+8IAIANB+AFqELUkIAMoAvgDIAMoAvwDENopIANB0ApqEMUVDQMLCwsgA0EBNgL8ASADQdjI1gA2AvgBIANCATcChAIgA0HqADYC/AMgAyAGNgL4AyADIANB+ANqNgKAAiADQaAKakGI+8IAIANB+AFqELUkRQ0CCyADKALACiADKALEChDaKQsgAygCsAogAygCtAoQ2ikMAwsgAygCwAogAygCxAoQ2ikgAygCsAogAygCtAoQ2ikLIANBuANqEL4TIBAgAykCoAo3AgAgEEEIaiADQagKaigCADYCAAsgAygCqAQhLQwBCyADQbgDahC+EwwCCwJAAkAgLUUNAAJAIAMoArAEIgVBImtBACAFQSNrQQdJGw4CAQACCyADKAK4BCIFQYSAgIB4SA0BIAUgAygCvAQQ2ikMAQsgC0EEQRwgCygCAEEiRhtqIgUoAgAgBUEEaigCABDaKQsggwJBADYCAAsCQCADLQC4ASIFQQNGIAVBAkZyDQAgAygCrAEiBSAFKAIAIgVBAWs2AgAgBUEBRw0AIPMEELQOCyADQfAKaiQADAELQfy94ABBNyADQfAAakGg+8IAQYC/4AAQxQ4ACyAfKAJIIgUgHygCTBDlHCAfKAJEIAUQ4ikCQCAfLQA0IgVBA0YgBUECRnINACAfKAIoIgUgBSgCACIFQQFrNgIAIAVBAUcNACAfQShqELQOCyAfKAJgRQ0BIAAgHykCYDcCACAAQQhqIB9B6ABqKQIANwIAIB9BwAFqJAAPCyAHIAsoAggQ4SkACyAfQQhqIB9B7ABqKAIANgIAIB8gHykCZDcDAEGc6+AAQSsgH0Go3dgAQdTe2AAQxQ4AC54DAgZ+BH8jAEEgayIKJAACQCACUCABQqp9U3INAEH/DyELIAFCtAJVDQAgCkEQaiABpyIJQQR0QbC3wQBqIgwpAwAgAiACeSIGhiIDEMQOIAopAxAhBSAKQRhqKQMAIgJC/wODQv8DUQRAIAogDCkDCCADEMQOIAIgCkEIaikDACICIAV8IgUgAlStfCECCyAFQn9SIAFCG3xC0wBUckUEQEF/IQsMAQsgAiACQj+IIgdCCXwiCIghAyAHpyAJQeqkDWxBEHUgBqdrakE/aiIJQYJ4TgRAQYAIQf8HIANC/P////////8AgyADIAMgCIYgAlEbIAMgA0IDg0IBURsgAyAFQgJUGyADIAFCBHxCHFQbIgFCAYMgAXwiAUL/////////H1YiDBsgCWoiCUH+D0sNAUIAIAFCAYhC//////////f/AIMgDBshBCAJIQsMAQtBACELIAlBw3dJDQAgA0ECIAlrQT9xrYgiAUIBgyABfCIBQv////////8PViELIAFCAYghBAsgACALNgIIIAAgBDcDACAKQSBqJAALjAQBAn8jAEEwayICJAACfwJAAkACQAJAAkACQAJAIAAoAgAiAC0AAEEBaw4DAAECAwsgAiAAKAIENgIsIAJBATYCGCACQdDNwwA2AhQgAkIBNwIgIAJBBzYCBCACIAI2AhwgAiACQSxqNgIAIAEoAhQgASgCGCACQRRqELUkDAYLIAIgACgCBDYCLCACQQI2AhggAkH4zcMANgIUIAJCATcCICACQQc2AgQgAiACNgIcIAIgAkEsajYCACABKAIUIAEoAhggAkEUahC1JAwFCyAAKAIEQQFrDgICAwELIAAtAAEhAyACIAAoAgQ2AiwgAkECNgIYIAJBpM3DADYCFCACQgI3AiAgAkEHNgIMIAJBpwE2AgQgAiADOgATIAIgAjYCHCACIAJBLGo2AgggAiACQRNqNgIAIAEoAhQgASgCGCACQRRq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AEG4AWogAUEIaiIKLwAAOwAAEMkgIQsQySAhDCAFQYACEP8UIAUpAwAhDUEYQQQQqyAiB0EANgIUIAcgDTcCDCAHQQA2AgggB0KBgICAEDcCACAGEMAVQRxBBBCrICIGQoGAgIAQNwIAIAYgBSkCCDcCCCAGQRBqIAVBEGopAgA3AgAgBkEYaiAFQRhqKAIANgIAIABBrMDgADYC8AEgACAENgLsASAAQgA3AgQgACAEQQBHNgIAIAAgCDYC9AEgACACOgCfAiAAIAMpAgA3AsABIABByAFqIANBCGopAgA3AgAgAEHQAWogCSkCADcCACAAQdgBaiADQRhqKAIANgIAIAAgASkAADcA+AEgAEGAAmogCi8AADsAACAAIAY2AugBIAAgBzYC5AEgACAMNgLgASAAIAs2AtwBIAVBkAFqJAALvwsCC38CfiMAQeAAayIDJAACQCAALQA8RQRAIAAtAChFDQELIANBADsANSADQRhqQcig4wApAwAiDTcDACADQShqIA03AwAgA0HAoOMAKQMAIg03AxAgAyAANgIwIAMgAC0AODoANCADIA03AyAgAyABKAIEIgQgASgCCEE4bGo2AjwgAyAENgI4IAMgA0EQajYCQCADQThqELsNIgQEfyADQQhqQQRBBEEEEPsUIAMoAgghBSADKAIMIgIgBDYCACADQQE2AkwgAyACNgJIIAMgBTYCRCADQdgAaiADQUBrKAIANgIAIAMgAykCODcDUEEEIQRBASEFA0AgA0HQAGoQuw0iBgRAIAMoAkQgBUYEQCADQcQAaiAFQQFBBEEEELcXIAMoAkghAgsgAiAEaiAGNgIAIAMgBUEBaiIFNgJMIARBBGohBAwBCwsgAygCRCECIAMoAkgFQQQLIQQgBUECdCEGQQAhBQNAIAUgBkcEQCAEIAVqKAIAIANBEGoQhwcgBUEEaiEFDAELCyACIARBBEEEENQiIANBEGoQgCkLIwBBQGoiBCQAIABBEGohCyAAQSxqIQggASgCBCIFIAEoAghBOGxqIQwgBEEsaiEJIARBEGohCgNAAkACQCAMIAUiAUcEQCABQThqIQUgASgCACICQQlHBEACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4IAQIDBAUGBwgACyAAQQA6ADkgAC0AOiEHIAAgAS0AIDoAOiABKAIMQcgAbCEG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IAEoAhggAkEYahC1JCEECyACQTBqJAAgBA8LQZqF2ABBDhD+KgAL1wIBDn8gA0EcbCEDIAEtABUhDCABLQAUIQ0gAS0AEyEOIAEtABIhDyABLQARIRAgAS0AECERQQIhBUECIQZBAiEHQQIhCEECIQlBAiEKQQEhCwNAIAMEQCALIQRBACELAkACQAJAAkACQAJAAkACQCACLQAYQQFrDgcBAgMEBQYHAAsgBEEBcSEFDAULIARBAXEhBgwECyAEQQFxIQcMAwsgBEEBcSEIDAILIARBAXEhCQwBCyAEQQFxIQoLIAQhCwsgAkEcaiECIANBHGshAwwBCwsgACAMOgAFIAAgDToABCAAIA46AAMgACAPOgACIAAgEDoAASAAIBE6AAAgASAMIAogCkECRhs6ABUgASANIAkgCUECRhs6ABQgASAOIAggCEECRhs6ABMgASAPIAcgB0ECRhs6ABIgASAQIAYgBkECRhs6ABEgASARIAUgBUECRhs6ABAL7AIBAn8jAEGQAWsiAiQAIAJBADsAEiACIAEtALACOgARIAIgASgBqgI2AAsgAiABLwGuAjsADyACIAEpALMCNwAUIAIgASkAuwI3ABwgAiABKADDAjYAJCACQeUAaiABQb8CaikAADcAACACQeAAaiABQboCaikBADcCACACQdgAaiABQbICaikBADcCACACIAEpAaoCNwJQIAFBKGogAkELahDSCCACIAE2AkwgAkEoaiABQQAQngQgAigCKCEBAkAgAi0APCIDQQJHBEAgAkH8AGogAkE0aikCADcCACACQYwBaiACQcQAaigAADYAACACIAIpAiw3AnQgAiACKQA9NwCFASACIAE2AnAgACACKQNwNwMAIABBCGogAkH4AGopAwA3AwAgAiADOgCEASAAQRBqIAJBgAFqKQMANwMAIAJBiAFqEPkmDAELIABBAjoAFCAAIAE2AgALIAJBzABqEIclIAJBkAFqJAAL7QIBAn8jAEGQAWsiAiQAIAJBADsAEiACIAEtAIgDOgARIAIgASgBggM2AAsgAiABLwGGAzsADyACIAEpAIsDNwAUIAIgASkAkwM3ABwgAiABKACbAzYAJCACQeUAaiABQZcDaikAADcAACACQeAAaiABQZIDaikBADcCACACQdgAaiABQYoDaikBADcCACACIAEpAYIDNwJQIAFBgAFqIAJBC2oQyQggAiABNgJMIAJBKGogAUEAEKAEIAIoAighAQJAIAItADwiA0ECRwRAIAJB/ABqIAJBNGopAgA3AgAgAkGMAWogAkHEAGooAAA2AAAgAiACKQIsNwJ0IAIgAikAPTcAhQEgAiABNgJwIAAgAikDcDcDACAAQQhqIAJB+ABqKQMANwMAIAIgAzoAhAEgAEEQaiACQYABaikDADcDACACQYgBahD5JgwBCyAAQQI6ABQgACABNgIACyACQcwAahCjJiACQZABaiQAC+gCAgF/AX4jAEEgayIDJAAgA0EQaiACIAEQ5SBBABDVAQJAAkAgAy0AEEEERwRAIAMpAxAiBEL/AYNCBFINAQsCQAJAIAEtABRBAkYEQCADQRBqIAIgASgCACIBKAIQQQAQ1QECQCADLQAQQQRHBEAgAykDECIEQv8Bg0IEUg0BCyADQRBqIAFBGGogAhDbBiADLQAQQQRHBEAgAykDECIEQv8Bg0IEUg0BCyADQQA2AhAgA0EIaiACIANBEGpBg7bgAEEBELITIAMtAAhBBEcEQCADKQMIIgRC/wGDQgRSDQELIANBEGogASACEJYTIAMtABBBBEYNAiADKQMQIgRC/wGDQgRRDQILIARC/wGDQgRRDQEgACAENwIADAQLIANBEGogASACEOQSIAMtABBBBEYNACADKQMQIgRC/wGDQgRSDQELIABBBDoAAAwCCyAAIAQ3AgAMAQsgACAENwIACyADQSBqJAAL3AICBn8DfiMAQTBrIgMkAAJAAkAgAgRAIAEoAgghBCABKAIEIQUgAkH//wNLDQEgBEECdCEEIAVBBGshBkEAIQUDQCAERQ0DIANBEGogBUEQdCAEIAZqIgcoAgAiBUEQdnIgAhDrHCADKAIQIQggA0EIaiAFQf//A3EgAygCFEEQdHIgAhDrHCADKAIMIQUgByADKAIIIAhBEHRyNgIAIARBBGshBAwACwALIANBADYCKCADQQE2AhwgA0Hkq8IANgIYIANCBDcCICADQRhqQeyrwgAQwx0ACyAEQQJ0IQQgBUEEayEGIAKtIQlBACEFA0AgBEUNASAEIAZqIgIgAjUCACAFrUIghoQiCiAJgCILPgIAIAogCSALfn2nIQUgBEEEayEEDAALAAsgA0EgaiABQQhqKAIANgIAIAMgASkC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QTBqEIUXDAULIABBCGopAwAQ+RogAEEgahCFFwwECyAAQQhqEJ0WIABBPGoQ6yYgAEFAaxDqJiAAQTBqEO4mDAMLIABBCGopAwAQ+RogAEEkahDrJiAAQShqEOomIABBLGoQ7iYMAgsgAEEEahDUKAwBCyAAQQRqEOkmCyACQQFrIQIgAEHYAGohAAwBCwsLygICBH8BfiMAQUBqIgIkAAJAAkACQCABKAIAIgQgASgCBEYNACABIARBGGo2AgACQCABKAIQIgMgASgCFEYNACABIANBCmo2AhAgAy0AACIFQQJGDQAgAkEoaiADQQlqLQAAOgAAIAIgAykAATcDIAwCCyABIAEoAgwiBTYCFCABIAEoAggiAzYCECADIAVGDQAgASADQQpqNgIQIAJBKGogA0EJai0AADoAACACIAMpAAE3AyAgAy0AACIFQQJHDQELIABBgYCAgHg2AgAMAQsgAkEYaiACQShqLQAAOgAAIAIgAikDICIGNwMQIAJBLGogAigAFzYAACACIAU6ACQgAiAENgIgIAIgBjcAJSACQQhqIAQQ9x8gAkE0aiIBIAIoAgggAigCDBDJISAAIAEgBCgCDCAEKAIQIAJBJGoQtQULIAJBQGskAAvxRQEHfyMAQTBrIgUkAAJAAkACQAJAAkACQCABLQAIQbgBRgRAIAEoAhAhAyABKAIMIQQgASgCHCEGIAEoAhghByAFIAEoAhQiCCgCACACELsHIAAgBSAEIAMgByAGEJ4OIgIpAgA3AgAgAEEIaiACQQhqKAIANgIAIAgQ3CsgAS0ACEG4AUcNAQwFCyABKAIEIQcgASgCACEIIAUgARCuHCAFQRhqIQMgBSEBIwBB0ABrIgQkAAJAAkACfwJAAkACQAJAAkACQANAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQQFrDroBAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wwQExMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEBkgGTAZQBlQGWAZcBmAGZAZoBmwGcAZ0BngGfAaABoQGiAaMBpAGlAaYBpwGoAakBqgGrAawBrQGuAa8BsAGxAbIBswG0AbUBtgG3AbgBugEACyADQQ42AgggA0HsvtkANgIEIANBgICAgHg2AgAMwQELIANBGjYCCCADQeG/2QA2AgQgA0GAgICAeDYCAAzAAQsgA0EgNgIIIANB+7/ZADYCBCADQYCAgIB4NgIADL8BCyADQS82AgggA0GbwNkANgIEIANBgICAgHg2AgAMvgELIANB0wA2AgggA0HKwNkANgIEIANBgICAgHg2AgAMvQELIANBKTYCCCADQZ3B2QA2AgQgA0GAgICAeDYCAAy8AQsgA0EmNgIIIANBxsHZADYCBCADQYCAgIB4NgIADLsBCyADQSo2AgggA0HswdkANgIEIANBgICAgHg2AgAMugELIANBETYCCCADQZbC2QA2AgQgA0GAgICAeDYCAAy5AQsgA0EXNgIIIANBp8LZADYCBCADQYCAgIB4NgIADLgBCyADQSw2AgggA0G+wtkANgIEIANBgICAgHg2AgAMtwELIANB4gA2AgggA0HqwtkANgIEIANBgICAgHg2AgAMtgELIANBGjYCCCADQczD2QA2AgQgA0GAgICAeDYCAAy1AQsgA0ElNgIIIANB5sPZADYCBCADQYCAgIB4NgIADLQBCyADQRw2AgggA0GLxNkANgIEIANBgICAgHg2AgAMswELIANBJzYCCCADQafE2QA2AgQgA0GAgICAeDYCAAyyAQsgA0EnNgIIIANBzsTZADYCBCADQYCAgIB4NgIADLEBCyADQSc2AgggA0H1xNkANgIEIANBgICAgHg2AgAMsAELIANBMDYCCCADQZzF2QA2AgQgA0GAgICAeDYCAAyvAQsgA0EpNgIIIANBzMXZADYCBCADQYCAgIB4NgIADK4BCyADQTU2AgggA0H1xdkANgIEIANBgICAgHg2AgAMrQELIANBMzYCCCADQarG2QA2AgQgA0GAgICAeDYCAAysAQsgA0EfNgIIIANB3cbZADYCBCADQYCAgIB4NgIADKsBCyABLQABQQJrIgFBB3QgAUH+AXFBAXZyQf8BcQ4IpAGjAaMBpQGmAaMBowGnAaMBCyADQSg2AgggA0HUx9kANgIEIANBgICAgHg2AgAMqQELIANBJTYCCCADQfzH2QA2AgQgA0GAgICAeDYCAAyoAQsgA0EaNgIIIANBocjZADYCBCADQYCAgIB4NgIADKcBCyADQRw2AgggA0G7yNkANgIEIANBgICAgHg2AgAMpgELIANBFzYCCCADQdfI2QA2AgQgA0GAgICAeDYCAAylAQsgBCABQQhqNgIgIARBATYCPCAEQZzJ2QA2AjggBEIBNwJEIARB2AM2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAykAQsgA0EbNgIIIANBpMnZADYCBCADQYCAgIB4NgIADKMBCyADQRU2AgggA0G/ydkANgIEIANBgICAgHg2AgAMogELIANBHzYCCCADQdTJ2QA2AgQgA0GAgICAeDYCAAyhAQsgBCABQQRqNgIgIARBATYCPCAEQYjK2QA2AjggBEIBNwJEIARB8AQ2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAygAQsgA0EVNgIIIANBkMrZADYCBCADQYCAgIB4NgIADJ8BCyADQRY2AgggA0GlytkANgIEIANBgICAgHg2AgAMngELIAQgAUEEajYCICAEQQE2AjwgBEHkytkANgI4IARCATcCRCAEQQg2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAydAQsgA0EmNgIIIANB7MrZADYCBCADQYCAgIB4NgIADJwBCyADQS02AgggA0GSy9kANgIEIANBgICAgHg2AgAMmwELIAQgAUEIajYCICAEQQI2AjwgBEHwy9kANgI4IARCATcCRCAEQdgDNgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMmgELIANBOzYCCCADQYDM2QA2AgQgA0GAgICAeDYCAAyZAQsgA0HMADYCCCADQbvM2QA2AgQgA0GAgICAeDYCAAyYAQsgA0E6NgIIIANBh83ZADYCBCADQYCAgIB4NgIADJcBCyADQcoANgIIIANBwc3ZADYCBCADQYCAgIB4NgIADJYBCyADQTE2AgggA0GLztkANgIEIANBgICAgHg2AgAMlQELIANBFDYCCCADQbzO2QA2AgQgA0GAgICAeDYCAAyUAQsgA0EfNgIIIANB0M7ZADYCBCADQYCAgIB4NgIADJMBCyADQTI2AgggA0HvztkANgIEIANBgICAgHg2AgAMkgELIAQgAUEMajYCDCAEIAFBBGo2AiAgBEECNgI8IARBwM/ZADYCOCAEQgI3AkQgBEEINgIcIARBDTYCFCAEIARBEGo2AkAgBCAEQSBqNgIYIAQgBEEMajYCECAEQSxqIARBOGoQihUgA0EIaiAEQTRqKAIANgIAIAMgBCkCLDcCAAyRAQsgA0EeNgIIIANBlNDZADYCBCADQYCAgIB4NgIADJABCyADQSU2AgggA0Gy0NkANgIEIANBgICAgHg2AgAMjwELIAQgAUEEajYCDCAEIAFBCGo2AiAgBEEDNgI8IARB7NDZADYCOCAEQgI3AkQgBEENNgIcIARBtgI2AhQgBCAEQRBqNgJAIAQgBEEgajYCGCAEIARBDGo2AhAgBEEsaiAEQThqEIoVIANBCGogBEE0aigCADYCACADIAQpAiw3AgAMjgELIANBGjYCCCADQYTR2QA2AgQgA0GAgICAeDYCAAyNAQsgA0HVADYCCCADQZ7R2QA2AgQgA0GAgICAeDYCAAyMAQsgA0EyNgIIIANB89HZADYCBCADQYCAgIB4NgIADIsBCyADQdIANgIIIANBpdLZADYCBCADQYCAgIB4NgIADIoBCyADQSw2AgggA0H30tkANgIEIANBgICAgHg2AgAMiQELIANBMzYCCCADQaPT2QA2AgQgA0GAgICAeDYCAAyIAQsgA0EiNgIIIANB1tPZADYCBCADQYCAgIB4NgIADIcBCyADQTc2AgggA0H409kANgIEIANBgICAgHg2AgAMhgELIANBKDYCCCADQa/U2QA2AgQgA0GAgICAeDYCAAyFAQsgA0ENNgIIIANB19TZADYCBCADQYCAgIB4NgIADIQBCyADQRE2AgggA0Hk1NkANgIEIANBgICAgHg2AgAMgwELIANBFTYCCCADQfXU2QA2AgQgA0GAgICAeDYCAAyCAQsgA0EZNgIIIANBitXZADYCBCADQYCAgIB4NgIADIEBCyADQQ42AgggA0Gj1dkANgIEIANBgICAgHg2AgAMgAELIANBGjYCCCADQbHV2QA2AgQgA0GAgICAeDYCAAx/CyAEIAFBCGo2AiAgBEECNgI8IARB6NXZADYCOCAEQgE3AkQgBEHYAzYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADH4LIANBJTYCCCADQfjV2QA2AgQgA0GAgICAeDYCAAx9CyADQS02AgggA0Gd1tkANgIEIANBgICAgHg2AgAMfAsgA0E8NgIIIANBytbZADYCBCADQYCAgIB4NgIADHsLIANBNDYCCCADQYbX2QA2AgQgA0GAgICAeDYCAAx6CyADQSs2AgggA0G619kANgIEIANBgICAgHg2AgAMeQsgA0EtNgIIIANB5dfZADYCBCADQYCAgIB4NgIADHgLIANBJDYCCCADQZLY2QA2AgQgA0GAgICAeDYCAAx3CyADQR02AgggA0G22NkANgIEIANBgICAgHg2AgAMdgsgA0EoNgIIIANB09jZADYCBCADQYCAgIB4NgIADHULIANBLjYCCCADQfvY2QA2AgQgA0GAgICAeDYCAAx0CyADQSo2AgggA0Gp2dkANgIEIANBgICAgHg2AgAMcwsgA0E2NgIIIANB09nZADYCBCADQYCAgIB4NgIADHILIANBPjYCCCADQYna2QA2AgQgA0GAgICAeDYCAAxxCyADQTM2AgggA0HH2tkANgIEIANBgICAgHg2AgAMcAsgA0EpNgIIIANB+trZADYCBCADQYCAgIB4NgIADG8LIANBGTYCCCADQaPb2QA2AgQgA0GAgICAeDYCAAxuCyADQTs2AgggA0G829kANgIEIANBgICAgHg2AgAMbQsgA0E9NgIIIANB99vZADYCBCADQYCAgIB4NgIADGwLIANBLTYCCCADQbTc2QA2AgQgA0GAgICAeDYCAAxrCyAEIAFBCGo2AiAgBEECNgI8IARBkN3ZADYCOCAEQgE3AkQgBEHYAzYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADGoLIANBOjYCCCADQaDd2QA2AgQgA0GAgICAeDYCAAxpCyADQfAANgIIIANB2t3ZADYCBCADQYCAgIB4NgIADGgLIANBNTYCCCADQcre2QA2AgQgA0GAgICAeDYCAAxnCyADQckANgIIIANB/97ZADYCBCADQYCAgIB4NgIADGYLIANBKTYCCCADQcjf2QA2AgQgA0GAgICAeDYCAAxlCyADQSY2AgggA0Hx39kANgIEIANBgICAgHg2AgAMZAsgA0E7NgIIIANBl+DZADYCBCADQYCAgIB4NgIADGMLIANBODYCCCADQdLg2QA2AgQgA0GAgICAeDYCAAxiCyAEIAFBCGo2AiAgBEECNgI8IARBwOHZADYCOCAEQgE3AkQgBEHYAzYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADGELIANBJzYCCCADQdDh2QA2AgQgA0GAgICAeDYCAAxgCyADQRs2AgggA0H34dkANgIEIANBgICAgHg2AgAMXwsgA0EhNgIIIANBkuLZADYCBCADQYCAgIB4NgIADF4LIANBJTYCCCADQbPi2QA2AgQgA0GAgICAeDYCAAxdCyADQc4ANgIIIANB2OLZADYCBCADQYCAgIB4NgIADFwLIANBHTYCCCADQabj2QA2AgQgA0GAgICAeDYCAAxbCyADQTk2AgggA0HD49kANgIEIANBgICAgHg2AgAMWgsgA0E5NgIIIANB/OPZADYCBCADQYCAgIB4NgIADFkLIANBOTYCCCADQbXk2QA2AgQgA0GAgICAeDYCAAxYCyADQS42AgggA0Hu5NkANgIEIANBgICAgHg2AgAMVwsgBCABQQhqNgIgIARBAjYCPCAEQcTl2QA2AjggBEIBNwJEIARB2AM2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAxWCyADQT82AgggA0HU5dkANgIEIANBgICAgHg2AgAMVQsgA0E2NgIIIANBk+bZADYCBCADQYCAgIB4NgIADFQLIAQgAUEIajYCICAEQQI2AjwgBEGo59kANgI4IARCATcCRCAEQdgDNgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMUwsgA0HGADYCCCADQbjn2QA2AgQgA0GAgICAeDYCAAxSCyADQSg2AgggA0H+59kANgIEIANBgICAgHg2AgAMUQsgBCABQQRqNgIgIARBAjYCPCAEQczo2QA2AjggBEIBNwJEIARBiQU2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAxQCyADQSE2AgggA0Hc6NkANgIEIANBgICAgHg2AgAMTwsgA0EWNgIIIANB/ejZADYCBCADQYCAgIB4NgIADE4LIANBFDYCCCADQZPp2QA2AgQgA0GAgICAeDYCAAxNCyADQR02AgggA0Gn6dkANgIEIANBgICAgHg2AgAMTAsgA0ExNgIIIANBxOnZADYCBCADQYCAgIB4NgIADEsLIANBMzYCCCADQfXp2QA2AgQgA0GAgICAeDYCAAxKCyAEIAFBCGo2AgwgBCABQRBqNgIgIARBAzYCPCAEQczq2QA2AjggBEICNwJEIARB2AM2AhwgBEHYAzYCFCAEIARBEGo2AkAgBCAEQSBqNgIYIAQgBEEMajYCECAEQSxqIARBOGoQihUgA0EIaiAEQTRqKAIANgIAIAMgBCkCLDcCAAxJCyAEIAFBCGo2AiAgBEECNgI8IARB/OrZADYCOCAEQgE3AkQgBEHYAzYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADEgLIANBPzYCCCADQYzr2QA2AgQgA0GAgICAeDYCAAxHCyADQcUANgIIIANBy+vZADYCBCADQYCAgIB4NgIADEYLIANBJDYCCCADQZDs2QA2AgQgA0GAgICAeDYCAAxFCyADQSM2AgggA0G07NkANgIEIANBgICAgHg2AgAMRAsgA0ErNgIIIANB1+zZADYCBCADQYCAgIB4NgIADEMLIANBODYCCCADQYLt2QA2AgQgA0GAgICAeDYCAAxCCyADQc4ANgIIIANBuu3ZADYCBCADQYCAgIB4NgIADEELIAQgAUEIajYCICAEQQI2AjwgBEHA7tkANgI4IARCATcCRCAEQdgDNgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMQAsgA0E6NgIIIANB0O7ZADYCBCADQYCAgIB4NgIADD8LIANBMjYCCCADQYrv2QA2AgQgA0GAgICAeDYCAAw+CyADQSM2AgggA0G879kANgIEIANBgICAgHg2AgAMPQsgA0EpNgIIIANB3+/ZADYCBCADQYCAgIB4NgIADDwLIANBOTYCCCADQYjw2QA2AgQgA0GAgICAeDYCAAw7CyADQdYANgIIIANBwfDZADYCBCADQYCAgIB4NgIADDoLIANBPzYCCCADQZfx2QA2AgQgA0GAgICAeDYCAAw5CyADQSo2AgggA0HW8dkANgIEIANBgICAgHg2AgAMOAsgA0ETNgIIIANBgPLZADYCBCADQYCAgIB4NgIADDcLIANBDTYCCCADQZPy2QA2AgQgA0GAgICAeDYCAAw2CyADQQ82AgggA0Gg8tkANgIEIANBgICAgHg2AgAMNQsgA0HTADYCCCADQa/y2QA2AgQgA0GAgICAeDYCAAw0CyADQcYANgIIIANBgvPZADYCBCADQYCAgIB4NgIADDMLIANBKTYCCCADQcjz2QA2AgQgA0GAgICAeDYCAAwyCyADQTI2AgggA0Hx89kANgIEIANBgICAgHg2AgAMMQsgA0EsNgIIIANBo/TZADYCBCADQYCAgIB4NgIADDALIANBMDYCCCADQc/02QA2AgQgA0GAgICAeDYCAAwvCyADQT02AgggA0H/9NkANgIEIANBgICAgHg2AgAMLgsgA0EeNgIIIANBvPXZADYCBCADQYCAgIB4NgIADC0LIANBMjYCCCADQdr12QA2AgQgA0GAgICAeDYCAAwsCyADQSY2AgggA0GM9tkANgIEIANBgICAgHg2AgAMKwsgA0EgNgIIIANBsvbZADYCBCADQYCAgIB4NgIADCoLIANBODYCCCADQdL22QA2AgQgA0GAgICAeDYCAAwpCyADQRw2AgggA0GK99kANgIEIANBgICAgHg2AgAMKAsgA0EiNgIIIANBpvfZADYCBCADQYCAgIB4NgIADCcLIANBOjYCCCADQcj32QA2AgQgA0GAgICAeDYCAAwmCyADQTM2AgggA0GC+NkANgIEIANBgICAgHg2AgAMJQsgA0HEADYCCCADQbX42QA2AgQgA0GAgICAeDYCAAwkCyAEIAFBCGo2AgwgBCABQRBqNgIgIARBAzYCPCAEQZz52QA2AjggBEICNwJEIARB2AM2AhwgBEHYAzYCFCAEIARBEGo2AkAgBCAEQSBqNgIYIAQgBEEMajYCECAEQSxqIARBOGoQihUgA0EIaiAEQTRqKAIANgIAIAMgBCkCLDcCAAwjCyADQTo2AgggA0G0+dkANgIEIANBgICAgHg2AgAMIgsgA0EuNgIIIANB7vnZADYCBCADQYCAgIB4NgIADCELIANBLTYCCCADQZz62QA2AgQgA0GAgICAeDYCAAwgCyAEIAFBCGo2AiAgBEECNgI8IARB+PrZADYCOCAEQgE3AkQgBEHYAzYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIADB8LIAQgAUEIajYCICAEQQI2AjwgBEHc+9kANgI4IARCATcCRCAEQdgDNgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMHgsgBCABQQhqNgIgIARBAjYCPCAEQbz82QA2AjggBEIBNwJEIARB2AM2AjAgBCAEQSxqNgJAIAQgBEEgajYCLCAEQRBqIARBOGoQihUgA0EIaiAEQRhqKAIANgIAIAMgBCkCEDcCAAwdCyADQegANgIIIANBzPzZADYCBCADQYCAgIB4NgIADBwLIANB6AA2AgggA0G0/dkANgIEIANBgICAgHg2AgAMGwsgA0HEADYCCCADQZz+2QA2AgQgA0GAgICAeDYCAAwaCyADQdMANgIIIANB4P7ZADYCBCADQYCAgIB4NgIADBkLIANB1wA2AgggA0Gz/9kANgIEIANBgICAgHg2AgAMGAsgA0HaADYCCCADQYqA2gA2AgQgA0GAgICAeDYCAAwXCyADQRI2AgggA0HkgNoANgIEIANBgICAgHg2AgAMFgsgA0EZNgIIIANB9oDaADYCBCADQYCAgIB4NgIADBULIANBKTYCCCADQY+B2gA2AgQgA0GAgICAeDYCAAwUCyADQckANgIIIANBuIHaADYCBCADQYCAgIB4NgIADBMLIANBzgA2AgggA0GBgtoANgIEIANBgICAgHg2AgAMEgsgA0HXADYCCCADQc+C2gA2AgQgA0GAgICAeDYCAAwRCyADQT42AgggA0Gmg9oANgIEIANBgICAgHg2AgAMEAsgA0HqADYCCCADQeSD2gA2AgQgA0GAgICAeDYCAAwPCyADQeEANgIIIANBzoTaADYCBCADQYCAgIB4NgIADA4LIANBwwA2AgggA0GvhdoANgIEIANBgICAgHg2AgAMDQsgA0E1NgIIIANB8oXaADYCBCADQYCAgIB4NgIADAwLIAQgAUEIajYCICAEQQI2AjwgBEHkhtoANgI4IARCATcCRCAEQdgDNgIwIAQgBEEsajYCQCAEIARBIGo2AiwgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMCwsgASgCDCgCAEEIaiEBDAELCyADQeEANgIIIANB9IbaADYCBCADQYCAgIB4NgIADAgLIANB7gA2AgggA0HVh9oANgIEIANBgICAgHg2AgAMBwtB5ezgAEEoQcTH2QAQ9BcACyAEQfzG2QA2AixBCAwDCyAEQYTH2QA2AixBCAwCCyAEQYzH2QA2AixBCQwBCyAEQZXH2QA2AixBDQshASAEQQI2AiQgBCABNgIwIARBAjYCPCAEQbTH2QA2AjggBEIBNwJEIAQgBEEsajYCICAEIARBIGo2AkAgBEEQaiAEQThqEIoVIANBCGogBEEYaigCADYCACADIAQpAhA3AgAMAQsCQCABKAIMIgZBA08EQCAEQSxqIgkgASgCCCIBIAZBAWsiBkHQz9kAQQMQ4wMgBEEBNgI8IARB2M/ZADYCOCAEQgE3AkQgBEECNgIkIAQgASAGQQN0ajYCICAEIARBIGo2AkAgBEEQaiAEQThqEIoVIAQoAhQhASAJIAQoAhgiBhD7HiAEQTRqKAIAIgkgBCgCMGogASAGEPsGGiAEQShqIAYgCWo2AgAgBCAEKQIsNwMgIAQoAhAgARDaKQwBCyAEQSBqIAEoAgggBkHgz9kAQQQQ4wMLIARBAjYCPCAEQYTQ2QA2AjggBEIBNwJEIARBBTYCMCAEIARBLGo2AkAgBCAEQSBqNgIsIARBEGogBEE4ahCKFSADQQhqIARBGGooAgA2AgAgAyAEKQIQNwIAIAQoAiAgBCgCJBDaKQsgBEHQAGokACAFQSRqIAIgCCAHIAUoAhwiASAFKAIgEOAOIAUtAABBNWsOBQIDAwMBAwsgAUEIahCzBgwDCyAFQSRqIAUoAgQgBSgCCEH5iNoAQSkQng4aDAELIAVBJGogBSgCBCAFKAIIQcOI2gBBNhCeDhoLIAAgBSkCJDcCACAAQQhqIAVBLGooAgA2AgAgBSgCGCIAQYCAgIB4RwRAIAAgARDaKQsgBRCzBgwBCyABEN0rCyAFQTBqJAALxgICA38BfiMAQRBrIgMkACACKAIsIQQgA0EIaiABIAIoAigiBUEAENUBAkACQAJAIAMtAAhBBEcEQCADKQMIIgZC/wGDQgRSDQELAkACQAJAIAVFDQAgA0EIaiABIAUQ1BwgAy0ACEEERg0AIAMpAwgiBkL/AYNCBFINAQsgA0EIaiABIAUgBCACKAI0IAIoAjgQjgQgAy0ACEEERg0BIAMpAwgiBkL/AYNCBFENASAAIAY3AgAMBAsgACAGNwIADAMLIANBCGogASACEJ8FIAMtAAhBBEcEQCADKQMIIgZC/wGDQgRSDQILAkACQCAERQ0AIANBCGogASAEENQcIAMtAAhBBEYNACADKQMIIgZC/wGDQgRSDQELIABBBDoAAAwDCyAAIAY3AgAMAgsgACAGNwIADAELIAAgBjcCAAsgA0EQaiQAC8ECAgF/AX4jAEEgayIDJAAgA0EYaiABIAIoAghBABDVAQJAAkACQAJAAkAgAy0AGEEERwRAIAMpAxgiBEL/AYNCBFINAQsgA0EANgIMIANBGGogASADQQxqQcqw4ABBARCyEyADLQAYQQRHBEAgAykDGCIEQv8Bg0IEUg0CCyADQRhqIAJBBGogARA3IAMtABhBBEcEQCADKQMYIgRC/wGDQgRSDQMLIANBGGogASADQQxqQc2w4ABBARCyEyADLQAYQQRHBEAgAykDGCIEQv8Bg0IEUg0ECyADQRhqIAIgARDCKgJAIAMtABhBBEcEQCADKQMYIgRC/wGDQgRSDQELIABBBDoAAAwFCyAAIAQ3AgAMBAsgACAENwIADAMLIAAgBDcCAAwCCyAAIAQ3AgAMAQsgACAENwIACyADQSBqJAAL3QUBBX8jAEEgayIDJAACQAJAAkAgARCwD0UEQAJAAkACQAJAAkACQAJAAkAgASgCAEEBaw4HAQIDBAUGBwALIAAgASgCIBCkAQwICyABQSBqIAAQuS0MBwsgASgCBCAAEJQPDAYLIAEoAgQgABCUDwwFCyABKAIEIgEoAiAgABCgICABKAJAQQR0IQIgASgCPCEEA0AgAgRAIAQgABDqHSACQRBrIQIgBEEQaiEEDAELCyABKAIsQThsIQQgASgCKCEFQQAhAgNAIAIgBEcEQAJAAkACQAJAAkACQAJAAkBBBCACIAVqIgEoAgBBBGsiBiAGQQdPG0EBaw4GAQIDBAUGAAsgAUEEaiAAEMwaIAFBGGooAgAgABCfICABQRxqKAIAIAAQoCAMBgsgAUEEaiAAEMwaIAFBGGooAgAgABCfICABQRxqKAIAIAAQoCAMBQsgAUEQaiAAELgtIAFBDGooAgAgABCfIAwECyABQQRqIAAQuC0gAUEQaigCACAAEJ8gDAMLIAFBMGogABC4LSABIAAQ8RcMAgsgAUEQaiAAELgtIAFBBGogABDMGiABQRxqKAIAIAAQnyAgAUEgaigCACAAEKAgDAELIAAgAUEUaigCACABQRhqKAIAELotCyACQThqIQIMAQsLDAQLIAAgASgCBCIBKAIAIgIgASgCBCIBEOgYIAAgAiABEL4KDAMLQcCR5AAoAgAiAkUNAyADQRRqIgAgAiABKAIEIgEoAhggASgCHEGg1OAAQTMQ4A4gABDHASAAEJ4LDAILQcCR5AAoAgAiAkUNAyADQRRqIgAgAiABKAIEIgEoAkggASgCTEHT1OAAQcQAEOAOIAAQxwEgABCeCwwBCyADQQhqIAEQtwogACADKAIIIAMoAgwQ6BggAyABELcKIAAgAygCACADKAIEEL4KCyADQSBqJAAPC0HMyeAAQcgAEIQrAAtBzMngAEHIABCEKwAL1QIBCn8jAEEwayICJAAgASgCgAYhBSACQRBqIAFBpANqIgQgASgC/AUiB0EAIAIQvRUgASgCuAMhCCABKAK0AyEJIAIoAhQhBiACKAIQIQoDQCACQQhqIAQgBSADIAsQvRUgAigCCCEDAkACQAJAAkAgCkUEQCADDQEgAkEYaiAEIAcgBRDKByACKAIYIgRBA0cNAiABKAKoAyABKAKsAyAFQcSSwAAQuB9BADYCDAwDCyADQQFGDQMLQeXs4ABBKEH0ksAAEPQXAAsgACACKQIcNwIEIABBFGogAkEsaigCADYCACAAQQxqIAJBJGopAgA3AgALIAAgBDYCACACQTBqJAAPCyACKAIMIQsgCSAIIAZB1JLAABC5HygAASEDIAkgCCALQeSSwAAQuR8gAzYAAUEBIQMgAiAEIAdBASAGEL0VIAIoAgQhBiACKAIAIQoMAAsAC8sCAQN/IwBBQGoiAiQAIAJBADYCOCACQQE2AiwgAkGgs8MANgIoIAJCBDcCMAJ/QQEgASgCFCIEIAEoAhgiASACQShqELUkDQAaIAJB/wE6ABIgAkEAOwEQA0AgAkEIaiACQRBqEOoSIAItAAhFBEAgAkEANgI4IAJBATYCLCACQZz02AA2AiggAkIENwIwIAQgASACQShqELUkDAILAkAgAi0ACSIDBEAgAkEANgI4IAJBATYCLCACQfjFwwA2AiggAkIENwIwIAQgASACQShqELUkDQELIAIgACADai0AADoAEyACQQI2AiwgAkGExsMANgIoIAJCAjcCNCACQbQBNgIgIAJBpwE2AhggAiADOgAnIAIgAkEUajYCMCACIAJBE2o2AhwgAiACQSdqNgIUIAQgASACQShqELUkRQ0BCwtBAQsgAkFAayQAC/4CAQF/IwBBkAFrIgIkACACQeDO4AA2AogBIAJBwN/DADYCgAEgAkHA38MANgJ4IAJBwN/DADYCcCACQfDfwwA2AmggAkHw38MANgJgIAJBwN/DADYCWCACQcDfwwA2AlAgAkGA4MMANgJIIAJB8N/DADYCQCACQfDfwwA2AjggAkHg38MANgIwIAJB0N/DADYCKCACQcDfwwA2AiAgAkHA38MANgIYIAJBsN/DADYCECACIAA2AkQgAiAAQcEAajYCfCACIABBQGs2AnQgAiAAQT9qNgJs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ACgCACICQQlHBEACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4IAQIDBAUGBwgACyAAKAIMQcgAbCEEIAAoAgghAgNAIAQEQAJAAkACQAJAIAIpAwBCA30iB6dBAWpBACAHQgJUG0EBaw4CAQIACyABIAJBIGoQggkgAiABEOojDAILIAEgAkEQahCCCQwBCyABIAJBEGoQggkLIAJByABqIQIgBEHIAGshBAwBCwsgAEEcaiABEOgjDAkLIABBCGogARDRBwwICyAAKAIMQdAAbCEEIAAoAgghAgNAIAQEQAJAAkACQAJAQgIgAikDAEICfSIHIAdCAlobp0EBaw4CAQIACyACQQhqIAEQ6yMMAgsgASACQQhqEIIJDAELIAIgARDrIyACQSBqIAEQ6iMLIAJB0ABqIQIgBEHQAGshBAwBCwsgAEEcaiABEOgjDAcLAkACQCAAKAIIQQFrDgIBCAALIABBEGogARDBJwwHCyABIABBEGoQqhEMBgsgAEEEaiABEM0sDAULIABBEGogARDoIwwECyABIAAoAgRBKGoQggkMAwsgAEEEaiABEM0sDAILIAEgAEEQahCCCQUgAEEIaiABENcECwwACwALBSABIAJBCGoQggkgAigCICECDAELCwsgBUEQaiQAC7UCAQR/IAAoAghBOGwhAiAAKAIEIQMDQAJAIAEgAkcEQAJAAkACQAJAAkACQAJAQQQgASADaiIAKAIAQQRrIgQgBEEHTxtBAWsOBgECAwQFBgALIABBEGpCADcCACAAQQRqEKEbIABBGGoQgiggAEEcahCQJgwHCyAAQRBqQgA3AgAgAEEEahChGyAAQRhqEIIoIABBHGoQkCYMBgsgAEEEakIANwIAIABBEGoQjC4gAEEMahCCKAwFCyAAQQhqQgA3AgAgAEEEahCMLiAAQRBqEIIoDAQLIABBKGpCADcCACAAQTBqEIwuIAAQ1xkMAwsgAEEUakIANwIAIABBEGoQjC4gAEEEahChGyAAQRxqEIIoIABBIGoQkCYMAgsgAEEEahCFJAwBCw8LIAFBOGohAQwACwALvwIBA38jAEEgayICJAAgAAJ/AkACQAJAAkAgAUEoaiIDEOMNIgRFDQAgBCgCAEECRw0AIAQtAAhBAkcNACAELQAJQRdGDQELIAJBEGogAxCWCyACIAMQuBQgAkHo7d8ANgIMIAJBNDoACCACKAIAIAIoAgQgAkEIahCBFSEEIAMQ4w0iA0UNAiADKAIAQSRGDQEMAgsgASgCKCEDIAFBJTYCKCABIAEpA0A3A3ggAkEUaiABQTRqKQIANwIAIAJBHGogAUE8aigCADYCACACIAEpAiw3AgwgAiADNgIIIAJBCGoQxwogACABKQN4NwIEQQAMAgsgASABKQNANwN4IAEoAiggAUElNgIoQSRHBEBB5ezgAEEoQYDu3wAQ9BcACyABIAEoAiwQhgwLIAAgBDYCBEEBCzYCACACQSBqJAALowIBA38jAEEQayICJAAgAkEANgIMAn8gAUGAAU8EQCABQYAQTwRAIAFBgIAETwRAIAIgAUE/cUGAAXI6AA8gAiABQRJ2QfABcjoADCACIAFBBnZBP3FBgAFyOgAOIAIgAUEMdkE/cUGAAXI6AA1BBAwDCyACIAFBP3FBgAFyOgAOIAIgAUEMdkHgAXI6AAwgAiABQQZ2QT9xQYABcjoADUEDDAILIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAToADEEBCyEBIAAgACgCBCIDIAFrNgIEIAAgACgCACABIANLciIENgIAQQEhAyAERQRAIAAoAggiACgCFCACQQxqIAEgACgCGCgCDBEDACEDCyACQRBqJAAgAwvPAgECfyMAQUBqIgIkAAJAAkAgASgCAEUEQAJAIAEoAgxBAUcNACABKAIIIgEoAgAiAyABKAIERw0AIAJBADYCCCACIAMgAkEIahDkCSACKAIEIQEgAigCACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQayvxAA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEPUqDQMgACACKQIMNwIAIABBCGogAkEUaigCADYCAAwCCyAAQYCAgIB4NgIADAELAkAgASgCDEEBRw0AIAEoAggiAS0AACIDIAEtAAFHDQBBAUEBEKsgIQEgAEEBNgIIIAAgATYCBCAAQQE2AgAgASADOgAADAELIABBgICAgHg2AgALIAJBQGskAA8LQfy94ABBNyACQT9qQcSvxABBgL/gABDFDgAL2AIBAn8jAEEQayICJAACfwJAAkACQAJAAkACQAJAAkACQCAAKAIAIgNBB2tB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CHFqIA86AAAgDCAGQXRsaiIGIAAoAgAgCkF0bGpBDGsiCikAADcAACAGQQhqIApBCGooAAA2AAAgAkEBayECIBBCAX0gEIMhEAwACwALIAAgAUEQakHKARC2BAtBAAsaIAFBQGskAAwBCxCxGwALCyAFIAVBFGo2AhggBSAANgIcIAUgACgCACAAKAIEIBEgBUEYakHJARCnCCAAKAIAIQEgBSgCBCECAkAgBSgCAEUEQCABIAJBdGxqQQRrIAM2AgAgBUEMahD5HgwBCyABIAJqIgQtAAAhByAFKQIMIRAgBCARp0EZdiIEOgAAIAEgACgCBCACQQhrcWpBCGogBDoAACAAIAAoAgggB0EBcWs2AgggACAAKAIMQQFqNgIMIAEgAkF0bGoiAEEEayADNgIAIABBDGsgEDcCAAsgBUEgaiQAC8QCAQF/IwBBEGsiAiQAAn8CQAJAAkACQAJAAkACQAJAIAAoAgAiACgCAEEBaw4HAQIDBAUGBwALIAIgAEEIajYCDCABQYi73wBBBSACQQxqQYAEEMwKDAcLIAIgAEEIajYCDCABQY273wBBAiACQQxqQYEEEMwKDAYLIAIgAEEEajYCDCABQY+73wBBAyACQQxqQfADEMwKDAULIAIgAEEEajYCDCABQZK73wBBBSACQQxqQfEDEMwKDAQLIAIgAEEEajYCDCABQZe73wBBCyACQQxqQYIEEMwKDAMLIAIgAEEEajYCDCABQaK73wBBCyACQQxqQYMEEMwKDAILIAIgAEEEajYCDCABQa273wBBBiACQQxqQYQEEMwKDAELIAIgAEEEajYCDCABQbO73wBBCCACQQxqQYUEEMwKCyACQRBqJAALqQICA38BfiMAQYABayICJAAgAAJ/IAEtABRBAkYEQCACQQhqIAEoAgAiAUEgaikDADcDACACQRBqIAFBKGopAwA3AwAgAkEgaiIEIAFBCGopAwA3AwAgAiABKQMYNwMAIAIgASkDADcDGCABKQMQIQUgAkEoaiIDIAIQ4wdBwABBCBCrICADQcAAEPsGIQMgAkH4AGogBCkDADcCACAAQQA2AgggACADNgIoIAAgBTcDICACIAIpAxg3AnAgACACKQJsNwIMIABBFGogAkH0AGopAgA3AgAgAEEcaiACQfwAaigCADYCACABEJkrQRQMAQsgACABKQMA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QfADEMwKDAULIAIgAEEEajYCDCABQZK73wBBBSACQQxqQfEDEMwKDAQLIAIgAEEEajYCDCABQZe73wBBCyACQQxqQYIEEMwKDAMLIAIgAEEEajYCDCABQaK73wBBCyACQQxqQYMEEMwKDAILIAIgAEEEajYCDCABQa273wBBBiACQQxqQYQEEMwKDAELIAIgAEEEajYCDCABQbO73wBBCCACQQxqQYUEEMwKCyACQRBqJAALvgICCH8EfiMAQeAAayIDJAAgASgCDCIIIAEoAgQiBGtBBHYiAiAAKAIAIAAoAggiBWtLBEAgACAFIAJBCEHYABCbFwsgACgCBCAAKAIIIgZB2ABsaiECIANBMGohBwNAIAQgCEcEQCABIARBEGoiBTYCBCAEKQMAIQogA0EIaiIEEOQXIAMpAjwhCyADKQJEIQwgAykDKCENIANB2ABqIgkgB0EIaigCADYCACADIAcpAwA3A1AgBBDcFiACQShqIA03AgAgAkEYakIANwIAIAJBEGogCjcCACACQQhqQQA2AgAgAkEHNgIAIAJBMGogAykDUDcCACACQThqIAkoAgA2AgAgAkHEAGogDDcCACACQTxqIAs3AgAgAkHYAGohAiAGQQFqIQYgBSEEDAELCyAAIAY2AgggA0HgAGokAAujAgIEfwF+IwBBMGsiAiQAAkACQCABQShqEOMNIgMEQCADKAIAQQRGDQELIAJBEGogARCtASACKAIQQQVHBEAgACACKQMQNwMAIABBGGogAkEoaikDADcDACAAQRBqIAJBIGopAwA3AwAgAEEIaiACQRhqKQMANwMADAILIAAgAigCFDYCBCAAQQY2AgAMAQsgAkEQaiIFIAEQqgUgAikDECIGUEUEQCACIAIoAhwiAzYCDCACIAIoAhgiBDYCCCACIAY3AwAgAkG9vOAAQQsQ0hsEQCACQeAAOgAQIAEgBCADIAUQ2BkLIAAgAzYCFCAAIAQ2AhAgACAGNwMIIABBBTYCAAwBCyACKAIYIQEgAEEGNgIAIAAgATYCBAsgAkEwaiQAC7QCAQZ/IwBB0ABrIgIkACABKAIEIQMgASgCDCEGIAEoAhQhBQJAAkACQAJAAkADQCADIAZGDQQgAkEQaiIEIANBKBD7BhogASADQShqIgM2AgQgAigCEEEHRwRAIAJBCGogBBCQDCACKAIM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Ba1CIIaEQQIQviMMAQsgACADOgAkIAAgBzYCICAAQQI6ABQgACACIAEoAnwiASABIAJJGzYCHCAAIAIgASABIAJLGzYCGCAAIAStIAWtQiCGhDcDAAsgBkEgaiQAC7QCAQR/IwBBIGsiAyQAAkACQAJAA0ACQAJAIAEoAgBBAWsOBgMABAAFBQELIAEoAgQhAQwBCwsgAUEIahCqHEUNAiABKAIUIQIgASgCECEBIANBKToACCAAIAEgAiADQQhqENceDAILIAEoAgxBKGwhAiABKAIIIQEDQCACRQ0CIAEoAgBBB0cEQCAAIAEQjggLIAFBKGohASACQShrIQIMAAsACyABKAIMQThsIQIgASgCCCEBA0AgAkUNAUEoIQQCQAJAAkACQCABKAIAQQFrDgICAAELQQQhBAsgACABIARqKAIAEI4IDAELIAFBEGoQqhxFDQAgASgCHCEEIAEoAhghBSADQSk6AAggACAFIAQgA0EIahDXHgsgAUE4aiEBIAJBOGshAgwACwALIANBIGokAAuxAgIBfwF+IwBBIGsiAyQAAkACQAJAAkACQAJAAkACQCACQf8BcUEBaw4DAQIEAAsgA0EANgIQIANBCGogASADQRBqQYS74ABBBhCyEyADLQAIQQRGDQIgAykDCCIEQv8Bg0IEUQ0CIAAgBDcCAAwGCyADQQA2AhAgA0EIaiABIANBEGpBirvgAEEJELITIAMtAAhBBEYNASADKQMIIgRC/wGDQgRRDQEgACAENwIADAULIANBADYCECADQQhqIAEgA0EQakGTu+AAQQcQshMgAy0ACEEERg0AIAMpAwgiBEL/AYNCBFINAgsgA0EQaiABENARIAMtABBBBEYNACADKQMQIgRC/wGDQgRSDQILIABBBDoAAAwCCyAAIAQ3AgAMAQsgACAENwIACyADQSBqJAALpQICA38BfiMAQSBrIgMkACACKAIQIQQgA0EYaiABIAIoAgwiBUEAENUBAkACQAJAAkAgAy0AGEEERwRAIAMpAxgiBkL/AYNCBFINAQsgA0EANgIMIANBGGogASADQQxqQcqw4ABBARCyEyADLQAYQQRHBEAgAykDGCIGQv8Bg0IEUg0CCyADQRhqIAEgBSAEIAIoAgQgAigCCEGQ0gEQnQMgAy0AGEEERwRAIAMpAxgiBkL/AYNCBFINAwsg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AEEIagwPCyAAQRBqDA4LIABBCGoMDQsgAEEQagwMCyAAQQhqDAsLIABBCGoMCgsgAEEUagwJCyAAQRRqDAgLIABBCGoMBwsgAEEIagwGCyAAQQhqDAULIABBDGoMBAsgAEEIagwDCyAAQShqDAILIABBIGoMAQsgAEEIagsoAgALqgIBAn8jAEEQayICJAACfwJAAkACQAJAAkACQAJAQQQgACgCACIAKAIAQQRrIgMgA0EHTxtBAWsOBgECAwQFBgALIAIgAEEEajYCDCABQcyZ2QBBEyACQQxqQfACEMwKDAYLIAIgAEEEajYCDCABQd+Z2QBBGCACQQxqQfECEMwKDAULIAIgAEEEajYCDCABQfeZ2QBBEyACQQxqQfICEMwKDAQLIAIgAEEEajYCDCABQYqa2QBBESACQQxqQfMCEMwKDAMLIAIgADYCDCABQZua2QBBESACQQxqQfQCEMwKDAILIAIgAEEEajYCDCABQaya2QBBESACQQxqQfUCEMwKDAELIAIgAEEEajYCDCABQb2a2QBBECACQQxqQfYCEMwKCyACQRBqJAALlwICAn8BfiMAQSBrIgMkACABQRhqIQQCQAJAAkACQAJAIAEtACxBAkYEQCADQRBqIAQoAgAgAhCdCCADLQAQQQRGDQIgAykDECIFQv8Bg0IEUg0BDAILIANBEGogBCACEOQSIAMtABBBBEYNASADKQMQIgVC/wGDQgRRDQELIAVC/wGDQgRSDQELIANBADYCECADQQhqIAIgA0EQakGDtuAAQQEQshMgAy0ACEEERwRAIAMpAwgiBUL/AYNCBFINAgsgA0EQaiABIAIQlhMCQCADLQAQQQRHBEAgAykDECIFQv8Bg0IEUg0BCyAAQQQ6AAAMAwsgACAFNwIADAILIAAgBTcCAAwBCyAAIAU3AgALIANBIGokAAv/AQEGfyMAQYABayICJAAgAUEEaiEFIAJBOGohBgNAIAJBNGogARDEBQJAAkAgAigCNARAIAAgAikCNDcCACAAQRhqIAJBzABqKAIANgIAIABBEGogAkHEAGopAgA3AgAgAEEIaiACQTxqKQIANwIADAELIAEoAmAiAwRAIAJB5ABqIgQgAyABKAJkIgcoAgwRAAAgAigCZARAIAJBNGogASgCaCAEENACIAIoAjQiBA0DCyADIAcQtBsgAUEA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CyACQQhqIAEQmiIgAigCKCABEKoSCyAAQQxqIQAgA0EMayEDDAELCwuvCAIGfwF+AkACQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOBwECAwQFBgcACyAAQgA3AxAgACgCIBCXBA8LIABCADcDECAAQSBqEI0uDwsgACgCBBC5Kg8LIAAoAgQQuSoPCyAAKAIEEJITDwsgACgCBCIAQgA3AxAgAEIANwMAIABBIGoQkCYgAEEkahDxAw8LIAAoAgQiAEIANwMYIABCADcDCCAAKAIoQTBsIQEgACgCJCEDQQAhAANAIAAgAUYNAiAAIANqIgJBEGpCADcCACACQSBqQgA3AgAgAkEoaiICKAIABEAgAhCMLgsgAEEwaiEADAALAAsgACgCBCIAQgA3A0ggAEIANwMQIAAtAEVBA0YNACAAQSBqIQEDQCABLQAlQQJGBEACQCABQgA3AgwgASgCBCIAIAEoAghBOGxqIQYDQAJAAkACQAJAAkACQAJAIAAgBkcEQCAAQThqIQIgACgCACIBQQlGDQECQAJAAkAgAUEBaw4IAQIKCQgHBgUACyAAQgA3AhQgACgCDEHIAGwhBCAAKAIIIQVBACEBA0AgASAERwRAAkACQAJAAkAgASAFaiIDKQMAQgN9IgenQQFqQQAgB0ICVBtBAWsOAgECAAsgA0EoakIANwIAIANBOGpCADcCACADEIgkDAILIANBGGpCADcCACADQQhqQgA3AgAMAQsgA0EYakIANwIAIANBCGpCADcCAAsgAUHIAGohAQwBCwsgACgCEEIANwMIIABBHGoQkSYgAiEADAoLIABCADcCMCAAQQhqEOUIIAIhAAwJCyAAQgA3AhAgACgCDEHQAGwhBCAAKAIIIQVBACEBA0ACQCABIARHBEACQAJAAkBCAiABIAVqIgMpAwBCAn0iByAHQgJaG6dBAWsOAgECAAsgA0EYakIANwIAIANBKGpCADcCAAwDCyADQRBqQgA3AgAMAgsgA0EQakIANwIAIANBQGtCADcCACADQSBqEIgkDAELIAAoAhgiAQRAIAFCADcCCAsgAEEcahCRJiACIQAMCgsgAUHQAGohAQwACwALDAgLIABBCGoQjAQgAiEADAYLIABCADcCGCAAQgA3AgggAiEADAULIABCADcCCCAAQQRqEIwuIAIhAAwECyAAKAIE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AgAgASAAKALEASADayIDNgIEIABBwAFqA0ACQCACIANPDQAgASgCACACai0AAEECdEGAtdkAaigCACIDRQ0AIAEgAxEFACEDIAEoAgghAiADRQ0AIAEgAiADaiICNgIIIAEoAgQhAwwBCwsgAS0ADCEDIAIQ6yggA0EBRgRAIABBAToAvQELIAFBEGokACAAKALAASIBIAAoAsQBRwR/IAEtAABBO0cgBnEFIAYLQQFxIQkjAEFAaiIBJAACQCAAKAIAQQFHDQAgASAAQcABaiALIAQQ0RUgASgCACECAkAgASgCBCIDQQJrIgYEQCADQQJJDQEgAiAGaiwAAEG/f0wNAQsgAEEEaiEDIAAoAugBQQhqIAIgBhCEGiEMIAEgByAEIAQgB0kbNgIUIAEgByAEIAQgB0sbNgIQIAFBAToAGCABIAw3AwggACgCwAEgACgCxAEQqxwaIAlFBEAgAUEoaiABQRBqKQMANwMAIAFBMGogAUEYaikDADcDACABQQE6ADwgASABKQMINwMgIAEgACgCqAE2AjggAyABQSBqEOAQDAILIAMgAUEIahDVEgwBCyACIANBACAGQdzs2AAQ1CYACyABQUBrJAAMAgsgAEEBOgC9AQwCCyAAKALYASEBIAhBGjoACCAAKALcASAALQCCAiABIAEgCEEIahDDEQsgCEEgaiQADAELIAEQsBUgBEEqRiECDAELCwwACwALrwIBAX8jAEHwAGsiAiQAIAAoAgAhACACQbSv2QA2AmggAkGggNkANgJgIAIgAEE0ajYCXCACQaCA2QA2AlggAiAAQTNqNgJUIAJBoIDZADYCUCACIABBMmo2AkwgAkHYgdkANgJIIAIgAEEwajYCRCACQciB2QA2AkAgAiAAQSRqNgI8IAJBoIDZADYCOCACIABBMWo2AjQgAkG4gdkANgIwIAIgAEEgajYCLCACQbiA2QA2AiggAiAAQRxqNgIkIAJBhIbZADYCICACIAA2AhwgAkGkr9kANgIYIAIgAEEYajYCFCACQbie2gA2AhAgAiAAQRBqNgIMIAIgAEE1ajYCbCACIAJB7ABqNgJkIAFBlYTZAEELQZSG2QBBDCACQQxqQQwQzwggAkHwAGokAAuZAgIIfwF+IwBBIGsiAiQAAkAgASgCBCIDRQRAIABBCGpByKDjACkDADcCACAAQcCg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AkACQAJAAkACQCADIAZqIgIoAgAiBEEEa0EAIARBBWtBCEkbQQFrDggABQECBQUDBAULIAJBCGogARC0IgwECyACQQhqIAEQtCIgAkE8aiABEJImIAJBMGogARDAGgwDCyACQSRqIAEQkiYgAkEsaiABEMAaDAILIAJBBGogARC+GgwBCyACQQhqIgQoAgBBBUcEQCAEIAEQtCILIAJBPGogARCSJiACQTBqIAEQwBoLIANB2ABqIQMMAQsLIABBMGogARCSJgvoAQIFfwF+IAEoAgwgAUEMaygCAEkEQCMAQRBrIgNBCGogAUEIaigCADYCACADIAEpAgA3AwAgAUEkayECIAEpAhAhByABKAIMIQQCfwJAA0AgAiIBQTRqIAFBHGopAgA3AgAgAUEsaiABQRRqKQIANwIAIAFBJGoiBSABQQxqIgYiAikCADcCACAAIAJGDQEgAUEYayECIAQgASgCAEkNAAsgBiECIAUMAQsgAUEMaiECIAFBJGoLIQEgAiADKQMANwIAIAJBCGogA0EIaigCADYCACABQQhrIAc3AgAgAUEMayAENgIACwv+AQEBfyMAQUBqIgYkACAGQRBqIAIgAyAEIAVBqJfAABDsFiAGKAIQIQUgBigCFCECIAZCATcCKAJAAkACQCACIAEoAkAiA08EQCAGQQhqIAEgBkEoaiAFIAIgASgCPCADIAEoAjARCwAgBigCCEEBcQ0BCyAAQQA2AgAgACAGKQIcNwIEIABBDGogBkEkaigCADYCAAwBCyAGKAIMIARqIgEgA2oiAiABSQ0BIABBADYCDCAAIAI2AgggACABNgIEIABBATYCAAsgBkFAayQADwsgBkEANgI4IAZBATYCLCAGQeigwwA2AiggBkIENwIwIAZBKGpB8KDDABDDHQALggIBB38jAEEQayIDJAAgAigCBCEEIAEoAgQhBSACLQAMIQggAS0ADCEJAkACQAJAIAEoAggiBgRAIAIoAggiBw0BCyADQQhqQfyu4AAoAgA2AgAgA0H0ruAAKQIANwMADAELIAdBAUYEQCADQQhqIAFBCGooAgA2AgAgAyABKQIANwMAIAMgBCgCABDMByAEIQUgAiEBDAILIAZBAUYEQCADQQhqIAJBCGooAgA2AgAgAyACKQIANwMAIAMgBSgCABDMBwwCCyADIAUgBiAEIAcQtg4LIAIoAgAgBBDfKQsgASgCACAFEN8pIAAgCSAIEOEVQf8BcSADEOwSIANBEGokAAvNAQEDfyADQfj///8BcQRAIAAgACADQXhxIgRqIAAgA0EDdiIDQQ5sIgVqIAMQnQkhACABIAEgBGogASAFaiADEJ0JIQEgAiACIARqIAIgBWogAxCdCSECCwJ/IAAtAAAiAyABLQAAIgRHBEAgAyAESQwBCyAALQABIAEtAAFJCyEFAn8gAi0AACIGIANHBEAgAyAGSQwBCyAALQABIAItAAFJCyAFRgR/IAIgASAEIAZHBH8gBCAGSQUgAS0AASACLQABSQsgBXMbBSAACwvNAQEDfyADQfj///8BcQRAIAAgACADQQN2IgNBBXQiBGogACADQThsIgVqIAMQngkhACABIAEgBGogASAFaiADEJ4JIQEgAiACIARqIAIgBWogAxCeCSECCwJ/IAAoAgAiAyABKAIAIgRHBEAgAyAESQwBCyAAKAIEIAEoAgRJCyEFAn8gAigCACIGIANHBEAgAyAGSQwBCyAAKAIEIAIoAgRJCyAFRgR/IAIgASAEIAZHBH8gBCAGSQUgASgCBCACKAIESQsgBXMbBSAACwv3AQEEfyACKAIIIQMgAigCBCEEIAAQnQ8hBQJAAkAgASACKAIASQRAA0AgA0UEQEEAIQAMBAsgBSgCECAFKAIUIANBAWsiAEGAwtgAELofIgYoAgAgAUkNAiAEQQIgBi0ABCIDQQFrIANBBEYbQf8BcWshBCAAIQMMAAsACyADIAUoAhQiACAAIANJGyEAA0AgACADRg0CIAUoAhAgBSgCFCADQZDC2AAQuh8iBigCACABTw0BIARBAiAGLQAEIgZBAWsgBkEERhtB/wFxaiEEIANBAWohAwwACwALIAMhAAsgAiAANgIIIAIgBDYCBCACIAE2AgAgBAv4AQEFfyMAQSBrIgQkACABKALQASEHIAFBwAFqIgUQsBUCQAJAIAEoAsABIAEoAsQBEP0cIAJB/wFxIgNHBEAgBUE9EJgYRQRAQQtBDCADQStGGyEGQRQhAwwCC0EBQQIgAkH/AXFBK0YbIQZBFSEDDAELIAUQsBUCQCABLQC9AUUEQCACQf8BcUErRw0BQRghAwwCC0EYIQMCQCACQf8BcUEraw4DAgEAAQsgBUE+EJgYRQ0AIARBJjoACCABIAcgBEEIahDsKCABQQAQvgUgARDqCCAAIAEQuQ4MAgtBGSEDCyAAIAY6AAQgACADNgIACyAEQSBqJAAL9gECAn8CfiMAQSBrIgIkAAJAIAAoAgAiA0EATgRAIAJBCGogARCAHSACKAIIQQFxRQ0BIAIgA0EBdCIDIAIoAgwiASABIANJG0E4EIcVIABBCGoiASgCACEDIAIpAwAhBCABQQA2AgAgAkEYaiIBIAM2AgAgACkCACEFIAAgBDcCACACIAU3AxAgACgCFCIDIAAoAgxGBEAgAEEMahDCFwsgACADQQFqNgIUIAAoAhAgA0EMbGoiACACKQMQNwIAIABBCGogASgCADYCACACQSBqJAAPC0HAyt8AQRFB4O/YABC7EgALQcDK3wBBEUHw79gAELsSAAv2AQICfwJ+IwBBIGsiAiQAAkAgACgCACIDQQBOBEAgAkEIaiABEIAdIAIoAghBAXFFDQEgAiADQQF0IgMgAigCDCIBIAEgA0kbQTAQhxUgAEEIaiIBKAIAIQMgAikDACEEIAFBADYCACACQRhqIgEgAzYCACAAKQIAIQUgACAENwIAIAIgBTcDECAAKAIUIgMgACgCDEYEQCAAQQxqEMIXCyAAIANBAWo2AhQgACgCECADQQxsaiIAIAIpAxA3AgAgAEEIaiABKAIANgIAIAJBIGokAA8LQcDK3wBBEUHg79gAELsSAAtBwMrfAEERQfDv2AAQuxIAC/oBAQV/IwBBEGsiAyQAIAAoAghBDGwhBCAAKAIEIQADQCAEBEACQCAAKAIABEAgACABENcsDAELAkACQAJAAkACQAJAAkBBBCAAKAIEIgIoAgAiBUEFayIGIAZBBk8bQQFrDgUAAQIDBAYLIAJBCGogARD7ISACQShqIAEQ1ywMBAsgAkEoaiABENcsDAMLIAJBCGogARDEJQwCCyACIAEQkRsMAQsgASACQQhqEMUlCyACKAIAIQULIAVBBUcNACADIAIpAwggAkEYaigCABDAIyABIAMpAwAgAygCCBCrEQsgAEEMaiEAIARBDGshBAwBCwsgA0EQaiQAC40CAgJ/An4jAEEQayIDJAACQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgMGBgQFAAsgACgCICABEFIMBQsgACgCICABEKsSDAQLIAAoAgQgARDPDQwDCyAAKAIEIAEQzw0MAgsgACgCBCIAKAIoQTBsIQIgACgCJEEoaiEAA0AgAkUNAiAAKAIABEAgACABEIItCyACQTBrIQIgAEEwaiEADAALAAsgAyAAKAIEIgAQkBUgASgCGCECIAMpAwAhBCABIAMoAgg2AhggASkDECEFIAEgBDcDECAALQBFQQNHBH4gAEEgaiABEJAPIAEpAxAFIAQLEO0mIAEgAjYCGCABIAU3AxALIANBEGokAAveAQEGfyAAKAIIIgNBMGwhASAAKAIEIgYhAgNAIAEEQCABQTBrIQEgAhDSBCACQTBqIQIMAQsLAkAgA0UNACAGIQJBACEBAkADQCACIQUgASADRgRAIAMhAQwCCyAFQTBqIQIgAUEBaiEBIAUQxRwNAAsgBRDQBUEBIQQLIAMgAWshAiAGIAFBMGxqIQEDQAJAIAIEQCABEMUcRQRAIAEQ0AUgBEEBaiEEDAILIAEgBEFQbGogAUEwEPsGGgwBCyAAIAMgBGs2AggMAgsgAkEBayECIAFBMGohAQwACwALC+MBAgV/AX4gASgCDCIEIAFBDGsoAgBJBEAjAEEQayIDQQhqIAFBCGooAgA2AgAgAyABKQIANwMAIAFBJGshAiABKQIQIQcCfwJAA0AgAiIBQTRqIAFBHGopAgA3AgAgAUEsaiABQRRqKQIANwIAIAFBJGoiBSABQQxqIgYiAikCADcCACAAIAJGDQEgAUEYayECIAQgASgCAEkNAAsgBiECIAUMAQsgAUEMaiECIAFBJGoLIQEgAiADKQMANwIAIAJBCGogA0EIaigCADYCACABQQhrIAc3AgAgAUEMayAENgIACwvhAQEDfyMAQSBrIgIkAAJAIAMoAhAiBiADKAIUIghNBEAgAygCAEEBa0ECTwRAIAJBFGoiByABIAMoAgggAygCDCAGIAgQigcgAkEEaiAHEP4bDAILIAJBFGoiByABIAMoAgggAygCDCAGIAgQowsgAkEEaiAHEP4bDAELIAJBADYCBAtBASEDAkAgAigCBEEBRgRAIAIoAhAhASAFRQ0BIAIoAgwhBiAEIAIoAghBAWo2AgAgBUEBRg0BIAQgBkEBajYCBAwBC0EAIQMLIAAgATYCBCAAIAM2AgAgAkEgaiQAC+EBAQN/IwBBIGsiAiQAAkAgAygCECIGIAMoAhQiCE0EQCADKAIAQQFrQQJPBEAgAkEUaiIHIAEgAygCCCADKAIMIAYgCBD7CyACQQRqIAcQ/hsMAgsgAkEUaiIHIAEgAygCCCADKAIMIAYgCBC2ECACQQRqIAcQ/hsMAQsgAkEANgIEC0EBIQMCQCACKAIEQQFGBEAgAigCECEBIAVFDQEgAigCDCEGIAQgAigCCEEBajYCACAFQQFGDQEgBCAGQQFqNgIEDAELQQAhAwsgACABNgIEIAAgAzYCACACQSBqJAAL6wECBn8BfiMAQSBrIgIkAANAIAEgBUcEQCAFQQV0IQMgBUEBaiEFIAAgA2oiBCgCBCIGRQ0BIAQoAgAhAwJAIAQoAgwiBEUNACADKQMAIQggAiAENgIYIAIgAzYCEEEBIQQgAiADIAZqQQFqNgIMIAIgA0EIajYCCCACIAhCf4VCgIGChIiQoMCAf4M3AwADQCAERQ0BIAIQ6Q4hByACIAIoAhhBAWsiBDYCGCAHRQ0BIAdBDGsQ+R4MAAsACyACQQxBCCAGQQFqEOYNIAMgAigCCGsgAigCACACKAIEELokDAELCyACQSBqJAAL7QEBAn8jAEEwayIDJAAgA0EoaiACQRBqKAIAIgQ2AgAgA0EgaiACQQhqKQIANwMAIAMgAikCADcDGCADAn8CQAJAAkACQCABLQAJQQFrDgIBAAILIARBAXENAUEBENImDAMLIARBAXENAQsgA0EIaiABKAIAIAEoAgQiASgCCEEBa0F4cWpBCGogA0EYaiABKAJIEQQAIAMoAghBAkYEQCADKAIMDAILIAAgAykCCDcCACAAQQhqIANBEGopAgA3AgAgA0EwaiQADwtBABDSJgs2AhhBpPrDAEEtIANBGGpB2IHEAEG8+8MAEMUOAAvpAQIIfwN+IwBBEGsiBCQAIAQgAkEIQSAQ+xQgBCgCACIHIAJB////P3EiAyADIAdLGyEGIAQoAgQhCCAEQQxqIQkDQCAGBEAgASAFaiIDQQhqKQIAIQsgA0EYai0AACEKIANBEGopAwAQuiMhDCADKQMAEPwaIQ0gBSAIaiIDQRhqIAo6AAAgA0EIaiALNwMAIANBEGogDDcDACADIA03AwAgA0EZaiAEKAAJNgAAIANBHGogCSgAADYAACAGQQFrIQYgBUEgaiEFDAELCyAAIAI2AgggACAINgIEIAAgBzYCACAEQRBqJAALigIBAX4CQAJAAkACQAJAAkACQAJAIAAoAgBBAWsOBwIDBAUGBwABCyAAKAIEIgApAwghAQJAIAAoAgBFBEAgARD5GgwBCyABIABBGGopAwAQjCsLIAAtAEVBA0cEQCAAQSBqEPkZCyAAQdgAQQgQ1REPCyAAKQMIEPkaIABBIGoQrRUPCyAAKQMIEPkaIABBIGoQhRcPCyAAQQRqEP8kDwsgAEEEahCAJQ8LIABBBGoQ+hwPCyAAKAIEIgApAwgQ+RogAEEgahDVHSAAQSRqEIMFIABBMEEIENURDwsgACgCBCIAKQMAEPkaIABBIGoQnBIgACgCICAAQSRqKAIAEJIqIABBMEEIENURC/oBAQN/IwBBMGsiAyQAIAEgAC0ArQJBAXEQjw5FBEAgA0EQaiABEIwDIAMoAhQhBCADKAIQIQUgA0GqAToAGCAAIAUgBCADQRhqEMYZCwJAIAAtAKACQQJHDQAgAC0ApAJBAXENAAJAIAEoAgBBGkcNACABQQhqEKocRQ0AIAMgARCMAyADKAIEIQEgAygCACECIANBhgE6ABggACACIAEgA0EYahDLHgwBCyABIAAtAK0CQQFxEI8ODQAgASACEJUYRQ0AIANBCGogARCMAyADKAIMIQEgAygCCCECIANBqgE6ABggACACIAEgA0EYahDGGQsgA0EwaiQAC8UBAQJ/AkACQAJAIAAoAgAiAUElRg0AAkACQAJAAkACQEEQIAFBAmsiAiACQSNPGw4iAQUFBQUFBQUFBQUFBQUFBQIFBQUFBQUFBQYGBwMHBgUFBAALIABBBGoQjSMPCyAALQAIIgFBBU0gAUEBR3ENAyAAQRBqEMsZDwsgAEEQahDLGSABRQRADAULIABBBGoQjSMPCyAAKAIQEOshDAMLIABBCGoQyxkLDwsgAEEIahDLGSAAQRBqEMsZDwsgAEEIahDLGQvxAQIDfgZ/IAAoAgxFBEBBAA8LIAEpAwAQnh8hAiAAKAIAIgVBEGshCSACQhmIQoGChIiQoMCAAX4hBCAAKAIEIgYgAqdxIQADQCAAIAVqKQAAIgMgBIUiAkJ/hSACQoGChIiQoMCAAX2DQoCBgoSIkKDAgH+DIQICQAJAA0AgAlAiCEUEQCABIAkgAnqnQQN2IABqIAZxIgpBBHRrEJoKDQIgAkIBfSACgyECDAELCyADIANCAYaDQoCBgoSIkKDAgH+DUA0BC0EAQQAgBSAKQQR0ayAIG0EQayAIGw8LIAAgB0EIaiIHaiAGcSEADAALAAvpAQECfyMAQUBqIgIkAAJAAkACQAJAAkACQCABKAIAIgNBAWsOBgABAgMFBAULIAFBBGogABCRFwwECyABQQRqIAAQ+i0MAwsgAUEEaiAAEOEEDAILIAAgAUEEahCGHQwBCyABQQRqIAAQgi0LIAAoAgBFIANyRQRAIAJBIGogAUEIahCkCiACQRhqIAJBMGopAwA3AwAgAkEQaiACQShqKQMANwMAIAIgAikDIDcDCCACQThqEPkmIAAgAkEIahCUCiIABEAgARCoEiABIAA2AgQgAUEGNgIACyACKQMIEPkaCyACQUBrJAAL6QEBAX8CQAJAAkACQAJAAkACQAJAAkACQCAAKAIAIgFBBGtBACABQQVrQQhJGw4IAQIDBAUGBwgACwJAIAAoAghBBUYEQCAAKQMQEPkaDAELIABBCGoQ2RYLDAgLIAAQ4B8PCyAAQQhqENkWIAAoAjAQwxgPCyAAKQMIEPkaIAAoAiAQwxgPCyAAQQhqENkWDAQLIAApAwgQ+RogAEEkahDUJyAAQShqENMnIABBLGoQ7iYPCyAAQQRqEPAmIABBEGoQ0ycLDwsgAEEEahDpJg8LIABBPGoQ1CcgAEFAaxDTJyAAQTBqEO4mC/oBAQN/IwBBMGsiAyQAIAEgAC0AhQNBAXEQjw5FBEAgA0EQaiABEI8DIAMoAhQhBCADKAIQIQUgA0GqAToAGCAAIAUgBCADQRhqENgZCwJAIAAtAPgCQQJHDQAgAC0A/AJBAXENAAJAIAEoAgBBGkcNACABQQhqEKocRQ0AIAMgARCPAyADKAIEIQEgAygCACECIANBhgE6ABggACACIAEgA0EYahDXHgwBCyABIAAtAIUDQQFxEI8ODQAgASACEJUYRQ0AIANBCGogARCPAyADKAIMIQEgAygCCCECIANBqgE6ABggACACIAEgA0EYahDYGQsgA0EwaiQAC4sCAQV/IwBBEGsiBiQAIAEoAgQgASgCCCACQZiMwAAQuB9BCGohBCABKAIsIQUgASgCKCEHAkADQCAHIAUgBCgCACIEQaiMwAAQuh8oAgQEQCAHIAUgBEHojMAAELofQQRqIQQMAQUCQCAGIAUQ4xwgBigCAA0AIAYoAgQhBSABQSRqQQAQ1RggASgCKCIHIAEoAiwiCCAFQbiMwAAQuh8gAzYCAAJ/IAQEQCAHIAggBEHIjMAAELofQQRqDAELIAEoAgQgASgCCCACQdiMwAAQuB9BCGoLIABBAzYCACAFNgIADAMLCwsgACAGKQMINwMQIABC/v///wc3AwggAEEANgIACyAGQRBqJAAL8gECBH8IfiMAQSBrIgIkACACQRBqIgQgAUEQaikDADcDACACQQhqIgMgAUEIaikDADcDACACQRhqIgUgASkDMCABNQI4QjiGhCIGIAFBGGopAwCFNwMAIAIgASkDADcDACACEJoLIAMgAykDAELuAYU3AwAgAiACKQMAIAaFNwMAIAIQnQcgBCAEKQMAIgZC3QGFNwMAIAMpAwAhByACKQMAIQggBSkDACEJIAIQnQcgBSkDACEKIAMpAwAhCyAEKQMAIQwgAikDACENIAAgBiAJIAcgCIWFhTcDACAAIAogCyAMIA2FhYU3AwggAkEgaiQAC/cBAQN/IwBBIGsiAiQAIAJBEGogARCJASACKAIUIQMCQAJAAkAgAigCEEUEQCADKAIAQS1GBEAgACADKQIENwIAIAMoAgBBLUYNAyADEN0EDAMLIAEtAKACQQJHDQEgAUEoahDKDSIERQ0BIAQoAgBBFEcNASAELQAEQQRHDQEgAiADNgIcIAJBCGogARDvASACKAIMIQEgAigCCEUEQCAAIAE2AgQgACADNgIADAQLIABBADYCACAAIAE2AgQgAkEcahDeKAwDCyAAQQA2AgAgACADNgIEDAILIABBADYCBCAAIAM2AgAMAQsgAxCNKwsgAkEgaiQAC9IBAQR/IABB/wFxQQ9GIgQgAkH/AXEiBUEPRnEhBgJAIAQgBUEPRnINAEEAIQZBDSAAQQJrQf8BcSIEIARBDU8bIgVBDSACQQJrIgRB/wFxIgcgB0ENTxtHDQACQAJAAkAgBUEGaw4CAQIAC0EBIQYgBUENRyAEQf8BcUENSXINAiAAQf8BcSACQf8BcUYgAUH/AXEgA0H/AXFGcQ8LIAFB/wFxIANB/wFxRiAEQf8BcUEGR3IPCyABQf8BcSADQf8BcUYgBEH/AXFBB0dyIQYLIAYL1wIBAX8CQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgMGBgQFAAsgAEEIaiABEJMjDwsgAEEIaiABEJQjDwsgACgCBCABEOwTDwsgACgCBCABEOwTDwsgASAAKAIEIgApAwAgAEEQaigCABCPGyAAKAIoQTBsIQIgACgCJEEoaiEAA0AgAkUNAiAAQShrKAIARQRAIAEgAEEgaykDACAAQRBrKAIAEI8bCyAAKAIABEAgACABENUsCyACQTBrIQIgAEEwaiEADAALAAsgACgCBCIAKAIARQRAIAEgACkDCCAAQRhqKAIAEI8bCyAALQBFQQNGDQAgAEEgaiEAA0AgAC0AJUECRgRAAkAgACgCCEE4bCECIAAoAgQhAANAIAJFDQEgACABEJkHIAJBOGshAiAAQThqIQAMAAsACwUgASAAKQMIIAAoAhgQjxsgACgCICEADAELCwsL1wIBAX8CQAJAAkACQAJAAkACQCAAKAIAQQFrDgcBAgMGBgQFAAsgAEEgaiABEPEFDwsgAEEgaiABEI4tDwsgACgCBCABEPMTDwsgACgCBCABEPMTDwsgASAAKAIEIgApAwAgAEEQaigCABCzHSAAKAIoQTBsIQIgACgCJEEoaiEAA0AgAkUNAiAAQShrKAIARQRAIAEgAEEgaykDACAAQRBrKAIAELMdCyAAKAIABEAgACABEIotCyACQTBrIQIgAEEwaiEADAALAAsgACgCBCIAKAIARQRAIAEgACkDCCAAQRhqKAIAELMdCyAALQBFQQNGDQAgAEEgaiEAA0AgAC0AJUECRgRAAkAgACgCCEE4bCECIAAoAgQhAANAIAJFDQEgACABEKYDIAJBOGshAiAAQThqIQAMAAsACwUgASAAKQMIIAAoAhgQsx0gACgCICEADAELCwsL9wEBA38jAEEgayICJAAgAkEQaiABEIgBIAIoAhQhAwJAAkACQCACKAIQRQRAIAMoAgBBLUYEQCAAIAMpAgQ3AgAgAygCAEEtRg0DIAMQ3gQMAwsgAS0A+AJBAkcNASABQShqEOMNIgRFDQEgBCgCAEEURw0BIAQtAARBBEcNASACIAM2AhwgAkEIaiABEPABIAIoAgwhASACKAIIRQRAIAAgATYCBCAAIAM2AgAMBAsgAEEANgIAIAAgATYCBCACQRxqELgpDAMLIABBADYCACAAIAM2AgQMAgsgAEEANgIEIAAgAzYCAAwBCyADEI0rCyACQSBqJAAL7wEC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NgIIIAAgBzYCBCAAIAk2AgAgBEEQaiQADwsAC+gBAQF/AkACQAJAAkACQAJAIAEoAgBBAWsOBgECAwQFBQALIAAgAUEIahCxDg8LIAEoAgxBKGwhAiABKAIIIQEDQCACRQ0EIAEoAgBBB0cEQCAAIAEQogoLIAFBKGohASACQShrIQIMAAsACyABQQRqIAAQ6S0PCyABKAIMQThsIQIgASgCCCEBA0AgAkUNAgJAAkACQAJAIAEoAgBBAWsOAgECAAsgAUEoaiAAEOIrDAILIAAgAUEQahCxDgwBCyABQQRqIAAQ6S0LIAFBOGohASACQThrIQIMAAsACyABQQRqIAAQ4isLC+oBAQF/IwBB0ABrIgMkACAAQQA2AjggAEIANwIwIABBADYCFCAAQoCAgIDAADcCDCADQcwAakEAOwEAIAAgASkCADcCACAAIAIpAgA3AhggAEEIaiABQQhqKAIANgIAIABBIGogAkEIaikCADcCACAAQShqIAJBEGopAgA3AgAgA0EANgJAIANCADcCOCADQgQ3AhggA0IANwIQIANCgICAgIABNwIIIANCADcCRCADQYCAgIB4NgIgIABBxABqQQA7AQAgAEIANwI8IANBCGoQ/CYgA0EUahDuJiADQSBqEPskIANB0ABqJAAL1wECCH8CfiMAQeAAayIDJAAgASgCECEEIAEoAgwhBSABKAIIIQYCQCABKQMAIgpCA4NQBEAgCqdBCGsiAiACKAIAIgJBAWo2AgAgAkEASA0BCyABLQAUIQcCQCABKAIYIgJFBEBBACEBDAELEPciIQEgAikCBCELEPAiIANBCGoiCSACKAIAEKgBIAlB2AAQ+wYhAiABIAs3AgQgASACNgIACyAAIAE2AhggACAHOgAUIAAgBDYCECAAIAU2AgwgACAGNgIIIAAgCjcDACADQeAAaiQADwsAC9QBAQF/IwBBIGsiBiQAIANBAXFFBEAgAUEoahDeIBoLIAYgASADIAQgBUEAQQAQcEEDIQMgBigCACEEAkAgBi0AFCIFQQNGBEAgACAENgIEDAELIAAgBikCBDcCDCAAIAYvABU7AB0gAEEUaiAGQQxqKQIANwIAIABBH2ogBkEXai0AADoAACAAIAYoAhg2AiAgACAFOgAcIAAgBDYCCCAAIAIgASgCfCIBIAEgAkkbNgIsIAAgAiABIAEgAksbNgIoQQEhAwsgACADNgIAIAZBIGokAAu+AQEGfyAAKAIAIgRBBGogBC8BMiIFQQFqIgcgACgCCCIDIAEQvhUgA0EBaiEAIARBNGohASADQQJqIgggBUECaiIGSQRAIAEgCEECdGogASAAQQJ0aiAFIANrQQJ0ENotGgsgASAAQQJ0aiACNgIAIAQgBzsBMiAGIAAgACAGSRshAiADQQJ0IARqQThqIQEDQCAAIAJGRQRAIAEoAgAiAyAAOwEwIAMgBDYCACABQQRqIQEgAEEBaiEADAELCwvBAQEEfyMAQSBrIgIkACABKAKABiEDIAJBCGoiBCABQaQDaiIFIAEoAvwFQQEQwAYCQCACKAIIIgFBA0YEQCAEIAUgA0EBEMAGIAIoAggiAUEDRgRAQQMhAQwCCyAAIAIpAgw3AgQgAEEUaiACQRxqKAIANgIAIABBDGogAkEUaikCADcCAAwBCyAAIAIpAgw3AgQgAEEUaiACQRxqKAIANgIAIABBDGogAkEUaikCADcCAAsgACABNgIAIAJBIGokAAvQAQEHfyACIAAoAgQgACgCABDhGSEDIABBDEEIIAIgACgCDCAAKAIIEOEZIgQbaiEFIAIgAEEIQQwgBBtqIgYgACADQQFzQQJ0aiIEIAUgAiAFKAIAIAAgA0ECdGoiACgCABDhGSIDGyACIAYoAgAgBCgCABDhGSICGyIHKAIAIAAgBSAEIAIbIAMbIggoAgAQ4RkhCSABIAUgACADGygCADYCACABIAcgCCAJGygCADYCBCABIAggByAJGygCADYCCCABIAQgBiACGygCADYCDAvNAQEIfwJAAkAgACgCACICQYCAgIB4RiABKAIAIgNBgICAgHhGckUEQCAAKAIIIgIgASgCCEcNAiACQQFqIQUgACgCBEEIaiECIAEoAgRBCGohAwNAIAVBAWsiBUUNAiADQQRrIQYgAkEEayADKAIAIQggAigCACEJIAJBDGohAiADQQxqIQMoAgAgCSAGKAIAIAgQ6x8NAAsMAgsgAkGAgICAeEcgA0GAgICAeEdyDQELIAAoAgwgASgCDEYgACgCECABKAIQRnEhBAsgBAv4AQECfyMAQTBrIgIkAAJAIAApAwBC////////////AINCgICAgICAgPj/AFoEQCACQQE2AhQgAkGE+OAANgIQIAJC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QQFrDgIBAgALIAJBCGogARDEIiACQShqIAEQxi0MAwsgAkEwaiABEJwkIAEtAChBAUcNAiADQQhqIAJBEGoQ1hsgASADKQMIIgYgAygCGBCSEiAGEPkaDAILIAJBBGogARCbLgwBCyADQSBqJAAPCyAAQThqIQAMAAsAC7oBAgN/AX4jAEEgayIBJAAgACgCCCIDQf7///8HTQRAAkACQCAAKAIUIgJFDQAgACACQQFrIgI2AhQgACgCECACQQxsaikCACIEp0GAgICAeEYNACABQQA2AhAgASAENwMIDAELIAFBADYCECABQoCAgIDAADcCCAsgACABQQhqEOkVIAFBIGokACADDwsgAUEANgIYIAFBATYCDCABQZSvwwA2AgggAUIENwIQIAFBCGpBnK/DABDDHQALtwEBAX8jAEEgayICJAACQAJAIAEQ5C1FBEAgAkEEaiABENUHIAIoAgRBgICAgHhHBEAgAkEYaiACQQxqKAIANgIAIAIgAikCBDcDECAAIAJBEGoQ4hEMAgtBgICAgHggAigCCBC2JCAAIAEQ6Qc2AhggAEECNgIAIABBFGogAUEQaigCADYCACAAQQxqIAFBCGopAgA3AgAgACABKQIANwIEDAILIAAQuxELIAEQtB4LIAJBIGokAAuuAQICfwF+IwBBMGsiAiQAAkAgAS0AFEECRgRAEO8iIQMgASgCACIBKQMQIQQgAkEIaiABQRhqEMQLIAJBIGogARDVISADIAQ3AxAgA0EIaiACQShqKQMANwMAIAMgAikDIDcDACADIAIpAwg3AxggA0EgaiACQRBqKQMANwMAIANBKGogAkEYaikDADcDACAAQQI6ABQgACADNgIADAELIAAgARDWGwsgAkEwaiQAC8EBAQN/IABBQGsQ1yAgAEGQAWohBCAAKAKEAUHYAGwhAyAAKAKAASECA0ACQCADBEACQAJAAkACQAJAIAIoAgBBAWsOBQECAwYEAAsgAigCCCACQRhqKwMAIAEQqh8MBQsgAkEEaiABELsiDAQLIAJBBGogARCtLQwDCyACQQRqIAEQ0A8MAgsgAUEAOgAEDAELIAQgARDQDyAALQA8QQZHBEAgAEEQahDXIAsPCyACQdgAaiECIANB2ABrIQMMAAsAC6EBAQJ/AkAgAUEDTQRAIABBAWshAANAIAFFIQMgAUUN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QQFrDgIBAgALIAEgAkEIahDwISACQShqIAEQ4CsMAwsgASACQRBqENAZIAJBMGoiAigCAEUNAiACIAEQ3isMAgsgASACQQRqEK8lDAELIABBFGogARDRIw8LIANBOGohAwwACwALmgEBA38gACgCCEE4bCEDIAAoAgQhBEEAIQADQAJAIAAgA0cEQAJAAkACQCAAIARqIgIoAgBBAWsOAgECAAsgAkEIaiABEPshIAJBKGogARDtLAwDCyACQRBqKQMAIAJBIGooAgAgARDZFCACQTBqIgIoAgBFDQIgAiABENcsDAILIAJBBGogARD1LQwBCw8LIABBOGohAAwACwALmAEBA38gACgCCEEMbCEDIAAoAgQhAANAIAMEQAJAIAAoAgAEQCAAIAEQpS0MAQsCQAJAAkBBBCAAKAIEIgIoAgBBBWsiBCAEQQZPG0EBaw4FAAEDAwIDCyACQQhqIAEQtCIgAkEoaiABEKUtDAILIAJBKGogARClLQwBCyACQQhqIAEQtCILIABBDGohACADQQxrIQMMAQsLC5oBAQR/IwBBEGsiAiQAIAIgASgCFCIDEOMcAkAgAigCAEUEQCACKAIEIQQgAUEMaiIFKAIAIANGBEAgBRDpFgsgACAENgIEIABBAzYCACABIANBAWo2AhQgASgCECADQQlsaiIAQgA3AAAgAEEIakEAOgAADAELIAAgAikDCDcDECAAQv7///8HNwMIIABBADYCAAsgAkEQaiQAC4kBAQN/IwBBEGsiAiQAIAAoAgQhAyAAKAIIIAEoAhRBsL/gAEEBIAEoAhgoAgwRAwAhBCACQQA6AAkgAiAEOgAIIAIgATYCBEECdCEBA0AgAQRAIAIgAzYCDCACQQRqIAJBDGpBIRCBCCABQQRrIQEgA0EEaiEDDAELCyACQQRqEOQcIAJBEGokAAuJAQEDfyMAQRBrIgIkACAAKAIEIQMgACgCCCABKAIUQbC/4ABBASABKAIYKAIMEQMAIQQgAkEAOgAJIAIgBDoACCACIAE2AgRBDGwhAQNAIAEEQCACIAM2AgwgAkEEaiACQQxqQTAQgQggAUEMayEBIANBDGohAwwBCwsgAkEEahDkHCACQRBqJAALiQEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEGwv+AAQQEgASgCGCgCDBEDACEEIAJB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CCIFIARB/////wNxIgEgASAFSxshA0EAIQEgAigCDCEGA0AgAwRAIAEgBmogASAHahD3GTYCACADQQFrIQMgAUEEaiEBDAELCyAAIAQ2AgggACAGNgIEIAAgBTYCACACQRBqJAALkAEBBn8jAEEQayICJAAgASgCBCEHIAJBCGogASgCCCIEQQRBBBD7FCACKAIIIgUgBEH/////A3EiASABIAVLGyEDQQAhASACKAIMIQYDQCADBEAgASAGaiABIAdqEPkcNgIAIANBAWshAyABQQRqIQEMAQsLIAAgBDYCCCAAIAY2AgQgACAFNgIAIAJBEGokAAuoAQECfyABKALAASABKALEARD9HCIDQYCAxABHBEAgAUHAAWoiBBCwFQJ/QQAgA0ENRw0AGkENIQNBACABKALAASABKALEARD9HEEKRw0AGiAEELAVQQFBAiACGyEDQcLw4ABBwPDgACACGwshAiAAIAM2AgggACACNgIEIABBADYCACABIAEoAtABNgKkASABIAEoAqABQQFqNgKgAQ8LQdTo2AAQ4CkAC4oBAQN/IwBBEGsiAiQAIAAoAgQhAyAAKAIIIAEoAhRBsL/gAEEBIAEoAhgoAgwRAwAhBCACQQA6AAkgAiAEOgAIIAIgATYCBEECdCEBA0AgAQRAIAIgAzYCDCACQQRqIAJBDGpB7gIQgQggAUEEayEBIANBBGohAwwBCwsgAkEEahDkHCACQRBqJAALigEBA38jAEEQayICJAAgACgCBCEDIAAoAgggASgCFEGwv+AAQQEgASgCGCgCDBEDACEEIAJBADoACSACIAQ6AAggAiABNgIEQQR0IQEDQCABBEAgAiADNgIMIAJBBGogAkEMakH6AhCBCCABQRBrIQEgA0EQaiEDDAELCyACQQRqEOQcIAJBEGokAAuKAQEDfyMAQRBrIgIkACAAKAIEIQMgACgCCCABKAIUQbC/4ABBASABKAIYKAIMEQMAIQQgAkEAOgAJIAIgBDoACCACIAE2AgRBBHQhAQNAIAEEQCACIAM2AgwgAkEEaiACQQxqQYUDEIEIIAFBEGshASADQRBqIQMMAQsLIAJBBGoQ5BwgAkEQaiQAC4oBAQN/IwBBEGsiAiQAIAAoAgQhAyAAKAIIIAEoAhRBsL/gAEEBIAEoAhgoAgwRAwAhBCACQQA6AAkgAiAE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KAIEIgAtAEVBA0YNACAAQSBqIQADQCAALQAlQQJGBEACQCAAKAIIQThsIQMgACgCBCEEQQAhAANAAkAgACADRwRAIAAgBGoiAigCACIFQQlHBEACQAJAAkACQAJAAkACQCAFQQFrDggBAgMEBQkGCQALIAJBHGogARCHJAwICyACQQhqIAEQvw0MBwsgAkEcaiABEIckDAYLIAJBCGooAgANBSACQRBqIAEQqC0MBQsgASACQQRqKAIAEJIBDAQLIAJBEGogARCHJAwDCyACQQRqIAEQpS0MAgsgAkEIaiABENoEDAELDAILIABBOGohAAwACwALBSAAKAIgIQAMAQsLCwugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQYDM3wA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEKQXRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB/L3gAEE3IAJBP2pBmMzfAEGAv+AAEMUOAAugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQYDM3wA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEKkZRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB/L3gAEE3IAJBP2pBmMzfAEGAv+AAEMUOAAugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQay94AA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEJ8rRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB/L3gAEE3IAJBP2pBxL3gAEGAv+AAEMUOAAugAQEBfyMAQUBqIgIkACACQQA2AhQgAkKAgICAEDcCDCACQQM6ADggAkEgNgIoIAJBADYCNCACQay94AA2AjAgAkEANgIgIAJBADYCGCACIAJBDGo2AiwgASACQRhqEKUZRQRAIAAgAikCDDcCACAAQQhqIAJBFGooAgA2AgAgAkFAayQADwtB/L3gAEE3IAJBP2pBxL3gAEGAv+AAEMUOAAuTAQICfwF+IwBBEGsiAyQAIAFBCGohBAJAAkACQCABKAIARQRAIANBCGogBCACEOQSIAMtAAhBBEYNASADKQMIIgVC/wGDQgRRDQEgACAFNwIADAMLIANBCGogBCACEGcgAy0ACEEERg0AIAMpAwgiBUL/AYNCBFINAQsgAEEEOgAADAELIAAgBTcCAAsgA0EQaiQAC4sBAQN/IwBBEGsiAiQAAkAgAygCECIFIAMoAhQiBk0EQCABQQRqIQEgAygCAEEBa0ECTwRAIAJBBGoiBCABIAMoAgggAygCDCAFIAYQ1g4gACAEEP4bDAILIAJBBGoiBCABIAMoAgggAygCDCAFIAYQ1w4gACAEEP4bDAELIABBADYCAAsgAkEQaiQAC4sBAQN/IwBBEGsiAiQAAkAgAygCECIFIAMoAhQiBE0EQCABQQRqIQEgAygCAEEBa0ECTwRAIAJBBGoiBiABIAMoAgggAygCDCAFIAQQ1AQgACAGEP4bDAILIAJBBGoiBCABIAMoAgggAygCDCAFIAMQ2REgACAEEP4bDAELIABBADYCAAsgAkEQaiQAC44BAQJ/IwBBEGsiBCQAAkAgAwRAIANBBU8NAQNAIAVBCEZFBEAgBEEIaiAFakEAOwEAIAVBAmohBQwBCwsgBEEIaiACIANBAXQQ+wYaIAAgATYCCCAAIAM6AAwgACAEKQMINwIAIARBEGokAA8LQfyvwwBBGUGYsMMAEPQXAAtBqLDDAEEaQcSwwwAQ9BcAC5gBAQN/AkACQAJAIAEoAggiAiABKAIMRwRAIAEgAkEIajYCCCACKAIEIgMgAigCACICSQ0CIAMgASgCBCIESw0DIAMgAmshAyABKAIAIAJBA3RqIQIMAQsgASgCECECIAFBADYCECABKAIUIQMLIAAgAzYCBCAAIAI2AgAPCyACIANBrIjEABCvEAALIAMgBEGsiMQAEK4QAAuRAQEEfwJAIAAoAgBBgICAgHhGDQAgACgCCEEEdCEDIAAoAgRBDGohAANAIANFDQECQCAAQQRrIgQoAgAiAiABTQ0AIABBADoAACACIAFrIAIQ/SAhAiAEQQA2AgAgAUUNACAAQQhrKAIAIgUgAiAFaiABENotGiAEIAE2AgALIANBEGshAyAAQRBqIQAMAAsACwuMAQEDfyMAQdAAayIBJAAgAEGgAmohAiAAKAKgAkElRgRAIAFBKGoiAyAAQcgCakEoEPsGGiAAQSU2AsgCAkAgASgCKEElRgRAIAEgABBFIAMQhiUMAQsgASABQShqQSgQ+wYaCyACEIYlIAIgAUEoEPsGIgBBACAAKAIAQSVHGyECCyABQdAAaiQAIAILjAEBA38jAEHQAGsiASQAIABBoAJqIQIgACgCoAJBJUYEQCABQShqIgMgAEHIAmpBKBD7BhogAEElNgLIAgJAIAEoAihBJUYEQCABIAAQRSADEJ4KDAELIAEgAUEoakEoEPsGGgsgAhCeCiACIAFBKBD7BiIAQQAgACgCAEElRxshAgsgAUHQAGokACACC4wBAQN/IwBB0ABrIgEkACAAQaACaiECIAAoAqACQSVGBEAgAUEoaiIDIABByAJqQSgQ+wYaIABBJTYCyAICQCABKAIoQSVGBEAgASAAEEUgAxCLJQwBCyABIAFBKGpBKBD7BhoLIAIQiyUgAiABQSgQ+wYiAEEAIAAoAgBBJUcbIQILIAFB0ABqJAAgAgu/AQEBfyABQSBqIgIgABDTLCABKAIAQQJPBEAgACABQQRqEJ0hCwJAAkACQAJAAkACQEEHIAIoAgAiASgCAEEMayICIAJBJk8bQQJrDiMABAQEBAQFBQQBAgQFBQUFBAQEBQQFBQUFBQUFBQUFBQUFAwULIAAtACQgAC0AJUECIAAQqhoNBAwDCyAALQAkIAAtACVBAUEBEKoaDQIMAwsgASgCBEGAgICAeEYNAQwCCyAALQAnDQELIAAgARDMAQsLjgEBAn8jAEEQayIBJAAgACgCGAR/A0AgAUEIaiAAEKEXIAEoAghBAUZFBEAgACAAKAIQQSBrNgIQIAAgACgCCCICQQhqNgIIIAAgAikDAEJ/hUKAgYKEiJCgwIB/gzcDAAwBCwsgASgCDCECIAAgACgCGEEBazYCGCAAKAIQIAJBAnRrBUEACyABQRBqJAALkgECBH8BfiMAQRBrIgIkACAAKAIIQThsIQMgACgCBCEAA0AgAwRAIAEpAgAhBiABQQA2AgAgAkEIaiIEIAFBCGoiBSkCADcDACACIAY3AwAgASAAELAJIAEQ1ycgBSAEKQMANwIAIAEgAikDADcCACAAQTBqIAEQ1iUgA0E4ayEDIABBOGohAAwBCwsgAkEQaiQAC4QBAQJ/IwBBIGsiACQAAkBBuJfkACgCAEUEQEGM++MAQYz74wAoAgAiAUEBajYCACABRQ0BQbyX5AAgATYCAEG4l+QAQQE2AgALIABBIGokAEG8l+QADwsgAEEANgIYIABBATYCDCAAQYz6wwA2AgggAEIENwIQIABBCGpBlPrDABDDHQALlgEBAX8jAEFAaiICJAAgAkIANwM4IAJBOGogACgCABAiIAIgAigCPCIANgI0IAIgAigCODYCMCACIAA2AiwgAkEFNgIoIAJBAjYCECACQeSh4wA2AgwgAkIBNwIYIAIgAkEsajYCJCACIAJBJGo2AhQgASgCFCABKAIYIAJBDGoQkgQgAigCLCACKAIwENopIAJBQGskAAuYAQEDfyAALQAIIQECQCAAKAIAIgNFBEAgASECDAELQQEhAgJAIAFBAXFFBEAgA0EBRw0BIAAtAAlFDQEgACgCBCIBLQAcQQRxDQEgASgCFEG+uOAAQQEgASgCGCgCDBEDAEUNAQsgACACOgAIDAELIAAgACgCBCIAKAIUQeCh4wBBASAAKAIYKAIMEQMAIgI6AAgLIAJBAXELkwEBBH8jAEEQayICJABBASEEAkAgASgCFCIDQScgASgCGCIFKAIQIgERAgANACACQQRqIAAoAgBBgQIQwgMCQCACLQAEQYABRgRAIAMgAigCCCABEQIARQ0BDAILIAMgAi0ADiIAIAJBBGpqIAItAA8gAGsgBSgCDBEDAA0BCyADQScgARECACEECyACQRBqJAAgBAuSAQEDfyMAQZADayIDJAAgAyABIAIQlgECQCADKAIAQYeAgIB4RgRAIABBAjoADAwBCwJAIAJFDQAgASgCCCEEIAJBAUYNACABQRhqIQEgAkEBa0H/////AHEhAgNAIAQgASgCACIFIAQgBUsbIQQgAUEQaiEBIAJBAWsiAg0ACwsgACADIAQQ9AYLIANBkANqJAALkAEBAn8jAEEgayIDJAACQCAALQCcDUEBRwRAAkAgACkDAEICUgRAIAEoAsgEQQJGDQMgA0EUaiIEIAAgAUHYAWogAhD3CSADQQhqIAQQgBggAygCCCIEQQJHDQELIAAgASACEKwFIQQLIANBIGokACAEQQFxDwtB5ezgAEEoQYiNwwAQ9BcAC0GojMMAEOApAAuGAQEDfyMAQRBrIgQkAAJAIANBB00E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Sw0BCw8LIAAtACQhAyAAIAI6ACQgASgCCEE4bCECIAEoAgQhAQNAIAIEQCAAIAEQogogAkE4ayECIAFBOGohAQwBCwsgACADOgAkC48BAQN/IAAoAghBOGwhAyAAKAIEIQRBACEAA0ACQCAAIANHBEACQAJAAkAgACAEaiICKAIAQQFrDgIBAgALIAEgAkEIahD2ISACQShqIAEQ2CwMAwsgAkEQaiABEO0tIAJBMGoiAigCAEUNAiACIAEQzSwMAgsgAkEEaiABEPctDAELDwsgAEE4aiEADAALAAuPAQEDfyAAKAIIQThsIQMgACgCBCEEQQAhAANAAkAgACADRwRAAkACQAJAIAAgBGoiAigCAEEBaw4CAQIACyABIAJBCGoQ+SEgAkEoaiABEOcsDAMLIAJBEGogARCDKSACQTBqIgIoAgBFDQIgAiABENUsDAILIAJBBGogARDzLQwBCw8LIABBOGohAAwACwALkwEBA38gACgCCEEobCECIAAoAgQhA0EAIQADQAJAIAAgAkcEQAJAAkACQAJAAkAgACADaiIBKAIAQQFrDgQBAgMEAAsgAUEYakIANwIADAULIAFBBGoQ5B8MBAsgAUEIakIANwIAIAFBBGoQjC4MAwsgAUEEahCSLgwCCyABQQRqENwgDAELDwsgAEEoaiEADAALAAuDAQECfyMAQRBrIgYkACABLQAAIQcgBkEIaiACIAMgBCAFQbSYwAAQ7BYgBiAHIAYoAgggBigCDBCnBkEAIQUgACAGKAIAQQFxBH8gACAEIAYoAgQgBGoiAiABLQABayIBQQAgASACTRsiASABIARJGzYCBEECBSAFCzYCACAGQRBqJAALgAEBAn8gAUH/AXFB1InBAGosAAAiA0H/AHEhAiAAAn9BASADQQBODQAaIAJFBEAgAUHwAXFBBHZBi57jAGotAABBEHQgAUEPcUGLnuMAai0AAEEYdHJB3PABciECQQQMAQsgAkEIdEHcAHIhAkECCzoABSAAQQA6AAQgACACNgAAC30BA38gACgCACEBIAAoAgQiAigCCCEAIAIoAgAiAwRAIAEgAEEBa0F4cWpBCGogAxEBAAsCQCABQX9GDQAgASABKAIEIgNBAWs2AgQgA0EBRw0AQQQgACAAQQRNGyIAIAIoAgRqQQdqQQAgAGtxIgJFDQAgASACIAAQ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CCAEQQI2AhQgBEHwg8AANgIQIARCAjcCHCAEQQE2AjQgBEECNgIsIAQgAzYCPCAEIAI2AjggBCAEQShqNgIYIAQgBEE4ajYCMCAEIARBCGo2AiggBEEQahCiGSAEQUBrJAALcAEBfwJAAkAgAUH/////A00EQCABQf////8DRg0CIAEgAUECdEEHakF4cSICakEIaiIBIAJJDQEgAUH4////B00EQCAAIAI2AgggACABNgIEIABBCDYCAA8LDAILDAELIABBADYCAA8LIABBADYCAAuOAgEGfyMAQRBrIgUkAAJAIAAoAgBBgICAgHhGDQAgACgCCCIBQQJJDQAgACgCBCEDIAFBFU8EQCAFQQ9qIQYjAEGQIGsiAiQAAkAgASIAQQF2IgFBoMIeIAAgAEGgwh5PGyIEIAEgBEsbIgFBgQJPBEAgAkEIaiABQRAQwRQgAkEANgIYIAIgAigCDCIBNgIUIAIgAigCCCIENgIQIAMgACABIAQgAEHBAEkgBhD0ASACQRBqENkiDAELIAMgACACQRBqQYACIABBwQBJIAYQ9AELIAJBkCBqJAAMAQsgAUEEdCEBQRAhAANAIAAgAUYNASADIAAgA2oQhA0gAEEQaiEADAALAAsgBUEQaiQAC3YBBH8gACABENweQQEgASABQQFNGyIEQQFrIQIgACgCBCAAKAIIIgVBAnRqIQMCQANAIAIEQCADQQA2AgAgAkEBayECIANBBGohAwwBBQJAIAQgBWohAiABDQAgAkEBayECDAMLCwsgA0EANgIACyAAIAI2AggLhQEBAn8CQAJAAkACQAJAAkACQCAAKAIAQQFrDgcCAwEEBQYAAQsgAEEEahDYJgsPCyAAKAIEIAAoAggQ2SQPCyAAQQRqELQeDwsgAEEMahDJKA8LIABBBGoCQCAAKAIMIgJFDQAgACgCECIARQ0AIAIgAEEBENURCxDJKA8LIABBBGoQ2CYLggEBAn8jAEEgayIDJABBgICAgHghBCAAIAFBA0cEfyADQgA3AhggA0KAgICAwAA3AhAgA0EQaiACELEjIANBCGogA0EcaigCADYCACADIAMpAhQ3AwAgAygCEAUgBAs2AgAgACADKQMANwIEIABBDGogA0EIaigCADYCACADQSBqJAALeQIBfgN/IAAoAhAhAiAAKAIIIQMgACkDACEBA38g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OwGMAgNAIAFBCGogAUGMAmoQ6hIgAS0ACARAIAEtAAkiAiABQQxqaiACOgAADAEFIAAgAUEMakGAAhD7BhogAUGQAmokAAsLC3oBBH8Cf0GBgICAeCABKAIAIgNFDQAaIANBAnQhBCABKAIEIQUCQCACRQRAQQQhBiAFIARBBBDVEQwBC0EEIAUgBEEEIAJBAnQiAxD5AiIGRQ0BGgsgASACNgIAIAEgBjYCBEGBgICAeAshASAAIAM2AgQgACABNgIAC3YBAn8jAEEwayIBJAAgASAANgIMIAAtAABBAk8EQCABQQE2AhQgAUGQrMMANgIQIAFCATcCHCABQf4ANgIsIAEgAUEoajYCGCABIAFBDGo2AiggAUEQakGErcMAEMMdAAsgACgCBCAAQQxBBBDVESABQTBqJAALagECfyACBH8CQAJAIAEgAkEBayIDSwRAIAAgA2otAABB/JnEAGotAAAhBEEBIQMgASACSw0BDAILIAMgAUHMlsQAEKwQAAsgACACai0AAEH8mcQAai0AAEEBcyEDCyADIARxBUEAC0EBcQtyACAAQRxqIAEgAhC6ESAAQRhqIARBGGooAgA2AgAgAEEQaiAEQRBqKQIANwIAIABBCGogBEEIaikCADcCACAAIAQpAgA3AgAgACADKQIANwIoIABBMGogA0EIaikCADcCACAAQThqIANBEGopAgA3AgALWwECfwJAIAEgA0cNACABQQFqIQEDQCABQQFrIgFFIQQgAUUNASAALQAAIAItAABHDQEgAkEBaiEDIABBAWogAEECaiEAIAJBAmohAi0AACADLQAARg0ACwsgBAtpAQR/IwBBEGsiAiQAIAJBCGogASgCACIDQRBqKAIAIANBFGooAgAgASgCBCIDEKgYIAAgAigCCCIEBH8gAigCDCEFIAEgA0EBajYCBCAAQQRqIAQgBRC6EUEDBUEGCzoAACACQRBqJAALcAECfyMAQSBrIgEkAAJAIAAoAiBBAkYEQCAAQSRqIQIMAQsgASAANgIIIAEgAEEkaiICNgIMIAEgAUEfajYCGCABIAFBDGo2AhQgASABQQhqNgIQIABBIGogAUEQakH8y9gAEO4ECyABQSBqJAAgAgtqAQJ/IAFBBHQhAQNAIAEEQCAAQQRqKAIAIABBCGooAgAgAhDdCCACQQsgAC0ADCIEQQlrIgMgA0H/AXFBDU8bQf8BcSIDELsgIANBC0YEQCAEIAIQjyoLIABBEGohACABQRBrIQEMAQsLC+ECAhB/AX4jAEEgayIDJAACQCAAKAIAIgFFBEBBACEADAELEPQiIQAgASgCDCEKIAEoAhAhCyADQQxqIQUjAEFAaiICJAAgASgCBCEMIAJBCGogASgCCCIHQQhBMBD7FCACKAIIIgggB0H/////AHEiASABIAhLGyEGIAJBGGohDSACKAIMIQkDQCAGBEAgBCAMaiIBKQIAIREgDSABQQhqENYbIAFBKGovAQAhDiABQSpqLQAAIQ8gAUEgahD4JCEQIAFBJGoQ+CQhASACIA86ADogAiAOOwE4IAIgETcDECACIAE2AjQgAiAQNgIwIAQgCWogAkEQakEwENotGiAGQQFrIQYgBEEwaiEEDAELCyAFIAc2AgggBSAJNgIEIAUgCDYCACACQUBrJAAgAEEQaiALNgIAIAAgAykCDDcCACADIAo2AhggAEEIaiADQRRqKQIANwIACyADQSBqJAAgAAtyAQR/IwBBIGsiASQAAkAgACgCACICRQRAQQAhAAwBCxD0IiEAIAIoAgwhAyACKAIQIQQgAUEMaiACEKcNIABBEGogBDYCACAAIAEpAgw3AgAgASADNgIYIABBCGogAUEUaikCADcCAAsgAUEgaiQAIAALegECfyMAQSBrIgIkACAAIAEQhCMiAQRAIAAoAqACIQMgAEElNgKgAiAAIAApA7gCNwPwAiACQRRqIABBrAJqKQIANwIAIAJBHGogAEG0AmooAgA2AgAgAiAAKQKkAjcCDCACIAM2AgggAkEIahDGCgsgAkEgaiQAIAELegEDfyMAQRBrIgMkAAJAAkACQCABKAIAQQFrDgIBAQALIANBCGogAUEIahCpHCADKAIIIgIgASgCKBCjDyIEIAIgBEkbIQEgAiAEIAIgBEsbIQIMAQsgASgCDCECIAEoAgghAQsgACACNgIEIAAgATYCACADQRBqJAALeQEBfyMAQRBrIgEkAAJ/AkACQAJAAkACQAJAIAAoAgBBAWsOBgIBAgMEBQALIAEgAEEIahCuFSABKAIEDAULIAAoAgwMBAsgACgCFAwDCyAAKAIQDAILIAAoAggMAQsgAUEIaiAAKAIEEI0DIAEoAgwLIAFBEGokAAtrAQF/IwBBIGsiAiQAIAJBCGogAUElEJUJAkAgAigCCEElRwRAIAAgAikDCDcDACAAQRBqIAJBGGopAwA3AwAgAEEIaiACQRBqKQMANwMADAELIAAgAigCDDYCBCAAQSY2AgALIAJBIGokAAtrAQF/IwBBIGsiAiQAIAJBCGogAUEmEKsGAkAgAigCCEElRwRAIAAgAikDCDcDACAAQRBqIAJBGGopAwA3AwAgAEEIaiACQRBqKQMANwMADAELIAAgAigCDDYCBCAAQSY2AgALIAJBIGokAAtrAQF/IwBBIGsiAiQAIAJBCGogAUEqEJUJAkAgAigCCEElRwRAIAAgAikDCDcDACAAQRBqIAJBGGopAwA3AwAgAEEIaiACQRBqKQMANwMADAELIAAgAigCDDYCBCAAQSY2AgALIAJBIGokAAtsAQF/IwBBIGsiAiQAIAJBCGogAUH8ABCrBgJAIAIoAghBJUcEQCAAIAIpAwg3AwAgAEEQaiACQRhqKQMANwMAIABBCGogAkEQaikDADcDAAwBCyAAIAIoAgw2AgQgAEEmNgIACyACQSBqJAALcQECfyMAQRBrIgQkACAEQQhqIAIgAyABKAIIIgMQpxkgBCgCDCECIAEgBCgCCCIFNgIIIAAgAjYCDCAAIAE2AgggACADIAJrNgIQIAAgASgCBCIBIAJBOGxqNgIEIAAgASAFQThsajYCACAEQRBqJAALcgEBfyMAQdAAayICJAAgAkEIaiABEOsYIAJByABqIAJBIGopAwA3AgAgAkFAayACQRhqKQMANwIAIAJBOGogAkEQaikDADcCACAAQQA2AgAgAiACKQMINwIwIABBBGogAkEsakEkEPsGGiACQdAAaiQAC3MBBH8jAEEQayICJAAgAkEIakEAQQAgASgCCCIEEKcZIAIoAgwhAyABIAIoAggiBTYCCCAAIAM2AgwgACABNgIIIAAgBCADazYCECAAIAEoAgQiASADQdgAbGo2AgQgACABIAVB2ABsajYCACACQRBqJAALcQECfyMAQRBrIgQkACAEQQhqIAIgAyABKAIIIgMQpxkgBCgCDCECIAEgBCgCCCIFNgIIIAAgAjYCDCAAIAE2AgggACADIAJrNgIQIAAgASgCBCIBIAJBMGxqNgIEIAAgASAFQTBsajYCACAEQRBqJAALegEDfyMAQRBrIgMkAAJA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BGogARDNLAwCCyAAQQRqIAEQ+SwMAQsgAEEEaiABEMYPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQiiIMAwsgAEEEaiABENUsDAILIABBBGogARD2LAwBCyAAQQRqIAEQxw8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCJIgwDCyAAQQRqIAEQ1iwMAgsgAEEEaiABEPUsDAELIABBBGogARDIDwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEI4iDAMLIABBBGogARDTLAwCCyAAQQRqIAEQ+ywMAQsgAEEEaiABEMkPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQiyIMAwsgAEEEaiABENcsDAILIABBBGogARD3LAwBCyAAQQRqIAEQyg8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCTIgwDCyAAQQRqIAEQgi0MAgsgAEEEaiABEJktDAELIABBBGogARDLDwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEJUiDAMLIABBBGogARCHLQwCCyAAQQRqIAEQmC0MAQsgAEEEaiABEMwPCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQmCIMAwsgAEEEaiABEIYtDAILIABBBGogARCXLQwBCyAAQQRqIAEQzQ8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCXIgwDCyAAQQRqIAEQii0MAgsgAEEEaiABEJYtDAELIABBBGogARDODwsgAEEoaiEAIAJBKGshAgwBCwsLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEJQiDAMLIABBBGogARCFLQwCCyAAQQRqIAEQmi0MAQsgAEEEaiABEM8PCyAAQShqIQAgAkEoayECDAELCwt5AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEACQAJAAkACQAJAIAAoAgBBAWsOBAABAgMECyAAQQRqIAEQuyIMAwsgAEEEaiABEKYtDAILIABBBGogARCtLQwBCyAAQQRqIAEQ0A8LIABBKGohACACQShrIQIMAQsLC3kBAX8gACgCCEEobCECIAAoAgQhAANAIAIEQAJAAkACQAJAAkAgACgCAEEBaw4EAAECAwQLIABBBGogARCzIgwDCyAAQQRqIAEQpS0MAgsgAEEEaiABEK4tDAELIABBBGogARDRDwsgAEEoaiEAIAJBKGshAgwBCwsLcgECfyMAQRBrIgIkAAJAIAFBgAFPBEAgAkEANgIMIAIgASACQQxqEOQJIAAgAigCACACKAIEEPYdDAELIAAoAggiAyAAKAIARgRAIAAQ9xcLIAAgA0EBajYCCCAAKAIEIANqIAE6AAALIAJBEGokAEEAC14BAn8CQCABRQ0AA38gAUEBTQR/IAAgA0EobGooAhgiACACRg0CIAMgACACSWoFIAMgAUEBdiIEIANqIgMgACADQShsaigCGCACSxshAyABIARrIQEMAQsLIQMLIAMLeQEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAAkACQAJAAkACQCAAKAIAQQFrDgQAAQIDBAsgAEEEaiABEMgiDAMLIABBBGogARC4LQwCCyAAQQRqIAEQ1C0MAQsgAEEEaiABENQPCyAAQShqIQAgAkEoayECDAELCwt2AQF/IAAoAghBOGwhAiAAKAIEIQADQAJAIAIEQAJAAkACQCAAKAIAQQFrDgIBAgALIABBCGogARDGIiAAQShqIAEQxS0MAwsg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AADwf2ENABpBAiAIQoCAgICAgID4/wCDIglCgICAgICAgPj/AFENABogCEL/////////B4MiDEKAgICAgICACIQgCEIBhkL+////////D4MgCEI0iKdB/w9xIgIbIgpCAYMhCyAJUARAQQQgDFANARogAkGzCGshAkIBIQkgC1AMAQtCgICAgICAgCAgCkIBhiAKQoCAgICAgIAIUSIDGyEKQgJCASADGyEJQct3Qcx3IAMbIAJqIQIgC1ALIQMgACACOwGIASAAIAk3A4ABIABCATcDeCAAIAo3A3AgACADOgCKAQJAAkACQAJAAkACQCADQQJrIgMEQEEBIQJBmOTgAEGGsOAAIAhCAFMiBRtBmOTgAEEBIAUbIAQbIQVBASAIQj+IpyAEGyEGQQMgAyADQQNPG0ECaw4CAgMBCyAAQQM2AiAgAEHkxd8ANgIcIABBAjsBGEEBIQVBASECDAMLIABBAzYCICAAQZDuwAA2AhwgAEECOwEYDAILIABBAzYCICAAQZPuwAA2AhwgAEECOwEYDAELIABB4ABqIABB8ABqIgQgAEEHaiICEKIBAkAgACgCYEUEQCAAQZABaiAEIAIQRAwBCyAAQZgBaiAAQegAaigCADYCACAAIAApAmA3A5ABCyAAKAKUASICRQ0BIAAoApABIgMtAABBME0NAiAALgGYASEEIABBATYCICAAIAM2AhwgAEECOwEYAn8gAkEBRgRAQQEhAiAAQSRqDAELIABBAjsBMCAAQYO24AA2AiggAEECOwEkIAAgAkEBazYCOCAAQQE2AiwgACADQQFqNgI0QQMhAiAAQTxqCyIDQQJBASAEQQBMIgcbNgIIIANBrOLYAEG8vOAAIAcbNgIEIANBAjsBACAAQRhqIAJBDGxqIgNBDmpBASAEayAEQQFrIAcbOwEAIANBDGpBATsBACACQQJqIQILIAAgAjYCbCAAIAY2AmQgACAFNgJgIAAgAEEYajYCaCABIABB4ABqELcEIABBoAFqJAAMAgtB6OvAAEEhQfDtwAAQ9BcAC0HA7cAAQR9BgO7AABD0FwALC3EBAX8gAAJ/AkACQAJAAkAgASgCAEEBaw4DAQIDAAsgASgCBAwDC0EBIQIgASgCBAwCCyABKAIIIgEgASgCAEGIgMQARiICQQJ0agwBCyABKAIIIgEgASgCAEGIgMQA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KAIEIgItAFANAiACLQBRRQ0BDAILIAAtACQNAQsgABDJHCEBCyABC10BBH8gASAAKAIIIgIoAgAgACgCECIEIAAoAgwiA2oiBWtLBEAgAiAFIAFBCEEwELcXCyACKAIEIgIgASADaiIBQTBsaiACIANBMGxqIARBMGwQ2i0aIAAgATYCDAtvAQF/IwBBIGsiACQAQZSM5AAoAgBBAkcEQCAAQYyM5AA2AgggAEGMjOQANgIMIAAgAEEfajYCGCAAIABBDGo2AhQgACAAQQhqNgIQQZSM5AAgAEEQakHsy98AEO4EC0GQjOQAKAIAGiAAQSBqJAALawECfyABKAIAIQIgAUEANgIAAkAgAS0APA0AIAEoAgQhAyABKAIoIAEoAhAgASgCFBCCDyABKAI4BEAgAUEANgI0IAEgASgCMEEBajYCMAsgAUEBOgA8IAJFDQAgASADEJwECyAAQQQ6AAALZAECfyMAQRBrIgIkAAJ/IAEoAgAiAwRAIAJBCGogAyABKAIEEOIWIAIoAgghAyACKAIMDAELIAIgASgCBBCCCiACKAIAIQMgAigCBAshASAAIAM2AgAgACABNgIEIAJBEGokAAtWAQF+AkAgA0HAAHFFBEAgA0UNASACQQAgA2tBP3GthiABIANBP3GtIgSIhCEBIAIgBIghAgwBCyACIANBP3GtiCEBQgAhAgsgACABNwMAIAAgAjcDCAthAQN/AkAgASgCBCICBH8gASgCACIDKAIsIgQgAk0NASABIAMoAiggAkEDdGoiASgCBDYCBCABKAIAIQJBAQVBAAshASAAIAI2AgQgACABNgIADwsgAiAEQaiBxAAQrBAAC2cBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCAAQSBqEOYiIABBADYCICACQQhqEJkEIABBMGogASgC+AQoAsgCIgEQtxAgAEHMAGogARC3ECAAQQA2ArABIABBADYCbCACQRBqJAALYwECfwJAIAEoAhQiAkUEQCABKAIIIQNBACECDAELIAEoAggiAyABKAIQIAJBA3RqQQRrKAIAIgJPDQAgAiADQZyIxAAQrRAACyAAIAMgAms2AgQgACABKAIEIAJBA3RqNgIAC2IBAn8jAEEQayIDJAAgA0EEaiACQQFBARChCyADKAIIIQQgAygCBEEBRgRAIAQgAygCDBDhKQALIAMoAgwgASACEPsGIQEgACACNgIIIAAgATYCBCAAIAQ2AgAgA0EQaiQAC2EBAX8jAEEgayIBJAAgAUEQahCXHSABQQE2AgwgACABQQxqEOkHNgIYIABBAjYCACAAQRRqIAFBHGooAgA2AgAgAEEMaiABQRRqKQIANwIAIAAgASkCDDcCBCABQSBqJAALYgEBfyMAQRBrIgQkAAJAIAAgASACEPMQIgINACAEQQhqIgEgACgCACIAKAIAEIsqIAEQ5hgiAg0AIAMgACgCABDXHyICDQAgBEEEOgAIIARBCGoQ5hghAgsgBEEQaiQAIAILYgEBfyMAQRBrIgQkAAJAIAAgASACEPMQIgINACAEQQhqIgEgACgCACIAKAIAEIsqIAEQ5hgiAg0AIAMgACgCABCkByICDQAgBEEEOgAIIARBCGoQ5hghAgsgBEEQaiQAIAILYQEDf0HUkeQAKAIAIgEEQCABQSBqIgMQ8R8gASgCLCICIAEoAiRGBEAgAUEkahC8FwsgASgCKCACQQJ0aiAANgIAIAEgAkEBajYCLCADEOEeIAIPC0HMyeAAQcgAEIQrAAttAQN/IAEoAlgiAiABKAJcIgRLBEBBsM7YAEEeQbDP2AAQ9BcACyABKAJMIgEoAhAhAyABKAIMIQEgACAENgIYIAAgAjYCFCAAIAM2AgwgACABNgIIIAAgATYCACAAIAI2AhAgACABIANqNgIEC2QCBH8BfiMAQeAAayICJAACQCAAKAIAIgFFBEBBACEADAELEPciIQAgASkCBCEFEPAiIAJBCGoiBCABKAIAEKgBIARB2AAQ+wYhASAAIAU3AgQgACABNgIACyACQeAAaiQAIAALYwECfyAAKAIEIQEgACgCACECIABChICAgMAANwIAAkAgASACRg0AIAEgAmtBBHYhAQNAIAFFDQEgAigCAEECRwRAIAJBDGoQ5QILIAFBAWshASACQRBqIQIMAAsACyAAEMsSC2ABAn8jAEEQayICJAACfyABKAIAQQdGBEAgAiABQQRqEP0PIAIoAgAhAyACKAIEDAELIAJBCGogARCODCACKAIIIQMgAigCDAshASAAIAM2AgAgACABNgIEIAJBEGokAAthAQF/IwBBEGsiBSQAAkAgAUEBcQRAIAQQ7wYMAQsgAiADIAQQgRUhASAFQQhqIABBCGpBzOzYABC/HSAFKAIMIQAgBSgCCCABENUbIAAgACgCAEEBajYCAAsgBUEQaiQAC04BA39BAyAAQQJrIgIgAkH/AXFBC08bQf8BcSICQQMgAUECayIEIARB/wFxQQtPG0H/AXFGBH8gAEH/AXEgAUH/AXFGIAJBA0dyBSADCwtfAQF/IwBBEGsiAiQAAn8gACgCACIAKAIABEAgAiAANgIIIAFB47PZAEEGIAJBCGpBggMQzAoMAQsgAiAAQQRqNgIMIAFB6bPZAEEEIAJBDGpBgwMQzAoLIAJBEGokAAtuAQF/IwBBEGsiAiQAIAIgACgCACgCACIAQeAAajYCDCABQcSk2QBBB0HP0uAAQQQgAEH4AGpB/QBBy6TZAEEFIABByABqQf0DQdCk2QBBByAAQf4DQdek2QBBCSACQQxqQfoDELgKIAJBEGokAAtsAQF/IwBBEGsiAiQAIAIgACgCACgCACIAQQhqNgIMIAFBrKHZAEEKQc/S4ABBBCAAQf0AQf6k2QBBByAAQUBrQaAEQdzc3wBBCCAAQZABakGhBEGFpdkAQQcgAkEMakGiBBC4CiACQRBqJAALYgEBfyMAQRBrIgIkAAJ/IAAoAgAoAgAiAC0AJUECRgRAIAIgADYCCCABQeSp2QBBDSACQQhqQYwEEMwKDAELIAIgADYCDCABQfGp2QBBDyACQQxqQY0EEMwKCyACQRBqJAALaQACQAJAAkACQAJAAkACQCAAKAIAQQFrDgYBAgMEBgUACyABIABBCGoQ0BkPCyAAQQRqIAEQjRUPCyABIABBBGoQryUPCyAAQQRqIAEQiA0PCyABIABBBGoQqyUPCyAAQQRqIAEQ3isLC2kAAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAYFAAsgAEEIaiABEO0tDwsgAEEEaiABEIwXDwsgAEEEaiABEPctDwsgAEEEaiABEPANDwsgAEEEaiABEMIlDwsgAEEEaiABEM0sCwtmAQJ/IAAoAgBBA0cEQCABIAAQzQ0PCyABLwEkIQIgAUEBOwEkIAEtACchAyABQQE6ACcgAEEQaiABENMsIAEgACgCEBCBFiABQQI6ACQgASADOgAnIAEgAEEEahDVFSABIAI7ASQLaQACQAJAAkACQAJAAkACQCAAKAIAQQFrDgYBAgMEBgUACyAAQQhqIAEQgykPCyAAQQRqIAEQjRcPCyAAQQRqIAEQ8y0PCyAAQQRqIAEQ8Q0PCyAAQQRqIAEQuSUPCyAAQQRqIAEQ1SwLC1wBA38gACgCECIDBEAgACgCHCAAKAIUIgFrQThuIQIDQCACBEAgARCFESABQTBqEN0nIAJBAWshAiABQThqIQEMAQsLIAAoAhggAxCRKgsgABD6IyAAQQhqEPojC24BAX8CQCABKAIEIgIgASgCDEcEQCABIAJBGGo2AgQgAigCACIBQYGAgIB4Rw0BCyAAQYGAgIB4NgIADwsgAEEAOgAUIAAgATYCACAAIAIoAgwiATYCDCAAIAIpAgQ3AgQgACACKAIQIAFrNgIQC2ABAn8jAEEQayICJAACfyABKAIAQQdGBEAgAiABQQRqEIUQIAIoAgAhAyACKAIEDAELIAJBCGogARCQDCACKAIIIQMgAigCDAshASAAIAM2AgAgACABNgIEIAJBEGokAAtkAgF/AX4jAEEgayICJAAgAkEANgIUIAJBCGogASACQRRqQfqv4ABBARDuAwJAAkAgAi0ACEEERwRAIAIpAwgiA0L/AYNCBFINAQsgAEEEOgAADAELIAAgAzcCAAsgAkEgaiQAC2ECAX8BfiMAQSBrIgQkACAEQQA2AhQgBEEIaiABIARBFGogAiADEO4DAkACQCAELQAIQQRHBEAgBCkDCCIFQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAFNwIACyAEQSBqJAALYAECfyMAQRBrIgIkAAJ/IAEoAgBBCUcEQCACQQhqIAEQjQogAigCCCEDIAIoAgwMAQsgAiABQQhqEK0EIAIoAgAhAyACKAIECyEBIAAgAzYCACAAIAE2AgQgAkEQaiQAC2kAAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAYFAAsgASAAQQhqENAYDwsgAEEEaiABENIaDwsgAEEEaiABEJsuDwsgAEEEaiABEMELDwsgAEEEaiABELgmDwsgAEEEaiABEL0tCwuEAQEBf0EAEL4RIQEgAEEAOgA8IABBADoAPyAAQQA7AD0gACABNgI4IABBADYCNCAAQoCAgICAATcCLCAAQQA6ACggAEEANgIkIABCgICAgMAANwIcIABBADYCCCAAQoCAgICAATcCACAAQRRqQcig4wApAwA3AgAgAEHAoOMAKQMANwIMC14BAX8CQCAAQQRrKAIAIgJBeHEiA0EEQQggAkEDcSICGyABak8EQCACQQAgAyABQSdqSxsNASAAENgDDwtB9abYAEEuQaSn2AAQ9BcAC0G0p9gAQS5B5KfYABD0FwALZAEBfyMAQRBrIgIkACACIAAoAgAiAEEsajYCDCABQfiBxABBCEGAgsQAQQggAEEYakEjQYiCxABBCSAAQSRBkYLEAEELIABBHGpBJUGcgsQAQQsgAkEMakEmELgKIAJBEGokAAtlAQF/IwBBEGsiAiQAIAAoAgAhACACIAEoAhRBgsnDAEEJIAEoAhgoAgwRAwA6AAggAiABNgIEIAJBADoACSACQQA2AgAgAiAAKAIANgIMIAIgAkEMakEVEJIIENINIAJBEGokAAtlAQF/IwBBEGsiAiQAIAAoAgAhACACIAEoAhRB5srDAEEHIAEoAhgoAgwRAwA6AAggAiABNgIEIAJBADoACSACQQA2AgAgAiAAKAIANgIMIAIgAkEMakEVEJIIENINIAJBEGokAAtVAEEAIQUCQCADIARNDQACQCACIARqLQAAIgIgAS0AAEYNACABLQABIAJGDQAgAS0AAiACRw0BCyAAIAQ2AgRBASEFIAAgBEEBajYCCAsgACAFNgIAC1sBAX8jAEEQayIEJAACQCAARQ0AIAQgADYCDCABQQFqIQADQCAEIARBDGoQsxkgBCgCAEUNASAEKAIEIgEgA08NASACIAFBAnRqIAA2AgAMAAsACyAEQRBqJAALaAEBfyMAQSBrIgIkACABQQBIBEAgAkEBNgIEIAJB0MnDADYCACACQgE3AgwgAkEVNgIcIAJBrJfEADYCGCACIAJBGGo2AgggAkHIysMAEMMdAAsgACABNgIEIABBADYCACACQSBqJAALXAEEf0GAAiABKAIEIgIgAkGAAk0bIQMgASgCACEFAkADQCACIgQgA0YNASABIAJBAWoiAjYCBCAFIAQQ3BVFDQALIAJBAWshAwsgACAEOgABIAAgA0GAAkk6AAALXQEDfyMAQUBqIgIkACACIAEQsRcgAEEIaiEBIAIoAgQhAwJAIAIoAgAiBEEqRgRAIAEgAzYCAAwBCyABIAJBCGpBOBD7BhoLIAAgBDYCACAAIAM2AgQgAkFAayQAC2UAAn8CfwJAAkACQCACQQFrDgIBAgALIAEoAqgCIgIgASgCrAJGDAMLIAEoAqgCDAELQQIgAyABKALUAk8NARogASgC0AIgA0ECdGooAgALIQJBAQshASAAIAI2AgQgACABOgAAC2QAAkACQAJAAkACQAJAAkACQAJAIABBAWsOCwABCAgCCAMEBQYHCAsgAUEkag8LIAFBBGoPCyABQRxqDwsgAUHYAGoPCyABQShqDwsgAUEwag8LIAFBDGoPCyABQQxqIQELIAELZgEBfyMAQRBrIgIkACACIAAoAgAiAEEIajYCDCABQdW6xwBBCkHgtcQAQQMgAEEMakEVQeO1xABBAyAAQdQBQea1xABBBiAAQRBqQRRB3JLZAEEDIAJBDGpB1QEQuAogAkEQaiQAC4oBAQJ/AkACQAJAAkACQAJAAkAgACgCAEEBaw4HAgMBBAUGAAELIABBBGoQ2CYLDwsgACgCBCAAKAIIENkkDwsgAEEEahC0Hg8LIABBDGoQ4CQPCwJAIABBDGoiASgCACICRQ0AIAEoAgQiAUUNACACIAFBARDVEQsgAEEEahDgJA8LIABBBGoQ2CYLYQECfyMAQRBrIgIkACACQQhqIAEQjRAgAigCCCEBAkAgAigCDCIDBEAgACABIAMQhg42AhggACADNgIIIAAgATYCBCAAQQE2AgAMAQsgABDKKCABQQAQ2SQLIAJBEGokAAtVAQF/AkAgACgCAEEBRgRAIAAoAgQhAQwBCyAAIAAoAggiASAAKAIMRgR/QQAFIAAgAUEcajYCCCABQRhqCyIBNgIEIABBATYCAAsgAEEEakEAIAEbC2cBAX8jAEEQayIDJAAgAkGBgIAgTwRAIANBAjYCCCADQX8gAkEDdCACQf////8BSxs2AgxBnOvgAEErIANBCGpB1KLYAEHco9gAEMUOAAsgACABNgIAIAAgAkEGdDYCBCADQRBqJAALZgEBfyMAQRBrIgIkACACIAAoAgAiAEEZajYCDCABQbnE2ABBDkHHxNgAQQ0gAEGaAkHUxNgAQQMgAEEMakEJQdfE2ABBFSAAQRhqQRRB7MTYAEENIAJBDGpBmwIQuAogAkEQaiQAC2gBAX8jAEEQayICJAAgAiAAKAIAIgBBJGo2AgwgAUGzxdgAQQ1BzNzfAEEFIABBPGpBogJB0dzfAEEHIABBowJBz9LgAEEEIABBDGpBpAJBwMXYAEELIAJBDGpBpQIQuAogAkEQaiQAC1cAAn8gAEGAAU8EQCAAQQN2QT9xQcDz2AAgAEEJdkG4+eAAaiAAQf/HDEsbLQAAQQV0akGAi+EAai0AACAAQQdxdkEBcQwBCyAAQcDy2ABqLQAAC0EBcQtXAAJ/IABBgAFPBEAgAEEDdkE/cUHA89gAIABBCXZB0PzgAGogAEH/gzhLGy0AAEEFdGpBgIvhAGotAAAgAEEHcXZBAXEMAQsgAEHA5NgAai0AAAtBAXELYgEBfyMAQUBqIgMkACADQRhqIAFBEGopAwA3AwAgA0EQaiABQQhqKQMANwMAIAMgAjYCICADQQ82AgAgAyABKQMANwMIIAMQ3CghASAAQbsBOgAAIAAgATYCBCADQUBrJAALcgIDfwJ+IAEgASgC5AIiAjYCnAMgASABKALgAiIDNgKYAyABKALIAiABQSU2AsgCQSBHBEBB5ezgAEEoQdD+3wAQ9BcACyABKQPYAiEFIAEpA9ACIQYgACACNgIUIAAgAzYCECAAIAU3AwggACAGNwMAC1oBAX8jAEFAaiIBJAAgAUEUaiAAQRBqKQIANwIAIAFBDGogAEEIaikCADcCACABQRg2AgAgAUEcaiAAQRhqKQIANwIAIAEgACkCADcCBCABENwoIAFBQGskAAtaAQF/IwBBQGoiASQAIAFBIGogAEEYaikDADcDACABQRhqIABBEGopAwA3AwAgAUEQaiAAQQhqKQMANwMAIAFBGzYCACABIAApAwA3AwggARDcKCABQUBrJAALYgEBfyMAQUBqIgMkACADQRhqIAFBEGopAwA3AwAgA0EQaiABQQhqKQMANwMAIAMgAjYCICADQR82AgAgAyABKQMANwMIIAMQ3CghASAAQbsBOgAAIAAgATYCBCADQUBrJAALZAEBfwJ/IAEoAgBBgYCAgHhHBEBBGEEEEKsgIgJBEGogAUEQaikCADcCACACQQhqIAFBCGopAgA3AgAgAiABKQIANwIAQQAMAQsgASgCBCECQQELIQEgACACNgIEIAAgATYCAAtnAQF/IwBBEGsiAiQAIAIgACgCACIAQRRqNgIMIAFBsIDZAEEIQc/S4ABBBCAAQQxqQf0AQZGw2QBBBSAAQcACQcuv2QBBCCAAQRhqQRRBpajZAEEIIAJBDGpBwQIQuAogAkEQaiQAC2gBAX8jAEEQayICJAAgAiAAKAIAIgBBFGo2AgwgAUGQgNkAQQdBz9LgAEEEIABBBGpB/QBBl7TZAEEKIABBDGpB/QBBirLZAEEDIABBwgJBpajZAEEIIAJBDGpBwQIQuAogAkEQaiQAC2cBAX8jAEEQayICJAAgAiAAKAIAIgBBFGo2AgwgAUHYgNkAQQlBz9LgAEEEIABBDGpB/QBBn7LZAEEFIABBwwJBy6/ZAEEIIABBGGpBFEGlqNkAQQggAkEMakHBAhC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEE0ajYCDCABQe2z2QBBDUHP0uAAQQQgAEEoakH9AEH6s9kAQQQgAEG1AkH+s9kAQQQgAEEwakH4AkGCtNkAQQggAkEMakGSARC4CiACQRBqJAALZwEBfyMAQRBrIgIkACACIAAoAgAiADYCDCABQYGz2QBBCkHP0uAAQQQgAEEIakH9AEGLs9kAQQQgAEEYakEUQY+z2QBBBiAAQRBqQZ4DQZWz2QBBAyACQQxqQZ8DELgKIAJBEGokAAtoAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFBg4HZAEEJQc/S4ABBBCAAQRBqQf0AQeqP2gBBBCAAQe8DQdyv2QBBBSAAQQhqQbcCQYqx2QBBBCACQQxqQecDELgKIAJBEGokAAtdAQF/IwBBEGsiAiQAAn8gACgCAEEFRgRAIAIgAEEIajYCCCABQauZ2QBBByACQQhqQegCEMwKDAELIAIgADYCDCABQZyZ2QBBBiACQQxqQfkDEMwKCyACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEEQajYCDCABQZeA2QBBBkHP0uAAQQQgAEEIakH9AEGmsNkAQQQgAEG3AkGqsNkAQQQgAEEEakGHA0GusNkAQQMgAkEMakH7AxC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEEgajYCDCABQfiC2QBBCkHP0uAAQQQgAEE4akH9AEHfm9kAQQMgAEH1A0GlqNkAQQggAEFAa0H4A0GKsdkAQQQgAkEMakH6AxC4CiACQRBqJAALXwEBfyMAQRBrIgIkAAJ/IAAoAgAiAC0AJUECRgRAIAIgADYCCCABQeSp2QBBDSACQQhqQYwEEMwKDAELIAIgADYCDCABQfGp2QBBDyACQQxqQY0EEMwKCyACQRBqJAALWwEBfyMAQRBrIgIkAAJ/IAApAwBQBEAgAiAAQQhqNgIIIAFBzK7gAEEFIAJBCGpB3gMQzAoMAQsgAiAANgIMIAFBk6HZAEERIAJBDGpB3gIQzAoLIAJBEGokAAtoAQF/IwBBEGsiAiQAIAIgACgCACIAQRxqNgIMIAFBtqHZAEELQc/S4ABBBCAAQQxqQf0AQf6k2QBBByAAQRRqQaMEQdzc3wBBCCAAQaEEQYWl2QBBByACQQxqQaQEELgKIAJBEGokAAtoAQF/IwBBEGsiAiQAIAIgACgCACIAQQxqNgIMIAFB4JTZAEEIQc/S4ABBBCAAQRBqQf0AQYSx2QBBBiAAQfcDQaKx2QBBCyAAQRhqQacEQaWo2QBBCCACQQxqQeoDELgKIAJBEGokAAtnAQF/IwBBEGsiAiQAIAIgACgCACIANgIMIAFBm5rZAEERQc/S4ABBBCAAQShqQf0AQd+b2QBBAyAAQTBqQbcCQeKb2QBBCCAAQTRqQRRBqJbZAEEFIAJBDGpBvAMQuAogAkEQaiQAC2gBAX8jAEEQayICJAAgAiAAKAIAIgBBOGo2AgwgAUGQqNkAQQxBz9LgAEEEIABB/QBBirLZAEEDIABBCGpBrARBqJjZAEEJIABBIGpBrQRB8q/ZAEEJIAJBDGpBhgMQuAogAkEQaiQAC18BAn8jAEEQayICJAAgAEEIaiEDAn8gACgCAEUEQCACIAM2AgggAUHMruAAQQUgAkEIakHTAhDMCgwBCyACIAM2AgwgAUGordkAQQMgAkEMakHfAxDMCgsgAkEQaiQAC2gBAX8jAEEQayICJAAgAiAAKAIAIgBBGGo2AgwgAUHMmdkAQRNBz9LgAEEEIABBDGpB/QBBhLHZAEEGIABB9wNBpajZAEEIIABBFGpB+ANBorHZAEELIAJBDGpBsgQQuAogAkEQaiQAC2gBAX8jAEEQayICJAAgAiAAKAIAIgBBGGo2AgwgAUHfmdkAQRhBz9LgAEEEIABBDGpB/QBBhLHZAEEGIABB9wNBpajZAEEIIABBFGpB+ANBorHZAEELIAJBDGpBsgQQuAogAkEQaiQAC2cBAX8jAEEQayICJAAgAiAAKAIAIgBBDGo2AgwgAUGKmtkAQRFBz9LgAEEEIABBBGpB/QBB35vZAEEDIABBtwJB4pvZAEEIIABBEGpBFEGlqNkAQQggAkEMakHBAhC4CiACQRBqJAALZwEBfyMAQRBrIgIkACACIAAoAgAiAEEEajYCDCABQdmn2QBBE0HP0uAAQQQgAEEIakH9AEHyteAAQQggAEEQakEUQZye2QBBCCAAQbgEQaSe2QBBCiACQQxqQe4CELgKIAJBEGokAAtfAQF/IwBBEGsiAiQAAn8gACgCACIALQAUQQJHBEAgAiAANgIIIAFBzK7gAEEFIAJBCGpBugIQzAoMAQsgAiAANgIMIAFB4K7gAEEGIAJBDGpBvgIQzAoLIAJBEGokAAtnAQF/IwBBEGsiAiQAIAIgACgCACIAQSBqNgIMIAFBgajZAEEPQc/S4ABBBCAAQRhqQf0AQf224ABBByAAQSRqQRRBgJvZAEEKIABBzwRBpajZAEEIIAJBDGpBwQIQuAogAkEQaiQAC2cBAX8jAEEQayICJAAgAiAAKAIAIgBBCGo2AgwgAUGYs9kAQQpBz9LgAEEEIABB/QBB2q/ZAEECIABBDGpB3ARBorPZAEEGIABBDWpBFEGKstkAQQMgAkEMakG5AhC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEEEajYCDCABQdOv2QBBB0HP0uAAQQQgAEEIakH9AEHar9kAQQIgAEEQakHdBEHqj9oAQQQgAEG3AkHcr9kAQQUgAkEMakG5AhC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEE4ajYCDCABQduy2QBBCkHP0uAAQQQgAEEwakH9AEHar9kAQQIgAEE8akHeBEHqj9oAQQQgAEHfBEHcr9kAQQUgAkEMakG5AhC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEEIajYCDCABQZ6w2QBBCEHP0uAAQQQgAEEMakH9AEGmsNkAQQQgAEG3AkGqsNkAQQQgAEEEakG3AkGusNkAQQMgAkEMakG5AhC4CiACQRBqJAALaQEBfyMAQRBrIgIkACACIAAoAgAiAEHIAGo2AgwgAUGrrdkAQRRBz9LgAEEEIABBQGtB/QBBv63ZAEEEIABB/AJBw63ZAEEIIABBIGpB+wRBy63ZAEEMIAJBDGpBkgEQuAogAkEQaiQAC2cBAX8jAEEQayICJAAgAiAAKAIAIgBBDGo2AgwgAUH8qtkAQQlBz9LgAEEEIABBBGpB/QBBhavZAEEDIABBgQVBiKvZAEEJIABBEGpBFEHDuOAAQQQgAkEMakH/BBC4CiACQRBqJAALaAEBfyMAQRBrIgIkACACIAAoAgAiAEFAazYCDCABQdet2QBBFEHP0uAAQQQgAEE4akH9AEHrrdkAQQUgAEEgakHmA0HwrdkAQQggAEH7BEHLrdkAQQwgAkEMakGSARC4CiACQRBqJAALXQEBfyMAQRBrIgIkAAJ/IAAoAgBBC0cEQCACIAA2AgggAUGos9kAQQYgAkEIakGFBRDMCgwBCyACIABBBGo2AgwgAUGus9kAQQMgAkEMakGGBRDMCgsgAkEQaiQAC18BBH8gACgCCCECIAAoAgAhASAAKAIEIQMDQAJAIAEgA0YEQEEAIQEMAQsgACABQTBqIgQ2AgAgASgCAEERRw0AIAEoAghBAWtBAUsNACABIAIQyAMgBCEBDAELCyABC2oCA38CfiABIAEoAkQiAjYCfCABIAEoAkAiAzYCeCABKAIoIAFBJTYCKEEgRwRAQeXs4ABBKEHQ/t8AEPQXAAsgASkDOCEFIAEpAzAhBiAAIAI2AhQgACADNgIQIAAgBTcDCCAAIAY3AwALYAEBfyMAQTBrIgIkACACIAA2AgwgAkEBNgIUIAJBhPjgADYCECACQgE3AhwgAkEKNgIsIAIgAkEoajYCGCACIAJBDGo2AiggASgCFCABKAIYIAJBEGoQtSQgAkEwaiQAC2IBAn8jAEEQayIBJAACfwJAA0AgAUEIaiAAEIAKAkAgASgCDEGAgMQAIAEoAggbIgJBCmsOBAIBAQIACyACQajAAGtBAkkNASACQYCAxABHDQALQQAMAQtBAQsgAUEQaiQAC2EBAn8gACgCCEEGdCECIAAoAgQhAwNAIAIEQCADIAEQmiQgAkFAaiECIANBQGshAwwBCwsgACgCECAAKAIUIAEQ2hwgAEEYaiABEMEhIAAoAjwgARCcKCAAKAJAIAEQmygLVgEDfyAAKAIEIQQgACgCACEFAkAgAUIDg0IAUg0AIAGnQQhrIgMgAygCACIDQQFqNgIAIANBAE4NAAALIABBGEEIIAIgBEYbQQggBRtqIAEgAhDGCBoLXQEBfyMAQTBrIgIkACACIAE2AgwgAiAANgIIIAJBAjYCFCACQcCDwAA2AhAgAkIBNwIcIAJBAjYCLCACIAJBKGo2AhggAiACQQhqNgIoIAJBEGoQohkgAkEwaiQAC10BA38jAEEQayICJAAgAkEEaiABQQFBAUEBEJgKIAIoAgghAyACKAIEQQFGBEAgAyACKAIMEOEpAAsgAigCDCEEIAAgATYCCCAAIAQ2AgQgACADNgIAIAJBEGokAAtZAQF/An8gAigCBARAAkAgAigCCCIDRQRADAELIAIoAgAgA0EBIAEQ+QIMAgsLQbCY5AAtAAAaIAEQYAshAiAAIAE2AgggACACQQEgAhs2AgQgACACRTYCAAtaAQJ/IAAoAgAiACAALQAIIgNBASADGzoACCAAQQhqIQQgAwRAIAQQ0QMLIABBDGogASACEIIPIABBACAALQAIIgAgAEEBRiIAGzoACCAARQRAIAQQ6QwLQQALowEBAX8jAEEQayIBJAACQAJAQdCR5AAoAgBB/////wdxBEBBpJHkACgCAA0BCyAAKAIELQBMQQdHDQELIAFBEGokAA8LIAFBBGoiASAAKAIAQQBBkMzYAEEhEIkKIAEQxwEjAEEgayIAJAAgAEEBNgIEIABBhPjgADYCACAAQgE3AgwgAELs8MCAgAI3AxggACAAQRhqNgIIIABBqM3YABDDHQALXQEDfyMAQRBrIgIkACACQQRqIAFBAUEEQQQQmAogAigCCCEDIAIoAgRBAUYEQCADIAIoAgwQ4SkACyACKAIMIQQgACABNgIIIAAgBDYCBCAAIAM2AgAgAkEQaiQAC10BAn8jAEEQayICJAAgAkEEaiABQQBBBEEIEJgKIAIoAgghASACKAIEQQFGBEAgASACKAIMEOEpAAsgAigCDCEDIABBADYCCCAAIAM2AgQgACABNgIAIAJBEGokAAtbAQJ/IwBBIGsiBCQAIARBADYCGCAEQQA6ABwgBEEANgIMIAQgAEHYAmo2AhQDQCAEQQxqELEIIgVB/wFxQQJGBEAgBEEgaiQABSAAIAEgAiAFIAMQ2wgMAQsLC14BAX8CQCAAKAIAQYCAgIB4Rg0AIAAoAghBBHQhAiAAKAIEQQhqIQADQCACRQ0BIAEgACgCAEkEQCAAIAE2AgAgAEEEakEAOgAACyACQRBrIQIgAEEQaiEADAALAAsLXgIBfwF+IAAoAgghASAAKAIEIQADQCABBEAgAEEIaikDACECAkAgACgCAEUEQCACEPkaDAELIAIgAEEYaikDABCMKwsgAEEoahDrJiABQQFrIQEgAEEwaiEADAELCwtiAAJAAkACQAJAAkACQAJAIAAoAgAOBgECAwQFBgALIABBBGoQ3igPCyAAQQhqEIcnDwsgAEEEahDmKA8LIABBBGoQ6CgPCyAAQQRqEOcoDwsgAEEEahCOJSAAQQhqEN4oCwtYAQJ/IABBADYCCCAAQQg2AgAgACgCDCAAKAIEIQFBAEEIEJQqIABBCDYCDCAAQQg2AgQgAWtBBnYhAANAIAAEQCAAQQFrIQAgARDyKCABQUBrIQEMAQsLC2IAAkACQAJAAkACQAJAAkAgACgCAA4GAQIDBAUGAAsgAEEEahDpKA8LIABBCGoQlCcPCyAAQQRqEOghDwsgAEEEahDvKA8LIABBBGoQ6SEPCyAAQQRqEJclIABBCGoQ6SgLC10BBH8gACgCACEBAkAgACgCCCICRQRAIAAoAgwhAAwBCyABKAIEIgQgACgCBCIDIAJrQdgAbGogBCADQdgAbGogACgCDCIAIANrQdgAbBDaLRoLIAEgACACazYCCAtXAQN/IABBDGogACgCCEEGdCECIAAoAgQhAwNAIAIEQCABIAMQ4x0gAkFAaiECIANBQGshAwwBCwsgARCYGiAAKAIYQYCAgIB4RwRAIABBGGogARCiGgsLVwEDfyAAQQxqIAAoAghBBnQhAiAAKAIEIQMDQCACBEAgAyABELolIAJBQGohAiADQUBrIQMMAQsLIAEQmxogACgCGEGAgICAeEcEQCAAQRhqIAEQnBoLC1cBA38gAEEMaiAAKAIIQQZ0IQIgACgCBCEDA0AgAgRAIAMgARC+JSACQUBqIQIgA0FAayEDDAELCyABEJ0aIAAoAhhBgICAgHhHBEAgAEEYaiABEJ4aCwtXAQN/IABBDGogACgCCEEGdCECIAAoAgQhAwNAIAIEQCADIAEQwSUgAkFAaiECIANBQGshAwwBCwsgARCZGiAAKAIYQYCAgIB4RwRAIABBGGogARCXGgsLWAECfyAAQQA2AgggAEEENgIAIAAoAgwgACgCBCEBQQBBBBDfKSAAQQQ2AgwgAEEENgIEIAFrQQJ2IQADQCAABEAgAEEBayEAIAEQkAIgAUEEaiEBDAELCwtiAAJAAkACQAJAAkACQAJAIAAoAgAOBgECAwQFBgALIABBBGoQjikPCyAAQQhqENInDwsgAEEEahCQIg8LIABBBGoQ1CUgAEEYahDTJw8LIABBBGoQkSIPCyAAQQRqEJEpCwtvAQN/IwBBQGoiAiQAAkACQAJAAkAgASgCACIDQQFrDgMBAgMACyAAIAEpAwgQ/Bo3AwgMAgsgACABKwMIOQMIDAELEPYiIQQgAiABKAIEEFMgACAEIAJBwAAQ+wY2AgQLIAAgAzYCACACQUBrJAALYgACQAJAAkACQAJAAkACQCAAKAIADgYBAgMEBQYACyAAQQRqEJYpDwsgAEEIahDmJw8LIABBBGoQpCIPCyAAQQRqEJwpDwsgAEEEahClIg8LIABBBGoQ5CUgAEEIahCWKQsLVwEDfyAAQQxqIAAoAghBBnQhAiAAKAIEIQMDQCACBEAgAyABEIYmIAJBQGohAiADQUBrIQMMAQsLIAEQuxogACgCGEGAgICAeEcEQCAAQRhqIAEQtBoLC1cBA38gAEEMaiAAKAIIQQZ0IQIgACgCBCEDA0AgAgRAIAMgARCHJiACQUBqIQIgA0FAayEDDAELCyABELwaIAAoAhhBgICAgHhHBEAgAEEYaiABELUaCwtXAQN/IABBDGogACgCCEEGdCECIAAoAgQhAwNAIAIEQCADIAEQhSYgAkFAaiECIANBQGshAwwBCwsgARC6GiAAKAIYQYCAgIB4RwRAIAEgAEEYahDmBgsLVwEDfyAAQQxqIAAoAghBBnQhAiAAKAIEIQMDQCACBEAgAyABEIQmIAJBQGohAiADQUBrIQMMAQsLIAEQuRogACgCGEGAgICAeEcEQCAAQRhqIAEQuBoLC10BBH8gACgCACEBAkAgACgCCCICRQRAIAAoAgwhAAwBCyABKAIEIgQgACgCBCIDIAJrQcgAbGogBCADQcgAbGogACgCDCIAIANrQcgAbBDaLRoLIAEgACACazYCCAtaAQR/IAAoAgAhAQJAIAAoAggiAkUEQCAAKAIMIQAMAQsgASgCBCIEIAAoAgQiAyACa0E4bGogBCADQThsaiAAKAIMIgAgA2tBOGwQ2i0aCyABIAAgAms2AggLXQEEfyAAKAIAIQECQCAAKAIIIgJFBEAgACgCDCEADAELIAEoAgQiBCAAKAIEIgMgAmtB0ABsaiAEIANB0ABsaiAAKAIMIgAgA2tB0ABsENotGgsgASAAIAJrNgIIC2UAAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAUGAAsgAEEIahD/Jw8LIABBBGoQ4RQPCyAAQQRqEJwgDwsgAEEEahDlDA8LIABBBGoQiiQPCyAAQgA3AgQPCyAAQQRqEIwuC2UAAkACQAJAAkACQAJAIAAoAgBBAWsOBgABAgMFBAULIABBBGogARCWFw8LIABBBGogARCVLg8LIABBBGogARDADg8LIABBBGogARCwLSAAQQhqIAEQpS0PCyAAQQRqIAEQpS0LC2IAAkACQAJAAkACQAJAAkAgACgCAA4GAQIDBAUGAAsgAEEEahC4KQ8LIABBCGoQkygPCyAAQQRqEL0pDwsgAEEEahC/KQ8LIABBBGoQvikPCyAAQQRqEKYmIABBCGoQuCkLC1oBAn8jAEEQayICJAAgAAJ/IAEoAgBBBUcEQCABKAIsIQMgASgCKAwBCyACQQhqIAEoAgQgASgCCBDiFiACKAIMIQMgAigCCAs2AgAgACADNgIEIAJBEGokAAtiAQJ/IwBBEGsiBCQAIARBADYCDCAEIAEgBEEMahDkCSAEKAIEIQUgACADNgIQIABBADYCDCAAIAM2AgggACACNgIEIAAgBToAGCAAIAE2AgAgACAEKAIMNgIUIARBEGokAAtiAAJAAkACQAJAAkACQAJAIAAoAgAOBgECAwQFBgALIABBBGoQ4AIPCyAAQQhqEKcoDwsgAEEEahDQIg8LIABBBGoQ2SkPCyAAQQRqENEiDwsgAEEEahDJJiAAQQhqEOACCwtdAQJ/IwBBEGsiAiQAIAJBBGogAUEAQQRBBBCYCiACKAIIIQEgAigCBEEBRgRAIAEgAigCDBDhKQALIAIoAgwhAyAAQQA2AgggACADNgIEIAAgATYCACACQRBqJAALYgECfyMAQRBrIgIkACACQQhqIAEQAgJAIAIoAggiAUUEQEGAgICAeCEBDAELIAIgASACKAIMEPgXIAIoAgAhAyAAIAIoAgQiATYCCCAAIAM2AgQLIAAgATYCACACQRBqJAALYgEBfyMAQRBrIgIkACACIABBggJqNgIMIAFB/ZrAAEEOQfGawABBByAAQR9B4JrAAEEFIABBgAJqQR1B+JrAAEEFIABBgQJqQR1Bi5vAAEEFIAJBDGpBFxC4CiACQRBqJAALpgECAn8CfiMAQRBrIgIkAEIBIQQCQCABQf8AcSIDQcAAcUUEQCADRQ0BQgAgA0E/ca0iBIZCAUEAIANrQT9xrYiEIQVCASAEhiEEDAELQgEgA0E/ca2GIQVCACEECyACIAQ3AwAgAiAFNwMIIAAgAUGAAXFBA3ZqIgAgACkDACACKQMAhDcDACAAQQhqIgAgACkDACACQQhqKQMAhDcDACACQRBqJAALXwEBfyMAQRBrIgIkACACIABBFGo2AgwgAUGsgsQAQQlBgILEAEEIIABBDGpBI0Hog8QAQQcgAEE8Qe+DxABBCCAAQRBqQRVB94PEAEEJIAJBDGpBJhC4CiACQRBqJAALWwEBfyMAQTBrIgMkACADIAE2AgwgAyAANgIIIANBATYCFCADQYT44AA2AhAgA0IBNwIcIAMgA0EIaq1CgICAgIAChDcDKCADIANBKGo2AhggA0EQaiACEMMdAAtWAQF/IwBBIGsiAiQAIAJBADoAGCACIAE2AhQgAiAANgIQIAJBATYCDCACIAJBDGo2AhwgAkEcakHsgMAAEAcgAigCDARAIAJBEGoQ0iILIAJBIGokAAuQAQAgAEHIAGpB+AAQ8xQgAEHUAGpBIRDzFCAAQeAAakE+EPMUIABC/ICAgOALNwJAIABC/ICAgMAPNwI4IABC24CAgNALNwIwIABCp4CAgOALNwIoIABCroCAgIAMNwIgIABCrICAgOAONwIYIABC3oCAgOAHNwIQIABCq4CAgKAHNwIIIABCrYCAgMAPNwIAC2YBAn8jAEEgayIBJAACQAJAAkAgAKciAkEDcUEBaw4CAgABCyABQQE2AgggAUGk+sEANgIEIAFCADcCECABIAFBHGo2AgwgAUEEakGs+sEAEMMdAAsgAikDCCEACyABQSBqJAAgAAtWAQF/IwBBIGsiAiQAIAJBADYCECACQQhqIAEgAkEQahDkCSACQRRqIAIoAgggAigCDBDBFSAAQQhqIAJBHGooAgA2AgAgACACKQIUNwIAIAJBIGokAAtWAQF/IwBBIGsiAiQAIAJBADYCECACQQhqIAEgAkEQahDkCSACQRRqIAIoAgggAigCDBCRESAAQQhqIAJBHGooAgA2AgAgACACKQIUNwIAIAJBIGokAAtTAQJ/IwBBEGsiBSQAAkAgAiAESQRAIAVBBGoiBiADIAQQxBUgACAGIAEgAhDzCAwBCyAFQQRqIgYgASACEMQVIAAgBiADIAQQ8wgLIAVBEGokAAtfAQF/IwBBEGsiAiQAIAIgAEEsajYCDCABQfiBxABBCEGAgsQAQQggAEEYakEjQYiCxABBCSAAQSRBkYLEAEELIABBHGpBJUGcgsQAQQsgAkEMakEmELgKIAJBEGokAAtbAQJ/QQEhAwJAIAJFDQACQAJAIAEgAkEBayIESwRAIAAgBGotAABBCmsOBAMBAQIBCyAEIAFB7JXEABCsEAALQQAPCyABIAJNDQAgACACai0AAEEKRyEDCyADC1EAIAAgASACEM8fIgAoAggiASAAKAIARgRAIAAQ6hYLIAAoAgQgAUEDdGogBa0gBK1C/wGDQiiGIAOtQv8Bg0IghoSENwIAIAAgAUEBajYCCAtgAQJ/IAAoAgQhASAAKAIAIQIgAEKEgICAwAA3AgACQCABIAJGDQAgASACa0EEdiEBA0AgAUUNASACKAIAIAJBBGooAgAQ2ikgAUEBayEBIAJBEGohAgwACwALIAAQyxILVgEBfyMAQSBrIgIkACACQQA2AhAgAkEIaiABIAJBEGoQ5AkgAkEUaiACKAIIIAIoAgwQyxUgAEEIaiACQRxqKAIANgIAIAAgAikCFDcCACACQSBqJAALWQEEfyAAQoSAgIDAADcCACAAKAIQIgEEQCAAKAIMIgMgACgCCCIAKAIIIgJHBEAgACgCBCIEIAJBA3RqIAQgA0EDdGogAUEDdBDaLRoLIAAgASACajYCCAsLWAEEfyAAQoGAgIAQNwIAIAAoAhAiAQRAIAAoAgwiAyAAKAIIIgAoAggiAkcEQCAAKAIEIgQgAkEBdGogBCADQQF0aiABQQF0ENotGgsgACABIAJqNgIICwtdAQF/IAEoAgAiBS0AEEEBcQRAIAQQiAoLIAMEQCAEEJoICwJAIAUtABcEQCAEKAIEIAQoAggQ1B9FDQELIABBgICAgHg2AgAPCyAAIAEoAgQgASgCCCACQQEQ5BgLVwEFfyAAKAIQIgEEQCAAKAIMIgQgACgCCCICKAIIIgNHBEAgAigCBCIFIANB2ABsaiAFIARB2ABsaiABQdgAbBDaLRogACgCECEBCyACIAEgA2o2AggLC1QBBX8gACgCECIBBEAgACgCDCIEIAAoAggiAigCCCIDRwRAIAIoAgQiBSADQQR0aiAFIARBBHRqIAFBBHQQ2i0aIAAoAhAhAQsgAiABIANqNgIICwtYAQJ/IwBBEGsiAiQAIAEtAABBA0cEf0EABSACQQhqIAEoAgQiASgCACABKAIEKAIYEQAAIAIoAgwhAyACKAIICyEBIAAgAzYCBCAAIAE2AgAgAkEQaiQAC1gBAn8jAEEQayICJAAgAS0AAEEDRwR/QQAFIAJBCGogASgCBCIBKAIAIAEoAgQoAiQRAAAgAigCDCEDIAIoAggLIQEgACADNgIEIAAgATYCACACQRBqJAALVQICfwF+A0ACQCABBEAgACkDACIEQgODQgBSDQEgBKdBCGsiAiACKAIAIgNBAWs2AgAgA0EBRw0BIAIQwR8MAQsPCyABQQFrIQEgAEEYaiEADAALAAtdAQR/IAEoAhAhAyABKAIMIQQCfyABKAIARQRAIAEoAgghBSABKAIEDAELQQEhAiABQQRqEPkcCyEBIAAgAzYCECAAIAQ2AgwgACAFNgIIIAAgATYCBCAAIAI2AgALWwECfyMAQRBrIgIkACACQQRqIAFBAUEBEKELIAIoAgghASACKAIEQQFGBEAgASACKAIMEOEpAAsgAigCDCEDIABBADYCCCAAIAM2AgQgACABNgIAIAJBEGokAAtpAQF/IwBBIGsiAyQAIAMgAjoACSADIAEoAaoCNgADIAMgAS8BrgI7AAcgAyABKQCxAjcACiADIAEpALkCNwASIAMgASgAwQI2ABogAyABLwDFAjsAHiAAIAEgA0EDahCCFSADQSBqJAALWQECfwNAAkAgASIDIAMoAggiASAAIAAgAUkbNgIMIAMgASAAIAAgAUsbNgIIIAMoAhAiBEUNACAEQQRqIQEgBCgCAEEIRg0BCwsgA0EQahCNJyADIAI2AhALUwECfwJ/IAAoAoQBIgFBgAFNBEAgAEGEAWohAiAAQQFqDAELIABBBGohAiAAKAIEIQEgACgCCAsgAUUEQEENDwsgAiABQQFrIgE2AgAgAWotAAALUgECfyMAQRBrIgIkAAJ/IAAoAgAiA0EBakF+cSADRgRAIAAoAggMAQsgAkEIaiAAEPYaIAIoAgghAyACKAIMCyEAIAEgAyAAEKoDIAJBEGokAAtkAQJ/IAAoAgQhAyAAQQA2AgRBKEEIEKsgIgJCgYCAgBA3AwAgAiADNgIgIAIgASkDADcDCCACQRBqIAFBCGopAwA3AwAgAkEYaiABQRBqKQMANwMAIABBBGoQsicgACACNgIEC1QBBX8gACgCECIBBEAgACgCDCIEIAAoAggiAigCCCIDRwRAIAIoAgQiBSADQTBsaiAFIARBMGxqIAFBMGwQ2i0aIAAoAhAhAQsgAiABIANqNgIICwtjAQF/IwBBEGsiAiQAIAIgAEEUajYCDCABQcyu4ABBBUHP0uAAQQQgAEEIakH9AEHEr9kAQQQgAEEQakHoA0HIr9kAQQMgAEHpA0HLr9kAQQggAkEMakGSARC4CiACQRBqJAALWgEBfyMAQRBrIgIkAAJ/IAAtABRBAkYEQCACIAA2AgggAUHgpNkAQQ0gAkEIakGrBBDMCgwBCyACIAA2AgwgAUHMruAAQQUgAkEMakHTAhDMCgsgAkEQaiQAC1oBAX8jAEEQayICJAACfyAALQAUQQJGBEAgAiAANgIIIAFB+ajZAEEPIAJBCGpBrwQQzAoMAQsgAiAANgIMIAFBzK7gAEEFIAJBDGpB0wIQzAoLIAJBEGokAAtaAQF/IwBBEGsiAiQAAn8gAC0ANEEERgRAIAIgADYCCCABQb6V2QBBDCACQQhqQa4EEMwKDAELIAIgADYCDCABQf+u2QBBBiACQQxqQcwEEMwKCyACQRBqJAALWgEBfyMAQRBrIgIkAAJ/IAAtABRBAkYEQCACIAA2AgggAUGZptkAQQogAkEIakG6BBDMCgwBCyACIAA2AgwgAUHMruAAQQUgAkEMakHTAhDMCgsgAkEQaiQAC14AIAAoAgAiABDuJiAAQQxqELkHIAAoAgwgAEEQaigCABCTKiAAQTBqELYnIABBNGoQ1R0gAEE4ahChJSAAQRhqEL0ZIAAoAhggAEEcaigCABDtKSAAQcAAQQQQ1RELWgECfyAAKAIIQShsIQIgACgCBCEDA0AgAgRAIAMgARDMESACQShrIQIgA0EoaiEDDAELCyAAKAIMIgAoAgBBgICAgHhHBEAgACABEJwaDwsgAEEEaiABENUsC1oBAn8gACgCCEEobCECIAAoAgQhAwNAIAIEQCADIAEQsBQgAkEoayECIANBKGohAwwBCwsgACgCDCIAKAIAQYCAgIB4RwRAIAAgARCeGg8LIABBBGogARDWLAtZAQR/IABChICAgMAANwIAIAAoAhAiAQRAIAAoAgwiAyAAKAIIIgAoAggiAkcEQCAAKAIEIgQgAkEUbGogBCADQRRsaiABQRRsENotGgsgACABIAJqNgIICwtaAQJ/IAAoAghBOGwhAiAAKAIEIQADQCACBEAgAS0APSEDIAFBAToAPSAAIAEQrREgAUEAOgA9IABBMGogARC/JSABIAM6AD0gAkE4ayECIABBOGohAAwBCwsLUwEDfyMAQTBrIgIkACAAQShqIQEgACgCKEElRgRAIAJBCGoiAyAAQdgAahCLAiABEKcmIAEgA0EoEPsGQQAgACgCKEElRxshAQsgAkEwaiQAIAELaQEBfyMAQSBrIgMkACADIAI6AAkgAyABKAGCAzYAAyADIAEvAYYDOwAHIAMgASkAiQM3AAogAyABKQCRAzcAEiADIAEoAJkDNgAaIAMgAS8AnQM7AB4gACABIANBA2oQmRUgA0EgaiQAC1kBAn8DQAJAIAEiAyADKAIIIgEgACAAIAFJGzYCDCADIAEgACAAIAFLGzYCCCADKAIQIgRFDQAgBEEEaiEBIAQoAgBBCEYNAQsLIANBEGoQlSggAyACNgIQC10CAX8BfiMAQRBrIgMkACADQQhqIAIgASgCCCABIAEtABQQsQUCQAJAIAMtAAhBBEcEQCADKQMIIgRC/wGDQgRSDQELIABBBDoAAAwBCyAAIAQ3AgALIANBEGokAAthAQN/IAAtAAwiBCABLQAMIgJHIgMEQEF/IAMgAiAESxsPC0EAIQMgASECAkACQAJAIARBAWsOAgIAAQsgACECIAEhAAsgAigCBCACKAIIIAAoAgQgACgCCBCsGSEDCyADC1oBAn8gACgCCEE4bCECIAAoAgQhAANAIAIEQCABLQAoIQMgAUEBOgAoIAAgARDTESABQQA6ACggAEEwaiABEJwkIAEgAzoAKCACQThrIQIgAEE4aiEADAELCwvaAQEFfyAAKAIMIgIgACgCACIDRgRAIAAoAgAhAiAAEO0WIAAoAggiBSACIAAoAgwiBGtLBEACQCACIAVrIgMgBCADayIESyAAKAIAIgYgAmsgBE9xRQRAIAAoAgQiAiAGIANrIgRBAnRqIAIgBUECdGogA0ECdBDaLRogACAENgIIDAELIAAoAgQiAyACQQJ0aiADIARBAnQQ+wYaCwsgACgCACEDIAAoAgwhAgsgACACQQFqNgIMIAAoAgQgACgCCCACaiIAIANBACAAIANPG2tBAnRqIAE2AgALUAEDfwJAIAEtAAgNACABKAIAIgMgASgCBCIESw0AIAMgBE8EQEEBIQIgAUEBOgAIDAELQQEhAiABIANBAWo2AgALIAAgAzYCBCAAIAI2AgALXgEBfyMAQSBrIgQkACACIANLBEAgBEEANgIYIARBATYCDCAEQeigwwA2AgggBEIENwIQIARBCGpB8KDDABDDHQALIAAgAzYCBCAAIAI2AgAgACABNgIIIARBIGokAAtQAQN/AkAgAS0AAA0AIAEtAAEiAyABLQACIgRLDQAgAyAETwRAQQEhAiABQQE6AAAMAQtBASECIAEgA0EBajoAAQsgACADOgABIAAgAjoAAAtbAQF/IwBBEGsiAiQAAn8gACgCACIALQAARQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAAQQFqNgIMIAFBvPDgAEEEIAJBDGpBFxDMCgsgAkEQaiQAC1sBAX9BASEDAkAgAUH/AXFBAUcEQCABQQEgAigCCBshAwwBCyACQQA2AgggAkEEQQQQqxkgAhDOCgsgACADOgAMIAAgAikCADcCACAAQQhqIAJBCGooAgA2AgALlAEBA38gACgCCCIDIAAoAgBGBEAjAEEQayICJAAgAkEIaiAAIAAoAgBBAUEEQRgQoQggAigCCCIEQYGAgIB4RwRAIAQgAigCDBDhKQALIAJBEGokAAsgACADQQFqNgIIIAAoAgQgA0EYbGoiACABKQIANwIAIABBCGogAUEIaikCADcCACAAQRBqIAFBEGopAgA3AgALlAEBA38gACgCCCIDIAAoAgBGBEAjAEEQayICJAAgAkEIaiAAIAAoAgBBAUEEQRQQoQggAigCCCIEQYGAgIB4RwRAIAQgAigCDBDhKQALIAJBEGokAAsgACADQQFqNgIIIAAoAgQgA0EUbGoiACABKQIANwIAIABBCGogAUEIaikCADcCACAAQRBqIAFBEGooAgA2AgALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiACkDAEICUQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpB7wAQzAoLIAJBEGokAAtbAQF/IwBBEGsiAiQAAn8gACgCACIAKAIAQQNGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakHxABDMCgsgAkEQaiQAC1sBAX8jAEEQayICJAACfyAAKAIAIgAoAgBBAkYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQfMAEMwKCyACQRBqJAALYQEBfyMAQRBrIgIkACACIAAoAgAoAgAiAEHYAGo2AgwgAUGY38MAQQpBp57EAEEGIABBCGpB+QBBn7LZAEEFIABBzABqQfoAQaLfwwBBCyACQQxqQfsAEOYKIAJBEGokAAteAQF/IwBBIGsiBCQAIAIgA0sEQCAEQQA2AhggBEEBNgIMIARB6KDDADYCCCAEQgQ3AhAgBEEIakGIj8MAEMMdAAsgACADNgIEIAAgAjYCACAAIAE2AgggBEEgaiQAC1UBAn8jAEEgayICJAAgAkEIaiABEL8UIAJBHGoiA0EANgIAIAIgAikDCDcCFCACQRRqIAEQ6wwgAEEIaiADKAIANgIAIAAgAikCFDcCACACQSBqJAALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiACkDAEICUQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBiQEQzAoLIAJBEGokAAteAQF/IwBBEGsiAiQAIAIgASgCFEHmysMAQQcgASgCGCgCDBEDADoACCACIAE2AgQgAkEAOgAJIAJBADYCACACIAAoAgA2AgwgAiACQQxqQRUQkggQ0g0gAkEQaiQAC14BAX8jAEEQayICJAAgAiABKAIUQYLJwwBBCSABKAIYKAIMEQMAOgAIIAIgATYCBCACQQA6AAkgAkEANgIAIAIgACgCADYCDCACIAJBDGpBFRCSCBDSDSACQRBqJAALWwECfyMAQSBrIgIkACACQQhqIAFBIGpBoLjDABC/HSACKAIMIQEgAigCCCEDIAJCBDcCGCACQgc3AhAgACADIAJBEGoQ6AggASABKAIAQQFqNgIAIAJBIGokAAtgAQJ/IwBBIGsiAiQAIAJBCGogAUEgakGQuMMAEL8dIAIoAgwhASACKAIIIQMgAkEANgIcIAJCgICAgMAANwIUIAAgAyACQRRqEKUYIAEgASgCAEEBajYCACACQSBqJAALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgAEEEajYCDCABQbzw4ABBBCACQQxqQSYQzAoLIAJBEGokAAtbAQF/IwBBEGsiAiQAAn8gACgCACIALQAMQQJGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakH3ABDMCgsgAkEQaiQAC1wBAX8jAEEQayICJAACfyAAKAIAIgAtAABFBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIABBAWo2AgwgAUG88OAAQQQgAkEMakHAARDMCgsgAkEQaiQAC1sBAX8jAEEQayICJAACfyAAKAIAIgAtAAxBA0YEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQbgBEMwKCyACQRBqJAALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEECRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBtwEQzAoLIAJBEGokAAtcAQF/IwBBEGsiAiQAAn8gACgCACIALQAARQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAAQQFqNgIMIAFBvPDgAEEEIAJBDGpBxgEQzAoLIAJBEGokAAtbAQF/IwBBEGsiAiQAAn8gACgCACIALQAAQQJGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakGSARDMCgsgAkEQaiQAC18BAX8jAEEQayICJAACfyAAKAIAIgAoAgBBgICAgHhGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakGpAhDMCgsgAkEQaiQAC1gBAX8gACgCCCICIAAoAgBGBEAgABC/FwsgACACQQFqNgIIIAAoAgQgAkEYbGoiACABKQMANwMAIABBCGogAUEIaikDADcDACAAQRBqIAFBEGopAwA3AwALVgECfyMAQTBrIgIkACACIAEQqAQgAigCBCEDAkAgAigCACIBQQtHBEAgAEEIaiACQQhqQSgQ+wYaDAELQQwhAQsgACABNgIAIAAgAzYCBCACQTBqJAALXwIBfgN/IAEpAwAhAiAAQQhqIAFBCGoQ1hsgAS8BKCEDIAEtACohBCABQSBqEPgkIQUgAUEkahD4JCEBIAAgBDoAKiAAIAM7ASggACACNwMAIAAgATYCJCAAIAU2AiALUQICfwF+IAEgACgCCCICSQRAIAAoAgQgAUEDdGoiAykDACADIANBCGogAiABQX9zakEDdBDaLRogACACQQFrNgIIDwsgASACQZCl4AAQsRAAC2IBAX8jAEEQayICJAACQCAALQCDAkUEQCACQQhqIAAoAuABQQhqQZzs2AAQvx0gAigCDCEAIAIoAgggARDVGyAAIAAoAgBBAWo2AgAMAQsgACgC3AEgARDJFwsgAkEQaiQAC2QBAX8CQAJAAkACQAJAQQQgAS0AAEECa0H/AXEiAiACQQRPG0EBaw4EAQIDBAALIABBAjoAACAAIAEtAAE6AAEPCyAAQQM6AAAPCyAAQQQ6AAAPCyAAQQU6AAAPCyAAIAEQqBwLUAECfyMAQRBrIgEkAAJ/QQEgAC0ACEEDayICIAJB/wFxQQNPG0H/AXFBAkcEQCAAKAIADAELIAFBCGogACgCABCNAyABKAIICyABQRBqJAALYgEBfyMAQRBrIgIkACABKAIAQYCAgIB4RwRAIAAgASkCADcCACAAQQhqIAFBCGopAgA3AgAgAkEQaiQADwsgAiABLQAEOgAPQdjr2ABBIiACQQ9qQdDl2ABB/OvYABDFDgALUAEBfyABQTBrIQMCfyACQQpLBEBBASADQQpJDQEaQX8gAUEgciIBQdcAayIDIAMgAUHhAGtJGyEDCyACIANLCyEBIAAgAzYCBCAAIAE2AgALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEECRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpB+gIQzAoLIAJBEGokAAtbAQF/IwBBEGsiAiQAAn8gACgCACIALQA0QQZGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakHrAxDMCgsgAkEQaiQAC1sBAX8jAEEQayICJAACfyAAKAIAIgAtABRBAkYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQdMCEMwKCyACQRBqJAALWwEBfyMAQRBrIgIkAAJ/IAAoAgAiAC0AJUEDRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBiwQQzAoLIAJBEGokAAtZAQF/IwBBEGsiAiQAAn8gACgCACIAKQMAUARAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBnwMQzAoLIAJBEGokAAtbAQF/IwBBEGsiAiQAAn8gACgCACIAKAIAQQRGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakGYBBDMCgsgAkEQaiQAC1kBAn8CQCAARQ0AIAAoAghBDGwhAiAAKAIEIQADQCACRQ0BAkAgACgCAA0AIAAoAgQiAygCAEEIRw0AIANBKGogARDbIwsgAEEMaiEAIAJBDGshAgwACwALC1cBAn8gAEIANwMQIABCADcDACAAQSBqEJAmIAAoAkBBBHQhASAAKAI8IQIDQCABBEAgAUEQayEBIAIQiSQgAkEQaiECDAELCyAAQgA3AzAgAEEkahDSBwtQAQJ/IwBBEGsiASQAAn9BASAALQAIQQNrIgIgAkH/AXFBA08bQf8BcUECRwRAIAAoAgAMAQsgAUEIaiAAKAIAEI4DIAEoAggLIAFBEGokAAtdAQJ/IwBBEGsiAiQAIAACfwJAAkAgASgCAEEBaw4CAQEACyACQQhqIAFBCGoQthUgAigCDCEDIAIoAggMAQsgASgCDCEDIAEoAggLNgIAIAAgAzYCBCACQRBqJAALVQECfyMAQdAAayICJAACfyABQQZNBEBB2rngAEEGIAAgARDrHwwBCyACQRBqIgMgACABQdq54ABBBhDeASACQQRqIAMQrgYgAigCBAsgAkHQAGokAAtaAgF/AX4jAEEQayIDJAAgA0EIaiACIAEoAgggAUEAELEFAkACQCADLQAIQQRHBEAgAykDCCIEQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAENwIACyADQRBqJAALpQEBA38gAEE8ahDKHSAAKAIAIAAoAgQQ7CkgAEEMahChIyAAQcQAahDKHSAAQRhqEKEjIAAoAjBBgICAgHhHBEAgAEEwahChIwsgACgCKCIDIQEgACgCLCECA0ACQAJAIAIEQCABKAIARQ0BIAEQ+R4gAUEQaigCACABQRRqKAIAEOUpDAELDAELIAJBAWshAiABQRxqIQEMAQsLIAAoAiQgAxDsKQtdAQN/IwBBEGsiAiQAQcCR5AAoAgAiBEUEQEHMyeAAQcgAEIQrAAsgAkEEaiIDIAQgASgCCCABKAIMQdjV4ABBiAEQ4A4gAxDHASADEJ4LIAEgABC4LSACQRBqJAALUQEDfyMAQRBrIgIkACACIAE2AgggARCtIwR/QQAFIAJBCGogAkEPakHQjtgAEP8EIQNBAQshBCABEMwmIAAgAzYCBCAAIAQ2AgAgAkEQaiQAC1sBAn8CQAJAIAEoAgAiAiABKAIERgRAQQAhAgwBCyABIAJBFGo2AgAgASgCCCIDIAEoAgxPDQEgASADQQFqNgIICyAAIAI2AgQgACADNgIADwtB0LLAABDgKQALWAECfyACIAEoAgAgAUEEayIDKAIAEOEZBEAgASgCACEEA0ACQCADIgFBBGogASgCADYCACAAIAFGDQAgAiAEIAFBBGsiAygCABDhGQ0BCwsgASAENgIACwtIAQF/AkAgACABIAIgAxDQEEUNAEEBIQQgACACSw0AIAAgAWoiASACTQ0AIABBASADIANBAU0bIAJqIgBPIAAgAUtyIQQLIAQLUgEDfyAAQQE2AgQgACABKAIEIgMgASgCACIEa0EYbiICIAJBACABKAIMIAEoAghHIgEbIAMgBEYbNgIIIAAgAkF/QQAgARsiACAAIAJLGzYCAAtWAQF/AkAgACgCAEEBRgRAIAAoAgQhAQwBCwJAIAAoAggiASAAKAIMRgRAQQAhAQwBCyAAIAFBBGo2AggLIAAgATYCBCAAQQE2AgALIABBBGpBACABGwtaAQF/IAFBQGsiAxCvGSABQcgAaiACQQhqKQIANwIAIAEgAikCADcCQCABLQBUQQJGBEAgAUGwkcQAIAMgAS0ATEEDRhstAAxBAkc6AFQLIAAgAUHYABD7BhoLXAEBfyMAQRBrIgIkACAAKAIAIQAgAiABKAIUQeCLxABBCyABKAIYKAIMEQMAOgAMIAIgATYCCCACQQA6AA0gAkEANgIEIAJBBGogAEGPARCSCBDSDSACQRBqJAALWAEBf0EBIQMCQCABIAJGDQACQAJAIAEgAksEQCAAIAJqIgAtAABBCmsOBAIBAQMBCyACIAFB/JXEABCsEAALQQAPCyACRQ0AIABBAWstAABBDUchAwsgAwtfAgJ/AX4jAEEQayICJABBAEGIAREFACIBBEAgASABKQMAIgNCAXw3AwAgACABKQMINwMIIAAgAzcDACACQRBqJAAPC0GYpeMAQcYAIAJBD2pBiKXjAEGwpuMAEMUOAAtEAQF/IAAvAQwgAEEAOgAMIABBDmotAABBEHRyIgJBAXEEQCAAIAGtIAJBEHatQiiGIAJBCHZB/wFxrUIghoSEEMcbCwtNAAJAIAQgBU0Ef0EABSADIAVqLQAAIgMgAk8NASABIANBAnRqKAIAIgRBAEcLIQUgACAENgIEIAAgBTYCAA8LIAMgAkGgkcQAEKwQAAtdAQJ/IwBBEGsiAiQAIAAoAgghAyAAEPoeIAJBCGogACgCBCAAKAIIIANB6N7DABCeHSACKAIMIgBBA00EQEEEIABBkJ7DABCuEAALIAIoAgggATYAACACQRBqJAALUwAgACgCaCAAKAKkASAAKAIMQQxsIAAoApQBQQN0aiAAKAJgIAAoAlQgACgCRCAAKAI4ampqQQJ0ampqIAAoApgBIAAoAogBIAAoAnxqakECdGoLUQACQAJAIAFFDQACQCABIANJBEAgASACaiwAAEG/f0wNAQwCCyABIANGDQELQQAhAgwBCyABIAJqIQIgAyABayEBCyAAIAE2AgQgACACNgIAC1ABAn8jAEEQayICJAAgASgCACIBKAIAQQFHBH9BAAUgAkEIaiABQQRqEMwSIAIoAgwhAyACKAIICyEBIAAgAzYCBCAAIAE2AgAgAkEQaiQAC1gBAn8jAEEgayIDJAAgA0EIaiAAKAIAQQhqQbDG2AAQvx0gAygCDCEAIANBEGoiBCADKAIIIAEQmAggBBCoCyACEIITIAAgACgCAEEBajYCACADQSBqJAALWAECfyMAQSBrIgMkACADQQhqIAAoAgBBCGpBwMbYABC/HSADKAIMIQAgA0EQaiIEIAMoAgggARCYCCAEEKgLIAIQ/w0gACAAKAIAQQFqNgIAIANBIGokAAtYAQJ/IwBBIGsiAyQAIANBCGogACgCBEEIakGQx9gAEL8dIAMoAgwhACADQRBqIgQgAygCCCABEJgIIAQQqAsgAhCCEyAAIAAoAgBBAWo2AgAgA0EgaiQAC1gBAn8jAEEgayIDJAAgA0EIaiAAKAIEQQhqQaDH2AAQvx0gAygCDCEAIANBEGoiBCADKAIIIAEQmAggBBCoCyACEP8NIAAgACgCAEEBajYCACADQSBqJAALUQEDfyMAQTBrIgIkACAAQcgCaiEBIAAoAsgCQSVGBEAgAkEIaiIDIAAQRSABEIslIAEgA0EoEPsGQQAgACgCyAJBJUcbIQELIAJBMGokACABC1gBAX8jAEEQayICJAACfyABBEAgAkEIaiAAEJQMQQEgAigCCCACKAIMQaS64ABBBRDrHw0BGgsgAiAAEJQMQej/2AAgAigCACACKAIEEIYECyACQRBqJAALUgECfyMAQRBrIgIkACAAAn8gASgCAEEFRgRAIAEoAhQhAyABKAIQDAELIAJBCGogARCpHCACKAIMIQMgAigCCAs2AgAgACADNgIEIAJBEGokAAtRAQN/IABBDGogACgCCEEGdCEBIAAoAgQhAgNAIAEEQCABQUBqIQEgAhCGKSACQUBrIQIMAQsLEI0bIAAoAhhBgICAgHhHBEAgAEEYahCOGwsLUgECfyMAQRBrIgIkACAAAn8gASgCAEEFRgRAIAEoAhQhAyABKAIQDAELIAJBCGogARDTHCACKAIMIQMgAigCCAs2AgAgACADNgIEIAJBEGokAAtXAgF/AX4jAEEQayIFJAAgBUEIaiABIAIgAyAEEO4DAkACQCAFLQAIQQRHBEAgBSkDCCIGQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAGNwIACyAFQRBqJAALWgIBfwF+IwBBEGsiAyQAIANBCGogASACQfmv4ABBARDuAwJAAkAgAy0ACEEERwRAIAMpAwgiBEL/AYNCBFINAQsgAEEEOgAADAELIAAgBDcCAAsgA0EQaiQAC1kCAX8BfiMAQRBrIgMkACADQQhqIAIgASgCACgCABDNBAJAAkAgAy0ACEEERwRAIAMpAwgiBEL/AYNCBFINAQsgAEEEOgAADAELIAAgBDcCAAsgA0EQaiQAC2MBAn9BwABBBBDXIiIBQgA3AiAgAUKAgICAwAA3AhggAUIINwIQIAFCADcCCCABQoCAgIDAADcCACABQShqQgA3AgAgAUEwakIANwIAIAFBNWpCADcAACAAKAIAIAAgATYCAAtgAQF/IwBBEGsiASQAAkAgACgCAA0AIAEgACgCBBDsCCAAEJ0oIABBCGogAUEIaikCADcCACAAIAEpAgA3AgAgACgCAA0AQeXs4ABBKEHY7eAAEPQXAAsgAUEQaiQAIAALUAEBfyMAQRBrIgIkACACQQhqIAEQ4wkgACACKAIIBH8gASgCCCABKAIEaiABKAIAayEBIAIoAgwFQYCAxAALNgIEIAAgATYCACACQRBqJAALWAEBfyAAQRhqEN0eIABBDGoQ3R4gACgCBCIBIAAoAggQqBsgACgCACABEOIpAkAgACgCHCIBRQ0AIAEgASgCACIBQQFrNgIAIAFBAUcNACAAQRxqELQOCwtRAQF/IwBBIGsiAiQAIAJBEGogACABEKcgIAIgAikDEDcCGEF/IQEDQCABQQFqIQEgAkEIaiACQRhqELcRIAIoAghBAUYNAAsgAkEgaiQAIAELWwEBfyMAQRBrIgIkAAJ/IAAoAgBFBEAgASgCFEGQ8NgAQRAgASgCGCgCDBEDAAwBCyACIAA2AgwgAUGg8NgAQQhBqPDYAEEGIAJBDGpB0QAQxwsLIAJBEGokAAtOAAJAIANFDQACQCACIANLBEAgASADaiwAAEG/f0wNAQwCCyACIANGDQELIAEgAiADIAIgBBDUJgALIAAgAiADazYCBCAAIAEgA2o2AgALWQEBfyMAQSBrIgUkACADRQRAIAVBADYCGCAFQQE2AgwgBUHgh8IANgIIIAVCBDcCECAFQQhqIAQQwx0ACyAAIAM2AgggACACNgIEIAAgATYCACAFQSBqJAALVgECfyMAQRBrIgIkAAJAIAAoAgAgACgCCCIDayABTw0AIAJBCGogACADIAFBBEEEEJ8IIAIoAggiAEGBgICAeEYNACAAIAIoAgwQ4SkACyACQRBqJAALVwEDfyAAKAIIIQIgACgCBCIDIQEDQCACBEAgASgCACABQQRqKAIAEPIpIAJBAWshAiABQQxqIQEMAQsLIAAoAgAgA0EEQQwQ1CIgACgCDCAAKAIQEPIpC1YBAX8jAEEQayICJAACfyAALQAMQQJGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakH3ABDMCgsgAkEQaiQAC1kBAX8jAEEQayICJAACfyAAKAIAIgAoAgBFBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakGgARDMCgsgAkEQaiQAC1YBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAAQQRqNgIMIAFBvPDgAEEEIAJBDGpBJhDMCgsgAkEQaiQAC1YBAX8jAEEQayICJAACfyAALQAMQQNGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakG4ARDMCgsgAkEQaiQAC1YBAX8jAEEQayICJAACfyAAKAIAQQJGBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIAA2AgwgAUG88OAAQQQgAkEMakG3ARDMCgsgAkEQaiQAC1cBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAAQQhqNgIMIAFBvPDgAEEEIAJBDGpBuwEQzAoLIAJBEGokAAtWAQF/IwBBEGsiAiQAAn8gAC0AAEECRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBkgEQzAoLIAJBEGokAAtWAQF/IwBBEGsiAiQAAn8gAC0AAEECRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBvAEQzAoLIAJBEGokAAtWAQF/IwBBEGsiAiQAAn8gAC0AAEEDRgRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBxwEQzAoLIAJBEGokAAtYACACQYCAgMAAcQRAIAAgASACEIMfIgEoAgBBCGoiACABKAIEIgEQgiBFBEBBAA8LIAAgARCAH0UEQEEBDwsgACABENAbDwtB5OPDAEEfQYTkwwAQ9BcAC1cBAX8jAEEQayICJAACfyAAKAIARQRAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAAQQRqNgIMIAFBvPDgAEEEIAJBDGpBwAAQzAoLIAJBEGokAAtZAgJ/AX4jAEEQayICJAAgASkCACEEIAJBCGoiAyABKAIIIgE2AgAgAiABRToADCACIAQ3AgAgAhCIBSAAQQhqIAMpAgA3AgAgACACKQIANwIAIAJBEGokAAtZAgJ/AX4jAEEQayICJAAgASkCACEEIAJBCGoiAyABKAIIIgE2AgAgAiABRToADCACIAQ3AgAgAhD8BCAAQQhqIAMpAgA3AgAgACACKQIANwIAIAJBEGokAAtQACAAIAQ6ABYgAEEAOgAVIAAgATYCACAAQQA2AgggACACQQFrIgI2AgQgACABIAJqNgIQIABBf0F/IARBB3F0QX9zIARB/wFxQQhGGzoAFAtNAEH/ASECIAAgBDoACiAAIAM6AAkgACAEIANrIgRB/wFxQQhHBH9BfyAEQQdxdEF/cyADQQdxdAUgAgs6AAggACABNgIEIABBADYCAAtVAQF/IwBBEGsiAyQAIANBCGogASACELsKIAMoAgwhAQJAIAMoAghFBEAgAiABKAJgayECDAELIAEhAkEAIQELIAAgAjYCBCAAIAE2AgAgA0EQaiQAC1gAIAAoAgAiAEFAaxDGFyAAQfwAahDnCyAAKAJ8IABBgAFqKAIAEJMqIABB+ABqEOcmIABBkAFqEOwmIAAtADxBBkcEQCAAQRBqEMYXCyAAQaABQQgQ1RELWgACQAJAAkACQAJAAkACQCAAKAIADgYBAgMEBQYACyAAQQRqEJ8DDwsgAEEIahDlJg8LIABBBGoQ1iEPCyAAQQRqENcoDwsgAEEEahDXIQ8LIABBBGoQ1SgLC1cBA38jAEEgayIBJAACQCAAKALAASAAKALEARD9HCIDQYCAxABGDQAgAxDnEUUNACAAKALQASEAIAFBIDoACCAAIAAgAUEIahCjKyECCyABQSBqJAAgAgtXAQJ/IAAoAgQhAyAAKAIAIQIDQCABRSACIANGckUEQCAAIAIgAi0AAEH/5dgAai0AAGoiAjYCACABQQFrIQEMAQsLQYCAxAAhAiABBH8gAgUgABDdGgsLVgEBfyMAQRBrIgIkAAJ/IAAtAABBA0YEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQd0DEMwKCyACQRBqJAALWQEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQe0DEMwKCyACQRBqJAALWwEBfyMAQRBrIgIkACACIAAoAgAoAgAiADYCDCABQe2k2QBBCUHP0uAAQQQgAEEMakH9AEH2pNkAQQggAEEUakEUQb+k2QBBBSACQQxqQfQDEOYKIAJBEGokAAtaAQF/IwBBEGsiAiQAAn8gACgCAEGAgICAeEYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQYgDEMwKCyACQRBqJAALWQEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQe4CEMwKCyACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAoAgBBB0YEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQcICEMwKCyACQRBqJAALWQEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQecDEMwKCyACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAoAgBBAkYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQYYEEMwKCyACQRBqJAALWQEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQYcEEMwKCyACQRBqJAALWQEBfyMAQRBrIgIkAAJ/IAAoAgAiACgCAEUEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQYkEEMwKCyACQRBqJAALXAEBfyMAQRBrIgIkACACIAAoAgAoAgAiADYCDCABQeCk2QBBDUHP0uAAQQQgAEEQakH9AEHvstkAQQMgAEEYakGqBEHystkAQQQgAkEMakHeAxDmCiACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAtABRBA0YEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQa4EEMwKCyACQRBqJAALXAEBfyMAQRBrIgIkACACIAAoAgAoAgAiADYCDCABQfmo2QBBD0HP0uAAQQQgAEEQakH9AEHqj9oAQQQgAEEYakGwBEHcr9kAQQUgAkEMakHeAxDmCiACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAtAABBA0YEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQdMEEMwKCyACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAoAgBBCEYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQdgEEMwKCyACQRBqJAALXAEBfyMAQRBrIgIkACACIAAoAgAoAgAiAEEMajYCDCABQdGu2QBBA0HP0uAAQQQgAEEYakH9AEHUrtkAQQUgAEHnBEHZrtkAQQYgAkEMakG2BBDmCiACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAApAwBCAlEEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQfwEEMwKCyACQRBqJAALVgEBfyMAQRBrIgIkAAJ/IAAtABRBAkYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQdMCEMwKCyACQRBqJAALVwEBfyMAQRBrIgIkAAJ/IAAoAgBFBEAgASgCFEG48OAAQQQgASgCGCgCDBEDAAwBCyACIABBBGo2AgwgAUG88OAAQQQgAkEMakGeAhDMCgsgAkEQaiQAC1QBAX8jAEEQayICJAACfyAAKQMAUARAIAEoAhRBuPDgAEEEIAEoAhgoAgwRAwAMAQsgAiAANgIMIAFBvPDgAEEEIAJBDGpBnwMQzAoLIAJBEGokAAtaAQF/IwBBEGsiAiQAAn8gACgCAEGAgICAeEYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQYMFEMwKCyACQRBqJAALVQIBfwF+AkAgASgCAEUNACABKAIEIgIgASgCDEcEQCABIAJBEGo2AgQgAigCCCEBIAIpAwAhAwwBCyABELgnIAFBADYCAAsgACABNgIIIAAgAzcDAAtTAQJ/IAAoAghBOGwhAiAAKAIEIQADQCACBEAgAS0AOSEDIAFBADoAOSAAIAEQyREgASADOgA5IABBMGogARCsJSACQThrIQIgAEE4aiEADAELCwtQAQF/IAAoAghBOGwhAiAAKAIEQTBqIQADQAJAIAIEQCAAQTBrIAEQrxQgACgCAEUNASAAIAEQyiwMAQsPCyACQThrIQIgAEE4aiEADAALAAtTAQJ/IAAoAghBOGwhAiAAKAIEIQADQCACBEAgACABELIUIAEvASQhAyABQQI6ACQgAEEwaiABELYlIAEgAzsBJCACQThrIQIgAEE4aiEADAELCwtQAQF/IAAoAghBOGwhAiAAKAIEQTBqIQADQAJAIAIEQCAAQTBrIAEQzBEgACgCAEUNASAAIAEQ1SwMAQsPCyACQThrIQIgAEE4aiEADAALAAtQAQF/IAAoAghBOGwhAiAAKAIEQTBqIQADQAJAIAIEQCAAQTBrIAEQsBQgACgCAEUNASAAIAEQ1iwMAQsPCyACQThrIQIgAEE4aiEADAALAAtVAgJ/AX4jAEEQayIBJAAgAUEANgIMIAApAwAgAUEMaiICEOQbIAEgACgCCCABKAIMQQV3c0G5893xeWw2AgwgACkDECACEOQbIAE1AgwgAUEQaiQAC10AAkACQAJAAkACQAJAAkAgACgCAEEBaw4GAQIDBAYFAAsgAEEIahDZJQ8LIABBBGoQ2BUPCyAAQQRqEJkpDwsgAEEEahCBDg8LIABBBGoQoSkPCyAAQQRqEPstCwtdAAJAAkACQAJAAkACQAJAIAAoAgBBAWsOBgECAwQGBQALIABBCGoQ7CcPCyAAQQRqEN0UDwsgAEEEahCfKQ8LIABBBGoQ3Q0PCyAAQQRqEKApDwsgAEEEahD9LQsLUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABELYUIAAoAgBFDQEgACABEIUtDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABELMUIAAoAgBFDQEgACABEIYtDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABELQUIAAoAgBFDQEgACABEIotDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABELESIAAoAgBFDQEgACABEKUtDAELDwsgAkE4ayECIABBOGohAAwACwALUAEBfyAAKAIIQThsIQIgACgCBEEwaiEAA0ACQCACBEAgAEEwayABEIgJIAAoAgBFDQEgACABEKYtDAELDwsgAkE4ayECIABBOGohAAwACwALVgEBfyMAQRBrIgIkAAJ/IAAoAgBBAkYEQCABKAIUQbjw4ABBBCABKAIYKAIMEQMADAELIAIgADYCDCABQbzw4ABBBCACQQxqQZ4FEMwKCyACQRBqJAALVAIBfwF+IwBBEGsiAyQAIANBCGogAiABQQAQfQJAAkAgAy0ACEEERwRAIAMpAwgiBEL/AYNCBFINAQsgAEEEOgAADAELIAAgBDcCAAsgA0EQaiQAC1UCAX8BfiMAQRBrIgMkACADQQhqIAEgAkEAEOcEAkACQCADLQAIQQRHBEAgAykDCCIEQv8Bg0IEUg0BCyAAQQQ6AAAMAQsgACAENwIACyADQRBqJAALRQEDfyMAQSBrIgMkAAJAA0AgASACRg0BIANBBGogABDcBSADKAIEBEAgAkEBaiECDAELCyABIAJrIQQLIANBIGokACAEC0UBA38jAEEgayIDJAACQANAIAEgAkYNASADQQRqIAAQywogAygCBARAIAJBAWohAgwBCwsgASACayEECyADQSBqJAAgBAtSAQF/IwBBEGsiAiQAAn8gACgCAARAIAIgADYCDCABQaeCxABBBSACQQxqQT0QzAoMAQsgASgCFEGsgsQAQQkgASgCGCgCDBEDAAsgAkEQaiQAC1YBAX8jAEEQayICJAAgAiAAKAIAIgBBDGo2AgwgAUH4gcQAQQhB4LvAAEEDIABBPkHju8AAQQwgAEEIakEVQZyCxABBCyACQQxqQSYQ5gogAkEQaiQAC1UBAX8CQCACQQBOBEACQCACRQRAQQEhAwwBC0GwmOQALQAAGiACEGAiA0UNAgsgAyABIAIQ+wYhASAAIAI2AgggACABNgIEIAAgAjYCAA8LEKwbCwALUAEEfyABIAAoAggiAigCACAAKAIQIgQgACgCDCIDaiIFa0sEQCACIAUgARCgGAsg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IAQgACADKAI0EQAAIAFBEGokACAAKQMAIQYjAEEQayIBJAAgAigCCCEDIAIoAgQhBCACKAIAQQFGBEAgAUEIaiAEIAMQxR8gASgCCCEEIAEoAgwhAwsgBCAGIAMoAkARJwAaIAFBEGokACAFRQ0AIAAoAgwiAiACKAIAIgJBAWs2AgAgAkEBRw0AIABBDGoQtA4LC1QBAn8jAEEQayIDJAAgAi0APSEEIAMgACABEMAjIAMoAgghASADKQMAIQACQCAERQRAIAIgACABEKsRDAELIAIgACABIAItAD4QmwYLIANBEGokAAtMAQF/IAAoAghBOGwhASAAKAIEQTBqIQADQAJAIAEEQCAAQTBrELEUIAAoAgBFDQEgABDrLQwBCw8LIAFBOGshASAAQThqIQAMAAsAC08BAn8gASAAKAIIIgJJBEBBACECIAAoAgAiAygCACAAKAIEIAFBFGxqIgAoAgBGBH8gAygCBCAAKAIERgUgAgsPCyABIAJBmLjfABCsEAALTAIBfwF+AkAgASgCGEUNACABEI4PIQIgASABKAIYQQFrNgIYIAJFDQAgAkEIaygCACEBIAJBEGspAwAhAwsgACABNgIIIAAgAzcDAAtMAQJ/IAAoAghBKGwhAiAAKAIEIQEDQCACBEAgASgCAEEHRwRAIAEQ8BMLIAFBKGohASACQShrIQIMAQsLIABBFGoQrCogAEEAOgAYC1cBA38gACgCBCEDIAAoAgAhASAAQoiAgICAATcCACADIAFrQdgAbiECAkAgASADRg0AA0AgAkUNASACQQFrIQIgARDICCABQdgAaiEBDAALAAsgABDKEgtMAQF/IAAoAghBOGwhASAAKAIEQTBqIQADQAJAIAEEQCAAQTBrEO8TIAAoAgBFDQEgABD7LQwBCw8LIAFBOGshASAAQThqIQAMAAsAC0wBAX8gACgCCEE4bCEBIAAoAgRBMGohAANAAkAgAQRAIABBMGsQ8BMgACgCAEUNASAAEP0tDAELDwsgAUE4ayEBIABBOGohAAwACwALTAECfyAAQgA3AgwgACgCCEEobCECIAAoAgQhAQNAIAIEQCABKAIAQQdHBEAgARCwEgsgAUEoaiEBIAJBKGshAgwBCwsgAEEUahCUJgtfAAJAAkACQAJAAkACQAJAIAAoAgBBAWsOBgECAwQFBgALIABC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BEAgACgCBCIBBEAgACgCAEH/ASABQQlqEI0LGgsgAEEANgIMIAAgASABQQFqQQN2QQdsIAFBCEkbNgIICwtXAQF/QbCY5AAtAAAaQRwQYCICRQRAAAsgAkIANwIIIAJCgICAgIABNwIAIAJBEGpCADcCACACQRhqQQA7AQAgACABQSgQ+wYaIAEgAjYCBCABQQI2AgALWAIBfwF+IwBBEGsiAiQAIAEoAgBBAUYEQEHcvd8AQSpBiL7fABC7EgALIAIgASkDCCABKAIYEMAjIAIpAwAhAyAAIAIoAgg2AgggACADNwMAIAJBEGokAAtKAQF/IwBBQGoiASQAIAFBFGogAEEQaigCADYCACABQQxqIABBCGopAgA3AgAgAUEONgIAIAEgACkCADcCBCABENwoIAFBQGskAAtKAQF/IwBBQGoiASQAIAFBFGogAEEQaigCADYCACABQQxqIABBCGopAgA3AgAgAUESNgIAIAEgACkCADcCBCABENwoIAFBQGskAAtJAQJ/IAAoAghBKGwhAyAAKAIEIQIDQCADBEAgAigCAEEHRwRAIAIgARCuEQsgAkEoaiECIANBKGshAwwBCwsgAEEUaiABEPIjC0wBAn8jAEEQayIBJAAgACgCBCICBEAgABCFDCABQQRqQSBBCCACQQFqEOYNIAAoAgAgASgCDGsgASgCBCABKAIIELokCyABQRBqJAALTgECfyAAKAIMIAAoAgQiAWtBBXYhAgNAIAIEQCABQRBqKQMAEO0mIAEpAwAQ+RogAkEBayECIAFBIGohAQwBCwsgACgCCCAAKAIAEPkpC1UBAX8CQAJAAkBBASAALQAsQQNrIgEgAUH/AXFBA08bQf8BcUEBaw4CAQIACyAAQgA3AwgPCyAAELYdDwsgAEIANwMYIABCADcDCCAAQSBqQgA3AwALTwEBfyMAQRBrIgMkACADQQRqIAFBBCACEKELIAMoAgghASADKAIERQRAIAAgAygCDDYCBCAAIAE2AgAgA0EQaiQADwsgASADKAIMEOEpAAtTAQN/IAEoAgAhAyABKAIEIQQCQANAIAMiAiAERg0BIAEgAkFAayIDNgIAIAItADxBBkYNAAsgACACNgIIIAAgASgCCCkCADcCAA8LIABBADYCAAtSACAAIAEpAYIDNwEEIABBGWogAUGXA2opAAA3AAAg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An8gABDdGiEBIAAoAhAhAiAAAn9BASABQYABSQ0AGkECIAFBgBBJDQAaQQNBBCABQYCABEkbCyACajYCEAtFAQF/IwBBEGsiAyQAIAFBAXEEfyADQQhqIAIQgB0gAygCDCECIAMoAggFQQALIQEgACACNgIEIAAgATYCACADQRBqJAALPwECfyAAEN4KIQEgACgCECECIAACf0EBIAFBgAFJDQAaQQIgAUGAEEkNABpBA0EEIAFBgIAESRsLIAJqNgIQC1AAIAAQoRwgACgCACAAQQRqKAIAEJQqIABBDGoQ7iYgACgCGEGAgICAeEcEQCAAQRhqEOkmCyAAQTxqENUdIABBQGsQtScgAEHIAEEEENURC0YBAn8gAC0ANARAIAEoAghBKGwhAiABKAIEIQMDQCACBEAgACADELUVIAJBKGshAiADQShqIQMMAQsLIAFBDGogABDRIwsLTwAgAC0ANARAAkACQAJAAkAgASgCAEEBaw4DAQIDAAsgACABQQhqENAZDwsgAUEEaiAAEI0VDwsgACABQQRqEK8lDwsgAUEEaiAAEIgNCwtJAQJ/IwBBEGsiAiQAIAJBCGogARDVHCAAIAIoAggiAyABKAIgEKMPIgEgASADSRs2AgQgACADIAEgASADSxs2AgAgAkEQaiQAC0gBAn8gACgCCEEGdCECIAAoAgQhAwNAIAIEQCABIAMQ2B4gAkFAaiECIANBQGshAwwBCwsgAEEMaiABEMUaIABBGGogARCYJAtIAQJ/IAAoAghBBnQhAiAAKAIEIQMDQCACBEAgAyABELMmIAJBQGohAiADQUBrIQMMAQsLIABBDGogARDIGiAAQRhqIAEQmSQLSAECfyAAKAIIQQZ0IQIgACgCBCEDA0AgAgRAIAMgARC1JiACQUBqIQIgA0FAayEDDAELCyAAQQxqIAEQxxogAEEYaiABEJskC0QBAn8CQCABKAIYRQ0AIAEQ8A4hAiABIAEoAhhBAWs2AhggAkUNACACQQhrIQEgAkEYayEDCyAAIAE2AgQgACADNgIAC0oBA38gACgCACICBEAgACgCBCIDKAIAIgEEQCACIAERAQALIAMoAgQiAQRAIAIgASADKAIIENURCyAAKAIMIAAoAggoAgwRAQALC1ABAX8jAEEQayICJAAgAkEIaiABIAEoAgAoAgQRAAAgAiAC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ACgCBCEBA0AgAgRAIAEoAgBBB0cEQCABEO8TCyABQShqIQEgAkEoayECDAELCyAAQRRqEPolC38BAn5B2JHkACkDAFAEQEEBQQAQ3BohAkHYkeQAKQMAQdiR5AAgAjcDABDsGAtB2JHkACkDABD8GiECIAAgASkDADcDACABIAI3AwAgAEEQaiABQRBqKQMANwMAIABBCGogAUEIaiIAKQMANwMAIABCADcDACABQQ1qQgA3AAALRwECfyAAKAIEIgFBDGohAiAAKAIMIAFrQQR2IQEDQCABBEAgAUEBayEBIAIQxwIgAkEQaiECDAELCyAAKAIIIAAoAgAQ7SkLUwEBfyMAQSBrIgIkACACQQE6AA8gAiABKQGCAzcAAyACIAEoAYoDNgALIAIgASkAjwM3ABAgAiABKQCXAzcAGCAAIAEgAkEDahCZFSACQSBqJAALQAEBfyMAQRBrIgIkACACIAAgAUGAAXFBA3ZqIgApAwAgAEEIaikDACABQf8AcRC2ESACKAIAIAJBEGokAEEBcQtGAQF/IwBBEGsiAiQAIAIgATYCDCACIAA2AghBfyEBA0AgAUEBaiEBIAIgAkEIahC3ESACKAIAQQFGDQALIAJBEGokACABC08BAn8gACgCBCECIAAoAgAhAwJAIAAoAggiAC0AAEUNACADQdDH4ABBBCACKAIMEQMARQ0AQQEPCyAAIAFBCkY6AAAgAyABIAIoAhARAgALhAEBA38gACgCCCIDIAAoAgBGBEAjAEEQayICJAAgAkEIaiAAIAAoAgBBAUEEQQwQnwggAigCCCIEQYGAgIB4RwRAIAQgAigCDBDhKQALIAJBEGokAAsgACADQQFqNgIIIAAoAgQgA0EMbGoiACABKQIANwIAIABBCGogAUEIaigCADYCAAtTAEGwmOQALQAAGkEUEGAiAUUEQAALIAFBADoAESABQoSAgIDAADcACSABQQA6AAggASADNgIEIAEgAjYCACAAQQE2AgggACABNgIEIABBATYCAAtPAQF/QQEhAgJAAkAgAEH/AXFBAUYNACABIQICQAJAAkAgAUH/AXFBAWsOAgMBAAsgAEH/AXENAQwDCyAAQf8BcQ0CC0EAIQILIAIPC0ECC0gBAX8gACgCCCICIAAoAgBGBEAgABCAFwsgACACQQFqNgIIIAAoAgQgAkEMbGoi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QQFqEOYNIAAgAigCDGsgAigCBCACKAIIELokCyACQRBqJAALQwECfyAAKAIMIAAoAgQiAWtBBHYhAgNAIAIEQCABKQMAEPkaIAJBAWshAiABQRBqIQEMAQsLIAAoAgggACgCABDvKQtCAQJ/IABBADoAOSABKAI4QQxsIQIgASgCNCEDA0AgAgRAIAMgABDeKyACQQxrIQIgA0EMaiEDDAELCyABIAAQyRELPwEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAIAAoAgBBB0cEQCAAIAEQrxQLIABBKGohACACQShrIQIMAQsLCz8BAX8gACgCCEEobCECIAAoAgQhAANAIAIEQCAAKAIAQQdHBEAgACABEMoRCyAAQShqIQAgAkEoayECDAELCws/AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEAgACgCAEEHRwRAIAAgARDMEQsgAEEoaiEAIAJBKGshAgwBCwsLPwEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAIAAoAgBBB0cEQCAAIAEQsBQLIABBKGohACACQShrIQIMAQsLCz8BAX8gACgCCEEobCECIAAoAgQhAANAIAIEQCAAKAIAQQdHBEAgACABELIUCyAAQShqIQAgAkEoayECDAELCws/AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEAgACgCAEEHRwRAIAAgARCtEQsgAEEoaiEAIAJBKGshAgwBCwsLPwEBfyAAKAIIQShsIQIgACgCBCEAA0AgAgRAIAAoAgBBB0cEQCABIAAQsAkLIABBKGohACACQShrIQIMAQsLCz8BAX8gACgCCEEobCECIAAoAgQhAANAIAIEQCAAKAIAQQdHBEAgACABELMUCyAAQShqIQAgAkEoayECDAELCws/AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEAgACgCAEEHRwRAIAAgARC0FAsgAEEoaiEAIAJBKGshAgwBCwsLTAACQAJAAkACQCAAKAIAQQFrDgMBAgMACyAAKQMIIAAoAhggARDBHA8LIABBBGogARCTFQ8LIABBBGogARDuJQ8LIABBBGogARC+Cws/AQF/IAAoAghBKGwhAiAAKAIEIQADQCACBEAgACgCAEEHRwRAIAAgARC2FAsgAEEoaiEAIAJBKGshAgwBCwsLPwEBfyAAKAIIQShs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An8gACgCECICBEAgACgCDCACQQN0akEEaygCACEBCyABIAJBAXRrIgBBACAAIAFNGws+AQF/A0AgAQRAIABBBGoiAigCACAAQQhqKAIAEOgVIAAoAgAgAigCABDlKSABQQFrIQEgAEEMaiEADAELCws4AQJ/IABBCGogASgCECIDBH8gASgCDCADQQN0akEEaygCAAUgAgsQ9BIgAEEANgIAIAAgATYCFAtAACABKAIAQQJHBEAgACABKQIANwIAIABBCGogAUEIaikCADcCAA8LIAEoAgQQmA8hASAAQQI2AgAgACABNgIEC0AAIAEoAgBBAkcEQCAAIAEpAgA3AgAgAEEIaiABQQhqKAIANgIADwsgASgCBBCYDyEBIABBAjYCACAAIAE2AgQLQwEDfyAAEK4MIAAoAqgSIAAoAqwSEL8bIAAoArgSEMYVIQMgAC0AvBJBAUYEQEHl7OAAQShBuI7EABD0FwALaiADaguHAgEDfyMAQRBrIgMkACADIABBAmo2AgwjAEEQayICJAAgAiABKAIUQZGMxABBByABKAIYKAIMEQMAOgAMIAIgATYCCCACQQA6AA0gAkEANgIEIAJBBGogAEEdEJIIIABBAWpBHRCSCCADQQxqQRcQkggoAgAiAEEARyACLQAMIgRyIQECQCAARSAEQQFxcg0AAkAgAEEBRwRAIAIoAgghAAwBCyACKAIIIQAgAi0ADUUNACAALQAcQQRxDQBBASEBIAAoAhRBvrjgAEEBIAAoAhgoAgwRAwANAQsgACgCFEHgoeMAQQEgACgCGCgCDBEDACEBCyACQRBqJAAgAUEBcSADQRBqJAALQAEBfwJAIAEoAghBAUYEQCABKAIMIgIgASgCNCABKAIYQQR0akkNAQsgAEEqNgIADwsgACACNgIEIABBJzYCAAtCAQF/IwBBEGsiAiQAIAJBCGogARDaGAJAIAItAAhFBEAgAEErNgIADAELIAAgASgCCCACLQAJEPwpCyACQRBqJAALcgEFfyMAQRBrIgIkACACQQhqIgQgASgCACIFIAEoAgQiA0cEfyABIANBAWsiBjYCBCAGLQAABSABCzoAASAEIAMgBUc6AAACQCACLQAIRQRAIABBKzYCAAwBCyAAIAEoAgggAi0ACRD8KQsgAkEQaiQAC0sBAn8CQAJAAkBBASAAKAIAIgFBgICAgHhzIgIgAkEDTxsOAgIBAAsgACgCBCAAKAIIEOwpDAELIAEgACgCBBDaKQsgAEEsahDjJAs9AQF/IAAoAgAoAgAiAigCAEEIaiACKAIEIAAoAgQoAgAgAUF0bGoiAEEMaygCAEEIaiAAQQhrKAIAEOsfCzsBA38DQCACQRBGRQRAIAAgAmoiAygCACEEIAMgASACaiIDKAIANgIAIAMgBDYCACACQQRqIQIMAQsLC0YBAX8jAEEwayICJAAgAkEAEIwOIAJBADYCLCACQgA3AiQgAkKAgICAwAA3AhwgAiABEN4LIAAgAkEwEPsGGiACQTBqJAALOwEDfwNAIAJBMEZFBEAgACACaiIDKAIAIQQgAyABIAJqIgMoAgA2AgAgAyAENgIAIAJBBGohAgwBCwsLSwECfwJAAkACQEEBIAAoAgAiAUGAgICAeHMiAiACQQNPGw4CAgEACyAAKAIEIAAoAggQ7CkMAQsgASAAKAIEENopCyAAQSxqEN0kC2oBA38CQCABKAIIIgJFDQAgACgCBCAAKAIIIAEoAgQiAyACEI4QDQAgACACEIYfIAAoAgQgACgCCCIEQQN0aiADIAJBA3QQ+wYaIAAgAiAEajYCCCAAEIgFIAAgAC0ADCABLQAMcToADAsLagEDfwJAIAEoAggiAkUNACAAKAIEIAAoAgggASgCBCIDIAIQmw8NACAAIAIQhx8gACgCBCAAKAIIIgRBAXRqIAMgAkEBdBD7BhogACACIARqNgIIIAAQ/AQgACAALQAMIAEtAAxxOgAMCwtJAQF/AkACQAJAAkBBAiAAKAIAQYCAxABrIgEgAUEITxtBBGsOBAIBAwABCyAAQQRqEN0mCw8LIABBBGoQ7xUPCyAAQQRqEOQkCzwAIAQgAEIChiIAQgKEIAEgAiADENgONwMAIAUgACAGQX9zrHwgASACIAMQ2A43AwAgACABIAIgAxDYDgsxAQF/IwBBEGsiAiQAIAFB/wFxBH8gAkEIaiIBIAAQiiogARDmGAVBAAsgAkEQaiQACzEBAX8jAEEQayICJAAgAUH/AXEEfyACQQhqIgEgABCMKiABEOYYBUEACyACQRBqJAALQgEBfyAAKAIAIgAoAgggAEEMaigCABDaKQJAIABBf0YNACAAIAAoAgQiAUEBazYCBCABQQFHDQAgAEEUQQQQ1RELCzcBAX8gACgChAEiAUGBAUkEfyAAQYQBagUgACgCBCEBIABBBGoLIQAgAQRAIAAgAUEBazYCAAsLQgEBfwJ/IAEoAgBBMkcEQEHAAEEIEKsgIgIgAUHAABD7BhpBAAwBCyABKAIEIQJBAQshASAAIAI2AgQgACABNgIAC0cBAX8CQAJAAkADQCAAKAIAIgJBI0cEQAJAIAJBF2sOBQQFBQUDAAsFIAAoAgQhAAwBCwsgAkESRw0CC0EAIQELIAEPC0EBC0IBAX8CfyABKAIAQRRHBEBB2ABBCBCrICICIAFB2AAQ+wYaQQAMAQsgASgCBCECQQELIQEgACACNgIEIAAgATYCAAs6AQF/IAFBBnQhAQNAAkAgAUUNACAAKAIAIgJBB0dBACACGw0AIAFBQGohASAAQUBrIQAMAQsLIAFFCz0BAn8CQCAAKAIAIgMgACgCBEYNACADLQAAIAFB/wFxRw0AIAAQ3RoaQQEhAiAAIAAoAhBBAWo2AhALIAILPAEBfwJAIAFCA4NCAFINACABp0EIayIDIAMoAgAiA0EBajYCACADQQBODQAACyAAIAI2AgggACABNwMACz4AIABCADcCBCAAKAIAIgAoAgBBA0cEQCAAELQdDwsgAEIANwIUIABBEGoQjC4gAEEEahCeGyAAQSBqEI4mCz8BAX8gACgCFCIDIAAoAgxGBEAgAEEMahDDFwsgACADQQFqNgIUIAAoAhAgA0EDdGoiACACOgAEIAAgATYCAAs6AQF/ELMRIAEoAghBBHQhAiABKAIEIQEDQCACBEAgAUEMaiAAEL8tIAJBEGshAiABQRBqIQEMAQsLC0ABAX9BASEBAkACQCAAQd///wBxQcEAa0EaSQ0AIABBgAFJDQEgABDLBQ0AIAAQzAUhAQsgAQ8LIABBMGtBCkkLQwEDfyABKAIAIgNBBGogAy8BMkEBaiIEIAEoAggiBSACEL4VIAMgBDsBMiAAIAU2AgggACADNgIAIAAgASgCBDYCBAtHAQF/IABBgAJqIgIgARDcFUUEQCACIAEQuRIgACAAKAKgAkEBajYCoAIgACAALwGkAiABQf8BcUGEusQAai0AAGo7AaQCCws+AQF/IwBBEGsiAyQAIANBCGogACABIAIQmQogAygCCCIAQYGAgIB4RwRAIAAgAygCDBDhKQALIANBEGokAAtBAQF/IwBBEGsiAiQAIAJBCGogAEHsw8QAEL8dIAIoAgwhACACKAIIIAEQuhAgACAAKAIAQQFqNgIAIAJBEGokAAs6AQF/QQEhBAJAIAIgA0cEfyACIANNDQEgASADai0AACAAQf8BcUYFIAQLDwsgAyACQdyVxAAQrBAACzwAQQAhBQJAIAMgBE0NACABLQAAIAIgBGotAABHDQAgACAENgIEQQEhBSAAIARBAWo2AggLIAAgBTYCAAs+AQF/IwBBEGsiAyQAIANBDGogAkEIaigCADYCACADQQI2AgAgAyACKQIANwIEIAAgASADEOgIIANBEGokAAs+AQF/IwBBEGsiAyQAIANBDGogAkEIaigCADYCACADQQY2AgAgAyACKQIANwIEIAAgASADEOgIIANBEGokAAtDAQJ/IAAoAhAgACgCFCABQcyZxAAQtx8oAgAiAyAAKAIYSQR/IAAoAgQgACgCCCADQdyZxAAQtx8oAgAgAUYFIAILC0EBAX9BGBDpICICQRBqIAFBEGopAgA3AgAgAkEIaiABQQhqKQIANwIAIAIgASkCADcCACAAIAI2AgQgAEEANgIACzoAAkAgAiADTQRAQQAhAwwBCyABIANBA3RqIgEoAgBBCGohAyABKAIEIQILIAAgAjYCBCAAIAM2AgALPAEBfyMAQRBrIgIkACACIAAoAgAiADYCDCABQbTU2ABBECAAQQxqQf0AIAJBDGpBngEQsQogAkEQaiQACzsBAX8jAEEQayICJAAgAiAAKAIAIgBBDGo2AgwgAUGoxdgAQQcgAEEJIAJBDGpBnQIQsQogAkEQaiQACzsBAX8gACgCACgCACICKQMAIAAoAgQoAgAgAUEEdGtBEGsiACkDAIUgAkEIaikDACAAQQhqKQMAhYRQC0UBAX9B1JHkACgCACIBRQRAQczJ4ABByAAQhCsACyABEPEfIAFBCGooAgAgAUEMaigCACAAQYjJ2AAQvB8oAgAgARDhHgs9AAJAIAAoAgAiACgCAEEDRwRAIAAQnBwMAQsgAEEQahCfAyAAQQRqEOYmIABBIGoQ5yYLIABBKEEIENURCzgBAX8gACgChAEiAUGAAU0EfyAAQQFqBSAAKAIEIQEgACgCCAsgAUUEQEEAQQBB8ODfABCsEAALCywBAX8jAEEQayIBJAAgASAANgIMIAFBATYCCCABQQhqEMIjIAFBEGokAEEACzIBAn8gAkEDdCECA0AgAiIDBEAgAkEIayECIAEgABCaCiABQQhqIQFFDQELCyADQQBHCzoBAX8jAEFAaiIBJAAgAUEMaiAAQQhqKQIANwIAIAFBIDYCACABIAApAgA3AgQgARDcKCABQUBrJAALOgEBfyMAQUBqIgEkACABQQxqIABBCGooAgA2AgAgAUEqNgIAIAEgACkCADcCBCABENwoIAFBQGskAAs6AQF/IwBBQGoiASQAIAFBDGogAEEIaikCADcCACABQRE2AgAgASAAKQIANwIEIAEQ3CggAUFAayQACzoBAX8jAEFAaiIBJAAgAUEMaiAAQQhqKQIANwIAIAFBMDYCACABIAApAgA3AgQgARDcKCABQUBrJAALOgEBfyMAQUBqIgEkACABQQxqIABBCGopAgA3AgAgAUEtNgIAIAEgACkCADcCBCABENwoIAFBQGskAAs6AQF/IwBBQGoiASQAIAFBDGogAEEIaigCADYCACABQSE2AgAgASAAKQIANwIEIAEQ3CggAUFAayQACzoBAX8jAEFAaiIBJAAgAUEQaiAAQQhqKQMANwMAIAFBLzYCACABIAApAwA3AwggARDcKCABQUBrJAALOgEBfyMAQUBqIgEkACABQQxqIABBCGopAgA3AgAgAUEsNgIAIAEgACkCADcCBCABENwoIAFBQGskAAs6AQF/IwBBQGoiASQAIAFBDGogAEEIaigCADYCACABQSM2AgAgASAAKQIANwIEIAEQ3CggAUFAayQAC0EAIAAQoRwgACgCACAAQQRqKAIAEJQqIABBDGoQ7iYgAEEYahD7JCAAKAI8EMIeIABBQGsQkScgAEHIAEEEENURC0EAIAAQoRwgACgCACAAQQRqKAIAEJQqIABBDGoQ7iYgAEEYahD7JCAAKAI8EMIeIABBQGsQlScgAEHIAEEEENURCz0AAkAgACgCACIAKAIAQQNHBEAgABCHGwwBCyAAQRBqEL4CIABBBGoQ5iYgAEEgahChJQsgAEEoQQgQ1RELQQAgABChHCAAKAIAIABBBGooAgAQlCogAEEMahDuJiAAQRhqEPskIAAoAjwQwh4gAEFAaxCvJyAAQcgAQQQQ1RELPQACQCAAKAIAIgAoAgBBA0cEQCAAEIkbDAELIABBEGoQugMgAEEE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jOQAKQMAQgBSDQBBAUEAENwaIQFB8IzkACkDACEAQfCM5AAgATcDACAAUCAAQgODQgBScg0AIACnQQhrIgIgAigCACIDQQFrNgIAIANBAUcNACACEMEfCwJAQfCM5AApAwAiAEIDg0IAUg0AIACnQQhrIgIgAigCACICQQFqNgIAIAJBAE4NAAALIAALPAEBfyAAKAIIIgMgACgCAEYEQCAAEPMWCyAAIANBAWo2AgggACgCBCADQQN0aiIAIAI2AgQgACABNgIACzwBAX8gACgCCCIDIAAoAgBGBEAgABD5FgsgACADQQFqNgIIIAAoAgQgA0EDdGoiACACNgIEIAAgATYCAAtEACAAQdgAahDmByAAQYKEiBA2AlAgAEEDOgBMIABBAjYCOCAAQQI2AjAgAEEANgIoIABCADcDACAAQdQAakGCBDsBAAs1ACADRQRAQQEPCyACIANBAWsiA0sEQCABIANqLQAAIABB/wFxRg8LIAMgAkHMlcQAEKwQAAs8AQF/IAAoAggiAyAAKAIARgRAIAAQ6hYLIAAgA0EBajYCCCAAKAIEIANBA3RqIgAgAjYCBCAAIAE2AgALPAEBfyMAQRBrIgQkAAJAIANFBEBBACEADAELIAQgABDCCyIAIAIgAxDHDSABIAQQ6hULIARBEGokACAACz0BA38gACABKAIUIgIgASgCDCIDSQR/IAEoAgggAmotAAAFIAQLOgAJIAAgAiADSToACCAAIAEpAgA3AgALeAEDfyAAKAIIIgQgACgCAEYEQCMAQRBrIgMkACADQQhqIAAgACgCAEEBQQFBAhChCCADKAIIIgVBgYCAgHhHBEAgBSADKAIMEOEpAAsgA0EQaiQACyAAIARBAWo2AgggACgCBCAEQQF0aiIAIAI6AAEgACABOgAACzwAIAAgASACELoRIAAgBDoAJCAAIAMpAgA3AgwgAEEUaiADQQhqKQIANwIAIABBHGogA0EQaikCADcCAAs4AQF/IwBBEGsiAyQAIANBADYCDCADIAIgA0EMahDkCSAAIAEgAygCACADKAIEEIsgIANBEGokAAs1AQJ/IwBBEGsiASQAIAAtAABBBEcEQCABIAApAgA3AwggAUEIahCTHCECCyABQRBqJAAgAgs8AQF/IAAoAgAoAgAhACABKAIcIgJBEHFFBEAgAkEgcUUEQCAA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IgMkACACIAAgARDtCCADQf8BOgAPIAIgA0EPakEBEO0IIANBEGokAAsrACABIANLBEAgASADIAQQrRAACyAAIAMgAWs2AgQgACACIAFBBHRqNgIACy8BAX8jAEEQayICJAAgAiAANgIMIAFBsJ7EAEEKIAJBDGpBsAEQzAogAkEQaiQACzEBAX8gASgCACICIAEoAgRGBEAgAEErNgIADwsgASACQRxqNgIAIAAgASgCCCACEDALKwAgASADSwRAIAEgAyAEEK0QAAsgACADIAFrNgIEIAAgAiABQQF0ajYCAAsvAQF/IwBBEGsiAiQAIAIgASkCADcCCCAAIAJBCGoiABDsGiAAEO0eIAJBEGokAAswAQF/IwBBEGsiAyQAIAMgATYCDCACIANBDGpBBBDtCCACIAAgARDtCCADQRBqJAALLwEBfyMAQRBrIgIkACACIAA2AgwgAUG4+cMAQQsgAkEMakHAABDMCiACQRBqJAALKgEBfyACQf///z9xIgIgASgCfEkEfyACQX8gACgC/AR0QX9zcUUFIAMLCy4BAX8jAEEQayICJAAgAiAANgIMIAFBnPnDAEEKIAJBDGpBOxDMCiACQRBqJAALMAEBfyAAKAIIIQEgACgCBCEAA0AgAQRAIAFBAWshASAAEI4YIABB2ABqIQAMAQsLCzABAX8CQCAAKAIAIAEoAgBHDQAgACgCBCABKAIERw0AIAAoAgggASgCCEYhAgsgAgsiAQF/QQEgAEHBAGtBBkkgAEEwa0EKSSAAQeEAa0EGSXIbCzsBAX9BgMADIQECQCAAQf+vA0YNACAAQQFqIgFBgLADc0GAgMQAa0H/j7x/Sw0AQczBxwAQ4CkACyABCysAIAEgA0sEQCABIAMgBBCtEAALIAAgAyABazYCBCAAIAIgAUEYbGo2AgALKwAgASADSwRAIAEgAyAEEK0QAAsgACADIAFrNgIEIAAgAiABQQN0ajYCAAsuAQF/IwBBEGsiAiQAIAIgADYCDCABQdy31gBBECACQQxqQTsQzAogAkEQaiQACzYBAX5BsJjkAC0AABogACkCACEBQRQQYCIARQRAAAsgAEIANwIMIAAgATcCBCAAQQE2AgAgAAs8AAJAAkACQAJAIAAtAAAOBwMDAwECAAMACyAAQQRqEJgEDwsgACgCBCAAKAIIENopDwsgAEEE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IAFBf0c2AgALKgEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJBCGoQ3gogAkEQaiQACy4AIAAtABRBAkYEQCAAKAIAIgBBGGoQgh0gABDLGSAAQTBBCBDVEQ8LIAAQyxkLLgAgAC0AFEECRgRAIAAoAgAiAEEYahCDHSAAEMsZIABBMEEIENURDwsgABDLGQsvAAJAIAEoAgBBA0cNACAAIAFBBGoQnSEgASgCBCIBKAIAQRlHDQAgACABEMwBCwswACAALQAUQQJGBEAgACgCACIAQRhqEIUdIAApAwAQ+RogABCZKw8LIAApAwAQ+RoLOAEBfyAALQCcASECIABBAToAnAEgACABKAIAELAJIABBADoAnAEgAUEEaiAAEIItIAAgAjoAnAELMQAgABD8JiAAQQxqEO4mIABBGGoQ+yQgACgCPBDCHiAAQUBrENknIABByABBBBDVEQsoACABQThsIQEDQCABBEAgACACEK4RIAFBOGshASAAQThqIQAMAQsLCzUBA38gAS8BFCECIAEoAhAhAyABLQAWIQQgACABEOwIIAAgBDoAFiAAIAM2AhAgACACOwEUCygAIAFBBnQhAQNAIAEEQCAAIAIQryYgAUFAaiEBIABBQGshAAwBCwsLKAAgAUEwbCEBA0AgAQRAIAAgAhDOBCABQTBrIQEgAEEwaiEADAELCws8ACAAQQRqENMiIAFC+IKZvZXuxsW5f1IgAkLtuq22zYXU9eMAUnJFBEAgAEEkahDnFAsgAEEwQQQQ1RELLwEBfyMAQRBrIgIkACACIAAoAgAiADYCDCACQQxqIAEQ6gYgABDmCCACQRBqJAALOQEBfyAAIQECQAJAAkAgAC0AIA4EAQICAAILIABBFGohAQsgARDSIiAAKAIMEMwmIAAoAhAQzCYLCzYAIAAoAkggACgCTBDaKSAAKAJUIAAoAlgQ2ikgACgCYCAAKAJkENopIAAoAmwgACgCcBDqKQsoAQF/IwBBEGsiAiQAIAIgACgCADYCDCACQQxqIAEQrgcgAkEQaiQACycBAX8gACACaiADp0EZdiIEOgAAIAAgAkEIayABcWpBCGogBDoAAAsoACABIANLBEAgASADIAQQrRAACyAAIAMgAWs2AgQgACABIAJqNgIACzABAX8gACgCACIBQYGAxABGBEAgACAAQQRqEN4KIgE2AgALIABBACABQYCAxABHGwsrAQF/IAEoAgAiAgRAIAAgAhEBAAsgASgCBCICBEAgACACIAEoAggQ1RELCyIAIAFFBEBCAA8LIAGtQgWGIAFBAnQgAGpBBGsoAgBnrX0LLgEBfyABBH9BsJjkAC0AABpBwAAgARD/BQVBwAALIQIgACABNgIEIAAgAjYCAAswAQF/IwBBEGsiASQAIAFBADYCDCABQoCAgIAQNwIEIAAgAUEEahDLEyABQRBqJAALMQEBfyMAQRBrIgEkACABQQA2AgwgAUKAgICAwAA3AgQgACABQQRqEMoTIAFBEGokAAsvACAAKAIAQQNHBEAgAEEkahDsHiAAKAIMIAAoAhAQ8CkgACgCGCAAKAIcEN8pCwswACAAKAIQIAAoAhQgACACQf8BcWpBLGotAAAgASAAKAKwAnRqQdCXwwAQuh8pAwALLQEBfyABKAIIIgIgASgCDE8EQCAAQSs2AgAPCyABIAJBAWo2AgggACABEMgoCy0BAX8gASgCDCICIAEoAghNBEAgAEErNgIADwsgASACQQFrNgIMIAAgARDIKAs0ACABKAIUIAAoAgAoAgBoQQJ0IgBByNvjAGooAgAgAEGA2+MAaigCACABKAIYKAIMEQMACygAIAIgA0kEQCADIAIgBBCtEAALIAAgAiADazYCBCAAIAEgA2o2AgALLwEBf0EBIQQCQCABQQFxRQRAQQAhBAwBCyADEPQcIQILIAAgAjYCBCAAIAQ2AgALNAAgASgCFCAAKAIAKAIAaEECdCIAQdjd4wBqKAIAIABBkN3jAGooAgAgASgCGCgCDBEDAAsuACAAQX8gAiAEaiIEIAIgBEsbNgIEIAAgAUGAgICAeEcgA0GAgICAeEdxNgIACzABAX8gACgCACIBQYGAxABGBEAgACAAQQRqEN0aIgE2AgALIABBACABQYCAxABHGws1AQF/IABBBGohAQJAAkACQCAAKAIADgIBAgALIAEQjiUPCyABKAIAEJQrDwsgASgCABDgKAssAQF/IAAoAgAiAUECRwRAIABBBGohACABRQRAIAAoAgAQlCsPCyAAEN4oCwstAAJAIAAoAgAiACgCAEEDRwRAIAAQ4ygMAQsgAEEEahDHIwsgAEEoQQgQ1RELMQACQCAAKAIAIgAoAgBBgICAgHhHBEAgABDpJgwBCyAAQQRqEN4oCyAAQRhBBBDVEQsvACAAEO4mIABBDGoQhicgAEEwahCAJyAAKAI0EN0oIAAoAjgQ2SggAEEYahDvJgsuACAALQAlQQJGBEAgABCKJw8LIAApAwgQ+RogACgCICIAEKgdIABBKEEIENURCysAIAEgA0sEQCABIANB3L7ZABCtEAALIAAgAyABazYCBCAAIAEgAmo2AgALMQACQCAAKAIAIgAoAgBBgICAgHhHBEAgABDpJgwBCyAAQQRqELoDCyAAQRhBBBDVEQsvACABKAIQEKwYIAAoAixGBEAgAUEANgIQCyAAQQE6ADogASAAEI0PIABBADoAOgswAQF/IAEtABhFBEAgAC0AOCECIAAgAS0AGUVBAXQ6ADggASAAEOkTIAAgAjoAOAsLNAEBf0GwmOQALQAAGkHQABBgIgFFBEAACyABQoGAgIAQNwIAIAFBCGogAEHIABD7BhogAQswAQF/IAFBDGoiAiAAENMsAkAgASgCAA0AIAIoAgAiASgCAEEgRw0AIAAgARDMAQsLNQEBfyAAQQRqIQECQAJAAkAgACgCAA4CAQIACyABEIwpDwsgASgCABDtKA8LIAEoAgAQ4CgLMAECfyABIAEgAiADEOIQIgRqLQAAIQUgASACIAQgAxCRHSAAIAU6AAQgACAENgIACyUBAn8jAEFAaiIBJAAQ9iIgASAAEFMgAUHAABD7BiABQUBrJAALLgEBfgJAIAFFBEAMAQsgASkDABD8GiECIAEoAgghAQsgACABNgIIIAAgAjcDAAstAQF/IwBBEGsiAyQAIAMgASACEMAjIAAgAykDACADKAIIEMYIGiADQRBqJAALLAAgAEIANwMYIABBIGoQjC4gACgCAEECRwRAIABCADcDEA8LIABBBGoQtSoLLAAgAEIANwMYIABBIGpCADcDACAAKAIARQRAIABCADcDEA8LIABBBGoQtSoLLwAgAEIANwMQAkAgAC0ALEECRgRAIAAoAhgQth0MAQsgAEIANwMgCyAAQgA3AwgLKwAgAEIANwMQIABCADcDACAALQA0QQNHBEAgAEEgahCeHgsgAEE4ahCAKAstAAJAIAAoAgAiACgCAEEDRwRAIAAQuikMAQsgAEEEahCPJAsgAEEoQQgQ1RELMQACQCAAKAIAIgAoAgBBgICAgHhHBEAgABDpJgwB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AAstACABKAIARQRAIAFBfzYCACAAIAE2AgQgACABQQRqNgIADwtB2O3YABDvFAALMwAgASgCFCAAKAIALQAAQQJ0IgBByOvjAGooAgAgAEG86+MAaigCACABKAIYKAIMEQMACzMAIAEoAhQgACgCAC0AAEECdCIAQYjs4wBqKAIAIABB1OvjAGooAgAgASgCGCgCDBEDAAszACABKAIUIAAoAgAtAABBAnQiAEHI7OMAaigCACAAQbzs4wBqKAIAIAEoAhgoAgwRAwALMwAgASgCFCAAKAIALQAAQQJ0IgBBrO3jAGooAgAgAEGg7eMAaigCACABKAIYKAIMEQMACywAIABBCGoQyxkgACgCIBDCHiAAQThqEO8mIABBJGoQ8SYgAEHIAEEIENURCysAA0AgAC0AFEECR0UEQCABQQE6ADkgACgCAEEYaiEADAELCyAAIAEQjQ8LLgAgASgCAEUEQCAAIAEpAwgQ/BogACgCFBCtCAsgAUEwaiAAEJgaIAEgABDKEQsoACAAKAIAIgAoAgBBA0cEQCAAEJIgDwsgAEEQahDrLSAAQQRqENEZCywAA0AgAC0AFEECR0UEQCAAKAIAQRhqIQAMAQsLIAEgACkDACAAKAIQEI8bCycBAn8jAEFAaiIAJAAgAEEANgIIIABCDDcDACAAENwoIABBQGskAAs1AQF/IABBBGohAQJAAkACQCAAKAIAQQFrDgIBAgALIAEQiC4PCyABKAIAEOAUDwsgARD+LQssACAAEPwmIABBDGoQ7iYgAEEYahD7JCAAKAI8EN0oIABBQGsQkSggABCPKws6AQF/QRwQ6SAiAEEANgIIIABCgYCAgBA3AgAgAEHAoOMAKQMANwIMIABBFGpByKDjACkDADcCACAACygAIAAgARC4LSAAKAIMIgAEQCABIABBDGooAgAgAEEQaigCABChIAsLMgEBfyABKAIkIQIgAEEMaiABQQxqEIkdIABBADYCCCAAQoCAgICAATcCACAAIAI2AiQLMAAgASgCFCAALQAAQQJ0IgBB9KbjAGooAgAgAEHopuMAaigCACABKAIYKAIMEQMACzAAIAEoAhQgAC0AAEECdCIAQZin4wBqKAIAIABBjKfjAGooAgAgASgCGCgCDBEDAAswACABKAIUIAAtAABBAnQiAEGwp+MAaigCACAAQaSn4wBqKAIAIAEoAhgoAgwRAwALJQAgACABIAIoAghBAWtBeHFqQQhqIAMgBCAFIAYgAigCEBEIAAsnACACIANNBEAgAyACQYyvwAAQrBAACyAAIAEgA0EMbGopAgQ3AwALKgEBfyAAIAIQ8B8gACgCCCIDIAAoAgRqIAEgAhD7BhogACACIANqNgIICyoBAX8gACACEOMeIAAoAggiAyAAKAIEaiABIAIQ+wYaIAAgAiADajYCCAsjAQF/IwBBEGsiASQAIAFBCGogABCQCSABKAIMIAFBEGokAAuXAgEEfyAAIAAoAgAiAUEBazYCACABQQJxIAFBBElyRQRAAkAgACICKAIAIQADQCAAQQJxIAAiAUEESXINASACIABBAnIgAigCACIAIAAgAUYbNgIAIAAgAUcNAAsDQAJAIAFBfHEiBCEAA0AgACgCACIDBEACQCAEIAM2AgAgAUEBcUUEQCADKAIEIgAEQCAEIAA2AgAgAiACKAIAQX1xNgIADAULA0AgAiABQQFxIAIoAgAiACAAIAFGIgEbNgIAIAENBSAAIQEgAEEESQ0ACwwBCyACIAFBfXEgAigCACIAIAAgAUYiARs2AgAgAUUNAAwFCwUgACgCCCIDIAA2AgQgAyEADAELCyAAIQEMAQsLELobAAsLCyoAAkAgACgCAEGJgMQARwRAIABB9ABqEN0mDAELIABBBGohAAsgABCWEQsqAQF/IAAgAhD7HiAAKAIIIgMgACgCBGogASACEPsGGiAAIAIgA2o2AggLLAACQCABQQJHBEAgACgCAEGAgICAeEYNASAAQQA2AhQLDwtB6I3EABDgKQALLAACQCABQQNHBEAgACgCAEGAgICAeEYNASAAIAIQsSMLDwtB+I3EABDgKQALKQEBfyABIAAoAggiAk8EQCABIAJBzK/DABCsEAALIAAoAgQgAUEMbGoLMAAgASgCFCAALQAAQQJ0IgBBwNnjAGooAgAgAEGo2eMAaigCACABKAIYKAIMEQMACysBAX8gASAAKALIAiICTwRAIAEgAkGQkcQAEKwQAAsgACgCxAIgAUEUbGoLKQAgACABaiwAAEEATgR/IAApAwBCgIGChIiQoMCAf4N6p0EDdgUgAQsLJQAgACABIAIoAghBAWtBeHFqQQhqIAMgBCAFIAYgAigCIBEIAAssAQF/QQEhAgJAIAFBgICAgHhGDQAgABCDFCABRg0AIAAQyRUgAUYhAgsgAgsnACABLQAQQQFxBEAgAxDaAwsgAgRAIAMQsggLIABBgICAgHg2AgALJgAgAkUEQEEBQQAgAxCtEAALIAAgAkEBazYCBCAAIAFBCGo2AgALIwAgACACQQdxIANBA3RyNgIEIAAgAkH4AXFBA3YgAXI2AgALMAAgASgCFCAALQAAQQJ0IgBBkL7YAGooAgAgAEHovNgAaigCACABKAIYKAIMEQMACzAAIAEoAhQgAC0AAEECdCIAQdzh4wBqKAIAIABBuOHjAGooAgAgASgCGCgCDBEDAAsgAQF/IAEgA08EfyACIAMgACABIANraiADEOsfBSAECwswAQJ+IAEpAwghAiABKQMAEPwaIQMgACABKQMQELojNwMQIAAgAzcDACAAIAI3AwgLMAECfiABKQMQIQIgASkDABD8GiEDIAAgASkDCBD8GjcDCCAAIAM3AwAgACACNwMQCy8CAX4BfyABKQIAIQIgASgCCCEDIAAgAUEMahD5HDYCDCAAIAM2AgggACACNwIACy8CAX4BfyABKQIIIQIgARD5HCEDIAAgAUEEahD3GTYCBCAAIAM2AgAgACACNwIICy8CAX4BfyABKQIIIQIgARD5HCEDIAAgAUEEahD4EDYCBCAAIAM2AgAgACACNwIICyoAIAApAwggACkDGBCMKyAALQA0QQNHBEAgAEEgahDXGwsgACgCOBDZKAsqACAAKQMIIAApAxgQjCsgAC0ANEEDRwRAIABBIGoQ1xsLIAAoAjgQ/CILLwACQAJAAkAgACgCAA4CAQIACyAAQQRqEN4oDwsgACkDCBD5Gg8LIAApAwgQ+RoLKwEBfwJAAkACQCAAQQprDgQBAgIBAAsgAEGowABrQQJPDQELQQEhAQsgAQssAQF/IABBBGohASAAKAIAIgBBgICAgHhHBEAgACABKAIAENopDwsgARCIIwssACAAKQMIEPkaIAAoAiAQwh4gAEE4ahDvJiAAQSRqEPEmIABByABBCBDVEQsoAEEGIQEgACACIANB2rbgAEEFEOsfBH8gAEELOgABQQAFIAELOgAACygAQQYhASAAIAIgA0H+r+AAQQMQ6x8EfyAAQRI6AAFBAgUgAQs6AAALKABBBiEBIAAgAiADQbSL4ABBBBDrHwR/IABBJDoA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DwsgAiABIAMQrBAACyAAIAEgAksEQCAAIAJBAnRqDwsgAiABQbC/wwAQrBAACycBAX9BDEEEEKsgIgFBCGogAEEIaigCADYCACABIAApAgA3AgAgAQsgACABBEAgAC0AAEECcUEBdg8LQQBBAEG43MMAEKwQAAsoACABQZjbwwBBCRD2HSAAQQhqIAFBCGooAgA2AgAgACABKQIANwIACycAIABBBGooAgAgAEEIaigCAEHo3cMAEK8jIgAgAC0AAEEBcjoAAAsrACABQZABaigCACABQZQBaigCACACQf///z9xIAAoAvwEdkG88MMAELofCyAAIAEgAksEQCAAIAJBAnRqDwsgAiABQbyTxAAQrBAACycAAkAgAUEBcUUEQCACKAIAQYaAxABJDQELIAMQuSALIABBIjYCAAskAQF/IAEgACgCACAAKAIIIgJrSwRAIAAgAiABQQRBCBC3FwsLJAEBfyABIAAoAgAgACgCCCICa0sEQCAAIAIgAUEBQQIQtxcLCyQBAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAFBBEEMELcXCwsfAANAIAEEQCABQQFrIQEgABD5HiAAQQhqIQAMAQsLCysBAn8gACgCACIBQYCAgIB4RwRAIAAoAgQiAiAAKAIIEPccIAEgAhDiKQsLKwECfyAAKAIAIgFBgICAgHhHBEAgACgCBCICIAAoAggQiR8gASACEOUpCwsdACAAIAFBdGxqIgBBDGsoAgAgAEEIaygCABC6CgslAQF/IAAoAgAiASABKAIAIgFBAWs2AgAgAUEBRgRAIAAQ1gsLCyUBAX8gACgCACIBIAEoAgAiAUEBazYCACABQQFGBEAgABDoDwsLJgEBfiABKQMoIQIgAEEwaiABQTBqEMsLIAAgARDfBCAAIAI3AygLJgEBfiABKQMgIQIgACABENUhIABBEGogAUEQahDVISAAIAI3AyALHgEBfyAAKAIAQRpGBH8gAEEIaiABIAIQ0hsFIAMLCyQBAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAFBBEEEELcXCwsfAANAIAEEQCABQQFrIQEgABDpJiAAQQxqIQAMAQsLCx8AA0AgAQRAIAFBAWshASAAELYGIABBBGohAAwBCwsLJQAgASkDAFBFBEAgACABEKUcDwsgAEECOgAUIAAgASgCCDYCAAsfAANAIAEEQCABQQFrIQEgABCKJyAAQQxqIQAMAQsLCyQBAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAFBCEE4ELcXCwskAQF/IAEgACgCACAAKAIIIgJrSwRAIAAgAiABQQhBMBC3FwsLJQAgASACSwRAIAEgAkHcy98AEK8QAAsgACACNgIEIAAgATYCAAsrAEHIu+AAQb674AAgACgCAC0AACIAG0ELQQogABsgASgCFCABKAIYEPUCCyQBAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAFBCEEQELcXCwshACAAQSBqIAEQ3isgACgCAEECRgRAIABBBGogARDeKwsLJAADQCAALQAUQQJHRQRAIAAoAgBBGGohAAwBCwsgACABEI0PCyMAIAAQvhIiAKdBufPd8XlsQQV3IABCIIinc0G5893xeWytCyEAIABBIGogARDKLCAAKAIAQQJPBEAgAEEEaiABEMosCwshACAAQSBqIAEQzSwgACgCAEECRgRAIABBBGogARDNLAsLIQAgAEEgaiABENUsIAAoAgBBAkYEQCAAQQRqIAEQ1SwLCyEAIAFBIGogABDXLCABKAIAQQJGBEAgAUEEaiAAENcsCwshACAAQSBqIAEQ1iwgACgCAEECRgRAIABBBGogARDWLAsLIgEBfiAAKQMAIgFQBEAgAEEIahCFHQ8LIAEgACkDEBCMKwshACAAQSBqIAEQhS0gACgCAEECTwRAIABBBGogARCFLQsLIQAgAEEgaiABEIctIAAoAgBBAk8EQCAAQQRqIAEQhy0LCyEAIABBIGogARCKLSAAKAIAQQJPBEAgAEEEaiABEIotCwshACAAQSBqIAEQhi0gACgCAEECTwRAIABBBGogARCGLQsLIQAgAEEgaiABEKUtIAAoAgBBAk8EQCAAQQRqIAEQpS0LCygAAkAgAEEDRw0AIAItAAUgAZlEAAAAAAAA8H9icg0AIAJBADoABAsLJQAgAEEBNgIEIAAgASgCDCABKAIEa0EYbiIBNgIIIAAgATYCAAslACAAQQE2AgQgACABKAIEIAEoAgBrQQxuIgE2AgggACABNgIACyUBAX8gACgCACIBIAEoAgAiAUEBazYCACABQQFGBEAgABCSGAsLHwADQCABBEAgAUEBayEBIAAQ7AkgAEEoaiEADAELCwsdACAAIAFBaGxqIgBBGGspAwAgAEEQaygCABC0HAshACABQSBqIAAQvy0gASgCAEECRgRAIAFBBGogABC/LQsLIQAgAEEgaiABEL4tIAAoAgBBAk8EQCAAQQRqIAEQvi0LCyEAIABBIGogARC4LSAAKAIAQQJPBEAgAEEEaiABELgtCwshACAAQSBqIAEQvS0gACgCAEECTwRAIABBBGogARC9LQsLJgAgASgCGCAAELcVIAEtABRBAkcEQCAAIAEpAwAgASgCEBCSEgsLJgAgASgCGCAAELkIIAEtABRBAkcEQCAAIAEpAwAgASgCEBCSEgsLJQAgAEEEaigCACAAQQhqKAIAIAIgASgCAHZBkJTAABC3HygCAAscACABIAJNBEAgAiABIAMQrBAACyAAIAJBAnRqCxwAIAEgAk0EQCACIAEgAxCsEAALIAAgAkEUbGoLHAAgASACTQRAIAIgASADEKwQAAsgACACQQlsagscACABIAJNBEAgAiABIAMQrBAACyAAIAJBA3RqCyUBAX8CQCAAKAI4RQ0AIAAoAkAiAUUNACAAKAI8IAFBARDVEQsLHAAgASACTQRAIAIgASADEKwQAAsgACACQQxsagsfACABIAJNBEAgAiABQciDxAAQrBAACyAAIAJBAnRqCx0AIAAgASACIAMgAUEBcmdBAXRBPnNBACAEENMBCx0AIAAgASACIAMgAUEBcmdBAXRBPnNBACAEEMIBCyoBAX8gACgCACAAKAIEEOUpIAAoAhAiASAAKAIUEOkcIAAoAgwgARDkKQsjAQF/IAAoAgwiAQRAIAAoAgggAUEBENURCyAAQSBBCBDVEQslACAARQRAQcCk4wBBMhDMKgALIAAgAiADIAQgBSABKAIQEQ4ACx0AIAFFBEBBAA8LIAAgAWpBAWstAAAgAkH/AXFGCxwAIAEgAk0EQCACIAEgAxCsEAALIAAgAkEEdGoLHwAgACACNgIEIAAgASACKAIIQQFrQXhxakEIajYCAAsfACABIAJNBEAgAiABQciBxAAQrBAACyAAIAJBAnRqCyUAIABBBGooAgAgAEEIaigCACACIAEoAgB2QYybwwAQtx8oAgALKQAgACgCECAAKAIUIAAoArQCIAEgACgCsAJ0akGQmMMAELofIAI3AwALKgEBfyAAKAIEIgEgACgCCBDlHCAAKAIAIAEQ4ikgACgCDCAAKAIQEN8pCx8AIAEgAk0EQCACIAFB9JvDABCsEAALIAAgAkEDdGoLHwAgASACTQRAIAIgAUGEnMMAEKwQAAsgACACQQV0agsfACABIAJNBEAgAiABQZScwwAQrBAACyAAIAJBBXRqCx8AIAEgAk0EQCACIAFB1JzDABCsEAALIAAgAkEMbGoLHQAgACABIAIgAyABQQFyZ0EBdEE+c0EAIAQQpwELHwAgASACTQRAIAIgAUHcr8MAEKwQAAsgACACQQxsagscACABIAJNBEAgAiABIAMQrBAACyAAIAJBGGxqCx0AIAFFBEBBAQ8LIAFBA3QgAGpBBGsoAgBBgAFJCycBAn8gAEEANgKsASAAKAKoASECIAAoAqQBIAAgATcCpAEgAhDaKQscACABIAJNBEAgAiABIAMQrBAACyAAIAJBHGxqCxwAIAFFBEBBAQ8LIAFBAXQgAGpBAWssAABBAE4LHAAgASACTQRAIAIgASADEKwQAAsgACACQQF0agshACABIANHBEAgASADQZyT2AAQshAACyAAIAIgARD7BhoLJgAgACgCAEGAgICAeEYEQCABEJYcDwsgACgCBCAAKAIIIAEQgCsLIQEBfyAAIAAtAAAiAUEBIAEbOgAAIAEEQCAAENEDCyAACyAAIAEoAgAgAkEEdGtBEGsiACkDACAAQQhqKQMAEJgcCykCAX4BfyABKQIMIQIgASgCFCEDIAAgARCNDCAAIAM2AhQgACACNwIMCyIBAX8gAEGAsANzQYCAxABrQYCQvH9PBH8gABDoEQUgAQsLIQACQCABDQAgAi0AGUEBa0H/AXFBAU0NACACIAAQ6i0LCxwBAX8gACABEJoKBH8gACgCCCABKAIIRgUgAgsLIAAgASgCACACQQR0ayIAQRBrKQMAIABBCGsoAgAQtBwLIAEBfyAALQAsIgFBBEsgAUEDRnJFBEAgAEEYahDVIAsLJAAgABDZFiAAQUBrEPsPIAAoAkAgACgCRBCUKiAAQSBqEPskCx8AIAAtADRBA0cEQCAAQSBqENUgCyABIABBOGoQ4iULIAAgASgCACACQQV0ayIAQSBrKQMAIABBGGsoAgAQtBwLHgAgACgCACgCACAAKAIEKAIAIAFBWGxqQShrEOEbCyIAIABCADcCDCAAKAIARQRAIABCADcCBA8LIABBBGoQjC4LHAAgASACTQRAIAIgASADEKwQAAsgACACQQV0agsqACAAIAAoAhwgACgCICABQezE4AAQ5x8iACgCGCAAKAIcEOgYIAIQ7AkLHAAgASACTQRAIAIgASADEKwQAAsgACACQShsagskACAAQQxqEO8KIAAQjiMgAEEcahCHECAAKAIcIAAoAiAQxyoLIgAgAC0AFEECRwRAIAEoAiQgABD7BRoLIAAoAhggARC4FQspAEHAl+QALQAARQRAQcCX5ABBAToAAAtByJfkACAArUIghkIBhDcDAAsZAQF/IAEgA0YEfyAAIAIgARCdFUUFIAQLCxwAIAFB/wFxBEAgACABQQFrELkSCyAAIAIQuRILJAAgACgCACAAKAIEEN8pIAAoAgwgACgCEBDfKSAAQRxqEMIdCx4AIAAoAhQgACgCCGpBAnQgACgCJEEAIAAoAhwbagsfACAAIAIQwQogAEEQaiACQRBqEMEKIAJBCCABEM4HCyABAX8gASAAKAIAIAAoAggiAmtLBEAgACACIAEQoBgLCx8BAX8gACAALQAAIgFBASABGzoAACABBEAgABDRAwsLIwAgAEUEQEHApOMAQTIQzCoACyAAIAIgAyAEIAEoAhARBgALIwAgAEUEQEHApOMAQTIQzCoACyAAIAIgAyAEIAEoAhARCQALIwAgAEUEQEHApOMAQTIQzCoACyAAIAIgAyAEIAEoAhARRQALIwAgAEUEQEHApOMAQTIQzCoACyAAIAIgAyAEIAEoAhARRwALIwAgAEUEQEHApOMAQTIQzCoACyAAIAIgAyAEIAEoAhARGwALJQAgACABKAIINgIEIAAgASgCBEEAIAEoAgBBgICAgHhHGzYCAAsgAQF/IAAQtxsEfyADBSABQcO2wgBBBCACKAIMEQMACwskACAAKAIAIAAoAgRBBEEUENQiIAAoAgwgACgCEEEEQRgQ1CILHQAgACgCAEECRwRAIABBCGoQzSQgAEEYahDsHgsLJwEBf0HsAkEEEKsgIgFCgYCAgBA3AgAgAUEIaiAAQeQCEPsGGiABCycBAX9B0AJBBBCrICIBQoGAgIAQNwIAIAFBCGogAEHIAhD7BhogAQsnAQF/QeQCQQQQqyAiAUKBgICAEDcCACABQQhqIABB3AIQ+wYaIAELJwAgACgCECAAKAIUIAAoArQCIAEgACgCsAJ0akGAmMMAELofKQMACy8AIAAQpxcgAEGoEmoQ7R4gAEG4EmoQ7B4gAEGgDWoiACkDAEICUgRAIAAQzCQLCxoBAX8gASADTwR/IAIgAyAAIAMQ6x8FIAQLCx8AIAAgAhC/CCAAQUBrIAJBQGsQvwggAkEIIAEQjgcLHQAgAQRAIAAtAABBAXEPC0EAQQBBqNzDABCsEAALIAAgAUUEQEEAQQBByNzDABCsEAALIAAtAAhBBHFBAnYLIAAgAUUEQEEAQQBB2NzDABCsEAALIAAtAAhBCHFBA3YLHgAgARCmEyACakEEIAAoAvwEdGpBFGogACgCgAVNCx8AIAAgAhDfBiAAQQhqIAJBCGoQ3wYgAkEIIAEQzQYLHwAgACACEOAGIABBIGogAkEgahDgBiACQQggARDOBgsbACAAIAEgAiADIAFBAXJnQQF0QT5zQQAQnAELGwAgACABIAIgAyABQQFyZ0EBdEE+c0EAEJsBCxsAIAAgASACIAMgAUEBcmdBAXRBPnNBABCjAQsZAQF/IAEgA08EfyACIAAgAxCdFUUFIAQLCyQBAX4gACkDCCEBIAAoAgBFBEAgARD5Gg8LIAEgACkDGBCMKwtWAgJ/AX4jAEEQayIBJAAgAUEIakEVQTAQhxUgASkDCCEDIABBBGoiAkEANgIIIAIgAzcCACABQRBqJAAgAEEANgIYIABCgICAgMAANwIQIABBADYCAAtWAgJ/AX4jAEEQayIBJAAgAUEIakESQTgQhxUgASkDCCEDIABBBGoiAkEANgIIIAIgAzcCACABQRBqJAAgAEEANgIYIABCgICAgMAANwIQIABBADYCAAsiAQF/IABBBGohASAAKAIARQRAIAEoAgAQ2SgPCyABEP8iCyUAIAEoAhQgAC0AAEECdEGw6+MAaigCAEEGIAEoAhgoAgwRAwALGwAgASgCACACQXRsakEMaygCAEG5893xeWytCx0AIABBIGoQ6y0gACgCAEECTwRAIABBBGoQ6y0LCyEAA0AgAC0ALEECR0UEQCAAKAIYIQAMAQsLIABBADYCKAskAQF/IAAtAD4hAiAAIAEtABlFOgA+IAEgABDgEiAAIAI6AD4LJwACQAJAAkAgACgCAA4DAAIBAgsgACkDCBD5Gg8LIABBBGoQjikLCx0AIABBIGoQ+y0gACgCAEECTwRAIABBBGoQ+y0LCx0AIABBIGoQ/S0gACgCAEECTwRAIABBBGoQ/S0LCx0AIAAtADRBA0cEQCAAQSBqENUgCyAAQThqEN8nCyEAA0AgAC0ALEECR0UEQCAAKAIYIQAMAQsLIABBADoALAsnAAJAAkACQCAAKAIADgMAAgECCyAAKQMIEPkaDwsgAEEEahCmKQsLIAAgAEIANwMQIABCADcDACAAQSBqEIEoIABBJGoQgSgLIAAgAEIANwIEIABBDGpCADcCACAAEJQuIABBFGoQlCYLIgEBfyAAQQRqIQEgACgCAEUEQCABKAIAENkoDwsgARCdIwsiACABKAIAQYCAgIB4RgRAIABBBDoAAA8LIAAgAiABEPgTCxwAIAAEQCABIABBBGooAgAgAEEIaigCABC6LQsLHAAgAARAIAEgAEEMaigCACAAQRBqKAIAELotCwsbACAAIAEgAiABIAJJGyABIAIgASACSxsQ6BgLGwAgACABIAIgAyABQQFyZ0EBdEE+c0EAENYBCxwAIAAEQCABIABBDGooAgAgAEEQaigCABChIAsLGgEBfyAAKAIAQRFGBH8gAEEIahCwDwUgAQsLKAAgAEEcakEAIAJCus/FqYCQrM7TAFEbQQAgAUL/y7fCjurv0lNRGwslACAAIAEoAgQgASgCCCACQfyHwAAQuB8oAgA2AgQgACABNgIACyUAIAAgASgCBCABKAIIIAJBjIjAABC4HygCCDYCBCAAIAE2AgALIAEBf0E0EN8tIgBFBEAACyAAQQA7ATIgAEEANgIAIAALIQEBf0HkABDfLSIARQRAAAsgAEEAOwEyIABBADYCACAACyQAIAAtAABFBEAgAUGIveAAQQUQqgMPCyABQY294ABBBBCqAwsbAEGwmOQALQAAGiAAIAEQxiEiAARAIAAPCwALGQAgASACTQRAIAIgASADEKwQAAsgACACagsiACAAKAIQIAAoAhQgASAAKAI8dkECa0HYg8QAELwfKAIICycAIABBHGpBACACQtihpIOx4tHdfFEbQQAgAUKV192Yw5eKjAtRGwshACAARQRAQcCk4wBBMhDMKgALIAAgAiADIAEoAhARBAALJAAgAEGBgICAeEcEQCAARQRAQcDK3wBBEUGw+MIAEPQXCwALCx8BAX8gACgCCCIBIAAoAgBJBEAgACABQQRBFBDl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ACABIAVBf3NBBHRqIgUgACgCACAIQX9zQQR0aiIIKQAANwAAIAVBCGogCEEIaikAADcAACACQQFrIQIgDUIBfSANgyENDAALAAsgACADQRBqQZIFQRAQvAQLQQALGiADQUBrJAAMAQsQsRsACwsLFwAgASgCAEEDRgRAIAFBBGogABDVLAsLFwAgASgCAEEDRgRAIAFBBGogABDWLAsLFwAgACgCAEEDRgRAIABBBGogARDXLAsLFwAgACgCAEEDRgRAIABBBGogARDKLAsL7QMCCn8CfiABIAAoAghLBEACQCMAQUBqIgMkACADIAI2AgwgACgCDCECIAMgA0EMajYCECACIAEgAmoiAU0EQAJ/AkAgACgCBCIEIARBAWpBA3ZBB2wgBEEISRsiBEEBdiABSQRAIANBMGpBCCABIARBAWogASAESxsQugsgAygCNCIEIAMoAjAiAUUNAhogAygCOCEHIAMgAygCPDYCLCADIAc2AiggAyAENgIkIANCiICAgIABNwIYIAMgAEEQajYCFCADIAE2AiAgAUEIaiEJIAAoAgAiBSkDAEJ/hUKAgYKEiJCgwIB/gyENIANBIGohCgNAAkAgAgRAA0AgDUIAUg0CIAZBCGohBiAFKQMIQn+FQoCBgoSIkKDAgH+DIQ0gBUEIaiEFDAALAAsgAyAAKAIMIgE2AiwgAyAHIAFrNgIoIAAgChCIGCADQRRqEPkUDAMLIAEgASAEIANBEGogACANeqdBA3YgBmoiCxCSIyIOEPQOIghqIA5CGYinIgw6AAAgCSAIQQhrIARxaiAMOgAAIAEgCEF/c0EDdGogACgCACALQX9zQQN0aikAADcAACACQQFrIQIgDUIBfSANgyENDAALAAsgACADQRBqQZEFQQgQvAQLQQALGiADQUBrJAAMAQsQsRsACwsLgQQCCn8CfiABIAAoAghLBEACQCMAQUBqIgMkACADIAI2AgwgACgCDCECIAMgA0EMajYCECACIAEgAmoiAU0EQAJ/AkAgACgCBCIEIARBAWpBA3ZBB2wgBEEISRsiBEEBdiABSQRAIANBMGpBECABIARBAWogASAESxsQugsgAygCNCIEIAMoAjAiAUUNAhogAygCOCEJIAMgAygCPDYCLCADIAk2AiggAyAENgIkIANCkICAgIABNwIYIAMgAEEQajYCFCAD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ACIABEAgASAAEOAICwsYACAAKAIAQYCAgIB4RwRAIAAgARCcGgsLFAAgACgCAEEHRwRAIAAgARDMEQsLGAAgACgCAEGAgICAeEcEQCAAIAEQnhoLCxQAIAAoAgBBB0cEQCAAIAEQsBQLCxgAIAAoAgBBgICAgHhHBEAgASAAENkECwsYACAAKAIAQYCAgIB4RwRAIAEgABChIQsLEwAgACgCACIABEAgACABEKMJCwsTACAAKAIAIgAEQCAAIAEQ1wsLCxMAIAAoAgAiAARAIAAgARCuCgsLFwAgACkDACAALQAUEL4jIABBGGoQghYLGAAgASgCAEGAgICAeEcEQCABIAAQoBoLCxMAIAAoAgAiAARAIAAgARCHCQsLEwAgACgCACIABEAgACABEPAJCwsUACAAKQMAQgJSBEAgACABEOsjCwsVACAAKAIARQRAIAEgAEEIahCCCQsLFwAgACkDACAALQAUEL4jIABBGGoQhBYLEwAgACgCACIABEAgACABEJwFCwsUACAAKAIAQQdHBEAgASAAELAJCwsYACAAKAIAQYCAgIB4RwRAIAEgABDmBgsLEwAgACABEJgJIgBBEGpBACAAGwsTACAAKAIAIgAEQCAAIAEQsRoLCxMAIAAoAgAiAARAIAAgARDTAwsLGAAgACgCAEGAgICAeEcEQCAAIAEQtBoLCxQAIAAoAgBBB0cEQCAAIAEQsxQLCxgAIAAoAgBBgICAgHhHBEAgACABELUaCwsUACAAKAIAQQdHBEAgACABELQUCwsYACABKAIAQYCAgIB4RwRAIAEgABC4GgsLFAAgACgCAEEHRwRAIAAgARC2FAsLFwAgACkDACAALQAUEL4jIABBGGoQhhYLEgAgACgCAARAIABBBGoQ2CcLCxMAIAEoAgAiAQRAIAEgABCvGgsLEwAgACgCACIABEAgACABEPMJCwsXACAAKQMAIAAtABQQviMgAEEYahCIFgsTACAAKAIAIgAEQCAAIAEQ8gkLCxMAIAAoAgAiAARAIAAgARDkCAsLFwAgACkDACAALQAUEL4jIABBGGoQiRYLEwAgACABEI0JIgBBGGpBACAAGwsWACAAQgA3AgggABCMLiAAQQRqEPEDCxYAIABCADcCCCAAEIwuIABBBGoQjy4LGAAgACgCAEGAgICAeEcEQCAAIAEQvxoLCxYA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q7KmtK3s2+uofzcDAAsRACAAKAIILQA8ELQpQf8BcQsRACAAQf8BcUH08eMAai0AAAsTACAAQdTW3wA2AgQgACABNgIACyEAIABC1orp8Lf16ZkGNwMIIABCnv6E6pufzuK0fzcDAAsRACAAKAIULQBMELQpQf8BcQsRACAAKAIAIgAQ3gQgABCNKwsPACAAEPgLIABBOGoQuCkLDwAgAEEgahC4KSAAEKIeCxEAIAAoAgAiABC6HSAAEJcrCw8AIAAQuCkgAEEEahC8BQsPACAAEIgnIABBFGoQkSgLDwAgABCJJyAAQRRqEJEoCw8AIAAQpiYgAEEUahCRKAsPACAAIAFBACACIAIQhQcLEQAgACACIAEoAgAoAgAQ1AMLEAAgACACIAEoAgAoAgAQYQsSACAAKAIAENkHIAAoAgQQ2QcLCQAgACABEMIiCx8AIABCjqHtnv6J58ERNwMIIABC9s/uuoiM9Xc3AwALDwAgABDmFiAAQSBqENQpCyIAIABCjd/i29uY9siIfzcDCCAAQrTBspr266W0xgA3AwALEwAgAEENNgIEIABBps/gADYCAAshACAAQriHmcOr4aScMTcDCCAAQrnQguaBt52t1QA3AwALEwAgAEEfNgIEIABBh8/gADYCAAsiACAAQsOO0djw8fyS6gA3AwggAELdgeDK0PLI2vIANwMACyEAIABC++LRjeDZlKQPNwMIIABCrP+pmMquiPDMADcDAAsfACAAQqW3qLD0suBGNwMIIABC9I3mj5vt+KAHNwMACyEAIABCoerDqMiYha+ofzcDCCAAQpOb+u+w6pjjYTcDAAsTACAAQSg2AgQgAEGEy+AANgIACxAAIAAQpiQgAEE4QQQQ1RELEAAgABDDJiAAQTBBBBDVEQsTACAAQbzQ4AA2AgQgACABNgIACxMAIABB+NDgADYCBCAAIAE2AgALEQAgACgCACIAEMICIAAQjSsLDwAgABDUKSAAQQRqEPoECyEAIABClLDejvCVuewnNwMIIABCg+q087za6IT/ADcDAAsPACAAQQxqEPAKIAAQiicLDwAgABDgAiAAQQRqEJQFCw8AIAAQySYgAEEUahClKAsNACAAIAFBAUEBENQiCw8AIAAoAgAgACgCBBDaKQsPAEGwmOQALQAAGiAAEGALDgAgACgCAEEBIAEQkAcLzhIBEH8gACEEIwBBsAFrIgMkACACQQA2AgACQAJAAkAgASIAKAIAIgUgASgCBCIJSw0AIAJBBGohBwJAAkACQCAEKAI8IggEQCABLQAQQQFHDQELAkACQCACKAIQRQRAIARB3AJB2AIgAC0AEBtqKAIAIgFFDQQgASAEKALUAk0NAQwECyACKAIUIQEgAigCGA0BIAIoAiAhBQwECyACKAIcIQYgAigCGCEIIANBQGsgBCABEKcgIAMoAkAgAygCRBDdFSAGQQAgCBsiBk0NAiACQQE2AhggAiAGQQFqNgIcIANBOGogBCABEKcgIAMgAykDODcCmAEgA0EwaiADQZgBaiIAIAYQihAgAygCMEEBcUUNBSAAIAMoAjQiACAFIARBNGooAgAgBEE4aigCACAAQfCFxAAQtx8oAgBrIAUQ6RIgAkEBNgIAIAcgAykCmAE3AgAgB0EIaiADQaABaigCADYCAAwECyACKAIcIQUgA0EoaiAEIAEQpyAgAygCKCADKAIsEN0VIAVNBEAgAkEANgIYIAJBADYCACACIAIoAiBBAWoiBTYCIAwDCyACQQE2AhggAiAFQQFqNgIcIAIoAiAhACADQQhqIAQgARCnICADIAMpAwg3ApgBIAMgA0GYAWoiASAFEIoQIAMoAgBBAXFFDQQgASADKAIEIgEgAEEBaiIAIARBNGooAgAgBEE4aigCACABQfCFxAAQtx8oAgBrIAAQ6RIgAkEBNgIAIAcgAykCmAE3AgAgB0EIaiADQaABaigCADYCAAwDCwJAAkACQAJAIAIoAhBFBEAgBCgC2AIiAUUNAyABIAQoAtQCTQ0BDAMLIAIoAhQhASACKAIYDQEgAigCICEFDAMLIAIoAhwhBiACKAIYIQogA0GQAWogBCABEKcgIAMoApABIAMoApQBEN0VIAZBACAKGyIGTQ0BIAJBATYCGCACIAZBAWo2AhwgA0GIAWogBCABEKcgIAMgAykDiAE3ApgBIANBgAFqIANBmAFqIgAgBhCKECADKAKAAUEBcUUNBiAAIAMoAoQBIgAgBSAEQTRqKAIAIARBOGooAgAgAEHwhcQAELcfKAIAayAFEOkSIAJBATYCACAHIAMpApgBNwIAIAdBCGogA0GgAWooAgA2AgAMBQsgAigCHCEFIANB+ABqIAQgARCnICADKAJ4IAMoAnwQ3RUgBU0EQCACQQA2AhggAkEANgIAIAIgAigCIEEBaiIFNgIgDAILIAJBATYCGCACIAVBAWo2AhwgAigCICEAIANB0ABqIAQgARCnICADIAMpA1A3ApgBIANByABqIANBmAFqIgEgBRCKECADKAJIQQFxRQ0FIAEgAygCTCIBIABBAWoiACAEQTRqKAIAIARBOGooAgAgAUHwhcQAELcfKAIAayAAEOkSIAJBATYCACAHIAMpApgBNwIAIAdBCGogA0GgAWooAgA2AgAMBAsgAkEANgIYIAIgATYCFCACQQE2AhAgAiAFNgIgIAJBADYCAAsgBEE8akEAIAgbIQggBEHIAGohDiAAKAIMIQYgACgCCCEKIARBCGohCyAEQQRqIQwgBEEgaiEPIARBHGohEANAIAUgCU8EQCACIAE2AhQgAkEBNgIQDAQLAkACQAJAIAUgBkkEQCAOIAUgCmotAAAiDWohESABIQADQAJAAkACfyAMKAIAIAsoAgAgAEG4gcQAELgfKAIEIgEEQCAQKAIAIA8oAgAgASARLQAAakHIgcQAELcfKAIADAELIANB8ABqIAQgABCmICADIAMpA3A3AqgBA0AgA0GYAWogA0GoAWoQ/w4gAy0AmAFFDQIgAy0AmQEiASANSQ0ACyABIA1HDQEgAygAmgELIgFBAUcNAQsgDCgCACALKAIAIABB4IXEABC4HygCDCEADAELCyABIAQoAtACTQ0BIAUhAAwCCyAFIAZBjK7AABCsEAALIAIgATYCFCACQQE2AhAgAUUNBQJAIAQoAtQCIAFPBEAgAkKBgICAEDcCGCADQegAaiAEIAEQpyAgAyADKQNoNwKYASADQeAAaiADQZgBaiIAQQAQihAgAygCYEEBcUUNASAAIAMoAmQiACAFQQFqIgEgBEE0aigCACAEQThqKAIAIABB8IXEABC3HygCAGsgARDpEiACQQE2AgAgByADKQKYATcCACAHQQhqIANBoAFqKAIANgIADAcLIANBmAFqIAgoAgAgCEEEaigCACAKIAYgBSAJEO8dIANB2ABqIAMoApgBIAMoApwBEMUhIAMoAlhFDQYgAygCXCIFIAIoAiAiAE0NAQwCCwwGCyAAQQFqIQULIAIgBTYCIAwACwALIAJBADYCGCACIAE2AhQgAkEBNgIQIAIgBTYCICACQQA2AgALIAUg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KAIIIQ0gBEEIaiEOIARBBGohDyAEQThqIRAgBEE0aiERIARBIGohEiAEQRxqIRMgBSEAA0AgACAMRgRAIAYgAykD4AE3AgQgBiAHNgIAIAZBDGogA0HoAWooAgA2AgAMCwsCQCAAIApHBEAgACANai0AACECAn8gDygCACAOKAIAIAFBuIHEABC4HygCBCIUBEAgEygCACASKAIAIBQgAiALai0AAGpByIHEABC3HygCAAwBCyADQRhqIAQgARCmICADIAMpAxg3AvwBA0AgA0GEAmogA0H8AWoQ/w4gAy0AhAJFDQwgAy0AhQIiASACSQ0ACyABIAJHDQsgAygAhgILIQEgA0HgAWohAiABQQFGDQsgASAEKALQAksNASABRQ0LIAEgBCgC1AJLDQEgA0EQaiAEIAEQpyAgAyADKQMQNwKEAiADQQhqIANBhAJqQQAQihAgAygCCEEBcUUNDSADQewBaiICIAMoAgwiFCAAQQFqIhUgESgCACAQKAIAIBRB8IXEABC3HygCAGsgFRDpEiADKALsASAFSw0BIANB6AFqIANB9AFqKAIANgIAIAMgAykC7AE3A+ABQQEhByAIQQFxRQ0BDAsLIAogCUH8rcAAEKwQAAsgAEEBaiEADAALAAsMCQsgBkEANgIADAcLIAhBAXFFBEACQCAEKALYAiIBRQ0AIAEgBCgC1AJLDQAgA0H4AGogBCABEKcgIAMgAykDeDcC4AEgA0HwAGogA0HgAWpBABCKEEEBIQcgAygCcEEBcUUNCSADQewBaiADKAJ0IgAgBSAEQTRqKAIAIARBOGooAgAgAEHwhcQAELcfKAIAayAFEOkSCyACKAIMIgggBSAFIAhJGyEJIARByABqIQ0gAigCCCEOIARBCGohAiAEQQRqIQogBEE4aiEPIARBNGohECAEQSBqIREgBEEcaiESA0AgBSAMRgRAIAYgAykC7AE3AgQgBiAHNgIAIAZBDGogA0H0AWooAgA2AgAMCQsCQCAFIAlHBEAgDSAFIA5qLQAAIgtqIRMgASEAA0ACQAJAAn8gCigCACACKAIAIABBuIHEABC4HygCBCIBBEAgEigCACARKAIAIAEgEy0AAGpByIHEABC3HygCAAwBCyADQegAaiAEIAAQpiAgAyADKQNoNwKEAgNAIANB4AFqIANBhAJqEP8OIAMtAOABRQ0CIAMtAOEBIgEgC0kNAAsgASALRw0BIAMoAOIBCyIBQQFHDQELIAooAgAgAigCACAAQeCFxAAQuB8oAgwhAAwBCwsgASAEKALQAksNAQJAIAEEQCABIAQoAtQCTQ0BDAMLIAYgAykC7AE3AgQgBiAHNgIAIAZBDGogA0H0AWooAgA2AgAMCwsgA0HgAGogBCABEKcgIAMgAykDYDcC4AEgA0HYAGogA0HgAWpBABCKECADKAJYQQFxRQ0LQQEhByADQewBaiADKAJcIgAgBUEBaiILIBAoAgAgDygCACAAQfCFxAAQtx8oAgBrIAsQ6RIMAQsgCSAIQfytwAAQrBAACyAFQQFqIQUMAAsACyAGAn8CQAJAIAQoAtgCIgFFDQAgASAEKALUAksNACADQdAAaiAEIAEQpyAgAyADKQNQNwLgASADQcgAaiADQeABakEAEIoQIAMoAkhBAXFFDQogA0HsAWogAygCTCIAIAUgBEE0aigCACAEQThqKAIAIABB8IXEABC3HygCAGsgBRDpEgwBCyACKAIMIgcgBSAFIAdJGyEIIARByABqIQsgAigCCCENIARBCGohAiAEQQRqIQkgBEEgaiEOIARBHGohDwNAIAUgDEYEQCAGQQA2AgAMCgsCQCAFIAhHBEAgCyAFIA1qLQAAIgpqIRAgASEAA0ACQAJ/IAkoAgAgAigCACAAQbiBxAAQuB8oAgQiAQRAIA8oAgAgDigCACABIBAtAABqQciBxAAQtx8oAgAMAQsgA0FAayAEIAAQpiAgAyADKQNANwKEAgNAIANB4AFqIANBhAJqEP8OIAMtAOABRQ0CIAMtAOEBIgEgCkkNAAsgASAKRw0BIAMoAOIBCyIBQQFHDQMLIAkoAgAgAigCACAAQeCFxAAQuB8oAgwhAAwACwALIAggB0H8rcAAEKwQAAsCQCABIAQoAtACSw0AQQAgAUUNAxogASAEKALUAksNACADQThqIAQgARCnICADIAMpAzg3AuABIANBMGogA0HgAWpBABCKECADKAIwQQFxBEAgA0HsAWogAygCNCIAIAVBAWoiASAEQTRqKAIAIARBOGooAgAgAEHwhcQAELcfKAIAayABEOkSDAMLDAsLIAVBAWohBQwACwALIAYgAykC7AE3AgQgBkEMaiADQfQBaigCADYCAEEBCzYCAAwGCwJAIAQoAtgCIgFFDQAgASAEKALUAksNACADQagBaiAEIAEQpyAgAyADKQOoATcC7AEgA0GgAWogA0HsAWpBABCKECADKAKgAUEBcUUNByADQeABaiADKAKkASIAIAUgBEE0aigCACAEQThqKAIAIABB8IXEABC3HygCAGsgBRDpEiAGQQE2AgAgBkEMaiADQegBaigCADYCACAGIAMpAuABNwIEDAYLIANB7AFqIAAgBEFAayILKAIAIAIoAggiCCACKAIMIgcgBSAMEO8dAkACQAJAIAMoAuwBIgBBAWsOAgEAAgsgBEHIAGohDSADKALwASECIARBCGohCSAEQQRqIQogBEEgaiEOIARBHGohDwNAIAwgAiIFTQRAIAZBADYCAAwJCwJAIAUgB0kEQCANIAUgCGotAAAiAmohECABIQADQAJAAn8gCigCACAJKAIAIABBuIHEABC4HygCBCIBBEAgDygCACAOKAIAIAEgEC0AAGpByIHEABC3HygCAAwBCyADQZgBaiAEIAAQpiAgAyADKQOYATcChAIDQCADQewBaiADQYQCahD/DiADLQDsAUUNAiADLQDtASIBIAJJDQALIAEgAkcNASADKADuAQsiAUEBRw0DCyAKKAIAIAkoAgAgAEHghcQAELgfKAIMIQAMAAsACyAFIAdB/K3AABCsEAALAkAgASAEKALQAksNACABBEACQCAEKALUAiABTwRAIANBkAFqIAQgARCnICADIAMpA5ABNwLsASADQYgBaiADQewBakEAEIoQIAMoAogBQQFxDQEMDQsgA0HsAWogBCgCPCALKAIAIAggByAFIAwQ7x0gA0GAAWogAygC7AEgAygC8AEQxSEgAygCgAFFBEAgBkEANgIADAwLIAMoAoQBIgIgBUsNAwwCCyADQeABaiADKAKMASIAIAVBAWoiASAEQTRqKAIAIARBOGooAgAgAEHwhcQAELcfKAIAayABEOkSIAZBATYCACAGQQxqIANB6AFqKAIANgIAIAYgAykC4AE3AgQMCgsgBkEANgIADAkLIAVBAWohAgwACwALIAYgAykC8AE3AgQgBkEMaiADQfgBaigCADYCAAsgBiAANgIADAULIAYgAykC8AE3AgQgBkEMaiADQfgBaigCADYCAAsgBiAANgIADAMLIARByABqIQ4gAygC8AEhAiAEQQhqIQogBEEEaiELIARBOGohDyAEQTRqIRAgBEEgaiERIARBHGohEgNAAkACQCAMIAIiBUsEQAJAIAUgCEkEQCAOIAUgCWotAAAiAmohEyABIQADQAJAAn8gCygCACAKKAIAIABBuIHEABC4HygCBCIBBEAgEigCACARKAIAIAEgEy0AAGpByIHEABC3HygCAAwBCyADQcgBaiAEIAAQpiAgAyADKQPIATcChAIDQCADQewBaiADQYQCahD/DiADLQDsAUUNAiADLQDtASIBIAJJDQALIAEgAkcNASADKADuAQsiAUEBRw0DCyALKAIAIAooAgAgAEHghcQAELgfKAIMIQAMAAsACyAFIAhB/K3AABCsEAALIAQoAtACIAFPBEAgAUUNAyAEKALUAiABTwRAIANBwAFqIAQgARCnICADIAMpA8ABNwLsASADQbgBaiADQewBakEAEIoQIAMoArgBQQFxDQMMCQsgA0HsAWogBCgCPCANKAIAIAkgCCAFIAwQ7x0gA0GwAWogAygC7AEgAygC8AEQxSEgAygCsAFFBEAgBkEANgIADAgLIAMoArQBIgIgBUsNBAsgBUEBaiECDAMLIAYgAykC4AE3AgQgBiAHNgIAIAZBDGogA0HoAWooAgA2AgAMBQtBASEHIANB4AFqIAMoArwBIgAgBUEBaiICIBAoAgAgDygCACAAQfCFxAAQtx8oAgBrIAIQ6RIMAQsLIAYgAykC4AE3AgQgBiAHNgIAIAZBDGogA0HoAWooAgA2AgAMAgsgA0HgAWohAgsgBiAHNgIAIAYgAikCADcCBCAGQQxqIAJBCGooAgA2AgALIANBkAJqJAAMAQtBgIbEABDgKQALCwwAIAAoAgAgARDeGQu1FgETfyAAIQUgASEDIwBBMGsiBCQAAkACQAJAAkACQAJAAkAgAigCACIAIAIoAgQiC00EQCACLQARIAMtANgCRXIhCQJAAkAgAi0AEEUEQCADKAIoIghFDQQgCUEBcQ0FIAMoAtACIgZFDQEgAygCzAIgBk8EQCAEQRBqIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQbiDxAAQvB8iASgCBCABKAIIQQAQvR8oAgAiASAAIANBHGooAgAgA0EgaigCACABQaiDxAAQtx8oAgBrIAAQ6RIgAygCKCEIQQEhBwsgBEEgaiAIIANBLGoiCSgCACACKAIIIgggAigCDCICIAAgCxDvHSAEKAIgIgBBAWsOAgYIBwsgAygC1AIiBkUNAQJAIAYgAygCzAJLDQAgBEEQaiIBIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQbiDxAAQvB8iBygCBCAHKAIIQQAQvR8oAgAiByAAIANBHGooAgAgA0EgaigCACAHQaiDxAAQtx8oAgBrIAAQ6RJBASEIIAlBAXFFDQAMCQsgAigCDCIHIAAgACAHSRshCiADQUBrIQwgAigCCCEOIANBCGohDyADQQRqIRAgA0EUaiERIANBEGohDSADQSBqIRIgA0EcaiEUIAAhAQNAIAEgC0YEQCAFIAQpAxA3AgQgBSAINgIAIAVBDGogBEEYaigCADYCAAwLCwJAIAEgCkcEQCAQKAIAIA8oAgAgBiAMIAEgDmotAABqLQAAakGYg8QAELcfKAIAIgYgAygCyAJLDQEgBkUEQCAEQRBqIQEMDAsgBiADKALMAksNASAEQSBqIgIgDSgCACARKAIAIAYgAygCPHZBAmtBuIPEABC8HyITKAIEIBMoAghBABC9HygCACITIAFBAWoiFSAUKAIAIBIoAgAgE0Gog8QAELcfKAIAayAVEOkSIAQoAiAgAEsNASAEQRhqIARBKGooAgA2AgAgBCAEKQIgNwMQQQEhCCAJQQFxRQ0BIAIhAQwLCyAKIAdB/K3AABCsEAALIAFBAWohAQwACwALQQEQ0iYhACAFQQI2AgAgBSAANgIEDAgLQQAQ0iYhACAFQQI2AgAgBSAANgIEDAcLIAVBADYCAAwGCyAJQQFxRQRAIAMoAtACIgYEQCADKALMAiAGTwRAIARBIGogA0EQaigCACADQRRqKAIAIAYgAygCPHZBAmtBuIPEABC8HyIBKAIEIAEoAghBABC9HygCACIBIAAgA0EcaigCACADQSBqKAIAIAFBqIPEABC3HygCAGsgABDpEkEBIQcLIAIoAgwiASAAIAAgAUkbIQggA0FAayEJIAIoAgghAiADQQhqIQogA0EEaiEMIANBFGohDiADQRBqIQ8gA0EgaiEQIANBHGohEQNAIAAgC0YEQCAFIAQpAiA3AgQgBSAHNgIAIAVBDGogBEEoaigCADYCAAwJCwJAIAAgCEcEQCAMKAIAIAooAgAgBiAJIAAgAmotAABqLQAAakGYg8QAELcfKAIAIgYgAygCyAJLDQECQCAGBEAgBiADKALMAk0NAQwDCyAFIAQpAiA3AgQgBSAHNgIAIAVBDGogBEEoaigCADYCAAwLC0EBIQcgBEEgaiAPKAIAIA4oAgAgBiADKAI8dkECa0G4g8QAELwfIg0oAgQgDSgCCEEAEL0fKAIAIg0gAEEBaiISIBEoAgAgECgCACANQaiDxAAQtx8oAgBrIBIQ6RIMAQsgCCABQfytwAAQrBAACyAAQQFqIQAMAAsAC0EBENImIQAgBUECNgIAIAUgADYCBAwGCyAFAn8CQCADKALQAiIGBEAgBiADKALMAk0NASACKAIMIgEgACAAIAFJGyEHIANBQGshCCACKAIIIQIgA0EIaiEJIANBBGohCgNAIAAgC0YEQCAFQQA2AgAMCgsCQCAAIAdHBEAgCigCACAJKAIAIAYgCCAAIAJqLQAAai0AAGpBmIPEABC3HygCACIGIAMoAsgCSw0BQQAgBkUNBRogBiADKALMAksNASAAQQFqIQAMBAsgByABQfytwAAQrBAACyAAQQFqIQAMAAsAC0EBENImIQAgBUECNgIAIAUgADYCBAwHCyAEQSBqIANBEGooAgAgA0EUaigCACAGIAMoAjx2QQJrQbiDxAAQvB8iASgCBCABKAIIQQAQvR8oAgAiASAAIANBHGooAgAgA0EgaigCACABQaiDxAAQtx8oAgBrIAAQ6RIgBUEMaiAEQShqKAIANgIAIAUgBCkCIDcCBEEBCzYCAAwFCwJAAkACQAJAIAMoAtACIgYEQCADKALMAiAGTwRAIARBEGogA0EQaigCACADQRRqKAIAIAYgAygCPHZBAmtBuIPEABC8HyIBKAIEIAEoAghBABC9HygCACIBIAAgA0EcaigCACADQSBqKAIAIAFBqIPEABC3HygCAGsgABDpEiAFQQE2AgAgBUEMaiAEQRhqKAIANgIAIAUgBCkCEDcCBAwKCyAEQSBqIAggA0EsaiIIKAIAIAIoAggiByACKAIMIgIgACALEO8dAkAgBCgCICIAQQFrDgIEAAULIANBQGshCSAEKAIkIQAgA0EIaiEKIANBBGohDANAIAsgACIBTQRAIAVBADYCAAwLCyABIAJPDQICQCAMKAIAIAooAgAgBiAJIAEgB2otAABqLQAAakGYg8QAELcfKAIAIgYgAygCyAJNBEAgBkUNBSAGIAMoAswCTQ0BIARBIGogAygCKCAIKAIAIAcgAiABIAsQ7x0gBCAEKAIgIAQoAiQQxSEgBCgCAEUEQCAFQQA2AgAMDQsgBCgCBCIAIAFLDQILIAFBAWohAAwBCwsgBEEQaiADQRBqKAIAIANBFGooAgAgBiADKAI8dkECa0G4g8QAELwfIgAoAgQgACgCCEEAEL0fKAIAIgAgAUEBaiIBIANBHGooAgAgA0EgaigCACAAQaiDxAAQtx8oAgBrIAEQ6RIgBUEBNgIAIAVBDGogBEEYaigCADYCACAFIAQpAhA3AgQMCQtBARDSJiEAIAVBAjYCACAFIAA2AgQMCAsgASACQfytwAAQrBAACyAFQQA2AgAMBgsgBSAEKQIkNwIEIAVBDGogBEEsaigCADYCAAsgBSAANgIADAQLIAUgBCkCJDcCBCAFQQxqIARBLGooAgA2AgALIAUgADYCAAwCCyADQUBrIQogBCgCJCEAIANBCGohDCADQQRqIQ4gA0EUaiEPIANBEGohECADQSBqIREgA0EcaiENA0ACQAJAAkACQCALIAAiAUsEQCAAIAJPDQIgDigCACAMKAIAIAYgCiAAIAhqLQAAai0AAGpBmIPEABC3HygCACIGIAMoAsgCSw0DIAZFDQQgBiADKALMAk0NASAEQSBqIAMoAiggCSgCACAIIAIgACALEO8dIARBCGogBCgCICAEKAIkEMUhIAQoAghFBEAgBUEANgIADAgLIAQoAgwiACABTQ0DDAULIAUgBCkCEDcCBCAFIAc2AgAgBUEMaiAEQRhqKAIANgIADAYLQQEhByAEQRBqIBAoAgAgDygCACAGIAMoAjx2QQJrQbiDxAAQvB8iACgCBCAAKAIIQQAQvR8oAgAiEiABQQFqIgAgDSgCACARKAIAIBJBqIPEABC3HygCAGsgABDpEgwDCyABIAJB/K3AABCsEAALIAFBAWohAAwBCwsgBSAEKQIQNwIEIAUgBzYCACAFQQxqIARBGGooAgA2AgAMAQsgBSAINgIAIAUgASkCADcCBCAFQQxqIAFBCGooAgA2AgALIARBMGokAAvXDwEMfyMAQSBrIgUkACACQQA2AgACQCABIgMoAgAiASADKAIEIgtLDQAgAkEEaiEIAkACQAJAAkACQAJAAkACQCAAKAIoIgkEQCADLQAQQQFHDQELAkACQAJAIAIoAhBFBEAgAy0AEA0BIAAoAtACIgQNAgwLCyACKAIUIQQgAigCGA0CIAIoAiAhAQwICyAAKALUAiIERQ0DCyAEIAAoAswCSw0FIAIoAhxBACACKAIYGyIGIABBEGoiCSgCACAAQRRqIgooAgAgBCAAKAI8dkECa0HYg8QAELwfKAIITw0FIAJBATYCGCACIAZBAWo2AhwgBUEQaiAJKAIAIAooAgAgBCAAKAI8dkECa0G4g8QAELwfIgMoAgQgAygCCCAGEL0fKAIAIgMgASAAQRxqKAIAIABBIGooAgAgA0Gog8QAELcfKAIAayABEOkSIAJBATYCACAIIAUpAhA3AgAgCEEIaiAFQRhqKAIANgIADAkLIAIoAhwiASAAQRBqIgcoAgAgAEEUaiIGKAIAIAQgACgCPHZBAmtB2IPEABC8HygCCE8EQCACQQA2AhggAkEANgIAIAIgAigCIEEBaiIBNgIgDAYLIAJBATYCGCACIAFBAWo2AhwgAigCICEDIAVBEGogBygCACAGKAIAIAQgACgCPHZBAmtBuIPEABC8HyIEKAIEIAQoAgggARC9HygCACIBIANBAWoiAyAAQRxqKAIAIABBIGooAgAgAUGog8QAELcfKAIAayADEOkSIAJBATYCACAIIAUpAhA3AgAgCEEIaiAFQRhqKAIANgIADAYLAkACQCACKAIQRQRAIAAoAtACIgRFDQkgBCAAKALMAk0NAQwECyACKAIUIQQgAigCGA0BIAIoAiAhAQwECyACKAIcQQAgAigCGBsiBiAAQRBqIgooAgAgAEEUaiIMKAIAIAQgACgCPHZBAmtB2IPEABC8HygCCE8NAiACQQE2AhggAiAGQQFqNgIcIAVBEGogCigCACAMKAIAIAQgACgCPHZBAmtBuIPEABC8HyIDKAIEIAMoAgggBhC9HygCACIDIAEgAEEcaigCACAAQSBqKAIAIANBqIPEABC3HygCAGsgARDpEiACQQE2AgAgCCAFKQIQNwIAIAhBCGogBUEYaigCADYCAAwICyACKAIcIgEgAEEQaiIHKAIAIABBFGoiBigCACAEIAAoAjx2QQJrQdiDxAAQvB8oAghPBEAgAkEANgIYIAJBADYCACACIAIoAiBBAWoiATYCIAwDCyACQQE2Ahgg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BEAgDSAEQQFqIgRLBEAgDiAEQQJ0aigCAAwCCwwFCyAAQf////8HcQsiACAGIAVBEGooAgAgBUEUaigCACAAQbCFxAAQtx8oAgBrIAYQ6RIgBSgCHCEEQQEhCQsgA0GgAWogBCAFQSBqIhQoAgAgAigCCCISIAIoAgwiDyAGIBUQ7x0CQAJAAkACQCADKAKgASIAQQFrDgIBAAILIAVBLGohEyADKAKkASEAIAVBCGohCyAFQQRqIREgBUEUaiEODAILIAggAykCpAE3AgQgCEEMaiADQawBaigCADYCAAsgCCAANgIADAILAkADQAJAAkAgFSAAIgJLBEAgACAPSQRAIBMgACASai0AAGotAAAiB0ECaiEGIAEhAANAAkACQAJAAkACQAJAAkAgESgCACALKAIAIABBgITEABC3HygCACIBQf8BcUH+AWsOAgECAAsgA0GAAWogESgCACALKAIAIABBAmoiDEGQhMQAEOwbIAFBAnZBP3EgAUEDcUEAR2oiCiADKAKEASIBSw0SIAMoAoABIQ0gCkECdCEEQX8hAQNAIARFDQYgAUEBaiEBIAcgDSgCACIQQf8BcUYNAyAHIBBBCHZB/wFxRg0EIAcgEEEQdkH/AXFGDQUgDUEEaiENIARBBGshBCAHIBBBGHZHDQALIBEoAgAgCygCACAKIAxqIAFBAnRqQQNqQbCExAAQtx8oAgAhAQwKCyAHIBEoAgAgCygCACAAQfCExAAQtx8tAAFGDQgMBAsgESgCACALKAIAIAAgBmpBkIXEABC3HygCACIBQQFGDQMMCAsgESgCACALKAIAIAogDGogAUECdGpB4ITEABC3HygCACEBDAcLIBEoAgAgCygCACAKIAxqIAFBAnRqQQFqQdCExAAQtx8oAgAhAQwGCyARKAIAIAsoAgAgCiAMaiABQQJ0akECakHAhMQAELcfKAIAIQEMBQsgESgCACALKAIAIABBAWpBoIXEABC3HygCACEADAALAAsgAiAPQfytwAAQrBAACyAIIAMpApABNwIEIAggCTYCACAIQQxqIANBmAFqKAIANgIADAULIBEoAgAgCygCACAAQQJqQYCFxAAQtx8oAgAhAQsCQAJAIAEgBSgCtAJLDQAgAUUNASADQZABagJ/AkAgBSgCuAIgAU8EQCAFKAIoIQAgA0H4AGogESgCACAL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FhISDhYWDxASEhISEhIWERYLIAAoAgxBBHQhAiAAKAIIIQADQCACRQ0WIAAoAgBBAkcEQCAAQQxqIAEQyiwLIABBEGohACACQRBrIQIMAAsACyAAQQRqIAEQ8AkMFAsgAEEIaiABEMssDBMLIABBBGogARDKLCAAQQhqIAEQyiwMEgsgAEE4agJAAkACQAJAAkACQAJAAkACQAJAAkAgAkEBaw4LAAECAwQFBgcICgkKCyAAQQhqIAEQnx8MCQsgAEEIaiABEPQhDAgLIABBBGogARDKLAwHCyAAQQRqIAEQsxwMBgsgAEEEaiABEMosDAULIABBBGogARDKLAwECyAAQQRqIAEQyiwMAwsgAEEEaiABEMosDAILIABBBGogARDKLAwBCyAAQQhqIQICQAJAIAAoAgRBAWsOAgECAAsgAiABEIsXDAELIAIgARC7DgsgARDKLAwRCyAAQQhqIAEQnx8MEAsgAEEIaiABEPQhDA8LIABBBGogARDKLCAAQQhqIAEQyiwMCwsgAC0AGEEFRgRAIABBEGogARDKLAsMCwsgAEEQaiABEMosIAAoAgRBgICAgHhGDQwMCgsgAEEEaiABEMosIAAoAgggARCWGgwLCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARCvFCACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEJcaDAsLDAYLIABBCGogARDMLAwJCyAAKAIMRQ0IDAULIABBCGoQ9SEMBwsgACgCBCABEKAMDAYLIABBBGogARDEDwwFCyAAQQRqIAEQsxwMBAsgAEEEaiABEMosDAMLIABBDGogARDKLAwCCyAAQQRqIAEQ+RgMAQsgAEEEaiABEJYaCwsMACAAKAIYIAEQpBILDAAgACgCGCABEPQFC6UGAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgJBDGsiAyADQSZPG0EBaw4kAAECExQDBAUGBwgJFgoXFgsMDQ4XExMPFxcQERMTExMTExcSFwsgACgCDEEEdCECIAAoAgghAANAIAJFDRcgACgCAEECRwRAIABBDGogARDNLAsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARCHCQwVCyABIABBCGoQqhEMFAsgAEEEaiABEM0sIABBCGogARDNLAwTCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwECAwQFBgcICQsKAAsgAEEIaiABEO0tDAoLIABBCGogARCgHwwJCyABIABBCGoQ9yEMCAsgAEEEaiABEM0sDAcLIABBBGogARC1HAwGCyAAQQRqIAEQzSwMBQsgAEEEaiABEM0sDAQLIABBBGogARDNLAwDCyAAQQRqIAEQzSwMAgsgAEEEaiABEM0sDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQjBcMAQsgAiABEPANCyABEM0sDBILIABBCGogARCgHwwRCyABIABBCGoQ9yEMEAsgAEEEaiABEM0sIABBCGogARDNLAwMCyAALQAYQQVGBEAgAEEQaiABEM0sCwwMCyAAQRBqIAEQzSwgACgCBEGAgICAeEYNDQwLCyABIABBCGoQggkMDAsgAEEEaiABEM0sIAEgACgCCBCjGgwLCyAAKAIMQShsIQIgACgCCCEDA0AgAgRAIAMgARDKESACQShrIQIgA0EoaiEDDAELCyAAKAIQIgAoAgBBgICAgHhHBEAgACABEKIaDAsLDAYLIABBCGogARDBJwwJCyAAKAIMRQ0IDAULIABBCGogARCXHgwHCyAAKAIEIAEQgQwMBgsgAEEEaiABEMYPDAULIABBBGogARC1HAwECyAAQQRqIAEQzSwMAwsgAEEMaiABEM0sDAILIABBBGogARD7GAwBCyABIABBBGoQoxoLCwwAIAAoAgAgARCiEgsMACABIAAoAhgQwQQLDAAgACgCACABEKMSCwwAIAAoAgAgARChEgsMACAAKAIAIAEQpBILCwAgASAAKAIAEE8LDAAgACgCACABEPAPC+cFAQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgJBDGsiAyADQSZPG0EBaw4kAAECExQDBAUGBwgJFgoXFgsMDQ4XExMPFxcQERMTExMTExcSFwsgACgCDEEEdCECIAAoAgghAANAIAJFDRcgACgCAEECRwRAIABBDGogARDVLAsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARCuCgwVCyAAQQhqIAEQwicMFAsgAEEEaiABENUsIABBCGogARDVLAwTCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwECAwQFBgcICQsKAAsgAEEIaiABEIMpDAoLIABBCGogARChHwwJCyABIABBCGoQgCIMCAsgAEEEaiABENUsDAcLIABBBGogARC2HAwGCyAAQQRqIAEQ1SwMBQsgAEEEaiABENUsDAQLIABBBGogARDVLAwDCyAAQQRqIAEQ1SwMAgsgAEEEaiABENUsDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQjRcMAQsgAiABEPENCyABENUsDBILIABBCGogARChHwwRCyABIABBCGoQgCIMEAsgAEEEaiABENUsIABBCGogARDVLAwMCyAALQAYQQVGBEAgAEEQaiABENUsCwwMCyAAQRBqIAEQ1SwgACgCBEGAgICAeEYNDQwLCyABIAApAwggACgCGBCPGwwMCyAAQQRqIAEQ1SwgACgCCCABEKQaDAsLIABBBGogARDdEgwKCyAAQQhqIAEQwycMCQsgACgCDEUNCAwFCyAAQSBqIAEQ5R0MBwsgACgCBCABEIIMDAYLIABBBGogARDHDwwFCyAAQQRqIAEQthwMBAsgAEEEaiABENUsDAMLIABBDGogARDVLAwCCyAAQQRqIAEQ/BgMAQsgAEEEaiABEKQaCwvkBQECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAQQcgACgCACIAKAIAIgJBDGsiAyADQSZPG0EBaw4kAAECEhMDBAUGBwgJFBUVFAoLDA0VEhIOFRUPEBISEhISEhURFQsgACgCDEEEdCECIAAoAgghAANAIAJFDRUgACgCAEECRwRAIABBDGogARDWLAsgAEEQaiEAIAJBEGshAgwACwALIABBBGogARDXCwwTCyAAQQhqIAEQ2SwMEgsgAEEEaiABENYsIABBCGogARDWLAwRCyAAQThqAkACQAJAAkACQAJAAkACQAJAAkACQCACQQFrDgsAAQIDBAUGBwgKCQoLIABBCGogARCjHwwJCyABIABBCGoQgSIMCAsgAEEEaiABENYsDAcLIABBBGogARC4HAwGCyAAQQRqIAEQ1iwMBQsgAEEEaiABENYsDAQLIABBBGogARDWLAwDCyAAQQRqIAEQ1iwMAgsgAEEEaiABENYsDAELIABBCGohAgJAAkAgACgCBEEBaw4CAQIACyACIAEQjhcMAQsgAiABELwOCyABENYsDBALIABBCGogARCjHwwPCyABIABBCGoQgSIMDgsgAEEEaiABENYsIABBCGogARDWLAwLCyAAQQRqAkAgAC0AGEEFRw0AIABBEGoiACABENYsIAAoAgBB0NvgAEEEEJEfRQ0AIAFBAToAAAsgARD+GAwMCyAAQRBqIAEQ1iwgACgCBEGAgICAeEYNCyAAQQRqIAEQ/hgMCwsgAEEEaiABENYsIAAoAgggARClGgwKCyAAQQRqIAEQ3hIMCQsgAEEIaiABENosDAgLIAAoAgxFDQcMBQsgAEEgahDVIAwGCyAAKAIEIAEQoQwMBQsgAEEEaiABEMgPDAQLIABBBGogARC4HAwDCyAAQQRqIAEQ1iwMAgsgAEEMaiABENYsDAELIABBBGogARClGgsLDAAgASAAKAIAEPIBCwwAIAAoAgAgARDKEQsMACAAKAIYIAEQoxILjwIBBX8gACgCGCIDIAEQnRogAygCFEHYAGwhBSADKAIQIQYDQCACIAVHBEACQAJAAkACQAJAAkACQAJAIAIgBmoiACgCACIEQQRrQQAgBEEFa0EISRtBAWsOCAECAwQHBwUGAAsgACABEOsLDAYLIABBCGogARC7JQwFCyAAQSBqIAEQ0CwMBAsgASAAQQhqEPohIABBPGogARC8JSAAQTBqIAEQnRoMAwsgAEEkaiABELwlIABBLGogARCdGgwCCyAAQQRqIAEQnhoMAQsgAEEIaiIEKAIAQQVHBEAgASAEEPohCyAAQTxqIAEQvCUgAEEwaiABEJ0aCyACQdgAaiECDAELCyADQTBqIAEQvCULDAAgACgCGCABEPAPCwwAIAEgACgCGBCsAwsMACAAKAIAIAEQrxQLDAAgACgCACABENcECwwAIAAoAgAgARCuCAsMACAAKAIAIAEQlgULDAAgACgCACABEOoTCwwAIAEgACgCABDJAQsMACAAKAIAIAEQ9wELDAAgASAAKAIAEKwdCwwAIAAoAgAgARDIAwsMACAAKAIAIAEQ6xMLDAAgACgCACABEMwRCwwAIAAoAgAgARDVBAsMACAAKAIAIAEQ7BMLDAAgACgCACABELAUCwwAIAAoAgAgARD9BAsMACAAKAIAIAEQ7RMLDAAgACgCACABEK0RCwsAIAAoAgAgARBeCwwAIAEgACgCABCUIAsMACAAKAIAIAEQshQLDAAgACgCACABELMDCwwAIAEgACgCABDSHgsLACAAQShBCBDVEQsKACAAEJ0LGkEBCwwAIAAoAgAgARChDAsMACAAKAIAIAEQggwLDAAgACgCACABEKMMCwwAIAAoAgAgARCgDAsMACAAKAIAIAEQgQwLDAAgACgCACABEKsLCwwAIAAoAgAgARCiDAsMACAAKAIAIAEQoAoLDAAgACgCACABEN0pCwwAIAEgACgCABDBBAsMACAAQcgAQQgQ1RELCwAgACgCGCABEFILDAAgACgCGCABEKsSCwwAIAEgACgCABCqAQsMACABIAAoAgAQ8wMLDAAgACgCACABEM8NCwwAIAEgACgCABCxAguFBgECfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgAoAgAiAkEMayIDIANBJk8bQQFrDiQAAQISEwMEBQYHCAkVFhYVCgsMDRYSEg4WFg8QEhISEhISFhEWCyAAKAIMQQR0IQIgACgCCCEAA0AgAkUNFiAAKAIAQQJHBEAgAEEMaiABEIYtCyAAQRBqIQAgAkEQayECDAALAAsgAEEEaiABEPIJDBQLIABBCGogARCLLQwTCyAAQQRqIAEQhi0gAEEIaiABEIYtDBILIABBOGoCQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwABAgMEBQYHCAoJCgsgAEEIaiABEKgfDAkLIABBCGogARCYIgwICyAAQQRqIAEQhi0MBwsgAEEEaiABEMMcDAYLIABBBGogARCGLQwFCyAAQQRqIAEQhi0MBAsgAEEEaiABEIYtDAMLIABBBGogARCGLQwCCyAAQQRqIAEQhi0MAQsgAEEIaiECAkACQCAAKAIEQQFrDgIBAgALIAIgARCSFwwBCyACIAEQvQ4LIAEQhi0MEQsgAEEIaiABEKgfDBALIABBCGogARCYIgwPCyAAQQRqIAEQhi0gAEEIaiABEIYtDAsLIAAtABhBBUYEQCAAQRBqIAEQhi0LDAsLIABBEGogARCGLSAAKAIEQYCAgIB4Rg0MDAoLIABBBGogARCGLSAAKAIIIAEQsxoMCwsgACgCDEEobCECIAAoAgghAwNAIAIEQCADIAEQsxQgAkEoayECIANBKGohAwwBCwsgACgCECIAKAIAQYCAgIB4RwRAIAAgARC0GgwLCwwGCyAAQQhqIAEQjC0MCQsgACgCDEUNCAwFCyAAQQhqEPUhDAcLIAAoAgQgARCkDAwGCyAAQQRqIAEQzQ8MBQsgAEEEaiABEMMcDAQLIABBBGogARCGLQwDCyAAQQxqIAEQhi0MAgsgAEEEaiABEIoZDAELIABBBGogARCzGgsLDAAgACgCACABEOsBCwwAIAAoAgAgARCjEAsMACAAKAIAIAEQrhELmwYBAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkBBByAAKAIAIgAoAgAiAkEMayIDIANBJk8bQQFrDiQAAQITFAMEBQYHCAkWChcWCwwNDhcTEw8XFxARExMTExMTFxIXCyAAKAIMQQR0IQIgACgCCCEAA0AgAkUNFyAAKAIAQQJHBEAgAEEMaiABEIotCyAAQRBqIQAgAkEQayECDAALAAsgAEEEaiABEOQIDBULIABBIGogARCOLQwUCyAAQQRqIAEQii0gAEEIaiABEIotDBMLIABBOGoCQAJAAkACQAJAAkACQAJAAkACQAJAIAJBAWsOCwABAgMEBQYHCAoJCgsgAEEIaiABEKcfDAkLIABBCGogARCXIgwICyAAQQRqIAEQii0MBwsgAEEEaiABEMIcDAYLIABBBGogARCKLQwFCyAAQQRqIAEQii0MBAsgAEEEaiABEIotDAMLIABBBGogARCKLQwCCyAAQQRqIAEQii0MAQsgAEEIaiECAkACQCAAKAIEQQFrDgIBAgALIAIgARCTFwwBCyACIAEQvg4LIAEQii0MEgsgAEEIaiABEKcfDBELIABBCGogARCXIgwQCyAAQQRqIAEQii0gAEEIaiABEIotDAwLIAAtABhBBUYEQCAAQRBqIAEQii0LDAwLIABBEGogARCKLSAAKAIEQYCAgIB4Rg0NDAsLIAEgACkDCCAAKAIYELMdDAwLIABBBGogARCKLSAAKAIIIAEQshoMCwsgACgCDEEobCECIAAoAgghAwNAIAIEQCADIAEQtBQgAkEoayECIANBKGohAwwBCwsgACgCECIAKAIAQYCAgIB4RwRAIAAgARC1GgwLCwwGCyAAQSBqIAEQ8QUMCQsgACgCDEUNCAwFCyAAQQhqIAEQ1R4MBwsgACgCBCABEIQMDAYLIABBBGogARDODwwFCyAAQQRqIAEQwhwMBAsgAEEEaiABEIotDAMLIABBDGogARCKLQwCCyAAQQRqIAEQiRkMAQsgAEEEaiABELIaCwsMACAAKAIYIAEQqRILDAAgACgCGCABEPUFCwwAIAAoAgAgARCzFAsMACAAKAIAIAEQqhILDAAgACgCACABELQUCwwAIAEgACgCABCwCQsMACAAKAIAIAEQthQLDAAgACgCGCABEKwSCwwAIAAoAhggARD2BQsMACAAKAIAIAEQ0wMLDAAgACgCACABELEaCwwAIAAoAgAgARCEDAsMACAAKAIAIAEQpAwLDAAgACgCACABEL8LCwwAIAAoAgAgARCDDAsMACAAKAIAIAEQpQwLDAAgARDtJiAAEPkaCwwAIAAoAgAgARCpEgsMACAAKAIAIAEQrBILDAAgACgCACABEKsSCwwAIAAoAgAgARCXBQsMACAAKAIAIAEQ8RMLDAAgACgCACABEJgFCwwAIAAoAgAgARDyEwsMACAAKAIAIAEQ1gQLDAAgACgCACABEPMTCwwAIAEgACgCABCSAQsMACABIAAoAgAQ3QMLXAEDfyAAKAIAIgBBDGogACgCCEEGdCECIAAoAgQhAwNAIAIEQCADIAEQmiYgAkFAaiECIANBQGshAwwBCwsgARDBGiAAKAIYQYCAgIB4RwRAIABBGGogARC/GgsLDAAgACgCGCABEJkJCwwAIAAoAgAgARDaBAsMACAAKAIAIAEQ9BMLDAAgACgCACABEPgECwwAIAAoAgAgARD1EwsMACAAKAIAIAEQxQsLDAAgACgCACABEKYMCwwAIAAoAgAgARCICQsMACAAKAIAIAEQsRILCgAgABDvDhpBAQsLACAAIAEQ6w9BAAsMACAAIAEpAhA3AwALCwAgACABEP4HQQALCgAgACABIAIQZwsMACABIAAoAhgQpAELDAAgACgCGCABEP8KCwwAIAAoAgAgARD4AQsMACAAKAIAIAEQ/woLCwAgACABIAIQ6BgLDAAgACgCACABEKgQCwwAIAAoAgAgARC3FQsMACABIAAoAgAQpwMLCwAg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ZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2Foby1jb3Jhc2ljay0xLjEuMy9zcmMvcGFja2VkL3JhYmlua2FycC5ycwBkGxAAbwAAAD0AAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogaGFzaF9sZW4gPj0gMQBkGxAAbwAAAD8AAAAJAAAAZBsQAG8AAABNAAAALAAAAGQbEABvAAAATwAAABcAAABAAAAAZBsQAG8AAABgAAAAKwAAAGQbEABvAAAAbwAAABEAAABkGxAAbwAAAFsAAAAJAAAAZBsQAG8AAACOAAAAIwAAAGQbEABvAAAAlwAAAAkAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9haG8tY29yYXNpY2stMS4xLjMvc3JjL3V0aWwvcmVtYXBwZXIucnOIHBAAbAAAAHIAAAASAAAAiBwQAGwAAACMAAAAJAAAAIgcEABsAAAAkQAAACAAAACIHBAAbAAAAJMAAAAdAAAAQm9ycm93ZWRPd25lZC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2Foby1jb3Jhc2ljay0xLjEuMy9zcmMvcGFja2VkL3BhdHRlcm4ucnMAAEEdEABtAAAAXQAAABoAAABBHRAAbQAAAF0AAAAwAAAAgNAQAGkAAACHAgAAKQAAAGltcG1lbW9yeV91c2FnZQAkAwAADAAAAAQAAAAlAwAAJgMAACcDAABhbGxvYy9zcmMvcmF3X3ZlYy5ycwgeEAAUAAAAGAAAAAUAQbS8wAALfQEAAAAoAwAAYSBmb3JtYXR0aW5nIHRyYWl0IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHdoZW4gdGhlIHVuZGVybHlpbmcgc3RyZWFtIGRpZCBub3RhbGxvYy9zcmMvZm10LnJzAACSHhAAEAAAAH4CAAAOAEG8vcAAC/ICAQAAACkDAABhbGxvYy9zcmMvc2xpY2UucnMAAMQeEAASAAAANQIAADIAAABhbGxvYy9zcmMvc3luYy5ycwAAAOgeEAARAAAAbgEAADIAAAApIHNob3Vs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AgUBBQYCBQcIAQIFAwkABgIFAQkFAwECBQkHBgUGAgUECAgCCAECBQIEBAEEAAYCBQECAgAHAAMBAgUGAQADBQEFBgIFAwAFAQcFBwgBAgUBBQIFCAcICQAGAgUHBgIJAwkEBQMBAgUDCAEEBgkHAgYFBgIFAQkABwMECAYDAggBAgUJBQMGBwQDAQYEAAYCBQQHBggDBwEFCAIAAwECBQIDCAQBCAUHCQEAAQUGAgUBAQkCAAkCCAkFBQAHCAECBQUJBgAEBgQEBwcFAwkABgIFAgkIAAIDAgIDCAcGCQUDAQIFAQQJAAEBBgEBCQMIBAcGBQYCBQcEBQAFCAAFCQYJAgMIAggBAgUDBwIFAgkAAgkIBAYBCQEEAAYCBQEIBgIGBAUBBAkCAwAJBQcAAwECBQkDAQMCAgUHBAYBBQQHCAUBBQYCBQQGBQYGAQIIBwMABwcDCQIFBwgBAgUCAwIIAwAGBAMGBQMIBgkGAggJAAYCBQEBBgQBBQMCAQgCBgkDBAgBBAQFAwECBQUIAgAHBgYACQEDBAYHBAAHAgIGBQYCBQIJAQADCAMABAUGBwMDBwADBgEDAggBAgUBBAUFAQkBBQICCAMGBggFAQgABgYEAAYCBQcCBwUJBQcGAQQBCAMEAgUJAAMDAgADAQIFAwYDBwkHCAgABwAJAQcBAgkFAQYGAAEFBgIFAQgBCAkICQQAAwUEBQgFBgQHBQgDAAAHCAECBQkACQQJBAcAAQcHAgkCCAIDBwkBBQADCQAGAgUEBQQHBAcDBQAICAYEBgQBAQgJBQcFAQkFAwECBQICBwMHAwYHBQQEAwIDAgAFCQQHCAcFCQcGBQYCBQEBAwYIBggDBwcCAQYBBgACCQcDCQMHCQgIAggBAgUFBggEAwQBCAgGAAgACAABBAgGCQYICQkEAQQABgIFAggEAgEHAAkEAwAEAAQAAAcEAwQIBAQJBwAHAAMBAgUBBAIBAAgFBAcBBQIAAgAAAwcBBwQCAgQIBQMFAQUGAgUHAQAFBAIHAwUHBgABAAABCAUIBwEBAgQCBgcFBwgBAgUDBQUCBwEDBgcICAAABQAACQIJAwUFBgIBAwMHCAkABgIFAQcHBgMFBggDCQQAAAIFAAQGBAYHBwgBAAYGCAkEBQMBAgUICAgBBwgEAQkHAAABAgUCAwIDAwgJAAUDAwQEBwIG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XQoAClYd4wpGCgAKZhUAbwAKAApWCoYKAQcACgAXAAoAFAwUbBkAMgAKAAoACvcKAAmACgA7AQMBBEwtAQ8ADQAKAGludmFsaWQgbGVuZ3RoaW52YWxpZCBzeW1ib2xub24temVybyB0cmFpbGluZyBiaXRzaW52YWxpZCBwYWRkaW5nIGxlbmd0aCBhdCAAAAABAAAAAAAAALl7EAAEAAAATGVuZ3RoVHJhaWxpbmdQYWRkaW5nRGVjb2RlRXJyb3Jwb3NpdGlvbi9ydXN0L2RlcHMvaGFzaGJyb3duLTAuMTUuMC9zcmMvcmF3L21vZC5ycwAA+HsQACoAAABUAAAAKAAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2hzdHItMC4yLjE1L3NyYy9nbG9iYWxfc3RvcmUucnM0fBAAZAAAAAsAAAAgAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvaHN0ci0wLjIuMTUvc3JjL2xpYi5yc25vdCB5ZXQgaW1wbGVtZW50ZWQ6IHN0YXRpYyBoYXNoAAN9EAAgAAAAqHwQAFsAAADwAAAAEQAAAG5vdCB5ZXQgaW1wbGVtZW50ZWQ6IHN0YXRpYyBhc19zdHIAADx9EAAiAAAAqHwQAFsAAAAAAQAAEQAAAKh8EABbAAAABQEAADwAAAAAAAAACAAAAAQAAABXAwAAcmV0dXJuIHRoaXMAWAMAAFkDAABaAwAAWwMAAHMxFgBwAAAATQAAAC4AAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9tZW1jaHItMi43LjQvc3JjL2FyY2gvYWxsL3R3b3dheS5yc8R9EABoAAAAvwAAAC4AAADEfRAAaAAAAMcAAAApAAAAxH0QAGgAAADMAAAANAAAAMR9EABoAAAA1AAAACQAAADEfRAAaAAAANQAAAAxAAAAxH0QAGgAAADXAAAAIgAAAMR9EABoAAAA1wAAADMAAADEfRAAaAAAAPEAAAAuAAAAxH0QAGgAAAD4AAAAKQAAAMR9EABoAAAA/QAAADQAAADEfRAAaAAAAAQBAAAYAAAAxH0QAGgAAAAEAQAAJQAAAMR9EABoAAAAwgEAAB0AAADEfRAAaAAAAMMBAAAZAAAAxH0QAGgAAAAKAgAAGwAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL21lbWNoci0yLjcuNC9zcmMvYXJjaC9hbGwvbW9kLnJzAAAAHH8QAGUAAAAsAAAAHgAAADxzZWFyY2hlciBmdW5jdGlvbj4AlH8QABMAAABjYWxsPHNlYXJjaGVyIGtpbmQgdW5pb24+AAAAtH8QABUAAABGaW5kZXJoYXNoAAAqAwAADAAAAAQAAABcAwAAXQMAAF4DAEGAgMIAC6IBAQAAAC4DAAAAAAAACAAAAAQAAADrAgAAYXNzZXJ0aW9uIGZhaWxlZDogbGluZV9yYW5nZS5jb250YWlucygmb2Zmc2V0KQAAQOYXAGsAAADJAwAACQAAAEDmFwBrAAAA0wMAAB4AAABCYWQgdXRmOCBkZXRlY3RlZAAAAEDmFwBrAAAApwQAAEAAAAAqAwAADAAAAAQAAABcAwAAXwMAAF4DAEGsgcIACxUBAAAALgMAAEDmFwBrAAAArQMAAC4AQcyBwgALBgEAAABgAwBB3IHCAAvlBwEAAABhAwAAKgMAAAwAAAAEAAAAXAMAAGIDAABeAwAASW9FcnJvck91dE9mQm91bmRzAADQlxAAbQAAAGgAAABCAAAA0JcQAG0AAABpAAAANAAAANCXEABtAAAAagAAACIAAABQmBAAcAAAAIQAAAAxAAAAUJgQAHAAAACFAAAANAAAAFCYEABwAAAAhwAAACUAAAAAAAAABAAAAAAAAAABAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9tdWx0aXBsaWNhdGlvbi5ycwCAgRAAcwAAACwAAAAcAAAAY2Fycnkgb3ZlcmZsb3cgZHVyaW5nIG11bHRpcGxpY2F0aW9uIQAAAASCEAAlAAAAgIEQAHMAAAA5AAAABQAAAICBEABzAAAARwAAABMAAACAgRAAcwAAAEgAAAAbAAAAgIEQAHMAAABPAAAAEwAAAICBEABzAAAAUAAAABsAAACAgRAAcwAAAC0BAAAmAAAAgIEQAHMAAAAuAQAAJgAAAICBEABzAAAAMQEAACYAAACAgRAAcwAAADIBAAAmAAAAgIEQAHMAAAAzAQAAJgAAAICBEABzAAAAkwEAACcAAACAgRAAcwAAAJIBAAAmAAAAgIEQAHMAAADmAAAAGgAAAICBEABzAAAA5wAAABoAAACAgRAAcwAAAPQAAAAWAAAAgIEQAHMAAAD1AAAAFgAAAICBEABzAAAAAAEAABYAAACAgRAAcwAAABIBAAAeAAAAgIEQAHMAAAAPAQAAHgAAAICBEABzAAAAoAAAAB8AAACAgRAAcwAAAKQAAAAWAAAAgIEQAHMAAABoAAAAHwAAAICBEABzAAAAuQEAAA8AAACAgRAAcwAAALwBAAAPAAAA1JQQAGIAAAAfBAAAAQAAAGNodW5rIHNpemUgbXVzdCBiZSBub24temVybwDEgxAAGwAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1iaWdpbnQtMC40LjYvc3JjL2JpZ3VpbnQvY29udmVydC5yc+iDEABsAAAAMwAAAAoAAADogxAAbAAAAH0AAAANAAAA6IMQAGwAAAB/AAAAGgAAAOiDEABsAAAAhwAAABcAAADogxAAbAAAABYBAAAmAAAA6IMQAGwAAABrAgAAFwAAAOiDEABsAAAA5QIAABwAQdyJwgALBZEb1M8UAEHsicIACxWVc8JIDQAAAAAQv4EMAAAAl5zbdQsAQYyKwgALNZEb1M8KAAAAAMqaOwkAAAArbYuMCQAAAAAAoRkIAAAAIRCfMAgAAAAAwfZXCAAAAIGbwpgIAEHMisIAC3VxRXUYBwAAAIC8fSQHAAAAe2ZHNQcAAAAAQEtMBwAAAB1uWmsHAAAAgOGslAcAAABng/HKBwAAAAAAZAsGAAAAUUqNDgYAAABArmkSBgAAAEmRFxcGAAAAABC5HAYAAACZSHQjBgAAAECocysGAAAAQTvmNAYAQcyLwgAL9QHBPPpMBgAAAEDYE1wGAAAAGbWRbQYAAAAAEL+BBgAAAMng7ZgGAAAAQD53swYAAADRxLvRBgAAAAAAJPQGAAAASdPnBgUAAACgMMoHBQAAALsrwwgFAAAAAGzUCQUAAAD9rP8KBQAAAOC+RgwFAAAA74arDQUAAAAAADAPBQAAAPE61hAFAAAAIF+gEgUAAADjqpAUBQAAAAB0qRYFAAAAJSjtGAUAAABgTV4bBQAAAJeC/x0FAAAAAIDTIAUAAACZF90jBQAAAKA1HycFAAAAC+GcKgUAAAAAPFkuBQAAAE2EVzIFAAAA4BObNgUAAAA/YSc7BQBBzI3CAAv1A0GhKEUFAAAAIBSlSgUAAAAzRnlQBQAAAABEqVYFAAAAdTk5XQUAAABgci1kBQAAAOdaimsFAAAAAIBUcwUAAADpj5B7BQAAAKBaQ4QFAAAAW9JxjQUAAAAADCGXBQAAAJ0/VqEFAAAA4MgWrAUAAACPJ2i3BQAAAAAAUMMFAAAAkRvUzwUAAAAgafrcBQAAAIP9yOoFAAAAABRG+QUAAACxhBwDBAAAABCrQgMEAAAAISxqAwQAAAAAEJMDBAAAAOFevQMEAAAAECHpAwQAAADxXhYEBAAAAAAhRQQEAAAA0W91BAQAAAAQVKcEBAAAAIHW2gQEAAAAAAAQBQQAAACB2UYFBAAAABBsfwUEAAAA0cC5BQQAAAAA4fUFBAAAAPHVMwYEAAAAEKlzBgQAAADhY7UGBAAAAAAQ+QYEAAAAIbc+BwQAAAAQY4YHBAAAALEd0AcEAAAAAPEbCAQAAAAR52kIBAAAABAKuggEAAAAQWQMCQQAAAAAAGEJBAAAAMHntwkEAAAAECYRCgQAAACRxWwKBAAAAADRygoEAAAAMVMrCwQAAAAQV44LBAAAAKHn8wsEAAAAABBcDAQAAABh28YMBAAAABBVNA0EAAAAcYikDQQAAAAAgRcOBAAAAFFKjQ4EAAAAEPAFDwQAAAABfoEPBABBzJHCAAv1BwGCgRAEAAAAEBAGEQQAAABRto0RBAAAAACBGBIEAAAAcXymEgQAAAAQtTcTBAAAAGE3zBMEAAAAABBkFAQAAAChS/8UBAAAABD3nRUEAAAAMR9AFgQAAAAA0eUWBAAAAJEZjxcEAAAAEAY8GAQAAADBo+wYBAAAAAAAoRkEAAAAQShZGgQAAAAQKhUbBAAAABET1RsEAAAAAPGYHAQAAACx0WAdBAAAABDDLB4EAAAAIdP8HgQAAAAAENEfBAAAAOGHqSAEAAAAEEmGIQQAAADxYWciBAAAAADhTCMEAAAA0dQ2JAQAAAAQTCUlBAAAAIFVGCYEAAAAAAAQJwQAAACBWgwoBAAAABB0DSkEAAAA0VsTKgQAAAAAIR4rBAAAAPHSLSwEAAAAEIFCLQQAAADhOlwuBAAAAAAQey8EAAAAIRCfMAQAAAAQS8gxBAAAALHQ9jIEAAAAALEqNAQAAAAR/GM1BAAAABDCojYEAAAAQRPnNwQAAAAAADE5BAAAAMGYgDoEAAAAEO7VOwQAAACREDE9BAAAAAARkj4EAAAAMQD5PwQAAAAQ72VBBAAAAKHu2EIEAAAAABBSRAQAAABhZNFFBAAAABD9VkcEAAAAceviSAQAAAAAQXVKBAAAAFEPDkwEAAAAEGitTQQAAAABXVNPBAAAAAAAAFEEAAAAAWOzUgQAAAAQmG1UBAAAAFGxLlYEAAAAAMH2VwQAAABx2cVZBAAAABANnFsEAAAAYW55XQQAAAAAEF5fBAAAAKEESmEEAAAAEF89YwQAAAAxMjhlBAAAAACROmcEAAAAkY5EaQQAAAAQPlZrBAAAAMGyb20EAAAAAACRbwQAAABBObpxBAAAABBy63MEAAAAEb4kdgQAAAAAMWZ4BAAAALHer3oEAAAAENsBfQQAAAAhOlx/BAAAAAAQv4EEAAAA4XAqhAQAAAAQcZ6GBAAAAPEkG4kEAAAAAKGgiwQAAADR+S6OBAAAABBExpAEAAAAgZRmkwQAAAAAABCWBAAAAIGbwpgEAAAAEHx+mwQAAADRtkOeBAAAAABhEqEEAAAA8Y/qowQAAAAQWcymBAAAAOHRt6kEAAAAABCtrAQAAAAhKayvBAAAABAztbIEAAAAsUPItQQAAAAAceW4BAAAABHRDLwEAAAAEHo+vwQAAABBgnrCBAAAAAAAwcUEAAAAwQkSyQQAAAAQtm3MBAAAAJEb1M8EAAAAAFFF0wQAAAAxbcHWBAAAABCHSNoEAAAAobXa3QQAAAAAEHjhBAAAAGGtIOUEAAAAEKXU6AQAAABxDpTsBAAAAAABX/AEAAAAUZQ19AQAAAAQ4Bf4BAAAAAH8BfwEAEHkmcIACwWp5gAACgBB9JnCAAsVCT0AAAYAAABAtgAABgAAAKdBAAAFAEGUmsIACzWp5gAABQAAABAnAAAEAAAAMTkAAAQAAAAAUQAABAAAAJFvAAAEAAAAEJYAAAQAAADBxQAABABB1JrCAAt1MRMAAAMAAADIFgAAAwAAAMsaAAADAAAAQB8AAAMAAAAtJAAAAwAAAJgpAAADAAAAhy8AAAMAAAAANgAAAwAAAAk9AAADAAAAqEQAAAMAAADjTAAAAwAAAMBVAAADAAAARV8AAAMAAAB4aQAAAwAAAF90AAADAEHUm8IAC/UBYYwAAAMAAACImQAAAwAAAHunAAADAAAAQLYAAAMAAADdxQAAAwAAAFjWAAADAAAAt+cAAAMAAAAA+gAAAwAAAJEGAAACAAAA5AYAAAIAAAA5BwAAAgAAAJAHAAACAAAA6QcAAAIAAABECAAAAgAAAKEIAAACAAAAAAkAAAIAAABhCQAAAgAAAMQJAAACAAAAKQoAAAIAAACQCgAAAgAAAPkKAAACAAAAZAsAAAIAAADRCwAAAgAAAEAMAAACAAAAsQwAAAIAAAAkDQAAAgAAAJkNAAACAAAAEA4AAAIAAACJDgAAAgAAAAQPAAACAAAAgQ8AAAIAQdSdwgAL9QOBEAAAAgAAAAQRAAACAAAAiREAAAIAAAAQEgAAAgAAAJkSAAACAAAAJBMAAAIAAACxEwAAAgAAAEAUAAACAAAA0RQAAAIAAABkFQAAAgAAAPkVAAACAAAAkBYAAAIAAAApFwAAAgAAAMQXAAACAAAAYRgAAAIAAAAAGQAAAgAAAKEZAAACAAAARBoAAAIAAADpGgAAAgAAAJAbAAACAAAAORwAAAIAAADkHAAAAgAAAJEdAAACAAAAQB4AAAIAAADxHgAAAgAAAKQfAAACAAAAWSAAAAIAAAAQIQAAAgAAAMkhAAACAAAAhCIAAAIAAABBIwAAAgAAAAAkAAACAAAAwSQAAAIAAACEJQAAAgAAAEkmAAACAAAAECcAAAIAAADZJwAAAgAAAKQoAAACAAAAcSkAAAIAAABAKgAAAgAAABErAAACAAAA5CsAAAIAAAC5LAAAAgAAAJAtAAACAAAAaS4AAAIAAABELwAAAgAAACEwAAACAAAAADEAAAIAAADhMQAAAgAAAMQyAAACAAAAqTMAAAIAAACQNAAAAgAAAHk1AAACAAAAZDYAAAIAAABRNwAAAgAAAEA4AAACAAAAMTkAAAIAAAAkOgAAAgAAABk7AAACAAAAEDwAAAIAAAAJPQAAAgAAAAQ+AAACAAAAAT8AAAIAQdShwgAL9QcBQQAAAgAAAARCAAACAAAACUMAAAIAAAAQRAAAAgAAABlFAAACAAAAJEYAAAIAAAAxRwAAAgAAAEBIAAACAAAAUUkAAAIAAABkSgAAAgAAAHlLAAACAAAAkEwAAAIAAACpTQAAAgAAAMROAAACAAAA4U8AAAIAAAAAUQAAAgAAACFSAAACAAAARFMAAAIAAABpVAAAAgAAAJBVAAACAAAAuVYAAAIAAADkVwAAAgAAABFZAAACAAAAQFoAAAIAAABxWwAAAgAAAKRcAAACAAAA2V0AAAIAAAAQXwAAAgAAAElgAAACAAAAhGEAAAIAAADBYgAAAgAAAABkAAACAAAAQWUAAAIAAACEZgAAAgAAAMlnAAACAAAAEGkAAAIAAABZagAAAgAAAKRrAAACAAAA8WwAAAIAAABAbgAAAgAAAJFvAAACAAAA5HAAAAIAAAA5cgAAAgAAAJBzAAACAAAA6XQAAAIAAABEdgAAAgAAAKF3AAACAAAAAHkAAAIAAABhegAAAgAAAMR7AAACAAAAKX0AAAIAAACQfgAAAgAAAPl/AAACAAAAZIEAAAIAAADRggAAAgAAAECEAAACAAAAsYUAAAIAAAAkhwAAAgAAAJmIAAACAAAAEIoAAAIAAACJiwAAAgAAAASNAAACAAAAgY4AAAIAAAAAkAAAAgAAAIGRAAACAAAABJMAAAIAAACJlAAAAgAAABCWAAACAAAAmZcAAAIAAAAkmQAAAgAAALGaAAACAAAAQJwAAAIAAADRnQAAAgAAAGSfAAACAAAA+aAAAAIAAACQogAAAgAAACmkAAACAAAAxKUAAAIAAABhpwAAAgAAAACpAAACAAAAoaoAAAIAAABErAAAAgAAAOmtAAACAAAAkK8AAAIAAAA5sQAAAgAAAOSyAAACAAAAkbQAAAIAAABAtgAAAgAAAPG3AAACAAAApLkAAAIAAABZuwAAAgAAABC9AAACAAAAyb4AAAIAAACEwAAAAgAAAEHCAAACAAAAAMQAAAIAAADBxQAAAgAAAITHAAACAAAASckAAAIAAAAQywAAAgAAANnMAAACAAAApM4AAAIAAABx0AAAAgAAAEDSAAACAAAAEdQAAAIAAADk1QAAAgAAALnXAAACAAAAkNkAAAIAAABp2wAAAgAAAETdAAACAAAAId8AAAIAAAAA4QAAAgAAAOHiAAACAAAAxOQAAAIAAACp5gAAAgAAAJDoAAACAAAAeeoAAAIAAABk7AAAAgAAAFHuAAACAAAAQPAAAAIAAAAx8gAAAgAAACT0AAACAAAAGfYAAAIAAAAQ+AAAAgAAAAn6AAACAAAABPwAAAIAAAAB/gAAAgBB1KnCAAvKUS9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1pbnRlZ2VyLTAuMS40Ni9zcmMvbGliLnJzAADUlBAAYgAAAB4EAAABAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9kaXZpc2lvbi5ycwAAAEiVEABtAAAAHAAAAAYAAABhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvAAAAyJUQABkAAABIlRAAbQAAAFcAAAAJAAAASJUQAG0AAADdAAAAOQAAAEiVEABtAAAA0gAAAAkAAABIlRAAbQAAABUBAAAOAAAASJUQAG0AAAAWAQAADgAAAEiVEABtAAAAIAEAACEAAABIlRAAbQAAACEBAAAYAAAASJUQAG0AAABCAQAAPAAAAEiVEABtAAAARgEAACkAAABIlRAAbQAAAEsBAAAPAAAASJUQAG0AAABOAQAAGwAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1iaWdpbnQtMC40LjYvc3JjL2JpZ3VpbnQvc2hpZnQucnMAAJyWEABqAAAAKAAAABkAAACclhAAagAAAEoAAAAjAAAAbmVnYXRpdmUgdmFsdWVzIGFyZSBub24temVyby9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1iaWdpbnQtMC40LjYvc3JjL2JpZ2ludC9zaGlmdC5ycwAAAESXEABpAAAAZgAAACgAAAAAAAAABAAAAAQAAABAAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvbnVtLWJpZ2ludC0wLjQuNi9zcmMvYmlndWludC9hZGRpdGlvbi5ycwAAANCXEABtAAAAOwAAABoAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9udW0tYmlnaW50LTAuNC42L3NyYy9iaWd1aW50L3N1YnRyYWN0aW9uLnJzUJgQAHAAAAA0AAAAGgAAAFCYEABwAAAANQAAABoAAABDYW5ub3Qgc3VidHJhY3QgYiBmcm9tIGEgYmVjYXVzZSBiIGlzIGxhcmdlciB0aGFuIGEu4JgQADQAAABQmBAAcAAAAEUAAAAFAAAAUJgQAHAAAABdAAAAGgAAAFCYEABwAAAAXgAAABoAAABhc3NlcnRpb24gZmFpbGVkOiBhX2hpLmlzX2VtcHR5KCkAAABQmBAAcAAAAGIAAAAFAAAAUJgQAHAAAABlAAAABQAAAC9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvY29yZS9zcmMvc2xpY2UvaXRlci5ycwAAkJkQAE4AAADxBQAAFQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL251bS1pbnRlZ2VyLTAuMS40Ni9zcmMvcm9vdHMucnPwmRAAZAAAAIMBAAABAAAAAAAAAAQAAAAEAAAAQAAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL29uY2VfY2VsbC0xLjE5LjAvc3JjL2ltcF9zdGQucnN0mhAAZAAAAKEAAAA2AAAAdJoQAGQAAACbAAAACQAAADM4OzI7AAAA+JoQAAUAAAD5FxgAAQAAAPkXGAABAAAANDg7MjsAAAAYmxAABQAAAPkXGAABAAAA+RcYAAEAAAAbWzEyMzQ1Njc4ORtbMG0AQ5sQAAQAAAAzMDMxMzIzMzM0MzUzNjM3Mzk5MDkxOTI5Mzk0OTU5Njk3NDA0MTQyNDM0NDQ1NDY0NzQ5MTAwMTAxMTAyMTAzMTA0MTA1MTA2MTA3Mzg7MjsyNDA7MjQ4OzI1NTM4OzI7MjUwOzIzNTsyMTUzODsyOzAwMDsyNTU7MjU1Mzg7MjsxMjc7MjU1OzIxMjM4OzI7MjQwOzI1NTsyNTUzODsyOzI0NTsyNDU7MjIwMzg7MjsyNTU7MjI4OzE5NjM4OzI7MDAwOzAwMDswMDAzODsyOzI1NTsyMzU7MjA1Mzg7MjswMDA7MDAwOzI1NTM4OzI7MTM4OzA0MzsyMjYzODsyOzE2NTswNDI7MDQyMzg7MjsyMjI7MTg0OzEzNTM4OzI7MDk1OzE1ODsxNjAzODsyOzEyNzsyNTU7MDAwMzg7MjsyMTA7MTA1OzAzMDM4OzI7MjU1OzEyNzswODAzODsyOzEwMDsxNDk7MjM3Mzg7MjsyNTU7MjQ4OzIyMDM4OzI7MjIwOzAyMDswNjAzODsyOzAwMDswMDA7MTM5Mzg7MjswMDA7MTM5OzEzOTM4OzI7MTg0OzEzNDswMTEzODsyOzE2OTsxNjk7MTY5Mzg7MjswMDA7MTAwOzAwMDM4OzI7MTg5OzE4MzsxMDczODsyOzEzOTswMDA7MTM5Mzg7MjswODU7MTA3OzA0NzM4OzI7MjU1OzE0MDswMDAzODsyOzE1MzswNTA7MjA0Mzg7MjsxMzk7MDAwOzAwMDM4OzI7MjMzOzE1MDsxMjIzODsyOzE0MzsxODg7MTQzMzg7MjswNzI7MDYxOzEzOTM4OzI7MDQ3OzA3OTswNzkzODsyOzAwMDsyMDY7MjA5Mzg7MjsxNDg7MDAwOzIxMTM4OzI7MjU1OzAyMDsxNDczODsyOzAwMDsxOTE7MjU1Mzg7MjsxMDU7MTA1OzEwNTM4OzI7MDMwOzE0NDsyNTUzODsyOzE3ODswMzQ7MDM0Mzg7MjsyNTU7MjUwOzI0MDM4OzI7MDM0OzEzOTswMzQzODsyOzI1NTswMDA7MjU1Mzg7MjsyMjA7MjIwOzIyMDM4OzI7MjQ4OzI0ODsyNTUzODsyOzI1NTsyMTU7MDAwMzg7MjsyMTg7MTY1OzAzMjM4OzI7MTI4OzEyODsxMjgzODsyOzAwMDsxMjg7MDAwMzg7MjsxNzM7MjU1OzA0NzM4OzI7MjQwOzI1NTsyNDAzODsyOzI1NTsxMDU7MTgwMzg7MjsyMDU7MDkyOzA5MjM4OzI7MDc1OzAwMDsxMzAzODsyOzI1NTsyNTU7MjQwMzg7MjsyNDA7MjMwOzE0MDM4OzI7MjMwOzIzMDsyNTAzODsyOzI1NTsyNDA7MjQ1Mzg7MjsxMjQ7MjUyOzAwMDM4OzI7MjU1OzI1MDsyMDUzODsyOzE3MzsyMTY7MjMwMzg7MjsyNDA7MTI4OzEyODM4OzI7MjI0OzI1NTsyNTUzODsyOzI1MDsyNTA7MjEwMzg7MjsyMTE7MjExOzIxMTM4OzI7MTQ0OzIzODsxNDQzODsyOzI1NTsxODI7MTkzMzg7MjsyNTU7MTYwOzEyMjM4OzI7MDMyOzE3ODsxNzAzODsyOzEzNTsyMDY7MjUwMzg7MjsxMTk7MTM2OzE1MzM4OzI7MTc2OzE5NjsyMjIzODsyOzI1NTsyNTU7MjI0Mzg7MjswMDA7MjU1OzAwMDM4OzI7MDUwOzIwNTswNTAzODsyOzI1MDsyNDA7MjMwMzg7MjsxMjg7MDAwOzAwMDM4OzI7MTAyOzIwNTsxNzAzODsyOzAwMDswMDA7MjA1Mzg7MjsxODY7MDg1OzIxMTM4OzI7MTQ3OzExMjsyMTkzODsyOzA2MDsxNzk7MTEzMzg7MjsxMjM7MTA0OzIzODM4OzI7MDAwOzI1MDsxNTQzODsyOzA3MjsyMDk7MjA0Mzg7MjsxOTk7MDIxOzEzMzM4OzI7MDI1OzAyNTsxMTIzODsyOzI0NTsyNTU7MjUwMzg7MjsyNTU7MjI4OzIyNTM4OzI7MjU1OzIyODsxODEzODsyOzI1NTsyMjI7MTczMzg7MjswMDA7MDAwOzEyODM4OzI7MjUzOzI0NTsyMzAzODsyOzEyODsxMjg7MDAwMzg7MjsxMDc7MTQyOzAzNTM4OzI7MjU1OzE2NTswMDAzODsyOzI1NTswNjk7MDAwMzg7MjsyMTg7MTEyOzIxNDM4OzI7MjM4OzIzMjsxNzAzODsyOzE1MjsyNTE7MTUyMzg7MjsxNzU7MjM4OzIzODM4OzI7MjE5OzExMjsxNDczODsyOzI1NTsyMzk7MjEzMzg7MjsyNTU7MjE4OzE4NTM4OzI7MjA1OzEzMzswNjMzODsyOzI1NTsxOTI7MjAzMzg7MjsyMjE7MTYwOzIyMTM4OzI7MTc2OzIyNDsyMzAzODsyOzEyODswMDA7MTI4Mzg7MjsxMDI7MDUxOzE1MzM4OzI7MjU1OzAwMDswMDAzODsyOzE4ODsxNDM7MTQzMzg7MjswNjU7MTA1OzIyNTM4OzI7MTM5OzA2OTswMTkzODsyOzI1MDsxMjg7MTE0Mzg7MjsyNDQ7MTY0OzA5NjM4OzI7MDQ2OzEzOTswODczODsyOzI1NTsyNDU7MjM4Mzg7MjsxNjA7MDgyOzA0NTM4OzI7MTkyOzE5MjsxOTIzODsyOzEzNTsyMDY7MjM1Mzg7MjsxMDY7MDkwOzIwNTM4OzI7MTEyOzEyODsxNDQzODsyOzI1NTsyNTA7MjUwMzg7MjswMDA7MjU1OzEyNzM4OzI7MDcwOzEzMDsxODAzODsyOzIxMDsxODA7MTQwMzg7MjswMDA7MTI4OzEyODM4OzI7MjE2OzE5MTsyMTYzODsyOzI1NTswOTk7MDcxMzg7MjswNjQ7MjI0OzIwODM4OzI7MjM4OzEzMDsyMzgzODsyOzI0NTsyMjI7MTc5Mzg7MjsyNTU7MjU1OzI1NTM4OzI7MjQ1OzI0NTsyNDUzODsyOzI1NTsyNTU7MDAwMzg7MjsxNTQ7MjA1OzA1MDQ4OzI7MjQwOzI0ODsyNTU0ODsyOzI1MDsyMzU7MjE1NDg7MjswMDA7MjU1OzI1NTQ4OzI7MTI3OzI1NTsyMTI0ODsyOzI0MDsyNTU7MjU1NDg7MjsyNDU7MjQ1OzIyMDQ4OzI7MjU1OzIyODsxOTY0ODsyOzAwMDswMDA7MDAwNDg7MjsyNTU7MjM1OzIwNTQ4OzI7MDAwOzAwMDsyNTU0ODsyOzEzODswNDM7MjI2NDg7MjsxNjU7MDQyOzA0MjQ4OzI7MjIyOzE4NDsxMzU0ODsyOzA5NTsxNTg7MTYwNDg7MjsxMjc7MjU1OzAwMDQ4OzI7MjEwOzEwNTswMzA0ODsyOzI1NTsxMjc7MDgwNDg7MjsxMDA7MTQ5OzIzNzQ4OzI7MjU1OzI0ODsyMjA0ODsyOzIyMDswMjA7MDYwNDg7MjswMDA7MDAwOzEzOTQ4OzI7MDAwOzEzOTsxMzk0ODsyOzE4NDsxMzQ7MDExNDg7MjsxNjk7MTY5OzE2OTQ4OzI7MDAwOzEwMDswMDA0ODsyOzE4OTsxODM7MTA3NDg7MjsxMzk7MDAwOzEzOTQ4OzI7MDg1OzEwNzswNDc0ODsyOzI1NTsxNDA7MDAwNDg7MjsxNTM7MDUwOzIwNDQ4OzI7MTM5OzAwMDswMDA0ODsyOzIzMzsxNTA7MTIyNDg7MjsxNDM7MTg4OzE0MzQ4OzI7MDcyOzA2MTsxMzk0ODsyOzA0NzswNzk7MDc5NDg7MjswMDA7MjA2OzIwOTQ4OzI7MTQ4OzAwMDsyMTE0ODsyOzI1NTswMjA7MTQ3NDg7MjswMDA7MTkxOzI1NTQ4OzI7MTA1OzEwNTsxMDU0ODsyOzAzMDsxNDQ7MjU1NDg7MjsxNzg7MDM0OzAzNDQ4OzI7MjU1OzI1MDsyNDA0ODsyOzAzNDsxMzk7MDM0NDg7MjsyNTU7MDAwOzI1NTQ4OzI7MjIwOzIyMDsyMjA0ODsyOzI0ODsyNDg7MjU1NDg7MjsyNTU7MjE1OzAwMDQ4OzI7MjE4OzE2NTswMzI0ODsyOzEyODsxMjg7MTI4NDg7MjswMDA7MTI4OzAwMDQ4OzI7MTczOzI1NTswNDc0ODsyOzI0MDsyNTU7MjQwNDg7MjsyNTU7MTA1OzE4MDQ4OzI7MjA1OzA5MjswOTI0ODsyOzA3NTswMDA7MTMwNDg7MjsyNTU7MjU1OzI0MDQ4OzI7MjQwOzIzMDsxNDA0ODsyOzIzMDsyMzA7MjUwNDg7MjsyNTU7MjQwOzI0NTQ4OzI7MTI0OzI1MjswMDA0ODsyOzI1NTsyNTA7MjA1NDg7MjsxNzM7MjE2OzIzMDQ4OzI7MjQwOzEyODsxMjg0ODsyOzIyNDsyNTU7MjU1NDg7MjsyNTA7MjUwOzIxMDQ4OzI7MjExOzIxMTsyMTE0ODsyOzE0NDsyMzg7MTQ0NDg7MjsyNTU7MTgyOzE5MzQ4OzI7MjU1OzE2MDsxMjI0ODsyOzAzMjsxNzg7MTcwNDg7MjsxMzU7MjA2OzI1MDQ4OzI7MTE5OzEzNjsxNTM0ODsyOzE3NjsxOTY7MjIyNDg7MjsyNTU7MjU1OzIyNDQ4OzI7MDAwOzI1NTswMDA0ODsyOzA1MDsyMDU7MDUwNDg7MjsyNTA7MjQwOzIzMDQ4OzI7MTI4OzAwMDswMDA0ODsyOzEwMjsyMDU7MTcwNDg7MjswMDA7MDAwOzIwNTQ4OzI7MTg2OzA4NTsyMTE0ODsyOzE0NzsxMTI7MjE5NDg7MjswNjA7MTc5OzExMzQ4OzI7MTIzOzEwNDsyMzg0ODsyOzAwMDsyNTA7MTU0NDg7MjswNzI7MjA5OzIwNDQ4OzI7MTk5OzAyMTsxMzM0ODsyOzAyNTswMjU7MTEyNDg7MjsyNDU7MjU1OzI1MDQ4OzI7MjU1OzIyODsyMjU0ODsyOzI1NTsyMjg7MTgxNDg7MjsyNTU7MjIyOzE3MzQ4OzI7MDAwOzAwMDsxMjg0ODsyOzI1MzsyNDU7MjMwNDg7MjsxMjg7MTI4OzAwMDQ4OzI7MTA3OzE0MjswMzU0ODsyOzI1NTsxNjU7MDAwNDg7MjsyNTU7MDY5OzAwMDQ4OzI7MjE4OzExMjsyMTQ0ODsyOzIzODsyMzI7MTcwNDg7MjsxNTI7MjUxOzE1MjQ4OzI7MTc1OzIzODsyMzg0ODsyOzIxOTsxMTI7MTQ3NDg7MjsyNTU7MjM5OzIxMzQ4OzI7MjU1OzIxODsxODU0ODsyOzIwNTsxMzM7MDYzNDg7MjsyNTU7MTkyOzIwMzQ4OzI7MjIxOzE2MDsyMjE0ODsyOzE3NjsyMjQ7MjMwNDg7MjsxMjg7MDAwOzEyODQ4OzI7MTAyOzA1MTsxNTM0ODsyOzI1NTswMDA7MDAwNDg7MjsxODg7MTQzOzE0MzQ4OzI7MDY1OzEwNTsyMjU0ODsyOzEzOTswNjk7MDE5NDg7MjsyNTA7MTI4OzExNDQ4OzI7MjQ0OzE2NDswOTY0ODsyOzA0NjsxMzk7MDg3NDg7MjsyNTU7MjQ1OzIzODQ4OzI7MTYwOzA4MjswNDU0ODsyOzE5MjsxOTI7MTkyNDg7MjsxMzU7MjA2OzIzNTQ4OzI7MTA2OzA5MDsyMDU0ODsyOzExMjsxMjg7MTQ0NDg7MjsyNTU7MjUwOzI1MDQ4OzI7MDAwOzI1NTsxMjc0ODsyOzA3MDsxMzA7MTgwNDg7MjsyMTA7MTgwOzE0MDQ4OzI7MDAwOzEyODsxMjg0ODsyOzIxNjsxOTE7MjE2NDg7MjsyNTU7MDk5OzA3MTQ4OzI7MDY0OzIyNDsyMDg0ODsyOzIzODsxMzA7MjM4NDg7MjsyNDU7MjIyOzE3OTQ4OzI7MjU1OzI1NTsyNTU0ODsyOzI0NTsyNDU7MjQ1NDg7MjsyNTU7MjU1OzAwMDQ4OzI7MTU0OzIwNTswNTAzODs1OzAzODs1OzEzODs1OzIzODs1OzMzODs1OzQzODs1OzUzODs1OzYzODs1OzczODs1OzgzODs1OzkzODs1OzEwMzg7NTsxMTM4OzU7MTIzODs1OzEzMzg7NTsxNDM4OzU7MTUzODs1OzE2Mzg7NTsxNzM4OzU7MTgzODs1OzE5Mzg7NTsyMDM4OzU7MjEzODs1OzIyMzg7NTsyMzM4OzU7MjQzODs1OzI1Mzg7NTsyNjM4OzU7MjczODs1OzI4Mzg7NTsyOTM4OzU7MzAzODs1OzMxMzg7NTszMjM4OzU7MzMzODs1OzM0Mzg7NTszNTM4OzU7MzYzODs1OzM3Mzg7NTszODM4OzU7MzkzODs1OzQwMzg7NTs0MTM4OzU7NDIzODs1OzQzMzg7NTs0NDM4OzU7NDUzODs1OzQ2Mzg7NTs0NzM4OzU7NDgzODs1OzQ5Mzg7NTs1MDM4OzU7NTEzODs1OzUyMzg7NTs1MzM4OzU7NTQzODs1OzU1Mzg7NTs1NjM4OzU7NTczODs1OzU4Mzg7NTs1OTM4OzU7NjAzODs1OzYxMzg7NTs2MjM4OzU7NjMzODs1OzY0Mzg7NTs2NTM4OzU7NjYzODs1OzY3Mzg7NTs2ODM4OzU7NjkzODs1OzcwMzg7NTs3MTM4OzU7NzIzODs1OzczMzg7NTs3NDM4OzU7NzUzODs1Ozc2Mzg7NTs3NzM4OzU7NzgzODs1Ozc5Mzg7NTs4MDM4OzU7ODEzODs1OzgyMzg7NTs4MzM4OzU7ODQzODs1Ozg1Mzg7NTs4NjM4OzU7ODczODs1Ozg4Mzg7NTs4OTM4OzU7OTAzODs1OzkxMzg7NTs5MjM4OzU7OTMzODs1Ozk0Mzg7NTs5NTM4OzU7OTYzODs1Ozk3Mzg7NTs5ODM4OzU7OTkzODs1OzEwMDM4OzU7MTAxMzg7NTsxMDIzODs1OzEwMzM4OzU7MTA0Mzg7NTsxMDUzODs1OzEwNjM4OzU7MTA3Mzg7NTsxMDgzODs1OzEwOTM4OzU7MTEwMzg7NTsxMTEzODs1OzExMjM4OzU7MTEzMzg7NTsxMTQzODs1OzExNTM4OzU7MTE2Mzg7NTsxMTczODs1OzExODM4OzU7MTE5Mzg7NTsxMjAzODs1OzEyMTM4OzU7MTIyMzg7NTsxMjMzODs1OzEyNDM4OzU7MTI1Mzg7NTsxMjYzODs1OzEyNzM4OzU7MTI4Mzg7NTsxMjkzODs1OzEzMDM4OzU7MTMxMzg7NTsxMzIzODs1OzEzMzM4OzU7MTM0Mzg7NTsxMzUzODs1OzEzNjM4OzU7MTM3Mzg7NTsxMzgzODs1OzEzOTM4OzU7MTQwMzg7NTsxNDEzODs1OzE0MjM4OzU7MTQzMzg7NTsxNDQzODs1OzE0NTM4OzU7MTQ2Mzg7NTsxNDczODs1OzE0ODM4OzU7MTQ5Mzg7NTsxNTAzODs1OzE1MTM4OzU7MTUyMzg7NTsxNTMzODs1OzE1NDM4OzU7MTU1Mzg7NTsxNTYzODs1OzE1NzM4OzU7MTU4Mzg7NTsxNTkzODs1OzE2MDM4OzU7MTYxMzg7NTsxNjIzODs1OzE2MzM4OzU7MTY0Mzg7NTsxNjUzODs1OzE2NjM4OzU7MTY3Mzg7NTsxNjgzODs1OzE2OTM4OzU7MTcwMzg7NTsxNzEzODs1OzE3MjM4OzU7MTczMzg7NTsxNzQzODs1OzE3NTM4OzU7MTc2Mzg7NTsxNzczODs1OzE3ODM4OzU7MTc5Mzg7NTsxODAzODs1OzE4MTM4OzU7MTgyMzg7NTsxODMzODs1OzE4NDM4OzU7MTg1Mzg7NTsxODYzODs1OzE4NzM4OzU7MTg4Mzg7NTsxODkzODs1OzE5MDM4OzU7MTkxMzg7NTsxOTIzODs1OzE5MzM4OzU7MTk0Mzg7NTsxOTUzODs1OzE5NjM4OzU7MTk3Mzg7NTsxOTgzODs1OzE5OTM4OzU7MjAwMzg7NTsyMDEzODs1OzIwMjM4OzU7MjAzMzg7NTsyMDQzODs1OzIwNTM4OzU7MjA2Mzg7NTsyMDczODs1OzIwODM4OzU7MjA5Mzg7NTsyMTAzODs1OzIxMTM4OzU7MjEyMzg7NTsyMTMzODs1OzIxNDM4OzU7MjE1Mzg7NTsyMTYzODs1OzIxNzM4OzU7MjE4Mzg7NTsyMTkzODs1OzIyMDM4OzU7MjIxMzg7NTsyMjIzODs1OzIyMzM4OzU7MjI0Mzg7NTsyMjUzODs1OzIyNjM4OzU7MjI3Mzg7NTsyMjgzODs1OzIyOTM4OzU7MjMwMzg7NTsyMzEzODs1OzIzMjM4OzU7MjMzMzg7NTsyMzQzODs1OzIzNTM4OzU7MjM2Mzg7NTsyMzczODs1OzIzODM4OzU7MjM5Mzg7NTsyNDAzODs1OzI0MTM4OzU7MjQyMzg7NTsyNDMzODs1OzI0NDM4OzU7MjQ1Mzg7NTsyNDYzODs1OzI0NzM4OzU7MjQ4Mzg7NTsyNDkzODs1OzI1MDM4OzU7MjUxMzg7NTsyNTIzODs1OzI1MzM4OzU7MjU0Mzg7NTsyNTU0ODs1OzA0ODs1OzE0ODs1OzI0ODs1OzM0ODs1OzQ0ODs1OzU0ODs1OzY0ODs1Ozc0ODs1Ozg0ODs1Ozk0ODs1OzEwNDg7NTsxMTQ4OzU7MTI0ODs1OzEzNDg7NTsxNDQ4OzU7MTU0ODs1OzE2NDg7NTsxNzQ4OzU7MTg0ODs1OzE5NDg7NTsyMDQ4OzU7MjE0ODs1OzIyNDg7NTsyMzQ4OzU7MjQ0ODs1OzI1NDg7NTsyNjQ4OzU7Mjc0ODs1OzI4NDg7NTsyOTQ4OzU7MzA0ODs1OzMxNDg7NTszMjQ4OzU7MzM0ODs1OzM0NDg7NTszNTQ4OzU7MzY0ODs1OzM3NDg7NTszODQ4OzU7Mzk0ODs1OzQwNDg7NTs0MTQ4OzU7NDI0ODs1OzQzNDg7NTs0NDQ4OzU7NDU0ODs1OzQ2NDg7NTs0NzQ4OzU7NDg0ODs1OzQ5NDg7NTs1MDQ4OzU7NTE0ODs1OzUyNDg7NTs1MzQ4OzU7NTQ0ODs1OzU1NDg7NTs1NjQ4OzU7NTc0ODs1OzU4NDg7NTs1OTQ4OzU7NjA0ODs1OzYxNDg7NTs2MjQ4OzU7NjM0ODs1OzY0NDg7NTs2NTQ4OzU7NjY0ODs1OzY3NDg7NTs2ODQ4OzU7Njk0ODs1OzcwNDg7NTs3MTQ4OzU7NzI0ODs1OzczNDg7NTs3NDQ4OzU7NzU0ODs1Ozc2NDg7NTs3NzQ4OzU7Nzg0ODs1Ozc5NDg7NTs4MDQ4OzU7ODE0ODs1OzgyNDg7NTs4MzQ4OzU7ODQ0ODs1Ozg1NDg7NTs4NjQ4OzU7ODc0ODs1Ozg4NDg7NTs4OTQ4OzU7OTA0ODs1OzkxNDg7NTs5MjQ4OzU7OTM0ODs1Ozk0NDg7NTs5NTQ4OzU7OTY0ODs1Ozk3NDg7NTs5ODQ4OzU7OTk0ODs1OzEwMDQ4OzU7MTAxNDg7NTsxMDI0ODs1OzEwMzQ4OzU7MTA0NDg7NTsxMDU0ODs1OzEwNjQ4OzU7MTA3NDg7NTsxMDg0ODs1OzEwOTQ4OzU7MTEwNDg7NTsxMTE0ODs1OzExMjQ4OzU7MTEzNDg7NTsxMTQ0ODs1OzExNTQ4OzU7MTE2NDg7NTsxMTc0ODs1OzExODQ4OzU7MTE5NDg7NTsxMjA0ODs1OzEyMTQ4OzU7MTIyNDg7NTsxMjM0ODs1OzEyNDQ4OzU7MTI1NDg7NTsxMjY0ODs1OzEyNzQ4OzU7MTI4NDg7NTsxMjk0ODs1OzEzMDQ4OzU7MTMxNDg7NTsxMzI0ODs1OzEzMzQ4OzU7MTM0NDg7NTsxMzU0ODs1OzEzNjQ4OzU7MTM3NDg7NTsxMzg0ODs1OzEzOTQ4OzU7MTQwNDg7NTsxNDE0ODs1OzE0MjQ4OzU7MTQzNDg7NTsxNDQ0ODs1OzE0NTQ4OzU7MTQ2NDg7NTsxNDc0ODs1OzE0ODQ4OzU7MTQ5NDg7NTsxNTA0ODs1OzE1MTQ4OzU7MTUyNDg7NTsxNTM0ODs1OzE1NDQ4OzU7MTU1NDg7NTsxNTY0ODs1OzE1NzQ4OzU7MTU4NDg7NTsxNTk0ODs1OzE2MDQ4OzU7MTYxNDg7NTsxNjI0ODs1OzE2MzQ4OzU7MTY0NDg7NTsxNjU0ODs1OzE2NjQ4OzU7MTY3NDg7NTsxNjg0ODs1OzE2OTQ4OzU7MTcwNDg7NTsxNzE0ODs1OzE3MjQ4OzU7MTczNDg7NTsxNzQ0ODs1OzE3NTQ4OzU7MTc2NDg7NTsxNzc0ODs1OzE3ODQ4OzU7MTc5NDg7NTsxODA0ODs1OzE4MTQ4OzU7MTgyNDg7NTsxODM0ODs1OzE4NDQ4OzU7MTg1NDg7NTsxODY0ODs1OzE4NzQ4OzU7MTg4NDg7NTsxODk0ODs1OzE5MDQ4OzU7MTkxNDg7NTsxOTI0ODs1OzE5MzQ4OzU7MTk0NDg7NTsxOTU0ODs1OzE5NjQ4OzU7MTk3NDg7NTsxOTg0ODs1OzE5OTQ4OzU7MjAwNDg7NTsyMDE0ODs1OzIwMjQ4OzU7MjAzNDg7NTsyMDQ0ODs1OzIwNTQ4OzU7MjA2NDg7NTsyMDc0ODs1OzIwODQ4OzU7MjA5NDg7NTsyMTA0ODs1OzIxMTQ4OzU7MjEyNDg7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b21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYWhvLWNvcmFzaWNrLTEuMS4zL3NyYy91dGlsL3NlYXJjaC5ycwAA2M8QAGoAAABOAQAACQAAAGludmFsaWQgbWF0Y2ggc3BhbgAAVNAQABIAAADYzxAAagAAAFsDAAAJAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYWhvLWNvcmFzaWNrLTEuMS4zL3NyYy9wYWNrZWQvYXBpLnJzAAAAgNAQAGkAAAAZAgAAHAAAAIDQEABpAAAAHwIAADEAAADnAwAABAAAAAQAAADoAwAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvcHJlZmlsdGVyL2J5dGVzZXQucnMAHNEQAHcAAAAjAAAAEQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL3ByZWZpbHRlci9tZW1jaHIucnMAAKTREAB2AAAAJwAAAC0AAACk0RAAdgAAAFUAAAAWAAAApNEQAHYAAABWAAAAFgAAAKTREAB2AAAAZAAAADYAAACk0RAAdgAAAJIAAAAWAAAApNEQAHYAAACTAAAAFgAAAKTREAB2AAAAlAAAABYAAACk0RAAdgAAAKIAAAA+AAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvcHJlZmlsdGVyL21lbW1lbS5ycwAAnNIQAHYAAAArAAAAJwAAAJzSEAB2AAAAOwAAABgAAABhaG8tY29yYXNpY2sgREZBIHNob3VsZCBuZXZlciBmYWlsL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvcHJlZmlsdGVyL3RlZGR5LnJzAFbTEAB1AAAAcQAAABIAQeSnwwALsgwBAAAAIgMAAAAAAAAIAAAABAAAAOkDAAAAAAAABAAAAAQAAADqAwAAAAAAAAEAAAABAAAAFAAAAAAAAAAEAAAABAAAABUAAABtYXhpbXVtX2xlbmxvb2tfc2V0bG9va19zZXRfcHJlZml4bG9va19zZXRfc3VmZml4bG9va19zZXRfcHJlZml4X2FueWxvb2tfc2V0X3N1ZmZpeF9hbnl1dGY4ZXhwbGljaXRfY2FwdHVyZXNfbGVuc3RhdGljX2V4cGxpY2l0X2NhcHR1cmVzX2xlbmxpdGVyYWxhbHRlcm5hdGlvbl9saXRlcmFsAAAcAREACwAAACzUEAALAAAAN9QQAAgAAAA/1BAADwAAAE7UEAAPAAAAXdQQABMAAABw1BAAEwAAAIPUEAAEAAAAh9QQABUAAACc1BAAHAAAALjUEAAHAAAAv9QQABMAAABQcm9wZXJ0aWVzSUludmFsaWRJbnB1dEFuY2hvcmVkSW52YWxpZElucHV0VW5hbmNob3JlZFVuc3VwcG9ydGVkU3RyZWFtVW5zdXBwb3J0ZWRPdmVybGFwcGluZ1Vuc3VwcG9ydGVkRW1wdHllcnJvciBidWlsZGluZyBORkEAAKDVEAASAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZm91bmQgaW1wb3NzaWJsZSBlcnJvciBpbiBtZXRhIGVuZ2luZTogAAAAvNUQAFEAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbWV0YS9lcnJvci5ycwAY1hAAawAAAO0AAAARAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcv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ZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvcHJpbWl0aXZlcy5yc9jkEABwAAAA8QIAAAEAAABQYXR0ZXJuSURFcnJvclN0YXRlSUQAAADY5BAAcAAAAPICAAABAAAAU3RhdGVJREVycm9yAAAAAAQAAAAEAAAA8gMAAAAAAAAIAAAABAAAAPMDAAAAAAAABAAAAAQAAAD0AwAAUHJvcGVydGllcykgYXJlIG5vdCBzdXBwb3J0ZWQgb3IgZW5hYmxlZPUDAAAIAAAABAAAAPYDAAD3AwAA9wMAAGFzc2VydGlvbiBmYWlsZWQ6IG0uaXNfZW1wdHkoKQAAaRgYAGoAAAClAgAACQAAAGkYGABqAAAApgIAAEAAAABQYXR0ZXJuU2V0IHNob3VsZCBoYXZlIHN1ZmZpY2llbnQgY2FwYWNpdHkAAHwZGABsAAAAywQAAA4AAABxdWl0IHNlYXJjaCBhZnRlciBvYnNlcnZpbmcgYnl0ZSAgYXQgb2Zmc2V0IHjmEAAhAAAAmeYQAAsAAABnYXZlIHVwIHNlYXJjaGluZyBhdCBvZmZzZXQgtOYQABwAAABoYXlzdGFjayBvZiBsZW5ndGggIGlzIHRvbyBsb25nANjmEAATAAAA6+YQAAwAAAB1bmFuY2hvcmVkIHNlYXJjaGVzIGFyZSBub3Qgc3VwcG9ydGVkIG9yIGVuYWJsZWQI5xAAMAAAAGFuY2hvcmVkIHNlYXJjaGVzIGFyZSBub3Qgc3VwcG9ydGVkIG9yIGVuYWJsZWQAAEDnEAAuAAAAYW5jaG9yZWQgc2VhcmNoZXMgZm9yIGEgc3BlY2lmaWMgcGF0dGVybiAoAAB45xAAKgAAAMblEAAeAAAAUGF0dGVyblNldEluc2VydEVycm9yY2FwYWNpdHlOb1llc1BhdHRlcm5BbGwAAAAACAAAAAgAAADXAgAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL2RmYS9yZW1hcHBlci5ycwAAAPDnEABtAAAAbgAAABIAAADw5xAAbQAAAIgAAAAkAAAA8OcQAG0AAACNAAAAIAAAAPDnEABtAAAAjwAAAB0AAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbmZhL3Rob21wc29uL2J1aWxkZXIucnMAAACg6BAAdQAAAIkAAAAgAAAAoOgQAHUAAACOAAAAIAAAAG11c3QgY2FsbCAnZmluaXNoX3BhdHRlcm4nIGZpcnN0OOkQACAAAACg6BAAdQAAAJ8BAAAJAAAAoOgQAHUAAAAyAgAAGAAAAKDoEAB1AAAAOwIAAC8AAACg6BAAdQAAAD4CAAAkAAAAoOgQAHUAAAA+AgAAEgAAAKDoEAB1AAAAPwIAABUAAACg6BAAdQAAAEgCAAAvAAAAoOgQAHUAAABJAgAAJQAAAKDoEAB1AAAASQIAABYAAACg6BAAdQAAAEoCAAAZAAAAoOgQAHUAAADGAQAAGgAAAKDoEAB1AAAAyQEAABoAAACg6BAAdQAAANcBAAAaAAAAaW52YWxpZCBjYXB0dXJlIGluZGV4AAAAoOgQAHUAAADfAQAAGgAAAGEgc21hbGwgZW5vdWdoIHNsb3QAoOgQAHUAAADhAQAALwAAAKDoEAB1AAAA4gEAABoAAACg6BAAdQAAAPIBAAAaAAAAoOgQAHUAAAD0AQAAGgAAAKDoEAB1AAAA9gEAAC8AAACg6BAAdQAAAPcBAAAaAAAAoOgQAHUAAAACAgAANgAAAKDoEAB1AAAAAwIAADAAAACg6BAAdQAAAAMCAAAeAAAAoOgQAHUAAAAGAgAALQAAAKDoEAB1AAAABwIAAC0AAACg6BAAdQAAAAUCAAAeAAAAoOgQAHUAAAAMAgAAHgAAAKDoEAB1AAAAAAIAAB4AAACg6BAAdQAAABMCAAA2AAAAoOgQAHUAAAAUAgAAMAAAAKDoEAB1AAAAFAIAAB4AAACg6BAAdQAAABcCAAAtAAAAoOgQAHUAAAAYAgAALQAAAKDoEAB1AAAAFgIAAB4AAACg6BAAdQAAAB4CAAAeAAAAoOgQAHUAAAARAgAAHgAAAKDoEAB1AAAAIgIAABoAAACg6BAAdQAAACUCAAAaAAAAoOgQAHUAAABvAgAACQAAAKDoEAB1AAAAkgIAABsAAABtdXN0IGNhbGwgJ3N0YXJ0X3BhdHRlcm4nIGZpcnN0AKDoEAB1AAAAngIAABkAAACg6BAAdQAAAPkDAAAzAAAAoOgQAHUAAAD8AwAAQAAAAKDoEAB1AAAA/wMAABoAAACg6BAAdQAAAP0DAAAeAAAAoOgQAHUAAAB9BAAAGgAAAGNhbm5vdCBwYXRjaCBmcm9tIGEgc3BhcnNlIE5GQSBzdGF0ZYzsEAAkAAAAoOgQAHUAAACFBAAAEQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy91dGlsL2NhcHR1cmVzLnJzAADI7BAAbgAAAH4HAAAwAAAAYAoRAGoAAADLAQAALAAAAGAKEQBqAAAA2AEAAAkAAABgChEAagAAANkBAAAJAAAAYAoRAGoAAADaAQAACQAAAGAKEQBqAAAA2wEAAAkAQaHbwwAL5gMvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC9kZXRlcm1pbml6ZS9zdGF0ZS5yc6HtEAB3AAAA8gAAACMAAACh7RAAdwAAAI0BAAAJAAAAoe0QAHcAAACYAQAACQAAAKHtEAB3AAAApwEAAAkAAACh7RAAdwAAAK8BAAAJAAAAoe0QAHcAAAC9AQAAIwAAAKHtEAB3AAAAyAEAACMAAACh7RAAdwAAAOMBAAA0AAAAoe0QAHcAAAAMAgAAHwAAAKHtEAB3AAAAEAIAABkAAACh7RAAdwAAACMCAAAgAAAAoe0QAHcAAAAjAgAAOQAAAKHtEAB3AAAAMQIAAC8AAACh7RAAdwAAAFQCAAAPAAAAoe0QAHcAAABeAgAADwAAAKHtEAB3AAAAZwIAAA8AAACh7RAAdwAAAG8CAAAPAAAAoe0QAHcAAACBAgAANQAAAKHtEAB3AAAAhwIAADUAAACh7RAAdwAAAMoCAAAxAAAAoe0QAHcAAADGAgAACQAAAKHtEAB3AAAAHAMAAB4AAABTbWFsbEluZGV4RXJyb3IAQZDfwwAL1QsBAAAA+AMAAFJlZ2V4SW5mb0lwcm9wc191bmlvbgAAAAAAAAABAAAAAQAAAM4AAAAAAAAAAQAAAAEAAADvAwAA7gMAABAAAAAEAAAAtgAAAAAAAAABAAAAAQAAAPkDAAAAAAAACAAAAAQAAADxAwAAAAAAAAgAAAAEAAAA6QMAAHV0ZjhfZW1wdHlhdXRvcHJld2hpY2hfY2FwdHVyZXNuZmFfc2l6ZV9saW1pdG9uZXBhc3Nfc2l6ZV9saW1pdGh5YnJpZF9jYWNoZV9jYXBhY2l0eWh5YnJpZGRmYWRmYV9zaXplX2xpbWl0ZGZhX3N0YXRlX2xpbWl0b25lcGFzc2JhY2t0cmFja2xpbmVfdGVybWluYXRvcgAAABQPEQAKAAAAEPAQAAoAAAAa8BAABwAAAB4PEQADAAAAIfAQAA4AAAAv8BAADgAAAD3wEAASAAAAT/AQABUAAABk8BAABgAAAGrwEAADAAAAbfAQAA4AAAB78BAADwAAAIrwEAAHAAAAkfAQAAkAAADD+xAADAAAAJrwEAAPAAAAR3JvdXBJbmZvSW5uZXJzbG90X3Jhbmdlc25hbWVfdG9faW5kZXhpbmRleF90b19uYW1lbWVtb3J5X2V4dHJhU3RhbmRhcmRMZWZ0bW9zdEZpcnN0TGVmdG1vc3RMb25nZXN0AIj1EABrAAAAxwQAAB4AAACI9RAAawAAAOkFAAAeAAAAbm8gcXVpdCBpbiBzdGFydCB3aXRob3V0IGxvb2stYmVoaW5kiPUQAGsAAABFBgAAFgAAAGFzc2VydGlvbiBmYWlsZWQ6IGlkLmlzX21hdGNoKCkAiPUQAGsAAAC1BgAACQAAAG5vIGluLXByb2dyZXNzIHNlYXJjaCB0byB1cGRhdGUAiPUQAGsAAAC3BwAAJAAAAG5vIGluLXByb2dyZXNzIHNlYXJjaCB0byBmaW5pc2gAiPUQAGsAAADDBwAAIgAAAIj1EABrAAAAjgoAAB0AAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvaHlicmlkL3NlYXJjaC5ycwAAhPIQAG4AAABZAAAAKQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IHNpZCBiZWluZyB1bmtub3duIGlzIGEgYnVnBPMQAEQAAACE8hAAbgAAAB0BAAARAAAAhPIQAG4AAAAaAQAALQAAAITyEABuAAAAVwEAACkAAACE8hAAbgAAAK0BAAARAAAAhPIQAG4AAACqAQAALQAAAITyEABuAAAA+wEAACUAAACE8hAAbgAAACICAAARAAAAhPIQAG4AAAAdAgAAFQAAAITyEABuAAAA4gIAABQAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbWV0YS9saW1pdGVkLnJzAAAA4PMQAG0AAACOAAAAJQAAAODzEABtAAAA6AAAABQAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvbWV0YS9zdG9wYXQucnNw9BAAbAAAAG4AAAAlAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvZW1wdHkucnMA7PQQAGsAAAD5AAAAOgBB8OrDAAvlCQEAAAD6AwAAAAAAAAgAAAAIAAAA+wMAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LWF1dG9tYXRhLTAuNC43L3NyYy9oeWJyaWQvZGZhLnJzAIj1EABrAAAAUwgAAB8AAACI9RAAawAAABYJAAA6AAAAYWRkaW5nIG9uZSBzdGF0ZSBhZnRlciBjYWNoZSBjbGVhciBtdXN0IHdvcmuI9RAAawAAALwJAAASAAAAY2Fubm90IHNhdmUgc2VudGluZWwgc3RhdGUAAFD2EAAaAAAAiPUQAGsAAACpCQAADQAAAIj1EABrAAAA5gkAAEAAAACI9RAAawAAAOcJAABHAAAAiPUQAGsAAADoCQAARwAAAIj1EABrAAAA6QkAAAkAAACI9RAAawAAAOoJAAAJAAAAiPUQAGsAAADrCQAACQAAAHN0YXRlIHNhdmVyIGRvZXMgbm90IGhhdmUgc2F2ZWQgc3RhdGUgSUSI9RAAawAAABQKAAAOAAAAaW52YWxpZCAnZnJvbScgaWQ6IAAc9xAAEwAAAIj1EABrAAAAKQoAAAkAAABpbnZhbGlkICd0bycgaWQ6IAAAAEj3EAARAAAAiPUQAGsAAAAqCgAACQAAAIj1EABrAAAALQoAABkAAABhc3NlcnRpb24gZmFpbGVkOiBzZWxmLmFzX3JlZigpLmlzX3ZhbGlkKGlkKYj1EABrAAAAOwoAAAkAAABhdHRlbXB0ZWQgdG8gc2VhcmNoIGZvciBhIHNwZWNpZmljIHBhdHRlcm4gd2l0aG91dCBlbmFibGluZyBzdGFydHNfZm9yX2VhY2hfcGF0dGVybgDA9xAAUwAAAIj1EABrAAAAQQoAABEAAACI9RAAawAAAEoKAAAaAAAAiPUQAGsAAACWCgAAGwAAAIj1EABrAAAAsgoAADMAAACI9RAAawAAALsKAAAzAAAAY2Fubm90IGJ1aWxkIGxhenkgREZBcyBmb3IgcmVnZXhlcyB3aXRoIFVuaWNvZGUgd29yZCBib3VuZGFyaWVzOyBzd2l0Y2ggdG8gQVNDSUkgd29yZCBib3VuZGFyaWVzLCBvciBoZXVyaXN0aWNhbGx5IGVuYWJsZSBVbmljb2RlIHdvcmQgYm91bmRhcmllcyBvciB1c2UgYSBkaWZmZXJlbnQgcmVnZXggZW5naW5lL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL21ldGEvbGl0ZXJhbC5ycwAAHfkQAG0AAAAeAAAADQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGxpdGVyYWwsIGdvdCCc+RAAQAAAAB35EABtAAAAOAAAAB4AAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2Rl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ZCAAALALEQAiAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvc3BhcnNlX3NldC5yc9wLEQBwAAAAggAAAAkAAAAgZXhjZWVkcyBjYXBhY2l0eSBvZiAgd2hlbiBpbnNlcnRpbmcgAAAAAQAAAAAAAABcDBEAFQAAAHEMEQAQAAAA3AsRAHAAAACyAAAACQAAANwLEQBwAAAAvAAAABMAAADcCxEAcAAAAL0AAAAUAAAA3AsRAHAAAADFAAAAIAAAANwLEQBwAAAAxgAAADQAAADcCxEAcAAAANEAAAAhAEGsmsQAC0sBAQEBAQEBAQEBAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfybxAALlQovaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC91dGY4LnJzAAD8DREAagAAAEMAAAArAAAA/A0RAGoAAABVAAAAOAAAAPwNEQBqAAAAWAAAABgAAABQaWtlVk1FbmdpbmVCb3VuZGVkQmFja3RyYWNrZXJFbmdpbmVPbmVQYXNzRW5naW5lSHlicmlkRW5naW5lREZBREZBRW5naW5lUmV2ZXJzZUh5YnJpZEVuZ2luZVJldmVyc2VERkFSZXZlcnNlREZBRW5naW5lQ29uZmlnbWF0Y2hfa2luZHByZVBpa2VWTWNvbmZpZ25mYU1hdGNoRXJyb3IAAAAAAAABAAAAAQAAABcEAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1zeW50YXgtMC44LjQvc3JjL2FzdC9wYXJzZS5yc0wPEQBoAAAAgQEAABcAAABMDxEAaAAAAIIBAAAaAAAATA8RAGgAAACDAQAAGgAAAEwPEQBoAAAAxQEAADUAAABMDxEAaAAA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IGZhaWxlZDogc2VsZi5jaGFyKCkgPT0gJ3AnIHx8IHNlbGYuY2hhcigpID09ICdQJwAATA8RAGgAAAB4CAAACQAAAGV4cGVjdGVkIHZhbGlkIFBlcmwgY2xhc3MgYnV0IGdvdCAnAFgXEQAjAAAAaWgWAAEAAABMDxEAaAAAANEIAAASAAAATA8RAGgAAAAACQAAMAAAACoDAAAMAAAABAAAAE4DAAAYBAAAZAMAQcyvxAALtgYBAAAALgMAAHQwGABMAAAApwoAAA0AAABhc3NlcnRpb24gZmFpbGVkOiBhZGRfbG93ZXIgfHwgYWRkX3VwcGVyKd4RAGsAAADQAQAACQAAAFVuaWNvZGUgbm90IGFsbG93ZWQgaGVyZXBhdHRlcm4gY2FuIG1hdGNoIGludmFsaWQgVVRGLThpbnZhbGlkIGxpbmUgdGVybWluYXRvciwgbXVzdCBiZSBBU0NJSVVuaWNvZGUgcHJvcGVydHkgbm90IGZvdW5kVW5pY29kZSBwcm9wZXJ0eSB2YWx1ZSBub3QgZm91bmRVbmljb2RlLWF3YXJlIFBlcmwgY2xhc3Mgbm90IGZvdW5kIChtYWtlIHN1cmUgdGhlIHVuaWNvZGUtcGVybCBmZWF0dXJlIGlzIGVuYWJsZWQpVW5pY29kZS1hd2FyZSBjYXNlIGluc2Vuc2l0aXZpdHkgbWF0Y2hpbmcgaXMgbm90IGF2YWlsYWJsZSAobWFrZSBzdXJlIHRoZSB1bmljb2RlLWNhc2UgZmVhdHVyZSBpcyBlbmFibGVkKQCEoxUAZgAAAPIBAAAeAAAAhKMVAGYAAABPAgAAHgAAAENsYXNzVW5pY29kZVJhbmdlc3RhcnRlbmQAAACEoxUAZgAAADoGAAA2AAAAQ2xhc3NCeXRlc1Jhbmdl4oiFAADLGREAAwAAAISjFQBmAAAA9wsAABIAAACEoxUAZgAAAOgLAAAZAAAATG9va0NhcHR1cmVTdGFydEVuZFN0YXJ0TEZFbmRMRlN0YXJ0Q1JMRkVuZENSTEZXb3JkQXNjaWlXb3JkQXNjaWlOZWdhdGVXb3JkVW5pY29kZVdvcmRVbmljb2RlTmVnYXRlV29yZFN0YXJ0QXNjaWlXb3JkRW5kQXNjaWlXb3JkU3RhcnRVbmljb2RlV29yZEVuZFVuaWNvZGVXb3JkU3RhcnRIYWxmQXNjaWlXb3JkRW5kSGFsZkFzY2lpV29yZFN0YXJ0SGFsZlVuaWNvZGVXb3JkRW5kSGFsZlVuaWNvZGVpbmRleG1pbm1heGdyZWVkeSoDAAAMAAAABAAAAE4DAAAYBAAAZAMAQYy2xAALvYESAQAAAC4DAAABAAAAAQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3JlZ2V4LXN5bnRheC0wLjguNC9zcmMvaGlyL2xpdGVyYWwucnNhc3NlcnRpb24gZmFpbGVkOiBzZXExLmxlbigpLm1hcF9vcih0cnVlLCB8eHwgeCA8PSBzZWxmLmxpbWl0X3RvdGFsKQAAHBsRAGoAAAA5AgAACQAAABwbEQBqAAAAZgIAAAkAAAAcGxEAagAAAGcGAAAYAAAAHBsRAGoAAAB0BgAAEwAAABwbEQBqAAAAbQYAABoAAAAcGxEAagAAAJwGAAAYAAAAHBsRAGoAAACqBgAAEwAAABwbEQBqAAAAowYAABoAAAAcGxEAagAAAHgHAAARAAAABQAAAAoAAAAEAAAACgAAAAMAAABAAAAAAgAAAEAAAAABAAAACgAAABwbEQBqAAAAzggAABUAAAAcGxEAagAAAN4IAAAoAAAAHBsRAGoAAADyCAAAFQAAABwbEQBqAAAA4ggAAB4AAAAcGxEAagAAAOQIAAAnAAAAHBsRAGoAAADkCAAAMwAAABwbEQBqAAAA5QgAADQAAAAcGxEAagAAAOsIAAAgAAAANzQzMjEwLy4tZ/JCQ+UsKyopKCcmJSQjIiE4IB8eHRz/lKSViKCbrd3ehnroytfg0NzMu7ezsaiyyOLDmriufni/ncKqvaKhlsGOiauwuae6cK/AvJyMj3uFgJOKknLfl/nY7uz949rm94e08en29OeL9fP768nE8NaYts21fxvU09LV5MWpn4OsaVBiYGFRz5F0c5CCmXlrhG1ufG9SbHaNcYF3faV1XGpTSGNdQU+m7aPHvuHRy8bZ287q+J7v/////////////////////////////////////////////////////////////////////////////////////3RyaWVkIHRvIHVud3JhcCBleHByIGZyb20gSGlyRnJhbWUsIGdvdDogAAAABB4RACkAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1zeW50YXgtMC44LjQvc3JjL2hpci90cmFuc2xhdGUucnM4HhEAbAAAAAEBAAASAAAAdHJpZWQgdG8gdW53cmFwIFVuaWNvZGUgY2xhc3MgZnJvbSBIaXJGcmFtZSwgZ290OiAAALQeEQAyAAAAOB4RAGwAAAAKAQAAEgAAAHRyaWVkIHRvIHVud3JhcCBieXRlIGNsYXNzIGZyb20gSGlyRnJhbWUsIGdvdDogAAAfEQAvAAAAOB4RAGwAAAAXAQAAEgAAAHRyaWVkIHRvIHVud3JhcCByZXBldGl0aW9uIGZyb20gSGlyRnJhbWUsIGdvdDogAEgfEQAvAAAAOB4RAGwAAAAlAQAAEQAAAHRyaWVkIHRvIHVud3JhcCBncm91cCBmcm9tIEhpckZyYW1lLCBnb3Q6IAAAkB8RACoAAAA4HhEAbAAAADQBAAARAAAAdHJpZWQgdG8gdW53cmFwIGFsdCBwaXBlIGZyb20gSGlyRnJhbWUsIGdvdDogAAAA1B8RAC0AAAA4HhEAbAAAAD8BAAARAAAAOB4RAGwAAABOAQAAJwAAADgeEQBsAAAATwEAABcAAAA4HhEAbAAAAE4BAAAJAAAAOB4RAGwAAACsAQAALgAAADgeEQBsAAAAowEAAC4AAAA4HhEAbAAAALcBAAAnAAAAOB4RAGwAAAC4AQAAHAAAADgeEQBsAAAAvAEAACcAAAA4HhEAbAAAAL0BAAAsAAAAOB4RAGwAAADOAQAAIAAAADgeEQBsAAAA/gEAAC4AAAA4HhEAbAAAAPoBAAAuAAAAOB4RAGwAAAAKAgAALgAAADgeEQBsAAAABgIAAC4AAAA4HhEAbAAAABkCAAAuAAAAOB4RAGwAAAAUAgAALgAAADgeEQBsAAAAIAIAACoAAAA4HhEAbAAAACwCAAAuAAAAOB4RAGwAAAAnAgAALgAAADgeEQBsAAAAPgIAAC8AAAA4HhEAbAAAAEUCAAAvAAAAOB4RAGwAAAAzAgAALwAAADgeEQBsAAAAOgIAAC8AAAA4HhEAbAAAAIwCAAAmAAAAOB4RAGwAAACNAgAAJgAAADgeEQBsAAAAjgIAACYAAAA4HhEAbAAAAHMCAAAmAAAAOB4RAGwAAAB0AgAAJgAAADgeEQBsAAAAdQIAACYAAAA4HhEAbAAAALgCAAAcAAAAOB4RAGwAAADDAgAALAAAADgeEQBsAAAA0QIAACwAAAA4HhEAbAAAANsCAAAcAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCBVbmljb2RlIGNsYXNzLCIRAFQAAAA4HhEAbAAAAOkCAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCBieXRlIGNsYXNzAAAAmCIRAFEAAAA4HhEAbAAAAOwCAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCByZXBldGl0aW9uAAAABCMRAFEAAAA4HhEAbAAAAO8CAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBjb25jYXQsIGdvdCBncm91cHAjEQBMAAAAOB4RAGwAAADyAgAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgY29uY2F0LCBnb3QgYWx0IG1hcmtlcgAAANQjEQBRAAAAOB4RAGwAAAD1AgAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgY29uY2F0LCBnb3QgYWx0IGJyYW5jaCBtYXJrZXJAJBEAWAAAADgeEQBsAAAA+AIAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGFsdCwgZ290IFVuaWNvZGUgY2xhc3MAAACwJBEAUQAAADgeEQBsAAAACAMAABEAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBleHBlY3RlZCBleHByIG9yIGFsdCwgZ290IGJ5dGUgY2xhc3MAABwlEQBOAAAAOB4RAGwAAAALAwAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgYWx0LCBnb3QgcmVwZXRpdGlvbgAAhCURAE4AAAA4HhEAbAAAAA4DAAARAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogZXhwZWN0ZWQgZXhwciBvciBhbHQsIGdvdCBncm91cAAAAOwlEQBJAAAAOB4RAGwAAAARAwAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgYWx0LCBnb3QgY29uY2F0IG1hcmtlcgAAAFAmEQBRAAAAOB4RAGwAAAAUAwAAEQAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IGV4cGVjdGVkIGV4cHIgb3IgYWx0LCBnb3QgYWx0IGJyYW5jaCBtYXJrZXIAAAC8JhEAVQAAADgeEQBsAAAAFwMAABEAAABhc3NlcnRpb24gZmFpbGVkOiBzZWxmLmZsYWdzKCkudW5pY29kZSgpOB4RAGwAAABDBAAACQAAAAVhc3NlcnRpb24gZmFpbGVkOiAhc2VsZi5mbGFncygpLnVuaWNvZGUoKQAAOB4RAGwAAABZBAAACQAAADA5QVphekFaYXoAfwkJICAAH39/MDkhfmF6IH4hLzpAW2B7fgkJCgoLCwwMDQ0gIEFaMDlBWl9fYXowOUFGYWZhAAAAYgAAAGMAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAKiEAAGwAAABtAAAAbgAAAG8AAABwAAAAcQAAAHIAAABzAAAAfwEAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAHoAAABBAAAAQgAAAEMAAABFAAAARgAAAEcAAABIAAAASQAAAEoAAABLAAAAKiEAAEwAAABNAAAATgAAAE8AAABQAAAAUQAAAFIAAABTAAAAfwEAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAACcAwAAvAMAAOAAAADhAAAA4gAAAOMAAADkAAAA5QAAACshAADmAAAA5wAAAOgAAADpAAAA6gAAAOsAAADsAAAA7QAAAO4AAADvAAAA8AAAAPEAAADyAAAA8wAAAPQAAAD1AAAA9gAAAPgAAAD5AAAA+gAAAPsAAAD8AAAA/QAAAP4AAACeHgAAwAAAAMEAAADCAAAAwwAAAMQAAADFAAAAKyEAAMYAAADHAAAAyAAAAMkAAADKAAAAywAAAMwAAADNAAAAzgAAAM8AAADQAAAA0QAAANIAAADTAAAA1AAAANUAAADWAAAA2AAAANkAAADaAAAA2wAAANwAAADdAAAA3gAAAHgBAAABAQAAAAEAAAMBAAACAQAABQEAAAQBAAAHAQAABgEAAAkBAAAIAQAACwEAAAoBAAANAQAADAEAAA8BAAAOAQAAEQEAABABAAATAQAAEgEAABUBAAAUAQAAFwEAABYBAAAZAQAAGAEAABsBAAAaAQAAHQEAABwBAAAfAQAAHgEAACEBAAAgAQAAIwEAACIBAAAlAQAAJAEAACcBAAAmAQAAKQEAACgBAAArAQAAKgEAAC0BAAAsAQAALwEAAC4BAAAzAQAAMgEAADUBAAA0AQAANwEAADYBAAA6AQAAOQEAADwBAAA7AQAAPgEAAD0BAABAAQAAPwEAAEIBAABBAQAARAEAAEMBAABGAQAARQEAAEgBAABHAQAASwEAAEoBAABNAQAATAEAAE8BAABOAQAAUQEAAFABAABTAQAAUgEAAFUBAABUAQAAVwEAAFYBAABZAQAAWAEAAFsBAABaAQAAXQEAAFwBAABfAQAAXgEAAGEBAABgAQAAYwEAAGIBAABlAQAAZAEAAGcBAABmAQAAaQEAAGgBAABrAQAAagEAAG0BAABsAQAAbwEAAG4BAABxAQAAcAEAAHMBAAByAQAAdQEAAHQBAAB3AQAAdgEAAP8AAAB6AQAAeQEAAHwBAAB7AQAAfgEAAH0BAABTAAAAcwAAAEMCAABTAgAAgwEAAIIBAACFAQAAhAEAAFQCAACIAQAAhwEAAFYCAABXAgAAjAEAAIsBAADdAQAAWQIAAFsCAACSAQAAkQEAAGACAABjAgAA9gEAAGkCAABoAgAAmQEAAJgBAAA9AgAAbwIAAHICAAAgAgAAdQIAAKEBAACgAQAAowEAAKIBAAClAQAApAEAAIACAACoAQAApwEAAIMCAACtAQAArAEAAIgCAACwAQAArwEAAIoCAACLAgAAtAEAALMBAAC2AQAAtQEAAJICAAC5AQAAuAEAAL0BAAC8AQAA9wEAAMUBAADGAQAAxAEAAMYBAADEAQAAxQEAAMgBAADJAQAAxwEAAMkBAADHAQAAyAEAAMsBAADMAQAAygEAAMwBAADKAQAAywEAAM4BAADNAQAA0AEAAM8BAADSAQAA0QEAANQBAADTAQAA1gEAANUBAADYAQAA1wEAANoBAADZAQAA3AEAANsBAACOAQAA3wEAAN4BAADhAQAA4AEAAOMBAADiAQAA5QEAAOQBAADnAQAA5gEAAOkBAADoAQAA6wEAAOoBAADtAQAA7AEAAO8BAADuAQAA8gEAAPMBAADxAQAA8wEAAPEBAADyAQAA9QEAAPQBAACVAQAAvwEAAPkBAAD4AQAA+wEAAPoBAAD9AQAA/AEAAP8BAAD+AQAAAQIAAAACAAADAgAAAgIAAAUCAAAEAgAABwIAAAYCAAAJAgAACAIAAAsCAAAKAgAADQIAAAwCAAAPAgAADgIAABECAAAQAgAAEwIAABICAAAVAgAAFAIAABcCAAAWAgAAGQIAABgCAAAbAgAAGgIAAB0CAAAcAgAAHwIAAB4CAACeAQAAIwIAACICAAAlAgAAJAIAACcCAAAmAgAAKQIAACgCAAArAgAAKgIAAC0CAAAsAgAALwIAAC4CAAAxAgAAMAIAADMCAAAyAgAAZSwAADwCAAA7AgAAmgEAAGYsAAB+LAAAfywAAEICAABBAgAAgAEAAIkCAACMAgAARwIAAEYCAABJAgAASAIAAEsCAABKAgAATQIAAEwCAABPAgAATgIAAG8sAABtLAAAcCwAAIEBAACGAQAAiQEAAIoBAACPAQAAkAEAAKunAACTAQAArKcAAJQBAACNpwAAqqcAAJcBAACWAQAArqcAAGIsAACtpwAAnAEAAG4sAACdAQAAnwEAAGQsAACmAQAAxacAAKkBAACxpwAArgEAAEQCAACxAQAAsgEAAEUCAAC3AQAAsqcAALCnAACZAwAAuQMAAL4fAABxAwAAcAMAAHMDAAByAwAAdwMAAHYDAAD9AwAA/gMAAP8DAADzAwAArAMAAK0DAACuAwAArwMAAMwDAADNAwAAzgMAALEDAACyAwAA0AMAALMDAAC0AwAAtQMAAPUDAAC2AwAAtwMAALgDAADRAwAA9AMAAEUDAAC5AwAAvh8AALoDAADwAwAAuwMAALUAAAC8AwAAvQMAAL4DAAC/AwAAwAMAANYDAADBAwAA8QMAAMIDAADDAwAAxAMAAMUDAADGAwAA1QMAAMcDAADIAwAAyQMAACYhAADKAwAAywMAAIYDAACIAwAAiQMAAIoDAACRAwAAkgMAANADAACTAwAAlAMAAJUDAAD1AwAAlgMAAJcDAACYAwAA0QMAAPQDAABFAwAAmQMAAL4fAACaAwAA8AMAAJsDAAC1AAAAnAMAAJ0DAACeAwAAnwMAAKADAADWAwAAoQMAAPEDAACjAwAAwwMAAKMDAADCAwAApAMAAKUDAACmAwAA1QMAAKcDAACoAwAAqQMAACYhAACqAwAAqwMAAIwDAACOAwAAjwMAANcDAACSAwAAsgMAAJgDAAC4AwAA9AMAAKYDAADGAwAAoAMAAMADAADPAwAA2QMAANgDAADbAwAA2gMAAN0DAADcAwAA3wMAAN4DAADhAwAA4AMAAOMDAADiAwAA5QMAAOQDAADnAwAA5gMAAOkDAADoAwAA6wMAAOoDAADtAwAA7AMAAO8DAADuAwAAmgMAALoDAAChAwAAwQMAAPkDAAB/AwAAmAMAALgDAADRAwAAlQMAALUDAAD4AwAA9wMAAPIDAAD7AwAA+gMAAHsDAAB8AwAAfQMAAFAEAABRBAAAUgQAAFMEAABUBAAAVQQAAFYEAABXBAAAWAQAAFkEAABaBAAAWwQAAFwEAABdBAAAXgQAAF8EAAAwBAAAMQQAADIEAACAHAAAMwQAADQEAACBHAAANQQAADYEAAA3BAAAOAQAADkEAAA6BAAAOwQAADwEAAA9BAAAPgQAAIIcAAA/BAAAQAQAAEEEAACDHAAAQgQAAIQcAACFHAAAQwQAAEQEAABFBAAARgQAAEcEAABIBAAASQQAAEoEAACGHAAASwQAAEwEAABNBAAATgQAAE8EAAAQBAAAEQQAABIEAACAHAAAEwQAABQEAACBHAAAFQQAABYEAAAXBAAAGAQAABkEAAAaBAAAGwQAABwEAAAdBAAAHgQAAIIcAAAfBAAAIAQAACEEAACDHAAAIgQAAIQcAACFHAAAIwQAACQEAAAlBAAAJgQAACcEAAAoBAAAKQQAACoEAACGHAAAKwQAACwEAAAtBAAALgQAAC8EAAAABAAAAQQAAAIEAAADBAAABAQAAAUEAAAGBAAABwQAAAgEAAAJBAAACgQAAAsEAAAMBAAADQQAAA4EAAAPBAAAYQQAAGAEAABjBAAAhxwAAGIEAACHHAAAZQQAAGQEAABnBAAAZgQAAGkEAABoBAAAawQAAGoEAABtBAAAbAQAAG8EAABuBAAAcQQAAHAEAABzBAAAcgQAAHUEAAB0BAAAdwQAAHYEAAB5BAAAeAQAAHsEAAB6BAAAfQQAAHwEAAB/BAAAfgQAAIEEAACABAAAiwQAAIoEAACNBAAAjAQAAI8EAACOBAAAkQQAAJAEAACTBAAAkgQAAJUEAACUBAAAlwQAAJYEAACZBAAAmAQAAJsEAACaBAAAnQQAAJwEAACfBAAAngQAAKEEAACgBAAAowQAAKIEAAClBAAApAQAAKcEAACmBAAAqQQAAKgEAACrBAAAqgQAAK0EAACsBAAArwQAAK4EAACxBAAAsAQAALMEAACyBAAAtQQAALQEAAC3BAAAtgQAALkEAAC4BAAAuwQAALoEAAC9BAAAvAQAAL8EAAC+BAAAzwQAAMIEAADBBAAAxAQAAMMEAADGBAAAxQQAAMgEAADHBAAAygQAAMkEAADMBAAAywQAAM4EAADNBAAAwAQAANEEAADQBAAA0wQAANIEAADVBAAA1AQAANcEAADWBAAA2QQAANgEAADbBAAA2gQAAN0EAADcBAAA3wQAAN4EAADhBAAA4AQAAOMEAADiBAAA5QQAAOQEAADnBAAA5gQAAOkEAADoBAAA6wQAAOoEAADtBAAA7AQAAO8EAADuBAAA8QQAAPAEAADzBAAA8gQAAPUEAAD0BAAA9wQAAPYEAAD5BAAA+AQAAPsEAAD6BAAA/QQAAPwEAAD/BAAA/gQAAAEFAAAABQAAAwUAAAIFAAAFBQAABAUAAAcFAAAGBQAACQUAAAgFAAALBQAACgUAAA0FAAAMBQAADwUAAA4FAAARBQAAEAUAABMFAAASBQAAFQUAABQFAAAXBQAAFgUAABkFAAAYBQAAGwUAABoFAAAdBQAAHAUAAB8FAAAeBQAAIQUAACAFAAAjBQAAIgUAACUFAAAkBQAAJwUAACYFAAApBQAAKAUAACsFAAAqBQAALQUAACwFAAAvBQAALgUAAGEFAABiBQAAYwUAAGQFAABlBQAAZgUAAGcFAABoBQAAaQUAAGoFAABrBQAAbAUAAG0FAABuBQAAbwUAAHAFAABxBQAAcgUAAHMFAAB0BQAAdQUAAHYFAAB3BQAAeAUAAHkFAAB6BQAAewUAAHwFAAB9BQAAfgUAAH8FAACABQAAgQUAAIIFAACDBQAAhAUAAIUFAACGBQAAMQUAADIFAAAzBQAANAUAADUFAAA2BQAANwUAADgFAAA5BQAAOgUAADsFAAA8BQAAPQUAAD4FAAA/BQAAQAUAAEEFAABCBQAAQwUAAEQFAABFBQAARgUAAEcFAABIBQAASQUAAEoFAABLBQAATAUAAE0FAABOBQAATwUAAFAFAABRBQAAUgUAAFMFAABUBQAAVQUAAFYFAAAALQAAAS0AAAItAAADLQAABC0AAAUtAAAGLQAABy0AAAgtAAAJLQAACi0AAAstAAAMLQAADS0AAA4tAAAPLQAAEC0AABEtAAASLQAAEy0AABQtAAAVLQAAFi0AABctAAAYLQAAGS0AABotAAAbLQAAHC0AAB0tAAAeLQAAHy0AACAtAAAhLQAAIi0AACMtAAAkLQAAJS0AACctAAAtLQAAkBwAAJEcAACSHAAAkxwAAJQcAACVHAAAlhwAAJccAACYHAAAmRwAAJocAACbHAAAnBwAAJ0cAACeHAAAnxwAAKAcAAChHAAAohwAAKMcAACkHAAApRwAAKYcAACnHAAAqBwAAKkcAACqHAAAqxwAAKwcAACtHAAArhwAAK8cAACwHAAAsRwAALIcAACzHAAAtBwAALUcAAC2HAAAtxwAALgcAAC5HAAAuhwAAL0cAAC+HAAAvxwAAHCrAABxqwAAcqsAAHOrAAB0qwAAdasAAHarAAB3qwAAeKsAAHmrAAB6qwAAe6sAAHyrAAB9qwAAfqsAAH+rAACAqwAAgasAAIKrAACDqwAAhKsAAIWrAACGqwAAh6sAAIirAACJqwAAiqsAAIurAACMqwAAjasAAI6rAACPqwAAkKsAAJGrAACSqwAAk6sAAJSrAACVqwAAlqsAAJerAACYqwAAmasAAJqrAACbqwAAnKsAAJ2rAACeqwAAn6sAAKCrAAChqwAAoqsAAKOrAACkqwAApasAAKarAACnqwAAqKsAAKmr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AAC6HwAAux8AAMgfAADJHwAAyh8AAMsfAADaHwAA2x8AAPgfAAD5HwAA6h8AAOsfAAD6HwAA+x8AAIgfAACJHwAAih8AAIsfAACMHwAAjR8AAI4fAACPHwAAgB8AAIEfAACCHwAAgx8AAIQfAACFHwAAhh8AAIcfAACYHwAAmR8AAJofAACbHwAAnB8AAJ0fAACeHwAAnx8AAJAfAACRHwAAkh8AAJMfAACUHwAAlR8AAJYfAACXHwAAqB8AAKkfAACqHwAAqx8AAKwfAACtHwAArh8AAK8fAACgHwAAoR8AAKIfAACjHwAApB8AAKUfAACmHwAApx8AALgfAAC5HwAAvB8AALAfAACxHwAAcB8AAHEfAACzHwAARQMAAJkDAAC5AwAAzB8AAHIfAABzHwAAdB8AAHUfAADDHwAA2B8AANkfAADQHwAA0R8AAHYfAAB3HwAA6B8AAOkfAADsHwAA4B8AAOEfAAB6HwAAex8AAOUfAAD8HwAAeB8AAHkfAAB8HwAAfR8AAPMfAACpAwAAyQMAAEsAAABrAAAAxQAAAOUAAABOIQAAMiEAAHAhAABxIQAAciEAAHMhAAB0IQAAdSEAAHYhAAB3IQAAeCEAAHkhAAB6IQAAeyEAAHwhAAB9IQAAfiEAAH8hAABgIQAAYSEAAGIhAABjIQAAZCEAAGUhAABmIQAAZyEAAGghAABpIQAAaiEAAGshAABsIQAAbSEAAG4hAABvIQAAhCEAAIMhAADQJAAA0SQAANIkAADTJAAA1CQAANUkAADWJAAA1yQAANgkAADZJAAA2iQAANskAADcJAAA3SQAAN4kAADfJAAA4CQAAOEkAADiJAAA4yQAAOQkAADlJAAA5iQAAOckAADoJAAA6SQAALYkAAC3JAAAuCQAALkkAAC6JAAAuyQAALwkAAC9JAAAviQAAL8kAADAJAAAwSQAAMIkAADDJAAAxCQAAMUkAADGJAAAxyQAAMgkAADJJAAAyiQAAMskAADMJAAAzSQAAM4kAADPJAAAMCwAADEsAAAyLAAAMywAADQsAAA1LAAANiwAADcsAAA4LAAAOSwAADosAAA7LAAAPCwAAD0sAAA+LAAAPywAAEAsAABBLAAAQiwAAEMsAABELAAARSwAAEYsAABHLAAASCwAAEksAABKLAAASywAAEwsAABNLAAATiwAAE8sAABQLAAAUSwAAFIsAABTLAAAVCwAAFUsAABWLAAAVywAAFgsAABZLAAAWiwAAFssAABcLAAAXSwAAF4sAABfLAAAACwAAAEsAAACLAAAAywAAAQsAAAFLAAABiwAAAcsAAAILAAACSwAAAosAAALLAAADCwAAA0sAAAOLAAADywAABAsAAARLAAAEiwAABMsAAAULAAAFSwAABYsAAAXLAAAGCwAABksAAAaLAAAGywAABwsAAAdLAAAHiwAAB8sAAAgLAAAISwAACIsAAAjLAAAJCwAACUsAAAmLAAAJywAACgsAAApLAAAKiwAACssAAAsLAAALSwAAC4sAAAvLAAAYSwAAGAsAABrAgAAfR0AAH0CAAA6AgAAPgIAAGgsAABnLAAAaiwAAGksAABsLAAAaywAAFECAABxAgAAUAIAAFICAABzLAAAciwAAHYsAAB1LAAAPwIAAEACAACBLAAAgCwAAIMsAACCLAAAhSwAAIQsAACHLAAAhiwAAIksAACILAAAiywAAIosAACNLAAAjCwAAI8sAACOLAAAkSwAAJAsAACTLAAAkiwAAJUsAACULAAAlywAAJYsAACZLAAAmCwAAJssAACaLAAAnSwAAJwsAACfLAAAniwAAKEsAACgLAAAoywAAKIsAAClLAAApCwAAKcsAACmLAAAqSwAAKgsAACrLAAAqiwAAK0sAACsLAAArywAAK4sAACxLAAAsCwAALMsAACyLAAAtSwAALQsAAC3LAAAtiwAALksAAC4LAAAuywAALosAAC9LAAAvCwAAL8sAAC+LAAAwSwAAMAsAADDLAAAwiwAAMUsAADELAAAxywAAMYsAADJLAAAyCwAAMssAADKLAAAzSwAAMwsAADPLAAAziwAANEsAADQLAAA0ywAANIsAADVLAAA1CwAANcsAADWLAAA2SwAANgsAADbLAAA2iwAAN0sAADcLAAA3ywAAN4sAADhLAAA4CwAAOMsAADiLAAA7CwAAOssAADuLAAA7SwAAPMsAADyLAAAoBAAAKEQAACiEAAAoxAAAKQQAAClEAAAphAAAKcQAACoEAAAqRAAAKoQAACrEAAArBAAAK0QAACuEAAArxAAALAQAACxEAAAshAAALMQAAC0EAAAtRAAALYQAAC3EAAAuBAAALkQAAC6EAAAuxAAALwQAAC9EAAAvhAAAL8QAADAEAAAwRAAAMIQAADDEAAAxBAAAMUQAADHEAAAzRAAAEGmAABApgAAQ6YAAEKmAABFpgAARKYAAEemAABGpgAASaYAAEimAACIHAAAS6YAAIgcAABKpgAATaYAAEymAABPpgAATqYAAFGmAABQpgAAU6YAAFKmAABVpgAAVKYAAFemAABWpgAAWaYAAFimAABbpgAAWqYAAF2mAABcpgAAX6YAAF6mAABhpgAAYKYAAGOmAABipgAAZaYAAGSmAABnpgAAZqYAAGmmAABopgAAa6YAAGqmAABtpgAAbKYAAIGmAACApgAAg6YAAIKmAACFpgAAhKYAAIemAACGpgAAiaYAAIimAACLpgAAiqYAAI2mAACMpgAAj6YAAI6mAACRpgAAkKYAAJOmAACSpgAAlaYAAJSmAACXpgAAlqYAAJmmAACYpgAAm6YAAJqmAAAjpwAAIqcAACWnAAAkpwAAJ6cAACanAAAppwAAKKcAACunAAAqpwAALacAACynAAAvpwAALqcAADOnAAAypwAANacAADSnAAA3pwAANqcAADmnAAA4pwAAO6cAADqnAAA9pwAAPKcAAD+nAAA+pwAAQacAAECnAABDpwAAQqcAAEWnAABEpwAAR6cAAEanAABJpwAASKcAAEunAABKpwAATacAAEynAABPpwAATqcAAFGnAABQpwAAU6cAAFKnAABVpwAAVKcAAFenAABWpwAAWacAAFinAABbpwAAWqcAAF2nAABcpwAAX6cAAF6nAABhpwAAYKcAAGOnAABipwAAZacAAGSnAABnpwAAZqcAAGmnAABopwAAa6cAAGqnAABtpwAAbKcAAG+nAABupwAAeqcAAHmnAAB8pwAAe6cAAHkdAAB/pwAAfqcAAIGnAACApwAAg6cAAIKnAACFpwAAhKcAAIenAACGpwAAjKcAAIunAABlAgAAkacAAJCnAACTpwAAkqcAAMSnAACXpwAAlqcAAJmnAACYpwAAm6cAAJqnAACdpwAAnKcAAJ+nAACepwAAoacAAKCnAACjpwAAoqcAAKWnAACkpwAAp6cAAKanAACppwAAqKcAAGYCAABcAgAAYQIAAGwCAABqAgAAngIAAIcCAACdAgAAU6sAALWnAAC0pwAAt6cAALanAAC5pwAAuKcAALunAAC6pwAAvacAALynAAC/pwAAvqcAAMGn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AADkJxEAAQAAAEMAAADoJxEAAQAAAEQAAABwMBYAAQAAAEUAAADsJxEAAQAAAEYAAADwJxEAAQAAAEcAAAD0JxEAAQAAAEgAAAD4JxEAAQAAAEkAAAD8JxEAAQAAAEoAAAAAKBEAAQAAAEsAAAAEKBEAAgAAAEwAAAAMKBEAAQAAAE0AAAAQKBEAAQAAAE4AAAAUKBEAAQAAAE8AAAAYKBEAAQAAAFAAAAAcKBEAAQAAAFEAAAAgKBEAAQAAAFIAAAAkKBEAAQAAAFMAAAAoKBEAAgAAAFQAAAAwKBEAAQAAAFUAAAA0KBEAAQAAAFYAAAA4KBEAAQAAAFcAAAA8KBEAAQAAAFgAAABAKBEAAQAAAFkAAABEKBEAAQAAAFoAAABIKBEAAQAAAGEAAABMKBEAAQAAAGIAAABQKBEAAQAAAGMAAABUKBEAAQAAAGQAAABsMBYAAQAAAGUAAABYKBEAAQAAAGYAAABcKBEAAQAAAGcAAABgKBEAAQAAAGgAAABkKBEAAQAAAGkAAABoKBEAAQAAAGoAAABsKBEAAQAAAGsAAABwKBEAAgAAAGwAAAB4KBEAAQAAAG0AAAB8KBEAAQAAAG4AAACAKBEAAQAAAG8AAACEKBEAAQAAAHAAAACIKBEAAQAAAHEAAACMKBEAAQAAAHIAAACQKBEAAQAAAHMAAACUKBEAAgAAAHQAAACcKBEAAQAAAHUAAACgKBEAAQAAAHYAAACkKBEAAQAAAHcAAACoKBEAAQAAAHgAAACsKBEAAQAAAHkAAACwKBEAAQAAAHoAAAC0KBEAAQAAALUAAAC4KBEAAgAAAMAAAADAKBEAAQAAAMEAAADEKBEAAQAAAMIAAADIKBEAAQAAAMMAAADMKBEAAQAAAMQAAADQKBEAAQAAAMUAAADUKBEAAgAAAMYAAADcKBEAAQAAAMcAAADgKBEAAQAAAMgAAADkKBEAAQAAAMkAAADoKBEAAQAAAMoAAADsKBEAAQAAAMsAAADwKBEAAQAAAMwAAAD0KBEAAQAAAM0AAAD4KBEAAQAAAM4AAAD8KBEAAQAAAM8AAAAAKREAAQAAANAAAAAEKREAAQAAANEAAAAIKREAAQAAANIAAAAMKREAAQAAANMAAAAQKREAAQAAANQAAAAUKREAAQAAANUAAAAYKREAAQAAANYAAAAcKREAAQAAANgAAAAgKREAAQAAANkAAAAkKREAAQAAANoAAAAoKREAAQAAANsAAAAsKREAAQAAANwAAAAwKREAAQAAAN0AAAA0KREAAQAAAN4AAAA4KREAAQAAAN8AAAA8KREAAQAAAOAAAABAKREAAQAAAOEAAABEKREAAQAAAOIAAABIKREAAQAAAOMAAABMKREAAQAAAOQAAABQKREAAQAAAOUAAABUKREAAgAAAOYAAABcKREAAQAAAOcAAABgKREAAQAAAOgAAABkKREAAQAAAOkAAABoKREAAQAAAOoAAABsKREAAQAAAOsAAABwKREAAQAAAOwAAAB0KREAAQAAAO0AAAB4KREAAQAAAO4AAAB8KREAAQAAAO8AAACAKREAAQAAAPAAAACEKREAAQAAAPEAAACIKREAAQAAAPIAAACMKREAAQAAAPMAAACQKREAAQAAAPQAAACUKREAAQAAAPUAAACYKREAAQAAAPYAAACcKREAAQAAAPgAAACgKREAAQAAAPkAAACkKREAAQAAAPoAAACoKREAAQAAAPsAAACsKREAAQAAAPwAAACwKREAAQAAAP0AAAC0KREAAQAAAP4AAAC4KREAAQAAAP8AAAC8KREAAQAAAAABAADAKREAAQAAAAEBAADEKREAAQAAAAIBAADIKREAAQAAAAMBAADMKREAAQAAAAQBAADQKREAAQAAAAUBAADUKREAAQAAAAYBAADYKREAAQAAAAcBAADcKREAAQAAAAgBAADgKREAAQAAAAkBAADkKREAAQAAAAoBAADoKREAAQAAAAsBAADsKREAAQAAAAwBAADwKREAAQAAAA0BAAD0KREAAQAAAA4BAAD4KREAAQAAAA8BAAD8KREAAQAAABABAAAAKhEAAQAAABEBAAAEKhEAAQAAABIBAAAIKhEAAQAAABMBAAAMKhEAAQAAABQBAAAQKhEAAQAAABUBAAAUKhEAAQAAABYBAAAYKhEAAQAAABcBAAAcKhEAAQAAABgBAAAgKhEAAQAAABkBAAAkKhEAAQAAABoBAAAoKhEAAQAAABsBAAAsKhEAAQAAABwBAAAwKhEAAQAAAB0BAAA0KhEAAQAAAB4BAAA4KhEAAQAAAB8BAAA8KhEAAQAAACABAABAKhEAAQAAACEBAABEKhEAAQAAACIBAABIKhEAAQAAACMBAABMKhEAAQAAACQBAABQKhEAAQAAACUBAABUKhEAAQAAACYBAABYKhEAAQAAACcBAABcKhEAAQAAACgBAABgKhEAAQAAACkBAABkKhEAAQAAACoBAABoKhEAAQAAACsBAABsKhEAAQAAACwBAABwKhEAAQAAAC0BAAB0KhEAAQAAAC4BAAB4KhEAAQAAAC8BAAB8KhEAAQAAADIBAACAKhEAAQAAADMBAACEKhEAAQAAADQBAACIKhEAAQAAADUBAACMKhEAAQAAADYBAACQKhEAAQAAADcBAACUKhEAAQAAADkBAACYKhEAAQAAADoBAACcKhEAAQAAADsBAACgKhEAAQAAADwBAACkKhEAAQAAAD0BAACoKhEAAQAAAD4BAACsKhEAAQAAAD8BAACwKhEAAQAAAEABAAC0KhEAAQAAAEEBAAC4KhEAAQAAAEIBAAC8KhEAAQAAAEMBAADAKhEAAQAAAEQBAADEKhEAAQAAAEUBAADIKhEAAQAAAEYBAADMKhEAAQAAAEcBAADQKhEAAQAAAEgBAADUKhEAAQAAAEoBAADYKhEAAQAAAEsBAADcKhEAAQAAAEwBAADgKhEAAQAAAE0BAADkKhEAAQAAAE4BAADoKhEAAQAAAE8BAADsKhEAAQAAAFABAADwKhEAAQAAAFEBAAD0KhEAAQAAAFIBAAD4KhEAAQAAAFMBAAD8KhEAAQAAAFQBAAAAKxEAAQAAAFUBAAAEKxEAAQAAAFYBAAAIKxEAAQAAAFcBAAAMKxEAAQAAAFgBAAAQKxEAAQAAAFkBAAAUKxEAAQAAAFoBAAAYKxEAAQAAAFsBAAAcKxEAAQAAAFwBAAAgKxEAAQAAAF0BAAAkKxEAAQAAAF4BAAAoKxEAAQAAAF8BAAAsKxEAAQAAAGABAAAwKxEAAQAAAGEBAAA0KxEAAQAAAGIBAAA4KxEAAQAAAGMBAAA8KxEAAQAAAGQBAABAKxEAAQAAAGUBAABEKxEAAQAAAGYBAABIKxEAAQAAAGcBAABMKxEAAQAAAGgBAABQKxEAAQAAAGkBAABUKxEAAQAAAGoBAABYKxEAAQAAAGsBAABcKxEAAQAAAGwBAABgKxEAAQAAAG0BAABkKxEAAQAAAG4BAABoKxEAAQAAAG8BAABsKxEAAQAAAHABAABwKxEAAQAAAHEBAAB0KxEAAQAAAHIBAAB4KxEAAQAAAHMBAAB8KxEAAQAAAHQBAACAKxEAAQAAAHUBAACEKxEAAQAAAHYBAACIKxEAAQAAAHcBAACMKxEAAQAAAHgBAACQKxEAAQAAAHkBAACUKxEAAQAAAHoBAACYKxEAAQAAAHsBAACcKxEAAQAAAHwBAACgKxEAAQAAAH0BAACkKxEAAQAAAH4BAACoKxEAAQAAAH8BAACsKxEAAgAAAIABAAC0KxEAAQAAAIEBAAC4KxEAAQAAAIIBAAC8KxEAAQAAAIMBAADAKxEAAQAAAIQBAADEKxEAAQAAAIUBAADIKxEAAQAAAIYBAADMKxEAAQAAAIcBAADQKxEAAQAAAIgBAADUKxEAAQAAAIkBAADYKxEAAQAAAIoBAADcKxEAAQAAAIsBAADgKxEAAQAAAIwBAADkKxEAAQAAAI4BAADoKxEAAQAAAI8BAADsKxEAAQAAAJABAADwKxEAAQAAAJEBAAD0KxEAAQAAAJIBAAD4KxEAAQAAAJMBAAD8KxEAAQAAAJQBAAAALBEAAQAAAJUBAAAELBEAAQAAAJYBAAAILBEAAQAAAJcBAAAMLBEAAQAAAJgBAAAQLBEAAQAAAJkBAAAULBEAAQAAAJoBAAAYLBEAAQAAAJwBAAAcLBEAAQAAAJ0BAAAgLBEAAQAAAJ4BAAAkLBEAAQAAAJ8BAAAoLBEAAQAAAKABAAAsLBEAAQAAAKEBAAAwLBEAAQAAAKIBAAA0LBEAAQAAAKMBAAA4LBEAAQAAAKQBAAA8LBEAAQAAAKUBAABALBEAAQAAAKYBAABELBEAAQAAAKcBAABILBEAAQAAAKgBAABMLBEAAQAAAKkBAABQLBEAAQAAAKwBAABULBEAAQAAAK0BAABYLBEAAQAAAK4BAABcLBEAAQAAAK8BAABgLBEAAQAAALABAABkLBEAAQAAALEBAABoLBEAAQAAALIBAABsLBEAAQAAALMBAABwLBEAAQAAALQBAAB0LBEAAQAAALUBAAB4LBEAAQAAALYBAAB8LBEAAQAAALcBAACALBEAAQAAALgBAACELBEAAQAAALkBAACILBEAAQAAALwBAACMLBEAAQAAAL0BAACQLBEAAQAAAL8BAACULBEAAQAAAMQBAACYLBEAAgAAAMUBAACgLBEAAgAAAMYBAACoLBEAAgAAAMcBAACwLBEAAgAAAMgBAAC4LBEAAgAAAMkBAADALBEAAgAAAMoBAADILBEAAgAAAMsBAADQLBEAAgAAAMwBAADYLBEAAgAAAM0BAADgLBEAAQAAAM4BAADkLBEAAQAAAM8BAADoLBEAAQAAANABAADsLBEAAQAAANEBAADwLBEAAQAAANIBAAD0LBEAAQAAANMBAAD4LBEAAQAAANQBAAD8LBEAAQAAANUBAAAALREAAQAAANYBAAAELREAAQAAANcBAAAILREAAQAAANgBAAAMLREAAQAAANkBAAAQLREAAQAAANoBAAAULREAAQAAANsBAAAYLREAAQAAANwBAAAcLREAAQAAAN0BAAAgLREAAQAAAN4BAAAkLREAAQAAAN8BAAAoLREAAQAAAOABAAAsLREAAQAAAOEBAAAwLREAAQAAAOIBAAA0LREAAQAAAOMBAAA4LREAAQAAAOQBAAA8LREAAQAAAOUBAABALREAAQAAAOYBAABELREAAQAAAOcBAABILREAAQAAAOgBAABMLREAAQAAAOkBAABQLREAAQAAAOoBAABULREAAQAAAOsBAABYLREAAQAAAOwBAABcLREAAQAAAO0BAABgLREAAQAAAO4BAABkLREAAQAAAO8BAABoLREAAQAAAPEBAABsLREAAgAAAPIBAAB0LREAAgAAAPMBAAB8LREAAgAAAPQBAACELREAAQAAAPUBAACILREAAQAAAPYBAACMLREAAQAAAPcBAACQLREAAQAAAPgBAACULREAAQAAAPkBAACYLREAAQAAAPoBAACcLREAAQAAAPsBAACgLREAAQAAAPwBAACkLREAAQAAAP0BAACoLREAAQAAAP4BAACsLREAAQAAAP8BAACwLREAAQAAAAACAAC0LREAAQAAAAECAAC4LREAAQAAAAICAAC8LREAAQAAAAMCAADALREAAQAAAAQCAADELREAAQAAAAUCAADILREAAQAAAAYCAADMLREAAQAAAAcCAADQLREAAQAAAAgCAADULREAAQAAAAkCAADYLREAAQAAAAoCAADcLREAAQAAAAsCAADgLREAAQAAAAwCAADkLREAAQAAAA0CAADoLREAAQAAAA4CAADsLREAAQAAAA8CAADwLREAAQAAABACAAD0LREAAQAAABECAAD4LREAAQAAABICAAD8LREAAQAAABMCAAAALhEAAQAAABQCAAAELhEAAQAAABUCAAAILhEAAQAAABYCAAAMLhEAAQAAABcCAAAQLhEAAQAAABgCAAAULhEAAQAAABkCAAAYLhEAAQAAABoCAAAcLhEAAQAAABsCAAAgLhEAAQAAABwCAAAkLhEAAQAAAB0CAAAoLhEAAQAAAB4CAAAsLhEAAQAAAB8CAAAwLhEAAQAAACACAAA0LhEAAQAAACICAAA4LhEAAQAAACMCAAA8LhEAAQAAACQCAABALhEAAQAAACUCAABELhEAAQAAACYCAABILhEAAQAAACcCAABMLhEAAQAAACgCAABQLhEAAQAAACkCAABULhEAAQAAACoCAABYLhEAAQAAACsCAABcLhEAAQAAACwCAABgLhEAAQAAAC0CAABkLhEAAQAAAC4CAABoLhEAAQAAAC8CAABsLhEAAQAAADACAABwLhEAAQAAADECAAB0LhEAAQAAADICAAB4LhEAAQAAADMCAAB8LhEAAQAAADoCAACALhEAAQAAADsCAACELhEAAQAAADwCAACILhEAAQAAAD0CAACMLhEAAQAAAD4CAACQLhEAAQAAAD8CAACULhEAAQAAAEACAACYLhEAAQAAAEECAACcLhEAAQAAAEICAACgLhEAAQAAAEMCAACkLhEAAQAAAEQCAACoLhEAAQAAAEUCAACsLhEAAQAAAEYCAACwLhEAAQAAAEcCAAC0LhEAAQAAAEgCAAC4LhEAAQAAAEkCAAC8LhEAAQAAAEoCAADALhEAAQAAAEsCAADELhEAAQAAAEwCAADILhEAAQAAAE0CAADMLhEAAQAAAE4CAADQLhEAAQAAAE8CAADULhEAAQAAAFACAADYLhEAAQAAAFECAADcLhEAAQAAAFICAADgLhEAAQAAAFMCAADkLhEAAQAAAFQCAADoLhEAAQAAAFYCAADsLhEAAQAAAFcCAADwLhEAAQAAAFkCAAD0LhEAAQAAAFsCAAD4LhEAAQAAAFwCAAD8LhEAAQAAAGACAAAALxEAAQAAAGECAAAELxEAAQAAAGMCAAAILxEAAQAAAGUCAAAMLxEAAQAAAGYCAAAQLxEAAQAAAGgCAAAULxEAAQAAAGkCAAAYLxEAAQAAAGoCAAAcLxEAAQAAAGsCAAAgLxEAAQAAAGwCAAAkLxEAAQAAAG8CAAAoLxEAAQAAAHECAAAsLxEAAQAAAHICAAAwLxEAAQAAAHUCAAA0LxEAAQAAAH0CAAA4LxEAAQAAAIACAAA8LxEAAQAAAIICAABALxEAAQAAAIMCAABELxEAAQAAAIcCAABILxEAAQAAAIgCAABMLxEAAQAAAIkCAABQLxEAAQAAAIoCAABULxEAAQAAAIsCAABYLxEAAQAAAIwCAABcLxEAAQAAAJICAABgLxEAAQAAAJ0CAABkLxEAAQAAAJ4CAABoLxEAAQAAAEUDAABsLxEAAwAAAHADAAB4LxEAAQAAAHEDAAB8LxEAAQAAAHIDAACALxEAAQAAAHMDAACELxEAAQAAAHYDAACILxEAAQAAAHcDAACMLxEAAQAAAHsDAACQLxEAAQAAAHwDAACULxEAAQAAAH0DAACYLxEAAQAAAH8DAACcLxEAAQAAAIYDAACgLxEAAQAAAIgDAACkLxEAAQAAAIkDAACoLxEAAQAAAIoDAACsLxEAAQAAAIwDAACwLxEAAQAAAI4DAAC0LxEAAQAAAI8DAAC4LxEAAQAAAJEDAAC8LxEAAQAAAJIDAADALxEAAgAAAJMDAADILxEAAQAAAJQDAADMLxEAAQAAAJUDAADQLxEAAgAAAJYDAADYLxEAAQAAAJcDAADcLxEAAQAAAJgDAADgLxEAAwAAAJkDAADsLxEAAwAAAJoDAAD4LxEAAgAAAJsDAAAAMBEAAQAAAJwDAAAEMBEAAgAAAJ0DAAAMMBEAAQAAAJ4DAAAQMBEAAQAAAJ8DAAAUMBEAAQAAAKADAAAYMBEAAgAAAKEDAAAgMBEAAgAAAKMDAAAoMBEAAgAAAKQDAAAwMBEAAQAAAKUDAAA0MBEAAQAAAKYDAAA4MBEAAgAAAKcDAABAMBEAAQAAAKgDAABEMBEAAQAAAKkDAABIMBEAAgAAAKoDAABQMBEAAQAAAKsDAABUMBEAAQAAAKwDAABYMBEAAQAAAK0DAABcMBEAAQAAAK4DAABgMBEAAQAAAK8DAABkMBEAAQAAALEDAABoMBEAAQAAALIDAABsMBEAAgAAALMDAAB0MBEAAQAAALQDAAB4MBEAAQAAALUDAAB8MBEAAgAAALYDAACEMBEAAQAAALcDAACIMBEAAQAAALgDAACMMBEAAwAAALkDAACYMBEAAwAAALoDAACkMBEAAgAAALsDAACsMBEAAQAAALwDAACwMBEAAgAAAL0DAAC4MBEAAQAAAL4DAAC8MBEAAQAAAL8DAADAMBEAAQAAAMADAADEMBEAAgAAAMEDAADMMBEAAgAAAMIDAADUMBEAAgAAAMMDAADcMBEAAgAAAMQDAADkMBEAAQAAAMUDAADoMBEAAQAAAMYDAADsMBEAAgAAAMcDAAD0MBEAAQAAAMgDAAD4MBEAAQAAAMkDAAD8MBEAAgAAAMoDAAAEMREAAQAAAMsDAAAIMREAAQAAAMwDAAAMMREAAQAAAM0DAAAQMREAAQAAAM4DAAAUMREAAQAAAM8DAAAYMREAAQAAANADAAAcMREAAgAAANEDAAAkMREAAwAAANUDAAAwMREAAgAAANYDAAA4MREAAgAAANcDAABAMREAAQAAANgDAABEMREAAQAAANkDAABIMREAAQAAANoDAABMMREAAQAAANsDAABQMREAAQAAANwDAABUMREAAQAAAN0DAABYMREAAQAAAN4DAABcMREAAQAAAN8DAABgMREAAQAAAOADAABkMREAAQAAAOEDAABoMREAAQAAAOIDAABsMREAAQAAAOMDAABwMREAAQAAAOQDAAB0MREAAQAAAOUDAAB4MREAAQAAAOYDAAB8MREAAQAAAOcDAACAMREAAQAAAOgDAACEMREAAQAAAOkDAACIMREAAQAAAOoDAACMMREAAQAAAOsDAACQMREAAQAAAOwDAACUMREAAQAAAO0DAACYMREAAQAAAO4DAACcMREAAQAAAO8DAACgMREAAQAAAPADAACkMREAAgAAAPEDAACsMREAAgAAAPIDAAC0MREAAQAAAPMDAAC4MREAAQAAAPQDAAC8MREAAwAAAPUDAADIMREAAgAAAPcDAADQMREAAQAAAPgDAADUMREAAQAAAPkDAADYMREAAQAAAPoDAADcMREAAQAAAPsDAADgMREAAQAAAP0DAADkMREAAQAAAP4DAADoMREAAQAAAP8DAADsMREAAQAAAAAEAADwMREAAQAAAAEEAAD0MREAAQAAAAIEAAD4MREAAQAAAAMEAAD8MREAAQAAAAQEAAAAMhEAAQAAAAUEAAAEMhEAAQAAAAYEAAAIMhEAAQAAAAcEAAAMMhEAAQAAAAgEAAAQMhEAAQAAAAkEAAAUMhEAAQAAAAoEAAAYMhEAAQAAAAsEAAAcMhEAAQAAAAwEAAAgMhEAAQAAAA0EAAAkMhEAAQAAAA4EAAAoMhEAAQAAAA8EAAAsMhEAAQAAABAEAAAwMhEAAQAAABEEAAA0MhEAAQAAABIEAAA4MhEAAgAAABMEAABAMhEAAQAAABQEAABEMhEAAgAAABUEAABMMhEAAQAAABYEAABQMhEAAQAAABcEAABUMhEAAQAAABgEAABYMhEAAQAAABkEAABcMhEAAQAAABoEAABgMhEAAQAAABsEAABkMhEAAQAAABwEAABoMhEAAQAAAB0EAABsMhEAAQAAAB4EAABwMhEAAgAAAB8EAAB4MhEAAQAAACAEAAB8MhEAAQAAACEEAACAMhEAAgAAACIEAACIMhEAAwAAACMEAACUMhEAAQAAACQEAACYMhEAAQAAACUEAACcMhEAAQAAACYEAACgMhEAAQAAACcEAACkMhEAAQAAACgEAACoMhEAAQAAACkEAACsMhEAAQAAACoEAACwMhEAAgAAACsEAAC4MhEAAQAAACwEAAC8MhEAAQAAAC0EAADAMhEAAQAAAC4EAADEMhEAAQAAAC8EAADIMhEAAQAAADAEAADMMhEAAQAAADEEAADQMhEAAQAAADIEAADUMhEAAgAAADMEAADcMhEAAQAAADQEAADgMhEAAgAAADUEAADoMhEAAQAAADYEAADsMhEAAQAAADcEAADwMhEAAQAAADgEAAD0MhEAAQAAADkEAAD4MhEAAQAAADoEAAD8MhEAAQAAADsEAAAAMxEAAQAAADwEAAAEMxEAAQAAAD0EAAAIMxEAAQAAAD4EAAAMMxEAAgAAAD8EAAAUMxEAAQAAAEAEAAAYMxEAAQAAAEEEAAAcMxEAAgAAAEIEAAAkMxEAAwAAAEMEAAAwMxEAAQAAAEQEAAA0MxEAAQAAAEUEAAA4MxEAAQAAAEYEAAA8MxEAAQAAAEcEAABAMxEAAQAAAEgEAABEMxEAAQAAAEkEAABIMxEAAQAAAEoEAABMMxEAAgAAAEsEAABUMxEAAQAAAEwEAABYMxEAAQAAAE0EAABcMxEAAQAAAE4EAABgMxEAAQAAAE8EAABkMxEAAQAAAFAEAABoMxEAAQAAAFEEAABsMxEAAQAAAFIEAABwMxEAAQAAAFMEAAB0MxEAAQAAAFQEAAB4MxEAAQAAAFUEAAB8MxEAAQAAAFYEAACAMxEAAQAAAFcEAACEMxEAAQAAAFgEAACIMxEAAQAAAFkEAACMMxEAAQAAAFoEAACQMxEAAQAAAFsEAACUMxEAAQAAAFwEAACYMxEAAQAAAF0EAACcMxEAAQAAAF4EAACgMxEAAQAAAF8EAACkMxEAAQAAAGAEAACoMxEAAQAAAGEEAACsMxEAAQAAAGIEAACwMxEAAgAAAGMEAAC4MxEAAgAAAGQEAADAMxEAAQAAAGUEAADEMxEAAQAAAGYEAADIMxEAAQAAAGcEAADMMxEAAQAAAGgEAADQMxEAAQAAAGkEAADUMxEAAQAAAGoEAADYMxEAAQAAAGsEAADcMxEAAQAAAGwEAADgMxEAAQAAAG0EAADkMxEAAQAAAG4EAADoMxEAAQAAAG8EAADsMxEAAQAAAHAEAADwMxEAAQAAAHEEAAD0MxEAAQAAAHIEAAD4MxEAAQAAAHMEAAD8MxEAAQAAAHQEAAAANBEAAQAAAHUEAAAENBEAAQAAAHYEAAAINBEAAQAAAHcEAAAMNBEAAQAAAHgEAAAQNBEAAQAAAHkEAAAUNBEAAQAAAHoEAAAYNBEAAQAAAHsEAAAcNBEAAQAAAHwEAAAgNBEAAQAAAH0EAAAkNBEAAQAAAH4EAAAoNBEAAQAAAH8EAAAsNBEAAQAAAIAEAAAwNBEAAQAAAIEEAAA0NBEAAQAAAIoEAAA4NBEAAQAAAIsEAAA8NBEAAQAAAIwEAABANBEAAQAAAI0EAABENBEAAQAAAI4EAABINBEAAQAAAI8EAABMNBEAAQAAAJAEAABQNBEAAQAAAJEEAABUNBEAAQAAAJIEAABYNBEAAQAAAJMEAABcNBEAAQAAAJQEAABgNBEAAQAAAJUEAABkNBEAAQAAAJYEAABoNBEAAQAAAJcEAABsNBEAAQAAAJgEAABwNBEAAQAAAJkEAAB0NBEAAQAAAJoEAAB4NBEAAQAAAJsEAAB8NBEAAQAAAJwEAACANBEAAQAAAJ0EAACENBEAAQAAAJ4EAACINBEAAQAAAJ8EAACMNBEAAQAAAKAEAACQNBEAAQAAAKEEAACUNBEAAQAAAKIEAACYNBEAAQAAAKMEAACcNBEAAQAAAKQEAACgNBEAAQAAAKUEAACkNBEAAQAAAKYEAACoNBEAAQAAAKcEAACsNBEAAQAAAKgEAACwNBEAAQAAAKkEAAC0NBEAAQAAAKoEAAC4NBEAAQAAAKsEAAC8NBEAAQAAAKwEAADANBEAAQAAAK0EAADENBEAAQAAAK4EAADINBEAAQAAAK8EAADMNBEAAQAAALAEAADQNBEAAQAAALEEAADUNBEAAQAAALIEAADYNBEAAQAAALMEAADcNBEAAQAAALQEAADgNBEAAQAAALUEAADkNBEAAQAAALYEAADoNBEAAQAAALcEAADsNBEAAQAAALgEAADwNBEAAQAAALkEAAD0NBEAAQAAALoEAAD4NBEAAQAAALsEAAD8NBEAAQAAALwEAAAANREAAQAAAL0EAAAENREAAQAAAL4EAAAINREAAQAAAL8EAAAMNREAAQAAAMAEAAAQNREAAQAAAMEEAAAUNREAAQAAAMIEAAAYNREAAQAAAMMEAAAcNREAAQAAAMQEAAAgNREAAQAAAMUEAAAkNREAAQAAAMYEAAAoNREAAQAAAMcEAAAsNREAAQAAAMgEAAAwNREAAQAAAMkEAAA0NREAAQAAAMoEAAA4NREAAQAAAMsEAAA8NREAAQAAAMwEAABANREAAQAAAM0EAABENREAAQAAAM4EAABINREAAQAAAM8EAABMNREAAQAAANAEAABQNREAAQAAANEEAABUNREAAQAAANIEAABYNREAAQAAANMEAABcNREAAQAAANQEAABgNREAAQAAANUEAABkNREAAQAAANYEAABoNREAAQAAANcEAABsNREAAQAAANgEAABwNREAAQAAANkEAAB0NREAAQAAANoEAAB4NREAAQAAANsEAAB8NREAAQAAANwEAACANREAAQAAAN0EAACENREAAQAAAN4EAACINREAAQAAAN8EAACMNREAAQAAAOAEAACQNREAAQAAAOEEAACUNREAAQAAAOIEAACYNREAAQAAAOMEAACcNREAAQAAAOQEAACgNREAAQAAAOUEAACkNREAAQAAAOYEAACoNREAAQAAAOcEAACsNREAAQAAAOgEAACwNREAAQAAAOkEAAC0NREAAQAAAOoEAAC4NREAAQAAAOsEAAC8NREAAQAAAOwEAADANREAAQAAAO0EAADENREAAQAAAO4EAADINREAAQAAAO8EAADMNREAAQAAAPAEAADQNREAAQAAAPEEAADUNREAAQAAAPIEAADYNREAAQAAAPMEAADcNREAAQAAAPQEAADgNREAAQAAAPUEAADkNREAAQAAAPYEAADoNREAAQAAAPcEAADsNREAAQAAAPgEAADwNREAAQAAAPkEAAD0NREAAQAAAPoEAAD4NREAAQAAAPsEAAD8NREAAQAAAPwEAAAANhEAAQAAAP0EAAAENhEAAQAAAP4EAAAINhEAAQAAAP8EAAAMNhEAAQAAAAAFAAAQNhEAAQAAAAEFAAAUNhEAAQAAAAIFAAAYNhEAAQAAAAMFAAAcNhEAAQAAAAQFAAAgNhEAAQAAAAUFAAAkNhEAAQAAAAYFAAAoNhEAAQAAAAcFAAAsNhEAAQAAAAgFAAAwNhEAAQAAAAkFAAA0NhEAAQAAAAoFAAA4NhEAAQAAAAsFAAA8NhEAAQAAAAwFAABANhEAAQAAAA0FAABENhEAAQAAAA4FAABINhEAAQAAAA8FAABMNhEAAQAAABAFAABQNhEAAQAAABEFAABUNhEAAQAAABIFAABYNhEAAQAAABMFAABcNhEAAQAAABQFAABgNhEAAQAAABUFAABkNhEAAQAAABYFAABoNhEAAQAAABcFAABsNhEAAQAAABgFAABwNhEAAQAAABkFAAB0NhEAAQAAABoFAAB4NhEAAQAAABsFAAB8NhEAAQAAABwFAACANhEAAQAAAB0FAACENhEAAQAAAB4FAACINhEAAQAAAB8FAACMNhEAAQAAACAFAACQNhEAAQAAACEFAACUNhEAAQAAACIFAACYNhEAAQAAACMFAACcNhEAAQAAACQFAACgNhEAAQAAACUFAACkNhEAAQAAACYFAACoNhEAAQAAACcFAACsNhEAAQAAACgFAACwNhEAAQAAACkFAAC0NhEAAQAAACoFAAC4NhEAAQAAACsFAAC8NhEAAQAAACwFAADANhEAAQAAAC0FAADENhEAAQAAAC4FAADINhEAAQAAAC8FAADMNhEAAQAAADEFAADQNhEAAQAAADIFAADUNhEAAQAAADMFAADYNhEAAQAAADQFAADcNhEAAQAAADUFAADgNhEAAQAAADYFAADkNhEAAQAAADcFAADoNhEAAQAAADgFAADsNhEAAQAAADkFAADwNhEAAQAAADoFAAD0NhEAAQAAADsFAAD4NhEAAQAAADwFAAD8NhEAAQAAAD0FAAAANxEAAQAAAD4FAAAENxEAAQAAAD8FAAAINxEAAQAAAEAFAAAMNxEAAQAAAEEFAAAQNxEAAQAAAEIFAAAUNxEAAQAAAEMFAAAYNxEAAQAAAEQFAAAcNxEAAQAAAEUFAAAgNxEAAQAAAEYFAAAkNxEAAQAAAEcFAAAoNxEAAQAAAEgFAAAsNxEAAQAAAEkFAAAwNxEAAQAAAEoFAAA0NxEAAQAAAEsFAAA4NxEAAQAAAEwFAAA8NxEAAQAAAE0FAABANxEAAQAAAE4FAABENxEAAQAAAE8FAABINxEAAQAAAFAFAABMNxEAAQAAAFEFAABQNxEAAQAAAFIFAABUNxEAAQAAAFMFAABYNxEAAQAAAFQFAABcNxEAAQAAAFUFAABgNxEAAQAAAFYFAABkNxEAAQAAAGEFAABoNxEAAQAAAGIFAABsNxEAAQAAAGMFAABwNxEAAQAAAGQFAAB0NxEAAQAAAGUFAAB4NxEAAQAAAGYFAAB8NxEAAQAAAGcFAACANxEAAQAAAGgFAACENxEAAQAAAGkFAACINxEAAQAAAGoFAACMNxEAAQAAAGsFAACQNxEAAQAAAGwFAACUNxEAAQAAAG0FAACYNxEAAQAAAG4FAACcNxEAAQAAAG8FAACgNxEAAQAAAHAFAACkNxEAAQAAAHEFAACoNxEAAQAAAHIFAACsNxEAAQAAAHMFAACwNxEAAQAAAHQFAAC0NxEAAQAAAHUFAAC4NxEAAQAAAHYFAAC8NxEAAQAAAHcFAADANxEAAQAAAHgFAADENxEAAQAAAHkFAADINxEAAQAAAHoFAADMNxEAAQAAAHsFAADQNxEAAQAAAHwFAADUNxEAAQAAAH0FAADYNxEAAQAAAH4FAADcNxEAAQAAAH8FAADgNxEAAQAAAIAFAADkNxEAAQAAAIEFAADoNxEAAQAAAIIFAADsNxEAAQAAAIMFAADwNxEAAQAAAIQFAAD0NxEAAQAAAIUFAAD4NxEAAQAAAIYFAAD8NxEAAQAAAKAQAAAAOBEAAQAAAKEQAAAEOBEAAQAAAKIQAAAIOBEAAQAAAKMQAAAMOBEAAQAAAKQQAAAQOBEAAQAAAKUQAAAUOBEAAQAAAKYQAAAYOBEAAQAAAKcQAAAcOBEAAQAAAKgQAAAgOBEAAQAAAKkQAAAkOBEAAQAAAKoQAAAoOBEAAQAAAKsQAAAsOBEAAQAAAKwQAAAwOBEAAQAAAK0QAAA0OBEAAQAAAK4QAAA4OBEAAQAAAK8QAAA8OBEAAQAAALAQAABAOBEAAQAAALEQAABEOBEAAQAAALIQAABIOBEAAQAAALMQAABMOBEAAQAAALQQAABQOBEAAQAAALUQAABUOBEAAQAAALYQAABYOBEAAQAAALcQAABcOBEAAQAAALgQAABgOBEAAQAAALkQAABkOBEAAQAAALoQAABoOBEAAQAAALsQAABsOBEAAQAAALwQAABwOBEAAQAAAL0QAAB0OBEAAQAAAL4QAAB4OBEAAQAAAL8QAAB8OBEAAQAAAMAQAACAOBEAAQAAAMEQAACEOBEAAQAAAMIQAACIOBEAAQAAAMMQAACMOBEAAQAAAMQQAACQOBEAAQAAAMUQAACUOBEAAQAAAMcQAACYOBEAAQAAAM0QAACcOBEAAQAAANAQAACgOBEAAQAAANEQAACkOBEAAQAAANIQAACoOBEAAQAAANMQAACsOBEAAQAAANQQAACwOBEAAQAAANUQAAC0OBEAAQAAANYQAAC4OBEAAQAAANcQAAC8OBEAAQAAANgQAADAOBEAAQAAANkQAADEOBEAAQAAANoQAADIOBEAAQAAANsQAADMOBEAAQAAANwQAADQOBEAAQAAAN0QAADUOBEAAQAAAN4QAADYOBEAAQAAAN8QAADcOBEAAQAAAOAQAADgOBEAAQAAAOEQAADkOBEAAQAAAOIQAADoOBEAAQAAAOMQAADsOBEAAQAAAOQQAADwOBEAAQAAAOUQAAD0OBEAAQAAAOYQAAD4OBEAAQAAAOcQAAD8OBEAAQAAAOgQAAAAOREAAQAAAOkQAAAEOREAAQAAAOoQAAAIOREAAQAAAOsQAAAMOREAAQAAAOwQAAAQOREAAQAAAO0QAAAUOREAAQAAAO4QAAAYOREAAQAAAO8QAAAcOREAAQAAAPAQAAAgOREAAQAAAPEQAAAkOREAAQAAAPIQAAAoOREAAQAAAPMQAAAsOREAAQAAAPQQAAAwOREAAQAAAPUQAAA0OREAAQAAAPYQAAA4OREAAQAAAPcQAAA8OREAAQAAAPgQAABAOREAAQAAAPkQAABEOREAAQAAAPoQAABIOREAAQAAAP0QAABMOREAAQAAAP4QAABQOREAAQAAAP8QAABUOREAAQAAAKATAABYOREAAQAAAKETAABcOREAAQAAAKITAABgOREAAQAAAKMTAABkOREAAQAAAKQTAABoOREAAQAAAKUTAABsOREAAQAAAKYTAABwOREAAQAAAKcTAAB0OREAAQAAAKgTAAB4OREAAQAAAKkTAAB8OREAAQAAAKoTAACAOREAAQAAAKsTAACEOREAAQAAAKwTAACIOREAAQAAAK0TAACMOREAAQAAAK4TAACQOREAAQAAAK8TAACUOREAAQAAALATAACYOREAAQAAALETAACcOREAAQAAALITAACgOREAAQAAALMTAACkOREAAQAAALQTAACoOREAAQAAALUTAACsOREAAQAAALYTAACwOREAAQAAALcTAAC0OREAAQAAALgTAAC4OREAAQAAALkTAAC8OREAAQAAALoTAADAOREAAQAAALsTAADEOREAAQAAALwTAADIOREAAQAAAL0TAADMOREAAQAAAL4TAADQOREAAQAAAL8TAADUOREAAQAAAMATAADYOREAAQAAAMETAADcOREAAQAAAMITAADgOREAAQAAAMMTAADkOREAAQAAAMQTAADoOREAAQAAAMUTAADsOREAAQAAAMYTAADwOREAAQAAAMcTAAD0OREAAQAAAMgTAAD4OREAAQAAAMkTAAD8OREAAQAAAMoTAAAAOhEAAQAAAMsTAAAEOhEAAQAAAMwTAAAIOhEAAQAAAM0TAAAMOhEAAQAAAM4TAAAQOhEAAQAAAM8TAAAUOhEAAQAAANATAAAYOhEAAQAAANETAAAcOhEAAQAAANITAAAgOhEAAQAAANMTAAAkOhEAAQAAANQTAAAoOhEAAQAAANUTAAAsOhEAAQAAANYTAAAwOhEAAQAAANcTAAA0OhEAAQAAANgTAAA4OhEAAQAAANkTAAA8OhEAAQAAANoTAABAOhEAAQAAANsTAABEOhEAAQAAANwTAABIOhEAAQAAAN0TAABMOhEAAQAAAN4TAABQOhEAAQAAAN8TAABUOhEAAQAAAOATAABYOhEAAQAAAOETAABcOhEAAQAAAOITAABgOhEAAQAAAOMTAABkOhEAAQAAAOQTAABoOhEAAQAAAOUTAABsOhEAAQAAAOYTAABwOhEAAQAAAOcTAAB0OhEAAQAAAOgTAAB4OhEAAQAAAOkTAAB8OhEAAQAAAOoTAACAOhEAAQAAAOsTAACEOhEAAQAAAOwTAACIOhEAAQAAAO0TAACMOhEAAQAAAO4TAACQOhEAAQAAAO8TAACUOhEAAQAAAPATAACYOhEAAQAAAPETAACcOhEAAQAAAPITAACgOhEAAQAAAPMTAACkOhEAAQAAAPQTAACoOhEAAQAAAPUTAACsOhEAAQAAAPgTAACwOhEAAQAAAPkTAAC0OhEAAQAAAPoTAAC4OhEAAQAAAPsTAAC8OhEAAQAAAPwTAADAOhEAAQAAAP0TAADEOhEAAQAAAIAcAADIOhEAAgAAAIEcAADQOhEAAgAAAIIcAADYOhEAAgAAAIMcAADgOhEAAgAAAIQcAADoOhEAAwAAAIUcAAD0OhEAAwAAAIYcAAAAOxEAAgAAAIccAAAIOxEAAgAAAIgcAAAQOxEAAgAAAJAcAAAYOxEAAQAAAJEcAAAcOxEAAQAAAJIcAAAgOxEAAQAAAJMcAAAkOxEAAQAAAJQcAAAoOxEAAQAAAJUcAAAsOxEAAQAAAJYcAAAwOxEAAQAAAJccAAA0OxEAAQAAAJgcAAA4OxEAAQAAAJkcAAA8OxEAAQAAAJocAABAOxEAAQAAAJscAABEOxEAAQAAAJwcAABIOxEAAQAAAJ0cAABMOxEAAQAAAJ4cAABQOxEAAQAAAJ8cAABUOxEAAQAAAKAcAABYOxEAAQAAAKEcAABcOxEAAQAAAKIcAABgOxEAAQAAAKMcAABkOxEAAQAAAKQcAABoOxEAAQAAAKUcAABsOxEAAQAAAKYcAABwOxEAAQAAAKccAAB0OxEAAQAAAKgcAAB4OxEAAQAAAKkcAAB8OxEAAQAAAKocAACAOxEAAQAAAKscAACEOxEAAQAAAKwcAACIOxEAAQAAAK0cAACMOxEAAQAAAK4cAACQOxEAAQAAAK8cAACUOxEAAQAAALAcAACYOxEAAQAAALEcAACcOxEAAQAAALIcAACgOxEAAQAAALMcAACkOxEAAQAAALQcAACoOxEAAQAAALUcAACsOxEAAQAAALYcAACwOxEAAQAAALccAAC0OxEAAQAAALgcAAC4OxEAAQAAALkcAAC8OxEAAQAAALocAADAOxEAAQAAAL0cAADEOxEAAQAAAL4cAADIOxEAAQAAAL8cAADMOxEAAQAAAHkdAADQOxEAAQAAAH0dAADUOxEAAQAAAI4dAADYOxEAAQAAAAAeAADcOxEAAQAAAAEeAADgOxEAAQAAAAIeAADkOxEAAQAAAAMeAADoOxEAAQAAAAQeAADsOxEAAQAAAAUeAADwOxEAAQAAAAYeAAD0OxEAAQAAAAceAAD4OxEAAQAAAAgeAAD8OxEAAQAAAAkeAAAAPBEAAQAAAAoeAAAEPBEAAQAAAAseAAAIPBEAAQAAAAweAAAMPBEAAQAAAA0eAAAQPBEAAQAAAA4eAAAUPBEAAQAAAA8eAAAYPBEAAQAAABAeAAAcPBEAAQAAABEeAAAgPBEAAQAAABIeAAAkPBEAAQAAABMeAAAoPBEAAQAAABQeAAAsPBEAAQAAABUeAAAwPBEAAQAAABYeAAA0PBEAAQAAABceAAA4PBEAAQAAABgeAAA8PBEAAQAAABkeAABAPBEAAQAAABoeAABEPBEAAQAAABseAABIPBEAAQAAABweAABMPBEAAQAAAB0eAABQPBEAAQAAAB4eAABUPBEAAQAAAB8eAABYPBEAAQAAACAeAABcPBEAAQAAACEeAABgPBEAAQAAACIeAABkPBEAAQAAACMeAABoPBEAAQAAACQeAABsPBEAAQAAACUeAABwPBEAAQAAACYeAAB0PBEAAQAAACceAAB4PBEAAQAAACgeAAB8PBEAAQAAACkeAACAPBEAAQAAACoeAACEPBEAAQAAACseAACIPBEAAQAAACweAACMPBEAAQAAAC0eAACQPBEAAQAAAC4eAACUPBEAAQAAAC8eAACYPBEAAQAAADAeAACcPBEAAQAAADEeAACgPBEAAQAAADIeAACkPBEAAQAAADMeAACoPBEAAQAAADQeAACsPBEAAQAAADUeAACwPBEAAQAAADYeAAC0PBEAAQAAADceAAC4PBEAAQAAADgeAAC8PBEAAQAAADkeAADAPBEAAQAAADoeAADEPBEAAQAAADseAADIPBEAAQAAADweAADMPBEAAQAAAD0eAADQPBEAAQAAAD4eAADUPBEAAQAAAD8eAADYPBEAAQAAAEAeAADcPBEAAQAAAEEeAADgPBEAAQAAAEIeAADkPBEAAQAAAEMeAADoPBEAAQAAAEQeAADsPBEAAQAAAEUeAADwPBEAAQAAAEYeAAD0PBEAAQAAAEceAAD4PBEAAQAAAEgeAAD8PBEAAQAAAEkeAAAAPREAAQAAAEoeAAAEPREAAQAAAEseAAAIPREAAQAAAEweAAAMPREAAQAAAE0eAAAQPREAAQAAAE4eAAAUPREAAQAAAE8eAAAYPREAAQAAAFAeAAAcPREAAQAAAFEeAAAgPREAAQAAAFIeAAAkPREAAQAAAFMeAAAoPREAAQAAAFQeAAAsPREAAQAAAFUeAAAwPREAAQAAAFYeAAA0PREAAQAAAFceAAA4PREAAQAAAFgeAAA8PREAAQAAAFkeAABAPREAAQAAAFoeAABEPREAAQAAAFseAABIPREAAQAAAFweAABMPREAAQAAAF0eAABQPREAAQAAAF4eAABUPREAAQAAAF8eAABYPREAAQAAAGAeAABcPREAAgAAAGEeAABkPREAAgAAAGIeAABsPREAAQAAAGMeAABwPREAAQAAAGQeAAB0PREAAQAAAGUeAAB4PREAAQAAAGYeAAB8PREAAQAAAGceAACAPREAAQAAAGgeAACEPREAAQAAAGkeAACIPREAAQAAAGoeAACMPREAAQAAAGseAACQPREAAQAAAGweAACUPREAAQAAAG0eAACYPREAAQAAAG4eAACcPREAAQAAAG8eAACgPREAAQAAAHAeAACkPREAAQAAAHEeAACoPREAAQAAAHIeAACsPREAAQAAAHMeAACwPREAAQAAAHQeAAC0PREAAQAAAHUeAAC4PREAAQAAAHYeAAC8PREAAQAAAHceAADAPREAAQAAAHgeAADEPREAAQAAAHkeAADIPREAAQAAAHoeAADMPREAAQAAAHseAADQPREAAQAAAHweAADUPREAAQAAAH0eAADYPREAAQAAAH4eAADcPREAAQAAAH8eAADgPREAAQAAAIAeAADkPREAAQAAAIEeAADoPREAAQAAAIIeAADsPREAAQAAAIMeAADwPREAAQAAAIQeAAD0PREAAQAAAIUeAAD4PREAAQAAAIYeAAD8PREAAQAAAIceAAAAPhEAAQAAAIgeAAAEPhEAAQAAAIkeAAAIPhEAAQAAAIoeAAAMPhEAAQAAAIseAAAQPhEAAQAAAIweAAAUPhEAAQAAAI0eAAAYPhEAAQAAAI4eAAAcPhEAAQAAAI8eAAAgPhEAAQAAAJAeAAAkPhEAAQAAAJEeAAAoPhEAAQAAAJIeAAAsPhEAAQAAAJMeAAAwPhEAAQAAAJQeAAA0PhEAAQAAAJUeAAA4PhEAAQAAAJseAAA8PhEAAgAAAJ4eAABEPhEAAQAAAKAeAABIPhEAAQAAAKEeAABMPhEAAQAAAKIeAABQPhEAAQAAAKMeAABUPhEAAQAAAKQeAABYPhEAAQAAAKUeAABcPhEAAQAAAKYeAABgPhEAAQAAAKceAABkPhEAAQAAAKgeAABoPhEAAQAAAKkeAABsPhEAAQAAAKoeAABwPhEAAQAAAKseAAB0PhEAAQAAAKweAAB4PhEAAQAAAK0eAAB8PhEAAQAAAK4eAACAPhEAAQAAAK8eAACEPhEAAQAAALAeAACIPhEAAQAAALEeAACMPhEAAQAAALIeAACQPhEAAQAAALMeAACUPhEAAQAAALQeAACYPhEAAQAAALUeAACcPhEAAQAAALYeAACgPhEAAQAAALceAACkPhEAAQAAALgeAACoPhEAAQAAALkeAACsPhEAAQAAALoeAACwPhEAAQAAALseAAC0PhEAAQAAALweAAC4PhEAAQAAAL0eAAC8PhEAAQAAAL4eAADAPhEAAQAAAL8eAADEPhEAAQAAAMAeAADIPhEAAQAAAMEeAADMPhEAAQAAAMIeAADQPhEAAQAAAMMeAADUPhEAAQAAAMQeAADYPhEAAQAAAMUeAADcPhEAAQAAAMYeAADgPhEAAQAAAMceAADkPhEAAQAAAMgeAADoPhEAAQAAAMkeAADsPhEAAQAAAMoeAADwPhEAAQAAAMseAAD0PhEAAQAAAMweAAD4PhEAAQAAAM0eAAD8PhEAAQAAAM4eAAAAPxEAAQAAAM8eAAAEPxEAAQAAANAeAAAIPxEAAQAAANEeAAAMPxEAAQAAANIeAAAQPxEAAQAAANMeAAAUPxEAAQAAANQeAAAYPxEAAQAAANUeAAAcPxEAAQAAANYeAAAgPxEAAQAAANceAAAkPxEAAQAAANgeAAAoPxEAAQAAANkeAAAsPxEAAQAAANoeAAAwPxEAAQAAANseAAA0PxEAAQAAANweAAA4PxEAAQAAAN0eAAA8PxEAAQAAAN4eAABAPxEAAQAAAN8eAABEPxEAAQAAAOAeAABIPxEAAQAAAOEeAABMPxEAAQAAAOIeAABQPxEAAQAAAOMeAABUPxEAAQAAAOQeAABYPxEAAQAAAOUeAABcPxEAAQAAAOYeAABgPxEAAQAAAOceAABkPxEAAQAAAOgeAABoPxEAAQAAAOkeAABsPxEAAQAAAOoeAABwPxEAAQAAAOseAAB0PxEAAQAAAOweAAB4PxEAAQAAAO0eAAB8PxEAAQAAAO4eAACAPxEAAQAAAO8eAACEPxEAAQAAAPAeAACIPxEAAQAAAPEeAACMPxEAAQAAAPIeAACQPxEAAQAAAPMeAACUPxEAAQAAAPQeAACYPxEAAQAAAPUeAACcPxEAAQAAAPYeAACgPxEAAQAAAPceAACkPxEAAQAAAPgeAACoPxEAAQAAAPkeAACsPxEAAQAAAPoeAACwPxEAAQAAAPseAAC0PxEAAQAAAPweAAC4PxEAAQAAAP0eAAC8PxEAAQAAAP4eAADAPxEAAQAAAP8eAADEPxEAAQAAAAAfAADIPxEAAQAAAAEfAADMPxEAAQAAAAIfAADQPxEAAQAAAAMfAADUPxEAAQAAAAQfAADYPxEAAQAAAAUfAADcPxEAAQAAAAYfAADgPxEAAQAAAAcfAADkPxEAAQAAAAgfAADoPxEAAQAAAAkfAADsPxEAAQAAAAofAADwPxEAAQAAAAsfAAD0PxEAAQAAAAwfAAD4PxEAAQAAAA0fAAD8PxEAAQAAAA4fAAAAQBEAAQAAAA8fAAAEQBEAAQAAABAfAAAIQBEAAQAAABEfAAAMQBEAAQAAABIfAAAQQBEAAQAAABMfAAAUQBEAAQAAABQfAAAYQBEAAQAAABUfAAAcQBEAAQAAABgfAAAgQBEAAQAAABkfAAAkQBEAAQAAABofAAAoQBEAAQAAABsfAAAsQBEAAQAAABwfAAAwQBEAAQAAAB0fAAA0QBEAAQAAACAfAAA4QBEAAQAAACEfAAA8QBEAAQAAACIfAABAQBEAAQAAACMfAABEQBEAAQAAACQfAABIQBEAAQAAACUfAABMQBEAAQAAACYfAABQQBEAAQAAACcfAABUQBEAAQAAACgfAABYQBEAAQAAACkfAABcQBEAAQAAACofAABgQBEAAQAAACsfAABkQBEAAQAAACwfAABoQBEAAQAAAC0fAABsQBEAAQAAAC4fAABwQBEAAQAAAC8fAAB0QBEAAQAAADAfAAB4QBEAAQAAADEfAAB8QBEAAQAAADIfAACAQBEAAQAAADMfAACEQBEAAQAAADQfAACIQBEAAQAAADUfAACMQBEAAQAAADYfAACQQBEAAQAAADcfAACUQBEAAQAAADgfAACYQBEAAQAAADkfAACcQBEAAQAAADofAACgQBEAAQAAADsfAACkQBEAAQAAADwfAACoQBEAAQAAAD0fAACsQBEAAQAAAD4fAACwQBEAAQAAAD8fAAC0QBEAAQAAAEAfAAC4QBEAAQAAAEEfAAC8QBEAAQAAAEIfAADAQBEAAQAAAEMfAADEQBEAAQAAAEQfAADIQBEAAQAAAEUfAADMQBEAAQAAAEgfAADQQBEAAQAAAEkfAADUQBEAAQAAAEofAADYQBEAAQAAAEsfAADcQBEAAQAAAEwfAADgQBEAAQAAAE0fAADkQBEAAQAAAFEfAADoQBEAAQAAAFMfAADsQBEAAQAAAFUfAADwQBEAAQAAAFcfAAD0QBEAAQAAAFkfAAD4QBEAAQAAAFsfAAD8QBEAAQAAAF0fAAAAQREAAQAAAF8fAAAEQREAAQAAAGAfAAAIQREAAQAAAGEfAAAMQREAAQAAAGIfAAAQQREAAQAAAGMfAAAUQREAAQAAAGQfAAAYQREAAQAAAGUfAAAcQREAAQAAAGYfAAAgQREAAQAAAGcfAAAkQREAAQAAAGgfAAAoQREAAQAAAGkfAAAsQREAAQAAAGofAAAwQREAAQAAAGsfAAA0QREAAQAAAGwfAAA4QREAAQAAAG0fAAA8QREAAQAAAG4fAABAQREAAQAAAG8fAABEQREAAQAAAHAfAABIQREAAQAAAHEfAABMQREAAQAAAHIfAABQQREAAQAAAHMfAABUQREAAQAAAHQfAABYQREAAQAAAHUfAABcQREAAQAAAHYfAABgQREAAQAAAHcfAABkQREAAQAAAHgfAABoQREAAQAAAHkfAABsQREAAQAAAHofAABwQREAAQAAAHsfAAB0QREAAQAAAHwfAAB4QREAAQAAAH0fAAB8QREAAQAAAIAfAACAQREAAQAAAIEfAACEQREAAQAAAIIfAACIQREAAQAAAIMfAACMQREAAQAAAIQfAACQQREAAQAAAIUfAACUQREAAQAAAIYfAACYQREAAQAAAIcfAACcQREAAQAAAIgfAACgQREAAQAAAIkfAACkQREAAQAAAIofAACoQREAAQAAAIsfAACsQREAAQAAAIwfAACwQREAAQAAAI0fAAC0QREAAQAAAI4fAAC4QREAAQAAAI8fAAC8QREAAQAAAJAfAADAQREAAQAAAJEfAADEQREAAQAAAJIfAADIQREAAQAAAJMfAADMQREAAQAAAJQfAADQQREAAQAAAJUfAADUQREAAQAAAJYfAADYQREAAQAAAJcfAADcQREAAQAAAJgfAADgQREAAQAAAJkfAADkQREAAQAAAJofAADoQREAAQAAAJsfAADsQREAAQAAAJwfAADwQREAAQAAAJ0fAAD0QREAAQAAAJ4fAAD4QREAAQAAAJ8fAAD8QREAAQAAAKAfAAAAQhEAAQAAAKEfAAAEQhEAAQAAAKIfAAAIQhEAAQAAAKMfAAAMQhEAAQAAAKQfAAAQQhEAAQAAAKUfAAAUQhEAAQAAAKYfAAAYQhEAAQAAAKcfAAAcQhEAAQAAAKgfAAAgQhEAAQAAAKkfAAAkQhEAAQAAAKofAAAoQhEAAQAAAKsfAAAsQhEAAQAAAKwfAAAwQhEAAQAAAK0fAAA0QhEAAQAAAK4fAAA4QhEAAQAAAK8fAAA8QhEAAQAAALAfAABAQhEAAQAAALEfAABEQhEAAQAAALMfAABIQhEAAQAAALgfAABMQhEAAQAAALkfAABQQhEAAQAAALofAABUQhEAAQAAALsfAABYQhEAAQAAALwfAABcQhEAAQAAAL4fAABgQhEAAwAAAMMfAABsQhEAAQAAAMgfAABwQhEAAQAAAMkfAAB0QhEAAQAAAMofAAB4QhEAAQAAAMsfAAB8QhEAAQAAAMwfAACAQhEAAQAAANAfAACEQhEAAQAAANEfAACIQhEAAQAAANgfAACMQhEAAQAAANkfAACQQhEAAQAAANofAACUQhEAAQAAANsfAACYQhEAAQAAAOAfAACcQhEAAQAAAOEfAACgQhEAAQAAAOUfAACkQhEAAQAAAOgfAACoQhEAAQAAAOkfAACsQhEAAQAAAOofAACwQhEAAQAAAOsfAAC0QhEAAQAAAOwfAAC4QhEAAQAAAPMfAAC8QhEAAQAAAPgfAADAQhEAAQAAAPkfAADEQhEAAQAAAPofAADIQhEAAQAAAPsfAADMQhEAAQAAAPwfAADQQhEAAQAAACYhAADUQhEAAgAAACohAADcQhEAAgAAACshAADkQhEAAgAAADIhAADsQhEAAQAAAE4hAADwQhEAAQAAAGAhAAD0QhEAAQAAAGEhAAD4QhEAAQAAAGIhAAD8QhEAAQAAAGMhAAAAQxEAAQAAAGQhAAAEQxEAAQAAAGUhAAAIQxEAAQAAAGYhAAAMQxEAAQAAAGchAAAQQxEAAQAAAGghAAAUQxEAAQAAAGkhAAAYQxEAAQAAAGohAAAcQxEAAQAAAGshAAAgQxEAAQAAAGwhAAAkQxEAAQAAAG0hAAAoQxEAAQAAAG4hAAAsQxEAAQAAAG8hAAAwQxEAAQAAAHAhAAA0QxEAAQAAAHEhAAA4QxEAAQAAAHIhAAA8QxEAAQAAAHMhAABAQxEAAQAAAHQhAABEQxEAAQAAAHUhAABIQxEAAQAAAHYhAABMQxEAAQAAAHchAABQQxEAAQAAAHghAABUQxEAAQAAAHkhAABYQxEAAQAAAHohAABcQxEAAQAAAHshAABgQxEAAQAAAHwhAABkQxEAAQAAAH0hAABoQxEAAQAAAH4hAABsQxEAAQAAAH8hAABwQxEAAQAAAIMhAAB0QxEAAQAAAIQhAAB4QxEAAQAAALYkAAB8QxEAAQAAALckAACAQxEAAQAAALgkAACEQxEAAQAAALkkAACIQxEAAQAAALokAACMQxEAAQAAALskAACQQxEAAQAAALwkAACUQxEAAQAAAL0kAACYQxEAAQAAAL4kAACcQxEAAQAAAL8kAACgQxEAAQAAAMAkAACkQxEAAQAAAMEkAACoQxEAAQAAAMIkAACsQxEAAQAAAMMkAACwQxEAAQAAAMQkAAC0QxEAAQAAAMUkAAC4QxEAAQAAAMYkAAC8QxEAAQAAAMckAADAQxEAAQAAAMgkAADEQxEAAQAAAMkkAADIQxEAAQAAAMokAADMQxEAAQAAAMskAADQQxEAAQAAAMwkAADUQxEAAQAAAM0kAADYQxEAAQAAAM4kAADcQxEAAQAAAM8kAADgQxEAAQAAANAkAADkQxEAAQAAANEkAADoQxEAAQAAANIkAADsQxEAAQAAANMkAADwQxEAAQAAANQkAAD0QxEAAQAAANUkAAD4QxEAAQAAANYkAAD8QxEAAQAAANckAAAARBEAAQAAANgkAAAERBEAAQAAANkkAAAIRBEAAQAAANokAAAMRBEAAQAAANskAAAQRBEAAQAAANwkAAAURBEAAQAAAN0kAAAYRBEAAQAAAN4kAAAcRBEAAQAAAN8kAAAgRBEAAQAAAOAkAAAkRBEAAQAAAOEkAAAoRBEAAQAAAOIkAAAsRBEAAQAAAOMkAAAwRBEAAQAAAOQkAAA0RBEAAQAAAOUkAAA4RBEAAQAAAOYkAAA8RBEAAQAAAOckAABARBEAAQAAAOgkAABERBEAAQAAAOkkAABIRBEAAQAAAAAsAABMRBEAAQAAAAEsAABQRBEAAQAAAAIsAABURBEAAQAAAAMsAABYRBEAAQAAAAQsAABcRBEAAQAAAAUsAABgRBEAAQAAAAYsAABkRBEAAQAAAAcsAABoRBEAAQAAAAgsAABsRBEAAQAAAAksAABwRBEAAQAAAAosAAB0RBEAAQAAAAssAAB4RBEAAQAAAAwsAAB8RBEAAQAAAA0sAACARBEAAQAAAA4sAACERBEAAQAAAA8sAACIRBEAAQAAABAsAACMRBEAAQAAABEsAACQRBEAAQAAABIsAACURBEAAQAAABMsAACYRBEAAQAAABQsAACcRBEAAQAAABUsAACgRBEAAQAAABYsAACkRBEAAQAAABcsAACoRBEAAQAAABgsAACsRBEAAQAAABksAACwRBEAAQAAABosAAC0RBEAAQAAABssAAC4RBEAAQAAABwsAAC8RBEAAQAAAB0sAADARBEAAQAAAB4sAADERBEAAQAAAB8sAADIRBEAAQAAACAsAADMRBEAAQAAACEsAADQRBEAAQAAACIsAADURBEAAQAAACMsAADYRBEAAQAAACQsAADcRBEAAQAAACUsAADgRBEAAQAAACYsAADkRBEAAQAAACcsAADoRBEAAQAAACgsAADsRBEAAQAAACksAADwRBEAAQAAACosAAD0RBEAAQAAACssAAD4RBEAAQAAACwsAAD8RBEAAQAAAC0sAAAARREAAQAAAC4sAAAERREAAQAAAC8sAAAIRREAAQAAADAsAAAMRREAAQAAADEsAAAQRREAAQAAADIsAAAURREAAQAAADMsAAAYRREAAQAAADQsAAAcRREAAQAAADUsAAAgRREAAQAAADYsAAAkRREAAQAAADcsAAAoRREAAQAAADgsAAAsRREAAQAAADksAAAwRREAAQAAADosAAA0RREAAQAAADssAAA4RREAAQAAADwsAAA8RREAAQAAAD0sAABARREAAQAAAD4sAABERREAAQAAAD8sAABIRREAAQAAAEAsAABMRREAAQAAAEEsAABQRREAAQAAAEIsAABURREAAQAAAEMsAABYRREAAQAAAEQsAABcRREAAQAAAEUsAABgRREAAQAAAEYsAABkRREAAQAAAEcsAABoRREAAQAAAEgsAABsRREAAQAAAEksAABwRREAAQAAAEosAAB0RREAAQAAAEssAAB4RREAAQAAAEwsAAB8RREAAQAAAE0sAACARREAAQAAAE4sAACERREAAQAAAE8sAACIRREAAQAAAFAsAACMRREAAQAAAFEsAACQRREAAQAAAFIsAACURREAAQAAAFMsAACYRREAAQAAAFQsAACcRREAAQAAAFUsAACgRREAAQAAAFYsAACkRREAAQAAAFcsAACoRREAAQAAAFgsAACsRREAAQAAAFksAACwRREAAQAAAFosAAC0RREAAQAAAFssAAC4RREAAQAAAFwsAAC8RREAAQAAAF0sAADARREAAQAAAF4sAADERREAAQAAAF8sAADIRREAAQAAAGAsAADMRREAAQAAAGEsAADQRREAAQAAAGIsAADURREAAQAAAGMsAADYRREAAQAAAGQsAADcRREAAQAAAGUsAADgRREAAQAAAGYsAADkRREAAQAAAGcsAADoRREAAQAAAGgsAADsRREAAQAAAGksAADwRREAAQAAAGosAAD0RREAAQAAAGssAAD4RREAAQAAAGwsAAD8RREAAQAAAG0sAAAARhEAAQAAAG4sAAAERhEAAQAAAG8sAAAIRhEAAQAAAHAsAAAMRhEAAQAAAHIsAAAQRhEAAQAAAHMsAAAURhEAAQAAAHUsAAAYRhEAAQAAAHYsAAAcRhEAAQAAAH4sAAAgRhEAAQAAAH8sAAAkRhEAAQAAAIAsAAAoRhEAAQAAAIEsAAAsRhEAAQAAAIIsAAAwRhEAAQAAAIMsAAA0RhEAAQAAAIQsAAA4RhEAAQAAAIUsAAA8RhEAAQAAAIYsAABARhEAAQAAAIcsAABERhEAAQAAAIgsAABIRhEAAQAAAIksAABMRhEAAQAAAIosAABQRhEAAQAAAIssAABURhEAAQAAAIwsAABYRhEAAQAAAI0sAABcRhEAAQAAAI4sAABgRhEAAQAAAI8sAABkRhEAAQAAAJAsAABoRhEAAQAAAJEsAABsRhEAAQAAAJIsAABwRhEAAQAAAJMsAAB0RhEAAQAAAJQsAAB4RhEAAQAAAJUsAAB8RhEAAQAAAJYsAACARhEAAQAAAJcsAACERhEAAQAAAJgsAACIRhEAAQAAAJksAACMRhEAAQAAAJosAACQRhEAAQAAAJssAACURhEAAQAAAJwsAACYRhEAAQAAAJ0sAACcRhEAAQAAAJ4sAACgRhEAAQAAAJ8sAACkRhEAAQAAAKAsAACoRhEAAQAAAKEsAACsRhEAAQAAAKIsAACwRhEAAQAAAKMsAAC0RhEAAQAAAKQsAAC4RhEAAQAAAKUsAAC8RhEAAQAAAKYsAADARhEAAQAAAKcsAADERhEAAQAAAKgsAADIRhEAAQAAAKksAADMRhEAAQAAAKosAADQRhEAAQAAAKssAADURhEAAQAAAKwsAADYRhEAAQAAAK0sAADcRhEAAQAAAK4sAADgRhEAAQAAAK8sAADkRhEAAQAAALAsAADoRhEAAQAAALEsAADsRhEAAQAAALIsAADwRhEAAQAAALMsAAD0RhEAAQAAALQsAAD4RhEAAQAAALUsAAD8RhEAAQAAALYsAAAARxEAAQAAALcsAAAERxEAAQAAALgsAAAIRxEAAQAAALksAAAMRxEAAQAAALosAAAQRxEAAQAAALssAAAURxEAAQAAALwsAAAYRxEAAQAAAL0sAAAcRxEAAQAAAL4sAAAgRxEAAQAAAL8sAAAkRxEAAQAAAMAsAAAoRxEAAQAAAMEsAAAsRxEAAQAAAMIsAAAwRxEAAQAAAMMsAAA0RxEAAQAAAMQsAAA4RxEAAQAAAMUsAAA8RxEAAQAAAMYsAABARxEAAQAAAMcsAABERxEAAQAAAMgsAABIRxEAAQAAAMksAABMRxEAAQAAAMosAABQRxEAAQAAAMssAABURxEAAQAAAMwsAABYRxEAAQAAAM0sAABcRxEAAQAAAM4sAABgRxEAAQAAAM8sAABkRxEAAQAAANAsAABoRxEAAQAAANEsAABsRxEAAQAAANIsAABwRxEAAQAAANMsAAB0RxEAAQAAANQsAAB4RxEAAQAAANUsAAB8RxEAAQAAANYsAACARxEAAQAAANcsAACERxEAAQAAANgsAACIRxEAAQAAANksAACMRxEAAQAAANosAACQRxEAAQAAANssAACURxEAAQAAANwsAACYRxEAAQAAAN0sAACcRxEAAQAAAN4sAACgRxEAAQAAAN8sAACkRxEAAQAAAOAsAACoRxEAAQAAAOEsAACsRxEAAQAAAOIsAACwRxEAAQAAAOMsAAC0RxEAAQAAAOssAAC4RxEAAQAAAOwsAAC8RxEAAQAAAO0sAADARxEAAQAAAO4sAADERxEAAQAAAPIsAADIRxEAAQAAAPMsAADMRxEAAQAAAAAtAADQRxEAAQAAAAEtAADURxEAAQAAAAItAADYRxEAAQAAAAMtAADcRxEAAQAAAAQtAADgRxEAAQAAAAUtAADkRxEAAQAAAAYtAADoRxEAAQAAAActAADsRxEAAQAAAAgtAADwRxEAAQAAAAktAAD0RxEAAQAAAAotAAD4RxEAAQAAAAstAAD8RxEAAQAAAAwtAAAASBEAAQAAAA0tAAAESBEAAQAAAA4tAAAISBEAAQAAAA8tAAAMSBEAAQAAABAtAAAQSBEAAQAAABEtAAAUSBEAAQAAABItAAAYSBEAAQAAABMtAAAcSBEAAQAAABQtAAAgSBEAAQAAABUtAAAkSBEAAQAAABYtAAAoSBEAAQAAABctAAAsSBEAAQAAABgtAAAwSBEAAQAAABktAAA0SBEAAQAAABotAAA4SBEAAQAAABstAAA8SBEAAQAAABwtAABASBEAAQAAAB0tAABESBEAAQAAAB4tAABISBEAAQAAAB8tAABMSBEAAQAAACAtAABQSBEAAQAAACEtAABUSBEAAQAAACItAABYSBEAAQAAACMtAABcSBEAAQAAACQtAABgSBEAAQAAACUtAABkSBEAAQAAACctAABoSBEAAQAAAC0tAABsSBEAAQAAAECmAABwSBEAAQAAAEGmAAB0SBEAAQAAAEKmAAB4SBEAAQAAAEOmAAB8SBEAAQAAAESmAACASBEAAQAAAEWmAACESBEAAQAAAEamAACISBEAAQAAAEemAACMSBEAAQAAAEimAACQSBEAAQAAAEmmAACUSBEAAQAAAEqmAACYSBEAAgAAAEumAACgSBEAAgAAAEymAACoSBEAAQAAAE2mAACsSBEAAQAAAE6mAACwSBEAAQAAAE+mAAC0SBEAAQAAAFCmAAC4SBEAAQAAAFGmAAC8SBEAAQAAAFKmAADASBEAAQAAAFOmAADESBEAAQAAAFSmAADISBEAAQAAAFWmAADMSBEAAQAAAFamAADQSBEAAQAAAFemAADUSBEAAQAAAFimAADYSBEAAQAAAFmmAADcSBEAAQAAAFqmAADgSBEAAQAAAFumAADkSBEAAQAAAFymAADoSBEAAQAAAF2mAADsSBEAAQAAAF6mAADwSBEAAQAAAF+mAAD0SBEAAQAAAGCmAAD4SBEAAQAAAGGmAAD8SBEAAQAAAGKmAAAASREAAQAAAGOmAAAESREAAQAAAGSmAAAISREAAQAAAGWmAAAMSREAAQAAAGamAAAQSREAAQAAAGemAAAUSREAAQAAAGimAAAYSREAAQAAAGmmAAAcSREAAQAAAGqmAAAgSREAAQAAAGumAAAkSREAAQAAAGymAAAoSREAAQAAAG2mAAAsSREAAQAAAICmAAAwSREAAQAAAIGmAAA0SREAAQAAAIKmAAA4SREAAQAAAIOmAAA8SREAAQAAAISmAABASREAAQAAAIWmAABESREAAQAAAIamAABISREAAQAAAIemAABMSREAAQAAAIimAABQSREAAQAAAImmAABUSREAAQAAAIqmAABYSREAAQAAAIumAABcSREAAQAAAIymAABgSREAAQAAAI2mAABkSREAAQAAAI6mAABoSREAAQAAAI+mAABsSREAAQAAAJCmAABwSREAAQAAAJGmAAB0SREAAQAAAJKmAAB4SREAAQAAAJOmAAB8SREAAQAAAJSmAACASREAAQAAAJWmAACESREAAQAAAJamAACISREAAQAAAJemAACMSREAAQAAAJimAACQSREAAQAAAJmmAACUSREAAQAAAJqmAACYSREAAQAAAJumAACcSREAAQAAACKnAACgSREAAQAAACOnAACkSREAAQAAACSnAACoSREAAQAAACWnAACsSREAAQAAACanAACwSREAAQAAACenAAC0SREAAQAAACinAAC4SREAAQAAACmnAAC8SREAAQAAACqnAADASREAAQAAACunAADESREAAQAAACynAADISREAAQAAAC2nAADMSREAAQAAAC6nAADQSREAAQAAAC+nAADUSREAAQAAADKnAADYSREAAQAAADOnAADcSREAAQAAADSnAADgSREAAQAAADWnAADkSREAAQAAADanAADoSREAAQAAADenAADsSREAAQAAADinAADwSREAAQAAADmnAAD0SREAAQAAADqnAAD4SREAAQAAADunAAD8SREAAQAAADynAAAAShEAAQAAAD2nAAAEShEAAQAAAD6nAAAIShEAAQAAAD+nAAAMShEAAQAAAECnAAAQShEAAQAAAEGnAAAUShEAAQAAAEKnAAAYShEAAQAAAEOnAAAcShEAAQAAAESnAAAgShEAAQAAAEWnAAAkShEAAQAAAEanAAAoShEAAQAAAEenAAAsShEAAQAAAEinAAAwShEAAQAAAEmnAAA0ShEAAQAAAEqnAAA4ShEAAQAAAEunAAA8ShEAAQAAAEynAABAShEAAQAAAE2nAABEShEAAQAAAE6nAABIShEAAQAAAE+nAABMShEAAQAAAFCnAABQShEAAQAAAFGnAABUShEAAQAAAFKnAABYShEAAQAAAFOnAABcShEAAQAAAFSnAABgShEAAQAAAFWnAABkShEAAQAAAFanAABoShEAAQAAAFenAABsShEAAQAAAFinAABwShEAAQAAAFmnAAB0ShEAAQAAAFqnAAB4ShEAAQAAAFunAAB8ShEAAQAAAFynAACAShEAAQAAAF2nAACEShEAAQAAAF6nAACIShEAAQAAAF+nAACMShEAAQAAAGCnAACQShEAAQAAAGGnAACUShEAAQAAAGKnAACYShEAAQAAAGOnAACcShEAAQAAAGSnAACgShEAAQAAAGWnAACkShEAAQAAAGanAACoShEAAQAAAGenAACsShEAAQAAAGinAACwShEAAQAAAGmnAAC0ShEAAQAAAGqnAAC4ShEAAQAAAGunAAC8ShEAAQAAAGynAADAShEAAQAAAG2nAADEShEAAQAAAG6nAADIShEAAQAAAG+nAADMShEAAQAAAHmnAADQShEAAQAAAHqnAADUShEAAQAAAHunAADYShEAAQAAAHynAADcShEAAQAAAH2nAADgShEAAQAAAH6nAADkShEAAQAAAH+nAADoShEAAQAAAICnAADsShEAAQAAAIGnAADwShEAAQAAAIKnAAD0ShEAAQAAAIOnAAD4ShEAAQAAAISnAAD8ShEAAQAAAIWnAAAASxEAAQAAAIanAAAESxEAAQAAAIenAAAISxEAAQAAAIunAAAMSxEAAQAAAIynAAAQSxEAAQAAAI2nAAAUSxEAAQAAAJCnAAAYSxEAAQAAAJGnAAAcSxEAAQAAAJKnAAAgSxEAAQAAAJOnAAAkSxEAAQAAAJSnAAAoSxEAAQAAAJanAAAsSxEAAQAAAJenAAAwSxEAAQAAAJinAAA0SxEAAQAAAJmnAAA4SxEAAQAAAJqnAAA8SxEAAQAAAJunAABASxEAAQAAAJynAABESxEAAQAAAJ2nAABISxEAAQAAAJ6nAABMSxEAAQAAAJ+nAABQSxEAAQAAAKCnAABUSxEAAQAAAKGnAABYSxEAAQAAAKKnAABcSxEAAQAAAKOnAABgSxEAAQAAAKSnAABkSxEAAQAAAKWnAABoSxEAAQAAAKanAABsSxEAAQAAAKenAABwSxEAAQAAAKinAAB0SxEAAQAAAKmnAAB4SxEAAQAAAKqnAAB8SxEAAQAAAKunAACASxEAAQAAAKynAACESxEAAQAAAK2nAACISxEAAQAAAK6nAACMSxEAAQAAALCnAACQSxEAAQAAALGnAACUSxEAAQAAALKnAACYSxEAAQAAALOnAACcSxEAAQAAALSnAACgSxEAAQAAALWnAACkSxEAAQAAALanAACoSxEAAQAAALenAACsSxEAAQAAALinAACwSxEAAQAAALmnAAC0SxEAAQAAALqnAAC4SxEAAQAAALunAAC8SxEAAQAAALynAADASxEAAQAAAL2nAADESxEAAQAAAL6nAADISxEAAQAAAL+nAADMSxEAAQAAAMCnAADQSxEAAQAAAMGnAADUSxEAAQAAAMKnAADYSxEAAQAAAMOnAADcSxEAAQAAAMSnAADgSxEAAQAAAMWnAADkSxEAAQAAAManAADoSxEAAQAAAMenAADsSxEAAQAAAMinAADwSxEAAQAAAMmnAAD0SxEAAQAAAMqnAAD4SxEAAQAAANCnAAD8SxEAAQAAANGnAAAATBEAAQAAANanAAAETBEAAQAAANenAAAITBEAAQAAANinAAAMTBEAAQAAANmnAAAQTBEAAQAAAPWnAAAUTBEAAQAAAPanAAAYTBEAAQAAAFOrAAAcTBEAAQAAAHCrAAAgTBEAAQAAAHGrAAAkTBEAAQAAAHKrAAAoTBEAAQAAAHOrAAAsTBEAAQAAAHSrAAAwTBEAAQAAAHWrAAA0TBEAAQAAAHarAAA4TBEAAQAAAHerAAA8TBEAAQAAAHirAABATBEAAQAAAHmrAABETBEAAQAAAHqrAABITBEAAQAAAHurAABMTBEAAQAAAHyrAABQTBEAAQAAAH2rAABUTBEAAQAAAH6rAABYTBEAAQAAAH+rAABcTBEAAQAAAICrAABgTBEAAQAAAIGrAABkTBEAAQAAAIKrAABoTBEAAQAAAIOrAABsTBEAAQAAAISrAABwTBEAAQAAAIWrAAB0TBEAAQAAAIarAAB4TBEAAQAAAIerAAB8TBEAAQAAAIirAACATBEAAQAAAImrAACETBEAAQAAAIqrAACITBEAAQAAAIurAACMTBEAAQAAAIyrAACQTBEAAQAAAI2rAACUTBEAAQAAAI6rAACYTBEAAQAAAI+rAACcTBEAAQAAAJCrAACgTBEAAQAAAJGrAACkTBEAAQAAAJKrAACoTBEAAQAAAJOrAACsTBEAAQAAAJSrAACwTBEAAQAAAJWrAAC0TBEAAQAAAJarAAC4TBEAAQAAAJerAAC8TBEAAQAAAJirAADATBEAAQAAAJmrAADETBEAAQAAAJqrAADITBEAAQAAAJurAADMTBEAAQAAAJyrAADQTBEAAQAAAJ2rAADUTBEAAQAAAJ6rAADYTBEAAQAAAJ+rAADcTBEAAQAAAKCrAADgTBEAAQAAAKGrAADkTBEAAQAAAKKrAADoTBEAAQAAAKOrAADsTBEAAQAAAKSrAADwTBEAAQAAAKWrAAD0TBEAAQAAAKarAAD4TBEAAQAAAKerAAD8TBEAAQAAAKirAAAATREAAQAAAKmrAAAETREAAQAAAKqrAAAITREAAQAAAKurAAAMTREAAQAAAKyrAAAQTREAAQAAAK2rAAAUTREAAQAAAK6rAAAYTREAAQAAAK+rAAAcTREAAQAAALCrAAAgTREAAQAAALGrAAAkTREAAQAAALKrAAAoTREAAQAAALOrAAAsTREAAQAAALSrAAAwTREAAQAAALWrAAA0TREAAQAAALarAAA4TREAAQAAALerAAA8TREAAQAAALirAABATREAAQAAALmrAABETREAAQAAALqrAABITREAAQAAALurAABMTREAAQAAALyrAABQTREAAQAAAL2rAABUTREAAQAAAL6rAABYTREAAQAAAL+rAABcTREAAQAAACH/AABgTREAAQAAACL/AABkTREAAQAAACP/AABoTREAAQAAACT/AABsTREAAQAAACX/AABwTREAAQAAACb/AAB0TREAAQAAACf/AAB4TREAAQAAACj/AAB8TREAAQAAACn/AACATREAAQAAACr/AACETREAAQAAACv/AACITREAAQAAACz/AACMTREAAQAAAC3/AACQTREAAQAAAC7/AACUTREAAQAAAC//AACYTREAAQAAADD/AACcTREAAQAAADH/AACgTREAAQAAADL/AACkTREAAQAAADP/AACoTREAAQAAADT/AACsTREAAQAAADX/AACwTREAAQAAADb/AAC0TREAAQAAADf/AAC4TREAAQAAADj/AAC8TREAAQAAADn/AADATREAAQAAADr/AADETREAAQAAAEH/AADITREAAQAAAEL/AADMTREAAQAAAEP/AADQTREAAQAAAET/AADUTREAAQAAAEX/AADYTREAAQAAAEb/AADcTREAAQAAAEf/AADgTREAAQAAAEj/AADkTREAAQAAAEn/AADoTREAAQAAAEr/AADsTREAAQAAAEv/AADwTREAAQAAAEz/AAD0TREAAQAAAE3/AAD4TREAAQAAAE7/AAD8TREAAQAAAE//AAAAThEAAQAAAFD/AAAEThEAAQAAAFH/AAAIThEAAQAAAFL/AAAMThEAAQAAAFP/AAAQThEAAQAAAFT/AAAUThEAAQAAAFX/AAAYThEAAQAAAFb/AAAcThEAAQAAAFf/AAAgThEAAQAAAFj/AAAkThEAAQAAAFn/AAAoThEAAQAAAFr/AAAsThEAAQAAAAAEAQAwThEAAQAAAAEEAQA0ThEAAQAAAAIEAQA4ThEAAQAAAAMEAQA8ThEAAQAAAAQEAQBAThEAAQAAAAUEAQBEThEAAQAAAAYEAQBIThEAAQAAAAcEAQBMThEAAQAAAAgEAQBQThEAAQAAAAkEAQBUThEAAQAAAAoEAQBYThEAAQAAAAsEAQBcThEAAQAAAAwEAQBgThEAAQAAAA0EAQBkThEAAQAAAA4EAQBoThEAAQAAAA8EAQBsThEAAQAAABAEAQBwThEAAQAAABEEAQB0ThEAAQAAABIEAQB4ThEAAQAAABMEAQB8ThEAAQAAABQEAQCAThEAAQAAABUEAQCEThEAAQAAABYEAQCIThEAAQAAABcEAQCMThEAAQAAABgEAQCQThEAAQAAABkEAQCUThEAAQAAABoEAQCYThEAAQAAABsEAQCcThEAAQAAABwEAQCgThEAAQAAAB0EAQCkThEAAQAAAB4EAQCoThEAAQAAAB8EAQCsThEAAQAAACAEAQCwThEAAQAAACEEAQC0ThEAAQAAACIEAQC4ThEAAQAAACMEAQC8ThEAAQAAACQEAQDAThEAAQAAACUEAQDEThEAAQAAACYEAQDIThEAAQAAACcEAQDMThEAAQAAACgEAQDQThEAAQAAACkEAQDUThEAAQAAACoEAQDYThEAAQAAACsEAQDcThEAAQAAACwEAQDgThEAAQAAAC0EAQDkThEAAQAAAC4EAQDoThEAAQAAAC8EAQDsThEAAQAAADAEAQDwThEAAQAAADEEAQD0ThEAAQAAADIEAQD4ThEAAQAAADMEAQD8ThEAAQAAADQEAQAATxEAAQAAADUEAQAETxEAAQAAADYEAQAITxEAAQAAADcEAQAMTxEAAQAAADgEAQAQTxEAAQAAADkEAQAUTxEAAQAAADoEAQAYTxEAAQAAADsEAQAcTxEAAQAAADwEAQAgTxEAAQAAAD0EAQAkTxEAAQAAAD4EAQAoTxEAAQAAAD8EAQAsTxEAAQAAAEAEAQAwTxEAAQAAAEEEAQA0TxEAAQAAAEIEAQA4TxEAAQAAAEMEAQA8TxEAAQAAAEQEAQBATxEAAQAAAEUEAQBETxEAAQAAAEYEAQBITxEAAQAAAEcEAQBMTxEAAQAAAEgEAQBQTxEAAQAAAEkEAQBUTxEAAQAAAEoEAQBYTxEAAQAAAEsEAQBcTxEAAQAAAEwEAQBgTxEAAQAAAE0EAQBkTxEAAQAAAE4EAQBoTxEAAQAAAE8EAQBsTxEAAQAAALAEAQBwTxEAAQAAALEEAQB0TxEAAQAAALIEAQB4TxEAAQAAALMEAQB8TxEAAQAAALQEAQCATxEAAQAAALUEAQCETxEAAQAAALYEAQCITxEAAQAAALcEAQCMTxEAAQAAALgEAQCQTxEAAQAAALkEAQCUTxEAAQAAALoEAQCYTxEAAQAAALsEAQCcTxEAAQAAALwEAQCgTxEAAQAAAL0EAQCkTxEAAQAAAL4EAQCoTxEAAQAAAL8EAQCsTxEAAQAAAMAEAQCwTxEAAQAAAMEEAQC0TxEAAQAAAMIEAQC4TxEAAQAAAMMEAQC8TxEAAQAAAMQEAQDATxEAAQAAAMUEAQDETxEAAQAAAMYEAQDITxEAAQAAAMcEAQDMTxEAAQAAAMgEAQDQTxEAAQAAAMkEAQDUTxEAAQAAAMoEAQDYTxEAAQAAAMsEAQDcTxEAAQAAAMwEAQDgTxEAAQAAAM0EAQDkTxEAAQAAAM4EAQDoTxEAAQAAAM8EAQDsTxEAAQAAANAEAQDwTxEAAQAAANEEAQD0TxEAAQAAANIEAQD4TxEAAQAAANMEAQD8TxEAAQAAANgEAQAAUBEAAQAAANkEAQAEUBEAAQAAANoEAQAIUBEAAQAAANsEAQAMUBEAAQAAANwEAQAQUBEAAQAAAN0EAQAUUBEAAQAAAN4EAQAYUBEAAQAAAN8EAQAcUBEAAQAAAOAEAQAgUBEAAQAAAOEEAQAkUBEAAQAAAOIEAQAoUBEAAQAAAOMEAQAsUBEAAQAAAOQEAQAwUBEAAQAAAOUEAQA0UBEAAQAAAOYEAQA4UBEAAQAAAOcEAQA8UBEAAQAAAOgEAQBAUBEAAQAAAOkEAQBEUBEAAQAAAOoEAQBIUBEAAQAAAOsEAQBMUBEAAQAAAOwEAQBQUBEAAQAAAO0EAQBUUBEAAQAAAO4EAQBYUBEAAQAAAO8EAQBcUBEAAQAAAPAEAQBgUBEAAQAAAPEEAQBkUBEAAQAAAPIEAQBoUBEAAQAAAPMEAQBsUBEAAQAAAPQEAQBwUBEAAQAAAPUEAQB0UBEAAQAAAPYEAQB4UBEAAQAAAPcEAQB8UBEAAQAAAPgEAQCAUBEAAQAAAPkEAQCEUBEAAQAAAPoEAQCIUBEAAQAAAPsEAQCMUBEAAQAAAHAFAQCQUBEAAQAAAHEFAQCUUBEAAQAAAHIFAQCYUBEAAQAAAHMFAQCcUBEAAQAAAHQFAQCgUBEAAQAAAHUFAQCkUBEAAQAAAHYFAQCoUBEAAQAAAHcFAQCsUBEAAQAAAHgFAQCwUBEAAQAAAHkFAQC0UBEAAQAAAHoFAQC4UBEAAQAAAHwFAQC8UBEAAQAAAH0FAQDAUBEAAQAAAH4FAQDEUBEAAQAAAH8FAQDIUBEAAQAAAIAFAQDMUBEAAQAAAIEFAQDQUBEAAQAAAIIFAQDUUBEAAQAAAIMFAQDYUBEAAQAAAIQFAQDcUBEAAQAAAIUFAQDgUBEAAQAAAIYFAQDkUBEAAQAAAIcFAQDoUBEAAQAAAIgFAQDsUBEAAQAAAIkFAQDwUBEAAQAAAIoFAQD0UBEAAQAAAIwFAQD4UBEAAQAAAI0FAQD8UBEAAQAAAI4FAQAAUREAAQAAAI8FAQAEUREAAQAAAJAFAQAIUREAAQAAAJEFAQAMUREAAQAAAJIFAQAQUREAAQAAAJQFAQAUUREAAQAAAJUFAQAYUREAAQAAAJcFAQAcUREAAQAAAJgFAQAgUREAAQAAAJkFAQAkUREAAQAAAJoFAQAoUREAAQAAAJsFAQAsUREAAQAAAJwFAQAwUREAAQAAAJ0FAQA0UREAAQAAAJ4FAQA4UREAAQAAAJ8FAQA8UREAAQAAAKAFAQBAUREAAQAAAKEFAQBEUREAAQAAAKMFAQBIUREAAQAAAKQFAQBMUREAAQAAAKUFAQBQUREAAQAAAKYFAQBUUREAAQAAAKcFAQBYUREAAQAAAKgFAQBcUREAAQAAAKkFAQBgUREAAQAAAKoFAQBkUREAAQAAAKsFAQBoUREAAQAAAKwFAQBsUREAAQAAAK0FAQBwUREAAQAAAK4FAQB0UREAAQAAAK8FAQB4UREAAQAAALAFAQB8UREAAQAAALEFAQCAUREAAQAAALMFAQCEUREAAQAAALQFAQCIUREAAQAAALUFAQCMUREAAQAAALYFAQCQUREAAQAAALcFAQCUUREAAQAAALgFAQCYUREAAQAAALkFAQCcUREAAQAAALsFAQCgUREAAQAAALwFAQCkUREAAQAAAIAMAQCoUREAAQAAAIEMAQCsUREAAQAAAIIMAQCwUREAAQAAAIMMAQC0UREAAQAAAIQMAQC4UREAAQAAAIUMAQC8UREAAQAAAIYMAQDAUREAAQAAAIcMAQDEUREAAQAAAIgMAQDIUREAAQAAAIkMAQDMUREAAQAAAIoMAQDQUREAAQAAAIsMAQDUUREAAQAAAIwMAQDYUREAAQAAAI0MAQDcUREAAQAAAI4MAQDgUREAAQAAAI8MAQDkUREAAQAAAJAMAQDoUREAAQAAAJEMAQDsUREAAQAAAJIMAQDwUREAAQAAAJMMAQD0UREAAQAAAJQMAQD4UREAAQAAAJUMAQD8UREAAQAAAJYMAQAAUhEAAQAAAJcMAQAEUhEAAQAAAJgMAQAIUhEAAQAAAJkMAQAMUhEAAQAAAJoMAQAQUhEAAQAAAJsMAQAUUhEAAQAAAJwMAQAYUhEAAQAAAJ0MAQAcUhEAAQAAAJ4MAQAgUhEAAQAAAJ8MAQAkUhEAAQAAAKAMAQAoUhEAAQAAAKEMAQAsUhEAAQAAAKIMAQAwUhEAAQAAAKMMAQA0UhEAAQAAAKQMAQA4UhEAAQAAAKUMAQA8UhEAAQAAAKYMAQBAUhEAAQAAAKcMAQBEUhEAAQAAAKgMAQBIUhEAAQAAAKkMAQBMUhEAAQAAAKoMAQBQUhEAAQAAAKsMAQBUUhEAAQAAAKwMAQBYUhEAAQAAAK0MAQBcUhEAAQAAAK4MAQBgUhEAAQAAAK8MAQBkUhEAAQAAALAMAQBoUhEAAQAAALEMAQBsUhEAAQAAALIMAQBwUhEAAQAAAMAMAQB0UhEAAQAAAMEMAQB4UhEAAQAAAMIMAQB8UhEAAQAAAMMMAQCAUhEAAQAAAMQMAQCEUhEAAQAAAMUMAQCIUhEAAQAAAMYMAQCMUhEAAQAAAMcMAQCQUhEAAQAAAMgMAQCUUhEAAQAAAMkMAQCYUhEAAQAAAMoMAQCcUhEAAQAAAMsMAQCgUhEAAQAAAMwMAQCkUhEAAQAAAM0MAQCoUhEAAQAAAM4MAQCsUhEAAQAAAM8MAQCwUhEAAQAAANAMAQC0UhEAAQAAANEMAQC4UhEAAQAAANIMAQC8UhEAAQAAANMMAQDAUhEAAQAAANQMAQDEUhEAAQAAANUMAQDIUhEAAQAAANYMAQDMUhEAAQAAANcMAQDQUhEAAQAAANgMAQDUUhEAAQAAANkMAQDYUhEAAQAAANoMAQDcUhEAAQAAANsMAQDgUhEAAQAAANwMAQDkUhEAAQAAAN0MAQDoUhEAAQAAAN4MAQDsUhEAAQAAAN8MAQDwUhEAAQAAAOAMAQD0UhEAAQAAAOEMAQD4UhEAAQAAAOIMAQD8UhEAAQAAAOMMAQAAUxEAAQAAAOQMAQAEUxEAAQAAAOUMAQAIUxEAAQAAAOYMAQAMUxEAAQAAAOcMAQAQUxEAAQAAAOgMAQAUUxEAAQAAAOkMAQAYUxEAAQAAAOoMAQAcUxEAAQAAAOsMAQAgUxEAAQAAAOwMAQAkUxEAAQAAAO0MAQAoUxEAAQAAAO4MAQAsUxEAAQAAAO8MAQAwUxEAAQAAAPAMAQA0UxEAAQAAAPEMAQA4UxEAAQAAAPIMAQA8UxEAAQAAAKAYAQBAUxEAAQAAAKEYAQBEUxEAAQAAAKIYAQBIUxEAAQAAAKMYAQBMUxEAAQAAAKQYAQBQUxEAAQAAAKUYAQBUUxEAAQAAAKYYAQBYUxEAAQAAAKcYAQBcUxEAAQAAAKgYAQBgUxEAAQAAAKkYAQBkUxEAAQAAAKoYAQBoUxEAAQAAAKsYAQBsUxEAAQAAAKwYAQBwUxEAAQAAAK0YAQB0UxEAAQAAAK4YAQB4UxEAAQAAAK8YAQB8UxEAAQAAALAYAQCAUxEAAQAAALEYAQCEUxEAAQAAALIYAQCIUxEAAQAAALMYAQCMUxEAAQAAALQYAQCQUxEAAQAAALUYAQCUUxEAAQAAALYYAQCYUxEAAQAAALcYAQCcUxEAAQAAALgYAQCgUxEAAQAAALkYAQCkUxEAAQAAALoYAQCoUxEAAQAAALsYAQCsUxEAAQAAALwYAQCwUxEAAQAAAL0YAQC0UxEAAQAAAL4YAQC4UxEAAQAAAL8YAQC8UxEAAQAAAMAYAQDAUxEAAQAAAMEYAQDEUxEAAQAAAMIYAQDIUxEAAQAAAMMYAQDMUxEAAQAAAMQYAQDQUxEAAQAAAMUYAQDUUxEAAQAAAMYYAQDYUxEAAQAAAMcYAQDcUxEAAQAAAMgYAQDgUxEAAQAAAMkYAQDkUxEAAQAAAMoYAQDoUxEAAQAAAMsYAQDsUxEAAQAAAMwYAQDwUxEAAQAAAM0YAQD0UxEAAQAAAM4YAQD4UxEAAQAAAM8YAQD8UxEAAQAAANAYAQAAVBEAAQAAANEYAQAEVBEAAQAAANIYAQAIVBEAAQAAANMYAQAMVBEAAQAAANQYAQAQVBEAAQAAANUYAQAUVBEAAQAAANYYAQAYVBEAAQAAANcYAQAcVBEAAQAAANgYAQAgVBEAAQAAANkYAQAkVBEAAQAAANoYAQAoVBEAAQAAANsYAQAsVBEAAQAAANwYAQAwVBEAAQAAAN0YAQA0VBEAAQAAAN4YAQA4VBEAAQAAAN8YAQA8VBEAAQAAAEBuAQBAVBEAAQAAAEFuAQBEVBEAAQAAAEJuAQBIVBEAAQAAAENuAQBMVBEAAQAAAERuAQBQVBEAAQAAAEVuAQBUVBEAAQAAAEZuAQBYVBEAAQAAAEduAQBcVBEAAQAAAEhuAQBgVBEAAQAAAEluAQBkVBEAAQAAAEpuAQBoVBEAAQAAAEtuAQBsVBEAAQAAAExuAQBwVBEAAQAAAE1uAQB0VBEAAQAAAE5uAQB4VBEAAQAAAE9uAQB8VBEAAQAAAFBuAQCAVBEAAQAAAFFuAQCEVBEAAQAAAFJuAQCIVBEAAQAAAFNuAQCMVBEAAQAAAFRuAQCQVBEAAQAAAFVuAQCUVBEAAQAAAFZuAQCYVBEAAQAAAFduAQCcVBEAAQAAAFhuAQCgVBEAAQAAAFluAQCkVBEAAQAAAFpuAQCoVBEAAQAAAFtuAQCsVBEAAQAAAFxuAQCwVBEAAQAAAF1uAQC0VBEAAQAAAF5u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AACQEAAAmRAAAOAXAADpFwAAEBgAABkYAABGGQAATxkAANAZAADZGQAAgBoAAIkaAACQGgAAmRoAAFAbAABZGwAAsBsAALkbAABAHAAASRwAAFAcAABZHAAAIKYAACmmAADQqAAA2agAAACpAAAJqQAA0KkAANmpAADwqQAA+akAAFCqAABZqgAA8KsAAPmrAAAQ/wAAGf8AAKAEAQCpBAEAMA0BADkNAQBmEAEAbxABAPAQAQD5EAEANhEBAD8RAQDQEQEA2REBAPASAQD5EgEAUBQBAFkUAQDQFAEA2RQBAFAWAQBZFgEAwBYBAMkWAQAwFwEAORcBAOAYAQDpGAEAUBkBAFkZAQBQHAEAWRwBAFAdAQBZHQEAoB0BAKkdAQBQHwEAWR8BAGBqAQBpagEAwGoBAMlqAQBQawEAWWsBAM7XAQD/1wEAQOEBAEnhAQDw4gEA+eIBAPDkAQD55AEAUOkBAFnpAQDw+wEA+fsBAGFzc2lnbmVkjOERAGYAAAD9AQAAQAAAAEFTQ0lJQXNzaWduZWRBbnmM4REAZgAAAAYCAAAuAAAAYWdlYWhleEFTQ0lJX0hleF9EaWdpdEFscGhhYmV0aWNhbHBoYWJldGljYXNjaWloZXhkaWdpdGJjQmlkaV9DbGFzc2JpZGljQmlkaV9Db250cm9sYmlkaWNsYXNzYmlkaWNvbnRyb2xiaWRpbUJpZGlfTWlycm9yZWRiaWRpbWlycm9yZWRiaWRpbWlycm9yaW5nZ2x5cGhCaWRpX01pcnJvcmluZ19HbHlwaGJpZGlwYWlyZWRicmFja2V0QmlkaV9QYWlyZWRfQnJhY2tldGJpZGlwYWlyZWRicmFja2V0dHlwZUJpZGlfUGFpcmVkX0JyYWNrZXRfVHlwZWJsa2JtZ2JwYmJwdGNhbm9uaWNhbGNvbWJpbmluZ2NsYXNzQ2Fub25pY2FsX0NvbWJpbmluZ19DbGFzc2Nhc2VkQ2FzZWRjYXNlZm9sZGluZ0Nhc2VfRm9sZGluZ2Nhc2VpZ25vcmFibGVDYXNlX0lnbm9yYWJsZWNjY2NlQ29tcG9zaXRpb25fRXhjbHVzaW9uY2hhbmdlc3doZW5jYXNlZm9sZGVkQ2hhbmdlc19XaGVuX0Nhc2Vmb2xkZWRjaGFuZ2Vzd2hlbmNhc2VtYXBwZWRDaGFuZ2VzX1doZW5fQ2FzZW1hcHBlZGNoYW5nZXN3aGVubG93ZXJjYXNlZENoYW5nZXNfV2hlbl9Mb3dlcmNhc2VkY2hhbmdlc3doZW5uZmtjY2FzZWZvbGRlZENoYW5nZXNfV2hlbl9ORktDX0Nhc2Vmb2xkZWRjaGFuZ2Vzd2hlbnRpdGxlY2FzZWRDaGFuZ2VzX1doZW5fVGl0bGVjYXNlZGNoYW5nZXN3aGVudXBwZXJjYXNlZENoYW5nZXNfV2hlbl9VcHBlcmNhc2VkY2ljamthY2NvdW50aW5nbnVtZXJpY2tBY2NvdW50aW5nTnVtZXJpY2Nqa2NvbXBhdGliaWxpdHl2YXJpYW50a0NvbXBhdGliaWxpdHlWYXJpYW50Y2praWljb3Jla0lJQ29yZWNqa2lyZ2dzb3VyY2VrSVJHX0dTb3VyY2Vjamtpcmdoc291cmNla0lSR19IU291cmNlY2praXJnanNvdXJjZWtJUkdfSlNvdXJjZWNqa2lyZ2twc291cmNla0lSR19LUFNvdXJjZWNqa2lyZ2tzb3VyY2VrSVJHX0tTb3VyY2Vjamtpcmdtc291cmNla0lSR19NU291cmNlY2praXJnc3NvdXJjZWtJUkdfU1NvdXJjZWNqa2lyZ3Rzb3VyY2VrSVJHX1RTb3VyY2Vjamtpcmd1a3NvdXJjZWtJUkdfVUtTb3VyY2Vjamtpcmd1c291cmNla0lSR19VU291cmNlY2praXJndnNvdXJjZWtJUkdfVlNvdXJjZWNqa290aGVybnVtZXJpY2tPdGhlck51bWVyaWNjamtwcmltYXJ5bnVtZXJpY2tQcmltYXJ5TnVtZXJpY2Nqa3JzdW5pY29kZWtSU1VuaWNvZGVjb21wZXhGdWxsX0NvbXBvc2l0aW9uX0V4Y2x1c2lvbmNvbXBvc2l0aW9uZXhjbHVzaW9uY3djZmN3Y21jd2tjZmN3bGN3dGN3dWRhc2hEYXNoZGVjb21wb3NpdGlvbm1hcHBpbmdEZWNvbXBvc2l0aW9uX01hcHBpbmdkZWNvbXBvc2l0aW9udHlwZURlY29tcG9zaXRpb25fVHlwZWRlZmF1bHRpZ25vcmFibGVjb2RlcG9pbnREZWZhdWx0X0lnbm9yYWJsZV9Db2RlX1BvaW50ZGVwRGVwcmVjYXRlZGRlcHJlY2F0ZWRkaWRpYURpYWNyaXRpY2RpYWNyaXRpY2RtZHRlYUVhc3RfQXNpYW5fV2lkdGhlYXN0YXNpYW53aWR0aGViYXNlRW1vamlfTW9kaWZpZXJfQmFzZWVjb21wRW1vamlfQ29tcG9uZW50ZW1vZEVtb2ppX01vZGlmaWVyZW1vamlFbW9qaWVtb2ppY29tcG9uZW50ZW1vamltb2RpZmllcmVtb2ppbW9kaWZpZXJiYXNlZW1vamlwcmVzZW50YXRpb25FbW9qaV9QcmVzZW50YXRpb25lcHJlc2VxdWlkZW9FcXVpdmFsZW50X1VuaWZpZWRfSWRlb2dyYXBoZXF1aXZhbGVudHVuaWZpZWRpZGVvZ3JhcGhleHBhbmRzb25uZmNFeHBhbmRzX09uX05GQ2V4cGFuZHNvbm5mZEV4cGFuZHNfT25fTkZEZXhwYW5kc29ubmZrY0V4cGFuZHNfT25fTkZLQ2V4cGFuZHNvbm5ma2RFeHBhbmRzX09uX05GS0RleHRFeHRlbmRlcmV4dGVuZGVkcGljdG9ncmFwaGljRXh0ZW5kZWRfUGljdG9ncmFwaGljZXh0ZW5kZXJleHRwaWN0ZmNuZmtjRkNfTkZLQ19DbG9zdXJlZmNuZmtjY2xvc3VyZWZ1bGxjb21wb3NpdGlvbmV4Y2x1c2lvbmdjZ2NiZ2VuZXJhbGNhdGVnb3J5Z3JhcGhlbWViYXNlR3JhcGhlbWVfQmFzZWdyYXBoZW1lY2x1c3RlcmJyZWFrZ3JhcGhlbWVleHRlbmRHcmFwaGVtZV9FeHRlbmRncmFwaGVtZWxpbmtHcmFwaGVtZV9MaW5rZ3JiYXNlZ3JleHRncmxpbmtoYW5ndWxzeWxsYWJsZXR5cGVIYW5ndWxfU3lsbGFibGVfVHlwZWhleEhleF9EaWdpdGhleGRpZ2l0aHN0aHlwaGVuSHlwaGVuaWRjSURfQ29udGludWVpZGNvbnRpbnVlaWRlb0lkZW9ncmFwaGljaWRlb2dyYXBoaWNpZHNJRF9TdGFydGlkc2JJRFNfQmluYXJ5X09wZXJhdG9yaWRzYmluYXJ5b3BlcmF0b3JpZHN0SURTX1RyaW5hcnlfT3BlcmF0b3JpZHN0YXJ0aWRzdHJpbmFyeW9wZXJhdG9yaW5kaWNwb3NpdGlvbmFsY2F0ZWdvcnlJbmRpY19Qb3NpdGlvbmFsX0NhdGVnb3J5aW5kaWNzeWxsYWJpY2NhdGVnb3J5SW5kaWNfU3lsbGFiaWNfQ2F0ZWdvcnlpbnBjaW5zY2lzY0lTT19Db21tZW50amFtb3Nob3J0bmFtZUphbW9fU2hvcnRfTmFtZWpnSm9pbmluZ19Hcm91cGpvaW5jSm9pbl9Db250cm9sam9pbmNvbnRyb2xqb2luaW5nZ3JvdXBqb2luaW5ndHlwZUpvaW5pbmdfVHlwZWpzbmp0a2FjY291bnRpbmdudW1lcmlja2NvbXBhdGliaWxpdHl2YXJpYW50a2lpY29yZWtpcmdnc291cmNla2lyZ2hzb3VyY2VraXJnanNvdXJjZWtpcmdrcHNvdXJjZWtpcmdrc291cmNla2lyZ21zb3VyY2VraXJnc3NvdXJjZWtpcmd0c291cmNla2lyZ3Vrc291cmNla2lyZ3Vzb3VyY2VraXJndnNvdXJjZWtvdGhlcm51bWVyaWNrcHJpbWFyeW51bWVyaWNrcnN1bmljb2RlbGJMaW5lX0JyZWFrTG93ZXJjYXNlX01hcHBpbmdsaW5lYnJlYWtsb2VMb2dpY2FsX09yZGVyX0V4Y2VwdGlvbmxvZ2ljYWxvcmRlcmV4Y2VwdGlvbkxvd2VyY2FzZWxvd2VyY2FzZWxvd2VyY2FzZW1hcHBpbmdtYXRoTWF0aG5hTmFtZW5hMVVuaWNvZGVfMV9OYW1lbmFtZWFsaWFzTmFtZV9BbGlhc25jaGFyTm9uY2hhcmFjdGVyX0NvZGVfUG9pbnRuZmNxY05GQ19RdWlja19DaGVja25mY3F1aWNrY2hlY2tuZmRxY05GRF9RdWlja19DaGVja25mZHF1aWNrY2hlY2tuZmtjY2FzZWZvbGRORktDX0Nhc2Vmb2xkbmZrY2NmbmZrY3FjTkZLQ19RdWlja19DaGVja25ma2NxdWlja2NoZWNrbmZrZHFjTkZLRF9RdWlja19DaGVja25ma2RxdWlja2NoZWNrbm9uY2hhcmFjdGVyY29kZXBvaW50bnROdW1lcmljX1R5cGVudW1lcmljdHlwZW51bWVyaWN2YWx1ZU51bWVyaWNfVmFsdWVudm9hbHBoYU90aGVyX0FscGhhYmV0aWNvY29tbWVudG9kaU90aGVyX0RlZmF1bHRfSWdub3JhYmxlX0NvZGVfUG9pbnRvZ3JleHRPdGhlcl9HcmFwaGVtZV9FeHRlbmRvaWRjT3RoZXJfSURfQ29udGludWVvaWRzT3RoZXJfSURfU3RhcnRvbG93ZXJPdGhlcl9Mb3dlcmNhc2VvbWF0aE90aGVyX01hdGhvdGhlcmFscGhhYmV0aWNvdGhlcmRlZmF1bHRpZ25vcmFibGVjb2RlcG9pbnRvdGhlcmdyYXBoZW1lZXh0ZW5kb3RoZXJpZGNvbnRpbnVlb3RoZXJpZHN0YXJ0b3RoZXJsb3dlcmNhc2VvdGhlcm1hdGhvdGhlcnVwcGVyY2FzZU90aGVyX1VwcGVyY2FzZW91cHBlcnBhdHN5blBhdHRlcm5fU3ludGF4cGF0dGVybnN5bnRheHBhdHRlcm53aGl0ZXNwYWNlUGF0dGVybl9XaGl0ZV9TcGFjZXBhdHdzcGNtUHJlcGVuZGVkX0NvbmNhdGVuYXRpb25fTWFya3ByZXBlbmRlZGNvbmNhdGVuYXRpb25tYXJrcW1hcmtRdW90YXRpb25fTWFya3F1b3RhdGlvbm1hcmtyYWRpY2FsUmFkaWNhbHJlZ2lvbmFsaW5kaWNhdG9yUmVnaW9uYWxfSW5kaWNhdG9ycmlzYnNjZlNpbXBsZV9DYXNlX0ZvbGRpbmdzY3JpcHRleHRlbnNpb25zc2N4c2RTb2Z0X0RvdHRlZHNlbnRlbmNlYnJlYWtzZW50ZW5jZXRlcm1pbmFsU2VudGVuY2VfVGVybWluYWxzZmNzaW1wbGVjYXNlZm9sZGluZ3NpbXBsZWxvd2VyY2FzZW1hcHBpbmdTaW1wbGVfTG93ZXJjYXNlX01hcHBpbmdzaW1wbGV0aXRsZWNhc2VtYXBwaW5nU2ltcGxlX1RpdGxlY2FzZV9NYXBwaW5nc2ltcGxldXBwZXJjYXNlbWFwcGluZ1NpbXBsZV9VcHBlcmNhc2VfTWFwcGluZ3NsY3NvZnRkb3R0ZWRXaGl0ZV9TcGFjZXN0Y3N0ZXJtc3VjdGNUaXRsZWNhc2VfTWFwcGluZ3Rlcm1UZXJtaW5hbF9QdW5jdHVhdGlvbnRlcm1pbmFscHVuY3R1YXRpb250aXRsZWNhc2VtYXBwaW5ndWNVcHBlcmNhc2VfTWFwcGluZ3VpZGVvVW5pZmllZF9JZGVvZ3JhcGh1bmljb2RlMW5hbWV1bmljb2RlcmFk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AAC3HhIABAAAACkfEgADAAAAvh4SAAQAAAAsHxIAAwAAAMUeEgAEAAAAY2FzZWRsZXR0ZXJDYXNlZF9MZXR0ZXJjY0NvbnRyb2xGb3JtYXRjbG9zZXB1bmN0dWF0aW9uQ2xvc2VfUHVuY3R1YXRpb25jbmNvUHJpdmF0ZV9Vc2Vjb21iaW5pbmdtYXJrY29ubmVjdG9ycHVuY3R1YXRpb25Db25uZWN0b3JfUHVuY3R1YXRpb25jb250cm9sY3NTdXJyb2dhdGVjdXJyZW5jeXN5bWJvbEN1cnJlbmN5X1N5bWJvbGRhc2hwdW5jdHVhdGlvbkRhc2hfUHVuY3R1YXRpb25kZWNpbWFsbnVtYmVyRGVjaW1hbF9OdW1iZXJlbmNsb3NpbmdtYXJrRW5jbG9zaW5nX01hcmtmaW5hbHB1bmN0dWF0aW9uRmluYWxfUHVuY3R1YXRpb25mb3JtYXRpbml0aWFscHVuY3R1YXRpb25Jbml0aWFsX1B1bmN0dWF0aW9ubExldHRlcmxldHRlcmxldHRlcm51bWJlckxldHRlcl9OdW1iZXJsaW5lc2VwYXJhdG9yTGluZV9TZXBhcmF0b3JsbExvd2VyY2FzZV9MZXR0ZXJsbU1vZGlmaWVyX0xldHRlcmxvT3RoZXJfTGV0dGVybG93ZXJjYXNlbGV0dGVyVGl0bGVjYXNlX0xldHRlcmx1VXBwZXJjYXNlX0xldHRlcm1tYXJrbWF0aHN5bWJvbE1hdGhfU3ltYm9sbWNTcGFjaW5nX01hcmttZW1uTm9uc3BhY2luZ19NYXJrbW9kaWZpZXJsZXR0ZXJtb2RpZmllcnN5bWJvbE1vZGlmaWVyX1N5bWJvbG5kbmxub090aGVyX051bWJlcm5vbnNwYWNpbmdtYXJrb3BlbnB1bmN0dWF0aW9uT3Blbl9QdW5jdHVhdGlvbm90aGVyb3RoZXJsZXR0ZXJvdGhlcm51bWJlcm90aGVycHVuY3R1YXRpb25PdGhlcl9QdW5jdHVhdGlvbm90aGVyc3ltYm9sT3RoZXJfU3ltYm9scFB1bmN0dWF0aW9ucGFyYWdyYXBoc2VwYXJhdG9yUGFyYWdyYXBoX1NlcGFyYXRvcnBjcGRwZXBmcG9wcml2YXRldXNlcHNwdW5jdHVhdGlvbnNTeW1ib2xzZXBhcmF0b3JT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AAAUJRIABQAAAIAcFgAFAAAAoCsSAAIAAACiKxIABwAAAKkrEgAHAAAAoisSAAcAAABVCxIAEQAAAGYLEgASAAAAeAsSAAIAAABmCxIAEgAAANQlEgACAAAAsCsSAAsAAAD1JRIACwAAALArEgALAAAAuysSAAEAAAC8KxIAAQAAAL0rEgABAAAAvisSAAEAAAC/KxIAAgAAAIAcFgAFAAAANUgWAAMAAADBKxIAAwAAAGFkbGFtQWRsYW1hZGxtYWdoYkNhdWNhc2lhbl9BbGJhbmlhbmFob21BaG9tYW5hdG9saWFuaGllcm9nbHlwaHNBbmF0b2xpYW5fSGllcm9nbHlwaHNhcmFiQXJhYmljYXJhYmljYXJtZW5pYW5Bcm1lbmlhbmFybWlJbXBlcmlhbF9BcmFtYWljYXJtbmF2ZXN0YW5BdmVzdGFuYXZzdGJhbGlCYWxpbmVzZWJhbGluZXNlYmFtdUJhbXVtYmFtdW1iYXNzQmFzc2FfVmFoYmFzc2F2YWhiYXRha0JhdGFrYmF0a2JlbmdCZW5nYWxpYmVuZ2FsaWJoYWlrc3VraUJoYWlrc3VraWJoa3Nib3BvQm9wb21vZm9ib3BvbW9mb2JyYWhCcmFobWlicmFobWlicmFpQnJhaWxsZWJyYWlsbGVidWdpQnVnaW5lc2VidWdpbmVzZWJ1aGRCdWhpZGJ1aGlkY2FrbUNoYWttYWNhbmFkaWFuYWJvcmlnaW5hbENhbmFkaWFuX0Fib3JpZ2luYWxjYW5zY2FyaUNhcmlhbmNhcmlhbmNhdWNhc2lhbmFsYmFuaWFuY2hha21hY2hhbUNoYW1jaGVyQ2hlcm9rZWVjaGVyb2tlZWNob3Jhc21pYW5DaG9yYXNtaWFuY2hyc2NvbW1vbkNvbW1vbmNvcHRDb3B0aWNjb3B0aWNjcG1uQ3lwcm9fTWlub2FuY3BydEN5cHJpb3RjdW5laWZvcm1DdW5laWZvcm1jeXByaW90Y3lwcm9taW5vYW5jeXJpbGxpY0N5cmlsbGljY3lybGRlc2VyZXREZXNlcmV0ZGV2YURldmFuYWdhcmlkZXZhbmFnYXJpZGlha0RpdmVzX0FrdXJ1ZGl2ZXNha3VydWRvZ3JEb2dyYWRvZ3JhZHNydGR1cGxEdXBsb3lhbmR1cGxveWFuZWd5cEVneXB0aWFuX0hpZXJvZ2x5cGhzZWd5cHRpYW5oaWVyb2dseXBoc2VsYmFFbGJhc2FuZWxiYXNhbmVseW1FbHltYWljZWx5bWFpY2V0aGlFdGhpb3BpY2V0aGlvcGljZ2Vvckdlb3JnaWFuZ2VvcmdpYW5nbGFnR2xhZ29saXRpY2dsYWdvbGl0aWNnb25nR3VuamFsYV9Hb25kaWdvbm1NYXNhcmFtX0dvbmRpZ290aEdvdGhpY2dvdGhpY2dyYW5HcmFudGhhZ3JhbnRoYWdyZWVrR3JlZWtncmVrZ3VqYXJhdGlHdWphcmF0aWd1anJndW5qYWxhZ29uZGlndXJtdWtoaUd1cm11a2hpZ3VydWhhbkhhbmhhbmdIYW5ndWxoYW5ndWxoYW5paGFuaWZpcm9oaW5neWFIYW5pZmlfUm9oaW5neWFoYW5vSGFudW5vb2hhbnVub29oYXRySGF0cmFuaGF0cmFuaGVickhlYnJld2hlYnJld2hpcmFIaXJhZ2FuYWhpcmFnYW5haGx1d2htbmdQYWhhd2hfSG1vbmdobW5wTnlpYWtlbmdfUHVhY2h1ZV9IbW9uZ2hya3RLYXRha2FuYV9Pcl9IaXJhZ2FuYWh1bmdPbGRfSHVuZ2FyaWFuaW1wZXJpYWxhcmFtYWljaW5oZXJpdGVkSW5oZXJpdGVkaW5zY3JpcHRpb25hbHBhaGxhdmlJbnNjcmlwdGlvbmFsX1BhaGxhdmlpbnNjcmlwdGlvbmFscGFydGhpYW5JbnNjcmlwdGlvbmFsX1BhcnRoaWFuaXRhbE9sZF9JdGFsaWNqYXZhSmF2YW5lc2VqYXZhbmVzZWthaXRoaUthaXRoaWthbGlLYXlhaF9MaWthbmFLYXRha2FuYWthbm5hZGFLYW5uYWRha2F0YWthbmFrYXRha2FuYW9yaGlyYWdhbmFrYXdpS2F3aWtheWFobGlraGFyS2hhcm9zaHRoaWtoYXJvc2h0aGlraGl0YW5zbWFsbHNjcmlwdEtoaXRhbl9TbWFsbF9TY3JpcHRraG1lcktobWVya2htcmtob2pLaG9qa2lraG9qa2lraHVkYXdhZGlLaHVkYXdhZGlraXRza25kYWt0aGlsYW5hVGFpX1RoYW1sYW9MYW9sYW9vbGF0aW5MYXRpbmxhdG5sZXBjTGVwY2hhbGVwY2hhbGltYkxpbWJ1bGltYnVsaW5hTGluZWFyX0FsaW5iTGluZWFyX0JsaW5lYXJhbGluZWFyYmxpc3VMaXN1bHljaUx5Y2lhbmx5Y2lhbmx5ZGlMeWRpYW5seWRpYW5tYWhhamFuaU1haGFqYW5pbWFoam1ha2FNYWthc2FybWFrYXNhcm1hbGF5YWxhbU1hbGF5YWxhbW1hbmRNYW5kYWljbWFuZGFpY21hbmlNYW5pY2hhZWFubWFuaWNoYWVhbm1hcmNNYXJjaGVubWFyY2hlbm1hc2FyYW1nb25kaW1lZGVmYWlkcmluTWVkZWZhaWRyaW5tZWRmbWVldGVpbWF5ZWtNZWV0ZWlfTWF5ZWttZW5kTWVuZGVfS2lrYWt1aW1lbmRla2lrYWt1aW1lcmNNZXJvaXRpY19DdXJzaXZlbWVyb01lcm9pdGljX0hpZXJvZ2x5cGhzbWVyb2l0aWNjdXJzaXZlbWVyb2l0aWNoaWVyb2dseXBoc21pYW9NaWFvbWx5bW1vZGlNb2RpbW9uZ01vbmdvbGlhbm1vbmdvbGlhbm1yb01yb21yb29tdGVpbXVsdE11bHRhbmltdWx0YW5pbXlhbm1hck15YW5tYXJteW1ybmFiYXRhZWFuTmFiYXRhZWFubmFnbU5hZ19NdW5kYXJpbmFnbXVuZGFyaW5hbmROYW5kaW5hZ2FyaW5hbmRpbmFnYXJpbmFyYk9sZF9Ob3J0aF9BcmFiaWFubmJhdG5ld2FOZXdhbmV3dGFpbHVlTmV3X1RhaV9MdWVua29Oa29ua29vbnNodU51c2h1bnVzaHVueWlha2VuZ3B1YWNodWVobW9uZ29nYW1PZ2hhbW9naGFtb2xjaGlraU9sX0NoaWtpb2xja29sZGh1bmdhcmlhbm9sZGl0YWxpY29sZG5vcnRoYXJhYmlhbm9sZHBlcm1pY09sZF9QZXJtaWNvbGRwZXJzaWFuT2xkX1BlcnNpYW5vbGRzb2dkaWFuT2xkX1NvZ2RpYW5vbGRzb3V0aGFyYWJpYW5PbGRfU291dGhfQXJhYmlhbm9sZHR1cmtpY09sZF9UdXJraWNvbGR1eWdodXJPbGRfVXlnaHVyb3JpeWFPcml5YW9ya2hvcnlhb3NhZ2VPc2FnZW9zZ2Vvc21hT3NtYW55YW9zbWFueWFvdWdycGFoYXdoaG1vbmdwYWxtUGFsbXlyZW5lcGFsbXlyZW5lcGF1Y1BhdV9DaW5fSGF1cGF1Y2luaGF1cGVybXBoYWdQaGFnc19QYXBoYWdzcGFwaGxpcGhscFBzYWx0ZXJfUGFobGF2aXBobnhQaG9lbmljaWFucGhvZW5pY2lhbnBscmRwcnRpcHNhbHRlcnBhaGxhdmlxYWFjcWFhaXJlamFuZ1JlamFuZ3Jqbmdyb2hncnVuaWNSdW5pY3J1bnJzYW1hcml0YW5TYW1hcml0YW5zYW1yc2FyYnNhdXJTYXVyYXNodHJhc2F1cmFzaHRyYXNnbndTaWduV3JpdGluZ3NoYXJhZGFTaGFyYWRhc2hhdmlhblNoYXZpYW5zaGF3c2hyZHNpZGRTaWRkaGFtc2lkZGhhbXNpZ253cml0aW5nc2luZHNpbmhTaW5oYWxhc2luaGFsYXNvZ2RTb2dkaWFuc29nZGlhbnNvZ29zb3JhU29yYV9Tb21wZW5nc29yYXNvbXBlbmdzb3lvU295b21ib3NveW9tYm9zdW5kU3VuZGFuZXNlc3VuZGFuZXNlc3lsb1N5bG90aV9OYWdyaXN5bG90aW5hZ3Jpc3lyY1N5cmlhY3N5cmlhY3RhZ2Fsb2dUYWdhbG9ndGFnYlRhZ2JhbndhdGFnYmFud2F0YWlsZVRhaV9MZXRhaXRoYW10YWl2aWV0VGFpX1ZpZXR0YWtyVGFrcml0YWtyaXRhbGV0YWx1dGFtaWxUYW1pbHRhbWx0YW5nVGFuZ3V0dGFuZ3NhVGFuZ3NhdGFuZ3V0dGF2dHRlbHVUZWx1Z3V0ZWx1Z3V0Zm5nVGlmaW5hZ2h0Z2xndGhhYVRoYWFuYXRoYWFuYXRoYWlUaGFpdGliZXRhblRpYmV0YW50aWJ0dGlmaW5hZ2h0aXJoVGlyaHV0YXRpcmh1dGF0bnNhdG90b1RvdG91Z2FyVWdhcml0aWN1Z2FyaXRpY3ZhaVZhaXZhaWl2aXRoVml0aGt1cWl2aXRoa3VxaXdhbmNob1dhbmNob3dhcmFXYXJhbmdfQ2l0aXdhcmFuZ2NpdGl3Y2hveHBlb3hzdXh5ZXppWWV6aWRpeWV6aWRpeWlZaXlpaWl6YW5hYmF6YXJzcXVhcmVaYW5hYmF6YXJfU3F1YXJlemFuYnppbmh6eXl5enp6egAAAIQtEgAFAAAAiS0SAAUAAACOLRIABAAAAIktEgAFAAAAki0SAAQAAACWLRIAEgAAAKgtEgAEAAAArC0SAAQAAACwLRIAFAAAAMQtEgAVAAAA2S0SAAQAAADdLRIABgAAAOMtEgAGAAAA3S0SAAYAAADpLRIACAAAAPEtEgAIAAAA+S0SAAQAAAD9LRIAEAAAAA0uEgAEAAAA8S0SAAgAAAARLhIABwAAABguEgAHAAAAHy4SAAQAAAAYLhIABwAAACMuEgAEAAAAJy4SAAgAAAAvLhIACAAAACcuEgAIAAAANy4SAAQAAAA7LhIABQAAAEAuEgAFAAAAOy4SAAUAAABFLhIABAAAAEkuEgAJAAAAUi4SAAgAAABJLhIACQAAAFouEgAFAAAAXy4SAAUAAABkLhIABAAAAF8uEgAFAAAAaC4SAAQAAABsLhIABwAAAHMuEgAHAAAAbC4SAAcAAAB6LhIACQAAAIMuEgAJAAAAjC4SAAQAAACDLhIACQAAAJAuEgAEAAAAlC4SAAgAAACcLhIACAAAAJQuEgAIAAAApC4SAAQAAACoLhIABgAAAK4uEgAGAAAAqC4SAAYAAAC0LhIABAAAALguEgAHAAAAvy4SAAcAAAC4LhIABwAAAMYuEgAEAAAAyi4SAAgAAADSLhIACAAAAMouEgAIAAAA2i4SAAQAAADeLhIABQAAAOMuEgAFAAAA3i4SAAUAAADoLhIABAAAAOwuEgAGAAAA8i4SABIAAAAELxIAEwAAABcvEgAEAAAABC8SABMAAAAbLxIABAAAAB8vEgAGAAAAJS8SAAYAAAAfLxIABgAAACsvEgARAAAAli0SABIAAAA8LxIABgAAAOwuEgAGAAAAQi8SAAQAAABGLxIABAAAAEovEgAEAAAATi8SAAgAAABWLxIACAAAAE4vEgAIAAAAXi8SAAoAAABoLxIACgAAAHIvEgAEAAAAaC8SAAoAAAB2LxIABgAAAHwvEgAGAAAAgi8SAAQAAACGLxIABgAAAIwvEgAGAAAAhi8SAAYAAACSLxIABAAAAJYvEgAMAAAAoi8SAAQAAACmLxIABwAAAK0vEgAJAAAAti8SAAkAAAC/LxIABwAAAKYvEgAHAAAAxi8SAAsAAACWLxIADAAAANEvEgAIAAAA2S8SAAgAAADhLxIABAAAANkvEgAIAAAA5S8SAAcAAADsLxIABwAAAPMvEgAEAAAA9y8SAAoAAAABMBIACgAAAPcvEgAKAAAACzASAAQAAAAPMBIACwAAABowEgAKAAAADzASAAsAAAAkMBIABAAAACgwEgAFAAAALTASAAUAAAAoMBIABQAAADIwEgAEAAAA7C8SAAcAAAA2MBIABAAAADowEgAIAAAAQjASAAgAAAA6MBIACAAAAEowEgAEAAAATjASABQAAABiMBIAEwAAAE4wEgAUAAAAdTASAAQAAAB5MBIABwAAAIAwEgAHAAAAeTASAAcAAACHMBIABAAAAIswEgAHAAAAkjASAAcAAACLMBIABwAAAJkwEgAEAAAAnTASAAgAAAClMBIACAAAAJ0wEgAIAAAArTASAAQAAACxMBIACAAAALkwEgAIAAAAsTASAAgAAADBMBIABAAAAMUwEgAKAAAAzzASAAoAAADFMBIACgAAANkwEgAEAAAA3TASAA0AAADqMBIABAAAAO4wEgANAAAA+zASAAQAAAD/MBIABgAAAAUxEgAGAAAA/zASAAYAAAALMRIABAAAAA8xEgAHAAAAFjESAAcAAAAPMRIABwAAAB0xEgAFAAAAIjESAAUAAAAnMRIABAAAACIxEgAFAAAAKzESAAgAAAAzMRIACAAAADsxEgAEAAAAMzESAAgAAAA/MRIADAAAAN0wEgANAAAASzESAAgAAABTMRIACAAAAFsxEgAEAAAAUzESAAgAAABfMRIAAwAAAGIxEgADAAAAZTESAAQAAABpMRIABgAAAG8xEgAGAAAAaTESAAYAAAB1MRIABAAAAGIxEgADAAAAeTESAA4AAACHMRIADwAAAJYxEgAEAAAAmjESAAcAAAChMRIABwAAAJoxEgAHAAAAqDESAAQAAACsMRIABgAAALIxEgAGAAAArDESAAYAAAC4MRIABAAAALwxEgAGAAAAwjESAAYAAAC8MRIABgAAAMgxEgAEAAAAzDESAAgAAADUMRIACAAAAMwxEgAIAAAA3DESAAQAAADELRIAFQAAAOAxEgAEAAAA5DESAAwAAADwMRIABAAAAPQxEgAWAAAACjISAAQAAAAOMhIAFAAAACIyEgAEAAAAJjISAA0AAAAzMhIADwAAAP0tEgAQAAAAQjISAAkAAABLMhIACQAAAFQyEgAUAAAAaDISABUAAAB9MhIAFQAAAJIyEgAWAAAAqDISAAQAAACsMhIACgAAALYy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EgAGAAAAn1ESAAYAAAClURIACQAAAH5REgAJAAAArlESAAIAAACQURIACQAAAJkkEgACAAAAn1ESAAYAAACwURIABwAAALdREgAHAAAA1yQSAAIAAAC3URIABwAAAOBHFgACAAAALk8SAAcAAAA1TxIABwAAAC5PEgAHAAAAFCUSAAUAAACAHBYABQAAAFULEgARAAAAZgsSABIAAAB4CxIAAgAAAGYLEgASAAAAvlESAAsAAADJURIADAAAANVREgACAAAAyVESAAwAAADXURIACQAAAOBREgAJAAAAvysSAAIAAACAHBYABQAAADVIFgADAAAAwSsSAAMAAABg4hEAAwAAADAfEgA0AAAAROIRABAAAAAwJhIAUAAAAHTiEQAWAAAAxCsSABwAAABU4hEABgAAAMg6EgBEAQAAY+IRABEAAADIOhIARAEAAIriEQAOAAAAcE8SABsAAACY4hEACgAAAOxREgApAAAAjOERAGYAAABoAgAAFgAAAAAAAAD1AQAA+gEAABcCAABQAgAAqAIAALACAADeAgAA4AIAAOkCAAAAAwAARQMAAGADAABhAwAAdAMAAHUDAAB6AwAAegMAAH4DAAB+AwAAhAMAAIoDAACMAwAAjAMAAI4DAAChAwAAowMAAM4DAADQAwAA1gMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAPMDAAABBAAADAQAAA4EAABPBAAAUQQAAFwEAABeBAAAhgQAAJAEAADEBAAAxwQAAMgEAADLBAAAzAQAANAEAADrBAAA7gQAAPUEAAD4BAAA+QQAADEFAABWBQAAWQUAAF8FAABhBQAAhwUAAIkFAACJBQAAsAUAALkFAAC7BQAAwwUAANAFAADqBQAA8AUAAPQFAAAMBgAADAYAABsGAAAbBgAAHwYAAB8GAAAhBgAAOgYAAEAGAABSBgAAYAYAAG0GAABwBgAAtwYAALoGAAC+BgAAwAYAAM4GAADQBgAA7QYAAPAGAAD5BgAAAQkAAAMJAAAFCQAAOQkAADwJAABNCQAAUAkAAFQJAABYCQAAcAkAAIEJAACDCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAAvAkAALwJAAC+CQAAxAkAAMcJAADICQAAywkAAM0JAADXCQAA1wkAANwJAADdCQAA3wkAAOMJAADmCQAA+gkAAAIKAAACCgAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAAA8CgAAPAoAAD4KAABCCgAARwoAAEgKAABLCgAATQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdAoAAIEKAACDCgAAhQoAAIsKAACNCgAAjQoAAI8KAACRCgAAkwoAAKgKAACqCgAAsAoAALIKAACzCgAAtQoAALkKAAC8CgAAxQoAAMcKAADJCgAAywoAAM0KAADQCgAA0AoAAOAKAADgCgAA5goAAO8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA2CwAAOQsAADwLAABDCwAARwsAAEgLAABLCwAATQsAAFYLAABXCwAAXAsAAF0LAABfCwAAYQsAAGYLAABwCwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALULAAC3CwAAuQsAAL4LAADCCwAAxgsAAMgLAADKCwAAzQsAANcLAADXCwAA5wsAAPILAAABDAAAAwwAAAUMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAAzDAAANQwAADkMAAA+DAAARAwAAEYMAABIDAAASgwAAE0MAABVDAAAVgwAAGAMAABhDAAAZgwAAG8MAACCDAAAgwwAAIUMAACMDAAAjgwAAJAMAACSDAAAqAwAAKoMAACzDAAAtQwAALkMAAC+DAAAxAwAAMYMAADIDAAAygwAAM0MAADVDAAA1gwAAN4MAADeDAAA4AwAAOEMAADmDAAA7wwAAAINAAADDQAABQ0AAAwNAAAODQAAEA0AABINAAAoDQAAKg0AADkNAAA+DQAAQw0AAEYNAABIDQAASg0AAE0NAABXDQAAVw0AAGANAABhDQAAZg0AAG8NAAABDgAAOg4AAD8OAABbDgAAgQ4AAIIOAACEDgAAhA4AAIcOAACIDgAAig4AAIoOAACNDgAAjQ4AAJQOAACXDgAAmQ4AAJ8OAAChDgAAow4AAKUOAAClDgAApw4AAKcOAACqDgAAqw4AAK0OAAC5DgAAuw4AAL0OAADADgAAxA4AAMYOAADGDgAAyA4AAM0OAADQDgAA2Q4AANwOAADdDgAAoBAAAMUQAADQEAAA9hAAAPsQAAD7EAAAABEAAFkRAABfEQAAohEAAKgRAAD5EQAAAB4AAJoeAACgHgAA+R4AAAAfAAAVHwAAGB8AAB0fAAAgHwAARR8AAEgfAABNHwAAUB8AAFcfAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAfR8AAIAfAAC0HwAAth8AAMQfAADGHwAA0x8AANYfAADbHwAA3R8AAO8fAADyHwAA9B8AAPYfAAD+HwAAACAAAC4gAAAwIAAARiAAAGogAABwIAAAdCAAAI4gAACgIAAAqiAAANAgAADhIAAAACEAADghAABTIQAAgiEAAJAhAADqIQAAACIAAPEiAAAAIwAAACMAAAIjAAB6IwAAACQAACQkAABAJAAASiQAAGAkAADqJAAAACUAAJUlAACgJQAA7yUAAAAmAAATJgAAGiYAAG8mAAABJwAABCcAAAYnAAAJJwAADCcAACcnAAApJwAASycAAE0nAABNJwAATycAAFInAABWJwAAVicAAFgnAABeJwAAYScAAGcnAAB2JwAAlCcAAJgnAACvJwAAsScAAL4nAAAAMAAANzAAAD8wAAA/MAAAQTAAAJQwAACZMAAAnjAAAKEwAAD+MAAABTEAACwxAAAxMQAAjjEAAJAxAACfMQAAADIAABwyAAAgMgAAQzIAAGAyAAB7MgAAfzIAALAyAADAMgAAyzIAANAyAAD+MgAAADMAAHYzAAB7MwAA3TMAAOAzAAD+MwAAAE4AAKWfAAAA4AAALfoAAAD7AAAG+wAAE/sAABf7AAAe+wAANvsAADj7AAA8+wAAPvsAAD77AABA+wAAQfsAAEP7AABE+wAARvsAALH7AADT+wAAP/0AAFD9AACP/QAAkv0AAMf9AADw/QAA+/0AACD+AAAj/gAAMP4AAET+AABJ/gAAUv4AAFT+AABm/gAAaP4AAGv+AABw/gAAcv4AAHT+AAB0/gAAdv4AAPz+AAD//gAA//4AAAH/AABe/wAAYf8AAL7/AADC/wAAx/8AAMr/AADP/wAA0v8AANf/AADa/wAA3P8AAOD/AADm/wAA6P8AAO7/AAD9/wAA//8AAJEFAAChBQAAowUAAK8FAADEBQAAxAUAAAAPAABHDwAASQ8AAGkPAABxDwAAiw8AAJAPAACVDwAAlw8AAJcPAACZDwAArQ8AALEPAAC3DwAAuQ8AALkPAACbHgAAmx4AAKsgAACrIAAAAKwAAKPXAAD+/wEA//8BAP7/AgD//wIA/v8DAP//AwD+/wQA//8EAP7/BQD//wUA/v8GAP//BgD+/wcA//8HAP7/CAD//wgA/v8JAP//CQD+/woA//8KAP7/CwD//wsA/v8MAP//DAD+/w0A//8NAP7/DgD//xAArCAAAKwgAAD8/wAA/P8AAPYBAAD5AQAAGAIAAB8CAAAiAgAAMwIAAKkCAACtAgAA3wIAAN8CAADqAgAA7gIAAEYDAABOAwAAYgMAAGIDAADXAwAA1wMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAAAAQAAAAEAAANBAAADQQAAFAEAABQBAAAXQQAAF0EAACIBAAAiQQAAIwEAACPBAAA7AQAAO0EAACKBQAAigUAAFMGAABVBgAAuAYAALkGAAC/BgAAvwYAAM8GAADPBgAA+gYAAP4GAAAABwAADQcAAA8HAAAsBwAAMAcAAEoHAACABwAAsAcAAIINAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAMoNAADKDQAAzw0AANQNAADWDQAA1g0AANgNAADfDQAA8g0AAPQNAABqDwAAag8AAJYPAACWDwAArg8AALAPAAC4DwAAuA8AALoPAAC8DwAAvg8AAMwPAADPDwAAzw8AAAAQAAAhEAAAIxAAACcQAAApEAAAKhAAACwQAAAyEAAANhAAADkQAABAEAAAWRAAAAASAAAGEgAACBIAAEYSAABIEgAASBIAAEoSAABNEgAAUBIAAFYSAABYEgAAWBIAAFoSAABdEgAAYBIAAIYSAACIEgAAiBIAAIoSAACNEgAAkBIAAK4SAACwEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAAM4SAADQEgAA1hIAANgSAADuEgAA8BIAAA4TAAAQEwAAEBMAABITAAAVEwAAGBMAAB4TAAAgEwAARhMAAEgTAABaEwAAYRMAAHwTAACgEwAA9BMAAAEUAAB2FgAAgBYAAJwWAACgFgAA8BYAAIAXAADcFwAA4BcAAOkXAAAAGAAADhgAABAYAAAZGAAAIBgAAHcYAACAGAAAqRgAAC8gAAAvIAAASCAAAE0gAACtIAAAryAAAOIgAADjIAAAOSEAADohAACDIQAAgyEAAOshAADzIQAAASMAAAEjAAB7IwAAeyMAAH0jAACaIwAAJSQAACYkAADwJQAA9yUAABkmAAAZJgAAcCYAAHEmAAAAKAAA/ygAAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAPAvAAD7LwAAODAAADowAAA+MAAAPjAAAKAxAAC3MQAAADQAALVNAAAAoAAAjKQAAJCkAAChpAAApKQAALOkAAC1pAAAwKQAAMKkAADEpAAAxqQAAMakAAAd+wAAHfsAAPn/AAD7/wAA9AMAAPUDAADQ/QAA7/0AAAADAQAeAwEAIAMBACMDAQAwAwEASgMBAAAEAQAlBAEAKAQBAE0EAQAA0AEA9dABAADRAQAm0QEAKtEBAN3RAQAA1AEAVNQBAFbUAQCc1AEAntQBAJ/UAQCi1AEAotQBAKXUAQCm1AEAqdQBAKzUAQCu1AEAudQBALvUAQC71AEAvdQBAMDUAQDC1AEAw9QBAMXUAQAF1QEAB9UBAArVAQAN1QEAFNUBABbVAQAc1QEAHtUBADnVAQA71QEAPtUBAEDVAQBE1QEARtUBAEbVAQBK1QEAUNUBAFLVAQCj1gEAqNYBAMnXAQDO1wEA/9cBAAAAAgDWpgIAAPgCAB36AgABAA4AAQAOACAADgB/AA4AIAIAACACAABPAwAATwMAAGMDAABvAwAA2AMAANkDAAD2AwAA9gMAAIoEAACLBAAAxQQAAMYEAADJBAAAygQAAM0EAADOBAAAAAUAAA8FAABuBgAAbwYAALEHAACxBwAA9xAAAPgQAAAAFwAADBcAAA4XAAAUFwAAIBcAADYXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAEcgAABHIAAATiAAAFIgAABXIAAAVyAAAF8gAABjIAAAcSAAAHEgAACwIAAAsSAAAOQgAADqIAAAPSEAAEshAAD0IQAA/yEAAPIiAAD/IgAAfCMAAHwjAACbIwAAziMAAOskAAD+JAAAliUAAJ8lAAD4JQAA/yUAABYmAAAXJgAAciYAAH0mAACAJgAAiSYAAGgnAAB1JwAA0CcAAOsnAADwJwAA/ycAAAApAAD/KgAAOzAAAD0wAACVMAAAljAAAJ8wAACgMAAA/zAAAP8wAADwMQAA/zEAAFEyAABfMgAAsTIAAL8yAACipAAAo6QAALSkAAC0pAAAwaQAAMGkAADFpAAAxaQAADD6AABq+gAA/P0AAPz9AAAA/gAAD/4AAEX+AABG/gAAc/4AAHP+AABf/wAAYP8AACECAAAhAgAANAIAADYCAACuAgAArwIAAO8CAAD/AgAAUAMAAFcDAABdAwAAXwMAAPcDAAD7AwAAAAYAAAMGAAANBgAAFQYAAFYGAABYBgAA7gYAAO8GAAD/BgAA/wYAAC0HAAAvBwAATQcAAE8HAAAECQAABAkAAL0JAAC9CQAAAQoAAAEKAAADCgAAAwoAAIwKAACMCgAA4QoAAOMKAADxCgAA8QoAADULAAA1CwAAcQsAAHELAADzCwAA+gsAALwMAAC9DAAA3RcAAN0XAADwFwAA+RcAAAAZAAAcGQAAIBkAACsZAAAwGQAAOxkAAEAZAABAGQAARBkAAG0ZAABwGQAAdBkAAOAZAAD/GQAAAB0AAGsdAABTIAAAVCAAADshAAA7IQAAzyMAANAjAAD/JAAA/yQAABQmAAAVJgAAiiYAAJEmAACgJgAAoSYAAAArAAANKwAAHTIAAB4yAABQMgAAUDIAAHwyAAB9MgAAzDIAAM8yAAB3MwAAejMAAN4zAADfMwAA/zMAAP8zAADATQAA/00AAP39AAD9/QAAR/4AAEj+AAAAAAEACwABAA0AAQAmAAEAKAABADoAAQA8AAEAPQABAD8AAQBNAAEAUAABAF0AAQCAAAEA+gABAAABAQACAQEABwEBADMBAQA3AQEAPwEBAIADAQCdAwEAnwMBAJ8DAQAmBAEAJwQBAE4EAQCdBAEAoAQBAKkEAQAACAEABQgBAAgIAQAICAEACggBADUIAQA3CAEAOAgBADwIAQA8CAEAPwgBAD8IAQAA0wEAVtMBAMHUAQDB1AEAAAEOAO8BDgA3AgAAQQIAAFgDAABcAwAA/AMAAP8DAAD2BAAA9wQAAKIFAACiBQAAxQUAAMcFAAALBgAACwYAAB4GAAAeBgAAWQYAAF4GAABQBwAAbQcAAH0JAAB9CQAAzgkAAM4JAAC2CwAAtgsAAOYLAADmCwAA0A8AANEPAAD5EAAA+hAAAPwQAAD8EAAABxIAAAcSAABHEgAARxIAAIcSAACHEgAArxIAAK8SAADPEgAAzxIAAO8SAADvEgAADxMAAA8TAAAfEwAAHxMAAEcTAABHEwAAXxMAAGATAACAEwAAmRMAAIAZAACpGQAAsBkAAMkZAADQGQAA2RkAAN4ZAADfGQAAABoAABsaAAAeGgAAHxoAAGwdAADDHQAAVSAAAFYgAABYIAAAXiAAAJAgAACUIAAAsiAAALUgAADrIAAA6yAAADwhAAA8IQAATCEAAEwhAADRIwAA2yMAABgmAAAYJgAAfiYAAH8mAACSJgAAnCYAAKImAACxJgAAwCcAAMYnAAAOKwAAEysAAAAsAAAuLAAAMCwAAF4sAACALAAA6iwAAPksAAAlLQAAMC0AAGUtAABvLQAAby0AAIAtAACWLQAAoC0AAKYtAACoLQAAri0AALAtAAC2LQAAuC0AAL4tAADALQAAxi0AAMgtAADOLQAA0C0AANYtAADYLQAA3i0AAAAuAAAXLgAAHC4AAB0uAADAMQAAzzEAAH4yAAB+MgAApp8AALufAAAApwAAFqcAAACoAAArqAAAcPoAANn6AAAQ/gAAGf4AAEABAQCKAQEAoAMBAMMDAQDIAwEA1QMBAAAKAQADCgEABQoBAAYKAQAMCgEAEwoBABUKAQAXCgEAGQoBADMKAQA4CgEAOgoBAD8KAQBHCgEAUAoBAFgKAQAA0gEARdIBAKTWAQCl1gEAQgIAAE8CAAB7AwAAfQMAAM8EAADPBAAA+gQAAP8EAAAQBQAAEwUAALoFAAC6BQAAwAcAAPoHAAB7CQAAfAkAAH4JAAB/CQAA4gwAAOMMAADxDAAA8gwAAAAbAABLGwAAUBsAAHwbAADEHQAAyh0AAP4dAAD/HQAA7CAAAO8gAABNIQAATiEAAIQhAACEIQAA3CMAAOcjAACyJgAAsiYAAMcnAADKJwAAFCsAABorAAAgKwAAIysAAGAsAABsLAAAdCwAAHcsAAAXpwAAGqcAACCnAAAhpwAAQKgAAHeoAAAACQEAGQkBAB8JAQAfCQEAACABAG4jAQAAJAEAYiQBAHAkAQBzJAEAYNMBAHHTAQDK1wEAy9cBAHADAABzAwAAdgMAAHcDAADPAwAAzwMAAIcEAACHBAAAFAUAACMFAAAGBgAACgYAABYGAAAaBgAAOwYAAD8GAABuBwAAfwcAAHEJAAByCQAAUQoAAFEKAAB1CgAAdQoAAEQLAABECwAAYgsAAGMLAADQCwAA0AsAAD0MAAA9DAAAWAwAAFkMAABiDAAAYwwAAHgMAAB/DAAAPQ0AAD0NAABEDQAARA0AAGINAABjDQAAcA0AAHUNAAB5DQAAfw0AAGsPAABsDwAAzg8AAM4PAADSDwAA1A8AACIQAAAiEAAAKBAAACgQAAArEAAAKxAAADMQAAA1EAAAOhAAAD8QAABaEAAAmRAAAJ4QAACfEAAAqhgAAKoYAACAGwAAqhsAAK4bAAC5GwAAABwAADccAAA7HAAASRwAAE0cAAB/HAAAyx0AAOYdAACcHgAAnx4AAPoeAAD/HgAAZCAAAGQgAADwIAAA8CAAAE8hAABPIQAAhSEAAIghAACdJgAAnSYAALMmAAC8JgAAwCYAAMMmAADMJwAAzCcAAOwnAADvJwAAGysAAB8rAAAkKwAATCsAAFArAABUKwAAbSwAAG8sAABxLAAAcywAAHgsAAB9LAAA4C0AAP8tAAAYLgAAGy4AAB4uAAAwLgAALTEAAC0xAADQMQAA4zEAALyfAADDnwAAAKUAACumAABApgAAX6YAAGKmAABzpgAAfKYAAJemAAAbpwAAH6cAACKnAACMpwAA+6cAAP+nAACAqAAAxKgAAM6oAADZqAAAAKkAAFOpAABfqQAAX6kAAACqAAA2qgAAQKoAAE2qAABQqgAAWaoAAFyqAABfqgAAJP4AACb+AACQAQEAmwEBANABAQD9AQEAgAIBAJwCAQCgAgEA0AIBACAJAQA5CQEAPwkBAD8JAQAp0QEAKdEBAADwAQAr8AEAMPABAJPwAQAkBQAAJQUAAAAIAAAtCAAAMAgAAD4IAAAACQAAAAkAAE4JAABOCQAAVQkAAFUJAAB5CQAAegkAAPsJAAD7CQAA1Q8AANgPAACaEAAAnRAAAFoRAABeEQAAoxEAAKcRAAD6EQAA/xEAAAAUAAAAFAAAdxYAAH8WAACwGAAA9RgAAKoZAACrGQAA2hkAANoZAAAgGgAAXhoAAGAaAAB8GgAAfxoAAIkaAACQGgAAmRoAAKAaAACtGgAA0BwAAPIcAAD9HQAA/R0AALYgAAC4IAAAUCEAAFIhAACJIQAAiSEAAOgjAADoIwAAniYAAJ8mAAC9JgAAvyYAAMQmAADNJgAAzyYAAOEmAADjJgAA4yYAAOgmAAD/JgAAVycAAFcnAABVKwAAWSsAAHAsAABwLAAAfiwAAH8sAADrLAAA8SwAADEuAAAxLgAARDIAAE8yAADEnwAAy58AANCkAAD/pAAAoKYAAPemAAAwqAAAOagAAOCoAAD7qAAAYKkAAHypAACAqQAAzakAAM+pAADZqQAA3qkAAN+pAABgqgAAe6oAAICqAADCqgAA26oAAN+qAADAqwAA7asAAPCrAAD5qwAAsNcAAMbXAADL1wAA+9cAAGv6AABt+gAAQAgBAFUIAQBXCAEAXwgBABoJAQAbCQEAYAoBAH8KAQAACwEANQsBADkLAQBVCwEAWAsBAHILAQB4CwEAfwsBAAAMAQBIDAEAYA4BAH4OAQCAEAEAwRABAAAwAQAuNAEAAPEBAArxAQAQ8QEALvEBADHxAQAx8QEAPfEBAD3xAQA/8QEAP/EBAELxAQBC8QEARvEBAEbxAQBK8QEATvEBAFfxAQBX8QEAX/EBAF/xAQB58QEAefEBAHvxAQB88QEAf/EBAH/xAQCK8QEAjfEBAJDxAQCQ8QEAAPIBAADyAQAQ8gEAMfIBAEDyAQBI8gEAAKcCADS3AgAmBQAAJwUAACAGAAAgBgAAXwYAAF8GAABACAAAWwgAAF4IAABeCAAAOgkAADsJAABPCQAATwkAAFYJAABXCQAAcwkAAHcJAAByCwAAdwsAACkNAAApDQAAOg0AADoNAABODQAATg0AAIwPAACPDwAA2Q8AANoPAABdEwAAXhMAAMAbAADzGwAA/BsAAP8bAAD8HQAA/B0AAJUgAACcIAAAuSAAALkgAADpIwAA8yMAAM4mAADOJgAA4iYAAOImAADkJgAA5yYAAAUnAAAFJwAACicAAAsnAAAoJwAAKCcAAEwnAABMJwAATicAAE4nAABTJwAAVScAAF8nAABgJwAAlScAAJcnAACwJwAAsCcAAL8nAAC/JwAAzicAAM8nAABwLQAAcC0AAH8tAAB/LQAAuDEAALoxAABgpgAAYaYAAI2nAACOpwAAkKcAAJGnAACgpwAAqacAAPqnAAD6pwAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAALL7AADB+wAAABABAE0QAQBSEAEAbxABAABoAQA4agEAALABAAGwAQCg8AEArvABALHwAQC+8AEAwfABAM/wAQDR8AEA3/ABADDxAQAw8QEAMvEBADzxAQA+8QEAPvEBAEDxAQBB8QEAQ/EBAEXxAQBH8QEASfEBAE/xAQBW8QEAWPEBAF7xAQBg8QEAafEBAHDxAQB48QEAevEBAHrxAQB98QEAfvEBAIDxAQCJ8QEAjvEBAI/xAQCR8QEAmvEBAObxAQD/8QEAAfIBAALyAQAy8gEAOvIBAFDyAQBR8gEAAPMBACDzAQAw8wEANfMBADfzAQB88wEAgPMBAJPzAQCg8wEAxPMBAMbzAQDK8wEA4PMBAPDzAQAA9AEAPvQBAED0AQBA9AEAQvQBAPf0AQD59AEA/PQBAAD1AQA99QEAUPUBAGf1AQD79QEA//UBAAH2AQAQ9gEAEvYBABT2AQAW9gEAFvYBABj2AQAY9gEAGvYBABr2AQAc9gEAHvYBACD2AQAl9gEAKPYBACv2AQAt9gEALfYBADD2AQAz9gEANfYBAED2AQBF9gEAT/YBAID2AQDF9gEAAPcBAHP3AQBAtwIAHbgCAI8FAACPBQAABAYAAAQGAACgCAAAoAgAAKIIAACsCAAA5AgAAP4IAADwCgAA8AoAAN4OAADfDgAAxxAAAMcQAADNEAAAzRAAAP0QAAD/EAAAqxsAAK0bAAC6GwAAvxsAAMAcAADHHAAA8xwAAPYcAADLJwAAyycAAM0nAADNJwAA8iwAAPMsAAAnLQAAJy0AAC0tAAAtLQAAZi0AAGctAAAyLgAAOy4AAMyfAADMnwAAdKYAAHumAACfpgAAn6YAAJKnAACTpwAAqqcAAKqnAAD4pwAA+acAAOCqAAD2qgAALvoAAC/6AACACQEAtwkBAL4JAQC/CQEA0BABAOgQAQDwEAEA+RABAAARAQA0EQEANhEBAEMRAQCAEQEAyBEBANARAQDZEQEAgBYBALcWAQDAFgEAyRYBAABvAQBEbwEAUG8BAH5vAQCPbwEAn28BAADuAQAD7gEABe4BAB/uAQAh7gEAIu4BACTuAQAk7gEAJ+4BACfuAQAp7gEAMu4BADTuAQA37gEAOe4BADnuAQA77gEAO+4BAELuAQBC7gEAR+4BAEfuAQBJ7gEASe4BAEvuAQBL7gEATe4BAE/uAQBR7gEAUu4BAFTuAQBU7gEAV+4BAFfuAQBZ7gEAWe4BAFvuAQBb7gEAXe4BAF3uAQBf7gEAX+4BAGHuAQBi7gEAZO4BAGTuAQBn7gEAau4BAGzuAQBy7gEAdO4BAHfuAQB57gEAfO4BAH7uAQB+7gEAgO4BAInuAQCL7gEAm+4BAKHuAQCj7gEApe4BAKnuAQCr7gEAu+4BAPDuAQDx7gEAavEBAGvxAQBA9QEAQ/UBAAD2AQAA9gEAEfYBABH2AQAV9gEAFfYBABf2AQAX9gEAGfYBABn2AQAb9gEAG/YBAB/2AQAf9gEAJvYBACf2AQAs9gEALPYBAC72AQAv9gEANPYBADT2AQC6IAAAuiAAABwGAAAcBgAAZiAAAGkgAAB/AwAAfwMAACgFAAAvBQAAjQUAAI4FAAAFBgAABQYAAKEIAAChCAAArQgAALIIAAD/CAAA/wgAAHgJAAB4CQAAgAkAAIAJAAAADAAAAAwAADQMAAA0DAAAgQwAAIEMAAABDQAAAQ0AAOYNAADvDQAA8RYAAPgWAAAdGQAAHhkAALAaAAC+GgAA+BwAAPkcAADnHQAA9R0AALsgAAC9IAAA9CMAAPojAAAAJwAAACcAAE0rAABPKwAAWisAAHMrAAB2KwAAlSsAAJgrAAC5KwAAvSsAAMgrAADKKwAA0SsAADwuAABCLgAAmKYAAJ2mAACUpwAAn6cAAKunAACtpwAAsKcAALGnAAD3pwAA96cAAOCpAAD+qQAAfKoAAH+qAAAwqwAAX6sAAGSrAABlqwAAJ/4AAC3+AACLAQEAjAEBAKABAQCgAQEA4AIBAPsCAQAfAwEAHwMBAFADAQB6AwEAAAUBACcFAQAwBQEAYwUBAG8FAQBvBQEAAAYBADYHAQBABwEAVQcBAGAHAQBnBwEAYAgBAJ4IAQCnCAEArwgBAIAKAQCfCgEAwAoBAOYKAQDrCgEA9goBAIALAQCRCwEAmQsBAJwLAQCpCwEArwsBAH8QAQB/EAEAUBEBAHYRAQDNEQEAzREBANoRAQDaEQEA4REBAPQRAQAAEgEAERIBABMSAQA9EgEAsBIBAOoSAQDwEgEA+RIBAAETAQADEwEABRMBAAwTAQAPEwEAEBMBABMTAQAoEwEAKhMBADATAQAyEwEAMxMBADUTAQA5EwEAPBMBAEQTAQBHEwEASBMBAEsTAQBNEwEAVxMBAFcTAQBdEwEAYxMBAGYTAQBsEwEAcBMBAHQTAQCAFAEAxxQBANAUAQDZFAEAgBUBALUVAQC4FQEAyRUBAAAWAQBEFgEAUBYBAFkWAQCgGAEA8hgBAP8YAQD/GAEAwBoBAPgaAQBvIwEAmCMBAGMkAQBuJAEAdCQBAHQkAQBAagEAXmoBAGBqAQBpagEAbmoBAG9qAQDQagEA7WoBAPBqAQD1agEAAGsBAEVrAQBQawEAWWsBAFtrAQBhawEAY2sBAHdrAQB9awEAj2sBAAC8AQBqvAEAcLwBAHy8AQCAvAEAiLwBAJC8AQCZvAEAnLwBAKO8AQAA6AEAxOgBAMfoAQDW6AEAv/ABAL/wAQDg8AEA9fABAAvxAQAM8QEAIfMBACzzAQA28wEANvMBAH3zAQB98wEAlPMBAJ/zAQDF8wEAxfMBAMvzAQDO8wEA1PMBAN/zAQDx8wEA9/MBAD/0AQA/9AEAQfQBAEH0AQD49AEA+PQBAP30AQD+9AEAPvUBAD/1AQBE9QEASvUBAGj1AQB59QEAe/UBAKP1AQCl9QEA+vUBAEH2AQBC9gEAUPYBAH/2AQDG9gEAz/YBAOD2AQDs9gEA8PYBAPP2AQCA9wEA1PcBAAD4AQAL+AEAEPgBAEf4AQBQ+AEAWfgBAGD4AQCH+AEAkPgBAK34AQCzCAAAtAgAAOMIAADjCAAA+QoAAPkKAABaDAAAWgwAAF8NAABfDQAA9RMAAPUTAAD4EwAA/RMAAL4gAAC+IAAAiiEAAIshAADsKwAA7ysAAM2fAADVnwAAnqYAAJ6mAACPpwAAj6cAALKnAAC3pwAA/KgAAP2oAABgqwAAY6sAAHCrAAC/qwAALv4AAC/+AADgCAEA8ggBAPQIAQD1CAEA+wgBAP8IAQC8CQEAvQkBAMAJAQDPCQEA0gkBAP8JAQCADAEAsgwBAMAMAQDyDAEA+gwBAP8MAQDJEQEAzBEBANsRAQDfEQEAgBIBAIYSAQCIEgEAiBIBAIoSAQCNEgEAjxIBAJ0SAQCfEgEAqRIBAAATAQAAEwEAUBMBAFATAQDKFQEA3RUBAAAXAQAZFwEAHRcBACsXAQAwFwEAPxcBAJkjAQCZIwEAgCQBAEMlAQAARAEARkYBAN7RAQDo0QEAANgBAIvaAQCb2gEAn9oBAKHaAQCv2gEALfMBAC/zAQB+8wEAf/MBAM/zAQDT8wEA+PMBAP/zAQD/9AEA//QBAEv1AQBP9QEAQ/YBAET2AQDQ9gEA0PYBABD5AQAY+QEAgPkBAIT5AQDA+QEAwPkBACC4AgChzgIAtggAAL0IAADUCAAA4ggAAIAMAACADAAATw0AAE8NAABUDQAAVg0AAFgNAABeDQAAdg0AAHgNAACAHAAAiBwAAPsdAAD7HQAA+yMAAP4jAABDLgAARC4AAK6nAACupwAAxagAAMWoAACNAQEAjgEBALAEAQDTBAEA2AQBAPsEAQA+EgEAPhIBAAAUAQBZFAEAWxQBAFsUAQBdFAEAXRQBAGAWAQBsFgEAABwBAAgcAQAKHAEANhwBADgcAQBFHAEAUBwBAGwcAQBwHAEAjxwBAJIcAQCnHAEAqRwBALYcAQDgbwEA4G8BAABwAQDshwEAAIgBAPKKAQAA4AEABuABAAjgAQAY4AEAG+ABACHgAQAj4AEAJOABACbgAQAq4AEAAOkBAErpAQBQ6QEAWekBAF7pAQBf6QEAm/EBAKzxAQA78gEAO/IBAHr1AQB69QEApPUBAKT1AQDR9gEA0vYBAPT2AQD29gEAGfkBAB75AQAg+QEAJ/kBADD5AQAw+QEAM/kBAD75AQBA+QEAS/kBAFD5AQBe+QEAhfkBAJH5AQBgCAAAaggAAPwJAAD9CQAA+goAAP8KAAAADQAAAA0AADsNAAA8DQAA9xwAAPccAAD2HQAA+R0AAL8gAAC/IAAA/yMAAP8jAADSKwAA0isAAEUuAABJLgAALjEAAC4xAADWnwAA6p8AAC0DAQAvAwEAABoBAEcaAQBQGgEAgxoBAIYaAQCcGgEAnhoBAKIaAQAAHQEABh0BAAgdAQAJHQEACx0BADYdAQA6HQEAOh0BADwdAQA9HQEAPx0BAEcdAQBQHQEAWR0BAOFvAQDhbwEAArABAB6xAQBwsQEA+7IBAGDyAQBl8gEA0/YBANT2AQD39gEA+PYBAAD5AQAL+QEAH/kBAB/5AQAo+QEAL/kBADH5AQAy+QEATPkBAEz5AQBf+QEAa/kBAJL5AQCX+QEA0PkBAOb5AQCwzgIA4OsCAGAFAABgBQAAiAUAAIgFAADvBQAA7wUAAP0HAAD/BwAA0wgAANMIAAD+CQAA/gkAAHYKAAB2CgAABAwAAAQMAACEDAAAhAwAAHgYAAB4GAAAkBwAALocAAC9HAAAvxwAALorAAC8KwAA0ysAAOsrAADwKwAA/isAAEouAABOLgAALzEAAC8xAADrnwAA758AAK+nAACvpwAAuKcAALmnAAD+qAAA/6gAADQKAQA1CgEASAoBAEgKAQAADQEAJw0BADANAQA5DQEAAA8BACcPAQAwDwEAWQ8BAM0QAQDNEAEARBEBAEYRAQA7EwEAOxMBAF4UAQBeFAEAGhcBABoXAQAAGAEAOxgBAJ0aAQCdGgEAYB0BAGUdAQBnHQEAaB0BAGodAQCOHQEAkB0BAJEdAQCTHQEAmB0BAKAdAQCpHQEA4B4BAPgeAQBAbgEAmm4BAO2HAQDxhwEA4NIBAPPSAQBy0wEAeNMBAHHsAQC07AEAL/EBAC/xAQD59gEA+fYBANX3AQDY9wEATfkBAE/5AQBs+QEAcPkBAHP5AQB2+QEAevkBAHr5AQB8+QEAf/kBAJj5AQCi+QEAsPkBALn5AQDB+QEAwvkBAOf5AQD/+QEAYPoBAG36AQB3DAAAdwwAAIYOAACGDgAAiQ4AAIkOAACMDgAAjA4AAI4OAACTDgAAmA4AAJgOAACgDgAAoA4AAKgOAACpDgAArA4AAKwOAAC6DgAAug4AAPocAAD6HAAAySsAAMkrAAD/KwAA/ysAAE8uAABPLgAAuqcAAL+nAADCpwAAxqcAAGarAABnqwAA4A8BAPYPAQBfFAEAXxQBALgWAQC4FgEAoBkBAKcZAQCqGQEA1xkBANoZAQDkGQEAhBoBAIUaAQDAHwEA8R8BAP8fAQD/HwEAMDQBADg0AQBFbwEASm8BAE9vAQBPbwEAf28BAIdvAQDibwEA428BAPKHAQD3hwEAULEBAFKxAQBksQEAZ7EBAADhAQAs4QEAMOEBAD3hAQBA4QEASeEBAE7hAQBP4QEAwOIBAPniAQD/4gEA/+IBAEvpAQBL6QEAAe0BAD3tAQBs8QEAbPEBANX2AQDV9gEA+vYBAPr2AQDg9wEA6/cBAA35AQAP+QEAP/kBAD/5AQBx+QEAcfkBAHv5AQB7+QEApfkBAKr5AQCu+QEAr/kBALr5AQC/+QEAw/kBAMr5AQDN+QEAz/kBAAD6AQBT+gEAcPoBAHP6AQB4+gEAevoBAID6AQCC+gEAkPoBAJX6AQD/MgAA/zIAAL4IAADHCAAAVQsAAFULAAAEDQAABA0AAIENAACBDQAAvxoAAMAaAACXKwAAlysAAFAuAABSLgAAuzEAAL8xAAC2TQAAv00AAPCfAAD8nwAAx6cAAMqnAAD1pwAA9qcAACyoAAAsqAAAaKsAAGurAACcAQEAnAEBAIAOAQCpDgEAqw4BAK0OAQCwDgEAsQ4BALAPAQDLDwEARxEBAEcRAQDOEQEAzxEBAFoUAQBaFAEAYBQBAGEUAQAAGQEABhkBAAkZAQAJGQEADBkBABMZAQAVGQEAFhkBABgZAQA1GQEANxkBADgZAQA7GQEARhkBAFAZAQBZGQEAsB8BALAfAQDkbwEA5G8BAPBvAQDxbwEA84oBANWMAQAAjQEACI0BAA3xAQAP8QEAbfEBAG/xAQCt8QEArfEBANb2AQDX9gEA+/YBAPz2AQCw+AEAsfgBAAz5AQAM+QEAcvkBAHL5AQB3+QEAePkBAKP5AQCk+QEAq/kBAK35AQDL+QEAy/kBAHT6AQB0+gEAg/oBAIb6AQCW+gEAqPoBALD6AQC2+gEAwPoBAML6AQDQ+gEA1voBAAD7AQCS+wEAlPsBAMr7AQDw+wEA+fsBANemAgDdpgIAAAADAEoTAwAdBgAAHQYAAHAIAACOCAAAkAgAAJEIAACYCAAAnwgAALUIAAC1CAAAyAgAANIIAAA8DAAAPAwAAF0MAABdDAAA3QwAAN0MAAANFwAADRcAABUXAAAVFwAAHxcAAB8XAAAPGAAADxgAAMEaAADOGgAATBsAAEwbAAB9GwAAfhsAAPodAAD6HQAAwCAAAMAgAAAvLAAALywAAF8sAABfLAAAUy4AAF0uAAD9nwAA/58AAMCnAADBpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAAPSnAADC+wAAwvsAAED9AABP/QAAz/0AAM/9AAD+/QAA//0AAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQCABwEAhQcBAIcHAQCwBwEAsgcBALoHAQBwDwEAiQ8BAHAQAQB1EAEAwhABAMIQAQC5FgEAuRYBAEAXAQBGFwEAsBoBAL8aAQCQLwEA8i8BAHBqAQC+agEAwGoBAMlqAQDwrwEA868BAPWvAQD7rwEA/a8BAP6vAQAfsQEAIrEBAADPAQAtzwEAMM8BAEbPAQBQzwEAw88BAOnRAQDq0QEAAN8BAB7fAQCQ4gEAruIBAODnAQDm5wEA6OcBAOvnAQDt5wEA7ucBAPDnAQD+5wEA3fYBAN/2AQDw9wEA8PcBAHn5AQB5+QEAzPkBAMz5AQB7+gEAfPoBAKn6AQCs+gEAt/oBALr6AQDD+gEAxfoBANf6AQDZ+gEA4PoBAOf6AQDw+gEA9voBAN6mAgDfpgIANbcCADi3AgDzDAAA8wwAAM4OAADODgAA/Q4BAP8OAQA/EgEAQRIBAAAbAQAJGwEAAB8BABAfAQASHwEAOh8BAD4fAQBZHwEALzQBAC80AQA5NAEAVTQBADKxAQAysQEAVbEBAFWxAQDA0gEA09IBACXfAQAq3wEAMOABAG3gAQCP4AEAj+ABANDkAQD55AEA3PYBANz2AQB09wEAdvcBAHv3AQB/9wEA2fcBANn3AQB1+gEAd/oBAIf6AQCI+gEArfoBAK/6AQC7+gEAvfoBAL/6AQC/+gEAzvoBAM/6AQDa+gEA2/oBAOj6AQDo+gEA9/oBAPj6AQA5twIAObcCAFATAwCvIwMADx4SAAQAAAD8VBIAIAEAAFUeEgAEAAAA/F0SABwAAABcHhIABAAAANxeEgACAAAAYx4SAAQAAADsXhIAeQAAAGoeEgAEAAAAtGISACQAAABxHhIABAAAANRjEgA7AAAAeB4SAAQAAACsZRIATQAAAH8eEgAEAAAAFGgSAFYAAACGHhIABAAAAMRqEgAjAAAAjR4SAAQAAADcaxIAWQAAAJQeEgAEAAAApG4SAFoAAACbHhIABAAAAHRxEgBqAAAAoh4SAAQAAADEdBIAWQAAAKkeEgAEAAAAjHcSAAEAAACwHhIABAAAAJR3EgACAAAAtx4SAAQAAACkdxIAjQAAAL4eEgAEAAAADHwSADsAAADFHhIABAAAAOR9EgA0AAAAFx4SAAUAAACEfxIAKAAAACAeEgAFAAAAxIASADsAAAApHhIABQAAAJyCEgA8AAAAMh4SAAUAAAB8hBIAAQAAADseEgAFAAAAhIQSADsAAABEHhIABQAAAFyGEgBOAAAATR4SAAUAAADMiBIAIAAAAEEAAABaAAAAYQAAAHoAAAC1AAAAtQAAAMAAAADWAAAA2AAAAPYAAAD4AAAAugEAALwBAAC/AQAAxAEAAJMCAACVAgAArwIAAHADAABzAwAAdgMAAHcDAAB7AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAigQAAC8FAAAxBQAAVgUAAGAFAACIBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD9EAAA/xAAAKATAAD1EwAA+BMAAP0TAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAAAAHQAAKx0AAGsdAAB3HQAAeR0AAJodAAAAHgAAFR8AABgfAAAdHwAAIB8AAEUfAABIHwAATR8AAFAfAABXHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAH0fAACAHwAAtB8AALYfAAC8HwAAvh8AAL4fAADCHwAAxB8AAMYfAADMHwAA0B8AANMfAADWHwAA2x8AAOAfAADsHwAA8h8AAPQfAAD2HwAA/B8AAAIhAAACIQAAByEAAAchAAAKIQAAEyEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAAC8hAAA0IQAAOSEAADkhAAA8IQAAPyEAAEUhAABJIQAATiEAAE4hAACDIQAAhCEAAAAsAAB7LAAAfiwAAOQsAADrLAAA7iwAAPIsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQKYAAG2mAACApgAAm6YAACKnAABvpwAAcacAAIenAACLpwAAjqcAAJCnAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA9acAAPanAAD6pwAA+qcAADCrAABaqwAAYKsAAGirAABwqwAAv6sAAAD7AAAG+wAAE/sAABf7AAAh/wAAOv8AAEH/AABa/wAAAAQBAE8EAQCwBAEA0wQBANgEAQD7BAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCXBQEAoQUBAKMFAQCxBQEAswUBALkFAQC7BQEAvAUBAIAMAQCyDAEAwAwBAPIMAQCgGAEA3xgBAEBuAQB/bgEAANQBAFTUAQBW1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALnUAQC71AEAu9QBAL3UAQDD1AEAxdQBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQAe1QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAUtUBAKXWAQCo1gEAwNYBAMLWAQDa1gEA3NYBAPrWAQD81gEAFNcBABbXAQA01wEANtcBAE7XAQBQ1wEAbtcBAHDXAQCI1wEAitcBAKjXAQCq1wEAwtcBAMTXAQDL1wEAAN8BAAnfAQAL3wEAHt8BACXfAQAq3wEAAOkBAEPpAQApAAAAKQAAAF0AAABdAAAAfQAAAH0AAAA7DwAAOw8AAD0PAAA9DwAAnBYAAJwWAABGIAAARiAAAH4gAAB+IAAAjiAAAI4gAAAJIwAACSMAAAsjAAALIwAAKiMAACojAABpJwAAaScAAGsnAABrJwAAbScAAG0nAABvJwAAbycAAHEnAABxJwAAcycAAHMnAAB1JwAAdScAAMYnAADGJwAA5ycAAOcnAADpJwAA6ScAAOsnAADrJwAA7ScAAO0nAADvJwAA7ycAAIQpAACEKQAAhikAAIYpAACIKQAAiCkAAIopAACKKQAAjCkAAIwpAACOKQAAjikAAJApAACQKQAAkikAAJIpAACUKQAAlCkAAJYpAACWKQAAmCkAAJgpAADZKQAA2SkAANspAADbKQAA/SkAAP0pAAAjLgAAIy4AACUuAAAlLgAAJy4AACcuAAApLgAAKS4AAFYuAABWLgAAWC4AAFguAABaLgAAWi4AAFwuAABcLgAACTAAAAkwAAALMAAACzAAAA0wAAANMAAADzAAAA8wAAARMAAAETAAABUwAAAVMAAAFzAAABcwAAAZMAAAGTAAABswAAAbMAAAHjAAAB8wAAA+/QAAPv0AABj+AAAY/gAANv4AADb+AAA4/gAAOP4AADr+AAA6/gAAPP4AADz+AAA+/gAAPv4AAED+AABA/gAAQv4AAEL+AABE/gAARP4AAEj+AABI/gAAWv4AAFr+AABc/gAAXP4AAF7+AABe/gAACf8AAAn/AAA9/wAAPf8AAF3/AABd/wAAYP8AAGD/AABj/wAAY/8AAF8AAABfAAAAPyAAAEAgAABUIAAAVCAAADP+AAA0/gAATf4AAE/+AAA//wAAP/8AAAAAAAAfAAAAfwAAAJ8AAAAkAAAAJAAAAKIAAAClAAAAjwUAAI8FAAALBgAACwYAAP4HAAD/BwAA8gkAAPMJAAD7CQAA+wkAAPEKAADxCgAA+QsAAPkLAAA/DgAAPw4AANsXAADbFwAAoCAAAMAgAAA4qAAAOKgAAPz9AAD8/QAAaf4AAGn+AAAE/wAABP8AAOD/AADh/wAA5f8AAOb/AADdHwEA4B8BAP/iAQD/4gEAsOwBALDsAQAtAAAALQAAAIoFAACKBQAAvgUAAL4FAAAAFAAAABQAAAYYAAAGGAAAECAAABUgAAAXLgAAFy4AABouAAAaLgAAOi4AADsuAABALgAAQC4AAF0uAABdLgAAHDAAABwwAAAwMAAAMDAAAKAwAACgMAAAMf4AADL+AABY/gAAWP4AAGP+AABj/gAADf8AAA3/AACtDgEArQ4BAIgEAACJBAAAvhoAAL4aAADdIAAA4CAAAOIgAADkIAAAcKYAAHKmAAC7AAAAuwAAABkgAAAZIAAAHSAAAB0gAAA6IAAAOiAAAAMuAAADLgAABS4AAAUuAAAKLgAACi4AAA0uAAANLgAAHS4AAB0uAAAhLgAAIS4AAK0AAACtAAAAAAYAAAUGAAAcBgAAHAYAAN0GAADdBgAADwcAAA8HAACQCAAAkQgAAOIIAADiCAAADhgAAA4YAAALIAAADyAAACogAAAuIAAAYCAAAGQgAABmIAAAbyAAAP/+AAD//gAA+f8AAPv/AAC9EAEAvRABAM0QAQDNEAEAMDQBAD80AQCgvAEAo7wBAHPRAQB60QEAAQAOAAEADgAgAA4AfwAOAKsAAACrAAAAGCAAABggAAAbIAAAHCAAAB8gAAAfIAAAOSAAADkgAAACLgAAAi4AAAQuAAAELgAACS4AAAkuAAAMLgAADC4AABwuAAAcLgAAIC4AACAuAABBAAAAWgAAAGEAAAB6AAAAqgAAAKoAAAC1AAAAtQAAALoAAAC6AAAAwAAAANYAAADYAAAA9gAAAPgAAADBAgAAxgIAANECAADgAgAA5AIAAOwCAADsAgAA7gIAAO4CAABwAwAAdAMAAHYDAAB3AwAAegMAAH0DAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAAChAwAAowMAAPUDAAD3AwAAgQQAAIoEAAAvBQAAMQUAAFYFAABZBQAAWQUAAGAFAACIBQAA0AUAAOoFAADvBQAA8gUAACAGAABKBgAAbgYAAG8GAABxBgAA0wYAANUGAADVBgAA5QYAAOYGAADuBgAA7wYAAPoGAAD8BgAA/wYAAP8GAAAQBwAAEAcAABIHAAAvBwAATQcAAKUHAACxBwAAsQcAAMoHAADqBwAA9AcAAPUHAAD6BwAA+gcAAAAIAAAVCAAAGggAABoIAAAkCAAAJAgAACgIAAAoCAAAQAgAAFgIAABgCAAAaggAAHAIAACHCAAAiQgAAI4IAACgCAAAyQgAAAQJAAA5CQAAPQkAAD0JAABQCQAAUAkAAFgJAABhCQAAcQkAAIAJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC9CQAAvQkAAM4JAADOCQAA3AkAAN0JAADfCQAA4QkAAPAJAADxCQAA/AkAAPwJAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAFkKAABcCgAAXgoAAF4KAAByCgAAdAoAAIUKAACNCgAAjwoAAJEKAACTCgAAqAoAAKoKAACwCgAAsgoAALMKAAC1CgAAuQoAAL0KAAC9CgAA0AoAANAKAADgCgAA4QoAAPkKAAD5CgAABQsAAAwLAAAPCwAAEAsAABMLAAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPQsAAD0LAABcCwAAXQsAAF8LAABhCwAAcQsAAHELAACDCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAANALAADQCwAABQwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA9DAAAPQwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAIAMAACADAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAAL0MAAC9DAAA3QwAAN4MAADgDAAA4QwAAPEMAADyDAAABA0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAABODQAATg0AAFQNAABWDQAAXw0AAGENAAB6DQAAfw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAAABDgAAMA4AADIOAAAzDgAAQA4AAEYOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AALAOAACyDgAAsw4AAL0OAAC9DgAAwA4AAMQOAADGDgAAxg4AANwOAADfDgAAAA8AAAAPAABADwAARw8AAEkPAABsDwAAiA8AAIwPAAAAEAAAKhAAAD8QAAA/EAAAUBAAAFUQAABaEAAAXRAAAGEQAABhEAAAZRAAAGYQAABuEAAAcBAAAHUQAACBEAAAjhAAAI4QAACgEAAAxRAAAMcQAADHEAAAzRAAAM0QAADQEAAA+hAAAPwQAABIEgAAShIAAE0SAABQEgAAVhIAAFgSAABYEgAAWhIAAF0SAABgEgAAiBIAAIoSAACNEgAAkBIAALASAACyEgAAtRIAALgSAAC+EgAAwBIAAMASAADCEgAAxRIAAMgSAADWEgAA2BIAABATAAASEwAAFRMAABgTAABaEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADxFgAA+BYAAAAXAAARFwAAHxcAADEXAABAFwAAURcAAGAXAABsFwAAbhcAAHAXAACAFwAAsxcAANcXAADXFwAA3BcAANwXAAAgGAAAeBgAAIAYAACEGAAAhxgAAKgYAACqGAAAqhgAALAYAAD1GAAAABkAAB4ZAABQGQAAbRkAAHAZAAB0GQAAgBkAAKsZAACwGQAAyRkAAAAaAAAWGgAAIBoAAFQaAACnGgAApxoAAAUbAAAzGwAARRsAAEwbAACDGwAAoBsAAK4bAACvGwAAuhsAAOUbAAAAHAAAIxwAAE0cAABPHAAAWhwAAH0cAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAADpHAAA7BwAAO4cAADzHAAA9RwAAPYcAAD6HAAA+hwAAAAdAAC/HQAAAB4AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAvB8AAL4fAAC+HwAAwh8AAMQfAADGHwAAzB8AANAfAADTHwAA1h8AANsfAADgHwAA7B8AAPIfAAD0HwAA9h8AAPwfAABxIAAAcSAAAH8gAAB/IAAAkCAAAJwgAAACIQAAAiEAAAchAAAHIQAACiEAABMhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAvIQAAOSEAADwhAAA/IQAARSEAAEkhAABOIQAATiEAAIMhAACEIQAAACwAAOQsAADrLAAA7iwAAPIsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAMC0AAGctAABvLQAAby0AAIAtAACWLQAAoC0AAKYtAACoLQAAri0AALAtAAC2LQAAuC0AAL4tAADALQAAxi0AAMgtAADOLQAA0C0AANYtAADYLQAA3i0AAC8uAAAvLgAABTAAAAYwAAAxMAAANTAAADswAAA8MAAAQTAAAJYwAACdMAAAnzAAAKEwAAD6MAAA/DAAAP8wAAAFMQAALzEAADExAACOMQAAoDEAAL8xAADwMQAA/zEAAAA0AAC/TQAAAE4AAIykAADQpAAA/aQAAAClAAAMpgAAEKYAAB+mAAAqpgAAK6YAAECmAABupgAAf6YAAJ2mAACgpgAA5aYAABenAAAfpwAAIqcAAIinAACLpwAAyqcAANCnAADRpwAA06cAANOnAADVpwAA2acAAPKnAAABqAAAA6gAAAWoAAAHqAAACqgAAAyoAAAiqAAAQKgAAHOoAACCqAAAs6gAAPKoAAD3qAAA+6gAAPuoAAD9qAAA/qgAAAqpAAAlqQAAMKkAAEapAABgqQAAfKkAAISpAACyqQAAz6kAAM+pAADgqQAA5KkAAOapAADvqQAA+qkAAP6pAAAAqgAAKKoAAECqAABCqgAARKoAAEuqAABgqgAAdqoAAHqqAAB6qgAAfqoAAK+qAACxqgAAsaoAALWqAAC2qgAAuaoAAL2qAADAqgAAwKoAAMKqAADCqgAA26oAAN2qAADgqgAA6qoAAPKqAAD0qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABaqwAAXKsAAGmrAABwqwAA4qsAAACsAACj1wAAsNcAAMbXAADL1wAA+9cAAAD5AABt+gAAcPoAANn6AAAA+wAABvsAABP7AAAX+wAAHfsAAB37AAAf+wAAKPsAACr7AAA2+wAAOPsAADz7AAA++wAAPvsAAED7AABB+wAAQ/sAAET7AABG+wAAsfsAANP7AAA9/QAAUP0AAI/9AACS/QAAx/0AAPD9AAD7/QAAcP4AAHT+AAB2/gAA/P4AACH/AAA6/wAAQf8AAFr/AABm/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEAPAABAD0AAQA/AAEATQABAFAAAQBdAAEAgAABAPoAAQCAAgEAnAIBAKACAQDQAgEAAAMBAB8DAQAtAwEAQAMBAEIDAQBJAwEAUAMBAHUDAQCAAwEAnQMBAKADAQDDAwEAyAMBAM8DAQAABAEAnQQBALAEAQDTBAEA2AQBAPsEAQAABQEAJwUBADAFAQBjBQEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCXBQEAoQUBAKMFAQCxBQEAswUBALkFAQC7BQEAvAUBAAAGAQA2BwEAQAcBAFUHAQBgBwEAZwcBAIAHAQCFBwEAhwcBALAHAQCyBwEAugcBAAAIAQAFCAEACAgBAAgIAQAKCAEANQgBADcIAQA4CAEAPAgBADwIAQA/CAEAVQgBAGAIAQB2CAEAgAgBAJ4IAQDgCAEA8ggBAPQIAQD1CAEAAAkBABUJAQAgCQEAOQkBAIAJAQC3CQEAvgkBAL8JAQAACgEAAAoBABAKAQATCgEAFQoBABcKAQAZCgEANQoBAGAKAQB8CgEAgAoBAJwKAQDACgEAxwoBAMkKAQDkCgEAAAsBADULAQBACwEAVQsBAGALAQByCwEAgAsBAJELAQAADAEASAwBAIAMAQCyDAEAwAwBAPIMAQAADQEAIw0BAIAOAQCpDgEAsA4BALEOAQAADwEAHA8BACcPAQAnDwEAMA8BAEUPAQBwDwEAgQ8BALAPAQDEDwEA4A8BAPYPAQADEAEANxABAHEQAQByEAEAdRABAHUQAQCDEAEArxABANAQAQDoEAEAAxEBACYRAQBEEQEARBEBAEcRAQBHEQEAUBEBAHIRAQB2EQEAdhEBAIMRAQCyEQEAwREBAMQRAQDaEQEA2hEBANwRAQDcEQEAABIBABESAQATEgEAKxIBAD8SAQBAEgEAgBIBAIYSAQCIEgEAiBIBAIoSAQCNEgEAjxIBAJ0SAQCfEgEAqBIBALASAQDeEgEABRMBAAwTAQAPEwEAEBMBABMTAQAoEwEAKhMBADATAQAyEwEAMxMBADUTAQA5EwEAPRMBAD0TAQBQEwEAUBMBAF0TAQBhEwEAABQBADQUAQBHFAEAShQBAF8UAQBhFAEAgBQBAK8UAQDEFAEAxRQBAMcUAQDHFAEAgBUBAK4VAQDYFQEA2xUBAAAWAQAvFgEARBYBAEQWAQCAFgEAqhYBALgWAQC4FgEAABcBABoXAQBAFwEARhcBAAAYAQArGAEAoBgBAN8YAQD/GAEABhkBAAkZAQAJGQEADBkBABMZAQAVGQEAFhkBABgZAQAvGQEAPxkBAD8ZAQBBGQEAQRkBAKAZAQCnGQEAqhkBANAZAQDhGQEA4RkBAOMZAQDjGQEAABoBAAAaAQALGgEAMhoBADoaAQA6GgEAUBoBAFAaAQBcGgEAiRoBAJ0aAQCdGgEAsBoBAPgaAQAAHAEACBwBAAocAQAuHAEAQBwBAEAcAQByHAEAjxwBAAAdAQAGHQEACB0BAAkdAQALHQEAMB0BAEYdAQBGHQEAYB0BAGUdAQBnHQEAaB0BAGodAQCJHQEAmB0BAJgdAQDgHgEA8h4BAAIfAQACHwEABB8BABAfAQASHwEAMx8BALAfAQCwHwEAACABAJkjAQCAJAEAQyUBAJAvAQDwLwEAADABAC80AQBBNAEARjQBAABEAQBGRgEAAGgBADhqAQBAagEAXmoBAHBqAQC+agEA0GoBAO1qAQAAawEAL2sBAEBrAQBDawEAY2sBAHdrAQB9awEAj2sBAEBuAQB/bgEAAG8BAEpvAQBQbwEAUG8BAJNvAQCfbwEA4G8BAOFvAQDjbwEA428BAABwAQD3hwEAAIgBANWMAQAAjQEACI0BAPCvAQDzrwEA9a8BAPuvAQD9rwEA/q8BAACwAQAisQEAMrEBADKxAQBQsQEAUrEBAFWxAQBVsQEAZLEBAGexAQBwsQEA+7IBAAC8AQBqvAEAcLwBAHy8AQCAvAEAiLwBAJC8AQCZvAEAANQBAFTUAQBW1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALnUAQC71AEAu9QBAL3UAQDD1AEAxdQBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQAe1QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAUtUBAKXWAQCo1gEAwNYBAMLWAQDa1gEA3NYBAPrWAQD81gEAFNcBABbXAQA01wEANtcBAE7XAQBQ1wEAbtcBAHDXAQCI1wEAitcBAKjXAQCq1wEAwtcBAMTXAQDL1wEAAN8BAB7fAQAl3wEAKt8BADDgAQBt4AEAAOEBACzhAQA34QEAPeEBAE7hAQBO4QEAkOIBAK3iAQDA4gEA6+IBANDkAQDr5AEA4OcBAObnAQDo5wEA6+cBAO3nAQDu5wEA8OcBAP7nAQAA6AEAxOgBAADpAQBD6QEAS+kBAEvpAQAA7gEAA+4BAAXuAQAf7gEAIe4BACLuAQAk7gEAJO4BACfuAQAn7gEAKe4BADLuAQA07gEAN+4BADnuAQA57gEAO+4BADvuAQBC7gEAQu4BAEfuAQBH7gEASe4BAEnuAQBL7gEAS+4BAE3uAQBP7gEAUe4BAFLuAQBU7gEAVO4BAFfuAQBX7gEAWe4BAFnuAQBb7gEAW+4BAF3uAQBd7gEAX+4BAF/uAQBh7gEAYu4BAGTuAQBk7gEAZ+4BAGruAQBs7gEAcu4BAHTuAQB37gEAee4BAHzuAQB+7gEAfu4BAIDuAQCJ7gEAi+4BAJvuAQCh7gEAo+4BAKXuAQCp7gEAq+4BALvuAQAAAAIA36YCAACnAgA5twIAQLcCAB24AgAguAIAoc4CALDOAgDg6wIAAPgCAB36AgAAAAMAShMDAFATAwCvIwMA7hYAAPAWAABgIQAAgiEAAIUhAACIIQAABzAAAAcwAAAhMAAAKTAAADgwAAA6MAAA5qYAAO+mAABAAQEAdAEBAEEDAQBBAwEASgMBAEoDAQDRAwEA1QMBAAAkAQBuJAEAKCAAACggAABhAAAAegAAALUAAAC1AAAA3wAAAPYAAAD4AAAA/wAAAAEBAAABAQAAAwEAAAMBAAAFAQAABQEAAAcBAAAHAQAACQEAAAkBAAALAQAACwEAAA0BAAANAQAADwEAAA8BAAARAQAAEQEAABMBAAATAQAAFQEAABUBAAAXAQAAFwEAABkBAAAZAQAAGwEAABsBAAAdAQAAHQEAAB8BAAAfAQAAIQEAACEBAAAjAQAAIwEAACUBAAAlAQAAJwEAACcBAAApAQAAKQEAACsBAAArAQAALQEAAC0BAAAvAQAALwEAADEBAAAxAQAAMwEAADMBAAA1AQAANQEAADcBAAA4AQAAOgEAADoBAAA8AQAAPAEAAD4BAAA+AQAAQAEAAEABAABCAQAAQgEAAEQBAABEAQAARgEAAEYBAABIAQAASQEAAEsBAABLAQAATQEAAE0BAABPAQAATwEAAFEBAABRAQAAUwEAAFMBAABVAQAAVQEAAFcBAABXAQAAWQEAAFkBAABbAQAAWwEAAF0BAABdAQAAXwEAAF8BAABhAQAAYQEAAGMBAABjAQAAZQEAAGUBAABnAQAAZwEAAGkBAABpAQAAawEAAGsBAABtAQAAbQEAAG8BAABvAQAAcQEAAHEBAABzAQAAcwEAAHUBAAB1AQAAdwEAAHcBAAB6AQAAegEAAHwBAAB8AQAAfgEAAIABAACDAQAAgwEAAIUBAACFAQAAiAEAAIgBAACMAQAAjQEAAJIBAACSAQAAlQEAAJUBAACZAQAAmwEAAJ4BAACeAQAAoQEAAKEBAACjAQAAowEAAKUBAAClAQAAqAEAAKgBAACqAQAAqwEAAK0BAACtAQAAsAEAALABAAC0AQAAtAEAALYBAAC2AQAAuQEAALoBAAC9AQAAvwEAAMYBAADGAQAAyQEAAMkBAADMAQAAzAEAAM4BAADOAQAA0AEAANABAADSAQAA0gEAANQBAADUAQAA1gEAANYBAADYAQAA2AEAANoBAADaAQAA3AEAAN0BAADfAQAA3wEAAOEBAADhAQAA4wEAAOMBAADlAQAA5QEAAOcBAADnAQAA6QEAAOkBAADrAQAA6wEAAO0BAADtAQAA7wEAAPABAADzAQAA8wEAAPUBAAD1AQAA+QEAAPkBAAD7AQAA+wEAAP0BAAD9AQAA/wEAAP8BAAABAgAAAQIAAAMCAAADAgAABQIAAAUCAAAHAgAABwIAAAkCAAAJAgAACwIAAAsCAAANAgAADQIAAA8CAAAPAgAAEQIAABECAAATAgAAEwIAABUCAAAVAgAAFwIAABcCAAAZAgAAGQIAABsCAAAbAgAAHQIAAB0CAAAfAgAAHwIAACECAAAhAgAAIwIAACMCAAAlAgAAJQIAACcCAAAnAgAAKQIAACkCAAArAgAAKwIAAC0CAAAtAgAALwIAAC8CAAAxAgAAMQIAADMCAAA5AgAAPAIAADwCAAA/AgAAQAIAAEICAABCAgAARwIAAEcCAABJAgAASQIAAEsCAABLAgAATQIAAE0CAABPAgAAkwIAAJUCAACvAgAAcQMAAHEDAABzAwAAcwMAAHcDAAB3AwAAewMAAH0DAACQAwAAkAMAAKwDAADOAwAA0AMAANEDAADVAwAA1wMAANkDAADZAwAA2wMAANsDAADdAwAA3QMAAN8DAADfAwAA4QMAAOEDAADjAwAA4wMAAOUDAADlAwAA5wMAAOcDAADpAwAA6QMAAOsDAADrAwAA7QMAAO0DAADvAwAA8wMAAPUDAAD1AwAA+AMAAPgDAAD7AwAA/AMAADAEAABfBAAAYQQAAGEEAABjBAAAYwQAAGUEAABlBAAAZwQAAGcEAABpBAAAaQQAAGsEAABrBAAAbQQAAG0EAABvBAAAbwQAAHEEAABxBAAAcwQAAHMEAAB1BAAAdQQAAHcEAAB3BAAAeQQAAHkEAAB7BAAAewQAAH0EAAB9BAAAfwQAAH8EAACBBAAAgQQAAIsEAACLBAAAjQQAAI0EAACPBAAAjwQAAJEEAACRBAAAkwQAAJMEAACVBAAAlQQAAJcEAACXBAAAmQQAAJkEAACbBAAAmwQAAJ0EAACdBAAAnwQAAJ8EAAChBAAAoQQAAKMEAACjBAAApQQAAKUEAACnBAAApwQAAKkEAACpBAAAqwQAAKsEAACtBAAArQQAAK8EAACvBAAAsQQAALEEAACzBAAAswQAALUEAAC1BAAAtwQAALcEAAC5BAAAuQQAALsEAAC7BAAAvQQAAL0EAAC/BAAAvwQAAMIEAADCBAAAxAQAAMQEAADGBAAAxgQAAMgEAADIBAAAygQAAMoEAADMBAAAzAQAAM4EAADPBAAA0QQAANEEAADTBAAA0wQAANUEAADVBAAA1wQAANcEAADZBAAA2QQAANsEAADbBAAA3QQAAN0EAADfBAAA3wQAAOEEAADhBAAA4wQAAOMEAADlBAAA5QQAAOcEAADnBAAA6QQAAOkEAADrBAAA6wQAAO0EAADtBAAA7wQAAO8EAADxBAAA8QQAAPMEAADzBAAA9QQAAPUEAAD3BAAA9wQAAPkEAAD5BAAA+wQAAPsEAAD9BAAA/QQAAP8EAAD/BAAAAQUAAAEFAAADBQAAAwUAAAUFAAAFBQAABwUAAAcFAAAJBQAACQUAAAsFAAALBQAADQUAAA0FAAAPBQAADwUAABEFAAARBQAAEwUAABMFAAAVBQAAFQUAABcFAAAXBQAAGQUAABkFAAAbBQAAGwUAAB0FAAAdBQAAHwUAAB8FAAAhBQAAIQUAACMFAAAjBQAAJQUAACUFAAAnBQAAJwUAACkFAAApBQAAKwUAACsFAAAtBQAALQUAAC8FAAAvBQAAYAUAAIgFAADQEAAA+hAAAP0QAAD/EAAA+BMAAP0TAACAHAAAiBwAAAAdAAArHQAAax0AAHcdAAB5HQAAmh0AAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAnR4AAJ8eAACfHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAAohAAAKIQAADiEAAA8hAAATIQAAEyEAAC8hAAAvIQAANCEAADQhAAA5IQAAOSEAADwhAAA9IQAARiEAAEkhAABOIQAATiEAAIQhAACEIQAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB7LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACbpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAb6cAAHGnAAB4pwAAeqcAAHqnAAB8pwAAfKcAAH+nAAB/pwAAgacAAIGnAACDpwAAg6cAAIWnAACFpwAAh6cAAIenAACMpwAAjKcAAI6nAACOpwAAkacAAJGnAACTpwAAlacAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAr6cAAK+nAAC1pwAAtacAALenAAC3pwAAuacAALmnAAC7pwAAu6cAAL2nAAC9pwAAv6cAAL+nAADBpwAAwacAAMOn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AAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAuB8AALsfAADIHwAAyx8AANgfAADbHwAA6B8AAOwfAAD4HwAA+x8AAAIhAAACIQAAByEAAAchAAALIQAADSEAABAhAAASIQAAFSEAABUhAAAZIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAAtIQAAMCEAADMhAAA+IQAAPyEAAEUhAABFIQAAgyEAAIMhAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqnAABKpwAATKcAAEynAABOpwAATqcAAFCnAABQpwAAUqcAAFKnAABUpwAAVKcAAFanAABWpwAAWKcAAFinAABapwAAWqcAAFynAABcpwAAXqcAAF6nAABgpwAAYKcAAGKnAABipwAAZKcAAGSnAABmpwAAZqcAAGinAABopwAAaqcAAGqnAABspwAAbKcAAG6nAABupwAAeacAAHmnAAB7pwAAe6cAAH2nAAB+pwAAgKcAAICnAACCpwAAgqcAAISnAACEpwAAhqcAAIanAACLpwAAi6cAAI2nAACNpwAAkKcAAJCnAACSpwAAkqcAAJanAACWpwAAmKcAAJinAACapwAAmqcAAJynAACcpwAAnqcAAJ6nAACgpwAAoKcAAKKnAACipwAApKcAAKSnAACmpwAApqcAAKinAACopwAAqqcAAK6nAACwpwAAtKcAALanAAC2pwAAuKcAALinAAC6pwAAuqcAALynAAC8pwAAvqcAAL6nAADApwAAwKcAAMKnAADCpwAAxKcAAMenAADJpwAAyacAANCnAADQpwAA1qcAANanAADYpwAA2KcAAPWnAAD1pwAAIf8AADr/AAAABAEAJwQBALAEAQDTBAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCADAEAsgwBAKAYAQC/GAEAQG4BAF9uAQAA1AEAGdQBADTUAQBN1AEAaNQBAIHUAQCc1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALXUAQDQ1AEA6dQBAATV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AABSCQAAZAkAAGUJAAAADQAADA0AAA4NAAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABPDQAAVA0AAGMNAABmDQAAfw0AANocAADaHAAAMKgAADKoAABABgAAQAYAAEAIAABbCAAAXggAAF4IAABABgAAQAYAAMAKAQDmCgEA6woBAPYKAQBkCQAAZQkAAAAdAQAGHQEACB0BAAkdAQALHQEANh0BADodAQA6HQEAPB0BAD0dAQA/HQEARx0BAFAdAQBZHQEAMKgAADmoAAAAFgEARBYBAFAWAQBZFgEAABgAABkYAAAgGAAAeBgAAIAYAACqGAAALyAAAC8gAABgFgEAbBYBAGYKAABvCgAAgBIBAIYSAQCIEgEAiBIBAIoSAQCNEgEAjxIBAJ0SAQCfEgEAqRIBAAAQAACfEAAALqkAAC6pAADgqQAA/qkAAGCqAAB/qgAAZAkAAGUJAADmDAAA7wwAAOkcAADpHAAA8hwAAPIcAAD6HAAA+hwAADCoAAA1qAAAoBkBAKcZAQCqGQEA1xkBANoZAQDkGQEADAYAAAwGAAAbBgAAGwYAAB8GAAAfBgAAwAcAAPoHAAD9BwAA/wcAAD79AAA//QAAgwQAAIMEAABQAwEAegMBAEAGAABABgAA8goBAPIKAQBwDwEAiQ8BAFEJAABSCQAAZAkAAGUJAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAA2hwAANocAADyHAAA8hwAAAIYAAADGAAABRgAAAUYAABAqAAAd6gAAEAGAABABgAAgAsBAJELAQCZCwEAnAsBAKkLAQCvCwEAUQkAAFEJAADXHAAA1xwAANkcAADZHAAA3BwAAN0cAADgHAAA4BwAAIARAQDfEQEAZAkAAGUJAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPQNAADhEQEA9BEBAEAGAABABgAAMA8BAFkPAQBkCQAAZQkAAOYJAADvCQAAAKgAACyo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AADIHgAAyB4AAMoeAADKHgAAzB4AAMweAADOHgAAzh4AANAeAADQHgAA0h4AANIeAADUHgAA1B4AANYeAADWHgAA2B4AANgeAADaHgAA2h4AANweAADcHgAA3h4AAN4eAADgHgAA4B4AAOIeAADiHgAA5B4AAOQeAADmHgAA5h4AAOgeAADoHgAA6h4AAOoeAADsHgAA7B4AAO4eAADuHgAA8B4AAPAeAADyHgAA8h4AAPQeAAD0HgAA9h4AAPYeAAD4HgAA+B4AAPoeAAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAgB8AAK8fAACyHwAAtB8AALcfAAC8HwAAwh8AAMQfAADHHwAAzB8AANgfAADbHwAA6B8AAOwfAADyHwAA9B8AAPcfAAD8HwAAJiEAACYhAAAqIQAAKyEAADIhAAAyIQAAYCEAAG8hAACDIQAAgyEAALYkAADPJAAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqnAACcpwAAnKcAAJ6nAACepwAAoKcAAKCnAACipwAAoqcAAKSnAACkpwAApqcAAKanAACopwAAqKcAAKqnAACupwAAsKcAALSnAAC2pwAAtqcAALinAAC4pwAAuqcAALqnAAC8pwAAvKcAAL6nAAC+pwAAwKcAAMCnAADCpwAAwqcAAMSnAADHpwAAyacAAMmnAADQpwAA0KcAANanAADWpwAA2KcAANin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AAA2HgAANh4AADgeAAA4HgAAOh4AADoeAAA8HgAAPB4AAD4eAAA+HgAAQB4AAEAeAABCHgAAQh4AAEQeAABEHgAARh4AAEYeAABIHgAASB4AAEoeAABKHgAATB4AAEweAABOHgAATh4AAFAeAABQHgAAUh4AAFIeAABUHgAAVB4AAFYeAABWHgAAWB4AAFgeAABaHgAAWh4AAFweAABcHgAAXh4AAF4eAABgHgAAYB4AAGIeAABiHgAAZB4AAGQeAABmHgAAZh4AAGgeAABoHgAAah4AAGoeAABsHgAAbB4AAG4eAABuHgAAcB4AAHAeAAByHgAAch4AAHQeAAB0HgAAdh4AAHYeAAB4HgAAeB4AAHoeAAB6HgAAfB4AAHweAAB+HgAAfh4AAIAeAACAHgAAgh4AAIIeAACEHgAAhB4AAIYeAACGHgAAiB4AAIgeAACKHgAAih4AAIweAACMHgAAjh4AAI4eAACQHgAAkB4AAJIeAACSHgAAlB4AAJQeAACeHgAAnh4AAKAeAACgHgAAoh4AAKIeAACkHgAApB4AAKYeAACmHgAAqB4AAKgeAACqHgAAqh4AAKweAACsHgAArh4AAK4eAACwHgAAsB4AALIeAACyHgAAtB4AALQeAAC2HgAAth4AALgeAAC4HgAAuh4AALoeAAC8HgAAvB4AAL4eAAC+HgAAwB4AAMAeAADCHgAAwh4AAMQeAADEHgAAxh4AAMYeAADIHgAAyB4AAMoeAADKHgAAzB4AAMweAADOHgAAzh4AANAeAADQHgAA0h4AANIeAADUHgAA1B4AANYeAADWHgAA2B4AANgeAADaHgAA2h4AANweAADcHgAA3h4AAN4eAADgHgAA4B4AAOIeAADiHgAA5B4AAOQeAADmHgAA5h4AAOgeAADoHgAA6h4AAOoeAADsHgAA7B4AAO4eAADuHgAA8B4AAPAeAADyHgAA8h4AAPQeAAD0HgAA9h4AAPYeAAD4HgAA+B4AAPoeAAD6HgAA/B4AAPweAAD+HgAA/h4AAAgfAAAPHwAAGB8AAB0fAAAoHwAALx8AADgfAAA/HwAASB8AAE0fAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAXx8AAGgfAABvHwAAiB8AAI8fAACYHwAAnx8AAKgfAACvHwAAuB8AALwfAADIHwAAzB8AANgfAADbHwAA6B8AAOwfAAD4HwAA/B8AACYhAAAmIQAAKiEAACshAAAyIQAAMiEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADpAQAh6QEAYQAAAHoAAAC1AAAAtQAAAN8AAAD2AAAA+AAAAP8AAAABAQAAAQEAAAMBAAADAQAABQEAAAUBAAAHAQAABwEAAAkBAAAJAQAACwEAAAsBAAANAQAADQEAAA8BAAAPAQAAEQEAABEBAAATAQAAEwEAABUBAAAVAQAAFwEAABcBAAAZAQAAGQEAABsBAAAbAQAAHQEAAB0BAAAfAQAAHwEAACEBAAAhAQAAIwEAACMBAAAlAQAAJQEAACcBAAAnAQAAKQEAACkBAAArAQAAKwEAAC0BAAAtAQAALwEAAC8BAAAxAQAAMQEAADMBAAAzAQAANQEAADUBAAA3AQAANwEAADoB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AACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWn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AAAdHgAAHx4AAB8eAAAhHgAAIR4AACMeAAAjHgAAJR4AACUeAAAnHgAAJx4AACkeAAApHgAAKx4AACseAAAtHgAALR4AAC8eAAAvHgAAMR4AADEeAAAzHgAAMx4AADUeAAA1HgAANx4AADceAAA5HgAAOR4AADseAAA7HgAAPR4AAD0eAAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACbHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAtB8AALYfAAC3HwAAvB8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADMHwAAzB8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAAD8HwAA/B8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANenAADXpwAA2acAANmnAAD2pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAi6QEAQ+kBAC0AAAAtAAAAigUAAIoFAAC+BQAAvgUAAAAUAAAAFAAABhgAAAYYAAAQIAAAFSAAAFMgAABTIAAAeyAAAHsgAACLIAAAiyAAABIiAAASIgAAFy4AABcuAAAaLgAAGi4AADouAAA7LgAAQC4AAEAuAABdLgAAXS4AABwwAAAcMAAAMDAAADAw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AABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACdHgAAnx4AAJ8eAAChHgAAoR4AAKMeAACjHgAApR4AAKUeAACnHgAApx4AAKkeAACpHgAAqx4AAKseAACtHgAArR4AAK8eAACvHgAAsR4AALEeAACzHgAAsx4AALUeAAC1HgAAtx4AALceAAC5HgAAuR4AALseAAC7HgAAvR4AAL0eAAC/HgAAvx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB9LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACdpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAeKcAAHqnAAB6pwAAfKcAAHynAAB/pwAAf6cAAIGnAACBpwAAg6cAAIOnAACFpwAAhacAAIenAACHpwAAjKcAAIynAACOpwAAjqcAAJGnAACRpwAAk6cAAJWnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAAK+nAACvpwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANOnAADTpwAA1acAANWnAADXpwAA16cAANmnAADZpwAA8qcAAPSnAAD2pwAA9qcAAPinAAD6pwAAMKsAAFqrAABcqwAAaasAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAgAcBAIAHAQCDBwEAhQcBAIcHAQCwBwEAsgcBALoHAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQDP1AEA6tQBAAPVAQAe1QEAN9UBAFLVAQBr1QEAhtUBAJ/VAQC61QEA09UBAO7VAQAH1gEAItYBADvWAQBW1gEAb9YBAIrWAQCl1gEAwtYBANrWAQDc1gEA4dYBAPzWAQAU1wEAFtcBABvXAQA21wEATtcBAFDXAQBV1wEAcNcBAIjX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AABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJ4eAACeHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAAC4HwAAux8AAMgfAADLHwAA2B8AANsfAADoHwAA7B8AAPgfAAD7HwAAAiEAAAIhAAAHIQAAByEAAAshAAANIQAAECEAABIhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAwIQAAMyEAAD4hAAA/IQAARSEAAEUhAABgIQAAbyEAAIMhAACDIQAAtiQAAM8kAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqn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AACBBAAAigQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAADQBQAA6gUAAO8FAADyBQAAIAYAAEoGAABuBgAAbwYAAHEGAADTBgAA1QYAANUGAADlBgAA5gYAAO4GAADvBgAA+gYAAPwGAAD/BgAA/wYAABAHAAAQBwAAEgcAAC8HAABNBwAApQcAALEHAACxBwAAygcAAOoHAAD0BwAA9QcAAPoHAAD6BwAAAAgAABUIAAAaCAAAGggAACQIAAAkCAAAKAgAACgIAABACAAAWAgAAGAIAABqCAAAcAgAAIcIAACJCAAAjggAAKAIAADJCAAABAkAADkJAAA9CQAAPQkAAFAJAABQCQAAWAkAAGEJAABxCQAAgAkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAAL0JAAC9CQAAzgkAAM4JAADcCQAA3QkAAN8JAADhCQAA8AkAAPEJAAD8CQAA/AkAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAWQoAAFwKAABeCgAAXgoAAHIKAAB0CgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAL0KAADQCgAA0AoAAOAKAADhCgAA+QoAAPkKAAAFCwAADAsAAA8LAAAQCwAAEwsAACgLAAAqCwAAMAsAADILAAAzCwAANQsAADkLAAA9CwAAPQsAAFwLAABdCwAAXwsAAGELAABxCwAAcQsAAIMLAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAA0AsAANALAAAFDAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAAD0MAAA9DAAAWAwAAFoMAABdDAAAXQwAAGAMAABhDAAAgAwAAIAMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL0MAADdDAAA3gwAAOAMAADhDAAA8QwAAPIMAAAEDQAADA0AAA4NAAAQDQAAEg0AADoNAAA9DQAAPQ0AAE4NAABODQAAVA0AAFYN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AQCL0QEAqtEBAK3RAQBC0gEARNIBAADaAQA22gEAO9oBAGzaAQB12gEAddoBAITaAQCE2gEAm9oBAJ/aAQCh2gEAr9oBAADgAQAG4AEACOABABjgAQAb4AEAIeABACPgAQAk4AEAJuABACrgAQCP4AEAj+ABADDhAQA24QEAruIBAK7iAQDs4gEA7+IBAOzkAQDv5AEA0OgBANboAQBE6QEASukBAPvzAQD/8wEAIAAOAH8ADgAAAQ4A7wEOAAARAABfEQAAYKkAAHypAAAKAAAACgAAAACsAAAArAAAHKwAABysAAA4rAAAOKwAAFSsAABUrAAAcKwAAHCsAACMrAAAjKwAAKisAACorAAAxKwAAMSsAADgrAAA4KwAAPysAAD8rAAAGK0AABitAAA0rQAANK0AAFCtAABQrQAAbK0AAGytAACIrQAAiK0AAKStAACkrQAAwK0AAMCtAADcrQAA3K0AAPitAAD4rQAAFK4AABSuAAAwrgAAMK4AAEyuAABMrgAAaK4AAGiuAACErgAAhK4AAKCuAACgrgAAvK4AALyuAADYrgAA2K4AAPSuAAD0rgAAEK8AABCvAAAsrwAALK8AAEivAABIrwAAZK8AAGSvAACArwAAgK8AAJyvAACcrwAAuK8AALivAADUrwAA1K8AAPCvAADwrwAADLAAAAywAAAosAAAKLAAAESwAABEsAAAYLAAAGCwAAB8sAAAfLAAAJiwAACYsAAAtLAAALSwAADQsAAA0LAAAOywAADssAAACLEAAAixAAAksQAAJLEAAECxAABAsQAAXLEAAFyxAAB4sQAAeLEAAJSxAACUsQAAsLEAALCxAADMsQAAzLEAAOixAADosQAABLIAAASyAAAgsgAAILIAADyyAAA8sgAAWLIAAFiyAAB0sgAAdLIAAJCyAACQsgAArLIAAKyyAADIsgAAyLIAAOSyAADksgAAALMAAACzAAAcswAAHLMAADizAAA4swAAVLMAAFSzAABwswAAcLMAAIyzAACMswAAqLMAAKizAADEswAAxLMAAOCzAADgswAA/LMAAPyzAAAYtAAAGLQAADS0AAA0tAAAULQAAFC0AABstAAAbLQAAIi0AACItAAApLQAAKS0AADAtAAAwLQAANy0AADctAAA+LQAAPi0AAAUtQAAFLUAADC1AAAwtQAATLUAAEy1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AAAEzgAABM4AACDOAAAgzgAAPM4AADzOAABYzgAAWM4AAHTOAAB0zgAAkM4AAJDOAACszgAArM4AAMjOAADIzgAA5M4AAOTOAAAAzwAAAM8AABzPAAAczwAAOM8AADjPAABUzwAAVM8AAHDPAABwzwAAjM8AAIzPAACozwAAqM8AAMTPAADEzwAA4M8AAODPAAD8zwAA/M8AABjQAAAY0AAANNAAADTQAABQ0AAAUNAAAGzQAABs0AAAiNAAAIjQAACk0AAApNAAAMDQAADA0AAA3NAAANzQAAD40AAA+NAAABTRAAAU0QAAMNEAADDRAABM0QAATNEAAGjRAABo0QAAhNEAAITRAACg0QAAoNEAALzRAAC80QAA2NEAANjRAAD00QAA9NEAABDSAAAQ0gAALNIAACzSAABI0gAASNIAAGTSAABk0gAAgNIAAIDSAACc0gAAnNIAALjSAAC40gAA1NIAANTSAADw0gAA8NIAAAzTAAAM0wAAKNMAACjTAABE0wAARNMAAGDTAABg0wAAfNMAAHzTAACY0wAAmNMAALTTAAC00wAA0NMAANDTAADs0wAA7NMAAAjUAAAI1AAAJNQAACTUAABA1AAAQNQAAFzUAABc1AAAeNQAAHjUAACU1AAAlNQAALDUAACw1AAAzNQAAMzUAADo1AAA6NQAAATVAAAE1QAAINUAACDVAAA81QAAPNUAAFjVAABY1QAAdNUAAHTVAACQ1QAAkNUAAKzVAACs1QAAyNUAAMjVAADk1QAA5NUAAADWAAAA1gAAHNYAABzWAAA41gAAONYAAFTWAABU1gAAcNYAAHDWAACM1gAAjNYAAKjWAACo1gAAxNYAAMTWAADg1gAA4NYAAPzWAAD81gAAGNcAABjXAAA01wAANNcAAFDXAABQ1wAAbNcAAGzXAACI1wAAiNcAAAGsAAAbrAAAHawAADesAAA5rAAAU6wAAFWsAABvrAAAcawAAIusAACNrAAAp6wAAKmsAADDrAAAxawAAN+sAADhrAAA+6wAAP2sAAAXrQAAGa0AADOtAAA1rQAAT60AAFGtAABrrQAAba0AAIetAACJrQAAo60AAKWtAAC/rQAAwa0AANutAADdrQAA960AAPmtAAATrgAAFa4AAC+uAAAxrgAAS64AAE2uAABnrgAAaa4AAIOuAACFrgAAn64AAKGuAAC7rgAAva4AANeuAADZrgAA864AAPWuAAAPrwAAEa8AACuvAAAtrwAAR68AAEmvAABjrwAAZa8AAH+vAACBrwAAm68AAJ2vAAC3rwAAua8AANOvAADVrwAA768AAPGvAAALsAAADbAAACewAAApsAAAQ7AAAEWwAABfsAAAYbAAAHuwAAB9sAAAl7AAAJmwAACzsAAAtbAAAM+wAADRsAAA67AAAO2wAAAHsQAACbEAACOxAAAlsQAAP7EAAEGxAABbsQAAXbEAAHexAAB5sQAAk7EAAJWxAACvsQAAsbEAAMuxAADNsQAA57EAAOmxAAADsgAABbIAAB+yAAAhsgAAO7IAAD2yAABXsgAAWbIAAHOyAAB1sgAAj7IAAJGyAACrsgAArbIAAMeyAADJsgAA47IAAOWyAAD/sgAAAbMAABuzAAAdswAAN7MAADmzAABTswAAVbMAAG+zAABxswAAi7MAAI2zAACnswAAqbMAAMOzAADFswAA37MAAOGzAAD7swAA/bMAABe0AAAZtAAAM7QAADW0AABPtAAAUbQAAGu0AABttAAAh7QAAIm0AACjtAAApbQAAL+0AADBtAAA27QAAN20AAD3tAAA+bQAABO1AAAVtQAAL7UAADG1AABLtQAATbUAAGe1AABptQAAg7UAAIW1AACftQAAobUAALu1AAC9tQAA17UAANm1AADztQAA9bUAAA+2AAARtgAAK7YAAC22AABHtgAASbYAAGO2AABltgAAf7YAAIG2AACbtgAAnbYAALe2AAC5tgAA07YAANW2AADvtgAA8bYAAAu3AAANtwAAJ7cAACm3AABDtwAARbcAAF+3AABhtwAAe7cAAH23AACXtwAAmbcAALO3AAC1twAAz7cAANG3AADrtwAA7bcAAAe4AAAJuAAAI7gAACW4AAA/uAAAQbgAAFu4AABduAAAd7gAAHm4AACTuAAAlbgAAK+4AACxuAAAy7gAAM24AADnuAAA6bgAAAO5AAAFuQAAH7kAACG5AAA7uQAAPbkAAFe5AABZuQAAc7kAAHW5AACPuQAAkbkAAKu5AACtuQAAx7kAAMm5AADjuQAA5bkAAP+5AAABugAAG7oAAB26AAA3ugAAOboAAFO6AABVugAAb7oAAHG6AACLugAAjboAAKe6AACpugAAw7oAAMW6AADfugAA4boAAPu6AAD9ugAAF7sAABm7AAAzuwAANbsAAE+7AABRuwAAa7sAAG27AACHuwAAibsAAKO7AACluwAAv7sAAMG7AADbuwAA3bsAAPe7AAD5uwAAE7wAABW8AAAvvAAAMbwAAEu8AABNvAAAZ7wAAGm8AACDvAAAhbwAAJ+8AAChvAAAu7wAAL28AADXvAAA2bwAAPO8AAD1vAAAD70AABG9AAArvQAALb0AAEe9AABJvQAAY70AAGW9AAB/vQAAgb0AAJu9AACdvQAAt70AALm9AADTvQAA1b0AAO+9AADxvQAAC74AAA2+AAAnvgAAKb4AAEO+AABFvgAAX74AAGG+AAB7vgAAfb4AAJe+AACZvgAAs74AALW+AADPvgAA0b4AAOu+AADtvgAAB78AAAm/AAAjvwAAJb8AAD+/AABBvwAAW78AAF2/AAB3vwAAeb8AAJO/AACVvwAAr78AALG/AADLvwAAzb8AAOe/AADpvwAAA8AAAAXAAAAfwAAAIcAAADvAAAA9wAAAV8AAAFnAAABzwAAAdcAAAI/AAACRwAAAq8AAAK3AAADHwAAAycAAAOPAAADlwAAA/8AAAAHBAAAbwQAAHcEAADfBAAA5wQAAU8EAAFXBAABvwQAAccEAAIvBAACNwQAAp8EAAKnBAADDwQAAxcEAAN/BAADhwQAA+8EAAP3BAAAXwgAAGcIAADPCAAA1wgAAT8IAAFHCAABrwgAAbcIAAIfCAACJwgAAo8IAAKXCAAC/wgAAwcIAANvCAADdwgAA98IAAPnCAAATwwAAFcMAAC/DAAAxwwAAS8MAAE3DAABnwwAAacMAAIPDAACFwwAAn8MAAKHDAAC7wwAAvcMAANfDAADZwwAA88MAAPXDAAAPxAAAEcQAACvEAAAtxAAAR8QAAEnEAABjxAAAZcQAAH/EAACBxAAAm8QAAJ3EAAC3xAAAucQAANPEAADVxAAA78QAAPHEAAALxQAADcUAACfFAAApxQAAQ8UAAEXFAABfxQAAYcUAAHvFAAB9xQAAl8UAAJnFAACzxQAAtcUAAM/FAADRxQAA68UAAO3FAAAHxgAACcYAACPGAAAlxgAAP8YAAEHGAABbxgAAXcYAAHfGAAB5xgAAk8YAAJXGAACvxgAAscYAAMvGAADNxgAA58YAAOnGAAADxwAABccAAB/HAAAhxwAAO8cAAD3HAABXxwAAWccAAHPHAAB1xwAAj8cAAJHHAACrxwAArccAAMfHAADJxwAA48cAAOXHAAD/xwAAAcgAABvIAAAdyAAAN8gAADnIAABTyAAAVcgAAG/IAABxyAAAi8gAAI3IAACnyAAAqcgAAMPIAADFyAAA38gAAOHIAAD7yAAA/cgAABfJAAAZyQAAM8kAADXJAABPyQAAUckAAGvJAABtyQAAh8kAAInJAACjyQAApckAAL/JAADByQAA28kAAN3JAAD3yQAA+ckAABPKAAAVygAAL8oAADHKAABLygAATcoAAGfKAABpygAAg8oAAIXKAACfygAAocoAALvKAAC9ygAA18oAANnKAADzygAA9coAAA/LAAARywAAK8sAAC3LAABHywAAScsAAGPLAABlywAAf8sAAIHLAACbywAAncsAALfLAAC5ywAA08sAANXLAADvywAA8csAAAvMAAANzAAAJ8wAACnMAABDzAAARcwAAF/MAABhzAAAe8wAAH3MAACXzAAAmcwAALPMAAC1zAAAz8wAANHMAADrzAAA7cwAAAfNAAAJzQAAI80AACXNAAA/zQAAQc0AAFvNAABdzQAAd80AAHnNAACTzQAAlc0AAK/NAACxzQAAy80AAM3NAADnzQAA6c0AAAPOAAAFzgAAH84AACHOAAA7zgAAPc4AAFfOAABZzgAAc84AAHXOAACPzgAAkc4AAKvOAACtzgAAx84AAMnOAADjzgAA5c4AAP/OAAABzwAAG88AAB3PAAA3zwAAOc8AAFPPAABVzwAAb88AAHHPAACLzwAAjc8AAKfPAACpzwAAw88AAMXPAADfzwAA4c8AAPvPAAD9zwAAF9AAABnQAAAz0AAANdAAAE/QAABR0AAAa9AAAG3QAACH0AAAidAAAKPQAACl0AAAv9AAAMHQAADb0AAA3dAAAPfQAAD50AAAE9EAABXRAAAv0QAAMdEAAEvRAABN0QAAZ9EAAGnRAACD0QAAhdEAAJ/RAACh0QAAu9EAAL3RAADX0QAA2dEAAPPRAAD10QAAD9IAABHSAAAr0gAALdIAAEfSAABJ0gAAY9IAAGXSAAB/0gAAgdIAAJvSAACd0gAAt9IAALnSAADT0gAA1dIAAO/SAADx0gAAC9MAAA3TAAAn0wAAKdMAAEPTAABF0wAAX9MAAGHTAAB70wAAfdMAAJfT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AAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPQsAAD0LAABcCwAAXQsAAF8LAABhCwAAcQsAAHELAACDCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAANALAADQCwAABQwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA9DAAAPQwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAIAMAACADAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAAL0MAAC9DAAA3QwAAN4MAADgDAAA4QwAAPEMAADyDAAABA0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAABODQAATg0AAFQNAABWDQAAXw0AAGENAAB6DQAAfw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAAAADwAAAA8AAEAPAABHDwAASQ8AAGwPAACIDwAAjA8AAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAANAQAAD6EAAA/BAAAEgSAABKEgAATRIAAFASAABWEgAAWBIAAFgSAABaEgAAXRIAAGASAACIEgAAihIAAI0SAACQEgAAsBIAALISAAC1EgAAuBIAAL4SAADAEgAAwBIAAMISAADFEgAAyBIAANYSAADYEgAAEBMAABITAAAVEwAAGBMAAFoTAACAEwAAjxMAAKATAAD1EwAA+BMAAP0TAAABFAAAbBYAAG8WAAB/FgAAgRYAAJoWAACgFgAA6hYAAO4WAAD4FgAAABcAABEXAAAfFwAAMRcAAEAXAABRFwAAYBcAAGwXAABuFwAAcBcAACAYAAB4GAAAgBgAAIQYAACHGAAAqBgAAKoYAACqGAAAsBgAAPUYAAAAGQAAHhkAAAAaAAAWGgAABRsAADMbAABFGwAATBsAAIMbAACgGwAArhsAAK8bAAC6GwAA5RsAAAAcAAAjHAAATRwAAE8cAABaHAAAfRwAAIAcAACIHAAAkBwAALocAAC9HAAAvxwAAOkcAADsHAAA7hwAAPMcAAD1HAAA9hwAAPocAAD6HAAAAB0AAL8dAAAAHgAAFR8AABgfAAAdHwAAIB8AAEUf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AAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACdHgAAnx4AAJ8eAAChHgAAoR4AAKMeAACjHgAApR4AAKUeAACnHgAApx4AAKkeAACpHgAAqx4AAKseAACtHgAArR4AAK8eAACvHgAAsR4AALEeAACzHgAAsx4AALUeAAC1HgAAtx4AALceAAC5HgAAuR4AALseAAC7HgAAvR4AAL0eAAC/HgAAvx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAAcSAAAHEgAAB/IAAAfyAAAJAgAACcIAAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcSwAAHEsAABzLAAAdCwAAHYsAAB9LAAAgSwAAIEsAACDLAAAgywAAIUsAACFLAAAhywAAIcsAACJLAAAiSwAAIssAACLLAAAjSwAAI0sAACPLAAAjywAAJEsAACRLAAAkywAAJMsAACVLAAAlSwAAJcsAACXLAAAmSwAAJksAACbLAAAmywAAJ0sAACdLAAAnywAAJ8sAAChLAAAoSwAAKMsAACjLAAApSwAAKUsAACnLAAApywAAKksAACpLAAAqywAAKssAACtLAAArSwAAK8sAACvLAAAsSwAALEsAACzLAAAsywAALUsAAC1LAAAtywAALcsAAC5LAAAuSwAALssAAC7LAAAvSwAAL0sAAC/LAAAvywAAMEsAADBLAAAwywAAMMsAADFLAAAxSwAAMcsAADHLAAAySwAAMksAADLLAAAyywAAM0sAADNLAAAzywAAM8sAADRLAAA0SwAANMsAADTLAAA1SwAANUsAADXLAAA1ywAANksAADZLAAA2ywAANssAADdLAAA3SwAAN8sAADfLAAA4SwAAOEsAADjLAAA5CwAAOwsAADsLAAA7iwAAO4sAADzLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAEGmAABBpgAAQ6YAAEOmAABFpgAARaYAAEemAABHpgAASaYAAEmmAABLpgAAS6YAAE2mAABNpgAAT6YAAE+mAABRpgAAUaYAAFOmAABTpgAAVaYAAFWmAABXpgAAV6YAAFmmAABZpgAAW6YAAFumAABdpgAAXaYAAF+mAABfpgAAYaYAAGGmAABjpgAAY6YAAGWmAABlpgAAZ6YAAGemAABppgAAaaYAAGumAABrpgAAbaYAAG2mAACBpgAAgaYAAIOmAACDpgAAhaYAAIWmAACHpgAAh6YAAImmAACJpgAAi6YAAIumAACNpgAAjaYAAI+mAACPpgAAkaYAAJGmAACTpgAAk6YAAJWmAACVpgAAl6YAAJemAACZpgAAmaYAAJumAACdpgAAI6cAACOnAAAlpwAAJacAACenAAAnpwAAKacAACmnAAArpwAAK6cAAC2nAAAtpwAAL6cAADGnAAAzpwAAM6cAADWnAAA1pwAAN6cAADenAAA5pwAAOacAADunAAA7pwAAPacAAD2nAAA/pwAAP6cAAEGnAABBpwAAQ6cAAEOnAABFpwAARacAAEenAABHpwAASacAAEmnAABLpwAAS6cAAE2nAABNpwAAT6cAAE+nAABRpwAAUacAAFOnAABTpwAAVacAAFWnAABXpwAAV6cAAFmnAABZpwAAW6cAAFunAABdpwAAXacAAF+nAABfpwAAYacAAGGnAABjpwAAY6cAAGWnAABlpwAAZ6cAAGenAABppwAAaacAAGunAABrpwAAbacAAG2nAABvpwAAeKcAAHqnAAB6pwAAfKcAAHynAAB/pwAAf6cAAIGnAACBpwAAg6cAAIOnAACFpwAAhacAAIenAACHpwAAjKcAAIynAACOpwAAjqcAAJGnAACRpwAAk6cAAJWnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAAK+nAACvpwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANOnAADTpwAA1acAANWnAADXpwAA16cAANmnAADZpwAA8qcAAPSnAAD2pwAA9qcAAPinAAD6pwAAMKsAAFqrAABcqwAAaasAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAgAcBAIAHAQCDBwEAhQcBAIcHAQCwBwEAsgcBALoHAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAa1AEAM9QBAE7UAQBU1AEAVtQBAGfUAQCC1AEAm9QBALbUAQC51AEAu9QBALvUAQC91AEAw9QBAMXUAQDP1AEA6tQBAAPVAQAe1QEAN9UBAFLV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AADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC4HwAAvB8AAMgfAADMHwAA2B8AANsfAADoHwAA7B8AAPgfAAD8HwAAAiEAAAIhAAAHIQAAByEAAAshAAANIQAAECEAABIhAAAVIQAAFSEAABkhAAAdIQAAJCEAACQhAAAmIQAAJiEAACghAAAoIQAAKiEAAC0hAAAwIQAAMyEAAD4hAAA/IQAARSEAAEUhAABgIQAAbyEAAIMhAACDIQAAtiQAAM8kAAAALAAALywAAGAsAABgLAAAYiwAAGQsAABnLAAAZywAAGksAABpLAAAaywAAGssAABtLAAAcCwAAHIsAAByLAAAdSwAAHUsAAB+LAAAgCwAAIIsAACCLAAAhCwAAIQsAACGLAAAhiwAAIgsAACILAAAiiwAAIosAACMLAAAjCwAAI4sAACOLAAAkCwAAJAsAACSLAAAkiwAAJQsAACULAAAliwAAJYsAACYLAAAmCwAAJosAACaLAAAnCwAAJwsAACeLAAAniwAAKAsAACgLAAAoiwAAKIsAACkLAAApCwAAKYsAACmLAAAqCwAAKgsAACqLAAAqiwAAKwsAACsLAAAriwAAK4sAACwLAAAsCwAALIsAACyLAAAtCwAALQsAAC2LAAAtiwAALgsAAC4LAAAuiwAALosAAC8LAAAvCwAAL4sAAC+LAAAwCwAAMAsAADCLAAAwiwAAMQsAADELAAAxiwAAMYsAADILAAAyCwAAMosAADKLAAAzCwAAMwsAADOLAAAziwAANAsAADQLAAA0iwAANIsAADULAAA1CwAANYsAADWLAAA2CwAANgsAADaLAAA2iwAANwsAADcLAAA3iwAAN4sAADgLAAA4CwAAOIsAADiLAAA6ywAAOssAADtLAAA7SwAAPIsAADyLAAAQKYAAECmAABCpgAAQqYAAESmAABEpgAARqYAAEamAABIpgAASKYAAEqmAABKpgAATKYAAEymAABOpgAATqYAAFCmAABQpgAAUqYAAFKmAABUpgAAVKYAAFamAABWpgAAWKYAAFimAABapgAAWqYAAFymAABcpgAAXqYAAF6mAABgpgAAYKYAAGKmAABipgAAZKYAAGSmAABmpgAAZqYAAGimAABopgAAaqYAAGqmAABspgAAbKYAAICmAACApgAAgqYAAIKmAACEpgAAhKYAAIamAACGpgAAiKYAAIimAACKpgAAiqYAAIymAACMpgAAjqYAAI6mAACQpgAAkKYAAJKmAACSpgAAlKYAAJSmAACWpgAAlqYAAJimAACYpgAAmqYAAJqmAAAipwAAIqcAACSnAAAkpwAAJqcAACanAAAopwAAKKcAACqnAAAqpwAALKcAACynAAAupwAALqcAADKnAAAypwAANKcAADSnAAA2pwAANqcAADinAAA4pwAAOqcAADqnAAA8pwAAPKcAAD6nAAA+pwAAQKcAAECnAABCpwAAQqcAAESnAABEpwAARqcAAEanAABIpwAASKcAAEqnAABKpwAATKcAAEynAABOpwAATqcAAFCnAABQpwAAUqcAAFKnAABUpwAAVKcAAFanAABWpwAAWKcAAFinAABapwAAWqcAAFynAABcpwAAXqcAAF6nAABgpwAAYKcAAGKnAABipwAAZKcAAGSnAABmpwAAZqcAAGinAABopwAAaqcAAGqnAABspwAAbKcAAG6nAABupwAAeacAAHmnAAB7pwAAe6cAAH2nAAB+pwAAgKcAAICnAACCpwAAgqcAAISnAACEpwAAhqcAAIanAACLpwAAi6cAAI2nAACNpwAAkKcAAJCnAACSpwAAkqcAAJanAACWpwAAmKcAAJinAACapwAAmqcAAJynAACcpwAAnqcAAJ6nAACgpwAAoKcAAKKnAACipwAApKcAAKSnAACmpwAApqcAAKinAACopwAAqqcAAK6nAACwpwAAtKcAALanAAC2pwAAuKcAALinAAC6pwAAuqcAALynAAC8pwAAvqcAAL6nAADApwAAwKcAAMKnAADCpwAAxKcAAMenAADJpwAAyacAANCnAADQpwAA1qcAANanAADYpwAA2KcAAPWnAAD1pwAAIf8AADr/AAAABAEAJwQBALAEAQDTBAEAcAUBAHoFAQB8BQEAigUBAIwFAQCSBQEAlAUBAJUFAQCADAEAsgwBAKAYAQC/GAEAQG4BAF9uAQAA1AEAGdQBADTUAQBN1AEAaNQBAIHUAQCc1AEAnNQBAJ7UAQCf1AEAotQBAKLUAQCl1AEAptQBAKnUAQCs1AEArtQBALXUAQDQ1AEA6dQBAATVAQAF1QEAB9UBAArVAQAN1QEAFNUBABbVAQAc1QEAONUBADnVAQA71QEAPtUBAEDVAQBE1QEARtUBAEbVAQBK1QEAUNUBAGzVAQCF1QEAoNUBALnVAQDU1QEA7dUBAAjWAQAh1gEAPNYBAFXWAQBw1gEAidYBAKjWAQDA1gEA4tYBAPrWAQAc1wEANNcBAFbXAQBu1wEAkNcBAKjXAQDK1wEAytcBAADpAQAh6QEAMPEBAEnxAQBQ8QEAafEBAHDxAQCJ8QEACk8SAAUAAADcTRUABAAAADIrEgACAAAAVAAVAAEAAAAWTxIABQAAAPxNFQAtAAAAaCsSAAYAAABkTxUAOQEAAJAiEgAGAAAALFkVABUAAACUKxIAAgAAAGQMFQABAAAAKU8SAAUAAADUWRUAnQIAAC5PEgAHAAAAvG4VAEEAAAAiTxIABwAAAMRwFQAfAgAAQ08SAAkAAAC8gRUAEwAAAGNPEgAFAAAAVIIVAE0AAABXTxIAAwAAALyEFQACAAAAX08SAAIAAADMhBUACQAAAGpPEgAFAAAAFIUVAIwCAACM4REAZgAAAHcDAAAcAAAAjOERAGYAAACoAwAALQAAAIzhEQBmAAAAqgMAAAkAAACM4REAZgAAAKsDAAAJAAAAjOERAGYAAACuAwAADwAAAIzhEQBmAAAAoAMAAA0AAACM4REAZgAAAJ0DAAANAAAAKgMAAAwAAAAEAAAATgMAABsEAABkAwAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy91dGY4LnJzaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogaW52YWxpZCBlbmNvZGVkIGxlbmd0aDogAAAAP5sVAEIAAADcmhUAYwAAAIMAAAASAAAA3JoVAGMAAAC0AQAALQAAANyaFQBjAAAAtQEAACsAAADcmhUAYwAAALgBAAAJAEHUt9YAC84QAQAAABwEAABUcnlGcm9tQ2hhckVycm9yZXhjZWVkZWQgdGhlIG1heGltdW0gbnVtYmVyIG9mIGNhcHR1cmluZyBncm91cHMgKAAAAOybFQAxAAAA4NAYAAEAAABpbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZSBmb3VuZCBpbiBjaGFyYWN0ZXIgY2xhc3MwnBUAMAAAAGludmFsaWQgY2hhcmFjdGVyIGNsYXNzIHJhbmdlLCB0aGUgc3RhcnQgbXVzdCBiZSA8PSB0aGUgZW5kAGicFQA7AAAAaW52YWxpZCByYW5nZSBib3VuZGFyeSwgbXVzdCBiZSBhIGxpdGVyYWwAAACsnBUAKQAAAHVuY2xvc2VkIGNoYXJhY3RlciBjbGFzc+CcFQAYAAAAZGVjaW1hbCBsaXRlcmFsIGVtcHR5AAAAAJ0VABUAAABkZWNpbWFsIGxpdGVyYWwgaW52YWxpZAAgnRUAFwAAAGhleGFkZWNpbWFsIGxpdGVyYWwgZW1wdHkAAABAnRUAGQAAAGhleGFkZWNpbWFsIGxpdGVyYWwgaXMgbm90IGEgVW5pY29kZSBzY2FsYXIgdmFsdWUAAABknRUAMQAAAGludmFsaWQgaGV4YWRlY2ltYWwgZGlnaXQAAACgnRUAGQAAAGluY29tcGxldGUgZXNjYXBlIHNlcXVlbmNlLCByZWFjaGVkIGVuZCBvZiBwYXR0ZXJuIHByZW1hdHVyZWx5AADEnRUAPgAAAHVucmVjb2duaXplZCBlc2NhcGUgc2VxdWVuY2UMnhUAHAAAAGRhbmdsaW5nIGZsYWcgbmVnYXRpb24gb3BlcmF0b3IAMJ4VAB8AAABkdXBsaWNhdGUgZmxhZwAAWJ4VAA4AAABmbGFnIG5lZ2F0aW9uIG9wZXJhdG9yIHJlcGVhdGVkAHCeFQAfAAAAZXhwZWN0ZWQgZmxhZyBidXQgZ290IGVuZCBvZiByZWdleAAAmJ4VACIAAAB1bnJlY29nbml6ZWQgZmxhZwAAAMSeFQARAAAAZHVwbGljYXRlIGNhcHR1cmUgZ3JvdXAgbmFtZeCeFQAcAAAAZW1wdHkgY2FwdHVyZSBncm91cCBuYW1lBJ8VABgAAABpbnZhbGlkIGNhcHR1cmUgZ3JvdXAgY2hhcmFjdGVyACSfFQAfAAAAdW5jbG9zZWQgY2FwdHVyZSBncm91cCBuYW1lAEyfFQAbAAAAdW5jbG9zZWQgZ3JvdXAAAHCfFQAOAAAAdW5vcGVuZWQgZ3JvdXAAAIifFQAOAAAAZXhjZWVkIHRoZSBtYXhpbXVtIG51bWJlciBvZiBuZXN0ZWQgcGFyZW50aGVzZXMvYnJhY2tldHMgKAAAoJ8VADoAAADg0BgAAQAAAGludmFsaWQgcmVwZXRpdGlvbiBjb3VudCByYW5nZSwgdGhlIHN0YXJ0IG11c3QgYmUgPD0gdGhlIGVuZOyfFQA8AAAAcmVwZXRpdGlvbiBxdWFudGlmaWVyIGV4cGVjdHMgYSB2YWxpZCBkZWNpbWFsAAAAMKAVAC0AAAB1bmNsb3NlZCBjb3VudGVkIHJlcGV0aXRpb24AaKAVABsAAAByZXBldGl0aW9uIG9wZXJhdG9yIG1pc3NpbmcgZXhwcmVzc2lvbgAAjKAVACYAAABzcGVjaWFsIHdvcmQgYm91bmRhcnkgYXNzZXJ0aW9uIGlzIGVpdGhlciB1bmNsb3NlZCBvciBjb250YWlucyBhbiBpbnZhbGlkIGNoYXJhY3RlcgC8oBUAUwAAAHVucmVjb2duaXplZCBzcGVjaWFsIHdvcmQgYm91bmRhcnkgYXNzZXJ0aW9uLCB2YWxpZCBjaG9pY2VzIGFyZTogc3RhcnQsIGVuZCwgc3RhcnQtaGFsZiBvciBlbmQtaGFsZgAYoRUAYwAAAGZvdW5kIGVpdGhlciB0aGUgYmVnaW5uaW5nIG9mIGEgc3BlY2lhbCB3b3JkIGJvdW5kYXJ5IG9yIGEgYm91bmRlZCByZXBldGl0aW9uIG9uIGEgXGIgd2l0aCBhbiBvcGVuaW5nIGJyYWNlLCBidXQgbm8gY2xvc2luZyBicmFjZQAAAIShFQCBAAAAaW52YWxpZCBVbmljb2RlIGNoYXJhY3RlciBjbGFzcwAQohUAHwAAAGJhY2tyZWZlcmVuY2VzIGFyZSBub3Qgc3VwcG9ydGVkOKIVACAAAABsb29rLWFyb3VuZCwgaW5jbHVkaW5nIGxvb2stYWhlYWQgYW5kIGxvb2stYmVoaW5kLCBpcyBub3Qgc3VwcG9ydGVkAGCiFQBDAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy9hc3QvbW9kLnJzAACsohUAZgAAAH8CAAAiAAAArKIVAGYAAACYAgAAIgAAAGFsbnVtYXNjaWlibGFua2NudHJsZGlnaXRncmFwaGxvd2VycHJpbnRwdW5jdHNwYWNldXBwZXJ4ZGlnaXQAAACsohUAZgAAAPMEAAAjAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy9oaXIvbW9kLnJzAACEoxUAZgAAAL8EAAAuAAAAhKMVAGYAAADABAAAKgAAACoDAAAMAAAABAAAAE4DAAAdBAAAZAMAQazI1gAL9QYBAAAALgMAAHJlZ2V4IHBhcnNlIGVycm9yOgoANKQVABMAAABlcnJvcjogAFCkFQAHAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtc3ludGF4LTAuOC40L3NyYy9lcnJvci5yc29uIGxpbmUgIChjb2x1bW4gKSB0aHJvdWdoIGxpbmUgxKQVAAgAAADMpBUACQAAANWkFQAPAAAAzKQVAAkAAADg0BgAAQAAAGCkFQBkAAAAuwAAABkAAABgpBUAZAAAALwAAAAZAAAAYKQVAGQAAADdAAAAIgAAAGCkFQBkAAAA+AAAAD8AAAAwOhgATQAAABUKAAAiAAAAAAAAAAgAAAAEAAAA6wIAAAAAAAAEAAAABAAAAHACAAAAAAAABAAAAAQAAAC3AAAAAAAAAAQAAAAEAAAAJgAAAAAAAAAEAAAABAAAAJIAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1zeW50YXgtMC44LjQvc3JjL2FzdC92aXNpdG9yLnJzAACspRUAagAAABcBAAAeAAAArKUVAGoAAAAYAQAAHgAAAKylFQBqAAAAEwEAADMAAACs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dHlwZSB2YXJpYW50dHVwbGUgdmFyaWFudHN0cnVjdCB2YXJpYW50ZXhwbGljaXQgcGFuaWO0GhgAAQAAALQaGAABAAAAYCBvciBgAAC0GhgAAQAAALgCFgAGAAAAtBoYAAEAAABvbmUgb2YgLjAAAAB8BhYAXwAAAFgCAAAwAAAAKgMAAAwAAAAEAAAATgMAAGMDAAAnBABBlIbYAAu5CAEAAAAuAwAARU9GIHdoaWxlIHBhcnNpbmcgYSBsaXN0RU9GIHdoaWxlIHBhcnNpbmcgYW4gb2JqZWN0RU9GIHdoaWxlIHBhcnNpbmcgYSBzdHJpbmdFT0Ygd2hpbGUgcGFyc2luZyBhIHZhbHVlZXhwZWN0ZWQgYDpgZXhwZWN0ZWQgYCxgIG9yIGBdYGV4cGVjdGVkIGAsYCBvciBgfWBleHBlY3RlZCBpZGVudGV4cGVjdGVkIHZhbHVlZXhwZWN0ZWQgYCJgaW52YWxpZCBlc2NhcGVpbnZhbGlkIG51bWJlcm51bWJlciBvdXQgb2YgcmFuZ2VpbnZhbGlkIHVuaWNvZGUgY29kZSBwb2ludGNvbnRyb2wgY2hhcmFjdGVyIChcdTAwMDAtXHUwMDFGKSBmb3VuZCB3aGlsZSBwYXJzaW5nIGEgc3RyaW5na2V5IG11c3QgYmUgYSBzdHJpbmdpbnZhbGlkIHZhbHVlOiBleHBlY3RlZCBrZXkgdG8gYmUgYSBudW1iZXIgaW4gcXVvdGVzZmxvYXQga2V5IG11c3QgYmUgZmluaXRlIChnb3QgTmFOIG9yICsvLWluZilsb25lIGxlYWRpbmcgc3Vycm9nYXRlIGluIGhleCBlc2NhcGV0cmFpbGluZyBjb21tYXRyYWlsaW5nIGNoYXJhY3RlcnN1bmV4cGVjdGVkIGVuZCBvZiBoZXggZXNjYXBlcmVjdXJzaW9uIGxpbWl0IGV4Y2VlZGVkIGF0IGxpbmUgIGNvbHVtbiAAAAABAAAAAAAAAFAFFgAJAAAAWQUWAAgAAABFcnJvcigsIGxpbmU6ICwgY29sdW1uOiB8BRYABgAAAIIFFgAIAAAAigUWAAoAAADg0BgAAQAAADAwMDEwMjAzMDQwNTA2MDcwODA5MTAxMTEyMTMxNDE1MTYxNzE4MTkyMDIxMjIyMzI0MjUyNjI3MjgyOTMwMzEzMjMzMzQzNTM2MzczODM5NDA0MTQyNDM0NDQ1NDY0NzQ4NDk1MDUxNTI1MzU0NTU1NjU3NTg1OTYwNjE2MjYzNjQ2NTY2Njc2ODY5NzA3MTcyNzM3NDc1NzY3Nzc4Nzk4MDgxODI4Mzg0ODU4Njg3ODg4OTkwOTE5MjkzOTQ5NTk2OTc5ODk5L3J1c3RjLzkwYjM1YTYyMzljM2Q4YmRhYmM1MzBhNmEwODE2ZjdmZjg5YTBhYWYvbGlicmFyeS9hbGxvYy9zcmMvY29sbGVjdGlvbnMvYnRyZWUvbmF2aWdhdGUucnMAfAYWAF8AAADGAAAAJwAAAHwGFgBfAAAAFgIAAC8AAAB8BhYAXwAAAKEAAAAkAAAAKgMAAAwAAAAEAAAATgMAABgEAAAnBAAAaW52YWxpZCB0eXBlOiAsIGV4cGVjdGVkIAAAACQHFgAOAAAAMgcWAAsAQdiO2AALjwEBAAAAKAQAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NlcmRlLXdhc20tYmluZGdlbi0wLjYuNS9zcmMvbGliLnJzYAcWAGgAAAA1AAAADgAAAExheW91dHNpemVhbGlnbgBB8I/YAAvSAwEAAAD4AwAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc21hcnRzdHJpbmctMS4wLjEvc3JjL2lubGluZS5yc/gHFgBkAAAAKwAAACsAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zbWFydHN0cmluZy0xLjAuMS9zcmMvYm94ZWQucnMAbAgWAGMAAABBAAAADgAAAGwIFgBjAAAAdgAAACQAAABodHRwOmh0dHBzOgABAAAAAAAAAFgYGAABAAAAYXR0ZW1wdCB0byBqb2luIGludG8gY29sbGVjdGlvbiB3aXRoIGxlbiA+IHVzaXplOjpNQVgvcnVzdGMvOTBiMzVhNjIzOWMzZDhiZGFiYzUzMGE2YTA4MTZmN2ZmODlhMGFhZi9saWJyYXJ5L2FsbG9jL3NyYy9zdHIucnMAAABBCRYASAAAAJoAAAAKAAAAQQkWAEgAAACxAAAAFgAAACoDAAAMAAAABAAAAE4DAAApBAAAJwQAQcyT2AALvwEBAAAALgMAACTtFwBgAAAAFAAAAA8AAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zZXJkZV9qc29uLTEuMC4xMzMvc3JjL3Nlci5ycwAA5AkWAGIAAAANBgAAEgAAAOQJFgBiAAAAMAgAADMAAAB1dXV1dXV1dWJ0bnVmcnV1dXV1dXV1dXV1dXV1dXV1dQAAIgBBxJXYAAsBXABB6JbYAAuiB+QJFgBiAAAAIwgAAEAAAABcdGxpbmVjb2x1bW5vZmZzZXRtYXBuYW1lc21hcHBpbmdzdmVyc2lvbmZpbGVzb3VyY2Vzc291cmNlUm9vdHNvdXJjZXNDb250ZW50c2VjdGlvbnNyYW5nZU1hcHBpbmdzeF9mYWNlYm9va19vZmZzZXRzeF9tZXRyb19tb2R1bGVfcGF0aHN4X2ZhY2Vib29rX3NvdXJjZXNkZWJ1Z19pZGJhZCBqc29uOiAAGQwWAAoAAABsZWZ0b3ZlciBjdXIvc2hpZnQgaW4gdmxxIGRlY29kZSwMFgAgAAAAdmxxIGRlY29kZSBkaWQgbm90IHByb2R1Y2UgYW55IHZhbHVlcwAAAFQMFgAlAAAAdmxxIGRlY29kZSBjYXVzZWQgYW4gb3ZlcmZsb3cAAACEDBYAHQAAAGdvdCAgc2VnbWVudHMsIGV4cGVjdGVkIDQgb3IgNQAArAwWAAQAAACwDBYAGgAAAGJhZCByZWZlcmVuY2UgdG8gc291cmNlICMAAADcDBYAGQAAAGJhZCByZWZlcmVuY2UgdG8gbmFtZSAjAAANFgAXAAAAZW5jb3VudGVyZWQgaW5jb21wYXRpYmxlIHNvdXJjZW1hcCBmb3JtYXQAAAAgDRYAKQAAAHRoZSBwcm92aWRlZCBkYXRhIFVSTCBpcyBpbnZhbGlkVA0WACAAAABjYW5ub3QgZmxhdHRlbiB0aGUgaW5kZXhlZCBzb3VyY2VtYXA6IAAAfA0WACYAAABpbnZhbGlkIG1hZ2ljIG51bWJlciBmb3IgcmFtIGJ1bmRsZQCsDRYAIwAAAGludmFsaWQgbW9kdWxlIGluZGV4IGluIHJhbSBidW5kbGUAANgNFgAiAAAAaW52YWxpZCByYW0gYnVuZGxlIG1vZHVsZSBlbnRyeQAEDhYAHwAAAG5vdCBhIHJhbSBidW5kbGUsDhYAEAAAAGludmFsaWQgcmFuZ2UgbWFwcGluZyBpbmRleDogAAAARA4WAB0AAABpbnZhbGlkIGJhc2U2NCBjaGFyYWN0ZXI6IAAAbA4WABoAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi93eXotMC41LjEvc3JjL2NvbXUucnMAAJAOFgBaAAAAJwEAAAIAAABOdWxsUHRyRXJyb3J1OABBlJ7YAAvSIQEAAAD4AwAAuDsYAEkAAADbBwAAKQAAAExheW91dEVycm9yTWlzYWxpZ25FcnJvcgEAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zb3VyY2VtYXAtOS4wLjAvc3JjL2J1aWxkZXIucnNDYW5ub3Qgc2V0IHNvdXJjZXMgZm9yIHRvbWJzdG9uZSBzb3VyY2UgaWQAAABIDxYAYwAAAHkAAAAJAAAASA8WAGMAAAB9AAAAHQAAAGNhbm5vdCAgYml0cyBmcm9tIGEgLWJpdCByZWdpb24A+A8WAAcAAAD6FxgAAQAAAP8PFgANAAAADBAWAAsAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9iaXR2ZWMtMS4wLjEvc3JjL2ZpZWxkLnJzAAA4EBYAXgAAAA4CAAACAAAAcmFuZ2UgIG91dCBvZiBib3VuZHM6IAAAqBAWAAYAAACuEBYAEAAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2JpdHZlYy0xLjAuMS9zcmMvc2xpY2UvYXBpLnJzAADQEBYAYgAAAI4KAAABAAAATQMAABQAAAAEAAAAKgQAAAAAAAAIAAAABAAAACsEAABJbmNsdWRlZEV4Y2x1ZGVkVW5ib3VuZGVkL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYml0dmVjLTEuMC4xL3NyYy9zbGljZS5ycwB9ERYAXgAAAE8BAAAjAAAAaW5kZXggIG91dCBvZiByYW5nZTogAAAA7BEWAAYAAADyERYADwAAAH0RFgBeAAAAMQYAAAMAAABsb2FkQml0U3BhbkVycm9yPD46OigSFgANAAAANRIWAAMAAABNaXNhbGlnbmVkVG9vTG9uZ1Rvb0hpZ2gvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zb3VyY2VtYXAtOS4wLjAvc3JjL2VuY29kZXIucnNpbnZhbGlkIGJ5dGUAYBIWAGMAAAAjAAAAEgAAAGludmFsaWQgdXRmOGASFgBjAAAAZgAAACEAAABBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvAAAAAAQAAAAEAAAALAQAAC9ydXN0L2RlcHMvZGxtYWxsb2MtMC4yLjYvc3JjL2RsbWFsbG9jLnJzYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZABMExYAKQAAAKgEAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPD0gc2l6ZSArIG1heF9vdmVyaGVhZAAATBMWACkAAACuBAAADQAAAHVzZSBvZiBzdGQ6OnRocmVhZDo6Y3VycmVudCgpIGlzIG5vdCBwb3NzaWJsZSBhZnRlciB0aGUgdGhyZWFkJ3MKICAgICAgICAgbG9jYWwgZGF0YSBoYXMgYmVlbiBkZXN0cm95ZWQA9BMWAGcAAABzdGQvc3JjL3RocmVhZC9jdXJyZW50LnJzAAAAZBQWABkAAADtAAAACQAAAEFjY2Vzc0Vycm9yc3RkL3NyYy90aHJlYWQvbW9kLnJzZmFpbGVkIHRvIGdlbmVyYXRlIHVuaXF1ZSB0aHJlYWQgSUQ6IGJpdHNwYWNlIGV4aGF1c3RlZACwFBYANwAAAJsUFgAVAAAAkwQAAA0AAABzdGQvc3JjL2JhY2t0cmFjZS5yc3Vuc3VwcG9ydGVkIGJhY2t0cmFjZWRpc2FibGVkIGJhY2t0cmFjZQAAFRYAFAAAAIoBAAAdAAAALQQAABAAAAAEAAAALgQAAC8EAABlbnRpdHkgbm90IGZvdW5kcGVybWlzc2lvbiBkZW5pZWRjb25uZWN0aW9uIHJlZnVzZWRjb25uZWN0aW9uIHJlc2V0aG9zdCB1bnJlYWNoYWJsZW5ldHdvcmsgdW5yZWFjaGFibGVjb25uZWN0aW9uIGFib3J0ZWRub3QgY29ubmVjdGVkYWRkcmVzcyBpbiB1c2VhZGRyZXNzIG5vdCBhdmFpbGFibGVuZXR3b3JrIGRvd25icm9rZW4gcGlwZWVudGl0eSBhbHJlYWR5IGV4aXN0c29wZXJhdGlvbiB3b3VsZCBibG9ja25vdCBhIGRpcmVjdG9yeWlzIGEgZGlyZWN0b3J5ZGlyZWN0b3J5IG5vdCBlbXB0eXJlYWQtb25seSBmaWxlc3lzdGVtIG9yIHN0b3JhZ2UgbWVkaXVtZmlsZXN5c3RlbSBsb29wIG9yIGluZGlyZWN0aW9uIGxpbWl0IChlLmcuIHN5bWxpbmsgbG9vcClzdGFsZSBuZXR3b3JrIGZpbGUgaGFuZGxlaW52YWxpZCBpbnB1dCBwYXJhbWV0ZXJpbnZhbGlkIGRhdGF0aW1lZCBvdXR3cml0ZSB6ZXJvbm8gc3RvcmFnZSBzcGFjZXNlZWsgb24gdW5zZWVrYWJsZSBmaWxlZmlsZXN5c3RlbSBxdW90YSBleGNlZWRlZGZpbGUgdG9vIGxhcmdlcmVzb3VyY2UgYnVzeWV4ZWN1dGFibGUgZmlsZSBidXN5ZGVhZGxvY2tjcm9zcy1kZXZpY2UgbGluayBvciByZW5hbWV0b28gbWFueSBsaW5rc2ludmFsaWQgZmlsZW5hbWVhcmd1bWVudCBsaXN0IHRvbyBsb25nb3BlcmF0aW9uIGludGVycnVwdGVkdW5zdXBwb3J0ZWR1bmV4cGVjdGVkIGVuZCBvZiBmaWxlb3V0IG9mIG1lbW9yeWluIHByb2dyZXNzb3RoZXIgZXJyb3J1bmNhdGVnb3JpemVkIGVycm9yT3NLaW5kQ3VzdG9tIChvcyBlcnJvciAAAQAAAAAAAABkGBYACwAAAODQGAABAAAAOiBzdGQvc3JjL3BhdGgucnMAAACKGBYADwAAANICAAAhAAAAihgWAA8AAAD5AgAALAAAAIoYFgAPAAAA+wIAACYAAACKGBYADwAAAAgDAAAnAAAAihgWAA8AAAAUAwAAJwAAAIoYFgAPAAAAfgMAACkAAACKGBYADwAAAH8DAAArAAAAihgWAA8AAACUAwAALwAAAIoYFgAPAAAAjAMAAC8AAACKGBYADwAAAJoDAAArAAAAc3RkL3NyYy9zeW5jL2xhenlfbG9jay5ycwAAADwZFgAZAAAA0AAAABMAAABjYW5ub3QgcmVjdXJzaXZlbHkgYWNxdWlyZSBtdXRleGgZFgAgAAAAc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzkBkWACQAAAAUAAAACQAAAHN0ZC9zcmMvc3luYy9vbmNlLnJzxBkWABQAAADZAAAAFAAAADx1bmtub3duPu+/vXN0ZC9zcmMvLi4vLi4vYmFja3RyYWNlL3NyYy9zeW1ib2xpemUvbW9kLnJz9BkWACwAAABnAQAAMAAAAAEAAAAAAAAAiBgWAAIAAAAgLSAAAQAAAAAAAABAGhYAAwAAACAgICAgICAgICAgICAgICAgICBhdCBOb3RGb3VuZFBlcm1pc3Npb25EZW5pZWRDb25uZWN0aW9uUmVmdXNlZENvbm5lY3Rpb25SZXNldEhvc3RVbnJlYWNoYWJsZU5ldHdvcmtVbnJlYWNoYWJsZUNvbm5lY3Rpb25BYm9ydGVkTm90Q29ubmVjdGVkQWRkckluVXNlQWRkck5vdEF2YWlsYWJsZU5ldHdvcmtEb3duQnJva2VuUGlwZUFscmVhZHlFeGlzdHNXb3VsZEJsb2NrTm90QURpcmVjdG9yeUlzQURpcmVjdG9yeURpcmVjdG9yeU5vdEVtcHR5UmVhZE9ubHlGaWxlc3lzdGVtRmlsZXN5c3RlbUxvb3BTdGFsZU5ldHdvcmtGaWxlSGFuZGxlSW52YWxpZElucHV0SW52YWxpZERhdGFUaW1lZE91dFdyaXRlWmVyb1N0b3JhZ2VGdWxsTm90U2Vla2FibGVGaWxlc3lzdGVtUXVvdGFFeGNlZWRlZEZpbGVU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YTE1MDAxZi9zd2NfY29tbW9uLTUuMC4wL3NyYy9lcnJvcnMvZGlhZ25vc3RpY19idWlsZGVyLnJzADEmFgB2AAAAWQEAAA0AAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfY29tbW9uLTUuMC4wL3NyYy9lcnJvcnMvbW9kLnJzALgmFgBnAAAAUAMAAB8AAABhc3NlcnRpb24gZmFpbGVkOiBzdGFydCA8PSBlbmQvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfY29tbW9uLTUuMC4wL3NyYy9pbnB1dC5yc04nFgBiAAAAHwAAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBzb3VyY2VfZmlsZV9lbmQgPj0gbGFzdF9saW5lX3N0YXJ0L2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2NvbW1vbi01LjAuMC9zcmMvc3ludGF4X3Bvcy9hbmFseXplX3NvdXJjZV9maWxlLnJzAPQnFgB7AAAAKgAAAAkAAAD0JxYAewAAAGoAAAAYAAAA9CcWAHsAAABqAAAALQBBqNHYAAuhCgEAAAA9BAAAPgQAAD8EAAAAAAAABAAAAAQAAAAVAQAAAAAAAAQAAAAEAAAAQAQAAC4uAAABAAAAAAAAANgoFgACAAAAIG1hY3Jvcz5KGBgAAQAAAOwoFgAIAAAAPHF1b3RlIGV4cGFuc2lvbj4AAAAEKRYAEQAAADxhbm9uPgAAICkWAAYAAAA8bWFjcm8gZXhwYW5zaW9uPgAAADApFgARAAAAPHByb2MtbWFjcm8gc291cmNlIGNvZGU+TCkWABgAAABKGBgAAQAAAE0YGAABAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2NvbW1vbi01LjAuMC9zcmMvc3ludGF4X3Bvcy5yc2Fzc2VydGlvbiBmYWlsZWQ6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FgAIAAAAnE0WAAkAAAC8URYACgAAABBLFgANAAAA0VEWAAsAAAAdSxYACwAAAAJaFgAIAAAAQmluZGluZ0lkZW50S2V5VmFsdWVQYXRQcm9wQ29tcHV0ZWRQcm9wTmFtZWZhaWxlZCB0byBwYXJzZSBzdHJpbmcgYXMgbnVtYmVyL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfcGFyc2VyLTYuMC4yL3NyYy9sZXhlci9qc3gucnMAAF9EFgBrAAAAhwAAAC8AAABmYWlsZWQgdG8gcGFyc2UgbnVtYmVyIGFzIGNoYXIAAF9EFgBrAAAAiQAAAA4AAAABAAAAAAAAAAMbGAABAAAAAQAAAAAAAADkGhgAAQAAAHF1b3RhbXBhcG9zbHRndG5ic3BpZXhjbGNlbnRwb3VuZGN1cnJlbnllbmJydmJhcnNlY3R1bWxjb3B5b3JkZmxhcXVvbm90c2h5cmVnbWFjcmRlZ3BsdXNtbnN1cDJzdXAzYWN1dGVtaWNyb3BhcmFtaWRkb3RjZWRpbHN1cDFvcmRtcmFxdW9mcmFjMTRmcmFjMTJmcmFjMzRpcXVlc3RBZ3JhdmVBYWN1dGVBY2lyY0F0aWxkZUF1bWxBcmluZ0FFbGlnQ2NlZGlsRWdyYXZlRWFjdXRlRWNpcmNFdW1sSWdyYXZlSWFjdXRlSWNpcmNJdW1sRVRITnRpbGRlT2dyYXZlT2FjdXRlT2NpcmNPdGlsZGVPdW1sdGltZXNPc2xhc2hVZ3JhdmVVYWN1dGVVY2lyY1V1bWxZYWN1dGVUSE9STnN6bGlnYWdyYXZlYWFjdXRlYWNpcmNhdGlsZGVhdW1sYXJpbmdhZWxpZ2NjZWRpbGVncmF2ZWVhY3V0ZWVjaXJjZXVtbGlncmF2ZWlhY3V0ZWljaXJjaXVtbGV0aG50aWxkZW9ncmF2ZW9hY3V0ZW9jaXJjb3RpbGRlb3VtbGRpdmlkZW9zbGFzaHVncmF2ZXVhY3V0ZXVjaXJjdXVtbHlhY3V0ZXRob3JueXVtbE9FbGlnb2VsaWdTY2Fyb25zY2Fyb25ZdW1sZm5vZmNpcmN0aWxkZUFscGhhQmV0YUdhbW1hRGVsdGFFcHNpbG9uWmV0YUV0YVRoZXRhSW90YUthcHBhTGFtYmRhTXVOdVhpT21pY3JvblBpUmhvU2lnbWFUYXVVcHNpbG9uUGhpQ2hpUHNpT21lZ2FhbHBoYWJldGFnYW1tYWRlbHRhZXBzaWxvbnpldGFldGF0aGV0YWlvdGFrYXBwYWxhbWJkYW11bnV4aW9taWNyb25waXJob3NpZ21hZnNpZ21hdGF1dXBzaWxvbnBoaWNoaXBzaW9tZWdhdGhldGFzeW11cHNpaHBpdmVuc3BlbXNwdGhpbnNwenduanp3amxybXJsbW5kYXNobWRhc2hsc3F1b3JzcXVvc2JxdW9sZHF1b3JkcXVvYmRxdW9kYWdnZXJEYWdnZXJidWxsaGVsbGlwcGVybWlscHJpbWVQcmltZWxzYXF1b3JzYXF1b29saW5lZnJhc2xldXJvaW1hZ2V3ZWllcnByZWFsdHJhZGVhbGVmc3ltbGFycnVhcnJyYXJyZGFycmhhcnJjcmFycmxBcnJ1QXJyckFycmRBcnJoQXJyZm9yYWxscGFydGV4aXN0ZW1wdHluYWJsYWlzaW5ub3Rpbm5pcHJvZHN1bW1pbnVzbG93YXN0cmFkaWNpbmZpbmFuZ2FuZG9yY2FwY3VwaW50dGhlcmU0c2ltY29uZ2FzeW1wbmVlcXVpdmxlZ2VzdWJzdXBuc3Vic3ViZXN1cGVvcGx1c290aW1lc3BlcnBzZG90bGNlaWxyY2VpbGxmbG9vcnJmbG9vcmxhbmdyYW5nbG96c3BhZGVzY2x1YnNoZWFydHNkaWFtc0Jvb2xOdWxsTnVtQmlnSW50UmVnZXhKU1hUZXh0ZXhwZmxhZ3NOdW1iZXJKU1hBdHRySlNYRW1wdHlFeHByAACDBAAADAAAAAQAAACrAQAAUGFyYW1wYXRJZGVudE5hbWVKU1hFeHByQ29udGFpbmVySlNYU3ByZWFkQ2hpbGQAkAQAAAQAAAAEAAAANwEAAFRzQXNFeHBykQQAAAwAAAAEAAAA9wEAAFRzRm5UeXBlbGl0dHlwZV9uYW1lSlNYQ2xvc2luZ0VsZW1lbnRuc0pTWENsb3NpbmdGcmFnbWVudEpTWE9wZW5pbmdGcmFnbWVudGVsZW1fdHlwZXR5cGVfcGFyYW1Uc0VudGl0eU5hbWVUc0V4dGVybmFsTW9kdWxlUmVmAAAAAAAAAAEAAAABAAAAhAQAAAAAAAABAAAAAQAAABQAAAAAAAAABAAAAAQAAACSBAAAYWNjZXNzaWJpbGl0eWlzX292ZXJyaWRlcGFyYW0AAABPKRgABAAAALxRFgAKAAAAEEsWAA0AAAAdSxYACwAAAPIaGAAIAAAAKEsWAAUAAABUc1BhcmFtUHJvcGVsZW1fdHlwZXMAAACTBAAAGAAAAAgAAADmAQAAlAQAAAQAAAAEAAAAlQQAAAAAAAAEAAAABAAAAJYEAABpc19pbmlzX291dGNvbnN0cmFpbnQAAABPKRgABAAAAPpZFgAEAAAAqEsWAAUAAACtSxYABgAAAGpUFgAIAAAAs0sWAAoAAABOHRgABwAAAFRzVHlwZVBhcmFtZXhwcl9uYW1lVHNVbmlvblR5cGV0eXBlc1RzRW51bU1lbWJlcnF1YWxpZmllcgAAAAAAAAABAAAAAQAAAJcEAACYBAAAMAAAAAgAAACZBAAAbmFtZV90eXBlAAAATykYAAQAAADyGhgACAAAALRKFgAKAAAAVEwWAAkAAADLVxYACAAAACVUFgAIAAAAVHNUcGxMaXRUeXBlUHVibGljUHJvdGVjdGVkUHJpdmF0ZVRydWVQbHVzTWludXNUc05vbk51bGxFeHByVHNDYWxsU2lnbmF0dXJlRGVjbFRzQ29uc3RydWN0U2lnbmF0dXJlRGVjbFRzUHJvcGVydHlTaWduYXR1cmVUc0dldHRlclNpZ25hdHVyZVRzU2V0dGVyU2lnbmF0dXJlVHNNZXRob2RTaWduYXR1cmVUc0luZGV4U2lnbmF0dXJlVHNUdXBsZUVsZW1lbnRsYWJlbHR5VHNJbnRlcmZhY2VCb2R5VHNTYXRpc2ZpZXNFeHBycGFyYW1fbmFtZQAAmgQAAAQAAAAEAAAA+AEAAGlzX3N0YXRpY2NoZWNrX3R5cGVleHRlbmRzX3R5cGV0cnVlX3R5cGVmYWxzZV90eXBlVHNDb25zdHJ1Y3RvclR5cGVrZXljb21wdXRlZFRzQW55S2V5d29yZFRzVW5rbm93bktleXdvcmRUc051bWJlcktleXdvcmRUc09iamVjdEtleXdvcmRUc0Jvb2xlYW5LZXl3b3JkVHNCaWdJbnRLZXl3b3JkVHNTdHJpbmdLZXl3b3JkVHNTeW1ib2xLZXl3b3JkVHNWb2lkS2V5d29yZFRzVW5kZWZpbmVkS2V5d29yZFRzTnVsbEtleXdvcmRUc05ldmVyS2V5d29yZFRzSW50cmluc2ljS2V5d29yZAAAAAAAAAAEAAAABAAAADICAABPKRgABAAAAN9NFgADAAAA4k0WAAgAAADLVxYACAAAAIRYFgAGAAAAJVQWAAgAAACiWBYACwAAAFRzRXhwcldpdGhUeXBlQXJnc1RzSW50ZXJzZWN0aW9uVHlwZW9ial90eXBlaW5kZXhfdHlwZQAATykYAAQAAADyGhgACAAAAN9NFgADAAAA4k0WAAgAAADLVxYACAAAACVUFgAIAAAAVHNOYW1lc3BhY2VFeHBvcnREZWNsY29udGV4dC5jdXJyZW50KCkgaWYgUGFyZW5TdG10LCBzbyBwcmV2IHRva2VuIGNhbm5vdCBiZSBOb25lAAAAkC8YAG0AAAArAgAAGgAAAAwAAACQLxgAbQAAAOkBAAAtAAAAaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogVXNpbmcgaXMgbm90IGEgdmFsaWQgZGVjbGFyYXRpb24gZm9yIGBkZWNsYXJlYCBrZXl3b3Jk2E8WAGAAAACc7xcAcwAAAAwLAAAcAAAAVGhpc1VuYXJ5VXBkYXRlQmluQ29uZENhbGxOZXdTZXFMaXRBcnJvd1lpZWxkTWV0YVByb3BBd2FpdEpTWE1lbWJlckpTWE5hbWVzcGFjZWROYW1lSlNYRW1wdHlKU1hFbGVtZW50SlNYRnJhZ21lbnRUc0NvbnN0QXNzZXJ0aW9uU2hvcnRoYW5kS2V5VmFsdWVHZXR0ZXJTZXR0ZXJNZXRob2RCbG9ja0RlYnVnZ2VyV2l0aFJldHVybkxhYmVsZWRCcmVha0NvbnRpbnVlSWZTd2l0Y2hUaHJvd1RyeVdoaWxlRG9XaGlsZUZvckZvckluRm9yT2ZEZWNsgwQAAAwAAAAEAAAAqwEAAJsEAAAMAAAABAAAAJwEAACdBAAABAAAAAQAAAB4AQAAAAAAAAEAAAABAAAAFAAAAJ4EAAAEAAAABAAAACcCAACfBAAABAAAAAQAAABoAgAAAAAAAAQAAAAEAAAAoAQAAGRlY29yYXRvcnNzdXBlcl9jbGFzc2lzX2Fic3RyYWN0c3VwZXJfdHlwZV9wYXJhbXMAAABPKRgABAAAAMRXFgAEAAAAvFEWAAoAAACKWBYABAAAAMZRFgALAAAA0VEWAAsAAACiWBYACwAAANxRFgARAAAAtB0YAAoAAABWYXJEZWNsZGVjbHNUcnlTdG10YmxvY2toYW5kbGVyZmluYWxpemVySlNYTWVtYmVyRXhwclVzaW5nRGVjbGlzX2F3YWl0b3BlbmluZ2Nsb3NpbmdCbG9ja1N0bXRzdG10cwAAoQQAAAwAAAAEAAAAogQAAKMEAAAYAAAABAAAAIsEAACEWBYABgAAALxRFgAKAAAATykYAAQAAADEVxYABAAAAIpYFgAEAAAAllgWAAwAAACOWBYACAAAAKJYFgALAAAArVgWAAsAAABGdW5jdGlvblRzS2V5d29yZFR5cGVUc1RoaXNUeXBlVHNGbk9yQ29uc3RydWN0b3JUeXBlVHNUeXBlUmVmVHNUeXBlUXVlcnlUc1R5cGVMaXRUc0FycmF5VHlwZVRzVHVwbGVUeXBlVHNPcHRpb25hbFR5cGVUc1Jlc3RUeXBlVHNVbmlvbk9ySW50ZXJzZWN0aW9uVHlwZVRzQ29uZGl0aW9uYWxUeXBlVHNJbmZlclR5cGVUc1BhcmVudGhlc2l6ZWRUeXBlVHNUeXBlT3BlcmF0b3JUc0luZGV4ZWRBY2Nlc3NUeXBlVHNNYXBwZWRUeXBlVHNMaXRUeXBlVHNUeXBlUHJlZGljYXRlVHNJbXBvcnRUeXBlVHNUeXBlQW5udHlwZV9hbm5KU1hPcGVuaW5nRWxlbWVudGF0dHJzc2VsZl9jbG9zaW5nAJMEAAAYAAAACAAAAOYBAABUc0VudW1EZWNsaXNfY29uc3RtZW1iZXJzVHNRdWFsaWZpZWROYW1lVHNNb2R1bGVEZWNspAQAAAwAAAAEAAAApQQAAAAAAAAEAAAABAAAAKYEAABPKRgABAAAAPyuFgACAAAApBoYAAcAAACiWBYACwAAANwaGAAHAAAAilgWAAQAAABUc01vZHVsZUJsb2NrVHNOYW1lc3BhY2VEZWNsVHNUeXBlQWxpYXNEZWNsVHNUeXBlUGFyYW1EZWNsVHNJbXBvcnRFcXVhbHNEZWNsaXNfZXhwb3J0bW9kdWxlX3JlZlRzVHlwZVBhcmFtSW5zdGFudGlhdGlvbgCnBAAABAAAAAQAAACBAgAAAAAAAAEAAAABAAAAFAAAAEV4cG9ydEFsbHNyY3R5cGVfb25seUV4cG9ydERlY2xkZWNsAKgEAAAMAAAABAAAAKkEAACqBAAABAAAAAQAAACrBAAAc3BlY2lmaWVycwAATykYAAQAAADAVRYACgAAAIVVFgADAAAAiFUWAAkAAABDHBgABAAAAJxXFgAFAAAASW1wb3J0RGVjbEV4cG9ydE5hbWVkRXhwb3J0RGVmYXVsdERlY2xFeHBvcnREZWZhdWx0RXhwclRzSW1wb3J0RXF1YWxzVHNFeHBvcnRBc3NpZ25tZW50VHNOYW1lc3BhY2VFeHBvcnRUc0ludGVyZmFjZURlY2xFdmFsdWF0aW9uU291cmNlRGVmZXJOYW1lZEV4cG9ydE5hbWVzcGFjZURlZmF1bHROYW1lZFN0ckV4cG9ydE5hbWVkU3BlY2lmaWVyb3JpZ2V4cG9ydGVkaXNfdHlwZV9vbmx5SW1wb3J0TmFtZWRTcGVjaWZpZXJsb2NhbGltcG9ydGVkSW1wb3J0U3RhckFzU3BlY2lmaWVyRXhwb3J0RGVmYXVsdFNwZWNpZmllckltcG9ydERlZmF1bHRTcGVjaWZpZXJFeHBvcnROYW1lc3BhY2VTcGVjaWZpZXJUcGxleHByc3F1YXNpc1N1cGVyAAAAAAEAAAABAAAAFAAAAEZuRGVjbGlkZW50SW1wb3J0Rm5FeHByAAAAAAAEAAAABAAAAIQCAABwaGFzZQAAAAAAAAAEAAAABAAAAOgBAAAAAAAABAAAAAQAAACSAAAAY3R4dHN5bW9wdGlvbmFsQmluRXhwcm9wcmlnaHROZXdFeHByY2FsbGVlYXJnc3R5cGVfYXJnc09wdENhbGxTZXFFeHByQXJyYXlMaXRlbGVtc0NhbGxFeHByQ29uZEV4cHJ0ZXN0Y29uc2FsdFRoaXNFeHByQ2xhc3NEZWNsAACsBAAADAAAAAQAAACtBAAArgQAAAQAAAAEAAAArwQAAJ4EAAAEAAAABAAAACcCAAAAAAAABAAAAAQAAABBAQAAcGFyYW1zYm9keWlzX2FzeW5jaXNfZ2VuZXJhdG9ydHlwZV9wYXJhbXNyZXR1cm5fdHlwZU8pGAAEAAAAxFcWAAQAAACEWBYABgAAAIpYFgAEAAAAjlgWAAgAAACWWBYADAAAAKJYFgALAAAArVgWAAsAAABBcnJvd0V4cHJBd2FpdEV4cHJhcmdDbGFzc0V4cHJPYmplY3RMaXRwcm9wc1BhcmVuRXhwckNvbXB1dGVkVGFnZ2VkVHBsdHBsVW5hcnlFeHByWWllbGRFeHByZGVsZWdhdGVBc3NpZ25FeHByTWVtYmVyRXhwcm9ianByb3BQcml2YXRlTmFtZVRwbEVsZW1lbnR0YWlsY29va2VkcmF3VXBkYXRlRXhwcnByZWZpeFNpbXBsZVBhdEV4cHJPclNwcmVhZHNwcmVhZE1ldGFQcm9wRXhwcmtpbmRPcHRDaGFpbkV4cHJiYXNlU3ByZWFkUHJvcFZhckRlY2xhcmF0b3JuYW1laW5pdGRlZmluaXRlU3ByZWFkRWxlbWVudGRvdDNfdG9rZW5TdXBlclByb3BFeHByTWVtYmVyU3VwZXJQcm9wUGFyZW5PcHRDaGFpblRzQXNUc1NhdGlzZmllc1RzTm9uTnVsbFRzVHlwZUFzc2VydGlvblRzSW5zdGFudGlhdGlvbgBBpLXZAAsSsAQAALEEAACwBAAAsAQAALEEAEGAttkACwKwBABBgLnZAAvaiwayBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAALIEAACyBAAAsgQAAHN0cnVjdCBUc1N5bnRheC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3BhcnNlci02LjAuMi9zcmMvbGV4ZXIvdXRpbC5ycy9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3NtYXJ0c3RyaW5nLTEuMC4xL3NyYy9vcHMucnP7XhYAYQAAAHoAAAA7AAAAVW5leHBlY3RlZCBlb2YvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItNi4wLjIvc3JjL2Vycm9yLnJzRGVjbGFyYXRpb24gaXMgbm90IGFsbG93ZWRVc2luZyBkZWNsYXJhdGlvbiBpcyBub3QgYWxsb3dlZFVzaW5nIGRlY2xhcmF0aW9uIGlzIG5vdCBhbGxvd2VkIGluIGZvci1pbiBsb29wVXNpbmcgZGVjbGFyYXRpb24gaXMgbm90IGVuYWJsZWQuIFNldCBqc2MucGFyc2VyLmV4cGxpY2l0UmVzb3VyY2VNYW5hZ2VtZW50IHRvIHRydWVVc2luZyBkZWNsYXJhdGlvbiBvbmx5IGFsbG93cyBpZGVudGlmaWVyc1VzaW5nIGRlY2xhcmF0aW9uIHJlcXVpcmVzIGluaXRpYWxpemVycHJpdmF0ZSBuYW1lcyBhcmUgbm90IGFsbG93ZWQgaW4gaW50ZXJmYWNlSW52YWxpZCBgc3VwZXIoKWBJbnZhbGlkIGFjY2VzcyB0byBzdXBlckluZGV4IHN1cGVyIHdpdGggcHJpdmF0ZSBuYW1lIGlzIG5vdCBhbGxvd2VkJ25ldy50YXJnZXQnIGlzIG9ubHkgYWxsb3dlZCBpbiB0aGUgYm9keSBvZiBhIGZ1bmN0aW9uIGRlY2xhcmF0aW9uLCBmdW5jdGlvbiBleHByZXNzaW9uLCBvciBjbGFzcy5JbXBvcnQgaXMgbm90IGFsbG93ZWQgaGVyZUFuIGFycm93IGZ1bmN0aW9uIGlzIG5vdCBhbGxvd2VkIGhlcmVgZXhwb3J0YCBpcyBub3QgYWxsb3dlZCBoZXJlQSBnZXR0ZXIgb3IgYSBzZXR0ZXIgY2Fubm90IGJlIHJlYWRvbmx5QSBnZXR0ZXIgb3IgYSBzZXR0ZXIgY2Fubm90IGJlIG9wdGlvbmFsQSBgZ2V0YCBhY2Nlc3NvciBjYW5ub3QgaGF2ZSBwYXJhbWV0ZXJzQSBgc2V0YCBhY2Nlc3NvciBtdXN0IGhhdmUgZXhhY3RseSBvbmUgcGFyYW1ldGVydG9wIGxldmVsIGF3YWl0IGlzIG9ubHkgYWxsb3dlZCBpbiBtb2R1bGVMZWdhY3kgZGVjaW1hbCBlc2NhcGUgaXMgbm90IHBlcm1pdHRlZCBpbiBzdHJpY3QgbW9kZUxlZ2FjeSBvY3RhbCBlc2NhcGUgaXMgbm90IHBlcm1pdHRlZCBpbiBzdHJpY3QgbW9kZUludmFsaWQgY2hhcmFjdGVyIGluIGlkZW50aWZpZXJhIGJpbmFyeWFuIG9jdGFsYSBkZWNpbWFsYSBoZXhhZGVjaW1hbEV4cGVjdGVkICBkaWdpdAAAAKJjFgAJAAAAq2MWAAYAAAB6XxYAZwAAAEIBAAAaAAAAU2V0dGVyIHNob3VsZCBoYXZlIGV4YWN0bHkgb25lIHBhcmFtZXRlclJlc3QgcGF0dGVybiBpcyBub3QgYWxsb3dlZCBpbiBzZXR0ZXJVbnRlcm1pbmF0ZWQgYmxvY2sgY29tbWVudFVudGVybWluYXRlZCBzdHJpbmcgY29uc3RhbnRFeHBlY3RlZCB1bmljb2RlIGVzY2FwZVVuZXhwZWN0ZWQgZXNjYXBlIHNlcXVlbmNlIGluIHJlc2VydmVkIHdvcmQ6IABuZBYALQAAAFVudGVybWluYXRlZCByZWdleHAgbGl0ZXJhbFVudGVybWluYXRlZCB0ZW1wbGF0ZUlkZW50aWZpZXIgY2Fubm90IGZvbGxvdyBudW1iZXJVbmV4cGVjdGVkIGNoYXJhY3RlciDzZBYAFQAAAEludmFsaWQgc3RyaW5nIGVzY2FwZUludmFsaWQgdW5pY29kZSBlc2NhcGVCYWQgY2hhcmFjdGVyIGVzY2FwZSBzZXF1ZW5jZSwgZXhwZWN0ZWQgADtlFgAoAAAARXhwZWN0ZWQgKywgLSBvciBkZWNpbWFsIGRpZ2l0IGFmdGVyIGVMZWdhY3kgY29tbWVudHMgY2Fubm90IGJlIHVzZWQgaW4gbW9kdWxlIGNvZGVgIGNhbm5vdCBiZSB1c2VkIGFzIGFuIGlkZW50aWZpZXIgaW4gc3RyaWN0IG1vZGUAtBoYAAEAAAC/ZRYAMAAAAGBhd2FpdGAgY2Fubm90IGJlIHVzZWQgYXMgYW4gaWRlbnRpZmllciBpbiBhbiBhc3luYyBjb250ZXh0J2V2YWwnIGFuZCAnYXJndW1lbnRzJyBjYW5ub3QgYmUgdXNlZCBhcyBhIGJpbmRpbmcgaWRlbnRpZmllciBpbiBzdHJpY3QgbW9kZSdhcmd1bWVudHMnIGlzIG9ubHkgYWxsb3dlZCBpbiBmdW5jdGlvbnMgYW5kIGNsYXNzIG1ldGhvZHNJbGxlZ2FsICd1c2Ugc3RyaWN0JyBkaXJlY3RpdmUgaW4gZnVuY3Rpb24gd2l0aCBub24tc2ltcGxlIHBhcmFtZXRlciBsaXN0LicqKicgY2Fubm90IGJlIGFwcGxpZWQgdG8gdW5hcnkvYXdhaXQgZXhwcmVzc2lvbi5VbmV4cGVjdGVkIHRva2VuICcjJ0xpbmVCcmVhayBjYW5ub3QgZm9sbG93ICd0aHJvdydVbmV4cGVjdGVkIGxpbmUgYnJlYWsgYmV0d2VlbiBhcnJvdyBoZWFkIGFuZCBhcnJvd1VuZXhwZWN0ZWQgdG9rZW4gYGAuIEV4cGVjdGVkIAChZxYAEgAAALNnFgAMAAAAICwgb3IgAADTZxYAAwAAACBvciBVbmV4cGVjdGVkIHRva2VuLiBEaWQgeW91IG1lYW4gAORnFgAfAAAA4xoYAAEAAABjYW5ub3QgaW1wb3J0IGFzIHJlc2VydmVkIHdvcmRhc3NpZ25tZW50IHByb3BlcnR5IGlzIGludmFsaWQgc3ludGF4RXhwZWN0ZWQgJycsIGdvdCAnJwAAV2gWAAoAAABhaBYACAAAAGloFgABAAAARXhwZWN0ZWQgJzsnLCAnfScgb3IgPGVvZj5hd2FpdCogaGFzIGJlZW4gcmVtb3ZlZCBmcm9tIHRoZSBhc3luYyBmdW5jdGlvbnMgcHJvcG9zYWwuIFVzZSBQcm9taXNlLmFsbCgpIGluc3RlYWQuQ2Fubm90IHVzZSBhIHJlc2VydmVkIHdvcmQgYXMgYSBzaG9ydGhhbmQgcHJvcGVydHlOdWxsaXNoIGNvYWxlc2Npbmcgb3BlcmF0b3IoPz8pIHJlcXVpcmVzIHBhcmVucyB3aGVuIG1peGluZyB3aXRoIGxvZ2ljYWwgb3BlcmF0b3JzQSBzd2l0Y2ggYmxvY2sgY2Fubm90IGhhdmUgbXVsdGlwbGUgZGVmYXVsdHNUcmFpbGluZyBjb21tYSBpc24ndCBwZXJtaXR0ZWQgYWZ0ZXIgYSByZXN0IGVsZW1lbnRSZXN0IGVsZW1lbnQgbXVzdCBiZSBmaW5hbCBlbGVtZW50UGFyZW50aGVzaXplZCBleHByZXNzaW9uIGNhbm5vdCBjb250YWluIHNwcmVhZCBvcGVyYXRvclBhcmVudGhlc2l6ZWQgZXhwcmVzc2lvbiBjYW5ub3QgYmUgZW1wdHlOb3QgYSBwYXR0ZXJuTm90IGFuIGV4cHJlc3Npb25DYW5ub3QgYXNzaWduIHRvIHRoaXNJbnZhbGlkIGFzc2lnbm1lbnQgdGFyZ2V0RXhwZWN0ZWQgaWRlbnRFeHBlY3RlZCAnOycgb3IgbGluZSBicmVha0xhYmVsICBpcyBhbHJlYWR5IGRlY2xhcmVkAAAAy2oWAAYAAADRahYAFAAAAEFuIGFzeW5jIGZ1bmN0aW9uIGNhbm5vdCBiZSBnZW5lcmF0b3InaW1wb3J0JywgYW5kICdleHBvcnQnIGFyZSBub3QgcGVybWl0dGVkIGhlcmUnaW1wb3J0JywgYW5kICdleHBvcnQnIGNhbm5vdCBiZSB1c2VkIG91dHNpZGUgb2YgbW9kdWxlIGNvZGUnaW1wb3J0Lm1ldGEnIGNhbm5vdCBiZSB1c2VkIG91dHNpZGUgb2YgbW9kdWxlIGNvZGUuRGVzdHJ1Y3R1cmluZyBiaW5kaW5ncyByZXF1aXJlIGluaXRpYWxpemVyc1dpdGggc3RhdGVtZW50IGFyZSBub3QgYWxsb3dlZCBpbiBzdHJpY3QgbW9kZVJldHVybiBzdGF0ZW1lbnQgaXMgbm90IGFsbG93ZWQgaGVyZUV4cGVjdGVkIG9uZSB2YXJpYWJsZSBiaW5kaW5nVW5leHBlY3RlZCBpbml0aWFsaXplciBpbiBmb3IgaW4vb2YgbG9vcEdlbmVyYXRvciBvciBhc3luYyBmdW5jdGlvbiBjYW5ub3QgYmUgbGFiZWxsZWRGdW5jdGlvbiBjYW5ub3QgYmUgbGFiZWxsZWQgaW4gc3RyaWN0IG1vZGUneWllbGQnIGNhbm5vdCBiZSB1c2VkIGFzIGEgcGFyYW1ldGVyIHdpdGhpbiBnZW5lcmF0b3JgYXdhaXRgIGV4cHJlc3Npb25zIGNhbm5vdCBiZSB1c2VkIGluIGEgcGFyYW1ldGVyIGluaXRpYWxpemVyLmZvciBhd2FpdCBzeW50YXggaXMgdmFsaWQgb25seSBmb3IgZm9yLW9mIHN0YXRlbWVudGF3YWl0IGlzbid0IGFsbG93ZWQgaW4gbm9uLWFzeW5jIGZ1bmN0aW9uVW50ZXJtaW5hdGVkIEpTWCBjb250ZW50c0pTWCBhdHRyaWJ1dGVzIG11c3Qgb25seSBiZSBhc3NpZ25lZCBhIG5vbi1lbXB0eSBleHByZXNzaW9uSlNYIHZhbHVlIHNob3VsZCBiZSBlaXRoZXIgYW4gZXhwcmVzc2lvbiBvciBhIHF1b3RlZCBKU1ggdGV4dEV4cGVjdGVkIGNvcnJlc3BvbmRpbmcgSlNYIGNsb3NpbmcgdGFnIGZvciA8PkV4cGVjdGVkIGNvcnJlc3BvbmRpbmcgSlNYIGNsb3NpbmcgdGFnIGZvciA8AAAAYW4WACwAAABNGBgAAQAAAExlYWRpbmcgZGVjb3JhdG9ycyBtdXN0IGJlIGF0dGFjaGVkIHRvIGEgY2xhc3MgZGVjbGFyYXRpb25Vc2luZyB0aGUgZXhwb3J0IGtleXdvcmQgYmV0d2VlbiBhIGRlY29yYXRvciBhbmQgYSBjbGFzcyBpcyBub3QgYWxsb3dlZC4gUGxlYXNlIHVzZSBgZXhwb3J0IEBkZWMgY2xhc3NgIGluc3RlYWQuQSByZXF1aXJlZCBlbGVtZW50IGNhbm5vdCBmb2xsb3cgYW4gb3B0aW9uYWwgZWxlbWVudC5UeXBlc2NyaXB0IHBhcmFtZXRlciBwcm9wZXJ0eSBtdXN0IGJlIGFuIGlkZW50aWZpZXIgb3IgYXNzaWdubWVudCBwYXR0ZXJuVW5leHBlY3RlZCBzcGFjZSBiZXR3ZWVuICMgYW5kIGlkZW50aWZpZXJDb25zdHJ1Y3RvciBjYW4ndCBiZSBhbiBhc3luYyBmdW5jdGlvbkNsYXNzZXMgbWF5IG5vdCBoYXZlIGEgbm9uLXN0YXRpYyBmaWVsZCBuYW1lZCAnY29uc3RydWN0b3InQ2xhc3NlcyBjYW4ndCBoYXZlIGEgcHJpdmF0ZSBmaWVsZCBuYW1lZCAnI2NvbnN0cnVjdG9yJy4nIG1vZGlmaWVyIGNhbm5vdCBiZSB1c2VkIHdpdGggYSBwcml2YXRlIGlkZW50aWZpZXIAAABpaBYAAQAAAIpwFgAzAAAAQ2xhc3MgY29uc3RydWN0b3IgY2FuJ3QgYmUgYW4gYWNjZXNzb3IuQSBtZXRob2QgY2Fubm90IGJlIHJlYWRvbmx5QSBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgZ2VuZXJhdG9yQSBjbGFzcyBjYW4gb25seSBoYXZlIG9uZSBjb25zdHJ1Y3RvckEgYmluZGluZyBwYXR0ZXJuIHBhcmFtZXRlciBjYW5ub3QgYmUgb3B0aW9uYWwgaW4gYW4gaW1wbGVtZW50YXRpb24gc2lnbmF0dXJlLlN1cGVyIGNhbGwgY2Fubm90IGJlIG9wdGlvbmFsQ29uc3RydWN0b3IgaW4vYWZ0ZXIgYW4gb3B0aW9uYWwgY2hhaW5pbmcgaXMgbm90IGFsbG93ZWQuVGFnZ2VkIHRlbXBsYXRlIGxpdGVyYWwgaXMgbm90IGFsbG93ZWQgaW4gb3B0aW9uYWwgY2hhaW4uVHJhaWxpbmcgY29tbWEgaXMgZGlzYWxsb3dlZCBpbnNpZGUgaW1wb3J0KC4uLikgYXJndW1lbnRzZXhwb3J0IGRlZmF1bHQgc3RhdGVtZW50cyByZXF1aXJlZCBmcm9tICcuLi4nO2AgY2Fubm90IGJlIHVzZWQgd2l0aG91dCBgZnJvbWAgY2xhdXNlAAC0GhgAAQAAAJxyFgAmAAAAYC4uLmAgbXVzdCBiZSBmb2xsb3dlZCBieSBhbiBpZGVudGlmaWVyIGluIGRlY2xhcmF0aW9uIGNvbnRleHRzQSBudW1lcmljIHNlcGFyYXRvciBpcyBvbmx5IGFsbG93ZWQgYmV0d2VlbiB0d28gZGlnaXRzQSBzdHJpbmcgbGl0ZXJhbCBjYW5ub3QgYmUgdXNlZCBhcyBhbiBpbXBvcnRlZCBiaW5kaW5nLgotIERpZCB5b3UgbWVhbiBgaW1wb3J0IHsgIiIgYXMgZm9vIH1gPwBJcxYAUgAAAJtzFgAMAAAAQSBzdHJpbmcgbGl0ZXJhbCBjYW5ub3QgYmUgdXNlZCBhcyBhbiBleHBvcnRlZCBiaW5kaW5nIHdpdGhvdXQgYGZyb21gLidjb25zdCcgZGVjbGFyYXRpb25zIG11c3QgYmUgaW5pdGlhbGl6ZWREdXBsaWNhdGVkIHJlZ3VsYXIgZXhwcmVzc2lvbiBmbGFnICcnLiZ0FgAkAAAASnQWAAIAAABVbmtub3duIHJlZ3VsYXIgZXhwcmVzc2lvbiBmbGFncy5FeHBlY3RlZCBhbiBpZGVudGlmaWVyRXhwZWN0ZWQgYSBzZW1pY29sb25UcmFpbGluZyBjb21tYSBpcyBub3QgYWxsb3dlZEEgcmVzdCBwYXJhbWV0ZXIgbXVzdCBiZSBsYXN0IGluIGEgcGFyYW1ldGVyIGxpc3RQYXJhbWV0ZXIgY2Fubm90IGhhdmUgcXVlc3Rpb24gbWFyayBhbmQgaW5pdGlhbGl6ZXInIG1vZGlmaWVyIG11c3QgcHJlY2VkZSAnJyBtb2RpZmllci5paBYAAQAAACh1FgAZAAAAQXUWAAsAAAAnIG1vZGlmaWVyIGFscmVhZHkgc2Vlbi5paBYAAQAAAGR1FgAYAAAAYGRlY2xhcmVgIG1vZGlmaWVyIGNhbm5vdCBhcHBlYXIgb24gY2xhc3MgZWxlbWVudHMgb2YgdGhpcyBraW5kYGRlY2xhcmVgIG1vZGlmaWVyIG5vdCBhbGxvd2VkIGZvciBjb2RlIGFscmVhZHkgaW4gYW4gYW1iaWVudCBjb250ZXh0YGFzeW5jYCBtb2RpZmllciBjYW5ub3QgYmUgdXNlZCBoZXJlQSByZXN0IHBhcmFtZXRlciBjYW5ub3QgYmUgb3B0aW9uYWxBIHJlc3QgcGFyYW1ldGVyIGNhbm5vdCBoYXZlIGFuIGluaXRpYWxpemVyanNjLnRhcmdldCBzaG91bGQgYmUgZXM1IG9yIHVwcGVyIHRvIHVzZSBnZXR0ZXIgLyBzZXR0ZXJMZWdhY3kgb2N0YWwgbGl0ZXJhbHMgYXJlIG5vdCBhdmFpbGFibGUgd2hlbiB0YXJnZXRpbmcgRUNNQVNjcmlwdCA1IGFuZCBoaWdoZXInIG1vZGlmaWVyIGNhbm5vdCBhcHBlYXIgb24gYSBjb25zdHJ1Y3RvciBkZWNsYXJhdGlvbgAAAGloFgABAAAACHcWADUAAABUeXBlIHBhcmFtZXRlcnMgY2Fubm90IGFwcGVhciBvbiBhIGNvbnN0cnVjdG9yIGRlY2xhcmF0aW9uQW4gaW5kZXggc2lnbmF0dXJlIG11c3QgaGF2ZSBleGFjdGx5IG9uZSBwYXJhbWV0ZXJUeXBlIHBhcmFtZXRlciBsaXN0IGNhbm5vdCBiZSBlbXB0eUludmFsaWQgdXNlIG9mICdhcmd1bWVudHMnIGluIHN0cmljdCBtb2RlJ2RlbGV0ZScgY2Fubm90IGJlIGNhbGxlZCBvbiBhbiBpZGVudGlmaWVyIGluIHN0cmljdCBtb2RlQSAnYnJlYWsnIHN0YXRlbWVudCBjYW4gb25seSBiZSB1c2VkIHdpdGhpbiBhbiBlbmNsb3NpbmcgaXRlcmF0aW9uIG9yIHN3aXRjaCBzdGF0ZW1lbnRUaGUgbGVmdC1oYW5kIHNpZGUgb2YgYSBgZm9yLi4ub2ZgIHN0YXRlbWVudCBtYXkgbm90IGJlIGBhc3luY2BKdW1wIHRhcmdldCBjYW5ub3QgY3Jvc3MgZnVuY3Rpb24gYm91bmRhcnlFeHByZXNzaW9uIGV4cGVjdGVkdHlwZSBleHBlY3RlZER1cGxpY2F0ZSBsYWJlbEEgJ2NvbnRpbnVlJyBzdGF0ZW1lbnQgY2FuIG9ubHkganVtcCB0byBhIGxhYmVsIG9mIGFuIGVuY2xvc2luZyBpdGVyYXRpb24gc3RhdGVtZW50QSAnYnJlYWsnIHN0YXRlbWVudCBjYW4gb25seSBqdW1wIHRvIGEgbGFiZWwgb2YgYW4gZW5jbG9zaW5nIHN0YXRlbWVudFZhcmlhYmxlIGRlY2xhcmF0aW9uIGxpc3QgY2Fubm90IGJlIGVtcHR5bGl0ZXJhbCBpbiBhbiBpbXBvcnQgdHlwZSBzaG91bGQgYmUgc3RyaW5nIGxpdGVyYWxBbiBvYmplY3QgbWVtYmVyIGNhbm5vdCBiZSBkZWNsYXJlZCBvcHRpb25hbENvbXB1dGVkIHByb3BlcnR5IG5hbWVzIGFyZSBub3QgYWxsb3dlZCBpbiBlbnVtc0EgY29tbWEgZXhwcmVzc2lvbiBpcyBub3QgYWxsb3dlZCBpbiBhIGNvbXB1dGVkIHByb3BlcnR5IG5hbWVgZXh0ZW5kc2AgY2xhdXNlIGFscmVhZHkgc2Vlbi4nZXh0ZW5kcycgY2xhdXNlIG11c3QgcHJlY2VkZSAnaW1wbGVtZW50cycgY2xhdXNlLkNsYXNzZXMgY2FuIG9ubHkgZXh0ZW5kIGEgc2luZ2xlIGNsYXNzYGltcGxlbWVudHNgIGNsYXVzZSBhbHJlYWR5IHNlZW5BbiBpbXBsZW1lbnRhdGlvbiBjYW5ub3QgYmUgZGVjbGFyZWQgaW4gYW1iaWVudCBjb250ZXh0c01vZGlmaWVycyBjYW5ub3QgYXBwZWFyIGhlcmVNZXJnZSBjb25mbGljdCBtYXJrZXIgZW5jb3VudGVyZWQuVHlwZSBhbm5vdGF0aW9uIGNhbm5vdCBhcHBlYXIgb24gYSBjb25zdHJ1Y3RvciBkZWNsYXJhdGlvbkNhdGNoIGNsYXVzZSB2YXJpYWJsZSBjYW5ub3QgaGF2ZSBhIHR5cGUgYW5ub3RhdGlvbmBhYnN0cmFjdGAgbW9kaWZpZXIgY2FuIG9ubHkgYXBwZWFyIG9uIGEgY2xhc3Mgb3IgbWV0aG9kIGRlY2xhcmF0aW9uJyBtb2RpZmllciBjYW5ub3QgYmUgdXNlZCB3aXRoICcAAABpaBYAAQAAAHl8FgAgAAAAQXUWAAsAAABBYnN0cmFjdCBtZXRob2RzIGNhbiBvbmx5IGFwcGVhciB3aXRoaW4gYW4gYWJzdHJhY3QgY2xhc3MuQWJzdHJhY3QgbWV0aG9kIGNhbm5vdCBoYXZlIGFuIGltcGxlbWVudGF0aW9uLkFic3RyYWN0IHByb3BlcnR5IGNhbm5vdCBoYXZlIGFuIGluaXRpYWxpemVyLicgbW9kaWZpZXIgY2Fubm90IGFwcGVhciBvbiBhIHR5cGUgcGFyYW1ldGVyAAAAaWgWAAEAAABJfRYALAAAACcgbW9kaWZpZXIgY2FuIG9ubHkgYXBwZWFyIG9uIGEgdHlwZSBwYXJhbWV0ZXIgb2YgYSBjbGFzcywgaW50ZXJmYWNlIG9yIHR5cGUgYWxpYXMAAGloFgABAAAAiH0WAFIAAAAnIG1vZGlmaWVyIGNhbiBvbmx5IGFwcGVhciBvbiBhIHR5cGUgcGFyYW1ldGVyIG9mIGEgZnVuY3Rpb24sIG1ldGhvZCBvciBjbGFzcwAAAGloFgABAAAA7H0WAE0AAABUaGUgJ3R5cGUnIG1vZGlmaWVyIGNhbm5vdCBiZSB1c2VkIG9uIGEgbmFtZWQgaW1wb3J0IHdoZW4gJ2ltcG9ydCB0eXBlJyBpcyB1c2VkIG9uIGl0cyBpbXBvcnQgc3RhdGVtZW50LlRoZSAndHlwZScgbW9kaWZpZXIgY2Fubm90IGJlIHVzZWQgb24gYSBuYW1lZCBleHBvcnQgd2hlbiAnZXhwb3J0IHR5cGUnIGlzIHVzZWQgb24gaXRzIGV4cG9ydCBzdGF0ZW1lbnQuQSBwYXJhbWV0ZXIgcHJvcGVydHkgaXMgb25seSBhbGxvd2VkIGluIGEgY29uc3RydWN0b3IgaW1wbGVtZW50YXRpb25BIHBhcmFtZXRlciBpbml0aWFsaXplciBpcyBvbmx5IGFsbG93ZWQgaW4gYSBmdW5jdGlvbiBvciBjb25zdHJ1Y3RvciBpbXBsZW1lbnRhdGlvblRoZSBsZWZ0LWhhbmQgc2lkZSBvZiBhbiBhc3NpZ25tZW50IGV4cHJlc3Npb24gbXVzdCBiZSBhIHZhcmlhYmxlIG9yIGEgcHJvcGVydHkgYWNjZXNzLlRoZSAnd2l0aCcgc3RhdGVtZW50IGlzIG5vdCBzdXBwb3J0ZWQuIEFsbCBzeW1ib2xzIGluIGEgJ3dpdGgnIGJsb2NrIHdpbGwgaGF2ZSB0eXBlICdhbnknLkludmFsaWQgY2xhc3MgbmFtZWludGVyZmFjZSBuYW1lIGlzIGludmFsaWRBbiBlbnVtIG1lbWJlciBjYW5ub3QgaGF2ZSBhIG51bWVyaWMgbmFtZVRoZSBsZWZ0LWhhbmQgc2lkZSBvZiBhICdmb3IuLi5vZicgc3RhdGVtZW50IGNhbm5vdCB1c2UgYSB0eXBlIGFubm90YXRpb25UaGUgbGVmdC1oYW5kIHNpZGUgb2YgYSAnZm9yLi4uaW4nIHN0YXRlbWVudCBjYW5ub3QgYmUgYSBkZXN0cnVjdHVyaW5nIHBhdHRlcm5BbiBpbnRlcmZhY2UgY2FuIG9ubHkgZXh0ZW5kIGFuIGlkZW50aWZpZXIvcXVhbGlmaWVkLW5hbWUgd2l0aCBvcHRpb25hbCB0eXBlIGFyZ3VtZW50cy5UaGUgb3BlcmFuZCBvZiBhIGRlbGV0ZSBvcGVyYXRvciBtdXN0IGJlIGEgcHJvcGVydHkgcmVmZXJlbmNlLlRoaXMgbWVtYmVyIGNhbm5vdCBoYXZlIGFuICdvdmVycmlkZScgbW9kaWZpZXIgYmVjYXVzZSBpdHMgY29udGFpbmluZyBjbGFzcyBkb2VzIG5vdCBleHRlbmQgYW5vdGhlciBjbGFzcy5EZWNvcmF0b3JzIG1heSBub3QgYXBwZWFyIGFmdGVyIGBleHBvcnRgIG9yIGBleHBvcnQgZGVmYXVsdGAgaWYgdGhleSBhbHNvIGFwcGVhciBiZWZvcmUgYGV4cG9ydGAuQW4gYWNjZXNzaWJpbGl0eSBtb2RpZmllciBjYW5ub3QgYmUgdXNlZCB3aXRoIGEgcHJpdmF0ZSBpZGVudGlmaWVyLlR5cGUgYW5ub3RhdGlvbnMgbXVzdCBjb21lIGJlZm9yZSBkZWZhdWx0IGFzc2lnbm1lbnRzVHlwZXNjcmlwdCBub24tbnVsbCBhc3NlcnRpb24gb3BlcmF0b3IgaXMgbm90IGFsbG93ZWQgd2l0aCAnACeDFgA8AAAAaWgWAAEAAABUaGlzIHN5bnRheCBpcyByZXNlcnZlZCBpbiBmaWxlcyB3aXRoIHRoZSAubXRzIG9yIC5jdHMgZXh0ZW5zaW9uLiBVc2UgYW4gYGFzYCBleHByZXNzaW9uIGluc3RlYWQuVGhpcyBzeW50YXggaXMgcmVzZXJ2ZWQgaW4gZmlsZXMgd2l0aCB0aGUgLm10cyBvciAuY3RzIGV4dGVuc2lvbi4gQWRkIGEgdHJhaWxpbmcgY29tbWEsIGFzIGluIGA8VCw+KCkgPT4gLi4uYC5UaGlzIGlzIHRoZSBleHByZXNzaW9uIHBhcnQgb2YgYW4gZXhwcmVzc2lvbiBzdGF0ZW1lbnRwcmV2aW91cyBkZWZhdWx0IGNhc2UgaXMgZGVjbGFyZWQgYXQgaGVyZUVvZkRlY2xOb3RBbGxvd2VkVXNpbmdEZWNsTm90QWxsb3dlZFVzaW5nRGVjbE5vdEFsbG93ZWRGb3JGb3JJbkxvb3BVc2luZ0RlY2xOb3RFbmFibGVkSW52YWxpZE5hbWVJblVzaW5nRGVjbEluaXRSZXF1aXJlZEZvclVzaW5nRGVjbFByaXZhdGVOYW1lSW5JbnRlcmZhY2VJbnZhbGlkU3VwZXJDYWxsSW52YWxpZFN1cGVySW52YWxpZFN1cGVyUHJpdmF0ZU5hbWVJbnZhbGlkTmV3VGFyZ2V0SW52YWxpZEltcG9ydEFycm93Tm90QWxsb3dlZEV4cG9ydE5vdEFsbG93ZWRHZXR0ZXJTZXR0ZXJDYW5ub3RCZVJlYWRvbmx5R2V0dGVyU2V0dGVyQ2Fubm90QmVPcHRpb25hbEdldHRlclBhcmFtU2V0dGVyUGFyYW1Ub3BMZXZlbEF3YWl0SW5TY3JpcHRMZWdhY3lEZWNpbWFsTGVnYWN5T2N0YWxJbnZhbGlkSWRlbnRDaGFyRXhwZWN0ZWREaWdpdHJhZGl4U2V0dGVyUGFyYW1SZXF1aXJlZFJlc3RQYXRJblNldHRlclVudGVybWluYXRlZEJsb2NrQ29tbWVudFVudGVybWluYXRlZFN0ckxpdEV4cGVjdGVkVW5pY29kZUVzY2FwZUVzY2FwZUluUmVzZXJ2ZWRXb3Jkd29yZFVudGVybWluYXRlZFJlZ0V4cFVudGVybWluYXRlZFRwbElkZW50QWZ0ZXJOdW1VbmV4cGVjdGVkQ2hhcmNJbnZhbGlkU3RyRXNjYXBlSW52YWxpZFVuaWNvZGVFc2NhcGVCYWRDaGFyYWN0ZXJFc2NhcGVTZXF1ZW5jZWV4cGVjdGVkTnVtTGl0VGVybWluYXRlZFdpdGhFeHBMZWdhY3lDb21tZW50SW5Nb2R1bGVJbnZhbGlkSWRlbnRJblN0cmljdEludmFsaWRJZGVudEluQXN5bmNFdmFsQW5kQXJndW1lbnRzSW5TdHJpY3RBcmd1bWVudHNJbkNsYXNzRmllbGRJbGxlZ2FsTGFuZ3VhZ2VNb2RlRGlyZWN0aXZlVW5hcnlJbkV4cGxlZnRsZWZ0X3NwYW5IYXNoTGluZUJyZWFrSW5UaHJvd0xpbmVCcmVha0JlZm9yZUFycm93VW5leHBlY3RlZGdvdFVuZXhwZWN0ZWRUb2tlbldpdGhTdWdnZXN0aW9uc2NhbmRpZGF0ZV9saXN0UmVzZXJ2ZWRXb3JkSW5JbXBvcnRBc3NpZ25Qcm9wZXJ0eUV4cGVjdGVkRXhwZWN0ZWRTZW1pRm9yRXhwclN0bXRleHByQXdhaXRTdGFyUmVzZXJ2ZWRXb3JkSW5PYmpTaG9ydGhhbmRPclBhdE51bGxpc2hDb2FsZXNjaW5nV2l0aExvZ2ljYWxPcE11bHRpcGxlRGVmYXVsdHByZXZpb3VzQ29tbWFBZnRlclJlc3RFbGVtZW50Tm9uTGFzdFJlc3RQYXJhbVNwcmVhZEluUGFyZW5FeHByRW1wdHlQYXJlbkV4cHJJbnZhbGlkUGF0SW52YWxpZEV4cHJOb3RTaW1wbGVBc3NpZ25JbnZhbGlkQXNzaWduVGFyZ2V0RXhwZWN0ZWRJZGVudEV4cGVjdGVkU2VtaUR1cGxpY2F0ZUxhYmVsQXN5bmNHZW5lcmF0b3JOb25Ub3BMZXZlbEltcG9ydEV4cG9ydEltcG9ydEV4cG9ydEluU2NyaXB0SW1wb3J0TWV0YUluU2NyaXB0UGF0VmFyV2l0aG91dEluaXRXaXRoSW5TdHJpY3RSZXR1cm5Ob3RBbGxvd2VkVG9vTWFueVZhckluRm9ySW5IZWFkVmFySW5pdGlhbGl6ZXJJbkZvckluSGVhZExhYmVsbGVkR2VuZXJhdG9yT3JBc3luY0xhYmVsbGVkRnVuY3Rpb25JblN0cmljdFlpZWxkUGFyYW1JbkdlbkF3YWl0UGFyYW1JbkFzeW5jQXdhaXRGb3JTdG10QXdhaXRJbkZ1bmN0aW9uVW50ZXJtaW5hdGVkSlNYQ29udGVudHNFbXB0eUpTWEF0dHJJbnZhbGlkSlNYVmFsdWVKU1hFeHBlY3RlZENsb3NpbmdUYWdGb3JMdEd0SlNYRXhwZWN0ZWRDbG9zaW5nVGFndGFnSW52YWxpZExlYWRpbmdEZWNvcmF0b3JEZWNvcmF0b3JPbkV4cG9ydFRzUmVxdWlyZWRBZnRlck9wdGlvbmFsVHNJbnZhbGlkUGFyYW1Qcm9wUGF0U3BhY2VCZXR3ZWVuSGFzaEFuZElkZW50QXN5bmNDb25zdHJ1Y3RvclByb3BlcnR5TmFtZWRDb25zdHJ1Y3RvclByaXZhdGVDb25zdHJ1Y3RvclByaXZhdGVOYW1lTW9kaWZpZXJDb25zdHJ1Y3RvckFjY2Vzc29yUmVhZE9ubHlNZXRob2RHZW5lcmF0b3JDb25zdHJ1Y3RvckR1cGxpY2F0ZUNvbnN0cnVjdG9yVHNCaW5kaW5nUGF0Q2Fubm90QmVPcHRpb25hbFN1cGVyQ2FsbE9wdGlvbmFsT3B0Q2hhaW5DYW5ub3RGb2xsb3dDb25zdHJ1Y3RvckNhbGxUYWdnZWRUcGxJbk9wdENoYWluVHJhaWxpbmdDb21tYUluc2lkZUltcG9ydEV4cG9ydERlZmF1bHRXaXRoT3V0RnJvbUV4cG9ydEV4cGVjdEZyb21Eb3RzV2l0aG91dElkZW50aWZpZXJOdW1lcmljU2VwYXJhdG9ySXNBbGxvd2VkT25seUJldHdlZW5Ud29EaWdpdHNJbXBvcnRCaW5kaW5nSXNTdHJpbmdFeHBvcnRCaW5kaW5nSXNTdHJpbmdDb25zdERlY2xhcmF0aW9uc1JlcXVpcmVJbml0aWFsaXphdGlvbkR1cGxpY2F0ZWRSZWdFeHBGbGFnc1Vua25vd25SZWdFeHBGbGFnc1RTMTAwM1RTMTAwNVRTMTAwOVRTMTAxNFRTMTAxNVRTMTAyOVRTMTAzMFRTMTAzMVRTMTAzOFRTMTA0MlRTMTA0N1RTMTA0OFRTMTA1NlRTMTA4NVRTMTA4OVRTMTA5MlRTMTA5NlRTMTA5OFRTMTEwMFRTMTEwMlRTMTEwNVRTMTEwNlRTMTEwN1RTMTEwOVRTMTExMFRTMTExNFRTMTExNVRTMTExNlRTMTEyM1RTMTE0MVRTMTE2MlRTMTE2NFRTMTE3MVRTMTE3MlRTMTE3M1RTMTE3NFRTMTE3NVRTMTE4M1RTMTE4NFRTMTE4NVRTMTA5M1RTMTE5NlRTMTI0MlRTMTI0M1RTMTI0NFRTMTI0NVRTMTI2N1RTMTI3M1RTMTI3NFRTMTI3N1RTMjIwNlRTMjIwN1RTMjM2OVRTMjM3MVRTMjQwNlRTMjQxMFRTMjQxNFRTMjQyN1RTMjQ1MlRTMjQ4M1RTMjQ5MVRTMjQ5OVRTMjcwM1RTNDExMlRTODAzOFRTMTgwMTBUU1R5cGVBbm5vdGF0aW9uQWZ0ZXJBc3NpZ25Uc05vbk51bGxBc3NlcnRpb25Ob3RBbGxvd2VkAAAAAAAACAAAAAQAAAB9AAAAV2l0aExhYmVsaW5uZXJub3RlUmVzZXJ2ZWRUeXBlQXNzZXJ0aW9uUmVzZXJ2ZWRBcnJvd1R5cGVQYXJhbQAAAAWuFgB2AAAA/QAAAAEAAABfYXBwbHlfZGVjb3JhdGVkX2Rlc2NyaXB0b3JAc3djL2hlbHBlcnMvXy9fYXBwbHlfZGVjb3JhdGVkX2Rlc2NyaXB0b3JfYXJyYXlfbGlrZV90b19hcnJheUBzd2MvaGVscGVycy9fL19hcnJheV9saWtlX3RvX2FycmF5X2FycmF5X3dpdGhfaG9sZXNAc3djL2hlbHBlcnMvXy9fYXJyYXlfd2l0aF9ob2xlc19hcnJheV93aXRob3V0X2hvbGVzQHN3Yy9oZWxwZXJzL18vX2FycmF5X3dpdGhvdXRfaG9sZXNfYXNzZXJ0X3RoaXNfaW5pdGlhbGl6ZWRAc3djL2hlbHBlcnMvXy9fYXNzZXJ0X3RoaXNfaW5pdGlhbGl6ZWRfYXN5bmNfZ2VuZXJhdG9yQHN3Yy9oZWxwZXJzL18vX2FzeW5jX2dlbmVyYXRvcl9hc3luY19nZW5lcmF0b3JfZGVsZWdhdGVAc3djL2hlbHBlcnMvXy9fYXN5bmNfZ2VuZXJhdG9yX2RlbGVnYXRlX2FzeW5jX2l0ZXJhdG9yQHN3Yy9oZWxwZXJzL18vX2FzeW5jX2l0ZXJhdG9yX2FzeW5jX3RvX2dlbmVyYXRvckBzd2MvaGVscGVycy9fL19hc3luY190b19nZW5lcmF0b3JfYXdhaXRfYXN5bmNfZ2VuZXJhdG9yQHN3Yy9oZWxwZXJzL18vX2F3YWl0X2FzeW5jX2dlbmVyYXRvcl9hd2FpdF92YWx1ZUBzd2MvaGVscGVycy9fL19hd2FpdF92YWx1ZV9jYWxsX3N1cGVyQHN3Yy9oZWxwZXJzL18vX2NhbGxfc3VwZXJfY2hlY2tfcHJpdmF0ZV9yZWRlY2xhcmF0aW9uQHN3Yy9oZWxwZXJzL18vX2NoZWNrX3ByaXZhdGVfcmVkZWNsYXJhdGlvbl9jbGFzc19hcHBseV9kZXNjcmlwdG9yX2Rlc3RydWN0dXJlQHN3Yy9oZWxwZXJzL18vX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZGVzdHJ1Y3R1cmVfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9nZXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9nZXRfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXRfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl91cGRhdGVAc3djL2hlbHBlcnMvXy9fY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl91cGRhdGVfY2xhc3NfY2FsbF9jaGVja0Bzd2MvaGVscGVycy9fL19jbGFzc19jYWxsX2NoZWNrX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2ZpZWxkX2Rlc2NyaXB0b3JAc3djL2hlbHBlcnMvXy9fY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvcl9jbGFzc19leHRyYWN0X2ZpZWxkX2Rlc2NyaXB0b3JAc3djL2hlbHBlcnMvXy9fY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yX2NsYXNzX25hbWVfdGR6X2Vycm9yQHN3Yy9oZWxwZXJzL18vX2NsYXNzX25hbWVfdGR6X2Vycm9yX2NsYXNzX3ByaXZhdGVfZmllbGRfZ2V0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfZ2V0X2NsYXNzX3ByaXZhdGVfZmllbGRfaW5pdEBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX2ZpZWxkX2luaXRfY2xhc3NfcHJpdmF0ZV9maWVsZF9sb29zZV9iYXNlQHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZV9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleUBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleV9jbGFzc19wcml2YXRlX2ZpZWxkX3NldEBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX2ZpZWxkX3NldF9jbGFzc19wcml2YXRlX2ZpZWxkX3VwZGF0ZUBzd2MvaGVscGVycy9fL19jbGFzc19wcml2YXRlX2ZpZWxkX3VwZGF0ZV9jbGFzc19wcml2YXRlX21ldGhvZF9nZXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9tZXRob2RfZ2V0X2NsYXNzX3ByaXZhdGVfbWV0aG9kX2luaXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9tZXRob2RfaW5pdF9jbGFzc19wcml2YXRlX21ldGhvZF9zZXRAc3djL2hlbHBlcnMvXy9fY2xhc3NfcHJpdmF0ZV9tZXRob2Rfc2V0X2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfZ2V0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfZ2V0X2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfc2V0QHN3Yy9oZWxwZXJzL18vX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfc2V0X2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3VwZGF0ZUBzd2MvaGVscGVycy9fL19jbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF91cGRhdGVfY29uc3RydWN0QHN3Yy9oZWxwZXJzL18vX2NvbnN0cnVjdF9jcmVhdGVfY2xhc3NAc3djL2hlbHBlcnMvXy9fY3JlYXRlX2NsYXNzX2RlY29yYXRlQHN3Yy9oZWxwZXJzL18vX2RlY29yYXRlX2RlZmF1bHRzQHN3Yy9oZWxwZXJzL18vX2RlZmF1bHRzX2RlZmluZV9lbnVtZXJhYmxlX3Byb3BlcnRpZXNAc3djL2hlbHBlcnMvXy9fZGVmaW5lX2VudW1lcmFibGVfcHJvcGVydGllc19kZWZpbmVfcHJvcGVydHlAc3djL2hlbHBlcnMvXy9fZGVmaW5lX3Byb3BlcnR5X2V4cG9ydF9zdGFyQHN3Yy9oZWxwZXJzL18vX2V4cG9ydF9zdGFyX2V4dGVuZHNAc3djL2hlbHBlcnMvXy9fZXh0ZW5kc19nZXRAc3djL2hlbHBlcnMvXy9fZ2V0X2dldF9wcm90b3R5cGVfb2ZAc3djL2hlbHBlcnMvXy9fZ2V0X3Byb3RvdHlwZV9vZl9pbmhlcml0c0Bzd2MvaGVscGVycy9fL19pbmhlcml0c19pbmhlcml0c19sb29zZUBzd2MvaGVscGVycy9fL19pbmhlcml0c19sb29zZV9pbml0aWFsaXplcl9kZWZpbmVfcHJvcGVydHlAc3djL2hlbHBlcnMvXy9faW5pdGlhbGl6ZXJfZGVmaW5lX3Byb3BlcnR5X2luaXRpYWxpemVyX3dhcm5pbmdfaGVscGVyQHN3Yy9oZWxwZXJzL18vX2luaXRpYWxpemVyX3dhcm5pbmdfaGVscGVyX2luc3RhbmNlb2ZAc3djL2hlbHBlcnMvXy9faW5zdGFuY2VvZl9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdEBzd2MvaGVscGVycy9fL19pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRAc3djL2hlbHBlcnMvXy9faW50ZXJvcF9yZXF1aXJlX3dpbGRjYXJkX2lzX25hdGl2ZV9mdW5jdGlvbkBzd2MvaGVscGVycy9fL19pc19uYXRpdmVfZnVuY3Rpb25faXRlcmFibGVfdG9fYXJyYXlAc3djL2hlbHBlcnMvXy9faXRlcmFibGVfdG9fYXJyYXlfaXRlcmFibGVfdG9fYXJyYXlfbGltaXRAc3djL2hlbHBlcnMvXy9faXRlcmFibGVfdG9fYXJyYXlfbGltaXRfaXRlcmFibGVfdG9fYXJyYXlfbGltaXRfbG9vc2VAc3djL2hlbHBlcnMvXy9faXRlcmFibGVfdG9fYXJyYXlfbGltaXRfbG9vc2VfanN4QHN3Yy9oZWxwZXJzL18vX2pzeF9uZXdfYXJyb3dfY2hlY2tAc3djL2hlbHBlcnMvXy9fbmV3X2Fycm93X2NoZWNrX25vbl9pdGVyYWJsZV9yZXN0QHN3Yy9oZWxwZXJzL18vX25vbl9pdGVyYWJsZV9yZXN0X25vbl9pdGVyYWJsZV9zcHJlYWRAc3djL2hlbHBlcnMvXy9fbm9uX2l0ZXJhYmxlX3NwcmVhZF9vYmplY3RfZGVzdHJ1Y3R1cmluZ19lbXB0eUBzd2MvaGVscGVycy9fL19vYmplY3RfZGVzdHJ1Y3R1cmluZ19lbXB0eV9vYmplY3Rfc3ByZWFkQHN3Yy9oZWxwZXJzL18vX29iamVjdF9zcHJlYWRfb2JqZWN0X3NwcmVhZF9wcm9wc0Bzd2MvaGVscGVycy9fL19vYmplY3Rfc3ByZWFkX3Byb3BzX29iamVjdF93aXRob3V0X3Byb3BlcnRpZXNAc3djL2hlbHBlcnMvXy9fb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc19vYmplY3Rfd2l0aG91dF9wcm9wZXJ0aWVzX2xvb3NlQHN3Yy9oZWxwZXJzL18vX29iamVjdF93aXRob3V0X3Byb3BlcnRpZXNfbG9vc2VfcG9zc2libGVfY29uc3RydWN0b3JfcmV0dXJuQHN3Yy9oZWxwZXJzL18vX3Bvc3NpYmxlX2NvbnN0cnVjdG9yX3JldHVybl9yZWFkX29ubHlfZXJyb3JAc3djL2hlbHBlcnMvXy9fcmVhZF9vbmx5X2Vycm9yX3NldEBzd2MvaGVscGVycy9fL19zZXRfc2V0X3Byb3RvdHlwZV9vZkBzd2MvaGVscGVycy9fL19zZXRfcHJvdG90eXBlX29mX3NraXBfZmlyc3RfZ2VuZXJhdG9yX25leHRAc3djL2hlbHBlcnMvXy9fc2tpcF9maXJzdF9nZW5lcmF0b3JfbmV4dF9zbGljZWRfdG9fYXJyYXlAc3djL2hlbHBlcnMvXy9fc2xpY2VkX3RvX2FycmF5X3NsaWNlZF90b19hcnJheV9sb29zZUBzd2MvaGVscGVycy9fL19zbGljZWRfdG9fYXJyYXlfbG9vc2Vfc3VwZXJfcHJvcF9iYXNlQHN3Yy9oZWxwZXJzL18vX3N1cGVyX3Byb3BfYmFzZV90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbEBzd2MvaGVscGVycy9fL190YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZUBzd2MvaGVscGVycy9fL190YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZV90aHJvd0Bzd2MvaGVscGVycy9fL190aHJvd190b19hcnJheUBzd2MvaGVscGVycy9fL190b19hcnJheV90b19jb25zdW1hYmxlX2FycmF5QHN3Yy9oZWxwZXJzL18vX3RvX2NvbnN1bWFibGVfYXJyYXlfdG9fcHJpbWl0aXZlQHN3Yy9oZWxwZXJzL18vX3RvX3ByaW1pdGl2ZV90b19wcm9wZXJ0eV9rZXlAc3djL2hlbHBlcnMvXy9fdG9fcHJvcGVydHlfa2V5X3VwZGF0ZUBzd2MvaGVscGVycy9fL191cGRhdGVfdHlwZV9vZkBzd2MvaGVscGVycy9fL190eXBlX29mX3Vuc3VwcG9ydGVkX2l0ZXJhYmxlX3RvX2FycmF5QHN3Yy9oZWxwZXJzL18vX3Vuc3VwcG9ydGVkX2l0ZXJhYmxlX3RvX2FycmF5X3dyYXBfYXN5bmNfZ2VuZXJhdG9yQHN3Yy9oZWxwZXJzL18vX3dyYXBfYXN5bmNfZ2VuZXJhdG9yX3dyYXBfbmF0aXZlX3N1cGVyQHN3Yy9oZWxwZXJzL18vX3dyYXBfbmF0aXZlX3N1cGVyX3dyaXRlX29ubHlfZXJyb3JAc3djL2hlbHBlcnMvXy9fd3JpdGVfb25seV9lcnJvcl9jbGFzc19wcml2YXRlX2ZpZWxkX2Rlc3RydWN0dXJlQHN3Yy9oZWxwZXJzL18vX2NsYXNzX3ByaXZhdGVfZmllbGRfZGVzdHJ1Y3R1cmVfY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfZGVzdHJ1Y3R1cmVAc3djL2hlbHBlcnMvXy9fY2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfZGVzdHJ1Y3R1cmVfY2xhc3Nfc3RhdGljX3ByaXZhdGVfbWV0aG9kX2dldEBzd2MvaGVscGVycy9fL19jbGFzc19zdGF0aWNfcHJpdmF0ZV9tZXRob2RfZ2V0X2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2Vzc0Bzd2MvaGVscGVycy9fL19jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3NfaXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0QHN3Yy9oZWxwZXJzL18vX2lzX25hdGl2ZV9yZWZsZWN0X2NvbnN0cnVjdF9jcmVhdGVfc3VwZXJAc3djL2hlbHBlcnMvXy9fY3JlYXRlX3N1cGVyX2NyZWF0ZV9mb3Jfb2ZfaXRlcmF0b3JfaGVscGVyX2xvb3NlQHN3Yy9oZWxwZXJzL18vX2NyZWF0ZV9mb3Jfb2ZfaXRlcmF0b3JfaGVscGVyX2xvb3NlX3RzX2RlY29yYXRlQHN3Yy9oZWxwZXJzL18vX3RzX2RlY29yYXRlX3RzX2dlbmVyYXRvckBzd2MvaGVscGVycy9fL190c19nZW5lcmF0b3JfdHNfbWV0YWRhdGFAc3djL2hlbHBlcnMvXy9fdHNfbWV0YWRhdGFfdHNfcGFyYW1Ac3djL2hlbHBlcnMvXy9fdHNfcGFyYW1fdHNfdmFsdWVzQHN3Yy9oZWxwZXJzL18vX3RzX3ZhbHVlc190c19hZGRfZGlzcG9zYWJsZV9yZXNvdXJjZUBzd2MvaGVscGVycy9fL190c19hZGRfZGlzcG9zYWJsZV9yZXNvdXJjZV90c19kaXNwb3NlX3Jlc291cmNlc0Bzd2MvaGVscGVycy9fL190c19kaXNwb3NlX3Jlc291cmNlc19hcHBseV9kZWNzXzIyMDNfckBzd2MvaGVscGVycy9fL19hcHBseV9kZWNzXzIyMDNfcl9pZGVudGl0eUBzd2MvaGVscGVycy9fL19pZGVudGl0eV9kaXNwb3NlQHN3Yy9oZWxwZXJzL18vX2Rpc3Bvc2VfdXNpbmdAc3djL2hlbHBlcnMvXy9fdXNpbmdfdXNpbmdfY3R4QHN3Yy9oZWxwZXJzL18vX3VzaW5nX2N0eGFwcGx5X2RlY29yYXRlZF9kZXNjcmlwdG9yYXJyYXlfbGlrZV90b19hcnJheWFycmF5X3dpdGhfaG9sZXNhcnJheV93aXRob3V0X2hvbGVzYXNzZXJ0X3RoaXNfaW5pdGlhbGl6ZWRhc3luY19nZW5lcmF0b3Jhc3luY19nZW5lcmF0b3JfZGVsZWdhdGVhc3luY19pdGVyYXRvcmFzeW5jX3RvX2dlbmVyYXRvcmF3YWl0X2FzeW5jX2dlbmVyYXRvcmF3YWl0X3ZhbHVlY2FsbF9zdXBlcmNoZWNrX3ByaXZhdGVfcmVkZWNsYXJhdGlvbmNsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZGVzdHJ1Y3R1cmVjbGFzc19hcHBseV9kZXNjcmlwdG9yX2dldGNsYXNzX2FwcGx5X2Rlc2NyaXB0b3Jfc2V0Y2xhc3NfYXBwbHlfZGVzY3JpcHRvcl91cGRhdGVjbGFzc19jYWxsX2NoZWNrY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvcmNsYXNzX2V4dHJhY3RfZmllbGRfZGVzY3JpcHRvcmNsYXNzX25hbWVfdGR6X2Vycm9yY2xhc3NfcHJpdmF0ZV9maWVsZF9nZXRjbGFzc19wcml2YXRlX2ZpZWxkX2luaXRjbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2Jhc2VjbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleWNsYXNzX3ByaXZhdGVfZmllbGRfc2V0Y2xhc3NfcHJpdmF0ZV9maWVsZF91cGRhdGVjbGFzc19wcml2YXRlX21ldGhvZF9nZXRjbGFzc19wcml2YXRlX21ldGhvZF9pbml0Y2xhc3NfcHJpdmF0ZV9tZXRob2Rfc2V0Y2xhc3Nfc3RhdGljX3ByaXZhdGVfZmllbGRfc3BlY19nZXRjbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9zcGVjX3NldGNsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3VwZGF0ZWNvbnN0cnVjdGNyZWF0ZV9jbGFzc2RlY29yYXRlZGVmYXVsdHNkZWZpbmVfZW51bWVyYWJsZV9wcm9wZXJ0aWVzZGVmaW5lX3Byb3BlcnR5ZXhwb3J0X3N0YXJnZXRfcHJvdG90eXBlX29maW5oZXJpdHNpbmhlcml0c19sb29zZWluaXRpYWxpemVyX2RlZmluZV9wcm9wZXJ0eWluaXRpYWxpemVyX3dhcm5pbmdfaGVscGVyaW50ZXJvcF9yZXF1aXJlX2RlZmF1bHRpbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmRpc19uYXRpdmVfZnVuY3Rpb25pdGVyYWJsZV90b19hcnJheWl0ZXJhYmxlX3RvX2FycmF5X2xpbWl0aXRlcmFibGVfdG9fYXJyYXlfbGltaXRfbG9vc2Vqc3huZXdfYXJyb3dfY2hlY2tub25faXRlcmFibGVfcmVzdG5vbl9pdGVyYWJsZV9zcHJlYWRvYmplY3RfZGVzdHJ1Y3R1cmluZ19lbXB0eW9iamVjdF9zcHJlYWRvYmplY3Rfc3ByZWFkX3Byb3Bzb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc29iamVjdF93aXRob3V0X3Byb3BlcnRpZXNfbG9vc2Vwb3NzaWJsZV9jb25zdHJ1Y3Rvcl9yZXR1cm5yZWFkX29ubHlfZXJyb3JzZXRfcHJvdG90eXBlX29mc2tpcF9maXJzdF9nZW5lcmF0b3JfbmV4dHNsaWNlZF90b19hcnJheXNsaWNlZF90b19hcnJheV9sb29zZXN1cGVyX3Byb3BfYmFzZXRhZ2dlZF90ZW1wbGF0ZV9saXRlcmFsdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWxfbG9vc2V0b19hcnJheXRvX2NvbnN1bWFibGVfYXJyYXl0b19wcmltaXRpdmV0b19wcm9wZXJ0eV9rZXl1cGRhdGV0eXBlX29mdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXl3cmFwX2FzeW5jX2dlbmVyYXRvcndyYXBfbmF0aXZlX3N1cGVyd3JpdGVfb25seV9lcnJvcmNsYXNzX3ByaXZhdGVfZmllbGRfZGVzdHJ1Y3R1cmVjbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZWNsYXNzX3N0YXRpY19wcml2YXRlX21ldGhvZF9nZXRjbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3Npc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3RjcmVhdGVfc3VwZXJjcmVhdGVfZm9yX29mX2l0ZXJhdG9yX2hlbHBlcl9sb29zZXRzX2RlY29yYXRldHNfZ2VuZXJhdG9ydHNfbWV0YWRhdGF0c19wYXJhbXRzX3ZhbHVlc3RzX2FkZF9kaXNwb3NhYmxlX3Jlc291cmNldHNfZGlzcG9zZV9yZXNvdXJjZXNhcHBseV9kZWNzXzIyMDNfcmlkZW50aXR5ZGlzcG9zZXVzaW5nX2N0eE1hcmtlciBwcm92aWRlZCB0byByZXNvbHZlciBzaG91bGQgbm90IGJlIHRoZSByb290IG1hcmsAAK+tFgA3AAAA6tkXAHcAAACKAAAABQAAACRuYW1lL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdHJhbnNmb3Jtc19iYXNlLTcuMC4wL3NyYy9oZWxwZXJzL21vZC5yc2ludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IEVycm9yIG9jY3VycmVkIHdoaWxlIHBhcnNpbmcgZXJyb3I6IAAAAHuuFgBOAAAABa4WAHYAAAAoAAAACQAAAEBzd2MvaGVscGVycy9fL1/krhYAEAAAAGlkcmVzb3VyY2VfX190c1+zBAAAZnVuY3Rpb24gX2FwcGx5X2RlY29yYXRlZF9kZXNjcmlwdG9yKHRhcmdldCwgcHJvcGVydHksIGRlY29yYXRvcnMsIGRlc2NyaXB0b3IsIGNvbnRleHQpIHsKICAgIHZhciBkZXNjID0ge307CiAgICBPYmplY3RbImtlIiArICJ5cyJdKGRlc2NyaXB0b3IpLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgZGVzY1trZXldID0gZGVzY3JpcHRvcltrZXldOwogICAgfSk7CiAgICBkZXNjLmVudW1lcmFibGUgPSAhIWRlc2MuZW51bWVyYWJsZTsKICAgIGRlc2MuY29uZmlndXJhYmxlID0gISFkZXNjLmNvbmZpZ3VyYWJsZTsKICAgIGlmICgidmFsdWUiIGluIGRlc2MgfHwgZGVzYy5pbml0aWFsaXplcikgewogICAgICAgIGRlc2Mud3JpdGFibGUgPSB0cnVlOwogICAgfQogICAgZGVzYyA9IGRlY29yYXRvcnMuc2xpY2UoKS5yZXZlcnNlKCkucmVkdWNlKGZ1bmN0aW9uKGRlc2MsIGRlY29yYXRvcikgewogICAgICAgIHJldHVybiBkZWNvcmF0b3IgPyBkZWNvcmF0b3IodGFyZ2V0LCBwcm9wZXJ0eSwgZGVzYykgfHwgZGVzYyA6IGRlc2M7CiAgICB9LCBkZXNjKTsKICAgIHZhciBoYXNBY2Nlc3NvciA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkZXNjLCAiZ2V0IikgfHwgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGRlc2MsICJzZXQiKTsKICAgIGlmIChjb250ZXh0ICYmIGRlc2MuaW5pdGlhbGl6ZXIgIT09IHZvaWQgMCAmJiAhaGFzQWNjZXNzb3IpIHsKICAgICAgICBkZXNjLnZhbHVlID0gZGVzYy5pbml0aWFsaXplciA/IGRlc2MuaW5pdGlhbGl6ZXIuY2FsbChjb250ZXh0KSA6IHZvaWQgMDsKICAgICAgICBkZXNjLmluaXRpYWxpemVyID0gdW5kZWZpbmVkOwogICAgfQogICAgaWYgKGhhc0FjY2Vzc29yKSB7CiAgICAgICAgZGVsZXRlIGRlc2Mud3JpdGFibGU7CiAgICAgICAgZGVsZXRlIGRlc2MuaW5pdGlhbGl6ZXI7CiAgICAgICAgZGVsZXRlIGRlc2MudmFsdWU7CiAgICB9CiAgICBpZiAoZGVzYy5pbml0aWFsaXplciA9PT0gdm9pZCAwKSB7CiAgICAgICAgT2JqZWN0WyJkZWZpbmUiICsgIlByb3BlcnR5Il0odGFyZ2V0LCBwcm9wZXJ0eSwgZGVzYyk7CiAgICAgICAgZGVzYyA9IG51bGw7CiAgICB9CiAgICByZXR1cm4gZGVzYzsKfQpmdW5jdGlvbiBfYXJyYXlfbGlrZV90b19hcnJheShhcnIsIGxlbikgewogICAgaWYgKGxlbiA9PSBudWxsIHx8IGxlbiA+IGFyci5sZW5ndGgpIGxlbiA9IGFyci5sZW5ndGg7CiAgICBmb3IgKHZhciBpID0gMCwgYXJyMiA9IG5ldyBBcnJheShsZW4pOyBpIDwgbGVuOyBpKyspIGFycjJbaV0gPSBhcnJbaV07CiAgICByZXR1cm4gYXJyMjsKfQpmdW5jdGlvbiBfYXJyYXlfd2l0aF9ob2xlcyhhcnIpIHsKICAgIGlmIChBcnJheS5pc0FycmF5KGFycikpIHJldHVybiBhcnI7Cn0KZnVuY3Rpb24gX2FycmF5X3dpdGhvdXRfaG9sZXMoYXJyKSB7CiAgICBpZiAoQXJyYXkuaXNBcnJheShhcnIpKSByZXR1cm4gX2FycmF5X2xpa2VfdG9fYXJyYXkoYXJyKTsKfQpmdW5jdGlvbiBfYXNzZXJ0X3RoaXNfaW5pdGlhbGl6ZWQoc2VsZikgewogICAgaWYgKHNlbGYgPT09IHZvaWQgMCkgewogICAgICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigidGhpcyBoYXNuJ3QgYmVlbiBpbml0aWFsaXNlZCAtIHN1cGVyKCkgaGFzbid0IGJlZW4gY2FsbGVkIik7CiAgICB9CiAgICByZXR1cm4gc2VsZjsKfQpmdW5jdGlvbiBfYXN5bmNfZ2VuZXJhdG9yKGdlbikgewogICAgdmFyIGZyb250LCBiYWNrOwogICAgZnVuY3Rpb24gc2VuZChrZXksIGFyZykgewogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgdmFyIHJlcXVlc3QgPSB7IGtleToga2V5LCBhcmc6IGFyZywgcmVzb2x2ZTogcmVzb2x2ZSwgcmVqZWN0OiByZWplY3QsIG5leHQ6IG51bGwgfTsKICAgICAgICAgICAgaWYgKGJhY2spIHsKICAgICAgICAgICAgICAgIGJhY2sgPSBiYWNrLm5leHQgPSByZXF1ZXN0OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgZnJvbnQgPSBiYWNrID0gcmVxdWVzdDsKICAgICAgICAgICAgICAgIHJlc3VtZShrZXksIGFyZyk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlc3VtZShrZXksIGFyZykgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciByZXN1bHQgPSBnZW5ba2V5XShhcmcpOwogICAgICAgICAgICB2YXIgdmFsdWUgPSByZXN1bHQudmFsdWU7CiAgICAgICAgICAgIHZhciB3cmFwcGVkQXdhaXQgPSB2YWx1ZSBpbnN0YW5jZW9mIF9hd2FpdF92YWx1ZTsKICAgICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHdyYXBwZWRBd2FpdCA/IHZhbHVlLndyYXBwZWQgOiB2YWx1ZSkudGhlbihmdW5jdGlvbihhcmcpIHsKICAgICAgICAgICAgICAgIGlmICh3cmFwcGVkQXdhaXQpIHsKICAgICAgICAgICAgICAgICAgICByZXN1bWUoIm5leHQiLCBhcmcpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHNldHRsZShyZXN1bHQuZG9uZSA/ICJyZXR1cm4iIDogIm5vcm1hbCIsIGFyZyk7CiAgICAgICAgICAgIH0sIGZ1bmN0aW9uKGVycikgewogICAgICAgICAgICAgICAgcmVzdW1lKCJ0aHJvdyIsIGVycik7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICBzZXR0bGUoInRocm93IiwgZXJyKTsKICAgICAgICB9CiAgICB9CiAgICBmdW5jdGlvbiBzZXR0bGUodHlwZSwgdmFsdWUpIHsKICAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgICAgY2FzZSAicmV0dXJuIjoKICAgICAgICAgICAgICAgIGZyb250LnJlc29sdmUoeyB2YWx1ZTogdmFsdWUsIGRvbmU6IHRydWUgfSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAidGhyb3ciOgogICAgICAgICAgICAgICAgZnJvbnQucmVqZWN0KHZhbHVlKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgZnJvbnQucmVzb2x2ZSh7IHZhbHVlOiB2YWx1ZSwgZG9uZTogZmFsc2UgfSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgZnJvbnQgPSBmcm9udC5uZXh0OwogICAgICAgIGlmIChmcm9udCkgewogICAgICAgICAgICByZXN1bWUoZnJvbnQua2V5LCBmcm9udC5hcmcpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGJhY2sgPSBudWxsOwogICAgICAgIH0KICAgIH0KICAgIHRoaXMuX2ludm9rZSA9IHNlbmQ7CiAgICBpZiAodHlwZW9mIGdlbi5yZXR1cm4gIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICB0aGlzLnJldHVybiA9IHVuZGVmaW5lZDsKICAgIH0KfQppZiAodHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuYXN5bmNJdGVyYXRvcikgewogICAgX2FzeW5jX2dlbmVyYXRvci5wcm90b3R5cGVbU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIHRoaXM7CiAgICB9Owp9Cl9hc3luY19nZW5lcmF0b3IucHJvdG90eXBlLm5leHQgPSBmdW5jdGlvbihhcmcpIHsKICAgIHJldHVybiB0aGlzLl9pbnZva2UoIm5leHQiLCBhcmcpOwp9OwpfYXN5bmNfZ2VuZXJhdG9yLnByb3RvdHlwZS50aHJvdyA9IGZ1bmN0aW9uKGFyZykgewogICAgcmV0dXJuIHRoaXMuX2ludm9rZSgidGhyb3ciLCBhcmcpOwp9OwpfYXN5bmNfZ2VuZXJhdG9yLnByb3RvdHlwZS5yZXR1cm4gPSBmdW5jdGlvbihhcmcpIHsKICAgIHJldHVybiB0aGlzLl9pbnZva2UoInJldHVybiIsIGFyZyk7Cn07CmZ1bmN0aW9uIF9hc3luY19nZW5lcmF0b3JfZGVsZWdhdGUoaW5uZXIsIGF3YWl0V3JhcCkgewogICAgdmFyIGl0ZXIgPSB7fSwgd2FpdGluZyA9IGZhbHNlOwogICAgZnVuY3Rpb24gcHVtcChrZXksIHZhbHVlKSB7CiAgICAgICAgd2FpdGluZyA9IHRydWU7CiAgICAgICAgdmFsdWUgPSBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlKSB7CiAgICAgICAgICAgIHJlc29sdmUoaW5uZXJba2V5XSh2YWx1ZSkpOwogICAgICAgIH0pOwogICAgICAgIHJldHVybiB7IGRvbmU6IGZhbHNlLCB2YWx1ZTogYXdhaXRXcmFwKHZhbHVlKSB9OwogICAgfQogICAgaWYgKHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yKSB7CiAgICAgICAgaXRlcltTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzOwogICAgICAgIH07CiAgICB9CiAgICBpdGVyLm5leHQgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgIGlmICh3YWl0aW5nKSB7CiAgICAgICAgICAgIHdhaXRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgIH0KICAgICAgICByZXR1cm4gcHVtcCgibmV4dCIsIHZhbHVlKTsKICAgIH07CiAgICBpZiAodHlwZW9mIGlubmVyLnRocm93ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgaXRlci50aHJvdyA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgIGlmICh3YWl0aW5nKSB7CiAgICAgICAgICAgICAgICB3YWl0aW5nID0gZmFsc2U7CiAgICAgICAgICAgICAgICB0aHJvdyB2YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gcHVtcCgidGhyb3ciLCB2YWx1ZSk7CiAgICAgICAgfTsKICAgIH0KICAgIGlmICh0eXBlb2YgaW5uZXIucmV0dXJuID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgaXRlci5yZXR1cm4gPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXR1cm4gcHVtcCgicmV0dXJuIiwgdmFsdWUpOwogICAgICAgIH07CiAgICB9CiAgICByZXR1cm4gaXRlcjsKfQpmdW5jdGlvbiBfYXN5bmNfaXRlcmF0b3IoaXRlcmFibGUpIHsKICAgIHZhciBtZXRob2QsIGFzeW5jLCBzeW5jLCByZXRyeSA9IDI7CiAgICBmb3IgKCJ1bmRlZmluZWQiICE9IHR5cGVvZiBTeW1ib2wgJiYgKGFzeW5jID0gU3ltYm9sLmFzeW5jSXRlcmF0b3IsIHN5bmMgPSBTeW1ib2wuaXRlcmF0b3IpOyByZXRyeS0tOykgewogICAgICAgIGlmIChhc3luYyAmJiBudWxsICE9IChtZXRob2QgPSBpdGVyYWJsZVthc3luY10pKSByZXR1cm4gbWV0aG9kLmNhbGwoaXRlcmFibGUpOwogICAgICAgIGlmIChzeW5jICYmIG51bGwgIT0gKG1ldGhvZCA9IGl0ZXJhYmxlW3N5bmNdKSkgcmV0dXJuIG5ldyBBc3luY0Zyb21TeW5jSXRlcmF0b3IobWV0aG9kLmNhbGwoaXRlcmFibGUpKTsKICAgICAgICBhc3luYyA9ICJAQGFzeW5jSXRlcmF0b3IiLCBzeW5jID0gIkBAaXRlcmF0b3IiOwogICAgfQogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IGlzIG5vdCBhc3luYyBpdGVyYWJsZSIpOwp9CmZ1bmN0aW9uIEFzeW5jRnJvbVN5bmNJdGVyYXRvcihzKSB7CiAgICBmdW5jdGlvbiBBc3luY0Zyb21TeW5jSXRlcmF0b3JDb250aW51YXRpb24ocikgewogICAgICAgIGlmIChPYmplY3QocikgIT09IHIpIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgVHlwZUVycm9yKHIgKyAiIGlzIG5vdCBhbiBvYmplY3QuIikpOwogICAgICAgIHZhciBkb25lID0gci5kb25lOwogICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoci52YWx1ZSkudGhlbihmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICByZXR1cm4geyB2YWx1ZTogdmFsdWUsIGRvbmU6IGRvbmUgfTsKICAgICAgICB9KTsKICAgIH0KICAgIHJldHVybiBBc3luY0Zyb21TeW5jSXRlcmF0b3IgPSBmdW5jdGlvbihzKSB7CiAgICAgICAgdGhpcy5zID0gcywgdGhpcy5uID0gcy5uZXh0OwogICAgfSwKICAgICAgICBBc3luY0Zyb21TeW5jSXRlcmF0b3IucHJvdG90eXBlID0gewogICAgICAgICAgICBzOiBudWxsLAogICAgICAgICAgICBuOiBudWxsLAogICAgICAgICAgICBuZXh0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBBc3luY0Zyb21TeW5jSXRlcmF0b3JDb250aW51YXRpb24odGhpcy5uLmFwcGx5KHRoaXMucywgYXJndW1lbnRzKSk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHJldHVybjogZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgICAgICAgIHZhciByZXQgPSB0aGlzLnMucmV0dXJuOwogICAgICAgICAgICAgICAgcmV0dXJuIHZvaWQgMCA9PT0gcmV0CiAgICAgICAgICAgICAgICAgICAgPyBQcm9taXNlLnJlc29sdmUoeyB2YWx1ZTogdmFsdWUsIGRvbmU6ICEwIH0pCiAgICAgICAgICAgICAgICAgICAgOiBBc3luY0Zyb21TeW5jSXRlcmF0b3JDb250aW51YXRpb24ocmV0LmFwcGx5KHRoaXMucywgYXJndW1lbnRzKSk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHRocm93OiBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAgICAgdmFyIHRociA9IHRoaXMucy5yZXR1cm47CiAgICAgICAgICAgICAgICByZXR1cm4gdm9pZCAwID09PSB0aHIgPyBQcm9taXNlLnJlamVjdCh2YWx1ZSkgOiBBc3luY0Zyb21TeW5jSXRlcmF0b3JDb250aW51YXRpb24odGhyLmFwcGx5KHRoaXMucywgYXJndW1lbnRzKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIG5ldyBBc3luY0Zyb21TeW5jSXRlcmF0b3Iocyk7Cn0KZnVuY3Rpb24gYXN5bmNHZW5lcmF0b3JTdGVwKGdlbiwgcmVzb2x2ZSwgcmVqZWN0LCBfbmV4dCwgX3Rocm93LCBrZXksIGFyZykgewogICAgdHJ5IHsKICAgICAgICB2YXIgaW5mbyA9IGdlbltrZXldKGFyZyk7CiAgICAgICAgdmFyIHZhbHVlID0gaW5mby52YWx1ZTsKICAgIH0gY2F0Y2ggKGVycm9yKSB7CiAgICAgICAgcmVqZWN0KGVycm9yKTsKICAgICAgICByZXR1cm47CiAgICB9CiAgICBpZiAoaW5mby5kb25lKSB7CiAgICAgICAgcmVzb2x2ZSh2YWx1ZSk7CiAgICB9IGVsc2UgewogICAgICAgIFByb21pc2UucmVzb2x2ZSh2YWx1ZSkudGhlbihfbmV4dCwgX3Rocm93KTsKICAgIH0KfQpmdW5jdGlvbiBfYXN5bmNfdG9fZ2VuZXJhdG9yKGZuKSB7CiAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHNlbGYgPSB0aGlzLCBhcmdzID0gYXJndW1lbnRzOwogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgICAgdmFyIGdlbiA9IGZuLmFwcGx5KHNlbGYsIGFyZ3MpOwogICAgICAgICAgICBmdW5jdGlvbiBfbmV4dCh2YWx1ZSkgewogICAgICAgICAgICAgICAgYXN5bmNHZW5lcmF0b3JTdGVwKGdlbiwgcmVzb2x2ZSwgcmVqZWN0LCBfbmV4dCwgX3Rocm93LCAibmV4dCIsIHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBmdW5jdGlvbiBfdGhyb3coZXJyKSB7CiAgICAgICAgICAgICAgICBhc3luY0dlbmVyYXRvclN0ZXAoZ2VuLCByZXNvbHZlLCByZWplY3QsIF9uZXh0LCBfdGhyb3csICJ0aHJvdyIsIGVycik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgX25leHQodW5kZWZpbmVkKTsKICAgICAgICB9KTsKICAgIH07Cn0KZnVuY3Rpb24gX2F3YWl0X2FzeW5jX2dlbmVyYXRvcih2YWx1ZSkgewogICAgcmV0dXJuIG5ldyBfYXdhaXRfdmFsdWUodmFsdWUpOwp9CmZ1bmN0aW9uIF9hd2FpdF92YWx1ZSh2YWx1ZSkgewogICAgdGhpcy53cmFwcGVkID0gdmFsdWU7Cn0KZnVuY3Rpb24gX2NhbGxfc3VwZXIoX3RoaXMsIGRlcml2ZWQsIGFyZ3MpIHsKICAgIC8vIFN1cGVyCiAgICBkZXJpdmVkID0gX2dldF9wcm90b3R5cGVfb2YoZGVyaXZlZCk7CiAgICByZXR1cm4gX3Bvc3NpYmxlX2NvbnN0cnVjdG9yX3JldHVybigKICAgICAgICBfdGhpcywKICAgICAgICBfaXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0KCkKICAgICAgICAgICAgLy8gTk9URTogVGhpcyBkb2Vzbid0IHdvcmsgaWYgdGhpcy5fX3Byb3RvX18uY29uc3RydWN0b3IgaGFzIGJlZW4gbW9kaWZpZWQuCiAgICAgICAgICAgID8gUmVmbGVjdC5jb25zdHJ1Y3QoZGVyaXZlZCwgYXJncyB8fCBbXSwgX2dldF9wcm90b3R5cGVfb2YoX3RoaXMpLmNvbnN0cnVjdG9yKQogICAgICAgICAgICA6IGRlcml2ZWQuYXBwbHkoX3RoaXMsIGFyZ3MpCiAgICApOwp9CmZ1bmN0aW9uIF9jaGVja19wcml2YXRlX3JlZGVjbGFyYXRpb24ob2JqLCBwcml2YXRlQ29sbGVjdGlvbikgewogICAgaWYgKHByaXZhdGVDb2xsZWN0aW9uLmhhcyhvYmopKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGluaXRpYWxpemUgdGhlIHNhbWUgcHJpdmF0ZSBlbGVtZW50cyB0d2ljZSBvbiBhbiBvYmplY3QiKTsKICAgIH0KfQpmdW5jdGlvbiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9kZXN0cnVjdHVyZShyZWNlaXZlciwgZGVzY3JpcHRvcikgewogICAgaWYgKGRlc2NyaXB0b3Iuc2V0KSB7CiAgICAgICAgaWYgKCEoIl9fZGVzdHJPYmoiIGluIGRlc2NyaXB0b3IpKSB7CiAgICAgICAgICAgIGRlc2NyaXB0b3IuX19kZXN0ck9iaiA9IHsKICAgICAgICAgICAgICAgIHNldCB2YWx1ZSh2KSB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRvci5zZXQuY2FsbChyZWNlaXZlciwgdik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIHJldHVybiBkZXNjcmlwdG9yLl9fZGVzdHJPYmo7CiAgICB9IGVsc2UgewogICAgICAgIGlmICghZGVzY3JpcHRvci53cml0YWJsZSkgewogICAgICAgICAgICAvLyBUaGlzIHNob3VsZCBvbmx5IHRocm93IGluIHN0cmljdCBtb2RlLCBidXQgY2xhc3MgYm9kaWVzIGFyZQogICAgICAgICAgICAvLyBhbHdheXMgc3RyaWN0IGFuZCBwcml2YXRlIGZpZWxkcyBjYW4gb25seSBiZSB1c2VkIGluc2lkZQogICAgICAgICAgICAvLyBjbGFzcyBib2RpZXMuCiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byBzZXQgcmVhZCBvbmx5IHByaXZhdGUgZmllbGQiKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7CiAgICB9Cn0KZnVuY3Rpb24gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZ2V0KHJlY2VpdmVyLCBkZXNjcmlwdG9yKSB7CiAgICBpZiAoZGVzY3JpcHRvci5nZXQpIHsKICAgICAgICByZXR1cm4gZGVzY3JpcHRvci5nZXQuY2FsbChyZWNlaXZlcik7CiAgICB9CiAgICByZXR1cm4gZGVzY3JpcHRvci52YWx1ZTsKfQpmdW5jdGlvbiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IsIHZhbHVlKSB7CiAgICBpZiAoZGVzY3JpcHRvci5zZXQpIHsKICAgICAgICBkZXNjcmlwdG9yLnNldC5jYWxsKHJlY2VpdmVyLCB2YWx1ZSk7CiAgICB9IGVsc2UgewogICAgICAgIGlmICghZGVzY3JpcHRvci53cml0YWJsZSkgewogICAgICAgICAgICAvLyBUaGlzIHNob3VsZCBvbmx5IHRocm93IGluIHN0cmljdCBtb2RlLCBidXQgY2xhc3MgYm9kaWVzIGFyZQogICAgICAgICAgICAvLyBhbHdheXMgc3RyaWN0IGFuZCBwcml2YXRlIGZpZWxkcyBjYW4gb25seSBiZSB1c2VkIGluc2lkZQogICAgICAgICAgICAvLyBjbGFzcyBib2RpZXMuCiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byBzZXQgcmVhZCBvbmx5IHByaXZhdGUgZmllbGQiKTsKICAgICAgICB9CiAgICAgICAgZGVzY3JpcHRvci52YWx1ZSA9IHZhbHVlOwogICAgfQp9CmZ1bmN0aW9uIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3VwZGF0ZShyZWNlaXZlciwgZGVzY3JpcHRvcikgewogICAgaWYgKGRlc2NyaXB0b3Iuc2V0KSB7CiAgICAgICAgaWYgKCFkZXNjcmlwdG9yLmdldCkgewogICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJhdHRlbXB0ZWQgdG8gcmVhZCBzZXQgb25seSBwcml2YXRlIGZpZWxkIik7CiAgICAgICAgfQogICAgICAgIGlmICghKCJfX2Rlc3RyV3JhcHBlciIgaW4gZGVzY3JpcHRvcikpIHsKICAgICAgICAgICAgZGVzY3JpcHRvci5fX2Rlc3RyV3JhcHBlciA9IHsKICAgICAgICAgICAgICAgIHNldCB2YWx1ZSh2KSB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRvci5zZXQuY2FsbChyZWNlaXZlciwgdik7CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgZ2V0IHZhbHVlKCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBkZXNjcmlwdG9yLmdldC5jYWxsKHJlY2VpdmVyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3IuX19kZXN0cldyYXBwZXI7CiAgICB9IGVsc2UgewogICAgICAgIGlmICghZGVzY3JpcHRvci53cml0YWJsZSkgewogICAgICAgICAgICAvLyBUaGlzIHNob3VsZCBvbmx5IHRocm93IGluIHN0cmljdCBtb2RlLCBidXQgY2xhc3MgYm9kaWVzIGFyZQogICAgICAgICAgICAvLyBhbHdheXMgc3RyaWN0IGFuZCBwcml2YXRlIGZpZWxkcyBjYW4gb25seSBiZSB1c2VkIGluc2lkZQogICAgICAgICAgICAvLyBjbGFzcyBib2RpZXMuCiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byBzZXQgcmVhZCBvbmx5IHByaXZhdGUgZmllbGQiKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7CiAgICB9Cn0KZnVuY3Rpb24gX2NsYXNzX2NhbGxfY2hlY2soaW5zdGFuY2UsIENvbnN0cnVjdG9yKSB7CiAgICBpZiAoIShpbnN0YW5jZSBpbnN0YW5jZW9mIENvbnN0cnVjdG9yKSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBjYWxsIGEgY2xhc3MgYXMgYSBmdW5jdGlvbiIpOwogICAgfQp9CmZ1bmN0aW9uIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yKGRlc2NyaXB0b3IsIGFjdGlvbikgewogICAgaWYgKGRlc2NyaXB0b3IgPT09IHVuZGVmaW5lZCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byAiICsgYWN0aW9uICsgIiBwcml2YXRlIHN0YXRpYyBmaWVsZCBiZWZvcmUgaXRzIGRlY2xhcmF0aW9uIik7CiAgICB9Cn0KZnVuY3Rpb24gX2NsYXNzX2V4dHJhY3RfZmllbGRfZGVzY3JpcHRvcihyZWNlaXZlciwgcHJpdmF0ZU1hcCwgYWN0aW9uKSB7CiAgICBpZiAoIXByaXZhdGVNYXAuaGFzKHJlY2VpdmVyKSkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoImF0dGVtcHRlZCB0byAiICsgYWN0aW9uICsgIiBwcml2YXRlIGZpZWxkIG9uIG5vbi1pbnN0YW5jZSIpOwogICAgfQogICAgcmV0dXJuIHByaXZhdGVNYXAuZ2V0KHJlY2VpdmVyKTsKfQpmdW5jdGlvbiBfY2xhc3NfbmFtZV90ZHpfZXJyb3IobmFtZSkgewogICAgdGhyb3cgbmV3IEVycm9yKCJDbGFzcyBcIiIgKyBuYW1lICsgIlwiIGNhbm5vdCBiZSByZWZlcmVuY2VkIGluIGNvbXB1dGVkIHByb3BlcnR5IGtleXMuIik7Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfZ2V0KHJlY2VpdmVyLCBwcml2YXRlTWFwKSB7CiAgICB2YXIgZGVzY3JpcHRvciA9IF9jbGFzc19leHRyYWN0X2ZpZWxkX2Rlc2NyaXB0b3IocmVjZWl2ZXIsIHByaXZhdGVNYXAsICJnZXQiKTsKICAgIHJldHVybiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9nZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX2ZpZWxkX2luaXQob2JqLCBwcml2YXRlTWFwLCB2YWx1ZSkgewogICAgX2NoZWNrX3ByaXZhdGVfcmVkZWNsYXJhdGlvbihvYmosIHByaXZhdGVNYXApOwogICAgcHJpdmF0ZU1hcC5zZXQob2JqLCB2YWx1ZSk7Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfbG9vc2VfYmFzZShyZWNlaXZlciwgcHJpdmF0ZUtleSkgewogICAgaWYgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocmVjZWl2ZXIsIHByaXZhdGVLZXkpKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIHVzZSBwcml2YXRlIGZpZWxkIG9uIG5vbi1pbnN0YW5jZSIpOwogICAgfQogICAgcmV0dXJuIHJlY2VpdmVyOwp9CnZhciBpZCA9IDA7CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX2ZpZWxkX2xvb3NlX2tleShuYW1lKSB7CiAgICByZXR1cm4gIl9fcHJpdmF0ZV8iICsgaWQrKyArICJfIiArIG5hbWU7Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfZmllbGRfc2V0KHJlY2VpdmVyLCBwcml2YXRlTWFwLCB2YWx1ZSkgewogICAgdmFyIGRlc2NyaXB0b3IgPSBfY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yKHJlY2VpdmVyLCBwcml2YXRlTWFwLCAic2V0Iik7CiAgICBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9zZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IsIHZhbHVlKTsKICAgIHJldHVybiB2YWx1ZTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9maWVsZF91cGRhdGUocmVjZWl2ZXIsIHByaXZhdGVNYXApIHsKICAgIHZhciBkZXNjcmlwdG9yID0gX2NsYXNzX2V4dHJhY3RfZmllbGRfZGVzY3JpcHRvcihyZWNlaXZlciwgcHJpdmF0ZU1hcCwgInVwZGF0ZSIpOwogICAgcmV0dXJuIF9jbGFzc19hcHBseV9kZXNjcmlwdG9yX3VwZGF0ZShyZWNlaXZlciwgZGVzY3JpcHRvcik7Cn0KZnVuY3Rpb24gX2NsYXNzX3ByaXZhdGVfbWV0aG9kX2dldChyZWNlaXZlciwgcHJpdmF0ZVNldCwgZm4pIHsKICAgIGlmICghcHJpdmF0ZVNldC5oYXMocmVjZWl2ZXIpKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIGdldCBwcml2YXRlIGZpZWxkIG9uIG5vbi1pbnN0YW5jZSIpOwogICAgfQogICAgcmV0dXJuIGZuOwp9CmZ1bmN0aW9uIF9jbGFzc19wcml2YXRlX21ldGhvZF9pbml0KG9iaiwgcHJpdmF0ZVNldCkgewogICAgX2NoZWNrX3ByaXZhdGVfcmVkZWNsYXJhdGlvbihvYmosIHByaXZhdGVTZXQpOwogICAgcHJpdmF0ZVNldC5hZGQob2JqKTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9tZXRob2Rfc2V0KCkgewogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiYXR0ZW1wdGVkIHRvIHJlYXNzaWduIHByaXZhdGUgbWV0aG9kIik7Cn0KZnVuY3Rpb24gX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3NwZWNfZ2V0KHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yLCBkZXNjcmlwdG9yKSB7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfYWNjZXNzKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yKTsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19maWVsZF9kZXNjcmlwdG9yKGRlc2NyaXB0b3IsICJnZXQiKTsKICAgIHJldHVybiBfY2xhc3NfYXBwbHlfZGVzY3JpcHRvcl9nZXQocmVjZWl2ZXIsIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9jbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9zcGVjX3NldChyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3RvciwgZGVzY3JpcHRvciwgdmFsdWUpIHsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3MocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IpOwogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2ZpZWxkX2Rlc2NyaXB0b3IoZGVzY3JpcHRvciwgInNldCIpOwogICAgX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3Jfc2V0KHJlY2VpdmVyLCBkZXNjcmlwdG9yLCB2YWx1ZSk7CiAgICByZXR1cm4gdmFsdWU7Cn0KZnVuY3Rpb24gX2NsYXNzX3N0YXRpY19wcml2YXRlX2ZpZWxkX3VwZGF0ZShyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3RvciwgZGVzY3JpcHRvcikgewogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2VzcyhyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3Rvcik7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvcihkZXNjcmlwdG9yLCAidXBkYXRlIik7CiAgICByZXR1cm4gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfdXBkYXRlKHJlY2VpdmVyLCBkZXNjcmlwdG9yKTsKfQpmdW5jdGlvbiBfY29uc3RydWN0KFBhcmVudCwgYXJncywgQ2xhc3MpIHsKICAgIGlmIChfaXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0KCkpIHsKICAgICAgICBfY29uc3RydWN0ID0gUmVmbGVjdC5jb25zdHJ1Y3Q7CiAgICB9IGVsc2UgewogICAgICAgIF9jb25zdHJ1Y3QgPSBmdW5jdGlvbiBjb25zdHJ1Y3QoUGFyZW50LCBhcmdzLCBDbGFzcykgewogICAgICAgICAgICB2YXIgYSA9IFtudWxsXTsKICAgICAgICAgICAgYS5wdXNoLmFwcGx5KGEsIGFyZ3MpOwogICAgICAgICAgICB2YXIgQ29uc3RydWN0b3IgPSBGdW5jdGlvbi5iaW5kLmFwcGx5KFBhcmVudCwgYSk7CiAgICAgICAgICAgIHZhciBpbnN0YW5jZSA9IG5ldyBDb25zdHJ1Y3RvcigpOwogICAgICAgICAgICBpZiAoQ2xhc3MpIF9zZXRfcHJvdG90eXBlX29mKGluc3RhbmNlLCBDbGFzcy5wcm90b3R5cGUpOwogICAgICAgICAgICByZXR1cm4gaW5zdGFuY2U7CiAgICAgICAgfTsKICAgIH0KICAgIHJldHVybiBfY29uc3RydWN0LmFwcGx5KG51bGwsIGFyZ3VtZW50cyk7Cn0KZnVuY3Rpb24gX2RlZmluZVByb3BlcnRpZXModGFyZ2V0LCBwcm9wcykgewogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9wcy5sZW5ndGg7IGkrKykgewogICAgICAgIHZhciBkZXNjcmlwdG9yID0gcHJvcHNbaV07CiAgICAgICAgZGVzY3JpcHRvci5lbnVtZXJhYmxlID0gZGVzY3JpcHRvci5lbnVtZXJhYmxlIHx8IGZhbHNlOwogICAgICAgIGRlc2NyaXB0b3IuY29uZmlndXJhYmxlID0gdHJ1ZTsKICAgICAgICBpZiAoInZhbHVlIiBpbiBkZXNjcmlwdG9yKSBkZXNjcmlwdG9yLndyaXRhYmxlID0gdHJ1ZTsKICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBkZXNjcmlwdG9yLmtleSwgZGVzY3JpcHRvcik7CiAgICB9Cn0KZnVuY3Rpb24gX2NyZWF0ZV9jbGFzcyhDb25zdHJ1Y3RvciwgcHJvdG9Qcm9wcywgc3RhdGljUHJvcHMpIHsKICAgIGlmIChwcm90b1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvci5wcm90b3R5cGUsIHByb3RvUHJvcHMpOwogICAgaWYgKHN0YXRpY1Byb3BzKSBfZGVmaW5lUHJvcGVydGllcyhDb25zdHJ1Y3Rvciwgc3RhdGljUHJvcHMpOwogICAgcmV0dXJuIENvbnN0cnVjdG9yOwp9CmZ1bmN0aW9uIF9kZWNvcmF0ZShkZWNvcmF0b3JzLCBmYWN0b3J5LCBzdXBlckNsYXNzKSB7CiAgICB2YXIgciA9IGZhY3RvcnkoZnVuY3Rpb24gaW5pdGlhbGl6ZShPKSB7CiAgICAgICAgX2luaXRpYWxpemVJbnN0YW5jZUVsZW1lbnRzKE8sIGRlY29yYXRlZC5lbGVtZW50cyk7CiAgICB9LCBzdXBlckNsYXNzKTsKICAgIHZhciBkZWNvcmF0ZWQgPSBfZGVjb3JhdGVDbGFzcyhfY29hbGVzY2VDbGFzc0VsZW1lbnRzKHIuZC5tYXAoX2NyZWF0ZUVsZW1lbnREZXNjcmlwdG9yKSksIGRlY29yYXRvcnMpOwogICAgX2luaXRpYWxpemVDbGFzc0VsZW1lbnRzKHIuRiwgZGVjb3JhdGVkLmVsZW1lbnRzKTsKICAgIHJldHVybiBfcnVuQ2xhc3NGaW5pc2hlcnMoci5GLCBkZWNvcmF0ZWQuZmluaXNoZXJzKTsKfQoKZnVuY3Rpb24gX2NyZWF0ZUVsZW1lbnREZXNjcmlwdG9yKGRlZikgewogICAgdmFyIGtleSA9IF90b19wcm9wZXJ0eV9rZXkoZGVmLmtleSk7CiAgICB2YXIgZGVzY3JpcHRvcjsKICAgIGlmIChkZWYua2luZCA9PT0gIm1ldGhvZCIpIHsKICAgICAgICBkZXNjcmlwdG9yID0geyB2YWx1ZTogZGVmLnZhbHVlLCB3cml0YWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCBlbnVtZXJhYmxlOiBmYWxzZSB9OwogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShkZWYudmFsdWUsICJuYW1lIiwgeyB2YWx1ZTogX3R5cGVfb2Yoa2V5KSA9PT0gInN5bWJvbCIgPyAiIiA6IGtleSwgY29uZmlndXJhYmxlOiB0cnVlIH0pOwogICAgfSBlbHNlIGlmIChkZWYua2luZCA9PT0gImdldCIpIHsKICAgICAgICBkZXNjcmlwdG9yID0geyBnZXQ6IGRlZi52YWx1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCBlbnVtZXJhYmxlOiBmYWxzZSB9OwogICAgfSBlbHNlIGlmIChkZWYua2luZCA9PT0gInNldCIpIHsKICAgICAgICBkZXNjcmlwdG9yID0geyBzZXQ6IGRlZi52YWx1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCBlbnVtZXJhYmxlOiBmYWxzZSB9OwogICAgfSBlbHNlIGlmIChkZWYua2luZCA9PT0gImZpZWxkIikgewogICAgICAgIGRlc2NyaXB0b3IgPSB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUsIGVudW1lcmFibGU6IHRydWUgfTsKICAgIH0KICAgIHZhciBlbGVtZW50ID0gewogICAgICAgIGtpbmQ6IGRlZi5raW5kID09PSAiZmllbGQiID8gImZpZWxkIiA6ICJtZXRob2QiLAogICAgICAgIGtleToga2V5LAogICAgICAgIHBsYWNlbWVudDogZGVmLnN0YXRpYyA/ICJzdGF0aWMiIDogZGVmLmtpbmQgPT09ICJmaWVsZCIgPyAib3duIiA6ICJwcm90b3R5cGUiLAogICAgICAgIGRlc2NyaXB0b3I6IGRlc2NyaXB0b3IKICAgIH07CiAgICBpZiAoZGVmLmRlY29yYXRvcnMpIGVsZW1lbnQuZGVjb3JhdG9ycyA9IGRlZi5kZWNvcmF0b3JzOwogICAgaWYgKGRlZi5raW5kID09PSAiZmllbGQiKSBlbGVtZW50LmluaXRpYWxpemVyID0gZGVmLnZhbHVlOwogICAgcmV0dXJuIGVsZW1lbnQ7Cn0KZnVuY3Rpb24gX2NvYWxlc2NlR2V0dGVyU2V0dGVyKGVsZW1lbnQsIG90aGVyKSB7CiAgICBpZiAoZWxlbWVudC5kZXNjcmlwdG9yLmdldCAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgb3RoZXIuZGVzY3JpcHRvci5nZXQgPSBlbGVtZW50LmRlc2NyaXB0b3IuZ2V0OwogICAgfSBlbHNlIHsKICAgICAgICBvdGhlci5kZXNjcmlwdG9yLnNldCA9IGVsZW1lbnQuZGVzY3JpcHRvci5zZXQ7CiAgICB9Cn0KZnVuY3Rpb24gX2NvYWxlc2NlQ2xhc3NFbGVtZW50cyhlbGVtZW50cykgewogICAgdmFyIG5ld0VsZW1lbnRzID0gW107CiAgICB2YXIgaXNTYW1lRWxlbWVudCA9IGZ1bmN0aW9uIGlzU2FtZUVsZW1lbnQob3RoZXIpIHsKICAgICAgICByZXR1cm4gb3RoZXIua2luZCA9PT0gIm1ldGhvZCIgJiYgb3RoZXIua2V5ID09PSBlbGVtZW50LmtleSAmJiBvdGhlci5wbGFjZW1lbnQgPT09IGVsZW1lbnQucGxhY2VtZW50OwogICAgfTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyBpKyspIHsKICAgICAgICB2YXIgZWxlbWVudCA9IGVsZW1lbnRzW2ldOwogICAgICAgIHZhciBvdGhlcjsKICAgICAgICBpZiAoZWxlbWVudC5raW5kID09PSAibWV0aG9kIiAmJiAob3RoZXIgPSBuZXdFbGVtZW50cy5maW5kKGlzU2FtZUVsZW1lbnQpKSkgewogICAgICAgICAgICBpZiAoX2lzRGF0YURlc2NyaXB0b3IoZWxlbWVudC5kZXNjcmlwdG9yKSB8fCBfaXNEYXRhRGVzY3JpcHRvcihvdGhlci5kZXNjcmlwdG9yKSkgewogICAgICAgICAgICAgICAgaWYgKF9oYXNEZWNvcmF0b3JzKGVsZW1lbnQpIHx8IF9oYXNEZWNvcmF0b3JzKG90aGVyKSkgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcigiRHVwbGljYXRlZCBtZXRob2RzICgiICsgZWxlbWVudC5rZXkgKyAiKSBjYW4ndCBiZSBkZWNvcmF0ZWQuIik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBvdGhlci5kZXNjcmlwdG9yID0gZWxlbWVudC5kZXNjcmlwdG9yOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaWYgKF9oYXNEZWNvcmF0b3JzKGVsZW1lbnQpKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKF9oYXNEZWNvcmF0b3JzKG90aGVyKSkgewogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgUmVmZXJlbmNlRXJyb3IoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRGVjb3JhdG9ycyBjYW4ndCBiZSBwbGFjZWQgb24gZGlmZmVyZW50IGFjY2Vzc29ycyB3aXRoIGZvciAiICsgInRoZSBzYW1lIHByb3BlcnR5ICgiICsgZWxlbWVudC5rZXkgKyAiKS4iCiAgICAgICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIG90aGVyLmRlY29yYXRvcnMgPSBlbGVtZW50LmRlY29yYXRvcnM7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBfY29hbGVzY2VHZXR0ZXJTZXR0ZXIoZWxlbWVudCwgb3RoZXIpOwogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgbmV3RWxlbWVudHMucHVzaChlbGVtZW50KTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gbmV3RWxlbWVudHM7Cn0KZnVuY3Rpb24gX2hhc0RlY29yYXRvcnMoZWxlbWVudCkgewogICAgcmV0dXJuIGVsZW1lbnQuZGVjb3JhdG9ycyAmJiBlbGVtZW50LmRlY29yYXRvcnMubGVuZ3RoOwp9CmZ1bmN0aW9uIF9pc0RhdGFEZXNjcmlwdG9yKGRlc2MpIHsKICAgIHJldHVybiBkZXNjICE9PSB1bmRlZmluZWQgJiYgIShkZXNjLnZhbHVlID09PSB1bmRlZmluZWQgJiYgZGVzYy53cml0YWJsZSA9PT0gdW5kZWZpbmVkKTsKfQpmdW5jdGlvbiBfaW5pdGlhbGl6ZUNsYXNzRWxlbWVudHMoRiwgZWxlbWVudHMpIHsKICAgIHZhciBwcm90byA9IEYucHJvdG90eXBlOwogICAgWyJtZXRob2QiLCAiZmllbGQiXS5mb3JFYWNoKGZ1bmN0aW9uKGtpbmQpIHsKICAgICAgICBlbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgICAgICAgdmFyIHBsYWNlbWVudCA9IGVsZW1lbnQucGxhY2VtZW50OwogICAgICAgICAgICBpZiAoZWxlbWVudC5raW5kID09PSBraW5kICYmIChwbGFjZW1lbnQgPT09ICJzdGF0aWMiIHx8IHBsYWNlbWVudCA9PT0gInByb3RvdHlwZSIpKSB7CiAgICAgICAgICAgICAgICB2YXIgcmVjZWl2ZXIgPSBwbGFjZW1lbnQgPT09ICJzdGF0aWMiID8gRiA6IHByb3RvOwogICAgICAgICAgICAgICAgX2RlZmluZUNsYXNzRWxlbWVudChyZWNlaXZlciwgZWxlbWVudCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0pOwp9CmZ1bmN0aW9uIF9pbml0aWFsaXplSW5zdGFuY2VFbGVtZW50cyhPLCBlbGVtZW50cykgewogICAgWyJtZXRob2QiLCAiZmllbGQiXS5mb3JFYWNoKGZ1bmN0aW9uKGtpbmQpIHsKICAgICAgICBlbGVtZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgICAgICAgaWYgKGVsZW1lbnQua2luZCA9PT0ga2luZCAmJiBlbGVtZW50LnBsYWNlbWVudCA9PT0gIm93biIpIHsKICAgICAgICAgICAgICAgIF9kZWZpbmVDbGFzc0VsZW1lbnQoTywgZWxlbWVudCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0pOwp9CmZ1bmN0aW9uIF9kZWZpbmVDbGFzc0VsZW1lbnQocmVjZWl2ZXIsIGVsZW1lbnQpIHsKICAgIHZhciBkZXNjcmlwdG9yID0gZWxlbWVudC5kZXNjcmlwdG9yOwogICAgaWYgKGVsZW1lbnQua2luZCA9PT0gImZpZWxkIikgewogICAgICAgIHZhciBpbml0aWFsaXplciA9IGVsZW1lbnQuaW5pdGlhbGl6ZXI7CiAgICAgICAgZGVzY3JpcHRvciA9IHsKICAgICAgICAgICAgZW51bWVyYWJsZTogZGVzY3JpcHRvci5lbnVtZXJhYmxlLAogICAgICAgICAgICB3cml0YWJsZTogZGVzY3JpcHRvci53cml0YWJsZSwKICAgICAgICAgICAgY29uZmlndXJhYmxlOiBkZXNjcmlwdG9yLmNvbmZpZ3VyYWJsZSwKICAgICAgICAgICAgdmFsdWU6IGluaXRpYWxpemVyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBpbml0aWFsaXplci5jYWxsKHJlY2VpdmVyKQogICAgICAgIH07CiAgICB9CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkocmVjZWl2ZXIsIGVsZW1lbnQua2V5LCBkZXNjcmlwdG9yKTsKfQpmdW5jdGlvbiBfZGVjb3JhdGVDbGFzcyhlbGVtZW50cywgZGVjb3JhdG9ycykgewogICAgdmFyIG5ld0VsZW1lbnRzID0gW107CiAgICB2YXIgZmluaXNoZXJzID0gW107CiAgICB2YXIgcGxhY2VtZW50cyA9IHsgc3RhdGljOiBbXSwgcHJvdG90eXBlOiBbXSwgb3duOiBbXSB9OwogICAgZWxlbWVudHMuZm9yRWFjaChmdW5jdGlvbihlbGVtZW50KSB7CiAgICAgICAgX2FkZEVsZW1lbnRQbGFjZW1lbnQoZWxlbWVudCwgcGxhY2VtZW50cyk7CiAgICB9KTsKICAgIGVsZW1lbnRzLmZvckVhY2goZnVuY3Rpb24oZWxlbWVudCkgewogICAgICAgIGlmICghX2hhc0RlY29yYXRvcnMoZWxlbWVudCkpIHJldHVybiBuZXdFbGVtZW50cy5wdXNoKGVsZW1lbnQpOwogICAgICAgIHZhciBlbGVtZW50RmluaXNoZXJzRXh0cmFzID0gX2RlY29yYXRlRWxlbWVudChlbGVtZW50LCBwbGFjZW1lbnRzKTsKICAgICAgICBuZXdFbGVtZW50cy5wdXNoKGVsZW1lbnRGaW5pc2hlcnNFeHRyYXMuZWxlbWVudCk7CiAgICAgICAgbmV3RWxlbWVudHMucHVzaC5hcHBseShuZXdFbGVtZW50cywgZWxlbWVudEZpbmlzaGVyc0V4dHJhcy5leHRyYXMpOwogICAgICAgIGZpbmlzaGVycy5wdXNoLmFwcGx5KGZpbmlzaGVycywgZWxlbWVudEZpbmlzaGVyc0V4dHJhcy5maW5pc2hlcnMpOwogICAgfSk7CiAgICBpZiAoIWRlY29yYXRvcnMpIHsKICAgICAgICByZXR1cm4geyBlbGVtZW50czogbmV3RWxlbWVudHMsIGZpbmlzaGVyczogZmluaXNoZXJzIH07CiAgICB9CiAgICB2YXIgcmVzdWx0ID0gX2RlY29yYXRlQ29uc3RydWN0b3IobmV3RWxlbWVudHMsIGRlY29yYXRvcnMpOwogICAgZmluaXNoZXJzLnB1c2guYXBwbHkoZmluaXNoZXJzLCByZXN1bHQuZmluaXNoZXJzKTsKICAgIHJlc3VsdC5maW5pc2hlcnMgPSBmaW5pc2hlcnM7CiAgICByZXR1cm4gcmVzdWx0Owp9CmZ1bmN0aW9uIF9hZGRFbGVtZW50UGxhY2VtZW50KGVsZW1lbnQsIHBsYWNlbWVudHMsIHNpbGVudCkgewogICAgdmFyIGtleXMgPSBwbGFjZW1lbnRzW2VsZW1lbnQucGxhY2VtZW50XTsKICAgIGlmICghc2lsZW50ICYmIGtleXMuaW5kZXhPZihlbGVtZW50LmtleSkgIT09IC0xKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRHVwbGljYXRlZCBlbGVtZW50ICgiICsgZWxlbWVudC5rZXkgKyAiKSIpOwogICAgfQogICAga2V5cy5wdXNoKGVsZW1lbnQua2V5KTsKfQpmdW5jdGlvbiBfZGVjb3JhdGVFbGVtZW50KGVsZW1lbnQsIHBsYWNlbWVudHMpIHsKICAgIHZhciBleHRyYXMgPSBbXTsKICAgIHZhciBmaW5pc2hlcnMgPSBbXTsKICAgIGZvciAodmFyIGRlY29yYXRvcnMgPSBlbGVtZW50LmRlY29yYXRvcnMsIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgdmFyIGtleXMgPSBwbGFjZW1lbnRzW2VsZW1lbnQucGxhY2VtZW50XTsKICAgICAgICBrZXlzLnNwbGljZShrZXlzLmluZGV4T2YoZWxlbWVudC5rZXkpLCAxKTsKICAgICAgICB2YXIgZWxlbWVudE9iamVjdCA9IF9mcm9tRWxlbWVudERlc2NyaXB0b3IoZWxlbWVudCk7CiAgICAgICAgdmFyIGVsZW1lbnRGaW5pc2hlckV4dHJhcyA9IF90b0VsZW1lbnRGaW5pc2hlckV4dHJhcygoMCwgZGVjb3JhdG9yc1tpXSkoZWxlbWVudE9iamVjdCkgfHwgZWxlbWVudE9iamVjdCk7CiAgICAgICAgZWxlbWVudCA9IGVsZW1lbnRGaW5pc2hlckV4dHJhcy5lbGVtZW50OwogICAgICAgIF9hZGRFbGVtZW50UGxhY2VtZW50KGVsZW1lbnQsIHBsYWNlbWVudHMpOwogICAgICAgIGlmIChlbGVtZW50RmluaXNoZXJFeHRyYXMuZmluaXNoZXIpIHsKICAgICAgICAgICAgZmluaXNoZXJzLnB1c2goZWxlbWVudEZpbmlzaGVyRXh0cmFzLmZpbmlzaGVyKTsKICAgICAgICB9CiAgICAgICAgdmFyIG5ld0V4dHJhcyA9IGVsZW1lbnRGaW5pc2hlckV4dHJhcy5leHRyYXM7CiAgICAgICAgaWYgKG5ld0V4dHJhcykgewogICAgICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IG5ld0V4dHJhcy5sZW5ndGg7IGorKykgewogICAgICAgICAgICAgICAgX2FkZEVsZW1lbnRQbGFjZW1lbnQobmV3RXh0cmFzW2pdLCBwbGFjZW1lbnRzKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBleHRyYXMucHVzaC5hcHBseShleHRyYXMsIG5ld0V4dHJhcyk7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIHsgZWxlbWVudDogZWxlbWVudCwgZmluaXNoZXJzOiBmaW5pc2hlcnMsIGV4dHJhczogZXh0cmFzIH07Cn0KZnVuY3Rpb24gX2RlY29yYXRlQ29uc3RydWN0b3IoZWxlbWVudHMsIGRlY29yYXRvcnMpIHsKICAgIHZhciBmaW5pc2hlcnMgPSBbXTsKICAgIGZvciAodmFyIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgdmFyIG9iaiA9IF9mcm9tQ2xhc3NEZXNjcmlwdG9yKGVsZW1lbnRzKTsKICAgICAgICB2YXIgZWxlbWVudHNBbmRGaW5pc2hlciA9IF90b0NsYXNzRGVzY3JpcHRvcigoMCwgZGVjb3JhdG9yc1tpXSkob2JqKSB8fCBvYmopOwogICAgICAgIGlmIChlbGVtZW50c0FuZEZpbmlzaGVyLmZpbmlzaGVyICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgZmluaXNoZXJzLnB1c2goZWxlbWVudHNBbmRGaW5pc2hlci5maW5pc2hlcik7CiAgICAgICAgfQogICAgICAgIGlmIChlbGVtZW50c0FuZEZpbmlzaGVyLmVsZW1lbnRzICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgZWxlbWVudHMgPSBlbGVtZW50c0FuZEZpbmlzaGVyLmVsZW1lbnRzOwogICAgICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IGVsZW1lbnRzLmxlbmd0aCAtIDE7IGorKykgewogICAgICAgICAgICAgICAgZm9yICh2YXIgayA9IGogKyAxOyBrIDwgZWxlbWVudHMubGVuZ3RoOyBrKyspIHsKICAgICAgICAgICAgICAgICAgICBpZiAoZWxlbWVudHNbal0ua2V5ID09PSBlbGVtZW50c1trXS5rZXkgJiYgZWxlbWVudHNbal0ucGxhY2VtZW50ID09PSBlbGVtZW50c1trXS5wbGFjZW1lbnQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiRHVwbGljYXRlZCBlbGVtZW50ICgiICsgZWxlbWVudHNbal0ua2V5ICsgIikiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICByZXR1cm4geyBlbGVtZW50czogZWxlbWVudHMsIGZpbmlzaGVyczogZmluaXNoZXJzIH07Cn0KZnVuY3Rpb24gX2Zyb21FbGVtZW50RGVzY3JpcHRvcihlbGVtZW50KSB7CiAgICB2YXIgb2JqID0geyBraW5kOiBlbGVtZW50LmtpbmQsIGtleTogZWxlbWVudC5rZXksIHBsYWNlbWVudDogZWxlbWVudC5wbGFjZW1lbnQsIGRlc2NyaXB0b3I6IGVsZW1lbnQuZGVzY3JpcHRvciB9OwogICAgdmFyIGRlc2MgPSB7IHZhbHVlOiAiRGVzY3JpcHRvciIsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9OwogICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgU3ltYm9sLnRvU3RyaW5nVGFnLCBkZXNjKTsKICAgIGlmIChlbGVtZW50LmtpbmQgPT09ICJmaWVsZCIpIG9iai5pbml0aWFsaXplciA9IGVsZW1lbnQuaW5pdGlhbGl6ZXI7CiAgICByZXR1cm4gb2JqOwp9CmZ1bmN0aW9uIF90b0VsZW1lbnREZXNjcmlwdG9ycyhlbGVtZW50T2JqZWN0cykgewogICAgaWYgKGVsZW1lbnRPYmplY3RzID09PSB1bmRlZmluZWQpIHJldHVybjsKICAgIHJldHVybiBfdG9fYXJyYXkoZWxlbWVudE9iamVjdHMpLm1hcChmdW5jdGlvbihlbGVtZW50T2JqZWN0KSB7CiAgICAgICAgdmFyIGVsZW1lbnQgPSBfdG9FbGVtZW50RGVzY3JpcHRvcihlbGVtZW50T2JqZWN0KTsKICAgICAgICBfZGlzYWxsb3dQcm9wZXJ0eShlbGVtZW50T2JqZWN0LCAiZmluaXNoZXIiLCAiQW4gZWxlbWVudCBkZXNjcmlwdG9yIik7CiAgICAgICAgX2Rpc2FsbG93UHJvcGVydHkoZWxlbWVudE9iamVjdCwgImV4dHJhcyIsICJBbiBlbGVtZW50IGRlc2NyaXB0b3IiKTsKICAgICAgICByZXR1cm4gZWxlbWVudDsKICAgIH0pOwp9CmZ1bmN0aW9uIF90b0VsZW1lbnREZXNjcmlwdG9yKGVsZW1lbnRPYmplY3QpIHsKICAgIHZhciBraW5kID0gU3RyaW5nKGVsZW1lbnRPYmplY3Qua2luZCk7CiAgICBpZiAoa2luZCAhPT0gIm1ldGhvZCIgJiYga2luZCAhPT0gImZpZWxkIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJBbiBlbGVtZW50IGRlc2NyaXB0b3IncyAua2luZCBwcm9wZXJ0eSBtdXN0IGJlIGVpdGhlciBcIm1ldGhvZFwiIG9yIgogICAgICAgICAgICAgICAgKyAiIFwiZmllbGRcIiwgYnV0IGEgZGVjb3JhdG9yIGNyZWF0ZWQgYW4gZWxlbWVudCBkZXNjcmlwdG9yIHdpdGgiICsgIiAua2luZCBcIiIgKyBraW5kICsgIlwiIgogICAgICAgICk7CiAgICB9CiAgICB2YXIga2V5ID0gX3RvX3Byb3BlcnR5X2tleShlbGVtZW50T2JqZWN0LmtleSk7CiAgICB2YXIgcGxhY2VtZW50ID0gU3RyaW5nKGVsZW1lbnRPYmplY3QucGxhY2VtZW50KTsKICAgIGlmIChwbGFjZW1lbnQgIT09ICJzdGF0aWMiICYmIHBsYWNlbWVudCAhPT0gInByb3RvdHlwZSIgJiYgcGxhY2VtZW50ICE9PSAib3duIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgICAgICJBbiBlbGVtZW50IGRlc2NyaXB0b3IncyAucGxhY2VtZW50IHByb3BlcnR5IG11c3QgYmUgb25lIG9mIFwic3RhdGljXCIsIgogICAgICAgICAgICAgICAgKyAiIFwicHJvdG90eXBlXCIgb3IgXCJvd25cIiwgYnV0IGEgZGVjb3JhdG9yIGNyZWF0ZWQgYW4gZWxlbWVudCBkZXNjcmlwdG9yIiArICIgd2l0aCAucGxhY2VtZW50IFwiIiArIHBsYWNlbWVudCArICJcIiIKICAgICAgICApOwogICAgfQogICAgdmFyIGRlc2NyaXB0b3IgPSBlbGVtZW50T2JqZWN0LmRlc2NyaXB0b3I7CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShlbGVtZW50T2JqZWN0LCAiZWxlbWVudHMiLCAiQW4gZWxlbWVudCBkZXNjcmlwdG9yIik7CiAgICB2YXIgZWxlbWVudCA9IHsga2luZDoga2luZCwga2V5OiBrZXksIHBsYWNlbWVudDogcGxhY2VtZW50LCBkZXNjcmlwdG9yOiBPYmplY3QuYXNzaWduKHt9LCBkZXNjcmlwdG9yKSB9OwogICAgaWYgKGtpbmQgIT09ICJmaWVsZCIpIHsKICAgICAgICBfZGlzYWxsb3dQcm9wZXJ0eShlbGVtZW50T2JqZWN0LCAiaW5pdGlhbGl6ZXIiLCAiQSBtZXRob2QgZGVzY3JpcHRvciIpOwogICAgfSBlbHNlIHsKICAgICAgICBfZGlzYWxsb3dQcm9wZXJ0eShkZXNjcmlwdG9yLCAiZ2V0IiwgIlRoZSBwcm9wZXJ0eSBkZXNjcmlwdG9yIG9mIGEgZmllbGQgZGVzY3JpcHRvciIpOwogICAgICAgIF9kaXNhbGxvd1Byb3BlcnR5KGRlc2NyaXB0b3IsICJzZXQiLCAiVGhlIHByb3BlcnR5IGRlc2NyaXB0b3Igb2YgYSBmaWVsZCBkZXNjcmlwdG9yIik7CiAgICAgICAgX2Rpc2FsbG93UHJvcGVydHkoZGVzY3JpcHRvciwgInZhbHVlIiwgIlRoZSBwcm9wZXJ0eSBkZXNjcmlwdG9yIG9mIGEgZmllbGQgZGVzY3JpcHRvciIpOwogICAgICAgIGVsZW1lbnQuaW5pdGlhbGl6ZXIgPSBlbGVtZW50T2JqZWN0LmluaXRpYWxpemVyOwogICAgfQogICAgcmV0dXJuIGVsZW1lbnQ7Cn0KZnVuY3Rpb24gX3RvRWxlbWVudEZpbmlzaGVyRXh0cmFzKGVsZW1lbnRPYmplY3QpIHsKICAgIHZhciBlbGVtZW50ID0gX3RvRWxlbWVudERlc2NyaXB0b3IoZWxlbWVudE9iamVjdCk7CiAgICB2YXIgZmluaXNoZXIgPSBfb3B0aW9uYWxDYWxsYWJsZVByb3BlcnR5KGVsZW1lbnRPYmplY3QsICJmaW5pc2hlciIpOwogICAgdmFyIGV4dHJhcyA9IF90b0VsZW1lbnREZXNjcmlwdG9ycyhlbGVtZW50T2JqZWN0LmV4dHJhcyk7CiAgICByZXR1cm4geyBlbGVtZW50OiBlbGVtZW50LCBmaW5pc2hlcjogZmluaXNoZXIsIGV4dHJhczogZXh0cmFzIH07Cn0KZnVuY3Rpb24gX2Zyb21DbGFzc0Rlc2NyaXB0b3IoZWxlbWVudHMpIHsKICAgIHZhciBvYmogPSB7IGtpbmQ6ICJjbGFzcyIsIGVsZW1lbnRzOiBlbGVtZW50cy5tYXAoX2Zyb21FbGVtZW50RGVzY3JpcHRvcikgfTsKICAgIHZhciBkZXNjID0geyB2YWx1ZTogIkRlc2NyaXB0b3IiLCBjb25maWd1cmFibGU6IHRydWUgfTsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIFN5bWJvbC50b1N0cmluZ1RhZywgZGVzYyk7CiAgICByZXR1cm4gb2JqOwp9CmZ1bmN0aW9uIF90b0NsYXNzRGVzY3JpcHRvcihvYmopIHsKICAgIHZhciBraW5kID0gU3RyaW5nKG9iai5raW5kKTsKICAgIGlmIChraW5kICE9PSAiY2xhc3MiKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgIkEgY2xhc3MgZGVzY3JpcHRvcidzIC5raW5kIHByb3BlcnR5IG11c3QgYmUgXCJjbGFzc1wiLCBidXQgYSBkZWNvcmF0b3IiICsgIiBjcmVhdGVkIGEgY2xhc3MgZGVzY3JpcHRvciB3aXRoIC5raW5kIFwiIiArIGtpbmQKICAgICAgICAgICAgICAgICsgIlwiIgogICAgICAgICk7CiAgICB9CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShvYmosICJrZXkiLCAiQSBjbGFzcyBkZXNjcmlwdG9yIik7CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShvYmosICJwbGFjZW1lbnQiLCAiQSBjbGFzcyBkZXNjcmlwdG9yIik7CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShvYmosICJkZXNjcmlwdG9yIiwgIkEgY2xhc3MgZGVzY3JpcHRvciIpOwogICAgX2Rpc2FsbG93UHJvcGVydHkob2JqLCAiaW5pdGlhbGl6ZXIiLCAiQSBjbGFzcyBkZXNjcmlwdG9yIik7CiAgICBfZGlzYWxsb3dQcm9wZXJ0eShvYmosICJleHRyYXMiLCAiQSBjbGFzcyBkZXNjcmlwdG9yIik7CiAgICB2YXIgZmluaXNoZXIgPSBfb3B0aW9uYWxDYWxsYWJsZVByb3BlcnR5KG9iaiwgImZpbmlzaGVyIik7CiAgICB2YXIgZWxlbWVudHMgPSBfdG9FbGVtZW50RGVzY3JpcHRvcnMob2JqLmVsZW1lbnRzKTsKICAgIHJldHVybiB7IGVsZW1lbnRzOiBlbGVtZW50cywgZmluaXNoZXI6IGZpbmlzaGVyIH07Cn0KZnVuY3Rpb24gX2Rpc2FsbG93UHJvcGVydHkob2JqLCBuYW1lLCBvYmplY3RUeXBlKSB7CiAgICBpZiAob2JqW25hbWVdICE9PSB1bmRlZmluZWQpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKG9iamVjdFR5cGUgKyAiIGNhbid0IGhhdmUgYSAuIiArIG5hbWUgKyAiIHByb3BlcnR5LiIpOwogICAgfQp9CmZ1bmN0aW9uIF9vcHRpb25hbENhbGxhYmxlUHJvcGVydHkob2JqLCBuYW1lKSB7CiAgICB2YXIgdmFsdWUgPSBvYmpbbmFtZV07CiAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCAmJiB0eXBlb2YgdmFsdWUgIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCAnIiArIG5hbWUgKyAiJyB0byBiZSBhIGZ1bmN0aW9uIik7CiAgICB9CiAgICByZXR1cm4gdmFsdWU7Cn0KZnVuY3Rpb24gX3J1bkNsYXNzRmluaXNoZXJzKGNvbnN0cnVjdG9yLCBmaW5pc2hlcnMpIHsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZmluaXNoZXJzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgdmFyIG5ld0NvbnN0cnVjdG9yID0gKDAsIGZpbmlzaGVyc1tpXSkoY29uc3RydWN0b3IpOwogICAgICAgIGlmIChuZXdDb25zdHJ1Y3RvciAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgIGlmICh0eXBlb2YgbmV3Q29uc3RydWN0b3IgIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIkZpbmlzaGVycyBtdXN0IHJldHVybiBhIGNvbnN0cnVjdG9yLiIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvbnN0cnVjdG9yID0gbmV3Q29uc3RydWN0b3I7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIGNvbnN0cnVjdG9yOwp9CmZ1bmN0aW9uIF9kZWZhdWx0cyhvYmosIGRlZmF1bHRzKSB7CiAgICB2YXIga2V5cyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGRlZmF1bHRzKTsKICAgIGZvciAodmFyIGkgPSAwOyBpIDwga2V5cy5sZW5ndGg7IGkrKykgewogICAgICAgIHZhciBrZXkgPSBrZXlzW2ldOwogICAgICAgIHZhciB2YWx1ZSA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZGVmYXVsdHMsIGtleSk7CiAgICAgICAgaWYgKHZhbHVlICYmIHZhbHVlLmNvbmZpZ3VyYWJsZSAmJiBvYmpba2V5XSA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBvYmo7Cn0KZnVuY3Rpb24gX2RlZmluZV9lbnVtZXJhYmxlX3Byb3BlcnRpZXMob2JqLCBkZXNjcykgewogICAgZm9yICh2YXIga2V5IGluIGRlc2NzKSB7CiAgICAgICAgdmFyIGRlc2MgPSBkZXNjc1trZXldOwogICAgICAgIGRlc2MuY29uZmlndXJhYmxlID0gZGVzYy5lbnVtZXJhYmxlID0gdHJ1ZTsKICAgICAgICBpZiAoInZhbHVlIiBpbiBkZXNjKSBkZXNjLndyaXRhYmxlID0gdHJ1ZTsKICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBrZXksIGRlc2MpOwogICAgfQogICAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHsKICAgICAgICB2YXIgb2JqZWN0U3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZGVzY3MpOwogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgb2JqZWN0U3ltYm9scy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICB2YXIgc3ltID0gb2JqZWN0U3ltYm9sc1tpXTsKICAgICAgICAgICAgdmFyIGRlc2MgPSBkZXNjc1tzeW1dOwogICAgICAgICAgICBkZXNjLmNvbmZpZ3VyYWJsZSA9IGRlc2MuZW51bWVyYWJsZSA9IHRydWU7CiAgICAgICAgICAgIGlmICgidmFsdWUiIGluIGRlc2MpIGRlc2Mud3JpdGFibGUgPSB0cnVlOwogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCBzeW0sIGRlc2MpOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBvYmo7Cn0KZnVuY3Rpb24gX2RlZmluZV9wcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsKICAgIGlmIChrZXkgaW4gb2JqKSB7CiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsKICAgIH0gZWxzZSB7CiAgICAgICAgb2JqW2tleV0gPSB2YWx1ZTsKICAgIH0KICAgIHJldHVybiBvYmo7Cn0KZnVuY3Rpb24gX2V4cG9ydF9zdGFyKGZyb20sIHRvKSB7CiAgICBPYmplY3Qua2V5cyhmcm9tKS5mb3JFYWNoKGZ1bmN0aW9uKGspIHsKICAgICAgICBpZiAoayAhPT0gImRlZmF1bHQiICYmICFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodG8sIGspKSB7CiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0bywgaywgewogICAgICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSwKICAgICAgICAgICAgICAgIGdldDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZyb21ba107CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0pOwogICAgcmV0dXJuIGZyb207Cn0KZnVuY3Rpb24gX2V4dGVuZHMoKSB7CiAgICBfZXh0ZW5kcyA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24odGFyZ2V0KSB7CiAgICAgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXTsKICAgICAgICAgICAgZm9yICh2YXIga2V5IGluIHNvdXJjZSkgewogICAgICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2UsIGtleSkpIHsKICAgICAgICAgICAgICAgICAgICB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB0YXJnZXQ7CiAgICB9OwogICAgcmV0dXJuIF9leHRlbmRzLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7Cn0KZnVuY3Rpb24gX2dldCh0YXJnZXQsIHByb3BlcnR5LCByZWNlaXZlcikgewogICAgaWYgKHR5cGVvZiBSZWZsZWN0ICE9PSAidW5kZWZpbmVkIiAmJiBSZWZsZWN0LmdldCkgewogICAgICAgIF9nZXQgPSBSZWZsZWN0LmdldDsKICAgIH0gZWxzZSB7CiAgICAgICAgX2dldCA9IGZ1bmN0aW9uIGdldCh0YXJnZXQsIHByb3BlcnR5LCByZWNlaXZlcikgewogICAgICAgICAgICB2YXIgYmFzZSA9IF9zdXBlcl9wcm9wX2Jhc2UodGFyZ2V0LCBwcm9wZXJ0eSk7CiAgICAgICAgICAgIGlmICghYmFzZSkgcmV0dXJuOwogICAgICAgICAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYmFzZSwgcHJvcGVydHkpOwogICAgICAgICAgICBpZiAoZGVzYy5nZXQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBkZXNjLmdldC5jYWxsKHJlY2VpdmVyIHx8IHRhcmdldCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGRlc2MudmFsdWU7CiAgICAgICAgfTsKICAgIH0KICAgIHJldHVybiBfZ2V0KHRhcmdldCwgcHJvcGVydHksIHJlY2VpdmVyIHx8IHRhcmdldCk7Cn0KZnVuY3Rpb24gX2dldF9wcm90b3R5cGVfb2YobykgewogICAgX2dldF9wcm90b3R5cGVfb2YgPSBPYmplY3Quc2V0UHJvdG90eXBlT2YgPyBPYmplY3QuZ2V0UHJvdG90eXBlT2YgOiBmdW5jdGlvbiBnZXRQcm90b3R5cGVPZihvKSB7CiAgICAgICAgcmV0dXJuIG8uX19wcm90b19fIHx8IE9iamVjdC5nZXRQcm90b3R5cGVPZihvKTsKICAgIH07CiAgICByZXR1cm4gX2dldF9wcm90b3R5cGVfb2Yobyk7Cn0KZnVuY3Rpb24gX2luaGVyaXRzKHN1YkNsYXNzLCBzdXBlckNsYXNzKSB7CiAgICBpZiAodHlwZW9mIHN1cGVyQ2xhc3MgIT09ICJmdW5jdGlvbiIgJiYgc3VwZXJDbGFzcyAhPT0gbnVsbCkgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoIlN1cGVyIGV4cHJlc3Npb24gbXVzdCBlaXRoZXIgYmUgbnVsbCBvciBhIGZ1bmN0aW9uIik7CiAgICB9CiAgICBzdWJDbGFzcy5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKHN1cGVyQ2xhc3MgJiYgc3VwZXJDbGFzcy5wcm90b3R5cGUsIHsKICAgICAgICBjb25zdHJ1Y3RvcjogeyB2YWx1ZTogc3ViQ2xhc3MsIHdyaXRhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUgfQogICAgfSk7CiAgICBpZiAoc3VwZXJDbGFzcykgX3NldF9wcm90b3R5cGVfb2Yoc3ViQ2xhc3MsIHN1cGVyQ2xhc3MpOwp9CmZ1bmN0aW9uIF9pbmhlcml0c19sb29zZShzdWJDbGFzcywgc3VwZXJDbGFzcykgewogICAgc3ViQ2xhc3MucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShzdXBlckNsYXNzLnByb3RvdHlwZSk7CiAgICBzdWJDbGFzcy5wcm90b3R5cGUuY29uc3RydWN0b3IgPSBzdWJDbGFzczsKICAgIHN1YkNsYXNzLl9fcHJvdG9fXyA9IHN1cGVyQ2xhc3M7Cn0KZnVuY3Rpb24gX2luaXRpYWxpemVyX2RlZmluZV9wcm9wZXJ0eSh0YXJnZXQsIHByb3BlcnR5LCBkZXNjcmlwdG9yLCBjb250ZXh0KSB7CiAgICBpZiAoIWRlc2NyaXB0b3IpIHJldHVybjsKICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIHByb3BlcnR5LCB7CiAgICAgICAgZW51bWVyYWJsZTogZGVzY3JpcHRvci5lbnVtZXJhYmxlLAogICAgICAgIGNvbmZpZ3VyYWJsZTogZGVzY3JpcHRvci5jb25maWd1cmFibGUsCiAgICAgICAgd3JpdGFibGU6IGRlc2NyaXB0b3Iud3JpdGFibGUsCiAgICAgICAgdmFsdWU6IGRlc2NyaXB0b3IuaW5pdGlhbGl6ZXIgPyBkZXNjcmlwdG9yLmluaXRpYWxpemVyLmNhbGwoY29udGV4dCkgOiB2b2lkIDAKICAgIH0pOwp9CmZ1bmN0aW9uIF9pbml0aWFsaXplcl93YXJuaW5nX2hlbHBlcihkZXNjcmlwdG9yLCBjb250ZXh0KSB7CiAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgIkRlY29yYXRpbmcgY2xhc3MgcHJvcGVydHkgZmFpbGVkLiBQbGVhc2UgZW5zdXJlIHRoYXQgIiArICJwcm9wb3NhbC1jbGFzcy1wcm9wZXJ0aWVzIGlzIGVuYWJsZWQgYW5kIHNldCB0byB1c2UgbG9vc2UgbW9kZS4gIgogICAgICAgICAgICArICJUbyB1c2UgcHJvcG9zYWwtY2xhc3MtcHJvcGVydGllcyBpbiBzcGVjIG1vZGUgd2l0aCBkZWNvcmF0b3JzLCB3YWl0IGZvciAiCiAgICAgICAgICAgICsgInRoZSBuZXh0IG1ham9yIHZlcnNpb24gb2YgZGVjb3JhdG9ycyBpbiBzdGFnZSAyLiIKICAgICk7Cn0KZnVuY3Rpb24gX2luc3RhbmNlb2YobGVmdCwgcmlnaHQpIHsKICAgIGlmIChyaWdodCAhPSBudWxsICYmIHR5cGVvZiBTeW1ib2wgIT09ICJ1bmRlZmluZWQiICYmIHJpZ2h0W1N5bWJvbC5oYXNJbnN0YW5jZV0pIHsKICAgICAgICByZXR1cm4gISFyaWdodFtTeW1ib2wuaGFzSW5zdGFuY2VdKGxlZnQpOwogICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gbGVmdCBpbnN0YW5jZW9mIHJpZ2h0OwogICAgfQp9CmZ1bmN0aW9uIF9pbnRlcm9wX3JlcXVpcmVfZGVmYXVsdChvYmopIHsKICAgIHJldHVybiBvYmogJiYgb2JqLl9fZXNNb2R1bGUgPyBvYmogOiB7IGRlZmF1bHQ6IG9iaiB9Owp9CmZ1bmN0aW9uIF9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZShub2RlSW50ZXJvcCkgewogICAgaWYgKHR5cGVvZiBXZWFrTWFwICE9PSAiZnVuY3Rpb24iKSByZXR1cm4gbnVsbDsKICAgIHZhciBjYWNoZUJhYmVsSW50ZXJvcCA9IG5ldyBXZWFrTWFwKCk7CiAgICB2YXIgY2FjaGVOb2RlSW50ZXJvcCA9IG5ldyBXZWFrTWFwKCk7CiAgICByZXR1cm4gKF9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSA9IGZ1bmN0aW9uKG5vZGVJbnRlcm9wKSB7CiAgICAgICAgcmV0dXJuIG5vZGVJbnRlcm9wID8gY2FjaGVOb2RlSW50ZXJvcCA6IGNhY2hlQmFiZWxJbnRlcm9wOwogICAgfSkobm9kZUludGVyb3ApOwp9CmZ1bmN0aW9uIF9pbnRlcm9wX3JlcXVpcmVfd2lsZGNhcmQob2JqLCBub2RlSW50ZXJvcCkgewogICAgaWYgKCFub2RlSW50ZXJvcCAmJiBvYmogJiYgb2JqLl9fZXNNb2R1bGUpIHsKICAgICAgICByZXR1cm4gb2JqOwogICAgfQogICAgaWYgKG9iaiA9PT0gbnVsbCB8fCB0eXBlb2Ygb2JqICE9PSAib2JqZWN0IiAmJiB0eXBlb2Ygb2JqICE9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgcmV0dXJuIHsgZGVmYXVsdDogb2JqIH07CiAgICB9CiAgICB2YXIgY2FjaGUgPSBfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUobm9kZUludGVyb3ApOwogICAgaWYgKGNhY2hlICYmIGNhY2hlLmhhcyhvYmopKSB7CiAgICAgICAgcmV0dXJuIGNhY2hlLmdldChvYmopOwogICAgfQogICAgdmFyIG5ld09iaiA9IHsgX19wcm90b19fOiBudWxsIH07CiAgICB2YXIgaGFzUHJvcGVydHlEZXNjcmlwdG9yID0gT2JqZWN0LmRlZmluZVByb3BlcnR5ICYmIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7CiAgICBmb3IgKHZhciBrZXkgaW4gb2JqKSB7CiAgICAgICAgaWYgKGtleSAhPT0gImRlZmF1bHQiICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSkpIHsKICAgICAgICAgICAgdmFyIGRlc2MgPSBoYXNQcm9wZXJ0eURlc2NyaXB0b3IgPyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKG9iaiwga2V5KSA6IG51bGw7CiAgICAgICAgICAgIGlmIChkZXNjICYmIChkZXNjLmdldCB8fCBkZXNjLnNldCkpIHsKICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuZXdPYmosIGtleSwgZGVzYyk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBuZXdPYmpba2V5XSA9IG9ialtrZXldOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgbmV3T2JqLmRlZmF1bHQgPSBvYmo7CiAgICBpZiAoY2FjaGUpIHsKICAgICAgICBjYWNoZS5zZXQob2JqLCBuZXdPYmopOwogICAgfQogICAgcmV0dXJuIG5ld09iajsKfQpmdW5jdGlvbiBfaXNfbmF0aXZlX2Z1bmN0aW9uKGZuKSB7CiAgICByZXR1cm4gRnVuY3Rpb24udG9TdHJpbmcuY2FsbChmbikuaW5kZXhPZigiW25hdGl2ZSBjb2RlXSIpICE9PSAtMTsKfQpmdW5jdGlvbiBfaXRlcmFibGVfdG9fYXJyYXkoaXRlcikgewogICAgaWYgKHR5cGVvZiBTeW1ib2wgIT09ICJ1bmRlZmluZWQiICYmIGl0ZXJbU3ltYm9sLml0ZXJhdG9yXSAhPSBudWxsIHx8IGl0ZXJbIkBAaXRlcmF0b3IiXSAhPSBudWxsKSByZXR1cm4gQXJyYXkuZnJvbShpdGVyKTsKfQpmdW5jdGlvbiBfaXRlcmFibGVfdG9fYXJyYXlfbGltaXQoYXJyLCBpKSB7CiAgICB2YXIgX2kgPSBhcnIgPT0gbnVsbCA/IG51bGwgOiB0eXBlb2YgU3ltYm9sICE9PSAidW5kZWZpbmVkIiAmJiBhcnJbU3ltYm9sLml0ZXJhdG9yXSB8fCBhcnJbIkBAaXRlcmF0b3IiXTsKICAgIGlmIChfaSA9PSBudWxsKSByZXR1cm47CiAgICB2YXIgX2FyciA9IFtdOwogICAgdmFyIF9uID0gdHJ1ZTsKICAgIHZhciBfZCA9IGZhbHNlOwogICAgdmFyIF9zLCBfZTsKICAgIHRyeSB7CiAgICAgICAgZm9yIChfaSA9IF9pLmNhbGwoYXJyKTsgIShfbiA9IChfcyA9IF9pLm5leHQoKSkuZG9uZSk7IF9uID0gdHJ1ZSkgewogICAgICAgICAgICBfYXJyLnB1c2goX3MudmFsdWUpOwogICAgICAgICAgICBpZiAoaSAmJiBfYXJyLmxlbmd0aCA9PT0gaSkgYnJlYWs7CiAgICAgICAgfQogICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgX2QgPSB0cnVlOwogICAgICAgIF9lID0gZXJyOwogICAgfSBmaW5hbGx5IHsKICAgICAgICB0cnkgewogICAgICAgICAgICBpZiAoIV9uICYmIF9pWyJyZXR1cm4iXSAhPSBudWxsKSBfaVsicmV0dXJuIl0oKTsKICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgICBpZiAoX2QpIHRocm93IF9lOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBfYXJyOwp9CmZ1bmN0aW9uIF9pdGVyYWJsZV90b19hcnJheV9saW1pdF9sb29zZShhcnIsIGkpIHsKICAgIHZhciBfaSA9IGFyciAmJiAodHlwZW9mIFN5bWJvbCAhPT0gInVuZGVmaW5lZCIgJiYgYXJyW1N5bWJvbC5pdGVyYXRvcl0gfHwgYXJyWyJAQGl0ZXJhdG9yIl0pOwogICAgaWYgKF9pID09IG51bGwpIHJldHVybjsKICAgIHZhciBfYXJyID0gW107CiAgICBmb3IgKF9pID0gX2kuY2FsbChhcnIpLCBfc3RlcDsgIShfc3RlcCA9IF9pLm5leHQoKSkuZG9uZTspIHsKICAgICAgICBfYXJyLnB1c2goX3N0ZXAudmFsdWUpOwogICAgICAgIGlmIChpICYmIF9hcnIubGVuZ3RoID09PSBpKSBicmVhazsKICAgIH0KICAgIHJldHVybiBfYXJyOwp9CnZhciBSRUFDVF9FTEVNRU5UX1RZUEU7CmZ1bmN0aW9uIF9qc3godHlwZSwgcHJvcHMsIGtleSwgY2hpbGRyZW4pIHsKICAgIGlmICghUkVBQ1RfRUxFTUVOVF9UWVBFKSB7CiAgICAgICAgUkVBQ1RfRUxFTUVOVF9UWVBFID0gdHlwZW9mIFN5bWJvbCA9PT0gImZ1bmN0aW9uIiAmJiBTeW1ib2wuZm9yICYmIFN5bWJvbC5mb3IoInJlYWN0LmVsZW1lbnQiKSB8fCAweGVhYzc7CiAgICB9CiAgICB2YXIgZGVmYXVsdFByb3BzID0gdHlwZSAmJiB0eXBlLmRlZmF1bHRQcm9wczsKICAgIHZhciBjaGlsZHJlbkxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGggLSAzOwogICAgaWYgKCFwcm9wcyAmJiBjaGlsZHJlbkxlbmd0aCAhPT0gMCkgewogICAgICAgIHByb3BzID0geyBjaGlsZHJlbjogdm9pZCAwIH07CiAgICB9CiAgICBpZiAocHJvcHMgJiYgZGVmYXVsdFByb3BzKSB7CiAgICAgICAgZm9yICh2YXIgcHJvcE5hbWUgaW4gZGVmYXVsdFByb3BzKSB7CiAgICAgICAgICAgIGlmIChwcm9wc1twcm9wTmFtZV0gPT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgcHJvcHNbcHJvcE5hbWVdID0gZGVmYXVsdFByb3BzW3Byb3BOYW1lXTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0gZWxzZSBpZiAoIXByb3BzKSB7CiAgICAgICAgcHJvcHMgPSBkZWZhdWx0UHJvcHMgfHwge307CiAgICB9CiAgICBpZiAoY2hpbGRyZW5MZW5ndGggPT09IDEpIHsKICAgICAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkcmVuOwogICAgfSBlbHNlIGlmIChjaGlsZHJlbkxlbmd0aCA+IDEpIHsKICAgICAgICB2YXIgY2hpbGRBcnJheSA9IG5ldyBBcnJheShjaGlsZHJlbkxlbmd0aCk7CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbkxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIGNoaWxkQXJyYXlbaV0gPSBhcmd1bWVudHNbaSArIDNdOwogICAgICAgIH0KICAgICAgICBwcm9wcy5jaGlsZHJlbiA9IGNoaWxkQXJyYXk7CiAgICB9CiAgICByZXR1cm4geyAkJHR5cGVvZjogUkVBQ1RfRUxFTUVOVF9UWVBFLCB0eXBlOiB0eXBlLCBrZXk6IGtleSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6ICIiICsga2V5LCByZWY6IG51bGwsIHByb3BzOiBwcm9wcywgX293bmVyOiBudWxsIH07Cn0KZnVuY3Rpb24gX25ld19hcnJvd19jaGVjayhpbm5lclRoaXMsIGJvdW5kVGhpcykgewogICAgaWYgKGlubmVyVGhpcyAhPT0gYm91bmRUaGlzKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGluc3RhbnRpYXRlIGFuIGFycm93IGZ1bmN0aW9uIik7CiAgICB9Cn0KZnVuY3Rpb24gX25vbl9pdGVyYWJsZV9yZXN0KCkgewogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAiSW52YWxpZCBhdHRlbXB0IHRvIGRlc3RydWN0dXJlIG5vbi1pdGVyYWJsZSBpbnN0YW5jZS5cXG5JbiBvcmRlciB0byBiZSBpdGVyYWJsZSwgbm9uLWFycmF5IG9iamVjdHMgbXVzdCBoYXZlIGEgW1N5bWJvbC5pdGVyYXRvcl0oKSBtZXRob2QuIgogICAgKTsKfQpmdW5jdGlvbiBfbm9uX2l0ZXJhYmxlX3NwcmVhZCgpIHsKICAgIHRocm93IG5ldyBUeXBlRXJyb3IoCiAgICAgICAgIkludmFsaWQgYXR0ZW1wdCB0byBzcHJlYWQgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxcbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iCiAgICApOwp9CmZ1bmN0aW9uIF9vYmplY3RfZGVzdHJ1Y3R1cmluZ19lbXB0eShvKSB7CiAgICBpZiAobyA9PT0gbnVsbCB8fCBvID09PSB2b2lkIDApIHRocm93IG5ldyBUeXBlRXJyb3IoIkNhbm5vdCBkZXN0cnVjdHVyZSAiICsgbyk7CiAgICByZXR1cm4gbzsKfQpmdW5jdGlvbiBfb2JqZWN0X3NwcmVhZCh0YXJnZXQpIHsKICAgIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgdmFyIHNvdXJjZSA9IGFyZ3VtZW50c1tpXSAhPSBudWxsID8gYXJndW1lbnRzW2ldIDoge307CiAgICAgICAgdmFyIG93bktleXMgPSBPYmplY3Qua2V5cyhzb3VyY2UpOwogICAgICAgIGlmICh0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICBvd25LZXlzID0gb3duS2V5cy5jb25jYXQoCiAgICAgICAgICAgICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHNvdXJjZSkuZmlsdGVyKGZ1bmN0aW9uKHN5bSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHNvdXJjZSwgc3ltKS5lbnVtZXJhYmxlOwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgb3duS2V5cy5mb3JFYWNoKGZ1bmN0aW9uKGtleSkgewogICAgICAgICAgICBfZGVmaW5lX3Byb3BlcnR5KHRhcmdldCwga2V5LCBzb3VyY2Vba2V5XSk7CiAgICAgICAgfSk7CiAgICB9CiAgICByZXR1cm4gdGFyZ2V0Owp9CmZ1bmN0aW9uIG93bktleXMob2JqZWN0LCBlbnVtZXJhYmxlT25seSkgewogICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhvYmplY3QpOwogICAgaWYgKE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHsKICAgICAgICB2YXIgc3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMob2JqZWN0KTsKICAgICAgICBpZiAoZW51bWVyYWJsZU9ubHkpIHsKICAgICAgICAgICAgc3ltYm9scyA9IHN5bWJvbHMuZmlsdGVyKGZ1bmN0aW9uKHN5bSkgewogICAgICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iob2JqZWN0LCBzeW0pLmVudW1lcmFibGU7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBrZXlzLnB1c2guYXBwbHkoa2V5cywgc3ltYm9scyk7CiAgICB9CiAgICByZXR1cm4ga2V5czsKfQpmdW5jdGlvbiBfb2JqZWN0X3NwcmVhZF9wcm9wcyh0YXJnZXQsIHNvdXJjZSkgewogICAgc291cmNlID0gc291cmNlICE9IG51bGwgPyBzb3VyY2UgOiB7fTsKICAgIGlmIChPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycykgewogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRhcmdldCwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoc291cmNlKSk7CiAgICB9IGVsc2UgewogICAgICAgIG93bktleXMoT2JqZWN0KHNvdXJjZSkpLmZvckVhY2goZnVuY3Rpb24oa2V5KSB7CiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzb3VyY2UsIGtleSkpOwogICAgICAgIH0pOwogICAgfQogICAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiBfb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllcyhzb3VyY2UsIGV4Y2x1ZGVkKSB7CiAgICBpZiAoc291cmNlID09IG51bGwpIHJldHVybiB7fTsKICAgIHZhciB0YXJnZXQgPSBfb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc19sb29zZShzb3VyY2UsIGV4Y2x1ZGVkKTsKICAgIHZhciBrZXksIGk7CiAgICBpZiAoT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scykgewogICAgICAgIHZhciBzb3VyY2VTeW1ib2xLZXlzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzb3VyY2UpOwogICAgICAgIGZvciAoaSA9IDA7IGkgPCBzb3VyY2VTeW1ib2xLZXlzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIGtleSA9IHNvdXJjZVN5bWJvbEtleXNbaV07CiAgICAgICAgICAgIGlmIChleGNsdWRlZC5pbmRleE9mKGtleSkgPj0gMCkgY29udGludWU7CiAgICAgICAgICAgIGlmICghT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHNvdXJjZSwga2V5KSkgY29udGludWU7CiAgICAgICAgICAgIHRhcmdldFtrZXldID0gc291cmNlW2tleV07CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiBfb2JqZWN0X3dpdGhvdXRfcHJvcGVydGllc19sb29zZShzb3VyY2UsIGV4Y2x1ZGVkKSB7CiAgICBpZiAoc291cmNlID09IG51bGwpIHJldHVybiB7fTsKICAgIHZhciB0YXJnZXQgPSB7fTsKICAgIHZhciBzb3VyY2VLZXlzID0gT2JqZWN0LmtleXMoc291cmNlKTsKICAgIHZhciBrZXksIGk7CiAgICBmb3IgKGkgPSAwOyBpIDwgc291cmNlS2V5cy5sZW5ndGg7IGkrKykgewogICAgICAgIGtleSA9IHNvdXJjZUtleXNbaV07CiAgICAgICAgaWYgKGV4Y2x1ZGVkLmluZGV4T2Yoa2V5KSA+PSAwKSBjb250aW51ZTsKICAgICAgICB0YXJnZXRba2V5XSA9IHNvdXJjZVtrZXldOwogICAgfQogICAgcmV0dXJuIHRhcmdldDsKfQpmdW5jdGlvbiBfcG9zc2libGVfY29uc3RydWN0b3JfcmV0dXJuKHNlbGYsIGNhbGwpIHsKICAgIGlmIChjYWxsICYmIChfdHlwZV9vZihjYWxsKSA9PT0gIm9iamVjdCIgfHwgdHlwZW9mIGNhbGwgPT09ICJmdW5jdGlvbiIpKSB7CiAgICAgICAgcmV0dXJuIGNhbGw7CiAgICB9CiAgICByZXR1cm4gX2Fzc2VydF90aGlzX2luaXRpYWxpemVkKHNlbGYpOwp9CmZ1bmN0aW9uIF9yZWFkX29ubHlfZXJyb3IobmFtZSkgewogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiXCIiICsgbmFtZSArICJcIiBpcyByZWFkLW9ubHkiKTsKfQpmdW5jdGlvbiBzZXQodGFyZ2V0LCBwcm9wZXJ0eSwgdmFsdWUsIHJlY2VpdmVyKSB7CiAgICBpZiAodHlwZW9mIFJlZmxlY3QgIT09ICJ1bmRlZmluZWQiICYmIFJlZmxlY3Quc2V0KSB7CiAgICAgICAgc2V0ID0gUmVmbGVjdC5zZXQ7CiAgICB9IGVsc2UgewogICAgICAgIHNldCA9IGZ1bmN0aW9uIHNldCh0YXJnZXQsIHByb3BlcnR5LCB2YWx1ZSwgcmVjZWl2ZXIpIHsKICAgICAgICAgICAgdmFyIGJhc2UgPSBfc3VwZXJfcHJvcF9iYXNlKHRhcmdldCwgcHJvcGVydHkpOwogICAgICAgICAgICB2YXIgZGVzYzsKICAgICAgICAgICAgaWYgKGJhc2UpIHsKICAgICAgICAgICAgICAgIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGJhc2UsIHByb3BlcnR5KTsKICAgICAgICAgICAgICAgIGlmIChkZXNjLnNldCkgewogICAgICAgICAgICAgICAgICAgIGRlc2Muc2V0LmNhbGwocmVjZWl2ZXIsIHZhbHVlKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoIWRlc2Mud3JpdGFibGUpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocmVjZWl2ZXIsIHByb3BlcnR5KTsKICAgICAgICAgICAgaWYgKGRlc2MpIHsKICAgICAgICAgICAgICAgIGlmICghZGVzYy53cml0YWJsZSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGRlc2MudmFsdWUgPSB2YWx1ZTsKICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShyZWNlaXZlciwgcHJvcGVydHksIGRlc2MpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgX2RlZmluZV9wcm9wZXJ0eShyZWNlaXZlciwgcHJvcGVydHksIHZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICB9OwogICAgfQogICAgcmV0dXJuIHNldCh0YXJnZXQsIHByb3BlcnR5LCB2YWx1ZSwgcmVjZWl2ZXIpOwp9CmZ1bmN0aW9uIF9zZXQodGFyZ2V0LCBwcm9wZXJ0eSwgdmFsdWUsIHJlY2VpdmVyLCBpc1N0cmljdCkgewogICAgdmFyIHMgPSBzZXQodGFyZ2V0LCBwcm9wZXJ0eSwgdmFsdWUsIHJlY2VpdmVyIHx8IHRhcmdldCk7CiAgICBpZiAoIXMgJiYgaXNTdHJpY3QpIHsKICAgICAgICB0aHJvdyBuZXcgRXJyb3IoImZhaWxlZCB0byBzZXQgcHJvcGVydHkiKTsKICAgIH0KICAgIHJldHVybiB2YWx1ZTsKfQpmdW5jdGlvbiBfc2V0X3Byb3RvdHlwZV9vZihvLCBwKSB7CiAgICBfc2V0X3Byb3RvdHlwZV9vZiA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbiBzZXRQcm90b3R5cGVPZihvLCBwKSB7CiAgICAgICAgby5fX3Byb3RvX18gPSBwOwogICAgICAgIHJldHVybiBvOwogICAgfTsKICAgIHJldHVybiBfc2V0X3Byb3RvdHlwZV9vZihvLCBwKTsKfQpmdW5jdGlvbiBfc2tpcF9maXJzdF9nZW5lcmF0b3JfbmV4dChmbikgewogICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBpdCA9IGZuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgaXQubmV4dCgpOwogICAgICAgIHJldHVybiBpdDsKICAgIH07Cn0KZnVuY3Rpb24gX3NsaWNlZF90b19hcnJheShhcnIsIGkpIHsKICAgIHJldHVybiBfYXJyYXlfd2l0aF9ob2xlcyhhcnIpIHx8IF9pdGVyYWJsZV90b19hcnJheV9saW1pdChhcnIsIGkpIHx8IF91bnN1cHBvcnRlZF9pdGVyYWJsZV90b19hcnJheShhcnIsIGkpIHx8IF9ub25faXRlcmFibGVfcmVzdCgpOwp9CmZ1bmN0aW9uIF9zbGljZWRfdG9fYXJyYXlfbG9vc2UoYXJyLCBpKSB7CiAgICByZXR1cm4gX2FycmF5X3dpdGhfaG9sZXMoYXJyKSB8fCBfaXRlcmFibGVfdG9fYXJyYXlfbGltaXRfbG9vc2UoYXJyLCBpKSB8fCBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkoYXJyLCBpKQogICAgICAgIHx8IF9ub25faXRlcmFibGVfcmVzdCgpOwp9CmZ1bmN0aW9uIF9zdXBlcl9wcm9wX2Jhc2Uob2JqZWN0LCBwcm9wZXJ0eSkgewogICAgd2hpbGUgKCFPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqZWN0LCBwcm9wZXJ0eSkpIHsKICAgICAgICBvYmplY3QgPSBfZ2V0X3Byb3RvdHlwZV9vZihvYmplY3QpOwogICAgICAgIGlmIChvYmplY3QgPT09IG51bGwpIGJyZWFrOwogICAgfQogICAgcmV0dXJuIG9iamVjdDsKfQpmdW5jdGlvbiBfdGFnZ2VkX3RlbXBsYXRlX2xpdGVyYWwoc3RyaW5ncywgcmF3KSB7CiAgICBpZiAoIXJhdykgewogICAgICAgIHJhdyA9IHN0cmluZ3Muc2xpY2UoMCk7CiAgICB9CiAgICByZXR1cm4gT2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydGllcyhzdHJpbmdzLCB7IHJhdzogeyB2YWx1ZTogT2JqZWN0LmZyZWV6ZShyYXcpIH0gfSkpOwp9CmZ1bmN0aW9uIF90YWdnZWRfdGVtcGxhdGVfbGl0ZXJhbF9sb29zZShzdHJpbmdzLCByYXcpIHsKICAgIGlmICghcmF3KSB7CiAgICAgICAgcmF3ID0gc3RyaW5ncy5zbGljZSgwKTsKICAgIH0KICAgIHN0cmluZ3MucmF3ID0gcmF3OwogICAgcmV0dXJuIHN0cmluZ3M7Cn0KZnVuY3Rpb24gX3Rocm93KGUpIHsKICAgIHRocm93IGU7Cn0KZnVuY3Rpb24gX3RvX2FycmF5KGFycikgewogICAgcmV0dXJuIF9hcnJheV93aXRoX2hvbGVzKGFycikgfHwgX2l0ZXJhYmxlX3RvX2FycmF5KGFycikgfHwgX3Vuc3VwcG9ydGVkX2l0ZXJhYmxlX3RvX2FycmF5KGFycikgfHwgX25vbl9pdGVyYWJsZV9yZXN0KCk7Cn0KZnVuY3Rpb24gX3RvX2NvbnN1bWFibGVfYXJyYXkoYXJyKSB7CiAgICByZXR1cm4gX2FycmF5X3dpdGhvdXRfaG9sZXMoYXJyKSB8fCBfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkoYXJyKSB8fCBfbm9uX2l0ZXJhYmxlX3NwcmVhZCgpOwp9CmZ1bmN0aW9uIF90b19wcmltaXRpdmUoaW5wdXQsIGhpbnQpIHsKICAgIGlmIChfdHlwZV9vZihpbnB1dCkgIT09ICJvYmplY3QiIHx8IGlucHV0ID09PSBudWxsKSByZXR1cm4gaW5wdXQ7CiAgICB2YXIgcHJpbSA9IGlucHV0W1N5bWJvbC50b1ByaW1pdGl2ZV07CiAgICBpZiAocHJpbSAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgdmFyIHJlcyA9IHByaW0uY2FsbChpbnB1dCwgaGludCB8fCAiZGVmYXVsdCIpOwogICAgICAgIGlmIChfdHlwZV9vZihyZXMpICE9PSAib2JqZWN0IikgcmV0dXJuIHJlczsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJAQHRvUHJpbWl0aXZlIG11c3QgcmV0dXJuIGEgcHJpbWl0aXZlIHZhbHVlLiIpOwogICAgfQogICAgcmV0dXJuIChoaW50ID09PSAic3RyaW5nIiA/IFN0cmluZyA6IE51bWJlcikoaW5wdXQpOwp9CmZ1bmN0aW9uIF90b19wcm9wZXJ0eV9rZXkoYXJnKSB7CiAgICB2YXIga2V5ID0gX3RvX3ByaW1pdGl2ZShhcmcsICJzdHJpbmciKTsKICAgIHJldHVybiBfdHlwZV9vZihrZXkpID09PSAic3ltYm9sIiA/IGtleSA6IFN0cmluZyhrZXkpOwp9CmZ1bmN0aW9uIF91cGRhdGUodGFyZ2V0LCBwcm9wZXJ0eSwgcmVjZWl2ZXIsIGlzU3RyaWN0KSB7CiAgICByZXR1cm4gewogICAgICAgIGdldCBfKCkgewogICAgICAgICAgICByZXR1cm4gX2dldCh0YXJnZXQsIHByb3BlcnR5LCByZWNlaXZlcik7CiAgICAgICAgfSwKICAgICAgICBzZXQgXyh2YWx1ZSkgewogICAgICAgICAgICBfc2V0KHRhcmdldCwgcHJvcGVydHksIHZhbHVlLCByZWNlaXZlciwgaXNTdHJpY3QpOwogICAgICAgIH0KICAgIH07Cn0KZnVuY3Rpb24gX3R5cGVfb2Yob2JqKSB7CiAgICAiQHN3Yy9oZWxwZXJzIC0gdHlwZW9mIjsKICAgIHJldHVybiBvYmogJiYgdHlwZW9mIFN5bWJvbCAhPT0gInVuZGVmaW5lZCIgJiYgb2JqLmNvbnN0cnVjdG9yID09PSBTeW1ib2wgPyAic3ltYm9sIiA6IHR5cGVvZiBvYmo7Cn0KZnVuY3Rpb24gX3Vuc3VwcG9ydGVkX2l0ZXJhYmxlX3RvX2FycmF5KG8sIG1pbkxlbikgewogICAgaWYgKCFvKSByZXR1cm47CiAgICBpZiAodHlwZW9mIG8gPT09ICJzdHJpbmciKSByZXR1cm4gX2FycmF5X2xpa2VfdG9fYXJyYXkobywgbWluTGVuKTsKICAgIHZhciBuID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKG8pLnNsaWNlKDgsIC0xKTsKICAgIGlmIChuID09PSAiT2JqZWN0IiAmJiBvLmNvbnN0cnVjdG9yKSBuID0gby5jb25zdHJ1Y3Rvci5uYW1lOwogICAgaWYgKG4gPT09ICJNYXAiIHx8IG4gPT09ICJTZXQiKSByZXR1cm4gQXJyYXkuZnJvbShuKTsKICAgIGlmIChuID09PSAiQXJndW1lbnRzIiB8fCAvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChuKSkgcmV0dXJuIF9hcnJheV9saWtlX3RvX2FycmF5KG8sIG1pbkxlbik7Cn0KZnVuY3Rpb24gX3dyYXBfYXN5bmNfZ2VuZXJhdG9yKGZuKSB7CiAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIG5ldyBfYXN5bmNfZ2VuZXJhdG9yKGZuLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykpOwogICAgfTsKfQpmdW5jdGlvbiBfd3JhcF9uYXRpdmVfc3VwZXIoQ2xhc3MpIHsKICAgIHZhciBfY2FjaGUgPSB0eXBlb2YgTWFwID09PSAiZnVuY3Rpb24iID8gbmV3IE1hcCgpIDogdW5kZWZpbmVkOwogICAgX3dyYXBfbmF0aXZlX3N1cGVyID0gZnVuY3Rpb24gd3JhcE5hdGl2ZVN1cGVyKENsYXNzKSB7CiAgICAgICAgaWYgKENsYXNzID09PSBudWxsIHx8ICFfaXNfbmF0aXZlX2Z1bmN0aW9uKENsYXNzKSkgcmV0dXJuIENsYXNzOwogICAgICAgIGlmICh0eXBlb2YgQ2xhc3MgIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigiU3VwZXIgZXhwcmVzc2lvbiBtdXN0IGVpdGhlciBiZSBudWxsIG9yIGEgZnVuY3Rpb24iKTsKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZiBfY2FjaGUgIT09ICJ1bmRlZmluZWQiKSB7CiAgICAgICAgICAgIGlmIChfY2FjaGUuaGFzKENsYXNzKSkgcmV0dXJuIF9jYWNoZS5nZXQoQ2xhc3MpOwogICAgICAgICAgICBfY2FjaGUuc2V0KENsYXNzLCBXcmFwcGVyKTsKICAgICAgICB9CiAgICAgICAgZnVuY3Rpb24gV3JhcHBlcigpIHsKICAgICAgICAgICAgcmV0dXJuIF9jb25zdHJ1Y3QoQ2xhc3MsIGFyZ3VtZW50cywgX2dldF9wcm90b3R5cGVfb2YodGhpcykuY29uc3RydWN0b3IpOwogICAgICAgIH0KICAgICAgICBXcmFwcGVyLnByb3RvdHlwZSA9IE9iamVjdC5jcmVhdGUoQ2xhc3MucHJvdG90eXBlLCB7CiAgICAgICAgICAgIGNvbnN0cnVjdG9yOiB7IHZhbHVlOiBXcmFwcGVyLCBlbnVtZXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSB9CiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuIF9zZXRfcHJvdG90eXBlX29mKFdyYXBwZXIsIENsYXNzKTsKICAgIH07CiAgICByZXR1cm4gX3dyYXBfbmF0aXZlX3N1cGVyKENsYXNzKTsKfQpmdW5jdGlvbiBfd3JpdGVfb25seV9lcnJvcihuYW1lKSB7CiAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJcIiIgKyBuYW1lICsgIlwiIGlzIHdyaXRlLW9ubHkiKTsKfQpmdW5jdGlvbiBfY2xhc3NfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZShyZWNlaXZlciwgcHJpdmF0ZU1hcCkgewogICAgdmFyIGRlc2NyaXB0b3IgPSBfY2xhc3NfZXh0cmFjdF9maWVsZF9kZXNjcmlwdG9yKHJlY2VpdmVyLCBwcml2YXRlTWFwLCAic2V0Iik7CiAgICByZXR1cm4gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZGVzdHJ1Y3R1cmUocmVjZWl2ZXIsIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9jbGFzc19zdGF0aWNfcHJpdmF0ZV9maWVsZF9kZXN0cnVjdHVyZShyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3RvciwgZGVzY3JpcHRvcikgewogICAgX2NsYXNzX2NoZWNrX3ByaXZhdGVfc3RhdGljX2FjY2VzcyhyZWNlaXZlciwgY2xhc3NDb25zdHJ1Y3Rvcik7CiAgICBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfZmllbGRfZGVzY3JpcHRvcihkZXNjcmlwdG9yLCAic2V0Iik7CiAgICByZXR1cm4gX2NsYXNzX2FwcGx5X2Rlc2NyaXB0b3JfZGVzdHJ1Y3R1cmUocmVjZWl2ZXIsIGRlc2NyaXB0b3IpOwp9CmZ1bmN0aW9uIF9jbGFzc19zdGF0aWNfcHJpdmF0ZV9tZXRob2RfZ2V0KHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yLCBtZXRob2QpIHsKICAgIF9jbGFzc19jaGVja19wcml2YXRlX3N0YXRpY19hY2Nlc3MocmVjZWl2ZXIsIGNsYXNzQ29uc3RydWN0b3IpOwogICAgcmV0dXJuIG1ldGhvZDsKfQpmdW5jdGlvbiBfY2xhc3NfY2hlY2tfcHJpdmF0ZV9zdGF0aWNfYWNjZXNzKHJlY2VpdmVyLCBjbGFzc0NvbnN0cnVjdG9yKSB7CiAgICBpZiAocmVjZWl2ZXIgIT09IGNsYXNzQ29uc3RydWN0b3IpIHsKICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCJQcml2YXRlIHN0YXRpYyBhY2Nlc3Mgb2Ygd3JvbmcgcHJvdmVuYW5jZSIpOwogICAgfQp9CmZ1bmN0aW9uIF9pc19uYXRpdmVfcmVmbGVjdF9jb25zdHJ1Y3QoKSB7CiAgICAvLyBTaW5jZSBSZWZsZWN0LmNvbnN0cnVjdCBjYW4ndCBiZSBwcm9wZXJseSBwb2x5ZmlsbGVkLCBzb21lCiAgICAvLyBpbXBsZW1lbnRhdGlvbnMgKGUuZy4gY29yZS1qc0AyKSBkb24ndCBzZXQgdGhlIGNvcnJlY3QgaW50ZXJuYWwgc2xvdHMuCiAgICAvLyBUaG9zZSBwb2x5ZmlsbHMgZG9uJ3QgYWxsb3cgdXMgdG8gc3ViY2xhc3MgYnVpbHQtaW5zLCBzbyB3ZSBuZWVkIHRvCiAgICAvLyB1c2Ugb3VyIGZhbGxiYWNrIGltcGxlbWVudGF0aW9uLgogICAgdHJ5IHsKICAgICAgICAvLyBJZiB0aGUgaW50ZXJuYWwgc2xvdHMgYXJlbid0IHNldCwgdGhpcyB0aHJvd3MgYW4gZXJyb3Igc2ltaWxhciB0bwogICAgICAgIC8vICAgVHlwZUVycm9yOiB0aGlzIGlzIG5vdCBhIEJvb2xlYW4gb2JqZWN0LgogICAgICAgIHZhciByZXN1bHQgPSAhQm9vbGVhbi5wcm90b3R5cGUudmFsdWVPZi5jYWxsKFJlZmxlY3QuY29uc3RydWN0KEJvb2xlYW4sIFtdLCBmdW5jdGlvbigpIHt9KSk7CiAgICB9IGNhdGNoIChfKSB7fQogICAgcmV0dXJuIChfaXNfbmF0aXZlX3JlZmxlY3RfY29uc3RydWN0ID0gZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuICEhcmVzdWx0OwogICAgfSkoKTsKfQpmdW5jdGlvbiBfY3JlYXRlX3N1cGVyKERlcml2ZWQpIHsKICAgIHZhciBoYXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0ID0gX2lzX25hdGl2ZV9yZWZsZWN0X2NvbnN0cnVjdCgpOwogICAgcmV0dXJuIGZ1bmN0aW9uIF9jcmVhdGVTdXBlckludGVybmFsKCkgewogICAgICAgIHZhciBTdXBlciA9IF9nZXRfcHJvdG90eXBlX29mKERlcml2ZWQpLCByZXN1bHQ7CiAgICAgICAgaWYgKGhhc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QpIHsKICAgICAgICAgICAgdmFyIE5ld1RhcmdldCA9IF9nZXRfcHJvdG90eXBlX29mKHRoaXMpLmNvbnN0cnVjdG9yOwogICAgICAgICAgICByZXN1bHQgPSBSZWZsZWN0LmNvbnN0cnVjdChTdXBlciwgYXJndW1lbnRzLCBOZXdUYXJnZXQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJlc3VsdCA9IFN1cGVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBfcG9zc2libGVfY29uc3RydWN0b3JfcmV0dXJuKHRoaXMsIHJlc3VsdCk7CiAgICB9Owp9CmZ1bmN0aW9uIF9jcmVhdGVfZm9yX29mX2l0ZXJhdG9yX2hlbHBlcl9sb29zZShvLCBhbGxvd0FycmF5TGlrZSkgewogICAgdmFyIGl0ID0gdHlwZW9mIFN5bWJvbCAhPT0gInVuZGVmaW5lZCIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdIHx8IG9bIkBAaXRlcmF0b3IiXTsKICAgIGlmIChpdCkgcmV0dXJuIChpdCA9IGl0LmNhbGwobykpLm5leHQuYmluZChpdCk7CiAgICAvLyBGYWxsYmFjayBmb3IgZW5naW5lcyB3aXRob3V0IHN5bWJvbCBzdXBwb3J0CiAgICBpZiAoQXJyYXkuaXNBcnJheShvKSB8fCAoaXQgPSBfdW5zdXBwb3J0ZWRfaXRlcmFibGVfdG9fYXJyYXkobykpIHx8IGFsbG93QXJyYXlMaWtlICYmIG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgewogICAgICAgIGlmIChpdCkgbyA9IGl0OwogICAgICAgIHZhciBpID0gMDsKICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIGlmIChpID49IG8ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4geyBkb25lOiB0cnVlIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHsgZG9uZTogZmFsc2UsIHZhbHVlOiBvW2krK10gfTsKICAgICAgICB9OwogICAgfQogICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAiSW52YWxpZCBhdHRlbXB0IHRvIGl0ZXJhdGUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxcbkluIG9yZGVyIHRvIGJlIGl0ZXJhYmxlLCBub24tYXJyYXkgb2JqZWN0cyBtdXN0IGhhdmUgYSBbU3ltYm9sLml0ZXJhdG9yXSgpIG1ldGhvZC4iCiAgICApOwp9CmZ1bmN0aW9uIF90c19kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYykgewogICAgdmFyIGMgPSBhcmd1bWVudHMubGVuZ3RoLCByID0gYyA8IDMgPyB0YXJnZXQgOiBkZXNjID09PSBudWxsID8gZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIDogZGVzYywgZDsKICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gIm9iamVjdCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09ICJmdW5jdGlvbiIpIHIgPSBSZWZsZWN0LmRlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKTsKICAgIGVsc2UgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIGlmIChkID0gZGVjb3JhdG9yc1tpXSkgciA9IChjIDwgMyA/IGQocikgOiBjID4gMyA/IGQodGFyZ2V0LCBrZXksIHIpIDogZCh0YXJnZXQsIGtleSkpIHx8IHI7CiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByOwp9ZnVuY3Rpb24gX3RzX2dlbmVyYXRvcih0aGlzQXJnLCBib2R5KSB7CiAgICB2YXIgZiwgeSwgdCwgZywgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uICgpIHsgaWYgKHRbMF0gJiAxKSB0aHJvdyB0WzFdOyByZXR1cm4gdFsxXTsgfSwgdHJ5czogW10sIG9wczogW10gfTsKICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCAidGhyb3ciOiB2ZXJiKDEpLCAicmV0dXJuIjogdmVyYigyKSB9LCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9KSwgZzsKICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfQogICAgZnVuY3Rpb24gc3RlcChvcCkgewogICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7CiAgICAgICAgd2hpbGUgKF8pIHRyeSB7CiAgICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbInJldHVybiJdIDogb3BbMF0gPyB5WyJ0aHJvdyJdIHx8ICgodCA9IHlbInJldHVybiJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDsKICAgICAgICAgICAgaWYgKHkgPSAwLCB0KSBvcCA9IFtvcFswXSAmIDIsIHQudmFsdWVdOwogICAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7CiAgICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgNDogXy5sYWJlbCsrOyByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07CiAgICAgICAgICAgICAgICBjYXNlIDU6IF8ubGFiZWwrKzsgeSA9IG9wWzFdOyBvcCA9IFswXTsgY29udGludWU7CiAgICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7IF8gPSAwOyBjb250aW51ZTsgfQogICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7IF8ubGFiZWwgPSB0WzFdOyB0ID0gb3A7IGJyZWFrOyB9CiAgICAgICAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsgXy5sYWJlbCA9IHRbMl07IF8ub3BzLnB1c2gob3ApOyBicmVhazsgfQogICAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTsKICAgICAgICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7IGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pOwogICAgICAgIH0gY2F0Y2ggKGUpIHsgb3AgPSBbNiwgZV07IHkgPSAwOyB9IGZpbmFsbHkgeyBmID0gdCA9IDA7IH0KICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTsKICAgIH0KfWZ1bmN0aW9uIF90c19tZXRhZGF0YShrLCB2KSB7CiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09ICJvYmplY3QiICYmIHR5cGVvZiBSZWZsZWN0Lm1ldGFkYXRhID09PSAiZnVuY3Rpb24iKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShrLCB2KTsKfWZ1bmN0aW9uIF90c19wYXJhbShwYXJhbUluZGV4LCBkZWNvcmF0b3IpIHsKICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHsgZGVjb3JhdG9yKHRhcmdldCwga2V5LCBwYXJhbUluZGV4KTsgfQp9ZnVuY3Rpb24gX3RzX3ZhbHVlcyhvKSB7CiAgICB2YXIgcyA9IHR5cGVvZiBTeW1ib2wgPT09ICJmdW5jdGlvbiIgJiYgU3ltYm9sLml0ZXJhdG9yLCBtID0gcyAmJiBvW3NdLCBpID0gMDsKICAgIGlmIChtKSByZXR1cm4gbS5jYWxsKG8pOwogICAgaWYgKG8gJiYgdHlwZW9mIG8ubGVuZ3RoID09PSAibnVtYmVyIikgcmV0dXJuIHsKICAgICAgICBuZXh0OiBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIGlmIChvICYmIGkgPj0gby5sZW5ndGgpIG8gPSB2b2lkIDA7CiAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvICYmIG9baSsrXSwgZG9uZTogIW8gfTsKICAgICAgICB9CiAgICB9OwogICAgdGhyb3cgbmV3IFR5cGVFcnJvcihzID8gIk9iamVjdCBpcyBub3QgaXRlcmFibGUuIiA6ICJTeW1ib2wuaXRlcmF0b3IgaXMgbm90IGRlZmluZWQuIik7Cn1mdW5jdGlvbiBfdHNfYWRkX2Rpc3Bvc2FibGVfcmVzb3VyY2UoZW52LCB2YWx1ZSwgYXN5bmMpIHsKICAgIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdm9pZCAwKSB7CiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gIm9iamVjdCIgJiYgdHlwZW9mIHZhbHVlICE9PSAiZnVuY3Rpb24iKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJPYmplY3QgZXhwZWN0ZWQuIik7CiAgICAgICAgdmFyIGRpc3Bvc2UsIGlubmVyOwogICAgICAgIGlmIChhc3luYykgewogICAgICAgICAgICBpZiAoIVN5bWJvbC5hc3luY0Rpc3Bvc2UpIHRocm93IG5ldyBUeXBlRXJyb3IoIlN5bWJvbC5hc3luY0Rpc3Bvc2UgaXMgbm90IGRlZmluZWQuIik7CiAgICAgICAgICAgIGRpc3Bvc2UgPSB2YWx1ZVtTeW1ib2wuYXN5bmNEaXNwb3NlXTsKICAgICAgICB9CiAgICAgICAgaWYgKGRpc3Bvc2UgPT09IHZvaWQgMCkgewogICAgICAgICAgICBpZiAoIVN5bWJvbC5kaXNwb3NlKSB0aHJvdyBuZXcgVHlwZUVycm9yKCJTeW1ib2wuZGlzcG9zZSBpcyBub3QgZGVmaW5lZC4iKTsKICAgICAgICAgICAgZGlzcG9zZSA9IHZhbHVlW1N5bWJvbC5kaXNwb3NlXTsKICAgICAgICAgICAgaWYgKGFzeW5jKSBpbm5lciA9IGRpc3Bvc2U7CiAgICAgICAgfQogICAgICAgIGlmICh0eXBlb2YgZGlzcG9zZSAhPT0gImZ1bmN0aW9uIikgdGhyb3cgbmV3IFR5cGVFcnJvcigiT2JqZWN0IG5vdCBkaXNwb3NhYmxlLiIpOwogICAgICAgIGlmIChpbm5lcikgZGlzcG9zZSA9IGZ1bmN0aW9uICgpIHsgdHJ5IHsgaW5uZXIuY2FsbCh0aGlzKTsgfSBjYXRjaCAoZSkgeyByZXR1cm4gUHJvbWlzZS5yZWplY3QoZSk7IH0gfTsKICAgICAgICBlbnYuc3RhY2sucHVzaCh7IHZhbHVlOiB2YWx1ZSwgZGlzcG9zZTogZGlzcG9zZSwgYXN5bmM6IGFzeW5jIH0pOwogICAgfQogICAgZWxzZSBpZiAoYXN5bmMpIHsKICAgICAgICBlbnYuc3RhY2sucHVzaCh7IGFzeW5jOiB0cnVlIH0pOwogICAgfQogICAgcmV0dXJuIHZhbHVlOwp9ZnVuY3Rpb24gX3RzX2Rpc3Bvc2VfcmVzb3VyY2VzKGVudikgewogICAgdmFyIF9TdXBwcmVzc2VkRXJyb3IgPSB0eXBlb2YgU3VwcHJlc3NlZEVycm9yID09PSAiZnVuY3Rpb24iID8gU3VwcHJlc3NlZEVycm9yIDogZnVuY3Rpb24gKGVycm9yLCBzdXBwcmVzc2VkLCBtZXNzYWdlKSB7CiAgICAgICAgdmFyIGUgPSBuZXcgRXJyb3IobWVzc2FnZSk7CiAgICAgICAgcmV0dXJuIGUubmFtZSA9ICJTdXBwcmVzc2VkRXJyb3IiLCBlLmVycm9yID0gZXJyb3IsIGUuc3VwcHJlc3NlZCA9IHN1cHByZXNzZWQsIGU7CiAgICB9OwoKCiAgICByZXR1cm4gKF90c19kaXNwb3NlX3Jlc291cmNlcyA9IGZ1bmN0aW9uIF90c19kaXNwb3NlX3Jlc291cmNlcyhlbnYpIHsKICAgICAgICBmdW5jdGlvbiBmYWlsKGUpIHsKICAgICAgICAgICAgZW52LmVycm9yID0gZW52Lmhhc0Vycm9yID8gbmV3IF9TdXBwcmVzc2VkRXJyb3IoZSwgZW52LmVycm9yLCAiQW4gZXJyb3Igd2FzIHN1cHByZXNzZWQgZHVyaW5nIGRpc3Bvc2FsLiIpIDogZTsKICAgICAgICAgICAgZW52Lmhhc0Vycm9yID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgdmFyIHIsIHMgPSAwOwogICAgICAgIGZ1bmN0aW9uIG5leHQoKSB7CiAgICAgICAgICAgIHdoaWxlIChyID0gZW52LnN0YWNrLnBvcCgpKSB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGlmICghci5hc3luYyAmJiBzID09PSAxKSByZXR1cm4gcyA9IDAsIGVudi5zdGFjay5wdXNoKHIpLCBQcm9taXNlLnJlc29sdmUoKS50aGVuKG5leHQpOwogICAgICAgICAgICAgICAgICAgIGlmIChyLmRpc3Bvc2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHJlc3VsdCA9IHIuZGlzcG9zZS5jYWxsKHIudmFsdWUpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoci5hc3luYykgcmV0dXJuIHMgfD0gMiwgUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCkudGhlbihuZXh0LCBmdW5jdGlvbiAoZSkgeyBmYWlsKGUpOyByZXR1cm4gbmV4dCgpOyB9KTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSBzIHw9IDE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgIGZhaWwoZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHMgPT09IDEpIHJldHVybiBlbnYuaGFzRXJyb3IgPyBQcm9taXNlLnJlamVjdChlbnYuZXJyb3IpIDogUHJvbWlzZS5yZXNvbHZlKCk7CiAgICAgICAgICAgIGlmIChlbnYuaGFzRXJyb3IpIHRocm93IGVudi5lcnJvcjsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5leHQoKTsKICAgIH0pKGVudik7Cn0vKiBAbWluVmVyc2lvbiA3LjIwLjAgKi8KCi8qKgogIEVudW1zIGFyZSB1c2VkIGluIHRoaXMgZmlsZSwgYnV0IG5vdCBhc3NpZ25lZCB0byB2YXJzIHRvIGF2b2lkIG5vbi1ob2lzdGFibGUgdmFsdWVzCgogIENPTlNUUlVDVE9SID0gMDsKICBQVUJMSUMgPSAxOwogIFBSSVZBVEUgPSAyOwoKICBGSUVMRCA9IDA7CiAgQUNDRVNTT1IgPSAxOwogIE1FVEhPRCA9IDI7CiAgR0VUVEVSID0gMzsKICBTRVRURVIgPSA0OwoKICBTVEFUSUMgPSA1OwoKICBDTEFTUyA9IDEwOyAvLyBvbmx5IHVzZWQgaW4gYXNzZXJ0VmFsaWRSZXR1cm5WYWx1ZQoqLwoKZnVuY3Rpb24gYXBwbHlEZWNzMjIwM1JGYWN0b3J5KCkgewogICAgZnVuY3Rpb24gY3JlYXRlQWRkSW5pdGlhbGl6ZXJNZXRob2QoaW5pdGlhbGl6ZXJzLCBkZWNvcmF0b3JGaW5pc2hlZFJlZikgewogICAgICAgIHJldHVybiBmdW5jdGlvbiBhZGRJbml0aWFsaXplcihpbml0aWFsaXplcikgewogICAgICAgICAgICBhc3NlcnROb3RGaW5pc2hlZChkZWNvcmF0b3JGaW5pc2hlZFJlZiwgImFkZEluaXRpYWxpemVyIik7CiAgICAgICAgICAgIGFzc2VydENhbGxhYmxlKGluaXRpYWxpemVyLCAiQW4gaW5pdGlhbGl6ZXIiKTsKICAgICAgICAgICAgaW5pdGlhbGl6ZXJzLnB1c2goaW5pdGlhbGl6ZXIpOwogICAgICAgIH07CiAgICB9CgogICAgZnVuY3Rpb24gbWVtYmVyRGVjKAogICAgICAgIGRlYywKICAgICAgICBuYW1lLAogICAgICAgIGRlc2MsCiAgICAgICAgaW5pdGlhbGl6ZXJzLAogICAgICAgIGtpbmQsCiAgICAgICAgaXNTdGF0aWMsCiAgICAgICAgaXNQcml2YXRlLAogICAgICAgIG1ldGFkYXRhLAogICAgICAgIHZhbHVlCiAgICApIHsKICAgICAgICB2YXIga2luZFN0cjsKCiAgICAgICAgc3dpdGNoIChraW5kKSB7CiAgICAgICAgICAgIGNhc2UgMSAvKiBBQ0NFU1NPUiAqLzoKICAgICAgICAgICAgICAgIGtpbmRTdHIgPSAiYWNjZXNzb3IiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMiAvKiBNRVRIT0QgKi86CiAgICAgICAgICAgICAgICBraW5kU3RyID0gIm1ldGhvZCI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAzIC8qIEdFVFRFUiAqLzoKICAgICAgICAgICAgICAgIGtpbmRTdHIgPSAiZ2V0dGVyIjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQgLyogU0VUVEVSICovOgogICAgICAgICAgICAgICAga2luZFN0ciA9ICJzZXR0ZXIiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICBraW5kU3RyID0gImZpZWxkIjsKICAgICAgICB9CgogICAgICAgIHZhciBjdHggPSB7CiAgICAgICAgICAgIGtpbmQ6IGtpbmRTdHIsCiAgICAgICAgICAgIG5hbWU6IGlzUHJpdmF0ZSA/ICIjIiArIG5hbWUgOiBuYW1lLAogICAgICAgICAgICBzdGF0aWM6IGlzU3RhdGljLAogICAgICAgICAgICBwcml2YXRlOiBpc1ByaXZhdGUsCiAgICAgICAgICAgIG1ldGFkYXRhOiBtZXRhZGF0YSwKICAgICAgICB9OwoKICAgICAgICB2YXIgZGVjb3JhdG9yRmluaXNoZWRSZWYgPSB7IHY6IGZhbHNlIH07CgogICAgICAgIGN0eC5hZGRJbml0aWFsaXplciA9IGNyZWF0ZUFkZEluaXRpYWxpemVyTWV0aG9kKAogICAgICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAgICAgIGRlY29yYXRvckZpbmlzaGVkUmVmCiAgICAgICAgKTsKCiAgICAgICAgdmFyIGdldCwgc2V0OwogICAgICAgIGlmIChraW5kID09PSAwIC8qIEZJRUxEICovKSB7CiAgICAgICAgICAgIGlmIChpc1ByaXZhdGUpIHsKICAgICAgICAgICAgICAgIGdldCA9IGRlc2MuZ2V0OwogICAgICAgICAgICAgICAgc2V0ID0gZGVzYy5zZXQ7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBnZXQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXNbbmFtZV07CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgc2V0ID0gZnVuY3Rpb24gKHYpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzW25hbWVdID0gdjsKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDIgLyogTUVUSE9EICovKSB7CiAgICAgICAgICAgIGdldCA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgIHJldHVybiBkZXNjLnZhbHVlOwogICAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vIHJlcGxhY2Ugd2l0aCB2YWx1ZXMgdGhhdCB3aWxsIGdvIHRocm91Z2ggdGhlIGZpbmFsIGdldHRlciBhbmQgc2V0dGVyCiAgICAgICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovIHx8IGtpbmQgPT09IDMgLyogR0VUVEVSICovKSB7CiAgICAgICAgICAgICAgICBnZXQgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRlc2MuZ2V0LmNhbGwodGhpcyk7CiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoa2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLyB8fCBraW5kID09PSA0IC8qIFNFVFRFUiAqLykgewogICAgICAgICAgICAgICAgc2V0ID0gZnVuY3Rpb24gKHYpIHsKICAgICAgICAgICAgICAgICAgICBkZXNjLnNldC5jYWxsKHRoaXMsIHYpOwogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjdHguYWNjZXNzID0KICAgICAgICAgICAgZ2V0ICYmIHNldCA/IHsgZ2V0OiBnZXQsIHNldDogc2V0IH0gOiBnZXQgPyB7IGdldDogZ2V0IH0gOiB7IHNldDogc2V0IH07CgogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHJldHVybiBkZWModmFsdWUsIGN0eCk7CiAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgZGVjb3JhdG9yRmluaXNoZWRSZWYudiA9IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGFzc2VydE5vdEZpbmlzaGVkKGRlY29yYXRvckZpbmlzaGVkUmVmLCBmbk5hbWUpIHsKICAgICAgICBpZiAoZGVjb3JhdG9yRmluaXNoZWRSZWYudikgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoCiAgICAgICAgICAgICAgICAiYXR0ZW1wdGVkIHRvIGNhbGwgIiArIGZuTmFtZSArICIgYWZ0ZXIgZGVjb3JhdGlvbiB3YXMgZmluaXNoZWQiCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGFzc2VydENhbGxhYmxlKGZuLCBoaW50KSB7CiAgICAgICAgaWYgKHR5cGVvZiBmbiAhPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGhpbnQgKyAiIG11c3QgYmUgYSBmdW5jdGlvbiIpOwogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBhc3NlcnRWYWxpZFJldHVyblZhbHVlKGtpbmQsIHZhbHVlKSB7CiAgICAgICAgdmFyIHR5cGUgPSB0eXBlb2YgdmFsdWU7CgogICAgICAgIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgIGlmICh0eXBlICE9PSAib2JqZWN0IiB8fCB2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgICAgICAgICAiYWNjZXNzb3IgZGVjb3JhdG9ycyBtdXN0IHJldHVybiBhbiBvYmplY3Qgd2l0aCBnZXQsIHNldCwgb3IgaW5pdCBwcm9wZXJ0aWVzIG9yIHZvaWQgMCIKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHZhbHVlLmdldCAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICBhc3NlcnRDYWxsYWJsZSh2YWx1ZS5nZXQsICJhY2Nlc3Nvci5nZXQiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodmFsdWUuc2V0ICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgIGFzc2VydENhbGxhYmxlKHZhbHVlLnNldCwgImFjY2Vzc29yLnNldCIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh2YWx1ZS5pbml0ICE9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgIGFzc2VydENhbGxhYmxlKHZhbHVlLmluaXQsICJhY2Nlc3Nvci5pbml0Iik7CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKHR5cGUgIT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgdmFyIGhpbnQ7CiAgICAgICAgICAgIGlmIChraW5kID09PSAwIC8qIEZJRUxEICovKSB7CiAgICAgICAgICAgICAgICBoaW50ID0gImZpZWxkIjsKICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAxMCAvKiBDTEFTUyAqLykgewogICAgICAgICAgICAgICAgaGludCA9ICJjbGFzcyI7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBoaW50ID0gIm1ldGhvZCI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigKICAgICAgICAgICAgICAgIGhpbnQgKyAiIGRlY29yYXRvcnMgbXVzdCByZXR1cm4gYSBmdW5jdGlvbiBvciB2b2lkIDAiCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGFwcGx5TWVtYmVyRGVjKAogICAgICAgIHJldCwKICAgICAgICBiYXNlLAogICAgICAgIGRlY0luZm8sCiAgICAgICAgbmFtZSwKICAgICAgICBraW5kLAogICAgICAgIGlzU3RhdGljLAogICAgICAgIGlzUHJpdmF0ZSwKICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAgbWV0YWRhdGEKICAgICkgewogICAgICAgIHZhciBkZWNzID0gZGVjSW5mb1swXTsKCiAgICAgICAgdmFyIGRlc2MsIGluaXQsIHZhbHVlOwoKICAgICAgICBpZiAoaXNQcml2YXRlKSB7CiAgICAgICAgICAgIGlmIChraW5kID09PSAwIC8qIEZJRUxEICovIHx8IGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8pIHsKICAgICAgICAgICAgICAgIGRlc2MgPSB7CiAgICAgICAgICAgICAgICAgICAgZ2V0OiBkZWNJbmZvWzNdLAogICAgICAgICAgICAgICAgICAgIHNldDogZGVjSW5mb1s0XSwKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMyAvKiBHRVRURVIgKi8pIHsKICAgICAgICAgICAgICAgIGRlc2MgPSB7CiAgICAgICAgICAgICAgICAgICAgZ2V0OiBkZWNJbmZvWzNdLAogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSA0IC8qIFNFVFRFUiAqLykgewogICAgICAgICAgICAgICAgZGVzYyA9IHsKICAgICAgICAgICAgICAgICAgICBzZXQ6IGRlY0luZm9bM10sCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgZGVzYyA9IHsKICAgICAgICAgICAgICAgICAgICB2YWx1ZTogZGVjSW5mb1szXSwKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKGtpbmQgIT09IDAgLyogRklFTEQgKi8pIHsKICAgICAgICAgICAgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYmFzZSwgbmFtZSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoa2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLykgewogICAgICAgICAgICB2YWx1ZSA9IHsKICAgICAgICAgICAgICAgIGdldDogZGVzYy5nZXQsCiAgICAgICAgICAgICAgICBzZXQ6IGRlc2Muc2V0LAogICAgICAgICAgICB9OwogICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMiAvKiBNRVRIT0QgKi8pIHsKICAgICAgICAgICAgdmFsdWUgPSBkZXNjLnZhbHVlOwogICAgICAgIH0gZWxzZSBpZiAoa2luZCA9PT0gMyAvKiBHRVRURVIgKi8pIHsKICAgICAgICAgICAgdmFsdWUgPSBkZXNjLmdldDsKICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDQgLyogU0VUVEVSICovKSB7CiAgICAgICAgICAgIHZhbHVlID0gZGVzYy5zZXQ7CiAgICAgICAgfQoKICAgICAgICB2YXIgbmV3VmFsdWUsIGdldCwgc2V0OwoKICAgICAgICBpZiAodHlwZW9mIGRlY3MgPT09ICJmdW5jdGlvbiIpIHsKICAgICAgICAgICAgbmV3VmFsdWUgPSBtZW1iZXJEZWMoCiAgICAgICAgICAgICAgICBkZWNzLAogICAgICAgICAgICAgICAgbmFtZSwKICAgICAgICAgICAgICAgIGRlc2MsCiAgICAgICAgICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAgICAgICAgICBraW5kLAogICAgICAgICAgICAgICAgaXNTdGF0aWMsCiAgICAgICAgICAgICAgICBpc1ByaXZhdGUsCiAgICAgICAgICAgICAgICBtZXRhZGF0YSwKICAgICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBpZiAobmV3VmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgYXNzZXJ0VmFsaWRSZXR1cm5WYWx1ZShraW5kLCBuZXdWYWx1ZSk7CgogICAgICAgICAgICAgICAgaWYgKGtpbmQgPT09IDAgLyogRklFTEQgKi8pIHsKICAgICAgICAgICAgICAgICAgICBpbml0ID0gbmV3VmFsdWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDEgLyogQUNDRVNTT1IgKi8pIHsKICAgICAgICAgICAgICAgICAgICBpbml0ID0gbmV3VmFsdWUuaW5pdDsKICAgICAgICAgICAgICAgICAgICBnZXQgPSBuZXdWYWx1ZS5nZXQgfHwgdmFsdWUuZ2V0OwogICAgICAgICAgICAgICAgICAgIHNldCA9IG5ld1ZhbHVlLnNldCB8fCB2YWx1ZS5zZXQ7CgogICAgICAgICAgICAgICAgICAgIHZhbHVlID0geyBnZXQ6IGdldCwgc2V0OiBzZXQgfTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBuZXdWYWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGZvciAodmFyIGkgPSBkZWNzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgICB2YXIgZGVjID0gZGVjc1tpXTsKCiAgICAgICAgICAgICAgICBuZXdWYWx1ZSA9IG1lbWJlckRlYygKICAgICAgICAgICAgICAgICAgICBkZWMsCiAgICAgICAgICAgICAgICAgICAgbmFtZSwKICAgICAgICAgICAgICAgICAgICBkZXNjLAogICAgICAgICAgICAgICAgICAgIGluaXRpYWxpemVycywKICAgICAgICAgICAgICAgICAgICBraW5kLAogICAgICAgICAgICAgICAgICAgIGlzU3RhdGljLAogICAgICAgICAgICAgICAgICAgIGlzUHJpdmF0ZSwKICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YSwKICAgICAgICAgICAgICAgICAgICB2YWx1ZQogICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICBpZiAobmV3VmFsdWUgIT09IHZvaWQgMCkgewogICAgICAgICAgICAgICAgICAgIGFzc2VydFZhbGlkUmV0dXJuVmFsdWUoa2luZCwgbmV3VmFsdWUpOwogICAgICAgICAgICAgICAgICAgIHZhciBuZXdJbml0OwoKICAgICAgICAgICAgICAgICAgICBpZiAoa2luZCA9PT0gMCAvKiBGSUVMRCAqLykgewogICAgICAgICAgICAgICAgICAgICAgICBuZXdJbml0ID0gbmV3VmFsdWU7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIG5ld0luaXQgPSBuZXdWYWx1ZS5pbml0OwogICAgICAgICAgICAgICAgICAgICAgICBnZXQgPSBuZXdWYWx1ZS5nZXQgfHwgdmFsdWUuZ2V0OwogICAgICAgICAgICAgICAgICAgICAgICBzZXQgPSBuZXdWYWx1ZS5zZXQgfHwgdmFsdWUuc2V0OwoKICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB7IGdldDogZ2V0LCBzZXQ6IHNldCB9OwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gbmV3VmFsdWU7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiAobmV3SW5pdCAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbml0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluaXQgPSBuZXdJbml0OwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbml0ID09PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0ID0gW2luaXQsIG5ld0luaXRdOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5pdC5wdXNoKG5ld0luaXQpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoa2luZCA9PT0gMCAvKiBGSUVMRCAqLyB8fCBraW5kID09PSAxIC8qIEFDQ0VTU09SICovKSB7CiAgICAgICAgICAgIGlmIChpbml0ID09PSB2b2lkIDApIHsKICAgICAgICAgICAgICAgIC8vIElmIHRoZSBpbml0aWFsaXplciB3YXMgdm9pZCAwLCBzdWIgaW4gYSBkdW1teSBpbml0aWFsaXplcgogICAgICAgICAgICAgICAgaW5pdCA9IGZ1bmN0aW9uIChpbnN0YW5jZSwgaW5pdCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBpbml0OwogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgaW5pdCAhPT0gImZ1bmN0aW9uIikgewogICAgICAgICAgICAgICAgdmFyIG93bkluaXRpYWxpemVycyA9IGluaXQ7CgogICAgICAgICAgICAgICAgaW5pdCA9IGZ1bmN0aW9uIChpbnN0YW5jZSwgaW5pdCkgewogICAgICAgICAgICAgICAgICAgIHZhciB2YWx1ZSA9IGluaXQ7CgogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgb3duSW5pdGlhbGl6ZXJzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gb3duSW5pdGlhbGl6ZXJzW2ldLmNhbGwoaW5zdGFuY2UsIHZhbHVlKTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgb3JpZ2luYWxJbml0aWFsaXplciA9IGluaXQ7CgogICAgICAgICAgICAgICAgaW5pdCA9IGZ1bmN0aW9uIChpbnN0YW5jZSwgaW5pdCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbEluaXRpYWxpemVyLmNhbGwoaW5zdGFuY2UsIGluaXQpOwogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0LnB1c2goaW5pdCk7CiAgICAgICAgfQoKICAgICAgICBpZiAoa2luZCAhPT0gMCAvKiBGSUVMRCAqLykgewogICAgICAgICAgICBpZiAoa2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLykgewogICAgICAgICAgICAgICAgZGVzYy5nZXQgPSB2YWx1ZS5nZXQ7CiAgICAgICAgICAgICAgICBkZXNjLnNldCA9IHZhbHVlLnNldDsKICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAyIC8qIE1FVEhPRCAqLykgewogICAgICAgICAgICAgICAgZGVzYy52YWx1ZSA9IHZhbHVlOwogICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDMgLyogR0VUVEVSICovKSB7CiAgICAgICAgICAgICAgICBkZXNjLmdldCA9IHZhbHVlOwogICAgICAgICAgICB9IGVsc2UgaWYgKGtpbmQgPT09IDQgLyogU0VUVEVSICovKSB7CiAgICAgICAgICAgICAgICBkZXNjLnNldCA9IHZhbHVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoaXNQcml2YXRlKSB7CiAgICAgICAgICAgICAgICBpZiAoa2luZCA9PT0gMSAvKiBBQ0NFU1NPUiAqLykgewogICAgICAgICAgICAgICAgICAgIHJldC5wdXNoKGZ1bmN0aW9uIChpbnN0YW5jZSwgYXJncykgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUuZ2V0LmNhbGwoaW5zdGFuY2UsIGFyZ3MpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIHJldC5wdXNoKGZ1bmN0aW9uIChpbnN0YW5jZSwgYXJncykgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWUuc2V0LmNhbGwoaW5zdGFuY2UsIGFyZ3MpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChraW5kID09PSAyIC8qIE1FVEhPRCAqLykgewogICAgICAgICAgICAgICAgICAgIHJldC5wdXNoKHZhbHVlKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgcmV0LnB1c2goZnVuY3Rpb24gKGluc3RhbmNlLCBhcmdzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZS5jYWxsKGluc3RhbmNlLCBhcmdzKTsKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShiYXNlLCBuYW1lLCBkZXNjKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBhcHBseU1lbWJlckRlY3MoQ2xhc3MsIGRlY0luZm9zLCBtZXRhZGF0YSkgewogICAgICAgIHZhciByZXQgPSBbXTsKICAgICAgICB2YXIgcHJvdG9Jbml0aWFsaXplcnM7CiAgICAgICAgdmFyIHN0YXRpY0luaXRpYWxpemVyczsKCiAgICAgICAgdmFyIGV4aXN0aW5nUHJvdG9Ob25GaWVsZHMgPSBuZXcgTWFwKCk7CiAgICAgICAgdmFyIGV4aXN0aW5nU3RhdGljTm9uRmllbGRzID0gbmV3IE1hcCgpOwoKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGRlY0luZm9zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIHZhciBkZWNJbmZvID0gZGVjSW5mb3NbaV07CgogICAgICAgICAgICAvLyBza2lwIGNvbXB1dGVkIHByb3BlcnR5IG5hbWVzCiAgICAgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShkZWNJbmZvKSkgY29udGludWU7CgogICAgICAgICAgICB2YXIga2luZCA9IGRlY0luZm9bMV07CiAgICAgICAgICAgIHZhciBuYW1lID0gZGVjSW5mb1syXTsKICAgICAgICAgICAgdmFyIGlzUHJpdmF0ZSA9IGRlY0luZm8ubGVuZ3RoID4gMzsKCiAgICAgICAgICAgIHZhciBpc1N0YXRpYyA9IGtpbmQgPj0gNTsgLyogU1RBVElDICovCiAgICAgICAgICAgIHZhciBiYXNlOwogICAgICAgICAgICB2YXIgaW5pdGlhbGl6ZXJzOwoKICAgICAgICAgICAgaWYgKGlzU3RhdGljKSB7CiAgICAgICAgICAgICAgICBiYXNlID0gQ2xhc3M7CiAgICAgICAgICAgICAgICBraW5kID0ga2luZCAtIDUgLyogU1RBVElDICovOwogICAgICAgICAgICAgICAgLy8gaW5pdGlhbGl6ZSBzdGF0aWNJbml0aWFsaXplcnMgd2hlbiB3ZSBzZWUgYSBub24tZmllbGQgc3RhdGljIG1lbWJlcgogICAgICAgICAgICAgICAgc3RhdGljSW5pdGlhbGl6ZXJzID0gc3RhdGljSW5pdGlhbGl6ZXJzIHx8IFtdOwogICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzID0gc3RhdGljSW5pdGlhbGl6ZXJzOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgYmFzZSA9IENsYXNzLnByb3RvdHlwZTsKICAgICAgICAgICAgICAgIC8vIGluaXRpYWxpemUgcHJvdG9Jbml0aWFsaXplcnMgd2hlbiB3ZSBzZWUgYSBub24tZmllbGQgbWVtYmVyCiAgICAgICAgICAgICAgICBwcm90b0luaXRpYWxpemVycyA9IHByb3RvSW5pdGlhbGl6ZXJzIHx8IFtdOwogICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzID0gcHJvdG9Jbml0aWFsaXplcnM7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChraW5kICE9PSAwIC8qIEZJRUxEICovICYmICFpc1ByaXZhdGUpIHsKICAgICAgICAgICAgICAgIHZhciBleGlzdGluZ05vbkZpZWxkcyA9IGlzU3RhdGljCiAgICAgICAgICAgICAgICAgICAgPyBleGlzdGluZ1N0YXRpY05vbkZpZWxkcwogICAgICAgICAgICAgICAgICAgIDogZXhpc3RpbmdQcm90b05vbkZpZWxkczsKCiAgICAgICAgICAgICAgICB2YXIgZXhpc3RpbmdLaW5kID0gZXhpc3RpbmdOb25GaWVsZHMuZ2V0KG5hbWUpIHx8IDA7CgogICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nS2luZCA9PT0gdHJ1ZSB8fAogICAgICAgICAgICAgICAgICAgIChleGlzdGluZ0tpbmQgPT09IDMgLyogR0VUVEVSICovICYmIGtpbmQgIT09IDQpIC8qIFNFVFRFUiAqLyB8fAogICAgICAgICAgICAgICAgICAgIChleGlzdGluZ0tpbmQgPT09IDQgLyogU0VUVEVSICovICYmIGtpbmQgIT09IDMpIC8qIEdFVFRFUiAqLwogICAgICAgICAgICAgICAgKSB7CiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKAogICAgICAgICAgICAgICAgICAgICAgICAiQXR0ZW1wdGVkIHRvIGRlY29yYXRlIGEgcHVibGljIG1ldGhvZC9hY2Nlc3NvciB0aGF0IGhhcyB0aGUgc2FtZSBuYW1lIGFzIGEgcHJldmlvdXNseSBkZWNvcmF0ZWQgcHVibGljIG1ldGhvZC9hY2Nlc3Nvci4gVGhpcyBpcyBub3QgY3VycmVudGx5IHN1cHBvcnRlZCBieSB0aGUgZGVjb3JhdG9ycyBwbHVnaW4uIFByb3BlcnR5IG5hbWUgd2FzOiAiICsKICAgICAgICAgICAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCFleGlzdGluZ0tpbmQgJiYga2luZCA+IDIgLyogTUVUSE9EICovKSB7CiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdOb25GaWVsZHMuc2V0KG5hbWUsIGtpbmQpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBleGlzdGluZ05vbkZpZWxkcy5zZXQobmFtZSwgdHJ1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGFwcGx5TWVtYmVyRGVjKAogICAgICAgICAgICAgICAgcmV0LAogICAgICAgICAgICAgICAgYmFzZSwKICAgICAgICAgICAgICAgIGRlY0luZm8sCiAgICAgICAgICAgICAgICBuYW1lLAogICAgICAgICAgICAgICAga2luZCwKICAgICAgICAgICAgICAgIGlzU3RhdGljLAogICAgICAgICAgICAgICAgaXNQcml2YXRlLAogICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzLAogICAgICAgICAgICAgICAgbWV0YWRhdGEKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIHB1c2hJbml0aWFsaXplcnMocmV0LCBwcm90b0luaXRpYWxpemVycyk7CiAgICAgICAgcHVzaEluaXRpYWxpemVycyhyZXQsIHN0YXRpY0luaXRpYWxpemVycyk7CiAgICAgICAgcmV0dXJuIHJldDsKICAgIH0KCiAgICBmdW5jdGlvbiBwdXNoSW5pdGlhbGl6ZXJzKHJldCwgaW5pdGlhbGl6ZXJzKSB7CiAgICAgICAgaWYgKGluaXRpYWxpemVycykgewogICAgICAgICAgICByZXQucHVzaChmdW5jdGlvbiAoaW5zdGFuY2UpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgaW5pdGlhbGl6ZXJzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzW2ldLmNhbGwoaW5zdGFuY2UpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGluc3RhbmNlOwogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gYXBwbHlDbGFzc0RlY3ModGFyZ2V0Q2xhc3MsIGNsYXNzRGVjcywgbWV0YWRhdGEpIHsKICAgICAgICBpZiAoY2xhc3NEZWNzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgdmFyIGluaXRpYWxpemVycyA9IFtdOwogICAgICAgICAgICB2YXIgbmV3Q2xhc3MgPSB0YXJnZXRDbGFzczsKICAgICAgICAgICAgdmFyIG5hbWUgPSB0YXJnZXRDbGFzcy5uYW1lOwoKICAgICAgICAgICAgZm9yICh2YXIgaSA9IGNsYXNzRGVjcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgewogICAgICAgICAgICAgICAgdmFyIGRlY29yYXRvckZpbmlzaGVkUmVmID0geyB2OiBmYWxzZSB9OwoKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIG5leHROZXdDbGFzcyA9IGNsYXNzRGVjc1tpXShuZXdDbGFzcywgewogICAgICAgICAgICAgICAgICAgICAgICBraW5kOiAiY2xhc3MiLAogICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiBuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICBhZGRJbml0aWFsaXplcjogY3JlYXRlQWRkSW5pdGlhbGl6ZXJNZXRob2QoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbml0aWFsaXplcnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvcmF0b3JGaW5pc2hlZFJlZgogICAgICAgICAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YSwKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZmluYWxseSB7CiAgICAgICAgICAgICAgICAgICAgZGVjb3JhdG9yRmluaXNoZWRSZWYudiA9IHRydWU7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKG5leHROZXdDbGFzcyAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgYXNzZXJ0VmFsaWRSZXR1cm5WYWx1ZSgxMCAvKiBDTEFTUyAqLywgbmV4dE5ld0NsYXNzKTsKICAgICAgICAgICAgICAgICAgICBuZXdDbGFzcyA9IG5leHROZXdDbGFzczsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIFsKICAgICAgICAgICAgICAgIGRlZmluZU1ldGFkYXRhKG5ld0NsYXNzLCBtZXRhZGF0YSksCiAgICAgICAgICAgICAgICBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBpbml0aWFsaXplcnMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZXJzW2ldLmNhbGwobmV3Q2xhc3MpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIF07CiAgICAgICAgfQogICAgICAgIC8vIFRoZSB0cmFuc2Zvcm1lciB3aWxsIG5vdCBlbWl0IGFzc2lnbm1lbnQgd2hlbiB0aGVyZSBhcmUgbm8gY2xhc3MgZGVjb3JhdG9ycywKICAgICAgICAvLyBzbyB3ZSBkb24ndCBoYXZlIHRvIHJldHVybiBhbiBlbXB0eSBhcnJheSBoZXJlLgogICAgfQoKICAgIGZ1bmN0aW9uIGRlZmluZU1ldGFkYXRhKENsYXNzLCBtZXRhZGF0YSkgewogICAgICAgIHJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoCiAgICAgICAgICAgIENsYXNzLAogICAgICAgICAgICBTeW1ib2wubWV0YWRhdGEgfHwgU3ltYm9sLmZvcigiU3ltYm9sLm1ldGFkYXRhIiksCiAgICAgICAgICAgIHsgY29uZmlndXJhYmxlOiB0cnVlLCBlbnVtZXJhYmxlOiB0cnVlLCB2YWx1ZTogbWV0YWRhdGEgfQogICAgICAgICk7CiAgICB9CgogICAgLyoqCiAgICBCYXNpYyB1c2FnZToKICAKICAgIGFwcGx5RGVjcygKICAgICAgQ2xhc3MsCiAgICAgIFsKICAgICAgICAvLyBtZW1iZXIgZGVjb3JhdG9ycwogICAgICAgIFsKICAgICAgICAgIGRlYywgICAgICAgICAgICAgICAgLy8gZGVjIG9yIGFycmF5IG9mIGRlY3MKICAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgLy8ga2luZCBvZiB2YWx1ZSBiZWluZyBkZWNvcmF0ZWQKICAgICAgICAgICdwcm9wJywgICAgICAgICAgICAgLy8gbmFtZSBvZiBwdWJsaWMgcHJvcCBvbiBjbGFzcyBjb250YWluaW5nIHRoZSB2YWx1ZSBiZWluZyBkZWNvcmF0ZWQsCiAgICAgICAgICAnI3AnLCAgICAgICAgICAgICAgIC8vIHRoZSBuYW1lIG9mIHRoZSBwcml2YXRlIHByb3BlcnR5IChpZiBpcyBwcml2YXRlLCB2b2lkIDAgb3RoZXJ3aXNlKSwKICAgICAgICBdCiAgICAgIF0sCiAgICAgIFsKICAgICAgICAvLyBjbGFzcyBkZWNvcmF0b3JzCiAgICAgICAgZGVjMSwgZGVjMgogICAgICBdCiAgICApCiAgICBgYGAKICAKICAgIEZ1bGx5IHRyYW5zcGlsZWQgZXhhbXBsZToKICAKICAgIGBgYGpzCiAgICBAZGVjCiAgICBjbGFzcyBDbGFzcyB7CiAgICAgIEBkZWMKICAgICAgYSA9IDEyMzsKICAKICAgICAgQGRlYwogICAgICAjYSA9IDEyMzsKICAKICAgICAgQGRlYwogICAgICBAZGVjMgogICAgICBhY2Nlc3NvciBiID0gMTIzOwogIAogICAgICBAZGVjCiAgICAgIGFjY2Vzc29yICNiID0gMTIzOwogIAogICAgICBAZGVjCiAgICAgIGMoKSB7IGNvbnNvbGUubG9nKCdjJyk7IH0KICAKICAgICAgQGRlYwogICAgICAjYygpIHsgY29uc29sZS5sb2coJ3ByaXZDJyk7IH0KICAKICAgICAgQGRlYwogICAgICBnZXQgZCgpIHsgY29uc29sZS5sb2coJ2QnKTsgfQogIAogICAgICBAZGVjCiAgICAgIGdldCAjZCgpIHsgY29uc29sZS5sb2coJ3ByaXZEJyk7IH0KICAKICAgICAgQGRlYwogICAgICBzZXQgZSh2KSB7IGNvbnNvbGUubG9nKCdlJyk7IH0KICAKICAgICAgQGRlYwogICAgICBzZXQgI2UodikgeyBjb25zb2xlLmxvZygncHJpdkUnKTsgfQogICAgfQogIAogIAogICAgLy8gYmVjb21lcwogICAgbGV0IGluaXRpYWxpemVJbnN0YW5jZTsKICAgIGxldCBpbml0aWFsaXplQ2xhc3M7CiAgCiAgICBsZXQgaW5pdEE7CiAgICBsZXQgaW5pdFByaXZBOwogIAogICAgbGV0IGluaXRCOwogICAgbGV0IGluaXRQcml2QiwgZ2V0UHJpdkIsIHNldFByaXZCOwogIAogICAgbGV0IHByaXZDOwogICAgbGV0IHByaXZEOwogICAgbGV0IHByaXZFOwogIAogICAgbGV0IENsYXNzOwogICAgY2xhc3MgX0NsYXNzIHsKICAgICAgc3RhdGljIHsKICAgICAgICBsZXQgcmV0ID0gYXBwbHlEZWNzKAogICAgICAgICAgdGhpcywKICAgICAgICAgIFsKICAgICAgICAgICAgW2RlYywgMCwgJ2EnXSwKICAgICAgICAgICAgW2RlYywgMCwgJ2EnLCAoaSkgPT4gaS4jYSwgKGksIHYpID0+IGkuI2EgPSB2XSwKICAgICAgICAgICAgW1tkZWMsIGRlYzJdLCAxLCAnYiddLAogICAgICAgICAgICBbZGVjLCAxLCAnYicsIChpKSA9PiBpLiNwcml2QkRhdGEsIChpLCB2KSA9PiBpLiNwcml2QkRhdGEgPSB2XSwKICAgICAgICAgICAgW2RlYywgMiwgJ2MnXSwKICAgICAgICAgICAgW2RlYywgMiwgJ2MnLCAoKSA9PiBjb25zb2xlLmxvZygncHJpdkMnKV0sCiAgICAgICAgICAgIFtkZWMsIDMsICdkJ10sCiAgICAgICAgICAgIFtkZWMsIDMsICdkJywgKCkgPT4gY29uc29sZS5sb2coJ3ByaXZEJyldLAogICAgICAgICAgICBbZGVjLCA0LCAnZSddLAogICAgICAgICAgICBbZGVjLCA0LCAnZScsICgpID0+IGNvbnNvbGUubG9nKCdwcml2RScpXSwKICAgICAgICAgIF0sCiAgICAgICAgICBbCiAgICAgICAgICAgIGRlYwogICAgICAgICAgXQogICAgICAgICkKICAKICAgICAgICBpbml0QSA9IHJldFswXTsKICAKICAgICAgICBpbml0UHJpdkEgPSByZXRbMV07CiAgCiAgICAgICAgaW5pdEIgPSByZXRbMl07CiAgCiAgICAgICAgaW5pdFByaXZCID0gcmV0WzNdOwogICAgICAgIGdldFByaXZCID0gcmV0WzRdOwogICAgICAgIHNldFByaXZCID0gcmV0WzVdOwogIAogICAgICAgIHByaXZDID0gcmV0WzZdOwogIAogICAgICAgIHByaXZEID0gcmV0WzddOwogIAogICAgICAgIHByaXZFID0gcmV0WzhdOwogIAogICAgICAgIGluaXRpYWxpemVJbnN0YW5jZSA9IHJldFs5XTsKICAKICAgICAgICBDbGFzcyA9IHJldFsxMF0KICAKICAgICAgICBpbml0aWFsaXplQ2xhc3MgPSByZXRbMTFdOwogICAgICB9CiAgCiAgICAgIGEgPSAoaW5pdGlhbGl6ZUluc3RhbmNlKHRoaXMpLCBpbml0QSh0aGlzLCAxMjMpKTsKICAKICAgICAgI2EgPSBpbml0UHJpdkEodGhpcywgMTIzKTsKICAKICAgICAgI2JEYXRhID0gaW5pdEIodGhpcywgMTIzKTsKICAgICAgZ2V0IGIoKSB7IHJldHVybiB0aGlzLiNiRGF0YSB9CiAgICAgIHNldCBiKHYpIHsgdGhpcy4jYkRhdGEgPSB2IH0KICAKICAgICAgI3ByaXZCRGF0YSA9IGluaXRQcml2Qih0aGlzLCAxMjMpOwogICAgICBnZXQgI2IoKSB7IHJldHVybiBnZXRQcml2Qih0aGlzKTsgfQogICAgICBzZXQgI2IodikgeyBzZXRQcml2Qih0aGlzLCB2KTsgfQogIAogICAgICBjKCkgeyBjb25zb2xlLmxvZygnYycpOyB9CiAgCiAgICAgICNjKC4uLmFyZ3MpIHsgcmV0dXJuIHByaXZDKHRoaXMsIC4uLmFyZ3MpIH0KICAKICAgICAgZ2V0IGQoKSB7IGNvbnNvbGUubG9nKCdkJyk7IH0KICAKICAgICAgZ2V0ICNkKCkgeyByZXR1cm4gcHJpdkQodGhpcyk7IH0KICAKICAgICAgc2V0IGUodikgeyBjb25zb2xlLmxvZygnZScpOyB9CiAgCiAgICAgIHNldCAjZSh2KSB7IHByaXZFKHRoaXMsIHYpOyB9CiAgICB9CiAgCiAgICBpbml0aWFsaXplQ2xhc3MoQ2xhc3MpOwogICAqLwoKICAgIHJldHVybiBmdW5jdGlvbiBhcHBseURlY3MyMjAzUih0YXJnZXRDbGFzcywgbWVtYmVyRGVjcywgY2xhc3NEZWNzLCBwYXJlbnRDbGFzcykgewogICAgICAgIGlmIChwYXJlbnRDbGFzcyAhPT0gdm9pZCAwKSB7CiAgICAgICAgICAgIHZhciBwYXJlbnRNZXRhZGF0YSA9CiAgICAgICAgICAgICAgICBwYXJlbnRDbGFzc1tTeW1ib2wubWV0YWRhdGEgfHwgU3ltYm9sLmZvcigiU3ltYm9sLm1ldGFkYXRhIildOwogICAgICAgIH0KICAgICAgICB2YXIgbWV0YWRhdGEgPSBPYmplY3QuY3JlYXRlKAogICAgICAgICAgICBwYXJlbnRNZXRhZGF0YSA9PT0gdm9pZCAwID8gbnVsbCA6IHBhcmVudE1ldGFkYXRhCiAgICAgICAgKTsKICAgICAgICB2YXIgZSA9IGFwcGx5TWVtYmVyRGVjcyh0YXJnZXRDbGFzcywgbWVtYmVyRGVjcywgbWV0YWRhdGEpOwogICAgICAgIGlmICghY2xhc3NEZWNzLmxlbmd0aCkgZGVmaW5lTWV0YWRhdGEodGFyZ2V0Q2xhc3MsIG1ldGFkYXRhKTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBlOiBlLAogICAgICAgICAgICAvLyBMYXppbHkgYXBwbHkgY2xhc3MgZGVjb3JhdGlvbnMgc28gdGhhdCBtZW1iZXIgaW5pdCBsb2NhbHMgY2FuIGJlIHByb3Blcmx5IGJvdW5kLgogICAgICAgICAgICBnZXQgYygpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcHBseUNsYXNzRGVjcyh0YXJnZXRDbGFzcywgY2xhc3NEZWNzLCBtZXRhZGF0YSk7CiAgICAgICAgICAgIH0sCiAgICAgICAgfTsKICAgIH07Cn0KCmZ1bmN0aW9uIF9hcHBseV9kZWNzXzIyMDNfcih0YXJnZXRDbGFzcywgbWVtYmVyRGVjcywgY2xhc3NEZWNzLCBwYXJlbnRDbGFzcykgewogICAgcmV0dXJuIChfYXBwbHlfZGVjc18yMjAzX3IgPSBhcHBseURlY3MyMjAzUkZhY3RvcnkoKSkoCiAgICAgICAgdGFyZ2V0Q2xhc3MsCiAgICAgICAgbWVtYmVyRGVjcywKICAgICAgICBjbGFzc0RlY3MsCiAgICAgICAgcGFyZW50Q2xhc3MKICAgICk7Cn0KZnVuY3Rpb24gX2lkZW50aXR5KHgpIHsgcmV0dXJuIHg7IH0KLyogQG1pblZlcnNpb24gNy4yMi4wICovCmZ1bmN0aW9uIGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yKHN1cHByZXNzZWQsIGVycm9yKSB7CiAgICBpZiAodHlwZW9mIFN1cHByZXNzZWRFcnJvciAhPT0gInVuZGVmaW5lZCIpIHsKICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZWYKICAgICAgICBkaXNwb3NlX1N1cHByZXNzZWRFcnJvciA9IFN1cHByZXNzZWRFcnJvcjsKICAgIH0gZWxzZSB7CiAgICAgICAgZGlzcG9zZV9TdXBwcmVzc2VkRXJyb3IgPSBmdW5jdGlvbiBTdXBwcmVzc2VkRXJyb3Ioc3VwcHJlc3NlZCwgZXJyb3IpIHsKICAgICAgICAgICAgdGhpcy5zdXBwcmVzc2VkID0gc3VwcHJlc3NlZDsKICAgICAgICAgICAgdGhpcy5lcnJvciA9IGVycm9yOwogICAgICAgICAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKCkuc3RhY2s7CiAgICAgICAgfTsKICAgICAgICBkaXNwb3NlX1N1cHByZXNzZWRFcnJvci5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEVycm9yLnByb3RvdHlwZSwgewogICAgICAgICAgICBjb25zdHJ1Y3RvcjogewogICAgICAgICAgICAgICAgdmFsdWU6IGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yLAogICAgICAgICAgICAgICAgd3JpdGFibGU6IHRydWUsCiAgICAgICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsCiAgICAgICAgICAgIH0sCiAgICAgICAgfSk7CiAgICB9CiAgICByZXR1cm4gbmV3IGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yKHN1cHByZXNzZWQsIGVycm9yKTsKfQoKZnVuY3Rpb24gX2Rpc3Bvc2Uoc3RhY2ssIGVycm9yLCBoYXNFcnJvcikgewogICAgZnVuY3Rpb24gbmV4dCgpIHsKICAgICAgICB3aGlsZSAoc3RhY2subGVuZ3RoID4gMCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgdmFyIHIgPSBzdGFjay5wb3AoKTsKICAgICAgICAgICAgICAgIHZhciBwID0gci5kLmNhbGwoci52KTsKICAgICAgICAgICAgICAgIGlmIChyLmEpIHJldHVybiBQcm9taXNlLnJlc29sdmUocCkudGhlbihuZXh0LCBlcnIpOwogICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZXJyKGUpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChoYXNFcnJvcikgdGhyb3cgZXJyb3I7CiAgICB9CgogICAgZnVuY3Rpb24gZXJyKGUpIHsKICAgICAgICBlcnJvciA9IGhhc0Vycm9yID8gbmV3IGRpc3Bvc2VfU3VwcHJlc3NlZEVycm9yKGUsIGVycm9yKSA6IGU7CiAgICAgICAgaGFzRXJyb3IgPSB0cnVlOwoKICAgICAgICByZXR1cm4gbmV4dCgpOwogICAgfQoKICAgIHJldHVybiBuZXh0KCk7Cn1mdW5jdGlvbiBfdXNpbmcoc3RhY2ssIHZhbHVlLCBpc0F3YWl0KSB7CiAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHZvaWQgMCkgcmV0dXJuIHZhbHVlOwogICAgaWYgKE9iamVjdCh2YWx1ZSkgIT09IHZhbHVlKSB7CiAgICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcigidXNpbmcgZGVjbGFyYXRpb25zIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBvYmplY3RzLCBmdW5jdGlvbnMsIG51bGwsIG9yIHVuZGVmaW5lZC4iKTsKICAgIH0KICAgIC8vIGNvcmUtanMtcHVyZSB1c2VzIFN5bWJvbC5mb3IgZm9yIHBvbHlmaWxsaW5nIHdlbGwta25vd24gc3ltYm9scwogICAgaWYgKGlzQXdhaXQpIHsKICAgICAgICB2YXIgZGlzcG9zZSA9CiAgICAgICAgICAgIHZhbHVlW1N5bWJvbC5hc3luY0Rpc3Bvc2UgfHwgU3ltYm9sLmZvcigiU3ltYm9sLmFzeW5jRGlzcG9zZSIpXTsKICAgIH0KICAgIGlmIChkaXNwb3NlID09PSBudWxsIHx8IGRpc3Bvc2UgPT09IHZvaWQgMCkgewogICAgICAgIGRpc3Bvc2UgPSB2YWx1ZVtTeW1ib2wuZGlzcG9zZSB8fCBTeW1ib2wuZm9yKCJTeW1ib2wuZGlzcG9zZSIpXTsKICAgIH0KICAgIGlmICh0eXBlb2YgZGlzcG9zZSAhPT0gImZ1bmN0aW9uIikgewogICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYFByb3BlcnR5IFtTeW1ib2wuZGlzcG9zZV0gaXMgbm90IGEgZnVuY3Rpb24uYCk7CiAgICB9CiAgICBzdGFjay5wdXNoKHsgdjogdmFsdWUsIGQ6IGRpc3Bvc2UsIGE6IGlzQXdhaXQgfSk7CiAgICByZXR1cm4gdmFsdWU7Cn1mdW5jdGlvbiBfdXNpbmdfY3R4KCkgewogICAgdmFyIF9kaXNwb3NlU3VwcHJlc3NlZEVycm9yID0KICAgICAgICB0eXBlb2YgU3VwcHJlc3NlZEVycm9yID09PSAiZnVuY3Rpb24iCiAgICAgICAgICAgID8gLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVmCiAgICAgICAgICAgIFN1cHByZXNzZWRFcnJvcgogICAgICAgICAgICA6IChmdW5jdGlvbiAoZXJyb3IsIHN1cHByZXNzZWQpIHsKICAgICAgICAgICAgICAgIHZhciBlcnIgPSBuZXcgRXJyb3IoKTsKICAgICAgICAgICAgICAgIGVyci5uYW1lID0gIlN1cHByZXNzZWRFcnJvciI7CiAgICAgICAgICAgICAgICBlcnIuc3VwcHJlc3NlZCA9IHN1cHByZXNzZWQ7CiAgICAgICAgICAgICAgICBlcnIuZXJyb3IgPSBlcnJvcjsKICAgICAgICAgICAgICAgIHJldHVybiBlcnI7CiAgICAgICAgICAgIH0pLAogICAgICAgIGVtcHR5ID0ge30sCiAgICAgICAgc3RhY2sgPSBbXTsKICAgIGZ1bmN0aW9uIHVzaW5nKGlzQXdhaXQsIHZhbHVlKSB7CiAgICAgICAgaWYgKHZhbHVlICE9IG51bGwpIHsKICAgICAgICAgICAgaWYgKE9iamVjdCh2YWx1ZSkgIT09IHZhbHVlKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKAogICAgICAgICAgICAgICAgICAgICJ1c2luZyBkZWNsYXJhdGlvbnMgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIG9iamVjdHMsIGZ1bmN0aW9ucywgbnVsbCwgb3IgdW5kZWZpbmVkLiIsCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGNvcmUtanMtcHVyZSB1c2VzIFN5bWJvbC5mb3IgZm9yIHBvbHlmaWxsaW5nIHdlbGwta25vd24gc3ltYm9scwogICAgICAgICAgICBpZiAoaXNBd2FpdCkgewogICAgICAgICAgICAgICAgdmFyIGRpc3Bvc2UgPQogICAgICAgICAgICAgICAgICAgIHZhbHVlW1N5bWJvbC5hc3luY0Rpc3Bvc2UgfHwgU3ltYm9sLmZvcigiU3ltYm9sLmFzeW5jRGlzcG9zZSIpXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZGlzcG9zZSA9PSBudWxsKSB7CiAgICAgICAgICAgICAgICBkaXNwb3NlID0gdmFsdWVbU3ltYm9sLmRpc3Bvc2UgfHwgU3ltYm9sLmZvcigiU3ltYm9sLmRpc3Bvc2UiKV07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHR5cGVvZiBkaXNwb3NlICE9PSAiZnVuY3Rpb24iKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKGBQcm9wZXJ0eSBbU3ltYm9sLmRpc3Bvc2VdIGlzIG5vdCBhIGZ1bmN0aW9uLmApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN0YWNrLnB1c2goeyB2OiB2YWx1ZSwgZDogZGlzcG9zZSwgYTogaXNBd2FpdCB9KTsKICAgICAgICB9IGVsc2UgaWYgKGlzQXdhaXQpIHsKICAgICAgICAgICAgLy8gcHJvdmlkZSB0aGUgbnVsbGlzaCBgdmFsdWVgIGFzIGBkYCBmb3IgbWluaWZpY2F0aW9uIGdhaW4KICAgICAgICAgICAgc3RhY2sucHVzaCh7IGQ6IHZhbHVlLCBhOiBpc0F3YWl0IH0pOwogICAgICAgIH0KICAgICAgICByZXR1cm4gdmFsdWU7CiAgICB9CiAgICByZXR1cm4gewogICAgICAgIC8vIGVycm9yCiAgICAgICAgZTogZW1wdHksCiAgICAgICAgLy8gdXNpbmcKICAgICAgICB1OiB1c2luZy5iaW5kKG51bGwsIGZhbHNlKSwKICAgICAgICAvLyBhd2FpdCB1c2luZwogICAgICAgIGE6IHVzaW5nLmJpbmQobnVsbCwgdHJ1ZSksCiAgICAgICAgLy8gZGlzcG9zZQogICAgICAgIGQ6IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgdmFyIGVycm9yID0gdGhpcy5lOwoKICAgICAgICAgICAgZnVuY3Rpb24gbmV4dCgpIHsKICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlLWJlZm9yZS1kZWZpbmUKICAgICAgICAgICAgICAgIHdoaWxlICgocmVzb3VyY2UgPSBzdGFjay5wb3AoKSkpIHsKICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgcmVzb3VyY2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwb3NhbFJlc3VsdCA9IHJlc291cmNlLmQgJiYgcmVzb3VyY2UuZC5jYWxsKHJlc291cmNlLnYpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAocmVzb3VyY2UuYSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShkaXNwb3NhbFJlc3VsdCkudGhlbihuZXh0LCBlcnIpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZXJyKGUpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChlcnJvciAhPT0gZW1wdHkpIHRocm93IGVycm9yOwogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBlcnIoZSkgewogICAgICAgICAgICAgICAgZXJyb3IgPSBlcnJvciAhPT0gZW1wdHkgPyBuZXcgX2Rpc3Bvc2VTdXBwcmVzc2VkRXJyb3IoZXJyb3IsIGUpIDogZTsKCiAgICAgICAgICAgICAgICByZXR1cm4gbmV4dCgpOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gbmV4dCgpOwogICAgICAgIH0sCiAgICB9Owp9L2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdHJhbnNmb3Jtc19iYXNlLTcuMC4wL3NyYy9yZXNvbHZlci9tb2QucnMAAADq2RcAdwAAALcGAAA2AAAAY2FsbGVkIGV4cGVjdCBvbiAAAAB02hcAEQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX2FzdC01LjAuMS9zcmMvcGF0LnJzAACQ2hcAYgAAAA0AAAAUAAAAGwUAAAQAAAAEAAAANwEAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3RyYW5zZm9ybXNfYmFzZS03LjAuMC9zcmMvZml4ZXIucnMU2xcAcAAAAMQAAABAAAAAFNsXAHAAAACxAgAAFgAAABTbFwBwAAAAFgQAACAAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9pbmRleG1hcC0yLjQuMC9zcmMvbWFwL2NvcmUucnMAtNsXAGMAAAAtAAAAIwAAAGluZGV4IG5vdCBmb3VuZAC02xcAYwAAADoAAAAKAAAAtNsXAGMAAABTAQAAPQAAALTbFwBjAAAAOwIAADQAAAC02xcAYwAAADwCAAA0AAAAtNsXAGMAAAC6AQAALAAAALTbFwBjAAAAsAEAACIAAABhc3NlcnRpb24gZmFpbGVkOiBpbmRpY2VzLmNhcGFjaXR5KCkgLSBpbmRpY2VzLmxlbigpID49IGVudHJpZXMubGVuKCkvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9pbmRleG1hcC0yLjQuMC9zcmMvbWFwL2NvcmUvcmF3LnJz3dwXAGcAAAAOAAAABQAAALTbFwBjAAAAJQAAAA8AAAAAAAAADAAAAAQAAAAcBQAAHQUAAB4FAAAoAAAACAAAADUBAABDbGFzc0ZuVmFyVXNpbmdUc0ludGVyZmFjZVRzVHlwZUFsaWFzVHNFbnVtVHNNb2R1bGVpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBkZXN0cnVjdHVyaW5nIHBhdHRlcm4gaW5zaWRlIFRzUGFyYW1ldGVyUHJvcGVydHkAAAC73RcAWgAAAGjfFwB6AAAAPgEAACEAAABo3xcAegAAADwDAAANAAAA1CMYACoAAABo3xcAegAAAMsDAAAdAAAAaN8XAHoAAACmAwAAQAAAAF9rZXlo3xcAegAAADYEAABRAAAAaN8XAHoAAABABAAAJwAAAF9jcmVhdGVSZXF1aXJlX19yZXF1aXJlZXhwb3J0c2NyZWF0ZVJlcXVpcmV1cmwAAGjfFwB6AAAALAUAABoAAABo3xcAegAAAC4FAAAaAAAAT25seSBhbWJpZW50IG1vZHVsZXMgY2FuIHVzZSBxdW90ZWQgbmFtZXMuAABo3xcAegAAANgFAAAOAAAAbm90IGltcGxlbWVudGVkABTkFwBkAAAAnQwAAD4AAAAU5BcAZAAAAKkMAAA8AAAAFOQXAGQAAACKDAAAJgAAAB8FAAAEAAAABAAAADcBAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX3R5cGVzY3JpcHQtNy4wLjAvc3JjL3RyYW5zZm9ybS5ycwAAaN8XAHoAAAC6AgAAOAAAAEltcG9ydCBkZWNsYXJhdGlvbnMgaW4gYSBuYW1lc3BhY2UgY2Fubm90IHJlZmVyZW5jZSBhIG1vZHVsZS5FU00tc3R5bGUgbW9kdWxlIGRlY2xhcmF0aW9ucyBhcmUgbm90IHBlcm1pdHRlZCBpbiBhIG5hbWVzcGFjZS5JbXBvcnQgYXNzaWdubWVudCBjYW5ub3QgYmUgdXNlZCB3aGVuIHRhcmdldGluZyBFQ01BU2NyaXB0IG1vZHVsZXMuIENvbnNpZGVyIHVzaW5nIGBpbXBvcnQgKiBhcyBucyBmcm9tICJtb2QiYCwgYGltcG9ydCB7YX0gZnJvbSAibW9kImAsIGBpbXBvcnQgZCBmcm9tICJtb2QiYCwgb3IgYW5vdGhlciBtb2R1bGUgZm9ybWF0IGluc3RlYWQuRXhwb3J0IGFzc2lnbm1lbnQgY2Fubm90IGJlIHVzZWQgd2hlbiB0YXJnZXRpbmcgRUNNQVNjcmlwdCBtb2R1bGVzLiBDb25zaWRlciB1c2luZyBgZXhwb3J0IGRlZmF1bHRgIG9yIGFub3RoZXIgbW9kdWxlIGZvcm1hdCBpbnN0ZWFkLi9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3RyYW5zZm9ybXNfdHlwZXNjcmlwdC03LjAuMC9zcmMvdHlwZXNjcmlwdC5ycwAAALbhFwB7AAAAPQAAACwAAAAqAwAADAAAAAQAAABOAwAATwMAAC0DAEHkxN8AC54DAQAAAC4DAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV90cmFuc2Zvcm1zX3R5cGVzY3JpcHQtNy4wLjAvc3JjL3RzX2VudW0ucnNOYU4AbOIXAHgAAACvAAAAEgAAAGziFwB4AAAA2QAAABoAAAAgBQAABAAAAAQAAAA3AQAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfdHJhbnNmb3Jtc190eXBlc2NyaXB0LTcuMC4wL3NyYy9zdHJpcF90eXBlLnJzABjjFwB7AAAAyQAAACkAAABzdHJ1Y3QgQ29uZmlnZW51bSBUc0ltcG9ydEV4cG9ydEFzc2lnbkNvbmZpZ2VudW0gSW1wb3J0c05vdFVzZWRBc1ZhbHVlcwAqAwAADAAAAAQAAABOAwAATwMAACcEAEGMyN8AC4oEAQAAAC4DAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV91dGlscy03LjAuMC9zcmMvbGliLnJzXwAAAAEAAAAAAAAAeOQXAAEA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AAAtAwBBxK7gAAv+DgEAAAAuAwAASWRlbnRBcnJheVJlc3RPYmplY3RBc3NpZ25JbnZhbGlkRXhwcgAAAAAAAAAEAAAAAAAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX2NvZGVnZW4tNS4wLjEvc3JjL3RleHRfd3JpdGVyL2Jhc2ljX2ltcGwucnM7IHZhcmxldGNvbnN0KyF+dHlwZW9mdm9pZGRlbGV0ZT0rPS09Kj0vPSU9PDw9Pj49Pj4+PXw9Xj0mPSoqPSYmPXx8PT8/PT09IT09PT0hPT08PD0+Pj08PD4+Pj4+Ki8lfF4mfHwmJioqPz8rKy0tL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvaXRlci5yc3VuZXhwZWN0ZWQgcmVnZXggZmluZCBlcnJvcjogCnRvIGhhbmRsZSBmaW5kIGVycm9ycywgdXNlICd0cnknIG9yICdzZWFyY2gnIG1ldGhvZHMAAADTGBgAHQAAAPAYGAA1AAAAaRgYAGoAAAB+AQAAGQAAAGArGABqAAAAXgIAABwAAABgKxgAagAAAGsCAAAyAAAAAgAAAGArGABqAAAAAQMAABUAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9yZWdleC1hdXRvbWF0YS0wLjQuNy9zcmMvdXRpbC9zZWFyY2gucnNpbnZhbGlkIHNwYW4gIGZvciBoYXlzdGFjayBvZiBsZW5ndGggAAAA6BkYAA0AAAD1GRgAGAAAAHwZGABsAAAAqgEAAAkAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9jb2RlZ2VuLTUuMC4xL3NyYy90eXBlc2NyaXB0LnJzYXMoPT57fWRlY2xhcmVuYW1lc3BhY2VgAAAAMBoYAG0AAAC2AQAAIgAAACR7AAAwGhgAbQAAALkBAAAhAAAAZXh0ZW5kcz86ZW51bS4uLl1pbmZlcnJlYWRvbmx5b3V0aW1wb3J0Lm1vZHVsZWdsb2JhbGFueXVua25vd25udW1iZXJvYmplY3Rib29sZWFuYmlnaW50c3RyaW5nc3ltYm9sdW5kZWZpbmVkbnVsbG5ldmVyaW50cmluc2lja2V5b2Z1bmlxdWVpbnRlcmZhY2VleHBvcnRzYXRpc2ZpZXNhc3NlcnRzaXN0eXBlYWJzdHJhY3RuZXdyZXF1aXJlgBcYAHkAAABxAAAAGgAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX2NvZGVnZW4tNS4wLjEvc3JjL2xpYi5ycwAArBsYAGYAAADlBwAALwAAAKwbGABmAAAA3wcAADAAAABzdXBlcmRlZmVyLGZyb213aXRoYXNzZXJ0YXNzZXJ0aW9uIGZhaWxlZDogbi5zcGVjaWZpZXJzLmxlbigpIDw9IDIAAKwbGABmAAAAaAEAABUAAAAjIQAArBsYAGYAAAByDgAAEgAAAG4tMHidHBgAAwAAADB4AACoHBgAAgAAAGZ1bmN0aW9uYXN5bmNpZmVsc2U8aW52YWxpZD51c2Ugc3RyaWN0c2NyaXB0PCEtLVx4M2MhLS0tLT4tLVx4M2WsGxgAZgAAAL0HAAAiAAAArBsYAGYAAADABwAAIQAAAGZvcnRyeWZpbmFsbHlAPy5hd2FpdGJyZWFrY2xhc3N0aHJvd3doaWxleWllbGRvZnJldHVybmNhc2VkZWZhdWx0AAAArBsYAGYAAAB/DQAAGgAAAKwbGABmAAAAgg0AADsAAABzd2l0Y2hjYXRjaCNwdWJsaWNwcm90ZWN0ZWRwcml2YXRlYWNjZXNzb3Jjb250aW51ZWRlYnVnZ2VyZG9pbXBsZW1lbnRzbmV3LnRhcmdldGltcG9ydC5tZXRhbm90IGltcGxlbWVudGVkOiBjb2RlZ2VuIG9mIGBleHBvcnQgZGVmYXVsdCBmcm9tICdmb28nO2AA0x0YADgAAACsGxgAZgAAALYBAAARAAAArBsYAGYAAADjAgAANAAAAEluZmluaXR5ZWNvbnN0cnVjdG9yrBsYAGYAAAAgCgAASAAAAKwbGABmAAAAIQoAACgAAACsGxgAZgAAAAkIAABMAAAArBsYAGYAAAAMCAAAJwAAAGZhbHNldHJ1ZTwvPC8+PD51c2luZy8vLyoqLyNfX1BVUkVfXyoDAAAMAAAABAAAAE4DAABDBQAALQMAQcy94AALHgEAAAAuAwAAKgMAAAwAAAAEAAAATgMAAE8DAAAtAwBB9L3gAAudBgEAAAAuAwAAYSBEaXNwbGF5IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHVuZXhwZWN0ZWRseS9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAAMx8YAEsAAAB7CgAADgAAAE0FAAAIAAAABAAAAE4FAABPBQAABAAAAAQAAABQBQAAW10gALAfGAABAAAAsR8YAAIAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZmFzdF90c19zdHJpcC03LjEuMC9zcmMvbGliLnJzAFEFAAAIAAAABAAAAFIFAABTBQAAVAUAAFUFAABWBQAAVwUAAFgFAABZBQAAWgUAAFsFAABcBQAAXQUAAF4FAABfBQAAU3ludGF4IGVycm9yxB8YAGcAAADzAAAASQAAAMQfGABnAAAAPgEAABUAAADEHxgAZwAAABEBAAAlAAAAxB8YAGcAAAAgAQAAJQAAAMQfGABnAAAAJAEAACUAAADEHxgAZwAAACUBAAAlAAAAxB8YAGcAAAApAQAAJQAAAMQfGABnAAAAKgEAACUAAADEHxgAZwAAACsBAAAlAAAAxB8YAGcAAAAxAQAAJQAAAMQfGABnAAAAMwEAACUAAADEHxgAZwAAADQBAAAlAAAAxB8YAGcAAAA1AQAAJQAAAFVuc3VwcG9ydGVkIHN5bnRheAAAxB8YAGcAAAB+AQAAMAAAAGdlbmVyYXRlZCBjb2RlIHdhcyBub3QgdXRmLThmYWlsZWQgdG8gd3JpdGUgc291cmNlIG1hcHNvdXJjZSBtYXAgd2FzIG5vdCB1dGY4AAAAxB8YAGcAAAC3AQAAEgAAAMQfGABnAAAAwwEAABUAAADEHxgAZwAAAM8BAAAVAAAAxB8YAGcAAADdAQAAGQAAAMQfGABnAAAA6QEAABkAAAAPAEGoxOAAC4EBECIYAMQfGABnAAAADQIAABkAAADEHxgAZwAAABcCAABAAAAAxB8YAGcAAAAbAgAAJAAAAG92ZXJyaWRlXCIYAAgAAADEHxgAZwAAAFECAAA8AAAAxB8YAGcAAACqAgAAGAAAAGluaW5zdGFuY2VvZmdldHNldHN0YXRpYwAAAAAQAEHAxeAAC8kldGhpc8QfGABnAAAA/wQAACQAAABzdHJ1Y3QgT3B0aW9uc3ZhcmlhbnQgaWRlbnRpZmllcmVudW0gTW9kZUludmFsaWRTeW50YXhVbnN1cHBvcnRlZFN5bnRheFVua25vd24vcnVzdGMvOTBiMzVhNjIzOWMzZDhiZGFiYzUzMGE2YTA4MTZmN2ZmODlhMGFhZi9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc3RhYmxlL2RyaWZ0LnJzAAAAIiMYAFsAAAD/AAAAGQAAACIjGABbAAAA8gAAABIAAAAiIxgAWwAAAM4AAAAkAAAAIiMYAFsAAADRAAAAJAAAACIjGABbAAAAQAAAACIAAAAgICAgaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZTogIGlzIGFscmVhZHkgcmVuYW1lZCB0byAsIGJ1dCBpdCdzIHJlbmFtZWQgYXMgANQjGAAqAAAA/iMYABcAAAAVJBgAFgAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3RyYW5zZm9ybXNfYmFzZS03LjAuMC9zcmMvcmVuYW1lL21vZC5ycwAAAEQkGAB1AAAA1QAAABkAAABjYW5ub3QgYWNjZXNzIGEgc2NvcGVkIHRocmVhZCBsb2NhbCB2YXJpYWJsZSB3aXRob3V0IGNhbGxpbmcgYHNldGAgZmlyc3QvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zY29wZWQtdGxzLTEuMC4xL3NyYy9saWIucnMUJRgAYAAAAKgAAAAJAAAAZGVzY3JpcHRpb24oKSBpcyBkZXByZWNhdGVkOyB1c2UgRGlzcGxheUlvVXRmOEJhZEpzb25WbHFMZWZ0b3ZlclZscU5vVmFsdWVzVmxxT3ZlcmZsb3dCYWRTZWdtZW50U2l6ZUJhZFNvdXJjZVJlZmVyZW5jZUJhZE5hbWVSZWZlcmVuY2VJbmNvbXBhdGlibGVTb3VyY2VNYXBJbnZhbGlkRGF0YVVybENhbm5vdEZsYXR0ZW5JbnZhbGlkUmFtQnVuZGxlTWFnaWNJbnZhbGlkUmFtQnVuZGxlSW5kZXhJbnZhbGlkUmFtQnVuZGxlRW50cnlOb3RBUmFtQnVuZGxlSW52YWxpZFJhbmdlTWFwcGluZ0luZGV4SW52YWxpZEJhc2U2NABNBQAACAAAAAQAAABgBQAATQUAAAgAAAAEAAAATgUAAGAFAACsJhgAYQUAAGIFAABjBQAAZAUAALwCAAAAAAAACAAAAAQAAABlBQAAAAAAAAgAAAAEAAAA6wIAAGUFAADoJhgAwAIAAGYFAABnBQAAwAIAALwCAABoBQAABAAAAAQAAABpBQAAaAUAAAQAAAAEAAAAagUAAGkFAAAkJxgAawUAAGwFAAC6AgAAbQUAALwCAAAAAAAABAAAAAQAAAAyAAAARnJvbVV0ZjhFcnJvcmJ5dGVzZXJyb3JpbnZhbGlkIHV0Zi04OiBjb3JydXB0IGNvbnRlbnRzaW52YWxpZCB1dGYtOABuBQAAFAAAAAQAAABvBQAAbgUAABQAAAAEAAAAcAUAAG8FAAC0JxgAcQUAAHIFAAC6AgAAcQUAALwCAABzBQAAHAAAAAQAAAB0BQAAcwUAABwAAAAEAAAAdQUAAHQFAADwJxgAdgUAAHcFAAC6AgAAdgUAALwCAAB4BQAAMAAAAAQAAADDAgAAeAUAADAAAAAEAAAAxAIAAMMCAAAsKBgAxQIAAHkFAADHAgAAxQIAAMgCAAB6BQAAOAAAAAQAAADDAgAAegUAADgAAAAEAAAAxAIAAMMCAABoKBgAxQIAAHsFAADHAgAAxQIAAMgCAABFcnJvcmNvbnRleHRzb3VyY2UAAE0DAAAUAAAABAAAAHwFAABNAwAAFAAAAAQAAACrAgAAfAUAALgoGADAAgAAfQUAAH4FAADAAgAAvAIAAH8FAAAMAAAABAAAAIAFAAB/BQAADAAAAAQAAACqAgAAgAUAAPQoGADAAgAAgQUAALoCAACCBQAAvAIAAFRva2VuQW5kU3BhbnRva2VuaGFkX2xpbmVfYnJlYWtzcGFuAFEFAAAIAAAABAAAAFIFAABTBQAAVAUAAFUFAABWBQAAVwUAAFgFAABZBQAAWgUAAFsFAABcBQAAXQUAAF4FAABfBQAAVHlwZVNjcmlwdCBleHBvcnQgYXNzaWdubWVudCBpcyBub3Qgc3VwcG9ydGVkIGluIHN0cmlwLW9ubHkgbW9kZVR5cGVTY3JpcHQgaW1wb3J0IGVxdWFscyBkZWNsYXJhdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGluIHN0cmlwLW9ubHkgbW9kZVR5cGVTY3JpcHQgZW51bSBpcyBub3Qgc3VwcG9ydGVkIGluIHN0cmlwLW9ubHkgbW9kZVR5cGVTY3JpcHQgbmFtZXNwYWNlIGRlY2xhcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgaW4gc3RyaXAtb25seSBtb2RlVHlwZVNjcmlwdCBwYXJhbWV0ZXIgcHJvcGVydHkgaXMgbm90IHN1cHBvcnRlZCBpbiBzdHJpcC1vbmx5IG1vZGVUaGUgYW5nbGUtYnJhY2tldCBzeW50YXggZm9yIHR5cGUgYXNzZXJ0aW9ucywgYDxUPmV4cHJgLCBpcyBub3Qgc3VwcG9ydGVkIGluIHR5cGUgc3RyaXAgbW9kZS4gSW5zdGVhZCwgdXNlIHRoZSAnYXMnIHN5bnRheDogYGV4cHIgYXMgVGAuL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvcmVnZXgtYXV0b21hdGEtMC40Ljcvc3JjL3V0aWwvcG9vbC5ycwAAYCsYAGoAAAA9AgAAHAAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNvZGU6IE1vZHVsZSBpcyBoYW5kbGVkIGFib3ZlAAAA3CsYAEEAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItNi4wLjIvc3JjL3BhcnNlci9tb2QucnMoLBgAbAAAALQAAAAyAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvc3djX2VjbWFfcGFyc2VyLTYuMC4yL3NyYy9wYXJzZXIvcGF0LnJzpCwYAGwAAACaAgAAKgAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3BhcnNlci02LjAuMi9zcmMvcGFyc2VyL2V4cHIucnMAAAAgLRgAbQAAAKcDAAAaAAAAgwUAAIQFAACFBQAAhgUAAIcFAADWAgAAiAUAAIkFAACKBQAAiwUAAIwFAADWAgAAZXZhbC9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvY29yZS9zcmMvc2xpY2Uvc29ydC9zdGFibGUvcXVpY2tzb3J0LnJzbWlkID4gbGVuMy4YAAkAAADULRgAXwAAAEwAAAAfAAAA1C0YAF8AAABGAAAAFwAAAEhhc2ggdGFibGUgY2FwYWNpdHkgb3ZlcmZsb3dkLhgAHAAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2hhc2hicm93bi0wLjE0LjUvc3JjL3Jhdy9tb2QucnOILhgAZAAAAFYAAAAoAAAAAAAAAAwAAAAEAAAAjQUAAI4FAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zd2NfZWNtYV9wYXJzZXItNi4wLjIvc3JjL3BhcnNlci9pbnB1dC5ycwAAEC8YAG4AAADPAAAAKwAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3N3Y19lY21hX3BhcnNlci02LjAuMi9zcmMvbGV4ZXIvc3RhdGUucnMAAACQLxgAbQAAAH8AAAAuAAAAkC8YAG0AAACAAAAAOAAAAJAvGABtAAAAgQAAABkAAAAQLxgAbgAAALkBAAAnAAAAEC8YAG4AAAC/AQAAIwAAADxlb2Y+UmVmQ2VsbHZhbHVlPGJvcnJvd2VkPgBhMBgACgAAAC9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvYWxsb2Mvc3JjL3ZlYy9tb2QucnN0MBgATAAAALQHAAANAAAAeDEYAGAAAAArAQAAKQAAAHgxGABgAAAAOgEAACUAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi91bmljb2RlLXdpZHRoLTAuMS4xMy9zcmMvdGFibGVzLnJzAPAwGABnAAAAJwAAABkAAADwMBgAZwAAAC0AAAAdAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy9jb3JlLnJzeDEYAGAAAAAMAQAAHgAAAKQ5GABqAAAAwQAAACgAAACkORgAagAAAMMAAAAlAAAApDkYAGoAAADEAAAALwAAAC0AAACkORgAagAAAM4AAAAlAAAApDkYAGoAAADPAAAALwAAAAAAAAAcAAAABAAAAI8FAACQBQAAkQUAAJIFAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi90ZXh0d3JhcC0wLjE2LjEvc3JjL3dvcmRfc2VwYXJhdG9ycy5ycwBYMhgAawAAANwAAAAoAAAAWDIYAGsAAADSAAAALAAAAJMFAAAsAAAABAAAAJQFAACQBQAAlQUAAJYFAABYMhgAawAAABYBAAAcAAAAWDIYAGsAAAA1AQAAKAAAAFgyGABrAAAALgEAACwAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9zbWF3ay0wLjMuMi9zcmMvbGliLnJzADAzGABbAAAAHgEAABsAAAAwMxgAWwAAACIBAAAUAAAAMDMYAFsAAAAiAQAADQAAADAzGABbAAAAIAEAABEAAAAwMxgAWwAAACwBAAAJAAAAMDMYAFsAAAAnAQAAFwAAADAzGABbAAAACAEAABwAAAAwMxgAWwAAAAgBAAAvAAAAKGksIGopIG5vdCBhYm92ZSBkaWFnb25hbDogKCwgAAAMNBgAHAAAACg0GAACAAAA4NAYAAEAAAAwMxgAWwAAAIYBAAAUAAAAKGksIGopIG91dCBvZiBib3VuZHM6ICgpLCBzaXplOiBUNBgAFwAAACg0GAACAAAAazQYAAkAAAAwMxgAWwAAAIcBAAAZAAAAMDMYAFsAAACSAQAADAAAADAzGABbAAAAkgEAACoAAAAwMxgAWwAAAIgBAAATAAAAMDMYAFsAAAB1AQAAIQAAADAzGABbAAAAdgEAABkAAAAwMxgAWwAAAHkBAAAlAAAAMDMYAFsAAAB6AQAAGwAAADAzGABbAAAAcwEAACEAAADAOhgAdwAAAEsBAAAgAAAAwDoYAHcAAABLAQAALAAAAMA6GAB3AAAASwEAADIAAADAOhgAdwAAAFMBAAAYAAAAQzkYAE8AAADIBQAAFAAAAEM5GABPAAAAyAUAACEAAABDORgATwAAALwFAAAhAEGU6+AAC70FAQAAAJcFAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAEM5GABPAAAATAQAACQAAAAFNxgAawAAALkAAABGAAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy93cmFwLnJz6DUYAGAAAAAXAQAAGAAAAE92ZXJmbG93RXJyb3JpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlL3J1c3RjLzkwYjM1YTYyMzljM2Q4YmRhYmM1MzBhNmEwODE2ZjdmZjg5YTBhYWYvbGlicmFyeS9hbGxvYy9zcmMvYm9ycm93LnJzjTYYAEsAAAAVAQAAJQAAAFV0ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy93cmFwX2FsZ29yaXRobXMucnMFNxgAawAAAHEBAAAaAAAABTcYAGsAAABrAQAAIgAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3VuaWNvZGUtbGluZWJyZWFrLTAuMS41L3NyYy9saWIucnMAkDcYAGcAAABhAAAAFwAAAJA3GABnAAAANQAAABgAAACQNxgAZwAAADkAAAAaAAAAkDcYAGcAAAA+AAAABQAAAE5vbmVTb21lDQoKAgICAgICAgICAwMBAQEAQePw4AALEAEAAAAAAAAAAgIAAAAAAAIAQaLx4AALAQIAQcjx4AALAQEAQePx4AALAQEAQcPy4AAL4QcvcnVzdGMvOTBiMzVhNjIzOWMzZDhiZGFiYzUzMGE2YTA4MTZmN2ZmODlhMGFhZi9saWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzAABDORgATwAAAL4BAAA3AAAAL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdGV4dHdyYXAtMC4xNi4xL3NyYy93b3JkX3NwbGl0dGVycy5ycwAApDkYAGoAAACZAAAAJAAAAKQ5GABqAAAAmgAAACQAAAAvcnVzdGMvOTBiMzVhNjIzOWMzZDhiZGFiYzUzMGE2YTA4MTZmN2ZmODlhMGFhZi9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5ycwAAADA6GABNAAAA4QMAACEAAAAwOhgATQAAAOEDAAAuAAAAMDoYAE0AAADlAwAAIAAAADA6GABNAAAA5QMAACsAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi90ZXh0d3JhcC0wLjE2LjEvc3JjL3dyYXBfYWxnb3JpdGhtcy9vcHRpbWFsX2ZpdC5ycwDAOhgAdwAAAK4AAAAhAAAAwDoYAHcAAAC0AAAAGwAAAMA6GAB3AAAAtAAAACMAAADAOhgAdwAAAK8AAAApAAAAwDoYAHcAAACwAAAALAAAAMA6GAB3AAAAsQAAAB8AAADAOhgAdwAAAHsBAAAaAAAAwDoYAHcAAAB8AQAAHgAAAC9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvYWxsb2Mvc3JjL3N5bmMucnMAAAABAAAAAAAAAExhenkgaW5zdGFuY2UgaGFzIHByZXZpb3VzbHkgYmVlbiBwb2lzb25lZAAADDwYACoAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9vbmNlX2NlbGwtMS4xOS4wL3NyYy9saWIucnNAPBgAYAAAAB8FAAAZAAAA/////wAAAAAECw8TFxsfIyctMTQ4PEACRQAAAAAASQBNAAUFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFUVRYXAUFBQUFBQUFBQUFBQUFBQUFBQUFBQkAQbT64AALKAFgKGRobHArdHZ6foKGio6SlpygBTKkAAAAAJcFBaYAAAAAAAAABawAQez64AALEwWvALMFBQUFBQUFBQUFBUMFBbcAQY/74AALCJpSuQAAAAC8AEGi++AAC5oCxMYAAACtzNDUutgAANwAAAAAAAAAAAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUF3gUFBQUFBQXf4QUFBQUFBQUFBQXkBQUFBQUFBQUFBQUFBeIF5wAAAAAF6QAABQUFBQUFBQUF5QUFBQUFBQXrAAAAAAAACA0RFRkdISUqLzE2Oj5CAkcAAAAAAEsATwAFBQUFBQUFBQUFBQUGBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVFWWl4FBQUFBQUFBQUFBQUFBQUFBQUFBQUJAEHM/eAACygBYihmam5yK3R4fICEiIyQlJmeogUypAAAAACXBQWpAAAAAAAAAAWsAEGE/uAACxMFsQC1BQUFBQUFBQUFBQVDBQW3AEGn/uAAC7sBmlK5AAAAAL8AAAAAAAAAAKeqwsTIAMoArc7S1rraAADcAAAAAAC9AAAFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBd4FBQUFBQUF3+EFBQUFBQUFBQUF5AUFBQUFBQUFBQUFBQXiBecAAAAABekAAAUFBQUFBQUFBeUFBQUFBQUF6wBB0IrhAAsBwABBwIvhAAtA/////////////////////////////////////////////z8//////z8//6r///8/////////31/cH88P/x/cHwBBlYzhAAtjBCAE//9/////f///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AEGVjeEAC2kEoAT//3////9///////////////////////////////////////////////////////////////////////8PAP//f/j//////w/////////////////////////////////D/wMAH1AAQY6O4QALhAbfvEDX///7////////////v//////////////////////////////////D/wMAH1AAAP//////////////////37zA1///+////////////7///////////////////////wP8///////////////////////////+////fwL//////wEAAAAAAAAAAP///4cHAP/////////////////////7/P///////////////////////////v///38C//////8B/v////+/tgD///+HBwAAAAAA//////8HAAAAwP7//////////////y8AYMAAnAAA/f///wAAAOD/////////////PwACAAD8////BzAEAAD/B////////////8P////////////////vn//9/58AAP/////////n////////////////AwD///////8/JP//PwQQAQAA////Af8H////fgAA//////8DAAAAAAAA8P///////yMAAAH/AwD+/+Gf+f///cUjAEAAsAMAAxD//////z8AAP///w//B////34A////////////+////////////////////8///v/vn/n///3F8595gLDP/wNQ4If5///9bQMAAABeAAAcAOC/+////e0jAAABAAMAAALgn/n///3tIwAAALADAAIA6Mc91hjH/wMAAAEAAAAAAO6H+f///W3ThzkCXsD/PwDuv/v///3t8787AQDP/wD+7p/5///97fOfOeCwz/8CAOzHPdYYx//Dxz2BAMD/AADg3/3///3/IwAAACcDAAAA4d/9///97yMAAABgAwAGAPDf/f////8nAEBwgAMAAPzg/3/8///7L38AAAAAAAAA/9/9///9//PfPWAnz/8AAO/f/f///e/z3z1gYM//DgD/3/3//////9998IDP/wD87v9//P//+y9/hF//wP8MAP7//////w0AfwAAAAAAAADW9///r/8NIF8AAPAAAAAAAQAAAAAAAAD//v///x8AAAAfAEGglOEAC9QD/v///////wf/f/8DAAAAANb3//+v//8/X3//8wAAAAABAAAD/wOgwv/+////H/7/3////v///x9AAAAAAAAAAP//////BwCAAAA/PGLA4f8DQAAA/////78g///////3////////////////////////////////////////////////////PwAA///////////8////////AAAAAAD/D////////////wP///////////8//////78g///////3//////////////////////////////////////////////////9/AP//PwD/AAAAv////////QcAAAAAAAAAAP///////////z1/Pf//////Pf////89fz3/f/////////89//////////8HAAAAAP//AAD/////////////Pz////////////89fz3//////z3/////PX89/3//////////Pf//////////5wD+AwD//wAA/////////////z8//v////////////////////////////////////////////////////////////////////////////////////////////////////////////8DAEGAmOEAC4sC/////////////////5////7//wf////////////H/wH//wOA//8DAP//AwD/3wEA////////DwAAAIAQAAAAAP////////////////+f///+//8H////////////x/8B//8/gP//HwD//w8A/98NAP////////////+PMP8DAAAAAAAA//////////////8B//////8F//////////8/AP///38AAAAAAAD///8/HwD//////w////8DAAAAAAAAALj/A///////////////Af//////B///////////PwD///9//w//D8D/////Px8A//////8P////A/8HAAAAAP//fwD///////8fAEGUmuEACwGAAEGgmuEAC/8B4P//////DwDgHwAAAAAAAPj///8BwAD8/////z8AAAD///8P/////////3////+f/wP/A4AA/7//fwAAAAAAAP///////////x//AwD4DwD//////////////////w8A/////w8AAAAA4AD8////P/8B///////nAAAAAADebwT///////////////////////////////8AAAAAAAAAAP////////8A/+P//////z//Af//////5wAA9/////8H////////////////////////////////////////////////////////////////////////////////////AEGunOEACwYCgAAA/x8AQcCc4QALEoT8Lz9Q/f/z4EMAAP//////AQBB4ZzhAAsxMAAAAAAAgAEAEAAAAAKAAAD/HwAAAAAAAP8f4v8BAIT8Lz9Q/f/z4EMAAP//////AQBBoJ3hAAvgBv////////////////////////////////////8feAwA/////78g/////////4AAAP//fwB/f39/f39/fwAAAAD/////////////////////////////////////H/gPAP////+/IP////////+AAID//38Af39/f39/f3//////4AAAAP4DPh/+////////////f/j+//////////////fg///////+/////////////38AAP////8AAAAAAAD//+AAAAD+/z4f/v///////////3/+/v/////////////34P///////v////////////9/AAD/////AAAAAAAA/////////////////////////x8AAAAAAAAAAP//////P////////////////////////////////////////////////wcABAAAACcA8AD/////////////////////////H///AAwAAP//////fwCA////P/////////////8AAAAAgP/8////////////////+f////////8H6wMAAPz//x////8PAAD////////wv///////////////////AwAAAID//P////////////////n/////////B+sDAAD8/7v3//8HAAAA////////DwD8//////8PAAAAAAAAAPxoAPz//z8A//9/AAAA////H/D//////wcAAIAAAN//AHz//////xAAAP///////w8A//////////8/AP8D////6P//////P/////8PAP///x///////////wGA/wP///9///////8BAAD3DwAA//9/xP///////2I+BQAAOP8HHAB+fn4Af3////////f/A///////////////////BwAAAP///////38A/z//A///f/z//////////wcAADj//3wAfn5+AH9////////3/wP///////////////////83/wP/////////////////P/////////////////8DAAAAAH8A+KD//X9f2/////////////////8DAAAA+P///////////////////////z//////////////////AwAAAAB/APjg//1/X9v/////////////////AwAAAPj//////wBBjqThAAuhAd//////////////////////HwAAAAD+//8H/v//B8D/////////////f/z8/BwAAAAA//8AAP//GAAA4AAAAADf/////////////////////x8AAP8D/v//h/7//wfA/////////////3/8/PwcAAAAAP/v//9///+3/z//PwAAAAD///////////////////8HAAAAAAAAAAD///////8fAEHApeEACy//7///f///t/8//z8AAAAA////////////////////BwAAAAAAAAAA////////HwBB/6XhAAsBIABBkKbhAAsr////H////////wEAAAAAAP////8A4P///wf/////PwD///8//////w//PgBB0KbhAAujAv///x////////8BAAEAAAD/////AOD///8H//////8H////P/////8P/z4AAAAAAP////////////////////////8/AAD/////D/////8P//////8A////////DwD/9//3t//7//sbAAAAAAAAAAD/////////////////////////P/8D/////w//////D///////AP///////w8A//f/97f/+//7GwAAAAAAAAAAP/3/////v5H//z8A//9/AP///38AAAAAAAAAAP//NwD//z8A////AwAAAAAAAAAA/////////8AAAAAAAAAAAAEA7/7//z8AAAAAAP///x////8fAAAAAP/+//8fAAAA////////PwD//z8A//8HAP//AwBBgKnhAAszb/Dv/v//P4cAAAAA////H////x8AAAAA//7//38AAAD///////8/AP//PwD//wcA//8DAEHAqeEACyX///////////8BAAAAAAAA////////BwD///////8HAP////8PAEGAquEACyj///////////8BAAAAAAAA////////BwD///////8HAP//////AP8DAEHQquEACwf//////wMDAEHgquEACx////8fgAD//z8AAAAAAP//AwAAAAAA//8fAAAA//9/AEGQq+EAC90B//////8bAwAAAAAAAAAA4P///x+AAP////8BAAAA//8/AAAAAAD//x8AAAD//38A+P///////wAAAAAAAAAmAPj//////wAAAAD///8BAAD4////fwAAAJAA/////0cA+P//////BwAeAAAUAAAAAP//////////fwAAAMD/P4D/////////BwQA////Af8D////////3//wAP////9PAP//////////H97/FwAAAAD///v//w8AgAEAAAAAAAAAf73/v/8B//////9/AAAAAOCf+f///e0jAAAB4AMAQYCt4QALL///+//////AAwAAAAAAAAB/vf+//wH/////////B/8D75/5///97fufOYHgzx8fAEHAreEACxn///////8fAIAHAIADAAAA////////AACwAEHwreEACyz//////38AAAAAAA8AAAAA////////////B//DAwAAAP//////////vwD/AwBBsK7hAAs5////////P/8BAAA/AAAAAP///////wAAEAAAAAAAAAD//////wcAAQAAAAAAAAAA////BwAAAAB/AEGAr+EACyn//////////xEA/wMAAAAA/////////wH/AwAAAAAAAP///+f/D/8DfwBBwK/hAAsG//////8PAEHUr+EACxX//////////wAAAIB/8m////8AgAIAQfSv4QALFP/8/////wEACgAAAP////////8HAEGUsOEAC0z///////////8DAIB/8m////+/+Q8A/wMAAAAAAAAAAP/8///////8GwAAAAH4/////wcEAAAB8P//////AwAgAAD///////////8BAEGSseEACy7///////////////8BAP////////9/gAD///////////8jAAD///////////8BAEH+seEACxTvb//9////fwAAAQAAAAAA/P///wBBoLLhAAsUf/v/////AQBAAAAAv/3///8DAAEAQcCy4QALF//9/////3//AQD/AwAA/P////z///5/AEHgsuEACxZ/+/////9/tP8A/wO//f///3/7Af8DAEGcs+EACwv//wcA9P/9////DwBBtrPhAAsBAQBB3LPhAAsQ//9/AP///f/////HBwD/AwBB9rPhAAsBAQBBgLThAAsp/////////////////38AAP///////////////////////////////w8AQcC04QALCf///////wAAfgBBgLXhAAsJ//////8///9/AEGgteEACwv///////8AAP//PwBB7LXhAAsK4OMH+OcPAAAAPABBgLbhAAsJ//////////9/AEHAtuEACwb///9/4AcAQeC24QALMv////////8B////fwAA////////////fwAA////PwAA////////AAAPAAAA+P//4P//AEGgt+EACzL/////////Af///3//A////////////3//A////z8fAP///////38ADwD/A/j//+D//wBB6LfhAAsI//////////8AQYC44QALHf///////////wcBAAAAAAAAAPj/AAAAAAAAAAALAEGouOEACwj//////////wBBwLjhAAtC////////////h/////////+A//8AAAAAAAAAABsAAwD//////////////////////////////////z8AAAAAAP8BAEGgueEACyD/////////////////////////////////////////DwBB/LnhAAsYf2//f/////////////////8H/x//Af8DAEHeuuEACxb/A/////////////////8H/x//Af9jAEGgu+EACx7///////////////////////////////////////8AQci74QALARwAQYC84QAL1gH/////////////3///////////32Te/+vv/////////7/n39////97X/z9//////////////////////////////////////////////////////8//////f//9/////f//9/////f//9/////f/////3////9///3DwAAAAAAAP//////////////////////////P/////3///f////3///f////3///f////3/////9/////f//98////////////////9/+P//////HyAAEAAA+P7/AEGGvuEACwj/////////PwBBoL7hAAsK//////8fgD8AQABBwL7hAAsSf///+dsH/////////z8AAACAAEHgvuEACwr//////x//P/9DAEGSv+EACwz///8/AAD//////w8AQdK/4QALDv///38AAP////////8DAEGawOEACwT///8PAEHawOEACwb//////wMAQYDB4QALKv///////////////////////////////x8AAAAAAAAA//////////8PCABBwMHhAAss////////////////////////////////HwB/AAAAAAD///////////8P/wMAQYDC4QALGO////+W/vcKhOqWqpb3917/+/8P7vv/DwBBwMLhAAusAv////////////////////////////////////8AAAAA////////////////////////////////////////////////////A////////////////////////////////////z//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AQD/////////////////////////////AwD///////////////////////////////////////////////////////////////////8H////////////////////////////////////////////PwBBoMXhAAsE////PwBB4MXhAAs2////////////////////////////////////////////////////////////////////////AEHCxuEAC5akAUAAfwC/APcA9wD3APcA9wD3APcAMAFwAaEB4QH3APcA9wAeAvcALgJfApYC1gIWA0sD9wB8A7YD6wMFBEUEhQTFBPYELAVoBaYF5QUjBmIGoAbfBh0HXQebB9kHFwhXCJUI1AgSCVIJkAnQCRAKTwqPCs4KDgtOC44LyAsIDEgMiAy4DPIMMg1SDXINmg33ANoNEQ5PDn4Oow7GDuYOJg/3APcA9wD3APcA9wD3APcA9wBmD4YPxg8GEEgMRhCGEKYQ5hAWEVYRlhHWEQwSNRJWEpYSxxIHE0ITghO8E/gTOBR4FLUU9wD3APcA9RT3APcA9wD3ADUVbxUpAq8V7xUtFm0WqxbrFhcXURd/F78X/Rc7GHsYsxj3APcA3hgSGVIZchlzGXIZphnmGSIaYhqiGuIaHxtcG4Ubuxv2G/cA9wD3APcA9wD3ADMcWxz3APcA9wD3APcAmRzPHPcA9wD3APcA5hwmHVYdlh22HfYdNh52HpEe0R7RHtEe+x47H3sfuB/1HzUg0R6BHmYgRiCmINEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe9wDRHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEg0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHgQhPSH3APcA9wD3AH0hvSH7IRsi9wD3APcAWyKZItkiGSNTI5MjzCMMJEskiyTLJEgMCCVHJXcl9wCnJecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJfsl5yXvJfcl/yXrJfMl+yXnJe8l9yX/Jesl8yX7Jecl7yX3Jf8l6yXzJTMmbCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwmrCasJqwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbRHtEe0R7RHtEe0R7RHtEeLCdsJ/cAqSf3APcA9wD3ALwn9wD8JzQodCiwKPcA5igmKWQplSnUKWAKfgqbCroK2graCtoK2wraCtoK2grbCvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsK+wr7CvsKGwv3AfcA/AEUKmgCaALsJuwm9wD3APcA9wD3APcA9wDlBCQq9wD3AOMJ9wD3APcA9wD0AdoJLQfsJuwm9wD3ACsq7CbsJuwm7CbsJuwm7CbsJvcA2gn3APcA9wAtBycCBwj3APcAqR33AOUE9wD3ADsq9wBLKvcA9wCfJVoq7CbsJvcA9wD3APcA9wD3APcA9wD3AGgCuwj3APcAnyX3AAcI9wD3AMsH9wD3APcAXCr4AfgBayoBAnkq7CbsJuwm7Cb3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3AEUR9wBGEcsH7Cb9AfcA9wCJKuwm7CbsJuwmmSr3APcAoyr3ALIq9wD3APcA9AEPA+wm7CbsJvcAvyr3AMoq9wDmBOwm7CbsJuwm9wD3APcAmyX3AHYC9wD3ANoq6Qb3AOoqtg/6KvcA9wD3APcA7CbsJvcA9wAKKxor9wD3APcAKiv3AHAC9wDtBPcAOisNA+wm7CbsJuwm7Cb3APcA9wD3ALYP7CbsJuwm9wD3APcANhn3APcA9wC8D/cA9wDUD7sI7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wD0AfcA9wBKKzcZ7CbsJuwm+hL3APcAywf3AGoBWivsJvcAaivsJuwm9wAHCOwm9wBFESUC9wD3AGgBeit2AmgLiislAvcA9wCZK6cr9wC2D7sIJQL3AGkBtyvHK/cA9wDXKyUC9wD3AG0B5yv3K+4BNBn3AAECZAEHLBYs7CbsJuwmJiz1ATUs9wD3AGEByxK7CEUsdQL6AVQsmwdkLHIs0RLsJuwm7CbsJuwm7CbsJuwm9wD3APcAawGCLJIsNxnsJvcA9wD3AHABoiy7COwm7CbsJuwm7CbsJuwm7CbsJuwm9wD3AGEBsizBLMos7CbsJvcA9wD3AHAB2iy7COos7Cb3APcAZQH6LLsI7CbsJuwmSAwBC34KCi0EJewm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APcAZAErBOwm7CbsJuwm7CbsJvcA9wD3APcArAMwJxotJi33ADYtRC27COwm7CbsJuwmbgL3APcAVC1jLewm8CH3APcAcy2DLZMt9wD3AGYBoy2yLfcA9wD3APcAtg/CLewm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJvoB9wBhAdkL0i2sA9oJ4i33AL0L2AvPEuwm7CbsJuwmCQf3APcA8S0ALrsIEC73AEISIC67COwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3ADAuQC7tAfcATC5aLrsI7CbsJuwm7CbsJi0H9wBqLnkuhy73APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA1g7sJuwm7CbsJuwm7Cb3APcA9wD3APcA9wD0AZYu9wD3APcA9wD3APcA9wD3APcA9wD3APcANRnsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJvcA9wD3APcA9wD3ADYZ9wD3APcA9wD3AKYu9wD3ALQu9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3AL4u9wD3APcA9wD3APcA9wD3AM4u3i7QEuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3AHMP9wD3APcA9wBFEewm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJvcA9wD3ALYP9wD0Ae4u9wD3APcA9wD0AbsI9wBoAv4u9wD3APcADi8aLyovAQLoBPcA7CbsJuwm7CbsJuwm7Cb3APcA9wD3APcANS/sJuwm7CbsJuwm7Cb3APcA9wD3AAgIbwFwAXABRS8lAuwm7CbsJuwmVS/UEtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEevR7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHvcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcARhHsJuwmvB7sJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJocG0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEeDh9jL+wmcy9/L9Ee0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHrke7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APcA9wD3APcA9wDlBNoJtg+PL9IS7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwmcAFwAegDcAHPEvcA9wD3APcA9wD3APcANRnsJuwm7Cb3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wBGEfcA9wBvAvcA9wD3AJ8vcAGsL/cAuC/3APcA9wDlBOwm9wD3APcA9wDGL+wm7CbsJuwm7CbsJuwm9wA1GfcANRn3APcA9wD3APcARRH3ALYP7CbsJuwm7CbsJuwm7CbsJvcA9wD3APcA9wD+AfcA9wD3APYB1C/iL/8B9wD3APcA3Q2GBvcAEA7vL+0B9wD3APcA9wD3APcA9wD3APcA9wBwAvcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD3APcA9wD5LwcwBzAHMHABcAFwAZgtcAFwAcQBFzAjMPwSpgLsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3APQBLzDsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJtkLPzBNMPcA9wD3AGgC7Cb4Euwm7CbsJuwm7CbsJuwm9wD3ANoJXTBbJOwm7CbsJuwm7CbsJuwm7CbsJuwm7Cb3AG0w7Cb3APcAZAF9MOwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm9wBkAbsI7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwmjTD0AfcA9wD3APcA9wD3APcA9wD3APcA9wD3AHECzxLsJuwm9wD3APcA9wCdMK0w7CbsJuwm7CbsJuwm7CbsJuwm7CbuAfcA9wBkKL0w7CbsJuwm7CbuAfcA9wBoAuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJv8B9wDMMNkw5zD3MAUxDTH5AQcIHDEHCOwm7CbsJjcZ7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbsJuwm7CbRHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHiwxchmkGXIZchlyGTwxchlyGXIZLDHRHtEe0R5JMU8x0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEeXzFlMdEebDF6MdEe0R6HMdEe0R7RHtEelzGmMbAxtzHGMdQx5DHyMdEe0R7RHtEeGBtjLgIyEBkVG9Ee0R4OMtEeHjLRHtEe0R4qMtEeNjLRHtEe0R7RHkEy9wD3AFEy0R7RHmExYTJnMtEe0R7RHvcA9wD3APcA9wD3APcAdzL3APcA9wD3APcAAjLRHtEeAhn3APcA9wAXGxUb9wD3ABcb9wAAGdEe0R7RHtEe0R6HMq4xzzGWMtEe0R7RHs4x0R7RHtEepTKpMbQy0R7RHvcA9wD3APcA9wB3MtEe0R7RHtEe0R7RHmIy0R7RHp4x9wD3APcA9wD3APcA9wD3APcAAAL3APcA5QTsJuwmuwjRHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHtEe0R7RHrceLQjsJnABcAFwAXABcAFwAewm7CbsJuwm7CbsJuwm7CZwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAHsJjUEVQR1BJUEtQTVBPUEDwUvBU8FbwWPBa8FzwXvBQoGKgYxBlEGgAOAA4ADgANmBioGhgajBoADgAOAA4ADgAPDBuAGgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAMqBgAHgAMcB8oAygDKAMoAygDKAMoAygA8B8oAXAdvB4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAegB7cHgAOAA4ADgAPXB4ADgAOAA4ADgAOAA4AD5wcHCCcIRwhdCCoGfQiAA40IrQjECNcI5wgHCYADIAlACWAJgAmgCcAJ4AkACsoAIArKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAygDKAMoAIAqAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADQAoDAwMDAwMDAwMMAgAAAQMDAwMDAwMDAwMDAwMDAwMDAwkSFh0aGR0WFREdGhcOFxsYGBgYGBgYGBgYFxcdHR0SHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dFRoRHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VDBAdAwMDAwMEAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMIFRkaGhodHBwdHBYdDB0dGRocHA0dHBwcHBwWHBwcFR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwNHBwcDRwdHRwdHR0dHR0dHBwcHB0cHQ0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMIAwMDAwMDAwMDAwMDCAgICAgICAMDAwMDAwMDAwMDAwMdHR0dHR0dHSoqHR0dHRcdKioqKh0dHR0dHR0qHSodHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRcMKiodHRoqAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDDAMdAwMdAwMSAyoqKioqKioqIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjKioqKiMjIyMdHSoqKioqKioqKioqHR0dHR0dHR0dGRkZFxcdHQMDAwMDAwMDAwMDEgMSEhIdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMDAwMDAwMDAxgYGBgYGBgYGBgZGBgdHR0DHR0dHR0dHR0dHR0dHR0dHR0dHR0SHQMDAwMDAwMdHQMDAwMDAx0dAwMdAwMDAx0dGBgYGBgYGBgYGB0dHR0dHR0dHR0dHR0dKh0dAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMDAwMqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDHSoqKioqKioqKioqKioqGBgYGBgYGBgYGB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAx0dHR0XEh0qKgMaGh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDHQMDAwMDAwMDAx0DAwMdAwMDAwMqKh0dHR0dHR0dHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDKiodKh0dHR0dHR0dHR0dKioqKiodHR0dHR0dHR0dHR0dHR0dKh0dKioqKioqAwMDAwMDAwMdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAx0DAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAx0DAwMDAwMDAwMDAwMDAwMDHQMDAwMDAwMdHR0dHR0dHR0dAwMMDBgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHR0dAwMDKh0dHR0dHR0dKiodHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dHR0dKh0qKiodHR0dKioDHQMDAwMDKioDAyoqAwMDHSoqKioqKioqAyoqKiodHSodHR0DAyoqGBgYGBgYGBgYGB0dGRkdHR0dHRkdGh0dAyoDAwMqHR0dHR0dKioqKh0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0qHR0qHR0qHR0qKgMqAwMDKioqKgMDKioDAwMqKioDKioqKioqKh0dHR0qHSoqKioqKioYGBgYGBgYGBgYAwMdHR0DHSoqKioqKioqKgMDAyodHR0dHR0dHR0qHR0dKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHSodHSodHR0dHSoqAx0DAwMDAwMqAwMDKgMDAyoqHSoqKioqKioqKioqKioqKh0dAwMqKhgYGBgYGBgYGBgdGioqKioqKiodAwMDAwMDKgMDAyodHR0dHR0dHSoqHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHSodHSodHR0dHSoqAx0DAwMDAyoqAwMqKgMDAyoqKioqKioDAwMqKioqHR0qHR0dAwMqKhgYGBgYGBgYGBgdHR0dHR0dHSoqKioqKioqAx0qHR0dHR0dKioqHR0dKh0dHR0qKiodHSodKh0dKioqHR0qKiodHR0qKiodHR0dHR0dHR0dHR0qKioqAwMDKioqAwMDKgMDAwMqKh0qKioqKioDKioqKioqKioqKioqKioYGBgYGBgYGBgYHR0dHR0dHR0dGh0qKioqKgMDAwMDHR0dHR0dHR0qHR0dKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0dHR0dHR0dHR0dHR0qKgMdAwMDAwMqAwMDKgMDAwMqKioqKioqAwMqHR0dKiodKiodHQMDKioYGBgYGBgYGBgYKioqKioqKg0dHR0dHR0dHQMDAw0dHR0dHR0dHSodHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dHSodHR0dHSoqAx0DAwMDAyoDAwMqAwMDAyoqKioqKioDAyoqKioqKh0dKh0dAwMqKhgYGBgYGBgYGBgqHR0DKioqKioqKioqKioqAwMDAx0dHR0dHR0dHSodHR0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAx0DAwMDAyoDAwMqAwMDAx0dKioqKh0dHQMdHR0dHR0dHR0dAwMqKhgYGBgYGBgYGBgdHR0dHR0dHR0ZHR0dHR0dKgMDAyodHR0dHR0dHR0dHR0dHR0dHR0qKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHR0dHR0dHR0dKh0qKh0dHR0dHR0qKioDKioqKgMDAwMDAyoDKgMDAwMDAwMDKioqKioqGBgYGBgYGBgYGCoqAwMdKioqKioqKioqKiopKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKioqKhopKSkpKSkpKSkpKSkpKSkdGBgYGBgYGBgYGAwMKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKSkqKSopKSkpKSopKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKSopKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSoqKSkpKSkqKSopKSkpKSkpKhgYGBgYGBgYGBgqKikpKSkqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKh0NDQ0NHQ0NCA0NDAgSEhISEggdEh0dHQMDHR0dHR0dGBgYGBgYGBgYGB0dHR0dHR0dHR0MAx0DHQMVEBUQAwMdHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKioqAwMDAwMDAwMDAwMDAwMMAwMdHR0dHQMDAwMDAwMDAwMDKgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyoMDB0dHR0dHQMdHR0dHR0qHR0NDQwNHR0dHR0ICCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiopKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpGBgYGBgYGBgYGAwMHR0dHSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKRgYGBgYGBgYGBgpKSkpKSkdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodKioqKiodKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0lJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJicnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycdHR0dHR0dHR0qHR0dHSoqHR0dHR0dHSodKh0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dKiodHR0dHR0dKh0dHR0qKh0dHR0dHR0dHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKh0dHR0qKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKgMDAx0MHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0qKgwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0MHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0VECoqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0MDAwdHR0dHR0dHR0dHSoqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0DAwMDKioqKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwwMKioqKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dAwMqKioqKioqKioqKiodHR0dHR0dHR0dHR0dKh0dHSoDAyoqKioqKioqKioqKikpKSkpKSkpKSkpKSkpKSkpKSkpDAwUKQwdDBopKSoqGBgYGBgYGBgYGCoqKioqKh0dHR0dHR0dHR0qKioqKiodHRISDAwNHRISHQMDAwgDGBgYGBgYGBgYGCoqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKiodHR0dHQMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMdKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKioqKioqKioqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoDAwMDAwMDAwMDAwMqKioqAwMDAwMDAwMDAwMDKioqKh0qKioSEhgYGBgYGBgYGBgpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKikpKSkpKioqKioqKioqKiopKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSoqKiopKSkpKSkpKSkpKSkpKSkpKioqKioqGBgYGBgYGBgYGCkqKiopKR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMqKh0dKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKgMYGBgYGBgYGBgYKioqKioqGBgYGBgYGBgYGCoqKioqKikpKSkpKSkpKSkpKSkpKioDAwMDAwMDAwMDAwMDAwMDKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgMDAwMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMdHR0dHR0dHSoqKhgYGBgYGBgYGBgMDB0MDAwMHR0dHR0dHR0dHQMDAwMDAwMDAx0dHR0dHR0dHQwMKgMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMdHRgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDAwMDAwMDKioqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAwMDAwMDAyoqKgwMDAwMGBgYGBgYGBgYGCoqKh0dHRgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0MDB0dHR0dHR0dHSoqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0dHSoqKioqKioqAwMDHQMDAwMDAwMDAwMDAwMDAwMDAwMDAx0dHR0DHR0dHR0dAx0dAwMDHSoqKioqAwMDAwMDAwMDAwMDAwgDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDCAMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKh0dHR0dHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qKh0dHR0dHSoqHR0dHR0dHR0qHSodKh0qHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqHR0dHR0qHR0dHR0dHR0dHR0dHR0qKh0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dKiodHR0qHR0dHR0dHQ0dKgwMDAwMDAwIDAwMBwMKAwMMCAwMCxwcHRYWFRYWFhUWHBwdHRMTEwwAAAMDAwMDCBkZGRkZGRkZHRYWHBQUHR0dHRcVEBQUFB0dHR0dHR0dHR0dHQwZDAwMDB0MDAwGHR0dHSoDAwMDAwMDAwMDHR0qKhwdHR0dHR0dHRUQHB0cHBwcHR0dHR0dHR0VECodHR0dHR0dHR0dHR0dKioqGhoaGhoaGhkaGhoaGhoaGhoaGhoaGhkaGhoaGRoaGRoaGhoaGhoaGhoaGhoaGgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAyoqKioqKioqKioqKioqKh0dHRkdHB0dHRkdHR0dHR0dHR0cHR0aHR0dHR0dHR0dHRwcHR0dHR0dHR0cHR0dHR0dHR0dHR0dHR0dHR0dHR0cHB0dHR0dHB0dHB0cHBwcHBwcHBwcHBwdHR0dHBwcHBwcHBwcHB0dHR0dHR0dHRwdHSoqKiocHBwcHBwcHBwcHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cHRwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHB0cHB0dHRwcHR0cHR0dHB0cGhodHB0dHR0cHR0cHBwcHR0cHRwdHBwcHBwcHRwdHR0dHRwcHBwdHR0dHBwdHR0dHR0dHRwdHR0cHR0dHR0cHR0dHR0dHR0dHR0dHRwcHR0cHBwcHR0cHB0dHBwdHR0dHR0dHR0dHR0dHR0dHBwdHRwcHR0dHR0dHR0dHR0dHRwdHR0cHR0dHR0dHR0dHR0cHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRMdHR0dHR0dHR0dHR0dHR0dFRAVEB0dHR0dHRwdHR0dHR0dJCQdHR0dHR0dHR0dHR0dFRAdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0kJCQkHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqKioqKioqKioqKioqKioqKioqKh0dHR0dHR0dHR0dKioqKioqKioqKioqKioqKioqKioqHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB0dHR0cHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHR0dHR0dHR0dHR0cHBwcHBwcHBwcHBwcHBwcHR0cHBwcHR0dHR0dHR0dHRwcHRwcHBwcHBwdHR0dHR0dHRwcHR0cHB0dHR0cHB0dHR0cHBwdHRwdHRwcHBwdHR0dHR0dHR0dHR0dHR0dHBwcHB0dHR0dHR0dHRwdHR0dHR0dHR0dHR0dHR0dJCQkJB0cHB0dHB0dHR0cHB0dHR0kJBwcJB0kJCQfJCQdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dJCQkHR0dHRwdHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHBwdHBwcHRwkHBwdHBwdHB0dHR0dHR0dHR0dHR0dHSQdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cHB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dJCQkJCQkJCQkHBwcHCQdJCQkHCQkHBwcJCQcHCQcHCQkJB0cHR0dHRwcJBwcHBwcHCQkJCQkHCQkHyQcHCQkJCQkHR0dJCQfHx8fHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0cHR0dFhYWFhYWHRISJB0dHRUQFRAVEBUQFRAVEBUQHBwcHBwcHBwcHBwcHBwcHBwcHBwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUQHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUQFRAVEBUQFRAdHR0dHR0dHR0dHR0dHR0dFRAVEBUQFRAVEBUQFRAVEBUQFRAVEB0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUQFRAdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHRUQHR0dHR0dHR0dHR0dHR0dHR0dHR0dHBwcHBwdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAx0dKioqKioSDAwMHRIMHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0qHSoqKioqHSoqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKioqKiodDCoqKioqKioqKioqKioqAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqKioqHR0dHR0dHSodHR0dHR0dKh0dHR0dHR0qHR0dHR0dHSoDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxYWFhYWFhYWFhYWFhYWDAwMDAwMDAwdDBUMHR0WFh0dFhYVEBUQFRAVEAwMDAwSHQwMHQwMHR0dHR0LCwwMDB0MDBUMDAwMDAwMDB0MHQwMHR0dEhIVEBUQFRAVEAwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCoqKioqKioqKioqKiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQqKioqKioqKioqKioqKioqKioqKioqKioqKiQkJCQkJCQkJCQkJCoqKioMEBAkJBQkJBUQFRAVEBUQFRAkJBUQFRAVEBUQFBUQECQkJCQkJCQkJCQDAwMDAwMkJCQkJAMkJCQkJBQUJCQkKh4kHiQeJB4kHiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQeJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB4kHiQeJCQkJCQkHiQkJCQkJB4eKioDAxQUFBQkFB4kHiQeJB4kHiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQeJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB4kHiQeJCQkJCQkHiQkJCQkJB4eJCQkJBQeFBQkKioqKiokJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkKiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCoqKioqKioqKioqKh4eHh4eHh4eHh4eHh4eHh4kJCQkJCQkJBwcHBwcHBwcJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkFCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCoqKiQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCoqKioqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0MDB0dHR0dHR0dHR0dHR0MEgwdHR0dHR0dHR0dHR0dHR0dGBgYGBgYGBgYGB0dKioqKioqKioqKioqKioqKioqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMdAwMDAwMDAwMDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMdDAwMDAwqKioqKioqKh0dHR0dHR0dHR0dKioqKiodHSodKh0dHR0dKioqKioqKioqKioqKioqKioqKioqKioqHR0dHR0dHR0dHR0dHR0DHR0dAx0dHR0DHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAx0dHR0DKioqHR0dHR0dHR0ZHSoqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0NDRISKioqKioqKioDAx0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMDAwMDKioqKioqKioMDBgYGBgYGBgYGBgqKioqKioDAwMDAwMDAwMDAwMDAwMDAwMdHR0dHR0dHR0dDR0dAxgYGBgYGBgYGBgdHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dAwMDAwMDAwMMDB0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDKioqKioqKioqKiodJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUlJSUqKioDAwMDHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDHR0dHR0dDAwMHR0dHSodGBgYGBgYGBgYGCoqKiodHSkpKSkpKSkpKSkpKSkpKSkYGBgYGBgYGBgYKSkpKSkqHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0DAwMDAwMDAwMDAwMDAyoqKioqKioqKh0dHQMdHR0dHR0dHQMDKioYGBgYGBgYGBgYKiodDAwMKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkqKioqKioqKioqKioqKioqKioqKioqKiopKSkpKR0dHR0dHR0dHR0dAwMDAwMMDB0dHQMDKioqKioqKioqHR0dHR0dKiodHR0dHR0qKh0dHR0dHSoqKioqKioqKh0dHR0dHR0qHR0dHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHSoqKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHQMDAwMDAwMDDAMDKioYGBgYGBgYGBgYKioqKioqISIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIhIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiISIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIioqKioqKioqKioqKiYmJiYmJiYmJiYmJiYmJiYqKioqJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyoqKioFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKh0dHR0dHR0qKioqKioqKioqKiodHR0dHSoqKioqIwMjIyMjIyMjIyMjHSMjIyMjIyMjIyMjIyMqIyMjIyMqIyojIyojIyojIyMjIyMjIyMjHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqKioqKioqKioqKh0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dEBUdHR0dHR0dHR0dHR0dHR0dKiodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioqKioqKh0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKh0dHR0dHR0dHR0dHRkdHR0DAwMDAwMDAwMDAwMDAwMDFxAQFxcSEhUQEyoqKioqKgMDAwMDAwMDAwMDAwMDAwMkJCQkJBUQFRAVEBUQFRAVECQkFRAkJCQkJCQkECQQKhQUEhIkFRAVEBUQJCQkJCQkJCQqJBoZJCoqKiodHR0dHSodHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dHR0dKioGKhIkJBoZJCQVECQkECQQJCQkJCQkJCQkJCQUFCQkJBIkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQVJBAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQVJBAkFRAQFRAQFCQeHh4eHh4eHh4eJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkFBQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkKiokJCQkJCQqKiQkJCQkJCoqJCQkJCQkKiokJCQqKioZGiQkJBoaKh0dHR0dHR0qKioqKioqKioqAwMDDxwqKh0dHR0dHR0dHR0dKh0dKh0MDAwqKioqHR0dHR0dHR0dHR0dHQMqKh0dHR0dHQMDAwMDKioqKiodHR0dHR0dHR0dHR0dHSoMHR0dHR0qKioqKioqKioqKh0dHSodHSodHR0dHR0dHR0qHR0dHR0dHSodHSoqKh0qHR0dHR0dHR0dKioqKiodHR0dHR0qKh0qHR0dHR0dKh0dKioqHSoqHR0dHR0dKgwdHR0dHR0dHSodHSoqKioqHR0dHR0dHR0dHR0dKioqDB0DAwMqAwMqKioqKgMDAwMdHR0dHR0qKgMDAyoqKioDDAwMDAwMDAwdKioqKioqKh0dHR0dAwMqKioqHR0dHR0MDAwMDAwTKioqKioqKioqHR0dHR0dKioqDAwMDAwMDB0dKioqKioqKh0dHR0qKiodHR0dHR0dHR0dKgMDDCoqAx0dHR0dHR0dHSoqKioqKh0dAwMDAx0dHR0qKioqKioDAwMDAwMDDAwdHR0dHSoqAx0dAwMdKioqKioqKioqAwMDAwMDAwMDAwMdHR0MDAMqKioqKioqKioqHSoqAwMDAwMqGBgYGBgYGBgYGAwMDAwdAwMdKioqKioqKiodHR0DHQ0dKioqKioqKioqAx0dHR0MDB0MAwMDAx0DAxgYGBgYGBgYGBgdDR0MDAwDAwMDAwMDAwwMHQwMHQMdAyoqKioqKioqKioqKioqHR0dHR0dHSodKh0dHR0qHR0dHR0dHR0dDCoqKioqKgMDAwMqHR0dHR0dHR0qKh0qHR0qHR0dHR0qAwMdAwMdKioqKioqAyoqKioqHR0dAwMqKgMDAwMDAwMqKioDAwMDAwMDHR0dHQwMDAwdGBgYGBgYGBgYGAwMKh0DHQMDAwMdHR0dKioqKioqKioDAwMDAwMqKgMDAwMDAwMDDQwMEhIdHR0MDAwMDAwMDB0dHR0DAyoqAwwMHR0qKioqKioqKioqKg0NDQ0NDQ0NDQ0NDQ0qKioDAwMDAwMDAx0dKioqKioqGBgYGBgYGBgYGCkpDAwMKR0dHR0dHR0qKh0qKh0dHR0qHR0qHR0dHR0dHR0DAwMDAwMqAwMqKgMDAwMdAwMMDAwqKioqKioqKiodAwMDAwMDAyoqAwMDAwMDHQ0dAyoqKioqKioqKioqHR0dAwMDAwMDAx0DAwMDDR0MDAwMDR0DKioqKioqKiodAwMDAwMDAwMDAwMdHR0dAwMDAwMDAwMDAwwMDB0NDQwMKioqKioqKioqKioqKg0NDQ0NDQ0NDQ0qKioqKiodDAwMDAwqKioqKioqKioqDRIdHR0dHR0dHR0dHR0dHQMDAwMDAyoqKgMqAwMqAwMDAwMDHQMqKioqKioqKh0dHR0dHSodHSodHR0dHR0DAyoDAwMDAx0qKioqKioqHR0dAwMDAx0dKioqKioqKgMDHQMdHR0dHR0dHR0dHR0DAwMDAwMDKioqAwMDDAwkJCQkJCQkJCQkJB0dHR0dHR0dHR0dHR0ZGRkdHR0dHR0dHR0dHR0dHR0qKioqKioqKioqKioqDAwMDAwqKioqKioqKioqKh0dHR0dHR0dFRUVEBAQHR0QHR0dFRAVEB0dHR0dHR0dHRUQEB0dHR0ICAgICAgIFRAICAgVEBUQAx0dHR0dHQMDAwMDAwMDAxgYGBgYGBgYGBgqKioqDAwDAwMDAwwqKioqKioqKioqAwMDAwMDAwwMDB0dHR0dHQwdKioqKioqKioqKhgYGBgYGBgYGBgqHR0dHR0dHQwMHR0qKioqKgMDAwMDAwMDKioqKioqKgMUFBQUCCoqKioqKioqKioqHioqKioqKioqKioqKioeHh4qKh4qKioqKioqKioqHh4eHioqKioqKioqHR0dHR0dHR0dHSoqHQMDDB0dHR0dAwMDAwMdHR0DAwMdHQMDAwMDAwMdHR0dHR0dHR0dAwMDAx0dAwMDHSoqKioqKioqKiodKiodHSoqHR0dHSodHR0dHR0dHR0dKh0qHR0dHR0qHSoqKh0dHR0dHR0dHR0dHSoqGBgYGBgYGBgYGBgYGBgYGB0dHR0dAx0dHR0dHR0dHR0DHR0MDAwMHSoqKioqHR0dHR0dKioqKioDAwMDAwMDAwMqKgMDAwMDKgMDKgMDAwMDKioqKioDAwMDAwMDHR0dHR0dHSoqHR0dHR0dHR0dHR0dHR0DKhgYGBgYGBgYGBgqKioqKhodHR0dHR0dKh0dHR0qHR0qHR0dHQMDAwMDAwMdKioqKhgYGBgYGBgYGBgqKioqFRUZHR0dHSoqKioqKioqKioqHR0qHSoqHSodHR0dHR0dKh0dHR0qHSodKioqKh0qKioqHSodKh0qHR0dKh0dKh0qKh0qHSodKh0qHR0qHSoqHR0dHSodHR0dKh0dHR0qHSodHR0qHR0dHR0qHR0dHR0cHBwcHBwcHBwcHBwcJCQkHBwcHBwcHBwcHB0dHSQkJCQkJCgoKCgoKCgoKCgoKCgoKCgkJCQkJB8kJCQkJCQkJCQkJCQdHSQkJCQkHSQkJB8fHyQkHyQkHx8fJCQkJCQkJCQkJCQgICAgICQkHx8kJB8fHx8fHx8fHx8kJCQkJCQkJCQkJCQkJCQfHx8fHx8fHx8fJCQkHyQkJB8fHyQfHx8kJCQkJCQkHyQkJCQkJCQkJCQkJCQkHSQdJB0kJCQkJB8kJCQkHR0kJCQkJCQkJCQkJCQkHR0dHR0kJCQkJCQkJCQkJB8fJCQkJB8kJCQkJB8kJCQkHx8kJCQkJCQkJCQdHR0dHR0dHSQkJCQdHR0dHR0kJCQkJCQfHx8kJCQfHx8fHx0dHR0dHRYWFhQUFB0dHR0kJCQkHx8fJCQkJCQkJCQkJCQfJCQkHR0dHSQkJCQkJCQkJCQkJB0dHR0dHR0dHR0dHR8kJB8fHx8fHx8fHx8kJB8fHyQkJCQkHx8kHx8kHyQkJCQfHx8fHx8fHx8fHx8fJCTAwcLdxN3Gx8jJ3cvMzc7P0NHS09TV1tfY2drb3d3U3+Dh4uPk5ebn6N3d68DBAt3E3cbHyMndy8zNzs/Q0dLT1NXW19jZ2tvd3dTf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AM/QAAAAAAAAANAAQaP74gALA9EA0gBBwPviAAss0wAA1NXW1wDY2QAA2tvc3d7fM+Dh4uPkM+Uz5gAAAOcAAAAA6OkzMwDq6+wAQYD84gALwAEzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz4QQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAQYD+4gALwAJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVXtVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVXddVcf/1Xf9VVVVVVdVVVVVVVVVV1VVVVdX9XVdVVVVVVVVVVVVVVQBB3IDjAAspVVVVVVXVVVVVVVVVVVVVVVVVVVUVAFBVVVVVVVVVVVVVVVVVVVVVVQEAQY+B4wALtAEQQRBVVVVVVVVVVVVVVVVVVVVRVVUAAEBUVVVVVVVVVVVVVRUAAAAAAFVVVVVUVVVVVVVVVVUFABQAFARQVVVVVVVVVRVRVVVVVVVVVQAAAAAAAEBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVBQAAVFVVVVVVVVVVVVVVVVUVAABVVVFVVVVVVQUQAAABAVBVVVVVVVVVVVVVAVVVVVVVVVVVVVVVVVVQVQAAVVVVVVVVVVVVVQUAQdCC4wAL4w1AVVVVVVVVVVVVVVVVVUVUAQBUUQEAVVUFVVVVVVVVVVFVVVVVVVVVVVVVVVVVVUQBVFVRVRVVVQVVVVVVVVVFQVVVVVVVVVVVVVVVVVVVVEEVFFBRVVVVVVVVVVBRVVUBEFRRVVVVVQVVVVVVVQUAUVVVVVVVVVVVVVVVVVVVBAFUVVFVAVVVBVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVFVFVVUVUVVVVVVVVVVVVVVVRUVVVVVVVVVVVVVVVVVQRUBQRQVUFVVQVVVVVVVVVVUVVVVVVVVVVVVVVVVVVVFEQFBFBVQVVVBVVVVVVVVVVQVVVVVVVVVVVVVVVVVRVEAVRVUVUVVVUFVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVVVVUUVBURVFVVVVVVVVVVVVVVVVVVVVVVVVVVVUQBAVVUVAEBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRAABUVVUAQFVVVVVVVVVVVVVVVVVVVVVVVVBVVVVVVVURUVVVVVVVVVVVVVVVVVUBAABAAARVAQAAAQAAAAAAAAAAVFVFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQEEAEFBVVVVVVVVUAVUVVVVAVRVVUVBVVFVVVVRVVVVVVVVVVWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoAAAAAAAAAAFVVVVVVVVUBVVVVVVVVVVVVVVVVBVRVVVVVVVUFVVVVVVVVVQVVVVVVVVVVBVVVVVVVVVVVVVVVVVVVVVUQAFBVRQEAAFVVUVVVVVVVVVVVVVUVAFVVVVVVVVVVVVVVVVVBVVVVVVVVVVVRVVVVVVVVVVVVVVVVVUAVVFVFVQFVVVVVVVUVFFVVVVVVVVVVVVVVVVVVRQBARAEAVBUAABRVVVVVVVVVVVVVVVUAAAAAAAAAQFVVVVVVVVVVVVVVVQBVVVVVVVVVVVVVVVUAAFAFVVVVVVVVVVVVFQAAVVVVUFVVVVVVVVUFUBBQVVVVVVVVVVVVVVVVVUVQEVBVVVVVVVVVVVVVVVVVVQAABVVVVVVVVUAAAAAEAFRRVVRQVVVVFQDXf19ff/8FQPdd1XVVVVVVVVVVVQAAAABVV1VV/VdVVVVVVVVVVVVXVVVVVVVVVVUAAAAAAAAAAFRVVVXVXV1V1XVVVX1VVVVVVVVVVVVVVdVX1X////9V//9fVVVVXVX///9VVVVVdVVVX1VVVVX1dVdVVVXVVVVVVVVV99ff111ddf3X//93Vf9VX11VX1d1VVVVf//19V9VVVX1/19VVV1dVVVdVVVVVVXVVVVVVXVVpVVVVWlVVVVVVVVVVVVVVVVVVVWpVpZVVVVVVVVVVVVVVf/////////////////////////////////////////////f//////////9V////////////VVVV//////VfVVXf/19V9fVVX1/11/VfVVVV9V9V1VVVVWlVfV31VVpVd1VVVVVVVVVVd1WqqqpVVVXf33/fVVVVlVVVVVWVVVX1WVWlVVVVVelV+v/v//7//99V7/+v++/7VVmlVVVVVVVVVVZVVVVVXVVVVWaVmlVVVVVVVVX1//9VVVVVValVVVVVVVVWVVWVVVVVVVVVlVZVVVVVVVVVVVVVVVVW+V9VVVVVVVVVVVVVVVVVVVVVVVVVVRVQVVVVVVVVVVVVVVVVVVVVVVVVFVVVVVVVVVVVAAAAAAAAAACqqqqqqqqaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqlVVVaqqqqqqWlVVVVVVVaqqqqqqqqqqqqqqqqqqCgCqqqpqqaqqqqqqqqqqqqqqqqqqqqqqqqqqaoGqqqqqqqqqqqpVqaqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqKqqqqqqqqqqqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqpVVZWqqqqqqqqqqqqqqmqqqqqqqqqqqqqq//+qqqqqqqqqqqqqqqqqqqpWqqqqqqqqqqqqqqqqqmpVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFUAAAFBVVVVVVVVVBVVVVVVVVVVVVVVVVVVVVVVVVVVVUFVVVUVFFVVVVVVVVUFVVFVVVVVVUFVVVVVVVQAAAABQVUUVVVVVVVVVVVVVBQBQVVVVVVUVAABQVVVVqqqqqqqqqlZAVVVVVVVVVVVVVVUVBVBQVVVVVVVVVVVVUVVVVVVVVVVVVVVVVVVVVVUBQEFBVVUVVVVUVVVVVVVVVVVVVVVUVVVVVVVVVVVVVVVVBBRUBVFVVVVVVVVVVVVVUFVFVVVVVVVVVVVVVVVRVFFVVVVVqqqqqqqqqqqqVVVVAAAAAABAFQBBv5DjAAuhCFVVVVVVVVVVRVVVVVVVVVVVAAAAAKqqWlUAAAAAqqqqqqqqqqpqqqqqqmqqVVVVVVWqqqqqqqqqqlZVVVVVVVVVVVVVVVVVVQVUVVVVVVVVVVVVVVVVVVVVqmpVVQAAVF1VVVVVVVVVVVVVVVVVVVVRVVVVVVVVVVVUVVVVVVVVVVVVVVVVVVVVVVVVVVUFQFUBQVUAVVVVVVVVVVVVVUAVVVVVVVVVVVVVQVVVVVVVVVVVVVVVVVVVVQBVVVVVVVVVVVVVVVVVVVVVFVRVVVVVVVVVVVVVVVVVVVVVVVVVAVUFAABUVVVVVVVVVVVVVVUFUFVVVVVVVVVVVVVVVVVVUVVVVVVVVVVVVVVVVVUAAABAVVVVVVVVVVVVVRRUVRVQVVVVVVVVVVVVVVUVQEFVRVVVVVVVVVVVVVVVVVVVVUBVVVVVVVVVVRUAAQBUVVVVVVVVVVVVVVVVVVUVVVVVUFVVVVVVVVVVVVVVVQUAQFVVARRVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRVQBFVFVVVVVVVVVRUVAEBVVVVVVVRVVVVVFVVVVQUAVABUVVVVVVVVVVVVVVVVVVVVVQAABURVVVVVVUVVVVVVVVVVVVVVVVVVVVVVVVVVVRQARBEEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUVBVBVEFRVVVVVVVVQVVVVVVVVVVVVVVVVVVVVVVVVVVUVAEARVFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUVUQAQVVVVVVVVVVVVAQUQAFVVVVVVVVVVVVVVVVVVVVUVAABBVVVVVVVVVVVVVVVVVVRVFUQVVVVVVVVVVVVVVVVVVVVVVVVVVVUABVVUVVVVVVVVVQEAQFVVVVVVVVVVVRUAFEBVFVVVAUABVVVVVVVVVVVVVVUFAABAUFVVVVVVVVVVVVVVVVVVVVVVVVVVVQBAABBVVVVVBQAAAAAABQAEQVVVVVVVVVVVVVVVVVVVAUBFEAAQVVVVVVVVVVVVVVVVVVVVVVVVUBFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVFVRVVVBVVVVVVVVVVVVVVVUFQFVEVVVVVVVVVVVVVVVVVVVVVBUAAABQVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQBUVVVVVVVVVVVVVVVVVVUAQFVVVVVVFVVVVVVVVVVVVVVVVVVVVRVAVVVVVVVVVVVVVVVVVVVVVVVVVapUVVVaVVVVqqqqqqqqqqqqqqqqqqpVVaqqqqqqWlVVVVVVVVVVVVWqqlZVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVqqmqaaqqqqqqqqqqalVVVWVVVVVVVVVVallVVVWqVVWqqqqqqqqqqqqqqqqqqqqqqqqqVVVVVVVVVVVBAFVVVVVVVVUAQeuY4wALRVAAAAAAAEBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVRFQBQAAAABAAQBVVVVVVVVVBVBVVVVVBVRVVVVVVVVVVVVVVVVVVQBBvZnjAAsCQBUAQcuZ4wAL+AZUVVFVVVVUVVVVVRUAAQAAAFVVVVUAQAAAAAAUABAEQFVVVVVVVVVVVVVVVVVVVVVFVVVVVVVVVVVVVVVVVVVVAFVVVVVVVVVVAEBVVVVVVVVVVVVVVQBAVVVVVVVVVVVVVVVVVVVWVVVVVVVVVVVVVVVVVVVVVVWVVVVVVVVVVVVVVVVV//9/Vf////////9f//////////////////9fVf/////////vq6rq/////1dVVVVValVVVaqqqqqqqqqqqqqqVaqqVlVaVVVVqlpVVVVVVVWqqqqqqqqqqlZVVamqmqqqqqqqqqqqqqqqqqqqqqqqpqqqqqqqVVVVqqqqqqqqqqqqqmqVqlVVVaqqqqpWVqqqqqqqqqqqqqqqqqqqqqqqaqaqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqWqqqqqqqqqqqqqqqqqqqqWlVVlWqqqqqqqqpVVVVVZVVVVVVVVWlVVVVWVVVVVVVVVVVVVVVVVVVVVVVVVVWVqqqqqqpVVVVVVVVVVVVVVVWqWlVWaqlVqlVVlVZVqqpWVVVVVVVVVVWqqqpVVlVVVVVVVaqqqqqqqqqqqqqqaqqqmqqqqqqqqqqqqqqqqqqqVVVVVVVVVVVVVVVVqqqqVqqqVlWqqqqqqqqqqqqqqpqqWlWlqqqqVaqqVlWqqlZV////////////////////X0VtcHR5SW52YWxpZERpZ2l0UG9zT3ZlcmZsb3dOZWdPdmVyZmxvd1plcm8wMTIzNDU2Nzg5YWJjZGVmL2hvbWUvbm9kZS9ob21lLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvdXVpZC0xLjEwLjAvc3JjL2ZtdC5ycwAAG88YAFsAAAC5AAAADQAAABvPGABbAAAAsQAAABUAAAAbzxgAWwAAALQAAAANAAAAG88YAFsAAAC1AAAADQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3dhc20tYmluZGdlbi0wLjIuOTkvc3JjL2NhY2hlL2ludGVybi5yc7jPGABsAAAAGwAAACsAAAAAAAAA//////////840BgAQdCg4wALtgRUcmllZCB0byBzaHJpbmsgdG8gYSBsYXJnZXIgY2FwYWNpdHlQ0BgAJAAAAC9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnN80BgATAAAAKYCAAAJAAAASnNWYWx1ZSgpAAAA2NAYAAgAAADg0BgAAQAAAC9ob21lL25vZGUvaG9tZS8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL3dhc20tYmluZGdlbi1mdXR1cmVzLTAuNC40OS9zcmMvcXVldWUucnMAAAD00BgAbQAAACUAAAAuAAAA9NAYAG0AAAAoAAAAKQAAAPTQGABtAAAAPgAAABoAAAAvaG9tZS9ub2RlL2hvbWUvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi93YXNtLWJpbmRnZW4tZnV0dXJlcy0wLjQuNDkvc3JjL3Rhc2svc2luZ2xldGhyZWFkLnJzAAAAlNEYAHkAAAAiAAAAFQAAAJgFAACZBQAAmgUAAJsFAACU0RgAeQAAAGcAAAAlAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGFmdGVyIGJlaW5nIGRyb3BwZWQAAJwFAAAEAAAABAAAAJ0FAACeBQBBkKXjAAu0AQEAAACfBQAAY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbi9ydXN0Yy85MGIzNWE2MjM5YzNkOGJkYWJjNTMwYTZhMDgxNmY3ZmY4OWEwYWFmL2xpYnJhcnkvc3RkL3NyYy90aHJlYWQvbG9jYWwucnMAAADe0hgATwAAAAQBAAAaAAAAAAAAgABB3KbjAAv8UwECAgIAAAABAQICAggAAAANAAAADwAAAGvxEABz8RAAgPEQAAAAAAABAAAAAQAAAAgAAAANAAAADwAAAGvxEABz8RAAgPEQAAgAAAANAAAADwAAAGvxEABz8RAAgPEQAAYAAAAGAAAACAAAAAcAAADQexAAuiUSANZ7EADeexAAUJsQAFKbEABUmxAAVpsQAFibEABamxAAXJsQAF6bEABgmxAAYpsQAGSbEABmmxAAaJsQAGqbEABsmxAAbpsQAHCbEAAsoxAAPKMQAEyjEABcoxAAXKMQAGyjEAB8oxAAjKMQAJyjEACsoxAAvKMQAMyjEADcoxAA7KMQAPyjEAAMpBAAHKQQACykEAA8pBAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACcmxAAnJsQAJybEACsmxAAvJsQAMybEADcmxAA7JsQAPybEAAMnBAAHJwQACycEAA8nBAATJwQAFycEABsnBAAfJwQAIycEACcnBAArJwQALycEADMnBAA3JwQAOycEAD8nBAADJ0QAAydEAAcnRAALJ0QADydEABMnRAAXJ0QAGydEAB8nRAAjJ0QAJydEACsnRAAvJ0QALydEADMnRAA3J0Q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ANazEADesxAA5rMQAO6zEAD2sxAA/rMQAAa0EAAOtBAAFrQQAB60EAAmtBAALrQQADa0EAA+tBAARrQQAE60EABWtBAAXrQQAGa0EAButBAAdrQQAH60EACGtBAA/KwQAAKtEAAIrRAADq0QABStEAAarRAAIK0QACatEAAsrRAAMq0QADitEAA/rRAARq0QAE2tEABUrRAAW60QAGKtEABprRAAcK0QAHetEAB+rRAAha0QAIytEACTrRAAmq0QAKGtEACorRAAr60QALatEAC9rRAAxK0QAMutEADSrRAA2a0QAOCtEADnrRAA7q0QAPWtEAD8rRAAA64QAAquEAARrhAAGK4QAB+uEAAmrhAALa4QADSuEAA7rhAAQq4QAEmuEABQrhAAV64QAF6uEABlrhAAbK4QAHOuEAB6rhAAga4QAIiuEACPrhAAlq4QAJ2uEACkrhAAq64QALKuEAC5rhAAwK4QAMeuEADOrhAA1a4QANyuEADjrhAA6q4QAPGuEAD4rhAA/64QAAavEAANrxAAFK8QABuvEAAirxAAKa8QADCvEAA3rxAAPq8QAEWvEABMrxAAU68QAFqvEABhrxAAaK8QAG+vEAB2rxAAfa8QAISvEACLrxAAkq8QAJmvEACgrxAAp68QAK6vEAC2rxAAvq8QAMavEADOrxAA1q8QAN6vEADmrxAA7q8QAPavEAD+rxAABrAQAA6wEAAWsBAAHrAQACawEAAusBAANrAQAD6wEABGsBAATrAQAFawEABesBAAZrAQAG6wEAB2sBAAfrAQAIawEAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAHKbEAB0mxAAdpsQAHibEAB6mxAAfJsQAH6bEACAmxAAgpsQAISbEACHmxAAipsQAI2bEACQmxAAk5sQAJabEACZmxAA3KsQAOyrEAD8qxAADKwQAAysEAAcrBAALKwQADysEABMrBAAXKwQAGysEAB8rBAAjKwQAJysEACsrBAAvKwQAMysEADcrBAA7KwQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAATKQQAEykEABMpBAAXKQQAGykEAB8pBAAjKQQAJykEACspBAAvKQQAMykEADcpBAA7KQQAPykEAAMpRAAHKUQACylEAA8pRAATKUQAFylEABspRAAfKUQAIylEACcpRAArKUQALylEAC8pRAAzKUQANylEADspRAA/KUQAAymEAAcphAALKYQADymEABMphAAXKYQAGymEABsphAAfKYQAIymEACcphAArKYQALymEAC8phAAzKYQANymEADsphAA/KYQAAynEAAcpxAALKcQADynEABMpxAAXKcQAFynEABspxAAfKcQAIynEACcpxAArKcQALynEADMpxAA3KcQAOynEAD8pxAADKgQAByoEAAsqBAAPKgQAEyoEABcqBAAbKgQAGyoEAB8qBAAjKgQAJyoEACsqBAAvKgQAMyoEADMqBAA3KgQAOyoEAD8qBAADKkQABypEAAMpxAALKkQADypEABMqRAAXKkQAGypEAB8qRAAjKkQAJypEACsqRAAvKkQAMypEADcqRAA7KkQAPypEAAMqhAAHKoQACyqEAA8qhAATKoQAFyqEABsqhAAfKoQAIyqEACcqhAArKoQALyqEADMqhAA3KoQAOyqEAD8qhAADKsQAByrEAAsqxAAPKsQAEyrEABcqxAAbKsQAHyrEACMqxAAnKsQAKyrEAC8qxAAzKsQAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAguBAAKLgQADC4EAA4uBAAQLgQAEi4EABQuBAAWLgQAGC4EABouBAAcLgQAHi4EACAuBAAiLgQAJC4EACYuBAAoLgQAKi4EACwuBAAuLgQAMC4EADIuBAA0LgQANi4EADguBAA6LgQAPC4EAD4uBAAALkQAAi5EAAQuRAAGLkQACC5EAAouRAAMLkQADi5EABAuRAASLkQAFC5EABYuRAAYLkQAGi5EABwuRAAeLkQAIC5EACIuRAAkLkQAJi5EACguRAAqLkQALC5EAC4uRAAwLkQAMi5EADQuRAA2LkQAOC5EADouRAA8LkQAPi5EAAAuhAACLoQABC6EAAYuhAAILoQACi6EAAwuhAAOLoQAEC6EABIuhAAULoQAFi6EABguhAAaLoQAHC6EAB4uhAAgLoQAIi6EACQuhAAmLoQAKC6EACouhAAsLoQALi6EADAuhAAyLoQANC6EADYuhAA4LoQAOi6EADwuhAA+LoQAAC7EAAIuxAAELsQABi7EAAguxAAKLsQADC7EAA4uxAAQLsQAEi7EABQuxAAWLsQAGC7EABouxAAcLsQAHi7EACAuxAAiLsQAJC7EACYuxAAoLsQAKi7EACwuxAAuLsQAMC7EADIuxAA0LsQANi7EADguxAA6LsQAPC7EAD4uxAAALwQAAi8EAAQvBAAGLwQAI60EACUtBAAmrQQAKC0EACmtBAArLQQALK0EAC4tBAAvrQQAMS0EADKtBAA0bQQANi0EADftBAA5rQQAO20EAD0tBAA+7QQAAK1EAAJtRAAELUQABe1EAAetRAAJbUQACy1EAAztRAAOrUQAEG1EABItRAAT7UQAFa1EABdtRAAZLUQAGu1EABytRAAebUQAIC1EACHtRAAjrUQAJW1EACctRAAo7UQAKq1EACxtRAAuLUQAL+1EADGtRAAzbUQANS1EADbtRAA4rUQAOm1EADwtRAA97UQAP61EAAFthAADLYQABO2EAAathAAIbYQACi2EAAvthAANrYQAD22EABEthAAS7YQAFK2EABZthAAYLYQAGe2EAButhAAdbYQAHy2EACDthAAirYQ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", "base64"); var wasmModule = new WebAssembly.Module(bytes); var wasmInstance = new WebAssembly.Instance(wasmModule, imports); wasm = wasmInstance.exports; diff --git a/deps/amaro/dist/package.json b/deps/amaro/dist/package.json index 32e28ed92d2244..23985726c2e4ba 100644 --- a/deps/amaro/dist/package.json +++ b/deps/amaro/dist/package.json @@ -4,7 +4,7 @@ "강동윤 <kdy1997.dev@gmail.com>" ], "description": "wasm module for swc", - "version": "1.7.40", + "version": "1.10.7", "license": "Apache-2.0", "repository": { "type": "git", diff --git a/deps/amaro/dist/strip-loader.js b/deps/amaro/dist/strip-loader.js index ebdf13b26992c9..1a55bc5a28882b 100644 --- a/deps/amaro/dist/strip-loader.js +++ b/deps/amaro/dist/strip-loader.js @@ -1,24 +1,32 @@ "use strict"; +import { isSwcError, wrapAndReThrowSwcError } from "./errors.js"; import { transformSync } from "./index.js"; export async function load(url, context, nextLoad) { const { format } = context; if (format.endsWith("-typescript")) { - const { source } = await nextLoad(url, { - ...context, - format: "module" - }); - const { code } = transformSync(source.toString(), { - mode: "strip-only" - }); - return { - format: format.replace("-typescript", ""), - // Source map is not necessary in strip-only mode. However, to map the source - // file in debuggers to the original TypeScript source, add a sourceURL magic - // comment to hint that it is a generated source. - source: `${code} + try { + const { source } = await nextLoad(url, { + ...context, + format: "module" + }); + const { code } = transformSync(source.toString(), { + mode: "strip-only" + }); + return { + format: format.replace("-typescript", ""), + // Source map is not necessary in strip-only mode. However, to map the source + // file in debuggers to the original TypeScript source, add a sourceURL magic + // comment to hint that it is a generated source. + source: `${code} //# sourceURL=${url}` - }; + }; + } catch (error) { + if (isSwcError(error)) { + wrapAndReThrowSwcError(error); + } + throw error; + } } return nextLoad(url, context); } diff --git a/deps/amaro/dist/transform-loader.js b/deps/amaro/dist/transform-loader.js index eff8cc0e8555d9..970a924c14345c 100644 --- a/deps/amaro/dist/transform-loader.js +++ b/deps/amaro/dist/transform-loader.js @@ -1,30 +1,38 @@ "use strict"; +import { isSwcError, wrapAndReThrowSwcError } from "./errors.js"; import { transformSync } from "./index.js"; export async function load(url, context, nextLoad) { const { format } = context; if (format.endsWith("-typescript")) { - const { source } = await nextLoad(url, { - ...context, - format: "module" - }); - const { code, map } = transformSync(source.toString(), { - mode: "transform", - sourceMap: true, - filename: url - }); - let output = code; - if (map) { - const base64SourceMap = Buffer.from(map).toString("base64"); - output = `${code} + try { + const { source } = await nextLoad(url, { + ...context, + format: "module" + }); + const { code, map } = transformSync(source.toString(), { + mode: "transform", + sourceMap: true, + filename: url + }); + let output = code; + if (map) { + const base64SourceMap = Buffer.from(map).toString("base64"); + output = `${code} //# sourceMappingURL=data:application/json;base64,${base64SourceMap}`; - } - return { - format: format.replace("-typescript", ""), - source: `${output} + } + return { + format: format.replace("-typescript", ""), + source: `${output} //# sourceURL=${url}` - }; + }; + } catch (error) { + if (isSwcError(error)) { + wrapAndReThrowSwcError(error); + } + throw error; + } } return nextLoad(url, context); } diff --git a/deps/amaro/package.json b/deps/amaro/package.json index 4d18ffd8ea1a06..0f770288ed6e52 100644 --- a/deps/amaro/package.json +++ b/deps/amaro/package.json @@ -1,6 +1,6 @@ { "name": "amaro", - "version": "0.2.0", + "version": "0.3.0", "description": "Node.js TypeScript wrapper", "license": "MIT", "type": "commonjs", @@ -22,6 +22,7 @@ "prepack": "npm run build", "postpack": "npm run clean", "build": "node esbuild.config.mjs", + "build:wasm": "node tools/build-wasm.js", "typecheck": "tsc --noEmit", "test": "node --test --experimental-test-snapshots \"**/*.test.js\"", "test:regenerate": "node --test --experimental-test-snapshots --test-update-snapshots \"**/*.test.js\"" @@ -40,7 +41,10 @@ "./strip": "./dist/register-strip.mjs", "./transform": "./dist/register-transform.mjs" }, - "files": ["dist", "LICENSE.md"], + "files": [ + "dist", + "LICENSE.md" + ], "engines": { "node": ">=22" } diff --git a/deps/corepack/CHANGELOG.md b/deps/corepack/CHANGELOG.md index 941d0b6b7e5e25..88363683a9d5f6 100644 --- a/deps/corepack/CHANGELOG.md +++ b/deps/corepack/CHANGELOG.md @@ -1,5 +1,27 @@ # Changelog +## [0.31.0](https://github.com/nodejs/corepack/compare/v0.30.0...v0.31.0) (2025-01-27) + + +### ⚠ BREAKING CHANGES + +* drop support for Node.js 21.x ([#594](https://github.com/nodejs/corepack/issues/594)) + +### Features + +* update package manager versions ([#595](https://github.com/nodejs/corepack/issues/595)) ([c7a9bde](https://github.com/nodejs/corepack/commit/c7a9bde16dcbbb7e6ef03fef740656cde7ade360)) + + +### Bug Fixes + +* only print message for `UsageError`s ([#602](https://github.com/nodejs/corepack/issues/602)) ([72a588c](https://github.com/nodejs/corepack/commit/72a588c2370c17e415b24fe389efdafb3c84e90b)) +* update npm registry keys ([#614](https://github.com/nodejs/corepack/issues/614)) ([8c90caa](https://github.com/nodejs/corepack/commit/8c90caab7f1c5c9b89f1de113bc1dfc441bf25d2)) + + +### Miscellaneous Chores + +* drop support for Node.js 21.x ([#594](https://github.com/nodejs/corepack/issues/594)) ([8bebc0c](https://github.com/nodejs/corepack/commit/8bebc0c0a5cbcdeec41673dcbaf581e6e1c1be11)) + ## [0.30.0](https://github.com/nodejs/corepack/compare/v0.29.4...v0.30.0) (2024-11-23) diff --git a/deps/corepack/README.md b/deps/corepack/README.md index d94614affc5353..66bfbc3fb6aae3 100644 --- a/deps/corepack/README.md +++ b/deps/corepack/README.md @@ -302,6 +302,8 @@ same major line. Should you need to upgrade to a new major, use an explicit ## Troubleshooting +The environment variable `DEBUG` can be set to `corepack` to enable additional debug logging. + ### Networking There are a wide variety of networking issues that can occur while running diff --git a/deps/corepack/dist/lib/corepack.cjs b/deps/corepack/dist/lib/corepack.cjs index e1919339dc38bd..7a92f3334f7687 100644 --- a/deps/corepack/dist/lib/corepack.cjs +++ b/deps/corepack/dist/lib/corepack.cjs @@ -21260,7 +21260,7 @@ function String2(descriptor, ...args) { } // package.json -var version = "0.30.0"; +var version = "0.31.0"; // sources/Engine.ts var import_fs9 = __toESM(require("fs")); @@ -21274,7 +21274,7 @@ var import_valid3 = __toESM(require_valid2()); var config_default = { definitions: { npm: { - default: "10.9.1+sha1.ab141c1229765c11c8c59060fc9cf450a2207bd6", + default: "11.0.0+sha1.7bba7c80740ef1f5b2c5d4cecc55e94912faa5e6", fetchLatestFrom: { type: "npm", package: "npm" @@ -21311,7 +21311,7 @@ var config_default = { } }, pnpm: { - default: "9.14.2+sha1.5202b50ab92394b3c922d2e293f196e2df6d441b", + default: "9.15.4+sha1.ffa0b5c573381e8035b354028ccff97c8e452047", fetchLatestFrom: { type: "npm", package: "pnpm" @@ -21375,7 +21375,7 @@ var config_default = { package: "yarn" }, transparent: { - default: "4.5.2+sha224.c2e2e9ed3cdadd6ec250589b3393f71ae56d5ec297af11cec1eba3b4", + default: "4.6.0+sha224.acd0786f07ffc6c933940eb65fc1d627131ddf5455bddcc295dc90fd", commands: [ [ "yarn", @@ -21438,11 +21438,18 @@ var config_default = { keys: { npm: [ { - expires: null, + expires: "2025-01-29T00:00:00.000Z", keyid: "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA", keytype: "ecdsa-sha2-nistp256", scheme: "ecdsa-sha2-nistp256", key: "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1Olb3zMAFFxXKHiIkQO5cJ3Yhl5i6UPp+IhuteBJbuHcA5UogKo0EWtlWwW6KSaKoTNEYL7JlCQiVnkhBktUgg==" + }, + { + expires: null, + keyid: "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U", + keytype: "ecdsa-sha2-nistp256", + scheme: "ecdsa-sha2-nistp256", + key: "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEY6Ya7W++7aUPzvMTrezH6Ycx3c+HOKYCcNGybJZSCJq/fd7Qa8uuAKtdIkUQtQiEKERhAmE5lMMJhP8OkDOa2g==" } ] } @@ -23099,10 +23106,18 @@ async function runMain(argv) { process.exitCode ??= code2; } } else { - await engine.executePackageManagerRequest(request, { - cwd: process.cwd(), - args: restArgs - }); + try { + await engine.executePackageManagerRequest(request, { + cwd: process.cwd(), + args: restArgs + }); + } catch (error) { + if (error?.name === `UsageError`) { + console.error(error.message); + process.exit(1); + } + throw error; + } } } // Annotate the CommonJS export names for ESM import in node: diff --git a/deps/corepack/package.json b/deps/corepack/package.json index c9c6662e99e6c9..91b95f31d77b54 100644 --- a/deps/corepack/package.json +++ b/deps/corepack/package.json @@ -1,6 +1,6 @@ { "name": "corepack", - "version": "0.30.0", + "version": "0.31.0", "homepage": "https://github.com/nodejs/corepack#readme", "bugs": { "url": "https://github.com/nodejs/corepack/issues" @@ -10,7 +10,7 @@ "url": "https://github.com/nodejs/corepack.git" }, "engines": { - "node": "^18.17.1 || >=20.10.0" + "node": "^18.17.1 || ^20.10.0 || >=22.11.0" }, "exports": { "./package.json": "./package.json" @@ -26,7 +26,7 @@ "@yarnpkg/eslint-config": "^2.0.0", "@yarnpkg/fslib": "^3.0.0-rc.48", "@zkochan/cmd-shim": "^6.0.0", - "better-sqlite3": "^10.0.0", + "better-sqlite3": "^11.7.2", "clipanion": "patch:clipanion@npm%3A3.2.1#~/.yarn/patches/clipanion-npm-3.2.1-fc9187f56c.patch", "debug": "^4.1.1", "esbuild": "^0.21.0", diff --git a/deps/googletest/include/gtest/gtest-matchers.h b/deps/googletest/include/gtest/gtest-matchers.h index eae210e99ddae4..78160f0e418da6 100644 --- a/deps/googletest/include/gtest/gtest-matchers.h +++ b/deps/googletest/include/gtest/gtest-matchers.h @@ -67,10 +67,10 @@ namespace testing { // To implement a matcher Foo for type T, define: // 1. a class FooMatcherMatcher that implements the matcher interface: // using is_gtest_matcher = void; -// bool MatchAndExplain(const T&, std::ostream*); +// bool MatchAndExplain(const T&, std::ostream*) const; // (MatchResultListener* can also be used instead of std::ostream*) -// void DescribeTo(std::ostream*); -// void DescribeNegationTo(std::ostream*); +// void DescribeTo(std::ostream*) const; +// void DescribeNegationTo(std::ostream*) const; // // 2. a factory function that creates a Matcher<T> object from a // FooMatcherMatcher. diff --git a/deps/googletest/include/gtest/gtest-printers.h b/deps/googletest/include/gtest/gtest-printers.h index b2822bcde23cc7..198a7693493a33 100644 --- a/deps/googletest/include/gtest/gtest-printers.h +++ b/deps/googletest/include/gtest/gtest-printers.h @@ -126,6 +126,10 @@ #include <span> // NOLINT #endif // GTEST_INTERNAL_HAS_STD_SPAN +#if GTEST_INTERNAL_HAS_COMPARE_LIB +#include <compare> // NOLINT +#endif // GTEST_INTERNAL_HAS_COMPARE_LIB + namespace testing { // Definitions in the internal* namespaces are subject to change without notice. @@ -782,6 +786,41 @@ void PrintTo(const std::shared_ptr<T>& ptr, std::ostream* os) { (PrintSmartPointer<T>)(ptr, os, 0); } +#if GTEST_INTERNAL_HAS_COMPARE_LIB +template <typename T> +void PrintOrderingHelper(T ordering, std::ostream* os) { + if (ordering == T::less) { + *os << "(less)"; + } else if (ordering == T::greater) { + *os << "(greater)"; + } else if (ordering == T::equivalent) { + *os << "(equivalent)"; + } else { + *os << "(unknown ordering)"; + } +} + +inline void PrintTo(std::strong_ordering ordering, std::ostream* os) { + if (ordering == std::strong_ordering::equal) { + *os << "(equal)"; + } else { + PrintOrderingHelper(ordering, os); + } +} + +inline void PrintTo(std::partial_ordering ordering, std::ostream* os) { + if (ordering == std::partial_ordering::unordered) { + *os << "(unordered)"; + } else { + PrintOrderingHelper(ordering, os); + } +} + +inline void PrintTo(std::weak_ordering ordering, std::ostream* os) { + PrintOrderingHelper(ordering, os); +} +#endif + // Helper function for printing a tuple. T must be instantiated with // a tuple type. template <typename T> diff --git a/deps/googletest/include/gtest/internal/gtest-port.h b/deps/googletest/include/gtest/internal/gtest-port.h index 8d27c2c4f72f94..ca18513e77f7a0 100644 --- a/deps/googletest/include/gtest/internal/gtest-port.h +++ b/deps/googletest/include/gtest/internal/gtest-port.h @@ -2533,4 +2533,12 @@ using Variant = ::std::variant<T...>; #define GTEST_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL 1 #endif +#if (defined(__cpp_lib_three_way_comparison) || \ + (GTEST_INTERNAL_HAS_INCLUDE(<compare>) && \ + GTEST_INTERNAL_CPLUSPLUS_LANG >= 201907L)) +#define GTEST_INTERNAL_HAS_COMPARE_LIB 1 +#else +#define GTEST_INTERNAL_HAS_COMPARE_LIB 0 +#endif + #endif // GOOGLETEST_INCLUDE_GTEST_INTERNAL_GTEST_PORT_H_ diff --git a/deps/googletest/src/gtest.cc b/deps/googletest/src/gtest.cc index c08ab4197c5500..3c1cac6ebe69fd 100644 --- a/deps/googletest/src/gtest.cc +++ b/deps/googletest/src/gtest.cc @@ -3989,6 +3989,12 @@ class XmlUnitTestResultPrinter : public EmptyTestEventListener { static void OutputXmlTestSuiteForTestResult(::std::ostream* stream, const TestResult& result); + // Streams a test case XML stanza containing the given test result. + // + // Requires: result.Failed() + static void OutputXmlTestCaseForTestResult(::std::ostream* stream, + const TestResult& result); + // Streams an XML representation of a TestResult object. static void OutputXmlTestResult(::std::ostream* stream, const TestResult& result); @@ -4236,6 +4242,15 @@ void XmlUnitTestResultPrinter::OutputXmlTestSuiteForTestResult( FormatEpochTimeInMillisAsIso8601(result.start_timestamp())); *stream << ">"; + OutputXmlTestCaseForTestResult(stream, result); + + // Complete the test suite. + *stream << " </testsuite>\n"; +} + +// Streams a test case XML stanza containing the given test result. +void XmlUnitTestResultPrinter::OutputXmlTestCaseForTestResult( + ::std::ostream* stream, const TestResult& result) { // Output the boilerplate for a minimal test case with a single test. *stream << " <testcase"; OutputXmlAttribute(stream, "testcase", "name", ""); @@ -4250,9 +4265,6 @@ void XmlUnitTestResultPrinter::OutputXmlTestSuiteForTestResult( // Output the actual test result. OutputXmlTestResult(stream, result); - - // Complete the test suite. - *stream << " </testsuite>\n"; } // Prints an XML representation of a TestInfo object. @@ -4379,6 +4391,10 @@ void XmlUnitTestResultPrinter::PrintXmlTestSuite(std::ostream* stream, if (test_suite.GetTestInfo(i)->is_reportable()) OutputXmlTestInfo(stream, test_suite.name(), *test_suite.GetTestInfo(i)); } + if (test_suite.ad_hoc_test_result().Failed()) { + OutputXmlTestCaseForTestResult(stream, test_suite.ad_hoc_test_result()); + } + *stream << " </" << kTestsuite << ">\n"; } @@ -4518,6 +4534,12 @@ class JsonUnitTestResultPrinter : public EmptyTestEventListener { static void OutputJsonTestSuiteForTestResult(::std::ostream* stream, const TestResult& result); + // Streams a test case JSON stanza containing the given test result. + // + // Requires: result.Failed() + static void OutputJsonTestCaseForTestResult(::std::ostream* stream, + const TestResult& result); + // Streams a JSON representation of a TestResult object. static void OutputJsonTestResult(::std::ostream* stream, const TestResult& result); @@ -4688,6 +4710,15 @@ void JsonUnitTestResultPrinter::OutputJsonTestSuiteForTestResult( } *stream << Indent(6) << "\"testsuite\": [\n"; + OutputJsonTestCaseForTestResult(stream, result); + + // Finish the test suite. + *stream << "\n" << Indent(6) << "]\n" << Indent(4) << "}"; +} + +// Streams a test case JSON stanza containing the given test result. +void JsonUnitTestResultPrinter::OutputJsonTestCaseForTestResult( + ::std::ostream* stream, const TestResult& result) { // Output the boilerplate for a new test case. *stream << Indent(8) << "{\n"; OutputJsonKey(stream, "testcase", "name", "", Indent(10)); @@ -4704,9 +4735,6 @@ void JsonUnitTestResultPrinter::OutputJsonTestSuiteForTestResult( // Output the actual test result. OutputJsonTestResult(stream, result); - - // Finish the test suite. - *stream << "\n" << Indent(6) << "]\n" << Indent(4) << "}"; } // Prints a JSON representation of a TestInfo object. @@ -4851,6 +4879,16 @@ void JsonUnitTestResultPrinter::PrintJsonTestSuite( OutputJsonTestInfo(stream, test_suite.name(), *test_suite.GetTestInfo(i)); } } + + // If there was a failure in the test suite setup or teardown include that in + // the output. + if (test_suite.ad_hoc_test_result().Failed()) { + if (comma) { + *stream << ",\n"; + } + OutputJsonTestCaseForTestResult(stream, test_suite.ad_hoc_test_result()); + } + *stream << "\n" << kIndent << "]\n" << Indent(4) << "}"; } diff --git a/tools/inspector_protocol/BUILD.gn b/deps/inspector_protocol/BUILD.gn similarity index 100% rename from tools/inspector_protocol/BUILD.gn rename to deps/inspector_protocol/BUILD.gn diff --git a/tools/inspector_protocol/LICENSE b/deps/inspector_protocol/LICENSE similarity index 100% rename from tools/inspector_protocol/LICENSE rename to deps/inspector_protocol/LICENSE diff --git a/deps/inspector_protocol/README.md b/deps/inspector_protocol/README.md new file mode 100644 index 00000000000000..d15f719fdda32c --- /dev/null +++ b/deps/inspector_protocol/README.md @@ -0,0 +1,18 @@ +# Chromium inspector (devtools) protocol + +This package contains code generators and templates for the Chromium +inspector protocol. + +The canonical location of this package is at +https://chromium.googlesource.com/deps/inspector_protocol/ + +In the Chromium tree, it's rolled into +https://cs.chromium.org/chromium/src/third_party/inspector_protocol/ + +In the V8 tree, it's rolled into +https://cs.chromium.org/chromium/src/v8/third_party/inspector_protocol/ + +See also [Contributing to Chrome Devtools Protocol](https://docs.google.com/document/d/1c-COD2kaK__5iMM5SEx-PzNA7HFmgttcYfOHHX0HaOM/edit). + +To build and run the tests of the crdtp library, see +[CRDTP - Chrome DevTools Protocol](crdtp/README.md). diff --git a/tools/inspector_protocol/README.node b/deps/inspector_protocol/README.node similarity index 88% rename from tools/inspector_protocol/README.node rename to deps/inspector_protocol/README.node index a8380198576d46..5d5b486b512297 100644 --- a/tools/inspector_protocol/README.node +++ b/deps/inspector_protocol/README.node @@ -2,7 +2,7 @@ Name: inspector protocol Short Name: inspector_protocol URL: https://chromium.googlesource.com/deps/inspector_protocol/ Version: 0 -Revision: 0aafd2876f7485db7b07c513c0457b7cbbbe3304 +Revision: 64cc2301620c04f0fe0313ae94a9319f003603cf License: BSD License File: LICENSE Security Critical: no diff --git a/tools/inspector_protocol/check_protocol_compatibility.py b/deps/inspector_protocol/check_protocol_compatibility.py similarity index 92% rename from tools/inspector_protocol/check_protocol_compatibility.py rename to deps/inspector_protocol/check_protocol_compatibility.py index d2df244fa97154..ca72da24e99828 100755 --- a/tools/inspector_protocol/check_protocol_compatibility.py +++ b/deps/inspector_protocol/check_protocol_compatibility.py @@ -1,31 +1,7 @@ -#!/usr/bin/env python -# 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. +#!/usr/bin/env python3 +# 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. # # Inspector protocol validator. # diff --git a/deps/inspector_protocol/code_generator.py b/deps/inspector_protocol/code_generator.py new file mode 100755 index 00000000000000..53beb861259af5 --- /dev/null +++ b/deps/inspector_protocol/code_generator.py @@ -0,0 +1,733 @@ +#!/usr/bin/env python3 +# 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. + +import os +import os.path +import sys +import argparse +import collections +import functools +import re +import copy +try: + import json +except ImportError: + import simplejson as json + +import pdl + +try: + unicode +except NameError: + # Define unicode for Py3 + def unicode(s, *_): + return s + +# Path handling for libraries and templates +# Paths have to be normalized because Jinja uses the exact template path to +# determine the hash used in the cache filename, and we need a pre-caching step +# to be concurrency-safe. Use absolute path because __file__ is absolute if +# module is imported, and relative if executed directly. +# If paths differ between pre-caching and individual file compilation, the cache +# is regenerated, which causes a race condition and breaks concurrent build, +# since some compile processes will try to read the partially written cache. +module_path, module_filename = os.path.split(os.path.realpath(__file__)) + +def read_config(): + # pylint: disable=W0703 + def json_to_object(data, output_base, config_base): + def json_object_hook(object_dict): + items = [(k, os.path.join(config_base, v) if k == "path" else v) + for (k, v) in object_dict.items()] + items = [(k, os.path.join(output_base, v) if k == "output" else v) + for (k, v) in items] + keys, values = list(zip(*items)) + # 'async' is a keyword since Python 3.7. + # Avoid namedtuple(rename=True) for compatibility with Python 2.X. + keys = tuple('async_' if k == 'async' else k for k in keys) + return collections.namedtuple('X', keys)(*values) + return json.loads(data, object_hook=json_object_hook) + + def init_defaults(config_tuple, path, defaults): + keys = list(config_tuple._fields) # pylint: disable=E1101 + values = [getattr(config_tuple, k) for k in keys] + for i in range(len(keys)): + if hasattr(values[i], "_fields"): + values[i] = init_defaults(values[i], path + "." + keys[i], defaults) + for optional in defaults: + if optional.find(path + ".") != 0: + continue + optional_key = optional[len(path) + 1:] + if optional_key.find(".") == -1 and optional_key not in keys: + keys.append(optional_key) + values.append(defaults[optional]) + return collections.namedtuple('X', keys)(*values) + + try: + cmdline_parser = argparse.ArgumentParser() + cmdline_parser.add_argument("--output_base", type=unicode, required=True) + cmdline_parser.add_argument("--jinja_dir", type=unicode, required=True) + cmdline_parser.add_argument("--config", type=unicode, required=True) + cmdline_parser.add_argument("--config_value", default=[], action="append") + cmdline_parser.add_argument( + "--inspector_protocol_dir", type=unicode, required=True, + help=("directory with code_generator.py and C++ encoding / binding " + "libraries, relative to the root of the source tree.")) + arg_options = cmdline_parser.parse_args() + jinja_dir = arg_options.jinja_dir + output_base = arg_options.output_base + config_file = arg_options.config + config_base = os.path.dirname(config_file) + config_values = arg_options.config_value + inspector_protocol_dir = arg_options.inspector_protocol_dir.lstrip('/') + except Exception: + # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html + exc = sys.exc_info()[1] + sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc) + exit(1) + + try: + config_json_file = open(config_file, "r") + config_json_string = config_json_file.read() + config_partial = json_to_object(config_json_string, output_base, + config_base) + config_json_file.close() + defaults = { + ".use_snake_file_names": False, + ".use_title_case_methods": False, + ".use_embedder_types": False, + ".imported": False, + ".imported.export_macro": "", + ".imported.export_header": False, + ".imported.header": False, + ".imported.package": False, + ".imported.options": False, + ".protocol.export_macro": "", + ".protocol.export_header": False, + ".protocol.options": False, + ".protocol.file_name_prefix": "", + ".exported": False, + ".exported.export_macro": "", + ".exported.export_header": False, + ".lib": False, + ".lib.export_macro": "", + ".lib.export_header": False, + ".crdtp": False, + ".crdtp.dir": os.path.join(inspector_protocol_dir, "crdtp"), + ".crdtp.namespace": "crdtp", + } + for key_value in config_values: + parts = key_value.split("=") + if len(parts) == 2: + defaults["." + parts[0]] = parts[1] + return (jinja_dir, config_file, init_defaults(config_partial, "", defaults)) + except Exception: + # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html + exc = sys.exc_info()[1] + sys.stderr.write("Failed to parse config file: %s\n\n" % exc) + exit(1) + + +# ---- Begin of utilities exposed to generator ---- + + +def to_title_case(name): + return name[:1].upper() + name[1:] + + +def dash_to_camelcase(word): + prefix = "" + if word[0] == "-": + prefix = "Negative" + word = word[1:] + return prefix + "".join(to_title_case(x) or "-" for x in word.split("-")) + + +def to_snake_case(name): + name = re.sub(r"([A-Z]{2,})([A-Z][a-z])", r"\1_\2", name) + return re.sub(r"([a-z0-9])([A-Z])", r"\1_\2", name, sys.maxsize).lower() + + +def to_method_case(config, name): + if config.use_title_case_methods: + return to_title_case(name) + return name + + +def join_arrays(dict, keys): + result = [] + for key in keys: + if key in dict: + result += dict[key] + return result + + +def format_include(config, header, file_name=None): + if file_name is not None: + header = header + "/" + file_name + ".h" + header = "\"" + header + "\"" if header[0] not in "<\"" else header + if config.use_snake_file_names: + header = to_snake_case(header) + return header + + +def format_domain_include(config, header, file_name): + return format_include(config, header, + config.protocol.file_name_prefix + file_name) + + +def to_file_name(config, file_name): + if config.use_snake_file_names: + return to_snake_case(file_name).replace(".cpp", ".cc") + return file_name + + +# ---- End of utilities exposed to generator ---- + + +def initialize_jinja_env(jinja_dir, cache_dir, config): + # pylint: disable=F0401 + sys.path.insert(1, os.path.abspath(jinja_dir)) + import jinja2 + + jinja_env = jinja2.Environment( + loader=jinja2.FileSystemLoader(module_path), + # Bytecode cache is not concurrency-safe unless pre-cached: + # if pre-cached this is read-only, but writing creates a race condition. + bytecode_cache=jinja2.FileSystemBytecodeCache(cache_dir), + keep_trailing_newline=True, # newline-terminate generated files + lstrip_blocks=True, # so can indent control flow tags + trim_blocks=True) + jinja_env.filters.update({ + "to_title_case": to_title_case, + "dash_to_camelcase": dash_to_camelcase, + "to_method_case": functools.partial(to_method_case, config)}) + jinja_env.add_extension("jinja2.ext.loopcontrols") + return jinja_env + + +def create_imported_type_definition(domain_name, type, imported_namespace): + # pylint: disable=W0622 + return { + "return_type": "std::unique_ptr<%s::%s::API::%s>" % ( + imported_namespace, domain_name, type["id"]), + "pass_type": "std::unique_ptr<%s::%s::API::%s>" % ( + imported_namespace, domain_name, type["id"]), + "to_raw_type": "%s.get()", + "to_pass_type": "std::move(%s)", + "to_rvalue": "std::move(%s)", + "type": "std::unique_ptr<%s::%s::API::%s>" % ( + imported_namespace, domain_name, type["id"]), + "raw_type": "%s::%s::API::%s" % ( + imported_namespace, domain_name, type["id"]), + "raw_pass_type": "%s::%s::API::%s*" % ( + imported_namespace, domain_name, type["id"]), + "raw_return_type": "%s::%s::API::%s*" % ( + imported_namespace, domain_name, type["id"]), + } + + +def create_user_type_definition(domain_name, type): + # pylint: disable=W0622 + return { + "return_type": "std::unique_ptr<protocol::%s::%s>" % ( + domain_name, type["id"]), + "pass_type": "std::unique_ptr<protocol::%s::%s>" % ( + domain_name, type["id"]), + "to_raw_type": "%s.get()", + "to_pass_type": "std::move(%s)", + "to_rvalue": "std::move(%s)", + "type": "std::unique_ptr<protocol::%s::%s>" % (domain_name, type["id"]), + "raw_type": "protocol::%s::%s" % (domain_name, type["id"]), + "raw_pass_type": "protocol::%s::%s*" % (domain_name, type["id"]), + "raw_return_type": "protocol::%s::%s*" % (domain_name, type["id"]), + } + + +def create_object_type_definition(): + # pylint: disable=W0622 + return { + "return_type": "std::unique_ptr<protocol::DictionaryValue>", + "pass_type": "std::unique_ptr<protocol::DictionaryValue>", + "to_raw_type": "%s.get()", + "to_pass_type": "std::move(%s)", + "to_rvalue": "std::move(%s)", + "type": "std::unique_ptr<protocol::DictionaryValue>", + "raw_type": "protocol::DictionaryValue", + "raw_pass_type": "protocol::DictionaryValue*", + "raw_return_type": "protocol::DictionaryValue*", + } + + +def create_any_type_definition(): + # pylint: disable=W0622 + return { + "return_type": "std::unique_ptr<protocol::Value>", + "pass_type": "std::unique_ptr<protocol::Value>", + "to_raw_type": "%s.get()", + "to_pass_type": "std::move(%s)", + "to_rvalue": "std::move(%s)", + "type": "std::unique_ptr<protocol::Value>", + "raw_type": "protocol::Value", + "raw_pass_type": "protocol::Value*", + "raw_return_type": "protocol::Value*", + } + + +def create_string_type_definition(): + # pylint: disable=W0622 + return { + "return_type": "String", + "pass_type": "const String&", + "to_pass_type": "%s", + "to_raw_type": "%s", + "to_rvalue": "%s", + "type": "String", + "raw_type": "String", + "raw_pass_type": "const String&", + "raw_return_type": "String", + "is_primitive": True + } + + +def create_binary_type_definition(): + # pylint: disable=W0622 + return { + "return_type": "Binary", + "pass_type": "const Binary&", + "to_pass_type": "%s", + "to_raw_type": "%s", + "to_rvalue": "%s", + "type": "Binary", + "raw_type": "Binary", + "raw_pass_type": "const Binary&", + "raw_return_type": "Binary", + "is_primitive": True + } + + +def create_primitive_type_definition(type): + # pylint: disable=W0622 + typedefs = { + "number": "double", + "integer": "int", + "boolean": "bool" + } + defaults = { + "number": "0", + "integer": "0", + "boolean": "false" + } + jsontypes = { + "number": "TypeDouble", + "integer": "TypeInteger", + "boolean": "TypeBoolean", + } + return { + "return_type": typedefs[type], + "pass_type": typedefs[type], + "to_pass_type": "%s", + "to_raw_type": "%s", + "to_rvalue": "%s", + "type": typedefs[type], + "raw_type": typedefs[type], + "raw_pass_type": typedefs[type], + "raw_return_type": typedefs[type], + "default_value": defaults[type], + "is_primitive": True + } + +def wrap_array_definition(type): + # pylint: disable=W0622 + return { + "return_type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], + "pass_type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], + "to_raw_type": "%s.get()", + "to_pass_type": "std::move(%s)", + "to_rvalue": "std::move(%s)", + "type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], + "raw_type": "protocol::Array<%s>" % type["raw_type"], + "raw_pass_type": "protocol::Array<%s>*" % type["raw_type"], + "raw_return_type": "protocol::Array<%s>*" % type["raw_type"], + "out_type": "protocol::Array<%s>&" % type["raw_type"], + } + + +class Protocol(object): + + def __init__(self, config): + self.config = config + self.json_api = {"domains": []} + self.imported_domains = [] + self.exported_domains = [] + self.generate_domains = self.read_protocol_file(config.protocol.path) + + if config.protocol.options: + self.generate_domains = [rule.domain for rule in config.protocol.options] + self.exported_domains = [rule.domain for rule in config.protocol.options + if hasattr(rule, "exported")] + + if config.imported: + self.imported_domains = self.read_protocol_file(config.imported.path) + if config.imported.options: + self.imported_domains = [rule.domain + for rule in config.imported.options] + + self.patch_full_qualified_refs() + self.create_type_definitions() + self.generate_used_types() + + def read_protocol_file(self, file_name): + input_file = open(file_name, "r") + parsed_json = pdl.loads(input_file.read(), file_name) + input_file.close() + version = '%s.%s' % (parsed_json["version"]["major"], + parsed_json["version"]["minor"]) + domains = [] + for domain in parsed_json["domains"]: + domains.append(domain["domain"]) + domain["version"] = version + self.json_api["domains"] += parsed_json["domains"] + return domains + + def patch_full_qualified_refs(self): + def patch_full_qualified_refs_in_domain(json, domain_name): + if isinstance(json, list): + for item in json: + patch_full_qualified_refs_in_domain(item, domain_name) + if not isinstance(json, dict): + return + for key in json: + if key == "type" and json[key] == "string": + json[key] = domain_name + ".string" + if key != "$ref": + patch_full_qualified_refs_in_domain(json[key], domain_name) + continue + if json["$ref"].find(".") == -1: + json["$ref"] = domain_name + "." + json["$ref"] + return + + for domain in self.json_api["domains"]: + patch_full_qualified_refs_in_domain(domain, domain["domain"]) + + def all_references(self, json): + refs = set() + if isinstance(json, list): + for item in json: + refs |= self.all_references(item) + if not isinstance(json, dict): + return refs + for key in json: + if key != "$ref": + refs |= self.all_references(json[key]) + else: + refs.add(json["$ref"]) + return refs + + def check_if_dependency_declared(self, domain, refs): + dependencies = domain.get('dependencies', set()) + for ref in refs: + type_definition = self.type_definitions[ref] + if type_definition.get('is_primitive', False): + continue + domain_match = re.match(r'^(.*)[.]', ref) + if domain_match: + referenced_domain_name = domain_match.group(1) + if referenced_domain_name != domain['domain'] and not referenced_domain_name in dependencies: + sys.stderr.write(("Domains [%s] uses type [%s] from domain [%s], but did not declare the dependency\n\n" + ) % (domain["domain"], ref, referenced_domain_name)) + exit(1) + + def generate_used_types(self): + all_refs = set() + for domain in self.json_api["domains"]: + domain_name = domain["domain"] + if "commands" in domain: + for command in domain["commands"]: + if self.generate_command(domain_name, command["name"]): + all_refs_command = self.all_references(command) + # If the command has a redirect, it is as if it didn't exist on this domain. + if not command.get('redirect', False): + self.check_if_dependency_declared(domain, all_refs_command) + all_refs |= all_refs_command + + if "events" in domain: + for event in domain["events"]: + if self.generate_event(domain_name, event["name"]): + all_refs_event = self.all_references(event) + self.check_if_dependency_declared(domain, all_refs_event) + all_refs |= all_refs_event + + + dependencies = self.generate_type_dependencies() + queue = set(all_refs) + while len(queue): + ref = queue.pop() + if ref in dependencies: + queue |= dependencies[ref] - all_refs + all_refs |= dependencies[ref] + self.used_types = all_refs + + def generate_type_dependencies(self): + dependencies = dict() + domains_with_types = (x for x in self.json_api["domains"] if "types" in x) + for domain in domains_with_types: + domain_name = domain["domain"] + for type in domain["types"]: + related_types = self.all_references(type) + if len(related_types): + dependencies[domain_name + "." + type["id"]] = related_types + return dependencies + + def create_type_definitions(self): + imported_namespace = "" + if self.config.imported: + imported_namespace = "::".join(self.config.imported.namespace) + self.type_definitions = {} + self.type_definitions["number"] = create_primitive_type_definition("number") + self.type_definitions["integer"] = create_primitive_type_definition("integer") + self.type_definitions["boolean"] = create_primitive_type_definition("boolean") + self.type_definitions["object"] = create_object_type_definition() + self.type_definitions["any"] = create_any_type_definition() + self.type_definitions["binary"] = create_binary_type_definition() + for domain in self.json_api["domains"]: + self.type_definitions[domain["domain"] + ".string"] = ( + create_string_type_definition()) + self.type_definitions[domain["domain"] + ".binary"] = ( + create_binary_type_definition()) + if not ("types" in domain): + continue + for type in domain["types"]: + type_name = domain["domain"] + "." + type["id"] + if type["type"] == "object" and domain["domain"] in self.imported_domains: + self.type_definitions[type_name] = create_imported_type_definition( + domain["domain"], type, imported_namespace) + elif type["type"] == "object": + self.type_definitions[type_name] = create_user_type_definition( + domain["domain"], type) + elif type["type"] == "array": + self.type_definitions[type_name] = self.resolve_type(type) + elif type["type"] == domain["domain"] + ".string": + self.type_definitions[type_name] = create_string_type_definition() + elif type["type"] == domain["domain"] + ".binary": + self.type_definitions[type_name] = create_binary_type_definition() + else: + self.type_definitions[type_name] = create_primitive_type_definition( + type["type"]) + + def check_options(self, options, domain, name, include_attr, exclude_attr, + default): + for rule in options: + if rule.domain != domain: + continue + if include_attr and hasattr(rule, include_attr): + return name in getattr(rule, include_attr) + if exclude_attr and hasattr(rule, exclude_attr): + return name not in getattr(rule, exclude_attr) + return default + return False + + + # ---- Begin of methods exposed to generator + + def type_definition(self, name): + return self.type_definitions[name] + + def resolve_type(self, prop): + if "$ref" in prop: + return self.type_definitions[prop["$ref"]] + if prop["type"] == "array": + return wrap_array_definition(self.resolve_type(prop["items"])) + return self.type_definitions[prop["type"]] + + def generate_command(self, domain, command): + if not self.config.protocol.options: + return domain in self.generate_domains + return self.check_options(self.config.protocol.options, domain, command, + "include", "exclude", True) + + def generate_event(self, domain, event): + if not self.config.protocol.options: + return domain in self.generate_domains + return self.check_options(self.config.protocol.options, domain, event, + "include_events", "exclude_events", True) + + def generate_type(self, domain, typename): + return domain + "." + typename in self.used_types + + def is_async_command(self, domain, command): + if not self.config.protocol.options: + return False + return self.check_options(self.config.protocol.options, domain, command, + "async_", None, False) + + def is_exported(self, domain, name): + if not self.config.protocol.options: + return False + return self.check_options(self.config.protocol.options, domain, name, + "exported", None, False) + + def is_imported(self, domain, name): + if not self.config.imported: + return False + if not self.config.imported.options: + return domain in self.imported_domains + return self.check_options(self.config.imported.options, domain, name, + "imported", None, False) + + def is_exported_domain(self, domain): + return domain in self.exported_domains + + def generate_disable(self, domain): + if "commands" not in domain: + return True + for command in domain["commands"]: + if command["name"] == "disable" and self.generate_command( + domain["domain"], "disable"): + return False + return True + + def is_imported_dependency(self, domain): + return domain in self.generate_domains or domain in self.imported_domains + + +def main(): + jinja_dir, config_file, config = read_config() + + protocol = Protocol(config) + + if not config.exported and len(protocol.exported_domains): + sys.stderr.write(("Domains [%s] are exported, but config is missing export " + "entry\n\n") % ", ".join(protocol.exported_domains)) + exit(1) + + if not os.path.exists(config.protocol.output): + os.mkdir(config.protocol.output) + if len(protocol.exported_domains) and not os.path.exists( + config.exported.output): + os.mkdir(config.exported.output) + jinja_env = initialize_jinja_env(jinja_dir, config.protocol.output, config) + + inputs = [] + inputs.append(__file__) + inputs.append(config_file) + inputs.append(config.protocol.path) + if config.imported: + inputs.append(config.imported.path) + templates_dir = os.path.join(module_path, "templates") + inputs.append(os.path.join(templates_dir, "TypeBuilder_h.template")) + inputs.append(os.path.join(templates_dir, "TypeBuilder_cpp.template")) + inputs.append(os.path.join(templates_dir, "Exported_h.template")) + inputs.append(os.path.join(templates_dir, "Imported_h.template")) + + h_template = jinja_env.get_template("templates/TypeBuilder_h.template") + cpp_template = jinja_env.get_template("templates/TypeBuilder_cpp.template") + exported_template = jinja_env.get_template("templates/Exported_h.template") + imported_template = jinja_env.get_template("templates/Imported_h.template") + + outputs = dict() + + for domain in protocol.json_api["domains"]: + class_name = domain["domain"] + file_name = config.protocol.file_name_prefix + class_name + template_context = { + "protocol": protocol, + "config": config, + "domain": domain, + "join_arrays": join_arrays, + "format_include": functools.partial(format_include, config), + "format_domain_include": functools.partial(format_domain_include, config), + } + + if domain["domain"] in protocol.generate_domains: + outputs[os.path.join(config.protocol.output, to_file_name( + config, file_name + ".h"))] = h_template.render(template_context) + outputs[os.path.join(config.protocol.output, to_file_name( + config, file_name + ".cpp"))] = cpp_template.render(template_context) + if domain["domain"] in protocol.exported_domains: + outputs[os.path.join(config.exported.output, to_file_name( + config, file_name + ".h"))] = exported_template.render( + template_context) + if domain["domain"] in protocol.imported_domains: + outputs[os.path.join(config.protocol.output, to_file_name( + config, file_name + ".h"))] = imported_template.render( + template_context) + + if config.lib: + template_context = { + "config": config, + "format_include": functools.partial(format_include, config), + } + + lib_templates_dir = os.path.join(module_path, "lib") + # Note these should be sorted in the right order. + + # TODO(dgozman): sort them programmatically based on commented includes. + + forward_h_templates = [ + "Forward_h.template", + ] + + protocol_h_templates = [] + protocol_cpp_templates = [] + + if not config.use_embedder_types: + protocol_h_templates += [ + "Values_h.template", + "Object_h.template", + "ValueConversions_h.template", + ] + protocol_cpp_templates += [ + "Protocol_cpp.template", + "Values_cpp.template", + "Object_cpp.template", + "ValueConversions_cpp.template", + ] + else: + protocol_h_templates += [ + "Forward_h.template", + ] + + def generate_lib_file(file_name, template_files): + parts = [] + for template_file in template_files: + inputs.append(os.path.join(lib_templates_dir, template_file)) + template = jinja_env.get_template("lib/" + template_file) + parts.append(template.render(template_context)) + outputs[file_name] = "\n\n".join(parts) + + generate_lib_file(os.path.join(config.lib.output, to_file_name( + config, "Forward.h")), forward_h_templates) + generate_lib_file(os.path.join(config.lib.output, to_file_name( + config, "Protocol.h")), protocol_h_templates) + + if not config.use_embedder_types: + generate_lib_file(os.path.join(config.lib.output, to_file_name( + config, "Protocol.cpp")), protocol_cpp_templates) + + # Make gyp / make generatos happy, otherwise make rebuilds world. + inputs_ts = max(map(os.path.getmtime, inputs)) + up_to_date = True + for output_file in outputs.keys(): + if (not os.path.exists(output_file) + or os.path.getmtime(output_file) < inputs_ts): + up_to_date = False + break + if up_to_date: + sys.exit() + + for file_name, content in outputs.items(): + # Remove output file first to account for potential case changes. + try: + os.remove(file_name) + except OSError: + pass + out_file = open(file_name, "w") + out_file.write(content) + out_file.close() + + +if __name__ == "__main__": + main() diff --git a/deps/inspector_protocol/concatenate_protocols.py b/deps/inspector_protocol/concatenate_protocols.py new file mode 100755 index 00000000000000..11f1fed06c49f6 --- /dev/null +++ b/deps/inspector_protocol/concatenate_protocols.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +# 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. + +import os.path +import sys + +try: + import json +except ImportError: + import simplejson as json + +import pdl + +def main(argv): + if len(argv) < 1: + sys.stderr.write( + "Usage: %s <protocol-1> [<protocol-2> [, <protocol-3>...]] " + "<output-file>\n" % sys.argv[0]) + return 1 + + domains = [] + version = None + for protocol in argv[:-1]: + file_name = os.path.normpath(protocol) + if not os.path.isfile(file_name): + sys.stderr.write("Cannot find %s\n" % file_name) + return 1 + input_file = open(file_name, "r") + parsed_json = pdl.loads(input_file.read(), file_name) + domains += parsed_json["domains"] + version = parsed_json["version"] + + output_file = open(argv[-1], "w") + json.dump({"version": version, "domains": domains}, output_file, + indent=4, sort_keys=False, separators=(',', ': ')) + output_file.close() + + +if __name__ == '__main__': + sys.exit(main(sys.argv[1:])) diff --git a/tools/inspector_protocol/convert_protocol_to_json.py b/deps/inspector_protocol/convert_protocol_to_json.py similarity index 67% rename from tools/inspector_protocol/convert_protocol_to_json.py rename to deps/inspector_protocol/convert_protocol_to_json.py index 835e6387120bcc..e31dd7f127e151 100755 --- a/tools/inspector_protocol/convert_protocol_to_json.py +++ b/deps/inspector_protocol/convert_protocol_to_json.py @@ -1,5 +1,5 @@ -#!/usr/bin/env python -# Copyright 2017 The Chromium Authors. All rights reserved. +#!/usr/bin/env python3 +# 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. @@ -10,6 +10,13 @@ import pdl +def open_to_write(path): + if sys.version_info >= (3,0): + return open(path, 'w', encoding='utf-8') + else: + return open(path, 'wb') + + def main(argv): parser = argparse.ArgumentParser(description=( "Converts from .pdl to .json by invoking the pdl Python module.")) @@ -21,12 +28,13 @@ def main(argv): parser.add_argument("json_file", help="The .json output file write.") args = parser.parse_args(argv) file_name = os.path.normpath(args.pdl_file) - with open(file_name, "r") as input_file: - pdl_string = input_file.read() + input_file = open(file_name, "r") + pdl_string = input_file.read() protocol = pdl.loads(pdl_string, file_name, args.map_binary_to_string) - - with open(os.path.normpath(args.json_file), 'w') as output_file: - json.dump(protocol, output_file, indent=4, separators=(',', ': ')) + input_file.close() + output_file = open_to_write(os.path.normpath(args.json_file)) + json.dump(protocol, output_file, indent=4, separators=(',', ': ')) + output_file.close() if __name__ == '__main__': diff --git a/deps/inspector_protocol/crdtp/README.md b/deps/inspector_protocol/crdtp/README.md new file mode 100644 index 00000000000000..a9bbc9e8865fd2 --- /dev/null +++ b/deps/inspector_protocol/crdtp/README.md @@ -0,0 +1,114 @@ +# CRDTP - Chrome DevTools Protocol Library. + +[Canonical location for this library.](https://chromium.googlesource.com/deps/inspector_protocol/+/refs/heads/main) + +This is a support library for the Chrome DevTools protocol implementation. + +It's used from within the Jinja templates which we use for code generation +(see ../lib and ../templates) as well as from Chromium (headless, +chrome, content, blink), V8, and other code bases that use the DevTools +protocol. + +The library is designed to be portable. The only allowed dependencies are: + +- The C/C++ standard libraries, up to C++14. + The litmus test is that it compiles and passes tests for all platforms + supported by V8. + +- For testing, we depend on mini_chromium and gtest. This is isolated + into the `crdtp/test_platform.{h,cc}` library. + +We support 32 bit and 64 bit architectures. + +# Common types used in this library. + +- `uint8_t`: a byte, e.g. for raw bytes or UTF8 characters + +- `uint16_t`: two bytes, e.g. for UTF16 characters + +For input parameters: + +- `span<uint8_t>`: pointer to bytes and length + +- `span<uint16_t>`: pointer to UTF16 chars and length + +For output parameters: + +- `std::vector<uint8_t>` - Owned segment of bytes / utf8 characters and length. + +- `std::string` - Same, for compatibility, even though char is signed. + +# Building and running the tests. + +If you're familiar with +[Chromium's development process](https://www.chromium.org/developers/contributing-code) +and have the depot_tools installed, you may use these commands +to fetch the package (and dependencies) and build and run the tests: + + fetch inspector_protocol + cd src + gn gen out/Release + ninja -C out/Release crdtp_test + out/Release/crdtp_test + +You'll probably also need to install g++, since Clang uses this to find the +standard C++ headers. E.g., + + sudo apt-get install g++-8 + +# Purpose of the tests + +crdtp comes with unittest coverage. + +Upstream, in this standalone package, the unittests make development +more pleasant because they are very fast and light (try the previous +section to see). + +Downstream (in Chromium, V8, etc.), they ensure that the library behaves +correctly within each specific code base. We have seen bugs from different +architectures / compilers / etc. in the past. We have also seen +that a tweaked downstream crdtp_platform library did not behave correctly, +becaues V8's strtod routine interprets out of range literals as 'inf'. +Thus, the unittests function as a conformance test suite for such code-base +specific tweaks downstream. + +# Customization by downstream users (Chrome, V8, google3, etc.). + +Downstream users may need to customize the library. We isolate these typical +customizations into two platform libraries (crdtp_plaform and +crdtp_test_platform), to reduce the chance of merge conflicts and grief when +rolling as much as possible. While customized platform libraries may +depend on the downstream code base (e.g. abseil, Chromium's base, V8's utility +functions, Boost, etc.), they are not exposed to the headers that +downstream code depends on. + +## crdtp_platform + +This platform library is only used by the crdtp library; it is not part of the +crdtp API. Thus far it consists only of json_platform.h and json_platform.cc, +because conversion between a `std::string` and a double is tricky, and different +code bases have different preferences in this regard. In this repository +(upstream), json_platform.cc provides a reference implementation which uses the +C++ standard library. + +Downstream, in Chromium, json_platform_chromium.cc has a different +implementation that uses the routines in Chromium's //base, that is, it's a .cc +file that's specific to Chromium. Similarly, in V8, json_platform_v8.cc uses +V8's number conversion utilities, so it's a .cc file that's specific to V8. And +in google3, we use the absl library. crdtp/json_platform.cc is designed to be +easy to modify or replace, and the interface defined by its header is designed +to be stable. + +## crdtp_test_platform + +This platform library is only used by the tests. Upstream, it's setup to +use mini_chromium and gtest. Downstream, Chromium uses its //base libraries, +and V8 uses theirs; and a small amount of tweaking is needed in each code +base - e.g., Chromium, V8, and google3 each place `#include` declarations into +test_platform.h that are specific to their code base, and they have their +own routines in test_platform.cc which uses their own libraries. + +The purpose of crdtp_test_platform is to isolate the tweaking to this small, +stable library (modifying test_platform.h and test_platform.cc). This avoids +having to modify the actual tests (json_test.cc, cbor_test.cc, ...) +when rolling changes downstream. We try to not use patch files. diff --git a/deps/inspector_protocol/crdtp/cbor.cc b/deps/inspector_protocol/crdtp/cbor.cc new file mode 100644 index 00000000000000..801c1708022763 --- /dev/null +++ b/deps/inspector_protocol/crdtp/cbor.cc @@ -0,0 +1,1078 @@ +// 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. + +#include "cbor.h" + +#include <algorithm> +#include <cassert> +#include <cmath> +#include <cstring> +#include <limits> +#include <stack> + +namespace crdtp { +namespace cbor { +namespace { +// Indicates the number of bits the "initial byte" needs to be shifted to the +// right after applying |kMajorTypeMask| to produce the major type in the +// lowermost bits. +static constexpr uint8_t kMajorTypeBitShift = 5u; +// Mask selecting the low-order 5 bits of the "initial byte", which is where +// the additional information is encoded. +static constexpr uint8_t kAdditionalInformationMask = 0x1f; +// Mask selecting the high-order 3 bits of the "initial byte", which indicates +// the major type of the encoded value. +static constexpr uint8_t kMajorTypeMask = 0xe0; +// Indicates the integer is in the following byte. +static constexpr uint8_t kAdditionalInformation1Byte = 24u; +// Indicates the integer is in the next 2 bytes. +static constexpr uint8_t kAdditionalInformation2Bytes = 25u; +// Indicates the integer is in the next 4 bytes. +static constexpr uint8_t kAdditionalInformation4Bytes = 26u; +// Indicates the integer is in the next 8 bytes. +static constexpr uint8_t kAdditionalInformation8Bytes = 27u; + +// Encodes the initial byte, consisting of the |type| in the first 3 bits +// followed by 5 bits of |additional_info|. +constexpr uint8_t EncodeInitialByte(MajorType type, uint8_t additional_info) { + return (static_cast<uint8_t>(type) << kMajorTypeBitShift) | + (additional_info & kAdditionalInformationMask); +} + +// TAG 24 indicates that what follows is a byte string which is +// encoded in CBOR format. We use this as a wrapper for +// maps and arrays, allowing us to skip them, because the +// byte string carries its size (byte length). +// https://tools.ietf.org/html/rfc7049#section-2.4.4.1 +static constexpr uint8_t kInitialByteForEnvelope = + EncodeInitialByte(MajorType::TAG, kAdditionalInformation1Byte); + +// The standalone byte for "envelope" tag, to follow kInitialByteForEnvelope +// in the correct implementation, as it is above in-tag value max (which is +// also, confusingly, 24). See EnvelopeHeader::Parse() for more. +static constexpr uint8_t kCBOREnvelopeTag = 24; + +// The initial byte for a byte string with at most 2^32 bytes +// of payload. This is used for envelope encoding, even if +// the byte string is shorter. +static constexpr uint8_t kInitialByteFor32BitLengthByteString = + EncodeInitialByte(MajorType::BYTE_STRING, 26); + +// See RFC 7049 Section 2.2.1, indefinite length arrays / maps have additional +// info = 31. +static constexpr uint8_t kInitialByteIndefiniteLengthArray = + EncodeInitialByte(MajorType::ARRAY, 31); +static constexpr uint8_t kInitialByteIndefiniteLengthMap = + EncodeInitialByte(MajorType::MAP, 31); +// See RFC 7049 Section 2.3, Table 1; this is used for finishing indefinite +// length maps / arrays. +static constexpr uint8_t kStopByte = + EncodeInitialByte(MajorType::SIMPLE_VALUE, 31); + +// See RFC 7049 Section 2.3, Table 2. +static constexpr uint8_t kEncodedTrue = + EncodeInitialByte(MajorType::SIMPLE_VALUE, 21); +static constexpr uint8_t kEncodedFalse = + EncodeInitialByte(MajorType::SIMPLE_VALUE, 20); +static constexpr uint8_t kEncodedNull = + EncodeInitialByte(MajorType::SIMPLE_VALUE, 22); +static constexpr uint8_t kInitialByteForDouble = + EncodeInitialByte(MajorType::SIMPLE_VALUE, 27); + +// See RFC 7049 Table 3 and Section 2.4.4.2. This is used as a prefix for +// arbitrary binary data encoded as BYTE_STRING. +static constexpr uint8_t kExpectedConversionToBase64Tag = + EncodeInitialByte(MajorType::TAG, 22); + +// Writes the bytes for |v| to |out|, starting with the most significant byte. +// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html +template <typename T> +void WriteBytesMostSignificantByteFirst(T v, std::vector<uint8_t>* out) { + for (int shift_bytes = sizeof(T) - 1; shift_bytes >= 0; --shift_bytes) + out->push_back(0xff & (v >> (shift_bytes * 8))); +} + +// Extracts sizeof(T) bytes from |in| to extract a value of type T +// (e.g. uint64_t, uint32_t, ...), most significant byte first. +// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html +template <typename T> +T ReadBytesMostSignificantByteFirst(span<uint8_t> in) { + assert(in.size() >= sizeof(T)); + T result = 0; + for (size_t shift_bytes = 0; shift_bytes < sizeof(T); ++shift_bytes) + result |= T(in[sizeof(T) - 1 - shift_bytes]) << (shift_bytes * 8); + return result; +} +} // namespace + +namespace internals { +// Reads the start of a token with definitive size from |bytes|. +// |type| is the major type as specified in RFC 7049 Section 2.1. +// |value| is the payload (e.g. for MajorType::UNSIGNED) or is the size +// (e.g. for BYTE_STRING). +// If successful, returns the number of bytes read. Otherwise returns 0. +size_t ReadTokenStart(span<uint8_t> bytes, MajorType* type, uint64_t* value) { + if (bytes.empty()) + return 0; + uint8_t initial_byte = bytes[0]; + *type = MajorType((initial_byte & kMajorTypeMask) >> kMajorTypeBitShift); + + uint8_t additional_information = initial_byte & kAdditionalInformationMask; + if (additional_information < 24) { + // Values 0-23 are encoded directly into the additional info of the + // initial byte. + *value = additional_information; + return 1; + } + if (additional_information == kAdditionalInformation1Byte) { + // Values 24-255 are encoded with one initial byte, followed by the value. + if (bytes.size() < 2) + return 0; + *value = ReadBytesMostSignificantByteFirst<uint8_t>(bytes.subspan(1)); + return 2; + } + if (additional_information == kAdditionalInformation2Bytes) { + // Values 256-65535: 1 initial byte + 2 bytes payload. + if (bytes.size() < 1 + sizeof(uint16_t)) + return 0; + *value = ReadBytesMostSignificantByteFirst<uint16_t>(bytes.subspan(1)); + return 3; + } + if (additional_information == kAdditionalInformation4Bytes) { + // 32 bit uint: 1 initial byte + 4 bytes payload. + if (bytes.size() < 1 + sizeof(uint32_t)) + return 0; + *value = ReadBytesMostSignificantByteFirst<uint32_t>(bytes.subspan(1)); + return 5; + } + if (additional_information == kAdditionalInformation8Bytes) { + // 64 bit uint: 1 initial byte + 8 bytes payload. + if (bytes.size() < 1 + sizeof(uint64_t)) + return 0; + *value = ReadBytesMostSignificantByteFirst<uint64_t>(bytes.subspan(1)); + return 9; + } + return 0; +} + +// Writes the start of a token with |type|. The |value| may indicate the size, +// or it may be the payload if the value is an unsigned integer. +void WriteTokenStart(MajorType type, + uint64_t value, + std::vector<uint8_t>* encoded) { + if (value < 24) { + // Values 0-23 are encoded directly into the additional info of the + // initial byte. + encoded->push_back(EncodeInitialByte(type, /*additional_info=*/value)); + return; + } + if (value <= std::numeric_limits<uint8_t>::max()) { + // Values 24-255 are encoded with one initial byte, followed by the value. + encoded->push_back(EncodeInitialByte(type, kAdditionalInformation1Byte)); + encoded->push_back(value); + return; + } + if (value <= std::numeric_limits<uint16_t>::max()) { + // Values 256-65535: 1 initial byte + 2 bytes payload. + encoded->push_back(EncodeInitialByte(type, kAdditionalInformation2Bytes)); + WriteBytesMostSignificantByteFirst<uint16_t>(value, encoded); + return; + } + if (value <= std::numeric_limits<uint32_t>::max()) { + // 32 bit uint: 1 initial byte + 4 bytes payload. + encoded->push_back(EncodeInitialByte(type, kAdditionalInformation4Bytes)); + WriteBytesMostSignificantByteFirst<uint32_t>(static_cast<uint32_t>(value), + encoded); + return; + } + // 64 bit uint: 1 initial byte + 8 bytes payload. + encoded->push_back(EncodeInitialByte(type, kAdditionalInformation8Bytes)); + WriteBytesMostSignificantByteFirst<uint64_t>(value, encoded); +} +} // namespace internals + +// ============================================================================= +// Detecting CBOR content +// ============================================================================= + +bool IsCBORMessage(span<uint8_t> msg) { + return msg.size() >= 4 && msg[0] == kInitialByteForEnvelope && + (msg[1] == kInitialByteFor32BitLengthByteString || + (msg[1] == kCBOREnvelopeTag && + msg[2] == kInitialByteFor32BitLengthByteString)); +} + +Status CheckCBORMessage(span<uint8_t> msg) { + if (msg.empty()) + return Status(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 0); + if (msg[0] != kInitialByteForEnvelope) + return Status(Error::CBOR_INVALID_START_BYTE, 0); + StatusOr<EnvelopeHeader> status_or_header = EnvelopeHeader::Parse(msg); + if (!status_or_header.ok()) + return status_or_header.status(); + const size_t pos = (*status_or_header).header_size(); + assert(pos < msg.size()); // EnvelopeParser would not allow empty envelope. + if (msg[pos] != EncodeIndefiniteLengthMapStart()) + return Status(Error::CBOR_MAP_START_EXPECTED, pos); + return Status(); +} + +// ============================================================================= +// Encoding invidiual CBOR items +// ============================================================================= + +uint8_t EncodeTrue() { + return kEncodedTrue; +} + +uint8_t EncodeFalse() { + return kEncodedFalse; +} + +uint8_t EncodeNull() { + return kEncodedNull; +} + +uint8_t EncodeIndefiniteLengthArrayStart() { + return kInitialByteIndefiniteLengthArray; +} + +uint8_t EncodeIndefiniteLengthMapStart() { + return kInitialByteIndefiniteLengthMap; +} + +uint8_t EncodeStop() { + return kStopByte; +} + +void EncodeInt32(int32_t value, std::vector<uint8_t>* out) { + if (value >= 0) { + internals::WriteTokenStart(MajorType::UNSIGNED, value, out); + } else { + uint64_t representation = static_cast<uint64_t>(-(value + 1)); + internals::WriteTokenStart(MajorType::NEGATIVE, representation, out); + } +} + +void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out) { + uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); + internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); + // When emitting UTF16 characters, we always write the least significant byte + // first; this is because it's the native representation for X86. + // TODO(johannes): Implement a more efficient thing here later, e.g. + // casting *iff* the machine has this byte order. + // The wire format for UTF16 chars will probably remain the same + // (least significant byte first) since this way we can have + // golden files, unittests, etc. that port easily and universally. + // See also: + // https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html + for (const uint16_t two_bytes : in) { + out->push_back(two_bytes); + out->push_back(two_bytes >> 8); + } +} + +void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out) { + internals::WriteTokenStart(MajorType::STRING, + static_cast<uint64_t>(in.size_bytes()), out); + out->insert(out->end(), in.begin(), in.end()); +} + +void EncodeFromLatin1(span<uint8_t> latin1, std::vector<uint8_t>* out) { + for (size_t ii = 0; ii < latin1.size(); ++ii) { + if (latin1[ii] <= 127) + continue; + // If there's at least one non-ASCII char, convert to UTF8. + std::vector<uint8_t> utf8(latin1.begin(), latin1.begin() + ii); + for (; ii < latin1.size(); ++ii) { + if (latin1[ii] <= 127) { + utf8.push_back(latin1[ii]); + } else { + // 0xC0 means it's a UTF8 sequence with 2 bytes. + utf8.push_back((latin1[ii] >> 6) | 0xc0); + utf8.push_back((latin1[ii] | 0x80) & 0xbf); + } + } + EncodeString8(SpanFrom(utf8), out); + return; + } + EncodeString8(latin1, out); +} + +void EncodeFromUTF16(span<uint16_t> utf16, std::vector<uint8_t>* out) { + // If there's at least one non-ASCII char, encode as STRING16 (UTF16). + for (uint16_t ch : utf16) { + if (ch <= 127) + continue; + EncodeString16(utf16, out); + return; + } + // It's all US-ASCII, strip out every second byte and encode as UTF8. + internals::WriteTokenStart(MajorType::STRING, + static_cast<uint64_t>(utf16.size()), out); + out->insert(out->end(), utf16.begin(), utf16.end()); +} + +void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out) { + out->push_back(kExpectedConversionToBase64Tag); + uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); + internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); + out->insert(out->end(), in.begin(), in.end()); +} + +// A double is encoded with a specific initial byte +// (kInitialByteForDouble) plus the 64 bits of payload for its value. +constexpr size_t kEncodedDoubleSize = 1 + sizeof(uint64_t); + +void EncodeDouble(double value, std::vector<uint8_t>* out) { + // The additional_info=27 indicates 64 bits for the double follow. + // See RFC 7049 Section 2.3, Table 1. + out->push_back(kInitialByteForDouble); + union { + double from_double; + uint64_t to_uint64; + } reinterpret; + reinterpret.from_double = value; + WriteBytesMostSignificantByteFirst<uint64_t>(reinterpret.to_uint64, out); +} + +// ============================================================================= +// cbor::EnvelopeEncoder - for wrapping submessages +// ============================================================================= + +void EnvelopeEncoder::EncodeStart(std::vector<uint8_t>* out) { + assert(byte_size_pos_ == 0); + out->push_back(kInitialByteForEnvelope); + out->push_back(kCBOREnvelopeTag); + out->push_back(kInitialByteFor32BitLengthByteString); + byte_size_pos_ = out->size(); + out->resize(out->size() + sizeof(uint32_t)); +} + +bool EnvelopeEncoder::EncodeStop(std::vector<uint8_t>* out) { + assert(byte_size_pos_ != 0); + // The byte size is the size of the payload, that is, all the + // bytes that were written past the byte size position itself. + uint64_t byte_size = out->size() - (byte_size_pos_ + sizeof(uint32_t)); + // We store exactly 4 bytes, so at most INT32MAX, with most significant + // byte first. + if (byte_size > std::numeric_limits<uint32_t>::max()) + return false; + for (int shift_bytes = sizeof(uint32_t) - 1; shift_bytes >= 0; + --shift_bytes) { + (*out)[byte_size_pos_++] = 0xff & (byte_size >> (shift_bytes * 8)); + } + return true; +} + +// static +StatusOr<EnvelopeHeader> EnvelopeHeader::Parse(span<uint8_t> in) { + auto header_or_status = ParseFromFragment(in); + if (!header_or_status.ok()) + return header_or_status; + if ((*header_or_status).outer_size() > in.size()) { + return StatusOr<EnvelopeHeader>( + Status(Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, in.size())); + } + return header_or_status; +} + +// static +StatusOr<EnvelopeHeader> EnvelopeHeader::ParseFromFragment(span<uint8_t> in) { + // Our copy of StatusOr<> requires explicit constructor. + using Ret = StatusOr<EnvelopeHeader>; + constexpr size_t kMinEnvelopeSize = 2 + /* for envelope tag */ + 1 + /* for byte string */ + 1; /* for contents, a map or an array */ + if (in.size() < kMinEnvelopeSize) + return Ret(Status(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, in.size())); + assert(in[0] == kInitialByteForEnvelope); // Caller should assure that. + size_t offset = 1; + // TODO(caseq): require this! We're currently accepting both a legacy, + // non spec-compliant envelope tag (that this implementation still currently + // produces), as well as a well-formed two-byte tag that a correct + // implementation should emit. + if (in[offset] == kCBOREnvelopeTag) + ++offset; + MajorType type; + uint64_t size; + size_t string_header_size = + internals::ReadTokenStart(in.subspan(offset), &type, &size); + if (!string_header_size) + return Ret(Status(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, in.size())); + if (type != MajorType::BYTE_STRING) + return Ret(Status(Error::CBOR_INVALID_ENVELOPE, offset)); + // Do not allow empty envelopes -- at least an empty map/array should fit. + if (!size) { + return Ret(Status(Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE, + offset + string_header_size)); + } + if (size > std::numeric_limits<uint32_t>::max()) + return Ret(Status(Error::CBOR_INVALID_ENVELOPE, offset)); + offset += string_header_size; + return Ret(EnvelopeHeader(offset, static_cast<size_t>(size))); +} + +// ============================================================================= +// cbor::NewCBOREncoder - for encoding from a streaming parser +// ============================================================================= + +namespace { +class CBOREncoder : public ParserHandler { + public: + CBOREncoder(std::vector<uint8_t>* out, Status* status) + : out_(out), status_(status) { + *status_ = Status(); + } + + void HandleMapBegin() override { + if (!status_->ok()) + return; + envelopes_.emplace_back(); + envelopes_.back().EncodeStart(out_); + out_->push_back(kInitialByteIndefiniteLengthMap); + } + + void HandleMapEnd() override { + if (!status_->ok()) + return; + out_->push_back(kStopByte); + assert(!envelopes_.empty()); + if (!envelopes_.back().EncodeStop(out_)) { + HandleError( + Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); + return; + } + envelopes_.pop_back(); + } + + void HandleArrayBegin() override { + if (!status_->ok()) + return; + envelopes_.emplace_back(); + envelopes_.back().EncodeStart(out_); + out_->push_back(kInitialByteIndefiniteLengthArray); + } + + void HandleArrayEnd() override { + if (!status_->ok()) + return; + out_->push_back(kStopByte); + assert(!envelopes_.empty()); + if (!envelopes_.back().EncodeStop(out_)) { + HandleError( + Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); + return; + } + envelopes_.pop_back(); + } + + void HandleString8(span<uint8_t> chars) override { + if (!status_->ok()) + return; + EncodeString8(chars, out_); + } + + void HandleString16(span<uint16_t> chars) override { + if (!status_->ok()) + return; + EncodeFromUTF16(chars, out_); + } + + void HandleBinary(span<uint8_t> bytes) override { + if (!status_->ok()) + return; + EncodeBinary(bytes, out_); + } + + void HandleDouble(double value) override { + if (!status_->ok()) + return; + EncodeDouble(value, out_); + } + + void HandleInt32(int32_t value) override { + if (!status_->ok()) + return; + EncodeInt32(value, out_); + } + + void HandleBool(bool value) override { + if (!status_->ok()) + return; + // See RFC 7049 Section 2.3, Table 2. + out_->push_back(value ? kEncodedTrue : kEncodedFalse); + } + + void HandleNull() override { + if (!status_->ok()) + return; + // See RFC 7049 Section 2.3, Table 2. + out_->push_back(kEncodedNull); + } + + void HandleError(Status error) override { + if (!status_->ok()) + return; + *status_ = error; + out_->clear(); + } + + private: + std::vector<uint8_t>* out_; + std::vector<EnvelopeEncoder> envelopes_; + Status* status_; +}; +} // namespace + +std::unique_ptr<ParserHandler> NewCBOREncoder(std::vector<uint8_t>* out, + Status* status) { + return std::unique_ptr<ParserHandler>(new CBOREncoder(out, status)); +} + +// ============================================================================= +// cbor::CBORTokenizer - for parsing individual CBOR items +// ============================================================================= + +CBORTokenizer::CBORTokenizer(span<uint8_t> bytes) + : bytes_(bytes), status_(Error::OK, 0) { + ReadNextToken(); +} + +CBORTokenizer::~CBORTokenizer() {} + +CBORTokenTag CBORTokenizer::TokenTag() const { + return token_tag_; +} + +void CBORTokenizer::Next() { + if (token_tag_ == CBORTokenTag::ERROR_VALUE || + token_tag_ == CBORTokenTag::DONE) + return; + ReadNextToken(); +} + +void CBORTokenizer::EnterEnvelope() { + token_byte_length_ = GetEnvelopeHeader().header_size(); + ReadNextToken(); +} + +Status CBORTokenizer::Status() const { + return status_; +} + +// The following accessor functions ::GetInt32, ::GetDouble, +// ::GetString8, ::GetString16WireRep, ::GetBinary, ::GetEnvelopeContents +// assume that a particular token was recognized in ::ReadNextToken. +// That's where all the error checking is done. By design, +// the accessors (assuming the token was recognized) never produce +// an error. + +int32_t CBORTokenizer::GetInt32() const { + assert(token_tag_ == CBORTokenTag::INT32); + // The range checks happen in ::ReadNextToken(). + return static_cast<int32_t>( + token_start_type_ == MajorType::UNSIGNED + ? token_start_internal_value_ + : -static_cast<int64_t>(token_start_internal_value_) - 1); +} + +double CBORTokenizer::GetDouble() const { + assert(token_tag_ == CBORTokenTag::DOUBLE); + union { + uint64_t from_uint64; + double to_double; + } reinterpret; + reinterpret.from_uint64 = ReadBytesMostSignificantByteFirst<uint64_t>( + bytes_.subspan(status_.pos + 1)); + return reinterpret.to_double; +} + +span<uint8_t> CBORTokenizer::GetString8() const { + assert(token_tag_ == CBORTokenTag::STRING8); + auto length = static_cast<size_t>(token_start_internal_value_); + return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); +} + +span<uint8_t> CBORTokenizer::GetString16WireRep() const { + assert(token_tag_ == CBORTokenTag::STRING16); + auto length = static_cast<size_t>(token_start_internal_value_); + return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); +} + +span<uint8_t> CBORTokenizer::GetBinary() const { + assert(token_tag_ == CBORTokenTag::BINARY); + auto length = static_cast<size_t>(token_start_internal_value_); + return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); +} + +span<uint8_t> CBORTokenizer::GetEnvelope() const { + return bytes_.subspan(status_.pos, GetEnvelopeHeader().outer_size()); +} + +span<uint8_t> CBORTokenizer::GetEnvelopeContents() const { + const EnvelopeHeader& header = GetEnvelopeHeader(); + return bytes_.subspan(status_.pos + header.header_size(), + header.content_size()); +} + +const EnvelopeHeader& CBORTokenizer::GetEnvelopeHeader() const { + assert(token_tag_ == CBORTokenTag::ENVELOPE); + return envelope_header_; +} + +// All error checking happens in ::ReadNextToken, so that the accessors +// can avoid having to carry an error return value. +// +// With respect to checking the encoded lengths of strings, arrays, etc: +// On the wire, CBOR uses 1,2,4, and 8 byte unsigned integers, so +// we initially read them as uint64_t, usually into token_start_internal_value_. +// +// However, since these containers have a representation on the machine, +// we need to do corresponding size computations on the input byte array, +// output span (e.g. the payload for a string), etc., and size_t is +// machine specific (in practice either 32 bit or 64 bit). +// +// Further, we must avoid overflowing size_t. Therefore, we use this +// kMaxValidLength constant to: +// - Reject values that are larger than the architecture specific +// max size_t (differs between 32 bit and 64 bit arch). +// - Reserve at least one bit so that we can check against overflows +// when adding lengths (array / string length / etc.); we do this by +// ensuring that the inputs to an addition are <= kMaxValidLength, +// and then checking whether the sum went past it. +// +// See also +// https://chromium.googlesource.com/chromium/src/+/main/docs/security/integer-semantics.md +static const uint64_t kMaxValidLength = + std::min<uint64_t>(std::numeric_limits<uint64_t>::max() >> 2, + std::numeric_limits<size_t>::max()); + +void CBORTokenizer::ReadNextToken() { + status_.pos += token_byte_length_; + status_.error = Error::OK; + envelope_header_ = EnvelopeHeader(); + if (status_.pos >= bytes_.size()) { + token_tag_ = CBORTokenTag::DONE; + return; + } + const size_t remaining_bytes = bytes_.size() - status_.pos; + switch (bytes_[status_.pos]) { + case kStopByte: + SetToken(CBORTokenTag::STOP, 1); + return; + case kInitialByteIndefiniteLengthMap: + SetToken(CBORTokenTag::MAP_START, 1); + return; + case kInitialByteIndefiniteLengthArray: + SetToken(CBORTokenTag::ARRAY_START, 1); + return; + case kEncodedTrue: + SetToken(CBORTokenTag::TRUE_VALUE, 1); + return; + case kEncodedFalse: + SetToken(CBORTokenTag::FALSE_VALUE, 1); + return; + case kEncodedNull: + SetToken(CBORTokenTag::NULL_VALUE, 1); + return; + case kExpectedConversionToBase64Tag: { // BINARY + const size_t bytes_read = internals::ReadTokenStart( + bytes_.subspan(status_.pos + 1), &token_start_type_, + &token_start_internal_value_); + if (!bytes_read || token_start_type_ != MajorType::BYTE_STRING || + token_start_internal_value_ > kMaxValidLength) { + SetError(Error::CBOR_INVALID_BINARY); + return; + } + const uint64_t token_byte_length = token_start_internal_value_ + + /* tag before token start: */ 1 + + /* token start: */ bytes_read; + if (token_byte_length > remaining_bytes) { + SetError(Error::CBOR_INVALID_BINARY); + return; + } + SetToken(CBORTokenTag::BINARY, static_cast<size_t>(token_byte_length)); + return; + } + case kInitialByteForDouble: { // DOUBLE + if (kEncodedDoubleSize > remaining_bytes) { + SetError(Error::CBOR_INVALID_DOUBLE); + return; + } + SetToken(CBORTokenTag::DOUBLE, kEncodedDoubleSize); + return; + } + case kInitialByteForEnvelope: { // ENVELOPE + StatusOr<EnvelopeHeader> status_or_header = + EnvelopeHeader::Parse(bytes_.subspan(status_.pos)); + if (!status_or_header.ok()) { + status_.pos += status_or_header.status().pos; + SetError(status_or_header.status().error); + return; + } + assert((*status_or_header).outer_size() <= remaining_bytes); + envelope_header_ = *status_or_header; + SetToken(CBORTokenTag::ENVELOPE, envelope_header_.outer_size()); + return; + } + default: { + const size_t bytes_read = internals::ReadTokenStart( + bytes_.subspan(status_.pos), &token_start_type_, + &token_start_internal_value_); + switch (token_start_type_) { + case MajorType::UNSIGNED: // INT32. + // INT32 is a signed int32 (int32 makes sense for the + // inspector protocol, it's not a CBOR limitation), so we check + // against the signed max, so that the allowable values are + // 0, 1, 2, ... 2^31 - 1. + if (!bytes_read || + static_cast<uint64_t>(std::numeric_limits<int32_t>::max()) < + static_cast<uint64_t>(token_start_internal_value_)) { + SetError(Error::CBOR_INVALID_INT32); + return; + } + SetToken(CBORTokenTag::INT32, bytes_read); + return; + case MajorType::NEGATIVE: { // INT32. + // INT32 is a signed int32 (int32 makes sense for the + // inspector protocol, it's not a CBOR limitation); in CBOR, the + // negative values for INT32 are represented as NEGATIVE, that is, -1 + // INT32 is represented as 1 << 5 | 0 (major type 1, additional info + // value 0). + // The represented allowed values range is -1 to -2^31. + // They are mapped into the encoded range of 0 to 2^31-1. + // We check the payload in token_start_internal_value_ against + // that range (2^31-1 is also known as + // std::numeric_limits<int32_t>::max()). + if (!bytes_read || + static_cast<uint64_t>(token_start_internal_value_) > + static_cast<uint64_t>(std::numeric_limits<int32_t>::max())) { + SetError(Error::CBOR_INVALID_INT32); + return; + } + SetToken(CBORTokenTag::INT32, bytes_read); + return; + } + case MajorType::STRING: { // STRING8. + if (!bytes_read || token_start_internal_value_ > kMaxValidLength) { + SetError(Error::CBOR_INVALID_STRING8); + return; + } + uint64_t token_byte_length = token_start_internal_value_ + bytes_read; + if (token_byte_length > remaining_bytes) { + SetError(Error::CBOR_INVALID_STRING8); + return; + } + SetToken(CBORTokenTag::STRING8, + static_cast<size_t>(token_byte_length)); + return; + } + case MajorType::BYTE_STRING: { // STRING16. + // Length must be divisible by 2 since UTF16 is 2 bytes per + // character, hence the &1 check. + if (!bytes_read || token_start_internal_value_ > kMaxValidLength || + token_start_internal_value_ & 1) { + SetError(Error::CBOR_INVALID_STRING16); + return; + } + uint64_t token_byte_length = token_start_internal_value_ + bytes_read; + if (token_byte_length > remaining_bytes) { + SetError(Error::CBOR_INVALID_STRING16); + return; + } + SetToken(CBORTokenTag::STRING16, + static_cast<size_t>(token_byte_length)); + return; + } + case MajorType::ARRAY: + case MajorType::MAP: + case MajorType::TAG: + case MajorType::SIMPLE_VALUE: + SetError(Error::CBOR_UNSUPPORTED_VALUE); + return; + } + } + } +} + +void CBORTokenizer::SetToken(CBORTokenTag token_tag, size_t token_byte_length) { + token_tag_ = token_tag; + token_byte_length_ = token_byte_length; +} + +void CBORTokenizer::SetError(Error error) { + token_tag_ = CBORTokenTag::ERROR_VALUE; + status_.error = error; +} + +// ============================================================================= +// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages +// ============================================================================= + +namespace { +// When parsing CBOR, we limit recursion depth for objects and arrays +// to this constant. +static constexpr int kStackLimit = 300; + +// Below are three parsing routines for CBOR, which cover enough +// to roundtrip JSON messages. +bool ParseMap(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out); +bool ParseArray(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out); +bool ParseValue(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out); + +void ParseUTF16String(CBORTokenizer* tokenizer, ParserHandler* out) { + std::vector<uint16_t> value; + span<uint8_t> rep = tokenizer->GetString16WireRep(); + for (size_t ii = 0; ii < rep.size(); ii += 2) + value.push_back((rep[ii + 1] << 8) | rep[ii]); + out->HandleString16(span<uint16_t>(value.data(), value.size())); + tokenizer->Next(); +} + +bool ParseUTF8String(CBORTokenizer* tokenizer, ParserHandler* out) { + assert(tokenizer->TokenTag() == CBORTokenTag::STRING8); + out->HandleString8(tokenizer->GetString8()); + tokenizer->Next(); + return true; +} + +bool ParseEnvelope(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out) { + assert(tokenizer->TokenTag() == CBORTokenTag::ENVELOPE); + // Before we enter the envelope, we save the position that we + // expect to see after we're done parsing the envelope contents. + // This way we can compare and produce an error if the contents + // didn't fit exactly into the envelope length. + size_t pos_past_envelope = + tokenizer->Status().pos + tokenizer->GetEnvelopeHeader().outer_size(); + tokenizer->EnterEnvelope(); + switch (tokenizer->TokenTag()) { + case CBORTokenTag::ERROR_VALUE: + out->HandleError(tokenizer->Status()); + return false; + case CBORTokenTag::MAP_START: + if (!ParseMap(stack_depth + 1, tokenizer, out)) + return false; + break; // Continue to check pos_past_envelope below. + case CBORTokenTag::ARRAY_START: + if (!ParseArray(stack_depth + 1, tokenizer, out)) + return false; + break; // Continue to check pos_past_envelope below. + default: + out->HandleError(Status{Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE, + tokenizer->Status().pos}); + return false; + } + // The contents of the envelope parsed OK, now check that we're at + // the expected position. + if (pos_past_envelope != tokenizer->Status().pos) { + out->HandleError(Status{Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, + tokenizer->Status().pos}); + return false; + } + return true; +} + +bool ParseValue(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out) { + if (stack_depth > kStackLimit) { + out->HandleError( + Status{Error::CBOR_STACK_LIMIT_EXCEEDED, tokenizer->Status().pos}); + return false; + } + switch (tokenizer->TokenTag()) { + case CBORTokenTag::ERROR_VALUE: + out->HandleError(tokenizer->Status()); + return false; + case CBORTokenTag::DONE: + out->HandleError(Status{Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE, + tokenizer->Status().pos}); + return false; + case CBORTokenTag::ENVELOPE: + return ParseEnvelope(stack_depth, tokenizer, out); + case CBORTokenTag::TRUE_VALUE: + out->HandleBool(true); + tokenizer->Next(); + return true; + case CBORTokenTag::FALSE_VALUE: + out->HandleBool(false); + tokenizer->Next(); + return true; + case CBORTokenTag::NULL_VALUE: + out->HandleNull(); + tokenizer->Next(); + return true; + case CBORTokenTag::INT32: + out->HandleInt32(tokenizer->GetInt32()); + tokenizer->Next(); + return true; + case CBORTokenTag::DOUBLE: + out->HandleDouble(tokenizer->GetDouble()); + tokenizer->Next(); + return true; + case CBORTokenTag::STRING8: + return ParseUTF8String(tokenizer, out); + case CBORTokenTag::STRING16: + ParseUTF16String(tokenizer, out); + return true; + case CBORTokenTag::BINARY: { + out->HandleBinary(tokenizer->GetBinary()); + tokenizer->Next(); + return true; + } + case CBORTokenTag::MAP_START: + return ParseMap(stack_depth + 1, tokenizer, out); + case CBORTokenTag::ARRAY_START: + return ParseArray(stack_depth + 1, tokenizer, out); + default: + out->HandleError( + Status{Error::CBOR_UNSUPPORTED_VALUE, tokenizer->Status().pos}); + return false; + } +} + +// |bytes| must start with the indefinite length array byte, so basically, +// ParseArray may only be called after an indefinite length array has been +// detected. +bool ParseArray(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out) { + assert(tokenizer->TokenTag() == CBORTokenTag::ARRAY_START); + tokenizer->Next(); + out->HandleArrayBegin(); + while (tokenizer->TokenTag() != CBORTokenTag::STOP) { + if (tokenizer->TokenTag() == CBORTokenTag::DONE) { + out->HandleError( + Status{Error::CBOR_UNEXPECTED_EOF_IN_ARRAY, tokenizer->Status().pos}); + return false; + } + if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { + out->HandleError(tokenizer->Status()); + return false; + } + // Parse value. + if (!ParseValue(stack_depth, tokenizer, out)) + return false; + } + out->HandleArrayEnd(); + tokenizer->Next(); + return true; +} + +// |bytes| must start with the indefinite length array byte, so basically, +// ParseArray may only be called after an indefinite length array has been +// detected. +bool ParseMap(int32_t stack_depth, + CBORTokenizer* tokenizer, + ParserHandler* out) { + assert(tokenizer->TokenTag() == CBORTokenTag::MAP_START); + out->HandleMapBegin(); + tokenizer->Next(); + while (tokenizer->TokenTag() != CBORTokenTag::STOP) { + if (tokenizer->TokenTag() == CBORTokenTag::DONE) { + out->HandleError( + Status{Error::CBOR_UNEXPECTED_EOF_IN_MAP, tokenizer->Status().pos}); + return false; + } + if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { + out->HandleError(tokenizer->Status()); + return false; + } + // Parse key. + if (tokenizer->TokenTag() == CBORTokenTag::STRING8) { + if (!ParseUTF8String(tokenizer, out)) + return false; + } else if (tokenizer->TokenTag() == CBORTokenTag::STRING16) { + ParseUTF16String(tokenizer, out); + } else { + out->HandleError( + Status{Error::CBOR_INVALID_MAP_KEY, tokenizer->Status().pos}); + return false; + } + // Parse value. + if (!ParseValue(stack_depth, tokenizer, out)) + return false; + } + out->HandleMapEnd(); + tokenizer->Next(); + return true; +} +} // namespace + +void ParseCBOR(span<uint8_t> bytes, ParserHandler* out) { + if (bytes.empty()) { + out->HandleError(Status{Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 0}); + return; + } + CBORTokenizer tokenizer(bytes); + if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { + out->HandleError(tokenizer.Status()); + return; + } + if (!ParseValue(/*stack_depth=*/0, &tokenizer, out)) + return; + if (tokenizer.TokenTag() == CBORTokenTag::DONE) + return; + if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { + out->HandleError(tokenizer.Status()); + return; + } + out->HandleError(Status{Error::CBOR_TRAILING_JUNK, tokenizer.Status().pos}); +} + +// ============================================================================= +// cbor::AppendString8EntryToMap - for limited in-place editing of messages +// ============================================================================= + +Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, + span<uint8_t> string8_value, + std::vector<uint8_t>* cbor) { + span<uint8_t> bytes(cbor->data(), cbor->size()); + CBORTokenizer tokenizer(bytes); + if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) + return tokenizer.Status(); + if (tokenizer.TokenTag() != CBORTokenTag::ENVELOPE) + return Status(Error::CBOR_INVALID_ENVELOPE, 0); + EnvelopeHeader env_header = tokenizer.GetEnvelopeHeader(); + size_t old_size = cbor->size(); + if (old_size != env_header.outer_size()) + return Status(Error::CBOR_INVALID_ENVELOPE, 0); + assert(env_header.content_size() > 0); + if (tokenizer.GetEnvelopeContents()[0] != EncodeIndefiniteLengthMapStart()) + return Status(Error::CBOR_MAP_START_EXPECTED, env_header.header_size()); + if (bytes[bytes.size() - 1] != EncodeStop()) + return Status(Error::CBOR_MAP_STOP_EXPECTED, cbor->size() - 1); + // We generally accept envelope headers with size specified in all possible + // widths, but when it comes to modifying, we only support the fixed 4 byte + // widths that we produce. + const size_t byte_string_pos = bytes[1] == kCBOREnvelopeTag ? 2 : 1; + if (bytes[byte_string_pos] != kInitialByteFor32BitLengthByteString) + return Status(Error::CBOR_INVALID_ENVELOPE, byte_string_pos); + cbor->pop_back(); + EncodeString8(string8_key, cbor); + EncodeString8(string8_value, cbor); + cbor->push_back(EncodeStop()); + size_t new_envelope_size = + env_header.content_size() + (cbor->size() - old_size); + if (new_envelope_size > std::numeric_limits<uint32_t>::max()) + return Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, 0); + std::vector<uint8_t>::iterator out = + cbor->begin() + env_header.header_size() - sizeof(int32_t); + *(out++) = (new_envelope_size >> 24) & 0xff; + *(out++) = (new_envelope_size >> 16) & 0xff; + *(out++) = (new_envelope_size >> 8) & 0xff; + *(out) = new_envelope_size & 0xff; + return Status(); +} +} // namespace cbor +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/cbor.h b/deps/inspector_protocol/crdtp/cbor.h new file mode 100644 index 00000000000000..471aa78e605298 --- /dev/null +++ b/deps/inspector_protocol/crdtp/cbor.h @@ -0,0 +1,329 @@ +// 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. + +#ifndef CRDTP_CBOR_H_ +#define CRDTP_CBOR_H_ + +#include <cstddef> +#include <cstdint> +#include <memory> +#include <string> +#include <vector> + +#include "export.h" +#include "parser_handler.h" +#include "span.h" + +namespace crdtp { +namespace cbor { +// The binary encoding for the inspector protocol follows the CBOR specification +// (RFC 7049). Additional constraints: +// - Only indefinite length maps and arrays are supported. +// - Maps and arrays are wrapped with an envelope, that is, a +// CBOR tag with value 24 followed by a byte string specifying +// the byte length of the enclosed map / array. The byte string +// must use a 32 bit wide length. +// - At the top level, a message must be an indefinite length map +// wrapped by an envelope. +// - Maximal size for messages is 2^32 (4 GB). +// - For scalars, we support only the int32_t range, encoded as +// UNSIGNED/NEGATIVE (major types 0 / 1). +// - UTF16 strings, including with unbalanced surrogate pairs, are encoded +// as CBOR BYTE_STRING (major type 2). For such strings, the number of +// bytes encoded must be even. +// - UTF8 strings (major type 3) are supported. +// - 7 bit US-ASCII strings must always be encoded as UTF8 strings, never +// as UTF16 strings. +// - Arbitrary byte arrays, in the inspector protocol called 'binary', +// are encoded as BYTE_STRING (major type 2), prefixed with a byte +// indicating base64 when rendered as JSON. + +// ============================================================================= +// Detecting CBOR content +// ============================================================================= + +// Checks whether |msg| is a cbor message. +CRDTP_EXPORT bool IsCBORMessage(span<uint8_t> msg); + +// Performs a leightweight check of |msg|. +// Disallows: +// - Empty message +// - Not starting with the two bytes 0xd8, 0x5a +// - Empty envelope (all length bytes are 0) +// - Not starting with a map after the envelope stanza +// DevTools messages should pass this check. +CRDTP_EXPORT Status CheckCBORMessage(span<uint8_t> msg); + +// ============================================================================= +// Encoding individual CBOR items +// ============================================================================= + +// Some constants for CBOR tokens that only take a single byte on the wire. +CRDTP_EXPORT uint8_t EncodeTrue(); +CRDTP_EXPORT uint8_t EncodeFalse(); +CRDTP_EXPORT uint8_t EncodeNull(); +CRDTP_EXPORT uint8_t EncodeIndefiniteLengthArrayStart(); +CRDTP_EXPORT uint8_t EncodeIndefiniteLengthMapStart(); +CRDTP_EXPORT uint8_t EncodeStop(); + +// Encodes |value| as |UNSIGNED| (major type 0) iff >= 0, or |NEGATIVE| +// (major type 1) iff < 0. +CRDTP_EXPORT void EncodeInt32(int32_t value, std::vector<uint8_t>* out); + +// Encodes a UTF16 string as a BYTE_STRING (major type 2). Each utf16 +// character in |in| is emitted with most significant byte first, +// appending to |out|. +CRDTP_EXPORT void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out); + +// Encodes a UTF8 string |in| as STRING (major type 3). +CRDTP_EXPORT void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out); + +// Encodes the given |latin1| string as STRING8. +// If any non-ASCII character is present, it will be represented +// as a 2 byte UTF8 sequence. +CRDTP_EXPORT void EncodeFromLatin1(span<uint8_t> latin1, + std::vector<uint8_t>* out); + +// Encodes the given |utf16| string as STRING8 if it's entirely US-ASCII. +// Otherwise, encodes as STRING16. +CRDTP_EXPORT void EncodeFromUTF16(span<uint16_t> utf16, + std::vector<uint8_t>* out); + +// Encodes arbitrary binary data in |in| as a BYTE_STRING (major type 2) with +// definitive length, prefixed with tag 22 indicating expected conversion to +// base64 (see RFC 7049, Table 3 and Section 2.4.4.2). +CRDTP_EXPORT void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out); + +// Encodes / decodes a double as Major type 7 (SIMPLE_VALUE), +// with additional info = 27, followed by 8 bytes in big endian. +CRDTP_EXPORT void EncodeDouble(double value, std::vector<uint8_t>* out); + +// ============================================================================= +// cbor::EnvelopeEncoder - for wrapping submessages +// ============================================================================= + +// An envelope indicates the byte length of a wrapped item. +// We use this for maps and array, which allows the decoder +// to skip such (nested) values whole sale. +// It's implemented as a CBOR tag (major type 6) with additional +// info = 24, followed by a byte string with a 32 bit length value; +// so the maximal structure that we can wrap is 2^32 bits long. +// See also: https://tools.ietf.org/html/rfc7049#section-2.4.4.1 +class CRDTP_EXPORT EnvelopeEncoder { + public: + // Emits the envelope start bytes and records the position for the + // byte size in |byte_size_pos_|. Also emits empty bytes for the + // byte sisze so that encoding can continue. + void EncodeStart(std::vector<uint8_t>* out); + // This records the current size in |out| at position byte_size_pos_. + // Returns true iff successful. + bool EncodeStop(std::vector<uint8_t>* out); + + private: + size_t byte_size_pos_ = 0; +}; + +class CRDTP_EXPORT EnvelopeHeader { + public: + EnvelopeHeader() = default; + ~EnvelopeHeader() = default; + + // Parse envelope. Implies that `in` accomodates the entire size of envelope. + static StatusOr<EnvelopeHeader> Parse(span<uint8_t> in); + // Parse envelope, but allow `in` to only include the beginning of the + // envelope. + static StatusOr<EnvelopeHeader> ParseFromFragment(span<uint8_t> in); + + size_t header_size() const { return header_size_; } + size_t content_size() const { return content_size_; } + size_t outer_size() const { return header_size_ + content_size_; } + + private: + EnvelopeHeader(size_t header_size, size_t content_size) + : header_size_(header_size), content_size_(content_size) {} + + size_t header_size_ = 0; + size_t content_size_ = 0; +}; + +// ============================================================================= +// cbor::NewCBOREncoder - for encoding from a streaming parser +// ============================================================================= + +// This can be used to convert to CBOR, by passing the return value to a parser +// that drives it. The handler will encode into |out|, and iff an error occurs +// it will set |status| to an error and clear |out|. Otherwise, |status.ok()| +// will be |true|. +CRDTP_EXPORT std::unique_ptr<ParserHandler> NewCBOREncoder( + std::vector<uint8_t>* out, + Status* status); + +// ============================================================================= +// cbor::CBORTokenizer - for parsing individual CBOR items +// ============================================================================= + +// Tags for the tokens within a CBOR message that CBORTokenizer understands. +// Note that this is not the same terminology as the CBOR spec (RFC 7049), +// but rather, our adaptation. For instance, we lump unsigned and signed +// major type into INT32 here (and disallow values outside the int32_t range). +enum class CBORTokenTag { + // Encountered an error in the structure of the message. Consult + // status() for details. + ERROR_VALUE, + // Booleans and NULL. + TRUE_VALUE, + FALSE_VALUE, + NULL_VALUE, + // An int32_t (signed 32 bit integer). + INT32, + // A double (64 bit floating point). + DOUBLE, + // A UTF8 string. + STRING8, + // A UTF16 string. + STRING16, + // A binary string. + BINARY, + // Starts an indefinite length map; after the map start we expect + // alternating keys and values, followed by STOP. + MAP_START, + // Starts an indefinite length array; after the array start we + // expect values, followed by STOP. + ARRAY_START, + // Ends a map or an array. + STOP, + // An envelope indicator, wrapping a map or array. + // Internally this carries the byte length of the wrapped + // map or array. While CBORTokenizer::Next() will read / skip the entire + // envelope, CBORTokenizer::EnterEnvelope() reads the tokens + // inside of it. + ENVELOPE, + // We've reached the end there is nothing else to read. + DONE, +}; + +// The major types from RFC 7049 Section 2.1. +enum class MajorType { + UNSIGNED = 0, + NEGATIVE = 1, + BYTE_STRING = 2, + STRING = 3, + ARRAY = 4, + MAP = 5, + TAG = 6, + SIMPLE_VALUE = 7 +}; + +// CBORTokenizer segments a CBOR message, presenting the tokens therein as +// numbers, strings, etc. This is not a complete CBOR parser, but makes it much +// easier to implement one (e.g. ParseCBOR, above). It can also be used to parse +// messages partially. +class CRDTP_EXPORT CBORTokenizer { + public: + explicit CBORTokenizer(span<uint8_t> bytes); + ~CBORTokenizer(); + + // Identifies the current token that we're looking at, + // or ERROR_VALUE (in which ase ::Status() has details) + // or DONE (if we're past the last token). + CBORTokenTag TokenTag() const; + + // Advances to the next token. + void Next(); + // Can only be called if TokenTag() == CBORTokenTag::ENVELOPE. + // While Next() would skip past the entire envelope / what it's + // wrapping, EnterEnvelope positions the cursor inside of the envelope, + // letting the client explore the nested structure. + void EnterEnvelope(); + + // If TokenTag() is CBORTokenTag::ERROR_VALUE, then Status().error describes + // the error more precisely; otherwise it'll be set to Error::OK. + // In either case, Status().pos is the current position. + struct Status Status() const; + + // The following methods retrieve the token values. They can only + // be called if TokenTag() matches. + + // To be called only if ::TokenTag() == CBORTokenTag::INT32. + int32_t GetInt32() const; + + // To be called only if ::TokenTag() == CBORTokenTag::DOUBLE. + double GetDouble() const; + + // To be called only if ::TokenTag() == CBORTokenTag::STRING8. + span<uint8_t> GetString8() const; + + // Wire representation for STRING16 is low byte first (little endian). + // To be called only if ::TokenTag() == CBORTokenTag::STRING16. + span<uint8_t> GetString16WireRep() const; + + // To be called only if ::TokenTag() == CBORTokenTag::BINARY. + span<uint8_t> GetBinary() const; + + // To be called only if ::TokenTag() == CBORTokenTag::ENVELOPE. + // Returns the envelope including its payload; message which + // can be passed to the CBORTokenizer constructor, which will + // then see the envelope token first (looking at it a second time, + // basically). + span<uint8_t> GetEnvelope() const; + + // To be called only if ::TokenTag() == CBORTokenTag::ENVELOPE. + // Returns only the payload inside the envelope, e.g., a map + // or an array. This is not a complete message by our + // IsCBORMessage definition, since it doesn't include the + // enclosing envelope (the header, basically). + span<uint8_t> GetEnvelopeContents() const; + + // To be called only if ::TokenTag() == CBORTokenTag::ENVELOPE. + // Returns the envelope header. + const EnvelopeHeader& GetEnvelopeHeader() const; + + private: + void ReadNextToken(); + void SetToken(CBORTokenTag token, size_t token_byte_length); + void SetError(Error error); + + const span<uint8_t> bytes_; + CBORTokenTag token_tag_; + struct Status status_; + size_t token_byte_length_ = 0; + MajorType token_start_type_; + uint64_t token_start_internal_value_; + EnvelopeHeader envelope_header_; +}; + +// ============================================================================= +// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages +// ============================================================================= + +// Parses a CBOR encoded message from |bytes|, sending events to +// |out|. If an error occurs, sends |out->HandleError|, and parsing stops. +// The client is responsible for discarding the already received information in +// that case. +CRDTP_EXPORT void ParseCBOR(span<uint8_t> bytes, ParserHandler* out); + +// ============================================================================= +// cbor::AppendString8EntryToMap - for limited in-place editing of messages +// ============================================================================= + +// Modifies the |cbor| message by appending a new key/value entry at the end +// of the map. Patches up the envelope size; Status.ok() iff successful. +// If not successful, |cbor| may be corrupted after this call. +CRDTP_EXPORT Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, + span<uint8_t> string8_value, + std::vector<uint8_t>* cbor); + +namespace internals { // Exposed only for writing tests. +CRDTP_EXPORT size_t ReadTokenStart(span<uint8_t> bytes, + cbor::MajorType* type, + uint64_t* value); + +CRDTP_EXPORT void WriteTokenStart(cbor::MajorType type, + uint64_t value, + std::vector<uint8_t>* encoded); +} // namespace internals +} // namespace cbor +} // namespace crdtp + +#endif // CRDTP_CBOR_H_ diff --git a/tools/inspector_protocol/encoding/encoding_test.cc b/deps/inspector_protocol/crdtp/cbor_test.cc similarity index 55% rename from tools/inspector_protocol/encoding/encoding_test.cc rename to deps/inspector_protocol/crdtp/cbor_test.cc index f6b40dfcefe2df..058cd787d6416b 100644 --- a/tools/inspector_protocol/encoding/encoding_test.cc +++ b/deps/inspector_protocol/crdtp/cbor_test.cc @@ -1,8 +1,8 @@ -// Copyright 2018 The Chromium Authors. All rights reserved. +// Copyright 2018 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "encoding.h" +#include "cbor.h" #include <array> #include <clocale> @@ -13,151 +13,18 @@ #include <iostream> #include <sstream> #include <string> - -#include "encoding_test_helper.h" +#include "json.h" +#include "parser_handler.h" +#include "span.h" +#include "status.h" +#include "status_test_support.h" +#include "test_platform.h" using testing::ElementsAreArray; +using testing::Eq; -namespace v8_inspector_protocol_encoding { - -class TestPlatform : public json::Platform { - bool StrToD(const char* str, double* result) const override { - // This is not thread-safe - // (see https://en.cppreference.com/w/cpp/locale/setlocale) - // but good enough for a unittest. - const char* saved_locale = std::setlocale(LC_NUMERIC, nullptr); - char* end; - *result = std::strtod(str, &end); - std::setlocale(LC_NUMERIC, saved_locale); - if (errno == ERANGE) { - // errno must be reset, e.g. see the example here: - // https://en.cppreference.com/w/cpp/string/byte/strtof - errno = 0; - return false; - } - return end == str + strlen(str); - } - - std::unique_ptr<char[]> DToStr(double value) const override { - std::stringstream ss; - ss.imbue(std::locale("C")); - ss << value; - std::string str = ss.str(); - std::unique_ptr<char[]> result(new char[str.size() + 1]); - memcpy(result.get(), str.c_str(), str.size() + 1); - return result; - } -}; - -const json::Platform& GetTestPlatform() { - static TestPlatform* platform = new TestPlatform; - return *platform; -} - -// ============================================================================= -// span - sequence of bytes -// ============================================================================= - -template <typename T> -class SpanTest : public ::testing::Test {}; - -using TestTypes = ::testing::Types<uint8_t, uint16_t>; -TYPED_TEST_SUITE(SpanTest, TestTypes); - -TYPED_TEST(SpanTest, Empty) { - span<TypeParam> empty; - EXPECT_TRUE(empty.empty()); - EXPECT_EQ(0u, empty.size()); - EXPECT_EQ(0u, empty.size_bytes()); - EXPECT_EQ(empty.begin(), empty.end()); -} - -TYPED_TEST(SpanTest, SingleItem) { - TypeParam single_item = 42; - span<TypeParam> singular(&single_item, 1); - EXPECT_FALSE(singular.empty()); - EXPECT_EQ(1u, singular.size()); - EXPECT_EQ(sizeof(TypeParam), singular.size_bytes()); - EXPECT_EQ(singular.begin() + 1, singular.end()); - EXPECT_EQ(42, singular[0]); -} - -TYPED_TEST(SpanTest, FiveItems) { - std::vector<TypeParam> test_input = {31, 32, 33, 34, 35}; - span<TypeParam> five_items(test_input.data(), 5); - EXPECT_FALSE(five_items.empty()); - EXPECT_EQ(5u, five_items.size()); - EXPECT_EQ(sizeof(TypeParam) * 5, five_items.size_bytes()); - EXPECT_EQ(five_items.begin() + 5, five_items.end()); - EXPECT_EQ(31, five_items[0]); - EXPECT_EQ(32, five_items[1]); - EXPECT_EQ(33, five_items[2]); - EXPECT_EQ(34, five_items[3]); - EXPECT_EQ(35, five_items[4]); - span<TypeParam> three_items = five_items.subspan(2); - EXPECT_EQ(3u, three_items.size()); - EXPECT_EQ(33, three_items[0]); - EXPECT_EQ(34, three_items[1]); - EXPECT_EQ(35, three_items[2]); - span<TypeParam> two_items = five_items.subspan(2, 2); - EXPECT_EQ(2u, two_items.size()); - EXPECT_EQ(33, two_items[0]); - EXPECT_EQ(34, two_items[1]); -} - -TEST(SpanFromTest, FromConstCharAndLiteral) { - // Testing this is useful because strlen(nullptr) is undefined. - EXPECT_EQ(nullptr, SpanFrom(nullptr).data()); - EXPECT_EQ(0u, SpanFrom(nullptr).size()); - - const char* kEmpty = ""; - EXPECT_EQ(kEmpty, reinterpret_cast<const char*>(SpanFrom(kEmpty).data())); - EXPECT_EQ(0u, SpanFrom(kEmpty).size()); - - const char* kFoo = "foo"; - EXPECT_EQ(kFoo, reinterpret_cast<const char*>(SpanFrom(kFoo).data())); - EXPECT_EQ(3u, SpanFrom(kFoo).size()); - - EXPECT_EQ(3u, SpanFrom("foo").size()); -} - -TEST(SpanComparisons, ByteWiseLexicographicalOrder) { - // Compare the empty span. - EXPECT_FALSE(SpanLessThan(span<uint8_t>(), span<uint8_t>())); - EXPECT_TRUE(SpanEquals(span<uint8_t>(), span<uint8_t>())); - - // Compare message with itself. - std::string msg = "Hello, world"; - EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(msg))); - EXPECT_TRUE(SpanEquals(SpanFrom(msg), SpanFrom(msg))); - - // Compare message and copy. - EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(std::string(msg)))); - EXPECT_TRUE(SpanEquals(SpanFrom(msg), SpanFrom(std::string(msg)))); - - // Compare two messages. |lesser_msg| < |msg| because of the first - // byte ('A' < 'H'). - std::string lesser_msg = "A lesser message."; - EXPECT_TRUE(SpanLessThan(SpanFrom(lesser_msg), SpanFrom(msg))); - EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(lesser_msg))); - EXPECT_FALSE(SpanEquals(SpanFrom(msg), SpanFrom(lesser_msg))); -} - -// ============================================================================= -// Status and Error codes -// ============================================================================= - -TEST(StatusTest, StatusToASCIIString) { - Status ok_status; - EXPECT_EQ("OK", ok_status.ToASCIIString()); - Status json_error(Error::JSON_PARSER_COLON_EXPECTED, 42); - EXPECT_EQ("JSON: colon expected at position 42", json_error.ToASCIIString()); - Status cbor_error(Error::CBOR_TRAILING_JUNK, 21); - EXPECT_EQ("CBOR: trailing junk at position 21", cbor_error.ToASCIIString()); -} - +namespace crdtp { namespace cbor { - // ============================================================================= // Detecting CBOR content // ============================================================================= @@ -174,6 +41,73 @@ TEST(IsCBORMessage, SomeSmokeTests) { EXPECT_TRUE(IsCBORMessage(SpanFrom(one))); } +TEST(CheckCBORMessage, SmallestValidExample) { + // The smallest example that we consider valid for this lightweight check is + // an empty dictionary inside of an envelope. + std::vector<uint8_t> empty_dict = { + 0xd8, 0x5a, 0, 0, 0, 2, EncodeIndefiniteLengthMapStart(), EncodeStop()}; + Status status = CheckCBORMessage(SpanFrom(empty_dict)); + EXPECT_THAT(status, StatusIsOk()); +} + +TEST(CheckCBORMessage, ValidCBORButNotValidMessage) { + // The CBOR parser supports parsing values that aren't messages. E.g., this is + // the encoded unsigned int 7 (CBOR really encodes it as a single byte with + // value 7). + std::vector<uint8_t> not_a_message = {7}; + + // Show that the parser (happily) decodes it into JSON + std::string json; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&json, &status); + ParseCBOR(SpanFrom(not_a_message), json_writer.get()); + EXPECT_THAT(status, StatusIsOk()); + EXPECT_EQ("7", json); + + // ... but it's not a message. + EXPECT_THAT(CheckCBORMessage(SpanFrom(not_a_message)), + StatusIs(Error::CBOR_INVALID_START_BYTE, 0)); +} + +TEST(CheckCBORMessage, EmptyMessage) { + std::vector<uint8_t> empty; + Status status = CheckCBORMessage(SpanFrom(empty)); + EXPECT_THAT(status, StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 0)); +} + +TEST(CheckCBORMessage, InvalidStartByte) { + // Here we test that some actual json, which usually starts with {, is not + // considered CBOR. CBOR messages must start with 0xd8, 0x5a, the envelope + // start bytes. + Status status = CheckCBORMessage(SpanFrom("{\"msg\": \"Hello, world.\"}")); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_START_BYTE, 0)); +} + +TEST(CheckCBORMessage, InvalidEnvelopes) { + std::vector<uint8_t> bytes = {0xd8, 0x5a}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 2)); + bytes = {0xd8, 0x5a, 0}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 3)); + bytes = {0xd8, 0x5a, 0, 0}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 4)); + bytes = {0xd8, 0x5a, 0, 0, 0}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 5)); + bytes = {0xd8, 0x5a, 0, 0, 0, 0}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE, 6)); +} + +TEST(CheckCBORMessage, MapStartExpected) { + std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, 1}; + EXPECT_THAT(CheckCBORMessage(SpanFrom(bytes)), + StatusIs(Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, 6)); +} + // ============================================================================= // Encoding individual CBOR items // cbor::CBORTokenizer - for parsing individual CBOR items @@ -299,7 +233,7 @@ TEST(EncodeDecodeInt32Test, CantRoundtripUint32) { CBORTokenizer tokenizer(SpanFrom(encoded)); // 0xdeadbeef is > std::numerical_limits<int32_t>::max(). EXPECT_EQ(CBORTokenTag::ERROR_VALUE, tokenizer.TokenTag()); - EXPECT_EQ(Error::CBOR_INVALID_INT32, tokenizer.Status().error); + EXPECT_THAT(tokenizer.Status(), StatusIs(Error::CBOR_INVALID_INT32, 0u)); } TEST(EncodeDecodeInt32Test, DecodeErrorCases) { @@ -326,7 +260,7 @@ TEST(EncodeDecodeInt32Test, DecodeErrorCases) { SCOPED_TRACE(test.msg); CBORTokenizer tokenizer(SpanFrom(test.data)); EXPECT_EQ(CBORTokenTag::ERROR_VALUE, tokenizer.TokenTag()); - EXPECT_EQ(Error::CBOR_INVALID_INT32, tokenizer.Status().error); + EXPECT_THAT(tokenizer.Status(), StatusIs(Error::CBOR_INVALID_INT32, 0u)); } } @@ -488,7 +422,7 @@ TEST(EncodeDecodeString16Test, ErrorCases) { SCOPED_TRACE(test.msg); CBORTokenizer tokenizer(SpanFrom(test.data)); EXPECT_EQ(CBORTokenTag::ERROR_VALUE, tokenizer.TokenTag()); - EXPECT_EQ(Error::CBOR_INVALID_STRING16, tokenizer.Status().error); + EXPECT_THAT(tokenizer.Status(), StatusIs(Error::CBOR_INVALID_STRING16, 0u)); } } @@ -537,7 +471,7 @@ TEST(EncodeDecodeString8Test, ErrorCases) { SCOPED_TRACE(test.msg); CBORTokenizer tokenizer(SpanFrom(test.data)); EXPECT_EQ(CBORTokenTag::ERROR_VALUE, tokenizer.TokenTag()); - EXPECT_EQ(Error::CBOR_INVALID_STRING8, tokenizer.Status().error); + EXPECT_THAT(tokenizer.Status(), StatusIs(Error::CBOR_INVALID_STRING8, 0u)); } } @@ -612,7 +546,7 @@ TEST(EncodeDecodeBinaryTest, RoundtripsHelloWorld) { std::vector<uint8_t> decoded; CBORTokenizer tokenizer(SpanFrom(encoded)); EXPECT_EQ(CBORTokenTag::BINARY, tokenizer.TokenTag()); - EXPECT_EQ(0, static_cast<int>(tokenizer.Status().error)); + EXPECT_THAT(tokenizer.Status(), StatusIsOk()); decoded = std::vector<uint8_t>(tokenizer.GetBinary().begin(), tokenizer.GetBinary().end()); EXPECT_THAT(decoded, ElementsAreArray(binary)); @@ -634,7 +568,7 @@ TEST(EncodeDecodeBinaryTest, ErrorCases) { SCOPED_TRACE(test.msg); CBORTokenizer tokenizer(SpanFrom(test.data)); EXPECT_EQ(CBORTokenTag::ERROR_VALUE, tokenizer.TokenTag()); - EXPECT_EQ(Error::CBOR_INVALID_BINARY, tokenizer.Status().error); + EXPECT_THAT(tokenizer.Status(), StatusIs(Error::CBOR_INVALID_BINARY, 0u)); } } @@ -688,24 +622,85 @@ TEST(EncodeDecodeDoubleTest, RoundtripsAdditionalExamples) { } } +TEST(EncodeDecodeEnvelopesTest, MessageWithNestingAndEnvelopeContentsAccess) { + // This encodes and decodes the following message, which has some nesting + // and therefore envelopes. + // { "inner": { "foo" : "bar" } } + // The decoding is done with the Tokenizer, + // and we test both ::GetEnvelopeContents and GetEnvelope here. + std::vector<uint8_t> message; + EnvelopeEncoder envelope; + envelope.EncodeStart(&message); + size_t pos_after_header = message.size(); + message.push_back(EncodeIndefiniteLengthMapStart()); + EncodeString8(SpanFrom("inner"), &message); + size_t pos_inside_inner = message.size(); + EnvelopeEncoder inner_envelope; + inner_envelope.EncodeStart(&message); + size_t pos_inside_inner_contents = message.size(); + message.push_back(EncodeIndefiniteLengthMapStart()); + EncodeString8(SpanFrom("foo"), &message); + EncodeString8(SpanFrom("bar"), &message); + message.push_back(EncodeStop()); + size_t pos_after_inner = message.size(); + inner_envelope.EncodeStop(&message); + message.push_back(EncodeStop()); + envelope.EncodeStop(&message); + + CBORTokenizer tokenizer(SpanFrom(message)); + ASSERT_EQ(CBORTokenTag::ENVELOPE, tokenizer.TokenTag()); + EXPECT_EQ(message.size(), tokenizer.GetEnvelope().size()); + EXPECT_EQ(message.data(), tokenizer.GetEnvelope().data()); + EXPECT_EQ(message.data() + pos_after_header, + tokenizer.GetEnvelopeContents().data()); + EXPECT_EQ(message.size() - pos_after_header, + tokenizer.GetEnvelopeContents().size()); + tokenizer.EnterEnvelope(); + ASSERT_EQ(CBORTokenTag::MAP_START, tokenizer.TokenTag()); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::STRING8, tokenizer.TokenTag()); + EXPECT_EQ("inner", std::string(tokenizer.GetString8().begin(), + tokenizer.GetString8().end())); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::ENVELOPE, tokenizer.TokenTag()); + EXPECT_EQ(message.data() + pos_inside_inner, tokenizer.GetEnvelope().data()); + EXPECT_EQ(pos_after_inner - pos_inside_inner, tokenizer.GetEnvelope().size()); + EXPECT_EQ(message.data() + pos_inside_inner_contents, + tokenizer.GetEnvelopeContents().data()); + EXPECT_EQ(pos_after_inner - pos_inside_inner_contents, + tokenizer.GetEnvelopeContents().size()); + tokenizer.EnterEnvelope(); + ASSERT_EQ(CBORTokenTag::MAP_START, tokenizer.TokenTag()); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::STRING8, tokenizer.TokenTag()); + EXPECT_EQ("foo", std::string(tokenizer.GetString8().begin(), + tokenizer.GetString8().end())); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::STRING8, tokenizer.TokenTag()); + EXPECT_EQ("bar", std::string(tokenizer.GetString8().begin(), + tokenizer.GetString8().end())); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::STOP, tokenizer.TokenTag()); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::STOP, tokenizer.TokenTag()); + tokenizer.Next(); + ASSERT_EQ(CBORTokenTag::DONE, tokenizer.TokenTag()); +} + // ============================================================================= // cbor::NewCBOREncoder - for encoding from a streaming parser // ============================================================================= -void EncodeUTF8ForTest(const std::string& key, std::vector<uint8_t>* out) { - EncodeString8(SpanFrom(key), out); -} TEST(JSONToCBOREncoderTest, SevenBitStrings) { // When a string can be represented as 7 bit ASCII, the encoder will use the // STRING (major Type 3) type, so the actual characters end up as bytes on the // wire. std::vector<uint8_t> encoded; Status status; - std::unique_ptr<StreamingParserHandler> encoder = - NewCBOREncoder(&encoded, &status); + std::unique_ptr<ParserHandler> encoder = NewCBOREncoder(&encoded, &status); std::vector<uint16_t> utf16 = {'f', 'o', 'o'}; encoder->HandleString16(span<uint16_t>(utf16.data(), utf16.size())); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); // Here we assert that indeed, seven bit strings are represented as // bytes on the wire, "foo" is just "foo". EXPECT_THAT(encoded, @@ -714,7 +709,7 @@ TEST(JSONToCBOREncoderTest, SevenBitStrings) { } TEST(JsonCborRoundtrip, EncodingDecoding) { - // Hits all the cases except binary and error in StreamingParserHandler, first + // Hits all the cases except binary and error in ParserHandler, first // parsing a JSON message into CBOR, then parsing it back from CBOR into JSON. std::string json = "{" @@ -728,14 +723,13 @@ TEST(JsonCborRoundtrip, EncodingDecoding) { "}"; std::vector<uint8_t> encoded; Status status; - std::unique_ptr<StreamingParserHandler> encoder = - NewCBOREncoder(&encoded, &status); + std::unique_ptr<ParserHandler> encoder = NewCBOREncoder(&encoded, &status); span<uint8_t> ascii_in = SpanFrom(json); - json::ParseJSON(GetTestPlatform(), ascii_in, encoder.get()); + json::ParseJSON(ascii_in, encoder.get()); std::vector<uint8_t> expected = { - 0xd8, // envelope - 0x5a, // byte string with 32 bit length - 0, 0, 0, 94, // length is 94 bytes + 0xd8, 0x18, // envelope + 0x5a, // byte string with 32 bit length + 0, 0, 0, 95, // length is 95 bytes }; expected.push_back(0xbf); // indef length map start EncodeString8(SpanFrom("string"), &expected); @@ -758,7 +752,8 @@ TEST(JsonCborRoundtrip, EncodingDecoding) { EncodeString8(SpanFrom("null"), &expected); expected.push_back(7 << 5 | 22); // RFC 7049 Section 2.3, Table 2: null EncodeString8(SpanFrom("array"), &expected); - expected.push_back(0xd8); // envelope + expected.push_back(0xd8); // envelope (tag first byte) + expected.push_back(0x18); // envelope (tag second byte) expected.push_back(0x5a); // byte string with 32 bit length // the length is 5 bytes (that's up to end indef length array below). for (uint8_t ch : std::array<uint8_t, 4>{{0, 0, 0, 5}}) @@ -774,10 +769,10 @@ TEST(JsonCborRoundtrip, EncodingDecoding) { // And now we roundtrip, decoding the message we just encoded. std::string decoded; - std::unique_ptr<StreamingParserHandler> json_encoder = - NewJSONEncoder(&GetTestPlatform(), &decoded, &status); + std::unique_ptr<ParserHandler> json_encoder = + json::NewJSONEncoder(&decoded, &status); ParseCBOR(span<uint8_t>(encoded.data(), encoded.size()), json_encoder.get()); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ(json, decoded); } @@ -790,21 +785,20 @@ TEST(JsonCborRoundtrip, MoreRoundtripExamples) { SCOPED_TRACE(std::string("example: ") + json); std::vector<uint8_t> encoded; Status status; - std::unique_ptr<StreamingParserHandler> encoder = - NewCBOREncoder(&encoded, &status); + std::unique_ptr<ParserHandler> encoder = NewCBOREncoder(&encoded, &status); span<uint8_t> ascii_in = SpanFrom(json); - ParseJSON(GetTestPlatform(), ascii_in, encoder.get()); + json::ParseJSON(ascii_in, encoder.get()); std::string decoded; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &decoded, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&decoded, &status); ParseCBOR(span<uint8_t>(encoded.data(), encoded.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ(json, decoded); } } TEST(JSONToCBOREncoderTest, HelloWorldBinary_WithTripToJson) { - // The StreamingParserHandler::HandleBinary is a special case: The JSON parser + // The ParserHandler::HandleBinary is a special case: The JSON parser // will never call this method, because JSON does not natively support the // binary type. So, we can't fully roundtrip. However, the other direction // works: binary will be rendered in JSON, as a base64 string. So, we make @@ -813,8 +807,7 @@ TEST(JSONToCBOREncoderTest, HelloWorldBinary_WithTripToJson) { // containing "Hello, world.". std::vector<uint8_t> encoded; Status status; - std::unique_ptr<StreamingParserHandler> encoder = - NewCBOREncoder(&encoded, &status); + std::unique_ptr<ParserHandler> encoder = NewCBOREncoder(&encoded, &status); encoder->HandleMapBegin(); // Emit a key. std::vector<uint16_t> key = {'f', 'o', 'o'}; @@ -824,15 +817,14 @@ TEST(JSONToCBOREncoderTest, HelloWorldBinary_WithTripToJson) { encoder->HandleBinary(SpanFrom(std::vector<uint8_t>{ 'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '.'})); encoder->HandleMapEnd(); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); // Now drive the json writer via the CBOR decoder. std::string decoded; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &decoded, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&decoded, &status); ParseCBOR(SpanFrom(encoded), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); // "Hello, world." in base64 is "SGVsbG8sIHdvcmxkLg==". EXPECT_EQ("{\"foo\":\"SGVsbG8sIHdvcmxkLg==\"}", decoded); } @@ -848,18 +840,18 @@ TEST(ParseCBORTest, ParseEmptyCBORMessage) { std::vector<uint8_t> in = {0xd8, 0x5a, 0, 0, 0, 2, 0xbf, 0xff}; std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(in.data(), in.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ("{}", out); } TEST(ParseCBORTest, ParseCBORHelloWorld) { const uint8_t kPayloadLen = 27; std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, kPayloadLen}; - bytes.push_back(0xbf); // start indef length map. - EncodeString8(SpanFrom("msg"), &bytes); // key: msg + bytes.push_back(0xbf); // start indef length map. + EncodeString8(SpanFrom("msg"), &bytes); // key: msg // Now write the value, the familiar "Hello, 🌎." where the globe is expressed // as two utf16 chars. bytes.push_back(/*major type=*/2 << 5 | /*additional info=*/20); @@ -872,21 +864,17 @@ TEST(ParseCBORTest, ParseCBORHelloWorld) { std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ("{\"msg\":\"Hello, \\ud83c\\udf0e.\"}", out); } TEST(ParseCBORTest, UTF8IsSupportedInKeys) { const uint8_t kPayloadLen = 11; - std::vector<uint8_t> bytes = {cbor::InitialByteForEnvelope(), - cbor::InitialByteFor32BitLengthByteString(), - 0, - 0, - 0, - kPayloadLen}; + std::vector<uint8_t> bytes = {0xd8, 0x5a, // envelope + 0, 0, 0, kPayloadLen}; bytes.push_back(cbor::EncodeIndefiniteLengthMapStart()); // Two UTF16 chars. EncodeString8(SpanFrom("🌎"), &bytes); @@ -897,10 +885,10 @@ TEST(ParseCBORTest, UTF8IsSupportedInKeys) { std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ("{\"\\ud83c\\udf0e\":\"\\u263e\"}", out); } @@ -908,24 +896,10 @@ TEST(ParseCBORTest, NoInputError) { std::vector<uint8_t> in = {}; std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(in.data(), in.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_NO_INPUT, status.error); - EXPECT_EQ("", out); -} - -TEST(ParseCBORTest, InvalidStartByteError) { - // Here we test that some actual json, which usually starts with {, - // is not considered CBOR. CBOR messages must start with 0x5a, the - // envelope start byte. - std::string json = "{\"msg\": \"Hello, world.\"}"; - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - ParseCBOR(SpanFrom(json), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_START_BYTE, status.error); + EXPECT_THAT(status, StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE, 0u)); EXPECT_EQ("", out); } @@ -938,11 +912,11 @@ TEST(ParseCBORTest, UnexpectedEofExpectedValueError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE, status.error); - EXPECT_EQ(bytes.size(), status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE, + bytes.size())); EXPECT_EQ("", out); } @@ -956,11 +930,11 @@ TEST(ParseCBORTest, UnexpectedEofInArrayError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_UNEXPECTED_EOF_IN_ARRAY, status.error); - EXPECT_EQ(bytes.size(), status.pos); + EXPECT_THAT(status, + StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_ARRAY, bytes.size())); EXPECT_EQ("", out); } @@ -971,11 +945,85 @@ TEST(ParseCBORTest, UnexpectedEofInMapError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_UNEXPECTED_EOF_IN_MAP, status.error); - EXPECT_EQ(7u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_UNEXPECTED_EOF_IN_MAP, 7u)); + EXPECT_EQ("", out); +} + +TEST(ParseCBORTest, EnvelopeEncodingLegacy) { + constexpr uint8_t kPayloadLen = 8; + std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, kPayloadLen}; // envelope + bytes.push_back(cbor::EncodeIndefiniteLengthMapStart()); + EncodeString8(SpanFrom("foo"), &bytes); + EncodeInt32(42, &bytes); + bytes.emplace_back(EncodeStop()); + std::string out; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); + ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); + EXPECT_THAT(status, StatusIsOk()); + EXPECT_EQ(out, "{\"foo\":42}"); +} + +TEST(ParseCBORTest, EnvelopeEncodingBySpec) { + constexpr uint8_t kPayloadLen = 8; + std::vector<uint8_t> bytes = {0xd8, 0x18, 0x5a, 0, + 0, 0, kPayloadLen}; // envelope + bytes.push_back(cbor::EncodeIndefiniteLengthMapStart()); + EncodeString8(SpanFrom("foo"), &bytes); + EncodeInt32(42, &bytes); + bytes.emplace_back(EncodeStop()); + std::string out; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); + ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); + EXPECT_THAT(status, StatusIsOk()); + EXPECT_EQ(out, "{\"foo\":42}"); +} + +TEST(ParseCBORTest, NoEmptyEnvelopesAllowed) { + std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, 0}; // envelope + std::string out; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); + ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); + EXPECT_THAT(status, StatusIs(Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE, + bytes.size())); + EXPECT_EQ("", out); +} + +TEST(ParseCBORTest, OnlyMapsAndArraysSupportedInsideEnvelopes) { + // The top level is a map with key "foo", and the value + // is an envelope that contains just a number (1). We don't + // allow numbers to be contained in an envelope though, only + // maps and arrays. + constexpr uint8_t kPayloadLen = 8; + std::vector<uint8_t> bytes = {0xd8, + 0x5a, + 0, + 0, + 0, + kPayloadLen, // envelope + EncodeIndefiniteLengthMapStart()}; + EncodeString8(SpanFrom("foo"), &bytes); + for (uint8_t byte : {0xd8, 0x5a, 0, 0, 0, /*payload_len*/ 1}) + bytes.emplace_back(byte); + size_t error_pos = bytes.size(); + bytes.push_back(1); // Envelope contents / payload = number 1. + bytes.emplace_back(EncodeStop()); + + std::string out; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); + ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); + EXPECT_THAT(status, StatusIs(Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE, + error_pos)); EXPECT_EQ("", out); } @@ -988,11 +1036,10 @@ TEST(ParseCBORTest, InvalidMapKeyError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_MAP_KEY, status.error); - EXPECT_EQ(7u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_MAP_KEY, 7u)); EXPECT_EQ("", out); } @@ -1019,22 +1066,20 @@ TEST(ParseCBORTest, StackLimitExceededError) { std::vector<uint8_t> bytes = MakeNestedCBOR(3); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); EXPECT_EQ("{\"key\":{\"key\":{\"key\":\"innermost_value\"}}}", out); } { // Depth 300: no stack limit exceeded. std::vector<uint8_t> bytes = MakeNestedCBOR(300); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); } // We just want to know the length of one opening map so we can compute @@ -1050,21 +1095,21 @@ TEST(ParseCBORTest, StackLimitExceededError) { std::vector<uint8_t> bytes = MakeNestedCBOR(301); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_STACK_LIMIT_EXCEEDED, status.error); - EXPECT_EQ(opening_segment_size * 301, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_STACK_LIMIT_EXCEEDED, + opening_segment_size * 301)); } { // Depth 320: still limit exceeded, and at the same pos as for 1001 std::vector<uint8_t> bytes = MakeNestedCBOR(320); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_STACK_LIMIT_EXCEEDED, status.error); - EXPECT_EQ(opening_segment_size * 301, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_STACK_LIMIT_EXCEEDED, + opening_segment_size * 301)); } } @@ -1079,11 +1124,10 @@ TEST(ParseCBORTest, UnsupportedValueError) { std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_UNSUPPORTED_VALUE, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_UNSUPPORTED_VALUE, error_pos)); EXPECT_EQ("", out); } @@ -1102,11 +1146,10 @@ TEST(ParseCBORTest, InvalidString16Error) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_STRING16, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_STRING16, error_pos)); EXPECT_EQ("", out); } @@ -1122,11 +1165,10 @@ TEST(ParseCBORTest, InvalidString8Error) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_STRING8, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_STRING8, error_pos)); EXPECT_EQ("", out); } @@ -1144,11 +1186,10 @@ TEST(ParseCBORTest, InvalidBinaryError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_BINARY, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_BINARY, error_pos)); EXPECT_EQ("", out); } @@ -1165,11 +1206,10 @@ TEST(ParseCBORTest, InvalidDoubleError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_DOUBLE, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_DOUBLE, error_pos)); EXPECT_EQ("", out); } @@ -1186,37 +1226,121 @@ TEST(ParseCBORTest, InvalidSignedError) { EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_INVALID_INT32, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_INT32, error_pos)); EXPECT_EQ("", out); } TEST(ParseCBORTest, TrailingJunk) { - constexpr uint8_t kPayloadLen = 35; + constexpr uint8_t kPayloadLen = 12; std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, kPayloadLen, // envelope 0xbf}; // map start EncodeString8(SpanFrom("key"), &bytes); EncodeString8(SpanFrom("value"), &bytes); bytes.push_back(0xff); // Up to here, it's a perfectly fine msg. + ASSERT_EQ(kPayloadLen, bytes.size() - 6); size_t error_pos = bytes.size(); + // Now write some trailing junk after the message. EncodeString8(SpanFrom("trailing junk"), &bytes); - internals::WriteTokenStart(MajorType::UNSIGNED, std::numeric_limits<uint64_t>::max(), &bytes); - EXPECT_EQ(kPayloadLen, bytes.size() - 6); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); + ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); + EXPECT_THAT(status, StatusIs(Error::CBOR_TRAILING_JUNK, error_pos)); + EXPECT_EQ("", out); +} + +TEST(ParseCBORTest, EnvelopeContentsLengthMismatch) { + constexpr uint8_t kPartialPayloadLen = 5; + std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, + 0, 0, kPartialPayloadLen, // envelope + 0xbf}; // map start + EncodeString8(SpanFrom("key"), &bytes); + // kPartialPayloadLen would need to indicate the length of the entire map, + // all the way past the 0xff map stop character. Instead, it only covers + // a portion of the map. + EXPECT_EQ(bytes.size() - 6, kPartialPayloadLen); + EncodeString8(SpanFrom("value"), &bytes); + bytes.push_back(0xff); // map stop + + std::string out; + Status status; + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(span<uint8_t>(bytes.data(), bytes.size()), json_writer.get()); - EXPECT_EQ(Error::CBOR_TRAILING_JUNK, status.error); - EXPECT_EQ(error_pos, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, + bytes.size())); EXPECT_EQ("", out); } +// ============================================================================= +// cbor::EnvelopeHeader - for parsing envelope headers +// ============================================================================= +// Note most of converage for this is historically on a higher level of +// ParseCBOR(). This provides just a few essnetial scenarios for now. + +template <typename T> +class EnvelopeHeaderTest : public ::testing::Test {}; + +TEST(EnvelopeHeaderTest, EnvelopeStartLegacy) { + std::vector<uint8_t> bytes = {0xd8, // Tag start + 0x5a, // Byte string, 4 bytes length + 0, 0, 0, 2, // Length + 0xbf, 0xff}; // map start / map end + auto result = EnvelopeHeader::Parse(SpanFrom(bytes)); + ASSERT_THAT(result.status(), StatusIsOk()); + EXPECT_THAT((*result).header_size(), Eq(6u)); + EXPECT_THAT((*result).content_size(), Eq(2u)); + EXPECT_THAT((*result).outer_size(), Eq(8u)); +} + +TEST(EnvelopeHeaderTest, EnvelopeStartSpecCompliant) { + std::vector<uint8_t> bytes = {0xd8, // Tag start + 0x18, // Tag type (CBOR) + 0x5a, // Byte string, 4 bytes length + 0, 0, 0, 2, // Length + 0xbf, 0xff}; // map start / map end + auto result = EnvelopeHeader::Parse(SpanFrom(bytes)); + ASSERT_THAT(result.status(), StatusIsOk()); + EXPECT_THAT((*result).header_size(), Eq(7u)); + EXPECT_THAT((*result).content_size(), Eq(2u)); + EXPECT_THAT((*result).outer_size(), Eq(9u)); +} + +TEST(EnvelopeHeaderTest, EnvelopeStartShortLen) { + std::vector<uint8_t> bytes = {0xd8, // Tag start + 0x18, // Tag type (CBOR) + 0x58, // Byte string, 1 byte length + 2, // Length + 0xbf, 0xff}; // map start / map end + auto result = EnvelopeHeader::Parse(SpanFrom(bytes)); + ASSERT_THAT(result.status(), StatusIsOk()); + EXPECT_THAT((*result).header_size(), Eq(4u)); + EXPECT_THAT((*result).content_size(), Eq(2u)); + EXPECT_THAT((*result).outer_size(), Eq(6u)); +} + +TEST(EnvelopeHeaderTest, ParseFragment) { + std::vector<uint8_t> bytes = {0xd8, // Tag start + 0x18, // Tag type (CBOR) + 0x5a, // Byte string, 4 bytes length + 0, 0, 0, 20, 0xbf}; // map start + auto result = EnvelopeHeader::ParseFromFragment(SpanFrom(bytes)); + ASSERT_THAT(result.status(), StatusIsOk()); + EXPECT_THAT((*result).header_size(), Eq(7u)); + EXPECT_THAT((*result).content_size(), Eq(20u)); + EXPECT_THAT((*result).outer_size(), Eq(27u)); + + result = EnvelopeHeader::Parse(SpanFrom(bytes)); + ASSERT_THAT(result.status(), + StatusIs(Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, 8)); +} + // ============================================================================= // cbor::AppendString8EntryToMap - for limited in-place editing of messages // ============================================================================= @@ -1227,7 +1351,7 @@ class AppendString8EntryToMapTest : public ::testing::Test {}; using ContainerTestTypes = ::testing::Types<std::vector<uint8_t>, std::string>; TYPED_TEST_SUITE(AppendString8EntryToMapTest, ContainerTestTypes); -TYPED_TEST(AppendString8EntryToMapTest, AppendsEntrySuccessfully) { +TEST(AppendString8EntryToMapTest, AppendsEntrySuccessfully) { constexpr uint8_t kPayloadLen = 12; std::vector<uint8_t> bytes = {0xd8, 0x5a, 0, 0, 0, kPayloadLen, // envelope 0xbf}; // map start @@ -1237,696 +1361,89 @@ TYPED_TEST(AppendString8EntryToMapTest, AppendsEntrySuccessfully) { bytes.push_back(0xff); // A perfectly fine cbor message. EXPECT_EQ(kPayloadLen, bytes.size() - pos_before_payload); - TypeParam msg(bytes.begin(), bytes.end()); + std::vector<uint8_t> msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("foo"), SpanFrom("bar"), &msg); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); std::string out; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(SpanFrom(msg), json_writer.get()); EXPECT_EQ("{\"key\":\"value\",\"foo\":\"bar\"}", out); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); } TYPED_TEST(AppendString8EntryToMapTest, AppendThreeEntries) { std::vector<uint8_t> encoded = { 0xd8, 0x5a, 0, 0, 0, 2, EncodeIndefiniteLengthMapStart(), EncodeStop()}; - EXPECT_EQ(Error::OK, AppendString8EntryToCBORMap(SpanFrom("key"), - SpanFrom("value"), &encoded) - .error); - EXPECT_EQ(Error::OK, AppendString8EntryToCBORMap(SpanFrom("key1"), - SpanFrom("value1"), &encoded) - .error); - EXPECT_EQ(Error::OK, AppendString8EntryToCBORMap(SpanFrom("key2"), - SpanFrom("value2"), &encoded) - .error); + EXPECT_THAT( + AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &encoded), + StatusIsOk()); + EXPECT_THAT(AppendString8EntryToCBORMap(SpanFrom("key1"), SpanFrom("value1"), + &encoded), + StatusIsOk()); + EXPECT_THAT(AppendString8EntryToCBORMap(SpanFrom("key2"), SpanFrom("value2"), + &encoded), + StatusIsOk()); TypeParam msg(encoded.begin(), encoded.end()); std::string out; Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); + std::unique_ptr<ParserHandler> json_writer = + json::NewJSONEncoder(&out, &status); ParseCBOR(SpanFrom(msg), json_writer.get()); EXPECT_EQ("{\"key\":\"value\",\"key1\":\"value1\",\"key2\":\"value2\"}", out); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); + EXPECT_THAT(status, StatusIsOk()); } -TYPED_TEST(AppendString8EntryToMapTest, MapStartExpected_Error) { - std::vector<uint8_t> bytes = { +TEST(AppendString8EntryToMapTest, MapStartExpected_Error) { + std::vector<uint8_t> msg = { 0xd8, 0x5a, 0, 0, 0, 1, EncodeIndefiniteLengthArrayStart()}; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_MAP_START_EXPECTED, status.error); - EXPECT_EQ(6u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_MAP_START_EXPECTED, 6u)); } -TYPED_TEST(AppendString8EntryToMapTest, MapStopExpected_Error) { - std::vector<uint8_t> bytes = { +TEST(AppendString8EntryToMapTest, MapStopExpected_Error) { + std::vector<uint8_t> msg = { 0xd8, 0x5a, 0, 0, 0, 2, EncodeIndefiniteLengthMapStart(), 42}; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_MAP_STOP_EXPECTED, status.error); - EXPECT_EQ(7u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_MAP_STOP_EXPECTED, 7u)); } -TYPED_TEST(AppendString8EntryToMapTest, InvalidEnvelope_Error) { +TEST(AppendString8EntryToMapTest, InvalidEnvelope_Error) { { // Second byte is wrong. - std::vector<uint8_t> bytes = { + std::vector<uint8_t> msg = { 0x5a, 0, 0, 0, 2, EncodeIndefiniteLengthMapStart(), EncodeStop(), 0}; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_INVALID_ENVELOPE, status.error); - EXPECT_EQ(0u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_ENVELOPE, 0u)); } { // Second byte is wrong. - std::vector<uint8_t> bytes = { + std::vector<uint8_t> msg = { 0xd8, 0x7a, 0, 0, 0, 2, EncodeIndefiniteLengthMapStart(), EncodeStop()}; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_INVALID_ENVELOPE, status.error); - EXPECT_EQ(0u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_ENVELOPE, 1u)); } { // Invalid envelope size example. - std::vector<uint8_t> bytes = { + std::vector<uint8_t> msg = { 0xd8, 0x5a, 0, 0, 0, 3, EncodeIndefiniteLengthMapStart(), EncodeStop(), }; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_INVALID_ENVELOPE, status.error); - EXPECT_EQ(0u, status.pos); + EXPECT_THAT(status, + StatusIs(Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, 8u)); } { // Invalid envelope size example. - std::vector<uint8_t> bytes = { + std::vector<uint8_t> msg = { 0xd8, 0x5a, 0, 0, 0, 1, EncodeIndefiniteLengthMapStart(), EncodeStop(), }; - TypeParam msg(bytes.begin(), bytes.end()); Status status = AppendString8EntryToCBORMap(SpanFrom("key"), SpanFrom("value"), &msg); - EXPECT_EQ(Error::CBOR_INVALID_ENVELOPE, status.error); - EXPECT_EQ(0u, status.pos); + EXPECT_THAT(status, StatusIs(Error::CBOR_INVALID_ENVELOPE, 0)); } } } // namespace cbor - -namespace json { - -// ============================================================================= -// json::NewJSONEncoder - for encoding streaming parser events as JSON -// ============================================================================= - -void WriteUTF8AsUTF16(StreamingParserHandler* writer, const std::string& utf8) { - writer->HandleString16(SpanFrom(UTF8ToUTF16(SpanFrom(utf8)))); -} - -TEST(JsonEncoder, OverlongEncodings) { - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - - // We encode 0x7f, which is the DEL ascii character, as a 4 byte UTF8 - // sequence. This is called an overlong encoding, because only 1 byte - // is needed to represent 0x7f as UTF8. - std::vector<uint8_t> chars = { - 0xf0, // Starts 4 byte utf8 sequence - 0x80, // continuation byte - 0x81, // continuation byte w/ payload bit 7 set to 1. - 0xbf, // continuation byte w/ payload bits 0-6 set to 11111. - }; - writer->HandleString8(SpanFrom(chars)); - EXPECT_EQ("\"\"", out); // Empty string means that 0x7f was rejected (good). -} - -TEST(JsonStdStringWriterTest, HelloWorld) { - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleMapBegin(); - WriteUTF8AsUTF16(writer.get(), "msg1"); - WriteUTF8AsUTF16(writer.get(), "Hello, 🌎."); - std::string key = "msg1-as-utf8"; - std::string value = "Hello, 🌎."; - writer->HandleString8(SpanFrom(key)); - writer->HandleString8(SpanFrom(value)); - WriteUTF8AsUTF16(writer.get(), "msg2"); - WriteUTF8AsUTF16(writer.get(), "\\\b\r\n\t\f\""); - WriteUTF8AsUTF16(writer.get(), "nested"); - writer->HandleMapBegin(); - WriteUTF8AsUTF16(writer.get(), "double"); - writer->HandleDouble(3.1415); - WriteUTF8AsUTF16(writer.get(), "int"); - writer->HandleInt32(-42); - WriteUTF8AsUTF16(writer.get(), "bool"); - writer->HandleBool(false); - WriteUTF8AsUTF16(writer.get(), "null"); - writer->HandleNull(); - writer->HandleMapEnd(); - WriteUTF8AsUTF16(writer.get(), "array"); - writer->HandleArrayBegin(); - writer->HandleInt32(1); - writer->HandleInt32(2); - writer->HandleInt32(3); - writer->HandleArrayEnd(); - writer->HandleMapEnd(); - EXPECT_TRUE(status.ok()); - EXPECT_EQ( - "{\"msg1\":\"Hello, \\ud83c\\udf0e.\"," - "\"msg1-as-utf8\":\"Hello, \\ud83c\\udf0e.\"," - "\"msg2\":\"\\\\\\b\\r\\n\\t\\f\\\"\"," - "\"nested\":{\"double\":3.1415,\"int\":-42," - "\"bool\":false,\"null\":null},\"array\":[1,2,3]}", - out); -} - -TEST(JsonStdStringWriterTest, RepresentingNonFiniteValuesAsNull) { - // JSON can't represent +Infinity, -Infinity, or NaN. - // So in practice it's mapped to null. - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleMapBegin(); - writer->HandleString8(SpanFrom("Infinity")); - writer->HandleDouble(std::numeric_limits<double>::infinity()); - writer->HandleString8(SpanFrom("-Infinity")); - writer->HandleDouble(-std::numeric_limits<double>::infinity()); - writer->HandleString8(SpanFrom("NaN")); - writer->HandleDouble(std::numeric_limits<double>::quiet_NaN()); - writer->HandleMapEnd(); - EXPECT_TRUE(status.ok()); - EXPECT_EQ("{\"Infinity\":null,\"-Infinity\":null,\"NaN\":null}", out); -} - -TEST(JsonStdStringWriterTest, BinaryEncodedAsJsonString) { - // The encoder emits binary submitted to StreamingParserHandler::HandleBinary - // as base64. The following three examples are taken from - // https://en.wikipedia.org/wiki/Base64. - { - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M', 'a', 'n'}))); - EXPECT_TRUE(status.ok()); - EXPECT_EQ("\"TWFu\"", out); - } - { - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M', 'a'}))); - EXPECT_TRUE(status.ok()); - EXPECT_EQ("\"TWE=\"", out); - } - { - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M'}))); - EXPECT_TRUE(status.ok()); - EXPECT_EQ("\"TQ==\"", out); - } - { // "Hello, world.", verified with base64decode.org. - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleBinary(SpanFrom(std::vector<uint8_t>( - {'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '.'}))); - EXPECT_TRUE(status.ok()); - EXPECT_EQ("\"SGVsbG8sIHdvcmxkLg==\"", out); - } -} - -TEST(JsonStdStringWriterTest, HandlesErrors) { - // When an error is sent via HandleError, it saves it in the provided - // status and clears the output. - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&GetTestPlatform(), &out, &status); - writer->HandleMapBegin(); - WriteUTF8AsUTF16(writer.get(), "msg1"); - writer->HandleError(Status{Error::JSON_PARSER_VALUE_EXPECTED, 42}); - EXPECT_EQ(Error::JSON_PARSER_VALUE_EXPECTED, status.error); - EXPECT_EQ(42u, status.pos); - EXPECT_EQ("", out); -} - -// We'd use Gmock but unfortunately it only handles copyable return types. -class MockPlatform : public Platform { - public: - // Not implemented. - bool StrToD(const char* str, double* result) const override { return false; } - - // A map with pre-registered responses for DToSTr. - std::map<double, std::string> dtostr_responses_; - - std::unique_ptr<char[]> DToStr(double value) const override { - auto it = dtostr_responses_.find(value); - CHECK(it != dtostr_responses_.end()); - const std::string& str = it->second; - std::unique_ptr<char[]> response(new char[str.size() + 1]); - memcpy(response.get(), str.c_str(), str.size() + 1); - return response; - } -}; - -TEST(JsonStdStringWriterTest, DoubleToString) { - // This "broken" platform responds without the leading 0 before the - // decimal dot, so it'd be invalid JSON. - MockPlatform platform; - platform.dtostr_responses_[.1] = ".1"; - platform.dtostr_responses_[-.7] = "-.7"; - - std::string out; - Status status; - std::unique_ptr<StreamingParserHandler> writer = - NewJSONEncoder(&platform, &out, &status); - writer->HandleArrayBegin(); - writer->HandleDouble(.1); - writer->HandleDouble(-.7); - writer->HandleArrayEnd(); - EXPECT_EQ("[0.1,-0.7]", out); -} - -// ============================================================================= -// json::ParseJSON - for receiving streaming parser events for JSON -// ============================================================================= - -class Log : public StreamingParserHandler { - public: - void HandleMapBegin() override { log_ << "map begin\n"; } - - void HandleMapEnd() override { log_ << "map end\n"; } - - void HandleArrayBegin() override { log_ << "array begin\n"; } - - void HandleArrayEnd() override { log_ << "array end\n"; } - - void HandleString8(span<uint8_t> chars) override { - log_ << "string8: " << std::string(chars.begin(), chars.end()) << "\n"; - } - - void HandleString16(span<uint16_t> chars) override { - log_ << "string16: " << UTF16ToUTF8(chars) << "\n"; - } - - void HandleBinary(span<uint8_t> bytes) override { - // JSON doesn't have native support for arbitrary bytes, so our parser will - // never call this. - CHECK(false); - } - - void HandleDouble(double value) override { - log_ << "double: " << value << "\n"; - } - - void HandleInt32(int32_t value) override { log_ << "int: " << value << "\n"; } - - void HandleBool(bool value) override { log_ << "bool: " << value << "\n"; } - - void HandleNull() override { log_ << "null\n"; } - - void HandleError(Status status) override { status_ = status; } - - std::string str() const { return status_.ok() ? log_.str() : ""; } - - Status status() const { return status_; } - - private: - std::ostringstream log_; - Status status_; -}; - -class JsonParserTest : public ::testing::Test { - protected: - Log log_; -}; - -TEST_F(JsonParserTest, SimpleDictionary) { - std::string json = "{\"foo\": 42}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: foo\n" - "int: 42\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, UsAsciiDelCornerCase) { - // DEL (0x7f) is a 7 bit US-ASCII character, and while it is a control - // character according to Unicode, it's not considered a control - // character in https://tools.ietf.org/html/rfc7159#section-7, so - // it can be placed directly into the JSON string, without JSON escaping. - std::string json = "{\"foo\": \"a\x7f\"}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: foo\n" - "string16: a\x7f\n" - "map end\n", - log_.str()); - - // We've seen an implementation of UTF16ToUTF8 which would replace the DEL - // character with ' ', so this simple roundtrip tests the routines in - // encoding_test_helper.h, to make test failures of the above easier to - // diagnose. - std::vector<uint16_t> utf16 = UTF8ToUTF16(SpanFrom(json)); - EXPECT_EQ(json, UTF16ToUTF8(SpanFrom(utf16))); -} - -TEST_F(JsonParserTest, Whitespace) { - std::string json = "\n {\n\"msg\"\n: \v\"Hello, world.\"\t\r}\t"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: msg\n" - "string16: Hello, world.\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, NestedDictionary) { - std::string json = "{\"foo\": {\"bar\": {\"baz\": 1}, \"bar2\": 2}}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: foo\n" - "map begin\n" - "string16: bar\n" - "map begin\n" - "string16: baz\n" - "int: 1\n" - "map end\n" - "string16: bar2\n" - "int: 2\n" - "map end\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, Doubles) { - std::string json = "{\"foo\": 3.1415, \"bar\": 31415e-4}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: foo\n" - "double: 3.1415\n" - "string16: bar\n" - "double: 3.1415\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, Unicode) { - // Globe character. 0xF0 0x9F 0x8C 0x8E in utf8, 0xD83C 0xDF0E in utf16. - std::string json = "{\"msg\": \"Hello, \\uD83C\\uDF0E.\"}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: msg\n" - "string16: Hello, 🌎.\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, Unicode_ParseUtf16) { - // Globe character. utf8: 0xF0 0x9F 0x8C 0x8E; utf16: 0xD83C 0xDF0E. - // Crescent moon character. utf8: 0xF0 0x9F 0x8C 0x99; utf16: 0xD83C 0xDF19. - - // We provide the moon with json escape, but the earth as utf16 input. - // Either way they arrive as utf8 (after decoding in log_.str()). - std::vector<uint16_t> json = - UTF8ToUTF16(SpanFrom("{\"space\": \"🌎 \\uD83C\\uDF19.\"}")); - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: space\n" - "string16: 🌎 🌙.\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, Unicode_ParseUtf8) { - // Used below: - // гласность - example for 2 byte utf8, Russian word "glasnost" - // 屋 - example for 3 byte utf8, Chinese word for "house" - // 🌎 - example for 4 byte utf8: 0xF0 0x9F 0x8C 0x8E; utf16: 0xD83C 0xDF0E. - // 🌙 - example for escapes: utf8: 0xF0 0x9F 0x8C 0x99; utf16: 0xD83C 0xDF19. - - // We provide the moon with json escape, but the earth as utf8 input. - // Either way they arrive as utf8 (after decoding in log_.str()). - std::string json = - "{" - "\"escapes\": \"\\uD83C\\uDF19\"," - "\"2 byte\":\"гласность\"," - "\"3 byte\":\"屋\"," - "\"4 byte\":\"🌎\"" - "}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: escapes\n" - "string16: 🌙\n" - "string16: 2 byte\n" - "string16: гласность\n" - "string16: 3 byte\n" - "string16: 屋\n" - "string16: 4 byte\n" - "string16: 🌎\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, UnprocessedInputRemainsError) { - // Trailing junk after the valid JSON. - std::string json = "{\"foo\": 3.1415} junk"; - size_t junk_idx = json.find("junk"); - EXPECT_NE(junk_idx, std::string::npos); - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS, log_.status().error); - EXPECT_EQ(junk_idx, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -std::string MakeNestedJson(int depth) { - std::string json; - for (int ii = 0; ii < depth; ++ii) - json += "{\"foo\":"; - json += "42"; - for (int ii = 0; ii < depth; ++ii) - json += "}"; - return json; -} - -TEST_F(JsonParserTest, StackLimitExceededError_BelowLimit) { - // kStackLimit is 300 (see json_parser.cc). First let's - // try with a small nested example. - std::string json_3 = MakeNestedJson(3); - ParseJSON(GetTestPlatform(), SpanFrom(json_3), &log_); - EXPECT_TRUE(log_.status().ok()); - EXPECT_EQ( - "map begin\n" - "string16: foo\n" - "map begin\n" - "string16: foo\n" - "map begin\n" - "string16: foo\n" - "int: 42\n" - "map end\n" - "map end\n" - "map end\n", - log_.str()); -} - -TEST_F(JsonParserTest, StackLimitExceededError_AtLimit) { - // Now with kStackLimit (300). - std::string json_limit = MakeNestedJson(300); - ParseJSON(GetTestPlatform(), - span<uint8_t>(reinterpret_cast<const uint8_t*>(json_limit.data()), - json_limit.size()), - &log_); - EXPECT_TRUE(log_.status().ok()); -} - -TEST_F(JsonParserTest, StackLimitExceededError_AboveLimit) { - // Now with kStackLimit + 1 (301) - it exceeds in the innermost instance. - std::string exceeded = MakeNestedJson(301); - ParseJSON(GetTestPlatform(), SpanFrom(exceeded), &log_); - EXPECT_EQ(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, log_.status().error); - EXPECT_EQ(strlen("{\"foo\":") * 301, log_.status().pos); -} - -TEST_F(JsonParserTest, StackLimitExceededError_WayAboveLimit) { - // Now way past the limit. Still, the point of exceeding is 301. - std::string far_out = MakeNestedJson(320); - ParseJSON(GetTestPlatform(), SpanFrom(far_out), &log_); - EXPECT_EQ(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, log_.status().error); - EXPECT_EQ(strlen("{\"foo\":") * 301, log_.status().pos); -} - -TEST_F(JsonParserTest, NoInputError) { - std::string json = ""; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_NO_INPUT, log_.status().error); - EXPECT_EQ(0u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, InvalidTokenError) { - std::string json = "|"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_INVALID_TOKEN, log_.status().error); - EXPECT_EQ(0u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, InvalidNumberError) { - // Mantissa exceeds max (the constant used here is int64_t max). - std::string json = "1E9223372036854775807"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_INVALID_NUMBER, log_.status().error); - EXPECT_EQ(0u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, InvalidStringError) { - // \x22 is an unsupported escape sequence - std::string json = "\"foo\\x22\""; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_INVALID_STRING, log_.status().error); - EXPECT_EQ(0u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, UnexpectedArrayEndError) { - std::string json = "[1,2,]"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_UNEXPECTED_ARRAY_END, log_.status().error); - EXPECT_EQ(5u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, CommaOrArrayEndExpectedError) { - std::string json = "[1,2 2"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED, - log_.status().error); - EXPECT_EQ(5u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, StringLiteralExpectedError) { - // There's an error because the key bar, a string, is not terminated. - std::string json = "{\"foo\": 3.1415, \"bar: 31415e-4}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_STRING_LITERAL_EXPECTED, log_.status().error); - EXPECT_EQ(16u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, ColonExpectedError) { - std::string json = "{\"foo\", 42}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_COLON_EXPECTED, log_.status().error); - EXPECT_EQ(6u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, UnexpectedMapEndError) { - std::string json = "{\"foo\": 42, }"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_UNEXPECTED_MAP_END, log_.status().error); - EXPECT_EQ(12u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, CommaOrMapEndExpectedError) { - // The second separator should be a comma. - std::string json = "{\"foo\": 3.1415: \"bar\": 0}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED, log_.status().error); - EXPECT_EQ(14u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -TEST_F(JsonParserTest, ValueExpectedError) { - std::string json = "}"; - ParseJSON(GetTestPlatform(), SpanFrom(json), &log_); - EXPECT_EQ(Error::JSON_PARSER_VALUE_EXPECTED, log_.status().error); - EXPECT_EQ(0u, log_.status().pos); - EXPECT_EQ("", log_.str()); -} - -template <typename T> -class ConvertJSONToCBORTest : public ::testing::Test {}; - -using ContainerTestTypes = ::testing::Types<std::vector<uint8_t>, std::string>; -TYPED_TEST_SUITE(ConvertJSONToCBORTest, ContainerTestTypes); - -TYPED_TEST(ConvertJSONToCBORTest, RoundTripValidJson) { - std::string json_in = "{\"msg\":\"Hello, world.\",\"lst\":[1,2,3]}"; - TypeParam json(json_in.begin(), json_in.end()); - TypeParam cbor; - { - Status status = ConvertJSONToCBOR(GetTestPlatform(), SpanFrom(json), &cbor); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); - } - TypeParam roundtrip_json; - { - Status status = - ConvertCBORToJSON(GetTestPlatform(), SpanFrom(cbor), &roundtrip_json); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); - } - EXPECT_EQ(json, roundtrip_json); -} - -TYPED_TEST(ConvertJSONToCBORTest, RoundTripValidJson16) { - std::vector<uint16_t> json16 = { - '{', '"', 'm', 's', 'g', '"', ':', '"', 'H', 'e', 'l', 'l', - 'o', ',', ' ', 0xd83c, 0xdf0e, '.', '"', ',', '"', 'l', 's', 't', - '"', ':', '[', '1', ',', '2', ',', '3', ']', '}'}; - TypeParam cbor; - { - Status status = ConvertJSONToCBOR( - GetTestPlatform(), span<uint16_t>(json16.data(), json16.size()), &cbor); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); - } - TypeParam roundtrip_json; - { - Status status = - ConvertCBORToJSON(GetTestPlatform(), SpanFrom(cbor), &roundtrip_json); - EXPECT_EQ(Error::OK, status.error); - EXPECT_EQ(Status::npos(), status.pos); - } - std::string json = "{\"msg\":\"Hello, \\ud83c\\udf0e.\",\"lst\":[1,2,3]}"; - TypeParam expected_json(json.begin(), json.end()); - EXPECT_EQ(expected_json, roundtrip_json); -} -} // namespace json -} // namespace v8_inspector_protocol_encoding +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/dispatch.cc b/deps/inspector_protocol/crdtp/dispatch.cc new file mode 100644 index 00000000000000..b36b91ad0e37e6 --- /dev/null +++ b/deps/inspector_protocol/crdtp/dispatch.cc @@ -0,0 +1,584 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "dispatch.h" + +#include <cassert> +#include "cbor.h" +#include "error_support.h" +#include "find_by_first.h" +#include "frontend_channel.h" +#include "protocol_core.h" + +namespace crdtp { +// ============================================================================= +// DispatchResponse - Error status and chaining / fall through +// ============================================================================= + +// static +DispatchResponse DispatchResponse::Success() { + DispatchResponse result; + result.code_ = DispatchCode::SUCCESS; + return result; +} + +// static +DispatchResponse DispatchResponse::FallThrough() { + DispatchResponse result; + result.code_ = DispatchCode::FALL_THROUGH; + return result; +} + +// static +DispatchResponse DispatchResponse::ParseError(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::PARSE_ERROR; + result.message_ = std::move(message); + return result; +} + +// static +DispatchResponse DispatchResponse::InvalidRequest(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::INVALID_REQUEST; + result.message_ = std::move(message); + return result; +} + +// static +DispatchResponse DispatchResponse::MethodNotFound(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::METHOD_NOT_FOUND; + result.message_ = std::move(message); + return result; +} + +// static +DispatchResponse DispatchResponse::InvalidParams(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::INVALID_PARAMS; + result.message_ = std::move(message); + return result; +} + +// static +DispatchResponse DispatchResponse::InternalError() { + DispatchResponse result; + result.code_ = DispatchCode::INTERNAL_ERROR; + result.message_ = "Internal error"; + return result; +} + +// static +DispatchResponse DispatchResponse::ServerError(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::SERVER_ERROR; + result.message_ = std::move(message); + return result; +} + +// static +DispatchResponse DispatchResponse::SessionNotFound(std::string message) { + DispatchResponse result; + result.code_ = DispatchCode::SESSION_NOT_FOUND; + result.message_ = std::move(message); + return result; +} + +// ============================================================================= +// Dispatchable - a shallow parser for CBOR encoded DevTools messages +// ============================================================================= +Dispatchable::Dispatchable(span<uint8_t> serialized) : serialized_(serialized) { + Status s = cbor::CheckCBORMessage(serialized); + if (!s.ok()) { + status_ = {Error::MESSAGE_MUST_BE_AN_OBJECT, s.pos}; + return; + } + cbor::CBORTokenizer tokenizer(serialized); + if (tokenizer.TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) { + status_ = tokenizer.Status(); + return; + } + + // We checked for the envelope start byte above, so the tokenizer + // must agree here, since it's not an error. + assert(tokenizer.TokenTag() == cbor::CBORTokenTag::ENVELOPE); + + // Before we enter the envelope, we save the position that we + // expect to see after we're done parsing the envelope contents. + // This way we can compare and produce an error if the contents + // didn't fit exactly into the envelope length. + const size_t pos_past_envelope = + tokenizer.Status().pos + tokenizer.GetEnvelopeHeader().outer_size(); + tokenizer.EnterEnvelope(); + if (tokenizer.TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) { + status_ = tokenizer.Status(); + return; + } + if (tokenizer.TokenTag() != cbor::CBORTokenTag::MAP_START) { + status_ = {Error::MESSAGE_MUST_BE_AN_OBJECT, tokenizer.Status().pos}; + return; + } + assert(tokenizer.TokenTag() == cbor::CBORTokenTag::MAP_START); + tokenizer.Next(); // Now we should be pointed at the map key. + while (tokenizer.TokenTag() != cbor::CBORTokenTag::STOP) { + switch (tokenizer.TokenTag()) { + case cbor::CBORTokenTag::DONE: + status_ = + Status{Error::CBOR_UNEXPECTED_EOF_IN_MAP, tokenizer.Status().pos}; + return; + case cbor::CBORTokenTag::ERROR_VALUE: + status_ = tokenizer.Status(); + return; + case cbor::CBORTokenTag::STRING8: + if (!MaybeParseProperty(&tokenizer)) + return; + break; + default: + // We require the top-level keys to be UTF8 (US-ASCII in practice). + status_ = Status{Error::CBOR_INVALID_MAP_KEY, tokenizer.Status().pos}; + return; + } + } + tokenizer.Next(); + if (!has_call_id_) { + status_ = Status{Error::MESSAGE_MUST_HAVE_INTEGER_ID_PROPERTY, + tokenizer.Status().pos}; + return; + } + if (method_.empty()) { + status_ = Status{Error::MESSAGE_MUST_HAVE_STRING_METHOD_PROPERTY, + tokenizer.Status().pos}; + return; + } + // The contents of the envelope parsed OK, now check that we're at + // the expected position. + if (pos_past_envelope != tokenizer.Status().pos) { + status_ = Status{Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH, + tokenizer.Status().pos}; + return; + } + if (tokenizer.TokenTag() != cbor::CBORTokenTag::DONE) { + status_ = Status{Error::CBOR_TRAILING_JUNK, tokenizer.Status().pos}; + return; + } +} + +bool Dispatchable::ok() const { + return status_.ok(); +} + +DispatchResponse Dispatchable::DispatchError() const { + // TODO(johannes): Replace with DCHECK / similar? + if (status_.ok()) + return DispatchResponse::Success(); + + if (status_.IsMessageError()) + return DispatchResponse::InvalidRequest(status_.Message()); + return DispatchResponse::ParseError(status_.ToASCIIString()); +} + +bool Dispatchable::MaybeParseProperty(cbor::CBORTokenizer* tokenizer) { + span<uint8_t> property_name = tokenizer->GetString8(); + if (SpanEquals(SpanFrom("id"), property_name)) + return MaybeParseCallId(tokenizer); + if (SpanEquals(SpanFrom("method"), property_name)) + return MaybeParseMethod(tokenizer); + if (SpanEquals(SpanFrom("params"), property_name)) + return MaybeParseParams(tokenizer); + if (SpanEquals(SpanFrom("sessionId"), property_name)) + return MaybeParseSessionId(tokenizer); + status_ = + Status{Error::MESSAGE_HAS_UNKNOWN_PROPERTY, tokenizer->Status().pos}; + return false; +} + +bool Dispatchable::MaybeParseCallId(cbor::CBORTokenizer* tokenizer) { + if (has_call_id_) { + status_ = Status{Error::CBOR_DUPLICATE_MAP_KEY, tokenizer->Status().pos}; + return false; + } + tokenizer->Next(); + if (tokenizer->TokenTag() != cbor::CBORTokenTag::INT32) { + status_ = Status{Error::MESSAGE_MUST_HAVE_INTEGER_ID_PROPERTY, + tokenizer->Status().pos}; + return false; + } + call_id_ = tokenizer->GetInt32(); + has_call_id_ = true; + tokenizer->Next(); + return true; +} + +bool Dispatchable::MaybeParseMethod(cbor::CBORTokenizer* tokenizer) { + if (!method_.empty()) { + status_ = Status{Error::CBOR_DUPLICATE_MAP_KEY, tokenizer->Status().pos}; + return false; + } + tokenizer->Next(); + if (tokenizer->TokenTag() != cbor::CBORTokenTag::STRING8) { + status_ = Status{Error::MESSAGE_MUST_HAVE_STRING_METHOD_PROPERTY, + tokenizer->Status().pos}; + return false; + } + method_ = tokenizer->GetString8(); + tokenizer->Next(); + return true; +} + +bool Dispatchable::MaybeParseParams(cbor::CBORTokenizer* tokenizer) { + if (params_seen_) { + status_ = Status{Error::CBOR_DUPLICATE_MAP_KEY, tokenizer->Status().pos}; + return false; + } + params_seen_ = true; + tokenizer->Next(); + if (tokenizer->TokenTag() == cbor::CBORTokenTag::NULL_VALUE) { + tokenizer->Next(); + return true; + } + if (tokenizer->TokenTag() != cbor::CBORTokenTag::ENVELOPE) { + status_ = Status{Error::MESSAGE_MAY_HAVE_OBJECT_PARAMS_PROPERTY, + tokenizer->Status().pos}; + return false; + } + params_ = tokenizer->GetEnvelope(); + tokenizer->Next(); + return true; +} + +bool Dispatchable::MaybeParseSessionId(cbor::CBORTokenizer* tokenizer) { + if (!session_id_.empty()) { + status_ = Status{Error::CBOR_DUPLICATE_MAP_KEY, tokenizer->Status().pos}; + return false; + } + tokenizer->Next(); + if (tokenizer->TokenTag() != cbor::CBORTokenTag::STRING8) { + status_ = Status{Error::MESSAGE_MAY_HAVE_STRING_SESSION_ID_PROPERTY, + tokenizer->Status().pos}; + return false; + } + session_id_ = tokenizer->GetString8(); + tokenizer->Next(); + return true; +} + +namespace { +class ProtocolError : public Serializable { + public: + explicit ProtocolError(DispatchResponse dispatch_response) + : dispatch_response_(std::move(dispatch_response)) {} + + void AppendSerialized(std::vector<uint8_t>* out) const override { + Status status; + std::unique_ptr<ParserHandler> encoder = cbor::NewCBOREncoder(out, &status); + encoder->HandleMapBegin(); + if (has_call_id_) { + encoder->HandleString8(SpanFrom("id")); + encoder->HandleInt32(call_id_); + } + encoder->HandleString8(SpanFrom("error")); + encoder->HandleMapBegin(); + encoder->HandleString8(SpanFrom("code")); + encoder->HandleInt32(static_cast<int32_t>(dispatch_response_.Code())); + encoder->HandleString8(SpanFrom("message")); + encoder->HandleString8(SpanFrom(dispatch_response_.Message())); + if (!data_.empty()) { + encoder->HandleString8(SpanFrom("data")); + encoder->HandleString8(SpanFrom(data_)); + } + encoder->HandleMapEnd(); + encoder->HandleMapEnd(); + assert(status.ok()); + } + + void SetCallId(int call_id) { + has_call_id_ = true; + call_id_ = call_id; + } + void SetData(std::string data) { data_ = std::move(data); } + + private: + const DispatchResponse dispatch_response_; + std::string data_; + int call_id_ = 0; + bool has_call_id_ = false; +}; +} // namespace + +// ============================================================================= +// Helpers for creating protocol cresponses and notifications. +// ============================================================================= + +std::unique_ptr<Serializable> CreateErrorResponse( + int call_id, + DispatchResponse dispatch_response) { + auto protocol_error = + std::make_unique<ProtocolError>(std::move(dispatch_response)); + protocol_error->SetCallId(call_id); + return protocol_error; +} + +std::unique_ptr<Serializable> CreateErrorResponse( + int call_id, + DispatchResponse dispatch_response, + const DeserializerState& state) { + auto protocol_error = + std::make_unique<ProtocolError>(std::move(dispatch_response)); + protocol_error->SetCallId(call_id); + // TODO(caseq): should we plumb the call name here? + protocol_error->SetData(state.ErrorMessage(MakeSpan("params"))); + return protocol_error; +} + +std::unique_ptr<Serializable> CreateErrorNotification( + DispatchResponse dispatch_response) { + return std::make_unique<ProtocolError>(std::move(dispatch_response)); +} + +namespace { +class Response : public Serializable { + public: + Response(int call_id, std::unique_ptr<Serializable> params) + : call_id_(call_id), params_(std::move(params)) {} + + void AppendSerialized(std::vector<uint8_t>* out) const override { + Status status; + std::unique_ptr<ParserHandler> encoder = cbor::NewCBOREncoder(out, &status); + encoder->HandleMapBegin(); + encoder->HandleString8(SpanFrom("id")); + encoder->HandleInt32(call_id_); + encoder->HandleString8(SpanFrom("result")); + if (params_) { + params_->AppendSerialized(out); + } else { + encoder->HandleMapBegin(); + encoder->HandleMapEnd(); + } + encoder->HandleMapEnd(); + assert(status.ok()); + } + + private: + const int call_id_; + std::unique_ptr<Serializable> params_; +}; + +class Notification : public Serializable { + public: + Notification(const char* method, std::unique_ptr<Serializable> params) + : method_(method), params_(std::move(params)) {} + + void AppendSerialized(std::vector<uint8_t>* out) const override { + Status status; + std::unique_ptr<ParserHandler> encoder = cbor::NewCBOREncoder(out, &status); + encoder->HandleMapBegin(); + encoder->HandleString8(SpanFrom("method")); + encoder->HandleString8(SpanFrom(method_)); + encoder->HandleString8(SpanFrom("params")); + if (params_) { + params_->AppendSerialized(out); + } else { + encoder->HandleMapBegin(); + encoder->HandleMapEnd(); + } + encoder->HandleMapEnd(); + assert(status.ok()); + } + + private: + const char* method_; + std::unique_ptr<Serializable> params_; +}; +} // namespace + +std::unique_ptr<Serializable> CreateResponse( + int call_id, + std::unique_ptr<Serializable> params) { + return std::make_unique<Response>(call_id, std::move(params)); +} + +std::unique_ptr<Serializable> CreateNotification( + const char* method, + std::unique_ptr<Serializable> params) { + return std::make_unique<Notification>(method, std::move(params)); +} + +// ============================================================================= +// DomainDispatcher - Dispatching betwen protocol methods within a domain. +// ============================================================================= +DomainDispatcher::WeakPtr::WeakPtr(DomainDispatcher* dispatcher) + : dispatcher_(dispatcher) {} + +DomainDispatcher::WeakPtr::~WeakPtr() { + if (dispatcher_) + dispatcher_->weak_ptrs_.erase(this); +} + +DomainDispatcher::Callback::~Callback() = default; + +void DomainDispatcher::Callback::dispose() { + backend_impl_ = nullptr; +} + +DomainDispatcher::Callback::Callback( + std::unique_ptr<DomainDispatcher::WeakPtr> backend_impl, + int call_id, + span<uint8_t> method, + span<uint8_t> message) + : backend_impl_(std::move(backend_impl)), + call_id_(call_id), + method_(method), + message_(message.begin(), message.end()) {} + +void DomainDispatcher::Callback::sendIfActive( + std::unique_ptr<Serializable> partialMessage, + const DispatchResponse& response) { + if (!backend_impl_ || !backend_impl_->get()) + return; + backend_impl_->get()->sendResponse(call_id_, response, + std::move(partialMessage)); + backend_impl_ = nullptr; +} + +void DomainDispatcher::Callback::fallThroughIfActive() { + if (!backend_impl_ || !backend_impl_->get()) + return; + backend_impl_->get()->channel()->FallThrough(call_id_, method_, + SpanFrom(message_)); + backend_impl_ = nullptr; +} + +DomainDispatcher::DomainDispatcher(FrontendChannel* frontendChannel) + : frontend_channel_(frontendChannel) {} + +DomainDispatcher::~DomainDispatcher() { + clearFrontend(); +} + +void DomainDispatcher::sendResponse(int call_id, + const DispatchResponse& response, + std::unique_ptr<Serializable> result) { + if (!frontend_channel_) + return; + std::unique_ptr<Serializable> serializable; + if (response.IsError()) { + serializable = CreateErrorResponse(call_id, response); + } else { + serializable = CreateResponse(call_id, std::move(result)); + } + frontend_channel_->SendProtocolResponse(call_id, std::move(serializable)); +} + +void DomainDispatcher::ReportInvalidParams(const Dispatchable& dispatchable, + const DeserializerState& state) { + assert(!state.status().ok()); + if (frontend_channel_) { + frontend_channel_->SendProtocolResponse( + dispatchable.CallId(), + CreateErrorResponse( + dispatchable.CallId(), + DispatchResponse::InvalidParams("Invalid parameters"), state)); + } +} + +void DomainDispatcher::clearFrontend() { + frontend_channel_ = nullptr; + for (auto& weak : weak_ptrs_) + weak->dispose(); + weak_ptrs_.clear(); +} + +std::unique_ptr<DomainDispatcher::WeakPtr> DomainDispatcher::weakPtr() { + auto weak = std::make_unique<DomainDispatcher::WeakPtr>(this); + weak_ptrs_.insert(weak.get()); + return weak; +} + +// ============================================================================= +// UberDispatcher - dispatches between domains (backends). +// ============================================================================= +UberDispatcher::DispatchResult::DispatchResult(bool method_found, + std::function<void()> runnable) + : method_found_(method_found), runnable_(runnable) {} + +void UberDispatcher::DispatchResult::Run() { + if (!runnable_) + return; + runnable_(); + runnable_ = nullptr; +} + +UberDispatcher::UberDispatcher(FrontendChannel* frontend_channel) + : frontend_channel_(frontend_channel) { + assert(frontend_channel); +} + +UberDispatcher::~UberDispatcher() = default; + +constexpr size_t kNotFound = std::numeric_limits<size_t>::max(); + +namespace { +size_t DotIdx(span<uint8_t> method) { + const void* p = memchr(method.data(), '.', method.size()); + return p ? reinterpret_cast<const uint8_t*>(p) - method.data() : kNotFound; +} +} // namespace + +UberDispatcher::DispatchResult UberDispatcher::Dispatch( + const Dispatchable& dispatchable) const { + span<uint8_t> method = FindByFirst(redirects_, dispatchable.Method(), + /*default_value=*/dispatchable.Method()); + size_t dot_idx = DotIdx(method); + if (dot_idx != kNotFound) { + span<uint8_t> domain = method.subspan(0, dot_idx); + span<uint8_t> command = method.subspan(dot_idx + 1); + DomainDispatcher* dispatcher = FindByFirst(dispatchers_, domain); + if (dispatcher) { + std::function<void(const Dispatchable&)> dispatched = + dispatcher->Dispatch(command); + if (dispatched) { + return DispatchResult( + true, [dispatchable, dispatched = std::move(dispatched)]() { + dispatched(dispatchable); + }); + } + } + } + return DispatchResult(false, [this, dispatchable]() { + frontend_channel_->SendProtocolResponse( + dispatchable.CallId(), + CreateErrorResponse(dispatchable.CallId(), + DispatchResponse::MethodNotFound( + "'" + + std::string(dispatchable.Method().begin(), + dispatchable.Method().end()) + + "' wasn't found"))); + }); +} + +template <typename T> +struct FirstLessThan { + bool operator()(const std::pair<span<uint8_t>, T>& left, + const std::pair<span<uint8_t>, T>& right) { + return SpanLessThan(left.first, right.first); + } +}; + +void UberDispatcher::WireBackend( + span<uint8_t> domain, + const std::vector<std::pair<span<uint8_t>, span<uint8_t>>>& + sorted_redirects, + std::unique_ptr<DomainDispatcher> dispatcher) { + auto it = redirects_.insert(redirects_.end(), sorted_redirects.begin(), + sorted_redirects.end()); + std::inplace_merge(redirects_.begin(), it, redirects_.end(), + FirstLessThan<span<uint8_t>>()); + auto jt = dispatchers_.insert(dispatchers_.end(), + std::make_pair(domain, std::move(dispatcher))); + std::inplace_merge(dispatchers_.begin(), jt, dispatchers_.end(), + FirstLessThan<std::unique_ptr<DomainDispatcher>>()); +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/dispatch.h b/deps/inspector_protocol/crdtp/dispatch.h new file mode 100644 index 00000000000000..8da8255c6fe882 --- /dev/null +++ b/deps/inspector_protocol/crdtp/dispatch.h @@ -0,0 +1,313 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_DISPATCH_H_ +#define CRDTP_DISPATCH_H_ + +#include <cassert> +#include <cstdint> +#include <functional> +#include <string> +#include <unordered_set> +#include "export.h" +#include "serializable.h" +#include "span.h" +#include "status.h" + +namespace crdtp { +class DeserializerState; +class ErrorSupport; +class FrontendChannel; +namespace cbor { +class CBORTokenizer; +} // namespace cbor + +// ============================================================================= +// DispatchResponse - Error status and chaining / fall through +// ============================================================================= +enum class DispatchCode { + SUCCESS = 1, + FALL_THROUGH = 2, + // For historical reasons, these error codes correspond to commonly used + // XMLRPC codes (e.g. see METHOD_NOT_FOUND in + // https://github.com/python/cpython/blob/main/Lib/xmlrpc/client.py). + PARSE_ERROR = -32700, + INVALID_REQUEST = -32600, + METHOD_NOT_FOUND = -32601, + INVALID_PARAMS = -32602, + INTERNAL_ERROR = -32603, + SERVER_ERROR = -32000, + SESSION_NOT_FOUND = SERVER_ERROR - 1, +}; + +// Information returned by command handlers. Usually returned after command +// execution attempts. +class CRDTP_EXPORT DispatchResponse { + public: + const std::string& Message() const { return message_; } + + DispatchCode Code() const { return code_; } + + bool IsSuccess() const { return code_ == DispatchCode::SUCCESS; } + bool IsFallThrough() const { return code_ == DispatchCode::FALL_THROUGH; } + bool IsError() const { return code_ < DispatchCode::SUCCESS; } + + static DispatchResponse Success(); + static DispatchResponse FallThrough(); + + // Indicates that a message could not be parsed. E.g., malformed JSON. + static DispatchResponse ParseError(std::string message); + + // Indicates that a request is lacking required top-level properties + // ('id', 'method'), has top-level properties of the wrong type, or has + // unknown top-level properties. + static DispatchResponse InvalidRequest(std::string message); + + // Indicates that a protocol method such as "Page.bringToFront" could not be + // dispatched because it's not known to the (domain) dispatcher. + static DispatchResponse MethodNotFound(std::string message); + + // Indicates that the params sent to a domain handler are invalid. + static DispatchResponse InvalidParams(std::string message); + + // Used for application level errors, e.g. within protocol agents. + static DispatchResponse InternalError(); + + // Used for application level errors, e.g. within protocol agents. + static DispatchResponse ServerError(std::string message); + + // Indicate that session with the id specified in the protocol message + // was not found (e.g. because it has already been detached). + static DispatchResponse SessionNotFound(std::string message); + + private: + DispatchResponse() = default; + DispatchCode code_; + std::string message_; +}; + +// ============================================================================= +// Dispatchable - a shallow parser for CBOR encoded DevTools messages +// ============================================================================= + +// This parser extracts only the known top-level fields from a CBOR encoded map; +// method, id, sessionId, and params. +class CRDTP_EXPORT Dispatchable { + public: + // This constructor parses the |serialized| message. If successful, + // |ok()| will yield |true|, and |Method()|, |SessionId()|, |CallId()|, + // |Params()| can be used to access, the extracted contents. Otherwise, + // |ok()| will yield |false|, and |DispatchError()| can be + // used to send a response or notification to the client. + explicit Dispatchable(span<uint8_t> serialized); + + // The serialized message that we just parsed. + span<uint8_t> Serialized() const { return serialized_; } + + // Yields true if parsing was successful. This is cheaper than calling + // ::DispatchError(). + bool ok() const; + + // If !ok(), returns a DispatchResponse with appropriate code and error + // which can be sent to the client as a response or notification. + DispatchResponse DispatchError() const; + + // Top level field: the command to be executed, fully qualified by + // domain. E.g. "Page.createIsolatedWorld". + span<uint8_t> Method() const { return method_; } + // Used to identify protocol connections attached to a specific + // target. See Target.attachToTarget, Target.setAutoAttach. + span<uint8_t> SessionId() const { return session_id_; } + // The call id, a sequence number that's used in responses to indicate + // the request to which the response belongs. + int32_t CallId() const { return call_id_; } + bool HasCallId() const { return has_call_id_; } + // The payload of the request in CBOR format. The |Dispatchable| parser does + // not parse into this; it only provides access to its raw contents here. + span<uint8_t> Params() const { return params_; } + + private: + bool MaybeParseProperty(cbor::CBORTokenizer* tokenizer); + bool MaybeParseCallId(cbor::CBORTokenizer* tokenizer); + bool MaybeParseMethod(cbor::CBORTokenizer* tokenizer); + bool MaybeParseParams(cbor::CBORTokenizer* tokenizer); + bool MaybeParseSessionId(cbor::CBORTokenizer* tokenizer); + + span<uint8_t> serialized_; + + Status status_; + + bool has_call_id_ = false; + int32_t call_id_; + span<uint8_t> method_; + bool params_seen_ = false; + span<uint8_t> params_; + span<uint8_t> session_id_; +}; + +// ============================================================================= +// Helpers for creating protocol cresponses and notifications. +// ============================================================================= + +// The resulting notifications can be sent to a protocol client, +// usually via a FrontendChannel (see frontend_channel.h). + +CRDTP_EXPORT std::unique_ptr<Serializable> CreateErrorResponse( + int callId, + DispatchResponse dispatch_response); + +CRDTP_EXPORT std::unique_ptr<Serializable> CreateErrorNotification( + DispatchResponse dispatch_response); + +CRDTP_EXPORT std::unique_ptr<Serializable> CreateResponse( + int callId, + std::unique_ptr<Serializable> params); + +CRDTP_EXPORT std::unique_ptr<Serializable> CreateNotification( + const char* method, + std::unique_ptr<Serializable> params = nullptr); + +// ============================================================================= +// DomainDispatcher - Dispatching betwen protocol methods within a domain. +// ============================================================================= + +// This class is subclassed by |DomainDispatcherImpl|, which we generate per +// DevTools domain. It contains routines called from the generated code, +// e.g. ::MaybeReportInvalidParams, which are optimized for small code size. +// The most important method is ::Dispatch, which implements method dispatch +// by command name lookup. +class CRDTP_EXPORT DomainDispatcher { + public: + class CRDTP_EXPORT WeakPtr { + public: + explicit WeakPtr(DomainDispatcher*); + ~WeakPtr(); + DomainDispatcher* get() { return dispatcher_; } + void dispose() { dispatcher_ = nullptr; } + + private: + DomainDispatcher* dispatcher_; + }; + + class CRDTP_EXPORT Callback { + public: + virtual ~Callback(); + void dispose(); + + protected: + // |method| must point at static storage (a C++ string literal in practice). + Callback(std::unique_ptr<WeakPtr> backend_impl, + int call_id, + span<uint8_t> method, + span<uint8_t> message); + + void sendIfActive(std::unique_ptr<Serializable> partialMessage, + const DispatchResponse& response); + void fallThroughIfActive(); + + private: + std::unique_ptr<WeakPtr> backend_impl_; + int call_id_; + // Subclasses of this class are instantiated from generated code which + // passes a string literal for the method name to the constructor. So the + // storage for |method| is the binary of the running process. + span<uint8_t> method_; + std::vector<uint8_t> message_; + }; + + explicit DomainDispatcher(FrontendChannel*); + virtual ~DomainDispatcher(); + + // Given a |command_name| without domain qualification, looks up the + // corresponding method. If the method is not found, returns nullptr. + // Otherwise, Returns a closure that will parse the provided + // Dispatchable.params() to a protocol object and execute the + // apprpropriate method. If the parsing fails it will issue an + // error response on the frontend channel, otherwise it will execute the + // command. + virtual std::function<void(const Dispatchable&)> Dispatch( + span<uint8_t> command_name) = 0; + + // Sends a response to the client via the channel. + void sendResponse(int call_id, + const DispatchResponse&, + std::unique_ptr<Serializable> result = nullptr); + + void ReportInvalidParams(const Dispatchable& dispatchable, + const DeserializerState& state); + + FrontendChannel* channel() { return frontend_channel_; } + + void clearFrontend(); + + std::unique_ptr<WeakPtr> weakPtr(); + + private: + FrontendChannel* frontend_channel_; + std::unordered_set<WeakPtr*> weak_ptrs_; +}; + +// ============================================================================= +// UberDispatcher - dispatches between domains (backends). +// ============================================================================= +class CRDTP_EXPORT UberDispatcher { + public: + // Return type for ::Dispatch. + class CRDTP_EXPORT DispatchResult { + public: + DispatchResult(bool method_found, std::function<void()> runnable); + + // Indicates whether the method was found, that is, it could be dispatched + // to a backend registered with this dispatcher. + bool MethodFound() const { return method_found_; } + + // Runs the dispatched result. This will send the appropriate error + // responses if the method wasn't found or if something went wrong during + // parameter parsing. + void Run(); + + private: + bool method_found_; + std::function<void()> runnable_; + }; + + // |frontend_hannel| can't be nullptr. + explicit UberDispatcher(FrontendChannel* frontend_channel); + virtual ~UberDispatcher(); + + // Dispatches the provided |dispatchable| considering all redirects and domain + // handlers registered with this uber dispatcher. Also see |DispatchResult|. + // |dispatchable.ok()| must hold - callers must check this separately and + // deal with errors. + DispatchResult Dispatch(const Dispatchable& dispatchable) const; + + // Invoked from generated code for wiring domain backends; that is, + // connecting domain handlers to an uber dispatcher. + // See <domain-namespace>::Dispatcher::Wire(UberDispatcher*,Backend*). + FrontendChannel* channel() const { + assert(frontend_channel_); + return frontend_channel_; + } + + // Invoked from generated code for wiring domain backends; that is, + // connecting domain handlers to an uber dispatcher. + // See <domain-namespace>::Dispatcher::Wire(UberDispatcher*,Backend*). + void WireBackend(span<uint8_t> domain, + const std::vector<std::pair<span<uint8_t>, span<uint8_t>>>&, + std::unique_ptr<DomainDispatcher> dispatcher); + + private: + DomainDispatcher* findDispatcher(span<uint8_t> method); + FrontendChannel* const frontend_channel_; + // Pairs of ascii strings of the form ("Domain1.method1","Domain2.method2") + // indicating that the first element of each pair redirects to the second. + // Sorted by first element. + std::vector<std::pair<span<uint8_t>, span<uint8_t>>> redirects_; + // Domain dispatcher instances, sorted by their domain name. + std::vector<std::pair<span<uint8_t>, std::unique_ptr<DomainDispatcher>>> + dispatchers_; +}; +} // namespace crdtp + +#endif // CRDTP_DISPATCH_H_ diff --git a/deps/inspector_protocol/crdtp/dispatch_test.cc b/deps/inspector_protocol/crdtp/dispatch_test.cc new file mode 100644 index 00000000000000..03c8792a8ee1c3 --- /dev/null +++ b/deps/inspector_protocol/crdtp/dispatch_test.cc @@ -0,0 +1,442 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <vector> + +#include "cbor.h" +#include "dispatch.h" +#include "error_support.h" +#include "frontend_channel.h" +#include "json.h" +#include "test_platform.h" + +namespace crdtp { +// ============================================================================= +// DispatchResponse - Error status and chaining / fall through +// ============================================================================= +TEST(DispatchResponseTest, OK) { + EXPECT_EQ(DispatchCode::SUCCESS, DispatchResponse::Success().Code()); + EXPECT_TRUE(DispatchResponse::Success().IsSuccess()); +} + +TEST(DispatchResponseTest, ServerError) { + DispatchResponse error = DispatchResponse::ServerError("Oops!"); + EXPECT_FALSE(error.IsSuccess()); + EXPECT_EQ(DispatchCode::SERVER_ERROR, error.Code()); + EXPECT_EQ("Oops!", error.Message()); +} + +TEST(DispatchResponseTest, SessionNotFound) { + DispatchResponse error = DispatchResponse::SessionNotFound("OMG!"); + EXPECT_FALSE(error.IsSuccess()); + EXPECT_EQ(DispatchCode::SESSION_NOT_FOUND, error.Code()); + EXPECT_EQ("OMG!", error.Message()); +} + +TEST(DispatchResponseTest, InternalError) { + DispatchResponse error = DispatchResponse::InternalError(); + EXPECT_FALSE(error.IsSuccess()); + EXPECT_EQ(DispatchCode::INTERNAL_ERROR, error.Code()); + EXPECT_EQ("Internal error", error.Message()); +} + +TEST(DispatchResponseTest, InvalidParams) { + DispatchResponse error = DispatchResponse::InvalidParams("too cool"); + EXPECT_FALSE(error.IsSuccess()); + EXPECT_EQ(DispatchCode::INVALID_PARAMS, error.Code()); + EXPECT_EQ("too cool", error.Message()); +} + +TEST(DispatchResponseTest, FallThrough) { + DispatchResponse error = DispatchResponse::FallThrough(); + EXPECT_FALSE(error.IsSuccess()); + EXPECT_TRUE(error.IsFallThrough()); + EXPECT_EQ(DispatchCode::FALL_THROUGH, error.Code()); +} + +// ============================================================================= +// Dispatchable - a shallow parser for CBOR encoded DevTools messages +// ============================================================================= +TEST(DispatchableTest, MessageMustBeAnObject) { + // Provide no input whatsoever. + span<uint8_t> empty_span; + Dispatchable empty(empty_span); + EXPECT_FALSE(empty.ok()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, empty.DispatchError().Code()); + EXPECT_EQ("Message must be an object", empty.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMustHaveIntegerIdProperty) { + // Construct an empty map inside of an envelope. + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR(SpanFrom("{}"), &cbor).ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_FALSE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message must have integer 'id' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMustHaveIntegerIdProperty_IncorrectType) { + // This time we set the id property, but fail to make it an int32. + std::vector<uint8_t> cbor; + ASSERT_TRUE( + json::ConvertJSONToCBOR(SpanFrom("{\"id\":\"foo\"}"), &cbor).ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_FALSE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message must have integer 'id' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMustHaveStringMethodProperty) { + // This time we set the id property, but not the method property. + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR(SpanFrom("{\"id\":42}"), &cbor).ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message must have string 'method' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMustHaveStringMethodProperty_IncorrectType) { + // This time we set the method property, but fail to make it a string. + std::vector<uint8_t> cbor; + ASSERT_TRUE( + json::ConvertJSONToCBOR(SpanFrom("{\"id\":42,\"method\":42}"), &cbor) + .ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message must have string 'method' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMayHaveStringSessionIdProperty) { + // This time, the session id is an int but it should be a string. Method and + // call id are present. + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR( + SpanFrom("{\"id\":42,\"method\":\"Foo.executeBar\"," + "\"sessionId\":42" // int32 is wrong type + "}"), + &cbor) + .ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message may have string 'sessionId' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageMayHaveObjectParamsProperty) { + // This time, we fail to use the correct type for the params property. + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR( + SpanFrom("{\"id\":42,\"method\":\"Foo.executeBar\"," + "\"params\":42" // int32 is wrong type + "}"), + &cbor) + .ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ("Message may have object 'params' property", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, MessageWithUnknownProperty) { + // This time we set the 'unknown' property, so we are told what's allowed. + std::vector<uint8_t> cbor; + ASSERT_TRUE( + json::ConvertJSONToCBOR(SpanFrom("{\"id\":42,\"unknown\":42}"), &cbor) + .ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(DispatchCode::INVALID_REQUEST, dispatchable.DispatchError().Code()); + EXPECT_EQ( + "Message has property other than 'id', 'method', 'sessionId', 'params'", + dispatchable.DispatchError().Message()); +} + +TEST(DispatchableTest, DuplicateMapKey) { + for (const std::string& json : + {"{\"id\":42,\"id\":42}", "{\"params\":null,\"params\":null}", + "{\"method\":\"foo\",\"method\":\"foo\"}", + "{\"sessionId\":\"42\",\"sessionId\":\"42\"}"}) { + SCOPED_TRACE("json = " + json); + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR(SpanFrom(json), &cbor).ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_EQ(DispatchCode::PARSE_ERROR, dispatchable.DispatchError().Code()); + EXPECT_THAT(dispatchable.DispatchError().Message(), + testing::StartsWith("CBOR: duplicate map key at position ")); + } +} + +TEST(DispatchableTest, ValidMessageParsesOK_NoParams) { + for (const std::string& json : + {"{\"id\":42,\"method\":\"Foo.executeBar\",\"sessionId\":" + "\"f421ssvaz4\"}", + "{\"id\":42,\"method\":\"Foo.executeBar\",\"sessionId\":\"f421ssvaz4\"," + "\"params\":null}"}) { + SCOPED_TRACE("json = " + json); + std::vector<uint8_t> cbor; + ASSERT_TRUE(json::ConvertJSONToCBOR(SpanFrom(json), &cbor).ok()); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_TRUE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(42, dispatchable.CallId()); + EXPECT_EQ("Foo.executeBar", std::string(dispatchable.Method().begin(), + dispatchable.Method().end())); + EXPECT_EQ("f421ssvaz4", std::string(dispatchable.SessionId().begin(), + dispatchable.SessionId().end())); + EXPECT_TRUE(dispatchable.Params().empty()); + } +} + +TEST(DispatchableTest, ValidMessageParsesOK_WithParams) { + std::vector<uint8_t> cbor; + cbor::EnvelopeEncoder envelope; + envelope.EncodeStart(&cbor); + cbor.push_back(cbor::EncodeIndefiniteLengthMapStart()); + cbor::EncodeString8(SpanFrom("id"), &cbor); + cbor::EncodeInt32(42, &cbor); + cbor::EncodeString8(SpanFrom("method"), &cbor); + cbor::EncodeString8(SpanFrom("Foo.executeBar"), &cbor); + cbor::EncodeString8(SpanFrom("params"), &cbor); + cbor::EnvelopeEncoder params_envelope; + params_envelope.EncodeStart(&cbor); + // The |Dispatchable| class does not parse into the "params" envelope, + // so we can stick anything into there for the purpose of this test. + // For convenience, we use a String8. + cbor::EncodeString8(SpanFrom("params payload"), &cbor); + params_envelope.EncodeStop(&cbor); + cbor::EncodeString8(SpanFrom("sessionId"), &cbor); + cbor::EncodeString8(SpanFrom("f421ssvaz4"), &cbor); + cbor.push_back(cbor::EncodeStop()); + envelope.EncodeStop(&cbor); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_TRUE(dispatchable.ok()); + EXPECT_TRUE(dispatchable.HasCallId()); + EXPECT_EQ(42, dispatchable.CallId()); + EXPECT_EQ("Foo.executeBar", std::string(dispatchable.Method().begin(), + dispatchable.Method().end())); + EXPECT_EQ("f421ssvaz4", std::string(dispatchable.SessionId().begin(), + dispatchable.SessionId().end())); + cbor::CBORTokenizer params_tokenizer(dispatchable.Params()); + ASSERT_EQ(cbor::CBORTokenTag::ENVELOPE, params_tokenizer.TokenTag()); + params_tokenizer.EnterEnvelope(); + ASSERT_EQ(cbor::CBORTokenTag::STRING8, params_tokenizer.TokenTag()); + EXPECT_EQ("params payload", std::string(params_tokenizer.GetString8().begin(), + params_tokenizer.GetString8().end())); +} + +TEST(DispatchableTest, FaultyCBORTrailingJunk) { + // In addition to the higher level parsing errors, we also catch CBOR + // structural corruption. E.g., in this case, the message would be + // OK but has some extra trailing bytes. + std::vector<uint8_t> cbor; + cbor::EnvelopeEncoder envelope; + envelope.EncodeStart(&cbor); + cbor.push_back(cbor::EncodeIndefiniteLengthMapStart()); + cbor::EncodeString8(SpanFrom("id"), &cbor); + cbor::EncodeInt32(42, &cbor); + cbor::EncodeString8(SpanFrom("method"), &cbor); + cbor::EncodeString8(SpanFrom("Foo.executeBar"), &cbor); + cbor::EncodeString8(SpanFrom("sessionId"), &cbor); + cbor::EncodeString8(SpanFrom("f421ssvaz4"), &cbor); + cbor.push_back(cbor::EncodeStop()); + envelope.EncodeStop(&cbor); + size_t trailing_junk_pos = cbor.size(); + cbor.push_back('t'); + cbor.push_back('r'); + cbor.push_back('a'); + cbor.push_back('i'); + cbor.push_back('l'); + Dispatchable dispatchable(SpanFrom(cbor)); + EXPECT_FALSE(dispatchable.ok()); + EXPECT_EQ(DispatchCode::PARSE_ERROR, dispatchable.DispatchError().Code()); + EXPECT_EQ(57u, trailing_junk_pos); + EXPECT_EQ("CBOR: trailing junk at position 57", + dispatchable.DispatchError().Message()); +} + +// ============================================================================= +// Helpers for creating protocol cresponses and notifications. +// ============================================================================= +TEST(CreateErrorResponseTest, SmokeTest) { + auto serializable = CreateErrorResponse( + 42, DispatchResponse::InvalidParams("invalid params message")); + std::string json; + auto status = + json::ConvertCBORToJSON(SpanFrom(serializable->Serialize()), &json); + ASSERT_TRUE(status.ok()); + EXPECT_EQ( + "{\"id\":42,\"error\":" + "{\"code\":-32602," + "\"message\":\"invalid params message\"}}", + json); +} + +TEST(CreateErrorNotificationTest, SmokeTest) { + auto serializable = + CreateErrorNotification(DispatchResponse::InvalidRequest("oops!")); + std::string json; + auto status = + json::ConvertCBORToJSON(SpanFrom(serializable->Serialize()), &json); + ASSERT_TRUE(status.ok()); + EXPECT_EQ("{\"error\":{\"code\":-32600,\"message\":\"oops!\"}}", json); +} + +TEST(CreateResponseTest, SmokeTest) { + auto serializable = CreateResponse(42, nullptr); + std::string json; + auto status = + json::ConvertCBORToJSON(SpanFrom(serializable->Serialize()), &json); + ASSERT_TRUE(status.ok()); + EXPECT_EQ("{\"id\":42,\"result\":{}}", json); +} + +TEST(CreateNotificationTest, SmokeTest) { + auto serializable = CreateNotification("Foo.bar"); + std::string json; + auto status = + json::ConvertCBORToJSON(SpanFrom(serializable->Serialize()), &json); + ASSERT_TRUE(status.ok()); + EXPECT_EQ("{\"method\":\"Foo.bar\",\"params\":{}}", json); +} + +// ============================================================================= +// UberDispatcher - dispatches between domains (backends). +// ============================================================================= +class TestChannel : public FrontendChannel { + public: + std::string JSON() const { + std::string json; + json::ConvertCBORToJSON(SpanFrom(cbor_), &json); + return json; + } + + private: + void SendProtocolResponse(int call_id, + std::unique_ptr<Serializable> message) override { + cbor_ = message->Serialize(); + } + + void SendProtocolNotification( + std::unique_ptr<Serializable> message) override { + cbor_ = message->Serialize(); + } + + void FallThrough(int call_id, + span<uint8_t> method, + span<uint8_t> message) override {} + + void FlushProtocolNotifications() override {} + + std::vector<uint8_t> cbor_; +}; + +TEST(UberDispatcherTest, MethodNotFound) { + // No domain dispatchers are registered, so unsuprisingly, we'll get a method + // not found error and can see that DispatchResult::MethodFound() yields + // false. + TestChannel channel; + UberDispatcher dispatcher(&channel); + std::vector<uint8_t> message; + json::ConvertJSONToCBOR(SpanFrom("{\"id\":42,\"method\":\"Foo.bar\"}"), + &message); + Dispatchable dispatchable(SpanFrom(message)); + ASSERT_TRUE(dispatchable.ok()); + UberDispatcher::DispatchResult dispatched = dispatcher.Dispatch(dispatchable); + EXPECT_FALSE(dispatched.MethodFound()); + dispatched.Run(); + EXPECT_EQ( + "{\"id\":42,\"error\":" + "{\"code\":-32601,\"message\":\"'Foo.bar' wasn't found\"}}", + channel.JSON()); +} + +// A domain dispatcher which captured dispatched and executed commands in fields +// for testing. +class TestDomain : public DomainDispatcher { + public: + explicit TestDomain(FrontendChannel* channel) : DomainDispatcher(channel) {} + + std::function<void(const Dispatchable&)> Dispatch( + span<uint8_t> command_name) override { + dispatched_commands_.push_back( + std::string(command_name.begin(), command_name.end())); + return [this](const Dispatchable& dispatchable) { + executed_commands_.push_back(dispatchable.CallId()); + }; + } + + // Command names of the dispatched commands. + std::vector<std::string> DispatchedCommands() const { + return dispatched_commands_; + } + + // Call ids of the executed commands. + std::vector<int32_t> ExecutedCommands() const { return executed_commands_; } + + private: + std::vector<std::string> dispatched_commands_; + std::vector<int32_t> executed_commands_; +}; + +TEST(UberDispatcherTest, DispatchingToDomainWithRedirects) { + // This time, we register two domain dispatchers (Foo and Bar) and issue one + // command 'Foo.execute' which executes on Foo and one command 'Foo.redirect' + // which executes as 'Bar.redirected'. + TestChannel channel; + UberDispatcher dispatcher(&channel); + auto foo_dispatcher = std::make_unique<TestDomain>(&channel); + TestDomain* foo = foo_dispatcher.get(); + auto bar_dispatcher = std::make_unique<TestDomain>(&channel); + TestDomain* bar = bar_dispatcher.get(); + + dispatcher.WireBackend( + SpanFrom("Foo"), {{SpanFrom("Foo.redirect"), SpanFrom("Bar.redirected")}}, + std::move(foo_dispatcher)); + dispatcher.WireBackend(SpanFrom("Bar"), {}, std::move(bar_dispatcher)); + + { + std::vector<uint8_t> message; + json::ConvertJSONToCBOR(SpanFrom("{\"id\":42,\"method\":\"Foo.execute\"}"), + &message); + Dispatchable dispatchable(SpanFrom(message)); + ASSERT_TRUE(dispatchable.ok()); + UberDispatcher::DispatchResult dispatched = + dispatcher.Dispatch(dispatchable); + EXPECT_TRUE(dispatched.MethodFound()); + dispatched.Run(); + } + { + std::vector<uint8_t> message; + json::ConvertJSONToCBOR(SpanFrom("{\"id\":43,\"method\":\"Foo.redirect\"}"), + &message); + Dispatchable dispatchable(SpanFrom(message)); + ASSERT_TRUE(dispatchable.ok()); + UberDispatcher::DispatchResult dispatched = + dispatcher.Dispatch(dispatchable); + EXPECT_TRUE(dispatched.MethodFound()); + dispatched.Run(); + } + EXPECT_THAT(foo->DispatchedCommands(), testing::ElementsAre("execute")); + EXPECT_THAT(foo->ExecutedCommands(), testing::ElementsAre(42)); + EXPECT_THAT(bar->DispatchedCommands(), testing::ElementsAre("redirected")); + EXPECT_THAT(bar->ExecutedCommands(), testing::ElementsAre(43)); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/error_support.cc b/deps/inspector_protocol/crdtp/error_support.cc new file mode 100644 index 00000000000000..da4c2bed760bcc --- /dev/null +++ b/deps/inspector_protocol/crdtp/error_support.cc @@ -0,0 +1,59 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "error_support.h" + +#include <cassert> + +namespace crdtp { + +void ErrorSupport::Push() { + stack_.emplace_back(); +} + +void ErrorSupport::Pop() { + stack_.pop_back(); +} + +void ErrorSupport::SetName(const char* name) { + assert(!stack_.empty()); + stack_.back().type = NAME; + stack_.back().name = name; +} + +void ErrorSupport::SetIndex(size_t index) { + assert(!stack_.empty()); + stack_.back().type = INDEX; + stack_.back().index = index; +} + +void ErrorSupport::AddError(const char* error) { + assert(!stack_.empty()); + if (!errors_.empty()) + errors_ += "; "; + for (size_t ii = 0; ii < stack_.size(); ++ii) { + if (ii) + errors_ += "."; + const Segment& s = stack_[ii]; + switch (s.type) { + case NAME: + errors_ += s.name; + continue; + case INDEX: + errors_ += std::to_string(s.index); + continue; + default: + assert(s.type != EMPTY); + continue; + } + } + errors_ += ": "; + errors_ += error; +} + +span<uint8_t> ErrorSupport::Errors() const { + return SpanFrom(errors_); +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/error_support.h b/deps/inspector_protocol/crdtp/error_support.h new file mode 100644 index 00000000000000..231bf3e8ea63be --- /dev/null +++ b/deps/inspector_protocol/crdtp/error_support.h @@ -0,0 +1,62 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_ERROR_SUPPORT_H_ +#define CRDTP_ERROR_SUPPORT_H_ + +#include <cstdint> +#include <string> +#include <vector> +#include "export.h" +#include "span.h" + +namespace crdtp { +// ============================================================================= +// ErrorSupport - For tracking errors in tree structures. +// ============================================================================= + +// This abstraction is used when converting between Values and inspector +// objects, e.g. in lib/ValueConversions_{h,cc}.template. As the processing +// enters and exits a branch, we call Push / Pop. Within the branch, +// we either set the name or an index (in case we're processing the element of a +// list/vector). Only once an error is seen, the path which is now on the +// stack is materialized and prefixes the error message. E.g., +// "foo.bar.2: some error". After error collection, ::Errors() is used to +// access the message. +class CRDTP_EXPORT ErrorSupport { + public: + // Push / Pop operations for the path segments; after Push, either SetName or + // SetIndex must be called exactly once. + void Push(); + void Pop(); + + // Sets the name of the current segment on the stack; e.g. a field name. + // |name| must be a C++ string literal in 7 bit US-ASCII. + void SetName(const char* name); + // Sets the index of the current segment on the stack; e.g. an array index. + void SetIndex(size_t index); + + // Materializes the error internally. |error| must be a C++ string literal + // in 7 bit US-ASCII. + void AddError(const char* error); + + // Returns the semicolon-separated list of errors as in 7 bit ASCII. + span<uint8_t> Errors() const; + + private: + enum SegmentType { EMPTY, NAME, INDEX }; + struct Segment { + SegmentType type = EMPTY; + union { + const char* name; + size_t index; + }; + }; + std::vector<Segment> stack_; + std::string errors_; +}; + +} // namespace crdtp + +#endif // CRDTP_ERROR_SUPPORT_H_ diff --git a/deps/inspector_protocol/crdtp/error_support_test.cc b/deps/inspector_protocol/crdtp/error_support_test.cc new file mode 100644 index 00000000000000..87b27113dae8d0 --- /dev/null +++ b/deps/inspector_protocol/crdtp/error_support_test.cc @@ -0,0 +1,45 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "error_support.h" + +#include <string> +#include <vector> + +#include "test_platform.h" + +namespace crdtp { +TEST(ErrorSupportTest, Empty) { + ErrorSupport errors; + EXPECT_TRUE(errors.Errors().empty()); +} + +TEST(ErrorSupportTest, Nesting) { + ErrorSupport errors; + // Enter field foo, inter element at index 42, enter field bar, and encounter + // an error there ("something wrong"). + errors.Push(); + errors.SetName("foo"); + errors.Push(); + errors.SetIndex(42); + errors.Push(); + errors.SetName("bar_sibling"); + errors.SetName("bar"); + errors.AddError("something wrong"); + errors.Pop(); // bar + errors.Pop(); // 42 + // The common case is actually that we'll enter some field, set the name + // or index, and leave without ever producing an error. + errors.Push(); + errors.SetName("no_error_here"); + errors.Pop(); // no_error_here + errors.Push(); + errors.SetName("bang"); + errors.AddError("one last error"); + errors.Pop(); // bang + errors.Pop(); // foo + std::string out(errors.Errors().begin(), errors.Errors().end()); + EXPECT_EQ("foo.42.bar: something wrong; foo.bang: one last error", out); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/export.h b/deps/inspector_protocol/crdtp/export.h new file mode 100644 index 00000000000000..92fa1427c3b299 --- /dev/null +++ b/deps/inspector_protocol/crdtp/export.h @@ -0,0 +1,29 @@ +// 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. + +#ifndef CRDTP_EXPORT_H_ +#define CRDTP_EXPORT_H_ + +#if defined(COMPONENT_BUILD) +#if defined(WIN32) + +#if defined(CRDTP_IMPLEMENTATION) +#define CRDTP_EXPORT __declspec(dllexport) +#else +#define CRDTP_EXPORT __declspec(dllimport) +#endif // defined(CRDTP_IMPLEMENTATION) + +#else // defined(WIN32) +#if defined(CRDTP_IMPLEMENTATION) +#define CRDTP_EXPORT __attribute__((visibility("default"))) +#else +#define CRDTP_EXPORT +#endif +#endif + +#else // defined(COMPONENT_BUILD) +#define CRDTP_EXPORT +#endif + +#endif // CRDTP_EXPORT_H_ diff --git a/deps/inspector_protocol/crdtp/find_by_first.h b/deps/inspector_protocol/crdtp/find_by_first.h new file mode 100644 index 00000000000000..68c2715913402a --- /dev/null +++ b/deps/inspector_protocol/crdtp/find_by_first.h @@ -0,0 +1,58 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_FIND_BY_FIRST_H_ +#define CRDTP_FIND_BY_FIRST_H_ + +#include <algorithm> +#include <cstdint> +#include <memory> +#include <vector> + +#include "export.h" +#include "span.h" + +namespace crdtp { +// ============================================================================= +// FindByFirst - Retrieval from a sorted vector that's keyed by span<uint8_t>. +// ============================================================================= + +// Given a vector of pairs sorted by the first element of each pair, find +// the corresponding value given a key to be compared to the first element. +// Together with std::inplace_merge and pre-sorting or std::sort, this can +// be used to implement a minimalistic equivalent of Chromium's flat_map. + +// In this variant, the template parameter |T| is a value type and a +// |default_value| is provided. +template <typename T> +T FindByFirst(const std::vector<std::pair<span<uint8_t>, T>>& sorted_by_first, + span<uint8_t> key, + T default_value) { + auto it = std::lower_bound( + sorted_by_first.begin(), sorted_by_first.end(), key, + [](const std::pair<span<uint8_t>, T>& left, span<uint8_t> right) { + return SpanLessThan(left.first, right); + }); + return (it != sorted_by_first.end() && SpanEquals(it->first, key)) + ? it->second + : default_value; +} + +// In this variant, the template parameter |T| is a class or struct that's +// instantiated in std::unique_ptr, and we return either a T* or a nullptr. +template <typename T> +T* FindByFirst(const std::vector<std::pair<span<uint8_t>, std::unique_ptr<T>>>& + sorted_by_first, + span<uint8_t> key) { + auto it = std::lower_bound( + sorted_by_first.begin(), sorted_by_first.end(), key, + [](const std::pair<span<uint8_t>, std::unique_ptr<T>>& left, + span<uint8_t> right) { return SpanLessThan(left.first, right); }); + return (it != sorted_by_first.end() && SpanEquals(it->first, key)) + ? it->second.get() + : nullptr; +} +} // namespace crdtp + +#endif // CRDTP_FIND_BY_FIRST_H_ diff --git a/deps/inspector_protocol/crdtp/find_by_first_test.cc b/deps/inspector_protocol/crdtp/find_by_first_test.cc new file mode 100644 index 00000000000000..93c79e3f721a3f --- /dev/null +++ b/deps/inspector_protocol/crdtp/find_by_first_test.cc @@ -0,0 +1,76 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <string> + +#include "find_by_first.h" +#include "test_platform.h" + +namespace crdtp { +// ============================================================================= +// FindByFirst - Efficient retrieval from a sorted vector. +// ============================================================================= +TEST(FindByFirst, SpanBySpan) { + std::vector<std::pair<span<uint8_t>, span<uint8_t>>> sorted_span_by_span = { + {SpanFrom("foo1"), SpanFrom("bar1")}, + {SpanFrom("foo2"), SpanFrom("bar2")}, + {SpanFrom("foo3"), SpanFrom("bar3")}, + }; + { + auto result = FindByFirst(sorted_span_by_span, SpanFrom("foo1"), + SpanFrom("not_found")); + EXPECT_EQ("bar1", std::string(result.begin(), result.end())); + } + { + auto result = FindByFirst(sorted_span_by_span, SpanFrom("foo3"), + SpanFrom("not_found")); + EXPECT_EQ("bar3", std::string(result.begin(), result.end())); + } + { + auto result = FindByFirst(sorted_span_by_span, SpanFrom("baz"), + SpanFrom("not_found")); + EXPECT_EQ("not_found", std::string(result.begin(), result.end())); + } +} + +namespace { +class TestObject { + public: + explicit TestObject(const std::string& message) : message_(message) {} + + const std::string& message() const { return message_; } + + private: + std::string message_; +}; +} // namespace + +TEST(FindByFirst, ObjectBySpan) { + std::vector<std::pair<span<uint8_t>, std::unique_ptr<TestObject>>> + sorted_object_by_span; + sorted_object_by_span.push_back( + std::make_pair(SpanFrom("foo1"), std::make_unique<TestObject>("bar1"))); + sorted_object_by_span.push_back( + std::make_pair(SpanFrom("foo2"), std::make_unique<TestObject>("bar2"))); + sorted_object_by_span.push_back( + std::make_pair(SpanFrom("foo3"), std::make_unique<TestObject>("bar3"))); + { + TestObject* result = + FindByFirst<TestObject>(sorted_object_by_span, SpanFrom("foo1")); + ASSERT_TRUE(result); + ASSERT_EQ("bar1", result->message()); + } + { + TestObject* result = + FindByFirst<TestObject>(sorted_object_by_span, SpanFrom("foo3")); + ASSERT_TRUE(result); + ASSERT_EQ("bar3", result->message()); + } + { + TestObject* result = + FindByFirst<TestObject>(sorted_object_by_span, SpanFrom("baz")); + ASSERT_FALSE(result); + } +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/frontend_channel.h b/deps/inspector_protocol/crdtp/frontend_channel.h new file mode 100644 index 00000000000000..0aa7480c943237 --- /dev/null +++ b/deps/inspector_protocol/crdtp/frontend_channel.h @@ -0,0 +1,47 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_FRONTEND_CHANNEL_H_ +#define CRDTP_FRONTEND_CHANNEL_H_ + +#include <cstdint> +#include <memory> +#include "export.h" +#include "serializable.h" +#include "span.h" + +namespace crdtp { +// ============================================================================= +// FrontendChannel - For sending notifications and responses to protocol clients +// ============================================================================= +class CRDTP_EXPORT FrontendChannel { + public: + virtual ~FrontendChannel() = default; + + // Sends protocol responses and notifications. The |call_id| parameter is + // seemingly redundant because it's also included in the message, but + // responses may be sent from an untrusted source to a trusted process (e.g. + // from Chromium's renderer (blink) to the browser process), which needs + // to be able to match the response to an earlier request without parsing the + // messsage. + virtual void SendProtocolResponse(int call_id, + std::unique_ptr<Serializable> message) = 0; + virtual void SendProtocolNotification( + std::unique_ptr<Serializable> message) = 0; + + // FallThrough indicates that |message| should be handled in another layer. + // Usually this means the layer responding to the message didn't handle it, + // but in some cases messages are handled by multiple layers (e.g. both + // the embedder and the content layer in Chromium). + virtual void FallThrough(int call_id, + span<uint8_t> method, + span<uint8_t> message) = 0; + + // Session implementations may queue notifications for performance or + // other considerations; this is a hook for domain handlers to manually flush. + virtual void FlushProtocolNotifications() = 0; +}; +} // namespace crdtp + +#endif // CRDTP_FRONTEND_CHANNEL_H_ diff --git a/deps/inspector_protocol/crdtp/json.cc b/deps/inspector_protocol/crdtp/json.cc new file mode 100644 index 00000000000000..479f9ba51875ab --- /dev/null +++ b/deps/inspector_protocol/crdtp/json.cc @@ -0,0 +1,1037 @@ +// 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. + +#include "json.h" + +#include <algorithm> +#include <cassert> +#include <cmath> +#include <cstring> +#include <limits> +#include <stack> + +#include "cbor.h" +#include "json_platform.h" + +namespace crdtp { +namespace json { +// ============================================================================= +// json::NewJSONEncoder - for encoding streaming parser events as JSON +// ============================================================================= + +namespace { +// Prints |value| to |out| with 4 hex digits, most significant chunk first. +template <typename C> +void PrintHex(uint16_t value, C* out) { + for (int ii = 3; ii >= 0; --ii) { + int four_bits = 0xf & (value >> (4 * ii)); + out->push_back(four_bits + ((four_bits <= 9) ? '0' : ('a' - 10))); + } +} + +// In the writer below, we maintain a stack of State instances. +// It is just enough to emit the appropriate delimiters and brackets +// in JSON. +enum class Container { + // Used for the top-level, initial state. + NONE, + // Inside a JSON object. + MAP, + // Inside a JSON array. + ARRAY +}; + +class State { + public: + explicit State(Container container) : container_(container) {} + void StartElement(std::vector<uint8_t>* out) { StartElementTmpl(out); } + void StartElement(std::string* out) { StartElementTmpl(out); } + Container container() const { return container_; } + + private: + template <typename C> + void StartElementTmpl(C* out) { + assert(container_ != Container::NONE || size_ == 0); + if (size_ != 0) { + char delim = (!(size_ & 1) || container_ == Container::ARRAY) ? ',' : ':'; + out->push_back(delim); + } + ++size_; + } + + Container container_ = Container::NONE; + int size_ = 0; +}; + +constexpr char kBase64Table[] = + "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "abcdefghijklmnopqrstuvwxyz0123456789+/"; + +template <typename C> +void Base64Encode(const span<uint8_t>& in, C* out) { + // The following three cases are based on the tables in the example + // section in https://en.wikipedia.org/wiki/Base64. We process three + // input bytes at a time, emitting 4 output bytes at a time. + size_t ii = 0; + + // While possible, process three input bytes. + for (; ii + 3 <= in.size(); ii += 3) { + uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8) | in[ii + 2]; + out->push_back(kBase64Table[(twentyfour_bits >> 18)]); + out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); + out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); + out->push_back(kBase64Table[twentyfour_bits & 0x3f]); + } + if (ii + 2 <= in.size()) { // Process two input bytes. + uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8); + out->push_back(kBase64Table[(twentyfour_bits >> 18)]); + out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); + out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); + out->push_back('='); // Emit padding. + return; + } + if (ii + 1 <= in.size()) { // Process a single input byte. + uint32_t twentyfour_bits = (in[ii] << 16); + out->push_back(kBase64Table[(twentyfour_bits >> 18)]); + out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); + out->push_back('='); // Emit padding. + out->push_back('='); // Emit padding. + } +} + +// Implements a handler for JSON parser events to emit a JSON string. +template <typename C> +class JSONEncoder : public ParserHandler { + public: + JSONEncoder(C* out, Status* status) : out_(out), status_(status) { + *status_ = Status(); + state_.emplace(Container::NONE); + } + + void HandleMapBegin() override { + if (!status_->ok()) + return; + assert(!state_.empty()); + state_.top().StartElement(out_); + state_.emplace(Container::MAP); + Emit('{'); + } + + void HandleMapEnd() override { + if (!status_->ok()) + return; + assert(state_.size() >= 2 && state_.top().container() == Container::MAP); + state_.pop(); + Emit('}'); + } + + void HandleArrayBegin() override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + state_.emplace(Container::ARRAY); + Emit('['); + } + + void HandleArrayEnd() override { + if (!status_->ok()) + return; + assert(state_.size() >= 2 && state_.top().container() == Container::ARRAY); + state_.pop(); + Emit(']'); + } + + void HandleString16(span<uint16_t> chars) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + Emit('"'); + for (const uint16_t ch : chars) { + if (ch == '"') { + Emit('\\'); Emit('"'); + } else if (ch == '\\') { + Emit('\\'); Emit('\\'); + } else if (ch >= 32 && ch <= 127) { + Emit(ch); + } else if (ch == '\n') { + Emit('\\'); Emit('n'); + } else if (ch == '\r') { + Emit('\\'); Emit('r'); + } else if (ch == '\t') { + Emit('\\'); Emit('t'); + } else if (ch == '\b') { + Emit('\\'); Emit('b'); + } else if (ch == '\f') { + Emit('\\'); Emit('f'); + } else { + Emit('\\'); Emit('u'); + PrintHex(ch, out_); + } + } + Emit('"'); + } + + void HandleString8(span<uint8_t> chars) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + Emit('"'); + for (size_t ii = 0; ii < chars.size(); ++ii) { + uint8_t c = chars[ii]; + if (c == '"') { + Emit('\\'); Emit('"'); + } else if (c == '\\') { + Emit('\\'); Emit('\\'); + } else if (c >= 32 && c <= 127) { + Emit(c); + } else if (c == '\n') { + Emit('\\'); Emit('n'); + } else if (c == '\r') { + Emit('\\'); Emit('r'); + } else if (c == '\t') { + Emit('\\'); Emit('t'); + } else if (c == '\b') { + Emit('\\'); Emit('b'); + } else if (c == '\f') { + Emit('\\'); Emit('f'); + } else if (c < 32) { + Emit('\\'); Emit('u'); + PrintHex(static_cast<uint16_t>(c), out_); + } else { + // Inspect the leading byte to figure out how long the utf8 + // byte sequence is; while doing this initialize |codepoint| + // with the first few bits. + // See table in: https://en.wikipedia.org/wiki/UTF-8 + // byte one is 110x xxxx -> 2 byte utf8 sequence + // byte one is 1110 xxxx -> 3 byte utf8 sequence + // byte one is 1111 0xxx -> 4 byte utf8 sequence + uint32_t codepoint; + int num_bytes_left; + if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence + num_bytes_left = 1; + codepoint = c & 0x1f; + } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence + num_bytes_left = 2; + codepoint = c & 0x0f; + } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence + codepoint = c & 0x07; + num_bytes_left = 3; + } else { + continue; // invalid leading byte + } + + // If we have enough bytes in our input, decode the remaining ones + // belonging to this Unicode character into |codepoint|. + if (ii + num_bytes_left >= chars.size()) + continue; + bool invalid_byte_seen = false; + while (num_bytes_left > 0) { + c = chars[++ii]; + --num_bytes_left; + // Check the next byte is a continuation byte, that is 10xx xxxx. + if ((c & 0xc0) != 0x80) + invalid_byte_seen = true; + codepoint = (codepoint << 6) | (c & 0x3f); + } + if (invalid_byte_seen) + continue; + + // Disallow overlong encodings for ascii characters, as these + // would include " and other characters significant to JSON + // string termination / control. + if (codepoint <= 0x7f) + continue; + // Invalid in UTF8, and can't be represented in UTF16 anyway. + if (codepoint > 0x10ffff) + continue; + + // So, now we transcode to UTF16, + // using the math described at https://en.wikipedia.org/wiki/UTF-16, + // for either one or two 16 bit characters. + if (codepoint <= 0xffff) { + Emit("\\u"); + PrintHex(static_cast<uint16_t>(codepoint), out_); + continue; + } + codepoint -= 0x10000; + // high surrogate + Emit("\\u"); + PrintHex(static_cast<uint16_t>((codepoint >> 10) + 0xd800), out_); + // low surrogate + Emit("\\u"); + PrintHex(static_cast<uint16_t>((codepoint & 0x3ff) + 0xdc00), out_); + } + } + Emit('"'); + } + + void HandleBinary(span<uint8_t> bytes) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + Emit('"'); + Base64Encode(bytes, out_); + Emit('"'); + } + + void HandleDouble(double value) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + // JSON cannot represent NaN or Infinity. So, for compatibility, + // we behave like the JSON object in web browsers: emit 'null'. + if (!std::isfinite(value)) { + Emit("null"); + return; + } + // If |value| is a scalar, emit it as an int. Taken from json_writer.cc in + // Chromium. + if (value < static_cast<double>(std::numeric_limits<int64_t>::max()) && + value >= std::numeric_limits<int64_t>::min() && + std::floor(value) == value) { + Emit(std::to_string(static_cast<int64_t>(value))); + return; + } + std::string str_value = json::platform::DToStr(value); + // The following is somewhat paranoid, but also taken from json_writer.cc + // in Chromium: + // Ensure that the number has a .0 if there's no decimal or 'e'. This + // makes sure that when we read the JSON back, it's interpreted as a + // real rather than an int. + if (str_value.find_first_of(".eE") == std::string::npos) + str_value.append(".0"); + + // DToStr may fail to emit a 0 before the decimal dot. E.g. this is + // the case in base::NumberToString in Chromium (which is based on + // dmg_fp). So, much like + // https://cs.chromium.org/chromium/src/base/json/json_writer.cc + // we probe for this and emit the leading 0 anyway if necessary. + if (str_value[0] == '.') { + Emit('0'); + Emit(str_value); + } else if (str_value[0] == '-' && str_value[1] == '.') { + Emit("-0"); + // Skip the '-' from the original string and emit the rest. + out_->insert(out_->end(), str_value.begin() + 1, str_value.end()); + } else { + Emit(str_value); + } + } + + void HandleInt32(int32_t value) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + Emit(std::to_string(value)); + } + + void HandleBool(bool value) override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + if (value) + Emit("true"); + else + Emit("false"); + } + + void HandleNull() override { + if (!status_->ok()) + return; + state_.top().StartElement(out_); + Emit("null"); + } + + void HandleError(Status error) override { + assert(!error.ok()); + *status_ = error; + out_->clear(); + } + + private: + inline void Emit(char c) { out_->push_back(c); } + template<size_t N> + inline void Emit(const char (&str)[N]) { + out_->insert(out_->end(), str, str + N - 1); + } + inline void Emit(const std::string& str) { + out_->insert(out_->end(), str.begin(), str.end()); + } + + C* out_; + Status* status_; + std::stack<State> state_; +}; +} // namespace + +std::unique_ptr<ParserHandler> NewJSONEncoder(std::vector<uint8_t>* out, + Status* status) { + return std::unique_ptr<ParserHandler>( + new JSONEncoder<std::vector<uint8_t>>(out, status)); +} + +std::unique_ptr<ParserHandler> NewJSONEncoder(std::string* out, + Status* status) { + return std::unique_ptr<ParserHandler>( + new JSONEncoder<std::string>(out, status)); +} + +// ============================================================================= +// json::ParseJSON - for receiving streaming parser events for JSON. +// ============================================================================= + +namespace { +const int kStackLimit = 300; + +enum Token { + ObjectBegin, + ObjectEnd, + ArrayBegin, + ArrayEnd, + StringLiteral, + Number, + BoolTrue, + BoolFalse, + NullToken, + ListSeparator, + ObjectPairSeparator, + InvalidToken, + NoInput +}; + +const char* const kNullString = "null"; +const char* const kTrueString = "true"; +const char* const kFalseString = "false"; + +template <typename Char> +class JsonParser { + public: + explicit JsonParser(ParserHandler* handler) : handler_(handler) {} + + void Parse(const Char* start, size_t length) { + start_pos_ = start; + const Char* end = start + length; + const Char* tokenEnd = nullptr; + ParseValue(start, end, &tokenEnd, 0); + if (error_) + return; + if (tokenEnd != end) { + HandleError(Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS, tokenEnd); + } + } + + private: + bool CharsToDouble(const uint16_t* chars, size_t length, double* result) { + std::string buffer; + buffer.reserve(length + 1); + for (size_t ii = 0; ii < length; ++ii) { + bool is_ascii = !(chars[ii] & ~0x7F); + if (!is_ascii) + return false; + buffer.push_back(static_cast<char>(chars[ii])); + } + return platform::StrToD(buffer.c_str(), result); + } + + bool CharsToDouble(const uint8_t* chars, size_t length, double* result) { + std::string buffer(reinterpret_cast<const char*>(chars), length); + return platform::StrToD(buffer.c_str(), result); + } + + static bool ParseConstToken(const Char* start, + const Char* end, + const Char** token_end, + const char* token) { + // |token| is \0 terminated, it's one of the constants at top of the file. + while (start < end && *token != '\0' && *start++ == *token++) { + } + if (*token != '\0') + return false; + *token_end = start; + return true; + } + + static bool ReadInt(const Char* start, + const Char* end, + const Char** token_end, + bool allow_leading_zeros) { + if (start == end) + return false; + bool has_leading_zero = '0' == *start; + int length = 0; + while (start < end && '0' <= *start && *start <= '9') { + ++start; + ++length; + } + if (!length) + return false; + if (!allow_leading_zeros && length > 1 && has_leading_zero) + return false; + *token_end = start; + return true; + } + + static bool ParseNumberToken(const Char* start, + const Char* end, + const Char** token_end) { + // We just grab the number here. We validate the size in DecodeNumber. + // According to RFC4627, a valid number is: [minus] int [frac] [exp] + if (start == end) + return false; + Char c = *start; + if ('-' == c) + ++start; + + if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/false)) + return false; + if (start == end) { + *token_end = start; + return true; + } + + // Optional fraction part + c = *start; + if ('.' == c) { + ++start; + if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) + return false; + if (start == end) { + *token_end = start; + return true; + } + c = *start; + } + + // Optional exponent part + if ('e' == c || 'E' == c) { + ++start; + if (start == end) + return false; + c = *start; + if ('-' == c || '+' == c) { + ++start; + if (start == end) + return false; + } + if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) + return false; + } + + *token_end = start; + return true; + } + + static bool ReadHexDigits(const Char* start, + const Char* end, + const Char** token_end, + int digits) { + if (end - start < digits) + return false; + for (int i = 0; i < digits; ++i) { + Char c = *start++; + if (!(('0' <= c && c <= '9') || ('a' <= c && c <= 'f') || + ('A' <= c && c <= 'F'))) + return false; + } + *token_end = start; + return true; + } + + static bool ParseStringToken(const Char* start, + const Char* end, + const Char** token_end) { + while (start < end) { + Char c = *start++; + if ('\\' == c) { + if (start == end) + return false; + c = *start++; + // Make sure the escaped char is valid. + switch (c) { + case 'x': + if (!ReadHexDigits(start, end, &start, 2)) + return false; + break; + case 'u': + if (!ReadHexDigits(start, end, &start, 4)) + return false; + break; + case '\\': + case '/': + case 'b': + case 'f': + case 'n': + case 'r': + case 't': + case 'v': + case '"': + break; + default: + return false; + } + } else if ('"' == c) { + *token_end = start; + return true; + } + } + return false; + } + + static bool SkipComment(const Char* start, + const Char* end, + const Char** comment_end) { + if (start == end) + return false; + + if (*start != '/' || start + 1 >= end) + return false; + ++start; + + if (*start == '/') { + // Single line comment, read to newline. + for (++start; start < end; ++start) { + if (*start == '\n' || *start == '\r') { + *comment_end = start + 1; + return true; + } + } + *comment_end = end; + // Comment reaches end-of-input, which is fine. + return true; + } + + if (*start == '*') { + Char previous = '\0'; + // Block comment, read until end marker. + for (++start; start < end; previous = *start++) { + if (previous == '*' && *start == '/') { + *comment_end = start + 1; + return true; + } + } + // Block comment must close before end-of-input. + return false; + } + + return false; + } + + static bool IsSpaceOrNewLine(Char c) { + // \v = vertial tab; \f = form feed page break. + return c == ' ' || c == '\n' || c == '\v' || c == '\f' || c == '\r' || + c == '\t'; + } + + static void SkipWhitespaceAndComments(const Char* start, + const Char* end, + const Char** whitespace_end) { + while (start < end) { + if (IsSpaceOrNewLine(*start)) { + ++start; + } else if (*start == '/') { + const Char* comment_end = nullptr; + if (!SkipComment(start, end, &comment_end)) + break; + start = comment_end; + } else { + break; + } + } + *whitespace_end = start; + } + + static Token ParseToken(const Char* start, + const Char* end, + const Char** tokenStart, + const Char** token_end) { + SkipWhitespaceAndComments(start, end, tokenStart); + start = *tokenStart; + + if (start == end) + return NoInput; + + switch (*start) { + case 'n': + if (ParseConstToken(start, end, token_end, kNullString)) + return NullToken; + break; + case 't': + if (ParseConstToken(start, end, token_end, kTrueString)) + return BoolTrue; + break; + case 'f': + if (ParseConstToken(start, end, token_end, kFalseString)) + return BoolFalse; + break; + case '[': + *token_end = start + 1; + return ArrayBegin; + case ']': + *token_end = start + 1; + return ArrayEnd; + case ',': + *token_end = start + 1; + return ListSeparator; + case '{': + *token_end = start + 1; + return ObjectBegin; + case '}': + *token_end = start + 1; + return ObjectEnd; + case ':': + *token_end = start + 1; + return ObjectPairSeparator; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case '-': + if (ParseNumberToken(start, end, token_end)) + return Number; + break; + case '"': + if (ParseStringToken(start + 1, end, token_end)) + return StringLiteral; + break; + } + return InvalidToken; + } + + static int HexToInt(Char c) { + if ('0' <= c && c <= '9') + return c - '0'; + if ('A' <= c && c <= 'F') + return c - 'A' + 10; + if ('a' <= c && c <= 'f') + return c - 'a' + 10; + assert(false); // Unreachable. + return 0; + } + + static bool DecodeString(const Char* start, + const Char* end, + std::vector<uint16_t>* output) { + if (start == end) + return true; + if (start > end) + return false; + output->reserve(end - start); + while (start < end) { + uint16_t c = *start++; + // If the |Char| we're dealing with is really a byte, then + // we have utf8 here, and we need to check for multibyte characters + // and transcode them to utf16 (either one or two utf16 chars). + if (sizeof(Char) == sizeof(uint8_t) && c > 0x7f) { + // Inspect the leading byte to figure out how long the utf8 + // byte sequence is; while doing this initialize |codepoint| + // with the first few bits. + // See table in: https://en.wikipedia.org/wiki/UTF-8 + // byte one is 110x xxxx -> 2 byte utf8 sequence + // byte one is 1110 xxxx -> 3 byte utf8 sequence + // byte one is 1111 0xxx -> 4 byte utf8 sequence + uint32_t codepoint; + int num_bytes_left; + if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence + num_bytes_left = 1; + codepoint = c & 0x1f; + } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence + num_bytes_left = 2; + codepoint = c & 0x0f; + } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence + codepoint = c & 0x07; + num_bytes_left = 3; + } else { + return false; // invalid leading byte + } + + // If we have enough bytes in our inpput, decode the remaining ones + // belonging to this Unicode character into |codepoint|. + if (start + num_bytes_left > end) + return false; + while (num_bytes_left > 0) { + c = *start++; + --num_bytes_left; + // Check the next byte is a continuation byte, that is 10xx xxxx. + if ((c & 0xc0) != 0x80) + return false; + codepoint = (codepoint << 6) | (c & 0x3f); + } + + // Disallow overlong encodings for ascii characters, as these + // would include " and other characters significant to JSON + // string termination / control. + if (codepoint <= 0x7f) + return false; + // Invalid in UTF8, and can't be represented in UTF16 anyway. + if (codepoint > 0x10ffff) + return false; + + // So, now we transcode to UTF16, + // using the math described at https://en.wikipedia.org/wiki/UTF-16, + // for either one or two 16 bit characters. + if (codepoint <= 0xffff) { + output->push_back(codepoint); + continue; + } + codepoint -= 0x10000; + output->push_back((codepoint >> 10) + 0xd800); // high surrogate + output->push_back((codepoint & 0x3ff) + 0xdc00); // low surrogate + continue; + } + if ('\\' != c) { + output->push_back(c); + continue; + } + if (start == end) + return false; + c = *start++; + + if (c == 'x') { + // \x is not supported. + return false; + } + + switch (c) { + case '"': + case '/': + case '\\': + break; + case 'b': + c = '\b'; + break; + case 'f': + c = '\f'; + break; + case 'n': + c = '\n'; + break; + case 'r': + c = '\r'; + break; + case 't': + c = '\t'; + break; + case 'v': + c = '\v'; + break; + case 'u': + c = (HexToInt(*start) << 12) + (HexToInt(*(start + 1)) << 8) + + (HexToInt(*(start + 2)) << 4) + HexToInt(*(start + 3)); + start += 4; + break; + default: + return false; + } + output->push_back(c); + } + return true; + } + + void ParseValue(const Char* start, + const Char* end, + const Char** value_token_end, + int depth) { + if (depth > kStackLimit) { + HandleError(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, start); + return; + } + const Char* token_start = nullptr; + const Char* token_end = nullptr; + Token token = ParseToken(start, end, &token_start, &token_end); + switch (token) { + case NoInput: + HandleError(Error::JSON_PARSER_NO_INPUT, token_start); + return; + case InvalidToken: + HandleError(Error::JSON_PARSER_INVALID_TOKEN, token_start); + return; + case NullToken: + handler_->HandleNull(); + break; + case BoolTrue: + handler_->HandleBool(true); + break; + case BoolFalse: + handler_->HandleBool(false); + break; + case Number: { + double value; + if (!CharsToDouble(token_start, token_end - token_start, &value)) { + HandleError(Error::JSON_PARSER_INVALID_NUMBER, token_start); + return; + } + if (value >= std::numeric_limits<int32_t>::min() && + value <= std::numeric_limits<int32_t>::max() && + static_cast<int32_t>(value) == value) + handler_->HandleInt32(static_cast<int32_t>(value)); + else + handler_->HandleDouble(value); + break; + } + case StringLiteral: { + std::vector<uint16_t> value; + bool ok = DecodeString(token_start + 1, token_end - 1, &value); + if (!ok) { + HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); + return; + } + handler_->HandleString16(span<uint16_t>(value.data(), value.size())); + break; + } + case ArrayBegin: { + handler_->HandleArrayBegin(); + start = token_end; + token = ParseToken(start, end, &token_start, &token_end); + while (token != ArrayEnd) { + ParseValue(start, end, &token_end, depth + 1); + if (error_) + return; + + // After a list value, we expect a comma or the end of the list. + start = token_end; + token = ParseToken(start, end, &token_start, &token_end); + if (token == ListSeparator) { + start = token_end; + token = ParseToken(start, end, &token_start, &token_end); + if (token == ArrayEnd) { + HandleError(Error::JSON_PARSER_UNEXPECTED_ARRAY_END, token_start); + return; + } + } else if (token != ArrayEnd) { + // Unexpected value after list value. Bail out. + HandleError(Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED, + token_start); + return; + } + } + handler_->HandleArrayEnd(); + break; + } + case ObjectBegin: { + handler_->HandleMapBegin(); + start = token_end; + token = ParseToken(start, end, &token_start, &token_end); + while (token != ObjectEnd) { + if (token != StringLiteral) { + HandleError(Error::JSON_PARSER_STRING_LITERAL_EXPECTED, + token_start); + return; + } + std::vector<uint16_t> key; + if (!DecodeString(token_start + 1, token_end - 1, &key)) { + HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); + return; + } + handler_->HandleString16(span<uint16_t>(key.data(), key.size())); + start = token_end; + + token = ParseToken(start, end, &token_start, &token_end); + if (token != ObjectPairSeparator) { + HandleError(Error::JSON_PARSER_COLON_EXPECTED, token_start); + return; + } + start = token_end; + + ParseValue(start, end, &token_end, depth + 1); + if (error_) + return; + start = token_end; + + // After a key/value pair, we expect a comma or the end of the + // object. + token = ParseToken(start, end, &token_start, &token_end); + if (token == ListSeparator) { + start = token_end; + token = ParseToken(start, end, &token_start, &token_end); + if (token == ObjectEnd) { + HandleError(Error::JSON_PARSER_UNEXPECTED_MAP_END, token_start); + return; + } + } else if (token != ObjectEnd) { + // Unexpected value after last object value. Bail out. + HandleError(Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED, + token_start); + return; + } + } + handler_->HandleMapEnd(); + break; + } + + default: + // We got a token that's not a value. + HandleError(Error::JSON_PARSER_VALUE_EXPECTED, token_start); + return; + } + + SkipWhitespaceAndComments(token_end, end, value_token_end); + } + + void HandleError(Error error, const Char* pos) { + assert(error != Error::OK); + if (!error_) { + handler_->HandleError( + Status{error, static_cast<size_t>(pos - start_pos_)}); + error_ = true; + } + } + + const Char* start_pos_ = nullptr; + bool error_ = false; + ParserHandler* handler_; +}; +} // namespace + +void ParseJSON(span<uint8_t> chars, ParserHandler* handler) { + JsonParser<uint8_t> parser(handler); + parser.Parse(chars.data(), chars.size()); +} + +void ParseJSON(span<uint16_t> chars, ParserHandler* handler) { + JsonParser<uint16_t> parser(handler); + parser.Parse(chars.data(), chars.size()); +} + +// ============================================================================= +// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding +// ============================================================================= +template <typename C> +Status ConvertCBORToJSONTmpl(span<uint8_t> cbor, C* json) { + Status status; + std::unique_ptr<ParserHandler> json_writer = NewJSONEncoder(json, &status); + cbor::ParseCBOR(cbor, json_writer.get()); + return status; +} + +Status ConvertCBORToJSON(span<uint8_t> cbor, std::vector<uint8_t>* json) { + return ConvertCBORToJSONTmpl(cbor, json); +} + +Status ConvertCBORToJSON(span<uint8_t> cbor, std::string* json) { + return ConvertCBORToJSONTmpl(cbor, json); +} + +template <typename T> +Status ConvertJSONToCBORTmpl(span<T> json, std::vector<uint8_t>* cbor) { + Status status; + std::unique_ptr<ParserHandler> encoder = cbor::NewCBOREncoder(cbor, &status); + ParseJSON(json, encoder.get()); + return status; +} + +Status ConvertJSONToCBOR(span<uint8_t> json, std::vector<uint8_t>* cbor) { + return ConvertJSONToCBORTmpl(json, cbor); +} + +Status ConvertJSONToCBOR(span<uint16_t> json, std::vector<uint8_t>* cbor) { + return ConvertJSONToCBORTmpl(json, cbor); +} +} // namespace json +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/json.h b/deps/inspector_protocol/crdtp/json.h new file mode 100644 index 00000000000000..3e3c6b386af465 --- /dev/null +++ b/deps/inspector_protocol/crdtp/json.h @@ -0,0 +1,57 @@ +// 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. + +#ifndef CRDTP_JSON_H_ +#define CRDTP_JSON_H_ + +#include <memory> +#include <vector> +#include "export.h" +#include "parser_handler.h" + +namespace crdtp { +namespace json { +// ============================================================================= +// json::NewJSONEncoder - for encoding streaming parser events as JSON +// ============================================================================= + +// Returns a handler object which will write ascii characters to |out|. +// |status->ok()| will be false iff the handler routine HandleError() is called. +// In that case, we'll stop emitting output. +// Except for calling the HandleError routine at any time, the client +// code must call the Handle* methods in an order in which they'd occur +// in valid JSON; otherwise we may crash (the code uses assert). +CRDTP_EXPORT std::unique_ptr<ParserHandler> NewJSONEncoder( + std::vector<uint8_t>* out, + Status* status); + +CRDTP_EXPORT std::unique_ptr<ParserHandler> NewJSONEncoder(std::string* out, + Status* status); + +// ============================================================================= +// json::ParseJSON - for receiving streaming parser events for JSON +// ============================================================================= + +CRDTP_EXPORT void ParseJSON(span<uint8_t> chars, ParserHandler* handler); + +CRDTP_EXPORT void ParseJSON(span<uint16_t> chars, ParserHandler* handler); + +// ============================================================================= +// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding +// ============================================================================= + +CRDTP_EXPORT Status ConvertCBORToJSON(span<uint8_t> cbor, std::string* json); + +CRDTP_EXPORT Status ConvertCBORToJSON(span<uint8_t> cbor, + std::vector<uint8_t>* json); + +CRDTP_EXPORT Status ConvertJSONToCBOR(span<uint8_t> json, + std::vector<uint8_t>* cbor); + +CRDTP_EXPORT Status ConvertJSONToCBOR(span<uint16_t> json, + std::vector<uint8_t>* cbor); +} // namespace json +} // namespace crdtp + +#endif // CRDTP_JSON_H_ diff --git a/deps/inspector_protocol/crdtp/json_platform.cc b/deps/inspector_protocol/crdtp/json_platform.cc new file mode 100644 index 00000000000000..d43db8683c269d --- /dev/null +++ b/deps/inspector_protocol/crdtp/json_platform.cc @@ -0,0 +1,33 @@ +// 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. + +#include "json_platform.h" + +#include <sstream> + +// This is a reference implementation using the C++ standard library. +// Downstream projects may invoke their preferred routines instead, +// by modifying / replacing this file to call them. +// Examples of optimized string<->number conversion libraries: +// - https://github.com/google/double-conversion +// - https://github.com/abseil/abseil-cpp/blob/master/absl/strings/numbers.h +namespace crdtp { +namespace json { +namespace platform { +bool StrToD(const char* str, double* result) { + std::istringstream is(str); + is.imbue(std::locale::classic()); + is >> *result; + return !is.fail() && is.eof(); +} + +std::string DToStr(double value) { + std::stringstream ss; + ss.imbue(std::locale::classic()); + ss << value; + return ss.str(); +} +} // namespace platform +} // namespace json +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/json_platform.h b/deps/inspector_protocol/crdtp/json_platform.h new file mode 100644 index 00000000000000..2ab09bf80e44e8 --- /dev/null +++ b/deps/inspector_protocol/crdtp/json_platform.h @@ -0,0 +1,26 @@ +// 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. + +#ifndef CRDTP_JSON_PLATFORM_H_ +#define CRDTP_JSON_PLATFORM_H_ + +#include <string> + +namespace crdtp { +namespace json { +// These routines are implemented in json_platform.cc, or in a +// platform-dependent (code-base dependent) custom replacement. +// E.g., json_platform_chromium.cc, json_platform_v8.cc. +namespace platform { +// Parses |str| into |result|. Returns false iff there are +// leftover characters or parsing errors. +bool StrToD(const char* str, double* result); + +// Prints |value| in a format suitable for JSON. +std::string DToStr(double value); +} // namespace platform +} // namespace json +} // namespace crdtp + +#endif // CRDTP_JSON_PLATFORM_H_ diff --git a/deps/inspector_protocol/crdtp/json_test.cc b/deps/inspector_protocol/crdtp/json_test.cc new file mode 100644 index 00000000000000..64362d391bf7b6 --- /dev/null +++ b/deps/inspector_protocol/crdtp/json_test.cc @@ -0,0 +1,753 @@ +// Copyright 2018 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "json.h" + +#include <array> +#include <clocale> +#include <cmath> +#include <cstdlib> +#include <cstring> +#include <iomanip> +#include <iostream> +#include <sstream> +#include <string> + +#include "cbor.h" +#include "parser_handler.h" +#include "span.h" +#include "status.h" +#include "status_test_support.h" +#include "test_platform.h" + +namespace crdtp { +namespace json { +// ============================================================================= +// json::NewJSONEncoder - for encoding streaming parser events as JSON +// ============================================================================= + +void WriteUTF8AsUTF16(ParserHandler* writer, const std::string& utf8) { + writer->HandleString16(SpanFrom(UTF8ToUTF16(SpanFrom(utf8)))); +} + +TEST(JsonEncoder, OverlongEncodings) { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + + // We encode 0x7f, which is the DEL ascii character, as a 4 byte UTF8 + // sequence. This is called an overlong encoding, because only 1 byte + // is needed to represent 0x7f as UTF8. + std::vector<uint8_t> chars = { + 0xf0, // Starts 4 byte utf8 sequence + 0x80, // continuation byte + 0x81, // continuation byte w/ payload bit 7 set to 1. + 0xbf, // continuation byte w/ payload bits 0-6 set to 11111. + }; + writer->HandleString8(SpanFrom(chars)); + EXPECT_EQ("\"\"", out); // Empty string means that 0x7f was rejected (good). +} + +TEST(JsonEncoder, NotAContinuationByte) { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + + // |world| encodes the globe as a 4 byte UTF8 sequence. So, naturally, it'll + // have a start byte, followed by three continuation bytes. + std::string world = "🌎"; + ASSERT_EQ(4u, world.size()); + ASSERT_EQ(world[1] & 0xc0, 0x80); // checks for continuation byte + ASSERT_EQ(world[2] & 0xc0, 0x80); + ASSERT_EQ(world[3] & 0xc0, 0x80); + + // Now create a corrupted UTF8 string, starting with the first two bytes from + // |world|, followed by an ASCII message. Upon encountering '!', our decoder + // will realize that it's not a continuation byte; it'll skip to the end of + // this UTF8 sequence and continue with the next character. In this case, the + // 'H', of "Hello". + std::vector<uint8_t> chars; + chars.push_back(world[0]); + chars.push_back(world[1]); + chars.push_back('!'); + chars.push_back('?'); + chars.push_back('H'); + chars.push_back('e'); + chars.push_back('l'); + chars.push_back('l'); + chars.push_back('o'); + writer->HandleString8(SpanFrom(chars)); + EXPECT_EQ("\"Hello\"", out); // "Hello" shows we restarted at 'H'. +} + +TEST(JsonEncoder, EscapesLoneHighSurrogates) { + // This tests that the JSON encoder escapes lone high surrogates, i.e. + // invalid code points in the range from 0xD800 to 0xDBFF. In + // unescaped form, these cannot be represented in well-formed UTF-8 or + // UTF-16. + std::vector<uint16_t> chars = {'a', 0xd800, 'b', 0xdada, 'c', 0xdbff, 'd'}; + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleString16(span<uint16_t>(chars.data(), chars.size())); + EXPECT_EQ("\"a\\ud800b\\udadac\\udbffd\"", out); +} + +TEST(JsonEncoder, EscapesLoneLowSurrogates) { + // This tests that the JSON encoder escapes lone low surrogates, i.e. + // invalid code points in the range from 0xDC00 to 0xDFFF. In + // unescaped form, these cannot be represented in well-formed UTF-8 or + // UTF-16. + std::vector<uint16_t> chars = {'a', 0xdc00, 'b', 0xdede, 'c', 0xdfff, 'd'}; + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleString16(span<uint16_t>(chars.data(), chars.size())); + EXPECT_EQ("\"a\\udc00b\\udedec\\udfffd\"", out); +} + +TEST(JsonEncoder, EscapesFFFF) { + // This tests that the JSON encoder will escape the UTF16 input 0xffff as + // \uffff; useful to check this since it's an edge case. + std::vector<uint16_t> chars = {'a', 'b', 'c', 0xffff, 'd'}; + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleString16(span<uint16_t>(chars.data(), chars.size())); + EXPECT_EQ("\"abc\\uffffd\"", out); +} + +TEST(JsonEncoder, Passes0x7FString8) { + std::vector<uint8_t> chars = {'a', 0x7f, 'b'}; + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleString8(span<uint8_t>(chars.data(), chars.size())); + EXPECT_EQ( + "\"a\x7f" + "b\"", + out); +} + +TEST(JsonEncoder, Passes0x7FString16) { + std::vector<uint16_t> chars16 = {'a', 0x7f, 'b'}; + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleString16(span<uint16_t>(chars16.data(), chars16.size())); + EXPECT_EQ( + "\"a\x7f" + "b\"", + out); +} + +TEST(JsonEncoder, IncompleteUtf8Sequence) { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + + writer->HandleArrayBegin(); // This emits [, which starts an array. + + { // 🌎 takes four bytes to encode in UTF-8. We test with the first three; + // This means we're trying to emit a string that consists solely of an + // incomplete UTF-8 sequence. So the string in the JSON output is empty. + std::string world_utf8 = "🌎"; + ASSERT_EQ(4u, world_utf8.size()); + std::vector<uint8_t> chars(world_utf8.begin(), world_utf8.begin() + 3); + writer->HandleString8(SpanFrom(chars)); + EXPECT_EQ("[\"\"", out); // Incomplete sequence rejected: empty string. + } + + { // This time, the incomplete sequence is at the end of the string. + std::string msg = "Hello, \xF0\x9F\x8C"; + std::vector<uint8_t> chars(msg.begin(), msg.end()); + writer->HandleString8(SpanFrom(chars)); + EXPECT_EQ("[\"\",\"Hello, \"", out); // Incomplete sequence dropped at end. + } +} + +TEST(JsonStdStringWriterTest, HelloWorld) { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleMapBegin(); + WriteUTF8AsUTF16(writer.get(), "msg1"); + WriteUTF8AsUTF16(writer.get(), "Hello, 🌎."); + std::string key = "msg1-as-utf8"; + std::string value = "Hello, 🌎."; + writer->HandleString8(SpanFrom(key)); + writer->HandleString8(SpanFrom(value)); + WriteUTF8AsUTF16(writer.get(), "msg2"); + WriteUTF8AsUTF16(writer.get(), "\\\b\r\n\t\f\""); + WriteUTF8AsUTF16(writer.get(), "nested"); + writer->HandleMapBegin(); + WriteUTF8AsUTF16(writer.get(), "double"); + writer->HandleDouble(3.1415); + WriteUTF8AsUTF16(writer.get(), "int"); + writer->HandleInt32(-42); + WriteUTF8AsUTF16(writer.get(), "bool"); + writer->HandleBool(false); + WriteUTF8AsUTF16(writer.get(), "null"); + writer->HandleNull(); + writer->HandleMapEnd(); + WriteUTF8AsUTF16(writer.get(), "array"); + writer->HandleArrayBegin(); + writer->HandleInt32(1); + writer->HandleInt32(2); + writer->HandleInt32(3); + writer->HandleArrayEnd(); + writer->HandleMapEnd(); + EXPECT_TRUE(status.ok()); + EXPECT_EQ( + "{\"msg1\":\"Hello, \\ud83c\\udf0e.\"," + "\"msg1-as-utf8\":\"Hello, \\ud83c\\udf0e.\"," + "\"msg2\":\"\\\\\\b\\r\\n\\t\\f\\\"\"," + "\"nested\":{\"double\":3.1415,\"int\":-42," + "\"bool\":false,\"null\":null},\"array\":[1,2,3]}", + out); +} + +TEST(JsonStdStringWriterTest, ScalarsAreRenderedAsInt) { + // Test that Number.MIN_SAFE_INTEGER / Number.MAX_SAFE_INTEGER from Javascript + // are rendered as integers (no decimal point / rounding), even when we + // encode them from double. Javascript's Number is an IEE754 double, so + // it has 53 bits to represent integers. + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleMapBegin(); + + writer->HandleString8(SpanFrom("Number.MIN_SAFE_INTEGER")); + EXPECT_EQ(-0x1fffffffffffff, -9007199254740991); // 53 bits for integers. + writer->HandleDouble(-9007199254740991); // Note HandleDouble here. + + writer->HandleString8(SpanFrom("Number.MAX_SAFE_INTEGER")); + EXPECT_EQ(0x1fffffffffffff, 9007199254740991); // 53 bits for integers. + writer->HandleDouble(9007199254740991); // Note HandleDouble here. + + writer->HandleMapEnd(); + EXPECT_TRUE(status.ok()); + EXPECT_EQ( + "{\"Number.MIN_SAFE_INTEGER\":-9007199254740991," + "\"Number.MAX_SAFE_INTEGER\":9007199254740991}", + out); +} + +TEST(JsonStdStringWriterTest, RepresentingNonFiniteValuesAsNull) { + // JSON can't represent +Infinity, -Infinity, or NaN. + // So in practice it's mapped to null. + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleMapBegin(); + writer->HandleString8(SpanFrom("Infinity")); + writer->HandleDouble(std::numeric_limits<double>::infinity()); + writer->HandleString8(SpanFrom("-Infinity")); + writer->HandleDouble(-std::numeric_limits<double>::infinity()); + writer->HandleString8(SpanFrom("NaN")); + writer->HandleDouble(std::numeric_limits<double>::quiet_NaN()); + writer->HandleMapEnd(); + EXPECT_TRUE(status.ok()); + EXPECT_EQ("{\"Infinity\":null,\"-Infinity\":null,\"NaN\":null}", out); +} + +TEST(JsonStdStringWriterTest, BinaryEncodedAsJsonString) { + // The encoder emits binary submitted to ParserHandler::HandleBinary + // as base64. The following three examples are taken from + // https://en.wikipedia.org/wiki/Base64. + { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M', 'a', 'n'}))); + EXPECT_TRUE(status.ok()); + EXPECT_EQ("\"TWFu\"", out); + } + { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M', 'a'}))); + EXPECT_TRUE(status.ok()); + EXPECT_EQ("\"TWE=\"", out); + } + { + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleBinary(SpanFrom(std::vector<uint8_t>({'M'}))); + EXPECT_TRUE(status.ok()); + EXPECT_EQ("\"TQ==\"", out); + } + { // "Hello, world.", verified with base64decode.org. + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleBinary(SpanFrom(std::vector<uint8_t>( + {'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '.'}))); + EXPECT_TRUE(status.ok()); + EXPECT_EQ("\"SGVsbG8sIHdvcmxkLg==\"", out); + } +} + +TEST(JsonStdStringWriterTest, HandlesErrors) { + // When an error is sent via HandleError, it saves it in the provided + // status and clears the output. + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleMapBegin(); + WriteUTF8AsUTF16(writer.get(), "msg1"); + writer->HandleError(Status{Error::JSON_PARSER_VALUE_EXPECTED, 42}); + EXPECT_THAT(status, StatusIs(Error::JSON_PARSER_VALUE_EXPECTED, 42u)); + EXPECT_EQ("", out); +} + +TEST(JsonStdStringWriterTest, DoubleToString_LeadingZero) { + // In JSON, .1 must be rendered as 0.1, and -.7 must be rendered as -0.7. + std::string out; + Status status; + std::unique_ptr<ParserHandler> writer = NewJSONEncoder(&out, &status); + writer->HandleArrayBegin(); + writer->HandleDouble(.1); + writer->HandleDouble(-.7); + writer->HandleArrayEnd(); + EXPECT_EQ("[0.1,-0.7]", out); +} + +// ============================================================================= +// json::ParseJSON - for receiving streaming parser events for JSON +// ============================================================================= + +class Log : public ParserHandler { + public: + void HandleMapBegin() override { log_ << "map begin\n"; } + + void HandleMapEnd() override { log_ << "map end\n"; } + + void HandleArrayBegin() override { log_ << "array begin\n"; } + + void HandleArrayEnd() override { log_ << "array end\n"; } + + void HandleString8(span<uint8_t> chars) override { + log_ << "string8: " << std::string(chars.begin(), chars.end()) << "\n"; + } + + void HandleString16(span<uint16_t> chars) override { + raw_log_string16_.emplace_back(chars.begin(), chars.end()); + log_ << "string16: " << UTF16ToUTF8(chars) << "\n"; + } + + void HandleBinary(span<uint8_t> bytes) override { + // JSON doesn't have native support for arbitrary bytes, so our parser will + // never call this. + CHECK(false); + } + + void HandleDouble(double value) override { + log_ << "double: " << value << "\n"; + } + + void HandleInt32(int32_t value) override { log_ << "int: " << value << "\n"; } + + void HandleBool(bool value) override { log_ << "bool: " << value << "\n"; } + + void HandleNull() override { log_ << "null\n"; } + + void HandleError(Status status) override { status_ = status; } + + std::string str() const { return status_.ok() ? log_.str() : ""; } + + std::vector<std::vector<uint16_t>> raw_log_string16() const { + return raw_log_string16_; + } + + Status status() const { return status_; } + + private: + std::ostringstream log_; + std::vector<std::vector<uint16_t>> raw_log_string16_; + Status status_; +}; + +class JsonParserTest : public ::testing::Test { + protected: + Log log_; +}; + +TEST_F(JsonParserTest, SimpleDictionary) { + std::string json = "{\"foo\": 42}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: foo\n" + "int: 42\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, UsAsciiDelCornerCase) { + // DEL (0x7f) is a 7 bit US-ASCII character, and while it is a control + // character according to Unicode, it's not considered a control + // character in https://tools.ietf.org/html/rfc7159#section-7, so + // it can be placed directly into the JSON string, without JSON escaping. + std::string json = "{\"foo\": \"a\x7f\"}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: foo\n" + "string16: a\x7f\n" + "map end\n", + log_.str()); + + // We've seen an implementation of UTF16ToUTF8 which would replace the DEL + // character with ' ', so this simple roundtrip tests the routines in + // encoding_test_helper.h, to make test failures of the above easier to + // diagnose. + std::vector<uint16_t> utf16 = UTF8ToUTF16(SpanFrom(json)); + EXPECT_EQ(json, UTF16ToUTF8(SpanFrom(utf16))); +} + +TEST_F(JsonParserTest, Whitespace) { + std::string json = "\n {\n\"msg\"\n: \v\"Hello, world.\"\t\r}\t"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: msg\n" + "string16: Hello, world.\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, NestedDictionary) { + std::string json = "{\"foo\": {\"bar\": {\"baz\": 1}, \"bar2\": 2}}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: foo\n" + "map begin\n" + "string16: bar\n" + "map begin\n" + "string16: baz\n" + "int: 1\n" + "map end\n" + "string16: bar2\n" + "int: 2\n" + "map end\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, Doubles) { + std::string json = "{\"foo\": 3.1415, \"bar\": 31415e-4}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: foo\n" + "double: 3.1415\n" + "string16: bar\n" + "double: 3.1415\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, Unicode) { + // Globe character. 0xF0 0x9F 0x8C 0x8E in utf8, 0xD83C 0xDF0E in utf16. + std::string json = "{\"msg\": \"Hello, \\uD83C\\uDF0E.\"}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: msg\n" + "string16: Hello, 🌎.\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, Unicode_ParseUtf16) { + // Globe character. utf8: 0xF0 0x9F 0x8C 0x8E; utf16: 0xD83C 0xDF0E. + // Crescent moon character. utf8: 0xF0 0x9F 0x8C 0x99; utf16: 0xD83C 0xDF19. + + // We provide the moon with json escape, but the earth as utf16 input. + // Either way they arrive as utf8 (after decoding in log_.str()). + std::vector<uint16_t> json = + UTF8ToUTF16(SpanFrom("{\"space\": \"🌎 \\uD83C\\uDF19.\"}")); + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: space\n" + "string16: 🌎 🌙.\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, Unicode_ParseUtf16_SingleEscapeUpToFFFF) { + // 0xFFFF is the max codepoint that can be represented as a single \u escape. + // One way to write this is \uffff, another way is to encode it as a 3 byte + // UTF-8 sequence (0xef 0xbf 0xbf). Both are equivalent. + + // Example with both ways of encoding code point 0xFFFF in a JSON string. + std::string json = "{\"escape\": \"\xef\xbf\xbf or \\uffff\"}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + + // Shows both inputs result in equivalent output once converted to UTF-8. + EXPECT_EQ( + "map begin\n" + "string16: escape\n" + "string16: \xEF\xBF\xBF or \xEF\xBF\xBF\n" + "map end\n", + log_.str()); + + // Make an even stronger assertion: The parser represents \xffff as a single + // UTF-16 char. + ASSERT_EQ(2u, log_.raw_log_string16().size()); + std::vector<uint16_t> expected = {0xffff, ' ', 'o', 'r', ' ', 0xffff}; + EXPECT_EQ(expected, log_.raw_log_string16()[1]); +} + +TEST_F(JsonParserTest, Unicode_ParseUtf8) { + // Used below: + // гласность - example for 2 byte utf8, Russian word "glasnost" + // 屋 - example for 3 byte utf8, Chinese word for "house" + // 🌎 - example for 4 byte utf8: 0xF0 0x9F 0x8C 0x8E; utf16: 0xD83C 0xDF0E. + // 🌙 - example for escapes: utf8: 0xF0 0x9F 0x8C 0x99; utf16: 0xD83C 0xDF19. + + // We provide the moon with json escape, but the earth as utf8 input. + // Either way they arrive as utf8 (after decoding in log_.str()). + std::string json = + "{" + "\"escapes\": \"\\uD83C\\uDF19\"," + "\"2 byte\":\"гласность\"," + "\"3 byte\":\"屋\"," + "\"4 byte\":\"🌎\"" + "}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: escapes\n" + "string16: 🌙\n" + "string16: 2 byte\n" + "string16: гласность\n" + "string16: 3 byte\n" + "string16: 屋\n" + "string16: 4 byte\n" + "string16: 🌎\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, UnprocessedInputRemainsError) { + // Trailing junk after the valid JSON. + std::string json = "{\"foo\": 3.1415} junk"; + size_t junk_idx = json.find("junk"); + EXPECT_NE(junk_idx, std::string::npos); + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS, junk_idx)); + EXPECT_EQ("", log_.str()); +} + +std::string MakeNestedJson(int depth) { + std::string json; + for (int ii = 0; ii < depth; ++ii) + json += "{\"foo\":"; + json += "42"; + for (int ii = 0; ii < depth; ++ii) + json += "}"; + return json; +} + +TEST_F(JsonParserTest, StackLimitExceededError_BelowLimit) { + // kStackLimit is 300 (see json_parser.cc). First let's + // try with a small nested example. + std::string json_3 = MakeNestedJson(3); + ParseJSON(SpanFrom(json_3), &log_); + EXPECT_TRUE(log_.status().ok()); + EXPECT_EQ( + "map begin\n" + "string16: foo\n" + "map begin\n" + "string16: foo\n" + "map begin\n" + "string16: foo\n" + "int: 42\n" + "map end\n" + "map end\n" + "map end\n", + log_.str()); +} + +TEST_F(JsonParserTest, StackLimitExceededError_AtLimit) { + // Now with kStackLimit (300). + std::string json_limit = MakeNestedJson(300); + ParseJSON(span<uint8_t>(reinterpret_cast<const uint8_t*>(json_limit.data()), + json_limit.size()), + &log_); + EXPECT_THAT(log_.status(), StatusIsOk()); +} + +TEST_F(JsonParserTest, StackLimitExceededError_AboveLimit) { + // Now with kStackLimit + 1 (301) - it exceeds in the innermost instance. + std::string exceeded = MakeNestedJson(301); + ParseJSON(SpanFrom(exceeded), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, + strlen("{\"foo\":") * 301)); +} + +TEST_F(JsonParserTest, StackLimitExceededError_WayAboveLimit) { + // Now way past the limit. Still, the point of exceeding is 301. + std::string far_out = MakeNestedJson(320); + ParseJSON(SpanFrom(far_out), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, + strlen("{\"foo\":") * 301)); +} + +TEST_F(JsonParserTest, NoInputError) { + std::string json = ""; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_NO_INPUT, 0u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, InvalidTokenError) { + std::string json = "|"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_INVALID_TOKEN, 0u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, InvalidNumberError) { + // Mantissa exceeds max (the constant used here is int64_t max). + std::string json = "1E9223372036854775807"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_INVALID_NUMBER, 0u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, InvalidStringError) { + // \x22 is an unsupported escape sequence + std::string json = "\"foo\\x22\""; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_INVALID_STRING, 0u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, UnexpectedArrayEndError) { + std::string json = "[1,2,]"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_UNEXPECTED_ARRAY_END, 5u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, CommaOrArrayEndExpectedError) { + std::string json = "[1,2 2"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED, 5u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, StringLiteralExpectedError) { + // There's an error because the key bar, a string, is not terminated. + std::string json = "{\"foo\": 3.1415, \"bar: 31415e-4}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_STRING_LITERAL_EXPECTED, 16u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, ColonExpectedError) { + std::string json = "{\"foo\", 42}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_COLON_EXPECTED, 6u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, UnexpectedMapEndError) { + std::string json = "{\"foo\": 42, }"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_UNEXPECTED_MAP_END, 12u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, CommaOrMapEndExpectedError) { + // The second separator should be a comma. + std::string json = "{\"foo\": 3.1415: \"bar\": 0}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), + StatusIs(Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED, 14u)); + EXPECT_EQ("", log_.str()); +} + +TEST_F(JsonParserTest, ValueExpectedError) { + std::string json = "}"; + ParseJSON(SpanFrom(json), &log_); + EXPECT_THAT(log_.status(), StatusIs(Error::JSON_PARSER_VALUE_EXPECTED, 0u)); + EXPECT_EQ("", log_.str()); +} + +template <typename T> +class ConvertJSONToCBORTest : public ::testing::Test {}; + +using ContainerTestTypes = ::testing::Types<std::vector<uint8_t>, std::string>; +TYPED_TEST_SUITE(ConvertJSONToCBORTest, ContainerTestTypes); + +TYPED_TEST(ConvertJSONToCBORTest, RoundTripValidJson) { + for (const std::string& json_in : { + "{\"msg\":\"Hello, world.\",\"lst\":[1,2,3]}", + "3.1415", + "false", + "true", + "\"Hello, world.\"", + "[1,2,3]", + "[]", + }) { + SCOPED_TRACE(json_in); + TypeParam json(json_in.begin(), json_in.end()); + std::vector<uint8_t> cbor; + { + Status status = ConvertJSONToCBOR(SpanFrom(json), &cbor); + EXPECT_THAT(status, StatusIsOk()); + } + TypeParam roundtrip_json; + { + Status status = ConvertCBORToJSON(SpanFrom(cbor), &roundtrip_json); + EXPECT_THAT(status, StatusIsOk()); + } + EXPECT_EQ(json, roundtrip_json); + } +} + +TYPED_TEST(ConvertJSONToCBORTest, RoundTripValidJson16) { + std::vector<uint16_t> json16 = { + '{', '"', 'm', 's', 'g', '"', ':', '"', 'H', 'e', 'l', 'l', + 'o', ',', ' ', 0xd83c, 0xdf0e, '.', '"', ',', '"', 'l', 's', 't', + '"', ':', '[', '1', ',', '2', ',', '3', ']', '}'}; + std::vector<uint8_t> cbor; + { + Status status = + ConvertJSONToCBOR(span<uint16_t>(json16.data(), json16.size()), &cbor); + EXPECT_THAT(status, StatusIsOk()); + } + TypeParam roundtrip_json; + { + Status status = ConvertCBORToJSON(SpanFrom(cbor), &roundtrip_json); + EXPECT_THAT(status, StatusIsOk()); + } + std::string json = "{\"msg\":\"Hello, \\ud83c\\udf0e.\",\"lst\":[1,2,3]}"; + TypeParam expected_json(json.begin(), json.end()); + EXPECT_EQ(expected_json, roundtrip_json); +} +} // namespace json +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/maybe.h b/deps/inspector_protocol/crdtp/maybe.h new file mode 100644 index 00000000000000..ecdfb4fd89fe8f --- /dev/null +++ b/deps/inspector_protocol/crdtp/maybe.h @@ -0,0 +1,154 @@ +// 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. +#ifndef CRDTP_MAYBE_H_ +#define CRDTP_MAYBE_H_ + +#include <cassert> +#include <memory> + +namespace crdtp { + +// ============================================================================= +// detail::PtrMaybe, detail::ValueMaybe, templates for optional +// pointers / values which are used in ../lib/Forward_h.template. +// ============================================================================= + +namespace detail { +template <typename T> +class PtrMaybe { + public: + PtrMaybe() = default; + PtrMaybe(std::unique_ptr<T> value) : value_(std::move(value)) {} + PtrMaybe(PtrMaybe&& other) noexcept : value_(std::move(other.value_)) {} + void operator=(std::unique_ptr<T> value) { value_ = std::move(value); } + + // std::optional<>-compatible accessors (preferred). + bool has_value() const { return !!value_; } + operator bool() const { return has_value(); } + const T& value() const& { + assert(has_value()); + return *value_; + } + T& value() & { + assert(has_value()); + return *value_; + } + T&& value() && { + assert(has_value()); + return std::move(*value_); + } + const T& value_or(const T& default_value) const { + return has_value() ? *value_ : default_value; + } + T* operator->() { return &value(); } + const T* operator->() const { return &value(); } + + T& operator*() & { return value(); } + const T& operator*() const& { return value(); } + T&& operator*() && { return std::move(value()); } + + // Legacy Maybe<> accessors (deprecated). + T* fromJust() const { + assert(value_); + return value_.get(); + } + T* fromMaybe(T* default_value) const { + return value_ ? value_.get() : default_value; + } + bool isJust() const { return value_ != nullptr; } + + private: + std::unique_ptr<T> value_; +}; + +template <typename T> +class ValueMaybe { + public: + ValueMaybe() : is_just_(false), value_() {} + ValueMaybe(T value) : is_just_(true), value_(std::move(value)) {} + ValueMaybe(ValueMaybe&& other) noexcept + : is_just_(other.is_just_), value_(std::move(other.value_)) {} + void operator=(T value) { + value_ = std::move(value); + is_just_ = true; + } + + // std::optional<>-compatible accessors (preferred). + bool has_value() const { return is_just_; } + operator bool() const { return has_value(); } + const T& value() const& { + assert(is_just_); + return value_; + } + T& value() & { + assert(is_just_); + return value_; + } + T&& value() && { + assert(is_just_); + return *std::move(value_); + } + template <typename U> + T value_or(U&& default_value) const& { + return is_just_ ? value_ : std::forward<U>(default_value); + } + template <typename U> + T value_or(U&& default_value) && { + return is_just_ ? std::move(value_) : std::forward<U>(default_value); + } + T* operator->() { return &value(); } + const T* operator->() const { return &value(); } + + T& operator*() & { return value(); } + const T& operator*() const& { return value(); } + T&& operator*() && { return std::move(value()); } + + // Legacy Maybe<> accessors (deprecated). + const T& fromJust() const { + assert(is_just_); + return value_; + } + const T& fromMaybe(const T& default_value) const { + return is_just_ ? value_ : default_value; + } + bool isJust() const { return is_just_; } + + private: + bool is_just_; + T value_; +}; + +template <typename T> +struct MaybeTypedef { + typedef PtrMaybe<T> type; +}; + +template <> +struct MaybeTypedef<bool> { + typedef ValueMaybe<bool> type; +}; + +template <> +struct MaybeTypedef<int> { + typedef ValueMaybe<int> type; +}; + +template <> +struct MaybeTypedef<double> { + typedef ValueMaybe<double> type; +}; + +template <> +struct MaybeTypedef<std::string> { + typedef ValueMaybe<std::string> type; +}; + +} // namespace detail + +template <typename T> +using Maybe = typename detail::MaybeTypedef<T>::type; + +} // namespace crdtp + +#endif // CRDTP_MAYBE_H_ diff --git a/deps/inspector_protocol/crdtp/maybe_test.cc b/deps/inspector_protocol/crdtp/maybe_test.cc new file mode 100644 index 00000000000000..d606692b51a1c5 --- /dev/null +++ b/deps/inspector_protocol/crdtp/maybe_test.cc @@ -0,0 +1,44 @@ +// 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. + +#include "maybe.h" + +#include <string> +#include <vector> + +#include "test_platform.h" + +namespace crdtp { + +// ============================================================================= +// detail::PtrMaybe, detail::ValueMaybe, templates for optional +// pointers / values which are used in ../lib/Forward_h.template. +// ============================================================================= +TEST(PtrMaybeTest, SmokeTest) { + detail::PtrMaybe<std::vector<uint32_t>> example; + EXPECT_FALSE(example.has_value()); + std::unique_ptr<std::vector<uint32_t>> v(new std::vector<uint32_t>); + v->push_back(42); + v->push_back(21); + example = std::move(v); + EXPECT_TRUE(example.has_value()); + EXPECT_THAT(example.value(), testing::ElementsAre(42, 21)); + std::vector<uint32_t> out = *std::move(example); + EXPECT_TRUE(example.has_value()); + EXPECT_THAT(*example, testing::IsEmpty()); + EXPECT_THAT(out, testing::ElementsAre(42, 21)); +} + +TEST(ValueMaybeTest, SmokeTest) { + detail::ValueMaybe<int32_t> example; + EXPECT_FALSE(example.has_value()); + EXPECT_EQ(-1, example.value_or(-1)); + example = 42; + EXPECT_TRUE(example.has_value()); + EXPECT_EQ(42, example.value()); + int32_t out = *std::move(example); + EXPECT_EQ(out, 42); +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/parser_handler.h b/deps/inspector_protocol/crdtp/parser_handler.h new file mode 100644 index 00000000000000..ed7aae14da34b1 --- /dev/null +++ b/deps/inspector_protocol/crdtp/parser_handler.h @@ -0,0 +1,39 @@ +// 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. + +#ifndef CRDTP_PARSER_HANDLER_H_ +#define CRDTP_PARSER_HANDLER_H_ + +#include <cstdint> +#include "span.h" +#include "status.h" + +namespace crdtp { +// Handler interface for parser events emitted by a streaming parser. +// See cbor::NewCBOREncoder, cbor::ParseCBOR, json::NewJSONEncoder, +// json::ParseJSON. +class ParserHandler { + public: + virtual ~ParserHandler() = default; + virtual void HandleMapBegin() = 0; + virtual void HandleMapEnd() = 0; + virtual void HandleArrayBegin() = 0; + virtual void HandleArrayEnd() = 0; + virtual void HandleString8(span<uint8_t> chars) = 0; + virtual void HandleString16(span<uint16_t> chars) = 0; + virtual void HandleBinary(span<uint8_t> bytes) = 0; + virtual void HandleDouble(double value) = 0; + virtual void HandleInt32(int32_t value) = 0; + virtual void HandleBool(bool value) = 0; + virtual void HandleNull() = 0; + + // The parser may send one error even after other events have already + // been received. Client code is reponsible to then discard the + // already processed events. + // |error| must be an eror, as in, |error.is_ok()| can't be true. + virtual void HandleError(Status error) = 0; +}; +} // namespace crdtp + +#endif // CRDTP_PARSER_HANDLER_H_ diff --git a/deps/inspector_protocol/crdtp/protocol_core.cc b/deps/inspector_protocol/crdtp/protocol_core.cc new file mode 100644 index 00000000000000..d9cc3b11360087 --- /dev/null +++ b/deps/inspector_protocol/crdtp/protocol_core.cc @@ -0,0 +1,289 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "protocol_core.h" + +#include <algorithm> +#include <cassert> +#include <string> + +namespace crdtp { + +DeserializerState::DeserializerState(std::vector<uint8_t> bytes) + : storage_(new std::vector<uint8_t>(std::move(bytes))), + tokenizer_(span<uint8_t>(storage_->data(), storage_->size())) {} + +DeserializerState::DeserializerState(Storage storage, span<uint8_t> span) + : storage_(std::move(storage)), tokenizer_(span) {} + +void DeserializerState::RegisterError(Error error) { + assert(Error::OK != error); + if (tokenizer_.Status().ok()) + status_ = Status{error, tokenizer_.Status().pos}; +} + +void DeserializerState::RegisterFieldPath(span<char> name) { + field_path_.push_back(name); +} + +std::string DeserializerState::ErrorMessage(span<char> message_name) const { + std::string msg = "Failed to deserialize "; + msg.append(message_name.begin(), message_name.end()); + for (int field = static_cast<int>(field_path_.size()) - 1; field >= 0; + --field) { + msg.append("."); + msg.append(field_path_[field].begin(), field_path_[field].end()); + } + Status s = status(); + if (!s.ok()) + msg += " - " + s.ToASCIIString(); + return msg; +} + +Status DeserializerState::status() const { + if (!tokenizer_.Status().ok()) + return tokenizer_.Status(); + return status_; +} + +namespace { +constexpr int32_t GetMandatoryFieldMask( + const DeserializerDescriptor::Field* fields, + size_t count) { + int32_t mask = 0; + for (size_t i = 0; i < count; ++i) { + if (!fields[i].is_optional) + mask |= (1 << i); + } + return mask; +} +} // namespace + +DeserializerDescriptor::DeserializerDescriptor(const Field* fields, + size_t field_count) + : fields_(fields), + field_count_(field_count), + mandatory_field_mask_(GetMandatoryFieldMask(fields, field_count)) {} + +bool DeserializerDescriptor::Deserialize(DeserializerState* state, + void* obj) const { + auto* tokenizer = state->tokenizer(); + + // As a special compatibility quirk, allow empty objects if + // no mandatory fields are required. + if (tokenizer->TokenTag() == cbor::CBORTokenTag::DONE && + !mandatory_field_mask_) { + return true; + } + if (tokenizer->TokenTag() == cbor::CBORTokenTag::ENVELOPE) + tokenizer->EnterEnvelope(); + if (tokenizer->TokenTag() != cbor::CBORTokenTag::MAP_START) { + state->RegisterError(Error::CBOR_MAP_START_EXPECTED); + return false; + } + tokenizer->Next(); + int32_t seen_mandatory_fields = 0; + for (; tokenizer->TokenTag() != cbor::CBORTokenTag::STOP; tokenizer->Next()) { + if (tokenizer->TokenTag() != cbor::CBORTokenTag::STRING8) { + state->RegisterError(Error::CBOR_INVALID_MAP_KEY); + return false; + } + span<uint8_t> u_key = tokenizer->GetString8(); + span<char> key(reinterpret_cast<const char*>(u_key.data()), u_key.size()); + tokenizer->Next(); + if (!DeserializeField(state, key, &seen_mandatory_fields, obj)) + return false; + } + // Only compute mandatory fields once per type. + int32_t missing_fields = seen_mandatory_fields ^ mandatory_field_mask_; + if (missing_fields) { + int32_t idx = 0; + while ((missing_fields & 1) == 0) { + missing_fields >>= 1; + ++idx; + } + state->RegisterError(Error::BINDINGS_MANDATORY_FIELD_MISSING); + state->RegisterFieldPath(fields_[idx].name); + return false; + } + return true; +} + +bool DeserializerDescriptor::DeserializeField(DeserializerState* state, + span<char> name, + int* seen_mandatory_fields, + void* obj) const { + // TODO(caseq): consider checking if the sought field is the one + // after the last deserialized. + const auto* begin = fields_; + const auto* end = fields_ + field_count_; + auto entry = std::lower_bound( + begin, end, name, [](const Field& field_desc, span<char> field_name) { + return SpanLessThan(field_desc.name, field_name); + }); + // Unknown field is not an error -- we may be working against an + // implementation of a later version of the protocol. + // TODO(caseq): support unknown arrays and maps not enclosed by an envelope. + if (entry == end || !SpanEquals(entry->name, name)) + return true; + if (!entry->deserializer(state, obj)) { + state->RegisterFieldPath(name); + return false; + } + if (!entry->is_optional) + *seen_mandatory_fields |= 1 << (entry - begin); + return true; +} + +bool ProtocolTypeTraits<bool>::Deserialize(DeserializerState* state, + bool* value) { + const auto tag = state->tokenizer()->TokenTag(); + if (tag == cbor::CBORTokenTag::TRUE_VALUE) { + *value = true; + return true; + } + if (tag == cbor::CBORTokenTag::FALSE_VALUE) { + *value = false; + return true; + } + state->RegisterError(Error::BINDINGS_BOOL_VALUE_EXPECTED); + return false; +} + +void ProtocolTypeTraits<bool>::Serialize(bool value, + std::vector<uint8_t>* bytes) { + bytes->push_back(value ? cbor::EncodeTrue() : cbor::EncodeFalse()); +} + +bool ProtocolTypeTraits<int32_t>::Deserialize(DeserializerState* state, + int32_t* value) { + if (state->tokenizer()->TokenTag() != cbor::CBORTokenTag::INT32) { + state->RegisterError(Error::BINDINGS_INT32_VALUE_EXPECTED); + return false; + } + *value = state->tokenizer()->GetInt32(); + return true; +} + +void ProtocolTypeTraits<int32_t>::Serialize(int32_t value, + std::vector<uint8_t>* bytes) { + cbor::EncodeInt32(value, bytes); +} + +ContainerSerializer::ContainerSerializer(std::vector<uint8_t>* bytes, + uint8_t tag) + : bytes_(bytes) { + envelope_.EncodeStart(bytes_); + bytes_->push_back(tag); +} + +void ContainerSerializer::EncodeStop() { + bytes_->push_back(cbor::EncodeStop()); + envelope_.EncodeStop(bytes_); +} + +ObjectSerializer::ObjectSerializer() + : serializer_(&owned_bytes_, cbor::EncodeIndefiniteLengthMapStart()) {} + +ObjectSerializer::~ObjectSerializer() = default; + +std::unique_ptr<Serializable> ObjectSerializer::Finish() { + serializer_.EncodeStop(); + return Serializable::From(std::move(owned_bytes_)); +} + +bool ProtocolTypeTraits<double>::Deserialize(DeserializerState* state, + double* value) { + // Double values that round-trip through JSON may end up getting represented + // as an int32 (SIGNED, UNSIGNED) on the wire in CBOR. Therefore, we also + // accept an INT32 here. + if (state->tokenizer()->TokenTag() == cbor::CBORTokenTag::INT32) { + *value = state->tokenizer()->GetInt32(); + return true; + } + if (state->tokenizer()->TokenTag() != cbor::CBORTokenTag::DOUBLE) { + state->RegisterError(Error::BINDINGS_DOUBLE_VALUE_EXPECTED); + return false; + } + *value = state->tokenizer()->GetDouble(); + return true; +} + +void ProtocolTypeTraits<double>::Serialize(double value, + std::vector<uint8_t>* bytes) { + cbor::EncodeDouble(value, bytes); +} + +class IncomingDeferredMessage : public DeferredMessage { + public: + // Creates the state from the part of another message. + // Note storage is opaque and is mostly to retain ownership. + // It may be null in case caller owns the memory and will dispose + // of the message synchronously. + IncomingDeferredMessage(DeserializerState::Storage storage, + span<uint8_t> span) + : storage_(storage), span_(span) {} + + private: + DeserializerState MakeDeserializer() const override { + return DeserializerState(storage_, span_); + } + void AppendSerialized(std::vector<uint8_t>* out) const override { + out->insert(out->end(), span_.begin(), span_.end()); + } + + DeserializerState::Storage storage_; + span<uint8_t> span_; +}; + +class OutgoingDeferredMessage : public DeferredMessage { + public: + OutgoingDeferredMessage() = default; + explicit OutgoingDeferredMessage(std::unique_ptr<Serializable> serializable) + : serializable_(std::move(serializable)) { + assert(!!serializable_); + } + + private: + DeserializerState MakeDeserializer() const override { + return DeserializerState(serializable_->Serialize()); + } + void AppendSerialized(std::vector<uint8_t>* out) const override { + serializable_->AppendSerialized(out); + } + + std::unique_ptr<Serializable> serializable_; +}; + +// static +std::unique_ptr<DeferredMessage> DeferredMessage::FromSerializable( + std::unique_ptr<Serializable> serializeable) { + return std::make_unique<OutgoingDeferredMessage>(std::move(serializeable)); +} + +// static +std::unique_ptr<DeferredMessage> DeferredMessage::FromSpan( + span<uint8_t> bytes) { + return std::make_unique<IncomingDeferredMessage>(nullptr, bytes); +} + +bool ProtocolTypeTraits<std::unique_ptr<DeferredMessage>>::Deserialize( + DeserializerState* state, + std::unique_ptr<DeferredMessage>* value) { + if (state->tokenizer()->TokenTag() != cbor::CBORTokenTag::ENVELOPE) { + state->RegisterError(Error::CBOR_INVALID_ENVELOPE); + return false; + } + *value = std::make_unique<IncomingDeferredMessage>( + state->storage(), state->tokenizer()->GetEnvelope()); + return true; +} + +void ProtocolTypeTraits<std::unique_ptr<DeferredMessage>>::Serialize( + const std::unique_ptr<DeferredMessage>& value, + std::vector<uint8_t>* bytes) { + value->AppendSerialized(bytes); +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/protocol_core.h b/deps/inspector_protocol/crdtp/protocol_core.h new file mode 100644 index 00000000000000..e89e0b2d9516eb --- /dev/null +++ b/deps/inspector_protocol/crdtp/protocol_core.h @@ -0,0 +1,418 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_PROTOCOL_CORE_H_ +#define CRDTP_PROTOCOL_CORE_H_ + +#include <sys/types.h> + +#include <memory> +#include <string> +#include <tuple> +#include <vector> + +#include "cbor.h" +#include "maybe.h" +#include "serializable.h" +#include "span.h" +#include "status.h" + +namespace crdtp { + +class CRDTP_EXPORT DeserializerState { + public: + using Storage = std::shared_ptr<const std::vector<uint8_t>>; + + // Creates a state from the raw bytes received from the peer. + explicit DeserializerState(std::vector<uint8_t> bytes); + // Creates the state from the part of another message. + DeserializerState(Storage storage, span<uint8_t> span); + DeserializerState(const DeserializerState& r) = delete; + DeserializerState(DeserializerState&& r) = default; + + // Registers |error|, unless the tokenizer's status is already an error. + void RegisterError(Error error); + // Registers |name| as a segment of the field path. + void RegisterFieldPath(span<char> name); + + // Produces an error message considering |tokenizer.Status()|, + // status_, and field_path_. + std::string ErrorMessage(span<char> message_name) const; + Status status() const; + const Storage& storage() const { return storage_; } + cbor::CBORTokenizer* tokenizer() { return &tokenizer_; } + + private: + const Storage storage_; + cbor::CBORTokenizer tokenizer_; + Status status_; + std::vector<span<char>> field_path_; +}; + +template <typename T, typename = void> +struct ProtocolTypeTraits {}; + +template <> +struct CRDTP_EXPORT ProtocolTypeTraits<bool> { + static bool Deserialize(DeserializerState* state, bool* value); + static void Serialize(bool value, std::vector<uint8_t>* bytes); +}; + +template <> +struct CRDTP_EXPORT ProtocolTypeTraits<int32_t> { + static bool Deserialize(DeserializerState* state, int* value); + static void Serialize(int value, std::vector<uint8_t>* bytes); +}; + +template <> +struct CRDTP_EXPORT ProtocolTypeTraits<double> { + static bool Deserialize(DeserializerState* state, double* value); + static void Serialize(double value, std::vector<uint8_t>* bytes); +}; + +class CRDTP_EXPORT ContainerSerializer { + public: + ContainerSerializer(std::vector<uint8_t>* bytes, uint8_t tag); + + template <typename T> + void AddField(span<char> field_name, const T& value) { + cbor::EncodeString8( + span<uint8_t>(reinterpret_cast<const uint8_t*>(field_name.data()), + field_name.size()), + bytes_); + ProtocolTypeTraits<T>::Serialize(value, bytes_); + } + template <typename T> + void AddField(span<char> field_name, const detail::ValueMaybe<T>& value) { + if (!value.has_value()) { + return; + } + AddField(field_name, value.value()); + } + + template <typename T> + void AddField(span<char> field_name, const detail::PtrMaybe<T>& value) { + if (!value.has_value()) { + return; + } + AddField(field_name, value.value()); + } + + void EncodeStop(); + + private: + std::vector<uint8_t>* const bytes_; + cbor::EnvelopeEncoder envelope_; +}; + +class CRDTP_EXPORT ObjectSerializer { + public: + ObjectSerializer(); + ~ObjectSerializer(); + + template <typename T> + void AddField(span<char> name, const T& field) { + serializer_.AddField(name, field); + } + std::unique_ptr<Serializable> Finish(); + + private: + std::vector<uint8_t> owned_bytes_; + ContainerSerializer serializer_; +}; + +class CRDTP_EXPORT DeserializerDescriptor { + public: + struct CRDTP_EXPORT Field { + span<char> name; + bool is_optional; + bool (*deserializer)(DeserializerState* state, void* obj); + }; + + DeserializerDescriptor(const Field* fields, size_t field_count); + + bool Deserialize(DeserializerState* state, void* obj) const; + + private: + bool DeserializeField(DeserializerState* state, + span<char> name, + int* seen_mandatory_fields, + void* obj) const; + + const Field* const fields_; + const size_t field_count_; + const int mandatory_field_mask_; +}; + +template <typename T> +struct ProtocolTypeTraits<std::vector<T>> { + static bool Deserialize(DeserializerState* state, std::vector<T>* value) { + auto* tokenizer = state->tokenizer(); + if (tokenizer->TokenTag() == cbor::CBORTokenTag::ENVELOPE) + tokenizer->EnterEnvelope(); + if (tokenizer->TokenTag() != cbor::CBORTokenTag::ARRAY_START) { + state->RegisterError(Error::CBOR_ARRAY_START_EXPECTED); + return false; + } + assert(value->empty()); + tokenizer->Next(); + for (; tokenizer->TokenTag() != cbor::CBORTokenTag::STOP; + tokenizer->Next()) { + value->emplace_back(); + if (!ProtocolTypeTraits<T>::Deserialize(state, &value->back())) + return false; + } + return true; + } + + static void Serialize(const std::vector<T>& value, + std::vector<uint8_t>* bytes) { + ContainerSerializer container_serializer( + bytes, cbor::EncodeIndefiniteLengthArrayStart()); + for (const auto& item : value) + ProtocolTypeTraits<T>::Serialize(item, bytes); + container_serializer.EncodeStop(); + } +}; + +template <typename T> +struct ProtocolTypeTraits<std::unique_ptr<std::vector<T>>> { + static bool Deserialize(DeserializerState* state, + std::unique_ptr<std::vector<T>>* value) { + auto res = std::make_unique<std::vector<T>>(); + if (!ProtocolTypeTraits<std::vector<T>>::Deserialize(state, res.get())) + return false; + *value = std::move(res); + return true; + } + static void Serialize(const std::unique_ptr<std::vector<T>>& value, + std::vector<uint8_t>* bytes) { + ProtocolTypeTraits<std::vector<T>>::Serialize(*value, bytes); + } +}; + +class CRDTP_EXPORT DeferredMessage : public Serializable { + public: + static std::unique_ptr<DeferredMessage> FromSerializable( + std::unique_ptr<Serializable> serializeable); + static std::unique_ptr<DeferredMessage> FromSpan(span<uint8_t> bytes); + + ~DeferredMessage() override = default; + virtual DeserializerState MakeDeserializer() const = 0; + + protected: + DeferredMessage() = default; +}; + +template <> +struct CRDTP_EXPORT ProtocolTypeTraits<std::unique_ptr<DeferredMessage>> { + static bool Deserialize(DeserializerState* state, + std::unique_ptr<DeferredMessage>* value); + static void Serialize(const std::unique_ptr<DeferredMessage>& value, + std::vector<uint8_t>* bytes); +}; + +template <typename T> +struct ProtocolTypeTraits<detail::ValueMaybe<T>> { + static bool Deserialize(DeserializerState* state, + detail::ValueMaybe<T>* value) { + T res; + if (!ProtocolTypeTraits<T>::Deserialize(state, &res)) + return false; + *value = std::move(res); + return true; + } + + static void Serialize(const detail::ValueMaybe<T>& value, + std::vector<uint8_t>* bytes) { + ProtocolTypeTraits<T>::Serialize(value.value(), bytes); + } +}; + +template <typename T> +struct ProtocolTypeTraits<detail::PtrMaybe<T>> { + static bool Deserialize(DeserializerState* state, + detail::PtrMaybe<T>* value) { + std::unique_ptr<T> res; + if (!ProtocolTypeTraits<std::unique_ptr<T>>::Deserialize(state, &res)) + return false; + *value = std::move(res); + return true; + } + + static void Serialize(const detail::PtrMaybe<T>& value, + std::vector<uint8_t>* bytes) { + ProtocolTypeTraits<T>::Serialize(value.value(), bytes); + } +}; + +template <typename T> +class DeserializableProtocolObject { + public: + static StatusOr<std::unique_ptr<T>> ReadFrom( + const DeferredMessage& deferred_message) { + auto state = deferred_message.MakeDeserializer(); + if (auto res = Deserialize(&state)) + return StatusOr<std::unique_ptr<T>>(std::move(res)); + return StatusOr<std::unique_ptr<T>>(state.status()); + } + + static StatusOr<std::unique_ptr<T>> ReadFrom(std::vector<uint8_t> bytes) { + auto state = DeserializerState(std::move(bytes)); + if (auto res = Deserialize(&state)) + return StatusOr<std::unique_ptr<T>>(std::move(res)); + return StatusOr<std::unique_ptr<T>>(state.status()); + } + + // Short-hand for legacy clients. This would swallow any errors, consider + // using ReadFrom. + static std::unique_ptr<T> FromBinary(const uint8_t* bytes, size_t size) { + std::unique_ptr<T> value(new T()); + auto deserializer = DeferredMessage::FromSpan(span<uint8_t>(bytes, size)) + ->MakeDeserializer(); + std::ignore = Deserialize(&deserializer, value.get()); + return value; + } + + [[nodiscard]] static bool Deserialize(DeserializerState* state, T* value) { + return T::deserializer_descriptor().Deserialize(state, value); + } + + protected: + // This is for the sake of the macros used by derived classes thay may be in + // a different namespace; + using ProtocolType = T; + using DeserializerDescriptorType = DeserializerDescriptor; + template <typename U> + using DeserializableBase = DeserializableProtocolObject<U>; + + DeserializableProtocolObject() = default; + ~DeserializableProtocolObject() = default; + + private: + friend struct ProtocolTypeTraits<std::unique_ptr<T>>; + + static std::unique_ptr<T> Deserialize(DeserializerState* state) { + std::unique_ptr<T> value(new T()); + if (Deserialize(state, value.get())) + return value; + return nullptr; + } +}; + +template <typename T> +class ProtocolObject : public Serializable, + public DeserializableProtocolObject<T> { + public: + std::unique_ptr<T> Clone() const { + std::vector<uint8_t> serialized; + AppendSerialized(&serialized); + return T::ReadFrom(std::move(serialized)).value(); + } + + protected: + using ProtocolType = T; + + ProtocolObject() = default; +}; + +template <typename T> +struct ProtocolTypeTraits< + T, + typename std::enable_if< + std::is_base_of<ProtocolObject<T>, T>::value>::type> { + static bool Deserialize(DeserializerState* state, T* value) { + return T::Deserialize(state, value); + } + + static void Serialize(const T& value, std::vector<uint8_t>* bytes) { + value.AppendSerialized(bytes); + } +}; + +template <typename T> +struct ProtocolTypeTraits< + std::unique_ptr<T>, + typename std::enable_if< + std::is_base_of<ProtocolObject<T>, T>::value>::type> { + static bool Deserialize(DeserializerState* state, std::unique_ptr<T>* value) { + std::unique_ptr<T> res = T::Deserialize(state); + if (!res) + return false; + *value = std::move(res); + return true; + } + + static void Serialize(const std::unique_ptr<T>& value, + std::vector<uint8_t>* bytes) { + ProtocolTypeTraits<T>::Serialize(*value, bytes); + } +}; + +template <typename T, typename F> +bool ConvertProtocolValue(const F& from, T* to) { + std::vector<uint8_t> bytes; + ProtocolTypeTraits<F>::Serialize(from, &bytes); + auto deserializer = + DeferredMessage::FromSpan(span<uint8_t>(bytes.data(), bytes.size())) + ->MakeDeserializer(); + return ProtocolTypeTraits<T>::Deserialize(&deserializer, to); +} + +#define DECLARE_DESERIALIZATION_SUPPORT() \ + friend DeserializableBase<ProtocolType>; \ + static const DeserializerDescriptorType& deserializer_descriptor() + +#define DECLARE_SERIALIZATION_SUPPORT() \ + public: \ + void AppendSerialized(std::vector<uint8_t>* bytes) const override; \ + \ + private: \ + friend DeserializableBase<ProtocolType>; \ + static const DeserializerDescriptorType& deserializer_descriptor() + +#define CRDTP_DESERIALIZE_FILED_IMPL(name, field, is_optional) \ + { \ + MakeSpan(name), is_optional, \ + [](DeserializerState* __state, void* __obj) -> bool { \ + return ProtocolTypeTraits<decltype(field)>::Deserialize( \ + __state, &static_cast<ProtocolType*>(__obj)->field); \ + } \ + } + +// clang-format off +#define CRDTP_BEGIN_DESERIALIZER(type) \ + const type::DeserializerDescriptorType& type::deserializer_descriptor() { \ + using namespace crdtp; \ + static const DeserializerDescriptorType::Field fields[] = { + +#define CRDTP_END_DESERIALIZER() \ + }; \ + static const DeserializerDescriptorType s_desc( \ + fields, sizeof fields / sizeof fields[0]); \ + return s_desc; \ + } + +#define CRDTP_DESERIALIZE_FIELD(name, field) \ + CRDTP_DESERIALIZE_FILED_IMPL(name, field, false) +#define CRDTP_DESERIALIZE_FIELD_OPT(name, field) \ + CRDTP_DESERIALIZE_FILED_IMPL(name, field, true) + +#define CRDTP_BEGIN_SERIALIZER(type) \ + void type::AppendSerialized(std::vector<uint8_t>* bytes) const { \ + using namespace crdtp; \ + ContainerSerializer __serializer(bytes, \ + cbor::EncodeIndefiniteLengthMapStart()); + +#define CRDTP_SERIALIZE_FIELD(name, field) \ + __serializer.AddField(MakeSpan(name), field) + +#define CRDTP_END_SERIALIZER() \ + __serializer.EncodeStop(); \ + } class __cddtp_dummy_name +// clang-format on + +} // namespace crdtp + +#endif // CRDTP_PROTOCOL_CORE_H_ diff --git a/deps/inspector_protocol/crdtp/protocol_core_test.cc b/deps/inspector_protocol/crdtp/protocol_core_test.cc new file mode 100644 index 00000000000000..2d9246b4b85998 --- /dev/null +++ b/deps/inspector_protocol/crdtp/protocol_core_test.cc @@ -0,0 +1,476 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "protocol_core.h" + +#include <memory> + +#include "cbor.h" +#include "maybe.h" +#include "status_test_support.h" +#include "test_platform.h" +#include "test_string_traits.h" + +namespace crdtp { + +namespace { +using ::testing::Eq; + +template <typename TResult, typename TArg> +std::unique_ptr<TResult> RoundtripToType(const TArg& obj) { + std::vector<uint8_t> bytes; + obj.AppendSerialized(&bytes); + + StatusOr<std::unique_ptr<TResult>> result = + TResult::ReadFrom(std::move(bytes)); + return std::move(result).value(); +} + +template <typename T> +std::unique_ptr<T> Roundtrip(const T& obj) { + return RoundtripToType<T, T>(obj); +} + +// These TestTypeFOO classes below would normally be generated +// by the protocol generator. + +class TestTypeBasic : public ProtocolObject<TestTypeBasic> { + public: + TestTypeBasic() = default; + + const std::string& GetValue() const { return value_; } + void SetValue(std::string value) { value_ = std::move(value); } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + std::string value_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeBasic) + CRDTP_DESERIALIZE_FIELD("value", value_) +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeBasic) + CRDTP_SERIALIZE_FIELD("value", value_); +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST(ProtocolCoreTest, Basic) { + TestTypeBasic obj1; + obj1.SetValue("foo"); + + auto obj2 = Roundtrip(obj1); + ASSERT_THAT(obj2, Not(testing::IsNull())); + EXPECT_THAT(obj2->GetValue(), Eq("foo")); +} + +TEST(ProtocolCoreTest, FailedToDeserializeTestTypeBasic) { + std::vector<uint8_t> garbage = {'g', 'a', 'r', 'b', 'a', 'g', 'e'}; + StatusOr<std::unique_ptr<TestTypeBasic>> result = + TestTypeBasic::ReadFrom(std::move(garbage)); + EXPECT_THAT(result.status(), StatusIs(Error::CBOR_INVALID_STRING8, 0)); +} + +class TestTypeBasicDouble : public ProtocolObject<TestTypeBasicDouble> { + public: + TestTypeBasicDouble() = default; + + double GetValue() const { return value_; } + void SetValue(double value) { value_ = value; } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + double value_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeBasicDouble) + CRDTP_DESERIALIZE_FIELD("value", value_) +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeBasicDouble) + CRDTP_SERIALIZE_FIELD("value", value_); +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST(TestBasicDouble, ParserAllowsAllowsDoubleEncodedAsInt) { + // We allow double's encoded as INT32, because this is what a roundtrip via + // JSON would produce. + std::vector<uint8_t> encoded; + crdtp::cbor::EnvelopeEncoder envelope; + envelope.EncodeStart(&encoded); + encoded.push_back(crdtp::cbor::EncodeIndefiniteLengthMapStart()); + crdtp::cbor::EncodeString8(crdtp::SpanFrom("value"), &encoded); + crdtp::cbor::EncodeInt32( + 42, &encoded); // It's a double field, but we encode an int. + encoded.push_back(crdtp::cbor::EncodeStop()); + envelope.EncodeStop(&encoded); + auto obj = TestTypeBasicDouble::ReadFrom(encoded).value(); + ASSERT_THAT(obj, Not(testing::IsNull())); + EXPECT_THAT(obj->GetValue(), Eq(42)); +} + +class TestTypeComposite : public ProtocolObject<TestTypeComposite> { + public: + bool GetBoolField() const { return bool_field_; } + void SetBoolField(bool value) { bool_field_ = value; } + + int GetIntField() const { return int_field_; } + void SetIntField(int value) { int_field_ = value; } + + double GetDoubleField() const { return double_field_; } + void SetDoubleField(double value) { double_field_ = value; } + + const std::string& GetStrField() const { return str_field_; } + void SetStrField(std::string value) { str_field_ = std::move(value); } + + const TestTypeBasic* GetTestTypeBasicField() { + return test_type1_field_.get(); + } + void SetTestTypeBasicField(std::unique_ptr<TestTypeBasic> value) { + test_type1_field_ = std::move(value); + } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + bool bool_field_ = false; + int int_field_ = 0; + double double_field_ = 0.0; + std::string str_field_; + std::unique_ptr<TestTypeBasic> test_type1_field_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeComposite) + CRDTP_DESERIALIZE_FIELD("bool_field", bool_field_), + CRDTP_DESERIALIZE_FIELD("double_field", double_field_), + CRDTP_DESERIALIZE_FIELD("int_field", int_field_), + CRDTP_DESERIALIZE_FIELD("str_field", str_field_), + CRDTP_DESERIALIZE_FIELD("test_type1_field", test_type1_field_), +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeComposite) + CRDTP_SERIALIZE_FIELD("bool_field", bool_field_), + CRDTP_SERIALIZE_FIELD("double_field", double_field_), + CRDTP_SERIALIZE_FIELD("int_field", int_field_), + CRDTP_SERIALIZE_FIELD("str_field", str_field_), + CRDTP_SERIALIZE_FIELD("test_type1_field", test_type1_field_), +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST(ProtocolCoreTest, Composite) { + TestTypeComposite obj1; + obj1.SetBoolField(true); + obj1.SetIntField(42); + obj1.SetDoubleField(2.718281828); + obj1.SetStrField("bar"); + auto val1 = std::make_unique<TestTypeBasic>(); + val1->SetValue("bazzzz"); + obj1.SetTestTypeBasicField(std::move(val1)); + + auto obj2 = Roundtrip(obj1); + ASSERT_THAT(obj2, Not(testing::IsNull())); + EXPECT_THAT(obj2->GetBoolField(), Eq(true)); + EXPECT_THAT(obj2->GetIntField(), Eq(42)); + EXPECT_THAT(obj2->GetDoubleField(), Eq(2.718281828)); + EXPECT_THAT(obj2->GetStrField(), Eq("bar")); + EXPECT_THAT(obj2->GetTestTypeBasicField()->GetValue(), Eq("bazzzz")); +} + +class CompositeParsingTest : public testing::Test { + public: + CompositeParsingTest() { + TestTypeComposite top; + top.SetIntField(42); + top.SetBoolField(true); + top.SetIntField(42); + top.SetDoubleField(2.718281828); + top.SetStrField("junk"); + auto child = std::make_unique<TestTypeBasic>(); + child->SetValue("child_value"); + top.SetTestTypeBasicField(std::move(child)); + + // Let's establish that |serialized_| is a properly serialized + // representation of |top|, by checking that it deserializes ok. + top.AppendSerialized(&serialized_); + TestTypeComposite::ReadFrom(serialized_).value(); + } + + protected: + std::vector<uint8_t> serialized_; +}; + +TEST_F(CompositeParsingTest, DecodingFailure_CBORTokenizer) { + // Mutates |serialized_| so that it won't parse correctly. In this case, + // we're changing a string value so that it's invalid, making CBORTokenizer + // unhappy. + size_t position = + std::string(reinterpret_cast<const char*>(serialized_.data()), + serialized_.size()) + .find("child_value"); + EXPECT_GT(position, 0ul); + // We override the byte just before so that it's still a string + // (3 << 5), but the length is encoded in the bytes that follows. + // So, we override that with 0xff (255), which exceeds the length + // of the message and thereby makes the string8 invalid. + --position; + serialized_[position] = 3 << 5 | // major type: STRING + 25; // length in encoded in byte that follows. + serialized_[position + 1] = 0xff; // length + auto result = TestTypeComposite::ReadFrom(serialized_); + + EXPECT_THAT(result.status(), StatusIs(Error::CBOR_INVALID_STRING8, position)); +} + +TEST_F(CompositeParsingTest, DecodingFailure_MandatoryFieldMissingShallow) { + // We're changing the string key "int_field" to something else ("lnt_field"), + // so that the mandatory field value won't be found. Unknown fields are + // ignored for compatibility, so that's why this simple technique works here. + size_t position = + std::string(reinterpret_cast<const char*>(serialized_.data()), + serialized_.size()) + .find("int_field"); + serialized_[position] = 'l'; // Change 'i' to 'l'. + // serialized_.size() - 1 is the STOP character for the entire message, + size_t expected_error_pos = serialized_.size() - 1; + auto result = TestTypeComposite::ReadFrom(serialized_); + EXPECT_THAT(result.status(), StatusIs(Error::BINDINGS_MANDATORY_FIELD_MISSING, + expected_error_pos)); +} + +TEST_F(CompositeParsingTest, DecodingFailure_MandatoryFieldMissingNested) { + // We're changing the string key "value" to something else ("falue"), so that + // the mandatory field value in TestTypeBasic in the child won't be found. + size_t position = + std::string(reinterpret_cast<const char*>(serialized_.data()), + serialized_.size()) + .find("value"); + serialized_[position] = 'f'; // Change 'v' to 'f'. + // serialized_.size() - 1 is the STOP character for the enclosing message, + // and serialized_.size() - 2 is the STOP character for TestTypeBasic. + size_t expected_error_pos = serialized_.size() - 2; + auto result = TestTypeComposite::ReadFrom(serialized_); + EXPECT_THAT(result.status(), StatusIs(Error::BINDINGS_MANDATORY_FIELD_MISSING, + expected_error_pos)); +} + +TEST_F(CompositeParsingTest, DecodingFailure_BoolValueExpected) { + // We're changing the bool value (true) to null; we do this by looking + // for bool_field, and searching from there for TRUE; both TRUE and null + // are just one byte in the serialized buffer, so this swap is convenient. + std::string serialized_view(reinterpret_cast<const char*>(serialized_.data()), + serialized_.size()); + size_t position = serialized_view.find("bool_field"); + for (; position < serialized_.size(); ++position) { + if (serialized_[position] == crdtp::cbor::EncodeTrue()) { + serialized_[position] = crdtp::cbor::EncodeNull(); + break; + } + } + auto result = TestTypeComposite::ReadFrom(serialized_); + EXPECT_THAT(result.status(), + StatusIs(Error::BINDINGS_BOOL_VALUE_EXPECTED, position)); +} + +class TestTypeArrays : public ProtocolObject<TestTypeArrays> { + public: + const std::vector<int>* GetIntArray() const { return &int_array_; } + void SetIntArray(std::vector<int> value) { int_array_ = std::move(value); } + + const std::vector<double>* GetDoubleArray() const { return &double_array_; } + void SetDoubleArray(std::vector<double> value) { + double_array_ = std::move(value); + } + + const std::vector<std::string>* GetStrArray() const { return &str_array_; } + void SetStrArray(std::vector<std::string> value) { + str_array_ = std::move(value); + } + + const std::vector<std::unique_ptr<TestTypeBasic>>* GetTestTypeBasicArray() + const { + return &test_type_basic_array_; + } + + void SetTestTypeBasicArray( + std::vector<std::unique_ptr<TestTypeBasic>> value) { + test_type_basic_array_ = std::move(value); + } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + std::vector<int> int_array_; + std::vector<double> double_array_; + std::vector<std::string> str_array_; + std::vector<std::unique_ptr<TestTypeBasic>> test_type_basic_array_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeArrays) + CRDTP_DESERIALIZE_FIELD("int_array", int_array_), + CRDTP_DESERIALIZE_FIELD("str_array", str_array_), + CRDTP_DESERIALIZE_FIELD("test_type_basic_array", test_type_basic_array_), +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeArrays) + CRDTP_SERIALIZE_FIELD("int_array", int_array_), + CRDTP_SERIALIZE_FIELD("str_array", str_array_), + CRDTP_SERIALIZE_FIELD("test_type_basic_array", test_type_basic_array_), +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST_F(CompositeParsingTest, Arrays) { + TestTypeArrays obj1; + obj1.SetIntArray(std::vector<int>{1, 3, 5, 7}); + std::vector<std::string> strs; + strs.emplace_back("foo"); + strs.emplace_back(std::string("bar")); + obj1.SetStrArray(std::move(strs)); + auto val1 = std::make_unique<TestTypeBasic>(); + val1->SetValue("bazzzz"); + std::vector<std::unique_ptr<TestTypeBasic>> vec1; + vec1.emplace_back(std::move(val1)); + obj1.SetTestTypeBasicArray(std::move(vec1)); + + auto obj2 = Roundtrip(obj1); + ASSERT_THAT(obj2, Not(testing::IsNull())); + EXPECT_THAT(*obj2->GetIntArray(), testing::ElementsAre(1, 3, 5, 7)); + EXPECT_THAT(*obj2->GetStrArray(), testing::ElementsAre("foo", "bar")); + EXPECT_THAT(obj2->GetDoubleArray()->size(), Eq(0ul)); + EXPECT_THAT(obj2->GetTestTypeBasicArray()->size(), Eq(1ul)); + EXPECT_THAT(obj2->GetTestTypeBasicArray()->front()->GetValue(), Eq("bazzzz")); +} + +class TestTypeOptional : public ProtocolObject<TestTypeOptional> { + public: + TestTypeOptional() = default; + + bool HasIntField() const { return int_field_.has_value(); } + int GetIntField() const { return int_field_.value(); } + void SetIntField(int value) { int_field_ = value; } + + bool HasStrField() { return str_field_.has_value(); } + const std::string& GetStrField() const { return str_field_.value(); } + void SetStrField(std::string value) { str_field_ = std::move(value); } + + bool HasTestTypeBasicField() { return test_type_basic_field_.has_value(); } + const TestTypeBasic* GetTestTypeBasicField() const { + return test_type_basic_field_.has_value() ? &test_type_basic_field_.value() + : nullptr; + } + void SetTestTypeBasicField(std::unique_ptr<TestTypeBasic> value) { + test_type_basic_field_ = std::move(value); + } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + Maybe<int> int_field_; + Maybe<std::string> str_field_; + Maybe<TestTypeBasic> test_type_basic_field_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeOptional) + CRDTP_DESERIALIZE_FIELD_OPT("int_field", int_field_), + CRDTP_DESERIALIZE_FIELD_OPT("str_field", str_field_), + CRDTP_DESERIALIZE_FIELD_OPT("test_type_basic_field", test_type_basic_field_), +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeOptional) + CRDTP_SERIALIZE_FIELD("int_field", int_field_), + CRDTP_SERIALIZE_FIELD("str_field", str_field_), + CRDTP_SERIALIZE_FIELD("test_type_basic_field", test_type_basic_field_), +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST(ProtocolCoreTest, OptionalAbsent) { + TestTypeOptional obj1; + auto obj2 = Roundtrip(obj1); + ASSERT_THAT(obj2, Not(testing::IsNull())); + + EXPECT_THAT(obj2->HasIntField(), Eq(false)); + EXPECT_THAT(obj2->HasStrField(), Eq(false)); + EXPECT_THAT(obj2->HasTestTypeBasicField(), Eq(false)); +} + +TEST(ProtocolCoreTest, OptionalPresent) { + TestTypeOptional obj1; + obj1.SetIntField(42); + obj1.SetStrField("foo"); + + auto val1 = std::make_unique<TestTypeBasic>(); + val1->SetValue("bar"); + obj1.SetTestTypeBasicField(std::move(val1)); + + auto obj2 = Roundtrip(obj1); + ASSERT_THAT(obj2, Not(testing::IsNull())); + + EXPECT_THAT(obj2->HasIntField(), Eq(true)); + EXPECT_THAT(obj2->GetIntField(), Eq(42)); + EXPECT_THAT(obj2->HasStrField(), Eq(true)); + EXPECT_THAT(obj2->GetStrField(), Eq("foo")); + EXPECT_THAT(obj2->HasTestTypeBasicField(), Eq(true)); + EXPECT_THAT(obj2->GetTestTypeBasicField()->GetValue(), Eq("bar")); +} + +class TestTypeLazy : public ProtocolObject<TestTypeLazy> { + public: + TestTypeLazy() = default; + + const std::string& GetStrField() const { return str_field_; } + void SetStrField(std::string value) { str_field_ = std::move(value); } + + const DeferredMessage* deferred_test_type1_field() const { + return test_type1_field_.get(); + } + + private: + DECLARE_SERIALIZATION_SUPPORT(); + + std::string str_field_; + std::unique_ptr<DeferredMessage> test_type1_field_; +}; + +// clang-format off +CRDTP_BEGIN_DESERIALIZER(TestTypeLazy) + CRDTP_DESERIALIZE_FIELD("str_field", str_field_), + CRDTP_DESERIALIZE_FIELD_OPT("test_type1_field", test_type1_field_), +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER(TestTypeLazy) + CRDTP_SERIALIZE_FIELD("str_field", str_field_), + CRDTP_SERIALIZE_FIELD("test_type1_field", test_type1_field_), +CRDTP_END_SERIALIZER(); +// clang-format on + +TEST(ProtocolCoreTest, TestDeferredMessage) { + TestTypeComposite obj1; + obj1.SetStrField("bar"); + auto val1 = std::make_unique<TestTypeBasic>(); + val1->SetValue("bazzzz"); + obj1.SetTestTypeBasicField(std::move(val1)); + + auto obj2 = RoundtripToType<TestTypeLazy>(obj1); + EXPECT_THAT(obj2->GetStrField(), Eq("bar")); + + TestTypeBasic basic_val; + auto deserializer = obj2->deferred_test_type1_field()->MakeDeserializer(); + EXPECT_THAT(TestTypeBasic::Deserialize(&deserializer, &basic_val), Eq(true)); + EXPECT_THAT(basic_val.GetValue(), Eq("bazzzz")); + + StatusOr<std::unique_ptr<TestTypeBasic>> maybe_parsed = + TestTypeBasic::ReadFrom(*obj2->deferred_test_type1_field()); + ASSERT_THAT(maybe_parsed.status(), StatusIsOk()); + ASSERT_THAT((*maybe_parsed), Not(testing::IsNull())); + ASSERT_EQ((*maybe_parsed)->GetValue(), "bazzzz"); +} + +} // namespace +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/serializable.cc b/deps/inspector_protocol/crdtp/serializable.cc new file mode 100644 index 00000000000000..e0bc6ffb62a9c5 --- /dev/null +++ b/deps/inspector_protocol/crdtp/serializable.cc @@ -0,0 +1,39 @@ +// 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. + +#include "serializable.h" + +#include <utility> + +namespace crdtp { +// ============================================================================= +// Serializable - An object to be emitted as a sequence of bytes. +// ============================================================================= + +std::vector<uint8_t> Serializable::Serialize() const { + std::vector<uint8_t> out; + AppendSerialized(&out); + return out; +} + +namespace { +class PreSerialized : public Serializable { + public: + explicit PreSerialized(std::vector<uint8_t> bytes) + : bytes_(std::move(bytes)) {} + + void AppendSerialized(std::vector<uint8_t>* out) const override { + out->insert(out->end(), bytes_.begin(), bytes_.end()); + } + + private: + std::vector<uint8_t> bytes_; +}; +} // namespace + +// static +std::unique_ptr<Serializable> Serializable::From(std::vector<uint8_t> bytes) { + return std::make_unique<PreSerialized>(std::move(bytes)); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/serializable.h b/deps/inspector_protocol/crdtp/serializable.h new file mode 100644 index 00000000000000..a5e2881e17ea50 --- /dev/null +++ b/deps/inspector_protocol/crdtp/serializable.h @@ -0,0 +1,32 @@ +// 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. + +#ifndef CRDTP_SERIALIZABLE_H_ +#define CRDTP_SERIALIZABLE_H_ + +#include <cstdint> +#include <memory> +#include <vector> +#include "export.h" + +namespace crdtp { +// ============================================================================= +// Serializable - An object to be emitted as a sequence of bytes. +// ============================================================================= +class CRDTP_EXPORT Serializable { + public: + // Convenience: Invokes |AppendSerialized| on an empty vector. + std::vector<uint8_t> Serialize() const; + + virtual void AppendSerialized(std::vector<uint8_t>* out) const = 0; + + virtual ~Serializable() = default; + + // Wraps a vector of |bytes| into a Serializable for situations in which we + // eagerly serialize a structure. + static std::unique_ptr<Serializable> From(std::vector<uint8_t> bytes); +}; +} // namespace crdtp + +#endif // CRDTP_SERIALIZABLE_H_ diff --git a/deps/inspector_protocol/crdtp/serializable_test.cc b/deps/inspector_protocol/crdtp/serializable_test.cc new file mode 100644 index 00000000000000..adfd8595ad8371 --- /dev/null +++ b/deps/inspector_protocol/crdtp/serializable_test.cc @@ -0,0 +1,40 @@ +// 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. + +#include <cstdlib> +#include <string> + +#include "serializable.h" +#include "test_platform.h" + +namespace crdtp { +// ============================================================================= +// Serializable - An object to be emitted as a sequence of bytes. +// ============================================================================= + +namespace { +// Tests ::Serialize (which invokes ::AppendSerialized). +class SimpleExample : public Serializable { + public: + explicit SimpleExample(const std::vector<uint8_t>& contents) + : contents_(contents) {} + + void AppendSerialized(std::vector<uint8_t>* out) const override { + out->insert(out->end(), contents_.begin(), contents_.end()); + } + + private: + std::vector<uint8_t> contents_; +}; +} // namespace + +TEST(SerializableTest, YieldsContents) { + std::vector<uint8_t> contents = {1, 2, 3}; + SimpleExample foo(contents); + foo.AppendSerialized(&contents); // Yields contents by appending. + EXPECT_THAT(contents, testing::ElementsAre(1, 2, 3, 1, 2, 3)); + // Yields contents by returning. + EXPECT_THAT(foo.Serialize(), testing::ElementsAre(1, 2, 3)); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/span.cc b/deps/inspector_protocol/crdtp/span.cc new file mode 100644 index 00000000000000..ae7545489c43b4 --- /dev/null +++ b/deps/inspector_protocol/crdtp/span.cc @@ -0,0 +1,39 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "span.h" + +#include <algorithm> + +namespace crdtp { + +bool SpanLessThan(span<uint8_t> x, span<uint8_t> y) noexcept { + auto min_size = std::min(x.size(), y.size()); + const int r = min_size == 0 ? 0 : memcmp(x.data(), y.data(), min_size); + return (r < 0) || (r == 0 && x.size() < y.size()); +} + +bool SpanEquals(span<uint8_t> x, span<uint8_t> y) noexcept { + auto len = x.size(); + if (len != y.size()) + return false; + return x.data() == y.data() || len == 0 || + std::memcmp(x.data(), y.data(), len) == 0; +} + +bool SpanLessThan(span<char> x, span<char> y) noexcept { + auto min_size = std::min(x.size(), y.size()); + const int r = min_size == 0 ? 0 : memcmp(x.data(), y.data(), min_size); + return (r < 0) || (r == 0 && x.size() < y.size()); +} + +bool SpanEquals(span<char> x, span<char> y) noexcept { + auto len = x.size(); + if (len != y.size()) + return false; + return x.data() == y.data() || len == 0 || + std::memcmp(x.data(), y.data(), len) == 0; +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/span.h b/deps/inspector_protocol/crdtp/span.h new file mode 100644 index 00000000000000..c2b5b02d9a1832 --- /dev/null +++ b/deps/inspector_protocol/crdtp/span.h @@ -0,0 +1,100 @@ +// 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. + +#ifndef CRDTP_SPAN_H_ +#define CRDTP_SPAN_H_ + +#include <cstdint> +#include <cstring> +#include <type_traits> +#include <string> + +#include "export.h" + +namespace crdtp { +// ============================================================================= +// span - sequence of bytes +// ============================================================================= + +// This template is similar to std::span, which will be included in C++20. +template <typename T> +class span { + public: + using index_type = size_t; + + constexpr span() : data_(nullptr), size_(0) {} + constexpr span(const T* data, index_type size) : data_(data), size_(size) {} + + constexpr const T* data() const { return data_; } + + constexpr const T* begin() const { return data_; } + constexpr const T* end() const { return data_ + size_; } + + constexpr const T& operator[](index_type idx) const { return data_[idx]; } + + constexpr span<T> subspan(index_type offset, index_type count) const { + return span(data_ + offset, count); + } + + constexpr span<T> subspan(index_type offset) const { + return span(data_ + offset, size_ - offset); + } + + constexpr bool empty() const { return size_ == 0; } + + constexpr index_type size() const { return size_; } + constexpr index_type size_bytes() const { return size_ * sizeof(T); } + + private: + const T* data_; + index_type size_; +}; + +template <size_t N> +constexpr span<char> MakeSpan(const char (&str)[N]) { + return span<char>(str, N - 1); +} + +template <size_t N> +constexpr span<uint8_t> SpanFrom(const char (&str)[N]) { + return span<uint8_t>(reinterpret_cast<const uint8_t*>(str), N - 1); +} + +constexpr inline span<uint8_t> SpanFrom(const char* str) { + return str ? span<uint8_t>(reinterpret_cast<const uint8_t*>(str), strlen(str)) + : span<uint8_t>(); +} + +inline span<uint8_t> SpanFrom(const std::string& v) { + return span<uint8_t>(reinterpret_cast<const uint8_t*>(v.data()), v.size()); +} + +// This SpanFrom routine works for std::vector<uint8_t> and +// std::vector<uint16_t>, but also for base::span<const uint8_t> in Chromium. +template <typename C, + typename = std::enable_if_t< + std::is_unsigned<typename C::value_type>{} && + std::is_member_function_pointer<decltype(&C::size)>{}>> +inline span<typename C::value_type> SpanFrom(const C& v) { + return span<typename C::value_type>(v.data(), v.size()); +} + +// Less than / equality comparison functions for sorting / searching for byte +// spans. +CRDTP_EXPORT bool SpanLessThan(span<uint8_t> x, span<uint8_t> y) noexcept; +CRDTP_EXPORT bool SpanEquals(span<uint8_t> x, span<uint8_t> y) noexcept; + +// Less than / equality comparison functions for sorting / searching for byte +// spans. +CRDTP_EXPORT bool SpanLessThan(span<char> x, span<char> y) noexcept; +CRDTP_EXPORT bool SpanEquals(span<char> x, span<char> y) noexcept; + +struct SpanLt { + bool operator()(span<uint8_t> l, span<uint8_t> r) const { + return SpanLessThan(l, r); + } +}; +} // namespace crdtp + +#endif // CRDTP_SPAN_H_ diff --git a/deps/inspector_protocol/crdtp/span_test.cc b/deps/inspector_protocol/crdtp/span_test.cc new file mode 100644 index 00000000000000..e562f4ea6feed9 --- /dev/null +++ b/deps/inspector_protocol/crdtp/span_test.cc @@ -0,0 +1,109 @@ +// Copyright 2018 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include <cstdlib> +#include <string> + +#include "span.h" +#include "test_platform.h" + +namespace crdtp { +// ============================================================================= +// span - sequence of bytes +// ============================================================================= +template <typename T> +class SpanTest : public ::testing::Test {}; + +using TestTypes = ::testing::Types<uint8_t, uint16_t>; +TYPED_TEST_SUITE(SpanTest, TestTypes); + +TYPED_TEST(SpanTest, Empty) { + span<TypeParam> empty; + EXPECT_TRUE(empty.empty()); + EXPECT_EQ(0u, empty.size()); + EXPECT_EQ(0u, empty.size_bytes()); + EXPECT_EQ(empty.begin(), empty.end()); +} + +TYPED_TEST(SpanTest, SingleItem) { + TypeParam single_item = 42; + span<TypeParam> singular(&single_item, 1); + EXPECT_FALSE(singular.empty()); + EXPECT_EQ(1u, singular.size()); + EXPECT_EQ(sizeof(TypeParam), singular.size_bytes()); + EXPECT_EQ(singular.begin() + 1, singular.end()); + EXPECT_EQ(42, singular[0]); +} + +TYPED_TEST(SpanTest, FiveItems) { + std::vector<TypeParam> test_input = {31, 32, 33, 34, 35}; + span<TypeParam> five_items(test_input.data(), 5); + EXPECT_FALSE(five_items.empty()); + EXPECT_EQ(5u, five_items.size()); + EXPECT_EQ(sizeof(TypeParam) * 5, five_items.size_bytes()); + EXPECT_EQ(five_items.begin() + 5, five_items.end()); + EXPECT_EQ(31, five_items[0]); + EXPECT_EQ(32, five_items[1]); + EXPECT_EQ(33, five_items[2]); + EXPECT_EQ(34, five_items[3]); + EXPECT_EQ(35, five_items[4]); + span<TypeParam> three_items = five_items.subspan(2); + EXPECT_EQ(3u, three_items.size()); + EXPECT_EQ(33, three_items[0]); + EXPECT_EQ(34, three_items[1]); + EXPECT_EQ(35, three_items[2]); + span<TypeParam> two_items = five_items.subspan(2, 2); + EXPECT_EQ(2u, two_items.size()); + EXPECT_EQ(33, two_items[0]); + EXPECT_EQ(34, two_items[1]); +} + +TEST(SpanFromTest, FromConstCharAndLiteral) { + // Testing this is useful because strlen(nullptr) is undefined. + EXPECT_EQ(nullptr, SpanFrom(nullptr).data()); + EXPECT_EQ(0u, SpanFrom(nullptr).size()); + + const char* kEmpty = ""; + EXPECT_EQ(kEmpty, reinterpret_cast<const char*>(SpanFrom(kEmpty).data())); + EXPECT_EQ(0u, SpanFrom(kEmpty).size()); + + const char* kFoo = "foo"; + EXPECT_EQ(kFoo, reinterpret_cast<const char*>(SpanFrom(kFoo).data())); + EXPECT_EQ(3u, SpanFrom(kFoo).size()); + + EXPECT_EQ(3u, SpanFrom("foo").size()); +} + +TEST(SpanFromTest, FromVectorUint8AndUint16) { + std::vector<uint8_t> foo = {'f', 'o', 'o'}; + span<uint8_t> foo_span = SpanFrom(foo); + EXPECT_EQ(foo.size(), foo_span.size()); + + std::vector<uint16_t> bar = {0xff, 0xef, 0xeb}; + span<uint16_t> bar_span = SpanFrom(bar); + EXPECT_EQ(bar.size(), bar_span.size()); +} + +TEST(SpanComparisons, ByteWiseLexicographicalOrder) { + // Compare the empty span. + EXPECT_FALSE(SpanLessThan(span<uint8_t>(), span<uint8_t>())); + EXPECT_TRUE(SpanEquals(span<uint8_t>(), span<uint8_t>())); + + // Compare message with itself. + std::string msg = "Hello, world"; + EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(msg))); + EXPECT_TRUE(SpanEquals(SpanFrom(msg), SpanFrom(msg))); + + // Compare message and copy. + EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(std::string(msg)))); + EXPECT_TRUE(SpanEquals(SpanFrom(msg), SpanFrom(std::string(msg)))); + + // Compare two messages. |lesser_msg| < |msg| because of the first + // byte ('A' < 'H'). + std::string lesser_msg = "A lesser message."; + EXPECT_TRUE(SpanLessThan(SpanFrom(lesser_msg), SpanFrom(msg))); + EXPECT_FALSE(SpanLessThan(SpanFrom(msg), SpanFrom(lesser_msg))); + EXPECT_FALSE(SpanEquals(SpanFrom(msg), SpanFrom(lesser_msg))); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/status.cc b/deps/inspector_protocol/crdtp/status.cc new file mode 100644 index 00000000000000..41f8b5df7542cc --- /dev/null +++ b/deps/inspector_protocol/crdtp/status.cc @@ -0,0 +1,130 @@ +// 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. + +#include "status.h" + +namespace crdtp { +// ============================================================================= +// Status and Error codes +// ============================================================================= + +std::string Status::Message() const { + switch (error) { + case Error::OK: + return "OK"; + case Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS: + return "JSON: unprocessed input remains"; + case Error::JSON_PARSER_STACK_LIMIT_EXCEEDED: + return "JSON: stack limit exceeded"; + case Error::JSON_PARSER_NO_INPUT: + return "JSON: no input"; + case Error::JSON_PARSER_INVALID_TOKEN: + return "JSON: invalid token"; + case Error::JSON_PARSER_INVALID_NUMBER: + return "JSON: invalid number"; + case Error::JSON_PARSER_INVALID_STRING: + return "JSON: invalid string"; + case Error::JSON_PARSER_UNEXPECTED_ARRAY_END: + return "JSON: unexpected array end"; + case Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED: + return "JSON: comma or array end expected"; + case Error::JSON_PARSER_STRING_LITERAL_EXPECTED: + return "JSON: string literal expected"; + case Error::JSON_PARSER_COLON_EXPECTED: + return "JSON: colon expected"; + case Error::JSON_PARSER_UNEXPECTED_MAP_END: + return "JSON: unexpected map end"; + case Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED: + return "JSON: comma or map end expected"; + case Error::JSON_PARSER_VALUE_EXPECTED: + return "JSON: value expected"; + + case Error::CBOR_INVALID_INT32: + return "CBOR: invalid int32"; + case Error::CBOR_INVALID_DOUBLE: + return "CBOR: invalid double"; + case Error::CBOR_INVALID_ENVELOPE: + return "CBOR: invalid envelope"; + case Error::CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH: + return "CBOR: envelope contents length mismatch"; + case Error::CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE: + return "CBOR: map or array expected in envelope"; + case Error::CBOR_INVALID_STRING8: + return "CBOR: invalid string8"; + case Error::CBOR_INVALID_STRING16: + return "CBOR: invalid string16"; + case Error::CBOR_INVALID_BINARY: + return "CBOR: invalid binary"; + case Error::CBOR_UNSUPPORTED_VALUE: + return "CBOR: unsupported value"; + case Error::CBOR_UNEXPECTED_EOF_IN_ENVELOPE: + return "CBOR: unexpected EOF reading envelope"; + case Error::CBOR_INVALID_START_BYTE: + return "CBOR: invalid start byte"; + case Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE: + return "CBOR: unexpected EOF expected value"; + case Error::CBOR_UNEXPECTED_EOF_IN_ARRAY: + return "CBOR: unexpected EOF in array"; + case Error::CBOR_UNEXPECTED_EOF_IN_MAP: + return "CBOR: unexpected EOF in map"; + case Error::CBOR_INVALID_MAP_KEY: + return "CBOR: invalid map key"; + case Error::CBOR_DUPLICATE_MAP_KEY: + return "CBOR: duplicate map key"; + case Error::CBOR_STACK_LIMIT_EXCEEDED: + return "CBOR: stack limit exceeded"; + case Error::CBOR_TRAILING_JUNK: + return "CBOR: trailing junk"; + case Error::CBOR_MAP_START_EXPECTED: + return "CBOR: map start expected"; + case Error::CBOR_MAP_STOP_EXPECTED: + return "CBOR: map stop expected"; + case Error::CBOR_ARRAY_START_EXPECTED: + return "CBOR: array start expected"; + case Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED: + return "CBOR: envelope size limit exceeded"; + + case Error::MESSAGE_MUST_BE_AN_OBJECT: + return "Message must be an object"; + case Error::MESSAGE_MUST_HAVE_INTEGER_ID_PROPERTY: + return "Message must have integer 'id' property"; + case Error::MESSAGE_MUST_HAVE_STRING_METHOD_PROPERTY: + return "Message must have string 'method' property"; + case Error::MESSAGE_MAY_HAVE_STRING_SESSION_ID_PROPERTY: + return "Message may have string 'sessionId' property"; + case Error::MESSAGE_MAY_HAVE_OBJECT_PARAMS_PROPERTY: + return "Message may have object 'params' property"; + case Error::MESSAGE_HAS_UNKNOWN_PROPERTY: + return "Message has property other than " + "'id', 'method', 'sessionId', 'params'"; + + case Error::BINDINGS_MANDATORY_FIELD_MISSING: + return "BINDINGS: mandatory field missing"; + case Error::BINDINGS_BOOL_VALUE_EXPECTED: + return "BINDINGS: bool value expected"; + case Error::BINDINGS_INT32_VALUE_EXPECTED: + return "BINDINGS: int32 value expected"; + case Error::BINDINGS_DOUBLE_VALUE_EXPECTED: + return "BINDINGS: double value expected"; + case Error::BINDINGS_STRING_VALUE_EXPECTED: + return "BINDINGS: string value expected"; + case Error::BINDINGS_STRING8_VALUE_EXPECTED: + return "BINDINGS: string8 value expected"; + case Error::BINDINGS_BINARY_VALUE_EXPECTED: + return "BINDINGS: binary value expected"; + case Error::BINDINGS_DICTIONARY_VALUE_EXPECTED: + return "BINDINGS: dictionary value expected"; + case Error::BINDINGS_INVALID_BASE64_STRING: + return "BINDINGS: invalid base64 string"; + } + // Some compilers can't figure out that we can't get here. + return "INVALID ERROR CODE"; +} + +std::string Status::ToASCIIString() const { + if (ok()) + return "OK"; + return Message() + " at position " + std::to_string(pos); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/status.h b/deps/inspector_protocol/crdtp/status.h new file mode 100644 index 00000000000000..5f32c040f3ec1e --- /dev/null +++ b/deps/inspector_protocol/crdtp/status.h @@ -0,0 +1,143 @@ +// 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. + +#ifndef CRDTP_STATUS_H_ +#define CRDTP_STATUS_H_ + +#include <cassert> +#include <cstddef> +#include <limits> +#include <string> + +#include "export.h" + +namespace crdtp { +// ============================================================================= +// Status and Error codes +// ============================================================================= + +enum class Error { + OK = 0, + + // JSON parsing errors; checked when parsing / converting from JSON. + // See json.{h,cc}. + JSON_PARSER_UNPROCESSED_INPUT_REMAINS = 0x01, + JSON_PARSER_STACK_LIMIT_EXCEEDED = 0x02, + JSON_PARSER_NO_INPUT = 0x03, + JSON_PARSER_INVALID_TOKEN = 0x04, + JSON_PARSER_INVALID_NUMBER = 0x05, + JSON_PARSER_INVALID_STRING = 0x06, + JSON_PARSER_UNEXPECTED_ARRAY_END = 0x07, + JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED = 0x08, + JSON_PARSER_STRING_LITERAL_EXPECTED = 0x09, + JSON_PARSER_COLON_EXPECTED = 0x0a, + JSON_PARSER_UNEXPECTED_MAP_END = 0x0b, + JSON_PARSER_COMMA_OR_MAP_END_EXPECTED = 0x0c, + JSON_PARSER_VALUE_EXPECTED = 0x0d, + + // CBOR parsing errors; checked when parsing / converting from CBOR. + CBOR_INVALID_INT32 = 0x0e, + CBOR_INVALID_DOUBLE = 0x0f, + CBOR_INVALID_ENVELOPE = 0x10, + CBOR_ENVELOPE_CONTENTS_LENGTH_MISMATCH = 0x11, + CBOR_MAP_OR_ARRAY_EXPECTED_IN_ENVELOPE = 0x12, + CBOR_INVALID_STRING8 = 0x13, + CBOR_INVALID_STRING16 = 0x14, + CBOR_INVALID_BINARY = 0x15, + CBOR_UNSUPPORTED_VALUE = 0x16, + CBOR_UNEXPECTED_EOF_IN_ENVELOPE = 0x17, + CBOR_INVALID_START_BYTE = 0x18, + CBOR_UNEXPECTED_EOF_EXPECTED_VALUE = 0x19, + CBOR_UNEXPECTED_EOF_IN_ARRAY = 0x1a, + CBOR_UNEXPECTED_EOF_IN_MAP = 0x1b, + CBOR_INVALID_MAP_KEY = 0x1c, + CBOR_DUPLICATE_MAP_KEY = 0x1d, + CBOR_STACK_LIMIT_EXCEEDED = 0x1e, + CBOR_TRAILING_JUNK = 0x1f, + CBOR_MAP_START_EXPECTED = 0x20, + CBOR_MAP_STOP_EXPECTED = 0x21, + CBOR_ARRAY_START_EXPECTED = 0x22, + CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED = 0x23, + + // Message errors are constraints we place on protocol messages coming + // from a protocol client; these are checked in crdtp::Dispatchable + // (see dispatch.h) as it performs a shallow parse. + MESSAGE_MUST_BE_AN_OBJECT = 0x24, + MESSAGE_MUST_HAVE_INTEGER_ID_PROPERTY = 0x25, + MESSAGE_MUST_HAVE_STRING_METHOD_PROPERTY = 0x26, + MESSAGE_MAY_HAVE_STRING_SESSION_ID_PROPERTY = 0x27, + MESSAGE_MAY_HAVE_OBJECT_PARAMS_PROPERTY = 0x28, + MESSAGE_HAS_UNKNOWN_PROPERTY = 0x29, + + BINDINGS_MANDATORY_FIELD_MISSING = 0x30, + BINDINGS_BOOL_VALUE_EXPECTED = 0x31, + BINDINGS_INT32_VALUE_EXPECTED = 0x32, + BINDINGS_DOUBLE_VALUE_EXPECTED = 0x33, + BINDINGS_STRING_VALUE_EXPECTED = 0x34, + BINDINGS_STRING8_VALUE_EXPECTED = 0x35, + BINDINGS_BINARY_VALUE_EXPECTED = 0x36, + BINDINGS_DICTIONARY_VALUE_EXPECTED = 0x37, + BINDINGS_INVALID_BASE64_STRING = 0x38, +}; + +// A status value with position that can be copied. The default status +// is OK. Usually, error status values should come with a valid position. +struct CRDTP_EXPORT Status { + static constexpr size_t npos() { return std::numeric_limits<size_t>::max(); } + + bool ok() const { return error == Error::OK; } + + Error error = Error::OK; + size_t pos = npos(); + Status(Error error, size_t pos) : error(error), pos(pos) {} + Status() = default; + + bool IsMessageError() const { + return error >= Error::MESSAGE_MUST_BE_AN_OBJECT && + error <= Error::MESSAGE_HAS_UNKNOWN_PROPERTY; + } + + // Returns 7 bit US-ASCII string, either "OK" or an error message without + // position. + std::string Message() const; + + // Returns a 7 bit US-ASCII string, either "OK" or an error message that + // includes the position. + std::string ToASCIIString() const; +}; + +template <typename T> +class StatusOr { + public: + explicit StatusOr(const T& value) : value_(value) {} + explicit StatusOr(T&& value) : value_(std::move(value)) {} + explicit StatusOr(const Status& status) : status_(status) {} + + bool ok() const { return status_.ok(); } + const Status& status() const { return status_; } + T& operator*() & { return value(); } + const T& operator*() const& { return value(); } + T&& operator*() && { return value(); } + + T& value() & { + assert(ok()); + return value_; + } + T&& value() && { + assert(ok()); + return std::move(value_); + } + const T& value() const& { + assert(ok()); + return value_; + } + + private: + Status status_; + T value_; +}; + +} // namespace crdtp + +#endif // CRDTP_STATUS_H_ diff --git a/deps/inspector_protocol/crdtp/status_test.cc b/deps/inspector_protocol/crdtp/status_test.cc new file mode 100644 index 00000000000000..e25af39f0594be --- /dev/null +++ b/deps/inspector_protocol/crdtp/status_test.cc @@ -0,0 +1,29 @@ +// Copyright 2018 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "status.h" +#include "status_test_support.h" +#include "test_platform.h" + +namespace crdtp { +// ============================================================================= +// Status and Error codes +// ============================================================================= + +TEST(StatusTest, StatusToASCIIString) { + Status ok_status; + EXPECT_EQ("OK", ok_status.ToASCIIString()); + Status json_error(Error::JSON_PARSER_COLON_EXPECTED, 42); + EXPECT_EQ("JSON: colon expected at position 42", json_error.ToASCIIString()); + Status cbor_error(Error::CBOR_TRAILING_JUNK, 21); + EXPECT_EQ("CBOR: trailing junk at position 21", cbor_error.ToASCIIString()); +} + +TEST(StatusTest, StatusTestSupport) { + Status ok_status; + EXPECT_THAT(ok_status, StatusIsOk()); + Status json_error(Error::JSON_PARSER_COLON_EXPECTED, 42); + EXPECT_THAT(json_error, StatusIs(Error::JSON_PARSER_COLON_EXPECTED, 42)); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/status_test_support.cc b/deps/inspector_protocol/crdtp/status_test_support.cc new file mode 100644 index 00000000000000..3bf267a037906c --- /dev/null +++ b/deps/inspector_protocol/crdtp/status_test_support.cc @@ -0,0 +1,50 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "status_test_support.h" + +namespace crdtp { +void PrintTo(const Status& status, std::ostream* os) { + *os << status.ToASCIIString() << " (error: 0x" << std::hex + << static_cast<int>(status.error) << ", " + << "pos: " << std::dec << status.pos << ")"; +} + +namespace { +class StatusIsMatcher : public testing::MatcherInterface<Status> { + public: + explicit StatusIsMatcher(Status status) : expected_(status) {} + + bool MatchAndExplain(Status status, + testing::MatchResultListener* listener) const override { + return status.error == expected_.error && status.pos == expected_.pos; + } + + void DescribeTo(std::ostream* os) const override { + *os << "equals to "; + PrintTo(expected_, os); + } + + private: + Status expected_; +}; + +class StatusIsOkMatcher : public testing::MatcherInterface<Status> { + bool MatchAndExplain(Status status, + testing::MatchResultListener* listener) const override { + return status.ok(); + } + + void DescribeTo(std::ostream* os) const override { *os << "is ok"; } +}; +} // namespace + +testing::Matcher<Status> StatusIsOk() { + return MakeMatcher(new StatusIsOkMatcher()); +} + +testing::Matcher<Status> StatusIs(Error error, size_t pos) { + return MakeMatcher(new StatusIsMatcher(Status(error, pos))); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/status_test_support.h b/deps/inspector_protocol/crdtp/status_test_support.h new file mode 100644 index 00000000000000..5e2ee601e1855a --- /dev/null +++ b/deps/inspector_protocol/crdtp/status_test_support.h @@ -0,0 +1,32 @@ +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_STATUS_TEST_SUPPORT_H_ +#define CRDTP_STATUS_TEST_SUPPORT_H_ + +#include <ostream> +#include "status.h" +#include "test_platform.h" + +namespace crdtp { +// Supports gtest, to conveniently match Status objects and +// get useful error messages when tests fail. +// Typically used with EXPECT_THAT, e.g. +// +// EXPECT_THAT(status, StatusIs(Error::JSON_PARSER_COLON_EXPECTED, 42)); +// +// EXPECT_THAT(status, StatusIsOk()); + +// Prints a |status|, including its generated error message, error code, and +// position. This is used by gtest for pretty printing actual vs. expected. +void PrintTo(const Status& status, std::ostream* os); + +// Matches any status with |status.ok()|. +testing::Matcher<Status> StatusIsOk(); + +// Matches any status with |error| and |pos|. +testing::Matcher<Status> StatusIs(Error error, size_t pos); +} // namespace crdtp + +#endif // CRDTP_STATUS_TEST_SUPPORT_H_ diff --git a/deps/inspector_protocol/crdtp/test_platform.cc b/deps/inspector_protocol/crdtp/test_platform.cc new file mode 100644 index 00000000000000..bbd8d6cd9fefd4 --- /dev/null +++ b/deps/inspector_protocol/crdtp/test_platform.cc @@ -0,0 +1,33 @@ +// 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. + +// This file is Chromium specific, to make the tests work. It will work +// in the standalone (upstream) build, as well as in Chromium. In other code +// bases (e.g. v8), a custom file with these two functions and with appropriate +// includes may need to be provided, so it isn't necessarily part of a roll. + +#include "test_platform.h" + +#include <cstdint> +#include <string> +#include <vector> +#include "base/strings/utf_string_conversions.h" + +namespace crdtp { +std::string UTF16ToUTF8(span<uint16_t> in) { + std::string out; + bool success = base::UTF16ToUTF8(reinterpret_cast<const char16_t*>(in.data()), + in.size(), &out); + CHECK(success); + return out; +} + +std::vector<uint16_t> UTF8ToUTF16(span<uint8_t> in) { + std::u16string tmp; + bool success = base::UTF8ToUTF16(reinterpret_cast<const char*>(in.data()), + in.size(), &tmp); + CHECK(success); + return std::vector<uint16_t>(tmp.begin(), tmp.end()); +} +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/test_platform.h b/deps/inspector_protocol/crdtp/test_platform.h new file mode 100644 index 00000000000000..a512464be9f38e --- /dev/null +++ b/deps/inspector_protocol/crdtp/test_platform.h @@ -0,0 +1,31 @@ +// 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. + +// This file is Chromium specific, to make the tests work. It will work +// in the standalone (upstream) build, as well as in Chromium. In other code +// bases (e.g. v8), a custom file with these two functions and with appropriate +// includes may need to be provided, so it isn't necessarily part of a roll. +// +// Put another way: The tests, e.g. json_test.cc include *only* test_platform.h, +// which provides CHECK and gunit functionality, and UTF8<->UTF16 conversion +// functions. + +#ifndef CRDTP_TEST_PLATFORM_H_ +#define CRDTP_TEST_PLATFORM_H_ + +#include <cstdint> +#include <string> +#include <vector> +#include "base/check_op.h" // Provides CHECK and CHECK_EQ, etc. +#include "span.h" +#include "testing/gmock/include/gmock/gmock.h" // Provides Gunit +#include "testing/gtest/include/gtest/gtest.h" // Provides Gmock + +// Provides UTF8<->UTF16 conversion routines (implemented in .cc file). +namespace crdtp { +std::string UTF16ToUTF8(span<uint16_t> in); +std::vector<uint16_t> UTF8ToUTF16(span<uint8_t> in); +} // namespace crdtp + +#endif // CRDTP_TEST_PLATFORM_H_ diff --git a/deps/inspector_protocol/crdtp/test_string_traits.cc b/deps/inspector_protocol/crdtp/test_string_traits.cc new file mode 100644 index 00000000000000..b328ae22805bd4 --- /dev/null +++ b/deps/inspector_protocol/crdtp/test_string_traits.cc @@ -0,0 +1,31 @@ +// Copyright 2021 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "test_string_traits.h" + +namespace crdtp { + +// Test-only. Real-life bindings use UTF8/16 conversions as needed. +bool ProtocolTypeTraits<std::string>::Deserialize(DeserializerState* state, + std::string* value) { + if (state->tokenizer()->TokenTag() == cbor::CBORTokenTag::STRING8) { + auto cbor_span = state->tokenizer()->GetString8(); + value->assign(reinterpret_cast<const char*>(cbor_span.data()), + cbor_span.size()); + return true; + } + state->RegisterError(Error::BINDINGS_STRING8_VALUE_EXPECTED); + return false; +} + +// static +void ProtocolTypeTraits<std::string>::Serialize(const std::string& value, + std::vector<uint8_t>* bytes) { + cbor::EncodeString8( + span<uint8_t>(reinterpret_cast<const uint8_t*>(value.data()), + value.size()), + bytes); +} + +} // namespace crdtp diff --git a/deps/inspector_protocol/crdtp/test_string_traits.h b/deps/inspector_protocol/crdtp/test_string_traits.h new file mode 100644 index 00000000000000..be9a8418784bb5 --- /dev/null +++ b/deps/inspector_protocol/crdtp/test_string_traits.h @@ -0,0 +1,21 @@ +// Copyright 2021 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CRDTP_TEST_STRING_TRAITS_H_ + +#include "protocol_core.h" + +namespace crdtp { + +// Either real string traits or dummy string traits are going to be used +// depending on whether this is built standalone or with embedder. +template <> +struct ProtocolTypeTraits<std::string> { + static bool Deserialize(DeserializerState* state, std::string* value); + static void Serialize(const std::string& value, std::vector<uint8_t>* bytes); +}; + +} // namespace crdtp + +#endif // CRDTP_TEST_STRING_TRAITS_H_ diff --git a/deps/inspector_protocol/crdtp/transcode.cc b/deps/inspector_protocol/crdtp/transcode.cc new file mode 100644 index 00000000000000..dee576d9ee8c2c --- /dev/null +++ b/deps/inspector_protocol/crdtp/transcode.cc @@ -0,0 +1,61 @@ +// 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. + +#include <fstream> +#include <iostream> +#include <sstream> +#include <string> + +#include "json.h" + +namespace crdtp { +namespace { +int Transcode(const std::string& cmd, + const std::string& input_file_name, + const std::string& output_file_name) { + std::ifstream input_file(input_file_name, std::ios::binary); + if (!input_file.is_open()) { + std::cerr << "failed to open " << input_file_name << "\n"; + return 1; + } + std::string in; + while (input_file) { + std::string buffer(1024, '\0'); + input_file.read(&buffer.front(), buffer.size()); + in += buffer.substr(0, input_file.gcount()); + } + Status status; + std::vector<uint8_t> out; + if (cmd == "--json-to-cbor") { + status = json::ConvertJSONToCBOR(SpanFrom(in), &out); + } else if (cmd == "--cbor-to-json") { + status = json::ConvertCBORToJSON(SpanFrom(in), &out); + } else { + std::cerr << "unknown command " << cmd << "\n"; + return 1; + } + if (!status.ok()) { + std::cerr << "transcoding error: " << status.ToASCIIString() << "\n"; + return 1; + } + std::ofstream output_file(output_file_name, std::ios::binary); + if (!output_file.is_open()) { + std::cerr << "failed to open " << output_file_name << "\n"; + return 1; + } + output_file.write(reinterpret_cast<const char*>(out.data()), out.size()); + return 0; +} +} // namespace +} // namespace crdtp + +int main(int argc, char** argv) { + if (argc == 4) + return ::crdtp::Transcode(argv[1], argv[2], argv[3]); + std::cerr << "usage: " << argv[0] + << " --json-to-cbor <input-file> <output-file>\n" + << " or " << argv[0] + << " --cbor-to-json <input-file> <output-file>\n"; + return 1; +} diff --git a/tools/inspector_protocol/inspector_protocol.gni b/deps/inspector_protocol/inspector_protocol.gni similarity index 62% rename from tools/inspector_protocol/inspector_protocol.gni rename to deps/inspector_protocol/inspector_protocol.gni index 3e934526b82ae1..4e2547a09ad658 100644 --- a/tools/inspector_protocol/inspector_protocol.gni +++ b/deps/inspector_protocol/inspector_protocol.gni @@ -1,7 +1,12 @@ -# Copyright 2016 The Chromium Authors. All rights reserved. +# 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. +declare_args() { + # Where jinja2 is located, in chromium it is //third_party. + jinja_dir = "//third_party" +} + # This template will generate inspector protocol source code. The code will # not be compiled, use get_target_outputs(<name>) to compile them. # @@ -25,32 +30,14 @@ template("inspector_protocol_generate") { assert(defined(invoker.outputs)) assert(defined(invoker.inspector_protocol_dir)) inspector_protocol_dir = invoker.inspector_protocol_dir - + use_embedder_types = + defined(invoker.use_embedder_types) && invoker.use_embedder_types action(target_name) { script = "$inspector_protocol_dir/code_generator.py" inputs = [ invoker.config_file, - "$inspector_protocol_dir/lib/base_string_adapter_cc.template", - "$inspector_protocol_dir/lib/base_string_adapter_h.template", - "$inspector_protocol_dir/lib/encoding_h.template", - "$inspector_protocol_dir/lib/encoding_cpp.template", - "$inspector_protocol_dir/lib/Allocator_h.template", - "$inspector_protocol_dir/lib/DispatcherBase_cpp.template", - "$inspector_protocol_dir/lib/DispatcherBase_h.template", - "$inspector_protocol_dir/lib/ErrorSupport_cpp.template", - "$inspector_protocol_dir/lib/ErrorSupport_h.template", "$inspector_protocol_dir/lib/Forward_h.template", - "$inspector_protocol_dir/lib/FrontendChannel_h.template", - "$inspector_protocol_dir/lib/Maybe_h.template", - "$inspector_protocol_dir/lib/Object_cpp.template", - "$inspector_protocol_dir/lib/Object_h.template", - "$inspector_protocol_dir/lib/Parser_cpp.template", - "$inspector_protocol_dir/lib/Parser_h.template", - "$inspector_protocol_dir/lib/Protocol_cpp.template", - "$inspector_protocol_dir/lib/ValueConversions_h.template", - "$inspector_protocol_dir/lib/Values_cpp.template", - "$inspector_protocol_dir/lib/Values_h.template", "$inspector_protocol_dir/templates/Exported_h.template", "$inspector_protocol_dir/templates/Imported_h.template", "$inspector_protocol_dir/templates/TypeBuilder_cpp.template", @@ -59,16 +46,33 @@ template("inspector_protocol_generate") { if (defined(invoker.inputs)) { inputs += invoker.inputs } + if (!use_embedder_types) { + inputs += [ + "$inspector_protocol_dir/lib/ValueConversions_cpp.template", + "$inspector_protocol_dir/lib/ValueConversions_h.template", + "$inspector_protocol_dir/lib/Values_cpp.template", + "$inspector_protocol_dir/lib/Values_h.template", + "$inspector_protocol_dir/lib/Object_cpp.template", + "$inspector_protocol_dir/lib/Object_h.template", + ] + } args = [ "--jinja_dir", - rebase_path("//third_party/", root_build_dir), # jinja is in chromium's third_party + rebase_path(jinja_dir, root_build_dir), "--output_base", rebase_path(invoker.out_dir, root_build_dir), "--config", rebase_path(invoker.config_file, root_build_dir), + "--inspector_protocol_dir", + "$inspector_protocol_dir", ] - + if (use_embedder_types) { + args += [ + "--config_value", + "use_embedder_types=true", + ] + } if (defined(invoker.config_values)) { foreach(value, invoker.config_values) { args += [ diff --git a/deps/inspector_protocol/inspector_protocol.gyp b/deps/inspector_protocol/inspector_protocol.gyp new file mode 100644 index 00000000000000..0eb551c769f55d --- /dev/null +++ b/deps/inspector_protocol/inspector_protocol.gyp @@ -0,0 +1,43 @@ +{ + 'variables': { + 'crdtp_sources': [ + 'crdtp/cbor.cc', + 'crdtp/cbor.h', + 'crdtp/dispatch.cc', + 'crdtp/dispatch.h', + 'crdtp/error_support.cc', + 'crdtp/error_support.h', + 'crdtp/export.h', + 'crdtp/find_by_first.h', + 'crdtp/frontend_channel.h', + 'crdtp/json.cc', + 'crdtp/json.h', + 'crdtp/json_platform.cc', + 'crdtp/json_platform.h', + 'crdtp/maybe.h', + 'crdtp/parser_handler.h', + 'crdtp/protocol_core.cc', + 'crdtp/protocol_core.h', + 'crdtp/serializable.cc', + 'crdtp/serializable.h', + 'crdtp/span.cc', + 'crdtp/span.h', + 'crdtp/status.cc', + 'crdtp/status.h', + ] + }, + 'targets': [ + { + 'target_name': 'crdtp', + 'type': 'static_library', + 'include_dirs': [ '.' ], + 'direct_dependent_settings': { + # Use like `#include "crdtp/json.h"` + 'include_dirs': [ '.' ], + }, + 'sources': [ + '<@(crdtp_sources)', + ], + }, + ] +} diff --git a/tools/inspector_protocol/lib/Forward_h.template b/deps/inspector_protocol/lib/Forward_h.template similarity index 51% rename from tools/inspector_protocol/lib/Forward_h.template rename to deps/inspector_protocol/lib/Forward_h.template index a6c4b12feca013..4de0eeb803174b 100644 --- a/tools/inspector_protocol/lib/Forward_h.template +++ b/deps/inspector_protocol/lib/Forward_h.template @@ -1,6 +1,6 @@ // This file is generated by Forward_h.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. @@ -10,31 +10,58 @@ {% if config.lib.export_header %} #include {{format_include(config.lib.export_header)}} {% endif %} -#include {{format_include(config.lib.string_header)}} -#include <cstddef> #include <memory> #include <vector> -#include <unordered_map> -#include <unordered_set> + +#include "{{config.crdtp.dir}}/error_support.h" +#include "{{config.crdtp.dir}}/dispatch.h" +#include "{{config.crdtp.dir}}/frontend_channel.h" +#include "{{config.crdtp.dir}}/protocol_core.h" + +{% if config.use_embedder_types %} +#include {{format_include(config.lib.protocol_traits)}} +{% else %} +#include {{format_include(config.lib.string_header)}} +{% endif %} {% for namespace in config.protocol.namespace %} namespace {{namespace}} { {% endfor %} +using DispatchResponse = {{config.crdtp.namespace}}::DispatchResponse; +using ErrorSupport = {{config.crdtp.namespace}}::ErrorSupport; +using Serializable = {{config.crdtp.namespace}}::Serializable; +using FrontendChannel = {{config.crdtp.namespace}}::FrontendChannel; +using DomainDispatcher = {{config.crdtp.namespace}}::DomainDispatcher; +using UberDispatcher = {{config.crdtp.namespace}}::UberDispatcher; +using Response = DispatchResponse; + +{% if config.use_embedder_types %} +using DictionaryValue = crdtp::traits::DictionaryValue; +using Object = crdtp::traits::DictionaryValue; +using ListValue = crdtp::traits::ListValue; +using Value = crdtp::traits::Value; +using String = crdtp::traits::String; +using Binary = crdtp::Binary; +{% else %} class DictionaryValue; -class DispatchResponse; -class ErrorSupport; class FundamentalValue; class ListValue; class Object; -using Response = DispatchResponse; class SerializedValue; class StringValue; -class UberDispatcher; class Value; +{% endif %} + +using {{config.crdtp.namespace}}::detail::PtrMaybe; +using {{config.crdtp.namespace}}::detail::ValueMaybe; + +template<typename T> +using Maybe = {{config.crdtp.namespace}}::Maybe<T>; namespace detail { + template <typename T> struct ArrayTypedef { typedef std::vector<std::unique_ptr<T>> type; }; @@ -49,6 +76,10 @@ struct ArrayTypedef<double> { typedef std::vector<double> type; }; template <> struct ArrayTypedef<bool> { typedef std::vector<bool> type; }; + +template <> +struct ArrayTypedef<Binary> { typedef std::vector<Binary> type; }; + } // namespace detail template <typename T> diff --git a/tools/inspector_protocol/lib/Object_cpp.template b/deps/inspector_protocol/lib/Object_cpp.template similarity index 84% rename from tools/inspector_protocol/lib/Object_cpp.template rename to deps/inspector_protocol/lib/Object_cpp.template index 1640a11127b442..2b08cee303d335 100644 --- a/tools/inspector_protocol/lib/Object_cpp.template +++ b/deps/inspector_protocol/lib/Object_cpp.template @@ -1,6 +1,6 @@ // This file is generated by Object_cpp.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. @@ -14,13 +14,18 @@ std::unique_ptr<Object> Object::fromValue(protocol::Value* value, ErrorSupport* { protocol::DictionaryValue* dictionary = DictionaryValue::cast(value); if (!dictionary) { - errors->addError("object expected"); + errors->AddError("object expected"); return nullptr; } dictionary = static_cast<protocol::DictionaryValue*>(dictionary->clone().release()); return std::unique_ptr<Object>(new Object(std::unique_ptr<DictionaryValue>(dictionary))); } +// Implements Serializable. +void Object::AppendSerialized(std::vector<uint8_t>* out) const { + m_object->AppendSerialized(out); +} + std::unique_ptr<protocol::DictionaryValue> Object::toValue() const { return DictionaryValue::cast(m_object->clone()); diff --git a/tools/inspector_protocol/lib/Object_h.template b/deps/inspector_protocol/lib/Object_h.template similarity index 69% rename from tools/inspector_protocol/lib/Object_h.template rename to deps/inspector_protocol/lib/Object_h.template index ec953d0d4836a4..fe4df6b9cc7d5e 100644 --- a/tools/inspector_protocol/lib/Object_h.template +++ b/deps/inspector_protocol/lib/Object_h.template @@ -1,6 +1,6 @@ // This file is generated by Object_h.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. @@ -11,19 +11,28 @@ //#include "Forward.h" //#include "Values.h" +#include "{{config.crdtp.dir}}/serializable.h" + {% for namespace in config.protocol.namespace %} namespace {{namespace}} { {% endfor %} -class {{config.lib.export_macro}} Object { +class {{config.lib.export_macro}} Object : public {{config.crdtp.namespace}}::Serializable { public: static std::unique_ptr<Object> fromValue(protocol::Value*, ErrorSupport*); explicit Object(std::unique_ptr<protocol::DictionaryValue>); ~Object(); + // Implements Serializable. + void AppendSerialized(std::vector<uint8_t>* out) const override; + std::unique_ptr<protocol::DictionaryValue> toValue() const; std::unique_ptr<Object> clone() const; + private: + Object() = default; + friend struct {{config.crdtp.namespace}}::ProtocolTypeTraits<std::unique_ptr<Object>, void>; + std::unique_ptr<protocol::DictionaryValue> m_object; }; diff --git a/tools/inspector_protocol/lib/Protocol_cpp.template b/deps/inspector_protocol/lib/Protocol_cpp.template similarity index 83% rename from tools/inspector_protocol/lib/Protocol_cpp.template rename to deps/inspector_protocol/lib/Protocol_cpp.template index 88303a27ab9e7e..84bd6e70d6b200 100644 --- a/tools/inspector_protocol/lib/Protocol_cpp.template +++ b/deps/inspector_protocol/lib/Protocol_cpp.template @@ -1,6 +1,6 @@ // This file is generated by Protocol_cpp.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. diff --git a/deps/inspector_protocol/lib/ValueConversions_cpp.template b/deps/inspector_protocol/lib/ValueConversions_cpp.template new file mode 100644 index 00000000000000..d2ab41a2dbab6a --- /dev/null +++ b/deps/inspector_protocol/lib/ValueConversions_cpp.template @@ -0,0 +1,127 @@ +// This file is generated by ValueConversions_cpp.template. + +// Copyright 2020 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include {{format_include(config.protocol.package, "Protocol")}} + +#include <algorithm> +#include <climits> +#include <string> + +//#include "ValueConversions.h" +//#include "Values.h" + +{% for namespace in config.protocol.namespace %} +namespace {{namespace}} { +{% endfor %} + +{% for namespace in config.protocol.namespace %} +} // namespace +{% endfor %} + + +namespace {{config.crdtp.namespace}} { + +namespace { + +using {{"::".join(config.protocol.namespace)}}::Binary; +using {{"::".join(config.protocol.namespace)}}::Object; +using {{"::".join(config.protocol.namespace)}}::Value; +using {{"::".join(config.protocol.namespace)}}::String; +using {{"::".join(config.protocol.namespace)}}::DictionaryValue; +using {{"::".join(config.protocol.namespace)}}::FundamentalValue; +using {{"::".join(config.protocol.namespace)}}::StringValue; +using {{"::".join(config.protocol.namespace)}}::StringUtil; +//using {{"::".join(config.protocol.namespace)}}::EncodeString; + +std::unique_ptr<Value> ReadValue(DeserializerState* state) { + cbor::CBORTokenizer* tokenizer = state->tokenizer(); + switch (tokenizer->TokenTag()) { + case cbor::CBORTokenTag::TRUE_VALUE: + return FundamentalValue::create(true); + case cbor::CBORTokenTag::FALSE_VALUE: + return FundamentalValue::create(false); + case cbor::CBORTokenTag::NULL_VALUE: + return Value::null(); + case cbor::CBORTokenTag::INT32: + return FundamentalValue::create(tokenizer->GetInt32()); + case cbor::CBORTokenTag::DOUBLE: + return FundamentalValue::create(tokenizer->GetDouble()); + case cbor::CBORTokenTag::STRING8: { + const auto str = tokenizer->GetString8(); + return StringValue::create(StringUtil::fromUTF8(str.data(), str.size())); + } + case cbor::CBORTokenTag::STRING16: { + const auto str = tokenizer->GetString16WireRep(); + return StringValue::create(StringUtil::fromUTF16LE(reinterpret_cast<const uint16_t*>(str.data()), str.size() / 2)); + } + case cbor::CBORTokenTag::ENVELOPE: { + const auto env = tokenizer->GetEnvelope(); + return Value::parseBinary(env.data(), env.size()); + } + // Intentionally not supported. + case cbor::CBORTokenTag::BINARY: + // Should not be encountered outside of envelope. + case cbor::CBORTokenTag::MAP_START: + case cbor::CBORTokenTag::ARRAY_START: + default: + state->RegisterError(Error::CBOR_UNSUPPORTED_VALUE); + return nullptr; + } +} + +} // namespace + +// static +bool ProtocolTypeTraits<std::unique_ptr<Value>>::Deserialize( + DeserializerState* state, std::unique_ptr<Value>* value) { + auto result = ReadValue(state); + if (!result) + return false; + *value = std::move(result); + return true; +} + +// static +void ProtocolTypeTraits<std::unique_ptr<Value>>::Serialize( + const std::unique_ptr<Value>& value, std::vector<uint8_t>* bytes) { + value->AppendSerialized(bytes); +} + +// static +bool ProtocolTypeTraits<std::unique_ptr<DictionaryValue>>::Deserialize( + DeserializerState* state, std::unique_ptr<DictionaryValue>* value) { + std::unique_ptr<Value> res; + if (!ProtocolTypeTraits<std::unique_ptr<Value>>::Deserialize(state, &res)) + return false; + if (res->type() != Value::TypeObject) { + state->RegisterError(Error::BINDINGS_DICTIONARY_VALUE_EXPECTED); + return false; + } + *value = DictionaryValue::cast(std::move(res)); + return true; +} + +// static +void ProtocolTypeTraits<std::unique_ptr<DictionaryValue>>::Serialize( + const std::unique_ptr<DictionaryValue>& value, std::vector<uint8_t>* bytes) { + value->AppendSerialized(bytes); +} + +// static +bool ProtocolTypeTraits<std::unique_ptr<Object>>::Deserialize(DeserializerState* state, std::unique_ptr<Object>* value) { + auto res = DictionaryValue::create(); + if (ProtocolTypeTraits<std::unique_ptr<DictionaryValue>>::Deserialize(state, &res)) { + *value = std::make_unique<Object>(std::move(res)); + return true; + } + return false; +} + +void ProtocolTypeTraits<std::unique_ptr<Object>>::Serialize(const std::unique_ptr<Object>& value, std::vector<uint8_t>* bytes) { + value->AppendSerialized(bytes); +} + +} // namespace {{config.crdtp.namespace}} diff --git a/tools/inspector_protocol/lib/ValueConversions_h.template b/deps/inspector_protocol/lib/ValueConversions_h.template similarity index 68% rename from tools/inspector_protocol/lib/ValueConversions_h.template rename to deps/inspector_protocol/lib/ValueConversions_h.template index 63baf689c6e11c..bf05014f10154f 100644 --- a/tools/inspector_protocol/lib/ValueConversions_h.template +++ b/deps/inspector_protocol/lib/ValueConversions_h.template @@ -1,6 +1,6 @@ // This file is generated by ValueConversions_h.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. @@ -40,7 +40,7 @@ struct ValueConversions<bool> { bool result = false; bool success = value ? value->asBoolean(&result) : false; if (!success) - errors->addError("boolean value expected"); + errors->AddError("boolean value expected"); return result; } @@ -57,7 +57,7 @@ struct ValueConversions<int> { int result = 0; bool success = value ? value->asInteger(&result) : false; if (!success) - errors->addError("integer value expected"); + errors->AddError("integer value expected"); return result; } @@ -74,7 +74,7 @@ struct ValueConversions<double> { double result = 0; bool success = value ? value->asDouble(&result) : false; if (!success) - errors->addError("double value expected"); + errors->AddError("double value expected"); return result; } @@ -91,7 +91,7 @@ struct ValueConversions<String> { String result; bool success = value ? value->asString(&result) : false; if (!success) - errors->addError("string value expected"); + errors->AddError("string value expected"); return result; } @@ -107,7 +107,7 @@ struct ValueConversions<Binary> { { if (!value || (value->type() != Value::TypeBinary && value->type() != Value::TypeString)) { - errors->addError("Either string base64 or binary value expected"); + errors->AddError("Either string base64 or binary value expected"); return Binary(); } Binary binary; @@ -118,7 +118,7 @@ struct ValueConversions<Binary> { bool success; Binary out = Binary::fromBase64(result, &success); if (!success) - errors->addError("base64 decoding error"); + errors->AddError("base64 decoding error"); return out; } @@ -133,20 +133,20 @@ struct ValueConversions<std::vector<std::unique_ptr<T>>> { static std::unique_ptr<std::vector<std::unique_ptr<T>>> fromValue(protocol::Value* value, ErrorSupport* errors) { protocol::ListValue* array = ListValue::cast(value); if (!array) { - errors->addError("array expected"); + errors->AddError("array expected"); return nullptr; } - errors->push(); + errors->Push(); std::unique_ptr<std::vector<std::unique_ptr<T>>> result( new std::vector<std::unique_ptr<T>>()); result->reserve(array->size()); for (size_t i = 0; i < array->size(); ++i) { - errors->setName(StringUtil::fromInteger(i)); + errors->SetIndex(i); auto item = ValueConversions<T>::fromValue(array->at(i), errors); result->emplace_back(std::move(item)); } - errors->pop(); - if (errors->hasErrors()) + errors->Pop(); + if (!errors->Errors().empty()) return nullptr; return result; } @@ -167,19 +167,19 @@ struct ValueConversions<std::vector<T>> { static std::unique_ptr<std::vector<T>> fromValue(protocol::Value* value, ErrorSupport* errors) { protocol::ListValue* array = ListValue::cast(value); if (!array) { - errors->addError("array expected"); + errors->AddError("array expected"); return nullptr; } - errors->push(); + errors->Push(); std::unique_ptr<std::vector<T>> result(new std::vector<T>()); result->reserve(array->size()); for (size_t i = 0; i < array->size(); ++i) { - errors->setName(StringUtil::fromInteger(i)); + errors->SetIndex(i); auto item = ValueConversions<T>::fromValue(array->at(i), errors); result->emplace_back(std::move(item)); } - errors->pop(); - if (errors->hasErrors()) + errors->Pop(); + if (!errors->Errors().empty()) return nullptr; return result; } @@ -200,7 +200,7 @@ struct ValueConversions<Value> { { bool success = !!value; if (!success) { - errors->addError("value expected"); + errors->AddError("value expected"); return nullptr; } return value->clone(); @@ -223,7 +223,7 @@ struct ValueConversions<DictionaryValue> { { bool success = value && value->type() == protocol::Value::TypeObject; if (!success) - errors->addError("object expected"); + errors->AddError("object expected"); return DictionaryValue::cast(value->clone()); } @@ -244,7 +244,7 @@ struct ValueConversions<ListValue> { { bool success = value && value->type() == protocol::Value::TypeArray; if (!success) - errors->addError("list expected"); + errors->AddError("list expected"); return ListValue::cast(value->clone()); } @@ -259,8 +259,61 @@ struct ValueConversions<ListValue> { } }; +template<typename T> struct ValueTypeConverter { + static std::unique_ptr<T> FromValue(const protocol::Value& value) { + std::vector<uint8_t> bytes; + value.AppendSerialized(&bytes); + return T::FromBinary(bytes.data(), bytes.size()); + } + + static std::unique_ptr<protocol::DictionaryValue> ToValue(const T& obj) { + std::vector<uint8_t> bytes; + obj.AppendSerialized(&bytes); + auto result = Value::parseBinary(bytes.data(), bytes.size()); + return DictionaryValue::cast(std::move(result)); + } +}; + {% for namespace in config.protocol.namespace %} } // namespace {{namespace}} {% endfor %} +namespace {{config.crdtp.namespace}} { + +template<typename T> +struct ProtocolTypeTraits<T, + typename std::enable_if<std::is_base_of<{{"::".join(config.protocol.namespace)}}::Value, T>::value>::type> { + static void Serialize(const {{"::".join(config.protocol.namespace)}}::Value& value, std::vector<uint8_t>* bytes) { + value.AppendSerialized(bytes); + } +}; + +template <> +struct ProtocolTypeTraits<std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Value>> { + static bool Deserialize(DeserializerState* state, std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Value>* value); + static void Serialize(const std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Value>& value, std::vector<uint8_t>* bytes); +}; + +template <> +struct ProtocolTypeTraits<std::unique_ptr<{{"::".join(config.protocol.namespace)}}::DictionaryValue>> { + static bool Deserialize(DeserializerState* state, std::unique_ptr<{{"::".join(config.protocol.namespace)}}::DictionaryValue>* value); + static void Serialize(const std::unique_ptr<{{"::".join(config.protocol.namespace)}}::DictionaryValue>& value, std::vector<uint8_t>* bytes); +}; + +// TODO(caseq): get rid of it, it's just a DictionaryValue really. +template <> +struct ProtocolTypeTraits<std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Object>> { + static bool Deserialize(DeserializerState* state, std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Object>* value); + static void Serialize(const std::unique_ptr<{{"::".join(config.protocol.namespace)}}::Object>& value, std::vector<uint8_t>* bytes); +}; + +template<> +struct ProtocolTypeTraits<{{"::".join(config.protocol.namespace)}}::Object> { + static void Serialize(const {{"::".join(config.protocol.namespace)}}::Object& value, std::vector<uint8_t>* bytes) { + value.AppendSerialized(bytes); + } +}; + +} // namespace {{config.crdtp.namespace}} + #endif // !defined({{"_".join(config.protocol.namespace)}}_ValueConversions_h) diff --git a/deps/inspector_protocol/lib/Values_cpp.template b/deps/inspector_protocol/lib/Values_cpp.template new file mode 100644 index 00000000000000..dbc51694db2fa6 --- /dev/null +++ b/deps/inspector_protocol/lib/Values_cpp.template @@ -0,0 +1,542 @@ +// This file is generated by Values_cpp.template. + +// 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. + +//#include "Values.h" + +#include "{{config.crdtp.dir}}/cbor.h" + +{% for namespace in config.protocol.namespace %} +namespace {{namespace}} { +{% endfor %} + +namespace { +using {{config.crdtp.namespace}}::Status; +using {{config.crdtp.namespace}}::ParserHandler; +using {{config.crdtp.namespace}}::span; +namespace cbor { +using {{config.crdtp.namespace}}::cbor::ParseCBOR; +using {{config.crdtp.namespace}}::cbor::EncodeBinary; +using {{config.crdtp.namespace}}::cbor::EncodeDouble; +using {{config.crdtp.namespace}}::cbor::EncodeFalse; +using {{config.crdtp.namespace}}::cbor::EncodeFromLatin1; +using {{config.crdtp.namespace}}::cbor::EncodeFromUTF16; +using {{config.crdtp.namespace}}::cbor::EncodeIndefiniteLengthArrayStart; +using {{config.crdtp.namespace}}::cbor::EncodeIndefiniteLengthMapStart; +using {{config.crdtp.namespace}}::cbor::EncodeInt32; +using {{config.crdtp.namespace}}::cbor::EncodeNull; +using {{config.crdtp.namespace}}::cbor::EncodeStop; +using {{config.crdtp.namespace}}::cbor::EncodeString8; +using {{config.crdtp.namespace}}::cbor::EncodeTrue; +using {{config.crdtp.namespace}}::cbor::EnvelopeEncoder; +} // namespace cbor + +// Uses the parsing events received from driver of |ParserHandler| +// (e.g. cbor::ParseCBOR) into a protocol::Value instance. +class ValueParserHandler : public ParserHandler { + public: + // Provides the parsed protocol::Value. + std::unique_ptr<Value> ReleaseRoot() { return std::move(root_); } + + // The first parsing error encountered; |status().ok()| is the default. + Status status() const { return status_; } + + private: + // + // Implementation of ParserHandler. + // + void HandleMapBegin() override { + if (!status_.ok()) return; + std::unique_ptr<DictionaryValue> dict = DictionaryValue::create(); + DictionaryValue* dict_ptr = dict.get(); + AddValueToParent(std::move(dict)); + stack_.emplace_back(dict_ptr); + } + + void HandleMapEnd() override { + if (!status_.ok()) return; + DCHECK(!stack_.empty()); + DCHECK(stack_.back().is_dict); + stack_.pop_back(); + } + + void HandleArrayBegin() override { + if (!status_.ok()) return; + std::unique_ptr<ListValue> list = ListValue::create(); + ListValue* list_ptr = list.get(); + AddValueToParent(std::move(list)); + stack_.emplace_back(list_ptr); + } + + void HandleArrayEnd() override { + if (!status_.ok()) return; + DCHECK(!stack_.empty()); + DCHECK(!stack_.back().is_dict); + stack_.pop_back(); + } + + void HandleString8(span<uint8_t> chars) override { + AddStringToParent(StringUtil::fromUTF8(chars.data(), chars.size())); + } + + void HandleString16(span<uint16_t> chars) override { + AddStringToParent( + StringUtil::fromUTF16LE(chars.data(), chars.size())); + } + + void HandleBinary(span<uint8_t> bytes) override { + AddValueToParent( + BinaryValue::create(Binary::fromSpan(bytes.data(), bytes.size()))); + } + + void HandleDouble(double value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleInt32(int32_t value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleBool(bool value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleNull() override { + AddValueToParent(Value::null()); + } + + void HandleError(Status error) override { + status_ = error; + } + + // + // Adding strings and values to the parent value. + // Strings are handled separately because they can be keys for + // dictionary values. + // + void AddStringToParent(String str) { + if (!status_.ok()) return; + if (!root_) { + DCHECK(!key_is_pending_); + root_ = StringValue::create(str); + } else if (stack_.back().is_dict) { + // If we already have a pending key, then this is the value of the + // key/value pair. Otherwise, it's the new pending key. + if (key_is_pending_) { + stack_.back().dict->setString(pending_key_, str); + key_is_pending_ = false; + } else { + pending_key_ = std::move(str); + key_is_pending_ = true; + } + } else { // Top of the stack is a list. + DCHECK(!key_is_pending_); + stack_.back().list->pushValue(StringValue::create(str)); + } + } + + void AddValueToParent(std::unique_ptr<Value> value) { + if (!status_.ok()) return; + if (!root_) { + DCHECK(!key_is_pending_); + root_ = std::move(value); + } else if (stack_.back().is_dict) { + DCHECK(key_is_pending_); + stack_.back().dict->setValue(pending_key_, std::move(value)); + key_is_pending_ = false; + } else { // Top of the stack is a list. + DCHECK(!key_is_pending_); + stack_.back().list->pushValue(std::move(value)); + } + } + + // |status_.ok()| is the default; if we receive an error event + // we keep the first one and stop modifying any other state. + Status status_; + + // The root of the parsed protocol::Value tree. + std::unique_ptr<Value> root_; + + // If root_ is a list or a dictionary, this stack keeps track of + // the container we're currently parsing as well as its ancestors. + struct ContainerState { + ContainerState(DictionaryValue* dict) : is_dict(true), dict(dict) {} + ContainerState(ListValue* list) : is_dict(false), list(list) {} + + bool is_dict; + union { + DictionaryValue* dict; + ListValue* list; + }; + }; + std::vector<ContainerState> stack_; + + // For maps, keys and values are alternating events, so we keep the + // key around and process it when the value arrives. + bool key_is_pending_ = false; + String pending_key_; +}; +} // anonymous namespace + +// static +std::unique_ptr<Value> Value::parseBinary(const uint8_t* data, size_t size) { + ValueParserHandler handler; + cbor::ParseCBOR(span<uint8_t>(data, size), &handler); + // TODO(johannes): We have decent error info in handler.status(); provide + // a richer interface that makes this available to client code. + if (handler.status().ok()) + return handler.ReleaseRoot(); + return nullptr; +} + +bool Value::asBoolean(bool*) const +{ + return false; +} + +bool Value::asDouble(double*) const +{ + return false; +} + +bool Value::asInteger(int*) const +{ + return false; +} + +bool Value::asString(String*) const +{ + return false; +} + +bool Value::asBinary(Binary*) const +{ + return false; +} + +void Value::AppendSerialized(std::vector<uint8_t>* bytes) const { + DCHECK(m_type == TypeNull); + bytes->push_back(cbor::EncodeNull()); +} + +std::unique_ptr<Value> Value::clone() const +{ + return Value::null(); +} + +bool FundamentalValue::asBoolean(bool* output) const +{ + if (type() != TypeBoolean) + return false; + *output = m_boolValue; + return true; +} + +bool FundamentalValue::asDouble(double* output) const +{ + if (type() == TypeDouble) { + *output = m_doubleValue; + return true; + } + if (type() == TypeInteger) { + *output = m_integerValue; + return true; + } + return false; +} + +bool FundamentalValue::asInteger(int* output) const +{ + if (type() != TypeInteger) + return false; + *output = m_integerValue; + return true; +} + +void FundamentalValue::AppendSerialized(std::vector<uint8_t>* bytes) const { + switch (type()) { + case TypeDouble: + cbor::EncodeDouble(m_doubleValue, bytes); + return; + case TypeInteger: + cbor::EncodeInt32(m_integerValue, bytes); + return; + case TypeBoolean: + bytes->push_back(m_boolValue ? cbor::EncodeTrue() : cbor::EncodeFalse()); + return; + default: + DCHECK(false); + } +} + +std::unique_ptr<Value> FundamentalValue::clone() const +{ + switch (type()) { + case TypeDouble: return FundamentalValue::create(m_doubleValue); + case TypeInteger: return FundamentalValue::create(m_integerValue); + case TypeBoolean: return FundamentalValue::create(m_boolValue); + default: + DCHECK(false); + } + return nullptr; +} + +bool StringValue::asString(String* output) const +{ + *output = m_stringValue; + return true; +} + +namespace { +// This routine distinguishes between the current encoding for a given +// string |s|, and calls encoding routines that will +// - Ensure that all ASCII strings end up being encoded as UTF8 in +// the wire format - e.g., EncodeFromUTF16 will detect ASCII and +// do the (trivial) transcode to STRING8 on the wire, but if it's +// not ASCII it'll do STRING16. +// - Select a format that's cheap to convert to. E.g., we don't +// have LATIN1 on the wire, so we call EncodeFromLatin1 which +// transcodes to UTF8 if needed. +void EncodeString(const String& s, std::vector<uint8_t>* out) { + if (StringUtil::CharacterCount(s) == 0) { + cbor::EncodeString8(span<uint8_t>(nullptr, 0), out); // Empty string. + } else if (StringUtil::CharactersLatin1(s)) { + cbor::EncodeFromLatin1(span<uint8_t>(StringUtil::CharactersLatin1(s), + StringUtil::CharacterCount(s)), + out); + } else if (StringUtil::CharactersUTF16(s)) { + cbor::EncodeFromUTF16(span<uint16_t>(StringUtil::CharactersUTF16(s), + StringUtil::CharacterCount(s)), + out); + } else if (StringUtil::CharactersUTF8(s)) { + cbor::EncodeString8(span<uint8_t>(StringUtil::CharactersUTF8(s), + StringUtil::CharacterCount(s)), + out); + } +} +} // namespace +void StringValue::AppendSerialized(std::vector<uint8_t>* bytes) const { + EncodeString(m_stringValue, bytes); +} + +std::unique_ptr<Value> StringValue::clone() const +{ + return StringValue::create(m_stringValue); +} + +bool BinaryValue::asBinary(Binary* output) const +{ + *output = m_binaryValue; + return true; +} + +void BinaryValue::AppendSerialized(std::vector<uint8_t>* bytes) const { + cbor::EncodeBinary(span<uint8_t>(m_binaryValue.data(), + m_binaryValue.size()), bytes); +} + +std::unique_ptr<Value> BinaryValue::clone() const +{ + return BinaryValue::create(m_binaryValue); +} + + +DictionaryValue::~DictionaryValue() +{ +} + +void DictionaryValue::setBoolean(const String& name, bool value) +{ + setValue(name, FundamentalValue::create(value)); +} + +void DictionaryValue::setInteger(const String& name, int value) +{ + setValue(name, FundamentalValue::create(value)); +} + +void DictionaryValue::setDouble(const String& name, double value) +{ + setValue(name, FundamentalValue::create(value)); +} + +void DictionaryValue::setString(const String& name, const String& value) +{ + setValue(name, StringValue::create(value)); +} + +void DictionaryValue::setValue(const String& name, std::unique_ptr<Value> value) +{ + set(name, value); +} + +void DictionaryValue::setObject(const String& name, std::unique_ptr<DictionaryValue> value) +{ + set(name, value); +} + +void DictionaryValue::setArray(const String& name, std::unique_ptr<ListValue> value) +{ + set(name, value); +} + +bool DictionaryValue::getBoolean(const String& name, bool* output) const +{ + protocol::Value* value = get(name); + if (!value) + return false; + return value->asBoolean(output); +} + +bool DictionaryValue::getInteger(const String& name, int* output) const +{ + Value* value = get(name); + if (!value) + return false; + return value->asInteger(output); +} + +bool DictionaryValue::getDouble(const String& name, double* output) const +{ + Value* value = get(name); + if (!value) + return false; + return value->asDouble(output); +} + +bool DictionaryValue::getString(const String& name, String* output) const +{ + protocol::Value* value = get(name); + if (!value) + return false; + return value->asString(output); +} + +DictionaryValue* DictionaryValue::getObject(const String& name) const +{ + return DictionaryValue::cast(get(name)); +} + +protocol::ListValue* DictionaryValue::getArray(const String& name) const +{ + return ListValue::cast(get(name)); +} + +protocol::Value* DictionaryValue::get(const String& name) const +{ + Dictionary::const_iterator it = m_data.find(name); + if (it == m_data.end()) + return nullptr; + return it->second.get(); +} + +DictionaryValue::Entry DictionaryValue::at(size_t index) const +{ + const String key = m_order[index]; + return std::make_pair(key, m_data.find(key)->second.get()); +} + +bool DictionaryValue::booleanProperty(const String& name, bool defaultValue) const +{ + bool result = defaultValue; + getBoolean(name, &result); + return result; +} + +int DictionaryValue::integerProperty(const String& name, int defaultValue) const +{ + int result = defaultValue; + getInteger(name, &result); + return result; +} + +double DictionaryValue::doubleProperty(const String& name, double defaultValue) const +{ + double result = defaultValue; + getDouble(name, &result); + return result; +} + +void DictionaryValue::remove(const String& name) +{ + m_data.erase(name); + m_order.erase(std::remove(m_order.begin(), m_order.end(), name), m_order.end()); +} + +void DictionaryValue::AppendSerialized(std::vector<uint8_t>* bytes) const { + cbor::EnvelopeEncoder encoder; + encoder.EncodeStart(bytes); + bytes->push_back(cbor::EncodeIndefiniteLengthMapStart()); + for (size_t i = 0; i < m_order.size(); ++i) { + const String& key = m_order[i]; + Dictionary::const_iterator value = m_data.find(key); + DCHECK(value != m_data.cend() && value->second); + EncodeString(key, bytes); + value->second->AppendSerialized(bytes); + } + bytes->push_back(cbor::EncodeStop()); + encoder.EncodeStop(bytes); +} + +std::unique_ptr<Value> DictionaryValue::clone() const +{ + std::unique_ptr<DictionaryValue> result = DictionaryValue::create(); + for (size_t i = 0; i < m_order.size(); ++i) { + String key = m_order[i]; + Dictionary::const_iterator value = m_data.find(key); + DCHECK(value != m_data.cend() && value->second); + result->setValue(key, value->second->clone()); + } + return result; +} + +DictionaryValue::DictionaryValue() + : Value(TypeObject) +{ +} + +ListValue::~ListValue() +{ +} + +void ListValue::AppendSerialized(std::vector<uint8_t>* bytes) const { + cbor::EnvelopeEncoder encoder; + encoder.EncodeStart(bytes); + bytes->push_back(cbor::EncodeIndefiniteLengthArrayStart()); + for (size_t i = 0; i < m_data.size(); ++i) { + m_data[i]->AppendSerialized(bytes); + } + bytes->push_back(cbor::EncodeStop()); + encoder.EncodeStop(bytes); +} + +std::unique_ptr<Value> ListValue::clone() const +{ + std::unique_ptr<ListValue> result = ListValue::create(); + for (const std::unique_ptr<protocol::Value>& value : m_data) + result->pushValue(value->clone()); + return result; +} + +ListValue::ListValue() + : Value(TypeArray) +{ +} + +void ListValue::pushValue(std::unique_ptr<protocol::Value> value) +{ + DCHECK(value); + m_data.push_back(std::move(value)); +} + +protocol::Value* ListValue::at(size_t index) +{ + DCHECK_LT(index, m_data.size()); + return m_data[index].get(); +} + +{% for namespace in config.protocol.namespace %} +} // namespace {{namespace}} +{% endfor %} diff --git a/tools/inspector_protocol/lib/Values_h.template b/deps/inspector_protocol/lib/Values_h.template similarity index 74% rename from tools/inspector_protocol/lib/Values_h.template rename to deps/inspector_protocol/lib/Values_h.template index 4d6fde07d4df2c..30cd0e16323517 100644 --- a/tools/inspector_protocol/lib/Values_h.template +++ b/deps/inspector_protocol/lib/Values_h.template @@ -1,6 +1,6 @@ // This file is generated by Values_h.template. -// Copyright 2016 The Chromium Authors. All rights reserved. +// 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. @@ -10,6 +10,13 @@ //#include "Allocator.h" //#include "Forward.h" +#include <memory> +#include <unordered_map> +#include <utility> +#include <vector> + +#include {{format_include(config.protocol.package, "Forward")}} + {% for namespace in config.protocol.namespace %} namespace {{namespace}} { {% endfor %} @@ -18,6 +25,11 @@ class ListValue; class DictionaryValue; class Value; +#define PROTOCOL_DISALLOW_COPY(ClassName) \ + private: \ + ClassName(const ClassName&) = delete; \ + ClassName& operator=(const ClassName&) = delete + class {{config.lib.export_macro}} Value : public Serializable { PROTOCOL_DISALLOW_COPY(Value); public: @@ -39,7 +51,6 @@ public: TypeBinary, TypeObject, TypeArray, - TypeSerialized, TypeImported }; @@ -53,12 +64,8 @@ public: virtual bool asString(String* output) const; virtual bool asBinary(Binary* output) const; - virtual void writeJSON(StringBuilder* output) const; - virtual void writeBinary(std::vector<uint8_t>* bytes) const; + virtual void AppendSerialized(std::vector<uint8_t>* bytes) const override; virtual std::unique_ptr<Value> clone() const; - String toJSONString() const; - String serializeToJSON() override; - std::vector<uint8_t> serializeToBinary() override; protected: Value() : m_type(TypeNull) { } @@ -91,8 +98,7 @@ public: bool asBoolean(bool* output) const override; bool asDouble(double* output) const override; bool asInteger(int* output) const override; - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; + void AppendSerialized(std::vector<uint8_t>* bytes) const override; std::unique_ptr<Value> clone() const override; private: @@ -120,8 +126,7 @@ public: } bool asString(String* output) const override; - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; + void AppendSerialized(std::vector<uint8_t>* bytes) const override; std::unique_ptr<Value> clone() const override; private: @@ -139,8 +144,7 @@ public: } bool asBinary(Binary* output) const override; - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; + void AppendSerialized(std::vector<uint8_t>* bytes) const override; std::unique_ptr<Value> clone() const override; private: @@ -149,31 +153,6 @@ private: Binary m_binaryValue; }; -class {{config.lib.export_macro}} SerializedValue : public Value { -public: - static std::unique_ptr<SerializedValue> fromJSON(const String& value) - { - return std::unique_ptr<SerializedValue>(new SerializedValue(value)); - } - - static std::unique_ptr<SerializedValue> fromBinary(std::vector<uint8_t> value) - { - return std::unique_ptr<SerializedValue>(new SerializedValue(std::move(value))); - } - - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; - std::unique_ptr<Value> clone() const override; - -private: - explicit SerializedValue(const String& json) : Value(TypeSerialized), m_serializedJSON(json) { } - explicit SerializedValue(std::vector<uint8_t> binary) : Value(TypeSerialized), m_serializedBinary(std::move(binary)) { } - SerializedValue(const String& json, const std::vector<uint8_t>& binary) - : Value(TypeSerialized), m_serializedJSON(json), m_serializedBinary(binary) { } - String m_serializedJSON; - std::vector<uint8_t> m_serializedBinary; -}; - class {{config.lib.export_macro}} DictionaryValue : public Value { public: using Entry = std::pair<String, Value*>; @@ -191,11 +170,12 @@ public: static std::unique_ptr<DictionaryValue> cast(std::unique_ptr<Value> value) { - return std::unique_ptr<DictionaryValue>(DictionaryValue::cast(value.release())); + DictionaryValue* dictionaryValue = cast(value.get()); + if (dictionaryValue) value.release(); + return std::unique_ptr<DictionaryValue>(dictionaryValue); } - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; + void AppendSerialized(std::vector<uint8_t>* bytes) const override; std::unique_ptr<Value> clone() const override; size_t size() const { return m_data.size(); } @@ -258,13 +238,14 @@ public: static std::unique_ptr<ListValue> cast(std::unique_ptr<Value> value) { - return std::unique_ptr<ListValue>(ListValue::cast(value.release())); + ListValue* listValue = cast(value.get()); + if (listValue) value.release(); + return std::unique_ptr<ListValue>(listValue); } ~ListValue() override; - void writeJSON(StringBuilder* output) const override; - void writeBinary(std::vector<uint8_t>* bytes) const override; + void AppendSerialized(std::vector<uint8_t>* bytes) const override; std::unique_ptr<Value> clone() const override; void pushValue(std::unique_ptr<Value>); @@ -278,9 +259,6 @@ private: std::vector<std::unique_ptr<Value>> m_data; }; -void escapeLatinStringForJSON(const uint8_t* str, unsigned len, StringBuilder* dst); -void escapeWideStringForJSON(const uint16_t* str, unsigned len, StringBuilder* dst); - {% for namespace in config.protocol.namespace %} } // namespace {{namespace}} {% endfor %} diff --git a/deps/inspector_protocol/pdl.py b/deps/inspector_protocol/pdl.py new file mode 100644 index 00000000000000..6b448c07443c7e --- /dev/null +++ b/deps/inspector_protocol/pdl.py @@ -0,0 +1,181 @@ +# Copyright 2018 The Chromium Authors +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +from __future__ import print_function +import collections +import json +import os.path +import re +import sys + +description = '' + + +primitiveTypes = ['integer', 'number', 'boolean', 'string', 'object', + 'any', 'array', 'binary'] + + +def assignType(item, type, is_array=False, map_binary_to_string=False): + if is_array: + item['type'] = 'array' + item['items'] = collections.OrderedDict() + assignType(item['items'], type, False, map_binary_to_string) + return + + if type == 'enum': + type = 'string' + if map_binary_to_string and type == 'binary': + type = 'string' + if 'description' in item: + item['description'] = (item['description'] + + ' (Encoded as a base64 string when passed over JSON)') + if type in primitiveTypes: + item['type'] = type + else: + item['$ref'] = type + + +def createItem(d, experimental, deprecated, name=None): + result = collections.OrderedDict(d) + if name: + result['name'] = name + global description + if description: + result['description'] = description.strip() + if experimental: + result['experimental'] = True + if deprecated: + result['deprecated'] = True + return result + + +def parse(data, file_name, map_binary_to_string=False): + protocol = collections.OrderedDict() + protocol['version'] = collections.OrderedDict() + protocol['domains'] = [] + domain = None + item = None + subitems = None + nukeDescription = False + global description + lines = data.split('\n') + for i in range(0, len(lines)): + if nukeDescription: + description = '' + nukeDescription = False + line = lines[i] + trimLine = line.strip() + + if trimLine.startswith('#'): + if len(description): + description += '\n' + description += trimLine[2:] + continue + else: + nukeDescription = True + + if len(trimLine) == 0: + continue + + match = re.compile( + r'^(experimental )?(deprecated )?domain (.*)').match(line) + if match: + domain = createItem({'domain' : match.group(3)}, match.group(1), + match.group(2)) + protocol['domains'].append(domain) + continue + + match = re.compile(r'^ depends on ([^\s]+)').match(line) + if match: + if 'dependencies' not in domain: + domain['dependencies'] = [] + domain['dependencies'].append(match.group(1)) + continue + + match = re.compile(r'^ (experimental )?(deprecated )?type (.*) ' + r'extends (array of )?([^\s]+)').match(line) + if match: + if 'types' not in domain: + domain['types'] = [] + item = createItem({'id': match.group(3)}, match.group(1), match.group(2)) + assignType(item, match.group(5), match.group(4), map_binary_to_string) + domain['types'].append(item) + continue + + match = re.compile( + r'^ (experimental )?(deprecated )?(command|event) (.*)').match(line) + if match: + list = [] + if match.group(3) == 'command': + if 'commands' in domain: + list = domain['commands'] + else: + list = domain['commands'] = [] + else: + if 'events' in domain: + list = domain['events'] + else: + list = domain['events'] = [] + + item = createItem({}, match.group(1), match.group(2), match.group(4)) + list.append(item) + continue + + match = re.compile( + r'^ (experimental )?(deprecated )?(optional )?' + r'(array of )?([^\s]+) ([^\s]+)').match(line) + if match: + param = createItem({}, match.group(1), match.group(2), match.group(6)) + if match.group(3): + param['optional'] = True + assignType(param, match.group(5), match.group(4), map_binary_to_string) + if match.group(5) == 'enum': + enumliterals = param['enum'] = [] + subitems.append(param) + continue + + match = re.compile(r'^ (parameters|returns|properties)').match(line) + if match: + subitems = item[match.group(1)] = [] + continue + + match = re.compile(r'^ enum').match(line) + if match: + enumliterals = item['enum'] = [] + continue + + match = re.compile(r'^version').match(line) + if match: + continue + + match = re.compile(r'^ major (\d+)').match(line) + if match: + protocol['version']['major'] = match.group(1) + continue + + match = re.compile(r'^ minor (\d+)').match(line) + if match: + protocol['version']['minor'] = match.group(1) + continue + + match = re.compile(r'^ redirect ([^\s]+)').match(line) + if match: + item['redirect'] = match.group(1) + continue + + match = re.compile(r'^ ( )?[^\s]+$').match(line) + if match: + # enum literal + enumliterals.append(trimLine) + continue + + print('Error in %s:%s, illegal token: \t%s' % (file_name, i, line)) + sys.exit(1) + return protocol + + +def loads(data, file_name, map_binary_to_string=False): + if file_name.endswith(".pdl"): + return parse(data, file_name, map_binary_to_string) + return json.loads(data) diff --git a/tools/inspector_protocol/templates/Exported_h.template b/deps/inspector_protocol/templates/Exported_h.template similarity index 88% rename from tools/inspector_protocol/templates/Exported_h.template rename to deps/inspector_protocol/templates/Exported_h.template index 765f6c2135b9c3..f00875ac77a2a1 100644 --- a/tools/inspector_protocol/templates/Exported_h.template +++ b/deps/inspector_protocol/templates/Exported_h.template @@ -1,6 +1,6 @@ // This file is generated by Exported_h.template. -// Copyright (c) 2016 The Chromium Authors. All rights reserved. +// 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. @@ -20,8 +20,8 @@ namespace {{namespace}} { #define {{"_".join(config.protocol.namespace)}}_exported_api_h class {{config.exported.export_macro}} Exported { public: - virtual {{config.exported.string_out}} toJSONString() const = 0; - virtual void writeBinary(std::vector<uint8_t>* out) const = 0; + virtual void AppendSerialized(std::vector<uint8_t>* out) const = 0; + virtual ~Exported() { } }; #endif // !defined({{"_".join(config.protocol.namespace)}}_exported_api_h) @@ -61,7 +61,6 @@ namespace {{param.name | to_title_case}}Enum { class {{config.exported.export_macro}} {{type.id}} : public Exported { public: - static std::unique_ptr<protocol::{{domain.domain}}::API::{{type.id}}> fromJSONString(const {{config.exported.string_in}}& json); static std::unique_ptr<protocol::{{domain.domain}}::API::{{type.id}}> fromBinary(const uint8_t* data, size_t length); }; {% endfor %} diff --git a/tools/inspector_protocol/templates/Imported_h.template b/deps/inspector_protocol/templates/Imported_h.template similarity index 57% rename from tools/inspector_protocol/templates/Imported_h.template rename to deps/inspector_protocol/templates/Imported_h.template index f2e576a9c470ae..5161d27351be47 100644 --- a/tools/inspector_protocol/templates/Imported_h.template +++ b/deps/inspector_protocol/templates/Imported_h.template @@ -1,6 +1,6 @@ // This file is generated by Imported_h.template. -// Copyright (c) 2016 The Chromium Authors. All rights reserved. +// 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. @@ -14,6 +14,53 @@ #include {{format_include(config.imported.package, domain.domain)}} {% endif %} +#ifndef {{"_".join(config.protocol.namespace)}}_imported_imported_h + +namespace {{config.crdtp.namespace}} { + +template <typename T> +struct ProtocolTypeTraits< + std::unique_ptr<T>, + typename std::enable_if< + std::is_base_of<{{"::".join(config.imported.namespace)}}::Exported, T>::value>::type> { + static bool Deserialize(DeserializerState* state, std::unique_ptr<T>* value) { + if (state->tokenizer()->TokenTag() != cbor::CBORTokenTag::ENVELOPE) { + state->RegisterError(Error::CBOR_INVALID_ENVELOPE); + return false; + } + span<uint8_t> env = state->tokenizer()->GetEnvelope(); + auto res = T::fromBinary(env.data(), env.size()); + if (!res) { + // TODO(caseq): properly plumb an error rather than returning a bogus code. + state->RegisterError(Error::MESSAGE_MUST_BE_AN_OBJECT); + return false; + } + *value = std::move(res); + return true; + } + static void Serialize(const std::unique_ptr<T>& value, std::vector<uint8_t>* bytes) { + // Use virtual method, so that outgoing protocol objects could be retained + // by a pointer to ProtocolObject. + value->AppendSerialized(bytes); + } +}; + +template <typename T> +struct ProtocolTypeTraits< + T, + typename std::enable_if< + std::is_base_of<{{"::".join(config.imported.namespace)}}::Exported, T>::value>::type> { + static void Serialize(const T& value, std::vector<uint8_t>* bytes) { + // Use virtual method, so that outgoing protocol objects could be retained + // by a pointer to ProtocolObject. + value.AppendSerialized(bytes); + } +}; + +} // namespace {{config.crdtp.namespace}} + +#endif // {{"_".join(config.protocol.namespace)}}_imported_imported_h + {% for namespace in config.protocol.namespace %} namespace {{namespace}} { {% endfor %} @@ -29,14 +76,10 @@ public: return std::unique_ptr<ImportedValue>(new ImportedValue(value)); } - void writeJSON(StringBuilder* output) const override { - auto json = m_exported->toJSONString(); - String local_json = ({{config.imported.from_imported_string % "std::move(json)"}}); - StringUtil::builderAppend(*output, local_json); - } - void writeBinary(std::vector<uint8_t>* output) const override { - m_exported->writeBinary(output); + void AppendSerialized(std::vector<uint8_t>* output) const override { + m_exported->AppendSerialized(output); } + std::unique_ptr<Value> clone() const override { return std::unique_ptr<Value>(new ImportedValue(m_exported)); } @@ -56,15 +99,15 @@ struct ValueConversions<{{"::".join(config.imported.namespace)}}::{{domain.domai static std::unique_ptr<{{"::".join(config.imported.namespace)}}::{{domain.domain}}::API::{{type.id}}> fromValue(protocol::Value* value, ErrorSupport* errors) { if (!value) { - errors->addError("value expected"); + errors->AddError("value expected"); return nullptr; } std::vector<uint8_t> binary; - value->writeBinary(&binary); + value->AppendSerialized(&binary); auto result = {{"::".join(config.imported.namespace)}}::{{domain.domain}}::API::{{type.id}}::fromBinary(binary.data(), binary.size()); if (!result) - errors->addError("cannot parse"); + errors->AddError("cannot parse"); return result; } @@ -72,11 +115,6 @@ struct ValueConversions<{{"::".join(config.imported.namespace)}}::{{domain.domai { return ImportedValue::fromExported(exported); } - - static std::unique_ptr<protocol::Value> toValue(const std::unique_ptr<{{"::".join(config.imported.namespace)}}::{{domain.domain}}::API::{{type.id}}>& value) - { - return toValue(value.get()); - } }; {% endfor %} diff --git a/deps/inspector_protocol/templates/TypeBuilder_cpp.template b/deps/inspector_protocol/templates/TypeBuilder_cpp.template new file mode 100644 index 00000000000000..27a8f1f12b7e76 --- /dev/null +++ b/deps/inspector_protocol/templates/TypeBuilder_cpp.template @@ -0,0 +1,380 @@ +// This file is generated by TypeBuilder_cpp.template. + +// 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. + +#include {{format_domain_include(config.protocol.package, domain.domain)}} + +#include {{format_include(config.protocol.package, "Protocol")}} + +#include "{{config.crdtp.dir}}/cbor.h" +#include "{{config.crdtp.dir}}/find_by_first.h" +#include "{{config.crdtp.dir}}/span.h" + +{% for namespace in config.protocol.namespace %} +namespace {{namespace}} { +{% endfor %} +namespace {{domain.domain}} { + +using {{config.crdtp.namespace}}::DeserializerState; +using {{config.crdtp.namespace}}::ProtocolTypeTraits; + +// ------------- Enum values from types. + +const char Metainfo::domainName[] = "{{domain.domain}}"; +const char Metainfo::commandPrefix[] = "{{domain.domain}}."; +const char Metainfo::version[] = "{{domain.version}}"; + {% for type in domain.types %} + {% if not protocol.generate_type(domain.domain, type.id) %}{% continue %} {% endif %} + {% if "enum" in type %} + +namespace {{type.id}}Enum { + {% for literal in type.enum %} +const char {{ literal | dash_to_camelcase}}[] = "{{literal}}"; + {% endfor %} +} // namespace {{type.id}}Enum + {% if protocol.is_exported(domain.domain, type.id) %} + +namespace API { +namespace {{type.id}}Enum { + {% for literal in type.enum %} +const char* {{ literal | dash_to_camelcase}} = "{{literal}}"; + {% endfor %} +} // namespace {{type.id}}Enum +} // namespace API + {% endif %} + {% endif %} + + {% for property in type.properties %} + {% if "enum" in property %} + + {% for literal in property.enum %} +const char* {{type.id}}::{{property.name | to_title_case}}Enum::{{literal | dash_to_camelcase}} = "{{literal}}"; + {% endfor %} + {% endif %} + {% endfor %} + {% if not (type.type == "object") or not ("properties" in type) %}{% continue %}{% endif %} +CRDTP_BEGIN_DESERIALIZER({{type.id}}) + {% for property in type.properties | sort(attribute = 'name', case_sensitive=True) %} + {% if property.optional %} + CRDTP_DESERIALIZE_FIELD_OPT("{{property.name}}", m_{{property.name}}), + {% else %} + CRDTP_DESERIALIZE_FIELD("{{property.name}}", m_{{property.name}}), + {% endif %} + {% endfor %} +CRDTP_END_DESERIALIZER() + +CRDTP_BEGIN_SERIALIZER({{type.id}}) + {% for property in type.properties %} + CRDTP_SERIALIZE_FIELD("{{property.name}}", m_{{property.name}}); + {% endfor %} +CRDTP_END_SERIALIZER(); + + {% if protocol.is_exported(domain.domain, type.id) %} +// static +std::unique_ptr<API::{{type.id}}> API::{{type.id}}::fromBinary(const uint8_t* data, size_t length) +{ + return protocol::{{domain.domain}}::{{type.id}}::FromBinary(data, length); +} + {% endif %} + {% endfor %} + +// ------------- Enum values from params. + + {% for command in join_arrays(domain, ["commands", "events"]) %} + {% for param in join_arrays(command, ["parameters", "returns"]) %} + {% if "enum" in param %} + +namespace {{command.name | to_title_case}} { +namespace {{param.name | to_title_case}}Enum { + {% for literal in param.enum %} +const char* {{ literal | to_title_case}} = "{{literal}}"; + {% endfor %} +} // namespace {{param.name | to_title_case}}Enum +} // namespace {{command.name | to_title_case }} + {% if protocol.is_exported(domain.domain, command.name + "." + param.name) %} + +namespace API { +namespace {{command.name | to_title_case}} { +namespace {{param.name | to_title_case}}Enum { + {% for literal in param.enum %} +const char* {{ literal | to_title_case}} = "{{literal}}"; + {% endfor %} +} // namespace {{param.name | to_title_case}}Enum +} // namespace {{command.name | to_title_case }} +} // namespace API + {% endif %} + {% endif %} + {% endfor %} + {% endfor %} + +// ------------- Frontend notifications. + {% for event in domain.events %} + {% if not protocol.generate_event(domain.domain, event.name) %}{% continue %}{% endif %} + +void Frontend::{{event.name | to_method_case}}( + {%- for parameter in event.parameters %} + {% if "optional" in parameter -%} + Maybe<{{protocol.resolve_type(parameter).raw_type}}> + {%- else -%} + {{protocol.resolve_type(parameter).pass_type}} + {%- endif %} {{parameter.name}}{%- if not loop.last -%}, {% endif -%} + {% endfor -%}) +{ + if (!frontend_channel_) + return; + {% if event.parameters %} + {{config.crdtp.namespace}}::ObjectSerializer serializer; + {% for parameter in event.parameters %} + serializer.AddField({{config.crdtp.namespace}}::MakeSpan("{{parameter.name}}"), {{parameter.name}}); + {% endfor %} + frontend_channel_->SendProtocolNotification({{config.crdtp.namespace}}::CreateNotification("{{domain.domain}}.{{event.name}}", serializer.Finish())); + {% else %} + frontend_channel_->SendProtocolNotification({{config.crdtp.namespace}}::CreateNotification("{{domain.domain}}.{{event.name}}")); + {% endif %} +} + {% endfor %} + +void Frontend::flush() +{ + frontend_channel_->FlushProtocolNotifications(); +} + +void Frontend::sendRawNotification(std::unique_ptr<Serializable> notification) +{ + frontend_channel_->SendProtocolNotification(std::move(notification)); +} + +// --------------------- Dispatcher. + +class DomainDispatcherImpl : public protocol::DomainDispatcher { +public: + DomainDispatcherImpl(FrontendChannel* frontendChannel, Backend* backend) + : DomainDispatcher(frontendChannel) + , m_backend(backend) {} + ~DomainDispatcherImpl() override { } + + using CallHandler = void (DomainDispatcherImpl::*)(const {{config.crdtp.namespace}}::Dispatchable& dispatchable); + + std::function<void(const {{config.crdtp.namespace}}::Dispatchable&)> Dispatch({{config.crdtp.namespace}}::span<uint8_t> command_name) override; + + {% for command in domain.commands %} + {% if "redirect" in command %}{% continue %}{% endif %} + {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} + void {{command.name}}(const {{config.crdtp.namespace}}::Dispatchable& dispatchable); + {% endfor %} + protected: + Backend* m_backend; +}; + +namespace { +// This helper method with a static map of command methods (instance methods +// of DomainDispatcherImpl declared just above) by their name is used immediately below, +// in the DomainDispatcherImpl::Dispatch method. +DomainDispatcherImpl::CallHandler CommandByName({{config.crdtp.namespace}}::span<uint8_t> command_name) { + static auto* commands = [](){ + auto* commands = new std::vector<std::pair<{{config.crdtp.namespace}}::span<uint8_t>, + DomainDispatcherImpl::CallHandler>>{ + {% for command in domain.commands|sort(attribute="name",case_sensitive=True) %} + {% if "redirect" in command %}{% continue %}{% endif %} + {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} + { + {{config.crdtp.namespace}}::SpanFrom("{{command.name}}"), + &DomainDispatcherImpl::{{command.name}} + }, + {% endfor %} + }; + return commands; + }(); + return {{config.crdtp.namespace}}::FindByFirst<DomainDispatcherImpl::CallHandler>(*commands, command_name, nullptr); +} +} // namespace + +std::function<void(const {{config.crdtp.namespace}}::Dispatchable&)> DomainDispatcherImpl::Dispatch({{config.crdtp.namespace}}::span<uint8_t> command_name) { + CallHandler handler = CommandByName(command_name); + if (!handler) return nullptr; + + return [this, handler](const {{config.crdtp.namespace}}::Dispatchable& dispatchable) { + (this->*handler)(dispatchable); + }; +} + + {% for command in domain.commands %} + {% set command_name_title = command.name | to_title_case %} + {% if "redirect" in command %}{% continue %}{% endif %} + {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} + {% if protocol.is_async_command(domain.domain, command.name) %} + +class {{command_name_title}}CallbackImpl : public Backend::{{command_name_title}}Callback, public DomainDispatcher::Callback { +public: + {{command_name_title}}CallbackImpl(std::unique_ptr<DomainDispatcher::WeakPtr> backendImpl, int callId, {{config.crdtp.namespace}}::span<uint8_t> message) + : DomainDispatcher::Callback(std::move(backendImpl), callId, +{{config.crdtp.namespace}}::SpanFrom("{{domain.domain}}.{{command.name}}"), message) { } + + void sendSuccess( + {%- for parameter in command.returns -%} + {%- if "optional" in parameter -%} + Maybe<{{protocol.resolve_type(parameter).raw_type}}> {{parameter.name}} + {%- else -%} + {{protocol.resolve_type(parameter).pass_type}} {{parameter.name}} + {%- endif -%} + {%- if not loop.last -%}, {% endif -%} + {%- endfor -%}) override + { + {{config.crdtp.namespace}}::ObjectSerializer serializer; + {% for parameter in command.returns %} + serializer.AddField({{config.crdtp.namespace}}::MakeSpan("{{parameter.name}}"), {{parameter.name}}); + {% endfor %} + sendIfActive(serializer.Finish(), DispatchResponse::Success()); + } + + void fallThrough() override + { + fallThroughIfActive(); + } + + void sendFailure(const DispatchResponse& response) override + { + DCHECK(response.IsError()); + sendIfActive(nullptr, response); + } +}; + {% endif %} + +namespace { + + {% if "parameters" in command %} +struct {{command.name}}Params : public {{config.crdtp.namespace}}::DeserializableProtocolObject<{{command.name}}Params> { + {% for parameter in command.parameters %} + {% set parameter_type = protocol.resolve_type(parameter) %} + {% if parameter.optional %} + Maybe<{{parameter_type.raw_type}}> {{parameter.name}}; + {% else %} + {{parameter_type.type}} {{parameter.name}}; + {% endif %} + {% endfor %} + DECLARE_DESERIALIZATION_SUPPORT(); +}; + +CRDTP_BEGIN_DESERIALIZER({{command.name}}Params) + {% for parameter in command.parameters | sort(attribute = 'name', case_sensitive=True) %} + {% if parameter.optional %} + CRDTP_DESERIALIZE_FIELD_OPT("{{parameter.name}}", {{parameter.name}}), + {% else %} + CRDTP_DESERIALIZE_FIELD("{{parameter.name}}", {{parameter.name}}), + {% endif %} + {% endfor %} +CRDTP_END_DESERIALIZER() + {% endif %} + +} // namespace + +void DomainDispatcherImpl::{{command.name}}(const {{config.crdtp.namespace}}::Dispatchable& dispatchable) +{ + // Prepare input parameters. + {% if "parameters" in command %} + auto deserializer = {{config.crdtp.namespace}}::DeferredMessage::FromSpan(dispatchable.Params())->MakeDeserializer(); + {{command.name}}Params params; + if (!{{command.name}}Params::Deserialize(&deserializer, ¶ms)) { + ReportInvalidParams(dispatchable, deserializer); + return; + } + {% endif -%} + + {% if "returns" in command and not protocol.is_async_command(domain.domain, command.name) %} + // Declare output parameters. + {% for parameter in command.returns %} + {% if "optional" in parameter %} + Maybe<{{protocol.resolve_type(parameter).raw_type}}> out_{{parameter.name}}; + {% else %} + {{protocol.resolve_type(parameter).type}} out_{{parameter.name}}; + {% endif %} + {% endfor %} + {% endif %} + + {% if not protocol.is_async_command(domain.domain, command.name) %} + std::unique_ptr<DomainDispatcher::WeakPtr> weak = weakPtr(); + DispatchResponse response = m_backend->{{command.name | to_method_case}}( + {%- for parameter in command.parameters -%} + {%- if not loop.first -%}, {% endif -%} + {%- if "optional" in parameter -%} + std::move(params.{{parameter.name}}) + {%- else -%} + {{protocol.resolve_type(parameter).to_pass_type % ("params." + parameter.name)}} + {%- endif -%} + {%- endfor %} + {%- if "returns" in command %} + {%- for parameter in command.returns -%} + {%- if not loop.first or command.parameters -%}, {% endif -%} + &out_{{parameter.name}} + {%- endfor %} + {% endif %}); + if (response.IsFallThrough()) { + channel()->FallThrough(dispatchable.CallId(), {{config.crdtp.namespace}}::SpanFrom("{{domain.domain}}.{{command.name}}"), dispatchable.Serialized()); + return; + } + {% if "returns" in command %} + if (weak->get()) { + std::unique_ptr<{{config.crdtp.namespace}}::Serializable> result; + if (response.IsSuccess()) { + {{config.crdtp.namespace}}::ObjectSerializer serializer; + {% for parameter in command.returns %} + serializer.AddField({{config.crdtp.namespace}}::MakeSpan("{{parameter.name}}"), out_{{parameter.name}}); + {% endfor %} + result = serializer.Finish(); + } else { + result = Serializable::From({}); + } + weak->get()->sendResponse(dispatchable.CallId(), response, std::move(result)); + } + {% else %} + if (weak->get()) + weak->get()->sendResponse(dispatchable.CallId(), response); + {% endif %} + return; + {% else %} + m_backend->{{command.name | to_method_case}}( + {%- for property in command.parameters -%} + {%- if not loop.first -%}, {% endif -%} + {%- if "optional" in property -%} + std::move(params.{{property.name}}) + {%- else -%} + {{protocol.resolve_type(property).to_pass_type % ("params." + property.name)}} + {%- endif -%} + {%- endfor -%} + {%- if command.parameters -%}, {% endif -%} + std::make_unique<{{command_name_title}}CallbackImpl>(weakPtr(), dispatchable.CallId(), dispatchable.Serialized())); + {% endif %} +} + {% endfor %} + +namespace { +// This helper method (with a static map of redirects) is used from Dispatcher::wire +// immediately below. +const std::vector<std::pair<{{config.crdtp.namespace}}::span<uint8_t>, {{config.crdtp.namespace}}::span<uint8_t>>>& SortedRedirects() { + static auto* redirects = [](){ + auto* redirects = new std::vector<std::pair<{{config.crdtp.namespace}}::span<uint8_t>, {{config.crdtp.namespace}}::span<uint8_t>>>{ + {% for command in domain.commands|sort(attribute="name",case_sensitive=True) %} + {% if "redirect" in command %} + { {{config.crdtp.namespace}}::SpanFrom("{{domain.domain}}.{{command.name}}"), {{config.crdtp.namespace}}::SpanFrom("{{command.redirect}}.{{command.name}}") }, + {% endif %} + {% endfor %} + }; + return redirects; + }(); + return *redirects; +} +} // namespace + +// static +void Dispatcher::wire(UberDispatcher* uber, Backend* backend) +{ + auto dispatcher = std::make_unique<DomainDispatcherImpl>(uber->channel(), backend); + uber->WireBackend({{config.crdtp.namespace}}::SpanFrom("{{domain.domain}}"), SortedRedirects(), std::move(dispatcher)); +} + +} // {{domain.domain}} +{% for namespace in config.protocol.namespace %} +} // namespace {{namespace}} +{% endfor %} diff --git a/tools/inspector_protocol/templates/TypeBuilder_h.template b/deps/inspector_protocol/templates/TypeBuilder_h.template similarity index 88% rename from tools/inspector_protocol/templates/TypeBuilder_h.template rename to deps/inspector_protocol/templates/TypeBuilder_h.template index 9d86d7a4ac0a5c..e23567a5732d76 100644 --- a/tools/inspector_protocol/templates/TypeBuilder_h.template +++ b/deps/inspector_protocol/templates/TypeBuilder_h.template @@ -1,6 +1,6 @@ // This file is generated by TypeBuilder_h.template. -// Copyright (c) 2016 The Chromium Authors. All rights reserved. +// 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. @@ -26,8 +26,6 @@ namespace {{namespace}} { {% endfor %} namespace {{domain.domain}} { - -// ------------- Forward and enum declarations. {% for type in domain.types %} {% if not protocol.generate_type(domain.domain, type.id) %}{% continue %}{% endif %} {% if type.type == "object" %} @@ -40,6 +38,8 @@ using {{type.id}} = Object; using {{type.id}} = {{protocol.resolve_type(type).type}}; {% endif %} {% endfor %} + +// ------------- Forward and enum declarations. {% for type in domain.types %} {% if not protocol.generate_type(domain.domain, type.id) %}{% continue %}{% endif %} {% if "enum" in type %} @@ -71,11 +71,9 @@ namespace {{param.name | to_title_case}}Enum { {% if not protocol.generate_type(domain.domain, type.id) %}{% continue %}{% endif %} {% if not (type.type == "object") or not ("properties" in type) %}{% continue %}{% endif %} -class {{config.protocol.export_macro}} {{type.id}} : public Serializable{% if protocol.is_exported(domain.domain, type.id) %}, public API::{{type.id}}{% endif %}{ - PROTOCOL_DISALLOW_COPY({{type.id}}); +class {{config.protocol.export_macro}} {{type.id}} : public ::{{config.crdtp.namespace}}::ProtocolObject<{{type.id}}>{% if protocol.is_exported(domain.domain, type.id) %}, + public API::{{type.id}}{% endif %} { public: - static std::unique_ptr<{{type.id}}> fromValue(protocol::Value* value, ErrorSupport* errors); - ~{{type.id}}() override { } {% for property in type.properties %} {% set property_type = protocol.resolve_type(property) %} @@ -91,24 +89,22 @@ public: {% endif %} {% if property.optional %} - bool {{"has" | to_method_case}}{{property_name}}() { return {{property_field}}.isJust(); } - {{property_type.raw_return_type}} {{"get" | to_method_case}}{{property_name}}({{property_type.raw_pass_type}} defaultValue) { return {{property_field}}.isJust() ? {{property_field}}.fromJust() : defaultValue; } + bool {{"has" | to_method_case}}{{property_name}}() { return {{property_field}}.has_value(); } + {% if property_type.is_primitive %} + {{property_type.raw_return_type}} {{"get" | to_method_case}}{{property_name}}({{property_type.raw_pass_type}} defaultValue) const { + return {{property_field}}.value_or(defaultValue); + } + {% else %} + {{property_type.raw_return_type}} {{"get" | to_method_case}}{{property_name}}({{property_type.raw_pass_type}} defaultValue) { + return {{property_field}}.has_value() ? &{{property_field}}.value() : defaultValue; + } + {% endif %} {% else %} {{property_type.raw_return_type}} {{"get" | to_method_case}}{{property_name}}() { return {{property_type.to_raw_type % property_field}}; } {% endif %} void {{"set" | to_method_case}}{{property_name}}({{property_type.pass_type}} value) { {{property_field}} = {{property_type.to_rvalue % "value"}}; } {% endfor %} - std::unique_ptr<protocol::DictionaryValue> toValue() const; - String serializeToJSON() override { return toValue()->serializeToJSON(); } - std::vector<uint8_t> serializeToBinary() override { return toValue()->serializeToBinary(); } - String toJSON() const { return toValue()->toJSONString(); } - std::unique_ptr<{{type.id}}> clone() const; - {% if protocol.is_exported(domain.domain, type.id) %} - {{config.exported.string_out}} toJSONString() const override; - void writeBinary(std::vector<uint8_t>* out) const override; - {% endif %} - template<int STATE> class {{type.id}}Builder { public: @@ -166,6 +162,8 @@ public: } private: + DECLARE_SERIALIZATION_SUPPORT(); + {{type.id}}() { {% for property in type.properties %} @@ -245,7 +243,7 @@ public: {% if protocol.generate_disable(domain) %} virtual DispatchResponse {{"disable" | to_method_case}}() { - return DispatchResponse::OK(); + return DispatchResponse::Success(); } {% endif %} }; @@ -254,7 +252,7 @@ public: class {{config.protocol.export_macro}} Frontend { public: - explicit Frontend(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChannel) { } + explicit Frontend(FrontendChannel* frontend_channel) : frontend_channel_(frontend_channel) {} {% for event in domain.events %} {% if not protocol.generate_event(domain.domain, event.name) %}{% continue %}{% endif %} void {{event.name | to_method_case}}( @@ -268,11 +266,10 @@ public: ); {% endfor %} - void flush(); - void sendRawJSONNotification(String); - void sendRawCBORNotification(std::vector<uint8_t>); -private: - FrontendChannel* m_frontendChannel; + void flush(); + void sendRawNotification(std::unique_ptr<Serializable>); + private: + FrontendChannel* frontend_channel_; }; // ------------- Dispatcher. diff --git a/deps/ncrypto/ncrypto.cc b/deps/ncrypto/ncrypto.cc index ac2d771555126a..ce2e7b384eb198 100644 --- a/deps/ncrypto/ncrypto.cc +++ b/deps/ncrypto/ncrypto.cc @@ -311,6 +311,87 @@ BignumPointer BignumPointer::clone() { return BignumPointer(BN_dup(bn_.get())); } +int BignumPointer::isPrime(int nchecks, + BignumPointer::PrimeCheckCallback innerCb) const { + BignumCtxPointer ctx(BN_CTX_new()); + BignumGenCallbackPointer cb(nullptr); + if (innerCb != nullptr) { + cb = BignumGenCallbackPointer(BN_GENCB_new()); + if (!cb) [[unlikely]] + return -1; + BN_GENCB_set( + cb.get(), + // TODO(@jasnell): This could be refactored to allow inlining. + // Not too important right now tho. + [](int a, int b, BN_GENCB* ctx) mutable -> int { + PrimeCheckCallback& ptr = + *static_cast<PrimeCheckCallback*>(BN_GENCB_get_arg(ctx)); + return ptr(a, b) ? 1 : 0; + }, + &innerCb); + } + return BN_is_prime_ex(get(), nchecks, ctx.get(), cb.get()); +} + +BignumPointer BignumPointer::NewPrime(const PrimeConfig& params, + PrimeCheckCallback cb) { + BignumPointer prime(BN_new()); + if (!prime || !prime.generate(params, std::move(cb))) { + return {}; + } + return prime; +} + +bool BignumPointer::generate(const PrimeConfig& params, + PrimeCheckCallback innerCb) const { + // BN_generate_prime_ex() calls RAND_bytes_ex() internally. + // Make sure the CSPRNG is properly seeded. + std::ignore = CSPRNG(nullptr, 0); + BignumGenCallbackPointer cb(nullptr); + if (innerCb != nullptr) { + cb = BignumGenCallbackPointer(BN_GENCB_new()); + if (!cb) [[unlikely]] + return -1; + BN_GENCB_set( + cb.get(), + [](int a, int b, BN_GENCB* ctx) mutable -> int { + PrimeCheckCallback& ptr = + *static_cast<PrimeCheckCallback*>(BN_GENCB_get_arg(ctx)); + return ptr(a, b) ? 1 : 0; + }, + &innerCb); + } + if (BN_generate_prime_ex(get(), + params.bits, + params.safe ? 1 : 0, + params.add.get(), + params.rem.get(), + cb.get()) == 0) { + return false; + } + + return true; +} + +BignumPointer BignumPointer::NewSub(const BignumPointer& a, + const BignumPointer& b) { + BignumPointer res = New(); + if (!res) return {}; + if (!BN_sub(res.get(), a.get(), b.get())) { + return {}; + } + return res; +} + +BignumPointer BignumPointer::NewLShift(size_t length) { + BignumPointer res = New(); + if (!res) return {}; + if (!BN_lshift(res.get(), One(), length)) { + return {}; + } + return res; +} + // ============================================================================ // Utility methods @@ -1005,6 +1086,29 @@ X509View X509View::From(const SSLCtxPointer& ctx) { return X509View(SSL_CTX_get0_certificate(ctx.get())); } +std::optional<std::string> X509View::getFingerprint( + const EVP_MD* method) const { + unsigned int md_size; + unsigned char md[EVP_MAX_MD_SIZE]; + static constexpr char hex[] = "0123456789ABCDEF"; + + if (X509_digest(get(), method, md, &md_size)) { + if (md_size == 0) return std::nullopt; + std::string fingerprint((md_size * 3) - 1, 0); + for (unsigned int i = 0; i < md_size; i++) { + auto idx = 3 * i; + fingerprint[idx] = hex[(md[i] & 0xf0) >> 4]; + fingerprint[idx + 1] = hex[(md[i] & 0x0f)]; + if (i == md_size - 1) break; + fingerprint[idx + 2] = ':'; + } + + return fingerprint; + } + + return std::nullopt; +} + X509Pointer X509View::clone() const { ClearErrorOnReturn clear_error_on_return; if (!cert_) return {}; @@ -1050,6 +1154,53 @@ X509Pointer X509Pointer::IssuerFrom(const SSL_CTX* ctx, const X509View& cert) { X509Pointer X509Pointer::PeerFrom(const SSLPointer& ssl) { return X509Pointer(SSL_get_peer_certificate(ssl.get())); } + +// When adding or removing errors below, please also update the list in the API +// documentation. See the "OpenSSL Error Codes" section of doc/api/errors.md +// Also *please* update the respective section in doc/api/tls.md as well +std::string_view X509Pointer::ErrorCode(int32_t err) { // NOLINT(runtime/int) +#define CASE(CODE) \ + case X509_V_ERR_##CODE: \ + return #CODE; + switch (err) { + CASE(UNABLE_TO_GET_ISSUER_CERT) + CASE(UNABLE_TO_GET_CRL) + CASE(UNABLE_TO_DECRYPT_CERT_SIGNATURE) + CASE(UNABLE_TO_DECRYPT_CRL_SIGNATURE) + CASE(UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY) + CASE(CERT_SIGNATURE_FAILURE) + CASE(CRL_SIGNATURE_FAILURE) + CASE(CERT_NOT_YET_VALID) + CASE(CERT_HAS_EXPIRED) + CASE(CRL_NOT_YET_VALID) + CASE(CRL_HAS_EXPIRED) + CASE(ERROR_IN_CERT_NOT_BEFORE_FIELD) + CASE(ERROR_IN_CERT_NOT_AFTER_FIELD) + CASE(ERROR_IN_CRL_LAST_UPDATE_FIELD) + CASE(ERROR_IN_CRL_NEXT_UPDATE_FIELD) + CASE(OUT_OF_MEM) + CASE(DEPTH_ZERO_SELF_SIGNED_CERT) + CASE(SELF_SIGNED_CERT_IN_CHAIN) + CASE(UNABLE_TO_GET_ISSUER_CERT_LOCALLY) + CASE(UNABLE_TO_VERIFY_LEAF_SIGNATURE) + CASE(CERT_CHAIN_TOO_LONG) + CASE(CERT_REVOKED) + CASE(INVALID_CA) + CASE(PATH_LENGTH_EXCEEDED) + CASE(INVALID_PURPOSE) + CASE(CERT_UNTRUSTED) + CASE(CERT_REJECTED) + CASE(HOSTNAME_MISMATCH) + } +#undef CASE + return "UNSPECIFIED"; +} + +std::optional<std::string_view> X509Pointer::ErrorReason(int32_t err) { + if (err == X509_V_OK) return std::nullopt; + return X509_verify_cert_error_string(err); +} + // ============================================================================ // BIOPointer @@ -1105,6 +1256,12 @@ BIOPointer BIOPointer::NewFp(FILE* fd, int close_flag) { return BIOPointer(BIO_new_fp(fd, close_flag)); } +BIOPointer BIOPointer::New(const BIGNUM* bn) { + auto res = NewMem(); + if (!res || !BN_print(res.get(), bn)) return {}; + return res; +} + int BIOPointer::Write(BIOPointer* bio, std::string_view message) { if (bio == nullptr || !*bio) return 0; return BIO_write(bio->get(), message.data(), message.size()); @@ -1189,8 +1346,11 @@ DHPointer DHPointer::New(BignumPointer&& p, BignumPointer&& g) { if (DH_set0_pqg(dh.get(), p.get(), nullptr, g.get()) != 1) return {}; // If the call above is successful, the DH object takes ownership of the - // BIGNUMs, so we must release them here. + // BIGNUMs, so we must release them here. Unfortunately coverity does not + // know that so we need to tell it not to complain. + // coverity[resource_leak] p.release(); + // coverity[resource_leak] g.release(); return dh; @@ -1273,7 +1433,10 @@ DataPointer DHPointer::generateKeys() const { size_t DHPointer::size() const { if (!dh_) return 0; - return DH_size(dh_.get()); + int ret = DH_size(dh_.get()); + // DH_size can return a -1 on error but we just want to return a 0 + // in that case so we don't wrap around when returning the size_t. + return ret >= 0 ? static_cast<size_t>(ret) : 0; } DataPointer DHPointer::computeSecret(const BignumPointer& peer) const { @@ -1302,6 +1465,10 @@ DataPointer DHPointer::computeSecret(const BignumPointer& peer) const { bool DHPointer::setPublicKey(BignumPointer&& key) { if (!dh_) return false; if (DH_set0_key(dh_.get(), key.get(), nullptr) == 1) { + // If DH_set0_key returns successfully, then dh_ takes ownership of the + // BIGNUM, so we must release it here. Unfortunately coverity does not + // know that so we need to tell it not to complain. + // coverity[resource_leak] key.release(); return true; } @@ -1311,6 +1478,10 @@ bool DHPointer::setPublicKey(BignumPointer&& key) { bool DHPointer::setPrivateKey(BignumPointer&& key) { if (!dh_) return false; if (DH_set0_key(dh_.get(), nullptr, key.get()) == 1) { + // If DH_set0_key returns successfully, then dh_ takes ownership of the + // BIGNUM, so we must release it here. Unfortunately coverity does not + // know that so we need to tell it not to complain. + // coverity[resource_leak] key.release(); return true; } @@ -1633,6 +1804,21 @@ BIOPointer EVPKeyPointer::derPublicKey() const { return bio; } +bool EVPKeyPointer::assign(const ECKeyPointer& eckey) { + if (!pkey_ || !eckey) return {}; + return EVP_PKEY_assign_EC_KEY(pkey_.get(), eckey.get()); +} + +bool EVPKeyPointer::set(const ECKeyPointer& eckey) { + if (!pkey_ || !eckey) return false; + return EVP_PKEY_set1_EC_KEY(pkey_.get(), eckey); +} + +EVPKeyPointer::operator const EC_KEY*() const { + if (!pkey_) return nullptr; + return EVP_PKEY_get0_EC_KEY(pkey_.get()); +} + namespace { EVPKeyPointer::ParseKeyResult TryParsePublicKeyInner(const BIOPointer& bp, const char* name, @@ -2044,4 +2230,657 @@ Result<BIOPointer, bool> EVPKeyPointer::writePublicKey( return bio; } +// ============================================================================ + +SSLPointer::SSLPointer(SSL* ssl) : ssl_(ssl) {} + +SSLPointer::SSLPointer(SSLPointer&& other) noexcept : ssl_(other.release()) {} + +SSLPointer& SSLPointer::operator=(SSLPointer&& other) noexcept { + if (this == &other) return *this; + this->~SSLPointer(); + return *new (this) SSLPointer(std::move(other)); +} + +SSLPointer::~SSLPointer() { + reset(); +} + +void SSLPointer::reset(SSL* ssl) { + ssl_.reset(ssl); +} + +SSL* SSLPointer::release() { + return ssl_.release(); +} + +SSLPointer SSLPointer::New(const SSLCtxPointer& ctx) { + if (!ctx) return {}; + return SSLPointer(SSL_new(ctx.get())); +} + +void SSLPointer::getCiphers( + std::function<void(const std::string_view)> cb) const { + if (!ssl_) return; + STACK_OF(SSL_CIPHER)* ciphers = SSL_get_ciphers(get()); + + // TLSv1.3 ciphers aren't listed by EVP. There are only 5, we could just + // document them, but since there are only 5, easier to just add them manually + // and not have to explain their absence in the API docs. They are lower-cased + // because the docs say they will be. + static constexpr const char* TLS13_CIPHERS[] = { + "tls_aes_256_gcm_sha384", + "tls_chacha20_poly1305_sha256", + "tls_aes_128_gcm_sha256", + "tls_aes_128_ccm_8_sha256", + "tls_aes_128_ccm_sha256"}; + + const int n = sk_SSL_CIPHER_num(ciphers); + + for (int i = 0; i < n; ++i) { + const SSL_CIPHER* cipher = sk_SSL_CIPHER_value(ciphers, i); + cb(SSL_CIPHER_get_name(cipher)); + } + + for (unsigned i = 0; i < 5; ++i) { + cb(TLS13_CIPHERS[i]); + } +} + +bool SSLPointer::setSession(const SSLSessionPointer& session) { + if (!session || !ssl_) return false; + return SSL_set_session(get(), session.get()) == 1; +} + +bool SSLPointer::setSniContext(const SSLCtxPointer& ctx) const { + if (!ctx) return false; + auto x509 = ncrypto::X509View::From(ctx); + if (!x509) return false; + EVP_PKEY* pkey = SSL_CTX_get0_privatekey(ctx.get()); + STACK_OF(X509) * chain; + int err = SSL_CTX_get0_chain_certs(ctx.get(), &chain); + if (err == 1) err = SSL_use_certificate(get(), x509); + if (err == 1) err = SSL_use_PrivateKey(get(), pkey); + if (err == 1 && chain != nullptr) err = SSL_set1_chain(get(), chain); + return err == 1; +} + +std::optional<uint32_t> SSLPointer::verifyPeerCertificate() const { + if (!ssl_) return std::nullopt; + if (X509Pointer::PeerFrom(*this)) { + return SSL_get_verify_result(get()); + } + + const SSL_CIPHER* curr_cipher = SSL_get_current_cipher(get()); + const SSL_SESSION* sess = SSL_get_session(get()); + // Allow no-cert for PSK authentication in TLS1.2 and lower. + // In TLS1.3 check that session was reused because TLS1.3 PSK + // looks like session resumption. + if (SSL_CIPHER_get_auth_nid(curr_cipher) == NID_auth_psk || + (SSL_SESSION_get_protocol_version(sess) == TLS1_3_VERSION && + SSL_session_reused(get()))) { + return X509_V_OK; + } + + return std::nullopt; +} + +const std::string_view SSLPointer::getClientHelloAlpn() const { + if (ssl_ == nullptr) return {}; + const unsigned char* buf; + size_t len; + size_t rem; + + if (!SSL_client_hello_get0_ext( + get(), + TLSEXT_TYPE_application_layer_protocol_negotiation, + &buf, + &rem) || + rem < 2) { + return {}; + } + + len = (buf[0] << 8) | buf[1]; + if (len + 2 != rem) return {}; + return reinterpret_cast<const char*>(buf + 3); +} + +const std::string_view SSLPointer::getClientHelloServerName() const { + if (ssl_ == nullptr) return {}; + const unsigned char* buf; + size_t len; + size_t rem; + + if (!SSL_client_hello_get0_ext(get(), TLSEXT_TYPE_server_name, &buf, &rem) || + rem <= 2) { + return {}; + } + + len = (*buf << 8) | *(buf + 1); + if (len + 2 != rem) return {}; + rem = len; + + if (rem == 0 || *(buf + 2) != TLSEXT_NAMETYPE_host_name) return {}; + rem--; + if (rem <= 2) return {}; + len = (*(buf + 3) << 8) | *(buf + 4); + if (len + 2 > rem) return {}; + return reinterpret_cast<const char*>(buf + 5); +} + +std::optional<const std::string_view> SSLPointer::GetServerName( + const SSL* ssl) { + if (ssl == nullptr) return std::nullopt; + auto res = SSL_get_servername(ssl, TLSEXT_NAMETYPE_host_name); + if (res == nullptr) return std::nullopt; + return res; +} + +std::optional<const std::string_view> SSLPointer::getServerName() const { + if (!ssl_) return std::nullopt; + return GetServerName(get()); +} + +X509View SSLPointer::getCertificate() const { + if (!ssl_) return {}; + ClearErrorOnReturn clear_error_on_return; + return ncrypto::X509View(SSL_get_certificate(get())); +} + +const SSL_CIPHER* SSLPointer::getCipher() const { + if (!ssl_) return nullptr; + return SSL_get_current_cipher(get()); +} + +bool SSLPointer::isServer() const { + return SSL_is_server(get()) != 0; +} + +EVPKeyPointer SSLPointer::getPeerTempKey() const { + if (!ssl_) return {}; + EVP_PKEY* raw_key = nullptr; + if (!SSL_get_peer_tmp_key(get(), &raw_key)) return {}; + return EVPKeyPointer(raw_key); +} + +SSLCtxPointer::SSLCtxPointer(SSL_CTX* ctx) : ctx_(ctx) {} + +SSLCtxPointer::SSLCtxPointer(SSLCtxPointer&& other) noexcept + : ctx_(other.release()) {} + +SSLCtxPointer& SSLCtxPointer::operator=(SSLCtxPointer&& other) noexcept { + if (this == &other) return *this; + this->~SSLCtxPointer(); + return *new (this) SSLCtxPointer(std::move(other)); +} + +SSLCtxPointer::~SSLCtxPointer() { + reset(); +} + +void SSLCtxPointer::reset(SSL_CTX* ctx) { + ctx_.reset(ctx); +} + +void SSLCtxPointer::reset(const SSL_METHOD* method) { + ctx_.reset(SSL_CTX_new(method)); +} + +SSL_CTX* SSLCtxPointer::release() { + return ctx_.release(); +} + +SSLCtxPointer SSLCtxPointer::NewServer() { + return SSLCtxPointer(SSL_CTX_new(TLS_server_method())); +} + +SSLCtxPointer SSLCtxPointer::NewClient() { + return SSLCtxPointer(SSL_CTX_new(TLS_client_method())); +} + +SSLCtxPointer SSLCtxPointer::New(const SSL_METHOD* method) { + return SSLCtxPointer(SSL_CTX_new(method)); +} + +bool SSLCtxPointer::setGroups(const char* groups) { + return SSL_CTX_set1_groups_list(get(), groups) == 1; +} + +// ============================================================================ + +const Cipher Cipher::FromName(const char* name) { + return Cipher(EVP_get_cipherbyname(name)); +} + +const Cipher Cipher::FromNid(int nid) { + return Cipher(EVP_get_cipherbynid(nid)); +} + +const Cipher Cipher::FromCtx(const CipherCtxPointer& ctx) { + return Cipher(EVP_CIPHER_CTX_cipher(ctx.get())); +} + +int Cipher::getMode() const { + if (!cipher_) return 0; + return EVP_CIPHER_mode(cipher_); +} + +int Cipher::getIvLength() const { + if (!cipher_) return 0; + return EVP_CIPHER_iv_length(cipher_); +} + +int Cipher::getKeyLength() const { + if (!cipher_) return 0; + return EVP_CIPHER_key_length(cipher_); +} + +int Cipher::getBlockSize() const { + if (!cipher_) return 0; + return EVP_CIPHER_block_size(cipher_); +} + +int Cipher::getNid() const { + if (!cipher_) return 0; + return EVP_CIPHER_nid(cipher_); +} + +std::string_view Cipher::getModeLabel() const { + if (!cipher_) return {}; + switch (getMode()) { + case EVP_CIPH_CCM_MODE: + return "ccm"; + case EVP_CIPH_CFB_MODE: + return "cfb"; + case EVP_CIPH_CBC_MODE: + return "cbc"; + case EVP_CIPH_CTR_MODE: + return "ctr"; + case EVP_CIPH_ECB_MODE: + return "ecb"; + case EVP_CIPH_GCM_MODE: + return "gcm"; + case EVP_CIPH_OCB_MODE: + return "ocb"; + case EVP_CIPH_OFB_MODE: + return "ofb"; + case EVP_CIPH_WRAP_MODE: + return "wrap"; + case EVP_CIPH_XTS_MODE: + return "xts"; + case EVP_CIPH_STREAM_CIPHER: + return "stream"; + } + return "{unknown}"; +} + +std::string_view Cipher::getName() const { + if (!cipher_) return {}; + // OBJ_nid2sn(EVP_CIPHER_nid(cipher)) is used here instead of + // EVP_CIPHER_name(cipher) for compatibility with BoringSSL. + return OBJ_nid2sn(getNid()); +} + +bool Cipher::isSupportedAuthenticatedMode() const { + switch (getMode()) { + case EVP_CIPH_CCM_MODE: + case EVP_CIPH_GCM_MODE: +#ifndef OPENSSL_NO_OCB + case EVP_CIPH_OCB_MODE: +#endif + return true; + case EVP_CIPH_STREAM_CIPHER: + return getNid() == NID_chacha20_poly1305; + default: + return false; + } +} + +// ============================================================================ + +CipherCtxPointer CipherCtxPointer::New() { + auto ret = CipherCtxPointer(EVP_CIPHER_CTX_new()); + if (!ret) return {}; + EVP_CIPHER_CTX_init(ret.get()); + return ret; +} + +CipherCtxPointer::CipherCtxPointer(EVP_CIPHER_CTX* ctx) : ctx_(ctx) {} + +CipherCtxPointer::CipherCtxPointer(CipherCtxPointer&& other) noexcept + : ctx_(other.release()) {} + +CipherCtxPointer& CipherCtxPointer::operator=( + CipherCtxPointer&& other) noexcept { + if (this == &other) return *this; + this->~CipherCtxPointer(); + return *new (this) CipherCtxPointer(std::move(other)); +} + +CipherCtxPointer::~CipherCtxPointer() { + reset(); +} + +void CipherCtxPointer::reset(EVP_CIPHER_CTX* ctx) { + ctx_.reset(ctx); +} + +EVP_CIPHER_CTX* CipherCtxPointer::release() { + return ctx_.release(); +} + +void CipherCtxPointer::setFlags(int flags) { + if (!ctx_) return; + EVP_CIPHER_CTX_set_flags(ctx_.get(), flags); +} + +bool CipherCtxPointer::setKeyLength(size_t length) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_set_key_length(ctx_.get(), length); +} + +bool CipherCtxPointer::setIvLength(size_t length) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_ctrl( + ctx_.get(), EVP_CTRL_AEAD_SET_IVLEN, length, nullptr); +} + +bool CipherCtxPointer::setAeadTag(const Buffer<const char>& tag) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_ctrl( + ctx_.get(), EVP_CTRL_AEAD_SET_TAG, tag.len, const_cast<char*>(tag.data)); +} + +bool CipherCtxPointer::setAeadTagLength(size_t length) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_ctrl( + ctx_.get(), EVP_CTRL_AEAD_SET_TAG, length, nullptr); +} + +bool CipherCtxPointer::setPadding(bool padding) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_set_padding(ctx_.get(), padding); +} + +int CipherCtxPointer::getBlockSize() const { + if (!ctx_) return 0; + return EVP_CIPHER_CTX_block_size(ctx_.get()); +} + +int CipherCtxPointer::getMode() const { + if (!ctx_) return 0; + return EVP_CIPHER_CTX_mode(ctx_.get()); +} + +int CipherCtxPointer::getNid() const { + if (!ctx_) return 0; + return EVP_CIPHER_CTX_nid(ctx_.get()); +} + +bool CipherCtxPointer::init(const Cipher& cipher, + bool encrypt, + const unsigned char* key, + const unsigned char* iv) { + if (!ctx_) return false; + return EVP_CipherInit_ex( + ctx_.get(), cipher, nullptr, key, iv, encrypt ? 1 : 0) == 1; +} + +bool CipherCtxPointer::update(const Buffer<const unsigned char>& in, + unsigned char* out, + int* out_len, + bool finalize) { + if (!ctx_) return false; + if (!finalize) { + return EVP_CipherUpdate(ctx_.get(), out, out_len, in.data, in.len) == 1; + } + return EVP_CipherFinal_ex(ctx_.get(), out, out_len) == 1; +} + +bool CipherCtxPointer::getAeadTag(size_t len, unsigned char* out) { + if (!ctx_) return false; + return EVP_CIPHER_CTX_ctrl(ctx_.get(), EVP_CTRL_AEAD_GET_TAG, len, out); +} + +// ============================================================================ + +ECDSASigPointer::ECDSASigPointer() : sig_(nullptr) {} +ECDSASigPointer::ECDSASigPointer(ECDSA_SIG* sig) : sig_(sig) { + if (sig_) { + ECDSA_SIG_get0(sig_.get(), &pr_, &ps_); + } +} +ECDSASigPointer::ECDSASigPointer(ECDSASigPointer&& other) noexcept + : sig_(other.release()) { + if (sig_) { + ECDSA_SIG_get0(sig_.get(), &pr_, &ps_); + } +} + +ECDSASigPointer& ECDSASigPointer::operator=(ECDSASigPointer&& other) noexcept { + sig_.reset(other.release()); + if (sig_) { + ECDSA_SIG_get0(sig_.get(), &pr_, &ps_); + } + return *this; +} + +ECDSASigPointer::~ECDSASigPointer() { + reset(); +} + +void ECDSASigPointer::reset(ECDSA_SIG* sig) { + sig_.reset(); + pr_ = nullptr; + ps_ = nullptr; +} + +ECDSA_SIG* ECDSASigPointer::release() { + pr_ = nullptr; + ps_ = nullptr; + return sig_.release(); +} + +ECDSASigPointer ECDSASigPointer::New() { + return ECDSASigPointer(ECDSA_SIG_new()); +} + +ECDSASigPointer ECDSASigPointer::Parse(const Buffer<const unsigned char>& sig) { + const unsigned char* ptr = sig.data; + return ECDSASigPointer(d2i_ECDSA_SIG(nullptr, &ptr, sig.len)); +} + +bool ECDSASigPointer::setParams(BignumPointer&& r, BignumPointer&& s) { + if (!sig_) return false; + return ECDSA_SIG_set0(sig_.get(), r.release(), s.release()); +} + +Buffer<unsigned char> ECDSASigPointer::encode() const { + if (!sig_) + return { + .data = nullptr, + .len = 0, + }; + Buffer<unsigned char> buf; + buf.len = i2d_ECDSA_SIG(sig_.get(), &buf.data); + return buf; +} + +// ============================================================================ + +ECGroupPointer::ECGroupPointer() : group_(nullptr) {} + +ECGroupPointer::ECGroupPointer(EC_GROUP* group) : group_(group) {} + +ECGroupPointer::ECGroupPointer(ECGroupPointer&& other) noexcept + : group_(other.release()) {} + +ECGroupPointer& ECGroupPointer::operator=(ECGroupPointer&& other) noexcept { + group_.reset(other.release()); + return *this; +} + +ECGroupPointer::~ECGroupPointer() { + reset(); +} + +void ECGroupPointer::reset(EC_GROUP* group) { + group_.reset(); +} + +EC_GROUP* ECGroupPointer::release() { + return group_.release(); +} + +ECGroupPointer ECGroupPointer::NewByCurveName(int nid) { + return ECGroupPointer(EC_GROUP_new_by_curve_name(nid)); +} + +// ============================================================================ + +ECPointPointer::ECPointPointer() : point_(nullptr) {} + +ECPointPointer::ECPointPointer(EC_POINT* point) : point_(point) {} + +ECPointPointer::ECPointPointer(ECPointPointer&& other) noexcept + : point_(other.release()) {} + +ECPointPointer& ECPointPointer::operator=(ECPointPointer&& other) noexcept { + point_.reset(other.release()); + return *this; +} + +ECPointPointer::~ECPointPointer() { + reset(); +} + +void ECPointPointer::reset(EC_POINT* point) { + point_.reset(point); +} + +EC_POINT* ECPointPointer::release() { + return point_.release(); +} + +ECPointPointer ECPointPointer::New(const EC_GROUP* group) { + return ECPointPointer(EC_POINT_new(group)); +} + +bool ECPointPointer::setFromBuffer(const Buffer<const unsigned char>& buffer, + const EC_GROUP* group) { + if (!point_) return false; + return EC_POINT_oct2point( + group, point_.get(), buffer.data, buffer.len, nullptr); +} + +bool ECPointPointer::mul(const EC_GROUP* group, const BIGNUM* priv_key) { + if (!point_) return false; + return EC_POINT_mul(group, point_.get(), priv_key, nullptr, nullptr, nullptr); +} + +// ============================================================================ + +ECKeyPointer::ECKeyPointer() : key_(nullptr) {} + +ECKeyPointer::ECKeyPointer(EC_KEY* key) : key_(key) {} + +ECKeyPointer::ECKeyPointer(ECKeyPointer&& other) noexcept + : key_(other.release()) {} + +ECKeyPointer& ECKeyPointer::operator=(ECKeyPointer&& other) noexcept { + key_.reset(other.release()); + return *this; +} + +ECKeyPointer::~ECKeyPointer() { + reset(); +} + +void ECKeyPointer::reset(EC_KEY* key) { + key_.reset(key); +} + +EC_KEY* ECKeyPointer::release() { + return key_.release(); +} + +ECKeyPointer ECKeyPointer::clone() const { + if (!key_) return {}; + return ECKeyPointer(EC_KEY_dup(key_.get())); +} + +bool ECKeyPointer::generate() { + if (!key_) return false; + return EC_KEY_generate_key(key_.get()); +} + +bool ECKeyPointer::setPublicKey(const ECPointPointer& pub) { + if (!key_) return false; + return EC_KEY_set_public_key(key_.get(), pub.get()) == 1; +} + +bool ECKeyPointer::setPublicKeyRaw(const BignumPointer& x, + const BignumPointer& y) { + if (!key_) return false; + return EC_KEY_set_public_key_affine_coordinates( + key_.get(), x.get(), y.get()) == 1; +} + +bool ECKeyPointer::setPrivateKey(const BignumPointer& priv) { + if (!key_) return false; + return EC_KEY_set_private_key(key_.get(), priv.get()) == 1; +} + +const BIGNUM* ECKeyPointer::getPrivateKey() const { + if (!key_) return nullptr; + return GetPrivateKey(key_.get()); +} + +const BIGNUM* ECKeyPointer::GetPrivateKey(const EC_KEY* key) { + return EC_KEY_get0_private_key(key); +} + +const EC_POINT* ECKeyPointer::getPublicKey() const { + if (!key_) return nullptr; + return GetPublicKey(key_.get()); +} + +const EC_POINT* ECKeyPointer::GetPublicKey(const EC_KEY* key) { + return EC_KEY_get0_public_key(key); +} + +const EC_GROUP* ECKeyPointer::getGroup() const { + if (!key_) return nullptr; + return GetGroup(key_.get()); +} + +const EC_GROUP* ECKeyPointer::GetGroup(const EC_KEY* key) { + return EC_KEY_get0_group(key); +} + +int ECKeyPointer::GetGroupName(const EC_KEY* key) { + const EC_GROUP* group = GetGroup(key); + return group ? EC_GROUP_get_curve_name(group) : 0; +} + +bool ECKeyPointer::Check(const EC_KEY* key) { + return EC_KEY_check_key(key) == 1; +} + +bool ECKeyPointer::checkKey() const { + if (!key_) return false; + return Check(key_.get()); +} + +ECKeyPointer ECKeyPointer::NewByCurveName(int nid) { + return ECKeyPointer(EC_KEY_new_by_curve_name(nid)); +} + +ECKeyPointer ECKeyPointer::New(const EC_GROUP* group) { + auto ptr = ECKeyPointer(EC_KEY_new()); + if (!ptr) return {}; + if (!EC_KEY_set_group(ptr.get(), group)) return {}; + return ptr; +} + } // namespace ncrypto diff --git a/deps/ncrypto/ncrypto.h b/deps/ncrypto/ncrypto.h index fffa75ec718fac..e5bf2b529bf239 100644 --- a/deps/ncrypto/ncrypto.h +++ b/deps/ncrypto/ncrypto.h @@ -13,6 +13,7 @@ #include <openssl/ssl.h> #include <openssl/x509.h> #include <cstddef> +#include <functional> #include <list> #include <memory> #include <optional> @@ -27,6 +28,12 @@ #include <openssl/fips.h> #endif // OPENSSL_FIPS +#if OPENSSL_VERSION_MAJOR >= 3 +#define OSSL3_CONST const +#else +#define OSSL3_CONST +#endif + #ifdef __GNUC__ #define NCRYPTO_MUST_USE_RESULT __attribute__((warn_unused_result)) #else @@ -195,24 +202,18 @@ template <typename T, void (*function)(T*)> using DeleteFnPtr = typename FunctionDeleter<T, function>::Pointer; using BignumCtxPointer = DeleteFnPtr<BN_CTX, BN_CTX_free>; -using CipherCtxPointer = DeleteFnPtr<EVP_CIPHER_CTX, EVP_CIPHER_CTX_free>; -using DSAPointer = DeleteFnPtr<DSA, DSA_free>; -using DSASigPointer = DeleteFnPtr<DSA_SIG, DSA_SIG_free>; -using ECDSASigPointer = DeleteFnPtr<ECDSA_SIG, ECDSA_SIG_free>; -using ECPointer = DeleteFnPtr<EC_KEY, EC_KEY_free>; -using ECGroupPointer = DeleteFnPtr<EC_GROUP, EC_GROUP_free>; -using ECKeyPointer = DeleteFnPtr<EC_KEY, EC_KEY_free>; -using ECPointPointer = DeleteFnPtr<EC_POINT, EC_POINT_free>; +using BignumGenCallbackPointer = DeleteFnPtr<BN_GENCB, BN_GENCB_free>; using EVPKeyCtxPointer = DeleteFnPtr<EVP_PKEY_CTX, EVP_PKEY_CTX_free>; using EVPMDCtxPointer = DeleteFnPtr<EVP_MD_CTX, EVP_MD_CTX_free>; using HMACCtxPointer = DeleteFnPtr<HMAC_CTX, HMAC_CTX_free>; using NetscapeSPKIPointer = DeleteFnPtr<NETSCAPE_SPKI, NETSCAPE_SPKI_free>; using PKCS8Pointer = DeleteFnPtr<PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO_free>; using RSAPointer = DeleteFnPtr<RSA, RSA_free>; -using SSLCtxPointer = DeleteFnPtr<SSL_CTX, SSL_CTX_free>; -using SSLPointer = DeleteFnPtr<SSL, SSL_free>; using SSLSessionPointer = DeleteFnPtr<SSL_SESSION, SSL_SESSION_free>; +class CipherCtxPointer; +class ECKeyPointer; + struct StackOfXASN1Deleter { void operator()(STACK_OF(ASN1_OBJECT) * p) const { sk_ASN1_OBJECT_pop_free(p, ASN1_OBJECT_free); @@ -227,6 +228,40 @@ struct Buffer { size_t len = 0; }; +class Cipher final { + public: + Cipher() = default; + Cipher(const EVP_CIPHER* cipher) : cipher_(cipher) {} + Cipher(const Cipher&) = default; + Cipher& operator=(const Cipher&) = default; + inline Cipher& operator=(const EVP_CIPHER* cipher) { + cipher_ = cipher; + return *this; + } + NCRYPTO_DISALLOW_MOVE(Cipher) + + inline const EVP_CIPHER* get() const { return cipher_; } + inline operator const EVP_CIPHER*() const { return cipher_; } + inline operator bool() const { return cipher_ != nullptr; } + + int getNid() const; + int getMode() const; + int getIvLength() const; + int getKeyLength() const; + int getBlockSize() const; + std::string_view getModeLabel() const; + std::string_view getName() const; + + bool isSupportedAuthenticatedMode() const; + + static const Cipher FromName(const char* name); + static const Cipher FromNid(int nid); + static const Cipher FromCtx(const CipherCtxPointer& ctx); + + private: + const EVP_CIPHER* cipher_ = nullptr; +}; + // A managed pointer to a buffer of data. When destroyed the underlying // buffer will be freed. class DataPointer final { @@ -272,6 +307,7 @@ class BIOPointer final { static BIOPointer NewSecMem(); static BIOPointer New(const BIO_METHOD* method); static BIOPointer New(const void* data, size_t len); + static BIOPointer New(const BIGNUM* bn); static BIOPointer NewFile(std::string_view filename, std::string_view mode); static BIOPointer NewFp(FILE* fd, int flags); @@ -350,8 +386,28 @@ class BignumPointer final { size_t encodeInto(unsigned char* out) const; size_t encodePaddedInto(unsigned char* out, size_t size) const; + using PrimeCheckCallback = std::function<bool(int, int)>; + int isPrime(int checks, + PrimeCheckCallback cb = defaultPrimeCheckCallback) const; + struct PrimeConfig { + int bits; + bool safe = false; + const BignumPointer& add; + const BignumPointer& rem; + }; + + static BignumPointer NewPrime( + const PrimeConfig& params, + PrimeCheckCallback cb = defaultPrimeCheckCallback); + + bool generate(const PrimeConfig& params, + PrimeCheckCallback cb = defaultPrimeCheckCallback) const; + static BignumPointer New(); static BignumPointer NewSecure(); + static BignumPointer NewSub(const BignumPointer& a, const BignumPointer& b); + static BignumPointer NewLShift(size_t length); + static DataPointer Encode(const BIGNUM* bn); static DataPointer EncodePadded(const BIGNUM* bn, size_t size); static size_t EncodePaddedInto(const BIGNUM* bn, @@ -366,6 +422,53 @@ class BignumPointer final { private: DeleteFnPtr<BIGNUM, BN_clear_free> bn_; + + static bool defaultPrimeCheckCallback(int, int) { return 1; } +}; + +class CipherCtxPointer final { + public: + static CipherCtxPointer New(); + + CipherCtxPointer() = default; + explicit CipherCtxPointer(EVP_CIPHER_CTX* ctx); + CipherCtxPointer(CipherCtxPointer&& other) noexcept; + CipherCtxPointer& operator=(CipherCtxPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(CipherCtxPointer) + ~CipherCtxPointer(); + + inline bool operator==(std::nullptr_t) const noexcept { + return ctx_ == nullptr; + } + inline operator bool() const { return ctx_ != nullptr; } + inline EVP_CIPHER_CTX* get() const { return ctx_.get(); } + inline operator EVP_CIPHER_CTX*() const { return ctx_.get(); } + void reset(EVP_CIPHER_CTX* ctx = nullptr); + EVP_CIPHER_CTX* release(); + + void setFlags(int flags); + bool setKeyLength(size_t length); + bool setIvLength(size_t length); + bool setAeadTag(const Buffer<const char>& tag); + bool setAeadTagLength(size_t length); + bool setPadding(bool padding); + bool init(const Cipher& cipher, + bool encrypt, + const unsigned char* key = nullptr, + const unsigned char* iv = nullptr); + + int getBlockSize() const; + int getMode() const; + int getNid() const; + + bool update(const Buffer<const unsigned char>& in, + unsigned char* out, + int* out_len, + bool finalize = false); + bool getAeadTag(size_t len, unsigned char* out); + + private: + DeleteFnPtr<EVP_CIPHER_CTX, EVP_CIPHER_CTX_free> ctx_; }; class EVPKeyPointer final { @@ -440,6 +543,10 @@ class EVPKeyPointer final { NCRYPTO_DISALLOW_COPY(EVPKeyPointer) ~EVPKeyPointer(); + bool assign(const ECKeyPointer& eckey); + bool set(const ECKeyPointer& eckey); + operator const EC_KEY*() const; + inline bool operator==(std::nullptr_t) const noexcept { return pkey_ == nullptr; } @@ -551,7 +658,85 @@ class DHPointer final { DeleteFnPtr<DH, DH_free> dh_; }; +struct StackOfX509Deleter { + void operator()(STACK_OF(X509) * p) const { sk_X509_pop_free(p, X509_free); } +}; +using StackOfX509 = std::unique_ptr<STACK_OF(X509), StackOfX509Deleter>; + class X509Pointer; +class X509View; + +class SSLCtxPointer final { + public: + SSLCtxPointer() = default; + explicit SSLCtxPointer(SSL_CTX* ctx); + SSLCtxPointer(SSLCtxPointer&& other) noexcept; + SSLCtxPointer& operator=(SSLCtxPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(SSLCtxPointer) + ~SSLCtxPointer(); + + inline bool operator==(std::nullptr_t) const noexcept { + return ctx_ == nullptr; + } + inline operator bool() const { return ctx_ != nullptr; } + inline SSL_CTX* get() const { return ctx_.get(); } + void reset(SSL_CTX* ctx = nullptr); + void reset(const SSL_METHOD* method); + SSL_CTX* release(); + + bool setGroups(const char* groups); + void setStatusCallback(auto callback) { + if (!ctx_) return; + SSL_CTX_set_tlsext_status_cb(get(), callback); + SSL_CTX_set_tlsext_status_arg(get(), nullptr); + } + + static SSLCtxPointer NewServer(); + static SSLCtxPointer NewClient(); + static SSLCtxPointer New(const SSL_METHOD* method = TLS_method()); + + private: + DeleteFnPtr<SSL_CTX, SSL_CTX_free> ctx_; +}; + +class SSLPointer final { + public: + SSLPointer() = default; + explicit SSLPointer(SSL* ssl); + SSLPointer(SSLPointer&& other) noexcept; + SSLPointer& operator=(SSLPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(SSLPointer) + ~SSLPointer(); + + inline bool operator==(std::nullptr_t) noexcept { return ssl_ == nullptr; } + inline operator bool() const { return ssl_ != nullptr; } + inline SSL* get() const { return ssl_.get(); } + inline operator SSL*() const { return ssl_.get(); } + void reset(SSL* ssl = nullptr); + SSL* release(); + + bool setSession(const SSLSessionPointer& session); + bool setSniContext(const SSLCtxPointer& ctx) const; + + const std::string_view getClientHelloAlpn() const; + const std::string_view getClientHelloServerName() const; + + std::optional<const std::string_view> getServerName() const; + X509View getCertificate() const; + EVPKeyPointer getPeerTempKey() const; + const SSL_CIPHER* getCipher() const; + bool isServer() const; + + std::optional<uint32_t> verifyPeerCertificate() const; + + void getCiphers(std::function<void(const std::string_view)> cb) const; + + static SSLPointer New(const SSLCtxPointer& ctx); + static std::optional<const std::string_view> GetServerName(const SSL* ssl); + + private: + DeleteFnPtr<SSL, SSL_free> ssl_; +}; class X509View final { public: @@ -565,6 +750,8 @@ class X509View final { NCRYPTO_DISALLOW_MOVE(X509View) inline X509* get() const { return const_cast<X509*>(cert_); } + inline operator X509*() const { return const_cast<X509*>(cert_); } + inline operator const X509*() const { return cert_; } inline bool operator==(std::nullptr_t) noexcept { return cert_ == nullptr; } inline operator bool() const { return cert_ != nullptr; } @@ -589,6 +776,8 @@ class X509View final { bool checkPrivateKey(const EVPKeyPointer& pkey) const; bool checkPublicKey(const EVPKeyPointer& pkey) const; + std::optional<std::string> getFingerprint(const EVP_MD* method) const; + X509Pointer clone() const; enum class CheckMatch { @@ -624,16 +813,141 @@ class X509Pointer final { inline bool operator==(std::nullptr_t) noexcept { return cert_ == nullptr; } inline operator bool() const { return cert_ != nullptr; } inline X509* get() const { return cert_.get(); } + inline operator X509*() const { return cert_.get(); } + inline operator const X509*() const { return cert_.get(); } void reset(X509* cert = nullptr); X509* release(); X509View view() const; operator X509View() const { return view(); } + static std::string_view ErrorCode(int32_t err); + static std::optional<std::string_view> ErrorReason(int32_t err); + private: DeleteFnPtr<X509, X509_free> cert_; }; +class ECDSASigPointer final { + public: + explicit ECDSASigPointer(); + explicit ECDSASigPointer(ECDSA_SIG* sig); + ECDSASigPointer(ECDSASigPointer&& other) noexcept; + ECDSASigPointer& operator=(ECDSASigPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(ECDSASigPointer) + ~ECDSASigPointer(); + + inline bool operator==(std::nullptr_t) noexcept { return sig_ == nullptr; } + inline operator bool() const { return sig_ != nullptr; } + inline ECDSA_SIG* get() const { return sig_.get(); } + inline operator ECDSA_SIG*() const { return sig_.get(); } + void reset(ECDSA_SIG* sig = nullptr); + ECDSA_SIG* release(); + + static ECDSASigPointer New(); + static ECDSASigPointer Parse(const Buffer<const unsigned char>& buffer); + + inline const BIGNUM* r() const { return pr_; } + inline const BIGNUM* s() const { return ps_; } + + bool setParams(BignumPointer&& r, BignumPointer&& s); + + Buffer<unsigned char> encode() const; + + private: + DeleteFnPtr<ECDSA_SIG, ECDSA_SIG_free> sig_; + const BIGNUM* pr_ = nullptr; + const BIGNUM* ps_ = nullptr; +}; + +class ECGroupPointer final { + public: + explicit ECGroupPointer(); + explicit ECGroupPointer(EC_GROUP* group); + ECGroupPointer(ECGroupPointer&& other) noexcept; + ECGroupPointer& operator=(ECGroupPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(ECGroupPointer) + ~ECGroupPointer(); + + inline bool operator==(std::nullptr_t) noexcept { return group_ == nullptr; } + inline operator bool() const { return group_ != nullptr; } + inline EC_GROUP* get() const { return group_.get(); } + inline operator EC_GROUP*() const { return group_.get(); } + void reset(EC_GROUP* group = nullptr); + EC_GROUP* release(); + + static ECGroupPointer NewByCurveName(int nid); + + private: + DeleteFnPtr<EC_GROUP, EC_GROUP_free> group_; +}; + +class ECPointPointer final { + public: + ECPointPointer(); + explicit ECPointPointer(EC_POINT* point); + ECPointPointer(ECPointPointer&& other) noexcept; + ECPointPointer& operator=(ECPointPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(ECPointPointer) + ~ECPointPointer(); + + inline bool operator==(std::nullptr_t) noexcept { return point_ == nullptr; } + inline operator bool() const { return point_ != nullptr; } + inline EC_POINT* get() const { return point_.get(); } + inline operator EC_POINT*() const { return point_.get(); } + void reset(EC_POINT* point = nullptr); + EC_POINT* release(); + + bool setFromBuffer(const Buffer<const unsigned char>& buffer, + const EC_GROUP* group); + bool mul(const EC_GROUP* group, const BIGNUM* priv_key); + + static ECPointPointer New(const EC_GROUP* group); + + private: + DeleteFnPtr<EC_POINT, EC_POINT_free> point_; +}; + +class ECKeyPointer final { + public: + ECKeyPointer(); + explicit ECKeyPointer(EC_KEY* key); + ECKeyPointer(ECKeyPointer&& other) noexcept; + ECKeyPointer& operator=(ECKeyPointer&& other) noexcept; + NCRYPTO_DISALLOW_COPY(ECKeyPointer) + ~ECKeyPointer(); + + inline bool operator==(std::nullptr_t) noexcept { return key_ == nullptr; } + inline operator bool() const { return key_ != nullptr; } + inline EC_KEY* get() const { return key_.get(); } + inline operator EC_KEY*() const { return key_.get(); } + void reset(EC_KEY* key = nullptr); + EC_KEY* release(); + + ECKeyPointer clone() const; + bool setPrivateKey(const BignumPointer& priv); + bool setPublicKey(const ECPointPointer& pub); + bool setPublicKeyRaw(const BignumPointer& x, const BignumPointer& y); + bool generate(); + bool checkKey() const; + + const EC_GROUP* getGroup() const; + const BIGNUM* getPrivateKey() const; + const EC_POINT* getPublicKey() const; + + static ECKeyPointer New(const EC_GROUP* group); + static ECKeyPointer NewByCurveName(int nid); + + static const EC_POINT* GetPublicKey(const EC_KEY* key); + static const BIGNUM* GetPrivateKey(const EC_KEY* key); + static const EC_GROUP* GetGroup(const EC_KEY* key); + static int GetGroupName(const EC_KEY* key); + static bool Check(const EC_KEY* key); + + private: + DeleteFnPtr<EC_KEY, EC_KEY_free> key_; +}; + #ifndef OPENSSL_NO_ENGINE class EnginePointer final { public: diff --git a/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/ngtcp2.h b/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/ngtcp2.h index acc79be6e0b375..87976b1444b95d 100644 --- a/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/ngtcp2.h +++ b/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/ngtcp2.h @@ -1471,7 +1471,9 @@ typedef struct ngtcp2_transport_params { uint64_t max_udp_payload_size; /** * :member:`active_connection_id_limit` is the maximum number of - * Connection ID that sender can store. + * Connection ID that sender can store. If specified, it must be in + * the range of [:macro:`NGTCP2_DEFAULT_ACTIVE_CONNECTION_ID_LIMIT`, + * 8], inclusive. */ uint64_t active_connection_id_limit; /** diff --git a/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/version.h b/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/version.h index e9e7f9bf86e742..20c4ac24d2ebcd 100644 --- a/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/version.h +++ b/deps/ngtcp2/ngtcp2/lib/includes/ngtcp2/version.h @@ -36,7 +36,7 @@ * * Version number of the ngtcp2 library release. */ -#define NGTCP2_VERSION "1.9.1" +#define NGTCP2_VERSION "1.10.0" /** * @macro @@ -46,6 +46,6 @@ * number, 8 bits for minor and 8 bits for patch. Version 1.2.3 * becomes 0x010203. */ -#define NGTCP2_VERSION_NUM 0x010901 +#define NGTCP2_VERSION_NUM 0x010a00 #endif /* !defined(NGTCP2_VERSION_H) */ diff --git a/deps/ngtcp2/ngtcp2/lib/ngtcp2_conn.c b/deps/ngtcp2/ngtcp2/lib/ngtcp2_conn.c index 8b60efabe126d0..765e4a877e00d7 100644 --- a/deps/ngtcp2/ngtcp2/lib/ngtcp2_conn.c +++ b/deps/ngtcp2/ngtcp2/lib/ngtcp2_conn.c @@ -11739,7 +11739,8 @@ static ngtcp2_ssize conn_write_vmsg_wrapper(ngtcp2_conn *conn, if (cstat->bytes_in_flight >= cstat->cwnd) { conn->rst.is_cwnd_limited = 1; - } else if ((cstat->cwnd >= cstat->ssthresh || + } else if (conn->rst.app_limited == 0 && + (cstat->cwnd >= cstat->ssthresh || cstat->bytes_in_flight * 2 < cstat->cwnd) && nwrite == 0 && conn_pacing_pkt_tx_allowed(conn, ts) && (conn->flags & NGTCP2_CONN_FLAG_HANDSHAKE_COMPLETED)) { diff --git a/deps/ngtcp2/ngtcp2/lib/ngtcp2_map.c b/deps/ngtcp2/ngtcp2/lib/ngtcp2_map.c index 9eb102f16b32e2..0b66fceac6c993 100644 --- a/deps/ngtcp2/ngtcp2/lib/ngtcp2_map.c +++ b/deps/ngtcp2/ngtcp2/lib/ngtcp2_map.c @@ -31,7 +31,7 @@ #include "ngtcp2_conv.h" -#define NGTCP2_INITIAL_TABLE_LENBITS 4 +#define NGTCP2_INITIAL_HASHBITS 4 void ngtcp2_map_init(ngtcp2_map *map, const ngtcp2_mem *mem) { map->mem = mem; @@ -196,7 +196,7 @@ int ngtcp2_map_insert(ngtcp2_map *map, ngtcp2_map_key_type key, void *data) { return rv; } } else { - rv = map_resize(map, NGTCP2_INITIAL_TABLE_LENBITS); + rv = map_resize(map, NGTCP2_INITIAL_HASHBITS); if (rv != 0) { return rv; } diff --git a/deps/ngtcp2/ngtcp2/lib/ngtcp2_rtb.c b/deps/ngtcp2/ngtcp2/lib/ngtcp2_rtb.c index 4d417186e15854..090355f5dbc938 100644 --- a/deps/ngtcp2/ngtcp2/lib/ngtcp2_rtb.c +++ b/deps/ngtcp2/ngtcp2/lib/ngtcp2_rtb.c @@ -249,9 +249,12 @@ static ngtcp2_ssize rtb_reclaim_frame(ngtcp2_rtb *rtb, uint8_t flags, if (!fr->stream.fin) { /* 0 length STREAM frame with offset == 0 must be retransmitted if no non-empty data are sent to this - stream, and no data in this stream are acknowledged. */ + stream, fin flag is not set, and no data in this stream + are acknowledged. */ if (fr->stream.offset != 0 || fr->stream.datacnt != 0 || - strm->tx.offset || (strm->flags & NGTCP2_STRM_FLAG_ANY_ACKED)) { + strm->tx.offset || + (strm->flags & + (NGTCP2_STRM_FLAG_SHUT_WR | NGTCP2_STRM_FLAG_ANY_ACKED))) { continue; } } else if (strm->flags & NGTCP2_STRM_FLAG_FIN_ACKED) { @@ -1284,14 +1287,6 @@ static int rtb_on_pkt_lost_resched_move(ngtcp2_rtb *rtb, ngtcp2_conn *conn, return 0; } - if (ent->flags & NGTCP2_RTB_ENTRY_FLAG_PMTUD_PROBE) { - ngtcp2_log_info(rtb->log, NGTCP2_LOG_EVENT_LDC, - "pkn=%" PRId64 - " is a PMTUD probe packet, no retransmission is necessary", - ent->hd.pkt_num); - return 0; - } - if (ent->flags & NGTCP2_RTB_ENTRY_FLAG_LOST_RETRANSMITTED) { --rtb->num_lost_pkts; diff --git a/deps/ngtcp2/unofficial.gni b/deps/ngtcp2/unofficial.gni index 26b8070c5a9c7f..cf9ba5363907e0 100644 --- a/deps/ngtcp2/unofficial.gni +++ b/deps/ngtcp2/unofficial.gni @@ -68,8 +68,7 @@ template("ngtcp2_gn_build") { cflags_c = [ "-Wno-extra-semi", "-Wno-implicit-fallthrough", - # Remove after https://github.com/ngtcp2/ngtcp2/issues/1050 is fixed. - "-Wno-sometimes-uninitialized", + "-Wno-unused-function", ] } } diff --git a/deps/simdutf/simdutf.cpp b/deps/simdutf/simdutf.cpp index eb3e4598407374..21962c3bad378d 100644 --- a/deps/simdutf/simdutf.cpp +++ b/deps/simdutf/simdutf.cpp @@ -1,4 +1,4 @@ -/* auto-generated on 2024-12-10 14:54:53 -0500. Do not edit! */ +/* auto-generated on 2025-01-08 17:51:07 -0500. Do not edit! */ /* begin file src/simdutf.cpp */ #include "simdutf.h" // We include base64_tables once. @@ -697,6 +697,15 @@ static_assert(to_base64_url_value[uint8_t('_')] == 63, #include <climits> #include <type_traits> +static_assert(sizeof(uint8_t) == sizeof(char), + "simdutf requires that uint8_t be a char"); +static_assert(sizeof(uint16_t) == sizeof(char16_t), + "simdutf requires that char16_t be 16 bits"); +static_assert(sizeof(uint32_t) == sizeof(char32_t), + "simdutf requires that char32_t be 32 bits"); +// next line is redundant, but it is kept to catch defective systems. +static_assert(CHAR_BIT == 8, "simdutf requires 8-bit bytes"); + // Useful for debugging purposes namespace simdutf { namespace { @@ -9746,24 +9755,23 @@ inline simdutf_warn_unused uint16_t swap_bytes(const uint16_t word) { } template <endianness big_endian> -inline simdutf_warn_unused bool validate(const char16_t *buf, +inline simdutf_warn_unused bool validate(const char16_t *data, size_t len) noexcept { - const uint16_t *data = reinterpret_cast<const uint16_t *>(buf); uint64_t pos = 0; while (pos < len) { - uint16_t word = + char16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; if ((word & 0xF800) == 0xD800) { if (pos + 1 >= len) { return false; } - uint16_t diff = uint16_t(word - 0xD800); + char16_t diff = char16_t(word - 0xD800); if (diff > 0x3FF) { return false; } - uint16_t next_word = + char16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; - uint16_t diff2 = uint16_t(next_word - 0xDC00); + char16_t diff2 = char16_t(next_word - 0xDC00); if (diff2 > 0x3FF) { return false; } @@ -9776,24 +9784,23 @@ inline simdutf_warn_unused bool validate(const char16_t *buf, } template <endianness big_endian> -inline simdutf_warn_unused result validate_with_errors(const char16_t *buf, +inline simdutf_warn_unused result validate_with_errors(const char16_t *data, size_t len) noexcept { - const uint16_t *data = reinterpret_cast<const uint16_t *>(buf); size_t pos = 0; while (pos < len) { - uint16_t word = + char16_t word = !match_system(big_endian) ? swap_bytes(data[pos]) : data[pos]; if ((word & 0xF800) == 0xD800) { if (pos + 1 >= len) { return result(error_code::SURROGATE, pos); } - uint16_t diff = uint16_t(word - 0xD800); + char16_t diff = char16_t(word - 0xD800); if (diff > 0x3FF) { return result(error_code::SURROGATE, pos); } - uint16_t next_word = + char16_t next_word = !match_system(big_endian) ? swap_bytes(data[pos + 1]) : data[pos + 1]; - uint16_t diff2 = uint16_t(next_word - 0xDC00); + char16_t diff2 = uint16_t(next_word - 0xDC00); if (diff2 > 0x3FF) { return result(error_code::SURROGATE, pos); } @@ -9806,24 +9813,22 @@ inline simdutf_warn_unused result validate_with_errors(const char16_t *buf, } template <endianness big_endian> -inline size_t count_code_points(const char16_t *buf, size_t len) { +inline size_t count_code_points(const char16_t *p, size_t len) { // We are not BOM aware. - const uint16_t *p = reinterpret_cast<const uint16_t *>(buf); size_t counter{0}; for (size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + char16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; counter += ((word & 0xFC00) != 0xDC00); } return counter; } template <endianness big_endian> -inline size_t utf8_length_from_utf16(const char16_t *buf, size_t len) { +inline size_t utf8_length_from_utf16(const char16_t *p, size_t len) { // We are not BOM aware. - const uint16_t *p = reinterpret_cast<const uint16_t *>(buf); size_t counter{0}; for (size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + char16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; counter++; // ASCII counter += static_cast<size_t>( word > @@ -9835,12 +9840,11 @@ inline size_t utf8_length_from_utf16(const char16_t *buf, size_t len) { } template <endianness big_endian> -inline size_t utf32_length_from_utf16(const char16_t *buf, size_t len) { +inline size_t utf32_length_from_utf16(const char16_t *p, size_t len) { // We are not BOM aware. - const uint16_t *p = reinterpret_cast<const uint16_t *>(buf); size_t counter{0}; for (size_t i = 0; i < len; i++) { - uint16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; + char16_t word = !match_system(big_endian) ? swap_bytes(p[i]) : p[i]; counter += ((word & 0xFC00) != 0xDC00); } return counter; @@ -9848,12 +9852,10 @@ inline size_t utf32_length_from_utf16(const char16_t *buf, size_t len) { inline size_t latin1_length_from_utf16(size_t len) { return len; } -simdutf_really_inline void change_endianness_utf16(const char16_t *in, - size_t size, char16_t *out) { - const uint16_t *input = reinterpret_cast<const uint16_t *>(in); - uint16_t *output = reinterpret_cast<uint16_t *>(out); +simdutf_really_inline void +change_endianness_utf16(const char16_t *input, size_t size, char16_t *output) { for (size_t i = 0; i < size; i++) { - *output++ = uint16_t(input[i] >> 8 | input[i] << 8); + *output++ = char16_t(input[i] >> 8 | input[i] << 8); } } @@ -10019,6 +10021,9 @@ base64_tail_decode(char *dst, const char_type *src, size_t length, const char_type *srcend = src + length; const char_type *srcinit = src; const char *dstinit = dst; + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); uint32_t x; size_t idx; @@ -10038,27 +10043,52 @@ base64_tail_decode(char *dst, const char_type *src, size_t length, } idx = 0; // we need at least four characters. - while (idx < 4 && src < srcend) { +#ifdef __clang__ + // If possible, we read four characters at a time. (It is an optimization.) + if (ignore_garbage && src + 4 <= srcend) { + char_type c0 = src[0]; + char_type c1 = src[1]; + char_type c2 = src[2]; + char_type c3 = src[3]; + uint8_t code0 = to_base64[uint8_t(c0)]; + uint8_t code1 = to_base64[uint8_t(c1)]; + uint8_t code2 = to_base64[uint8_t(c2)]; + uint8_t code3 = to_base64[uint8_t(c3)]; + buffer[idx] = code0; + idx += (is_eight_byte(c0) && code0 <= 63); + buffer[idx] = code1; + idx += (is_eight_byte(c1) && code1 <= 63); + buffer[idx] = code2; + idx += (is_eight_byte(c2) && code2 <= 63); + buffer[idx] = code3; + idx += (is_eight_byte(c3) && code3 <= 63); + src += 4; + } +#endif + while ((idx < 4) && (src < srcend)) { char_type c = *src; uint8_t code = to_base64[uint8_t(c)]; buffer[idx] = uint8_t(code); if (is_eight_byte(c) && code <= 63) { idx++; - } else if (code > 64 || !scalar::base64::is_eight_byte(c)) { + } else if (!ignore_garbage && + (code > 64 || !scalar::base64::is_eight_byte(c))) { return {INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } else { - // We have a space or a newline. We ignore it. + // We have a space or a newline or garbage. We ignore it. } src++; } if (idx != 4) { - if (last_chunk_options == last_chunk_handling_options::strict && + if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::strict && (idx != 1) && ((idx + padded_characters) & 3) != 0) { // The partial chunk was at src - idx return {BASE64_INPUT_REMAINDER, size_t(src - srcinit), size_t(dst - dstinit)}; - } else if (last_chunk_options == + } else if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::stop_before_partial && (idx != 1) && ((idx + padded_characters) & 3) != 0) { // Rewind src to before partial chunk @@ -10068,7 +10098,8 @@ base64_tail_decode(char *dst, const char_type *src, size_t length, if (idx == 2) { uint32_t triple = (uint32_t(buffer[0]) << 3 * 6) + (uint32_t(buffer[1]) << 2 * 6); - if ((last_chunk_options == last_chunk_handling_options::strict) && + if (!ignore_garbage && + (last_chunk_options == last_chunk_handling_options::strict) && (triple & 0xffff)) { return {BASE64_EXTRA_BITS, size_t(src - srcinit), size_t(dst - dstinit)}; @@ -10086,7 +10117,8 @@ base64_tail_decode(char *dst, const char_type *src, size_t length, uint32_t triple = (uint32_t(buffer[0]) << 3 * 6) + (uint32_t(buffer[1]) << 2 * 6) + (uint32_t(buffer[2]) << 1 * 6); - if ((last_chunk_options == last_chunk_handling_options::strict) && + if (!ignore_garbage && + (last_chunk_options == last_chunk_handling_options::strict) && (triple & 0xff)) { return {BASE64_EXTRA_BITS, size_t(src - srcinit), size_t(dst - dstinit)}; @@ -10100,7 +10132,7 @@ base64_tail_decode(char *dst, const char_type *src, size_t length, std::memcpy(dst, &triple, 2); } dst += 2; - } else if (idx == 1) { + } else if (!ignore_garbage && idx == 1) { return {BASE64_INPUT_REMAINDER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -10154,6 +10186,9 @@ result base64_tail_decode_safe( const uint32_t *d3 = (options & base64_url) ? tables::base64::base64_url::d3 : tables::base64::base64_default::d3; + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); const char_type *srcend = src + length; const char_type *srcinit = src; @@ -10184,6 +10219,28 @@ result base64_tail_decode_safe( idx = 0; const char_type *srccur = src; // We need at least four characters. +#ifdef __clang__ + // If possible, we read four characters at a time. (It is an optimization.) + if (ignore_garbage && src + 4 <= srcend) { + char_type c0 = src[0]; + char_type c1 = src[1]; + char_type c2 = src[2]; + char_type c3 = src[3]; + uint8_t code0 = to_base64[uint8_t(c0)]; + uint8_t code1 = to_base64[uint8_t(c1)]; + uint8_t code2 = to_base64[uint8_t(c2)]; + uint8_t code3 = to_base64[uint8_t(c3)]; + buffer[idx] = code0; + idx += (is_eight_byte(c0) && code0 <= 63); + buffer[idx] = code1; + idx += (is_eight_byte(c1) && code1 <= 63); + buffer[idx] = code2; + idx += (is_eight_byte(c2) && code2 <= 63); + buffer[idx] = code3; + idx += (is_eight_byte(c3) && code3 <= 63); + src += 4; + } +#endif while (idx < 4 && src < srcend) { char_type c = *src; uint8_t code = to_base64[uint8_t(c)]; @@ -10191,22 +10248,25 @@ result base64_tail_decode_safe( buffer[idx] = uint8_t(code); if (is_eight_byte(c) && code <= 63) { idx++; - } else if (code > 64 || !scalar::base64::is_eight_byte(c)) { + } else if (!ignore_garbage && + (code > 64 || !scalar::base64::is_eight_byte(c))) { outlen = size_t(dst - dstinit); srcr = src; return {INVALID_BASE64_CHARACTER, size_t(src - srcinit)}; } else { - // We have a space or a newline. We ignore it. + // We have a space or a newline or garbage. We ignore it. } src++; } if (idx != 4) { - if (last_chunk_options == last_chunk_handling_options::strict && + if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::strict && ((idx + padded_characters) & 3) != 0) { outlen = size_t(dst - dstinit); srcr = src; return {BASE64_INPUT_REMAINDER, size_t(src - srcinit)}; - } else if (last_chunk_options == + } else if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::stop_before_partial && ((idx + padded_characters) & 3) != 0) { // Rewind src to before partial chunk @@ -10219,7 +10279,7 @@ result base64_tail_decode_safe( outlen = size_t(dst - dstinit); srcr = src; return {SUCCESS, size_t(dst - dstinit)}; - } else if (idx == 1) { + } else if (!ignore_garbage && idx == 1) { // Error: Incomplete chunk of length 1 is invalid in loose mode outlen = size_t(dst - dstinit); srcr = src; @@ -10235,7 +10295,8 @@ result base64_tail_decode_safe( uint32_t triple = 0; if (idx == 2) { triple = (uint32_t(buffer[0]) << 18) + (uint32_t(buffer[1]) << 12); - if ((last_chunk_options == last_chunk_handling_options::strict) && + if (!ignore_garbage && + (last_chunk_options == last_chunk_handling_options::strict) && (triple & 0xffff)) { srcr = src; return {BASE64_EXTRA_BITS, size_t(src - srcinit)}; @@ -10247,7 +10308,8 @@ result base64_tail_decode_safe( } else if (idx == 3) { triple = (uint32_t(buffer[0]) << 18) + (uint32_t(buffer[1]) << 12) + (uint32_t(buffer[2]) << 6); - if ((last_chunk_options == last_chunk_handling_options::strict) && + if (!ignore_garbage && + (last_chunk_options == last_chunk_handling_options::strict) && (triple & 0xff)) { srcr = src; return {BASE64_EXTRA_BITS, size_t(src - srcinit)}; @@ -17080,8 +17142,33 @@ size_t convert_masked_utf8_to_utf16(const char *input, for (int k = 0; k < 6; k++) { utf16_output[k] = buffer[k]; } // the loop might compiler to a couple of instructions. - utf16_output += 6; // We wrote 3 32-bit surrogate pairs. - return 12; // We consumed 12 bytes. + // We need some validation. See + // https://github.com/simdutf/simdutf/pull/631 +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + uint8x16_t expected_mask = simdutf_make_uint8x16_t( + 0xf8, 0xc0, 0xc0, 0xc0, 0xf8, 0xc0, 0xc0, 0xc0, 0xf8, 0xc0, 0xc0, + 0xc0, 0x0, 0x0, 0x0, 0x0); +#else + uint8x16_t expected_mask = {0xf8, 0xc0, 0xc0, 0xc0, 0xf8, 0xc0, + 0xc0, 0xc0, 0xf8, 0xc0, 0xc0, 0xc0, + 0x0, 0x0, 0x0, 0x0}; +#endif +#ifdef SIMDUTF_REGULAR_VISUAL_STUDIO + uint8x16_t expected = simdutf_make_uint8x16_t( + 0xf0, 0x80, 0x80, 0x80, 0xf0, 0x80, 0x80, 0x80, 0xf0, 0x80, 0x80, + 0x80, 0x0, 0x0, 0x0, 0x0); +#else + uint8x16_t expected = {0xf0, 0x80, 0x80, 0x80, 0xf0, 0x80, 0x80, 0x80, + 0xf0, 0x80, 0x80, 0x80, 0x0, 0x0, 0x0, 0x0}; +#endif + uint8x16_t check = vceqq_u8(vandq_u8(in, expected_mask), expected); + bool correct = (vminvq_u32(vreinterpretq_u32_u8(check)) == 0xFFFFFFFF); + // The validation is just three instructions and it is not on a critical + // path. + if (correct) { + utf16_output += 6; // We wrote 3 32-bit surrogate pairs. + } + return 12; // We consumed 12 bytes. } // 3 1-4 byte sequences uint8x16_t sh = vld1q_u8(reinterpret_cast<const uint8_t *>( @@ -18540,7 +18627,7 @@ void base64_decode_block(char *out, const char *src) { vst3q_u8((uint8_t *)out, outvec); } -template <bool base64_url, typename char_type> +template <bool base64_url, bool ignore_garbage, typename char_type> full_result compress_decode_base64(char *dst, const char_type *src, size_t srclen, base64_options options, @@ -18571,7 +18658,13 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -18592,7 +18685,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, bool error = false; uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); if (badcharmask) { - if (error) { + if (error && !ignore_garbage) { src -= 64; while (src < srcend && scalar::base64::is_eight_byte(*src) && to_base64[uint8_t(*src)] <= 64) { @@ -18636,7 +18729,8 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, while ((bufferptr - buffer_start) % 64 != 0 && src < srcend) { uint8_t val = to_base64[uint8_t(*src)]; *bufferptr = char(val); - if (!scalar::base64::is_eight_byte(*src) || val > 64) { + if ((!scalar::base64::is_eight_byte(*src) || val > 64) && + !ignore_garbage) { return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -18678,8 +18772,14 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, // backtrack int leftover = int(bufferptr - buffer_start); while (leftover > 0) { - while (to_base64[uint8_t(*(src - 1))] == 64) { - src--; + if (!ignore_garbage) { + while (to_base64[uint8_t(*(src - 1))] == 64) { + src--; + } + } else { + while (to_base64[uint8_t(*(src - 1))] >= 64) { + src--; + } } src--; leftover--; @@ -18696,7 +18796,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, r.output_count += size_t(dst - dstinit); } if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -18706,7 +18806,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, } return r; } - if (equalsigns > 0) { + if (equalsigns > 0 && !ignore_garbage) { if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -20975,6 +21075,9 @@ struct validating_transcoder { uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in // this case, we also have ASCII to account for. + if (utf8_continuation_mask & 1) { + return 0; // error + } uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask >> 1; // We process in blocks of up to 12 bytes except possibly @@ -22186,21 +22289,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -22211,21 +22338,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( @@ -22735,6 +22886,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -22757,7 +22911,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -22765,7 +22925,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -22777,6 +22937,9 @@ simdutf_warn_unused result implementation::base64_to_binary( simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -22799,7 +22962,13 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -22807,7 +22976,7 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( full_result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -22825,6 +22994,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -22847,7 +23019,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -22855,7 +23033,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -22867,6 +23045,9 @@ simdutf_warn_unused result implementation::base64_to_binary( simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -22889,7 +23070,13 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -22897,7 +23084,7 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( full_result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -22926,6 +23113,8 @@ size_t implementation::binary_to_base64(const char *input, size_t length, #endif #if SIMDUTF_IMPLEMENTATION_ICELAKE /* begin file src/icelake/implementation.cpp */ +#include <tuple> +#include <utility> /* begin file src/simdutf/icelake/begin.h */ @@ -25974,17 +26163,17 @@ bool validate_ascii(const char *buf, size_t len) { /* begin file src/icelake/icelake_utf32_validation.inl.cpp */ // file included directly -const char32_t *validate_utf32(const char32_t *buf, size_t len) { - if (len < 16) { - return buf; +bool validate_utf32(const char32_t *buf, size_t len) { + if (len == 0) { + return true; } - const char32_t *end = buf + len - 16; + const char32_t *end = buf + len; const __m512i offset = _mm512_set1_epi32((uint32_t)0xffff2000); __m512i currentmax = _mm512_setzero_si512(); __m512i currentoffsetmax = _mm512_setzero_si512(); - while (buf <= end) { + while (buf < end - 16) { __m512i utf32 = _mm512_loadu_si512((const __m512i *)buf); buf += 16; currentoffsetmax = @@ -25992,20 +26181,26 @@ const char32_t *validate_utf32(const char32_t *buf, size_t len) { currentmax = _mm512_max_epu32(utf32, currentmax); } + __m512i utf32 = + _mm512_maskz_loadu_epi32(__mmask16((1 << (end - buf)) - 1), buf); + currentoffsetmax = + _mm512_max_epu32(_mm512_add_epi32(utf32, offset), currentoffsetmax); + currentmax = _mm512_max_epu32(utf32, currentmax); + const __m512i standardmax = _mm512_set1_epi32((uint32_t)0x10ffff); const __m512i standardoffsetmax = _mm512_set1_epi32((uint32_t)0xfffff7ff); __m512i is_zero = _mm512_xor_si512(_mm512_max_epu32(currentmax, standardmax), standardmax); if (_mm512_test_epi8_mask(is_zero, is_zero) != 0) { - return nullptr; + return false; } is_zero = _mm512_xor_si512( _mm512_max_epu32(currentoffsetmax, standardoffsetmax), standardoffsetmax); if (_mm512_test_epi8_mask(is_zero, is_zero) != 0) { - return nullptr; + return false; } - return buf; + return true; } /* end file src/icelake/icelake_utf32_validation.inl.cpp */ /* begin file src/icelake/icelake_convert_latin1_to_utf8.inl.cpp */ @@ -26267,7 +26462,7 @@ size_t encode_base64(char *dst, const char *src, size_t srclen, return (size_t)(out - (uint8_t *)dst) + output_len; } -template <bool base64_url> +template <bool base64_url, bool ignore_garbage> static inline uint64_t to_base64_mask(block64 *b, uint64_t *error, uint64_t input_mask = UINT64_MAX) { __m512i input = b->chunks[0]; @@ -26309,7 +26504,7 @@ static inline uint64_t to_base64_mask(block64 *b, uint64_t *error, const __m512i translated = _mm512_permutex2var_epi8(lookup0, input, lookup1); const __m512i combined = _mm512_or_si512(translated, input); const __mmask64 mask = _mm512_movepi8_mask(combined) & input_mask; - if (mask) { + if (!ignore_garbage && mask) { const __mmask64 spaces = _mm512_cmpeq_epi8_mask(_mm512_shuffle_epi8(ascii_space_tbl, input), input) & @@ -26390,7 +26585,7 @@ static inline void base64_decode_block(char *out, block64 *b) { base64_decode(out, b->chunks[0]); } -template <bool base64_url, typename chartype> +template <bool base64_url, bool ignore_garbage, typename chartype> full_result compress_decode_base64(char *dst, const chartype *src, size_t srclen, base64_options options, @@ -26402,11 +26597,12 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, srclen; // location of the first padding character if any size_t equalsigns = 0; // skip trailing spaces - while (srclen > 0 && scalar::base64::is_eight_byte(src[srclen - 1]) && + while (!ignore_garbage && srclen > 0 && + scalar::base64::is_eight_byte(src[srclen - 1]) && to_base64[uint8_t(src[srclen - 1])] == 64) { srclen--; } - if (srclen > 0 && src[srclen - 1] == '=') { + if (!ignore_garbage && srclen > 0 && src[srclen - 1] == '=') { equallocation = srclen - 1; srclen--; equalsigns = 1; @@ -26422,7 +26618,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -26442,8 +26644,9 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, load_block(&b, src); src += 64; uint64_t error = 0; - uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); - if (error) { + uint64_t badcharmask = + to_base64_mask<base64_url, ignore_garbage>(&b, &error); + if (!ignore_garbage && error) { src -= 64; size_t error_offset = _tzcnt_u64(error); return {error_code::INVALID_BASE64_CHARACTER, @@ -26479,8 +26682,9 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, block64 b; load_block_partial(&b, src, input_mask); uint64_t error = 0; - uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error, input_mask); - if (error) { + uint64_t badcharmask = + to_base64_mask<base64_url, ignore_garbage>(&b, &error, input_mask); + if (!ignore_garbage && error) { size_t error_offset = _tzcnt_u64(error); return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit + error_offset), size_t(dst - dstinit)}; @@ -26513,14 +26717,16 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, 5, 6, 0, 1, 2); const __m512i shuffled = _mm512_permutexvar_epi8(pack, merged); - if (last_chunk_options == last_chunk_handling_options::strict && + if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::strict && (idx != 1) && ((idx + equalsigns) & 3) != 0) { // The partial chunk was at src - idx _mm512_mask_storeu_epi8((__m512i *)dst, output_mask, shuffled); dst += output_len; return {BASE64_INPUT_REMAINDER, size_t(src - srcinit), size_t(dst - dstinit)}; - } else if (last_chunk_options == + } else if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::stop_before_partial && (idx != 1) && ((idx + equalsigns) & 3) != 0) { // Rewind src to before partial chunk @@ -26529,7 +26735,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, src -= idx; } else { if (idx == 2) { - if (last_chunk_options == last_chunk_handling_options::strict) { + if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::strict) { uint32_t triple = (uint32_t(bufferptr[-2]) << 3 * 6) + (uint32_t(bufferptr[-1]) << 2 * 6); if (triple & 0xffff) { @@ -26544,7 +26751,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, _mm512_mask_storeu_epi8((__m512i *)dst, output_mask, shuffled); dst += output_len; } else if (idx == 3) { - if (last_chunk_options == last_chunk_handling_options::strict) { + if (!ignore_garbage && + last_chunk_options == last_chunk_handling_options::strict) { uint32_t triple = (uint32_t(bufferptr[-3]) << 3 * 6) + (uint32_t(bufferptr[-2]) << 2 * 6) + (uint32_t(bufferptr[-1]) << 1 * 6); @@ -26559,7 +26767,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, output_len += 2; _mm512_mask_storeu_epi8((__m512i *)dst, output_mask, shuffled); dst += output_len; - } else if (idx == 1) { + } else if (!ignore_garbage && idx == 1) { _mm512_mask_storeu_epi8((__m512i *)dst, output_mask, shuffled); dst += output_len; return {BASE64_INPUT_REMAINDER, size_t(src - srcinit), @@ -26570,7 +26778,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } } - if (last_chunk_options != stop_before_partial && equalsigns > 0) { + if (!ignore_garbage && last_chunk_options != stop_before_partial && + equalsigns > 0) { size_t output_count = size_t(dst - dstinit); if ((output_count % 3 == 0) || ((output_count % 3) + 1 + equalsigns != 4)) { @@ -26581,7 +26790,15 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, return {SUCCESS, srclen, size_t(dst - dstinit)}; } - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, size_t(src - srcinit), + size_t(dst - dstinit)}; + } + if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, size_t(src - srcinit), size_t(dst - dstinit)}; + } if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -26605,24 +26822,76 @@ implementation::detect_encodings(const char *input, size_t length) const noexcept { // If there is a BOM, then we trust it. auto bom_encoding = simdutf::BOM::check_bom(input, length); - // todo: convert to a one-pass algorithm if (bom_encoding != encoding_type::unspecified) { return bom_encoding; } + int out = 0; - if (validate_utf8(input, length)) { + uint32_t utf16_err = (length % 2); + uint32_t utf32_err = (length % 4); + uint32_t ends_with_high = 0; + avx512_utf8_checker checker{}; + const __m512i offset = _mm512_set1_epi32((uint32_t)0xffff2000); + __m512i currentmax = _mm512_setzero_si512(); + __m512i currentoffsetmax = _mm512_setzero_si512(); + const char *ptr = input; + const char *end = ptr + length; + for (; end - ptr >= 64; ptr += 64) { + // utf8 checks + const __m512i data = _mm512_loadu_si512((const __m512i *)ptr); + checker.check_next_input(data); + + // utf16le_checks + __m512i diff = _mm512_sub_epi16(data, _mm512_set1_epi16(uint16_t(0xD800))); + __mmask32 surrogates = + _mm512_cmplt_epu16_mask(diff, _mm512_set1_epi16(uint16_t(0x0800))); + __mmask32 highsurrogates = + _mm512_cmplt_epu16_mask(diff, _mm512_set1_epi16(uint16_t(0x0400))); + __mmask32 lowsurrogates = surrogates ^ highsurrogates; + utf16_err |= (((highsurrogates << 1) | ends_with_high) != lowsurrogates); + ends_with_high = ((highsurrogates & 0x80000000) != 0); + + // utf32le checks + currentoffsetmax = + _mm512_max_epu32(_mm512_add_epi32(data, offset), currentoffsetmax); + currentmax = _mm512_max_epu32(data, currentmax); + } + + // last block with 0 <= len < 64 + __mmask64 read_mask = (__mmask64(1) << (end - ptr)) - 1; + const __m512i data = _mm512_maskz_loadu_epi8(read_mask, (const __m512i *)ptr); + checker.check_next_input(data); + + __m512i diff = _mm512_sub_epi16(data, _mm512_set1_epi16(uint16_t(0xD800))); + __mmask32 surrogates = + _mm512_cmplt_epu16_mask(diff, _mm512_set1_epi16(uint16_t(0x0800))); + __mmask32 highsurrogates = + _mm512_cmplt_epu16_mask(diff, _mm512_set1_epi16(uint16_t(0x0400))); + __mmask32 lowsurrogates = surrogates ^ highsurrogates; + utf16_err |= (((highsurrogates << 1) | ends_with_high) != lowsurrogates); + + currentoffsetmax = + _mm512_max_epu32(_mm512_add_epi32(data, offset), currentoffsetmax); + currentmax = _mm512_max_epu32(data, currentmax); + + const __m512i standardmax = _mm512_set1_epi32((uint32_t)0x10ffff); + const __m512i standardoffsetmax = _mm512_set1_epi32((uint32_t)0xfffff7ff); + __m512i is_zero = + _mm512_xor_si512(_mm512_max_epu32(currentmax, standardmax), standardmax); + utf32_err |= (_mm512_test_epi8_mask(is_zero, is_zero) != 0); + is_zero = _mm512_xor_si512( + _mm512_max_epu32(currentoffsetmax, standardoffsetmax), standardoffsetmax); + utf32_err |= (_mm512_test_epi8_mask(is_zero, is_zero) != 0); + checker.check_eof(); + bool is_valid_utf8 = !checker.errors(); + if (is_valid_utf8) { out |= encoding_type::UTF8; } - if ((length % 2) == 0) { - if (validate_utf16le(reinterpret_cast<const char16_t *>(input), - length / 2)) { - out |= encoding_type::UTF16_LE; - } + if (utf16_err == 0) { + out |= encoding_type::UTF16_LE; } - if ((length % 4) == 0) { - if (validate_utf32(reinterpret_cast<const char32_t *>(input), length / 4)) { - out |= encoding_type::UTF32_LE; - } + if (utf32_err == 0) { + out |= encoding_type::UTF32_LE; } return out; } @@ -26944,14 +27213,7 @@ simdutf_warn_unused result implementation::validate_utf16be_with_errors( simdutf_warn_unused bool implementation::validate_utf32(const char32_t *buf, size_t len) const noexcept { - const char32_t *tail = icelake::validate_utf32(buf, len); - if (tail) { - return scalar::utf32::validate(tail, len - (tail - buf)); - } else { - // we come here if there was an error, or buf was nullptr which may happen - // for empty input. - return len == 0; - } + return icelake::validate_utf32(buf, len); } simdutf_warn_unused result implementation::validate_utf32_with_errors( @@ -27832,16 +28094,7 @@ implementation::count_utf8(const char *input, size_t length) const noexcept { } } - __m256i first_half = _mm512_extracti64x4_epi64(unrolled_popcount, 0); - __m256i second_half = _mm512_extracti64x4_epi64(unrolled_popcount, 1); - answer -= (size_t)_mm256_extract_epi64(first_half, 0) + - (size_t)_mm256_extract_epi64(first_half, 1) + - (size_t)_mm256_extract_epi64(first_half, 2) + - (size_t)_mm256_extract_epi64(first_half, 3) + - (size_t)_mm256_extract_epi64(second_half, 0) + - (size_t)_mm256_extract_epi64(second_half, 1) + - (size_t)_mm256_extract_epi64(second_half, 2) + - (size_t)_mm256_extract_epi64(second_half, 3); + answer -= _mm512_reduce_add_epi64(unrolled_popcount); return answer + scalar::utf8::count_code_points( reinterpret_cast<const char *>(str + i), length - i); @@ -28027,16 +28280,7 @@ simdutf_warn_unused size_t implementation::utf8_length_from_latin1( eight_64bits, _mm512_sad_epu8(runner, _mm512_setzero_si512())); } - __m256i first_half = _mm512_extracti64x4_epi64(eight_64bits, 0); - __m256i second_half = _mm512_extracti64x4_epi64(eight_64bits, 1); - answer += (size_t)_mm256_extract_epi64(first_half, 0) + - (size_t)_mm256_extract_epi64(first_half, 1) + - (size_t)_mm256_extract_epi64(first_half, 2) + - (size_t)_mm256_extract_epi64(first_half, 3) + - (size_t)_mm256_extract_epi64(second_half, 0) + - (size_t)_mm256_extract_epi64(second_half, 1) + - (size_t)_mm256_extract_epi64(second_half, 2) + - (size_t)_mm256_extract_epi64(second_half, 3); + answer += _mm512_reduce_add_epi64(eight_64bits); } else if (answer > 0) { for (; i + sizeof(__m512i) <= length; i += sizeof(__m512i)) { __m512i latin = _mm512_loadu_si512((const __m512i *)(str + i)); @@ -28141,21 +28385,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -28166,21 +28434,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( @@ -31062,7 +31354,7 @@ struct block64 { __m256i chunks[2]; }; -template <bool base64_url> +template <bool base64_url, bool ignore_garbage> static inline uint32_t to_base64_mask(__m256i *src, uint32_t *error) { const __m256i ascii_space_tbl = _mm256_setr_epi8(0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0xa, @@ -31144,7 +31436,7 @@ static inline uint32_t to_base64_mask(__m256i *src, uint32_t *error) { const __m256i chk = _mm256_adds_epi8(_mm256_shuffle_epi8(check_values, check_hash), *src); const int mask = _mm256_movemask_epi8(chk); - if (mask) { + if (!ignore_garbage && mask) { __m256i ascii_space = _mm256_cmpeq_epi8(_mm256_shuffle_epi8(ascii_space_tbl, *src), *src); *error = (mask ^ _mm256_movemask_epi8(ascii_space)); @@ -31153,13 +31445,17 @@ static inline uint32_t to_base64_mask(__m256i *src, uint32_t *error) { return (uint32_t)mask; } -template <bool base64_url> +template <bool base64_url, bool ignore_garbage> static inline uint64_t to_base64_mask(block64 *b, uint64_t *error) { uint32_t err0 = 0; uint32_t err1 = 0; - uint64_t m0 = to_base64_mask<base64_url>(&b->chunks[0], &err0); - uint64_t m1 = to_base64_mask<base64_url>(&b->chunks[1], &err1); - *error = err0 | ((uint64_t)err1 << 32); + uint64_t m0 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[0], &err0); + uint64_t m1 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[1], &err1); + if (!ignore_garbage) { + *error = err0 | ((uint64_t)err1 << 32); + } return m0 | (m1 << 32); } @@ -31238,7 +31534,7 @@ static inline void base64_decode_block_safe(char *out, block64 *b) { std::memcpy(out + 24, buffer, 24); } -template <bool base64_url, typename chartype> +template <bool base64_url, bool ignore_garbage, typename chartype> full_result compress_decode_base64(char *dst, const chartype *src, size_t srclen, base64_options options, @@ -31248,12 +31544,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, size_t equallocation = srclen; // location of the first padding character if any // skip trailing spaces - while (srclen > 0 && scalar::base64::is_eight_byte(src[srclen - 1]) && + while (!ignore_garbage && srclen > 0 && + scalar::base64::is_eight_byte(src[srclen - 1]) && to_base64[uint8_t(src[srclen - 1])] == 64) { srclen--; } size_t equalsigns = 0; - if (srclen > 0 && src[srclen - 1] == '=') { + if (!ignore_garbage && srclen > 0 && src[srclen - 1] == '=') { equallocation = srclen - 1; srclen--; equalsigns = 1; @@ -31269,7 +31566,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -31292,8 +31595,9 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, load_block(&b, src); src += 64; uint64_t error = 0; - uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); - if (error) { + uint64_t badcharmask = + to_base64_mask<base64_url, ignore_garbage>(&b, &error); + if (!ignore_garbage && error) { src -= 64; size_t error_offset = _tzcnt_u64(error); return {error_code::INVALID_BASE64_CHARACTER, @@ -31342,7 +31646,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, while ((bufferptr - buffer_start) % 64 != 0 && src < srcend) { uint8_t val = to_base64[uint8_t(*src)]; *bufferptr = char(val); - if (!scalar::base64::is_eight_byte(*src) || val > 64) { + if (!ignore_garbage && + (!scalar::base64::is_eight_byte(*src) || val > 64)) { return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -31388,8 +31693,14 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, // backtrack int leftover = int(bufferptr - buffer_start); while (leftover > 0) { - while (to_base64[uint8_t(*(src - 1))] == 64) { - src--; + if (!ignore_garbage) { + while (to_base64[uint8_t(*(src - 1))] == 64) { + src--; + } + } else { + while (to_base64[uint8_t(*(src - 1))] >= 64) { + src--; + } } src--; leftover--; @@ -31405,7 +31716,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } else { r.output_count += size_t(dst - dstinit); } - if (last_chunk_options != stop_before_partial && + if (!ignore_garbage && last_chunk_options != stop_before_partial && r.error == error_code::SUCCESS && equalsigns > 0) { // additional checks if ((r.output_count % 3 == 0) || @@ -31416,7 +31727,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } return r; } - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -32965,6 +33276,9 @@ struct validating_transcoder { uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in // this case, we also have ASCII to account for. + if (utf8_continuation_mask & 1) { + return 0; // error + } uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask >> 1; // We process in blocks of up to 12 bytes except possibly @@ -33214,20 +33528,103 @@ implementation::detect_encodings(const char *input, if (bom_encoding != encoding_type::unspecified) { return bom_encoding; } + int out = 0; - if (validate_utf8(input, length)) { + uint32_t utf16_err = (length % 2); + uint32_t utf32_err = (length % 4); + uint32_t ends_with_high = 0; + const auto v_d8 = simd8<uint8_t>::splat(0xd8); + const auto v_f8 = simd8<uint8_t>::splat(0xf8); + const auto v_fc = simd8<uint8_t>::splat(0xfc); + const auto v_dc = simd8<uint8_t>::splat(0xdc); + const __m256i standardmax = _mm256_set1_epi32(0x10ffff); + const __m256i offset = _mm256_set1_epi32(0xffff2000); + const __m256i standardoffsetmax = _mm256_set1_epi32(0xfffff7ff); + __m256i currentmax = _mm256_setzero_si256(); + __m256i currentoffsetmax = _mm256_setzero_si256(); + + utf8_checker c{}; + buf_block_reader<64> reader(reinterpret_cast<const uint8_t *>(input), length); + while (reader.has_full_block()) { + simd::simd8x64<uint8_t> in(reader.full_block()); + // utf8 checks + c.check_next_input(in); + + // utf16le checks + auto in0 = simd16<uint16_t>(in.chunks[0]); + auto in1 = simd16<uint16_t>(in.chunks[1]); + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const auto in2 = simd16<uint16_t>::pack(t0, t1); + const auto surrogates_wordmask = (in2 & v_f8) == v_d8; + const uint32_t surrogates_bitmask = surrogates_wordmask.to_bitmask(); + const auto vL = (in2 & v_fc) == v_dc; + const uint32_t L = vL.to_bitmask(); + const uint32_t H = L ^ surrogates_bitmask; + utf16_err |= (((H << 1) | ends_with_high) != L); + ends_with_high = (H & 0x80000000) != 0; + + // utf32le checks + currentmax = _mm256_max_epu32(in.chunks[0], currentmax); + currentoffsetmax = _mm256_max_epu32(_mm256_add_epi32(in.chunks[0], offset), + currentoffsetmax); + currentmax = _mm256_max_epu32(in.chunks[1], currentmax); + currentoffsetmax = _mm256_max_epu32(_mm256_add_epi32(in.chunks[1], offset), + currentoffsetmax); + + reader.advance(); + } + + uint8_t block[64]{}; + size_t idx = reader.block_index(); + std::memcpy(block, &input[idx], length - idx); + simd::simd8x64<uint8_t> in(block); + c.check_next_input(in); + + // utf16le last block check + auto in0 = simd16<uint16_t>(in.chunks[0]); + auto in1 = simd16<uint16_t>(in.chunks[1]); + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const auto in2 = simd16<uint16_t>::pack(t0, t1); + const auto surrogates_wordmask = (in2 & v_f8) == v_d8; + const uint32_t surrogates_bitmask = surrogates_wordmask.to_bitmask(); + const auto vL = (in2 & v_fc) == v_dc; + const uint32_t L = vL.to_bitmask(); + const uint32_t H = L ^ surrogates_bitmask; + utf16_err |= (((H << 1) | ends_with_high) != L); + // this is required to check for last byte ending in high and end of input + // is reached + ends_with_high = (H & 0x80000000) != 0; + utf16_err |= ends_with_high; + + // utf32le last block check + currentmax = _mm256_max_epu32(in.chunks[0], currentmax); + currentoffsetmax = _mm256_max_epu32(_mm256_add_epi32(in.chunks[0], offset), + currentoffsetmax); + currentmax = _mm256_max_epu32(in.chunks[1], currentmax); + currentoffsetmax = _mm256_max_epu32(_mm256_add_epi32(in.chunks[1], offset), + currentoffsetmax); + + reader.advance(); + + c.check_eof(); + bool is_valid_utf8 = !c.errors(); + __m256i is_zero = + _mm256_xor_si256(_mm256_max_epu32(currentmax, standardmax), standardmax); + utf32_err |= (_mm256_testz_si256(is_zero, is_zero) == 0); + + is_zero = _mm256_xor_si256( + _mm256_max_epu32(currentoffsetmax, standardoffsetmax), standardoffsetmax); + utf32_err |= (_mm256_testz_si256(is_zero, is_zero) == 0); + if (is_valid_utf8) { out |= encoding_type::UTF8; } - if ((length % 2) == 0) { - if (validate_utf16le(reinterpret_cast<const char16_t *>(input), - length / 2)) { - out |= encoding_type::UTF16_LE; - } + if (utf16_err == 0) { + out |= encoding_type::UTF16_LE; } - if ((length % 4) == 0) { - if (validate_utf32(reinterpret_cast<const char32_t *>(input), length / 4)) { - out |= encoding_type::UTF32_LE; - } + if (utf32_err == 0) { + out |= encoding_type::UTF32_LE; } return out; } @@ -34195,21 +34592,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -34220,21 +34641,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( @@ -36030,6 +36475,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); // skip trailing spaces while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { @@ -36053,7 +36501,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -36061,7 +36515,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -36078,6 +36532,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); // skip trailing spaces while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { @@ -36101,7 +36558,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -36109,7 +36572,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -37828,6 +38291,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -37850,7 +38316,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -37858,7 +38330,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -37870,6 +38342,9 @@ simdutf_warn_unused result implementation::base64_to_binary( simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -37892,7 +38367,13 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -37900,7 +38381,7 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( full_result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -37918,6 +38399,9 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -37940,7 +38424,13 @@ simdutf_warn_unused result implementation::base64_to_binary( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation}; } return {SUCCESS, 0}; @@ -37948,7 +38438,7 @@ simdutf_warn_unused result implementation::base64_to_binary( result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.count % 3 == 0) || ((r.count % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation}; @@ -37960,6 +38450,9 @@ simdutf_warn_unused result implementation::base64_to_binary( simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { + const bool ignore_garbage = + (options == base64_options::base64_url_accept_garbage) || + (options == base64_options::base64_default_accept_garbage); while (length > 0 && scalar::base64::is_ascii_white_space(input[length - 1])) { length--; @@ -37982,7 +38475,13 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( } } if (length == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -37990,7 +38489,7 @@ simdutf_warn_unused full_result implementation::base64_to_binary_details( full_result r = scalar::base64::base64_tail_decode( output, input, length, equalsigns, options, last_chunk_options); if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -40813,7 +41312,7 @@ struct block64 { __m128i chunks[4]; }; -template <bool base64_url> +template <bool base64_url, bool ignore_garbage> static inline uint16_t to_base64_mask(__m128i *src, uint32_t *error) { const __m128i ascii_space_tbl = _mm_setr_epi8(0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x9, 0xa, 0x0, @@ -40878,7 +41377,7 @@ static inline uint16_t to_base64_mask(__m128i *src, uint32_t *error) { const __m128i chk = _mm_adds_epi8(_mm_shuffle_epi8(check_values, check_hash), *src); const int mask = _mm_movemask_epi8(chk); - if (mask) { + if (!ignore_garbage && mask) { __m128i ascii_space = _mm_cmpeq_epi8(_mm_shuffle_epi8(ascii_space_tbl, *src), *src); *error = (mask ^ _mm_movemask_epi8(ascii_space)); @@ -40887,18 +41386,24 @@ static inline uint16_t to_base64_mask(__m128i *src, uint32_t *error) { return (uint16_t)mask; } -template <bool base64_url> +template <bool base64_url, bool ignore_garbage> static inline uint64_t to_base64_mask(block64 *b, uint64_t *error) { uint32_t err0 = 0; uint32_t err1 = 0; uint32_t err2 = 0; uint32_t err3 = 0; - uint64_t m0 = to_base64_mask<base64_url>(&b->chunks[0], &err0); - uint64_t m1 = to_base64_mask<base64_url>(&b->chunks[1], &err1); - uint64_t m2 = to_base64_mask<base64_url>(&b->chunks[2], &err2); - uint64_t m3 = to_base64_mask<base64_url>(&b->chunks[3], &err3); - *error = (err0) | ((uint64_t)err1 << 16) | ((uint64_t)err2 << 32) | - ((uint64_t)err3 << 48); + uint64_t m0 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[0], &err0); + uint64_t m1 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[1], &err1); + uint64_t m2 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[2], &err2); + uint64_t m3 = + to_base64_mask<base64_url, ignore_garbage>(&b->chunks[3], &err3); + if (!ignore_garbage) { + *error = (err0) | ((uint64_t)err1 << 16) | ((uint64_t)err2 << 32) | + ((uint64_t)err3 << 48); + } return m0 | (m1 << 16) | (m2 << 32) | (m3 << 48); } @@ -41011,7 +41516,7 @@ static inline void base64_decode_block_safe(char *out, block64 *b) { std::memcpy(out + 36, buffer, 12); } -template <bool base64_url, typename chartype> +template <bool base64_url, bool ignore_garbage, typename chartype> full_result compress_decode_base64(char *dst, const chartype *src, size_t srclen, base64_options options, @@ -41021,12 +41526,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, size_t equallocation = srclen; // location of the first padding character if any // skip trailing spaces - while (srclen > 0 && scalar::base64::is_eight_byte(src[srclen - 1]) && + while (!ignore_garbage && srclen > 0 && + scalar::base64::is_eight_byte(src[srclen - 1]) && to_base64[uint8_t(src[srclen - 1])] == 64) { srclen--; } size_t equalsigns = 0; - if (srclen > 0 && src[srclen - 1] == '=') { + if (!ignore_garbage && srclen > 0 && src[srclen - 1] == '=') { equallocation = srclen - 1; srclen--; equalsigns = 1; @@ -41042,7 +41548,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -41065,8 +41577,9 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, load_block(&b, src); src += 64; uint64_t error = 0; - uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); - if (error) { + uint64_t badcharmask = + to_base64_mask<base64_url, ignore_garbage>(&b, &error); + if (error && !ignore_garbage) { src -= 64; size_t error_offset = simdutf_tzcnt_u64(error); return {error_code::INVALID_BASE64_CHARACTER, @@ -41114,7 +41627,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, while ((bufferptr - buffer_start) % 64 != 0 && src < srcend) { uint8_t val = to_base64[uint8_t(*src)]; *bufferptr = char(val); - if (!scalar::base64::is_eight_byte(*src) || val > 64) { + if ((!scalar::base64::is_eight_byte(*src) || val > 64) && + !ignore_garbage) { return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -41160,8 +41674,14 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, // backtrack int leftover = int(bufferptr - buffer_start); while (leftover > 0) { - while (to_base64[uint8_t(*(src - 1))] == 64) { - src--; + if (!ignore_garbage) { + while (to_base64[uint8_t(*(src - 1))] == 64) { + src--; + } + } else { + while (to_base64[uint8_t(*(src - 1))] >= 64) { + src--; + } } src--; leftover--; @@ -41178,7 +41698,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, r.output_count += size_t(dst - dstinit); } if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -41188,7 +41708,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } return r; } - if (equalsigns > 0) { + if (equalsigns > 0 && !ignore_garbage) { if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -42736,6 +43256,9 @@ struct validating_transcoder { uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in // this case, we also have ASCII to account for. + if (utf8_continuation_mask & 1) { + return 0; // error + } uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask >> 1; // We process in blocks of up to 12 bytes except possibly @@ -42986,24 +43509,138 @@ implementation::detect_encodings(const char *input, size_t length) const noexcept { // If there is a BOM, then we trust it. auto bom_encoding = simdutf::BOM::check_bom(input, length); - // todo: reimplement as a one-pass algorithm. if (bom_encoding != encoding_type::unspecified) { return bom_encoding; } + int out = 0; - if (validate_utf8(input, length)) { + uint32_t utf16_err = (length % 2); + uint32_t utf32_err = (length % 4); + uint32_t ends_with_high = 0; + const auto v_d8 = simd8<uint8_t>::splat(0xd8); + const auto v_f8 = simd8<uint8_t>::splat(0xf8); + const auto v_fc = simd8<uint8_t>::splat(0xfc); + const auto v_dc = simd8<uint8_t>::splat(0xdc); + const __m128i standardmax = _mm_set1_epi32(0x10ffff); + const __m128i offset = _mm_set1_epi32(0xffff2000); + const __m128i standardoffsetmax = _mm_set1_epi32(0xfffff7ff); + __m128i currentmax = _mm_setzero_si128(); + __m128i currentoffsetmax = _mm_setzero_si128(); + + utf8_checker c{}; + buf_block_reader<64> reader(reinterpret_cast<const uint8_t *>(input), length); + while (reader.has_full_block()) { + simd::simd8x64<uint8_t> in(reader.full_block()); + // utf8 checks + c.check_next_input(in); + + // utf16le checks + auto in0 = simd16<uint16_t>(in.chunks[0]); + auto in1 = simd16<uint16_t>(in.chunks[1]); + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const auto packed1 = simd16<uint16_t>::pack(t0, t1); + auto in2 = simd16<uint16_t>(in.chunks[2]); + auto in3 = simd16<uint16_t>(in.chunks[3]); + const auto t2 = in2.shr<8>(); + const auto t3 = in3.shr<8>(); + const auto packed2 = simd16<uint16_t>::pack(t2, t3); + + const auto surrogates_wordmask_lo = (packed1 & v_f8) == v_d8; + const auto surrogates_wordmask_hi = (packed2 & v_f8) == v_d8; + const uint32_t surrogates_bitmask = + (surrogates_wordmask_hi.to_bitmask() << 16) | + surrogates_wordmask_lo.to_bitmask(); + const auto vL_lo = (packed1 & v_fc) == v_dc; + const auto vL_hi = (packed2 & v_fc) == v_dc; + const uint32_t L = (vL_hi.to_bitmask() << 16) | vL_lo.to_bitmask(); + const uint32_t H = L ^ surrogates_bitmask; + utf16_err |= (((H << 1) | ends_with_high) != L); + ends_with_high = (H & 0x80000000) != 0; + + // utf32le checks + currentmax = _mm_max_epu32(in.chunks[0], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[0], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[1], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[1], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[2], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[2], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[3], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[3], offset), currentoffsetmax); + + reader.advance(); + } + + uint8_t block[64]{}; + size_t idx = reader.block_index(); + std::memcpy(block, &input[idx], length - idx); + simd::simd8x64<uint8_t> in(block); + c.check_next_input(in); + + // utf16le last block check + auto in0 = simd16<uint16_t>(in.chunks[0]); + auto in1 = simd16<uint16_t>(in.chunks[1]); + const auto t0 = in0.shr<8>(); + const auto t1 = in1.shr<8>(); + const auto packed1 = simd16<uint16_t>::pack(t0, t1); + auto in2 = simd16<uint16_t>(in.chunks[2]); + auto in3 = simd16<uint16_t>(in.chunks[3]); + const auto t2 = in2.shr<8>(); + const auto t3 = in3.shr<8>(); + const auto packed2 = simd16<uint16_t>::pack(t2, t3); + + const auto surrogates_wordmask_lo = (packed1 & v_f8) == v_d8; + const auto surrogates_wordmask_hi = (packed2 & v_f8) == v_d8; + const uint32_t surrogates_bitmask = + (surrogates_wordmask_hi.to_bitmask() << 16) | + surrogates_wordmask_lo.to_bitmask(); + const auto vL_lo = (packed1 & v_fc) == v_dc; + const auto vL_hi = (packed2 & v_fc) == v_dc; + const uint32_t L = (vL_hi.to_bitmask() << 16) | vL_lo.to_bitmask(); + const uint32_t H = L ^ surrogates_bitmask; + utf16_err |= (((H << 1) | ends_with_high) != L); + // this is required to check for last byte ending in high and end of input + // is reached + ends_with_high = (H & 0x80000000) != 0; + utf16_err |= ends_with_high; + + // utf32le last block check + currentmax = _mm_max_epu32(in.chunks[0], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[0], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[1], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[1], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[2], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[2], offset), currentoffsetmax); + currentmax = _mm_max_epu32(in.chunks[3], currentmax); + currentoffsetmax = + _mm_max_epu32(_mm_add_epi32(in.chunks[3], offset), currentoffsetmax); + + reader.advance(); + + c.check_eof(); + bool is_valid_utf8 = !c.errors(); + __m128i is_zero = + _mm_xor_si128(_mm_max_epu32(currentmax, standardmax), standardmax); + utf32_err |= (_mm_test_all_zeros(is_zero, is_zero) == 0); + + is_zero = _mm_xor_si128(_mm_max_epu32(currentoffsetmax, standardoffsetmax), + standardoffsetmax); + utf32_err |= (_mm_test_all_zeros(is_zero, is_zero) == 0); + if (is_valid_utf8) { out |= encoding_type::UTF8; } - if ((length % 2) == 0) { - if (validate_utf16le(reinterpret_cast<const char16_t *>(input), - length / 2)) { - out |= encoding_type::UTF16_LE; - } + if (utf16_err == 0) { + out |= encoding_type::UTF16_LE; } - if ((length % 4) == 0) { - if (validate_utf32(reinterpret_cast<const char32_t *>(input), length / 4)) { - out |= encoding_type::UTF32_LE; - } + if (utf32_err == 0) { + out |= encoding_type::UTF32_LE; } return out; } @@ -43976,21 +44613,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -44001,21 +44662,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( @@ -46960,7 +47645,7 @@ static inline void base64_decode_block_safe(char *out, block64 *b) { base64_decode_block(out, b); } -template <bool base64_url, typename char_type> +template <bool base64_url, bool ignore_garbage, typename char_type> full_result compress_decode_base64(char *dst, const char_type *src, size_t srclen, base64_options options, @@ -46991,7 +47676,13 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -47012,7 +47703,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, bool error = false; uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); if (badcharmask) { - if (error) { + if (error && !ignore_garbage) { src -= 64; while (src < srcend && scalar::base64::is_eight_byte(*src) && to_base64[uint8_t(*src)] <= 64) { @@ -47056,7 +47747,8 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, while ((bufferptr - buffer_start) % 64 != 0 && src < srcend) { uint8_t val = to_base64[uint8_t(*src)]; *bufferptr = char(val); - if (!scalar::base64::is_eight_byte(*src) || val > 64) { + if ((!scalar::base64::is_eight_byte(*src) || val > 64) && + !ignore_garbage) { return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -47098,8 +47790,14 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, // backtrack int leftover = int(bufferptr - buffer_start); while (leftover > 0) { - while (to_base64[uint8_t(*(src - 1))] == 64) { - src--; + if (!ignore_garbage) { + while (to_base64[uint8_t(*(src - 1))] == 64) { + src--; + } + } else { + while (to_base64[uint8_t(*(src - 1))] >= 64) { + src--; + } } src--; leftover--; @@ -47116,7 +47814,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, r.output_count += size_t(dst - dstinit); } if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -47126,7 +47824,7 @@ compress_decode_base64(char *dst, const char_type *src, size_t srclen, } return r; } - if (equalsigns > 0) { + if (equalsigns > 0 && !ignore_garbage) { if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -47778,6 +48476,9 @@ struct validating_transcoder { uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in // this case, we also have ASCII to account for. + if (utf8_continuation_mask & 1) { + return 0; // error + } uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask >> 1; // We process in blocks of up to 12 bytes except possibly @@ -49864,21 +50565,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -49889,21 +50614,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( @@ -53234,7 +53983,7 @@ static inline void base64_decode_block_safe(char *out, block64 *b) { std::memcpy(out + 24, buffer, 24); } -template <bool base64_url, typename chartype> +template <bool base64_url, bool ignore_garbage, typename chartype> full_result compress_decode_base64(char *dst, const chartype *src, size_t srclen, base64_options options, @@ -53265,7 +54014,13 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } } if (srclen == 0) { - if (equalsigns > 0) { + if (!ignore_garbage && equalsigns > 0) { + if (last_chunk_options == last_chunk_handling_options::strict) { + return {BASE64_INPUT_REMAINDER, 0, 0}; + } else if (last_chunk_options == + last_chunk_handling_options::stop_before_partial) { + return {SUCCESS, 0, 0}; + } return {INVALID_BASE64_CHARACTER, equallocation, 0}; } return {SUCCESS, 0, 0}; @@ -53289,7 +54044,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, src += 64; bool error = false; uint64_t badcharmask = to_base64_mask<base64_url>(&b, &error); - if (error) { + if (error && !ignore_garbage) { src -= 64; while (src < srcend && scalar::base64::is_eight_byte(*src) && to_base64[uint8_t(*src)] <= 64) { @@ -53341,7 +54096,8 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, while ((bufferptr - buffer_start) % 64 != 0 && src < srcend) { uint8_t val = to_base64[uint8_t(*src)]; *bufferptr = char(val); - if (!scalar::base64::is_eight_byte(*src) || val > 64) { + if ((!scalar::base64::is_eight_byte(*src) || val > 64) && + !ignore_garbage) { return {error_code::INVALID_BASE64_CHARACTER, size_t(src - srcinit), size_t(dst - dstinit)}; } @@ -53387,8 +54143,14 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, // backtrack int leftover = int(bufferptr - buffer_start); while (leftover > 0) { - while (to_base64[uint8_t(*(src - 1))] == 64) { - src--; + if (!ignore_garbage) { + while (to_base64[uint8_t(*(src - 1))] == 64) { + src--; + } + } else { + while (to_base64[uint8_t(*(src - 1))] >= 64) { + src--; + } } src--; leftover--; @@ -53405,7 +54167,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, r.output_count += size_t(dst - dstinit); } if (last_chunk_options != stop_before_partial && - r.error == error_code::SUCCESS && equalsigns > 0) { + r.error == error_code::SUCCESS && equalsigns > 0 && !ignore_garbage) { // additional checks if ((r.output_count % 3 == 0) || ((r.output_count % 3) + 1 + equalsigns != 4)) { @@ -53415,7 +54177,7 @@ compress_decode_base64(char *dst, const chartype *src, size_t srclen, } return r; } - if (equalsigns > 0) { + if (equalsigns > 0 && !ignore_garbage) { if ((size_t(dst - dstinit) % 3 == 0) || ((size_t(dst - dstinit) % 3) + 1 + equalsigns != 4)) { return {INVALID_BASE64_CHARACTER, equallocation, size_t(dst - dstinit)}; @@ -54067,6 +54829,9 @@ struct validating_transcoder { uint64_t utf8_continuation_mask = input.lt(-65 + 1); // -64 is 1100 0000 in twos complement. Note: in // this case, we also have ASCII to account for. + if (utf8_continuation_mask & 1) { + return 0; // error + } uint64_t utf8_leading_mask = ~utf8_continuation_mask; uint64_t utf8_end_of_code_point_mask = utf8_leading_mask >> 1; // We process in blocks of up to 12 bytes except possibly @@ -56273,21 +57038,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( @@ -56298,21 +57087,45 @@ simdutf_warn_unused size_t implementation::maximal_binary_length_from_base64( simdutf_warn_unused result implementation::base64_to_binary( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused full_result implementation::base64_to_binary_details( const char16_t *input, size_t length, char *output, base64_options options, last_chunk_handling_options last_chunk_options) const noexcept { - return (options & base64_url) - ? compress_decode_base64<true>(output, input, length, options, - last_chunk_options) - : compress_decode_base64<false>(output, input, length, options, - last_chunk_options); + if (options & base64_url) { + if (options == base64_options::base64_url_accept_garbage) { + return compress_decode_base64<true, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<true, false>(output, input, length, options, + last_chunk_options); + } + } else { + if (options == base64_options::base64_default_accept_garbage) { + return compress_decode_base64<false, true>(output, input, length, options, + last_chunk_options); + } else { + return compress_decode_base64<false, false>(output, input, length, + options, last_chunk_options); + } + } } simdutf_warn_unused size_t implementation::base64_length_from_binary( diff --git a/deps/simdutf/simdutf.h b/deps/simdutf/simdutf.h index 2d984f40e7bc3f..4bec0cf300292a 100644 --- a/deps/simdutf/simdutf.h +++ b/deps/simdutf/simdutf.h @@ -1,4 +1,4 @@ -/* auto-generated on 2024-12-10 14:54:53 -0500. Do not edit! */ +/* auto-generated on 2025-01-08 17:51:07 -0500. Do not edit! */ /* begin file include/simdutf.h */ #ifndef SIMDUTF_H #define SIMDUTF_H @@ -55,21 +55,35 @@ #ifndef SIMDUTF_COMMON_DEFS_H #define SIMDUTF_COMMON_DEFS_H -#include <cassert> /* begin file include/simdutf/portability.h */ #ifndef SIMDUTF_PORTABILITY_H #define SIMDUTF_PORTABILITY_H + +#include <cfloat> #include <cstddef> #include <cstdint> #include <cstdlib> -#include <cfloat> -#include <cassert> #ifndef _WIN32 // strcasecmp, strncasecmp #include <strings.h> #endif +#if defined(__apple_build_version__) + #if __apple_build_version__ < 14000000 + #define SIMDUTF_SPAN_DISABLED \ + 1 // apple-clang/13 doesn't support std::convertible_to + #endif +#endif + +#if SIMDUTF_CPLUSPLUS20 + #include <version> + #if __cpp_concepts >= 201907L && __cpp_lib_span >= 202002L && \ + !defined(SIMDUTF_SPAN_DISABLED) + #define SIMDUTF_SPAN 1 + #endif +#endif + /** * We want to check that it is actually a little endian system at * compile-time. @@ -291,27 +305,6 @@ #define simdutf_strncasecmp strncasecmp #endif -#ifdef NDEBUG - - #ifdef SIMDUTF_VISUAL_STUDIO - #define SIMDUTF_UNREACHABLE() __assume(0) - #define SIMDUTF_ASSUME(COND) __assume(COND) - #else - #define SIMDUTF_UNREACHABLE() __builtin_unreachable(); - #define SIMDUTF_ASSUME(COND) \ - do { \ - if (!(COND)) \ - __builtin_unreachable(); \ - } while (0) - #endif - -#else // NDEBUG - - #define SIMDUTF_UNREACHABLE() assert(0); - #define SIMDUTF_ASSUME(COND) assert(COND) - -#endif - #if defined(__GNUC__) && !defined(__clang__) #if __GNUC__ >= 11 #define SIMDUTF_GCC11ORMORE 1 @@ -402,27 +395,6 @@ #endif // SIMDUTF_AVX512_H_ /* end file include/simdutf/avx512.h */ -#if defined(__GNUC__) - // Marks a block with a name so that MCA analysis can see it. - #define SIMDUTF_BEGIN_DEBUG_BLOCK(name) \ - __asm volatile("# LLVM-MCA-BEGIN " #name); - #define SIMDUTF_END_DEBUG_BLOCK(name) __asm volatile("# LLVM-MCA-END " #name); - #define SIMDUTF_DEBUG_BLOCK(name, block) \ - BEGIN_DEBUG_BLOCK(name); \ - block; \ - END_DEBUG_BLOCK(name); -#else - #define SIMDUTF_BEGIN_DEBUG_BLOCK(name) - #define SIMDUTF_END_DEBUG_BLOCK(name) - #define SIMDUTF_DEBUG_BLOCK(name, block) -#endif - -// Align to N-byte boundary -#define SIMDUTF_ROUNDUP_N(a, n) (((a) + ((n) - 1)) & ~((n) - 1)) -#define SIMDUTF_ROUNDDOWN_N(a, n) ((a) & ~((n) - 1)) - -#define SIMDUTF_ISALIGNED_N(ptr, n) (((uintptr_t)(ptr) & ((n) - 1)) == 0) - #if defined(SIMDUTF_REGULAR_VISUAL_STUDIO) #define SIMDUTF_DEPRECATED __declspec(deprecated) @@ -536,18 +508,11 @@ #endif #endif -/// If EXPR is an error, returns it. -#define SIMDUTF_TRY(EXPR) \ - { \ - auto _err = (EXPR); \ - if (_err) { \ - return _err; \ - } \ - } - #endif // SIMDUTF_COMMON_DEFS_H /* end file include/simdutf/common_defs.h */ /* begin file include/simdutf/encoding_types.h */ +#ifndef SIMDUTF_ENCODING_TYPES_H +#define SIMDUTF_ENCODING_TYPES_H #include <string> namespace simdutf { @@ -591,6 +556,7 @@ size_t bom_byte_size(encoding_type bom); } // namespace BOM } // namespace simdutf +#endif /* end file include/simdutf/encoding_types.h */ /* begin file include/simdutf/error.h */ #ifndef SIMDUTF_ERROR_H @@ -675,22 +641,22 @@ SIMDUTF_DISABLE_UNDESIRED_WARNINGS #define SIMDUTF_SIMDUTF_VERSION_H /** The version of simdutf being used (major.minor.revision) */ -#define SIMDUTF_VERSION "5.6.4" +#define SIMDUTF_VERSION "6.0.3" namespace simdutf { enum { /** * The major version (MAJOR.minor.revision) of simdutf being used. */ - SIMDUTF_VERSION_MAJOR = 5, + SIMDUTF_VERSION_MAJOR = 6, /** * The minor version (major.MINOR.revision) of simdutf being used. */ - SIMDUTF_VERSION_MINOR = 6, + SIMDUTF_VERSION_MINOR = 0, /** * The revision (major.minor.REVISION) of simdutf being used. */ - SIMDUTF_VERSION_REVISION = 4 + SIMDUTF_VERSION_REVISION = 3 }; } // namespace simdutf @@ -699,11 +665,10 @@ enum { /* begin file include/simdutf/implementation.h */ #ifndef SIMDUTF_IMPLEMENTATION_H #define SIMDUTF_IMPLEMENTATION_H -#include <string> #if !defined(SIMDUTF_NO_THREADS) #include <atomic> #endif -#include <tuple> +#include <string> #include <vector> /* begin file include/simdutf/internal/isadetection.h */ /* From @@ -1031,8 +996,61 @@ static inline uint32_t detect_supported_architectures() { #endif // SIMDutf_INTERNAL_ISADETECTION_H /* end file include/simdutf/internal/isadetection.h */ +#if SIMDUTF_SPAN + #include <concepts> + #include <type_traits> + #include <span> +#endif + namespace simdutf { +#if SIMDUTF_SPAN +/// helpers placed in namespace detail are not a part of the public API +namespace detail { +/** + * matches a byte, in the many ways C++ allows. note that these + * are all distinct types. + */ +template <typename T> +concept byte_like = std::is_same_v<T, std::byte> || // + std::is_same_v<T, char> || // + std::is_same_v<T, signed char> || // + std::is_same_v<T, unsigned char>; + +template <typename T> +concept is_byte_like = byte_like<std::remove_cvref_t<T>>; + +template <typename T> +concept is_pointer = std::is_pointer_v<T>; + +/** + * matches anything that behaves like std::span and points to character-like + * data such as: std::byte, char, unsigned char, signed char, std::int8_t, + * std::uint8_t + */ +template <typename T> +concept input_span_of_byte_like = requires(const T &t) { + { t.size() } noexcept -> std::convertible_to<std::size_t>; + { t.data() } noexcept -> is_pointer; + { *t.data() } noexcept -> is_byte_like; +}; + +template <typename T> +concept is_mutable = !std::is_const_v<std::remove_reference_t<T>>; + +/** + * like span_of_byte_like, but for an output span (intended to be written to) + */ +template <typename T> +concept output_span_of_byte_like = requires(T &t) { + { t.size() } noexcept -> std::convertible_to<std::size_t>; + { t.data() } noexcept -> is_pointer; + { *t.data() } noexcept -> is_byte_like; + { *t.data() } noexcept -> is_mutable; +}; +} // namespace detail +#endif + /** * Autodetect the encoding of the input, a single encoding is recommended. * E.g., the function might return simdutf::encoding_type::UTF8, @@ -1049,6 +1067,25 @@ simdutf_really_inline simdutf_warn_unused simdutf::encoding_type autodetect_encoding(const uint8_t *input, size_t length) noexcept { return autodetect_encoding(reinterpret_cast<const char *>(input), length); } +#if SIMDUTF_SPAN +/** + * Autodetect the encoding of the input, a single encoding is recommended. + * E.g., the function might return simdutf::encoding_type::UTF8, + * simdutf::encoding_type::UTF16_LE, simdutf::encoding_type::UTF16_BE, or + * simdutf::encoding_type::UTF32_LE. + * + * @param input the string to analyze. can be a anything span-like that has a + * data() and size() that points to character data: std::string, + * std::string_view, std::vector<char>, std::span<const std::byte> etc. + * @return the detected encoding type + */ +simdutf_really_inline simdutf_warn_unused simdutf::encoding_type +autodetect_encoding( + const detail::input_span_of_byte_like auto &input) noexcept { + return autodetect_encoding(reinterpret_cast<const char *>(input.data()), + input.size()); +} +#endif /** * Autodetect the possible encodings of the input in one pass. @@ -1067,6 +1104,13 @@ simdutf_really_inline simdutf_warn_unused int detect_encodings(const uint8_t *input, size_t length) noexcept { return detect_encodings(reinterpret_cast<const char *>(input), length); } +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused int +detect_encodings(const detail::input_span_of_byte_like auto &input) noexcept { + return detect_encodings(reinterpret_cast<const char *>(input.data()), + input.size()); +} +#endif /** * Validate the UTF-8 string. This function may be best when you expect @@ -1080,6 +1124,13 @@ detect_encodings(const uint8_t *input, size_t length) noexcept { * @return true if and only if the string is valid UTF-8. */ simdutf_warn_unused bool validate_utf8(const char *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_utf8(const detail::input_span_of_byte_like auto &input) noexcept { + return validate_utf8(reinterpret_cast<const char *>(input.data()), + input.size()); +} +#endif /** * Validate the UTF-8 string and stop on error. @@ -1095,6 +1146,13 @@ simdutf_warn_unused bool validate_utf8(const char *buf, size_t len) noexcept; */ simdutf_warn_unused result validate_utf8_with_errors(const char *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result validate_utf8_with_errors( + const detail::input_span_of_byte_like auto &input) noexcept { + return validate_utf8_with_errors(reinterpret_cast<const char *>(input.data()), + input.size()); +} +#endif /** * Validate the ASCII string. @@ -1106,6 +1164,13 @@ simdutf_warn_unused result validate_utf8_with_errors(const char *buf, * @return true if and only if the string is valid ASCII. */ simdutf_warn_unused bool validate_ascii(const char *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_ascii(const detail::input_span_of_byte_like auto &input) noexcept { + return validate_ascii(reinterpret_cast<const char *>(input.data()), + input.size()); +} +#endif /** * Validate the ASCII string and stop on error. It might be faster than @@ -1122,6 +1187,13 @@ simdutf_warn_unused bool validate_ascii(const char *buf, size_t len) noexcept; */ simdutf_warn_unused result validate_ascii_with_errors(const char *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result validate_ascii_with_errors( + const detail::input_span_of_byte_like auto &input) noexcept { + return validate_ascii_with_errors( + reinterpret_cast<const char *>(input.data()), input.size()); +} +#endif /** * Using native endianness; Validate the UTF-16 string. @@ -1139,6 +1211,12 @@ simdutf_warn_unused result validate_ascii_with_errors(const char *buf, */ simdutf_warn_unused bool validate_utf16(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_utf16(std::span<const char16_t> input) noexcept { + return validate_utf16(input.data(), input.size()); +} +#endif /** * Validate the UTF-16LE string. This function may be best when you expect @@ -1156,6 +1234,12 @@ simdutf_warn_unused bool validate_utf16(const char16_t *buf, */ simdutf_warn_unused bool validate_utf16le(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_utf16le(std::span<const char16_t> input) noexcept { + return validate_utf16le(input.data(), input.size()); +} +#endif /** * Validate the UTF-16BE string. This function may be best when you expect @@ -1173,6 +1257,12 @@ simdutf_warn_unused bool validate_utf16le(const char16_t *buf, */ simdutf_warn_unused bool validate_utf16be(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_utf16be(std::span<const char16_t> input) noexcept { + return validate_utf16be(input.data(), input.size()); +} +#endif /** * Using native endianness; Validate the UTF-16 string and stop on error. @@ -1193,6 +1283,12 @@ simdutf_warn_unused bool validate_utf16be(const char16_t *buf, */ simdutf_warn_unused result validate_utf16_with_errors(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +validate_utf16_with_errors(std::span<const char16_t> input) noexcept { + return validate_utf16_with_errors(input.data(), input.size()); +} +#endif /** * Validate the UTF-16LE string and stop on error. It might be faster than @@ -1212,6 +1308,12 @@ simdutf_warn_unused result validate_utf16_with_errors(const char16_t *buf, */ simdutf_warn_unused result validate_utf16le_with_errors(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +validate_utf16le_with_errors(std::span<const char16_t> input) noexcept { + return validate_utf16le_with_errors(input.data(), input.size()); +} +#endif /** * Validate the UTF-16BE string and stop on error. It might be faster than @@ -1231,6 +1333,12 @@ simdutf_warn_unused result validate_utf16le_with_errors(const char16_t *buf, */ simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +validate_utf16be_with_errors(std::span<const char16_t> input) noexcept { + return validate_utf16be_with_errors(input.data(), input.size()); +} +#endif /** * Validate the UTF-32 string. This function may be best when you expect @@ -1248,6 +1356,12 @@ simdutf_warn_unused result validate_utf16be_with_errors(const char16_t *buf, */ simdutf_warn_unused bool validate_utf32(const char32_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused bool +validate_utf32(std::span<const char32_t> input) noexcept { + return validate_utf32(input.data(), input.size()); +} +#endif /** * Validate the UTF-32 string and stop on error. It might be faster than @@ -1267,6 +1381,12 @@ simdutf_warn_unused bool validate_utf32(const char32_t *buf, */ simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, size_t len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +validate_utf32_with_errors(std::span<const char32_t> input) noexcept { + return validate_utf32_with_errors(input.data(), input.size()); +} +#endif /** * Convert Latin1 string into UTF8 string. @@ -1281,6 +1401,15 @@ simdutf_warn_unused result validate_utf32_with_errors(const char32_t *buf, simdutf_warn_unused size_t convert_latin1_to_utf8(const char *input, size_t length, char *utf8_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_latin1_to_utf8( + const detail::input_span_of_byte_like auto &latin1_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_latin1_to_utf8( + reinterpret_cast<const char *>(latin1_input.data()), latin1_input.size(), + utf8_output.data()); +} +#endif /** * Convert Latin1 string into UTF8 string with output limit. @@ -1296,6 +1425,21 @@ simdutf_warn_unused size_t convert_latin1_to_utf8(const char *input, simdutf_warn_unused size_t convert_latin1_to_utf8_safe(const char *input, size_t length, char *utf8_output, size_t utf8_len) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_latin1_to_utf8_safe( + const detail::input_span_of_byte_like auto &input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + // implementation note: outputspan is a forwarding ref to avoid copying and + // allow both lvalues and rvalues. std::span can be copied without problems, + // but std::vector should not, and this function should accept both. it will + // allow using an owning rvalue ref (example: passing a temporary std::string) + // as output, but the user will quickly find out that he has no way of getting + // the data out of the object in that case. + return convert_latin1_to_utf8_safe( + input.data(), input.size(), reinterpret_cast<char *>(utf8_output.data()), + utf8_output.size()); +} +#endif /** * Convert possibly Latin1 string into UTF-16LE string. @@ -1309,6 +1453,15 @@ convert_latin1_to_utf8_safe(const char *input, size_t length, char *utf8_output, */ simdutf_warn_unused size_t convert_latin1_to_utf16le( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_latin1_to_utf16le( + const detail::input_span_of_byte_like auto &latin1_input, + std::span<char16_t> utf16_output) noexcept { + return convert_latin1_to_utf16le( + reinterpret_cast<const char *>(latin1_input.data()), latin1_input.size(), + utf16_output.data()); +} +#endif /** * Convert Latin1 string into UTF-16BE string. @@ -1322,6 +1475,14 @@ simdutf_warn_unused size_t convert_latin1_to_utf16le( */ simdutf_warn_unused size_t convert_latin1_to_utf16be( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_latin1_to_utf16be(const detail::input_span_of_byte_like auto &input, + std::span<char16_t> output) noexcept { + return convert_latin1_to_utf16be(reinterpret_cast<const char *>(input.data()), + input.size(), output.data()); +} +#endif /** * Convert Latin1 string into UTF-32 string. @@ -1335,6 +1496,15 @@ simdutf_warn_unused size_t convert_latin1_to_utf16be( */ simdutf_warn_unused size_t convert_latin1_to_utf32( const char *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_latin1_to_utf32( + const detail::input_span_of_byte_like auto &latin1_input, + std::span<char32_t> utf32_output) noexcept { + return convert_latin1_to_utf32( + reinterpret_cast<const char *>(latin1_input.data()), latin1_input.size(), + utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into latin1 string. @@ -1351,6 +1521,15 @@ simdutf_warn_unused size_t convert_latin1_to_utf32( simdutf_warn_unused size_t convert_utf8_to_latin1(const char *input, size_t length, char *latin1_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf8_to_latin1( + const detail::input_span_of_byte_like auto &input, + detail::output_span_of_byte_like auto &&output) noexcept { + return convert_utf8_to_latin1(reinterpret_cast<const char *>(input.data()), + input.size(), + reinterpret_cast<char *>(output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-8 string into a UTF-16 @@ -1367,6 +1546,14 @@ simdutf_warn_unused size_t convert_utf8_to_latin1(const char *input, */ simdutf_warn_unused size_t convert_utf8_to_utf16( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf8_to_utf16(const detail::input_span_of_byte_like auto &input, + std::span<char16_t> output) noexcept { + return convert_utf8_to_utf16(reinterpret_cast<const char *>(input.data()), + input.size(), output.data()); +} +#endif /** * Using native endianness, convert a Latin1 string into a UTF-16 string. @@ -1378,6 +1565,14 @@ simdutf_warn_unused size_t convert_utf8_to_utf16( */ simdutf_warn_unused size_t convert_latin1_to_utf16( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_latin1_to_utf16(const detail::input_span_of_byte_like auto &input, + std::span<char16_t> output) noexcept { + return convert_latin1_to_utf16(reinterpret_cast<const char *>(input.data()), + input.size(), output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-16LE string. @@ -1393,6 +1588,15 @@ simdutf_warn_unused size_t convert_latin1_to_utf16( */ simdutf_warn_unused size_t convert_utf8_to_utf16le( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf8_to_utf16le(const detail::input_span_of_byte_like auto &utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf8_to_utf16le( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-16BE string. @@ -1408,6 +1612,15 @@ simdutf_warn_unused size_t convert_utf8_to_utf16le( */ simdutf_warn_unused size_t convert_utf8_to_utf16be( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf8_to_utf16be(const detail::input_span_of_byte_like auto &utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf8_to_utf16be( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into latin1 string with errors. @@ -1427,6 +1640,16 @@ simdutf_warn_unused size_t convert_utf8_to_utf16be( */ simdutf_warn_unused result convert_utf8_to_latin1_with_errors( const char *input, size_t length, char *latin1_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf8_to_latin1_with_errors( + const detail::input_span_of_byte_like auto &utf8_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf8_to_latin1_with_errors( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-8 string into UTF-16 @@ -1445,6 +1668,16 @@ simdutf_warn_unused result convert_utf8_to_latin1_with_errors( */ simdutf_warn_unused result convert_utf8_to_utf16_with_errors( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf8_to_utf16_with_errors( + const detail::input_span_of_byte_like auto &utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf8_to_utf16_with_errors( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-16LE string and stop on error. @@ -1462,6 +1695,16 @@ simdutf_warn_unused result convert_utf8_to_utf16_with_errors( */ simdutf_warn_unused result convert_utf8_to_utf16le_with_errors( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf8_to_utf16le_with_errors( + const detail::input_span_of_byte_like auto &utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf8_to_utf16le_with_errors( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-16BE string and stop on error. @@ -1479,6 +1722,16 @@ simdutf_warn_unused result convert_utf8_to_utf16le_with_errors( */ simdutf_warn_unused result convert_utf8_to_utf16be_with_errors( const char *input, size_t length, char16_t *utf16_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf8_to_utf16be_with_errors( + const detail::input_span_of_byte_like auto &utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf8_to_utf16be_with_errors( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-32 string. @@ -1494,6 +1747,15 @@ simdutf_warn_unused result convert_utf8_to_utf16be_with_errors( */ simdutf_warn_unused size_t convert_utf8_to_utf32( const char *input, size_t length, char32_t *utf32_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf8_to_utf32(const detail::input_span_of_byte_like auto &utf8_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf8_to_utf32( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-8 string into UTF-32 string and stop on error. @@ -1511,6 +1773,16 @@ simdutf_warn_unused size_t convert_utf8_to_utf32( */ simdutf_warn_unused result convert_utf8_to_utf32_with_errors( const char *input, size_t length, char32_t *utf32_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf8_to_utf32_with_errors( + const detail::input_span_of_byte_like auto &utf8_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf8_to_utf32_with_errors( + reinterpret_cast<const char *>(utf8_input.data()), utf8_input.size(), + utf32_output.data()); +} +#endif /** * Convert valid UTF-8 string into latin1 string. @@ -1533,6 +1805,15 @@ simdutf_warn_unused result convert_utf8_to_utf32_with_errors( */ simdutf_warn_unused size_t convert_valid_utf8_to_latin1( const char *input, size_t length, char *latin1_output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf8_to_latin1( + const detail::input_span_of_byte_like auto &valid_utf8_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_valid_utf8_to_latin1( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size(), latin1_output.data()); +} +#endif /** * Using native endianness, convert valid UTF-8 string into a UTF-16 string. @@ -1546,6 +1827,15 @@ simdutf_warn_unused size_t convert_valid_utf8_to_latin1( */ simdutf_warn_unused size_t convert_valid_utf8_to_utf16( const char *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf8_to_utf16( + const detail::input_span_of_byte_like auto &valid_utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf8_to_utf16( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size(), utf16_output.data()); +} +#endif /** * Convert valid UTF-8 string into UTF-16LE string. @@ -1559,6 +1849,15 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf16( */ simdutf_warn_unused size_t convert_valid_utf8_to_utf16le( const char *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf8_to_utf16le( + const detail::input_span_of_byte_like auto &valid_utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf8_to_utf16le( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size(), utf16_output.data()); +} +#endif /** * Convert valid UTF-8 string into UTF-16BE string. @@ -1572,6 +1871,15 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf16le( */ simdutf_warn_unused size_t convert_valid_utf8_to_utf16be( const char *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf8_to_utf16be( + const detail::input_span_of_byte_like auto &valid_utf8_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf8_to_utf16be( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size(), utf16_output.data()); +} +#endif /** * Convert valid UTF-8 string into UTF-32 string. @@ -1585,6 +1893,15 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf16be( */ simdutf_warn_unused size_t convert_valid_utf8_to_utf32( const char *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf8_to_utf32( + const detail::input_span_of_byte_like auto &valid_utf8_input, + std::span<char32_t> utf32_output) noexcept { + return convert_valid_utf8_to_utf32( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size(), utf32_output.data()); +} +#endif /** * Return the number of bytes that this Latin1 string would require in UTF-8 @@ -1596,6 +1913,13 @@ simdutf_warn_unused size_t convert_valid_utf8_to_utf32( */ simdutf_warn_unused size_t utf8_length_from_latin1(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t utf8_length_from_latin1( + const detail::input_span_of_byte_like auto &latin1_input) noexcept { + return utf8_length_from_latin1( + reinterpret_cast<const char *>(latin1_input.data()), latin1_input.size()); +} +#endif /** * Compute the number of bytes that this UTF-8 string would require in Latin1 @@ -1612,6 +1936,14 @@ simdutf_warn_unused size_t utf8_length_from_latin1(const char *input, */ simdutf_warn_unused size_t latin1_length_from_utf8(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t latin1_length_from_utf8( + const detail::input_span_of_byte_like auto &valid_utf8_input) noexcept { + return latin1_length_from_utf8( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size()); +} +#endif /** * Compute the number of 2-byte code units that this UTF-8 string would require @@ -1629,6 +1961,14 @@ simdutf_warn_unused size_t latin1_length_from_utf8(const char *input, */ simdutf_warn_unused size_t utf16_length_from_utf8(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t utf16_length_from_utf8( + const detail::input_span_of_byte_like auto &valid_utf8_input) noexcept { + return utf16_length_from_utf8( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size()); +} +#endif /** * Compute the number of 4-byte code units that this UTF-8 string would require @@ -1648,6 +1988,14 @@ simdutf_warn_unused size_t utf16_length_from_utf8(const char *input, */ simdutf_warn_unused size_t utf32_length_from_utf8(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t utf32_length_from_utf8( + const detail::input_span_of_byte_like auto &valid_utf8_input) noexcept { + return utf32_length_from_utf8( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size()); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into UTF-8 @@ -1667,6 +2015,14 @@ simdutf_warn_unused size_t utf32_length_from_utf8(const char *input, simdutf_warn_unused size_t convert_utf16_to_utf8(const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16_to_utf8( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16_to_utf8(utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into Latin1 @@ -1685,6 +2041,15 @@ simdutf_warn_unused size_t convert_utf16_to_utf8(const char16_t *input, */ simdutf_warn_unused size_t convert_utf16_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16_to_latin1( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16_to_latin1( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-16LE string into Latin1 string. @@ -1704,6 +2069,15 @@ simdutf_warn_unused size_t convert_utf16_to_latin1( */ simdutf_warn_unused size_t convert_utf16le_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16le_to_latin1( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16le_to_latin1( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-16BE string into Latin1 string. @@ -1721,6 +2095,15 @@ simdutf_warn_unused size_t convert_utf16le_to_latin1( */ simdutf_warn_unused size_t convert_utf16be_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16be_to_latin1( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16be_to_latin1( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-16LE string into UTF-8 string. @@ -1739,6 +2122,14 @@ simdutf_warn_unused size_t convert_utf16be_to_latin1( simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16le_to_utf8( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16le_to_utf8(utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert possibly broken UTF-16BE string into UTF-8 string. @@ -1757,6 +2148,14 @@ simdutf_warn_unused size_t convert_utf16le_to_utf8(const char16_t *input, simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf16be_to_utf8( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16be_to_utf8(utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into Latin1 @@ -1776,6 +2175,16 @@ simdutf_warn_unused size_t convert_utf16be_to_utf8(const char16_t *input, */ simdutf_warn_unused result convert_utf16_to_latin1_with_errors( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16_to_latin1_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16_to_latin1_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-16LE string into Latin1 string. @@ -1794,6 +2203,16 @@ simdutf_warn_unused result convert_utf16_to_latin1_with_errors( */ simdutf_warn_unused result convert_utf16le_to_latin1_with_errors( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16le_to_latin1_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16le_to_latin1_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-16BE string into Latin1 string. @@ -1814,6 +2233,16 @@ simdutf_warn_unused result convert_utf16le_to_latin1_with_errors( */ simdutf_warn_unused result convert_utf16be_to_latin1_with_errors( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16be_to_latin1_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf16be_to_latin1_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into UTF-8 @@ -1834,6 +2263,16 @@ simdutf_warn_unused result convert_utf16be_to_latin1_with_errors( */ simdutf_warn_unused result convert_utf16_to_utf8_with_errors( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16_to_utf8_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16_to_utf8_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert possibly broken UTF-16LE string into UTF-8 string and stop on error. @@ -1853,6 +2292,16 @@ simdutf_warn_unused result convert_utf16_to_utf8_with_errors( */ simdutf_warn_unused result convert_utf16le_to_utf8_with_errors( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16le_to_utf8_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16le_to_utf8_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert possibly broken UTF-16BE string into UTF-8 string and stop on error. @@ -1872,6 +2321,16 @@ simdutf_warn_unused result convert_utf16le_to_utf8_with_errors( */ simdutf_warn_unused result convert_utf16be_to_utf8_with_errors( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16be_to_utf8_with_errors( + std::span<char16_t> utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf16be_to_utf8_with_errors( + utf16_input.data(), utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert valid UTF-16 string into UTF-8 string. @@ -1888,6 +2347,15 @@ simdutf_warn_unused result convert_utf16be_to_utf8_with_errors( */ simdutf_warn_unused size_t convert_valid_utf16_to_utf8( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf16_to_utf8( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_valid_utf16_to_utf8( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert UTF-16 string into Latin1 string. @@ -1910,6 +2378,15 @@ simdutf_warn_unused size_t convert_valid_utf16_to_utf8( */ simdutf_warn_unused size_t convert_valid_utf16_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf16_to_latin1( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_valid_utf16_to_latin1( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert valid UTF-16LE string into Latin1 string. @@ -1932,6 +2409,16 @@ simdutf_warn_unused size_t convert_valid_utf16_to_latin1( */ simdutf_warn_unused size_t convert_valid_utf16le_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf16le_to_latin1( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_valid_utf16le_to_latin1( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert valid UTF-16BE string into Latin1 string. @@ -1954,6 +2441,16 @@ simdutf_warn_unused size_t convert_valid_utf16le_to_latin1( */ simdutf_warn_unused size_t convert_valid_utf16be_to_latin1( const char16_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf16be_to_latin1( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_valid_utf16be_to_latin1( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert valid UTF-16LE string into UTF-8 string. @@ -1971,6 +2468,15 @@ simdutf_warn_unused size_t convert_valid_utf16be_to_latin1( */ simdutf_warn_unused size_t convert_valid_utf16le_to_utf8( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf16le_to_utf8( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_valid_utf16le_to_utf8( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert valid UTF-16BE string into UTF-8 string. @@ -1987,6 +2493,15 @@ simdutf_warn_unused size_t convert_valid_utf16le_to_utf8( */ simdutf_warn_unused size_t convert_valid_utf16be_to_utf8( const char16_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf16be_to_utf8( + std::span<char16_t> valid_utf16_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_valid_utf16be_to_utf8( + valid_utf16_input.data(), valid_utf16_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into UTF-32 @@ -2005,6 +2520,14 @@ simdutf_warn_unused size_t convert_valid_utf16be_to_utf8( */ simdutf_warn_unused size_t convert_utf16_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf16_to_utf32(std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16_to_utf32(utf16_input.data(), utf16_input.size(), + utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-16LE string into UTF-32 string. @@ -2022,6 +2545,14 @@ simdutf_warn_unused size_t convert_utf16_to_utf32( */ simdutf_warn_unused size_t convert_utf16le_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf16le_to_utf32(std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16le_to_utf32(utf16_input.data(), utf16_input.size(), + utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-16BE string into UTF-32 string. @@ -2039,6 +2570,14 @@ simdutf_warn_unused size_t convert_utf16le_to_utf32( */ simdutf_warn_unused size_t convert_utf16be_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf16be_to_utf32(std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16be_to_utf32(utf16_input.data(), utf16_input.size(), + utf32_output.data()); +} +#endif /** * Using native endianness, convert possibly broken UTF-16 string into @@ -2059,6 +2598,14 @@ simdutf_warn_unused size_t convert_utf16be_to_utf32( */ simdutf_warn_unused result convert_utf16_to_utf32_with_errors( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16_to_utf32_with_errors(std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16_to_utf32_with_errors( + utf16_input.data(), utf16_input.size(), utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-16LE string into UTF-32 string and stop on error. @@ -2078,6 +2625,15 @@ simdutf_warn_unused result convert_utf16_to_utf32_with_errors( */ simdutf_warn_unused result convert_utf16le_to_utf32_with_errors( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16le_to_utf32_with_errors( + std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16le_to_utf32_with_errors( + utf16_input.data(), utf16_input.size(), utf32_output.data()); +} +#endif /** * Convert possibly broken UTF-16BE string into UTF-32 string and stop on error. @@ -2097,6 +2653,15 @@ simdutf_warn_unused result convert_utf16le_to_utf32_with_errors( */ simdutf_warn_unused result convert_utf16be_to_utf32_with_errors( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf16be_to_utf32_with_errors( + std::span<const char16_t> utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_utf16be_to_utf32_with_errors( + utf16_input.data(), utf16_input.size(), utf32_output.data()); +} +#endif /** * Using native endianness, convert valid UTF-16 string into UTF-32 string. @@ -2114,6 +2679,14 @@ simdutf_warn_unused result convert_utf16be_to_utf32_with_errors( */ simdutf_warn_unused size_t convert_valid_utf16_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf16_to_utf32(std::span<const char16_t> valid_utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_valid_utf16_to_utf32( + valid_utf16_input.data(), valid_utf16_input.size(), utf32_output.data()); +} +#endif /** * Convert valid UTF-16LE string into UTF-32 string. @@ -2130,6 +2703,14 @@ simdutf_warn_unused size_t convert_valid_utf16_to_utf32( */ simdutf_warn_unused size_t convert_valid_utf16le_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf16le_to_utf32(std::span<const char16_t> valid_utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_valid_utf16le_to_utf32( + valid_utf16_input.data(), valid_utf16_input.size(), utf32_output.data()); +} +#endif /** * Convert valid UTF-16BE string into UTF-32 string. @@ -2146,8 +2727,16 @@ simdutf_warn_unused size_t convert_valid_utf16le_to_utf32( */ simdutf_warn_unused size_t convert_valid_utf16be_to_utf32( const char16_t *input, size_t length, char32_t *utf32_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf16be_to_utf32(std::span<const char16_t> valid_utf16_input, + std::span<char32_t> utf32_output) noexcept { + return convert_valid_utf16be_to_utf32( + valid_utf16_input.data(), valid_utf16_input.size(), utf32_output.data()); +} +#endif -/* +/** * Compute the number of bytes that this UTF-16LE/BE string would require in * Latin1 format. * @@ -2174,6 +2763,13 @@ simdutf_warn_unused size_t latin1_length_from_utf16(size_t length) noexcept; */ simdutf_warn_unused size_t utf8_length_from_utf16(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf8_length_from_utf16(std::span<const char16_t> valid_utf16_input) noexcept { + return utf8_length_from_utf16(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Compute the number of bytes that this UTF-16LE string would require in UTF-8 @@ -2188,6 +2784,13 @@ simdutf_warn_unused size_t utf8_length_from_utf16(const char16_t *input, */ simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf8_length_from_utf16le(std::span<const char16_t> valid_utf16_input) noexcept { + return utf8_length_from_utf16le(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Compute the number of bytes that this UTF-16BE string would require in UTF-8 @@ -2202,6 +2805,13 @@ simdutf_warn_unused size_t utf8_length_from_utf16le(const char16_t *input, */ simdutf_warn_unused size_t utf8_length_from_utf16be(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf8_length_from_utf16be(std::span<const char16_t> valid_utf16_input) noexcept { + return utf8_length_from_utf16be(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-8 string. @@ -2219,6 +2829,14 @@ simdutf_warn_unused size_t utf8_length_from_utf16be(const char16_t *input, simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf32_to_utf8( + std::span<const char32_t> utf32_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf32_to_utf8(utf32_input.data(), utf32_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-8 string and stop on error. @@ -2238,6 +2856,16 @@ simdutf_warn_unused size_t convert_utf32_to_utf8(const char32_t *input, */ simdutf_warn_unused result convert_utf32_to_utf8_with_errors( const char32_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf32_to_utf8_with_errors( + std::span<const char32_t> utf32_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_utf32_to_utf8_with_errors( + utf32_input.data(), utf32_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Convert valid UTF-32 string into UTF-8 string. @@ -2254,6 +2882,15 @@ simdutf_warn_unused result convert_utf32_to_utf8_with_errors( */ simdutf_warn_unused size_t convert_valid_utf32_to_utf8( const char32_t *input, size_t length, char *utf8_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf32_to_utf8( + std::span<const char32_t> valid_utf32_input, + detail::output_span_of_byte_like auto &&utf8_output) noexcept { + return convert_valid_utf32_to_utf8( + valid_utf32_input.data(), valid_utf32_input.size(), + reinterpret_cast<char *>(utf8_output.data())); +} +#endif /** * Using native endianness, convert possibly broken UTF-32 string into a UTF-16 @@ -2271,6 +2908,14 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf8( */ simdutf_warn_unused size_t convert_utf32_to_utf16( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf32_to_utf16(std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16(utf32_input.data(), utf32_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-16LE string. @@ -2287,6 +2932,14 @@ simdutf_warn_unused size_t convert_utf32_to_utf16( */ simdutf_warn_unused size_t convert_utf32_to_utf16le( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf32_to_utf16le(std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16le(utf32_input.data(), utf32_input.size(), + utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-32 string into Latin1 string. @@ -2304,6 +2957,15 @@ simdutf_warn_unused size_t convert_utf32_to_utf16le( */ simdutf_warn_unused size_t convert_utf32_to_latin1( const char32_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_utf32_to_latin1( + std::span<char32_t> utf32_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf32_to_latin1( + utf32_input.data(), utf32_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-32 string into Latin1 string and stop on error. @@ -2324,6 +2986,16 @@ simdutf_warn_unused size_t convert_utf32_to_latin1( */ simdutf_warn_unused result convert_utf32_to_latin1_with_errors( const char32_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf32_to_latin1_with_errors( + std::span<char32_t> utf32_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_utf32_to_latin1_with_errors( + utf32_input.data(), utf32_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert valid UTF-32 string into Latin1 string. @@ -2347,6 +3019,15 @@ simdutf_warn_unused result convert_utf32_to_latin1_with_errors( */ simdutf_warn_unused size_t convert_valid_utf32_to_latin1( const char32_t *input, size_t length, char *latin1_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t convert_valid_utf32_to_latin1( + std::span<char32_t> valid_utf32_input, + detail::output_span_of_byte_like auto &&latin1_output) noexcept { + return convert_valid_utf32_to_latin1( + valid_utf32_input.data(), valid_utf32_input.size(), + reinterpret_cast<char *>(latin1_output.data())); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-16BE string. @@ -2363,6 +3044,14 @@ simdutf_warn_unused size_t convert_valid_utf32_to_latin1( */ simdutf_warn_unused size_t convert_utf32_to_utf16be( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_utf32_to_utf16be(std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16be(utf32_input.data(), utf32_input.size(), + utf16_output.data()); +} +#endif /** * Using native endianness, convert possibly broken UTF-32 string into UTF-16 @@ -2383,6 +3072,14 @@ simdutf_warn_unused size_t convert_utf32_to_utf16be( */ simdutf_warn_unused result convert_utf32_to_utf16_with_errors( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf32_to_utf16_with_errors(std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16_with_errors( + utf32_input.data(), utf32_input.size(), utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-16LE string and stop on error. @@ -2402,6 +3099,15 @@ simdutf_warn_unused result convert_utf32_to_utf16_with_errors( */ simdutf_warn_unused result convert_utf32_to_utf16le_with_errors( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf32_to_utf16le_with_errors( + std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16le_with_errors( + utf32_input.data(), utf32_input.size(), utf16_output.data()); +} +#endif /** * Convert possibly broken UTF-32 string into UTF-16BE string and stop on error. @@ -2421,6 +3127,15 @@ simdutf_warn_unused result convert_utf32_to_utf16le_with_errors( */ simdutf_warn_unused result convert_utf32_to_utf16be_with_errors( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result +convert_utf32_to_utf16be_with_errors( + std::span<const char32_t> utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_utf32_to_utf16be_with_errors( + utf32_input.data(), utf32_input.size(), utf16_output.data()); +} +#endif /** * Using native endianness, convert valid UTF-32 string into a UTF-16 string. @@ -2437,6 +3152,14 @@ simdutf_warn_unused result convert_utf32_to_utf16be_with_errors( */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf32_to_utf16(std::span<const char32_t> valid_utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf32_to_utf16( + valid_utf32_input.data(), valid_utf32_input.size(), utf16_output.data()); +} +#endif /** * Convert valid UTF-32 string into UTF-16LE string. @@ -2453,6 +3176,14 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16( */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16le( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf32_to_utf16le(std::span<const char32_t> valid_utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf32_to_utf16le( + valid_utf32_input.data(), valid_utf32_input.size(), utf16_output.data()); +} +#endif /** * Convert valid UTF-32 string into UTF-16BE string. @@ -2469,6 +3200,14 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16le( */ simdutf_warn_unused size_t convert_valid_utf32_to_utf16be( const char32_t *input, size_t length, char16_t *utf16_buffer) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +convert_valid_utf32_to_utf16be(std::span<const char32_t> valid_utf32_input, + std::span<char16_t> utf16_output) noexcept { + return convert_valid_utf32_to_utf16be( + valid_utf32_input.data(), valid_utf32_input.size(), utf16_output.data()); +} +#endif /** * Change the endianness of the input. Can be used to go from UTF-16LE to @@ -2485,6 +3224,14 @@ simdutf_warn_unused size_t convert_valid_utf32_to_utf16be( */ void change_endianness_utf16(const char16_t *input, size_t length, char16_t *output) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline void +change_endianness_utf16(std::span<const char16_t> utf16_input, + std::span<char16_t> utf16_output) noexcept { + return change_endianness_utf16(utf16_input.data(), utf16_input.size(), + utf16_output.data()); +} +#endif /** * Compute the number of bytes that this UTF-32 string would require in UTF-8 @@ -2499,6 +3246,13 @@ void change_endianness_utf16(const char16_t *input, size_t length, */ simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf8_length_from_utf32(std::span<const char32_t> valid_utf32_input) noexcept { + return utf8_length_from_utf32(valid_utf32_input.data(), + valid_utf32_input.size()); +} +#endif /** * Compute the number of two-byte code units that this UTF-32 string would @@ -2513,6 +3267,13 @@ simdutf_warn_unused size_t utf8_length_from_utf32(const char32_t *input, */ simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf16_length_from_utf32(std::span<const char32_t> valid_utf32_input) noexcept { + return utf16_length_from_utf32(valid_utf32_input.data(), + valid_utf32_input.size()); +} +#endif /** * Using native endianness; Compute the number of bytes that this UTF-16 @@ -2531,6 +3292,13 @@ simdutf_warn_unused size_t utf16_length_from_utf32(const char32_t *input, */ simdutf_warn_unused size_t utf32_length_from_utf16(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +utf32_length_from_utf16(std::span<const char16_t> valid_utf16_input) noexcept { + return utf32_length_from_utf16(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Compute the number of bytes that this UTF-16LE string would require in UTF-32 @@ -2549,6 +3317,13 @@ simdutf_warn_unused size_t utf32_length_from_utf16(const char16_t *input, */ simdutf_warn_unused size_t utf32_length_from_utf16le(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t utf32_length_from_utf16le( + std::span<const char16_t> valid_utf16_input) noexcept { + return utf32_length_from_utf16le(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Compute the number of bytes that this UTF-16BE string would require in UTF-32 @@ -2567,6 +3342,13 @@ simdutf_warn_unused size_t utf32_length_from_utf16le(const char16_t *input, */ simdutf_warn_unused size_t utf32_length_from_utf16be(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t utf32_length_from_utf16be( + std::span<const char16_t> valid_utf16_input) noexcept { + return utf32_length_from_utf16be(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Count the number of code points (characters) in the string assuming that @@ -2584,6 +3366,12 @@ simdutf_warn_unused size_t utf32_length_from_utf16be(const char16_t *input, */ simdutf_warn_unused size_t count_utf16(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +count_utf16(std::span<const char16_t> valid_utf16_input) noexcept { + return count_utf16(valid_utf16_input.data(), valid_utf16_input.size()); +} +#endif /** * Count the number of code points (characters) in the string assuming that @@ -2601,6 +3389,12 @@ simdutf_warn_unused size_t count_utf16(const char16_t *input, */ simdutf_warn_unused size_t count_utf16le(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +count_utf16le(std::span<const char16_t> valid_utf16_input) noexcept { + return count_utf16le(valid_utf16_input.data(), valid_utf16_input.size()); +} +#endif /** * Count the number of code points (characters) in the string assuming that @@ -2618,6 +3412,12 @@ simdutf_warn_unused size_t count_utf16le(const char16_t *input, */ simdutf_warn_unused size_t count_utf16be(const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +count_utf16be(std::span<const char16_t> valid_utf16_input) noexcept { + return count_utf16be(valid_utf16_input.data(), valid_utf16_input.size()); +} +#endif /** * Count the number of code points (characters) in the string assuming that @@ -2633,6 +3433,13 @@ simdutf_warn_unused size_t count_utf16be(const char16_t *input, */ simdutf_warn_unused size_t count_utf8(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t count_utf8( + const detail::input_span_of_byte_like auto &valid_utf8_input) noexcept { + return count_utf8(reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size()); +} +#endif /** * Given a valid UTF-8 string having a possibly truncated last character, @@ -2649,6 +3456,14 @@ simdutf_warn_unused size_t count_utf8(const char *input, * @return the length of the string in bytes, possibly shorter by 1 to 3 bytes */ simdutf_warn_unused size_t trim_partial_utf8(const char *input, size_t length); +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t trim_partial_utf8( + const detail::input_span_of_byte_like auto &valid_utf8_input) noexcept { + return trim_partial_utf8( + reinterpret_cast<const char *>(valid_utf8_input.data()), + valid_utf8_input.size()); +} +#endif /** * Given a valid UTF-16BE string having a possibly truncated last character, @@ -2666,6 +3481,13 @@ simdutf_warn_unused size_t trim_partial_utf8(const char *input, size_t length); */ simdutf_warn_unused size_t trim_partial_utf16be(const char16_t *input, size_t length); +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +trim_partial_utf16be(std::span<const char16_t> valid_utf16_input) noexcept { + return trim_partial_utf16be(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Given a valid UTF-16LE string having a possibly truncated last character, @@ -2683,6 +3505,13 @@ simdutf_warn_unused size_t trim_partial_utf16be(const char16_t *input, */ simdutf_warn_unused size_t trim_partial_utf16le(const char16_t *input, size_t length); +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +trim_partial_utf16le(std::span<const char16_t> valid_utf16_input) noexcept { + return trim_partial_utf16le(valid_utf16_input.data(), + valid_utf16_input.size()); +} +#endif /** * Given a valid UTF-16 string having a possibly truncated last character, @@ -2700,8 +3529,17 @@ simdutf_warn_unused size_t trim_partial_utf16le(const char16_t *input, */ simdutf_warn_unused size_t trim_partial_utf16(const char16_t *input, size_t length); +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +trim_partial_utf16(std::span<const char16_t> valid_utf16_input) noexcept { + return trim_partial_utf16(valid_utf16_input.data(), valid_utf16_input.size()); +} +#endif // base64_options are used to specify the base64 encoding options. +// ASCII spaces are ' ', '\t', '\n', '\r', '\f' +// garbage characters are characters that are not part of the base64 alphabet +// nor ASCII spaces. enum base64_options : uint64_t { base64_default = 0, /* standard base64 format (with padding) */ base64_url = 1, /* base64url format (no padding) */ @@ -2711,6 +3549,10 @@ enum base64_options : uint64_t { base64_reverse_padding, /* standard base64 format without padding */ base64_url_with_padding = base64_url | base64_reverse_padding, /* base64url with padding */ + base64_default_accept_garbage = + 4, /* standard base64 format accepting garbage characters */ + base64_url_accept_garbage = + 5, /* base64url format accepting garbage characters */ }; // last_chunk_handling_options are used to specify the handling of the last @@ -2735,6 +3577,14 @@ enum last_chunk_handling_options : uint64_t { */ simdutf_warn_unused size_t maximal_binary_length_from_base64(const char *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +maximal_binary_length_from_base64( + const detail::input_span_of_byte_like auto &input) noexcept { + return maximal_binary_length_from_base64( + reinterpret_cast<const char *>(input.data()), input.size()); +} +#endif /** * Provide the maximal binary length in bytes given the base64 input. @@ -2748,6 +3598,12 @@ maximal_binary_length_from_base64(const char *input, size_t length) noexcept; */ simdutf_warn_unused size_t maximal_binary_length_from_base64( const char16_t *input, size_t length) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +maximal_binary_length_from_base64(std::span<const char16_t> input) noexcept { + return maximal_binary_length_from_base64(input.data(), input.size()); +} +#endif /** * Convert a base64 input to a binary output. @@ -2807,6 +3663,18 @@ simdutf_warn_unused result base64_to_binary( const char *input, size_t length, char *output, base64_options options = base64_default, last_chunk_handling_options last_chunk_options = loose) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result base64_to_binary( + const detail::input_span_of_byte_like auto &input, + detail::output_span_of_byte_like auto &&binary_output, + base64_options options = base64_default, + last_chunk_handling_options last_chunk_options = loose) noexcept { + return base64_to_binary(reinterpret_cast<const char *>(input.data()), + input.size(), + reinterpret_cast<char *>(binary_output.data()), + options, last_chunk_options); +} +#endif /** * Provide the base64 length in bytes given the length of a binary input. @@ -2840,6 +3708,16 @@ simdutf_warn_unused size_t base64_length_from_binary( */ size_t binary_to_base64(const char *input, size_t length, char *output, base64_options options = base64_default) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused size_t +binary_to_base64(const detail::input_span_of_byte_like auto &input, + detail::output_span_of_byte_like auto &&binary_output, + base64_options options = base64_default) noexcept { + return binary_to_base64( + reinterpret_cast<const char *>(input.data()), input.size(), + reinterpret_cast<char *>(binary_output.data()), options); +} +#endif /** * Convert a base64 input to a binary output. @@ -2902,6 +3780,17 @@ base64_to_binary(const char16_t *input, size_t length, char *output, base64_options options = base64_default, last_chunk_handling_options last_chunk_options = last_chunk_handling_options::loose) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result base64_to_binary( + std::span<const char16_t> input, + detail::output_span_of_byte_like auto &&binary_output, + base64_options options = base64_default, + last_chunk_handling_options last_chunk_options = loose) noexcept { + return base64_to_binary(input.data(), input.size(), + reinterpret_cast<char *>(binary_output.data()), + options, last_chunk_options); +} +#endif /** * Convert a base64 input to a binary output. @@ -2969,11 +3858,43 @@ base64_to_binary_safe(const char *input, size_t length, char *output, size_t &outlen, base64_options options = base64_default, last_chunk_handling_options last_chunk_options = last_chunk_handling_options::loose) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result base64_to_binary_safe( + const detail::input_span_of_byte_like auto &input, + detail::output_span_of_byte_like auto &&binary_output, + base64_options options = base64_default, + last_chunk_handling_options last_chunk_options = loose) noexcept { + // we can't write the outlen to the provided output span, the user will have + // to pick it up from the returned value instead (assuming success). we still + // get the benefit of providing info of how long the output buffer is. + size_t outlen = binary_output.size(); + return base64_to_binary_safe(reinterpret_cast<const char *>(input.data()), + input.size(), + reinterpret_cast<char *>(binary_output.data()), + outlen, options, last_chunk_options); +} +#endif + simdutf_warn_unused result base64_to_binary_safe(const char16_t *input, size_t length, char *output, size_t &outlen, base64_options options = base64_default, last_chunk_handling_options last_chunk_options = last_chunk_handling_options::loose) noexcept; +#if SIMDUTF_SPAN +simdutf_really_inline simdutf_warn_unused result base64_to_binary_safe( + std::span<const char16_t> input, + detail::output_span_of_byte_like auto &&binary_output, + base64_options options = base64_default, + last_chunk_handling_options last_chunk_options = loose) noexcept { + // we can't write the outlen to the provided output span, the user will have + // to pick it up from the returned value instead (assuming success). we still + // get the benefit of providing info of how long the output buffer is. + size_t outlen = binary_output.size(); + return base64_to_binary_safe(input.data(), input.size(), + reinterpret_cast<char *>(binary_output.data()), + outlen, options, last_chunk_options); +} +#endif /** * An implementation of simdutf for a particular CPU architecture. @@ -4236,7 +5157,7 @@ class implementation { simdutf_warn_unused virtual size_t latin1_length_from_utf8(const char *input, size_t length) const noexcept = 0; - /* + /** * Compute the number of bytes that this UTF-16LE/BE string would require in * Latin1 format. * @@ -4282,7 +5203,7 @@ class implementation { simdutf_warn_unused virtual size_t utf32_length_from_latin1(size_t length) const noexcept = 0; - /* + /** * Compute the number of bytes that this UTF-16LE string would require in * UTF-32 format. * @@ -4303,7 +5224,7 @@ class implementation { utf32_length_from_utf16le(const char16_t *input, size_t length) const noexcept = 0; - /* + /** * Compute the number of bytes that this UTF-16BE string would require in * UTF-32 format. * diff --git a/deps/sqlite/sqlite.gyp b/deps/sqlite/sqlite.gyp index c3ecef214ad004..c2ba4da2259fa1 100644 --- a/deps/sqlite/sqlite.gyp +++ b/deps/sqlite/sqlite.gyp @@ -13,6 +13,8 @@ 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden }, 'defines': [ + 'SQLITE_DEFAULT_MEMSTATUS=0', + 'SQLITE_ENABLE_MATH_FUNCTIONS', 'SQLITE_ENABLE_SESSION', 'SQLITE_ENABLE_PREUPDATE_HOOK' ], diff --git a/deps/sqlite/unofficial.gni b/deps/sqlite/unofficial.gni index b26e1335eac339..a4fb26e70560f3 100644 --- a/deps/sqlite/unofficial.gni +++ b/deps/sqlite/unofficial.gni @@ -8,6 +8,7 @@ template("sqlite_gn_build") { config("sqlite_config") { include_dirs = [ "." ] defines = [ + "SQLITE_ENABLE_MATH_FUNCTIONS", "SQLITE_ENABLE_SESSION", "SQLITE_ENABLE_PREUPDATE_HOOK", ] diff --git a/deps/uv/unofficial.gni b/deps/uv/unofficial.gni index 7a73f891e3fc32..348d2f0703e47c 100644 --- a/deps/uv/unofficial.gni +++ b/deps/uv/unofficial.gni @@ -7,6 +7,11 @@ template("uv_gn_build") { config("uv_external_config") { include_dirs = [ "include" ] + if (is_clang || !is_win) { + cflags_cc = [ + "-Wno-deprecated-pragma", # for using ENODATA in errno.h + ] + } } config("uv_internal_config") { diff --git a/doc/api/assert.md b/doc/api/assert.md index 336fcd8cc5ffb9..50592004136b70 100644 --- a/doc/api/assert.md +++ b/doc/api/assert.md @@ -799,8 +799,10 @@ are recursively evaluated also by the following rules. * [`Map`][] keys and [`Set`][] items are compared unordered. * Recursion stops when both sides differ or both sides encounter a circular reference. -* [`WeakMap`][] and [`WeakSet`][] comparison does not rely on their values. See - below for further details. +* [`WeakMap`][] and [`WeakSet`][] instances are **not** compared structurally. + They are only equal if they reference the same object. Any comparison between + different `WeakMap` or `WeakSet` instances will result in inequality, + even if they contain the same entries. * [`RegExp`][] lastIndex, flags, and source are always compared, even if these are not enumerable properties. @@ -877,23 +879,41 @@ assert.deepStrictEqual({ [symbol1]: 1 }, { [symbol2]: 1 }); // } const weakMap1 = new WeakMap(); -const weakMap2 = new WeakMap([[{}, {}]]); -const weakMap3 = new WeakMap(); -weakMap3.unequal = true; +const weakMap2 = new WeakMap(); +const obj = {}; +weakMap1.set(obj, 'value'); +weakMap2.set(obj, 'value'); + +// Comparing different instances fails, even with same contents assert.deepStrictEqual(weakMap1, weakMap2); -// OK, because it is impossible to compare the entries +// AssertionError: Values have same structure but are not reference-equal: +// +// WeakMap { +// <items unknown> +// } -// Fails because weakMap3 has a property that weakMap1 does not contain: -assert.deepStrictEqual(weakMap1, weakMap3); -// AssertionError: Expected inputs to be strictly deep-equal: +// Comparing the same instance to itself succeeds +assert.deepStrictEqual(weakMap1, weakMap1); +// OK + +const weakSet1 = new WeakSet(); +const weakSet2 = new WeakSet(); +weakSet1.add(obj); +weakSet2.add(obj); + +// Comparing different instances fails, even with same contents +assert.deepStrictEqual(weakSet1, weakSet2); +// AssertionError: Values have same structure but are not reference-equal: // + actual - expected // -// WeakMap { -// + [items unknown] -// - [items unknown], -// - unequal: true -// } +// WeakSet { +// <items unknown> +// } + +// Comparing the same instance to itself succeeds +assert.deepStrictEqual(weakSet1, weakSet1); +// OK ``` ```cjs @@ -969,23 +989,41 @@ assert.deepStrictEqual({ [symbol1]: 1 }, { [symbol2]: 1 }); // } const weakMap1 = new WeakMap(); -const weakMap2 = new WeakMap([[{}, {}]]); -const weakMap3 = new WeakMap(); -weakMap3.unequal = true; +const weakMap2 = new WeakMap(); +const obj = {}; +weakMap1.set(obj, 'value'); +weakMap2.set(obj, 'value'); + +// Comparing different instances fails, even with same contents assert.deepStrictEqual(weakMap1, weakMap2); -// OK, because it is impossible to compare the entries +// AssertionError: Values have same structure but are not reference-equal: +// +// WeakMap { +// <items unknown> +// } -// Fails because weakMap3 has a property that weakMap1 does not contain: -assert.deepStrictEqual(weakMap1, weakMap3); -// AssertionError: Expected inputs to be strictly deep-equal: +// Comparing the same instance to itself succeeds +assert.deepStrictEqual(weakMap1, weakMap1); +// OK + +const weakSet1 = new WeakSet(); +const weakSet2 = new WeakSet(); +weakSet1.add(obj); +weakSet2.add(obj); + +// Comparing different instances fails, even with same contents +assert.deepStrictEqual(weakSet1, weakSet2); +// AssertionError: Values have same structure but are not reference-equal: // + actual - expected // -// WeakMap { -// + [items unknown] -// - [items unknown], -// - unequal: true -// } +// WeakSet { +// <items unknown> +// } + +// Comparing the same instance to itself succeeds +assert.deepStrictEqual(weakSet1, weakSet1); +// OK ``` If the values are not equal, an [`AssertionError`][] is thrown with a `message` diff --git a/doc/api/child_process.md b/doc/api/child_process.md index 7a9345416e0545..0a9c0e3e326cc3 100644 --- a/doc/api/child_process.md +++ b/doc/api/child_process.md @@ -536,7 +536,7 @@ changes: * `options` {Object} * `cwd` {string|URL} Current working directory of the child process. * `detached` {boolean} Prepare child process to run independently of its - parent process. Specific behavior depends on the platform, see + parent process. Specific behavior depends on the platform (see [`options.detached`][]). * `env` {Object} Environment key-value pairs. **Default:** `process.env`. * `execPath` {string} Executable used to create the child process. @@ -688,7 +688,7 @@ changes: * `stdio` {Array|string} Child's stdio configuration (see [`options.stdio`][`stdio`]). * `detached` {boolean} Prepare child process to run independently of - its parent process. Specific behavior depends on the platform, see + its parent process. Specific behavior depends on the platform (see [`options.detached`][]). * `uid` {number} Sets the user identity of the process (see setuid(2)). * `gid` {number} Sets the group identity of the process (see setgid(2)). diff --git a/doc/api/cli.md b/doc/api/cli.md index 770d2ca4fcf003..8105592764abca 100644 --- a/doc/api/cli.md +++ b/doc/api/cli.md @@ -174,19 +174,18 @@ node:internal/child_process:388 ^ Error: Access to this API has been restricted at ChildProcess.spawn (node:internal/child_process:388:28) - at Object.spawn (node:child_process:723:9) - at Object.<anonymous> (/home/index.js:3:14) - at Module._compile (node:internal/modules/cjs/loader:1120:14) - at Module._extensions..js (node:internal/modules/cjs/loader:1174:10) - at Module.load (node:internal/modules/cjs/loader:998:32) - at Module._load (node:internal/modules/cjs/loader:839:12) - at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:17:47 { code: 'ERR_ACCESS_DENIED', permission: 'ChildProcess' } ``` +Unlike `child_process.spawn`, the `child_process.fork` API copies the execution +arguments from the parent process. This means that if you start Node.js with the +Permission Model enabled and include the `--allow-child-process` flag, calling +`child_process.fork()` will propagate all Permission Model flags to the child +process. + ### `--allow-fs-read` <!-- YAML @@ -567,6 +566,17 @@ Disable the `Object.prototype.__proto__` property. If `mode` is `delete`, the property is removed entirely. If `mode` is `throw`, accesses to the property throw an exception with the code `ERR_PROTO_ACCESS`. +### `--disable-sigusr1` + +<!-- YAML +added: v22.14.0 +--> + +> Stability: 1.2 - Release candidate + +Disable the ability of starting a debugging session by sending a +`SIGUSR1` signal to the process. + ### `--disable-warning=code-or-type` > Stability: 1.1 - Active development @@ -952,6 +962,10 @@ Previously gated the entire `import.meta.resolve` feature. <!-- YAML added: v8.8.0 changes: + - version: v22.13.1 + pr-url: https://github.com/nodejs-private/node-private/pull/629 + description: Using this feature with the permission model enabled requires + passing `--allow-worker`. - version: v12.11.1 pr-url: https://github.com/nodejs/node/pull/29752 description: This flag was renamed from `--loader` to @@ -965,6 +979,8 @@ changes: Specify the `module` containing exported [module customization hooks][]. `module` may be any string accepted as an [`import` specifier][]. +This feature requires `--allow-worker` if used with the [Permission Model][]. + ### `--experimental-network-inspection` <!-- YAML @@ -1072,6 +1088,11 @@ present. See the [test runner execution model][] section for more information. <!-- YAML added: v22.3.0 +changes: + - version: v22.13.1 + pr-url: https://github.com/nodejs-private/node-private/pull/629 + description: Using this feature with the permission model enabled requires + passing `--allow-worker`. --> > Stability: 1.0 - Early development @@ -1393,8 +1414,23 @@ added: v12.0.0 --> This configures Node.js to interpret `--eval` or `STDIN` input as CommonJS or -as an ES module. Valid values are `"commonjs"` or `"module"`. The default is -`"commonjs"` unless [`--experimental-default-type=module`][] is used. +as an ES module. Valid values are `"commonjs"`, `"module"`, `"module-typescript"` and `"commonjs-typescript"`. +The `"-typescript"` values are available only in combination with the flag `--experimental-strip-types`. +The default is `"commonjs"` unless [`--experimental-default-type=module`][] is used. +If `--experimental-strip-types` is enabled and `--input-type` is not provided, +Node.js will try to detect the syntax with the following steps: + +1. Run the input as CommonJS. +2. If step 1 fails, run the input as an ES module. +3. If step 2 fails with a SyntaxError, strip the types. +4. If step 3 fails with an error code [`ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX`][] + or [`ERR_INVALID_TYPESCRIPT_SYNTAX`][], + throw the error from step 2, including the TypeScript error in the message, + else run as CommonJS. +5. If step 4 fails, run the input as an ES module. + +To avoid the delay of multiple syntax detection passes, the `--input-type=type` flag can be used to specify +how the `--eval` input should be interpreted. The REPL does not support this option. Usage of `--input-type=module` with [`--print`][] will throw an error, as `--print` does not support ES module @@ -1447,6 +1483,7 @@ added: v7.6.0 Set the `host:port` to be used when the inspector is activated. Useful when activating the inspector by sending the `SIGUSR1` signal. +Except when [`--disable-sigusr1`][] is passed. Default host is `127.0.0.1`. If port `0` is specified, a random available port will be used. @@ -3086,6 +3123,7 @@ one is included in the list below. * `--conditions`, `-C` * `--diagnostic-dir` * `--disable-proto` +* `--disable-sigusr1` * `--disable-warning` * `--disable-wasm-trap-handler` * `--dns-result-order` @@ -3671,6 +3709,7 @@ node --stack-trace-limit=12 -p -e "Error.stackTraceLimit" # prints 12 [`--build-snapshot`]: #--build-snapshot [`--cpu-prof-dir`]: #--cpu-prof-dir [`--diagnostic-dir`]: #--diagnostic-dirdirectory +[`--disable-sigusr1`]: #--disable-sigusr1 [`--env-file-if-exists`]: #--env-file-if-existsconfig [`--env-file`]: #--env-fileconfig [`--experimental-default-type=module`]: #--experimental-default-typetype @@ -3688,6 +3727,8 @@ node --stack-trace-limit=12 -p -e "Error.stackTraceLimit" # prints 12 [`Atomics.wait()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Atomics/wait [`Buffer`]: buffer.md#class-buffer [`CRYPTO_secure_malloc_init`]: https://www.openssl.org/docs/man3.0/man3/CRYPTO_secure_malloc_init.html +[`ERR_INVALID_TYPESCRIPT_SYNTAX`]: errors.md#err_invalid_typescript_syntax +[`ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX`]: errors.md#err_unsupported_typescript_syntax [`NODE_OPTIONS`]: #node_optionsoptions [`NO_COLOR`]: https://no-color.org [`SlowBuffer`]: buffer.md#class-slowbuffer diff --git a/doc/api/crypto.md b/doc/api/crypto.md index 886427d5880305..33c6283171fc2b 100644 --- a/doc/api/crypto.md +++ b/doc/api/crypto.md @@ -3933,6 +3933,13 @@ By default, the prime is encoded as a big-endian sequence of octets in an {ArrayBuffer}. If the `bigint` option is `true`, then a {bigint} is provided. +The `size` of the prime will have a direct impact on how long it takes to +generate the prime. The larger the size, the longer it will take. Because +we use OpenSSL's `BN_generate_prime_ex` function, which provides only +minimal control over our ability to interrupt the generation process, +it is not recommended to generate overly large primes, as doing so may make +the process unresponsive. + ### `crypto.generatePrimeSync(size[, options])` <!-- YAML @@ -3974,6 +3981,13 @@ By default, the prime is encoded as a big-endian sequence of octets in an {ArrayBuffer}. If the `bigint` option is `true`, then a {bigint} is provided. +The `size` of the prime will have a direct impact on how long it takes to +generate the prime. The larger the size, the longer it will take. Because +we use OpenSSL's `BN_generate_prime_ex` function, which provides only +minimal control over our ability to interrupt the generation process, +it is not recommended to generate overly large primes, as doing so may make +the process unresponsive. + ### `crypto.getCipherInfo(nameOrNid[, options])` <!-- YAML @@ -5983,7 +5997,7 @@ See the [list of SSL OP Flags][] for details. </tr> <tr> <td><code>ENGINE_METHOD_PKEY_METHS</code></td> - <td>Limit engine usage to PKEY_METHDS</td> + <td>Limit engine usage to PKEY_METHS</td> </tr> <tr> <td><code>ENGINE_METHOD_PKEY_ASN1_METHS</code></td> diff --git a/doc/api/diagnostics_channel.md b/doc/api/diagnostics_channel.md index 9b4a85f3c0bda6..e6531cba8479ed 100644 --- a/doc/api/diagnostics_channel.md +++ b/doc/api/diagnostics_channel.md @@ -1120,6 +1120,43 @@ While the diagnostics\_channel API is now considered stable, the built-in channels currently available are not. Each channel must be declared stable independently. +#### Console + +`console.log` + +* `args` {any\[]} + +Emitted when `console.log()` is called. Receives and array of the arguments +passed to `console.log()`. + +`console.info` + +* `args` {any\[]} + +Emitted when `console.info()` is called. Receives and array of the arguments +passed to `console.info()`. + +`console.debug` + +* `args` {any\[]} + +Emitted when `console.debug()` is called. Receives and array of the arguments +passed to `console.debug()`. + +`console.warn` + +* `args` {any\[]} + +Emitted when `console.warn()` is called. Receives and array of the arguments +passed to `console.warn()`. + +`console.error` + +* `args` {any\[]} + +Emitted when `console.error()` is called. Receives and array of the arguments +passed to `console.error()`. + #### HTTP `http.client.request.created` diff --git a/doc/api/errors.md b/doc/api/errors.md index affb78e84ccbca..0f38ed63b264de 100644 --- a/doc/api/errors.md +++ b/doc/api/errors.md @@ -2106,11 +2106,13 @@ does not consist of exactly two elements. <!-- YAML added: v22.10.0 +changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56610 + description: This error is no longer thrown on valid yet unsupported syntax. --> -The provided TypeScript syntax is not valid or unsupported. -This could happen when using TypeScript syntax that requires -transformation with [type-stripping][]. +The provided TypeScript syntax is not valid. <a id="ERR_INVALID_URI"></a> @@ -2816,25 +2818,6 @@ An unspecified or non-specific system error has occurred within the Node.js process. The error object will have an `err.info` object property with additional details. -<a id="ERR_TAP_LEXER_ERROR"></a> - -### `ERR_TAP_LEXER_ERROR` - -An error representing a failing lexer state. - -<a id="ERR_TAP_PARSER_ERROR"></a> - -### `ERR_TAP_PARSER_ERROR` - -An error representing a failing parser state. Additional information about -the token causing the error is available via the `cause` property. - -<a id="ERR_TAP_VALIDATION_ERROR"></a> - -### `ERR_TAP_VALIDATION_ERROR` - -This error represents a failed TAP validation. - <a id="ERR_TEST_FAILURE"></a> ### `ERR_TEST_FAILURE` @@ -3122,6 +3105,18 @@ try { } ``` +<a id="ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX"></a> + +### `ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX` + +<!-- YAML +added: v22.14.0 +--> + +The provided TypeScript syntax is unsupported. +This could happen when using TypeScript syntax that requires +transformation with [type-stripping][]. + <a id="ERR_USE_AFTER_CLOSE"></a> ### `ERR_USE_AFTER_CLOSE` @@ -3847,6 +3842,25 @@ removed: v10.0.0 Used when an attempt is made to use a readable stream that has not implemented [`readable._read()`][]. +<a id="ERR_TAP_LEXER_ERROR"></a> + +### `ERR_TAP_LEXER_ERROR` + +An error representing a failing lexer state. + +<a id="ERR_TAP_PARSER_ERROR"></a> + +### `ERR_TAP_PARSER_ERROR` + +An error representing a failing parser state. Additional information about +the token causing the error is available via the `cause` property. + +<a id="ERR_TAP_VALIDATION_ERROR"></a> + +### `ERR_TAP_VALIDATION_ERROR` + +This error represents a failed TAP validation. + <a id="ERR_TLS_RENEGOTIATION_FAILED"></a> ### `ERR_TLS_RENEGOTIATION_FAILED` diff --git a/doc/api/fs.md b/doc/api/fs.md index 0b85ad82bf274d..c3e55aa2644439 100644 --- a/doc/api/fs.md +++ b/doc/api/fs.md @@ -1074,6 +1074,9 @@ behavior is similar to `cp dir1/ dir2/`. <!-- YAML added: v22.0.0 changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56489 + description: Add support for `exclude` option to accept glob patterns. - version: v22.2.0 pr-url: https://github.com/nodejs/node/pull/52837 description: Add support for `withFileTypes` as an option. @@ -1084,7 +1087,8 @@ changes: * `pattern` {string|string\[]} * `options` {Object} * `cwd` {string} current working directory. **Default:** `process.cwd()` - * `exclude` {Function} Function to filter out files/directories. Return + * `exclude` {Function|string\[]} Function to filter out files/directories or a + list of glob patterns to be excluded. If a function is provided, return `true` to exclude the item, `false` to include it. **Default:** `undefined`. * `withFileTypes` {boolean} `true` if the glob should return paths as Dirents, `false` otherwise. **Default:** `false`. @@ -3120,6 +3124,9 @@ descriptor. See [`fs.utimes()`][]. <!-- YAML added: v22.0.0 changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56489 + description: Add support for `exclude` option to accept glob patterns. - version: v22.2.0 pr-url: https://github.com/nodejs/node/pull/52837 description: Add support for `withFileTypes` as an option. @@ -3131,7 +3138,8 @@ changes: * `options` {Object} * `cwd` {string} current working directory. **Default:** `process.cwd()` - * `exclude` {Function} Function to filter out files/directories. Return + * `exclude` {Function|string\[]} Function to filter out files/directories or a + list of glob patterns to be excluded. If a function is provided, return `true` to exclude the item, `false` to include it. **Default:** `undefined`. * `withFileTypes` {boolean} `true` if the glob should return paths as Dirents, `false` otherwise. **Default:** `false`. @@ -5656,6 +5664,9 @@ Synchronous version of [`fs.futimes()`][]. Returns `undefined`. <!-- YAML added: v22.0.0 changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56489 + description: Add support for `exclude` option to accept glob patterns. - version: v22.2.0 pr-url: https://github.com/nodejs/node/pull/52837 description: Add support for `withFileTypes` as an option. @@ -5666,7 +5677,8 @@ changes: * `pattern` {string|string\[]} * `options` {Object} * `cwd` {string} current working directory. **Default:** `process.cwd()` - * `exclude` {Function} Function to filter out files/directories. Return + * `exclude` {Function|string\[]} Function to filter out files/directories or a + list of glob patterns to be excluded. If a function is provided, return `true` to exclude the item, `false` to include it. **Default:** `undefined`. * `withFileTypes` {boolean} `true` if the glob should return paths as Dirents, `false` otherwise. **Default:** `false`. diff --git a/doc/api/module.md b/doc/api/module.md index dc2966678baca0..77cef30da23dcb 100644 --- a/doc/api/module.md +++ b/doc/api/module.md @@ -142,14 +142,14 @@ If `cacheDir` is not specified, Node.js will either use the directory specified [`NODE_COMPILE_CACHE=dir`][] environment variable if it's set, or use `path.join(os.tmpdir(), 'node-compile-cache')` otherwise. For general use cases, it's recommended to call `module.enableCompileCache()` without specifying the `cacheDir`, -so that the directory can be overriden by the `NODE_COMPILE_CACHE` environment +so that the directory can be overridden by the `NODE_COMPILE_CACHE` environment variable when necessary. Since compile cache is supposed to be a quiet optimization that is not required for the application to be functional, this method is designed to not throw any exception when the compile cache cannot be enabled. Instead, it will return an object containing an error message in the `message` field to aid debugging. -If compile cache is enabled successefully, the `directory` field in the returned object +If compile cache is enabled successfully, the `directory` field in the returned object contains the path to the directory where the compile cache is stored. The `status` field in the returned object would be one of the `module.constants.compileCacheStatus` values to indicate the result of the attempt to enable the [module compile cache][]. @@ -157,7 +157,7 @@ values to indicate the result of the attempt to enable the [module compile cache This method only affects the current Node.js instance. To enable it in child worker threads, either call this method in child worker threads too, or set the `process.env.NODE_COMPILE_CACHE` value to compile cache directory so the behavior can -be inheritend into the child workers. The directory can be obtained either from the +be inherited into the child workers. The directory can be obtained either from the `directory` field returned by this method, or with [`module.getCompileCacheDir()`][]. #### Module compile cache @@ -217,6 +217,92 @@ added: v22.8.0 * Returns: {string|undefined} Path to the [module compile cache][] directory if it is enabled, or `undefined` otherwise. +### `module.findPackageJSON(specifier[, base])` + +<!-- YAML +added: v22.14.0 +--> + +> Stability: 1.1 - Active Development + +* `specifier` {string|URL} The specifier for the module whose `package.json` to + retrieve. When passing a _bare specifier_, the `package.json` at the root of + the package is returned. When passing a _relative specifier_ or an _absolute specifier_, + the closest parent `package.json` is returned. +* `base` {string|URL} The absolute location (`file:` URL string or FS path) of the + containing module. For CJS, use `__filename` (not `__dirname`!); for ESM, use + `import.meta.url`. You do not need to pass it if `specifier` is an `absolute specifier`. +* Returns: {string|undefined} A path if the `package.json` is found. When `specifier` + is a package, the package's root `package.json`; when a relative or unresolved, the closest + `package.json` to the `specifier`. + +> **Caveat**: Do not use this to try to determine module format. There are many things affecting +> that determination; the `type` field of package.json is the _least_ definitive (ex file extension +> supersedes it, and a loader hook supersedes that). + +> **Caveat**: This currently leverages only the built-in default resolver; if +> [`resolve` customization hooks][resolve hook] are registered, they will not affect the resolution. +> This may change in the future. + +```text +/path/to/project + ├ packages/ + ├ bar/ + ├ bar.js + └ package.json // name = '@foo/bar' + └ qux/ + ├ node_modules/ + └ some-package/ + └ package.json // name = 'some-package' + ├ qux.js + └ package.json // name = '@foo/qux' + ├ main.js + └ package.json // name = '@foo' +``` + +```mjs +// /path/to/project/packages/bar/bar.js +import { findPackageJSON } from 'node:module'; + +findPackageJSON('..', import.meta.url); +// '/path/to/project/package.json' +// Same result when passing an absolute specifier instead: +findPackageJSON(new URL('../', import.meta.url)); +findPackageJSON(import.meta.resolve('../')); + +findPackageJSON('some-package', import.meta.url); +// '/path/to/project/packages/bar/node_modules/some-package/package.json' +// When passing an absolute specifier, you might get a different result if the +// resolved module is inside a subfolder that has nested `package.json`. +findPackageJSON(import.meta.resolve('some-package')); +// '/path/to/project/packages/bar/node_modules/some-package/some-subfolder/package.json' + +findPackageJSON('@foo/qux', import.meta.url); +// '/path/to/project/packages/qux/package.json' +``` + +```cjs +// /path/to/project/packages/bar/bar.js +const { findPackageJSON } = require('node:module'); +const { pathToFileURL } = require('node:url'); +const path = require('node:path'); + +findPackageJSON('..', __filename); +// '/path/to/project/package.json' +// Same result when passing an absolute specifier instead: +findPackageJSON(pathToFileURL(path.join(__dirname, '..'))); + +findPackageJSON('some-package', __filename); +// '/path/to/project/packages/bar/node_modules/some-package/package.json' +// When passing an absolute specifier, you might get a different result if the +// resolved module is inside a subfolder that has nested `package.json`. +findPackageJSON(pathToFileURL(require.resolve('some-package'))); +// '/path/to/project/packages/bar/node_modules/some-package/some-subfolder/package.json' + +findPackageJSON('@foo/qux', __filename); +// '/path/to/project/packages/qux/package.json' +``` + ### `module.isBuiltin(moduleName)` <!-- YAML @@ -242,6 +328,10 @@ added: - v20.6.0 - v18.19.0 changes: + - version: v22.13.1 + pr-url: https://github.com/nodejs-private/node-private/pull/629 + description: Using this feature with the permission model enabled requires + passing `--allow-worker`. - version: - v20.8.0 - v18.19.0 @@ -264,12 +354,14 @@ changes: **Default:** `'data:'` * `data` {any} Any arbitrary, cloneable JavaScript value to pass into the [`initialize`][] hook. - * `transferList` {Object\[]} [transferrable objects][] to be passed into the + * `transferList` {Object\[]} [transferable objects][] to be passed into the `initialize` hook. Register a module that exports [hooks][] that customize Node.js module resolution and loading behavior. See [Customization hooks][]. +This feature requires `--allow-worker` if used with the [Permission Model][]. + ### `module.stripTypeScriptTypes(code[, options])` <!-- YAML @@ -737,7 +829,7 @@ affect the other thread(s), and message channels must be used to communicate between the threads. The `register` method can be used to pass data to an [`initialize`][] hook. The -data passed to the hook may include transferrable objects like ports. +data passed to the hook may include transferable objects like ports. ```mjs import { register } from 'node:module'; @@ -835,7 +927,7 @@ the hooks thread when the hooks module is initialized. Initialization happens when the hooks module is registered via [`register`][]. This hook can receive data from a [`register`][] invocation, including -ports and other transferrable objects. The return value of `initialize` can be a +ports and other transferable objects. The return value of `initialize` can be a {Promise}, in which case it will be awaited before the main application thread execution resumes. @@ -1042,13 +1134,13 @@ validating the import attributes. The final value of `format` must be one of the following: -| `format` | Description | Acceptable types for `source` returned by `load` | -| ------------ | ------------------------------ | -------------------------------------------------------------------------- | -| `'builtin'` | Load a Node.js builtin module | Not applicable | -| `'commonjs'` | Load a Node.js CommonJS module | { [`string`][], [`ArrayBuffer`][], [`TypedArray`][], `null`, `undefined` } | -| `'json'` | Load a JSON file | { [`string`][], [`ArrayBuffer`][], [`TypedArray`][] } | -| `'module'` | Load an ES module | { [`string`][], [`ArrayBuffer`][], [`TypedArray`][] } | -| `'wasm'` | Load a WebAssembly module | { [`ArrayBuffer`][], [`TypedArray`][] } | +| `format` | Description | Acceptable types for `source` returned by `load` | +| ------------ | ------------------------------ | -------------------------------------------------- | +| `'builtin'` | Load a Node.js builtin module | {null} | +| `'commonjs'` | Load a Node.js CommonJS module | {string\|ArrayBuffer\|TypedArray\|null\|undefined} | +| `'json'` | Load a JSON file | {string\|ArrayBuffer\|TypedArray} | +| `'module'` | Load an ES module | {string\|ArrayBuffer\|TypedArray} | +| `'wasm'` | Load a WebAssembly module | {ArrayBuffer\|TypedArray} | The value of `source` is ignored for type `'builtin'` because currently it is not possible to replace the value of a Node.js builtin (core) module. @@ -1091,8 +1183,8 @@ export async function load(url, context, nextLoad) { > These types all correspond to classes defined in ECMAScript. -* The specific [`ArrayBuffer`][] object is a [`SharedArrayBuffer`][]. -* The specific [`TypedArray`][] object is a [`Uint8Array`][]. +* The specific {ArrayBuffer} object is a {SharedArrayBuffer}. +* The specific {TypedArray} object is a {Uint8Array}. If the source value of a text-based format (i.e., `'json'`, `'module'`) is not a string, it is converted to a string using [`util.TextDecoder`][]. @@ -1354,6 +1446,20 @@ import { findSourceMap, SourceMap } from 'node:module'; const { findSourceMap, SourceMap } = require('node:module'); ``` +### `module.getSourceMapsSupport()` + +<!-- YAML +added: v22.14.0 +--> + +* Returns: {Object} + * `enabled` {boolean} If the source maps support is enabled + * `nodeModules` {boolean} If the support is enabled for files in `node_modules`. + * `generatedCode` {boolean} If the support is enabled for generated code from `eval` or `new Function`. + +This method returns whether the [Source Map v3][Source Map] support for stack +traces is enabled. + <!-- Anchors to make sure old links find a target --> <a id="module_module_findsourcemap_path_error"></a> @@ -1373,6 +1479,31 @@ added: `path` is the resolved path for the file for which a corresponding source map should be fetched. +### `module.setSourceMapsSupport(enabled[, options])` + +<!-- YAML +added: v22.14.0 +--> + +* `enabled` {boolean} Enable the source map support. +* `options` {Object} Optional + * `nodeModules` {boolean} If enabling the support for files in + `node_modules`. **Default:** `false`. + * `generatedCode` {boolean} If enabling the support for generated code from + `eval` or `new Function`. **Default:** `false`. + +This function enables or disables the [Source Map v3][Source Map] support for +stack traces. + +It provides same features as launching Node.js process with commandline options +`--enable-source-maps`, with additional options to alter the support for files +in `node_modules` or generated codes. + +Only source maps in JavaScript files that are loaded after source maps has been +enabled will be parsed and loaded. Preferably, use the commandline options +`--enable-source-maps` to avoid losing track of source maps of modules loaded +before this API call. + ### Class: `module.SourceMap` <!-- YAML @@ -1472,19 +1603,17 @@ returned object contains the following keys: [Conditional exports]: packages.md#conditional-exports [Customization hooks]: #customization-hooks [ES Modules]: esm.md +[Permission Model]: permissions.md#permission-model +[Source Map]: https://sourcemaps.info/spec.html [Source map v3 format]: https://sourcemaps.info/spec.html#h.mofvlxcwqzej [V8 JavaScript code coverage]: https://v8project.blogspot.com/2017/12/javascript-code-coverage.html [V8 code cache]: https://v8.dev/blog/code-caching-for-devs [`"exports"`]: packages.md#exports [`--enable-source-maps`]: cli.md#--enable-source-maps -[`ArrayBuffer`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer [`NODE_COMPILE_CACHE=dir`]: cli.md#node_compile_cachedir [`NODE_DISABLE_COMPILE_CACHE=1`]: cli.md#node_disable_compile_cache1 [`NODE_V8_COVERAGE=dir`]: cli.md#node_v8_coveragedir -[`SharedArrayBuffer`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer [`SourceMap`]: #class-modulesourcemap -[`TypedArray`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray -[`Uint8Array`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array [`initialize`]: #initialize [`module.constants.compileCacheStatus`]: #moduleconstantscompilecachestatus [`module.enableCompileCache()`]: #moduleenablecompilecachecachedir @@ -1493,7 +1622,6 @@ returned object contains the following keys: [`module`]: #the-module-object [`os.tmpdir()`]: os.md#ostmpdir [`register`]: #moduleregisterspecifier-parenturl-options -[`string`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String [`util.TextDecoder`]: util.md#class-utiltextdecoder [chain]: #chaining [hooks]: #customization-hooks @@ -1502,7 +1630,8 @@ returned object contains the following keys: [module wrapper]: modules.md#the-module-wrapper [prefix-only modules]: modules.md#built-in-modules-with-mandatory-node-prefix [realm]: https://tc39.es/ecma262/#realm +[resolve hook]: #resolvespecifier-context-nextresolve [source map include directives]: https://sourcemaps.info/spec.html#h.lmz475t4mvbx -[transferrable objects]: worker_threads.md#portpostmessagevalue-transferlist +[transferable objects]: worker_threads.md#portpostmessagevalue-transferlist [transform TypeScript features]: typescript.md#typescript-features [type-stripping]: typescript.md#type-stripping diff --git a/doc/api/n-api.md b/doc/api/n-api.md index b7fae77b1ba1ef..50a8b300c54989 100644 --- a/doc/api/n-api.md +++ b/doc/api/n-api.md @@ -1748,7 +1748,7 @@ will not be freed. This can be avoided by calling **Change History:** -* Experimental (`NAPI_EXPERIMENTAL` is defined): +* Version 10 (`NAPI_VERSION` is defined as `10` or higher): References can be created for all value types. The new supported value types do not support weak reference semantic and the values of these types @@ -2700,10 +2700,9 @@ JavaScript `TypedArray` objects are described in <!-- YAML added: v22.12.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status NAPI_CDECL node_api_create_buffer_from_arraybuffer(napi_env env, napi_value arraybuffer, @@ -2965,10 +2964,9 @@ The JavaScript `string` type is described in added: - v20.4.0 - v18.18.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status node_api_create_external_string_latin1(napi_env env, @@ -3045,10 +3043,9 @@ The JavaScript `string` type is described in added: - v20.4.0 - v18.18.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status node_api_create_external_string_utf16(napi_env env, @@ -3138,10 +3135,9 @@ creation methods. <!-- YAML added: v22.9.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status NAPI_CDECL node_api_create_property_key_latin1(napi_env env, const char* str, @@ -3173,10 +3169,9 @@ The JavaScript `string` type is described in added: - v21.7.0 - v20.12.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status NAPI_CDECL node_api_create_property_key_utf16(napi_env env, const char16_t* str, @@ -3204,10 +3199,9 @@ The JavaScript `string` type is described in <!-- YAML added: v22.9.0 +napiVersion: 10 --> -> Stability: 1 - Experimental - ```c napi_status NAPI_CDECL node_api_create_property_key_utf8(napi_env env, const char* str, @@ -6527,7 +6521,7 @@ napi_create_threadsafe_function(napi_env env, **Change History:** -* Experimental (`NAPI_EXPERIMENTAL` is defined): +* Version 10 (`NAPI_VERSION` is defined as `10` or higher): Uncaught exceptions thrown in `call_js_cb` are handled with the [`'uncaughtException'`][] event, instead of being ignored. diff --git a/doc/api/packages.md b/doc/api/packages.md index f3a89855a1fcb3..72494bf90d4b40 100644 --- a/doc/api/packages.md +++ b/doc/api/packages.md @@ -171,7 +171,7 @@ There is the CommonJS module loader: `process.dlopen()`. * It treats all files that lack `.json` or `.node` extensions as JavaScript text files. -* It can only be used to [load ECMASCript modules from CommonJS modules][] if +* It can only be used to [load ECMAScript modules from CommonJS modules][] if the module graph is synchronous (that contains no top-level `await`). When used to load a JavaScript text file that is not an ECMAScript module, the file will be loaded as a CommonJS module. @@ -1169,7 +1169,7 @@ This field defines [subpath imports][] for the current package. [entry points]: #package-entry-points [folders as modules]: modules.md#folders-as-modules [import maps]: https://github.com/WICG/import-maps -[load ECMASCript modules from CommonJS modules]: modules.md#loading-ecmascript-modules-using-require +[load ECMAScript modules from CommonJS modules]: modules.md#loading-ecmascript-modules-using-require [loader hooks]: esm.md#loaders [packages folder mapping]: https://github.com/WICG/import-maps#packages-via-trailing-slashes [self-reference]: #self-referencing-a-package-using-its-name diff --git a/doc/api/permissions.md b/doc/api/permissions.md index ea3ccc17b306b7..26471e14a2d600 100644 --- a/doc/api/permissions.md +++ b/doc/api/permissions.md @@ -1,5 +1,9 @@ # Permissions +<!--introduced_in=v20.0.0--> + +<!-- source_link=src/permission.cc --> + Permissions can be used to control what system resources the Node.js process has access to or what actions the process can take with those resources. @@ -26,12 +30,16 @@ If you find a potential security vulnerability, please refer to our ### Permission Model -<!-- type=misc --> +<!-- YAML +added: v20.0.0 +changes: + - version: v22.13.0 + pr-url: https://github.com/nodejs/node/pull/56201 + description: This feature is no longer experimental. +--> > Stability: 2 - Stable. -<!-- name=permission-model --> - The Node.js Permission Model is a mechanism for restricting access to specific resources during execution. The API exists behind a flag [`--permission`][] which when enabled, @@ -126,6 +134,43 @@ does not exist, the wildcard will not be added, and access will be limited to yet, make sure to explicitly include the wildcard: `/my-path/folder-do-not-exist/*`. +#### Using the Permission Model with `npx` + +If you're using [`npx`][] to execute a Node.js script, you can enable the +Permission Model by passing the `--node-options` flag. For example: + +```bash +npx --node-options="--permission" package-name +``` + +This sets the `NODE_OPTIONS` environment variable for all Node.js processes +spawned by [`npx`][], without affecting the `npx` process itself. + +**FileSystemRead Error with `npx`** + +The above command will likely throw a `FileSystemRead` invalid access error +because Node.js requires file system read access to locate and execute the +package. To avoid this: + +1. **Using a Globally Installed Package** + Grant read access to the global `node_modules` directory by running: + + ```bash + npx --node-options="--permission --allow-fs-read=$(npm prefix -g)" package-name + ``` + +2. **Using the `npx` Cache** + If you are installing the package temporarily or relying on the `npx` cache, + grant read access to the npm cache directory: + + ```bash + npx --node-options="--permission --allow-fs-read=$(npm config get cache)" package-name + ``` + +Any arguments you would normally pass to `node` (e.g., `--allow-*` flags) can +also be passed through the `--node-options` flag. This flexibility makes it +easy to configure permissions as needed when using `npx`. + #### Permission Model constraints There are constraints you need to know before using this system: @@ -166,4 +211,5 @@ There are constraints you need to know before using this system: [`--allow-wasi`]: cli.md#--allow-wasi [`--allow-worker`]: cli.md#--allow-worker [`--permission`]: cli.md#--permission +[`npx`]: https://docs.npmjs.com/cli/commands/npx [`permission.has()`]: process.md#processpermissionhasscope-reference diff --git a/doc/api/process.md b/doc/api/process.md index 8e7fe148daa9a6..c7410b142bc3d3 100644 --- a/doc/api/process.md +++ b/doc/api/process.md @@ -2993,34 +2993,40 @@ function definitelyAsync(arg, cb) { ### When to use `queueMicrotask()` vs. `process.nextTick()` -The [`queueMicrotask()`][] API is an alternative to `process.nextTick()` that -also defers execution of a function using the same microtask queue used to -execute the then, catch, and finally handlers of resolved promises. Within -Node.js, every time the "next tick queue" is drained, the microtask queue +The [`queueMicrotask()`][] API is an alternative to `process.nextTick()` that instead of using the +"next tick queue" defers execution of a function using the same microtask queue used to execute the +then, catch, and finally handlers of resolved promises. + +Within Node.js, every time the "next tick queue" is drained, the microtask queue is drained immediately after. +So in CJS modules `process.nextTick()` callbacks are always run before `queueMicrotask()` ones. +However since ESM modules are processed already as part of the microtask queue, there +`queueMicrotask()` callbacks are always exectued before `process.nextTick()` ones since Node.js +is already in the process of draining the microtask queue. + ```mjs import { nextTick } from 'node:process'; -Promise.resolve().then(() => console.log(2)); -queueMicrotask(() => console.log(3)); -nextTick(() => console.log(1)); +Promise.resolve().then(() => console.log('resolve')); +queueMicrotask(() => console.log('microtask')); +nextTick(() => console.log('nextTick')); // Output: -// 1 -// 2 -// 3 +// resolve +// microtask +// nextTick ``` ```cjs const { nextTick } = require('node:process'); -Promise.resolve().then(() => console.log(2)); -queueMicrotask(() => console.log(3)); -nextTick(() => console.log(1)); +Promise.resolve().then(() => console.log('resolve')); +queueMicrotask(() => console.log('microtask')); +nextTick(() => console.log('nextTick')); // Output: -// 1 -// 2 -// 3 +// nextTick +// resolve +// microtask ``` For _most_ userland use cases, the `queueMicrotask()` API provides a portable @@ -3215,6 +3221,25 @@ const { ppid } = require('node:process'); console.log(`The parent process is pid ${ppid}`); ``` +## `process.ref(maybeRefable)` + +<!-- YAML +added: v22.14.0 +--> + +> Stability: 1 - Experimental + +* `maybeRefable` {any} An object that may be "refable". + +An object is "refable" if it implements the Node.js "Refable protocol". +Specifically, this means that the object implements the `Symbol.for('nodejs.ref')` +and `Symbol.for('nodejs.unref')` methods. "Ref'd" objects will keep the Node.js +event loop alive, while "unref'd" objects will not. Historically, this was +implemented by using `ref()` and `unref()` methods directly on the objects. +This pattern, however, is being deprecated in favor of the "Refable protocol" +in order to better support Web Platform API types whose APIs cannot be modified +to add `ref()` and `unref()` methods but still need to support that behavior. + ## `process.release` <!-- YAML @@ -3949,7 +3974,7 @@ added: - v14.18.0 --> -> Stability: 1 - Experimental +> Stability: 1 - Experimental: Use [`module.setSourceMapsSupport()`][] instead. * `val` {boolean} @@ -3962,6 +3987,9 @@ It provides same features as launching Node.js process with commandline options Only source maps in JavaScript files that are loaded after source maps has been enabled will be parsed and loaded. +This implies calling `module.setSourceMapsSupport()` with an option +`{ nodeModules: true, generatedCode: true }`. + ## `process.setUncaughtExceptionCaptureCallback(fn)` <!-- YAML @@ -3996,7 +4024,7 @@ added: - v18.19.0 --> -> Stability: 1 - Experimental +> Stability: 1 - Experimental: Use [`module.getSourceMapsSupport()`][] instead. * {boolean} @@ -4255,6 +4283,25 @@ console.log( In [`Worker`][] threads, `process.umask(mask)` will throw an exception. +## `process.unref(maybeRefable)` + +<!-- YAML +added: v22.14.0 +--> + +> Stability: 1 - Experimental + +* `maybeUnfefable` {any} An object that may be "unref'd". + +An object is "unrefable" if it implements the Node.js "Refable protocol". +Specifically, this means that the object implements the `Symbol.for('nodejs.ref')` +and `Symbol.for('nodejs.unref')` methods. "Ref'd" objects will keep the Node.js +event loop alive, while "unref'd" objects will not. Historically, this was +implemented by using `ref()` and `unref()` methods directly on the objects. +This pattern, however, is being deprecated in favor of the "Refable protocol" +in order to better support Web Platform API types whose APIs cannot be modified +to add `ref()` and `unref()` methods but still need to support that behavior. + ## `process.uptime()` <!-- YAML @@ -4444,7 +4491,9 @@ cases: [`console.error()`]: console.md#consoleerrordata-args [`console.log()`]: console.md#consolelogdata-args [`domain`]: domain.md +[`module.getSourceMapsSupport()`]: module.md#modulegetsourcemapssupport [`module.isBuiltin(id)`]: module.md#moduleisbuiltinmodulename +[`module.setSourceMapsSupport()`]: module.md#modulesetsourcemapssupportenabled-options [`net.Server`]: net.md#class-netserver [`net.Socket`]: net.md#class-netsocket [`os.constants.dlopen`]: os.md#dlopen-constants diff --git a/doc/api/sqlite.md b/doc/api/sqlite.md index 270b8e8d8b7507..11bc81e0e428f7 100644 --- a/doc/api/sqlite.md +++ b/doc/api/sqlite.md @@ -230,10 +230,27 @@ added: v22.12.0 * `options` {Object} The configuration options for how the changes will be applied. * `filter` {Function} Skip changes that, when targeted table name is supplied to this function, return a truthy value. By default, all changes are attempted. - * `onConflict` {number} Determines how conflicts are handled. **Default**: `SQLITE_CHANGESET_ABORT`. - * `SQLITE_CHANGESET_OMIT`: conflicting changes are omitted. - * `SQLITE_CHANGESET_REPLACE`: conflicting changes replace existing values. - * `SQLITE_CHANGESET_ABORT`: abort on conflict and roll back database. + * `onConflict` {Function} A function that determines how to handle conflicts. The function receives one argument, + which can be one of the following values: + + * `SQLITE_CHANGESET_DATA`: A `DELETE` or `UPDATE` change does not contain the expected "before" values. + * `SQLITE_CHANGESET_NOTFOUND`: A row matching the primary key of the `DELETE` or `UPDATE` change does not exist. + * `SQLITE_CHANGESET_CONFLICT`: An `INSERT` change results in a duplicate primary key. + * `SQLITE_CHANGESET_FOREIGN_KEY`: Applying a change would result in a foreign key violation. + * `SQLITE_CHANGESET_CONSTRAINT`: Applying a change results in a `UNIQUE`, `CHECK`, or `NOT NULL` constraint + violation. + + The function should return one of the following values: + + * `SQLITE_CHANGESET_OMIT`: Omit conflicting changes. + * `SQLITE_CHANGESET_REPLACE`: Replace existing values with conflicting changes (only valid with + `SQLITE_CHANGESET_DATA` or `SQLITE_CHANGESET_CONFLICT` conflicts). + * `SQLITE_CHANGESET_ABORT`: Abort on conflict and roll back the database. + + When an error is thrown in the conflict handler or when any other value is returned from the handler, + applying the changeset is aborted and the database is rolled back. + + **Default**: A function that returns `SQLITE_CHANGESET_ABORT`. * Returns: {boolean} Whether the changeset was applied succesfully without being aborted. An exception is thrown if the database is not @@ -312,11 +329,15 @@ over hand-crafted SQL strings when handling user input. <!-- YAML added: v22.5.0 +changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56385 + description: Add support for `DataView` and typed array objects for `anonymousParameters`. --> * `namedParameters` {Object} An optional object used to bind named parameters. The keys of this object are used to configure the mapping. -* `...anonymousParameters` {null|number|bigint|string|Buffer|Uint8Array} Zero or +* `...anonymousParameters` {null|number|bigint|string|Buffer|TypedArray|DataView} Zero or more values to bind to anonymous parameters. * Returns: {Array} An array of objects. Each object corresponds to a row returned by executing the prepared statement. The keys and values of each @@ -344,11 +365,15 @@ execution of this prepared statement. This property is a wrapper around <!-- YAML added: v22.5.0 +changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56385 + description: Add support for `DataView` and typed array objects for `anonymousParameters`. --> * `namedParameters` {Object} An optional object used to bind named parameters. The keys of this object are used to configure the mapping. -* `...anonymousParameters` {null|number|bigint|string|Buffer|Uint8Array} Zero or +* `...anonymousParameters` {null|number|bigint|string|Buffer|TypedArray|DataView} Zero or more values to bind to anonymous parameters. * Returns: {Object|undefined} An object corresponding to the first row returned by executing the prepared statement. The keys and values of the object @@ -364,11 +389,15 @@ values in `namedParameters` and `anonymousParameters`. <!-- YAML added: v22.13.0 +changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56385 + description: Add support for `DataView` and typed array objects for `anonymousParameters`. --> * `namedParameters` {Object} An optional object used to bind named parameters. The keys of this object are used to configure the mapping. -* `...anonymousParameters` {null|number|bigint|string|Buffer|Uint8Array} Zero or +* `...anonymousParameters` {null|number|bigint|string|Buffer|TypedArray|DataView} Zero or more values to bind to anonymous parameters. * Returns: {Iterator} An iterable iterator of objects. Each object corresponds to a row returned by executing the prepared statement. The keys and values of each @@ -383,11 +412,15 @@ the values in `namedParameters` and `anonymousParameters`. <!-- YAML added: v22.5.0 +changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56385 + description: Add support for `DataView` and typed array objects for `anonymousParameters`. --> * `namedParameters` {Object} An optional object used to bind named parameters. The keys of this object are used to configure the mapping. -* `...anonymousParameters` {null|number|bigint|string|Buffer|Uint8Array} Zero or +* `...anonymousParameters` {null|number|bigint|string|Buffer|TypedArray|DataView} Zero or more values to bind to anonymous parameters. * Returns: {Object} * `changes`: {number|bigint} The number of rows modified, inserted, or deleted @@ -486,9 +519,42 @@ An object containing commonly used constants for SQLite operations. The following constants are exported by the `sqlite.constants` object. -#### Conflict-resolution constants +#### Conflict resolution constants + +One of the following constants is available as an argument to the `onConflict` +conflict resolution handler passed to [`database.applyChangeset()`][]. See also +[Constants Passed To The Conflict Handler][] in the SQLite documentation. + +<table> + <tr> + <th>Constant</th> + <th>Description</th> + </tr> + <tr> + <td><code>SQLITE_CHANGESET_DATA</code></td> + <td>The conflict handler is invoked with this constant when processing a DELETE or UPDATE change if a row with the required PRIMARY KEY fields is present in the database, but one or more other (non primary-key) fields modified by the update do not contain the expected "before" values.</td> + </tr> + <tr> + <td><code>SQLITE_CHANGESET_NOTFOUND</code></td> + <td>The conflict handler is invoked with this constant when processing a DELETE or UPDATE change if a row with the required PRIMARY KEY fields is not present in the database.</td> + </tr> + <tr> + <td><code>SQLITE_CHANGESET_CONFLICT</code></td> + <td>This constant is passed to the conflict handler while processing an INSERT change if the operation would result in duplicate primary key values.</td> + </tr> + <tr> + <td><code>SQLITE_CHANGESET_CONSTRAINT</code></td> + <td>If foreign key handling is enabled, and applying a changeset leaves the database in a state containing foreign key violations, the conflict handler is invoked with this constant exactly once before the changeset is committed. If the conflict handler returns <code>SQLITE_CHANGESET_OMIT</code>, the changes, including those that caused the foreign key constraint violation, are committed. Or, if it returns <code>SQLITE_CHANGESET_ABORT</code>, the changeset is rolled back.</td> + </tr> + <tr> + <td><code>SQLITE_CHANGESET_FOREIGN_KEY</code></td> + <td>If any other constraint violation occurs while applying a change (i.e. a UNIQUE, CHECK or NOT NULL constraint), the conflict handler is invoked with this constant.</td> + </tr> +</table> -The following constants are meant for use with [`database.applyChangeset()`](#databaseapplychangesetchangeset-options). +One of the following constants must be returned from the `onConflict` conflict +resolution handler passed to [`database.applyChangeset()`][]. See also +[Constants Returned From The Conflict Handler][] in the SQLite documentation. <table> <tr> @@ -501,7 +567,7 @@ The following constants are meant for use with [`database.applyChangeset()`](#da </tr> <tr> <td><code>SQLITE_CHANGESET_REPLACE</code></td> - <td>Conflicting changes replace existing values.</td> + <td>Conflicting changes replace existing values. Note that this value can only be returned when the type of conflict is either <code>SQLITE_CHANGESET_DATA</code> or <code>SQLITE_CHANGESET_CONFLICT</code>.</td> </tr> <tr> <td><code>SQLITE_CHANGESET_ABORT</code></td> @@ -510,11 +576,14 @@ The following constants are meant for use with [`database.applyChangeset()`](#da </table> [Changesets and Patchsets]: https://www.sqlite.org/sessionintro.html#changesets_and_patchsets +[Constants Passed To The Conflict Handler]: https://www.sqlite.org/session/c_changeset_conflict.html +[Constants Returned From The Conflict Handler]: https://www.sqlite.org/session/c_changeset_abort.html [SQL injection]: https://en.wikipedia.org/wiki/SQL_injection [`ATTACH DATABASE`]: https://www.sqlite.org/lang_attach.html [`PRAGMA foreign_keys`]: https://www.sqlite.org/pragma.html#pragma_foreign_keys [`SQLITE_DETERMINISTIC`]: https://www.sqlite.org/c3ref/c_deterministic.html [`SQLITE_DIRECTONLY`]: https://www.sqlite.org/c3ref/c_deterministic.html +[`database.applyChangeset()`]: #databaseapplychangesetchangeset-options [`sqlite3_changes64()`]: https://www.sqlite.org/c3ref/changes.html [`sqlite3_close_v2()`]: https://www.sqlite.org/c3ref/close.html [`sqlite3_create_function_v2()`]: https://www.sqlite.org/c3ref/create_function.html diff --git a/doc/api/stream.md b/doc/api/stream.md index c8f1e2b528c7dc..35893acbd0afbe 100644 --- a/doc/api/stream.md +++ b/doc/api/stream.md @@ -2227,7 +2227,7 @@ stopped by having passed a `signal` option and aborting the related `return`. In either case the stream will be destroyed. This method is different from listening to the [`'data'`][] event in that it -uses the [`readable`][] event in the underlying machinary and can limit the +uses the [`readable`][] event in the underlying machinery and can limit the number of concurrent `fn` calls. ```mjs diff --git a/doc/api/test.md b/doc/api/test.md index b8d5dfb7f69ead..b8a8a27bc304be 100644 --- a/doc/api/test.md +++ b/doc/api/test.md @@ -476,7 +476,7 @@ all tests have completed. If the [`NODE_V8_COVERAGE`][] environment variable is used to specify a code coverage directory, the generated V8 coverage files are written to that directory. Node.js core modules and files within `node_modules/` directories are, by default, not included in the coverage report. -However, they can be explicity included via the [`--test-coverage-include`][] flag. If +However, they can be explicitly included via the [`--test-coverage-include`][] flag. If coverage is enabled, the coverage report is sent to any [test reporters][] via the `'test:coverage'` event. @@ -930,7 +930,13 @@ test('runs timers as setTime passes ticks', (context) => { ## Snapshot testing -> Stability: 1.0 - Early development +<!-- YAML +added: v22.3.0 +changes: + - version: v23.4.0 + pr-url: https://github.com/nodejs/node/pull/55897 + description: Snapsnot testing is no longer experimental. +--> Snapshot tests allow arbitrary values to be serialized into string values and compared against a set of known good values. The known good values are known as @@ -1726,14 +1732,35 @@ describe('tests', async () => { }); ``` +## `assert` + +<!-- YAML +added: v22.14.0 +--> + +An object whose methods are used to configure available assertions on the +`TestContext` objects in the current process. The methods from `node:assert` +and snapshot testing functions are available by default. + +It is possible to apply the same configuration to all files by placing common +configuration code in a module +preloaded with `--require` or `--import`. + +### `assert.register(name, fn)` + +<!-- YAML +added: v22.14.0 +--> + +Defines a new assertion function with the provided name and function. If an +assertion already exists with the same name, it is overwritten. + ## `snapshot` <!-- YAML added: v22.3.0 --> -> Stability: 1.0 - Early development - An object whose methods are used to configure default snapshot settings in the current process. It is possible to apply the same configuration to all files by placing common configuration code in a module preloaded with `--require` or @@ -1745,8 +1772,6 @@ placing common configuration code in a module preloaded with `--require` or added: v22.3.0 --> -> Stability: 1.0 - Early development - * `serializers` {Array} An array of synchronous functions used as the default serializers for snapshot tests. @@ -1762,8 +1787,6 @@ more robust serialization mechanism is required, this function should be used. added: v22.3.0 --> -> Stability: 1.0 - Early development - * `fn` {Function} A function used to compute the location of the snapshot file. The function receives the path of the test file as its only argument. If the test is not associated with a file (for example in the REPL), the input is @@ -3226,14 +3249,49 @@ test('test', (t) => { }); ``` +#### `context.assert.fileSnapshot(value, path[, options])` + +<!-- YAML +added: v22.14.0 +--> + +* `value` {any} A value to serialize to a string. If Node.js was started with + the [`--test-update-snapshots`][] flag, the serialized value is written to + `path`. Otherwise, the serialized value is compared to the contents of the + existing snapshot file. +* `path` {string} The file where the serialized `value` is written. +* `options` {Object} Optional configuration options. The following properties + are supported: + * `serializers` {Array} An array of synchronous functions used to serialize + `value` into a string. `value` is passed as the only argument to the first + serializer function. The return value of each serializer is passed as input + to the next serializer. Once all serializers have run, the resulting value + is coerced to a string. **Default:** If no serializers are provided, the + test runner's default serializers are used. + +This function serializes `value` and writes it to the file specified by `path`. + +```js +test('snapshot test with default serialization', (t) => { + t.assert.fileSnapshot({ value1: 1, value2: 2 }, './snapshots/snapshot.json'); +}); +``` + +This function differs from `context.assert.snapshot()` in the following ways: + +* The snapshot file path is explicitly provided by the user. +* Each snapshot file is limited to a single snapshot value. +* No additional escaping is performed by the test runner. + +These differences allow snapshot files to better support features such as syntax +highlighting. + #### `context.assert.snapshot(value[, options])` <!-- YAML added: v22.3.0 --> -> Stability: 1.0 - Early development - * `value` {any} A value to serialize to a string. If Node.js was started with the [`--test-update-snapshots`][] flag, the serialized value is written to the snapshot file. Otherwise, the serialized value is compared to the @@ -3514,6 +3572,27 @@ test('top level test', async (t) => { }); ``` +### `context.waitFor(condition[, options])` + +<!-- YAML +added: v22.14.0 +--> + +* `condition` {Function|AsyncFunction} An assertion function that is invoked + periodically until it completes successfully or the defined polling timeout + elapses. Successful completion is defined as not throwing or rejecting. This + function does not accept any arguments, and is allowed to return any value. +* `options` {Object} An optional configuration object for the polling operation. + The following properties are supported: + * `interval` {number} The number of milliseconds to wait after an unsuccessful + invocation of `condition` before trying again. **Default:** `50`. + * `timeout` {number} The poll timeout in milliseconds. If `condition` has not + succeeded by the time this elapses, an error occurs. **Default:** `1000`. +* Returns: {Promise} Fulfilled with the value returned by `condition`. + +This method polls a `condition` function until that function either returns +successfully or the operation times out. + ## Class: `SuiteContext` <!-- YAML diff --git a/doc/api/tracing.md b/doc/api/tracing.md index ddd1bae52a62c4..1b18243a5ad1d3 100644 --- a/doc/api/tracing.md +++ b/doc/api/tracing.md @@ -69,9 +69,19 @@ node --trace-event-categories v8,node,node.async_hooks Alternatively, trace events may be enabled using the `node:trace_events` module: -```js -const trace_events = require('node:trace_events'); -const tracing = trace_events.createTracing({ categories: ['node.perf'] }); +```mjs +import { createTracing } from 'node:trace_events'; +const tracing = createTracing({ categories: ['node.perf'] }); +tracing.enable(); // Enable trace event capture for the 'node.perf' category + +// do work + +tracing.disable(); // Disable trace event capture for the 'node.perf' category +``` + +```cjs +const { createTracing } = require('node:trace_events'); +const tracing = createTracing({ categories: ['node.perf'] }); tracing.enable(); // Enable trace event capture for the 'node.perf' category // do work @@ -153,20 +163,36 @@ Disables this `Tracing` object. Only trace event categories _not_ covered by other enabled `Tracing` objects and _not_ specified by the `--trace-event-categories` flag will be disabled. -```js -const trace_events = require('node:trace_events'); -const t1 = trace_events.createTracing({ categories: ['node', 'v8'] }); -const t2 = trace_events.createTracing({ categories: ['node.perf', 'node'] }); +```mjs +import { createTracing, getEnabledCategories } from 'node:trace_events'; +const t1 = createTracing({ categories: ['node', 'v8'] }); +const t2 = createTracing({ categories: ['node.perf', 'node'] }); +t1.enable(); +t2.enable(); + +// Prints 'node,node.perf,v8' +console.log(getEnabledCategories()); + +t2.disable(); // Will only disable emission of the 'node.perf' category + +// Prints 'node,v8' +console.log(getEnabledCategories()); +``` + +```cjs +const { createTracing, getEnabledCategories } = require('node:trace_events'); +const t1 = createTracing({ categories: ['node', 'v8'] }); +const t2 = createTracing({ categories: ['node.perf', 'node'] }); t1.enable(); t2.enable(); // Prints 'node,node.perf,v8' -console.log(trace_events.getEnabledCategories()); +console.log(getEnabledCategories()); t2.disable(); // Will only disable emission of the 'node.perf' category // Prints 'node,v8' -console.log(trace_events.getEnabledCategories()); +console.log(getEnabledCategories()); ``` #### `tracing.enable()` @@ -200,10 +226,19 @@ added: v10.0.0 Creates and returns a `Tracing` object for the given set of `categories`. -```js -const trace_events = require('node:trace_events'); +```mjs +import { createTracing } from 'node:trace_events'; +const categories = ['node.perf', 'node.async_hooks']; +const tracing = createTracing({ categories }); +tracing.enable(); +// do stuff +tracing.disable(); +``` + +```cjs +const { createTracing } = require('node:trace_events'); const categories = ['node.perf', 'node.async_hooks']; -const tracing = trace_events.createTracing({ categories }); +const tracing = createTracing({ categories }); tracing.enable(); // do stuff tracing.disable(); @@ -226,23 +261,71 @@ Given the file `test.js` below, the command `node --trace-event-categories node.perf test.js` will print `'node.async_hooks,node.perf'` to the console. -```js -const trace_events = require('node:trace_events'); -const t1 = trace_events.createTracing({ categories: ['node.async_hooks'] }); -const t2 = trace_events.createTracing({ categories: ['node.perf'] }); -const t3 = trace_events.createTracing({ categories: ['v8'] }); +```mjs +import { createTracing, getEnabledCategories } from 'node:trace_events'; +const t1 = createTracing({ categories: ['node.async_hooks'] }); +const t2 = createTracing({ categories: ['node.perf'] }); +const t3 = createTracing({ categories: ['v8'] }); + +t1.enable(); +t2.enable(); + +console.log(getEnabledCategories()); +``` + +```cjs +const { createTracing, getEnabledCategories } = require('node:trace_events'); +const t1 = createTracing({ categories: ['node.async_hooks'] }); +const t2 = createTracing({ categories: ['node.perf'] }); +const t3 = createTracing({ categories: ['v8'] }); t1.enable(); t2.enable(); -console.log(trace_events.getEnabledCategories()); +console.log(getEnabledCategories()); ``` ## Examples ### Collect trace events data by inspector -```js +```mjs +import { Session } from 'node:inspector'; +const session = new Session(); +session.connect(); + +function post(message, data) { + return new Promise((resolve, reject) => { + session.post(message, data, (err, result) => { + if (err) + reject(new Error(JSON.stringify(err))); + else + resolve(result); + }); + }); +} + +async function collect() { + const data = []; + session.on('NodeTracing.dataCollected', (chunk) => data.push(chunk)); + session.on('NodeTracing.tracingComplete', () => { + // done + }); + const traceConfig = { includedCategories: ['v8'] }; + await post('NodeTracing.start', { traceConfig }); + // do something + setTimeout(() => { + post('NodeTracing.stop').then(() => { + session.disconnect(); + console.log(data); + }); + }, 1000); +} + +collect(); +``` + +```cjs 'use strict'; const { Session } = require('node:inspector'); diff --git a/doc/api/typescript.md b/doc/api/typescript.md index d2680670a5f316..4d90f5c285f525 100644 --- a/doc/api/typescript.md +++ b/doc/api/typescript.md @@ -153,10 +153,10 @@ import { fn, FnParams } from './fn.ts'; ### Non-file forms of input -Type stripping can be enabled for `--eval`. The module system +Type stripping can be enabled for `--eval` and STDIN. The module system will be determined by `--input-type`, as it is for JavaScript. -TypeScript syntax is unsupported in the REPL, STDIN input, `--print`, `--check`, and +TypeScript syntax is unsupported in the REPL, `--check`, and `inspect`. ### Source maps diff --git a/doc/api/util.md b/doc/api/util.md index c6c6e0fe37b59c..850372d21dce52 100644 --- a/doc/api/util.md +++ b/doc/api/util.md @@ -371,6 +371,12 @@ util.formatWithOptions({ colors: true }, 'See object %O', { foo: 42 }); <!-- YAML added: v22.9.0 changes: + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56584 + description: Property `column` is deprecated in favor of `columnNumber`. + - version: v22.14.0 + pr-url: https://github.com/nodejs/node/pull/56551 + description: Property `CallSite.scriptId` is exposed. - version: v22.12.0 pr-url: https://github.com/nodejs/node/pull/55626 description: The API is renamed from `util.getCallSite` to `util.getCallSites()`. @@ -385,8 +391,9 @@ changes: * `functionName` {string} Returns the name of the function associated with this call site. * `scriptName` {string} Returns the name of the resource that contains the script for the function for this call site. - * `lineNumber` {number} Returns the number, 1-based, of the line for the associate function call. - * `column` {number} Returns the 1-based column offset on the line for the associated function call. + * `scriptId` {string} Returns the unique id of the script, as in Chrome DevTools protocol [`Runtime.ScriptId`][]. + * `lineNumber` {number} Returns the JavaScript script line number (1-based). + * `columnNumber` {number} Returns the JavaScript script column number (1-based). Returns an array of call site objects containing the stack of the caller function. @@ -403,7 +410,7 @@ function exampleFunction() { console.log(`Function Name: ${callSite.functionName}`); console.log(`Script Name: ${callSite.scriptName}`); console.log(`Line Number: ${callSite.lineNumber}`); - console.log(`Column Number: ${callSite.column}`); + console.log(`Column Number: ${callSite.columnNumber}`); }); // CallSite 1: // Function Name: exampleFunction @@ -1533,9 +1540,10 @@ changes: times. If `true`, all values will be collected in an array. If `false`, values for the option are last-wins. **Default:** `false`. * `short` {string} A single character alias for the option. - * `default` {string | boolean | string\[] | boolean\[]} The default option - value when it is not set by args. It must be of the same type as the - `type` property. When `multiple` is `true`, it must be an array. + * `default` {string | boolean | string\[] | boolean\[]} The default value to + be used if (and only if) the option does not appear in the arguments to be + parsed. It must be of the same type as the `type` property. When `multiple` + is `true`, it must be an array. * `strict` {boolean} Should an error be thrown when unknown arguments are encountered, or when arguments are passed that do not match the `type` configured in `options`. @@ -1956,7 +1964,7 @@ const errorMessage = styleText( // Validate if process.stderr has TTY { stream: stderr }, ); -console.error(successMessage); +console.error(errorMessage); ``` ```cjs @@ -3601,6 +3609,7 @@ util.log('Timestamped message.'); [`Object.freeze()`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze [`Promise`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise [`Proxy`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy +[`Runtime.ScriptId`]: https://chromedevtools.github.io/devtools-protocol/1-3/Runtime/#type-ScriptId [`Set`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set [`SharedArrayBuffer`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer [`TypedArray`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray diff --git a/doc/api/v8.md b/doc/api/v8.md index ed2a030b5fd015..e62c2383f484bb 100644 --- a/doc/api/v8.md +++ b/doc/api/v8.md @@ -323,7 +323,7 @@ console.log(queryObjects(B, { format: 'summary' })); // Note that, when there are child classes inheriting from a constructor, // the constructor also shows up in the prototype chain of the child -// classes's prototoype, so the child classes's prototoype would also be +// classes's prototype, so the child classes's prototype would also be // included in the result. console.log(queryObjects(A)); // 3 // [ "B { foo: 'bar', bar: 'qux' }", 'A {}', "A { foo: 'bar' }" ] @@ -347,7 +347,7 @@ console.log(queryObjects(B, { format: 'summary' })); // Note that, when there are child classes inheriting from a constructor, // the constructor also shows up in the prototype chain of the child -// classes's prototoype, so the child classes's prototoype would also be +// classes's prototype, so the child classes's prototype would also be // included in the result. console.log(queryObjects(A)); // 3 // [ "B { foo: 'bar', bar: 'qux' }", 'A {}', "A { foo: 'bar' }" ] diff --git a/doc/api/webstreams.md b/doc/api/webstreams.md index 735e1b307e5d9c..b0adef0ae214b8 100644 --- a/doc/api/webstreams.md +++ b/doc/api/webstreams.md @@ -436,6 +436,41 @@ async function* asyncIterableGenerator() { })(); ``` +To pipe the resulting {ReadableStream} into a {WritableStream} the {Iterable} +should yield a sequence of {Buffer}, {TypedArray}, or {DataView} objects. + +```mjs +import { ReadableStream } from 'node:stream/web'; +import { Buffer } from 'node:buffer'; + +async function* asyncIterableGenerator() { + yield Buffer.from('a'); + yield Buffer.from('b'); + yield Buffer.from('c'); +} + +const stream = ReadableStream.from(asyncIterableGenerator()); + +await stream.pipeTo(createWritableStreamSomehow()); +``` + +```cjs +const { ReadableStream } = require('node:stream/web'); +const { Buffer } = require('node:buffer'); + +async function* asyncIterableGenerator() { + yield Buffer.from('a'); + yield Buffer.from('b'); + yield Buffer.from('c'); +} + +const stream = ReadableStream.from(asyncIterableGenerator()); + +(async () => { + await stream.pipeTo(createWritableStreamSomehow()); +})(); +``` + ### Class: `ReadableStreamDefaultReader` <!-- YAML diff --git a/doc/api/worker_threads.md b/doc/api/worker_threads.md index 36a088027edc5f..87d0e69b938914 100644 --- a/doc/api/worker_threads.md +++ b/doc/api/worker_threads.md @@ -100,6 +100,44 @@ if (isMainThread) { } ``` +## `worker.isInternalThread` + +<!-- YAML +added: v22.14.0 +--> + +* {boolean} + +Is `true` if this code is running inside of an internal [`Worker`][] thread (e.g the loader thread). + +```bash +node --experimental-loader ./loader.js main.js +``` + +```cjs +// loader.js +const { isInternalThread } = require('node:worker_threads'); +console.log(isInternalThread); // true +``` + +```mjs +// loader.js +import { isInternalThread } from 'node:worker_threads'; +console.log(isInternalThread); // true +``` + +```cjs +// main.js +const { isInternalThread } = require('node:worker_threads'); +console.log(isInternalThread); // false +``` + +```mjs +// main.js +import { isInternalThread } from 'node:worker_threads'; +console.log(isInternalThread); // false +``` + ## `worker.isMainThread` <!-- YAML diff --git a/doc/api/zlib.md b/doc/api/zlib.md index 2d3ea8050f230b..db4b81e9cede89 100644 --- a/doc/api/zlib.md +++ b/doc/api/zlib.md @@ -926,67 +926,6 @@ The `zlib.bytesWritten` property specifies the number of bytes written to the engine, before the bytes are processed (compressed or decompressed, as appropriate for the derived class). -### `zlib.crc32(data[, value])` - -<!-- YAML -added: v22.2.0 ---> - -* `data` {string|Buffer|TypedArray|DataView} When `data` is a string, - it will be encoded as UTF-8 before being used for computation. -* `value` {integer} An optional starting value. It must be a 32-bit unsigned - integer. **Default:** `0` -* Returns: {integer} A 32-bit unsigned integer containing the checksum. - -Computes a 32-bit [Cyclic Redundancy Check][] checksum of `data`. If -`value` is specified, it is used as the starting value of the checksum, -otherwise, 0 is used as the starting value. - -The CRC algorithm is designed to compute checksums and to detect error -in data transmission. It's not suitable for cryptographic authentication. - -To be consistent with other APIs, if the `data` is a string, it will -be encoded with UTF-8 before being used for computation. If users only -use Node.js to compute and match the checksums, this works well with -other APIs that uses the UTF-8 encoding by default. - -Some third-party JavaScript libraries compute the checksum on a -string based on `str.charCodeAt()` so that it can be run in browsers. -If users want to match the checksum computed with this kind of library -in the browser, it's better to use the same library in Node.js -if it also runs in Node.js. If users have to use `zlib.crc32()` to -match the checksum produced by such a third-party library: - -1. If the library accepts `Uint8Array` as input, use `TextEncoder` - in the browser to encode the string into a `Uint8Array` with UTF-8 - encoding, and compute the checksum based on the UTF-8 encoded string - in the browser. -2. If the library only takes a string and compute the data based on - `str.charCodeAt()`, on the Node.js side, convert the string into - a buffer using `Buffer.from(str, 'utf16le')`. - -```mjs -import zlib from 'node:zlib'; -import { Buffer } from 'node:buffer'; - -let crc = zlib.crc32('hello'); // 907060870 -crc = zlib.crc32('world', crc); // 4192936109 - -crc = zlib.crc32(Buffer.from('hello', 'utf16le')); // 1427272415 -crc = zlib.crc32(Buffer.from('world', 'utf16le'), crc); // 4150509955 -``` - -```cjs -const zlib = require('node:zlib'); -const { Buffer } = require('node:buffer'); - -let crc = zlib.crc32('hello'); // 907060870 -crc = zlib.crc32('world', crc); // 4192936109 - -crc = zlib.crc32(Buffer.from('hello', 'utf16le')); // 1427272415 -crc = zlib.crc32(Buffer.from('world', 'utf16le'), crc); // 4150509955 -``` - ### `zlib.close([callback])` <!-- YAML @@ -1047,6 +986,67 @@ added: v7.0.0 Provides an object enumerating Zlib-related constants. +## `zlib.crc32(data[, value])` + +<!-- YAML +added: v22.2.0 +--> + +* `data` {string|Buffer|TypedArray|DataView} When `data` is a string, + it will be encoded as UTF-8 before being used for computation. +* `value` {integer} An optional starting value. It must be a 32-bit unsigned + integer. **Default:** `0` +* Returns: {integer} A 32-bit unsigned integer containing the checksum. + +Computes a 32-bit [Cyclic Redundancy Check][] checksum of `data`. If +`value` is specified, it is used as the starting value of the checksum, +otherwise, 0 is used as the starting value. + +The CRC algorithm is designed to compute checksums and to detect error +in data transmission. It's not suitable for cryptographic authentication. + +To be consistent with other APIs, if the `data` is a string, it will +be encoded with UTF-8 before being used for computation. If users only +use Node.js to compute and match the checksums, this works well with +other APIs that uses the UTF-8 encoding by default. + +Some third-party JavaScript libraries compute the checksum on a +string based on `str.charCodeAt()` so that it can be run in browsers. +If users want to match the checksum computed with this kind of library +in the browser, it's better to use the same library in Node.js +if it also runs in Node.js. If users have to use `zlib.crc32()` to +match the checksum produced by such a third-party library: + +1. If the library accepts `Uint8Array` as input, use `TextEncoder` + in the browser to encode the string into a `Uint8Array` with UTF-8 + encoding, and compute the checksum based on the UTF-8 encoded string + in the browser. +2. If the library only takes a string and compute the data based on + `str.charCodeAt()`, on the Node.js side, convert the string into + a buffer using `Buffer.from(str, 'utf16le')`. + +```mjs +import zlib from 'node:zlib'; +import { Buffer } from 'node:buffer'; + +let crc = zlib.crc32('hello'); // 907060870 +crc = zlib.crc32('world', crc); // 4192936109 + +crc = zlib.crc32(Buffer.from('hello', 'utf16le')); // 1427272415 +crc = zlib.crc32(Buffer.from('world', 'utf16le'), crc); // 4150509955 +``` + +```cjs +const zlib = require('node:zlib'); +const { Buffer } = require('node:buffer'); + +let crc = zlib.crc32('hello'); // 907060870 +crc = zlib.crc32('world', crc); // 4192936109 + +crc = zlib.crc32(Buffer.from('hello', 'utf16le')); // 1427272415 +crc = zlib.crc32(Buffer.from('world', 'utf16le'), crc); // 4150509955 +``` + ## `zlib.createBrotliCompress([options])` <!-- YAML diff --git a/doc/api_assets/api.js b/doc/api_assets/api.js index 394b5ba990946c..e86f110e0346bf 100644 --- a/doc/api_assets/api.js +++ b/doc/api_assets/api.js @@ -41,6 +41,7 @@ function closeAllPickers() { for (const picker of pickers) { picker.parentNode.classList.remove('expanded'); + picker.ariaExpanded = false; } window.removeEventListener('click', closeAllPickers); @@ -58,6 +59,7 @@ for (const picker of pickers) { const parentNode = picker.parentNode; + picker.ariaExpanded = parentNode.classList.contains('expanded'); picker.addEventListener('click', function(e) { e.preventDefault(); @@ -65,7 +67,7 @@ closeAllPickers as window event trigger already closed all the pickers, if it already closed there is nothing else to do here */ - if (parentNode.classList.contains('expanded')) { + if (picker.ariaExpanded === 'true') { return; } @@ -75,9 +77,11 @@ */ requestAnimationFrame(function() { + picker.ariaExpanded = true; parentNode.classList.add('expanded'); window.addEventListener('click', closeAllPickers); window.addEventListener('keydown', onKeyDown); + parentNode.querySelector('.picker a').focus(); }); }); } diff --git a/doc/api_assets/style.css b/doc/api_assets/style.css index 28a284e3b975b8..9f56028d09162c 100644 --- a/doc/api_assets/style.css +++ b/doc/api_assets/style.css @@ -122,6 +122,19 @@ a.type { font-size: .9em; } +.skip-to-content { + position: fixed; + top: -300%; +} +.skip-to-content:focus { + display: block; + top: 0; + left: 0; + background-color: var(--green1); + padding: 1rem; + z-index: 999999; +} + #content { position: relative; } @@ -182,22 +195,15 @@ li.picker-header .picker-arrow { height: .6rem; border-top: .3rem solid transparent; border-bottom: .3rem solid transparent; - border-left: .6rem solid var(--color-links); + border-left: .6rem solid currentColor; border-right: none; margin: 0 .2rem .05rem 0; } -li.picker-header a:focus .picker-arrow, -li.picker-header a:active .picker-arrow, -li.picker-header a:hover .picker-arrow { - border-left: .6rem solid var(--white); -} - -li.picker-header.expanded a:focus .picker-arrow, -li.picker-header.expanded a:active .picker-arrow, -li.picker-header.expanded a:hover .picker-arrow, +li.picker-header.expanded .picker-arrow, +:root:not(.has-js) li.picker-header:focus-within .picker-arrow, :root:not(.has-js) li.picker-header:hover .picker-arrow { - border-top: .6rem solid var(--white); + border-top: .6rem solid currentColor; border-bottom: none; border-left: .35rem solid transparent; border-right: .35rem solid transparent; @@ -205,11 +211,13 @@ li.picker-header.expanded a:hover .picker-arrow, } li.picker-header.expanded > a, +:root:not(.has-js) li.picker-header:focus-within > a, :root:not(.has-js) li.picker-header:hover > a { border-radius: 2px 2px 0 0; } li.picker-header.expanded > .picker, +:root:not(.has-js) li.picker-header:focus-within > .picker, :root:not(.has-js) li.picker-header:hover > .picker { display: block; z-index: 1; @@ -562,40 +570,28 @@ hr { } .toc ul { - margin: 0 + margin: 0; } - -.toc li a::before { - content: "■"; - color: var(--color-text-primary); - padding-right: 1em; - font-size: 0.9em; +.toc>ul:first-child { + margin-left: 1rem; +} +.toc li { + display: list-item; + list-style: square; +} +.toc li a { + display: inline; + padding-left: 0; } .toc li a:hover::before { color: var(--white); } -.toc ul ul a { +.toc ul { padding-left: 1rem; } -.toc ul ul ul a { - padding-left: 2rem; -} - -.toc ul ul ul ul a { - padding-left: 3rem; -} - -.toc ul ul ul ul ul a { - padding-left: 4rem; -} - -.toc ul ul ul ul ul ul a { - padding-left: 5rem; -} - #toc .stability_0::after, .deprecated-inline::after { background-color: var(--red2); diff --git a/doc/changelogs/CHANGELOG_V22.md b/doc/changelogs/CHANGELOG_V22.md index 98eb21227c4696..6919f574d80b52 100644 --- a/doc/changelogs/CHANGELOG_V22.md +++ b/doc/changelogs/CHANGELOG_V22.md @@ -9,6 +9,7 @@ </tr> <tr> <td> +<a href="#22.14.0">22.14.0</a><br/> <a href="#22.13.1">22.13.1</a><br/> <a href="#22.13.0">22.13.0</a><br/> <a href="#22.12.0">22.12.0</a><br/> @@ -56,6 +57,233 @@ * [io.js](CHANGELOG_IOJS.md) * [Archive](CHANGELOG_ARCHIVE.md) +<a id="22.14.0"></a> + +## 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 + +### Notable Changes + +* \[[`82a9000e9e`](https://github.com/nodejs/node/commit/82a9000e9e)] - **crypto**: update root certificates to NSS 3.107 (Node.js GitHub Bot) [#56566](https://github.com/nodejs/node/pull/56566) +* \[[`b7fe54fc88`](https://github.com/nodejs/node/commit/b7fe54fc88)] - **(SEMVER-MINOR)** **fs**: allow `exclude` option in globs to accept glob patterns (Daeyeon Jeong) [#56489](https://github.com/nodejs/node/pull/56489) +* \[[`3ac92ef607`](https://github.com/nodejs/node/commit/3ac92ef607)] - **(SEMVER-MINOR)** **lib**: add typescript support to STDIN eval (Marco Ippolito) [#56359](https://github.com/nodejs/node/pull/56359) +* \[[`1614e8e7bc`](https://github.com/nodejs/node/commit/1614e8e7bc)] - **(SEMVER-MINOR)** **module**: add ERR\_UNSUPPORTED\_TYPESCRIPT\_SYNTAX (Marco Ippolito) [#56610](https://github.com/nodejs/node/pull/56610) +* \[[`6d6cffa9cc`](https://github.com/nodejs/node/commit/6d6cffa9cc)] - **(SEMVER-MINOR)** **module**: add `findPackageJSON` util (Jacob Smith) [#55412](https://github.com/nodejs/node/pull/55412) +* \[[`d35333ae18`](https://github.com/nodejs/node/commit/d35333ae18)] - **(SEMVER-MINOR)** **process**: add process.ref() and process.unref() methods (James M Snell) [#56400](https://github.com/nodejs/node/pull/56400) +* \[[`07ff3ddcb5`](https://github.com/nodejs/node/commit/07ff3ddcb5)] - **(SEMVER-MINOR)** **sqlite**: support TypedArray and DataView in `StatementSync` (Alex Yang) [#56385](https://github.com/nodejs/node/pull/56385) +* \[[`94d3fe1b62`](https://github.com/nodejs/node/commit/94d3fe1b62)] - **(SEMVER-MINOR)** **src**: add --disable-sigusr1 to prevent signal i/o thread (Rafael Gonzaga) [#56441](https://github.com/nodejs/node/pull/56441) +* \[[`5afffb4415`](https://github.com/nodejs/node/commit/5afffb4415)] - **(SEMVER-MINOR)** **src,worker**: add isInternalWorker (Carlos Espa) [#56469](https://github.com/nodejs/node/pull/56469) +* \[[`697a851fb3`](https://github.com/nodejs/node/commit/697a851fb3)] - **(SEMVER-MINOR)** **test\_runner**: add TestContext.prototype.waitFor() (Colin Ihrig) [#56595](https://github.com/nodejs/node/pull/56595) +* \[[`047537b48c`](https://github.com/nodejs/node/commit/047537b48c)] - **(SEMVER-MINOR)** **test\_runner**: add t.assert.fileSnapshot() (Colin Ihrig) [#56459](https://github.com/nodejs/node/pull/56459) +* \[[`926cf84e95`](https://github.com/nodejs/node/commit/926cf84e95)] - **(SEMVER-MINOR)** **test\_runner**: add assert.register() API (Colin Ihrig) [#56434](https://github.com/nodejs/node/pull/56434) +* \[[`c658a8afdf`](https://github.com/nodejs/node/commit/c658a8afdf)] - **(SEMVER-MINOR)** **worker**: add eval ts input (Marco Ippolito) [#56394](https://github.com/nodejs/node/pull/56394) + +### Commits + +* \[[`bad1ad8650`](https://github.com/nodejs/node/commit/bad1ad8650)] - **assert**: make myers\_diff function more performant (Giovanni Bucci) [#56303](https://github.com/nodejs/node/pull/56303) +* \[[`e222e36f3b`](https://github.com/nodejs/node/commit/e222e36f3b)] - **assert**: make partialDeepStrictEqual work with urls and File prototypes (Giovanni Bucci) [#56231](https://github.com/nodejs/node/pull/56231) +* \[[`e232789fe2`](https://github.com/nodejs/node/commit/e232789fe2)] - **assert**: show diff when doing partial comparisons (Giovanni Bucci) [#56211](https://github.com/nodejs/node/pull/56211) +* \[[`c99de1fdcf`](https://github.com/nodejs/node/commit/c99de1fdcf)] - **assert**: make partialDeepStrictEqual throw when comparing \[0] with \[-0] (Giovanni) [#56237](https://github.com/nodejs/node/pull/56237) +* \[[`2386fd5840`](https://github.com/nodejs/node/commit/2386fd5840)] - **benchmark**: add validateStream to styleText bench (Rafael Gonzaga) [#56556](https://github.com/nodejs/node/pull/56556) +* \[[`b197dfa7ec`](https://github.com/nodejs/node/commit/b197dfa7ec)] - **build**: fix GN build for ngtcp2 (Cheng) [#56300](https://github.com/nodejs/node/pull/56300) +* \[[`2a3cdd34ff`](https://github.com/nodejs/node/commit/2a3cdd34ff)] - **build**: test macos-13 on GitHub actions (Michaël Zasso) [#56307](https://github.com/nodejs/node/pull/56307) +* \[[`12f716be0a`](https://github.com/nodejs/node/commit/12f716be0a)] - **build**: build v8 with -fvisibility=hidden on macOS (Joyee Cheung) [#56275](https://github.com/nodejs/node/pull/56275) +* \[[`c5ca15bd34`](https://github.com/nodejs/node/commit/c5ca15bd34)] - **child\_process**: fix parsing messages with splitted length field (Maksim Gorkov) [#56106](https://github.com/nodejs/node/pull/56106) +* \[[`8346b8fc2c`](https://github.com/nodejs/node/commit/8346b8fc2c)] - **crypto**: add missing return value check (Michael Dawson) [#56615](https://github.com/nodejs/node/pull/56615) +* \[[`82a9000e9e`](https://github.com/nodejs/node/commit/82a9000e9e)] - **crypto**: update root certificates to NSS 3.107 (Node.js GitHub Bot) [#56566](https://github.com/nodejs/node/pull/56566) +* \[[`890eef20a1`](https://github.com/nodejs/node/commit/890eef20a1)] - **crypto**: fix checkPrime crash with large buffers (Santiago Gimeno) [#56559](https://github.com/nodejs/node/pull/56559) +* \[[`5edb7b5e87`](https://github.com/nodejs/node/commit/5edb7b5e87)] - **crypto**: fix warning of ignoring return value (Cheng) [#56527](https://github.com/nodejs/node/pull/56527) +* \[[`b89f123a0b`](https://github.com/nodejs/node/commit/b89f123a0b)] - **crypto**: make generatePrime/checkPrime interruptible (James M Snell) [#56460](https://github.com/nodejs/node/pull/56460) +* \[[`63c1859e01`](https://github.com/nodejs/node/commit/63c1859e01)] - **deps**: update corepack to 0.31.0 (Node.js GitHub Bot) [#56795](https://github.com/nodejs/node/pull/56795) +* \[[`a48430d4d3`](https://github.com/nodejs/node/commit/a48430d4d3)] - **deps**: move inspector\_protocol to deps (Chengzhong Wu) [#56649](https://github.com/nodejs/node/pull/56649) +* \[[`74cccc824f`](https://github.com/nodejs/node/commit/74cccc824f)] - **deps**: macro ENODATA is deprecated in libc++ (Cheng) [#56698](https://github.com/nodejs/node/pull/56698) +* \[[`fa869ea0f2`](https://github.com/nodejs/node/commit/fa869ea0f2)] - **deps**: fixup some minor coverity warnings (James M Snell) [#56612](https://github.com/nodejs/node/pull/56612) +* \[[`1a4fa2b015`](https://github.com/nodejs/node/commit/1a4fa2b015)] - **deps**: update amaro to 0.3.0 (Node.js GitHub Bot) [#56568](https://github.com/nodejs/node/pull/56568) +* \[[`b47076fd82`](https://github.com/nodejs/node/commit/b47076fd82)] - **deps**: update amaro to 0.2.2 (Node.js GitHub Bot) [#56568](https://github.com/nodejs/node/pull/56568) +* \[[`46bd4b8731`](https://github.com/nodejs/node/commit/46bd4b8731)] - **deps**: update simdutf to 6.0.3 (Node.js GitHub Bot) [#56567](https://github.com/nodejs/node/pull/56567) +* \[[`8ead9c693b`](https://github.com/nodejs/node/commit/8ead9c693b)] - **deps**: update simdutf to 5.7.2 (Node.js GitHub Bot) [#56388](https://github.com/nodejs/node/pull/56388) +* \[[`18d4b502af`](https://github.com/nodejs/node/commit/18d4b502af)] - **deps**: update amaro to 0.2.1 (Node.js GitHub Bot) [#56390](https://github.com/nodejs/node/pull/56390) +* \[[`d938d7cc86`](https://github.com/nodejs/node/commit/d938d7cc86)] - **deps**: update googletest to 7d76a23 (Node.js GitHub Bot) [#56387](https://github.com/nodejs/node/pull/56387) +* \[[`9761e7dccb`](https://github.com/nodejs/node/commit/9761e7dccb)] - **deps**: update googletest to e54519b (Node.js GitHub Bot) [#56370](https://github.com/nodejs/node/pull/56370) +* \[[`8319dc6bc5`](https://github.com/nodejs/node/commit/8319dc6bc5)] - **deps**: update ngtcp2 to 1.10.0 (Node.js GitHub Bot) [#56334](https://github.com/nodejs/node/pull/56334) +* \[[`6eacd19d6a`](https://github.com/nodejs/node/commit/6eacd19d6a)] - **deps**: update simdutf to 5.7.0 (Node.js GitHub Bot) [#56332](https://github.com/nodejs/node/pull/56332) +* \[[`28bec2dda3`](https://github.com/nodejs/node/commit/28bec2dda3)] - **diagnostics\_channel**: capture console messages (Stephen Belanger) [#56292](https://github.com/nodejs/node/pull/56292) +* \[[`d519d33502`](https://github.com/nodejs/node/commit/d519d33502)] - **doc**: update macOS and Xcode versions for releases (Michaël Zasso) [#56337](https://github.com/nodejs/node/pull/56337) +* \[[`fcfe650507`](https://github.com/nodejs/node/commit/fcfe650507)] - **doc**: add note for features using `InternalWorker` with permission model (Antoine du Hamel) [#56706](https://github.com/nodejs/node/pull/56706) +* \[[`efbba182b5`](https://github.com/nodejs/node/commit/efbba182b5)] - **doc**: add entry to changelog about SQLite Session Extension (Bart Louwers) [#56318](https://github.com/nodejs/node/pull/56318) +* \[[`31bf9c7dd9`](https://github.com/nodejs/node/commit/31bf9c7dd9)] - **doc**: move anatoli to emeritus (Michael Dawson) [#56592](https://github.com/nodejs/node/pull/56592) +* \[[`6096e38c7c`](https://github.com/nodejs/node/commit/6096e38c7c)] - **doc**: fix styles of the expandable TOC (Antoine du Hamel) [#56755](https://github.com/nodejs/node/pull/56755) +* \[[`d423638281`](https://github.com/nodejs/node/commit/d423638281)] - **doc**: add "Skip to content" button (Antoine du Hamel) [#56750](https://github.com/nodejs/node/pull/56750) +* \[[`edeb157d75`](https://github.com/nodejs/node/commit/edeb157d75)] - **doc**: improve accessibility of expandable lists (Antoine du Hamel) [#56749](https://github.com/nodejs/node/pull/56749) +* \[[`1a79e87687`](https://github.com/nodejs/node/commit/1a79e87687)] - **doc**: add note regarding commit message trailers (Dario Piotrowicz) [#56736](https://github.com/nodejs/node/pull/56736) +* \[[`927c7e47e4`](https://github.com/nodejs/node/commit/927c7e47e4)] - **doc**: fix typo in example code for util.styleText (Robin Mehner) [#56720](https://github.com/nodejs/node/pull/56720) +* \[[`fade522538`](https://github.com/nodejs/node/commit/fade522538)] - **doc**: fix inconsistencies in `WeakSet` and `WeakMap` comparison details (Shreyans Pathak) [#56683](https://github.com/nodejs/node/pull/56683) +* \[[`55533bf147`](https://github.com/nodejs/node/commit/55533bf147)] - **doc**: add RafaelGSS as latest sec release stewards (Rafael Gonzaga) [#56682](https://github.com/nodejs/node/pull/56682) +* \[[`8e978bdee1`](https://github.com/nodejs/node/commit/8e978bdee1)] - **doc**: clarify cjs/esm diff in `queueMicrotask()` vs `process.nextTick()` (Dario Piotrowicz) [#56659](https://github.com/nodejs/node/pull/56659) +* \[[`ae360c30dc`](https://github.com/nodejs/node/commit/ae360c30dc)] - **doc**: `WeakSet` and `WeakMap` comparison details (Shreyans Pathak) [#56648](https://github.com/nodejs/node/pull/56648) +* \[[`acd2a2fda5`](https://github.com/nodejs/node/commit/acd2a2fda5)] - **doc**: mention prepare --security (Rafael Gonzaga) [#56617](https://github.com/nodejs/node/pull/56617) +* \[[`d3c0a2831d`](https://github.com/nodejs/node/commit/d3c0a2831d)] - **doc**: tweak info on reposts in ambassador program (Michael Dawson) [#56589](https://github.com/nodejs/node/pull/56589) +* \[[`3299505b49`](https://github.com/nodejs/node/commit/3299505b49)] - **doc**: add type stripping to ambassadors program (Marco Ippolito) [#56598](https://github.com/nodejs/node/pull/56598) +* \[[`b1a6ffa4e4`](https://github.com/nodejs/node/commit/b1a6ffa4e4)] - **doc**: improve internal documentation on built-in snapshot (Joyee Cheung) [#56505](https://github.com/nodejs/node/pull/56505) +* \[[`1641a28930`](https://github.com/nodejs/node/commit/1641a28930)] - **doc**: document CLI way to open the nodejs/bluesky PR (Antoine du Hamel) [#56506](https://github.com/nodejs/node/pull/56506) +* \[[`2042628fda`](https://github.com/nodejs/node/commit/2042628fda)] - **doc**: add section about using npx with permission model (Rafael Gonzaga) [#56539](https://github.com/nodejs/node/pull/56539) +* \[[`ace19a0263`](https://github.com/nodejs/node/commit/ace19a0263)] - **doc**: update gcc-version for ubuntu-lts (Kunal Kumar) [#56553](https://github.com/nodejs/node/pull/56553) +* \[[`4aa57b50f8`](https://github.com/nodejs/node/commit/4aa57b50f8)] - **doc**: fix parentheses in options (Tobias Nießen) [#56563](https://github.com/nodejs/node/pull/56563) +* \[[`b40b01b4d3`](https://github.com/nodejs/node/commit/b40b01b4d3)] - **doc**: include CVE to EOL lines as sec release process (Rafael Gonzaga) [#56520](https://github.com/nodejs/node/pull/56520) +* \[[`6701360113`](https://github.com/nodejs/node/commit/6701360113)] - **doc**: add esm examples to node:trace\_events (Alfredo González) [#56514](https://github.com/nodejs/node/pull/56514) +* \[[`d3207cca3e`](https://github.com/nodejs/node/commit/d3207cca3e)] - **doc**: add message for Ambassadors to promote (Michael Dawson) [#56235](https://github.com/nodejs/node/pull/56235) +* \[[`97ece4ae06`](https://github.com/nodejs/node/commit/97ece4ae06)] - **doc**: allow request for TSC reviews via the GitHub UI (Antoine du Hamel) [#56493](https://github.com/nodejs/node/pull/56493) +* \[[`03f25055ab`](https://github.com/nodejs/node/commit/03f25055ab)] - **doc**: add example for piping ReadableStream (Gabriel Schulhof) [#56415](https://github.com/nodejs/node/pull/56415) +* \[[`516d07482c`](https://github.com/nodejs/node/commit/516d07482c)] - **doc**: expand description of `parseArg`'s `default` (Kevin Gibbons) [#54431](https://github.com/nodejs/node/pull/54431) +* \[[`a6491effcb`](https://github.com/nodejs/node/commit/a6491effcb)] - **doc**: use `<ul>` instead of `<ol>` in `SECURITY.md` (Antoine du Hamel) [#56346](https://github.com/nodejs/node/pull/56346) +* \[[`e4ec134b21`](https://github.com/nodejs/node/commit/e4ec134b21)] - **doc**: clarify that WASM is trusted (Matteo Collina) [#56345](https://github.com/nodejs/node/pull/56345) +* \[[`0f7aed8a59`](https://github.com/nodejs/node/commit/0f7aed8a59)] - **doc**: fix the `crc32` documentation (Kevin Toshihiro Uehara) [#55898](https://github.com/nodejs/node/pull/55898) +* \[[`721104a296`](https://github.com/nodejs/node/commit/721104a296)] - **doc**: fix links in `module.md` (Antoine du Hamel) [#56283](https://github.com/nodejs/node/pull/56283) +* \[[`928540d792`](https://github.com/nodejs/node/commit/928540d792)] - **doc**: fix typos (Nathan Baulch) [#55066](https://github.com/nodejs/node/pull/55066) +* \[[`e69d35f03b`](https://github.com/nodejs/node/commit/e69d35f03b)] - **doc**: add history info for Permission Model (Antoine du Hamel) [#56707](https://github.com/nodejs/node/pull/56707) +* \[[`c6fd867ab5`](https://github.com/nodejs/node/commit/c6fd867ab5)] - **esm**: fix jsdoc type refs to `ModuleJobBase` in esm/loader (Jacob Smith) [#56499](https://github.com/nodejs/node/pull/56499) +* \[[`9cf9046bd7`](https://github.com/nodejs/node/commit/9cf9046bd7)] - _**Revert**_ "**events**: add hasEventListener util for validate" (origranot) [#56282](https://github.com/nodejs/node/pull/56282) +* \[[`b7fe54fc88`](https://github.com/nodejs/node/commit/b7fe54fc88)] - **(SEMVER-MINOR)** **fs**: allow `exclude` option in globs to accept glob patterns (Daeyeon Jeong) [#56489](https://github.com/nodejs/node/pull/56489) +* \[[`6ca27c2a59`](https://github.com/nodejs/node/commit/6ca27c2a59)] - **http2**: omit server name when HTTP2 host is IP address (islandryu) [#56530](https://github.com/nodejs/node/pull/56530) +* \[[`9f1fa199bf`](https://github.com/nodejs/node/commit/9f1fa199bf)] - **inspector**: roll inspector\_protocol (Chengzhong Wu) [#56649](https://github.com/nodejs/node/pull/56649) +* \[[`0dae4bb3ab`](https://github.com/nodejs/node/commit/0dae4bb3ab)] - **inspector**: add undici http tracking support (Chengzhong Wu) [#56488](https://github.com/nodejs/node/pull/56488) +* \[[`2c6124cec4`](https://github.com/nodejs/node/commit/2c6124cec4)] - **inspector**: report loadingFinished until the response data is consumed (Chengzhong Wu) [#56372](https://github.com/nodejs/node/pull/56372) +* \[[`96ec862ce2`](https://github.com/nodejs/node/commit/96ec862ce2)] - **lib**: refactor execution.js (Marco Ippolito) [#56358](https://github.com/nodejs/node/pull/56358) +* \[[`3ac92ef607`](https://github.com/nodejs/node/commit/3ac92ef607)] - **(SEMVER-MINOR)** **lib**: add typescript support to STDIN eval (Marco Ippolito) [#56359](https://github.com/nodejs/node/pull/56359) +* \[[`d5bf3db0cf`](https://github.com/nodejs/node/commit/d5bf3db0cf)] - **lib**: allow skipping source maps in node\_modules (Chengzhong Wu) [#56639](https://github.com/nodejs/node/pull/56639) +* \[[`d33eaf2bcb`](https://github.com/nodejs/node/commit/d33eaf2bcb)] - **lib**: ensure FORCE\_COLOR forces color output in non-TTY environments (Pietro Marchini) [#55404](https://github.com/nodejs/node/pull/55404) +* \[[`dc003218a8`](https://github.com/nodejs/node/commit/dc003218a8)] - **lib**: optimize `prepareStackTrace` on builtin frames (Chengzhong Wu) [#56299](https://github.com/nodejs/node/pull/56299) +* \[[`df06524863`](https://github.com/nodejs/node/commit/df06524863)] - **lib**: suppress source map lookup exceptions (Chengzhong Wu) [#56299](https://github.com/nodejs/node/pull/56299) +* \[[`35335a5a66`](https://github.com/nodejs/node/commit/35335a5a66)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#56580](https://github.com/nodejs/node/pull/56580) +* \[[`1faabdb150`](https://github.com/nodejs/node/commit/1faabdb150)] - **meta**: add codeowners of security release document (Rafael Gonzaga) [#56521](https://github.com/nodejs/node/pull/56521) +* \[[`b4ece22ef5`](https://github.com/nodejs/node/commit/b4ece22ef5)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#56342](https://github.com/nodejs/node/pull/56342) +* \[[`9ec67e7ce0`](https://github.com/nodejs/node/commit/9ec67e7ce0)] - **meta**: move MoLow to TSC regular member (Moshe Atlow) [#56276](https://github.com/nodejs/node/pull/56276) +* \[[`bae4b2e20a`](https://github.com/nodejs/node/commit/bae4b2e20a)] - **module**: use more defensive code when handling SWC errors (Antoine du Hamel) [#56646](https://github.com/nodejs/node/pull/56646) +* \[[`1614e8e7bc`](https://github.com/nodejs/node/commit/1614e8e7bc)] - **(SEMVER-MINOR)** **module**: add ERR\_UNSUPPORTED\_TYPESCRIPT\_SYNTAX (Marco Ippolito) [#56610](https://github.com/nodejs/node/pull/56610) +* \[[`174d88eab1`](https://github.com/nodejs/node/commit/174d88eab1)] - **module**: support eval with ts syntax detection (Marco Ippolito) [#56285](https://github.com/nodejs/node/pull/56285) +* \[[`299d6fa829`](https://github.com/nodejs/node/commit/299d6fa829)] - **module**: fix jsdoc for `format` parameter in cjs/loader (pacexy) [#56501](https://github.com/nodejs/node/pull/56501) +* \[[`0307e4dd59`](https://github.com/nodejs/node/commit/0307e4dd59)] - **module**: unify TypeScript and .mjs handling in CommonJS (Joyee Cheung) [#55590](https://github.com/nodejs/node/pull/55590) +* \[[`1f4f9be93d`](https://github.com/nodejs/node/commit/1f4f9be93d)] - **module**: fix async resolution error within the sync `findPackageJSON` (Jacob Smith) [#56382](https://github.com/nodejs/node/pull/56382) +* \[[`bbedffa0f0`](https://github.com/nodejs/node/commit/bbedffa0f0)] - **module**: simplify `findPackageJSON` implementation (Antoine du Hamel) [#55543](https://github.com/nodejs/node/pull/55543) +* \[[`6d6cffa9cc`](https://github.com/nodejs/node/commit/6d6cffa9cc)] - **(SEMVER-MINOR)** **module**: add `findPackageJSON` util (Jacob Smith) [#55412](https://github.com/nodejs/node/pull/55412) +* \[[`cd7ce18233`](https://github.com/nodejs/node/commit/cd7ce18233)] - **module**: fix bad `require.resolve` with option paths for `.` and `..` (Dario Piotrowicz) [#56735](https://github.com/nodejs/node/pull/56735) +* \[[`152df4da21`](https://github.com/nodejs/node/commit/152df4da21)] - **module**: rethrow amaro error message (Marco Ippolito) [#56568](https://github.com/nodejs/node/pull/56568) +* \[[`acba5dc87e`](https://github.com/nodejs/node/commit/acba5dc87e)] - **module**: use buffer.toString base64 (Chengzhong Wu) [#56315](https://github.com/nodejs/node/pull/56315) +* \[[`01e69be8ff`](https://github.com/nodejs/node/commit/01e69be8ff)] - **node-api**: define version 10 (Gabriel Schulhof) [#55676](https://github.com/nodejs/node/pull/55676) +* \[[`724524528e`](https://github.com/nodejs/node/commit/724524528e)] - **node-api**: remove deprecated attribute from napi\_module\_register (Vladimir Morozov) [#56162](https://github.com/nodejs/node/pull/56162) +* \[[`c78e11064f`](https://github.com/nodejs/node/commit/c78e11064f)] - **process**: remove support for undocumented symbol (Antoine du Hamel) [#56552](https://github.com/nodejs/node/pull/56552) +* \[[`3f69b18a23`](https://github.com/nodejs/node/commit/3f69b18a23)] - **process**: fix symbol key and mark experimental new `node:process` methods (Antoine du Hamel) [#56517](https://github.com/nodejs/node/pull/56517) +* \[[`d35333ae18`](https://github.com/nodejs/node/commit/d35333ae18)] - **(SEMVER-MINOR)** **process**: add process.ref() and process.unref() methods (James M Snell) [#56400](https://github.com/nodejs/node/pull/56400) +* \[[`fa49f0f7d5`](https://github.com/nodejs/node/commit/fa49f0f7d5)] - **punycode**: limit deprecation warning (Colin Ihrig) [#56632](https://github.com/nodejs/node/pull/56632) +* \[[`d77c7073b7`](https://github.com/nodejs/node/commit/d77c7073b7)] - **sqlite**: disable memstatus APIs at build time (Colin Ihrig) [#56541](https://github.com/nodejs/node/pull/56541) +* \[[`07ff3ddcb5`](https://github.com/nodejs/node/commit/07ff3ddcb5)] - **(SEMVER-MINOR)** **sqlite**: support TypedArray and DataView in `StatementSync` (Alex Yang) [#56385](https://github.com/nodejs/node/pull/56385) +* \[[`b6c2e91365`](https://github.com/nodejs/node/commit/b6c2e91365)] - **sqlite**: enable SQL math functions (Colin Ihrig) [#56447](https://github.com/nodejs/node/pull/56447) +* \[[`3462263e8b`](https://github.com/nodejs/node/commit/3462263e8b)] - **sqlite**: pass conflict type to conflict resolution handler (Bart Louwers) [#56352](https://github.com/nodejs/node/pull/56352) +* \[[`89ba3af743`](https://github.com/nodejs/node/commit/89ba3af743)] - **src**: add nullptr handling from X509\_STORE\_new() (Burkov Egor) [#56700](https://github.com/nodejs/node/pull/56700) +* \[[`89a7c82e0c`](https://github.com/nodejs/node/commit/89a7c82e0c)] - **src**: add default value for RSACipherConfig mode field (Burkov Egor) [#56701](https://github.com/nodejs/node/pull/56701) +* \[[`7bae51e62e`](https://github.com/nodejs/node/commit/7bae51e62e)] - **src**: fix build with GCC 15 (tjuhaszrh) [#56740](https://github.com/nodejs/node/pull/56740) +* \[[`432a4b8bd6`](https://github.com/nodejs/node/commit/432a4b8bd6)] - **src**: fix to generate path from wchar\_t via wstring (yamachu) [#56696](https://github.com/nodejs/node/pull/56696) +* \[[`8c9eaf82f0`](https://github.com/nodejs/node/commit/8c9eaf82f0)] - **src**: initialize FSReqWrapSync in path that uses it (Michaël Zasso) [#56613](https://github.com/nodejs/node/pull/56613) +* \[[`bcdb42d40b`](https://github.com/nodejs/node/commit/bcdb42d40b)] - **src**: handle duplicate paths granted (Rafael Gonzaga) [#56591](https://github.com/nodejs/node/pull/56591) +* \[[`d6a7acc207`](https://github.com/nodejs/node/commit/d6a7acc207)] - **src**: update ECKeyPointer in ncrypto (James M Snell) [#56526](https://github.com/nodejs/node/pull/56526) +* \[[`01922f8b1f`](https://github.com/nodejs/node/commit/01922f8b1f)] - **src**: update ECPointPointer in ncrypto (James M Snell) [#56526](https://github.com/nodejs/node/pull/56526) +* \[[`2a3a36eceb`](https://github.com/nodejs/node/commit/2a3a36eceb)] - **src**: update ECGroupPointer in ncrypto (James M Snell) [#56526](https://github.com/nodejs/node/pull/56526) +* \[[`67c10cdacb`](https://github.com/nodejs/node/commit/67c10cdacb)] - **src**: update ECDASSigPointer implementation in ncrypto (James M Snell) [#56526](https://github.com/nodejs/node/pull/56526) +* \[[`17f931c68b`](https://github.com/nodejs/node/commit/17f931c68b)] - **src**: cleaning up more crypto internals for ncrypto (James M Snell) [#56526](https://github.com/nodejs/node/pull/56526) +* \[[`94d3fe1b62`](https://github.com/nodejs/node/commit/94d3fe1b62)] - **(SEMVER-MINOR)** **src**: add --disable-sigusr1 to prevent signal i/o thread (Rafael Gonzaga) [#56441](https://github.com/nodejs/node/pull/56441) +* \[[`6594ee8dff`](https://github.com/nodejs/node/commit/6594ee8dff)] - **src**: fix undefined script name in error source (Chengzhong Wu) [#56502](https://github.com/nodejs/node/pull/56502) +* \[[`b46bad3e91`](https://github.com/nodejs/node/commit/b46bad3e91)] - **src**: refactor --trace-env to reuse option selection and handling (Joyee Cheung) [#56293](https://github.com/nodejs/node/pull/56293) +* \[[`76921b822b`](https://github.com/nodejs/node/commit/76921b822b)] - **src**: minor cleanups on OneByteString usage (James M Snell) [#56482](https://github.com/nodejs/node/pull/56482) +* \[[`3f0d1dd4fe`](https://github.com/nodejs/node/commit/3f0d1dd4fe)] - **src**: move more crypto impl detail to ncrypto dep (James M Snell) [#56421](https://github.com/nodejs/node/pull/56421) +* \[[`04f623b283`](https://github.com/nodejs/node/commit/04f623b283)] - **src**: fixup more ToLocalChecked uses in node\_file (James M Snell) [#56484](https://github.com/nodejs/node/pull/56484) +* \[[`5aa436f5a1`](https://github.com/nodejs/node/commit/5aa436f5a1)] - **src**: make some minor ToLocalChecked cleanups (James M Snell) [#56483](https://github.com/nodejs/node/pull/56483) +* \[[`6eec5e7ec2`](https://github.com/nodejs/node/commit/6eec5e7ec2)] - **src**: lock the thread properly in snapshot builder (Joyee Cheung) [#56327](https://github.com/nodejs/node/pull/56327) +* \[[`5614993968`](https://github.com/nodejs/node/commit/5614993968)] - **src**: drain platform tasks before creating startup snapshot (Chengzhong Wu) [#56403](https://github.com/nodejs/node/pull/56403) +* \[[`48493e9fd5`](https://github.com/nodejs/node/commit/48493e9fd5)] - **src**: use LocalVector in more places (James M Snell) [#56457](https://github.com/nodejs/node/pull/56457) +* \[[`7e5ea0681e`](https://github.com/nodejs/node/commit/7e5ea0681e)] - **src**: use v8::LocalVector consistently with other minor cleanups (James M Snell) [#56417](https://github.com/nodejs/node/pull/56417) +* \[[`ad3d857f2b`](https://github.com/nodejs/node/commit/ad3d857f2b)] - **src**: use starts\_with in fs\_permission.cc (ishabi) [#55811](https://github.com/nodejs/node/pull/55811) +* \[[`5afffb4415`](https://github.com/nodejs/node/commit/5afffb4415)] - **(SEMVER-MINOR)** **src,worker**: add isInternalWorker (Carlos Espa) [#56469](https://github.com/nodejs/node/pull/56469) +* \[[`7d1676e72e`](https://github.com/nodejs/node/commit/7d1676e72e)] - **stream**: fix typo in ReadableStreamBYOBReader.readIntoRequests (Mattias Buelens) [#56560](https://github.com/nodejs/node/pull/56560) +* \[[`e658ea6b26`](https://github.com/nodejs/node/commit/e658ea6b26)] - **stream**: validate undefined sizeAlgorithm in WritableStream (Jason Zhang) [#56067](https://github.com/nodejs/node/pull/56067) +* \[[`e4f133c20c`](https://github.com/nodejs/node/commit/e4f133c20c)] - **test**: add ts eval snapshots (Marco Ippolito) [#56358](https://github.com/nodejs/node/pull/56358) +* \[[`f041742400`](https://github.com/nodejs/node/commit/f041742400)] - **test**: remove empty lines from snapshots (Marco Ippolito) [#56358](https://github.com/nodejs/node/pull/56358) +* \[[`801cde91f6`](https://github.com/nodejs/node/commit/801cde91f6)] - **test**: reduce number of written chunks (Luigi Pinca) [#56757](https://github.com/nodejs/node/pull/56757) +* \[[`6fdf1879ab`](https://github.com/nodejs/node/commit/6fdf1879ab)] - **test**: fix invalid common.mustSucceed() usage (Luigi Pinca) [#56756](https://github.com/nodejs/node/pull/56756) +* \[[`d2bfbfa364`](https://github.com/nodejs/node/commit/d2bfbfa364)] - **test**: use strict mode in global setters test (Rich Trott) [#56742](https://github.com/nodejs/node/pull/56742) +* \[[`5c030da42f`](https://github.com/nodejs/node/commit/5c030da42f)] - **test**: cleanup and simplify test-crypto-aes-wrap (James M Snell) [#56748](https://github.com/nodejs/node/pull/56748) +* \[[`f1442d6eaf`](https://github.com/nodejs/node/commit/f1442d6eaf)] - **test**: do not use common.isMainThread (Luigi Pinca) [#56768](https://github.com/nodejs/node/pull/56768) +* \[[`49405bd9e7`](https://github.com/nodejs/node/commit/49405bd9e7)] - **test**: make some requires lazy in common/index (James M Snell) [#56715](https://github.com/nodejs/node/pull/56715) +* \[[`52ef376788`](https://github.com/nodejs/node/commit/52ef376788)] - **test**: add test that uses multibyte for path and resolves modules (yamachu) [#56696](https://github.com/nodejs/node/pull/56696) +* \[[`b811dea85a`](https://github.com/nodejs/node/commit/b811dea85a)] - **test**: replace more uses of `global` with `globalThis` (James M Snell) [#56712](https://github.com/nodejs/node/pull/56712) +* \[[`eb97076199`](https://github.com/nodejs/node/commit/eb97076199)] - **test**: make common/index slightly less node.js specific (James M Snell) [#56712](https://github.com/nodejs/node/pull/56712) +* \[[`1795202d19`](https://github.com/nodejs/node/commit/1795202d19)] - **test**: rely less on duplicative common test harness utilities (James M Snell) [#56712](https://github.com/nodejs/node/pull/56712) +* \[[`5be29a274e`](https://github.com/nodejs/node/commit/5be29a274e)] - **test**: simplify common/index.js (James M Snell) [#56712](https://github.com/nodejs/node/pull/56712) +* \[[`92e99780f0`](https://github.com/nodejs/node/commit/92e99780f0)] - **test**: move hasMultiLocalhost to common/net (James M Snell) [#56716](https://github.com/nodejs/node/pull/56716) +* \[[`1c3204a4cc`](https://github.com/nodejs/node/commit/1c3204a4cc)] - **test**: move crypto related common utilities in common/crypto (James M Snell) [#56714](https://github.com/nodejs/node/pull/56714) +* \[[`fe79d63be0`](https://github.com/nodejs/node/commit/fe79d63be0)] - **test**: add missing test for env file (Jonas) [#56642](https://github.com/nodejs/node/pull/56642) +* \[[`e08af61537`](https://github.com/nodejs/node/commit/e08af61537)] - **test**: enforce strict mode in test-zlib-const (Rich Trott) [#56689](https://github.com/nodejs/node/pull/56689) +* \[[`c96792d7f8`](https://github.com/nodejs/node/commit/c96792d7f8)] - **test**: fix localization data for ICU 74.2 (Antoine du Hamel) [#56661](https://github.com/nodejs/node/pull/56661) +* \[[`48b72f1195`](https://github.com/nodejs/node/commit/48b72f1195)] - **test**: use --permission instead of --experimental-permission (Rafael Gonzaga) [#56685](https://github.com/nodejs/node/pull/56685) +* \[[`de81d90fce`](https://github.com/nodejs/node/commit/de81d90fce)] - **test**: test-stream-compose.js doesn't need internals (Meghan Denny) [#56619](https://github.com/nodejs/node/pull/56619) +* \[[`f5b8499ad0`](https://github.com/nodejs/node/commit/f5b8499ad0)] - **test**: add maxCount and gcOptions to gcUntil() (Joyee Cheung) [#56522](https://github.com/nodejs/node/pull/56522) +* \[[`d9e5a81041`](https://github.com/nodejs/node/commit/d9e5a81041)] - **test**: add line break at end of file (Rafael Gonzaga) [#56588](https://github.com/nodejs/node/pull/56588) +* \[[`59be346fbf`](https://github.com/nodejs/node/commit/59be346fbf)] - **test**: mark test-worker-prof as flaky on smartos (Joyee Cheung) [#56583](https://github.com/nodejs/node/pull/56583) +* \[[`12a2cae9e5`](https://github.com/nodejs/node/commit/12a2cae9e5)] - **test**: update test-child-process-bad-stdio to use node:test (Colin Ihrig) [#56562](https://github.com/nodejs/node/pull/56562) +* \[[`2dc4a30e19`](https://github.com/nodejs/node/commit/2dc4a30e19)] - **test**: disable openssl 3.4.0 incompatible tests (Jelle van der Waa) [#56160](https://github.com/nodejs/node/pull/56160) +* \[[`1950fbf51d`](https://github.com/nodejs/node/commit/1950fbf51d)] - **test**: make test-crypto-hash compatible with OpenSSL > 3.4.0 (Jelle van der Waa) [#56160](https://github.com/nodejs/node/pull/56160) +* \[[`a533420a91`](https://github.com/nodejs/node/commit/a533420a91)] - **test**: clarify fork inherit permission flags (Rafael Gonzaga) [#56523](https://github.com/nodejs/node/pull/56523) +* \[[`697e799dc1`](https://github.com/nodejs/node/commit/697e799dc1)] - **test**: add error only reporter for node:test (Carlos Espa) [#56438](https://github.com/nodejs/node/pull/56438) +* \[[`4844fa212d`](https://github.com/nodejs/node/commit/4844fa212d)] - **test**: mark test-http-server-request-timeouts-mixed as flaky (Joyee Cheung) [#56503](https://github.com/nodejs/node/pull/56503) +* \[[`843c2389b9`](https://github.com/nodejs/node/commit/843c2389b9)] - **test**: update error code in tls-psk-circuit for for OpenSSL 3.4 (sebastianas) [#56420](https://github.com/nodejs/node/pull/56420) +* \[[`ccb2ddbd83`](https://github.com/nodejs/node/commit/ccb2ddbd83)] - **test**: update compiled sqlite tests to match other tests (Colin Ihrig) [#56446](https://github.com/nodejs/node/pull/56446) +* \[[`b40f50324d`](https://github.com/nodejs/node/commit/b40f50324d)] - **test**: add initial test426 coverage (Chengzhong Wu) [#56436](https://github.com/nodejs/node/pull/56436) +* \[[`059f81e4fd`](https://github.com/nodejs/node/commit/059f81e4fd)] - **test**: update test-set-http-max-http-headers to use node:test (Colin Ihrig) [#56439](https://github.com/nodejs/node/pull/56439) +* \[[`ec2940b418`](https://github.com/nodejs/node/commit/ec2940b418)] - **test**: update test-child-process-windows-hide to use node:test (Colin Ihrig) [#56437](https://github.com/nodejs/node/pull/56437) +* \[[`0362924880`](https://github.com/nodejs/node/commit/0362924880)] - **test**: use unusual chars in the path to ensure our tests are robust (Antoine du Hamel) [#48409](https://github.com/nodejs/node/pull/48409) +* \[[`b6c3869910`](https://github.com/nodejs/node/commit/b6c3869910)] - **test**: improve abort signal dropping test (Edy Silva) [#56339](https://github.com/nodejs/node/pull/56339) +* \[[`cc648ef923`](https://github.com/nodejs/node/commit/cc648ef923)] - **test**: enable ts test on win arm64 (Marco Ippolito) [#56349](https://github.com/nodejs/node/pull/56349) +* \[[`68819b4997`](https://github.com/nodejs/node/commit/68819b4997)] - **test**: deflake test-watch-file-shared-dependency (Luigi Pinca) [#56344](https://github.com/nodejs/node/pull/56344) +* \[[`ca6ed2190c`](https://github.com/nodejs/node/commit/ca6ed2190c)] - **test**: skip `test-sqlite-extensions` when SQLite is not built by us (Antoine du Hamel) [#56341](https://github.com/nodejs/node/pull/56341) +* \[[`8ffeb8b58c`](https://github.com/nodejs/node/commit/8ffeb8b58c)] - **test**: increase spin for eventloop test on s390 (Michael Dawson) [#56228](https://github.com/nodejs/node/pull/56228) +* \[[`6ae9950f08`](https://github.com/nodejs/node/commit/6ae9950f08)] - **test**: migrate message eval tests from Python to JS (Yiyun Lei) [#50482](https://github.com/nodejs/node/pull/50482) +* \[[`4352bf69e9`](https://github.com/nodejs/node/commit/4352bf69e9)] - **test**: check typescript loader (Marco Ippolito) [#54657](https://github.com/nodejs/node/pull/54657) +* \[[`406e7db9c3`](https://github.com/nodejs/node/commit/406e7db9c3)] - **test**: remove async-hooks/test-writewrap flaky designation (Luigi Pinca) [#56048](https://github.com/nodejs/node/pull/56048) +* \[[`fa56ab2bba`](https://github.com/nodejs/node/commit/fa56ab2bba)] - **test**: deflake test-esm-loader-hooks-inspect-brk (Luigi Pinca) [#56050](https://github.com/nodejs/node/pull/56050) +* \[[`8e149aac99`](https://github.com/nodejs/node/commit/8e149aac99)] - **test**: add test case for listeners (origranot) [#56282](https://github.com/nodejs/node/pull/56282) +* \[[`a3f5ef22cd`](https://github.com/nodejs/node/commit/a3f5ef22cd)] - **test**: make `test-permission-sqlite-load-extension` more robust (Antoine du Hamel) [#56295](https://github.com/nodejs/node/pull/56295) +* \[[`8cbb7cc838`](https://github.com/nodejs/node/commit/8cbb7cc838)] - **test\_runner**: print failing assertion only once with spec reporter (Pietro Marchini) [#56662](https://github.com/nodejs/node/pull/56662) +* \[[`1f426bad9a`](https://github.com/nodejs/node/commit/1f426bad9a)] - **test\_runner**: remove unused errors (Pietro Marchini) [#56607](https://github.com/nodejs/node/pull/56607) +* \[[`697a851fb3`](https://github.com/nodejs/node/commit/697a851fb3)] - **(SEMVER-MINOR)** **test\_runner**: add TestContext.prototype.waitFor() (Colin Ihrig) [#56595](https://github.com/nodejs/node/pull/56595) +* \[[`047537b48c`](https://github.com/nodejs/node/commit/047537b48c)] - **(SEMVER-MINOR)** **test\_runner**: add t.assert.fileSnapshot() (Colin Ihrig) [#56459](https://github.com/nodejs/node/pull/56459) +* \[[`19b4aa4b14`](https://github.com/nodejs/node/commit/19b4aa4b14)] - **test\_runner**: run single test file benchmark (Pietro Marchini) [#56479](https://github.com/nodejs/node/pull/56479) +* \[[`926cf84e95`](https://github.com/nodejs/node/commit/926cf84e95)] - **(SEMVER-MINOR)** **test\_runner**: add assert.register() API (Colin Ihrig) [#56434](https://github.com/nodejs/node/pull/56434) +* \[[`fb4661a4cf`](https://github.com/nodejs/node/commit/fb4661a4cf)] - **test\_runner**: finish marking snapshot testing as stable (Colin Ihrig) [#56425](https://github.com/nodejs/node/pull/56425) +* \[[`900c6c3940`](https://github.com/nodejs/node/commit/900c6c3940)] - **tls**: fix error stack conversion in cryptoErrorListToException() (Joyee Cheung) [#56554](https://github.com/nodejs/node/pull/56554) +* \[[`e9f185b658`](https://github.com/nodejs/node/commit/e9f185b658)] - **tools**: update doc to new version (Node.js GitHub Bot) [#56259](https://github.com/nodejs/node/pull/56259) +* \[[`7644c7e619`](https://github.com/nodejs/node/commit/7644c7e619)] - **tools**: update inspector\_protocol roller (Chengzhong Wu) [#56649](https://github.com/nodejs/node/pull/56649) +* \[[`362272b0a4`](https://github.com/nodejs/node/commit/362272b0a4)] - **tools**: do not throw on missing `create-release-proposal.sh` (Antoine du Hamel) [#56704](https://github.com/nodejs/node/pull/56704) +* \[[`df8b835953`](https://github.com/nodejs/node/commit/df8b835953)] - **tools**: fix tools-deps-update (Daniel Lemire) [#56684](https://github.com/nodejs/node/pull/56684) +* \[[`feba5d3274`](https://github.com/nodejs/node/commit/feba5d3274)] - **tools**: do not throw on missing `create-release-proposal.sh` (Antoine du Hamel) [#56695](https://github.com/nodejs/node/pull/56695) +* \[[`9827f7d395`](https://github.com/nodejs/node/commit/9827f7d395)] - **tools**: fix permissions in `lint-release-proposal` workflow (Antoine du Hamel) [#56614](https://github.com/nodejs/node/pull/56614) +* \[[`14c562c0dc`](https://github.com/nodejs/node/commit/14c562c0dc)] - **tools**: remove github reporter (Carlos Espa) [#56468](https://github.com/nodejs/node/pull/56468) +* \[[`ed1785d0ae`](https://github.com/nodejs/node/commit/ed1785d0ae)] - **tools**: edit `create-release-proposal` workflow (Antoine du Hamel) [#56540](https://github.com/nodejs/node/pull/56540) +* \[[`294e4c42f5`](https://github.com/nodejs/node/commit/294e4c42f5)] - **tools**: validate commit list as part of `lint-release-commit` (Antoine du Hamel) [#56291](https://github.com/nodejs/node/pull/56291) +* \[[`98d3474267`](https://github.com/nodejs/node/commit/98d3474267)] - **tools**: fix loong64 build failed (Xiao-Tao) [#56466](https://github.com/nodejs/node/pull/56466) +* \[[`3e729ceec8`](https://github.com/nodejs/node/commit/3e729ceec8)] - **tools**: disable unneeded rule ignoring in Python linting (Rich Trott) [#56429](https://github.com/nodejs/node/pull/56429) +* \[[`d5c05328e2`](https://github.com/nodejs/node/commit/d5c05328e2)] - **tools**: use a configurable value for number of open dependabot PRs (Antoine du Hamel) [#56427](https://github.com/nodejs/node/pull/56427) +* \[[`1705cbe002`](https://github.com/nodejs/node/commit/1705cbe002)] - **tools**: bump the eslint group in /tools/eslint with 4 updates (dependabot\[bot]) [#56426](https://github.com/nodejs/node/pull/56426) +* \[[`53b29b0469`](https://github.com/nodejs/node/commit/53b29b0469)] - **tools**: fix `require-common-first` lint rule from subfolder (Antoine du Hamel) [#56325](https://github.com/nodejs/node/pull/56325) +* \[[`105c4ed4fb`](https://github.com/nodejs/node/commit/105c4ed4fb)] - **tools**: add release line label when opening release proposal (Antoine du Hamel) [#56317](https://github.com/nodejs/node/pull/56317) +* \[[`30f61f4aa5`](https://github.com/nodejs/node/commit/30f61f4aa5)] - **url**: use resolved path to convert UNC paths to URL (Antoine du Hamel) [#56302](https://github.com/nodejs/node/pull/56302) +* \[[`a0aef4dfb6`](https://github.com/nodejs/node/commit/a0aef4dfb6)] - **util**: inspect: do not crash on an Error stack that contains a Symbol (Jordan Harband) [#56573](https://github.com/nodejs/node/pull/56573) +* \[[`a8a060341f`](https://github.com/nodejs/node/commit/a8a060341f)] - **util**: inspect: do not crash on an Error with a regex `name` (Jordan Harband) [#56574](https://github.com/nodejs/node/pull/56574) +* \[[`ea66bf3553`](https://github.com/nodejs/node/commit/ea66bf3553)] - **util**: rename CallSite.column to columnNumber (Chengzhong Wu) [#56584](https://github.com/nodejs/node/pull/56584) +* \[[`9cdc3b373c`](https://github.com/nodejs/node/commit/9cdc3b373c)] - **util**: do not crash on inspecting function with `Symbol` name (Jordan Harband) [#56572](https://github.com/nodejs/node/pull/56572) +* \[[`0bfbb68569`](https://github.com/nodejs/node/commit/0bfbb68569)] - **util**: expose CallSite.scriptId (Chengzhong Wu) [#56551](https://github.com/nodejs/node/pull/56551) +* \[[`5dd7116e09`](https://github.com/nodejs/node/commit/5dd7116e09)] - **watch**: reload env file for --env-file-if-exists (Jonas) [#56643](https://github.com/nodejs/node/pull/56643) +* \[[`c658a8afdf`](https://github.com/nodejs/node/commit/c658a8afdf)] - **(SEMVER-MINOR)** **worker**: add eval ts input (Marco Ippolito) [#56394](https://github.com/nodejs/node/pull/56394) +* \[[`2e5d038f48`](https://github.com/nodejs/node/commit/2e5d038f48)] - **worker**: refactor stdio to improve performance (Matteo Collina) [#56630](https://github.com/nodejs/node/pull/56630) +* \[[`f959805d01`](https://github.com/nodejs/node/commit/f959805d01)] - **worker**: flush stdout and stderr on exit (Matteo Collina) [#56428](https://github.com/nodejs/node/pull/56428) + <a id="22.13.1"></a> ## 2025-01-21, Version 22.13.1 'Jod' (LTS), @RafaelGSS @@ -329,7 +557,7 @@ Contributed by (Filip Skokan) [#56142](https://github.com/nodejs/node/pull/56142 ### Notable Changes -### require(esm) is now enabled by default +#### require(esm) is now enabled by default Support for loading native ES modules using require() had been available on v20.x and v22.x under the command line flag --experimental-require-module, and available by default on v23.x. In this release, it is now no longer behind a flag on v22.x. @@ -371,7 +599,36 @@ Certificates added: Contributed by Richard Lau in [#55681](https://github.com/nodejs/node/pull/55681) -### Other Notable Changes +#### SQLite Session Extension + +Basic support for the [SQLite Session Extension](https://www.sqlite.org/sessionintro.html) +got added to the experimental `node:sqlite` module. + +```js +const sourceDb = new DatabaseSync(':memory:'); +const targetDb = new DatabaseSync(':memory:'); + +sourceDb.exec('CREATE TABLE data(key INTEGER PRIMARY KEY, value TEXT)'); +targetDb.exec('CREATE TABLE data(key INTEGER PRIMARY KEY, value TEXT)'); + +const session = sourceDb.createSession(); + +const insert = sourceDb.prepare('INSERT INTO data (key, value) VALUES (?, ?)'); +insert.run(1, 'hello'); +insert.run(2, 'world'); + +const changeset = session.changeset(); +targetDb.applyChangeset(changeset); +// Now that the changeset has been applied, targetDb contains the same data as sourceDb. +``` + +Of note to distributors when dynamically linking with SQLite (using the `--shared-sqlite` +flag): compiling SQLite with `SQLITE_ENABLE_SESSION` and `SQLITE_ENABLE_PREUPDATE_HOOK` +defines is now required. + +Contributed by Bart Louwers in [#54181](https://github.com/nodejs/node/pull/54181). + +#### Other Notable Changes * \[[`4920869935`](https://github.com/nodejs/node/commit/4920869935)] - **(SEMVER-MINOR)** **assert**: make assertion\_error use Myers diff algorithm (Giovanni Bucci) [#54862](https://github.com/nodejs/node/pull/54862) * \[[`ccffd3b819`](https://github.com/nodejs/node/commit/ccffd3b819)] - **doc**: enforce strict policy to semver-major releases (Rafael Gonzaga) [#55732](https://github.com/nodejs/node/pull/55732) diff --git a/doc/contributing/advocacy-ambassador-program.md b/doc/contributing/advocacy-ambassador-program.md index 31d8fd58a1a4bf..76f29b73586691 100644 --- a/doc/contributing/advocacy-ambassador-program.md +++ b/doc/contributing/advocacy-ambassador-program.md @@ -94,11 +94,14 @@ process. An ambassador can request promotion of content in the following ways: * Posting a link to the content in the "what's new" issue in nodejs/ambassadors so that it goes out on the news feed. -Foundation staff will repost the social media post -without any need for validation based on the request coming from -an ambassador. These requests can be made through the existing social channel -in the OpenJS Slack. For that reason and for communication purposes and -collaboration opportunities, ambassadors should be members of the +For accounts managed by foundation staff, the staff will repost the social +media post without any need for validation based on the request coming from +an ambassador. For accounts managed by the project with an approval process, +(for example bluesky) documentation for the approval process will indicate +that repost requests from ambassadors should generally be approved. These +requests can be made through the existing social channel in the OpenJS Slack. +For that reason and for communication purposes and collaboration opportunities, +ambassadors should be members of the [OpenJS Slack](https://slack-invite.openjsf.org/). ## Messages and topics to promote @@ -165,3 +168,83 @@ Some of the things to highlight include: #### Project contacts * @mhdawson + +### How things get done in the Node.js project + +#### Goal + +Help people understand that no people are paid to answer their issues or +implement their pull requests. Things get done based on what volunteers work on +and the best way to get something fixed/changed is to submit a Pull request. + +Some of the things to highlight include: + +* Nobody is paid specifically to answer issues, fix bugs or implement new features. +* No company owns/supports Node.js. Most contributions are from individuals + as opposed to organizations. When an individual becomes a collaborator + the access and priviledges are granted to the indidual, their employer does + not gain any additional rights in the project. +* The governance of the project is specifically designed to prevent one or + a small number of companies from dominating the project. +* Decisions are made by the active collaborators, there is no single person + who makes a decision for the project on their own. This can slow down + decision making but most often results in better outcomes. +* The project is open and receptive to contributions. If you need something PR + in a fix or feature. +* Maintainers are people just like you, with many priorities and end goals. We + all have the same goal of moving the Node.js project forward but at the same + time we all have other responsibilities that affect how much time we have + available to do so. +* People are volunteering their time to review your PRs and answer questions in + the issues you open. Be mindfull of your asks for their time and acknowledge + the gift of their time. Too many issues/PRs in a short period of time may + overwelm maintainers leading to less progress versus more, try to pace your + issues and PRs so that you don't have too many open at the same time. The + same goes for comments in discussions, try to avoid overwelming a discussion + with too many responses, even too much useful data can overwelm a discussion + leading to lower engagement. +* While volunteers work to do the right thing for the community, the project + does not owe anybody anything and does not tolerate abusive or + demanding language in issues, discussions or PRs. A respectful dialog will + maximize the chances of the outcome you desire. +* If you depend on timely support or an SLA, contract with a company that provides + paid support and will prioritize your issues. + +#### Related Links + +* <https://github.com/nodejs/TSC/blob/main/TSC-Charter.md#section-3-establishment-of-the-tsc> + +#### Project contacts + +* @mcollina +* @mhdawson +* @marco-ippolito + +You can find their contact email in the [`README.md`](../../README.md#tsc-technical-steering-committee) + +#### Node.js Type Stripping + +##### Goal + +The goal is to raise awareness of the Node.js TypeScript Type Stripping in the JavaScript ecosystem. +Some of the things to highlight include: + +* The benefits and limitations of the current implementation. +* The `tsconfig.json` configuration options to use in combination for type checking. +* Updates on the implementation advancements. + +#### Related Links + +<!-- lint disable prohibited-strings remark-lint--> + +* <https://github.com/nodejs/typescript> +* <https://nodejs.org/api/typescript.html> +* <https://nodejs.org/en/learn/typescript/run-natively> +* <https://satanacchio.hashnode.dev/everything-you-need-to-know-about-nodejs-type-stripping> +* <https://github.com/nodejs/amaro> + +<!-- lint enable prohibited-strings remark-lint--> + +#### Project contacts + +* @marco-ippolito diff --git a/doc/contributing/collaborator-guide.md b/doc/contributing/collaborator-guide.md index eb5ab19f8923e9..e153c86061bb7d 100644 --- a/doc/contributing/collaborator-guide.md +++ b/doc/contributing/collaborator-guide.md @@ -523,7 +523,6 @@ deprecation level of an API. Collaborators can opt to elevate pull requests or issues to the [TSC][]. Do this if a pull request or issue: -* Is labeled `semver-major`, or * Has a significant impact on the codebase, or * Is controversial, or * Is at an impasse among collaborators who are participating in the discussion. @@ -532,6 +531,9 @@ Do this if a pull request or issue: [TSC][]. Do not use the GitHub UI on the right-hand side to assign to `@nodejs/tsc` or request a review from `@nodejs/tsc`. +If a pull request is labeled `semver-major`, you can request a review from the +`@nodejs/tsc` GitHub team. + The TSC serves as the final arbiter where required. ## Landing pull requests diff --git a/doc/contributing/pull-requests.md b/doc/contributing/pull-requests.md index 2ad538b3fd8e29..8914d60c95aa2f 100644 --- a/doc/contributing/pull-requests.md +++ b/doc/contributing/pull-requests.md @@ -184,6 +184,11 @@ A good commit message should describe what changed and why. of the log. Use the `Fixes:` prefix and the full issue URL. For other references use `Refs:`. + `Fixes:` and `Refs:` trailers get automatically added to your commit message + when the Pull Request lands as long as they are included in the + Pull Request's description. If the Pull Request lands in several commits, + by default the trailers found in the description are added to each commits. + Examples: * `Fixes: https://github.com/nodejs/node/issues/1337` diff --git a/doc/contributing/releases-node-api.md b/doc/contributing/releases-node-api.md index 088900f88c91e0..f8bcd273e39e70 100644 --- a/doc/contributing/releases-node-api.md +++ b/doc/contributing/releases-node-api.md @@ -85,7 +85,7 @@ with: ```bash grep \ - -E \ + -nHE \ 'N(ODE_)?API_EXPERIMENTAL' \ src/js_native_api{_types,}.h \ src/node_api{_types,}.h @@ -95,13 +95,13 @@ and update the define version guards with the release version: ```diff - #ifdef NAPI_EXPERIMENTAL -+ #if NAPI_VERSION >= 10 ++ #if NAPI_VERSION >= 11 NAPI_EXTERN napi_status NAPI_CDECL node_api_function(napi_env env); - #endif // NAPI_EXPERIMENTAL -+ #endif // NAPI_VERSION >= 10 ++ #endif // NAPI_VERSION >= 11 ``` Remove any feature flags of the form `NODE_API_EXPERIMENTAL_HAS_<FEATURE>`. @@ -121,11 +121,11 @@ Also, update the Node-API version value of the `napi_get_version` test in #### Step 2. Update runtime version guards If this release includes runtime behavior version guards, the relevant commits -should already include `NAPI_VERSION_EXPERIMENTAL` guard for the change. Check -for these guards with: +should already include the `NAPI_VERSION_EXPERIMENTAL` guard for the change. +Check for these guards with: ```bash -grep NAPI_VERSION_EXPERIMENTAL src/js_native_api_v8* src/node_api.cc +grep -nH NAPI_VERSION_EXPERIMENTAL src/js_native_api_v8* src/node_api.cc ``` and substitute this guard version with the release version `x`. @@ -138,7 +138,7 @@ Check for these definitions with: ```bash grep \ - -E \ + -nHE \ 'N(ODE_)?API_EXPERIMENTAL' \ test/node-api/*/{*.{h,c},binding.gyp} \ test/js-native-api/*/{*.{h,c},binding.gyp} @@ -170,7 +170,7 @@ stability banner: <!-- YAML added: - v1.2.3 -+ napiVersion: 10 ++ napiVersion: 11 --> - > Stability: 1 - Experimental @@ -186,7 +186,7 @@ For all runtime version guards updated in Step 2, check for these definitions with: ```bash -grep NAPI_EXPERIMENTAL doc/api/n-api.md +grep -nH NAPI_EXPERIMENTAL doc/api/n-api.md ``` In `doc/api/n-api.md`, update the `experimental` change history item to be the diff --git a/doc/contributing/releases.md b/doc/contributing/releases.md index b3b20b8ae5589e..5b6d2180515565 100644 --- a/doc/contributing/releases.md +++ b/doc/contributing/releases.md @@ -308,6 +308,22 @@ branch. git checkout -b v1.2.3-proposal upstream/v1.x-staging ``` +You can also run: + +```bash +git node release -S --prepare --security --filterLabel vX.x +``` + +Example: + +```bash +git checkout v20.x +git node release -S --prepare --security --filterLabel v20.x +``` + +to automate the remaining steps until step 6 or you can perform it manually +following the below steps. + <details> <summary>Security release</summary> @@ -1102,6 +1118,22 @@ The post content can be as simple as: > … > something here about notable changes +You can create the PR for the release post on nodejs/bluesky with the following: + +```bash +# Create a PR for a post: +gh workflow run create-pr.yml --repo "https://github.com/nodejs/bluesky" \ + -F prTitle='vx.x.x release announcement' \ + -F richText='Node.js vx.x.x is out. Check the blog post at https://nodejs.org/…. TL;DR is + +- New feature +- …' + +# Create a PR for a retweet: +gh workflow run create-pr.yml --repo "https://github.com/nodejs/bluesky" \ + -F prTitle='Retweet vx.x.x release announcement' -F postURL=… +``` + <details> <summary>Security release</summary> diff --git a/doc/contributing/security-release-process.md b/doc/contributing/security-release-process.md index 3508180e0d5687..7027b16a00d5e5 100644 --- a/doc/contributing/security-release-process.md +++ b/doc/contributing/security-release-process.md @@ -35,6 +35,7 @@ The current security stewards are documented in the main Node.js | NodeSource | Rafael | 2024-Apr-03 | | NodeSource | Rafael | 2024-Apr-10 | | NodeSource | Rafael | 2024-Jul-08 | +| NodeSource | Rafael | 2025-Jan-21 | | Datadog | Bryan | | | IBM | Joe | | | Platformatic | Matteo | | @@ -65,6 +66,8 @@ The current security stewards are documented in the main Node.js * [ ] 4\. **Requesting CVEs:** * Request CVEs for the reports with `git node security --request-cve`. * Make sure to have a green CI before requesting a CVE. + * Check if there is a need to issue a CVE for any version that became + EOL after the last security release through [this issue](https://github.com/nodejs/security-wg/issues/1419). * [ ] 5\. **Choosing or Updating Release Date:** * Get agreement on the planned date for the release. diff --git a/doc/contributing/static-analysis.md b/doc/contributing/static-analysis.md index f535751660eae3..702e878b1389ba 100644 --- a/doc/contributing/static-analysis.md +++ b/doc/contributing/static-analysis.md @@ -10,9 +10,9 @@ through <https://scan9.scan.coverity.com/reports.htm>. Any collaborator can ask to be added to the Node.js coverity project by opening an issue in the [build][] repository titled `Please add me to coverity`. A member of the build WG with admin access will -verify that the requestor is an existing collaborator as listed in the +verify that the requester is an existing collaborator as listed in the [collaborators section][] on the nodejs/node project repo. Once validated the -requestor will be added to the coverity project. +requester will be added to the coverity project. [Node.js coverity project]: https://scan.coverity.com/projects/node-js [build]: https://github.com/nodejs/build diff --git a/doc/template.html b/doc/template.html index ab8be0e747f492..34edf068df5c8d 100644 --- a/doc/template.html +++ b/doc/template.html @@ -26,6 +26,7 @@ __JS_FLAVORED_DYNAMIC_CSS__ </head> <body class="alt apidoc" id="api-section-__FILENAME__"> + <a href="#apicontent" class="skip-to-content">Skip to content</a> <div id="content" class="clearfix"> <div role="navigation" id="column2" class="interior"> <div id="intro" class="interior"> @@ -59,13 +60,13 @@ <h1>Node.js __VERSION__ documentation</h1> __GTOC_PICKER__ __ALTDOCS__ <li class="picker-header"> - <a href="#"> + <a href="#options-picker" aria-controls="options-picker"> <span class="picker-arrow"></span> Options </a> - <div class="picker"> - <ul> + <div class="picker" tabindex="-1"> + <ul id="options-picker"> <li> <a href="all.html">View on single page</a> </li> diff --git a/eslint.config.mjs b/eslint.config.mjs index 2e8dd65a1b3733..ef195d0c60a955 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -49,7 +49,6 @@ export default [ 'test/.tmp.*/**', 'test/addons/??_*', 'test/fixtures/**', - 'tools/github_reporter/**', ], }, // #endregion diff --git a/lib/assert.js b/lib/assert.js index a2991a096ac081..603f2a026313c9 100644 --- a/lib/assert.js +++ b/lib/assert.js @@ -56,6 +56,7 @@ const { StringPrototypeIndexOf, StringPrototypeSlice, StringPrototypeSplit, + Symbol, SymbolIterator, TypedArrayPrototypeGetLength, Uint8Array, @@ -94,6 +95,7 @@ const CallTracker = require('internal/assert/calltracker'); const { validateFunction, } = require('internal/validators'); +const { isURL } = require('internal/url'); let isDeepEqual; let isDeepStrictEqual; @@ -382,7 +384,7 @@ function isSpecial(obj) { } const typesToCallDeepStrictEqualWith = [ - isKeyObject, isWeakSet, isWeakMap, Buffer.isBuffer, isSharedArrayBuffer, + isKeyObject, isWeakSet, isWeakMap, Buffer.isBuffer, isSharedArrayBuffer, isURL, ]; function partiallyCompareMaps(actual, expected, comparedObjects) { @@ -465,7 +467,7 @@ function partiallyCompareArrayBuffersOrViews(actual, expected) { } for (let i = 0; i < expectedViewLength; i++) { - if (actualView[i] !== expectedView[i]) { + if (!ObjectIs(actualView[i], expectedView[i])) { return false; } } @@ -497,6 +499,17 @@ function partiallyCompareSets(actual, expected, comparedObjects) { return true; } +const minusZeroSymbol = Symbol('-0'); +const zeroSymbol = Symbol('0'); + +// Helper function to get a unique key for 0, -0 to avoid collisions +function getZeroKey(item) { + if (item === 0) { + return ObjectIs(item, -0) ? minusZeroSymbol : zeroSymbol; + } + return item; +} + function partiallyCompareArrays(actual, expected, comparedObjects) { if (expected.length > actual.length) { return false; @@ -506,39 +519,58 @@ function partiallyCompareArrays(actual, expected, comparedObjects) { // Create a map to count occurrences of each element in the expected array const expectedCounts = new SafeMap(); - for (const expectedItem of expected) { - let found = false; - for (const { 0: key, 1: count } of expectedCounts) { - if (isDeepStrictEqual(key, expectedItem)) { - expectedCounts.set(key, count + 1); - found = true; - break; + const safeExpected = new SafeArrayIterator(expected); + + for (const expectedItem of safeExpected) { + // Check if the item is a zero or a -0, as these need to be handled separately + if (expectedItem === 0) { + const zeroKey = getZeroKey(expectedItem); + expectedCounts.set(zeroKey, (expectedCounts.get(zeroKey)?.count || 0) + 1); + } else { + let found = false; + for (const { 0: key, 1: count } of expectedCounts) { + if (isDeepStrictEqual(key, expectedItem)) { + expectedCounts.set(key, count + 1); + found = true; + break; + } + } + if (!found) { + expectedCounts.set(expectedItem, 1); } - } - if (!found) { - expectedCounts.set(expectedItem, 1); } } const safeActual = new SafeArrayIterator(actual); - // Create a map to count occurrences of relevant elements in the actual array for (const actualItem of safeActual) { - for (const { 0: key, 1: count } of expectedCounts) { - if (isDeepStrictEqual(key, actualItem)) { + // Check if the item is a zero or a -0, as these need to be handled separately + if (actualItem === 0) { + const zeroKey = getZeroKey(actualItem); + + if (expectedCounts.has(zeroKey)) { + const count = expectedCounts.get(zeroKey); if (count === 1) { - expectedCounts.delete(key); + expectedCounts.delete(zeroKey); } else { - expectedCounts.set(key, count - 1); + expectedCounts.set(zeroKey, count - 1); + } + } + } else { + for (const { 0: expectedItem, 1: count } of expectedCounts) { + if (isDeepStrictEqual(expectedItem, actualItem)) { + if (count === 1) { + expectedCounts.delete(expectedItem); + } else { + expectedCounts.set(expectedItem, count - 1); + } + break; } - break; } } } - const { size } = expectedCounts; - expectedCounts.clear(); - return size === 0; + return expectedCounts.size === 0; } /** @@ -555,6 +587,10 @@ function compareBranch( expected, comparedObjects, ) { + // Checking for the simplest case possible. + if (actual === expected) { + return true; + } // Check for Map object equality if (isMap(actual) && isMap(expected)) { return partiallyCompareMaps(actual, expected, comparedObjects); @@ -608,10 +644,9 @@ function compareBranch( // Check if all expected keys and values match for (let i = 0; i < keysExpected.length; i++) { const key = keysExpected[i]; - assert( - ReflectHas(actual, key), - new AssertionError({ message: `Expected key ${String(key)} not found in actual object` }), - ); + if (!ReflectHas(actual, key)) { + return false; + } if (!compareBranch(actual[key], expected[key], comparedObjects)) { return false; } diff --git a/lib/eslint.config_partial.mjs b/lib/eslint.config_partial.mjs index 0a295f71eaff9a..c3ad0d705f0616 100644 --- a/lib/eslint.config_partial.mjs +++ b/lib/eslint.config_partial.mjs @@ -13,6 +13,15 @@ const noRestrictedSyntax = [ selector: "CallExpression[callee.object.name='assert']:not([callee.property.name='ok']):not([callee.property.name='fail']):not([callee.property.name='ifError'])", message: 'Only use simple assertions', }, + { + // Forbids usages of `btoa` that are not caught by no-restricted-globals, like: + // ``` + // const { btoa } = internalBinding('buffer'); + // btoa('...'); + // ``` + selector: "CallExpression[callee.property.name='btoa'], CallExpression[callee.name='btoa']", + message: "`btoa` supports only latin-1 charset, use Buffer.from(str).toString('base64') instead", + }, { selector: 'NewExpression[callee.name=/Error$/]:not([callee.name=/^(AssertionError|NghttpError|AbortError|NodeAggregateError)$/])', message: "Use an error exported by 'internal/errors' instead.", diff --git a/lib/events.js b/lib/events.js index 570c11f566610a..5e13338985caec 100644 --- a/lib/events.js +++ b/lib/events.js @@ -287,12 +287,6 @@ ObjectDefineProperty(EventEmitter, 'defaultMaxListeners', { }, }); -function hasEventListener(self, type) { - if (type === undefined) - return self._events !== undefined; - return self._events !== undefined && self._events[type] !== undefined; -}; - ObjectDefineProperties(EventEmitter, { kMaxEventTargetListeners: { __proto__: null, @@ -686,11 +680,13 @@ EventEmitter.prototype.removeListener = function removeListener(type, listener) { checkListener(listener); - if (!hasEventListener(this, type)) + const events = this._events; + if (events === undefined) return this; - const events = this._events; const list = events[type]; + if (list === undefined) + return this; if (list === listener || list.listener === listener) { this._eventsCount -= 1; @@ -744,9 +740,9 @@ EventEmitter.prototype.off = EventEmitter.prototype.removeListener; */ EventEmitter.prototype.removeAllListeners = function removeAllListeners(type) { - if (!hasEventListener(this)) - return this; const events = this._events; + if (events === undefined) + return this; // Not listening for removeListener, no need to emit if (events.removeListener === undefined) { @@ -791,10 +787,14 @@ EventEmitter.prototype.removeAllListeners = }; function _listeners(target, type, unwrap) { - if (!hasEventListener(target, type)) + const events = target._events; + + if (events === undefined) return []; - const evlistener = target._events[type]; + const evlistener = events[type]; + if (evlistener === undefined) + return []; if (typeof evlistener === 'function') return unwrap ? [evlistener.listener || evlistener] : [evlistener]; diff --git a/lib/internal/assert/assertion_error.js b/lib/internal/assert/assertion_error.js index d036248e45755e..d654ca5038bbab 100644 --- a/lib/internal/assert/assertion_error.js +++ b/lib/internal/assert/assertion_error.js @@ -26,6 +26,7 @@ const { myersDiff, printMyersDiff, printSimpleMyersDiff } = require('internal/as const kReadableOperator = { deepStrictEqual: 'Expected values to be strictly deep-equal:', + partialDeepStrictEqual: 'Expected values to be partially and strictly deep-equal:', strictEqual: 'Expected values to be strictly equal:', strictEqualObject: 'Expected "actual" to be reference-equal to "expected":', deepEqual: 'Expected values to be loosely deep-equal:', @@ -41,6 +42,8 @@ const kReadableOperator = { const kMaxShortStringLength = 12; const kMaxLongStringLength = 512; +const kMethodsWithCustomMessageDiff = ['deepStrictEqual', 'strictEqual', 'partialDeepStrictEqual']; + function copyError(source) { const target = ObjectAssign( { __proto__: ObjectGetPrototypeOf(source) }, @@ -210,9 +213,13 @@ function createErrDiff(actual, expected, operator, customMessage) { const checkCommaDisparity = actual != null && typeof actual === 'object'; const diff = myersDiff(inspectedSplitActual, inspectedSplitExpected, checkCommaDisparity); - const myersDiffMessage = printMyersDiff(diff); + const myersDiffMessage = printMyersDiff(diff, operator); message = myersDiffMessage.message; + if (operator === 'partialDeepStrictEqual') { + header = `${colors.gray}${colors.hasColors ? '' : '+ '}actual${colors.white} ${colors.red}- expected${colors.white}`; + } + if (myersDiffMessage.skipped) { skipped = true; } @@ -255,7 +262,7 @@ class AssertionError extends Error { if (isErrorStackTraceLimitWritable()) Error.stackTraceLimit = 0; if (message != null) { - if (operator === 'deepStrictEqual' || operator === 'strictEqual') { + if (kMethodsWithCustomMessageDiff.includes(operator)) { super(createErrDiff(actual, expected, operator, message)); } else { super(String(message)); @@ -275,7 +282,7 @@ class AssertionError extends Error { expected = copyError(expected); } - if (operator === 'deepStrictEqual' || operator === 'strictEqual') { + if (kMethodsWithCustomMessageDiff.includes(operator)) { super(createErrDiff(actual, expected, operator, message)); } else if (operator === 'notDeepStrictEqual' || operator === 'notStrictEqual') { diff --git a/lib/internal/assert/myers_diff.js b/lib/internal/assert/myers_diff.js index 8893ff78d7c2a7..8ec20e304801fb 100644 --- a/lib/internal/assert/myers_diff.js +++ b/lib/internal/assert/myers_diff.js @@ -1,10 +1,9 @@ 'use strict'; const { - Array, - ArrayPrototypeFill, ArrayPrototypePush, ArrayPrototypeSlice, + Int32Array, StringPrototypeEndsWith, } = primordials; @@ -26,7 +25,7 @@ function myersDiff(actual, expected, checkCommaDisparity = false) { const actualLength = actual.length; const expectedLength = expected.length; const max = actualLength + expectedLength; - const v = ArrayPrototypeFill(Array(2 * max + 1), 0); + const v = new Int32Array(2 * max + 1); const trace = []; @@ -35,22 +34,24 @@ function myersDiff(actual, expected, checkCommaDisparity = false) { ArrayPrototypePush(trace, newTrace); for (let diagonalIndex = -diffLevel; diagonalIndex <= diffLevel; diagonalIndex += 2) { - let x; - if (diagonalIndex === -diffLevel || - (diagonalIndex !== diffLevel && v[diagonalIndex - 1 + max] < v[diagonalIndex + 1 + max])) { - x = v[diagonalIndex + 1 + max]; - } else { - x = v[diagonalIndex - 1 + max] + 1; - } - + const offset = diagonalIndex + max; + const previousOffset = v[offset - 1]; + const nextOffset = v[offset + 1]; + let x = diagonalIndex === -diffLevel || (diagonalIndex !== diffLevel && previousOffset < nextOffset) ? + nextOffset : + previousOffset + 1; let y = x - diagonalIndex; - while (x < actualLength && y < expectedLength && areLinesEqual(actual[x], expected[y], checkCommaDisparity)) { + while ( + x < actualLength && + y < expectedLength && + areLinesEqual(actual[x], expected[y], checkCommaDisparity) + ) { x++; y++; } - v[diagonalIndex + max] = x; + v[offset] = x; if (x >= actualLength && y >= expectedLength) { return backtrack(trace, actual, expected, checkCommaDisparity); @@ -71,10 +72,13 @@ function backtrack(trace, actual, expected, checkCommaDisparity) { for (let diffLevel = trace.length - 1; diffLevel >= 0; diffLevel--) { const v = trace[diffLevel]; const diagonalIndex = x - y; - let prevDiagonalIndex; + const offset = diagonalIndex + max; - if (diagonalIndex === -diffLevel || - (diagonalIndex !== diffLevel && v[diagonalIndex - 1 + max] < v[diagonalIndex + 1 + max])) { + let prevDiagonalIndex; + if ( + diagonalIndex === -diffLevel || + (diagonalIndex !== diffLevel && v[offset - 1] < v[offset + 1]) + ) { prevDiagonalIndex = diagonalIndex + 1; } else { prevDiagonalIndex = diagonalIndex - 1; @@ -84,8 +88,11 @@ function backtrack(trace, actual, expected, checkCommaDisparity) { const prevY = prevX - prevDiagonalIndex; while (x > prevX && y > prevY) { - const value = !checkCommaDisparity || - StringPrototypeEndsWith(actual[x - 1], ',') ? actual[x - 1] : expected[y - 1]; + const actualItem = actual[x - 1]; + const value = + !checkCommaDisparity || StringPrototypeEndsWith(actualItem, ',') ? + actualItem : + expected[y - 1]; ArrayPrototypePush(result, { __proto__: null, type: 'nop', value }); x--; y--; @@ -110,36 +117,37 @@ function printSimpleMyersDiff(diff) { for (let diffIdx = diff.length - 1; diffIdx >= 0; diffIdx--) { const { type, value } = diff[diffIdx]; + let color = colors.white; + if (type === 'insert') { - message += `${colors.green}${value}${colors.white}`; + color = colors.green; } else if (type === 'delete') { - message += `${colors.red}${value}${colors.white}`; - } else { - message += `${colors.white}${value}${colors.white}`; + color = colors.red; } + + message += `${color}${value}${colors.white}`; } return `\n${message}`; } -function printMyersDiff(diff, simple = false) { +function printMyersDiff(diff, operator) { let message = ''; let skipped = false; let nopCount = 0; for (let diffIdx = diff.length - 1; diffIdx >= 0; diffIdx--) { const { type, value } = diff[diffIdx]; - const previousType = (diffIdx < (diff.length - 1)) ? diff[diffIdx + 1].type : null; - const typeChanged = previousType && (type !== previousType); + const previousType = diffIdx < diff.length - 1 ? diff[diffIdx + 1].type : null; - if (typeChanged && previousType === 'nop') { - // Avoid grouping if only one line would have been grouped otherwise + // Avoid grouping if only one line would have been grouped otherwise + if (previousType === 'nop' && type !== previousType) { if (nopCount === kNopLinesToCollapse + 1) { message += `${colors.white} ${diff[diffIdx + 1].value}\n`; } else if (nopCount === kNopLinesToCollapse + 2) { message += `${colors.white} ${diff[diffIdx + 2].value}\n`; message += `${colors.white} ${diff[diffIdx + 1].value}\n`; - } if (nopCount >= (kNopLinesToCollapse + 3)) { + } else if (nopCount >= kNopLinesToCollapse + 3) { message += `${colors.blue}...${colors.white}\n`; message += `${colors.white} ${diff[diffIdx + 1].value}\n`; skipped = true; @@ -148,7 +156,11 @@ function printMyersDiff(diff, simple = false) { } if (type === 'insert') { - message += `${colors.green}+${colors.white} ${value}\n`; + if (operator === 'partialDeepStrictEqual') { + message += `${colors.gray}${colors.hasColors ? ' ' : '+'} ${value}${colors.white}\n`; + } else { + message += `${colors.green}+${colors.white} ${value}\n`; + } } else if (type === 'delete') { message += `${colors.red}-${colors.white} ${value}\n`; } else if (type === 'nop') { diff --git a/lib/internal/bootstrap/node.js b/lib/internal/bootstrap/node.js index 11d585bc5b3e47..f5c0208864084a 100644 --- a/lib/internal/bootstrap/node.js +++ b/lib/internal/bootstrap/node.js @@ -181,6 +181,8 @@ const rawMethods = internalBinding('process_methods'); process.availableMemory = rawMethods.availableMemory; process.kill = wrapped.kill; process.exit = wrapped.exit; + process.ref = perThreadSetup.ref; + process.unref = perThreadSetup.unref; let finalizationMod; ObjectDefineProperty(process, 'finalization', { @@ -375,8 +377,8 @@ internalBinding('process_methods').setEmitWarningSync(emitWarningSync); { const { - getSourceMapsEnabled, - setSourceMapsEnabled, + getSourceMapsSupport, + setSourceMapsSupport, maybeCacheGeneratedSourceMap, } = require('internal/source_map/source_map_cache'); const { @@ -388,10 +390,19 @@ internalBinding('process_methods').setEmitWarningSync(emitWarningSync); enumerable: true, configurable: true, get() { - return getSourceMapsEnabled(); + return getSourceMapsSupport().enabled; }, }); - process.setSourceMapsEnabled = setSourceMapsEnabled; + process.setSourceMapsEnabled = function setSourceMapsEnabled(val) { + setSourceMapsSupport(val, { + __proto__: null, + // TODO(legendecas): In order to smoothly improve the source map support, + // skip source maps in node_modules and generated code with + // `process.setSourceMapsEnabled(true)` in a semver major version. + nodeModules: val, + generatedCode: val, + }); + }; // The C++ land calls back to maybeCacheGeneratedSourceMap() // when code is generated by user with eval() or new Function() // to cache the source maps from the evaluated code, if any. diff --git a/lib/internal/bootstrap/switches/is_not_main_thread.js b/lib/internal/bootstrap/switches/is_not_main_thread.js index 03aa7c3ebe12f2..6fa30aec748af0 100644 --- a/lib/internal/bootstrap/switches/is_not_main_thread.js +++ b/lib/internal/bootstrap/switches/is_not_main_thread.js @@ -33,11 +33,22 @@ process.removeListener('removeListener', stopListeningIfSignal); const { createWorkerStdio, + kStdioWantsMoreDataCallback, } = require('internal/worker/io'); let workerStdio; function lazyWorkerStdio() { - return workerStdio ??= createWorkerStdio(); + if (workerStdio === undefined) { + workerStdio = createWorkerStdio(); + process.on('exit', flushSync); + } + + return workerStdio; +} + +function flushSync() { + workerStdio.stdout[kStdioWantsMoreDataCallback](); + workerStdio.stderr[kStdioWantsMoreDataCallback](); } function getStdout() { return lazyWorkerStdio().stdout; } diff --git a/lib/internal/child_process/serialization.js b/lib/internal/child_process/serialization.js index 7be39f0d48c3c2..46bb1faaf9fc21 100644 --- a/lib/internal/child_process/serialization.js +++ b/lib/internal/child_process/serialization.js @@ -61,7 +61,12 @@ const advanced = { *parseChannelMessages(channel, readData) { if (readData.length === 0) return; - ArrayPrototypePush(channel[kMessageBuffer], readData); + if (channel[kMessageBufferSize] && channel[kMessageBuffer][0].length < 4) { + // Message length split into two buffers, so let's concatenate it. + channel[kMessageBuffer][0] = Buffer.concat([channel[kMessageBuffer][0], readData]); + } else { + ArrayPrototypePush(channel[kMessageBuffer], readData); + } channel[kMessageBufferSize] += readData.length; // Index 0 should always be present because we just pushed data into it. diff --git a/lib/internal/console/constructor.js b/lib/internal/console/constructor.js index cefb50fb35e32b..26f2e837d74f6f 100644 --- a/lib/internal/console/constructor.js +++ b/lib/internal/console/constructor.js @@ -61,6 +61,13 @@ const { } = require('internal/constants'); const kCounts = Symbol('counts'); const { time, timeLog, timeEnd, kNone } = require('internal/util/debuglog'); +const { channel } = require('diagnostics_channel'); + +const onLog = channel('console.log'); +const onWarn = channel('console.warn'); +const onError = channel('console.error'); +const onInfo = channel('console.info'); +const onDebug = channel('console.debug'); const kTraceConsoleCategory = 'node,node.console'; @@ -371,14 +378,39 @@ function timeLogImpl(consoleRef, label, formatted, args) { const consoleMethods = { log(...args) { + if (onLog.hasSubscribers) { + onLog.publish(args); + } this[kWriteToConsole](kUseStdout, this[kFormatForStdout](args)); }, + info(...args) { + if (onInfo.hasSubscribers) { + onInfo.publish(args); + } + this[kWriteToConsole](kUseStdout, this[kFormatForStdout](args)); + }, + + debug(...args) { + if (onDebug.hasSubscribers) { + onDebug.publish(args); + } + this[kWriteToConsole](kUseStdout, this[kFormatForStdout](args)); + }, warn(...args) { + if (onWarn.hasSubscribers) { + onWarn.publish(args); + } this[kWriteToConsole](kUseStderr, this[kFormatForStderr](args)); }, + error(...args) { + if (onError.hasSubscribers) { + onError.publish(args); + } + this[kWriteToConsole](kUseStderr, this[kFormatForStderr](args)); + }, dir(object, options) { this[kWriteToConsole](kUseStdout, inspect(object, { @@ -614,10 +646,7 @@ function noop() {} for (const method of ReflectOwnKeys(consoleMethods)) Console.prototype[method] = consoleMethods[method]; -Console.prototype.debug = Console.prototype.log; -Console.prototype.info = Console.prototype.log; Console.prototype.dirxml = Console.prototype.log; -Console.prototype.error = Console.prototype.warn; Console.prototype.groupCollapsed = Console.prototype.group; function initializeGlobalConsole(globalConsole) { diff --git a/lib/internal/errors.js b/lib/internal/errors.js index 4389d32e47619e..356ed1fd94ec1b 100644 --- a/lib/internal/errors.js +++ b/lib/internal/errors.js @@ -1742,21 +1742,6 @@ E('ERR_STREAM_WRAP', 'Stream has StringDecoder set or is in objectMode', Error); E('ERR_STREAM_WRITE_AFTER_END', 'write after end', Error); E('ERR_SYNTHETIC', 'JavaScript Callstack', Error); E('ERR_SYSTEM_ERROR', 'A system error occurred', SystemError, HideStackFramesError); -E('ERR_TAP_LEXER_ERROR', function(errorMsg) { - hideInternalStackFrames(this); - return errorMsg; -}, Error); -E('ERR_TAP_PARSER_ERROR', function(errorMsg, details, tokenCausedError, source) { - hideInternalStackFrames(this); - this.cause = tokenCausedError; - const { column, line, start, end } = tokenCausedError.location; - const errorDetails = `${details} at line ${line}, column ${column} (start ${start}, end ${end})`; - return errorMsg + errorDetails; -}, SyntaxError); -E('ERR_TAP_VALIDATION_ERROR', function(errorMsg) { - hideInternalStackFrames(this); - return errorMsg; -}, Error); E('ERR_TEST_FAILURE', function(error, failureType) { hideInternalStackFrames(this); assert(typeof failureType === 'string' || typeof failureType === 'symbol', @@ -1856,6 +1841,7 @@ E('ERR_UNSUPPORTED_NODE_MODULES_TYPE_STRIPPING', E('ERR_UNSUPPORTED_RESOLVE_REQUEST', 'Failed to resolve module specifier "%s" from "%s": Invalid relative URL or base scheme is not hierarchical.', TypeError); +E('ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX', '%s', SyntaxError); E('ERR_USE_AFTER_CLOSE', '%s was closed', Error); // This should probably be a `TypeError`. diff --git a/lib/internal/fs/glob.js b/lib/internal/fs/glob.js index 0f4939f7e1ba0d..6abfc8d323b4d3 100644 --- a/lib/internal/fs/glob.js +++ b/lib/internal/fs/glob.js @@ -2,6 +2,7 @@ const { ArrayFrom, + ArrayIsArray, ArrayPrototypeAt, ArrayPrototypeFlatMap, ArrayPrototypeMap, @@ -24,12 +25,18 @@ const { isMacOS, } = require('internal/util'); const { - validateFunction, validateObject, validateString, validateStringArray, } = require('internal/validators'); const { DirentFromStats } = require('internal/fs/utils'); +const { + codes: { + ERR_INVALID_ARG_TYPE, + }, + hideStackFrames, +} = require('internal/errors'); +const assert = require('internal/assert'); let minimatch; function lazyMinimatch() { @@ -63,6 +70,45 @@ function getDirentSync(path) { return new DirentFromStats(basename(path), stat, dirname(path)); } +/** + * @callback validateStringArrayOrFunction + * @param {*} value + * @param {string} name + */ +const validateStringArrayOrFunction = hideStackFrames((value, name) => { + if (ArrayIsArray(value)) { + for (let i = 0; i < value.length; ++i) { + if (typeof value[i] !== 'string') { + throw new ERR_INVALID_ARG_TYPE(`${name}[${i}]`, 'string', value[i]); + } + } + return; + } + if (typeof value !== 'function') { + throw new ERR_INVALID_ARG_TYPE(name, ['string[]', 'function'], value); + } +}); + +/** + * @param {string} pattern + * @param {options} options + * @returns {Minimatch} + */ +function createMatcher(pattern, options = kEmptyObject) { + const opts = { + __proto__: null, + nocase: isWindows || isMacOS, + windowsPathsNoEscape: true, + nonegate: true, + nocomment: true, + optimizationLevel: 2, + platform: process.platform, + nocaseMagicOnly: true, + ...options, + }; + return new (lazyMinimatch().Minimatch)(pattern, opts); +} + class Cache { #cache = new SafeMap(); #statsCache = new SafeMap(); @@ -188,24 +234,56 @@ class Pattern { } } +class ResultSet extends SafeSet { + #root = '.'; + #isExcluded = () => false; + constructor(i) { super(i); } // eslint-disable-line no-useless-constructor + + setup(root, isExcludedFn) { + this.#root = root; + this.#isExcluded = isExcludedFn; + } + + add(value) { + if (this.#isExcluded(resolve(this.#root, value))) { + return false; + } + super.add(value); + return true; + } +} + class Glob { #root; #exclude; #cache = new Cache(); - #results = new SafeSet(); + #results = new ResultSet(); #queue = []; #subpatterns = new SafeMap(); #patterns; #withFileTypes; + #isExcluded = () => false; constructor(pattern, options = kEmptyObject) { validateObject(options, 'options'); const { exclude, cwd, withFileTypes } = options; - if (exclude != null) { - validateFunction(exclude, 'options.exclude'); - } this.#root = cwd ?? '.'; - this.#exclude = exclude; this.#withFileTypes = !!withFileTypes; + if (exclude != null) { + validateStringArrayOrFunction(exclude, 'options.exclude'); + if (ArrayIsArray(exclude)) { + assert(typeof this.#root === 'string'); + // Convert the path part of exclude patterns to absolute paths for + // consistent comparison before instantiating matchers. + const matchers = exclude + .map((pattern) => resolve(this.#root, pattern)) + .map((pattern) => createMatcher(pattern)); + this.#isExcluded = (value) => + matchers.some((matcher) => matcher.match(value)); + this.#results.setup(this.#root, this.#isExcluded); + } else { + this.#exclude = exclude; + } + } let patterns; if (typeof pattern === 'object') { validateStringArray(pattern, 'patterns'); @@ -214,17 +292,7 @@ class Glob { validateString(pattern, 'patterns'); patterns = [pattern]; } - this.matchers = ArrayPrototypeMap(patterns, (pattern) => new (lazyMinimatch().Minimatch)(pattern, { - __proto__: null, - nocase: isWindows || isMacOS, - windowsPathsNoEscape: true, - nonegate: true, - nocomment: true, - optimizationLevel: 2, - platform: process.platform, - nocaseMagicOnly: true, - })); - + this.matchers = ArrayPrototypeMap(patterns, (pattern) => createMatcher(pattern)); this.#patterns = ArrayPrototypeFlatMap(this.matchers, (matcher) => ArrayPrototypeMap(matcher.set, (pattern, i) => new Pattern( pattern, @@ -255,6 +323,9 @@ class Glob { ); } #addSubpattern(path, pattern) { + if (this.#isExcluded(path)) { + return; + } if (!this.#subpatterns.has(path)) { this.#subpatterns.set(path, [pattern]); } else { @@ -273,6 +344,9 @@ class Glob { const isLast = pattern.isLast(isDirectory); const isFirst = pattern.isFirst(); + if (this.#isExcluded(fullpath)) { + return; + } if (isFirst && isWindows && typeof pattern.at(0) === 'string' && StringPrototypeEndsWith(pattern.at(0), ':')) { // Absolute path, go to root this.#addSubpattern(`${pattern.at(0)}\\`, pattern.child(new SafeSet().add(1))); @@ -461,6 +535,9 @@ class Glob { const isLast = pattern.isLast(isDirectory); const isFirst = pattern.isFirst(); + if (this.#isExcluded(fullpath)) { + return; + } if (isFirst && isWindows && typeof pattern.at(0) === 'string' && StringPrototypeEndsWith(pattern.at(0), ':')) { // Absolute path, go to root this.#addSubpattern(`${pattern.at(0)}\\`, pattern.child(new SafeSet().add(1))); @@ -489,8 +566,9 @@ class Glob { if (stat && (p || isDirectory)) { const result = join(path, p); if (!this.#results.has(result)) { - this.#results.add(result); - yield this.#withFileTypes ? stat : result; + if (this.#results.add(result)) { + yield this.#withFileTypes ? stat : result; + } } } if (pattern.indexes.size === 1 && pattern.indexes.has(last)) { @@ -501,8 +579,9 @@ class Glob { // If pattern ends with **, add to results // if path is ".", add it only if pattern starts with "." or pattern is exactly "**" if (!this.#results.has(path)) { - this.#results.add(path); - yield this.#withFileTypes ? stat : path; + if (this.#results.add(path)) { + yield this.#withFileTypes ? stat : path; + } } } @@ -551,8 +630,9 @@ class Glob { } else if (!fromSymlink && index === last) { // If ** is last, add to results if (!this.#results.has(entryPath)) { - this.#results.add(entryPath); - yield this.#withFileTypes ? entry : entryPath; + if (this.#results.add(entryPath)) { + yield this.#withFileTypes ? entry : entryPath; + } } } @@ -562,8 +642,9 @@ class Glob { if (nextMatches && nextIndex === last && !isLast) { // If next pattern is the last one, add to results if (!this.#results.has(entryPath)) { - this.#results.add(entryPath); - yield this.#withFileTypes ? entry : entryPath; + if (this.#results.add(entryPath)) { + yield this.#withFileTypes ? entry : entryPath; + } } } else if (nextMatches && entry.isDirectory()) { // Pattern matched, meaning two patterns forward @@ -598,15 +679,17 @@ class Glob { if (!this.#cache.seen(path, pattern, nextIndex)) { this.#cache.add(path, pattern.child(new SafeSet().add(nextIndex))); if (!this.#results.has(path)) { - this.#results.add(path); - yield this.#withFileTypes ? this.#cache.statSync(fullpath) : path; + if (this.#results.add(path)) { + yield this.#withFileTypes ? this.#cache.statSync(fullpath) : path; + } } } if (!this.#cache.seen(path, pattern, nextIndex) || !this.#cache.seen(parent, pattern, nextIndex)) { this.#cache.add(parent, pattern.child(new SafeSet().add(nextIndex))); if (!this.#results.has(parent)) { - this.#results.add(parent); - yield this.#withFileTypes ? this.#cache.statSync(join(this.#root, parent)) : parent; + if (this.#results.add(parent)) { + yield this.#withFileTypes ? this.#cache.statSync(join(this.#root, parent)) : parent; + } } } } @@ -621,8 +704,9 @@ class Glob { // If current pattern is ".", proceed to test next pattern if (nextIndex === last) { if (!this.#results.has(entryPath)) { - this.#results.add(entryPath); - yield this.#withFileTypes ? entry : entryPath; + if (this.#results.add(entryPath)) { + yield this.#withFileTypes ? entry : entryPath; + } } } else { subPatterns.add(nextIndex + 1); @@ -634,8 +718,9 @@ class Glob { // add next pattern to potential patterns, or to results if it's the last pattern if (index === last) { if (!this.#results.has(entryPath)) { - this.#results.add(entryPath); - yield this.#withFileTypes ? entry : entryPath; + if (this.#results.add(entryPath)) { + yield this.#withFileTypes ? entry : entryPath; + } } } else if (entry.isDirectory()) { subPatterns.add(nextIndex); diff --git a/lib/internal/http2/core.js b/lib/internal/http2/core.js index 5809b384338904..d7f9d1f4491f56 100644 --- a/lib/internal/http2/core.js +++ b/lib/internal/http2/core.js @@ -645,15 +645,21 @@ function initOriginSet(session) { if (originSet === undefined) { const socket = session[kSocket]; session[kState].originSet = originSet = new SafeSet(); - if (socket.servername != null) { - let originString = `https://${socket.servername}`; - if (socket.remotePort != null) - originString += `:${socket.remotePort}`; - // We have to ensure that it is a properly serialized - // ASCII origin string. The socket.servername might not - // be properly ASCII encoded. - originSet.add(getURLOrigin(originString)); + let hostName = socket.servername; + if (hostName === null || hostName === false) { + if (socket.remoteFamily === 'IPv6') { + hostName = `[${socket.remoteAddress}]`; + } else { + hostName = socket.remoteAddress; + } } + let originString = `https://${hostName}`; + if (socket.remotePort != null) + originString += `:${socket.remotePort}`; + // We have to ensure that it is a properly serialized + // ASCII origin string. The socket.servername might not + // be properly ASCII encoded. + originSet.add(getURLOrigin(originString)); } return originSet; } @@ -3342,7 +3348,7 @@ function connect(authority, options, listener) { socket = net.connect({ port, host, ...options }); break; case 'https:': - socket = tls.connect(port, host, initializeTLSOptions(options, host)); + socket = tls.connect(port, host, initializeTLSOptions(options, net.isIP(host) ? undefined : host)); break; default: throw new ERR_HTTP2_UNSUPPORTED_PROTOCOL(protocol); diff --git a/lib/internal/inspector/network.js b/lib/internal/inspector/network.js new file mode 100644 index 00000000000000..f46268ddc49621 --- /dev/null +++ b/lib/internal/inspector/network.js @@ -0,0 +1,54 @@ +'use strict'; + +const { + NumberMAX_SAFE_INTEGER, + Symbol, +} = primordials; + +const { now } = require('internal/perf/utils'); +const kInspectorRequestId = Symbol('kInspectorRequestId'); + +// https://chromedevtools.github.io/devtools-protocol/1-3/Network/#type-ResourceType +const kResourceType = { + Document: 'Document', + Stylesheet: 'Stylesheet', + Image: 'Image', + Media: 'Media', + Font: 'Font', + Script: 'Script', + TextTrack: 'TextTrack', + XHR: 'XHR', + Fetch: 'Fetch', + Prefetch: 'Prefetch', + EventSource: 'EventSource', + WebSocket: 'WebSocket', + Manifest: 'Manifest', + SignedExchange: 'SignedExchange', + Ping: 'Ping', + CSPViolationReport: 'CSPViolationReport', + Preflight: 'Preflight', + Other: 'Other', +}; + +/** + * Return a monotonically increasing time in seconds since an arbitrary point in the past. + * @returns {number} + */ +function getMonotonicTime() { + return now() / 1000; +} + +let requestId = 0; +function getNextRequestId() { + if (requestId === NumberMAX_SAFE_INTEGER) { + requestId = 0; + } + return `node-network-event-${++requestId}`; +}; + +module.exports = { + kInspectorRequestId, + kResourceType, + getMonotonicTime, + getNextRequestId, +}; diff --git a/lib/internal/inspector/network_http.js b/lib/internal/inspector/network_http.js new file mode 100644 index 00000000000000..16669f308f3a8e --- /dev/null +++ b/lib/internal/inspector/network_http.js @@ -0,0 +1,132 @@ +'use strict'; + +const { + ArrayIsArray, + DateNow, + ObjectEntries, + String, + Symbol, +} = primordials; + +const { + kInspectorRequestId, + kResourceType, + getMonotonicTime, + getNextRequestId, +} = require('internal/inspector/network'); +const dc = require('diagnostics_channel'); +const { Network } = require('inspector'); + +const kRequestUrl = Symbol('kRequestUrl'); + +// Convert a Headers object (Map<string, number | string | string[]>) to a plain object (Map<string, string>) +const convertHeaderObject = (headers = {}) => { + // The 'host' header that contains the host and port of the URL. + let host; + const dict = {}; + for (const { 0: key, 1: value } of ObjectEntries(headers)) { + if (key.toLowerCase() === 'host') { + host = value; + } + if (typeof value === 'string') { + dict[key] = value; + } else if (ArrayIsArray(value)) { + if (key.toLowerCase() === 'cookie') dict[key] = value.join('; '); + // ChromeDevTools frontend treats 'set-cookie' as a special case + // https://github.com/ChromeDevTools/devtools-frontend/blob/4275917f84266ef40613db3c1784a25f902ea74e/front_end/core/sdk/NetworkRequest.ts#L1368 + else if (key.toLowerCase() === 'set-cookie') dict[key] = value.join('\n'); + else dict[key] = value.join(', '); + } else { + dict[key] = String(value); + } + } + return [host, dict]; +}; + +/** + * When a client request starts, emit Network.requestWillBeSent event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-requestWillBeSent + * @param {{ request: import('http').ClientRequest }} event + */ +function onClientRequestStart({ request }) { + request[kInspectorRequestId] = getNextRequestId(); + + const { 0: host, 1: headers } = convertHeaderObject(request.getHeaders()); + const url = `${request.protocol}//${host}${request.path}`; + request[kRequestUrl] = url; + + Network.requestWillBeSent({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + wallTime: DateNow(), + request: { + url, + method: request.method, + headers, + }, + }); +} + +/** + * When a client request errors, emit Network.loadingFailed event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-loadingFailed + * @param {{ request: import('http').ClientRequest, error: any }} event + */ +function onClientRequestError({ request, error }) { + if (typeof request[kInspectorRequestId] !== 'string') { + return; + } + Network.loadingFailed({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + type: kResourceType.Other, + errorText: error.message, + }); +} + +/** + * When response headers are received, emit Network.responseReceived event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-responseReceived + * @param {{ request: import('http').ClientRequest, error: any }} event + */ +function onClientResponseFinish({ request, response }) { + if (typeof request[kInspectorRequestId] !== 'string') { + return; + } + Network.responseReceived({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + type: kResourceType.Other, + response: { + url: request[kRequestUrl], + status: response.statusCode, + statusText: response.statusMessage ?? '', + headers: convertHeaderObject(response.headers)[1], + }, + }); + + // Wait until the response body is consumed by user code. + response.once('end', () => { + Network.loadingFinished({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + }); + }); +} + +function enable() { + dc.subscribe('http.client.request.start', onClientRequestStart); + dc.subscribe('http.client.request.error', onClientRequestError); + dc.subscribe('http.client.response.finish', onClientResponseFinish); +} + +function disable() { + dc.unsubscribe('http.client.request.start', onClientRequestStart); + dc.unsubscribe('http.client.request.error', onClientRequestError); + dc.unsubscribe('http.client.response.finish', onClientResponseFinish); +} + +module.exports = { + enable, + disable, +}; diff --git a/lib/internal/inspector/network_undici.js b/lib/internal/inspector/network_undici.js new file mode 100644 index 00000000000000..7afc5970117127 --- /dev/null +++ b/lib/internal/inspector/network_undici.js @@ -0,0 +1,141 @@ +'use strict'; + +const { + DateNow, +} = primordials; + +const { + kInspectorRequestId, + kResourceType, + getMonotonicTime, + getNextRequestId, +} = require('internal/inspector/network'); +const dc = require('diagnostics_channel'); +const { Network } = require('inspector'); + +// Convert an undici request headers array to a plain object (Map<string, string>) +function requestHeadersArrayToDictionary(headers) { + const dict = {}; + for (let idx = 0; idx < headers.length; idx += 2) { + const key = `${headers[idx]}`; + const value = `${headers[idx + 1]}`; + dict[key] = value; + } + return dict; +}; + +// Convert an undici response headers array to a plain object (Map<string, string>) +function responseHeadersArrayToDictionary(headers) { + const dict = {}; + for (let idx = 0; idx < headers.length; idx += 2) { + const key = `${headers[idx]}`; + const value = `${headers[idx + 1]}`; + const prevValue = dict[key]; + + if (typeof prevValue === 'string') { + // ChromeDevTools frontend treats 'set-cookie' as a special case + // https://github.com/ChromeDevTools/devtools-frontend/blob/4275917f84266ef40613db3c1784a25f902ea74e/front_end/core/sdk/NetworkRequest.ts#L1368 + if (key.toLowerCase() === 'set-cookie') dict[key] = `${prevValue}\n${value}`; + else dict[key] = `${prevValue}, ${value}`; + } else { + dict[key] = value; + } + } + return dict; +}; + +/** + * When a client request starts, emit Network.requestWillBeSent event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-requestWillBeSent + * @param {{ request: undici.Request }} event + */ +function onClientRequestStart({ request }) { + const url = `${request.origin}${request.path}`; + request[kInspectorRequestId] = getNextRequestId(); + Network.requestWillBeSent({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + wallTime: DateNow(), + request: { + url, + method: request.method, + headers: requestHeadersArrayToDictionary(request.headers), + }, + }); +} + +/** + * When a client request errors, emit Network.loadingFailed event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-loadingFailed + * @param {{ request: undici.Request, error: any }} event + */ +function onClientRequestError({ request, error }) { + if (typeof request[kInspectorRequestId] !== 'string') { + return; + } + Network.loadingFailed({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + // TODO(legendecas): distinguish between `undici.request` and `undici.fetch`. + type: kResourceType.Fetch, + errorText: error.message, + }); +} + +/** + * When response headers are received, emit Network.responseReceived event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-responseReceived + * @param {{ request: undici.Request, response: undici.Response }} event + */ +function onClientResponseHeaders({ request, response }) { + if (typeof request[kInspectorRequestId] !== 'string') { + return; + } + const url = `${request.origin}${request.path}`; + Network.responseReceived({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + // TODO(legendecas): distinguish between `undici.request` and `undici.fetch`. + type: kResourceType.Fetch, + response: { + url, + status: response.statusCode, + statusText: response.statusText, + headers: responseHeadersArrayToDictionary(response.headers), + }, + }); +} + +/** + * When a response is completed, emit Network.loadingFinished event. + * https://chromedevtools.github.io/devtools-protocol/1-3/Network/#event-loadingFinished + * @param {{ request: undici.Request, response: undici.Response }} event + */ +function onClientResponseFinish({ request }) { + if (typeof request[kInspectorRequestId] !== 'string') { + return; + } + Network.loadingFinished({ + requestId: request[kInspectorRequestId], + timestamp: getMonotonicTime(), + }); +} + +function enable() { + dc.subscribe('undici:request:create', onClientRequestStart); + dc.subscribe('undici:request:error', onClientRequestError); + dc.subscribe('undici:request:headers', onClientResponseHeaders); + dc.subscribe('undici:request:trailers', onClientResponseFinish); +} + +function disable() { + dc.subscribe('undici:request:create', onClientRequestStart); + dc.subscribe('undici:request:error', onClientRequestError); + dc.subscribe('undici:request:headers', onClientResponseHeaders); + dc.subscribe('undici:request:trailers', onClientResponseFinish); +} + +module.exports = { + enable, + disable, +}; diff --git a/lib/internal/inspector_network_tracking.js b/lib/internal/inspector_network_tracking.js index de325baf77eb42..5748259fb680c1 100644 --- a/lib/internal/inspector_network_tracking.js +++ b/lib/internal/inspector_network_tracking.js @@ -1,102 +1,13 @@ 'use strict'; -const { - ArrayIsArray, - DateNow, - ObjectEntries, - String, -} = primordials; - -let dc; -let Network; - -let requestId = 0; -const getNextRequestId = () => `node-network-event-${++requestId}`; - -// Convert a Headers object (Map<string, number | string | string[]>) to a plain object (Map<string, string>) -const headerObjectToDictionary = (headers = {}) => { - const dict = {}; - for (const { 0: key, 1: value } of ObjectEntries(headers)) { - if (typeof value === 'string') { - dict[key] = value; - } else if (ArrayIsArray(value)) { - if (key.toLowerCase() === 'cookie') dict[key] = value.join('; '); - // ChromeDevTools frontend treats 'set-cookie' as a special case - // https://github.com/ChromeDevTools/devtools-frontend/blob/4275917f84266ef40613db3c1784a25f902ea74e/front_end/core/sdk/NetworkRequest.ts#L1368 - else if (key.toLowerCase() === 'set-cookie') dict[key] = value.join('\n'); - else dict[key] = value.join(', '); - } else { - dict[key] = String(value); - } - } - return dict; -}; - -function onClientRequestStart({ request }) { - const url = `${request.protocol}//${request.host}${request.path}`; - const wallTime = DateNow(); - const timestamp = wallTime / 1000; - request._inspectorRequestId = getNextRequestId(); - Network.requestWillBeSent({ - requestId: request._inspectorRequestId, - timestamp, - wallTime, - request: { - url, - method: request.method, - headers: headerObjectToDictionary(request.getHeaders()), - }, - }); -} - -function onClientRequestError({ request, error }) { - if (typeof request._inspectorRequestId !== 'string') { - return; - } - const timestamp = DateNow() / 1000; - Network.loadingFailed({ - requestId: request._inspectorRequestId, - timestamp, - type: 'Other', - errorText: error.message, - }); -} - -function onClientResponseFinish({ request, response }) { - if (typeof request._inspectorRequestId !== 'string') { - return; - } - const url = `${request.protocol}//${request.host}${request.path}`; - const timestamp = DateNow() / 1000; - Network.responseReceived({ - requestId: request._inspectorRequestId, - timestamp, - type: 'Other', - response: { - url, - status: response.statusCode, - statusText: response.statusMessage ?? '', - headers: headerObjectToDictionary(response.headers), - }, - }); - Network.loadingFinished({ - requestId: request._inspectorRequestId, - timestamp, - }); -} - function enable() { - dc ??= require('diagnostics_channel'); - Network ??= require('inspector').Network; - dc.subscribe('http.client.request.start', onClientRequestStart); - dc.subscribe('http.client.request.error', onClientRequestError); - dc.subscribe('http.client.response.finish', onClientResponseFinish); + require('internal/inspector/network_http').enable(); + require('internal/inspector/network_undici').enable(); } function disable() { - dc.unsubscribe('http.client.request.start', onClientRequestStart); - dc.unsubscribe('http.client.request.error', onClientRequestError); - dc.unsubscribe('http.client.response.finish', onClientResponseFinish); + require('internal/inspector/network_http').disable(); + require('internal/inspector/network_undici').disable(); } module.exports = { diff --git a/lib/internal/main/eval_stdin.js b/lib/internal/main/eval_stdin.js index 3ee4bcdb1d853b..2a0ecf9a4aba5e 100644 --- a/lib/internal/main/eval_stdin.js +++ b/lib/internal/main/eval_stdin.js @@ -11,6 +11,9 @@ const { getOptionValue } = require('internal/options'); const { evalModuleEntryPoint, + evalTypeScript, + parseAndEvalCommonjsTypeScript, + parseAndEvalModuleTypeScript, evalScript, readStdin, } = require('internal/process/execution'); @@ -25,14 +28,32 @@ readStdin((code) => { const print = getOptionValue('--print'); const shouldLoadESM = getOptionValue('--import').length > 0; - if (getOptionValue('--input-type') === 'module' || - (getOptionValue('--experimental-default-type') === 'module' && getOptionValue('--input-type') !== 'commonjs')) { + const inputType = getOptionValue('--input-type'); + const tsEnabled = getOptionValue('--experimental-strip-types'); + if (inputType === 'module' || + (getOptionValue('--experimental-default-type') === 'module' && + inputType !== 'commonjs')) { evalModuleEntryPoint(code, print); + } else if (inputType === 'module-typescript' && tsEnabled) { + parseAndEvalModuleTypeScript(code, print); } else { - evalScript('[stdin]', - code, - getOptionValue('--inspect-brk'), - print, - shouldLoadESM); + + let evalFunction; + if (inputType === 'commonjs') { + evalFunction = evalScript; + } else if (inputType === 'commonjs-typescript' && tsEnabled) { + evalFunction = parseAndEvalCommonjsTypeScript; + } else if (tsEnabled) { + evalFunction = evalTypeScript; + } else { + // Default to commonjs. + evalFunction = evalScript; + } + + evalFunction('[stdin]', + code, + getOptionValue('--inspect-brk'), + print, + shouldLoadESM); } }); diff --git a/lib/internal/main/eval_string.js b/lib/internal/main/eval_string.js index a3be08551425b1..171ab3bae86f16 100644 --- a/lib/internal/main/eval_string.js +++ b/lib/internal/main/eval_string.js @@ -13,9 +13,14 @@ const { prepareMainThreadExecution, markBootstrapComplete, } = require('internal/process/pre_execution'); -const { evalModuleEntryPoint, evalScript } = require('internal/process/execution'); +const { + evalModuleEntryPoint, + evalTypeScript, + parseAndEvalCommonjsTypeScript, + parseAndEvalModuleTypeScript, + evalScript, +} = require('internal/process/execution'); const { addBuiltinLibsToObject } = require('internal/modules/helpers'); -const { stripTypeScriptModuleTypes } = require('internal/modules/typescript'); const { getOptionValue } = require('internal/options'); prepareMainThreadExecution(); @@ -23,21 +28,22 @@ addBuiltinLibsToObject(globalThis, '<eval>'); markBootstrapComplete(); const code = getOptionValue('--eval'); -const source = getOptionValue('--experimental-strip-types') ? - stripTypeScriptModuleTypes(code) : - code; const print = getOptionValue('--print'); const shouldLoadESM = getOptionValue('--import').length > 0 || getOptionValue('--experimental-loader').length > 0; -if (getOptionValue('--input-type') === 'module' || - (getOptionValue('--experimental-default-type') === 'module' && getOptionValue('--input-type') !== 'commonjs')) { - evalModuleEntryPoint(source, print); +const inputType = getOptionValue('--input-type'); +const tsEnabled = getOptionValue('--experimental-strip-types'); +if (inputType === 'module' || + (getOptionValue('--experimental-default-type') === 'module' && inputType !== 'commonjs')) { + evalModuleEntryPoint(code, print); +} else if (inputType === 'module-typescript' && tsEnabled) { + parseAndEvalModuleTypeScript(code, print); } else { // For backward compatibility, we want the identifier crypto to be the // `node:crypto` module rather than WebCrypto. const isUsingCryptoIdentifier = - getOptionValue('--experimental-global-webcrypto') && - RegExpPrototypeExec(/\bcrypto\b/, source) !== null; + getOptionValue('--experimental-global-webcrypto') && + RegExpPrototypeExec(/\bcrypto\b/, code) !== null; const shouldDefineCrypto = isUsingCryptoIdentifier && internalBinding('config').hasOpenSSL; if (isUsingCryptoIdentifier && !shouldDefineCrypto) { @@ -52,11 +58,24 @@ if (getOptionValue('--input-type') === 'module' || }; ObjectDefineProperty(object, name, { __proto__: null, set: setReal }); } - evalScript('[eval]', - shouldDefineCrypto ? ( - print ? `let crypto=require("node:crypto");{${source}}` : `(crypto=>{{${source}}})(require('node:crypto'))` - ) : source, - getOptionValue('--inspect-brk'), - print, - shouldLoadESM); + + let evalFunction; + if (inputType === 'commonjs') { + evalFunction = evalScript; + } else if (inputType === 'commonjs-typescript' && tsEnabled) { + evalFunction = parseAndEvalCommonjsTypeScript; + } else if (tsEnabled) { + evalFunction = evalTypeScript; + } else { + // Default to commonjs. + evalFunction = evalScript; + } + + evalFunction('[eval]', + shouldDefineCrypto ? ( + print ? `let crypto=require("node:crypto");{${code}}` : `(crypto=>{{${code}}})(require('node:crypto'))` + ) : code, + getOptionValue('--inspect-brk'), + print, + shouldLoadESM); } diff --git a/lib/internal/main/watch_mode.js b/lib/internal/main/watch_mode.js index 6e2528e64737c7..60639efb45482d 100644 --- a/lib/internal/main/watch_mode.js +++ b/lib/internal/main/watch_mode.js @@ -33,7 +33,7 @@ markBootstrapComplete(); // TODO(MoLow): Make kill signal configurable const kKillSignal = 'SIGTERM'; const kShouldFilterModules = getOptionValue('--watch-path').length === 0; -const kEnvFile = getOptionValue('--env-file'); +const kEnvFile = getOptionValue('--env-file') || getOptionValue('--env-file-if-exists'); const kWatchedPaths = ArrayPrototypeMap(getOptionValue('--watch-path'), (path) => resolve(path)); const kPreserveOutput = getOptionValue('--watch-preserve-output'); const kCommand = ArrayPrototypeSlice(process.argv, 1); diff --git a/lib/internal/main/worker_thread.js b/lib/internal/main/worker_thread.js index f8c410b5b25cb0..caf64728b754cc 100644 --- a/lib/internal/main/worker_thread.js +++ b/lib/internal/main/worker_thread.js @@ -49,7 +49,10 @@ const { setupMainThreadPort } = require('internal/worker/messaging'); const { onGlobalUncaughtException, evalScript, + evalTypeScript, evalModuleEntryPoint, + parseAndEvalCommonjsTypeScript, + parseAndEvalModuleTypeScript, } = require('internal/process/execution'); let debug = require('internal/util/debuglog').debuglog('worker', (fn) => { @@ -166,7 +169,29 @@ port.on('message', (message) => { value: filename, }); ArrayPrototypeSplice(process.argv, 1, 0, name); - evalScript(name, filename); + const tsEnabled = getOptionValue('--experimental-strip-types'); + const inputType = getOptionValue('--input-type'); + + if (inputType === 'module-typescript' && tsEnabled) { + // This is a special case where we want to parse and eval the + // TypeScript code as a module + parseAndEvalModuleTypeScript(filename, false); + break; + } + + let evalFunction; + if (inputType === 'commonjs') { + evalFunction = evalScript; + } else if (inputType === 'commonjs-typescript' && tsEnabled) { + evalFunction = parseAndEvalCommonjsTypeScript; + } else if (tsEnabled) { + evalFunction = evalTypeScript; + } else { + // Default to commonjs. + evalFunction = evalScript; + } + + evalFunction(name, filename); break; } diff --git a/lib/internal/modules/cjs/loader.js b/lib/internal/modules/cjs/loader.js index 236b2484049c43..62c33730ed17cb 100644 --- a/lib/internal/modules/cjs/loader.js +++ b/lib/internal/modules/cjs/loader.js @@ -101,6 +101,9 @@ const kIsMainSymbol = Symbol('kIsMainSymbol'); const kIsCachedByESMLoader = Symbol('kIsCachedByESMLoader'); const kRequiredModuleSymbol = Symbol('kRequiredModuleSymbol'); const kIsExecuting = Symbol('kIsExecuting'); + +const kFormat = Symbol('kFormat'); + // Set first due to cycle with ESM loader functions. module.exports = { kModuleSource, @@ -432,14 +435,12 @@ function initializeCJS() { const tsEnabled = getOptionValue('--experimental-strip-types'); if (tsEnabled) { - emitExperimentalWarning('Type Stripping'); Module._extensions['.cts'] = loadCTS; Module._extensions['.ts'] = loadTS; } if (getOptionValue('--experimental-require-module')) { - Module._extensions['.mjs'] = loadESMFromCJS; if (tsEnabled) { - Module._extensions['.mts'] = loadESMFromCJS; + Module._extensions['.mts'] = loadMTS; } } } @@ -603,11 +604,11 @@ function trySelf(parentPath, request) { try { const { packageExportsResolve } = require('internal/modules/esm/resolve'); return finalizeEsmResolution(packageExportsResolve( - pathToFileURL(pkg.path + '/package.json'), expansion, pkg.data, + pathToFileURL(pkg.path), expansion, pkg.data, pathToFileURL(parentPath), getCjsConditions()), parentPath, pkg.path); } catch (e) { if (e.code === 'ERR_MODULE_NOT_FOUND') { - throw createEsmNotFoundErr(request, pkg.path + '/package.json'); + throw createEsmNotFoundErr(request, pkg.path); } throw e; } @@ -654,8 +655,6 @@ function getDefaultExtensions() { if (tsEnabled) { // remove .ts and .cts from the default extensions // to avoid extensionless require of .ts and .cts files. - // it behaves similarly to how .mjs is handled when --experimental-require-module - // is enabled. extensions = ArrayPrototypeFilter(extensions, (ext) => (ext !== '.ts' || Module._extensions['.ts'] !== loadTS) && (ext !== '.cts' || Module._extensions['.cts'] !== loadCTS), @@ -668,14 +667,10 @@ function getDefaultExtensions() { if (tsEnabled) { extensions = ArrayPrototypeFilter(extensions, (ext) => - ext !== '.mts' || Module._extensions['.mts'] !== loadESMFromCJS, + ext !== '.mts' || Module._extensions['.mts'] !== loadMTS, ); } - // If the .mjs extension is added by --experimental-require-module, - // remove it from the supported default extensions to maintain - // compatibility. - // TODO(joyeecheung): allow both .mjs and .cjs? - return ArrayPrototypeFilter(extensions, (ext) => ext !== '.mjs' || Module._extensions['.mjs'] !== loadESMFromCJS); + return extensions; } /** @@ -713,18 +708,8 @@ Module._findPath = function(request, paths, isMain) { ) )); - const isRelative = StringPrototypeCharCodeAt(request, 0) === CHAR_DOT && - ( - request.length === 1 || - StringPrototypeCharCodeAt(request, 1) === CHAR_FORWARD_SLASH || - (isWindows && StringPrototypeCharCodeAt(request, 1) === CHAR_BACKWARD_SLASH) || - (StringPrototypeCharCodeAt(request, 1) === CHAR_DOT && (( - request.length === 2 || - StringPrototypeCharCodeAt(request, 2) === CHAR_FORWARD_SLASH) || - (isWindows && StringPrototypeCharCodeAt(request, 2) === CHAR_BACKWARD_SLASH))) - ); let insidePath = true; - if (isRelative) { + if (isRelative(request)) { const normalizedRequest = path.normalize(request); if (StringPrototypeStartsWith(normalizedRequest, '..')) { insidePath = false; @@ -1164,12 +1149,7 @@ Module._resolveFilename = function(request, parent, isMain, options) { if (typeof options === 'object' && options !== null) { if (ArrayIsArray(options.paths)) { - const isRelative = StringPrototypeStartsWith(request, './') || - StringPrototypeStartsWith(request, '../') || - ((isWindows && StringPrototypeStartsWith(request, '.\\')) || - StringPrototypeStartsWith(request, '..\\')); - - if (isRelative) { + if (isRelative(request)) { paths = options.paths; } else { const fakeParent = new Module('', null); @@ -1199,14 +1179,15 @@ Module._resolveFilename = function(request, parent, isMain, options) { if (request[0] === '#' && (parent?.filename || parent?.id === '<repl>')) { const parentPath = parent?.filename ?? process.cwd() + path.sep; - const pkg = packageJsonReader.getNearestParentPackageJSON(parentPath) || { __proto__: null }; - if (pkg.data?.imports != null) { + const pkg = packageJsonReader.getNearestParentPackageJSON(parentPath); + if (pkg?.data.imports != null) { try { const { packageImportsResolve } = require('internal/modules/esm/resolve'); return finalizeEsmResolution( - packageImportsResolve(request, pathToFileURL(parentPath), - getCjsConditions()), parentPath, - pkg.path); + packageImportsResolve(request, pathToFileURL(parentPath), getCjsConditions()), + parentPath, + pkg.path, + ); } catch (e) { if (e.code === 'ERR_MODULE_NOT_FOUND') { throw createEsmNotFoundErr(request); @@ -1266,8 +1247,7 @@ function finalizeEsmResolution(resolved, parentPath, pkgPath) { if (actual) { return actual; } - const err = createEsmNotFoundErr(filename, - path.resolve(pkgPath, 'package.json')); + const err = createEsmNotFoundErr(filename, pkgPath); throw err; } @@ -1299,10 +1279,6 @@ Module.prototype.load = function(filename) { this.paths = Module._nodeModulePaths(path.dirname(filename)); const extension = findLongestRegisteredExtension(filename); - // allow .mjs to be overridden - if (StringPrototypeEndsWith(filename, '.mjs') && !Module._extensions['.mjs']) { - throw new ERR_REQUIRE_ESM(filename, true); - } if (getOptionValue('--experimental-strip-types')) { if (StringPrototypeEndsWith(filename, '.mts') && !Module._extensions['.mts']) { @@ -1343,12 +1319,10 @@ let requireModuleWarningMode; * Resolve and evaluate it synchronously as ESM if it's ESM. * @param {Module} mod CJS module instance * @param {string} filename Absolute path of the file. + * @param {string} format Format of the module. If it had types, this would be what it is after type-stripping. + * @param {string} source Source the module. If it had types, this would have the type stripped. */ -function loadESMFromCJS(mod, filename) { - let source = getMaybeCachedSource(mod, filename); - if (getOptionValue('--experimental-strip-types') && path.extname(filename) === '.mts') { - source = stripTypeScriptModuleTypes(source, filename); - } +function loadESMFromCJS(mod, filename, format, source) { const cascadedLoader = require('internal/modules/esm/loader').getOrInitializeCascadedLoader(); const isMain = mod[kIsMainSymbol]; if (isMain) { @@ -1524,9 +1498,29 @@ function wrapSafe(filename, content, cjsModuleInstance, format) { * `exports`) to the file. Returns exception, if any. * @param {string} content The source code of the module * @param {string} filename The file path of the module - * @param {'module'|'commonjs'|undefined} format Intended format of the module. + * @param {'module'|'commonjs'|'commonjs-typescript'|'module-typescript'|'typescript'} format + * Intended format of the module. */ Module.prototype._compile = function(content, filename, format) { + if (format === 'commonjs-typescript' || format === 'module-typescript' || format === 'typescript') { + content = stripTypeScriptModuleTypes(content, filename); + switch (format) { + case 'commonjs-typescript': { + format = 'commonjs'; + break; + } + case 'module-typescript': { + format = 'module'; + break; + } + // If the format is still unknown i.e. 'typescript', detect it in + // wrapSafe using the type-stripped source. + default: + format = undefined; + break; + } + } + let redirects; let compiledWrapper; @@ -1539,9 +1533,7 @@ Module.prototype._compile = function(content, filename, format) { } if (format === 'module') { - // Pass the source into the .mjs extension handler indirectly through the cache. - this[kModuleSource] = content; - loadESMFromCJS(this, filename); + loadESMFromCJS(this, filename, format, content); return; } @@ -1569,72 +1561,76 @@ Module.prototype._compile = function(content, filename, format) { /** * Get the source code of a module, using cached ones if it's cached. + * After this returns, mod[kFormat], mod[kModuleSource] and mod[kURL] will be set. * @param {Module} mod Module instance whose source is potentially already cached. * @param {string} filename Absolute path to the file of the module. - * @returns {string} + * @returns {{source: string, format?: string}} */ -function getMaybeCachedSource(mod, filename) { - // If already analyzed the source, then it will be cached. - let content; - if (mod[kModuleSource] !== undefined) { - content = mod[kModuleSource]; +function loadSource(mod, filename, formatFromNode) { + if (formatFromNode !== undefined) { + mod[kFormat] = formatFromNode; + } + const format = mod[kFormat]; + + let source = mod[kModuleSource]; + if (source !== undefined) { mod[kModuleSource] = undefined; } else { // TODO(joyeecheung): we can read a buffer instead to speed up // compilation. - content = fs.readFileSync(filename, 'utf8'); + source = fs.readFileSync(filename, 'utf8'); } - return content; + return { source, format }; +} + +/** + * Built-in handler for `.mts` files. + * @param {Module} mod CJS module instance + * @param {string} filename The file path of the module + */ +function loadMTS(mod, filename) { + const loadResult = loadSource(mod, filename, 'module-typescript'); + mod._compile(loadResult.source, filename, loadResult.format); } +/** + * Built-in handler for `.cts` files. + * @param {Module} module CJS module instance + * @param {string} filename The file path of the module + */ + function loadCTS(module, filename) { - const source = getMaybeCachedSource(module, filename); - const code = stripTypeScriptModuleTypes(source, filename); - module._compile(code, filename, 'commonjs'); + const loadResult = loadSource(module, filename, 'commonjs-typescript'); + module._compile(loadResult.source, filename, loadResult.format); } /** * Built-in handler for `.ts` files. - * @param {Module} module The module to compile + * @param {Module} module CJS module instance * @param {string} filename The file path of the module */ function loadTS(module, filename) { - // If already analyzed the source, then it will be cached. - const source = getMaybeCachedSource(module, filename); - const content = stripTypeScriptModuleTypes(source, filename); - let format; const pkg = packageJsonReader.getNearestParentPackageJSON(filename); - // Function require shouldn't be used in ES modules. - if (pkg?.data.type === 'module') { - if (getOptionValue('--experimental-require-module')) { - module._compile(content, filename, 'module'); - return; - } + const typeFromPjson = pkg?.data.type; - const parent = module[kModuleParent]; - const parentPath = parent?.filename; - const packageJsonPath = path.resolve(pkg.path, 'package.json'); - const usesEsm = containsModuleSyntax(content, filename); - const err = new ERR_REQUIRE_ESM(filename, usesEsm, parentPath, - packageJsonPath); - // Attempt to reconstruct the parent require frame. - if (Module._cache[parentPath]) { - let parentSource; - try { - parentSource = stripTypeScriptModuleTypes(fs.readFileSync(parentPath, 'utf8'), parentPath); - } catch { - // Continue regardless of error. - } - if (parentSource) { - reconstructErrorStack(err, parentPath, parentSource); - } - } + let format; + if (typeFromPjson === 'module') { + format = 'module-typescript'; + } else if (typeFromPjson === 'commonjs') { + format = 'commonjs-typescript'; + } else { + format = 'typescript'; + } + const loadResult = loadSource(module, filename, format); + + // Function require shouldn't be used in ES modules when require(esm) is disabled. + if (typeFromPjson === 'module' && !getOptionValue('--experimental-require-module')) { + const err = getRequireESMError(module, pkg, loadResult.source, filename); throw err; - } else if (pkg?.data.type === 'commonjs') { - format = 'commonjs'; } - module._compile(content, filename, format); + module[kFormat] = loadResult.format; + module._compile(loadResult.source, filename, loadResult.format); }; function reconstructErrorStack(err, parentPath, parentSource) { @@ -1650,53 +1646,64 @@ function reconstructErrorStack(err, parentPath, parentSource) { } } +/** + * Generate the legacy ERR_REQUIRE_ESM for the cases where require(esm) is disabled. + * @param {Module} mod The module being required. + * @param {undefined|object} pkg Data of the nearest package.json of the module. + * @param {string} content Source code of the module. + * @param {string} filename Filename of the module + * @returns {Error} + */ +function getRequireESMError(mod, pkg, content, filename) { + // This is an error path because `require` of a `.js` file in a `"type": "module"` scope is not allowed. + const parent = mod[kModuleParent]; + const parentPath = parent?.filename; + const packageJsonPath = pkg?.path; + const usesEsm = containsModuleSyntax(content, filename); + const err = new ERR_REQUIRE_ESM(filename, usesEsm, parentPath, + packageJsonPath); + // Attempt to reconstruct the parent require frame. + const parentModule = Module._cache[parentPath]; + if (parentModule) { + let parentSource; + try { + ({ source: parentSource } = loadSource(parentModule, parentPath)); + } catch { + // Continue regardless of error. + } + if (parentSource) { + // TODO(joyeecheung): trim off internal frames from the stack. + reconstructErrorStack(err, parentPath, parentSource); + } + } + return err; +} + /** * Built-in handler for `.js` files. * @param {Module} module The module to compile * @param {string} filename The file path of the module */ Module._extensions['.js'] = function(module, filename) { - // If already analyzed the source, then it will be cached. - const content = getMaybeCachedSource(module, filename); - - let format; - if (StringPrototypeEndsWith(filename, '.js')) { - const pkg = packageJsonReader.getNearestParentPackageJSON(filename); - // Function require shouldn't be used in ES modules. - if (pkg?.data.type === 'module') { - if (getOptionValue('--experimental-require-module')) { - module._compile(content, filename, 'module'); - return; - } - - // This is an error path because `require` of a `.js` file in a `"type": "module"` scope is not allowed. - const parent = module[kModuleParent]; - const parentPath = parent?.filename; - const packageJsonPath = path.resolve(pkg.path, 'package.json'); - const usesEsm = containsModuleSyntax(content, filename); - const err = new ERR_REQUIRE_ESM(filename, usesEsm, parentPath, - packageJsonPath); - // Attempt to reconstruct the parent require frame. - if (Module._cache[parentPath]) { - let parentSource; - try { - parentSource = fs.readFileSync(parentPath, 'utf8'); - } catch { - // Continue regardless of error. - } - if (parentSource) { - reconstructErrorStack(err, parentPath, parentSource); - } - } - throw err; - } else if (pkg?.data.type === 'commonjs') { - format = 'commonjs'; - } - } else if (StringPrototypeEndsWith(filename, '.cjs')) { + let format, pkg; + if (StringPrototypeEndsWith(filename, '.cjs')) { format = 'commonjs'; + } else if (StringPrototypeEndsWith(filename, '.mjs')) { + format = 'module'; + } else if (StringPrototypeEndsWith(filename, '.js')) { + pkg = packageJsonReader.getNearestParentPackageJSON(filename); + const typeFromPjson = pkg?.data.type; + if (typeFromPjson === 'module' || typeFromPjson === 'commonjs' || !typeFromPjson) { + format = typeFromPjson; + } } - - module._compile(content, filename, format); + const { source, format: loadedFormat } = loadSource(module, filename, format); + // Function require shouldn't be used in ES modules when require(esm) is disabled. + if (loadedFormat === 'module' && !getOptionValue('--experimental-require-module')) { + const err = getRequireESMError(module, pkg, source, filename); + throw err; + } + module._compile(source, filename, loadedFormat); }; /** @@ -1774,6 +1781,21 @@ function createRequire(filename) { return createRequireFromPath(filepath); } +/** + * Checks if a path is relative + * @param {string} path the target path + * @returns {boolean} true if the path is relative, false otherwise + */ +function isRelative(path) { + if (StringPrototypeCharCodeAt(path, 0) !== CHAR_DOT) { return false; } + + return path.length === 1 || path === '..' || + StringPrototypeStartsWith(path, './') || + StringPrototypeStartsWith(path, '../') || + ((isWindows && StringPrototypeStartsWith(path, '.\\')) || + StringPrototypeStartsWith(path, '..\\')); +} + Module.createRequire = createRequire; /** diff --git a/lib/internal/modules/esm/loader.js b/lib/internal/modules/esm/loader.js index c5594e07d667c3..fdecd0c926c953 100644 --- a/lib/internal/modules/esm/loader.js +++ b/lib/internal/modules/esm/loader.js @@ -48,6 +48,8 @@ const { tracingChannel } = require('diagnostics_channel'); const onImport = tracingChannel('module.import'); /** + * @typedef {import('./hooks.js').HooksProxy} HooksProxy + * @typedef {import('./module_job.js').ModuleJobBase} ModuleJobBase * @typedef {import('url').URL} URL */ @@ -143,6 +145,7 @@ class ModuleLoader { * to this property and failure to do so will cause undefined * behavior when invoking `import.meta.resolve`. * @see {ModuleLoader.setCustomizations} + * @type {CustomizedModuleLoader} */ #customizations; @@ -196,7 +199,7 @@ class ModuleLoader { * * Calling this function alters how modules are loaded and should be * invoked with care. - * @param {object} customizations + * @param {CustomizedModuleLoader} customizations */ setCustomizations(customizations) { this.#customizations = customizations; @@ -207,9 +210,25 @@ class ModuleLoader { } } - async eval(source, url, isEntryPoint = false) { + /** + * + * @param {string} source Source code of the module. + * @param {string} url URL of the module. + * @returns {object} The module wrap object. + */ + createModuleWrap(source, url) { + return compileSourceTextModule(url, source, this); + } + + /** + * + * @param {string} url URL of the module. + * @param {object} wrap Module wrap object. + * @param {boolean} isEntryPoint Whether the module is the entry point. + * @returns {Promise<object>} The module object. + */ + async executeModuleJob(url, wrap, isEntryPoint = false) { const { ModuleJob } = require('internal/modules/esm/module_job'); - const wrap = compileSourceTextModule(url, source, this); const module = await onImport.tracePromise(async () => { const job = new ModuleJob( this, url, undefined, wrap, false, false); @@ -229,6 +248,18 @@ class ModuleLoader { }; } + /** + * + * @param {string} source Source code of the module. + * @param {string} url URL of the module. + * @param {boolean} isEntryPoint Whether the module is the entry point. + * @returns {Promise<object>} The module object. + */ + eval(source, url, isEntryPoint = false) { + const wrap = this.createModuleWrap(source, url); + return this.executeModuleJob(url, wrap, isEntryPoint); + } + /** * Get a (possibly not yet fully linked) module job from the cache, or create one and return its Promise. * @param {string} specifier The module request of the module to be resolved. Typically, what's @@ -236,7 +267,7 @@ class ModuleLoader { * @param {string} [parentURL] The URL of the module where the module request is initiated. * It's undefined if it's from the root module. * @param {ImportAttributes} importAttributes Attributes from the import statement or expression. - * @returns {Promise<ModuleJobBase} + * @returns {Promise<ModuleJobBase>} */ async getModuleJobForImport(specifier, parentURL, importAttributes) { const resolveResult = await this.resolve(specifier, parentURL, importAttributes); @@ -250,7 +281,7 @@ class ModuleLoader { * @param {string} specifier See {@link getModuleJobForImport} * @param {string} [parentURL] See {@link getModuleJobForImport} * @param {ImportAttributes} importAttributes See {@link getModuleJobForImport} - * @returns {Promise<ModuleJobBase} + * @returns {Promise<ModuleJobBase>} */ getModuleJobForRequireInImportedCJS(specifier, parentURL, importAttributes) { const resolveResult = this.resolveSync(specifier, parentURL, importAttributes); @@ -622,7 +653,7 @@ class ModuleLoader { /** * Similar to {@link resolve}, but the results are always synchronously returned. If there are any * asynchronous resolve hooks from module.register(), it will block until the results are returned - * from the loader thread for this to be synchornous. + * from the loader thread for this to be synchronous. * This is here to support `import.meta.resolve()`, `require()` in imported CJS, and * future synchronous hooks. * diff --git a/lib/internal/modules/esm/module_job.js b/lib/internal/modules/esm/module_job.js index 8fba05e7b8f699..6ac17fc201629a 100644 --- a/lib/internal/modules/esm/module_job.js +++ b/lib/internal/modules/esm/module_job.js @@ -30,7 +30,7 @@ const { } = internalBinding('util'); const { decorateErrorStack, kEmptyObject } = require('internal/util'); const { - getSourceMapsEnabled, + getSourceMapsSupport, } = require('internal/source_map/source_map_cache'); const assert = require('internal/assert'); const resolvedPromise = PromiseResolve(); @@ -185,7 +185,7 @@ class ModuleJob extends ModuleJobBase { // of missing named export. This is currently not possible because // stack trace originates in module_job, not the file itself. A hidden // symbol with filename could be set in node_errors.cc to facilitate this. - if (!getSourceMapsEnabled() && + if (!getSourceMapsSupport().enabled && StringPrototypeIncludes(e.message, ' does not provide an export named')) { const splitStack = StringPrototypeSplit(e.stack, '\n'); diff --git a/lib/internal/modules/esm/resolve.js b/lib/internal/modules/esm/resolve.js index 61c043e35c6ce9..bfd9bd3d127404 100644 --- a/lib/internal/modules/esm/resolve.js +++ b/lib/internal/modules/esm/resolve.js @@ -356,7 +356,6 @@ function invalidPackageTarget( const invalidSegmentRegEx = /(^|\\|\/)((\.|%2e)(\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))?(\\|\/|$)/i; const deprecatedInvalidSegmentRegEx = /(^|\\|\/)((\.|%2e)(\.|%2e)?|(n|%6e|%4e)(o|%6f|%4f)(d|%64|%44)(e|%65|%45)(_|%5f)(m|%6d|%4d)(o|%6f|%4f)(d|%64|%44)(u|%75|%55)(l|%6c|%4c)(e|%65|%45)(s|%73|%53))(\\|\/|$)/i; -const invalidPackageNameRegEx = /^\.|%|\\/; const patternRegEx = /\*/g; /** @@ -752,44 +751,6 @@ function packageImportsResolve(name, base, conditions) { throw importNotDefined(name, packageJSONUrl, base); } -/** - * Parse a package name from a specifier. - * @param {string} specifier - The import specifier. - * @param {string | URL | undefined} base - The parent URL. - */ -function parsePackageName(specifier, base) { - let separatorIndex = StringPrototypeIndexOf(specifier, '/'); - let validPackageName = true; - let isScoped = false; - if (specifier[0] === '@') { - isScoped = true; - if (separatorIndex === -1 || specifier.length === 0) { - validPackageName = false; - } else { - separatorIndex = StringPrototypeIndexOf( - specifier, '/', separatorIndex + 1); - } - } - - const packageName = separatorIndex === -1 ? - specifier : StringPrototypeSlice(specifier, 0, separatorIndex); - - // Package name cannot have leading . and cannot have percent-encoding or - // \\ separators. - if (RegExpPrototypeExec(invalidPackageNameRegEx, packageName) !== null) { - validPackageName = false; - } - - if (!validPackageName) { - throw new ERR_INVALID_MODULE_SPECIFIER( - specifier, 'is not a valid package name', fileURLToPath(base)); - } - - const packageSubpath = '.' + (separatorIndex === -1 ? '' : - StringPrototypeSlice(specifier, separatorIndex)); - - return { packageName, packageSubpath, isScoped }; -} /** * Resolves a package specifier to a URL. @@ -804,57 +765,24 @@ function packageResolve(specifier, base, conditions) { return new URL('node:' + specifier); } - const { packageName, packageSubpath, isScoped } = - parsePackageName(specifier, base); + const { packageJSONUrl, packageJSONPath, packageSubpath } = packageJsonReader.getPackageJSONURL(specifier, base); - // ResolveSelf - const packageConfig = packageJsonReader.getPackageScopeConfig(base); - if (packageConfig.exists) { - if (packageConfig.exports != null && packageConfig.name === packageName) { - const packageJSONUrl = pathToFileURL(packageConfig.pjsonPath); - return packageExportsResolve( - packageJSONUrl, packageSubpath, packageConfig, base, conditions); - } - } + const packageConfig = packageJsonReader.read(packageJSONPath, { __proto__: null, specifier, base, isESM: true }); - let packageJSONUrl = - new URL('./node_modules/' + packageName + '/package.json', base); - let packageJSONPath = fileURLToPath(packageJSONUrl); - let lastPath; - do { - const stat = internalFsBinding.internalModuleStat( - internalFsBinding, - StringPrototypeSlice(packageJSONPath, 0, packageJSONPath.length - 13), + // Package match. + if (packageConfig.exports != null) { + return packageExportsResolve( + packageJSONUrl, packageSubpath, packageConfig, base, conditions); + } + if (packageSubpath === '.') { + return legacyMainResolve( + packageJSONUrl, + packageConfig, + base, ); - // Check for !stat.isDirectory() - if (stat !== 1) { - lastPath = packageJSONPath; - packageJSONUrl = new URL((isScoped ? - '../../../../node_modules/' : '../../../node_modules/') + - packageName + '/package.json', packageJSONUrl); - packageJSONPath = fileURLToPath(packageJSONUrl); - continue; - } - - // Package match. - const packageConfig = packageJsonReader.read(packageJSONPath, { __proto__: null, specifier, base, isESM: true }); - if (packageConfig.exports != null) { - return packageExportsResolve( - packageJSONUrl, packageSubpath, packageConfig, base, conditions); - } - if (packageSubpath === '.') { - return legacyMainResolve( - packageJSONUrl, - packageConfig, - base, - ); - } - - return new URL(packageSubpath, packageJSONUrl); - // Cross-platform root check. - } while (packageJSONPath.length !== lastPath.length); + } - throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null); + return new URL(packageSubpath, packageJSONUrl); } /** @@ -1105,10 +1033,11 @@ module.exports = { decorateErrorWithCommonJSHints, defaultResolve, encodedSepRegEx, + legacyMainResolve, packageExportsResolve, packageImportsResolve, + packageResolve, throwIfInvalidParentURL, - legacyMainResolve, }; // cycle diff --git a/lib/internal/modules/esm/translators.js b/lib/internal/modules/esm/translators.js index 491dc3f450733a..a587246e329b41 100644 --- a/lib/internal/modules/esm/translators.js +++ b/lib/internal/modules/esm/translators.js @@ -242,7 +242,6 @@ translators.set('require-commonjs', (url, source, isMain) => { // Handle CommonJS modules referenced by `require` calls. // This translator function must be sync, as `require` is sync. translators.set('require-commonjs-typescript', (url, source, isMain) => { - emitExperimentalWarning('Type Stripping'); assert(cjsParse); const code = stripTypeScriptModuleTypes(stringify(source), url); return createCJSModuleWrap(url, code); @@ -457,7 +456,6 @@ translators.set('wasm', async function(url, source) { // Strategy for loading a commonjs TypeScript module translators.set('commonjs-typescript', function(url, source) { - emitExperimentalWarning('Type Stripping'); assertBufferSource(source, true, 'load'); const code = stripTypeScriptModuleTypes(stringify(source), url); debug(`Translating TypeScript ${url}`); @@ -466,7 +464,6 @@ translators.set('commonjs-typescript', function(url, source) { // Strategy for loading an esm TypeScript module translators.set('module-typescript', function(url, source) { - emitExperimentalWarning('Type Stripping'); assertBufferSource(source, true, 'load'); const code = stripTypeScriptModuleTypes(stringify(source), url); debug(`Translating TypeScript ${url}`); diff --git a/lib/internal/modules/package_json_reader.js b/lib/internal/modules/package_json_reader.js index 9a9dcebb799c00..3c746fa0e73365 100644 --- a/lib/internal/modules/package_json_reader.js +++ b/lib/internal/modules/package_json_reader.js @@ -4,29 +4,53 @@ const { ArrayIsArray, JSONParse, ObjectDefineProperty, - StringPrototypeLastIndexOf, + RegExpPrototypeExec, + StringPrototypeIndexOf, StringPrototypeSlice, } = primordials; -const modulesBinding = internalBinding('modules'); -const { resolve, sep } = require('path'); +const { + fileURLToPath, + isURL, + pathToFileURL, + URL, +} = require('internal/url'); +const { canParse: URLCanParse } = internalBinding('url'); +const { + codes: { + ERR_INVALID_MODULE_SPECIFIER, + ERR_MISSING_ARGS, + ERR_MODULE_NOT_FOUND, + }, +} = require('internal/errors'); const { kEmptyObject } = require('internal/util'); +const modulesBinding = internalBinding('modules'); +const path = require('path'); +const { validateString } = require('internal/validators'); +const internalFsBinding = internalBinding('fs'); /** - * @param {string} path - * @param {import('typings/internalBinding/modules').SerializedPackageConfig} contents - * @returns {import('typings/internalBinding/modules').PackageConfig} + * @typedef {import('typings/internalBinding/modules').DeserializedPackageConfig} DeserializedPackageConfig + * @typedef {import('typings/internalBinding/modules').PackageConfig} PackageConfig + * @typedef {import('typings/internalBinding/modules').SerializedPackageConfig} SerializedPackageConfig + */ + +/** + * @param {URL['pathname']} path + * @param {SerializedPackageConfig} contents + * @returns {DeserializedPackageConfig} */ function deserializePackageJSON(path, contents) { if (contents === undefined) { return { - __proto__: null, + data: { + __proto__: null, + type: 'none', // Ignore unknown types for forwards compatibility + }, exists: false, - pjsonPath: path, - type: 'none', // Ignore unknown types for forwards compatibility + path, }; } - let pjsonPath = path; const { 0: name, 1: main, @@ -36,37 +60,40 @@ function deserializePackageJSON(path, contents) { 5: optionalFilePath, } = contents; - // This is required to be used in getPackageScopeConfig. - if (optionalFilePath) { - pjsonPath = optionalFilePath; - } - - // The imports and exports fields can be either undefined or a string. - // - If it's a string, it's either plain string or a stringified JSON string. - // - If it's a stringified JSON string, it starts with either '[' or '{'. - const requiresJSONParse = (value) => (value !== undefined && (value[0] === '[' || value[0] === '{')); + const pjsonPath = optionalFilePath ?? path; return { - __proto__: null, - exists: true, - pjsonPath, - name, - main, - type, - // This getters are used to lazily parse the imports and exports fields. - get imports() { - const value = requiresJSONParse(plainImports) ? JSONParse(plainImports) : plainImports; - ObjectDefineProperty(this, 'imports', { __proto__: null, value }); - return this.imports; - }, - get exports() { - const value = requiresJSONParse(plainExports) ? JSONParse(plainExports) : plainExports; - ObjectDefineProperty(this, 'exports', { __proto__: null, value }); - return this.exports; + data: { + __proto__: null, + ...(name != null && { name }), + ...(main != null && { main }), + ...(type != null && { type }), + ...(plainImports != null && { + // This getters are used to lazily parse the imports and exports fields. + get imports() { + const value = requiresJSONParse(plainImports) ? JSONParse(plainImports) : plainImports; + ObjectDefineProperty(this, 'imports', { __proto__: null, value }); + return this.imports; + }, + }), + ...(plainExports != null && { + get exports() { + const value = requiresJSONParse(plainExports) ? JSONParse(plainExports) : plainExports; + ObjectDefineProperty(this, 'exports', { __proto__: null, value }); + return this.exports; + }, + }), }, + exists: true, + path: pjsonPath, }; } +// The imports and exports fields can be either undefined or a string. +// - If it's a string, it's either plain string or a stringified JSON string. +// - If it's a stringified JSON string, it starts with either '[' or '{'. +const requiresJSONParse = (value) => (value !== undefined && (value[0] === '[' || value[0] === '{')); + /** * Reads a package.json file and returns the parsed contents. * @param {string} jsonPath @@ -75,7 +102,7 @@ function deserializePackageJSON(path, contents) { * specifier?: URL | string, * isESM?: boolean, * }} options - * @returns {import('typings/internalBinding/modules').PackageConfig} + * @returns {PackageConfig} */ function read(jsonPath, { base, specifier, isESM } = kEmptyObject) { // This function will be called by both CJS and ESM, so we need to make sure @@ -87,7 +114,14 @@ function read(jsonPath, { base, specifier, isESM } = kEmptyObject) { specifier == null ? undefined : `${specifier}`, ); - return deserializePackageJSON(jsonPath, parsed); + const result = deserializePackageJSON(jsonPath, parsed); + + return { + __proto__: null, + ...result.data, + exists: result.exists, + pjsonPath: result.path, + }; } /** @@ -98,14 +132,14 @@ function read(jsonPath, { base, specifier, isESM } = kEmptyObject) { */ function readPackage(requestPath) { // TODO(@anonrig): Remove this function. - return read(resolve(requestPath, 'package.json')); + return read(path.resolve(requestPath, 'package.json')); } /** * Get the nearest parent package.json file from a given path. * Return the package.json data and the path to the package.json file, or undefined. * @param {string} checkPath The path to start searching from. - * @returns {undefined | {data: import('typings/internalBinding/modules').PackageConfig, path: string}} + * @returns {undefined | DeserializedPackageConfig} */ function getNearestParentPackageJSON(checkPath) { const result = modulesBinding.getNearestParentPackageJSON(checkPath); @@ -114,13 +148,7 @@ function getNearestParentPackageJSON(checkPath) { return undefined; } - const data = deserializePackageJSON(checkPath, result); - - // Path should be the root folder of the matched package.json - // For example for ~/path/package.json, it should be ~/path - const path = StringPrototypeSlice(data.pjsonPath, 0, StringPrototypeLastIndexOf(data.pjsonPath, sep)); - - return { data, path }; + return deserializePackageJSON(checkPath, result); } /** @@ -132,7 +160,14 @@ function getPackageScopeConfig(resolved) { const result = modulesBinding.getPackageScopeConfig(`${resolved}`); if (ArrayIsArray(result)) { - return deserializePackageJSON(`${resolved}`, result); + const { data, exists, path } = deserializePackageJSON(`${resolved}`, result); + + return { + __proto__: null, + ...data, + exists, + pjsonPath: path, + }; } // This means that the response is a string @@ -154,10 +189,142 @@ function getPackageType(url) { return getPackageScopeConfig(url).type; } +const invalidPackageNameRegEx = /^\.|%|\\/; +/** + * Parse a package name from a specifier. + * @param {string} specifier - The import specifier. + * @param {string | URL | undefined} base - The parent URL. + */ +function parsePackageName(specifier, base) { + let separatorIndex = StringPrototypeIndexOf(specifier, '/'); + let validPackageName = true; + let isScoped = false; + if (specifier[0] === '@') { + isScoped = true; + if (separatorIndex === -1 || specifier.length === 0) { + validPackageName = false; + } else { + separatorIndex = StringPrototypeIndexOf( + specifier, '/', separatorIndex + 1); + } + } + + const packageName = separatorIndex === -1 ? + specifier : StringPrototypeSlice(specifier, 0, separatorIndex); + + // Package name cannot have leading . and cannot have percent-encoding or + // \\ separators. + if (RegExpPrototypeExec(invalidPackageNameRegEx, packageName) !== null) { + validPackageName = false; + } + + if (!validPackageName) { + throw new ERR_INVALID_MODULE_SPECIFIER( + specifier, 'is not a valid package name', fileURLToPath(base)); + } + + const packageSubpath = '.' + (separatorIndex === -1 ? '' : + StringPrototypeSlice(specifier, separatorIndex)); + + return { packageName, packageSubpath, isScoped }; +} + +function getPackageJSONURL(specifier, base) { + const { packageName, packageSubpath, isScoped } = + parsePackageName(specifier, base); + + // ResolveSelf + const packageConfig = getPackageScopeConfig(base); + if (packageConfig.exists) { + if (packageConfig.exports != null && packageConfig.name === packageName) { + const packageJSONPath = packageConfig.pjsonPath; + return { packageJSONUrl: pathToFileURL(packageJSONPath), packageJSONPath, packageSubpath }; + } + } + + let packageJSONUrl = + new URL('./node_modules/' + packageName + '/package.json', base); + let packageJSONPath = fileURLToPath(packageJSONUrl); + let lastPath; + do { + const stat = internalFsBinding.internalModuleStat( + internalFsBinding, + StringPrototypeSlice(packageJSONPath, 0, packageJSONPath.length - 13), + ); + // Check for !stat.isDirectory() + if (stat !== 1) { + lastPath = packageJSONPath; + packageJSONUrl = new URL((isScoped ? + '../../../../node_modules/' : '../../../node_modules/') + + packageName + '/package.json', packageJSONUrl); + packageJSONPath = fileURLToPath(packageJSONUrl); + continue; + } + + // Package match. + return { packageJSONUrl, packageJSONPath, packageSubpath }; + } while (packageJSONPath.length !== lastPath.length); + + throw new ERR_MODULE_NOT_FOUND(packageName, fileURLToPath(base), null); +} + +/** @type {import('./esm/resolve.js').defaultResolve} */ +let defaultResolve; +/** + * @param {URL['href'] | string | URL} specifier The location for which to get the "root" package.json + * @param {URL['href'] | string | URL} [base] The location of the current module (ex file://tmp/foo.js). + */ +function findPackageJSON(specifier, base = 'data:') { + if (arguments.length === 0) { + throw new ERR_MISSING_ARGS('specifier'); + } + try { + specifier = `${specifier}`; + } catch { + validateString(specifier, 'specifier'); + } + + let parentURL = base; + if (!isURL(base)) { + validateString(base, 'base'); + parentURL = path.isAbsolute(base) ? pathToFileURL(base) : new URL(base); + } + + if (specifier && specifier[0] !== '.' && specifier[0] !== '/' && !URLCanParse(specifier)) { + // If `specifier` is a bare specifier. + const { packageJSONPath } = getPackageJSONURL(specifier, parentURL); + return packageJSONPath; + } + + let resolvedTarget; + defaultResolve ??= require('internal/modules/esm/resolve').defaultResolve; + + try { + // TODO(@JakobJingleheimer): Detect whether findPackageJSON is being used within a loader + // (possibly piggyback on `allowImportMetaResolve`) + // - When inside, use the default resolve + // - (I think it's impossible to use the chain because of re-entry & a deadlock from atomics). + // - When outside, use cascadedLoader.resolveSync (not implemented yet, but the pieces exist). + resolvedTarget = defaultResolve(specifier, { parentURL: `${parentURL}` }).url; + } catch (err) { + if (err.code === 'ERR_UNSUPPORTED_DIR_IMPORT') { + resolvedTarget = err.url; + } else { + throw err; + } + } + + const pkg = getNearestParentPackageJSON(fileURLToPath(resolvedTarget)); + + return pkg?.path; +} + module.exports = { read, readPackage, getNearestParentPackageJSON, getPackageScopeConfig, getPackageType, + getPackageJSONURL, + findPackageJSON, }; diff --git a/lib/internal/modules/typescript.js b/lib/internal/modules/typescript.js index d1b58e86c72ee7..6abfc707657b92 100644 --- a/lib/internal/modules/typescript.js +++ b/lib/internal/modules/typescript.js @@ -1,5 +1,8 @@ 'use strict'; +const { + ObjectPrototypeHasOwnProperty, +} = primordials; const { validateBoolean, validateOneOf, @@ -14,9 +17,11 @@ const { assertTypeScript, const { ERR_INVALID_TYPESCRIPT_SYNTAX, ERR_UNSUPPORTED_NODE_MODULES_TYPE_STRIPPING, + ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX, } = require('internal/errors').codes; const { getOptionValue } = require('internal/options'); const assert = require('internal/assert'); +const { Buffer } = require('buffer'); /** * The TypeScript parsing mode, either 'strip-only' or 'transform'. @@ -48,7 +53,21 @@ function parseTypeScript(source, options) { try { return parse(source, options); } catch (error) { - throw new ERR_INVALID_TYPESCRIPT_SYNTAX(error); + /** + * Amaro v0.3.0 (from SWC v1.10.7) throws an object with `message` and `code` properties. + * It allows us to distinguish between invalid syntax and unsupported syntax. + */ + switch (error?.code) { + case 'UnsupportedSyntax': + throw new ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX(error.message); + case 'InvalidSyntax': + throw new ERR_INVALID_TYPESCRIPT_SYNTAX(error.message); + default: + // SWC may throw strings when something goes wrong. + if (typeof error === 'string') { assert.fail(error); } + assert(error != null && ObjectPrototypeHasOwnProperty(error, 'message')); + assert.fail(error.message); + } } } @@ -112,9 +131,13 @@ function processTypeScriptCode(code, options) { * It is used by internal loaders. * @param {string} source TypeScript code to parse. * @param {string} filename The filename of the source code. + * @param {boolean} emitWarning Whether to emit a warning. * @returns {TransformOutput} The stripped TypeScript code. */ -function stripTypeScriptModuleTypes(source, filename) { +function stripTypeScriptModuleTypes(source, filename, emitWarning = true) { + if (emitWarning) { + emitExperimentalWarning('Type Stripping'); + } assert(typeof source === 'string'); if (isUnderNodeModules(filename)) { throw new ERR_UNSUPPORTED_NODE_MODULES_TYPE_STRIPPING(filename); @@ -134,9 +157,10 @@ function stripTypeScriptModuleTypes(source, filename) { * @returns {string} The code with the source map attached. */ function addSourceMap(code, sourceMap) { - // TODO(@marco-ippolito) When Buffer.transcode supports utf8 to - // base64 transformation, we should change this line. - const base64SourceMap = internalBinding('buffer').btoa(sourceMap); + // The base64 encoding should be https://datatracker.ietf.org/doc/html/rfc4648#section-4, + // not base64url https://datatracker.ietf.org/doc/html/rfc4648#section-5. See data url + // spec https://tools.ietf.org/html/rfc2397#section-2. + const base64SourceMap = Buffer.from(sourceMap).toString('base64'); return `${code}\n\n//# sourceMappingURL=data:application/json;base64,${base64SourceMap}`; } diff --git a/lib/internal/process/execution.js b/lib/internal/process/execution.js index 68b267b61c39b1..b5f9bec59189ca 100644 --- a/lib/internal/process/execution.js +++ b/lib/internal/process/execution.js @@ -2,6 +2,8 @@ const { RegExpPrototypeExec, + StringPrototypeIndexOf, + StringPrototypeSlice, Symbol, globalThis, } = primordials; @@ -17,6 +19,7 @@ const { } = require('internal/errors'); const { pathToFileURL } = require('internal/url'); const { exitCodes: { kGenericUserError } } = internalBinding('errors'); +const { stripTypeScriptModuleTypes } = require('internal/modules/typescript'); const { executionAsyncId, @@ -32,6 +35,7 @@ const { getOptionValue } = require('internal/options'); const { makeContextifyScript, runScriptInThisContext, } = require('internal/vm'); +const { emitExperimentalWarning } = require('internal/util'); // shouldAbortOnUncaughtToggle is a typed array for faster // communication with JS. const { shouldAbortOnUncaughtToggle } = internalBinding('util'); @@ -70,70 +74,29 @@ function evalModuleEntryPoint(source, print) { } function evalScript(name, body, breakFirstLine, print, shouldLoadESM = false) { - const CJSModule = require('internal/modules/cjs/loader').Module; - - const cwd = tryGetCwd(); const origModule = globalThis.module; // Set e.g. when called from the REPL. - - const module = new CJSModule(name); - module.filename = path.join(cwd, name); - module.paths = CJSModule._nodeModulePaths(cwd); - + const module = createModule(name); const baseUrl = pathToFileURL(module.filename).href; - if (getOptionValue('--experimental-detect-module') && - getOptionValue('--input-type') === '' && getOptionValue('--experimental-default-type') === '' && - containsModuleSyntax(body, name, null, 'no CJS variables')) { - return evalModuleEntryPoint(body, print); + if (shouldUseModuleEntryPoint(name, body)) { + return getOptionValue('--experimental-strip-types') ? + evalTypeScriptModuleEntryPoint(body, print) : + evalModuleEntryPoint(body, print); } - const runScript = () => { - // Create wrapper for cache entry - const script = ` - globalThis.module = module; - globalThis.exports = exports; - globalThis.__dirname = __dirname; - globalThis.require = require; - return (main) => main(); - `; - globalThis.__filename = name; - RegExpPrototypeExec(/^/, ''); // Necessary to reset RegExp statics before user code runs. - const result = module._compile(script, `${name}-wrapper`)(() => { - const hostDefinedOptionId = Symbol(name); - async function importModuleDynamically(specifier, _, importAttributes) { - const cascadedLoader = require('internal/modules/esm/loader').getOrInitializeCascadedLoader(); - return cascadedLoader.import(specifier, baseUrl, importAttributes); - } - const script = makeContextifyScript( - body, // code - name, // filename, - 0, // lineOffset - 0, // columnOffset, - undefined, // cachedData - false, // produceCachedData - undefined, // parsingContext - hostDefinedOptionId, // hostDefinedOptionId - importModuleDynamically, // importModuleDynamically - ); - return runScriptInThisContext(script, true, !!breakFirstLine); - }); - if (print) { - const { log } = require('internal/console/global'); - - process.on('exit', () => { - log(result); - }); - } - - if (origModule !== undefined) - globalThis.module = origModule; - }; + const evalFunction = () => runScriptInContext(name, + body, + breakFirstLine, + print, + module, + baseUrl, + undefined, + origModule); if (shouldLoadESM) { - require('internal/modules/run_main').runEntryPointWithESMLoader(runScript); - return; + return require('internal/modules/run_main').runEntryPointWithESMLoader(evalFunction); } - runScript(); + evalFunction(); } const exceptionHandlerState = { @@ -238,10 +201,273 @@ function readStdin(callback) { }); } +/** + * Adds the TS message to the error stack. + * + * At the 3rd line of the stack, the message is added. + * @param {string} originalStack The stack to decorate + * @param {string} newMessage the message to add to the error stack + * @returns {void} + */ +function decorateCJSErrorWithTSMessage(originalStack, newMessage) { + let index; + for (let i = 0; i < 3; i++) { + index = StringPrototypeIndexOf(originalStack, '\n', index + 1); + } + return StringPrototypeSlice(originalStack, 0, index) + + '\n' + newMessage + + StringPrototypeSlice(originalStack, index); +} + +/** + * + * Wrapper of evalScript + * + * This function wraps the evaluation of the source code in a try-catch block. + * If the source code fails to be evaluated, it will retry evaluating the source code + * with the TypeScript parser. + * + * If the source code fails to be evaluated with the TypeScript parser, + * it will rethrow the original error, adding the TypeScript error message to the stack. + * + * This way we don't change the behavior of the code, but we provide a better error message + * in case of a typescript error. + * @param {string} name The name of the file + * @param {string} source The source code to evaluate + * @param {boolean} breakFirstLine Whether to break on the first line + * @param {boolean} print If the result should be printed + * @param {boolean} shouldLoadESM If the code should be loaded as an ESM module + * @returns {void} + */ +function evalTypeScript(name, source, breakFirstLine, print, shouldLoadESM = false) { + const origModule = globalThis.module; // Set e.g. when called from the REPL. + const module = createModule(name); + const baseUrl = pathToFileURL(module.filename).href; + + if (shouldUseModuleEntryPoint(name, source)) { + return evalTypeScriptModuleEntryPoint(source, print); + } + + let compiledScript; + // This variable can be modified if the source code is stripped. + let sourceToRun = source; + try { + compiledScript = compileScript(name, source, baseUrl); + } catch (originalError) { + try { + sourceToRun = stripTypeScriptModuleTypes(source, name, false); + // Retry the CJS/ESM syntax detection after stripping the types. + if (shouldUseModuleEntryPoint(name, sourceToRun)) { + return evalTypeScriptModuleEntryPoint(source, print); + } + // If the ContextifiedScript was successfully created, execute it. + // outside the try-catch block to avoid catching runtime errors. + compiledScript = compileScript(name, sourceToRun, baseUrl); + // Emit the experimental warning after the code was successfully evaluated. + emitExperimentalWarning('Type Stripping'); + } catch (tsError) { + // If it's invalid or unsupported TypeScript syntax, rethrow the original error + // with the TypeScript error message added to the stack. + if (tsError.code === 'ERR_INVALID_TYPESCRIPT_SYNTAX' || tsError.code === 'ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX') { + originalError.stack = decorateCJSErrorWithTSMessage(originalError.stack, tsError.message); + throw originalError; + } + + throw tsError; + } + } + + const evalFunction = () => runScriptInContext(name, + sourceToRun, + breakFirstLine, + print, + module, + baseUrl, + compiledScript, + origModule); + + if (shouldLoadESM) { + return require('internal/modules/run_main').runEntryPointWithESMLoader(evalFunction); + } + evalFunction(); +} + +/** + * Wrapper of evalModuleEntryPoint + * + * This function wraps the compilation of the source code in a try-catch block. + * If the source code fails to be compiled, it will retry transpiling the source code + * with the TypeScript parser. + * @param {string} source The source code to evaluate + * @param {boolean} print If the result should be printed + * @returns {Promise} The module evaluation promise + */ +function evalTypeScriptModuleEntryPoint(source, print) { + if (print) { + throw new ERR_EVAL_ESM_CANNOT_PRINT(); + } + + RegExpPrototypeExec(/^/, ''); // Necessary to reset RegExp statics before user code runs. + + return require('internal/modules/run_main').runEntryPointWithESMLoader( + async (loader) => { + const url = getEvalModuleUrl(); + let moduleWrap; + try { + // Compile the module to check for syntax errors. + moduleWrap = loader.createModuleWrap(source, url); + } catch (originalError) { + try { + const strippedSource = stripTypeScriptModuleTypes(source, url, false); + // If the moduleWrap was successfully created, execute the module job. + // outside the try-catch block to avoid catching runtime errors. + moduleWrap = loader.createModuleWrap(strippedSource, url); + // Emit the experimental warning after the code was successfully compiled. + emitExperimentalWarning('Type Stripping'); + } catch (tsError) { + // If it's invalid or unsupported TypeScript syntax, rethrow the original error + // with the TypeScript error message added to the stack. + if (tsError.code === 'ERR_INVALID_TYPESCRIPT_SYNTAX' || + tsError.code === 'ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX') { + originalError.stack = `${tsError.message}\n\n${originalError.stack}`; + throw originalError; + } + + throw tsError; + } + } + // If the moduleWrap was successfully created either with by just compiling + // or after transpilation, execute the module job. + return loader.executeModuleJob(url, moduleWrap, true); + }, + ); +}; + +/** + * + * Function used to shortcut when `--input-type=module-typescript` is set. + * @param {string} source + * @param {boolean} print + */ +function parseAndEvalModuleTypeScript(source, print) { + // We know its a TypeScript module, we can safely emit the experimental warning. + const strippedSource = stripTypeScriptModuleTypes(source, getEvalModuleUrl()); + evalModuleEntryPoint(strippedSource, print); +} + +/** + * Function used to shortcut when `--input-type=commonjs-typescript` is set + * @param {string} name The name of the file + * @param {string} source The source code to evaluate + * @param {boolean} breakFirstLine Whether to break on the first line + * @param {boolean} print If the result should be printed + * @param {boolean} shouldLoadESM If the code should be loaded as an ESM module + * @returns {void} + */ +function parseAndEvalCommonjsTypeScript(name, source, breakFirstLine, print, shouldLoadESM = false) { + // We know its a TypeScript module, we can safely emit the experimental warning. + const strippedSource = stripTypeScriptModuleTypes(source, getEvalModuleUrl()); + evalScript(name, strippedSource, breakFirstLine, print, shouldLoadESM); +} + +/** + * + * @param {string} name - The filename of the script. + * @param {string} body - The code of the script. + * @param {string} baseUrl Path of the parent importing the module. + * @returns {ContextifyScript} The created contextify script. + */ +function compileScript(name, body, baseUrl) { + const hostDefinedOptionId = Symbol(name); + async function importModuleDynamically(specifier, _, importAttributes) { + const cascadedLoader = require('internal/modules/esm/loader').getOrInitializeCascadedLoader(); + return cascadedLoader.import(specifier, baseUrl, importAttributes); + } + return makeContextifyScript( + body, // code + name, // filename, + 0, // lineOffset + 0, // columnOffset, + undefined, // cachedData + false, // produceCachedData + undefined, // parsingContext + hostDefinedOptionId, // hostDefinedOptionId + importModuleDynamically, // importModuleDynamically + ); +} + +/** + * @param {string} name - The filename of the script. + * @param {string} body - The code of the script. + * @returns {boolean} Whether the module entry point should be evaluated as a module. + */ +function shouldUseModuleEntryPoint(name, body) { + return getOptionValue('--experimental-detect-module') && getOptionValue('--experimental-default-type') === '' && + getOptionValue('--input-type') === '' && + containsModuleSyntax(body, name, null, 'no CJS variables'); +} + +/** + * + * @param {string} name - The filename of the script. + * @returns {import('internal/modules/esm/loader').CJSModule} The created module. + */ +function createModule(name) { + const CJSModule = require('internal/modules/cjs/loader').Module; + const cwd = tryGetCwd(); + const module = new CJSModule(name); + module.filename = path.join(cwd, name); + module.paths = CJSModule._nodeModulePaths(cwd); + return module; +} + +/** + * + * @param {string} name - The filename of the script. + * @param {string} body - The code of the script. + * @param {boolean} breakFirstLine Whether to break on the first line + * @param {boolean} print If the result should be printed + * @param {import('internal/modules/esm/loader').CJSModule} module The module + * @param {string} baseUrl Path of the parent importing the module. + * @param {object} compiledScript The compiled script. + * @param {any} origModule The original module. + * @returns {void} + */ +function runScriptInContext(name, body, breakFirstLine, print, module, baseUrl, compiledScript, origModule) { + // Create wrapper for cache entry + const script = ` + globalThis.module = module; + globalThis.exports = exports; + globalThis.__dirname = __dirname; + globalThis.require = require; + return (main) => main(); + `; + globalThis.__filename = name; + RegExpPrototypeExec(/^/, ''); // Necessary to reset RegExp statics before user code runs. + const result = module._compile(script, `${name}-wrapper`)(() => { + // If the script was already compiled, use it. + return runScriptInThisContext( + compiledScript ?? compileScript(name, body, baseUrl), + true, !!breakFirstLine); + }); + if (print) { + const { log } = require('internal/console/global'); + + process.on('exit', () => { + log(result); + }); + } + if (origModule !== undefined) + globalThis.module = origModule; +} + module.exports = { + parseAndEvalCommonjsTypeScript, + parseAndEvalModuleTypeScript, readStdin, tryGetCwd, evalModuleEntryPoint, + evalTypeScript, evalScript, onGlobalUncaughtException: createOnGlobalUncaughtException(), setUncaughtExceptionCaptureCallback, diff --git a/lib/internal/process/per_thread.js b/lib/internal/process/per_thread.js index 781a78cc504ed1..aad8c08707b268 100644 --- a/lib/internal/process/per_thread.js +++ b/lib/internal/process/per_thread.js @@ -13,6 +13,7 @@ const { ArrayPrototypeSplice, BigUint64Array, Float64Array, + FunctionPrototypeCall, NumberMAX_SAFE_INTEGER, ObjectDefineProperty, ObjectFreeze, @@ -26,6 +27,7 @@ const { StringPrototypeReplace, StringPrototypeSlice, Symbol, + SymbolFor, SymbolIterator, } = primordials; @@ -422,6 +424,20 @@ function toggleTraceCategoryState(asyncHooksEnabled) { const { arch, platform, version } = process; +let refSymbol; +function ref(maybeRefable) { + if (maybeRefable == null) return; + const fn = maybeRefable[refSymbol ??= SymbolFor('nodejs.ref')] || maybeRefable.ref; + if (typeof fn === 'function') FunctionPrototypeCall(fn, maybeRefable); +} + +let unrefSymbol; +function unref(maybeRefable) { + if (maybeRefable == null) return; + const fn = maybeRefable[unrefSymbol ??= SymbolFor('nodejs.unref')] || maybeRefable.unref; + if (typeof fn === 'function') FunctionPrototypeCall(fn, maybeRefable); +} + module.exports = { toggleTraceCategoryState, assert, @@ -432,4 +448,6 @@ module.exports = { arch, platform, version, + ref, + unref, }; diff --git a/lib/internal/process/pre_execution.js b/lib/internal/process/pre_execution.js index 5d67892bb8e1fd..d1c05d1717cdc8 100644 --- a/lib/internal/process/pre_execution.js +++ b/lib/internal/process/pre_execution.js @@ -698,9 +698,17 @@ function initializeESMLoader(forceDefaultLoader) { function initializeSourceMapsHandlers() { const { - setSourceMapsEnabled, + setSourceMapsSupport, } = require('internal/source_map/source_map_cache'); - setSourceMapsEnabled(getOptionValue('--enable-source-maps')); + const enabled = getOptionValue('--enable-source-maps'); + setSourceMapsSupport(enabled, { + __proto__: null, + // TODO(legendecas): In order to smoothly improve the source map support, + // skip source maps in node_modules and generated code with + // `--enable-source-maps` in a semver major version. + nodeModules: enabled, + generatedCode: enabled, + }); } function initializeFrozenIntrinsics() { diff --git a/lib/internal/source_map/prepare_stack_trace.js b/lib/internal/source_map/prepare_stack_trace.js index 60c9d1ed3316ff..3e4b0825e7b3a5 100644 --- a/lib/internal/source_map/prepare_stack_trace.js +++ b/lib/internal/source_map/prepare_stack_trace.js @@ -53,9 +53,15 @@ function prepareStackTraceWithSourceMaps(error, trace) { const sm = fileName === lastFileName ? lastSourceMap : findSourceMap(fileName); - lastSourceMap = sm; - lastFileName = fileName; + // Only when a source map is found, cache it for the next iteration. + // This is a performance optimization to avoid interleaving with JS builtin function + // invalidating the cache. + // - at myFunc (file:///path/to/file.js:1:2) + // - at Array.map (<anonymous>) + // - at myFunc (file:///path/to/file.js:3:4) if (sm) { + lastSourceMap = sm; + lastFileName = fileName; return `${kStackLineAt}${serializeJSStackFrame(sm, callSite, trace[i + 1])}`; } } catch (err) { diff --git a/lib/internal/source_map/source_map_cache.js b/lib/internal/source_map/source_map_cache.js index dfb42f83f6f1b1..bdef338e3dd086 100644 --- a/lib/internal/source_map/source_map_cache.js +++ b/lib/internal/source_map/source_map_cache.js @@ -3,6 +3,7 @@ const { ArrayPrototypePush, JSONParse, + ObjectFreeze, RegExpPrototypeExec, SafeMap, StringPrototypeCodePointAt, @@ -15,7 +16,7 @@ let debug = require('internal/util/debuglog').debuglog('source_map', (fn) => { debug = fn; }); -const { validateBoolean } = require('internal/validators'); +const { validateBoolean, validateObject } = require('internal/validators'); const { setSourceMapsEnabled: setSourceMapsNative, } = internalBinding('errors'); @@ -23,7 +24,7 @@ const { defaultPrepareStackTrace, setInternalPrepareStackTrace, } = require('internal/errors'); -const { getLazy } = require('internal/util'); +const { getLazy, isUnderNodeModules, kEmptyObject } = require('internal/util'); const getModuleSourceMapCache = getLazy(() => { const { SourceMapCacheMap } = require('internal/source_map/source_map_cache_map'); @@ -45,30 +46,48 @@ const { fileURLToPath, pathToFileURL, URL, URLParse } = require('internal/url'); let SourceMap; // This is configured with --enable-source-maps during pre-execution. -let sourceMapsEnabled = false; -function getSourceMapsEnabled() { - return sourceMapsEnabled; +let sourceMapsSupport = ObjectFreeze({ + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); +function getSourceMapsSupport() { + // Return a read-only object. + return sourceMapsSupport; } /** * Enables or disables source maps programmatically. - * @param {boolean} val + * @param {boolean} enabled + * @param {object} options + * @param {boolean} [options.nodeModules] + * @param {boolean} [options.generatedCode] */ -function setSourceMapsEnabled(val) { - validateBoolean(val, 'val'); +function setSourceMapsSupport(enabled, options = kEmptyObject) { + validateBoolean(enabled, 'enabled'); + validateObject(options, 'options'); + + const { nodeModules = false, generatedCode = false } = options; + validateBoolean(nodeModules, 'options.nodeModules'); + validateBoolean(generatedCode, 'options.generatedCode'); - setSourceMapsNative(val); - if (val) { + setSourceMapsNative(enabled); + if (enabled) { const { prepareStackTraceWithSourceMaps, } = require('internal/source_map/prepare_stack_trace'); setInternalPrepareStackTrace(prepareStackTraceWithSourceMaps); - } else if (sourceMapsEnabled !== undefined) { - // Reset prepare stack trace callback only when disabling source maps. + } else { setInternalPrepareStackTrace(defaultPrepareStackTrace); } - sourceMapsEnabled = val; + sourceMapsSupport = ObjectFreeze({ + __proto__: null, + enabled, + nodeModules: nodeModules, + generatedCode: generatedCode, + }); } /** @@ -130,14 +149,18 @@ function extractSourceMapURLMagicComment(content) { * @param {string | undefined} sourceMapURL - the source map url */ function maybeCacheSourceMap(filename, content, moduleInstance, isGeneratedSource, sourceURL, sourceMapURL) { - const sourceMapsEnabled = getSourceMapsEnabled(); - if (!(process.env.NODE_V8_COVERAGE || sourceMapsEnabled)) return; + const support = getSourceMapsSupport(); + if (!(process.env.NODE_V8_COVERAGE || support.enabled)) return; const { normalizeReferrerURL } = require('internal/modules/helpers'); filename = normalizeReferrerURL(filename); if (filename === undefined) { // This is most likely an invalid filename in sourceURL of [eval]-wrapper. return; } + if (!support.nodeModules && isUnderNodeModules(filename)) { + // Skip file under node_modules if not enabled. + return; + } if (sourceMapURL === undefined) { sourceMapURL = extractSourceMapURLMagicComment(content); @@ -155,6 +178,9 @@ function maybeCacheSourceMap(filename, content, moduleInstance, isGeneratedSourc } const data = dataFromUrl(filename, sourceMapURL); + // `data` could be null if the source map is invalid. + // In this case, create a cache entry with null data with source url for test coverage. + const entry = { __proto__: null, lineLengths: lineLengths(content), @@ -182,8 +208,8 @@ function maybeCacheSourceMap(filename, content, moduleInstance, isGeneratedSourc * @param {string} content - the eval'd source code */ function maybeCacheGeneratedSourceMap(content) { - const sourceMapsEnabled = getSourceMapsEnabled(); - if (!(process.env.NODE_V8_COVERAGE || sourceMapsEnabled)) return; + const support = getSourceMapsSupport(); + if (!(process.env.NODE_V8_COVERAGE || support.enabled || support.generated)) return; const sourceURL = extractSourceURLMagicComment(content); if (sourceURL === null) { @@ -277,6 +303,8 @@ function sourceMapFromDataUrl(sourceURL, url) { const parsedData = JSONParse(decodedData); return sourcesToAbsolute(sourceURL, parsedData); } catch (err) { + // TODO(legendecas): warn about invalid source map JSON string. + // But it could be verbose. debug(err); return null; } @@ -331,30 +359,53 @@ function sourceMapCacheToObject() { /** * Find a source map for a given actual source URL or path. + * + * This function may be invoked from user code or test runner, this must not throw + * any exceptions. * @param {string} sourceURL - actual source URL or path * @returns {import('internal/source_map/source_map').SourceMap | undefined} a source map or undefined if not found */ function findSourceMap(sourceURL) { - if (RegExpPrototypeExec(kLeadingProtocol, sourceURL) === null) { - sourceURL = pathToFileURL(sourceURL).href; + if (typeof sourceURL !== 'string') { + return undefined; } - SourceMap ??= require('internal/source_map/source_map').SourceMap; - const entry = getModuleSourceMapCache().get(sourceURL) ?? generatedSourceMapCache.get(sourceURL); - if (entry === undefined) { + + // No source maps for builtin modules. + if (sourceURL.startsWith('node:')) { return undefined; } - let sourceMap = entry.sourceMap; - if (sourceMap === undefined) { - sourceMap = new SourceMap(entry.data, { lineLengths: entry.lineLengths }); - entry.sourceMap = sourceMap; + + if (!getSourceMapsSupport().nodeModules && isUnderNodeModules(sourceURL)) { + return undefined; + } + + SourceMap ??= require('internal/source_map/source_map').SourceMap; + try { + if (RegExpPrototypeExec(kLeadingProtocol, sourceURL) === null) { + // If the sourceURL is an invalid path, this will throw an error. + sourceURL = pathToFileURL(sourceURL).href; + } + const entry = getModuleSourceMapCache().get(sourceURL) ?? generatedSourceMapCache.get(sourceURL); + if (entry?.data == null) { + return undefined; + } + + let sourceMap = entry.sourceMap; + if (sourceMap === undefined) { + sourceMap = new SourceMap(entry.data, { lineLengths: entry.lineLengths }); + entry.sourceMap = sourceMap; + } + return sourceMap; + } catch (err) { + debug(err); + return undefined; } - return sourceMap; } module.exports = { findSourceMap, - getSourceMapsEnabled, - setSourceMapsEnabled, + getSourceMapsSupport, + setSourceMapsSupport, maybeCacheSourceMap, maybeCacheGeneratedSourceMap, sourceMapCacheToObject, diff --git a/lib/internal/test_runner/assert.js b/lib/internal/test_runner/assert.js new file mode 100644 index 00000000000000..776c1e25cbfb61 --- /dev/null +++ b/lib/internal/test_runner/assert.js @@ -0,0 +1,50 @@ +'use strict'; +const { + SafeMap, +} = primordials; +const { + validateFunction, + validateString, +} = require('internal/validators'); +const assert = require('assert'); +const methodsToCopy = [ + 'deepEqual', + 'deepStrictEqual', + 'doesNotMatch', + 'doesNotReject', + 'doesNotThrow', + 'equal', + 'fail', + 'ifError', + 'match', + 'notDeepEqual', + 'notDeepStrictEqual', + 'notEqual', + 'notStrictEqual', + 'partialDeepStrictEqual', + 'rejects', + 'strictEqual', + 'throws', +]; +let assertMap; + +function getAssertionMap() { + if (assertMap === undefined) { + assertMap = new SafeMap(); + + for (let i = 0; i < methodsToCopy.length; i++) { + assertMap.set(methodsToCopy[i], assert[methodsToCopy[i]]); + } + } + + return assertMap; +} + +function register(name, fn) { + validateString(name, 'name'); + validateFunction(fn, 'fn'); + const map = getAssertionMap(); + map.set(name, fn); +} + +module.exports = { getAssertionMap, register }; diff --git a/lib/internal/test_runner/reporter/spec.js b/lib/internal/test_runner/reporter/spec.js index 2092d22e3fe77f..caee92a7ba13e1 100644 --- a/lib/internal/test_runner/reporter/spec.js +++ b/lib/internal/test_runner/reporter/spec.js @@ -52,7 +52,7 @@ class SpecReporter extends Transform { hasChildren = true; } const indentation = indent(data.nesting); - return `${formatTestReport(type, data, prefix, indentation, hasChildren)}\n`; + return `${formatTestReport(type, data, prefix, indentation, hasChildren, false)}\n`; } #handleEvent({ type, data }) { switch (type) { diff --git a/lib/internal/test_runner/reporter/utils.js b/lib/internal/test_runner/reporter/utils.js index 9b6cc96a185a9a..256619039e8e90 100644 --- a/lib/internal/test_runner/reporter/utils.js +++ b/lib/internal/test_runner/reporter/utils.js @@ -59,7 +59,7 @@ function formatError(error, indent) { return `\n${indent} ${message}\n`; } -function formatTestReport(type, data, prefix = '', indent = '', hasChildren = false) { +function formatTestReport(type, data, prefix = '', indent = '', hasChildren = false, showErrorDetails = true) { let color = reporterColorMap[type] ?? colors.white; let symbol = reporterUnicodeSymbolMap[type] ?? ' '; const { skip, todo } = data; @@ -71,10 +71,12 @@ function formatTestReport(type, data, prefix = '', indent = '', hasChildren = fa } else if (todo !== undefined) { title += ` # ${typeof todo === 'string' && todo.length ? todo : 'TODO'}`; } - const error = formatError(data.details?.error, indent); + + const error = showErrorDetails ? formatError(data.details?.error, indent) : ''; const err = hasChildren ? (!error || data.details?.error?.failureType === 'subtestsFailed' ? '' : `\n${error}`) : error; + if (skip !== undefined) { color = colors.gray; symbol = reporterUnicodeSymbolMap['hyphen:minus']; diff --git a/lib/internal/test_runner/snapshot.js b/lib/internal/test_runner/snapshot.js index 7e41a0bf76f0cd..642e84b2f13b33 100644 --- a/lib/internal/test_runner/snapshot.js +++ b/lib/internal/test_runner/snapshot.js @@ -15,7 +15,7 @@ const { ERR_INVALID_STATE, }, } = require('internal/errors'); -const { emitExperimentalWarning, kEmptyObject } = require('internal/util'); +const { kEmptyObject } = require('internal/util'); let debug = require('internal/util/debuglog').debuglog('test_runner', (fn) => { debug = fn; }); @@ -23,12 +23,12 @@ const { validateArray, validateFunction, validateObject, + validateString, } = require('internal/validators'); const { strictEqual } = require('assert'); const { mkdirSync, readFileSync, writeFileSync } = require('fs'); const { dirname } = require('path'); const { createContext, runInContext } = require('vm'); -const kExperimentalWarning = 'Snapshot testing'; const kMissingSnapshotTip = 'Missing snapshots can be generated by rerunning ' + 'the command with the --test-update-snapshots flag.'; const defaultSerializers = [ @@ -47,13 +47,11 @@ let resolveSnapshotPathFn = defaultResolveSnapshotPath; let serializerFns = defaultSerializers; function setResolveSnapshotPath(fn) { - emitExperimentalWarning(kExperimentalWarning); validateFunction(fn, 'fn'); resolveSnapshotPathFn = fn; } function setDefaultSnapshotSerializers(serializers) { - emitExperimentalWarning(kExperimentalWarning); validateFunctionArray(serializers, 'serializers'); serializerFns = ArrayPrototypeSlice(serializers); } @@ -112,16 +110,7 @@ class SnapshotFile { } this.loaded = true; } catch (err) { - let msg = `Cannot read snapshot file '${this.snapshotFile}.'`; - - if (err?.code === 'ENOENT') { - msg += ` ${kMissingSnapshotTip}`; - } - - const error = new ERR_INVALID_STATE(msg); - error.cause = err; - error.filename = this.snapshotFile; - throw error; + throwReadError(err, this.snapshotFile); } } @@ -135,11 +124,7 @@ class SnapshotFile { mkdirSync(dirname(this.snapshotFile), { __proto__: null, recursive: true }); writeFileSync(this.snapshotFile, output, 'utf8'); } catch (err) { - const msg = `Cannot write snapshot file '${this.snapshotFile}.'`; - const error = new ERR_INVALID_STATE(msg); - error.cause = err; - error.filename = this.snapshotFile; - throw error; + throwWriteError(err, this.snapshotFile); } } } @@ -174,21 +159,18 @@ class SnapshotManager { serialize(input, serializers = serializerFns) { try { - let value = input; - - for (let i = 0; i < serializers.length; ++i) { - const fn = serializers[i]; - value = fn(value); - } - + const value = serializeValue(input, serializers); return `\n${templateEscape(value)}\n`; } catch (err) { - const error = new ERR_INVALID_STATE( - 'The provided serializers did not generate a string.', - ); - error.input = input; - error.cause = err; - throw error; + throwSerializationError(input, err); + } + } + + serializeWithoutEscape(input, serializers = serializerFns) { + try { + return serializeValue(input, serializers); + } catch (err) { + throwSerializationError(input, err); } } @@ -207,7 +189,6 @@ class SnapshotManager { const manager = this; return function snapshotAssertion(actual, options = kEmptyObject) { - emitExperimentalWarning(kExperimentalWarning); validateObject(options, 'options'); const { serializers = serializerFns, @@ -226,6 +207,80 @@ class SnapshotManager { } }; } + + createFileAssert() { + const manager = this; + + return function fileSnapshotAssertion(actual, path, options = kEmptyObject) { + validateString(path, 'path'); + validateObject(options, 'options'); + const { + serializers = serializerFns, + } = options; + validateFunctionArray(serializers, 'options.serializers'); + const value = manager.serializeWithoutEscape(actual, serializers); + + if (manager.updateSnapshots) { + try { + mkdirSync(dirname(path), { __proto__: null, recursive: true }); + writeFileSync(path, value, 'utf8'); + } catch (err) { + throwWriteError(err, path); + } + } else { + let expected; + + try { + expected = readFileSync(path, 'utf8'); + } catch (err) { + throwReadError(err, path); + } + + strictEqual(value, expected); + } + }; + } +} + +function throwReadError(err, filename) { + let msg = `Cannot read snapshot file '${filename}.'`; + + if (err?.code === 'ENOENT') { + msg += ` ${kMissingSnapshotTip}`; + } + + const error = new ERR_INVALID_STATE(msg); + error.cause = err; + error.filename = filename; + throw error; +} + +function throwWriteError(err, filename) { + const msg = `Cannot write snapshot file '${filename}.'`; + const error = new ERR_INVALID_STATE(msg); + error.cause = err; + error.filename = filename; + throw error; +} + +function throwSerializationError(input, err) { + const error = new ERR_INVALID_STATE( + 'The provided serializers did not generate a string.', + ); + error.input = input; + error.cause = err; + throw error; +} + +function serializeValue(value, serializers) { + let v = value; + + for (let i = 0; i < serializers.length; ++i) { + const fn = serializers[i]; + v = fn(v); + } + + return v; } function validateFunctionArray(fns, name) { diff --git a/lib/internal/test_runner/test.js b/lib/internal/test_runner/test.js index 1c0b1e6223b4bf..f171844b7b9180 100644 --- a/lib/internal/test_runner/test.js +++ b/lib/internal/test_runner/test.js @@ -8,6 +8,7 @@ const { ArrayPrototypeSplice, ArrayPrototypeUnshift, ArrayPrototypeUnshiftApply, + Error, FunctionPrototype, MathMax, Number, @@ -58,11 +59,16 @@ const { const { isPromise } = require('internal/util/types'); const { validateAbortSignal, + validateFunction, validateNumber, + validateObject, validateOneOf, validateUint32, } = require('internal/validators'); -const { setTimeout } = require('timers'); +const { + clearTimeout, + setTimeout, +} = require('timers'); const { TIMEOUT_MAX } = require('internal/timers'); const { fileURLToPath } = require('internal/url'); const { availableParallelism } = require('os'); @@ -100,34 +106,19 @@ function lazyFindSourceMap(file) { function lazyAssertObject(harness) { if (assertObj === undefined) { - assertObj = new SafeMap(); - const assert = require('assert'); + const { getAssertionMap } = require('internal/test_runner/assert'); const { SnapshotManager } = require('internal/test_runner/snapshot'); - const methodsToCopy = [ - 'deepEqual', - 'deepStrictEqual', - 'doesNotMatch', - 'doesNotReject', - 'doesNotThrow', - 'equal', - 'fail', - 'ifError', - 'match', - 'notDeepEqual', - 'notDeepStrictEqual', - 'notEqual', - 'notStrictEqual', - 'partialDeepStrictEqual', - 'rejects', - 'strictEqual', - 'throws', - ]; - for (let i = 0; i < methodsToCopy.length; i++) { - assertObj.set(methodsToCopy[i], assert[methodsToCopy[i]]); - } + assertObj = getAssertionMap(); harness.snapshotManager = new SnapshotManager(harness.config.updateSnapshots); - assertObj.set('snapshot', harness.snapshotManager.createAssert()); + + if (!assertObj.has('snapshot')) { + assertObj.set('snapshot', harness.snapshotManager.createAssert()); + } + + if (!assertObj.has('fileSnapshot')) { + assertObj.set('fileSnapshot', harness.snapshotManager.createFileAssert()); + } } return assertObj; } @@ -264,15 +255,18 @@ class TestContext { }; }); - // This is a hack. It allows the innerOk function to collect the stacktrace from the correct starting point. - function ok(...args) { - if (plan !== null) { - plan.actual++; + if (!map.has('ok')) { + // This is a hack. It allows the innerOk function to collect the + // stacktrace from the correct starting point. + function ok(...args) { + if (plan !== null) { + plan.actual++; + } + innerOk(ok, args.length, ...args); } - innerOk(ok, args.length, ...args); - } - assert.ok = ok; + assert.ok = ok; + } } return this.#assert; } @@ -352,6 +346,60 @@ class TestContext { loc: getCallerLocation(), }); } + + waitFor(condition, options = kEmptyObject) { + validateFunction(condition, 'condition'); + validateObject(options, 'options'); + + const { + interval = 50, + timeout = 1000, + } = options; + + validateNumber(interval, 'options.interval', 0, TIMEOUT_MAX); + validateNumber(timeout, 'options.timeout', 0, TIMEOUT_MAX); + + const { promise, resolve, reject } = PromiseWithResolvers(); + const noError = Symbol(); + let cause = noError; + let pollerId; + let timeoutId; + const done = (err, result) => { + clearTimeout(pollerId); + clearTimeout(timeoutId); + + if (err === noError) { + resolve(result); + } else { + reject(err); + } + }; + + timeoutId = setTimeout(() => { + // eslint-disable-next-line no-restricted-syntax + const err = new Error('waitFor() timed out'); + + if (cause !== noError) { + err.cause = cause; + } + + done(err); + }, timeout); + + const poller = async () => { + try { + const result = await condition(); + + done(noError, result); + } catch (err) { + cause = err; + pollerId = setTimeout(poller, interval); + } + }; + + poller(); + return promise; + } } class SuiteContext { diff --git a/lib/internal/url.js b/lib/internal/url.js index 14b0ef61d2f91c..f6e58e196860fc 100644 --- a/lib/internal/url.js +++ b/lib/internal/url.js @@ -1512,32 +1512,35 @@ function fileURLToPath(path, options = kEmptyObject) { function pathToFileURL(filepath, options = kEmptyObject) { const windows = options?.windows ?? isWindows; - if (windows && StringPrototypeStartsWith(filepath, '\\\\')) { + const isUNC = windows && StringPrototypeStartsWith(filepath, '\\\\'); + let resolved = isUNC ? + filepath : + (windows ? path.win32.resolve(filepath) : path.posix.resolve(filepath)); + if (isUNC || (windows && StringPrototypeStartsWith(resolved, '\\\\'))) { // UNC path format: \\server\share\resource // Handle extended UNC path and standard UNC path // "\\?\UNC\" path prefix should be ignored. // Ref: https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation - const isExtendedUNC = StringPrototypeStartsWith(filepath, '\\\\?\\UNC\\'); + const isExtendedUNC = StringPrototypeStartsWith(resolved, '\\\\?\\UNC\\'); const prefixLength = isExtendedUNC ? 8 : 2; - const hostnameEndIndex = StringPrototypeIndexOf(filepath, '\\', prefixLength); + const hostnameEndIndex = StringPrototypeIndexOf(resolved, '\\', prefixLength); if (hostnameEndIndex === -1) { throw new ERR_INVALID_ARG_VALUE( 'path', - filepath, + resolved, 'Missing UNC resource path', ); } if (hostnameEndIndex === 2) { throw new ERR_INVALID_ARG_VALUE( 'path', - filepath, + resolved, 'Empty UNC servername', ); } - const hostname = StringPrototypeSlice(filepath, prefixLength, hostnameEndIndex); - return new URL(StringPrototypeSlice(filepath, hostnameEndIndex), hostname, kCreateURLFromWindowsPathSymbol); + const hostname = StringPrototypeSlice(resolved, prefixLength, hostnameEndIndex); + return new URL(StringPrototypeSlice(resolved, hostnameEndIndex), hostname, kCreateURLFromWindowsPathSymbol); } - let resolved = windows ? path.win32.resolve(filepath) : path.posix.resolve(filepath); // path.resolve strips trailing slashes so we must add them back const filePathLast = StringPrototypeCharCodeAt(filepath, filepath.length - 1); diff --git a/lib/internal/util/colors.js b/lib/internal/util/colors.js index 054f9c4b4090d8..812048c923bee7 100644 --- a/lib/internal/util/colors.js +++ b/lib/internal/util/colors.js @@ -24,18 +24,16 @@ module.exports = { stream.getColorDepth() > 2 : true); }, refresh() { - if (process.stderr.isTTY) { - const hasColors = module.exports.shouldColorize(process.stderr); - module.exports.blue = hasColors ? '\u001b[34m' : ''; - module.exports.green = hasColors ? '\u001b[32m' : ''; - module.exports.white = hasColors ? '\u001b[39m' : ''; - module.exports.yellow = hasColors ? '\u001b[33m' : ''; - module.exports.red = hasColors ? '\u001b[31m' : ''; - module.exports.gray = hasColors ? '\u001b[90m' : ''; - module.exports.clear = hasColors ? '\u001bc' : ''; - module.exports.reset = hasColors ? '\u001b[0m' : ''; - module.exports.hasColors = hasColors; - } + const hasColors = module.exports.shouldColorize(process.stderr); + module.exports.blue = hasColors ? '\u001b[34m' : ''; + module.exports.green = hasColors ? '\u001b[32m' : ''; + module.exports.white = hasColors ? '\u001b[39m' : ''; + module.exports.yellow = hasColors ? '\u001b[33m' : ''; + module.exports.red = hasColors ? '\u001b[31m' : ''; + module.exports.gray = hasColors ? '\u001b[90m' : ''; + module.exports.clear = hasColors ? '\u001bc' : ''; + module.exports.reset = hasColors ? '\u001b[0m' : ''; + module.exports.hasColors = hasColors; }, }; diff --git a/lib/internal/util/inspect.js b/lib/internal/util/inspect.js index 57586a888e191f..091d3a53f10c10 100644 --- a/lib/internal/util/inspect.js +++ b/lib/internal/util/inspect.js @@ -88,6 +88,7 @@ const { StringPrototypePadEnd, StringPrototypePadStart, StringPrototypeRepeat, + StringPrototypeReplace, StringPrototypeReplaceAll, StringPrototypeSlice, StringPrototypeSplit, @@ -733,6 +734,7 @@ function addPrototypeProperties(ctx, main, obj, recurseTimes, output) { } while (++depth !== 3); } +/** @type {(constructor: string, tag: string, fallback: string, size?: string) => string} */ function getPrefix(constructor, tag, fallback, size = '') { if (constructor === null) { if (tag !== '' && fallback !== tag) { @@ -989,7 +991,7 @@ function formatRaw(ctx, value, recurseTimes, typedArray) { keys = getKeys(value, ctx.showHidden); braces = ['{', '}']; if (typeof value === 'function') { - base = getFunctionBase(value, constructor, tag); + base = getFunctionBase(ctx, value, constructor, tag); if (keys.length === 0 && protoProps === undefined) return ctx.stylize(base, 'special'); } else if (constructor === 'Object') { @@ -1223,7 +1225,7 @@ function getClassBase(value, constructor, tag) { return `[${base}]`; } -function getFunctionBase(value, constructor, tag) { +function getFunctionBase(ctx, value, constructor, tag) { const stringified = FunctionPrototypeToString(value); if (StringPrototypeStartsWith(stringified, 'class') && stringified[stringified.length - 1] === '}') { const slice = StringPrototypeSlice(stringified, 5, -1); @@ -1250,7 +1252,7 @@ function getFunctionBase(value, constructor, tag) { if (value.name === '') { base += ' (anonymous)'; } else { - base += `: ${value.name}`; + base += `: ${typeof value.name === 'string' ? value.name : formatValue(ctx, value.name)}`; } base += ']'; if (constructor !== type && constructor !== null) { @@ -1285,8 +1287,14 @@ function identicalSequenceRange(a, b) { return { len: 0, offset: 0 }; } -function getStackString(error) { - return error.stack ? String(error.stack) : ErrorPrototypeToString(error); +function getStackString(ctx, error) { + if (error.stack) { + if (typeof error.stack === 'string') { + return error.stack; + } + return formatValue(ctx, error.stack); + } + return ErrorPrototypeToString(error); } function getStackFrames(ctx, err, stack) { @@ -1301,7 +1309,7 @@ function getStackFrames(ctx, err, stack) { // Remove stack frames identical to frames in cause. if (cause != null && isError(cause)) { - const causeStack = getStackString(cause); + const causeStack = getStackString(ctx, cause); const causeStackStart = StringPrototypeIndexOf(causeStack, '\n at'); if (causeStackStart !== -1) { const causeFrames = StringPrototypeSplit(StringPrototypeSlice(causeStack, causeStackStart + 1), '\n'); @@ -1316,11 +1324,20 @@ function getStackFrames(ctx, err, stack) { return frames; } +/** @type {(stack: string, constructor: string | null, name: unknown, tag: string) => string} */ function improveStack(stack, constructor, name, tag) { // A stack trace may contain arbitrary data. Only manipulate the output // for "regular errors" (errors that "look normal") for now. let len = name.length; + if (typeof name !== 'string') { + stack = StringPrototypeReplace( + stack, + `${name}`, + `${name} [${StringPrototypeSlice(getPrefix(constructor, tag, 'Error'), 0, -1)}]`, + ); + } + if (constructor === null || (StringPrototypeEndsWith(name, 'Error') && StringPrototypeStartsWith(stack, name) && @@ -1353,8 +1370,8 @@ function removeDuplicateErrorKeys(ctx, keys, err, stack) { if (!ctx.showHidden && keys.length !== 0) { for (const name of ['name', 'message', 'stack']) { const index = ArrayPrototypeIndexOf(keys, name); - // Only hide the property in case it's part of the original stack - if (index !== -1 && StringPrototypeIncludes(stack, err[name])) { + // Only hide the property if it's a string and if it's part of the original stack + if (index !== -1 && (typeof err[name] !== 'string' || StringPrototypeIncludes(stack, err[name]))) { ArrayPrototypeSplice(keys, index, 1); } } @@ -1414,8 +1431,8 @@ function safeGetCWD() { } function formatError(err, constructor, tag, ctx, keys) { - const name = err.name != null ? String(err.name) : 'Error'; - let stack = getStackString(err); + const name = err.name != null ? err.name : 'Error'; + let stack = getStackString(ctx, err); removeDuplicateErrorKeys(ctx, keys, err, stack); diff --git a/lib/internal/webstreams/readablestream.js b/lib/internal/webstreams/readablestream.js index 885932894dafcc..589fe6ce0d2bad 100644 --- a/lib/internal/webstreams/readablestream.js +++ b/lib/internal/webstreams/readablestream.js @@ -925,7 +925,7 @@ class ReadableStreamBYOBReader { throw new ERR_INVALID_ARG_TYPE('stream', 'ReadableStream', stream); this[kState] = { stream: undefined, - requestIntoRequests: [], + readIntoRequests: [], close: { promise: undefined, resolve: undefined, @@ -1031,7 +1031,7 @@ class ReadableStreamBYOBReader { [kInspect](depth, options) { return customInspect(depth, options, this[kType], { stream: this[kState].stream, - requestIntoRequests: this[kState].requestIntoRequests.length, + readIntoRequests: this[kState].readIntoRequests.length, close: this[kState].close.promise, }); } diff --git a/lib/internal/webstreams/writablestream.js b/lib/internal/webstreams/writablestream.js index 5baaf20c30ba26..03b48dd043bc41 100644 --- a/lib/internal/webstreams/writablestream.js +++ b/lib/internal/webstreams/writablestream.js @@ -1176,9 +1176,18 @@ function writableStreamDefaultControllerGetDesiredSize(controller) { } function writableStreamDefaultControllerGetChunkSize(controller, chunk) { + const { + stream, + sizeAlgorithm, + } = controller[kState]; + if (sizeAlgorithm === undefined) { + assert(stream[kState].state === 'errored' || stream[kState].state === 'erroring'); + return 1; + } + try { return FunctionPrototypeCall( - controller[kState].sizeAlgorithm, + sizeAlgorithm, undefined, chunk); } catch (error) { diff --git a/lib/internal/worker.js b/lib/internal/worker.js index 84ae104d4b9588..e5a2cd06892c75 100644 --- a/lib/internal/worker.js +++ b/lib/internal/worker.js @@ -67,6 +67,7 @@ const { const { ownsProcessState, isMainThread, + isInternalThread, resourceLimits: resourceLimitsRaw, threadId, Worker: WorkerImpl, @@ -339,9 +340,11 @@ class Worker extends EventEmitter { { const { stream, chunks } = message; const readable = this[kParentSideStdio][stream]; - ArrayPrototypeForEach(chunks, ({ chunk, encoding }) => { + // This is a hot path, use a for(;;) loop + for (let i = 0; i < chunks.length; i++) { + const { chunk, encoding } = chunks[i]; readable.push(chunk, encoding); - }); + } return; } case messageTypes.STDIO_WANTS_MORE_DATA: @@ -538,6 +541,7 @@ module.exports = { ownsProcessState, kIsOnline, isMainThread, + isInternalThread, SHARE_ENV, resourceLimits: !isMainThread ? makeResourceLimits(resourceLimitsRaw) : {}, diff --git a/lib/internal/worker/io.js b/lib/internal/worker/io.js index 42b8845cec6711..29c7914982b67a 100644 --- a/lib/internal/worker/io.js +++ b/lib/internal/worker/io.js @@ -1,9 +1,7 @@ 'use strict'; const { - ArrayPrototypeForEach, - ArrayPrototypeMap, - ArrayPrototypePush, + Array, FunctionPrototypeBind, FunctionPrototypeCall, ObjectAssign, @@ -77,7 +75,7 @@ const kOnMessage = Symbol('kOnMessage'); const kOnMessageError = Symbol('kOnMessageError'); const kPort = Symbol('kPort'); const kWaitingStreams = Symbol('kWaitingStreams'); -const kWritableCallbacks = Symbol('kWritableCallbacks'); +const kWritableCallback = Symbol('kWritableCallback'); const kStartedReading = Symbol('kStartedReading'); const kStdioWantsMoreDataCallback = Symbol('kStdioWantsMoreDataCallback'); const kCurrentlyReceivingPorts = @@ -282,19 +280,32 @@ class WritableWorkerStdio extends Writable { super({ decodeStrings: false }); this[kPort] = port; this[kName] = name; - this[kWritableCallbacks] = []; + this[kWritableCallback] = null; } _writev(chunks, cb) { + const toSend = new Array(chunks.length); + + // We avoid .map() because it's a hot path + for (let i = 0; i < chunks.length; i++) { + const { chunk, encoding } = chunks[i]; + toSend[i] = { chunk, encoding }; + } + this[kPort].postMessage({ type: messageTypes.STDIO_PAYLOAD, stream: this[kName], - chunks: ArrayPrototypeMap(chunks, - ({ chunk, encoding }) => ({ chunk, encoding })), + chunks: toSend, }); - ArrayPrototypePush(this[kWritableCallbacks], cb); - if (this[kPort][kWaitingStreams]++ === 0) - this[kPort].ref(); + if (process._exiting) { + cb(); + } else { + // Only one writev happens at any given time, + // so we can safely overwrite the callback. + this[kWritableCallback] = cb; + if (this[kPort][kWaitingStreams]++ === 0) + this[kPort].ref(); + } } _final(cb) { @@ -307,11 +318,13 @@ class WritableWorkerStdio extends Writable { } [kStdioWantsMoreDataCallback]() { - const cbs = this[kWritableCallbacks]; - this[kWritableCallbacks] = []; - ArrayPrototypeForEach(cbs, (cb) => cb()); - if ((this[kPort][kWaitingStreams] -= cbs.length) === 0) - this[kPort].unref(); + const cb = this[kWritableCallback]; + if (cb) { + this[kWritableCallback] = null; + cb(); + if (--this[kPort][kWaitingStreams] === 0) + this[kPort].unref(); + } } } diff --git a/lib/module.js b/lib/module.js index eb400e71ae0400..6243726cd602ca 100644 --- a/lib/module.js +++ b/lib/module.js @@ -1,23 +1,38 @@ 'use strict'; -const { findSourceMap } = require('internal/source_map/source_map_cache'); +const { + findSourceMap, + getSourceMapsSupport, + setSourceMapsSupport, +} = require('internal/source_map/source_map_cache'); const { Module } = require('internal/modules/cjs/loader'); const { register } = require('internal/modules/esm/loader'); -const { SourceMap } = require('internal/source_map/source_map'); +const { + SourceMap, +} = require('internal/source_map/source_map'); const { constants, enableCompileCache, flushCompileCache, getCompileCacheDir, } = require('internal/modules/helpers'); +const { + findPackageJSON, +} = require('internal/modules/package_json_reader'); const { stripTypeScriptTypes } = require('internal/modules/typescript'); -Module.findSourceMap = findSourceMap; Module.register = register; -Module.SourceMap = SourceMap; Module.constants = constants; Module.enableCompileCache = enableCompileCache; +Module.findPackageJSON = findPackageJSON; Module.flushCompileCache = flushCompileCache; Module.stripTypeScriptTypes = stripTypeScriptTypes; Module.getCompileCacheDir = getCompileCacheDir; + +// SourceMap APIs +Module.findSourceMap = findSourceMap; +Module.SourceMap = SourceMap; +Module.getSourceMapsSupport = getSourceMapsSupport; +Module.setSourceMapsSupport = setSourceMapsSupport; + module.exports = Module; diff --git a/lib/punycode.js b/lib/punycode.js index 7dfe552a5c9efa..e303a5373b8839 100644 --- a/lib/punycode.js +++ b/lib/punycode.js @@ -1,11 +1,16 @@ 'use strict'; - -process.emitWarning( - 'The `punycode` module is deprecated. Please use a userland ' + - 'alternative instead.', - 'DeprecationWarning', - 'DEP0040', -); +const { + isInsideNodeModules, +} = internalBinding('util'); + +if (!isInsideNodeModules(100, true)) { + process.emitWarning( + 'The `punycode` module is deprecated. Please use a userland ' + + 'alternative instead.', + 'DeprecationWarning', + 'DEP0040', + ); +} /** Highest positive signed 32-bit float value */ const maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 diff --git a/lib/test.js b/lib/test.js index 8e7c6295a37225..d6a313cd0763eb 100644 --- a/lib/test.js +++ b/lib/test.js @@ -61,3 +61,15 @@ ObjectDefineProperty(module.exports, 'snapshot', { return lazySnapshot; }, }); + +ObjectDefineProperty(module.exports, 'assert', { + __proto__: null, + configurable: true, + enumerable: true, + get() { + const { register } = require('internal/test_runner/assert'); + const assert = { __proto__: null, register }; + ObjectDefineProperty(module.exports, 'assert', assert); + return assert; + }, +}); diff --git a/lib/util.js b/lib/util.js index 78e5c1555449f8..572361748b923f 100644 --- a/lib/util.js +++ b/lib/util.js @@ -492,10 +492,10 @@ const lazySourceMap = getLazy(() => require('internal/source_map/source_map_cach * @returns {CallSite | undefined} // The reconstructed call site object */ function reconstructCallSite(callSite) { - const { scriptName, lineNumber, column } = callSite; + const { scriptName, lineNumber, columnNumber } = callSite; const sourceMap = lazySourceMap().findSourceMap(scriptName); if (!sourceMap) return; - const entry = sourceMap.findEntry(lineNumber - 1, column - 1); + const entry = sourceMap.findEntry(lineNumber - 1, columnNumber - 1); if (!entry?.originalSource) return; return { __proto__: null, @@ -504,6 +504,7 @@ function reconstructCallSite(callSite) { scriptName: entry.originalSource, lineNumber: entry.originalLine + 1, column: entry.originalColumn + 1, + columnNumber: entry.originalColumn + 1, }; } diff --git a/lib/worker_threads.js b/lib/worker_threads.js index e874671ea12221..1e7a175fc8638e 100644 --- a/lib/worker_threads.js +++ b/lib/worker_threads.js @@ -1,6 +1,7 @@ 'use strict'; const { + isInternalThread, isMainThread, SHARE_ENV, resourceLimits, @@ -29,6 +30,7 @@ const { } = require('internal/buffer'); module.exports = { + isInternalThread, isMainThread, MessagePort, MessageChannel, diff --git a/node.gyp b/node.gyp index b21cfbf2fad024..d97004c8e148be 100644 --- a/node.gyp +++ b/node.gyp @@ -1305,26 +1305,6 @@ ], }, # embedtest - { - 'target_name': 'sqlite_extension', - 'type': 'shared_library', - 'sources': [ - 'test/sqlite/extension.c' - ], - - 'include_dirs': [ - 'test/sqlite', - 'deps/sqlite', - ], - - 'cflags': [ - '-fPIC', - '-Wall', - '-Wextra', - '-O3', - ], - }, # sqlitetest - { 'target_name': 'overlapped-checker', 'type': 'executable', diff --git a/pyproject.toml b/pyproject.toml index 8e97e3b4446293..45f540bd15170d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,8 +4,7 @@ exclude = [ "tools/cpplint.py", "tools/gyp", "tools/inspector_protocol", - "tools/eslint/node_modules", - "tools/github_reporter" + "tools/eslint/node_modules" ] line-length = 172 target-version = "py38" @@ -33,9 +32,7 @@ ignore = [ "E401", "E402", "E7", - "PLC1901", "RUF005", - "RUF100", ] [tool.ruff.lint.mccabe] diff --git a/src/README.md b/src/README.md index 01d6d5fd4bcd89..565ac0df5cec72 100644 --- a/src/README.md +++ b/src/README.md @@ -467,10 +467,16 @@ void Initialize(Local<Object> target, NODE_BINDING_CONTEXT_AWARE_INTERNAL(cares_wrap, Initialize) ``` -If the C++ binding is loaded during bootstrap, it needs to be registered -with the utilities in `node_external_reference.h`, like this: +#### Registering binding functions used in bootstrap + +If the C++ binding is loaded during bootstrap, in addition to registering it +using `NODE_BINDING_CONTEXT_AWARE_INTERNAL` for `internalBinding()` lookup, +it also needs to be registered with `NODE_BINDING_EXTERNAL_REFERENCE` so that +the external references can be resolved from the built-in snapshot, like this: ```cpp +#include "node_external_reference.h" + namespace node { namespace util { void RegisterExternalReferences(ExternalReferenceRegistry* registry) { @@ -498,7 +504,8 @@ Unknown external reference 0x107769200. /bin/sh: line 1: 6963 Illegal instruction: 4 out/Release/node_mksnapshot out/Release/gen/node_snapshot.cc ``` -You can try using a debugger to symbolicate the external reference. For example, +You can try using a debugger to symbolicate the external reference in order to find +out the binding functions that you forget to register. For example, with lldb's `image lookup --address` command (with gdb it's `info symbol`): ```console @@ -514,7 +521,9 @@ Process 7012 stopped ``` Which explains that the unregistered external reference is -`node::util::GetHiddenValue` defined in `node_util.cc`. +`node::util::GetHiddenValue` defined in `node_util.cc`, and should be registered +using `registry->Register()` in a registration function marked by +`NODE_BINDING_EXTERNAL_REFERENCE`. <a id="per-binding-state"></a> diff --git a/src/amaro_version.h b/src/amaro_version.h index 0f080e671c120e..88efa031ad322b 100644 --- a/src/amaro_version.h +++ b/src/amaro_version.h @@ -2,5 +2,5 @@ // Refer to tools/dep_updaters/update-amaro.sh #ifndef SRC_AMARO_VERSION_H_ #define SRC_AMARO_VERSION_H_ -#define AMARO_VERSION "0.2.0" +#define AMARO_VERSION "0.3.0" #endif // SRC_AMARO_VERSION_H_ diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc index 00fe28d746d61c..e79f43d1824b60 100644 --- a/src/cares_wrap.cc +++ b/src/cares_wrap.cc @@ -59,6 +59,7 @@ namespace cares_wrap { using v8::Array; using v8::Context; using v8::EscapableHandleScope; +using v8::Exception; using v8::FunctionCallbackInfo; using v8::FunctionTemplate; using v8::HandleScope; @@ -68,6 +69,7 @@ using v8::Isolate; using v8::Just; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::Nothing; using v8::Null; @@ -159,7 +161,7 @@ void ares_sockstate_cb(void* data, ares_socket_t sock, int read, int write) { Local<Array> HostentToNames(Environment* env, struct hostent* host) { EscapableHandleScope scope(env->isolate()); - std::vector<Local<Value>> names; + LocalVector<Value> names(env->isolate()); for (uint32_t i = 0; host->h_aliases[i] != nullptr; ++i) names.emplace_back(OneByteString(env->isolate(), host->h_aliases[i])); @@ -1577,16 +1579,17 @@ void ConvertIpv6StringToBuffer(const FunctionCallbackInfo<Value>& args) { unsigned char dst[16]; // IPv6 addresses are 128 bits (16 bytes) if (uv_inet_pton(AF_INET6, *ip, dst) != 0) { - isolate->ThrowException(v8::Exception::Error( - String::NewFromUtf8(isolate, "Invalid IPv6 address").ToLocalChecked())); + isolate->ThrowException(Exception::Error( + FIXED_ONE_BYTE_STRING(isolate, "Invalid IPv6 address"))); return; } - Local<Object> buffer = - node::Buffer::Copy( + Local<Object> buffer; + if (node::Buffer::Copy( isolate, reinterpret_cast<const char*>(dst), sizeof(dst)) - .ToLocalChecked(); - args.GetReturnValue().Set(buffer); + .ToLocal(&buffer)) { + args.GetReturnValue().Set(buffer); + } } void GetAddrInfo(const FunctionCallbackInfo<Value>& args) { @@ -1748,22 +1751,27 @@ void SetServers(const FunctionCallbackInfo<Value>& args) { int err; for (uint32_t i = 0; i < len; i++) { - CHECK(arr->Get(env->context(), i).ToLocalChecked()->IsArray()); - - Local<Array> elm = arr->Get(env->context(), i).ToLocalChecked().As<Array>(); - - CHECK(elm->Get(env->context(), - 0).ToLocalChecked()->Int32Value(env->context()).FromJust()); - CHECK(elm->Get(env->context(), 1).ToLocalChecked()->IsString()); - CHECK(elm->Get(env->context(), - 2).ToLocalChecked()->Int32Value(env->context()).FromJust()); - - int fam = elm->Get(env->context(), 0) - .ToLocalChecked()->Int32Value(env->context()).FromJust(); - node::Utf8Value ip(env->isolate(), - elm->Get(env->context(), 1).ToLocalChecked()); - int port = elm->Get(env->context(), 2) - .ToLocalChecked()->Int32Value(env->context()).FromJust(); + Local<Value> val; + if (!arr->Get(env->context(), i).ToLocal(&val)) return; + CHECK(val->IsArray()); + + Local<Array> elm = val.As<Array>(); + + Local<Value> familyValue; + Local<Value> ipValue; + Local<Value> portValue; + + if (!elm->Get(env->context(), 0).ToLocal(&familyValue)) return; + if (!elm->Get(env->context(), 1).ToLocal(&ipValue)) return; + if (!elm->Get(env->context(), 2).ToLocal(&portValue)) return; + + CHECK(familyValue->Int32Value(env->context()).FromJust()); + CHECK(ipValue->IsString()); + CHECK(portValue->Int32Value(env->context()).FromJust()); + + int fam = familyValue->Int32Value(env->context()).FromJust(); + node::Utf8Value ip(env->isolate(), ipValue); + int port = portValue->Int32Value(env->context()).FromJust(); ares_addr_port_node* cur = &servers[i]; diff --git a/src/crypto/crypto_aes.cc b/src/crypto/crypto_aes.cc index d430648aebc540..ce32b578f9b24a 100644 --- a/src/crypto/crypto_aes.cc +++ b/src/crypto/crypto_aes.cc @@ -16,6 +16,9 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::Cipher; +using ncrypto::CipherCtxPointer; using v8::FunctionCallbackInfo; using v8::Just; using v8::JustVoid; @@ -40,43 +43,30 @@ WebCryptoCipherStatus AES_Cipher(Environment* env, ByteSource* out) { CHECK_EQ(key_data.GetKeyType(), kKeyTypeSecret); - const int mode = EVP_CIPHER_mode(params.cipher); + const int mode = params.cipher.getMode(); - CipherCtxPointer ctx(EVP_CIPHER_CTX_new()); - EVP_CIPHER_CTX_init(ctx.get()); - if (mode == EVP_CIPH_WRAP_MODE) - EVP_CIPHER_CTX_set_flags(ctx.get(), EVP_CIPHER_CTX_FLAG_WRAP_ALLOW); + auto ctx = CipherCtxPointer::New(); + if (mode == EVP_CIPH_WRAP_MODE) { + ctx.setFlags(EVP_CIPHER_CTX_FLAG_WRAP_ALLOW); + } const bool encrypt = cipher_mode == kWebCryptoCipherEncrypt; - if (!EVP_CipherInit_ex( - ctx.get(), - params.cipher, - nullptr, - nullptr, - nullptr, - encrypt)) { + if (!ctx.init(params.cipher, encrypt)) { // Cipher init failed return WebCryptoCipherStatus::FAILED; } - if (mode == EVP_CIPH_GCM_MODE && !EVP_CIPHER_CTX_ctrl( - ctx.get(), - EVP_CTRL_AEAD_SET_IVLEN, - params.iv.size(), - nullptr)) { + if (mode == EVP_CIPH_GCM_MODE && !ctx.setIvLength(params.iv.size())) { return WebCryptoCipherStatus::FAILED; } - if (!EVP_CIPHER_CTX_set_key_length(ctx.get(), - key_data.GetSymmetricKeySize()) || - !EVP_CipherInit_ex( - ctx.get(), - nullptr, - nullptr, + if (!ctx.setKeyLength(key_data.GetSymmetricKeySize()) || + !ctx.init( + Cipher(), + encrypt, reinterpret_cast<const unsigned char*>(key_data.GetSymmetricKey()), - params.iv.data<unsigned char>(), - encrypt)) { + params.iv.data<unsigned char>())) { return WebCryptoCipherStatus::FAILED; } @@ -84,17 +74,19 @@ WebCryptoCipherStatus AES_Cipher(Environment* env, if (mode == EVP_CIPH_GCM_MODE) { switch (cipher_mode) { - case kWebCryptoCipherDecrypt: + case kWebCryptoCipherDecrypt: { // If in decrypt mode, the auth tag must be set in the params.tag. CHECK(params.tag); - if (!EVP_CIPHER_CTX_ctrl(ctx.get(), - EVP_CTRL_AEAD_SET_TAG, - params.tag.size(), - const_cast<char*>(params.tag.data<char>()))) { + ncrypto::Buffer<const char> buffer = { + .data = params.tag.data<char>(), + .len = params.tag.size(), + }; + if (!ctx.setAeadTag(buffer)) { return WebCryptoCipherStatus::FAILED; } break; - case kWebCryptoCipherEncrypt: + } + case kWebCryptoCipherEncrypt: { // In decrypt mode, we grab the tag length here. We'll use it to // ensure that that allocated buffer has enough room for both the // final block and the auth tag. Unlike our other AES-GCM implementation @@ -102,23 +94,22 @@ WebCryptoCipherStatus AES_Cipher(Environment* env, // of the generated ciphertext and returned in the same ArrayBuffer. tag_len = params.length; break; + } default: UNREACHABLE(); } } size_t total = 0; - int buf_len = in.size() + EVP_CIPHER_CTX_block_size(ctx.get()) + tag_len; + int buf_len = in.size() + ctx.getBlockSize() + tag_len; int out_len; - if (mode == EVP_CIPH_GCM_MODE && - params.additional_data.size() && - !EVP_CipherUpdate( - ctx.get(), - nullptr, - &out_len, - params.additional_data.data<unsigned char>(), - params.additional_data.size())) { + ncrypto::Buffer<const unsigned char> buffer = { + .data = params.additional_data.data<unsigned char>(), + .len = params.additional_data.size(), + }; + if (mode == EVP_CIPH_GCM_MODE && params.additional_data.size() && + !ctx.update(buffer, nullptr, &out_len)) { return WebCryptoCipherStatus::FAILED; } @@ -132,21 +123,20 @@ WebCryptoCipherStatus AES_Cipher(Environment* env, // // Refs: https://github.com/openssl/openssl/commit/420cb707b880e4fb649094241371701013eeb15f // Refs: https://github.com/nodejs/node/pull/38913#issuecomment-866505244 + buffer = { + .data = in.data<unsigned char>(), + .len = in.size(), + }; if (in.empty()) { out_len = 0; - } else if (!EVP_CipherUpdate(ctx.get(), - buf.data<unsigned char>(), - &out_len, - in.data<unsigned char>(), - in.size())) { + } else if (!ctx.update(buffer, buf.data<unsigned char>(), &out_len)) { return WebCryptoCipherStatus::FAILED; } total += out_len; CHECK_LE(out_len, buf_len); - out_len = EVP_CIPHER_CTX_block_size(ctx.get()); - if (!EVP_CipherFinal_ex( - ctx.get(), buf.data<unsigned char>() + total, &out_len)) { + out_len = ctx.getBlockSize(); + if (!ctx.update({}, buf.data<unsigned char>() + total, &out_len, true)) { return WebCryptoCipherStatus::FAILED; } total += out_len; @@ -154,11 +144,9 @@ WebCryptoCipherStatus AES_Cipher(Environment* env, // If using AES_GCM, grab the generated auth tag and append // it to the end of the ciphertext. if (cipher_mode == kWebCryptoCipherEncrypt && mode == EVP_CIPH_GCM_MODE) { - if (!EVP_CIPHER_CTX_ctrl(ctx.get(), - EVP_CTRL_AEAD_GET_TAG, - tag_len, - buf.data<unsigned char>() + total)) + if (!ctx.getAeadTag(tag_len, buf.data<unsigned char>() + total)) { return WebCryptoCipherStatus::FAILED; + } total += tag_len; } @@ -221,33 +209,34 @@ WebCryptoCipherStatus AES_CTR_Cipher2(const KeyObjectData& key_data, const ByteSource& in, unsigned const char* counter, unsigned char* out) { - CipherCtxPointer ctx(EVP_CIPHER_CTX_new()); + auto ctx = CipherCtxPointer::New(); + if (!ctx) { + return WebCryptoCipherStatus::FAILED; + } const bool encrypt = cipher_mode == kWebCryptoCipherEncrypt; - if (!EVP_CipherInit_ex( - ctx.get(), + if (!ctx.init( params.cipher, - nullptr, + encrypt, reinterpret_cast<const unsigned char*>(key_data.GetSymmetricKey()), - counter, - encrypt)) { + counter)) { // Cipher init failed return WebCryptoCipherStatus::FAILED; } int out_len = 0; int final_len = 0; - if (!EVP_CipherUpdate( - ctx.get(), - out, - &out_len, - in.data<unsigned char>(), - in.size())) { + ncrypto::Buffer<const unsigned char> buffer = { + .data = in.data<unsigned char>(), + .len = in.size(), + }; + if (!ctx.update(buffer, out, &out_len)) { return WebCryptoCipherStatus::FAILED; } - if (!EVP_CipherFinal_ex(ctx.get(), out + out_len, &final_len)) + if (!ctx.update({}, out + out_len, &final_len, true)) { return WebCryptoCipherStatus::FAILED; + } out_len += final_len; if (static_cast<unsigned>(out_len) != in.size()) @@ -262,9 +251,8 @@ WebCryptoCipherStatus AES_CTR_Cipher(Environment* env, const AESCipherConfig& params, const ByteSource& in, ByteSource* out) { - auto num_counters = BignumPointer::New(); - if (!BN_lshift(num_counters.get(), BignumPointer::One(), params.length)) - return WebCryptoCipherStatus::FAILED; + auto num_counters = BignumPointer::NewLShift(params.length); + if (!num_counters) return WebCryptoCipherStatus::FAILED; BignumPointer current_counter = GetCounter(params); @@ -277,10 +265,9 @@ WebCryptoCipherStatus AES_CTR_Cipher(Environment* env, // be incremented more than there are counter values, we fail. if (num_output > num_counters) return WebCryptoCipherStatus::FAILED; - auto remaining_until_reset = BignumPointer::New(); - if (!BN_sub(remaining_until_reset.get(), - num_counters.get(), - current_counter.get())) { + auto remaining_until_reset = + BignumPointer::NewSub(num_counters, current_counter); + if (!remaining_until_reset) { return WebCryptoCipherStatus::FAILED; } @@ -480,13 +467,13 @@ Maybe<void> AESCipherTraits::AdditionalConfig( } #undef V - params->cipher = EVP_get_cipherbynid(cipher_nid); - if (params->cipher == nullptr) { + params->cipher = Cipher::FromNid(cipher_nid); + if (!params->cipher) { THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env); return Nothing<void>(); } - int cipher_op_mode = EVP_CIPHER_mode(params->cipher); + int cipher_op_mode = params->cipher.getMode(); if (cipher_op_mode != EVP_CIPH_WRAP_MODE) { if (!ValidateIV(env, mode, args[offset + 1], params)) { return Nothing<void>(); @@ -505,8 +492,7 @@ Maybe<void> AESCipherTraits::AdditionalConfig( UseDefaultIV(params); } - if (params->iv.size() < - static_cast<size_t>(EVP_CIPHER_iv_length(params->cipher))) { + if (params->iv.size() < static_cast<size_t>(params->cipher.getIvLength())) { THROW_ERR_CRYPTO_INVALID_IV(env); return Nothing<void>(); } diff --git a/src/crypto/crypto_aes.h b/src/crypto/crypto_aes.h index 3f554ac8c15c60..7bcfa36afdace4 100644 --- a/src/crypto/crypto_aes.h +++ b/src/crypto/crypto_aes.h @@ -38,7 +38,7 @@ enum AESKeyVariant { struct AESCipherConfig final : public MemoryRetainer { CryptoJobMode mode; AESKeyVariant variant; - const EVP_CIPHER* cipher; + ncrypto::Cipher cipher; size_t length; ByteSource iv; // Used for both iv or counter ByteSource additional_data; diff --git a/src/crypto/crypto_bio.cc b/src/crypto/crypto_bio.cc index e9c920ccffa70a..f32cb1cff7d41d 100644 --- a/src/crypto/crypto_bio.cc +++ b/src/crypto/crypto_bio.cc @@ -30,6 +30,9 @@ #include <cstring> namespace node { + +using ncrypto::BIOPointer; + namespace crypto { BIOPointer NodeBIO::New(Environment* env) { diff --git a/src/crypto/crypto_bio.h b/src/crypto/crypto_bio.h index 7587a353f11cde..d621d611f748f8 100644 --- a/src/crypto/crypto_bio.h +++ b/src/crypto/crypto_bio.h @@ -43,12 +43,13 @@ class NodeBIO : public MemoryRetainer { public: ~NodeBIO() override; - static BIOPointer New(Environment* env = nullptr); + static ncrypto::BIOPointer New(Environment* env = nullptr); // NewFixed takes a copy of `len` bytes from `data` and returns a BIO that, // when read from, returns those bytes followed by EOF. - static BIOPointer NewFixed(const char* data, size_t len, - Environment* env = nullptr); + static ncrypto::BIOPointer NewFixed(const char* data, + size_t len, + Environment* env = nullptr); // Move read head to next buffer if needed void TryMoveReadHead(); diff --git a/src/crypto/crypto_cipher.cc b/src/crypto/crypto_cipher.cc index c7588583530cf2..1754d1f71b8adb 100644 --- a/src/crypto/crypto_cipher.cc +++ b/src/crypto/crypto_cipher.cc @@ -10,6 +10,13 @@ namespace node { +using ncrypto::Cipher; +using ncrypto::CipherCtxPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::MarkPopErrorOnReturn; +using ncrypto::SSLCtxPointer; +using ncrypto::SSLPointer; using v8::Array; using v8::ArrayBuffer; using v8::BackingStore; @@ -20,32 +27,13 @@ using v8::HandleScope; using v8::Int32; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::Object; using v8::Uint32; using v8::Value; namespace crypto { namespace { -bool IsSupportedAuthenticatedMode(const EVP_CIPHER* cipher) { - switch (EVP_CIPHER_mode(cipher)) { - case EVP_CIPH_CCM_MODE: - case EVP_CIPH_GCM_MODE: -#ifndef OPENSSL_NO_OCB - case EVP_CIPH_OCB_MODE: -#endif - return true; - case EVP_CIPH_STREAM_CIPHER: - return EVP_CIPHER_nid(cipher) == NID_chacha20_poly1305; - default: - return false; - } -} - -bool IsSupportedAuthenticatedMode(const EVP_CIPHER_CTX* ctx) { - const EVP_CIPHER* cipher = EVP_CIPHER_CTX_cipher(ctx); - return IsSupportedAuthenticatedMode(cipher); -} - bool IsValidGCMTagLength(unsigned int tag_len) { return tag_len == 4 || tag_len == 8 || (tag_len >= 12 && tag_len <= 16); } @@ -58,36 +46,23 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { CHECK(args[1]->IsString() || args[1]->IsInt32()); - const EVP_CIPHER* cipher; - if (args[1]->IsString()) { - Utf8Value name(env->isolate(), args[1]); - cipher = EVP_get_cipherbyname(*name); - } else { - int nid = args[1].As<Int32>()->Value(); - cipher = EVP_get_cipherbynid(nid); - } + const auto cipher = ([&] { + if (args[1]->IsString()) { + Utf8Value name(env->isolate(), args[1]); + return Cipher::FromName(*name); + } else { + int nid = args[1].As<Int32>()->Value(); + return Cipher::FromNid(nid); + } + })(); - if (cipher == nullptr) - return; + if (!cipher) return; - int mode = EVP_CIPHER_mode(cipher); - int iv_length = EVP_CIPHER_iv_length(cipher); - int key_length = EVP_CIPHER_key_length(cipher); - int block_length = EVP_CIPHER_block_size(cipher); - const char* mode_label = nullptr; - switch (mode) { - case EVP_CIPH_CBC_MODE: mode_label = "cbc"; break; - case EVP_CIPH_CCM_MODE: mode_label = "ccm"; break; - case EVP_CIPH_CFB_MODE: mode_label = "cfb"; break; - case EVP_CIPH_CTR_MODE: mode_label = "ctr"; break; - case EVP_CIPH_ECB_MODE: mode_label = "ecb"; break; - case EVP_CIPH_GCM_MODE: mode_label = "gcm"; break; - case EVP_CIPH_OCB_MODE: mode_label = "ocb"; break; - case EVP_CIPH_OFB_MODE: mode_label = "ofb"; break; - case EVP_CIPH_WRAP_MODE: mode_label = "wrap"; break; - case EVP_CIPH_XTS_MODE: mode_label = "xts"; break; - case EVP_CIPH_STREAM_CIPHER: mode_label = "stream"; break; - } + int iv_length = cipher.getIvLength(); + int key_length = cipher.getKeyLength(); + int block_length = cipher.getBlockSize(); + auto mode_label = cipher.getModeLabel(); + auto name = cipher.getName(); // If the testKeyLen and testIvLen arguments are specified, // then we will make an attempt to see if they are usable for @@ -98,14 +73,16 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { // Test and input IV or key length to determine if it's acceptable. // If it is, then the getCipherInfo will succeed with the given // values. - CipherCtxPointer ctx(EVP_CIPHER_CTX_new()); - if (!EVP_CipherInit_ex(ctx.get(), cipher, nullptr, nullptr, nullptr, 1)) + auto ctx = CipherCtxPointer::New(); + if (!ctx.init(cipher, true)) { return; + } if (args[2]->IsInt32()) { int check_len = args[2].As<Int32>()->Value(); - if (!EVP_CIPHER_CTX_set_key_length(ctx.get(), check_len)) + if (!ctx.setKeyLength(check_len)) { return; + } key_length = check_len; } @@ -115,7 +92,7 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { // For GCM and OCB modes, we'll check by attempting to // set the value. For everything else, just check that // check_len == iv_length. - switch (mode) { + switch (cipher.getMode()) { case EVP_CIPH_CCM_MODE: if (check_len < 7 || check_len > 13) return; @@ -123,11 +100,7 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { case EVP_CIPH_GCM_MODE: // Fall through case EVP_CIPH_OCB_MODE: - if (!EVP_CIPHER_CTX_ctrl( - ctx.get(), - EVP_CTRL_AEAD_SET_IVLEN, - check_len, - nullptr)) { + if (!ctx.setIvLength(check_len)) { return; } break; @@ -139,38 +112,35 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { } } - if (mode_label != nullptr && - info->Set( - env->context(), - FIXED_ONE_BYTE_STRING(env->isolate(), "mode"), - OneByteString(env->isolate(), mode_label)).IsNothing()) { + if (mode_label.length() && + info->Set(env->context(), + FIXED_ONE_BYTE_STRING(env->isolate(), "mode"), + OneByteString( + env->isolate(), mode_label.data(), mode_label.length())) + .IsNothing()) { return; } - // OBJ_nid2sn(EVP_CIPHER_nid(cipher)) is used here instead of - // EVP_CIPHER_name(cipher) for compatibility with BoringSSL. - if (info->Set( - env->context(), - env->name_string(), - OneByteString( - env->isolate(), - OBJ_nid2sn(EVP_CIPHER_nid(cipher)))).IsNothing()) { + if (info->Set(env->context(), + env->name_string(), + OneByteString(env->isolate(), name.data(), name.length())) + .IsNothing()) { return; } - if (info->Set( - env->context(), - FIXED_ONE_BYTE_STRING(env->isolate(), "nid"), - Int32::New(env->isolate(), EVP_CIPHER_nid(cipher))).IsNothing()) { + if (info->Set(env->context(), + FIXED_ONE_BYTE_STRING(env->isolate(), "nid"), + Int32::New(env->isolate(), cipher.getNid())) + .IsNothing()) { return; } // Stream ciphers do not have a meaningful block size - if (mode != EVP_CIPH_STREAM_CIPHER && - info->Set( - env->context(), - FIXED_ONE_BYTE_STRING(env->isolate(), "blockSize"), - Int32::New(env->isolate(), block_length)).IsNothing()) { + if (cipher.getMode() != EVP_CIPH_STREAM_CIPHER && + info->Set(env->context(), + FIXED_ONE_BYTE_STRING(env->isolate(), "blockSize"), + Int32::New(env->isolate(), block_length)) + .IsNothing()) { return; } @@ -197,42 +167,20 @@ void GetCipherInfo(const FunctionCallbackInfo<Value>& args) { void CipherBase::GetSSLCiphers(const FunctionCallbackInfo<Value>& args) { Environment* env = Environment::GetCurrent(args); - SSLCtxPointer ctx(SSL_CTX_new(TLS_method())); + auto ctx = SSLCtxPointer::New(); if (!ctx) { return ThrowCryptoError(env, ERR_get_error(), "SSL_CTX_new"); } - SSLPointer ssl(SSL_new(ctx.get())); + auto ssl = SSLPointer::New(ctx); if (!ssl) { return ThrowCryptoError(env, ERR_get_error(), "SSL_new"); } - STACK_OF(SSL_CIPHER)* ciphers = SSL_get_ciphers(ssl.get()); - - // TLSv1.3 ciphers aren't listed by EVP. There are only 5, we could just - // document them, but since there are only 5, easier to just add them manually - // and not have to explain their absence in the API docs. They are lower-cased - // because the docs say they will be. - static const char* TLS13_CIPHERS[] = { - "tls_aes_256_gcm_sha384", - "tls_chacha20_poly1305_sha256", - "tls_aes_128_gcm_sha256", - "tls_aes_128_ccm_8_sha256", - "tls_aes_128_ccm_sha256" - }; - - const int n = sk_SSL_CIPHER_num(ciphers); - std::vector<Local<Value>> arr(n + arraysize(TLS13_CIPHERS)); - - for (int i = 0; i < n; ++i) { - const SSL_CIPHER* cipher = sk_SSL_CIPHER_value(ciphers, i); - arr[i] = OneByteString(env->isolate(), SSL_CIPHER_get_name(cipher)); - } - - for (unsigned i = 0; i < arraysize(TLS13_CIPHERS); ++i) { - const char* name = TLS13_CIPHERS[i]; - arr[n + i] = OneByteString(env->isolate(), name); - } + LocalVector<Value> arr(env->isolate()); + ssl.getCiphers([&](const std::string_view name) { + arr.push_back(OneByteString(env->isolate(), name.data(), name.length())); + }); args.GetReturnValue().Set(Array::New(env->isolate(), arr.data(), arr.size())); } @@ -362,38 +310,38 @@ void CipherBase::New(const FunctionCallbackInfo<Value>& args) { } void CipherBase::CommonInit(const char* cipher_type, - const EVP_CIPHER* cipher, + const ncrypto::Cipher& cipher, const unsigned char* key, int key_len, const unsigned char* iv, int iv_len, unsigned int auth_tag_len) { CHECK(!ctx_); - ctx_.reset(EVP_CIPHER_CTX_new()); + ctx_ = CipherCtxPointer::New(); + CHECK(ctx_); - const int mode = EVP_CIPHER_mode(cipher); - if (mode == EVP_CIPH_WRAP_MODE) - EVP_CIPHER_CTX_set_flags(ctx_.get(), EVP_CIPHER_CTX_FLAG_WRAP_ALLOW); + if (cipher.getMode() == EVP_CIPH_WRAP_MODE) { + ctx_.setFlags(EVP_CIPHER_CTX_FLAG_WRAP_ALLOW); + } const bool encrypt = (kind_ == kCipher); - if (1 != EVP_CipherInit_ex(ctx_.get(), cipher, nullptr, - nullptr, nullptr, encrypt)) { + if (!ctx_.init(cipher, encrypt)) { return ThrowCryptoError(env(), ERR_get_error(), "Failed to initialize cipher"); } - if (IsSupportedAuthenticatedMode(cipher)) { + if (cipher.isSupportedAuthenticatedMode()) { CHECK_GE(iv_len, 0); if (!InitAuthenticated(cipher_type, iv_len, auth_tag_len)) return; } - if (!EVP_CIPHER_CTX_set_key_length(ctx_.get(), key_len)) { + if (!ctx_.setKeyLength(key_len)) { ctx_.reset(); return THROW_ERR_CRYPTO_INVALID_KEYLEN(env()); } - if (1 != EVP_CipherInit_ex(ctx_.get(), nullptr, nullptr, key, iv, encrypt)) { + if (!ctx_.init(Cipher(), encrypt, key, iv)) { return ThrowCryptoError(env(), ERR_get_error(), "Failed to initialize cipher"); } @@ -404,9 +352,10 @@ void CipherBase::Init(const char* cipher_type, unsigned int auth_tag_len) { HandleScope scope(env()->isolate()); MarkPopErrorOnReturn mark_pop_error_on_return; - const EVP_CIPHER* const cipher = EVP_get_cipherbyname(cipher_type); - if (cipher == nullptr) + auto cipher = Cipher::FromName(cipher_type); + if (!cipher) { return THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env()); + } unsigned char key[EVP_MAX_KEY_LENGTH]; unsigned char iv[EVP_MAX_IV_LENGTH]; @@ -421,7 +370,7 @@ void CipherBase::Init(const char* cipher_type, iv); CHECK_NE(key_len, 0); - const int mode = EVP_CIPHER_mode(cipher); + const int mode = cipher.getMode(); if (kind_ == kCipher && (mode == EVP_CIPH_CTR_MODE || mode == EVP_CIPH_GCM_MODE || mode == EVP_CIPH_CCM_MODE)) { @@ -432,8 +381,13 @@ void CipherBase::Init(const char* cipher_type, cipher_type); } - CommonInit(cipher_type, cipher, key, key_len, iv, - EVP_CIPHER_iv_length(cipher), auth_tag_len); + CommonInit(cipher_type, + cipher, + key, + key_len, + iv, + cipher.getIvLength(), + auth_tag_len); } void CipherBase::Init(const FunctionCallbackInfo<Value>& args) { @@ -468,12 +422,10 @@ void CipherBase::InitIv(const char* cipher_type, HandleScope scope(env()->isolate()); MarkPopErrorOnReturn mark_pop_error_on_return; - const EVP_CIPHER* const cipher = EVP_get_cipherbyname(cipher_type); - if (cipher == nullptr) - return THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env()); + auto cipher = Cipher::FromName(cipher_type); + if (!cipher) return THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env()); - const int expected_iv_len = EVP_CIPHER_iv_length(cipher); - const bool is_authenticated_mode = IsSupportedAuthenticatedMode(cipher); + const int expected_iv_len = cipher.getIvLength(); const bool has_iv = iv_buf.size() > 0; // Throw if no IV was passed and the cipher requires an IV @@ -483,13 +435,12 @@ void CipherBase::InitIv(const char* cipher_type, // Throw if an IV was passed which does not match the cipher's fixed IV length // static_cast<int> for the iv_buf.size() is safe because we've verified // prior that the value is not larger than INT_MAX. - if (!is_authenticated_mode && - has_iv && + if (!cipher.isSupportedAuthenticatedMode() && has_iv && static_cast<int>(iv_buf.size()) != expected_iv_len) { return THROW_ERR_CRYPTO_INVALID_IV(env()); } - if (EVP_CIPHER_nid(cipher) == NID_chacha20_poly1305) { + if (cipher.getNid() == NID_chacha20_poly1305) { CHECK(has_iv); // Check for invalid IV lengths, since OpenSSL does not under some // conditions: @@ -552,15 +503,12 @@ bool CipherBase::InitAuthenticated( CHECK(IsAuthenticatedMode()); MarkPopErrorOnReturn mark_pop_error_on_return; - if (!EVP_CIPHER_CTX_ctrl(ctx_.get(), - EVP_CTRL_AEAD_SET_IVLEN, - iv_len, - nullptr)) { + if (!ctx_.setIvLength(iv_len)) { THROW_ERR_CRYPTO_INVALID_IV(env()); return false; } - const int mode = EVP_CIPHER_CTX_mode(ctx_.get()); + const int mode = ctx_.getMode(); if (mode == EVP_CIPH_GCM_MODE) { if (auth_tag_len != kNoAuthTagLength) { if (!IsValidGCMTagLength(auth_tag_len)) { @@ -580,7 +528,7 @@ bool CipherBase::InitAuthenticated( // length defaults to 16 bytes when encrypting. Unlike GCM, the // authentication tag length also defaults to 16 bytes when decrypting, // whereas GCM would accept any valid authentication tag length. - if (EVP_CIPHER_CTX_nid(ctx_.get()) == NID_chacha20_poly1305) { + if (ctx_.getNid() == NID_chacha20_poly1305) { auth_tag_len = 16; } else { THROW_ERR_CRYPTO_INVALID_AUTH_TAG( @@ -603,8 +551,7 @@ bool CipherBase::InitAuthenticated( } // Tell OpenSSL about the desired length. - if (!EVP_CIPHER_CTX_ctrl(ctx_.get(), EVP_CTRL_AEAD_SET_TAG, auth_tag_len, - nullptr)) { + if (!ctx_.setAeadTagLength(auth_tag_len)) { THROW_ERR_CRYPTO_INVALID_AUTH_TAG( env(), "Invalid authentication tag length: %u", auth_tag_len); return false; @@ -627,7 +574,7 @@ bool CipherBase::InitAuthenticated( bool CipherBase::CheckCCMMessageLength(int message_len) { CHECK(ctx_); - CHECK(EVP_CIPHER_CTX_mode(ctx_.get()) == EVP_CIPH_CCM_MODE); + CHECK(ctx_.getMode() == EVP_CIPH_CCM_MODE); if (message_len > max_message_size_) { THROW_ERR_CRYPTO_INVALID_MESSAGELEN(env()); @@ -640,7 +587,7 @@ bool CipherBase::CheckCCMMessageLength(int message_len) { bool CipherBase::IsAuthenticatedMode() const { // Check if this cipher operates in an AEAD mode that we support. CHECK(ctx_); - return IsSupportedAuthenticatedMode(ctx_.get()); + return ncrypto::Cipher::FromCtx(ctx_).isSupportedAuthenticatedMode(); } void CipherBase::GetAuthTag(const FunctionCallbackInfo<Value>& args) { @@ -678,7 +625,7 @@ void CipherBase::SetAuthTag(const FunctionCallbackInfo<Value>& args) { } unsigned int tag_len = auth_tag.size(); - const int mode = EVP_CIPHER_CTX_mode(cipher->ctx_.get()); + const int mode = cipher->ctx_.getMode(); bool is_valid; if (mode == EVP_CIPH_GCM_MODE) { // Restrict GCM tag lengths according to NIST 800-38d, page 9. @@ -688,7 +635,7 @@ void CipherBase::SetAuthTag(const FunctionCallbackInfo<Value>& args) { } else { // At this point, the tag length is already known and must match the // length of the given authentication tag. - CHECK(IsSupportedAuthenticatedMode(cipher->ctx_.get())); + CHECK(Cipher::FromCtx(cipher->ctx_).isSupportedAuthenticatedMode()); CHECK_NE(cipher->auth_tag_len_, kNoAuthTagLength); is_valid = cipher->auth_tag_len_ == tag_len; } @@ -723,10 +670,11 @@ void CipherBase::SetAuthTag(const FunctionCallbackInfo<Value>& args) { bool CipherBase::MaybePassAuthTagToOpenSSL() { if (auth_tag_state_ == kAuthTagKnown) { - if (!EVP_CIPHER_CTX_ctrl(ctx_.get(), - EVP_CTRL_AEAD_SET_TAG, - auth_tag_len_, - reinterpret_cast<unsigned char*>(auth_tag_))) { + ncrypto::Buffer<const char> buffer{ + .data = auth_tag_, + .len = auth_tag_len_, + }; + if (!ctx_.setAeadTag(buffer)) { return false; } auth_tag_state_ = kAuthTagPassedToOpenSSL; @@ -742,7 +690,7 @@ bool CipherBase::SetAAD( MarkPopErrorOnReturn mark_pop_error_on_return; int outlen; - const int mode = EVP_CIPHER_CTX_mode(ctx_.get()); + const int mode = ctx_.getMode(); // When in CCM mode, we need to set the authentication tag and the plaintext // length in advance. @@ -761,16 +709,21 @@ bool CipherBase::SetAAD( return false; } + ncrypto::Buffer<const unsigned char> buffer{ + .data = nullptr, + .len = static_cast<size_t>(plaintext_len), + }; // Specify the plaintext length. - if (!EVP_CipherUpdate(ctx_.get(), nullptr, &outlen, nullptr, plaintext_len)) + if (!ctx_.update(buffer, nullptr, &outlen)) { return false; + } } - return 1 == EVP_CipherUpdate(ctx_.get(), - nullptr, - &outlen, - data.data(), - data.size()); + ncrypto::Buffer<const unsigned char> buffer{ + .data = data.data(), + .len = data.size(), + }; + return ctx_.update(buffer, nullptr, &outlen); } void CipherBase::SetAAD(const FunctionCallbackInfo<Value>& args) { @@ -797,7 +750,7 @@ CipherBase::UpdateResult CipherBase::Update( return kErrorState; MarkPopErrorOnReturn mark_pop_error_on_return; - const int mode = EVP_CIPHER_CTX_mode(ctx_.get()); + const int mode = ctx_.getMode(); if (mode == EVP_CIPH_CCM_MODE && !CheckCCMMessageLength(len)) return kErrorMessageSize; @@ -807,19 +760,17 @@ CipherBase::UpdateResult CipherBase::Update( if (kind_ == kDecipher && IsAuthenticatedMode()) CHECK(MaybePassAuthTagToOpenSSL()); - const int block_size = EVP_CIPHER_CTX_block_size(ctx_.get()); + const int block_size = ctx_.getBlockSize(); CHECK_GT(block_size, 0); if (len + block_size > INT_MAX) return kErrorState; int buf_len = len + block_size; - // For key wrapping algorithms, get output size by calling - // EVP_CipherUpdate() with null output. + ncrypto::Buffer<const unsigned char> buffer = { + .data = reinterpret_cast<const unsigned char*>(data), + .len = len, + }; if (kind_ == kCipher && mode == EVP_CIPH_WRAP_MODE && - EVP_CipherUpdate(ctx_.get(), - nullptr, - &buf_len, - reinterpret_cast<const unsigned char*>(data), - len) != 1) { + !ctx_.update(buffer, nullptr, &buf_len)) { return kErrorState; } @@ -828,11 +779,13 @@ CipherBase::UpdateResult CipherBase::Update( *out = ArrayBuffer::NewBackingStore(env()->isolate(), buf_len); } - int r = EVP_CipherUpdate(ctx_.get(), - static_cast<unsigned char*>((*out)->Data()), - &buf_len, - reinterpret_cast<const unsigned char*>(data), - len); + buffer = { + .data = reinterpret_cast<const unsigned char*>(data), + .len = len, + }; + + bool r = ctx_.update( + buffer, static_cast<unsigned char*>((*out)->Data()), &buf_len); CHECK_LE(static_cast<size_t>(buf_len), (*out)->ByteLength()); if (buf_len == 0) { @@ -884,7 +837,7 @@ bool CipherBase::SetAutoPadding(bool auto_padding) { if (!ctx_) return false; MarkPopErrorOnReturn mark_pop_error_on_return; - return EVP_CIPHER_CTX_set_padding(ctx_.get(), auto_padding); + return ctx_.setPadding(auto_padding); } void CipherBase::SetAutoPadding(const FunctionCallbackInfo<Value>& args) { @@ -899,21 +852,23 @@ bool CipherBase::Final(std::unique_ptr<BackingStore>* out) { if (!ctx_) return false; - const int mode = EVP_CIPHER_CTX_mode(ctx_.get()); + const int mode = ctx_.getMode(); { NoArrayBufferZeroFillScope no_zero_fill_scope(env()->isolate_data()); - *out = ArrayBuffer::NewBackingStore(env()->isolate(), - static_cast<size_t>(EVP_CIPHER_CTX_block_size(ctx_.get()))); + *out = ArrayBuffer::NewBackingStore( + env()->isolate(), static_cast<size_t>(ctx_.getBlockSize())); } - if (kind_ == kDecipher && IsSupportedAuthenticatedMode(ctx_.get())) + if (kind_ == kDecipher && + Cipher::FromCtx(ctx_).isSupportedAuthenticatedMode()) { MaybePassAuthTagToOpenSSL(); + } // OpenSSL v1.x doesn't verify the presence of the auth tag so do // it ourselves, see https://github.com/nodejs/node/issues/45874. if (OPENSSL_VERSION_NUMBER < 0x30000000L && kind_ == kDecipher && - NID_chacha20_poly1305 == EVP_CIPHER_CTX_nid(ctx_.get()) && + NID_chacha20_poly1305 == ctx_.getNid() && auth_tag_state_ != kAuthTagPassedToOpenSSL) { return false; } @@ -926,9 +881,8 @@ bool CipherBase::Final(std::unique_ptr<BackingStore>* out) { *out = ArrayBuffer::NewBackingStore(env()->isolate(), 0); } else { int out_len = (*out)->ByteLength(); - ok = EVP_CipherFinal_ex(ctx_.get(), - static_cast<unsigned char*>((*out)->Data()), - &out_len) == 1; + ok = ctx_.update( + {}, static_cast<unsigned char*>((*out)->Data()), &out_len, true); CHECK_LE(static_cast<size_t>(out_len), (*out)->ByteLength()); if (out_len == 0) { @@ -949,9 +903,8 @@ bool CipherBase::Final(std::unique_ptr<BackingStore>* out) { CHECK(mode == EVP_CIPH_GCM_MODE); auth_tag_len_ = sizeof(auth_tag_); } - ok = (1 == EVP_CIPHER_CTX_ctrl(ctx_.get(), EVP_CTRL_AEAD_GET_TAG, - auth_tag_len_, - reinterpret_cast<unsigned char*>(auth_tag_))); + ok = ctx_.getAeadTag(auth_tag_len_, + reinterpret_cast<unsigned char*>(auth_tag_)); } } diff --git a/src/crypto/crypto_cipher.h b/src/crypto/crypto_cipher.h index de436e2e9d2df8..57c424e7509fa2 100644 --- a/src/crypto/crypto_cipher.h +++ b/src/crypto/crypto_cipher.h @@ -44,7 +44,7 @@ class CipherBase : public BaseObject { static const unsigned kNoAuthTagLength = static_cast<unsigned>(-1); void CommonInit(const char* cipher_type, - const EVP_CIPHER* cipher, + const ncrypto::Cipher& cipher, const unsigned char* key, int key_len, const unsigned char* iv, @@ -85,7 +85,7 @@ class CipherBase : public BaseObject { CipherBase(Environment* env, v8::Local<v8::Object> wrap, CipherKind kind); private: - DeleteFnPtr<EVP_CIPHER_CTX, EVP_CIPHER_CTX_free> ctx_; + ncrypto::CipherCtxPointer ctx_; const CipherKind kind_; AuthTagState auth_tag_state_; unsigned int auth_tag_len_; @@ -110,7 +110,7 @@ class PublicKeyCipher { EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init, EVP_PKEY_cipher_t EVP_PKEY_cipher> static bool Cipher(Environment* env, - const EVPKeyPointer& pkey, + const ncrypto::EVPKeyPointer& pkey, int padding, const EVP_MD* digest, const ArrayBufferOrViewContents<unsigned char>& oaep_label, diff --git a/src/crypto/crypto_common.cc b/src/crypto/crypto_common.cc index 43a126f863779d..d94f6e1c82c4a6 100644 --- a/src/crypto/crypto_common.cc +++ b/src/crypto/crypto_common.cc @@ -27,7 +27,14 @@ namespace node { -using v8::Array; +using ncrypto::ClearErrorOnReturn; +using ncrypto::ECKeyPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::SSLPointer; +using ncrypto::SSLSessionPointer; +using ncrypto::StackOfX509; +using ncrypto::X509Pointer; +using ncrypto::X509View; using v8::ArrayBuffer; using v8::BackingStore; using v8::Context; @@ -41,54 +48,6 @@ using v8::Undefined; using v8::Value; namespace crypto { -void LogSecret( - const SSLPointer& ssl, - const char* name, - const unsigned char* secret, - size_t secretlen) { - auto keylog_cb = SSL_CTX_get_keylog_callback(SSL_get_SSL_CTX(ssl.get())); - // All supported versions of TLS/SSL fix the client random to the same size. - constexpr size_t kTlsClientRandomSize = SSL3_RANDOM_SIZE; - unsigned char crandom[kTlsClientRandomSize]; - - if (keylog_cb == nullptr || - SSL_get_client_random(ssl.get(), crandom, kTlsClientRandomSize) != - kTlsClientRandomSize) { - return; - } - - std::string line = name; - line += " " + nbytes::HexEncode(reinterpret_cast<const char*>(crandom), - kTlsClientRandomSize); - line += - " " + nbytes::HexEncode(reinterpret_cast<const char*>(secret), secretlen); - keylog_cb(ssl.get(), line.c_str()); -} - -MaybeLocal<Value> GetSSLOCSPResponse( - Environment* env, - SSL* ssl, - Local<Value> default_value) { - const unsigned char* resp; - int len = SSL_get_tlsext_status_ocsp_resp(ssl, &resp); - if (resp == nullptr) - return default_value; - - Local<Value> ret; - MaybeLocal<Object> maybe_buffer = - Buffer::Copy(env, reinterpret_cast<const char*>(resp), len); - - if (!maybe_buffer.ToLocal(&ret)) - return MaybeLocal<Value>(); - - return ret; -} - -bool SetTLSSession( - const SSLPointer& ssl, - const SSLSessionPointer& session) { - return session != nullptr && SSL_set_session(ssl.get(), session.get()) == 1; -} SSLSessionPointer GetTLSSession(const unsigned char* buf, size_t length) { return SSLSessionPointer(d2i_SSL_SESSION(nullptr, &buf, length)); @@ -97,153 +56,36 @@ SSLSessionPointer GetTLSSession(const unsigned char* buf, size_t length) { long VerifyPeerCertificate( // NOLINT(runtime/int) const SSLPointer& ssl, long def) { // NOLINT(runtime/int) - long err = def; // NOLINT(runtime/int) - if (X509Pointer::PeerFrom(ssl)) { - err = SSL_get_verify_result(ssl.get()); - } else { - const SSL_CIPHER* curr_cipher = SSL_get_current_cipher(ssl.get()); - const SSL_SESSION* sess = SSL_get_session(ssl.get()); - // Allow no-cert for PSK authentication in TLS1.2 and lower. - // In TLS1.3 check that session was reused because TLS1.3 PSK - // looks like session resumption. - if (SSL_CIPHER_get_auth_nid(curr_cipher) == NID_auth_psk || - (SSL_SESSION_get_protocol_version(sess) == TLS1_3_VERSION && - SSL_session_reused(ssl.get()))) { - return X509_V_OK; - } - } - return err; + return ssl.verifyPeerCertificate().value_or(def); } bool UseSNIContext( const SSLPointer& ssl, BaseObjectPtr<SecureContext> context) { - auto x509 = ncrypto::X509View::From(context->ctx()); - if (!x509) return false; - SSL_CTX* ctx = context->ctx().get(); - EVP_PKEY* pkey = SSL_CTX_get0_privatekey(ctx); - STACK_OF(X509)* chain; - - int err = SSL_CTX_get0_chain_certs(ctx, &chain); - if (err == 1) err = SSL_use_certificate(ssl.get(), x509.get()); - if (err == 1) err = SSL_use_PrivateKey(ssl.get(), pkey); - if (err == 1 && chain != nullptr) err = SSL_set1_chain(ssl.get(), chain); - return err == 1; -} - -const char* GetClientHelloALPN(const SSLPointer& ssl) { - const unsigned char* buf; - size_t len; - size_t rem; - - if (!SSL_client_hello_get0_ext( - ssl.get(), - TLSEXT_TYPE_application_layer_protocol_negotiation, - &buf, - &rem) || - rem < 2) { - return nullptr; - } - - len = (buf[0] << 8) | buf[1]; - if (len + 2 != rem) return nullptr; - return reinterpret_cast<const char*>(buf + 3); -} - -const char* GetClientHelloServerName(const SSLPointer& ssl) { - const unsigned char* buf; - size_t len; - size_t rem; - - if (!SSL_client_hello_get0_ext( - ssl.get(), - TLSEXT_TYPE_server_name, - &buf, - &rem) || rem <= 2) { - return nullptr; - } - - len = (*buf << 8) | *(buf + 1); - if (len + 2 != rem) - return nullptr; - rem = len; - - if (rem == 0 || *(buf + 2) != TLSEXT_NAMETYPE_host_name) return nullptr; - rem--; - if (rem <= 2) - return nullptr; - len = (*(buf + 3) << 8) | *(buf + 4); - if (len + 2 > rem) - return nullptr; - return reinterpret_cast<const char*>(buf + 5); -} - -const char* GetServerName(SSL* ssl) { - return SSL_get_servername(ssl, TLSEXT_NAMETYPE_host_name); + return ssl.setSniContext(context->ctx()); } bool SetGroups(SecureContext* sc, const char* groups) { - return SSL_CTX_set1_groups_list(sc->ctx().get(), groups) == 1; -} - -// When adding or removing errors below, please also update the list in the API -// documentation. See the "OpenSSL Error Codes" section of doc/api/errors.md -const char* X509ErrorCode(long err) { // NOLINT(runtime/int) - const char* code = "UNSPECIFIED"; -#define CASE_X509_ERR(CODE) case X509_V_ERR_##CODE: code = #CODE; break; - switch (err) { - // if you modify anything in here, *please* update the respective section in - // doc/api/tls.md as well - CASE_X509_ERR(UNABLE_TO_GET_ISSUER_CERT) - CASE_X509_ERR(UNABLE_TO_GET_CRL) - CASE_X509_ERR(UNABLE_TO_DECRYPT_CERT_SIGNATURE) - CASE_X509_ERR(UNABLE_TO_DECRYPT_CRL_SIGNATURE) - CASE_X509_ERR(UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY) - CASE_X509_ERR(CERT_SIGNATURE_FAILURE) - CASE_X509_ERR(CRL_SIGNATURE_FAILURE) - CASE_X509_ERR(CERT_NOT_YET_VALID) - CASE_X509_ERR(CERT_HAS_EXPIRED) - CASE_X509_ERR(CRL_NOT_YET_VALID) - CASE_X509_ERR(CRL_HAS_EXPIRED) - CASE_X509_ERR(ERROR_IN_CERT_NOT_BEFORE_FIELD) - CASE_X509_ERR(ERROR_IN_CERT_NOT_AFTER_FIELD) - CASE_X509_ERR(ERROR_IN_CRL_LAST_UPDATE_FIELD) - CASE_X509_ERR(ERROR_IN_CRL_NEXT_UPDATE_FIELD) - CASE_X509_ERR(OUT_OF_MEM) - CASE_X509_ERR(DEPTH_ZERO_SELF_SIGNED_CERT) - CASE_X509_ERR(SELF_SIGNED_CERT_IN_CHAIN) - CASE_X509_ERR(UNABLE_TO_GET_ISSUER_CERT_LOCALLY) - CASE_X509_ERR(UNABLE_TO_VERIFY_LEAF_SIGNATURE) - CASE_X509_ERR(CERT_CHAIN_TOO_LONG) - CASE_X509_ERR(CERT_REVOKED) - CASE_X509_ERR(INVALID_CA) - CASE_X509_ERR(PATH_LENGTH_EXCEEDED) - CASE_X509_ERR(INVALID_PURPOSE) - CASE_X509_ERR(CERT_UNTRUSTED) - CASE_X509_ERR(CERT_REJECTED) - CASE_X509_ERR(HOSTNAME_MISMATCH) - } -#undef CASE_X509_ERR - return code; + return sc->ctx().setGroups(groups); } MaybeLocal<Value> GetValidationErrorReason(Environment* env, int err) { - if (err == 0) - return Undefined(env->isolate()); - const char* reason = X509_verify_cert_error_string(err); - return OneByteString(env->isolate(), reason); + auto reason = X509Pointer::ErrorReason(err).value_or(""); + if (reason == "") return Undefined(env->isolate()); + return OneByteString(env->isolate(), reason.data(), reason.length()); } MaybeLocal<Value> GetValidationErrorCode(Environment* env, int err) { if (err == 0) return Undefined(env->isolate()); - return OneByteString(env->isolate(), X509ErrorCode(err)); + auto error = X509Pointer::ErrorCode(err); + return OneByteString(env->isolate(), error.data(), error.length()); } MaybeLocal<Value> GetCert(Environment* env, const SSLPointer& ssl) { - ClearErrorOnReturn clear_error_on_return; - ncrypto::X509View cert(SSL_get_certificate(ssl.get())); - if (!cert) return Undefined(env->isolate()); - return X509Certificate::toObject(env, cert); + if (auto cert = ssl.getCertificate()) { + return X509Certificate::toObject(env, cert); + } + return Undefined(env->isolate()); } namespace { @@ -300,7 +142,7 @@ MaybeLocal<Object> AddIssuerChainToObject(X509Pointer* cert, for (;;) { int i; for (i = 0; i < sk_X509_num(peer_certs.get()); i++) { - ncrypto::X509View ca(sk_X509_value(peer_certs.get(), i)); + X509View ca(sk_X509_value(peer_certs.get(), i)); if (!cert->view().isIssuedBy(ca)) continue; Local<Value> ca_info; @@ -366,57 +208,22 @@ MaybeLocal<Object> GetLastIssuedCert( MaybeLocal<Value> GetCurrentCipherName(Environment* env, const SSLPointer& ssl) { - return GetCipherName(env, SSL_get_current_cipher(ssl.get())); + return GetCipherName(env, ssl.getCipher()); } MaybeLocal<Value> GetCurrentCipherVersion(Environment* env, const SSLPointer& ssl) { - return GetCipherVersion(env, SSL_get_current_cipher(ssl.get())); + return GetCipherVersion(env, ssl.getCipher()); } template <MaybeLocal<Value> (*Get)(Environment* env, const SSL_CIPHER* cipher)> MaybeLocal<Value> GetCurrentCipherValue(Environment* env, const SSLPointer& ssl) { - return Get(env, SSL_get_current_cipher(ssl.get())); -} - -MaybeLocal<Array> GetClientHelloCiphers( - Environment* env, - const SSLPointer& ssl) { - EscapableHandleScope scope(env->isolate()); - const unsigned char* buf; - size_t len = SSL_client_hello_get0_ciphers(ssl.get(), &buf); - size_t count = len / 2; - MaybeStackBuffer<Local<Value>, 16> ciphers(count); - int j = 0; - for (size_t n = 0; n < len; n += 2) { - const SSL_CIPHER* cipher = SSL_CIPHER_find(ssl.get(), buf); - buf += 2; - Local<Object> obj = Object::New(env->isolate()); - if (!Set(env->context(), - obj, - env->name_string(), - GetCipherName(env, cipher)) || - !Set(env->context(), - obj, - env->standard_name_string(), - GetCipherStandardName(env, cipher)) || - !Set(env->context(), - obj, - env->version_string(), - GetCipherVersion(env, cipher))) { - return MaybeLocal<Array>(); - } - ciphers[j++] = obj; - } - Local<Array> ret = Array::New(env->isolate(), ciphers.out(), count); - return scope.Escape(ret); + return Get(env, ssl.getCipher()); } - MaybeLocal<Object> GetCipherInfo(Environment* env, const SSLPointer& ssl) { - if (SSL_get_current_cipher(ssl.get()) == nullptr) - return MaybeLocal<Object>(); + if (ssl.getCipher() == nullptr) return MaybeLocal<Object>(); EscapableHandleScope scope(env->isolate()); Local<Object> info = Object::New(env->isolate()); @@ -439,15 +246,14 @@ MaybeLocal<Object> GetCipherInfo(Environment* env, const SSLPointer& ssl) { } MaybeLocal<Object> GetEphemeralKey(Environment* env, const SSLPointer& ssl) { - CHECK_EQ(SSL_is_server(ssl.get()), 0); - EVP_PKEY* raw_key; + CHECK(!ssl.isServer()); EscapableHandleScope scope(env->isolate()); Local<Object> info = Object::New(env->isolate()); - if (!SSL_get_peer_tmp_key(ssl.get(), &raw_key)) return scope.Escape(info); + EVPKeyPointer key = ssl.getPeerTempKey(); + if (!key) return scope.Escape(info); Local<Context> context = env->context(); - crypto::EVPKeyPointer key(raw_key); int kid = key.id(); switch (kid) { @@ -466,8 +272,7 @@ MaybeLocal<Object> GetEphemeralKey(Environment* env, const SSLPointer& ssl) { { const char* curve_name; if (kid == EVP_PKEY_EC) { - OSSL3_CONST EC_KEY* ec = EVP_PKEY_get0_EC_KEY(key.get()); - int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec)); + int nid = ECKeyPointer::GetGroupName(key); curve_name = OBJ_nid2sn(nid); } else { curve_name = OBJ_nid2sn(kid); @@ -542,8 +347,8 @@ MaybeLocal<Value> GetPeerCert( if (cert) { return X509Certificate::toObject(env, cert.view()); } - return X509Certificate::toObject( - env, ncrypto::X509View(sk_X509_value(ssl_certs, 0))); + return X509Certificate::toObject(env, + X509View(sk_X509_value(ssl_certs, 0))); } StackOfX509 peer_certs = CloneSSLCerts(std::move(cert), ssl_certs); @@ -552,7 +357,7 @@ MaybeLocal<Value> GetPeerCert( // First and main certificate. Local<Value> result; - ncrypto::X509View first_cert(sk_X509_value(peer_certs.get(), 0)); + X509View first_cert(sk_X509_value(peer_certs.get(), 0)); CHECK(first_cert); if (!X509Certificate::toObject(env, first_cert).ToLocal(&result)) return {}; CHECK(result->IsObject()); diff --git a/src/crypto/crypto_common.h b/src/crypto/crypto_common.h index 284aadd6cc2cc3..dba1cc14b1c486 100644 --- a/src/crypto/crypto_common.h +++ b/src/crypto/crypto_common.h @@ -11,78 +11,38 @@ #include <string> -// Some OpenSSL 1.1.1 functions unnecessarily operate on and return non-const -// pointers, whereas the same functions in OpenSSL 3 use const pointers. -#if OPENSSL_VERSION_MAJOR >= 3 -#define OSSL3_CONST const -#else -#define OSSL3_CONST -#endif - namespace node { namespace crypto { -struct StackOfX509Deleter { - void operator()(STACK_OF(X509)* p) const { sk_X509_pop_free(p, X509_free); } -}; -using StackOfX509 = std::unique_ptr<STACK_OF(X509), StackOfX509Deleter>; - -void LogSecret( - const SSLPointer& ssl, - const char* name, - const unsigned char* secret, - size_t secretlen); - -v8::MaybeLocal<v8::Value> GetSSLOCSPResponse( - Environment* env, - SSL* ssl, - v8::Local<v8::Value> default_value); - -bool SetTLSSession( - const SSLPointer& ssl, - const SSLSessionPointer& session); - -SSLSessionPointer GetTLSSession(const unsigned char* buf, size_t length); +ncrypto::SSLSessionPointer GetTLSSession(const unsigned char* buf, + size_t length); long VerifyPeerCertificate( // NOLINT(runtime/int) - const SSLPointer& ssl, + const ncrypto::SSLPointer& ssl, long def = X509_V_ERR_UNSPECIFIED); // NOLINT(runtime/int) -bool UseSNIContext(const SSLPointer& ssl, BaseObjectPtr<SecureContext> context); - -const char* GetClientHelloALPN(const SSLPointer& ssl); - -const char* GetClientHelloServerName(const SSLPointer& ssl); - -const char* GetServerName(SSL* ssl); - -v8::MaybeLocal<v8::Array> GetClientHelloCiphers( - Environment* env, - const SSLPointer& ssl); +bool UseSNIContext(const ncrypto::SSLPointer& ssl, + BaseObjectPtr<SecureContext> context); bool SetGroups(SecureContext* sc, const char* groups); -const char* X509ErrorCode(long err); // NOLINT(runtime/int) - v8::MaybeLocal<v8::Value> GetValidationErrorReason(Environment* env, int err); v8::MaybeLocal<v8::Value> GetValidationErrorCode(Environment* env, int err); -v8::MaybeLocal<v8::Value> GetCert(Environment* env, const SSLPointer& ssl); +v8::MaybeLocal<v8::Value> GetCert(Environment* env, + const ncrypto::SSLPointer& ssl); -v8::MaybeLocal<v8::Object> GetCipherInfo( - Environment* env, - const SSLPointer& ssl); +v8::MaybeLocal<v8::Object> GetCipherInfo(Environment* env, + const ncrypto::SSLPointer& ssl); -v8::MaybeLocal<v8::Object> GetEphemeralKey( - Environment* env, - const SSLPointer& ssl); +v8::MaybeLocal<v8::Object> GetEphemeralKey(Environment* env, + const ncrypto::SSLPointer& ssl); -v8::MaybeLocal<v8::Value> GetPeerCert( - Environment* env, - const SSLPointer& ssl, - bool abbreviated = false, - bool is_server = false); +v8::MaybeLocal<v8::Value> GetPeerCert(Environment* env, + const ncrypto::SSLPointer& ssl, + bool abbreviated = false, + bool is_server = false); v8::MaybeLocal<v8::Object> ECPointToBuffer( Environment* env, @@ -92,9 +52,9 @@ v8::MaybeLocal<v8::Object> ECPointToBuffer( const char** error); v8::MaybeLocal<v8::Value> GetCurrentCipherName(Environment* env, - const SSLPointer& ssl); -v8::MaybeLocal<v8::Value> GetCurrentCipherVersion(Environment* env, - const SSLPointer& ssl); + const ncrypto::SSLPointer& ssl); +v8::MaybeLocal<v8::Value> GetCurrentCipherVersion( + Environment* env, const ncrypto::SSLPointer& ssl); } // namespace crypto } // namespace node diff --git a/src/crypto/crypto_context.cc b/src/crypto/crypto_context.cc index aa5fc61f19e435..c89d591c6804ab 100644 --- a/src/crypto/crypto_context.cc +++ b/src/crypto/crypto_context.cc @@ -21,6 +21,17 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::BIOPointer; +using ncrypto::ClearErrorOnReturn; +using ncrypto::CryptoErrorList; +using ncrypto::DHPointer; +using ncrypto::EnginePointer; +using ncrypto::EVPKeyPointer; +using ncrypto::MarkPopErrorOnReturn; +using ncrypto::SSLPointer; +using ncrypto::StackOfX509; +using ncrypto::X509Pointer; using v8::Array; using v8::ArrayBufferView; using v8::Boolean; @@ -261,6 +272,7 @@ X509_STORE* NewRootCertStore() { } X509_STORE* store = X509_STORE_new(); + CHECK_NOT_NULL(store); if (*system_cert_path != '\0') { ERR_set_mark(); X509_STORE_load_locations(store, system_cert_path, nullptr); @@ -550,7 +562,7 @@ void SecureContext::Init(const FunctionCallbackInfo<Value>& args) { } } - sc->ctx_.reset(SSL_CTX_new(method)); + sc->ctx_.reset(method); if (!sc->ctx_) { return ThrowCryptoError(env, ERR_get_error(), "SSL_CTX_new"); } @@ -692,10 +704,10 @@ void SecureContext::SetEngineKey(const FunctionCallbackInfo<Value>& args) { "experimental permission model is enabled"); } - ncrypto::CryptoErrorList errors; + CryptoErrorList errors; Utf8Value engine_id(env->isolate(), args[1]); - auto engine = ncrypto::EnginePointer::getEngineByName( - engine_id.ToStringView(), &errors); + auto engine = + EnginePointer::getEngineByName(engine_id.ToStringView(), &errors); if (!engine) { Local<Value> exception; if (errors.empty()) { @@ -786,9 +798,8 @@ void SecureContext::SetCACert(const BIOPointer& bio) { while (X509Pointer x509 = X509Pointer(PEM_read_bio_X509_AUX( bio.get(), nullptr, NoPasswordCallback, nullptr))) { CHECK_EQ(1, - X509_STORE_add_cert(GetCertStoreOwnedByThisSecureContext(), - x509.get())); - CHECK_EQ(1, SSL_CTX_add_client_CA(ctx_.get(), x509.get())); + X509_STORE_add_cert(GetCertStoreOwnedByThisSecureContext(), x509)); + CHECK_EQ(1, SSL_CTX_add_client_CA(ctx_.get(), x509)); } } @@ -1154,7 +1165,7 @@ void SecureContext::LoadPKCS12(const FunctionCallbackInfo<Value>& args) { X509* ca = sk_X509_value(extra_certs.get(), i); X509_STORE_add_cert(sc->GetCertStoreOwnedByThisSecureContext(), ca); - SSL_CTX_add_client_CA(sc->ctx_.get(), ca); + CHECK_EQ(1, SSL_CTX_add_client_CA(sc->ctx_.get(), ca)); } ret = true; @@ -1205,10 +1216,10 @@ void SecureContext::SetClientCertEngine( "experimental permission model is enabled"); } - ncrypto::CryptoErrorList errors; + CryptoErrorList errors; const Utf8Value engine_id(env->isolate(), args[0]); - auto engine = ncrypto::EnginePointer::getEngineByName( - engine_id.ToStringView(), &errors); + auto engine = + EnginePointer::getEngineByName(engine_id.ToStringView(), &errors); if (!engine) { Local<Value> exception; if (errors.empty()) { diff --git a/src/crypto/crypto_context.h b/src/crypto/crypto_context.h index 7ba6a5441300fc..b6801fc0b40708 100644 --- a/src/crypto/crypto_context.h +++ b/src/crypto/crypto_context.h @@ -23,7 +23,7 @@ X509_STORE* NewRootCertStore(); X509_STORE* GetOrCreateRootCertStore(); -BIOPointer LoadBIO(Environment* env, v8::Local<v8::Value> v); +ncrypto::BIOPointer LoadBIO(Environment* env, v8::Local<v8::Value> v); class SecureContext final : public BaseObject { public: @@ -41,27 +41,27 @@ class SecureContext final : public BaseObject { static void RegisterExternalReferences(ExternalReferenceRegistry* registry); static SecureContext* Create(Environment* env); - const SSLCtxPointer& ctx() const { return ctx_; } + const ncrypto::SSLCtxPointer& ctx() const { return ctx_; } // Non-const ctx() that allows for non-default initialization of // the SecureContext. - SSLCtxPointer& ctx() { return ctx_; } + ncrypto::SSLCtxPointer& ctx() { return ctx_; } - SSLPointer CreateSSL(); + ncrypto::SSLPointer CreateSSL(); void SetGetSessionCallback(GetSessionCb cb); void SetKeylogCallback(KeylogCb cb); void SetNewSessionCallback(NewSessionCb cb); void SetSelectSNIContextCallback(SelectSNIContextCb cb); - inline const X509Pointer& issuer() const { return issuer_; } - inline const X509Pointer& cert() const { return cert_; } + inline const ncrypto::X509Pointer& issuer() const { return issuer_; } + inline const ncrypto::X509Pointer& cert() const { return cert_; } - v8::Maybe<void> AddCert(Environment* env, BIOPointer&& bio); - v8::Maybe<void> SetCRL(Environment* env, const BIOPointer& bio); + v8::Maybe<void> AddCert(Environment* env, ncrypto::BIOPointer&& bio); + v8::Maybe<void> SetCRL(Environment* env, const ncrypto::BIOPointer& bio); v8::Maybe<void> UseKey(Environment* env, const KeyObjectData& key); - void SetCACert(const BIOPointer& bio); + void SetCACert(const ncrypto::BIOPointer& bio); void SetRootCerts(); void SetX509StoreFlag(unsigned long flags); // NOLINT(runtime/int) @@ -144,9 +144,9 @@ class SecureContext final : public BaseObject { void Reset(); private: - SSLCtxPointer ctx_; - X509Pointer cert_; - X509Pointer issuer_; + ncrypto::SSLCtxPointer ctx_; + ncrypto::X509Pointer cert_; + ncrypto::X509Pointer issuer_; // Non-owning cache for SSL_CTX_get_cert_store(ctx_.get()) X509_STORE* own_cert_store_cache_ = nullptr; #ifndef OPENSSL_NO_ENGINE @@ -160,9 +160,9 @@ class SecureContext final : public BaseObject { }; int SSL_CTX_use_certificate_chain(SSL_CTX* ctx, - BIOPointer&& in, - X509Pointer* cert, - X509Pointer* issuer); + ncrypto::BIOPointer&& in, + ncrypto::X509Pointer* cert, + ncrypto::X509Pointer* issuer); } // namespace crypto } // namespace node diff --git a/src/crypto/crypto_dh.cc b/src/crypto/crypto_dh.cc index d760a0d3ea1d12..7041eb985d9f6d 100644 --- a/src/crypto/crypto_dh.cc +++ b/src/crypto/crypto_dh.cc @@ -14,6 +14,11 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::DataPointer; +using ncrypto::DHPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; using v8::ArrayBuffer; using v8::ConstructorBehavior; using v8::Context; @@ -47,14 +52,11 @@ void DiffieHellman::MemoryInfo(MemoryTracker* tracker) const { } namespace { -MaybeLocal<Value> DataPointerToBuffer(Environment* env, - ncrypto::DataPointer&& data) { +MaybeLocal<Value> DataPointerToBuffer(Environment* env, DataPointer&& data) { auto backing = ArrayBuffer::NewBackingStore( data.get(), data.size(), - [](void* data, size_t len, void* ptr) { - ncrypto::DataPointer free_ne(data, len); - }, + [](void* data, size_t len, void* ptr) { DataPointer free_me(data, len); }, nullptr); data.release(); diff --git a/src/crypto/crypto_dh.h b/src/crypto/crypto_dh.h index a84993ddd55f02..2af668035bbb0a 100644 --- a/src/crypto/crypto_dh.h +++ b/src/crypto/crypto_dh.h @@ -19,22 +19,24 @@ class DiffieHellman final : public BaseObject { static void Initialize(Environment* env, v8::Local<v8::Object> target); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); - DiffieHellman(Environment* env, v8::Local<v8::Object> wrap, DHPointer dh); - operator DHPointer&() { return dh_; } + DiffieHellman(Environment* env, + v8::Local<v8::Object> wrap, + ncrypto::DHPointer dh); + operator ncrypto::DHPointer&() { return dh_; } void MemoryInfo(MemoryTracker* tracker) const override; SET_MEMORY_INFO_NAME(DiffieHellman) SET_SELF_SIZE(DiffieHellman) private: - DHPointer dh_; + ncrypto::DHPointer dh_; }; struct DhKeyPairParams final : public MemoryRetainer { // Diffie-Hellman can either generate keys using a fixed prime, or by first // generating a random prime of a given size (in bits). Only one of both // options may be specified. - std::variant<BignumPointer, int> prime; + std::variant<ncrypto::BignumPointer, int> prime; unsigned int generator; SET_NO_MEMORY_INFO() SET_MEMORY_INFO_NAME(DhKeyPairParams) @@ -47,7 +49,7 @@ struct DhKeyGenTraits final { using AdditionalParameters = DhKeyPairGenConfig; static constexpr const char* JobName = "DhKeyPairGenJob"; - static EVPKeyCtxPointer Setup(DhKeyPairGenConfig* params); + static ncrypto::EVPKeyCtxPointer Setup(DhKeyPairGenConfig* params); static v8::Maybe<void> AdditionalConfig( CryptoJobMode mode, diff --git a/src/crypto/crypto_dsa.cc b/src/crypto/crypto_dsa.cc index b557de774117e4..471fee77531139 100644 --- a/src/crypto/crypto_dsa.cc +++ b/src/crypto/crypto_dsa.cc @@ -25,6 +25,9 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; using v8::FunctionCallbackInfo; using v8::Int32; using v8::JustVoid; diff --git a/src/crypto/crypto_dsa.h b/src/crypto/crypto_dsa.h index fab167038c8862..c31aa9786558c2 100644 --- a/src/crypto/crypto_dsa.h +++ b/src/crypto/crypto_dsa.h @@ -26,7 +26,7 @@ struct DsaKeyGenTraits final { using AdditionalParameters = DsaKeyPairGenConfig; static constexpr const char* JobName = "DsaKeyPairGenJob"; - static EVPKeyCtxPointer Setup(DsaKeyPairGenConfig* params); + static ncrypto::EVPKeyCtxPointer Setup(DsaKeyPairGenConfig* params); static v8::Maybe<void> AdditionalConfig( CryptoJobMode mode, diff --git a/src/crypto/crypto_ec.cc b/src/crypto/crypto_ec.cc index a42a336baedf09..5ccda6f0768873 100644 --- a/src/crypto/crypto_ec.cc +++ b/src/crypto/crypto_ec.cc @@ -18,6 +18,14 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::DataPointer; +using ncrypto::ECGroupPointer; +using ncrypto::ECKeyPointer; +using ncrypto::ECPointPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::MarkPopErrorOnReturn; using v8::Array; using v8::ArrayBuffer; using v8::BackingStore; @@ -28,6 +36,7 @@ using v8::Int32; using v8::Isolate; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::Nothing; @@ -95,7 +104,7 @@ void ECDH::GetCurves(const FunctionCallbackInfo<Value>& args) { std::vector<EC_builtin_curve> curves(num_curves); CHECK_EQ(EC_get_builtin_curves(curves.data(), num_curves), num_curves); - std::vector<Local<Value>> arr(num_curves); + LocalVector<Value> arr(env->isolate(), num_curves); std::transform(curves.begin(), curves.end(), arr.begin(), [env](auto& curve) { return OneByteString(env->isolate(), OBJ_nid2sn(curve.nid)); }); @@ -103,9 +112,7 @@ void ECDH::GetCurves(const FunctionCallbackInfo<Value>& args) { } ECDH::ECDH(Environment* env, Local<Object> wrap, ECKeyPointer&& key) - : BaseObject(env, wrap), - key_(std::move(key)), - group_(EC_KEY_get0_group(key_.get())) { + : BaseObject(env, wrap), key_(std::move(key)), group_(key_.getGroup()) { MakeWeak(); CHECK_NOT_NULL(group_); } @@ -127,7 +134,7 @@ void ECDH::New(const FunctionCallbackInfo<Value>& args) { if (nid == NID_undef) return THROW_ERR_CRYPTO_INVALID_CURVE(env); - ECKeyPointer key(EC_KEY_new_by_curve_name(nid)); + auto key = ECKeyPointer::NewByCurveName(nid); if (!key) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to create key using named curve"); @@ -141,35 +148,34 @@ void ECDH::GenerateKeys(const FunctionCallbackInfo<Value>& args) { ECDH* ecdh; ASSIGN_OR_RETURN_UNWRAP(&ecdh, args.This()); - if (!EC_KEY_generate_key(ecdh->key_.get())) + if (!ecdh->key_.generate()) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to generate key"); + } } ECPointPointer ECDH::BufferToPoint(Environment* env, const EC_GROUP* group, Local<Value> buf) { - int r; + ArrayBufferOrViewContents<unsigned char> input(buf); + if (!input.CheckSizeInt32()) [[unlikely]] { + THROW_ERR_OUT_OF_RANGE(env, "buffer is too big"); + return {}; + } - ECPointPointer pub(EC_POINT_new(group)); + auto pub = ECPointPointer::New(group); if (!pub) { THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to allocate EC_POINT for a public key"); return pub; } - ArrayBufferOrViewContents<unsigned char> input(buf); - if (!input.CheckSizeInt32()) [[unlikely]] { - THROW_ERR_OUT_OF_RANGE(env, "buffer is too big"); - return ECPointPointer(); + ncrypto::Buffer<const unsigned char> buffer{ + .data = input.data(), + .len = input.size(), + }; + if (!pub.setFromBuffer(buffer, group)) { + return {}; } - r = EC_POINT_oct2point( - group, - pub.get(), - input.data(), - input.size(), - nullptr); - if (!r) - return ECPointPointer(); return pub; } @@ -187,10 +193,7 @@ void ECDH::ComputeSecret(const FunctionCallbackInfo<Value>& args) { if (!ecdh->IsKeyPairValid()) return THROW_ERR_CRYPTO_INVALID_KEYPAIR(env); - ECPointPointer pub( - ECDH::BufferToPoint(env, - ecdh->group_, - args[0])); + auto pub = ECDH::BufferToPoint(env, ecdh->group_, args[0]); if (!pub) { args.GetReturnValue().Set( FIXED_ONE_BYTE_STRING(env->isolate(), @@ -208,7 +211,7 @@ void ECDH::ComputeSecret(const FunctionCallbackInfo<Value>& args) { } if (!ECDH_compute_key( - bs->Data(), bs->ByteLength(), pub.get(), ecdh->key_.get(), nullptr)) + bs->Data(), bs->ByteLength(), pub, ecdh->key_.get(), nullptr)) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to compute ECDH key"); Local<ArrayBuffer> ab = ArrayBuffer::New(env->isolate(), std::move(bs)); @@ -226,8 +229,8 @@ void ECDH::GetPublicKey(const FunctionCallbackInfo<Value>& args) { ECDH* ecdh; ASSIGN_OR_RETURN_UNWRAP(&ecdh, args.This()); - const EC_GROUP* group = EC_KEY_get0_group(ecdh->key_.get()); - const EC_POINT* pub = EC_KEY_get0_public_key(ecdh->key_.get()); + const auto group = ecdh->key_.getGroup(); + const auto pub = ecdh->key_.getPublicKey(); if (pub == nullptr) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to get ECDH public key"); @@ -249,7 +252,7 @@ void ECDH::GetPrivateKey(const FunctionCallbackInfo<Value>& args) { ECDH* ecdh; ASSIGN_OR_RETURN_UNWRAP(&ecdh, args.This()); - const BIGNUM* b = EC_KEY_get0_private_key(ecdh->key_.get()); + auto b = ecdh->key_.getPrivateKey(); if (b == nullptr) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to get ECDH private key"); @@ -291,10 +294,10 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) { "Private key is not valid for specified curve."); } - ECKeyPointer new_key(EC_KEY_dup(ecdh->key_.get())); + auto new_key = ecdh->key_.clone(); CHECK(new_key); - int result = EC_KEY_set_private_key(new_key.get(), priv.get()); + bool result = new_key.setPrivateKey(priv); priv.reset(); if (!result) { @@ -305,24 +308,24 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) { MarkPopErrorOnReturn mark_pop_error_on_return; USE(&mark_pop_error_on_return); - const BIGNUM* priv_key = EC_KEY_get0_private_key(new_key.get()); + auto priv_key = new_key.getPrivateKey(); CHECK_NOT_NULL(priv_key); - ECPointPointer pub(EC_POINT_new(ecdh->group_)); + auto pub = ECPointPointer::New(ecdh->group_); CHECK(pub); - if (!EC_POINT_mul(ecdh->group_, pub.get(), priv_key, - nullptr, nullptr, nullptr)) { + if (!pub.mul(ecdh->group_, priv_key)) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to generate ECDH public key"); } - if (!EC_KEY_set_public_key(new_key.get(), pub.get())) + if (!new_key.setPublicKey(pub)) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to set generated public key"); + } ecdh->key_ = std::move(new_key); - ecdh->group_ = EC_KEY_get0_group(ecdh->key_.get()); + ecdh->group_ = ecdh->key_.getGroup(); } void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) { @@ -335,17 +338,13 @@ void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) { MarkPopErrorOnReturn mark_pop_error_on_return; - ECPointPointer pub( - ECDH::BufferToPoint(env, - ecdh->group_, - args[0])); + auto pub = ECDH::BufferToPoint(env, ecdh->group_, args[0]); if (!pub) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to convert Buffer to EC_POINT"); } - int r = EC_KEY_set_public_key(ecdh->key_.get(), pub.get()); - if (!r) { + if (!ecdh->key_.setPublicKey(pub)) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to set EC_POINT as the public key"); } @@ -367,8 +366,7 @@ bool ECDH::IsKeyValidForCurve(const BignumPointer& private_key) { bool ECDH::IsKeyPairValid() { MarkPopErrorOnReturn mark_pop_error_on_return; - USE(&mark_pop_error_on_return); - return 1 == EC_KEY_check_key(key_.get()); + return key_.checkKey(); } // Convert the input public key to compressed, uncompressed, or hybrid formats. @@ -390,17 +388,12 @@ void ECDH::ConvertKey(const FunctionCallbackInfo<Value>& args) { if (nid == NID_undef) return THROW_ERR_CRYPTO_INVALID_CURVE(env); - ECGroupPointer group( - EC_GROUP_new_by_curve_name(nid)); - if (group == nullptr) + auto group = ECGroupPointer::NewByCurveName(nid); + if (!group) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to get EC_GROUP"); - ECPointPointer pub( - ECDH::BufferToPoint(env, - group.get(), - args[0])); - - if (pub == nullptr) { + auto pub = ECDH::BufferToPoint(env, group, args[0]); + if (!pub) { return THROW_ERR_CRYPTO_OPERATION_FAILED(env, "Failed to convert Buffer to EC_POINT"); } @@ -411,7 +404,7 @@ void ECDH::ConvertKey(const FunctionCallbackInfo<Value>& args) { const char* error; Local<Object> buf; - if (!ECPointToBuffer(env, group.get(), pub.get(), form, &error).ToLocal(&buf)) + if (!ECPointToBuffer(env, group, pub, form, &error).ToLocal(&buf)) return THROW_ERR_CRYPTO_OPERATION_FAILED(env, error); args.GetReturnValue().Set(buf); } @@ -490,19 +483,19 @@ bool ECDHBitsTraits::DeriveBits(Environment* env, const EC_KEY* private_key; { Mutex::ScopedLock priv_lock(params.private_.mutex()); - private_key = EVP_PKEY_get0_EC_KEY(m_privkey.get()); + private_key = m_privkey; } Mutex::ScopedLock pub_lock(params.public_.mutex()); - const EC_KEY* public_key = EVP_PKEY_get0_EC_KEY(m_pubkey.get()); + const EC_KEY* public_key = m_pubkey; - const EC_GROUP* group = EC_KEY_get0_group(private_key); + const auto group = ECKeyPointer::GetGroup(private_key); if (group == nullptr) return false; - CHECK_EQ(EC_KEY_check_key(private_key), 1); - CHECK_EQ(EC_KEY_check_key(public_key), 1); - const EC_POINT* pub = EC_KEY_get0_public_key(public_key); + CHECK(ECKeyPointer::Check(private_key)); + CHECK(ECKeyPointer::Check(public_key)); + const auto pub = ECKeyPointer::GetPublicKey(public_key); int field_size = EC_GROUP_get_degree(group); len = (field_size + 7) / 8; ByteSource::Builder buf(len); @@ -601,7 +594,7 @@ WebCryptoKeyExportStatus EC_Raw_Export(const KeyObjectData& key_data, CHECK(m_pkey); Mutex::ScopedLock lock(key_data.mutex()); - const EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(m_pkey.get()); + const EC_KEY* ec_key = m_pkey; if (ec_key == nullptr) { switch (key_data.GetKeyType()) { @@ -623,8 +616,8 @@ WebCryptoKeyExportStatus EC_Raw_Export(const KeyObjectData& key_data, } else { if (key_data.GetKeyType() != kKeyTypePublic) return WebCryptoKeyExportStatus::INVALID_KEY_TYPE; - const EC_GROUP* group = EC_KEY_get0_group(ec_key); - const EC_POINT* point = EC_KEY_get0_public_key(ec_key); + const auto group = ECKeyPointer::GetGroup(ec_key); + const auto point = ECKeyPointer::GetPublicKey(ec_key); point_conversion_form_t form = POINT_CONVERSION_UNCOMPRESSED; // Get the allocated data size... @@ -680,9 +673,8 @@ WebCryptoKeyExportStatus ECKeyExportTraits::DoExport( // the header is for all practical purposes a static 26 byte sequence // where only the second byte changes. Mutex::ScopedLock lock(key_data.mutex()); - const EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(m_pkey.get()); - const EC_GROUP* group = EC_KEY_get0_group(ec_key); - const EC_POINT* point = EC_KEY_get0_public_key(ec_key); + const auto group = ECKeyPointer::GetGroup(m_pkey); + const auto point = ECKeyPointer::GetPublicKey(m_pkey); const point_conversion_form_t form = POINT_CONVERSION_UNCOMPRESSED; const size_t need = EC_POINT_point2oct(group, point, form, nullptr, 0, nullptr); @@ -691,18 +683,17 @@ WebCryptoKeyExportStatus ECKeyExportTraits::DoExport( const size_t have = EC_POINT_point2oct( group, point, form, data.data<unsigned char>(), need, nullptr); if (have == 0) return WebCryptoKeyExportStatus::FAILED; - ECKeyPointer ec(EC_KEY_new()); - CHECK_EQ(1, EC_KEY_set_group(ec.get(), group)); - ECPointPointer uncompressed(EC_POINT_new(group)); - CHECK_EQ(1, - EC_POINT_oct2point(group, - uncompressed.get(), - data.data<unsigned char>(), - data.size(), - nullptr)); - CHECK_EQ(1, EC_KEY_set_public_key(ec.get(), uncompressed.get())); + auto ec = ECKeyPointer::New(group); + CHECK(ec); + auto uncompressed = ECPointPointer::New(group); + ncrypto::Buffer<const unsigned char> buffer{ + .data = data.data<unsigned char>(), + .len = data.size(), + }; + CHECK(uncompressed.setFromBuffer(buffer, group)); + CHECK(ec.setPublicKey(uncompressed)); auto pkey = EVPKeyPointer::New(); - CHECK_EQ(1, EVP_PKEY_set1_EC_KEY(pkey.get(), ec.get())); + CHECK(pkey.set(ec)); auto bio = pkey.derPublicKey(); if (!bio) return WebCryptoKeyExportStatus::FAILED; *out = ByteSource::FromBIO(bio); @@ -721,11 +712,11 @@ Maybe<void> ExportJWKEcKey(Environment* env, const auto& m_pkey = key.GetAsymmetricKey(); CHECK_EQ(m_pkey.id(), EVP_PKEY_EC); - const EC_KEY* ec = EVP_PKEY_get0_EC_KEY(m_pkey.get()); + const EC_KEY* ec = m_pkey; CHECK_NOT_NULL(ec); - const EC_POINT* pub = EC_KEY_get0_public_key(ec); - const EC_GROUP* group = EC_KEY_get0_group(ec); + const auto pub = ECKeyPointer::GetPublicKey(ec); + const auto group = ECKeyPointer::GetGroup(ec); int degree_bits = EC_GROUP_get_degree(group); int degree_bytes = @@ -766,16 +757,16 @@ Maybe<void> ExportJWKEcKey(Environment* env, const int nid = EC_GROUP_get_curve_name(group); switch (nid) { case NID_X9_62_prime256v1: - crv_name = OneByteString(env->isolate(), "P-256"); + crv_name = FIXED_ONE_BYTE_STRING(env->isolate(), "P-256"); break; case NID_secp256k1: - crv_name = OneByteString(env->isolate(), "secp256k1"); + crv_name = FIXED_ONE_BYTE_STRING(env->isolate(), "secp256k1"); break; case NID_secp384r1: - crv_name = OneByteString(env->isolate(), "P-384"); + crv_name = FIXED_ONE_BYTE_STRING(env->isolate(), "P-384"); break; case NID_secp521r1: - crv_name = OneByteString(env->isolate(), "P-521"); + crv_name = FIXED_ONE_BYTE_STRING(env->isolate(), "P-521"); break; default: { THROW_ERR_CRYPTO_JWK_UNSUPPORTED_CURVE( @@ -791,7 +782,7 @@ Maybe<void> ExportJWKEcKey(Environment* env, } if (key.GetKeyType() == kKeyTypePrivate) { - const BIGNUM* pvt = EC_KEY_get0_private_key(ec); + auto pvt = ECKeyPointer::GetPrivateKey(ec); return SetEncodedValue(env, target, env->jwk_d_string(), pvt, degree_bytes); } @@ -820,7 +811,7 @@ Maybe<void> ExportJWKEdKey(Environment* env, })(); static constexpr auto trySetKey = [](Environment* env, - ncrypto::DataPointer data, + DataPointer data, Local<Object> target, Local<String> key) { Local<Value> encoded; @@ -885,7 +876,7 @@ KeyObjectData ImportJWKEcKey(Environment* env, KeyType type = d_value->IsString() ? kKeyTypePrivate : kKeyTypePublic; - ECKeyPointer ec(EC_KEY_new_by_curve_name(nid)); + auto ec = ECKeyPointer::NewByCurveName(nid); if (!ec) { THROW_ERR_CRYPTO_INVALID_JWK(env, "Invalid JWK EC key"); return {}; @@ -894,24 +885,22 @@ KeyObjectData ImportJWKEcKey(Environment* env, ByteSource x = ByteSource::FromEncodedString(env, x_value.As<String>()); ByteSource y = ByteSource::FromEncodedString(env, y_value.As<String>()); - if (!EC_KEY_set_public_key_affine_coordinates( - ec.get(), - x.ToBN().get(), - y.ToBN().get())) { + if (!ec.setPublicKeyRaw(x.ToBN(), y.ToBN())) { THROW_ERR_CRYPTO_INVALID_JWK(env, "Invalid JWK EC key"); return {}; } if (type == kKeyTypePrivate) { ByteSource d = ByteSource::FromEncodedString(env, d_value.As<String>()); - if (!EC_KEY_set_private_key(ec.get(), d.ToBN().get())) { + if (!ec.setPrivateKey(d.ToBN())) { THROW_ERR_CRYPTO_INVALID_JWK(env, "Invalid JWK EC key"); return {}; } } auto pkey = EVPKeyPointer::New(); - CHECK_EQ(EVP_PKEY_set1_EC_KEY(pkey.get(), ec.get()), 1); + if (!pkey) return {}; + CHECK(pkey.set(ec)); return KeyObjectData::CreateAsymmetric(type, std::move(pkey)); } @@ -923,10 +912,10 @@ Maybe<void> GetEcKeyDetail(Environment* env, const auto& m_pkey = key.GetAsymmetricKey(); CHECK_EQ(m_pkey.id(), EVP_PKEY_EC); - const EC_KEY* ec = EVP_PKEY_get0_EC_KEY(m_pkey.get()); + const EC_KEY* ec = m_pkey; CHECK_NOT_NULL(ec); - const EC_GROUP* group = EC_KEY_get0_group(ec); + const auto group = ECKeyPointer::GetGroup(ec); int nid = EC_GROUP_get_curve_name(group); if (target @@ -945,11 +934,10 @@ Maybe<void> GetEcKeyDetail(Environment* env, // https://github.com/chromium/chromium/blob/7af6cfd/components/webcrypto/algorithms/ecdsa.cc size_t GroupOrderSize(const EVPKeyPointer& key) { - const EC_KEY* ec = EVP_PKEY_get0_EC_KEY(key.get()); + const EC_KEY* ec = key; CHECK_NOT_NULL(ec); - const EC_GROUP* group = EC_KEY_get0_group(ec); auto order = BignumPointer::New(); - CHECK(EC_GROUP_get_order(group, order.get(), nullptr)); + CHECK(EC_GROUP_get_order(ECKeyPointer::GetGroup(ec), order.get(), nullptr)); return order.byteLength(); } } // namespace crypto diff --git a/src/crypto/crypto_ec.h b/src/crypto/crypto_ec.h index b5de681fbe1516..7aeeebbe303eda 100644 --- a/src/crypto/crypto_ec.h +++ b/src/crypto/crypto_ec.h @@ -24,9 +24,9 @@ class ECDH final : public BaseObject { static void Initialize(Environment* env, v8::Local<v8::Object> target); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); - static ECPointPointer BufferToPoint(Environment* env, - const EC_GROUP* group, - v8::Local<v8::Value> buf); + static ncrypto::ECPointPointer BufferToPoint(Environment* env, + const EC_GROUP* group, + v8::Local<v8::Value> buf); void MemoryInfo(MemoryTracker* tracker) const override; SET_MEMORY_INFO_NAME(ECDH) @@ -37,7 +37,9 @@ class ECDH final : public BaseObject { static void GetCurves(const v8::FunctionCallbackInfo<v8::Value>& args); protected: - ECDH(Environment* env, v8::Local<v8::Object> wrap, ECKeyPointer&& key); + ECDH(Environment* env, + v8::Local<v8::Object> wrap, + ncrypto::ECKeyPointer&& key); static void New(const v8::FunctionCallbackInfo<v8::Value>& args); static void GenerateKeys(const v8::FunctionCallbackInfo<v8::Value>& args); @@ -48,9 +50,9 @@ class ECDH final : public BaseObject { static void SetPublicKey(const v8::FunctionCallbackInfo<v8::Value>& args); bool IsKeyPairValid(); - bool IsKeyValidForCurve(const BignumPointer& private_key); + bool IsKeyValidForCurve(const ncrypto::BignumPointer& private_key); - ECKeyPointer key_; + ncrypto::ECKeyPointer key_; const EC_GROUP* group_; }; @@ -102,7 +104,7 @@ struct EcKeyGenTraits final { using AdditionalParameters = EcKeyPairGenConfig; static constexpr const char* JobName = "EcKeyPairGenJob"; - static EVPKeyCtxPointer Setup(EcKeyPairGenConfig* params); + static ncrypto::EVPKeyCtxPointer Setup(EcKeyPairGenConfig* params); static v8::Maybe<void> AdditionalConfig( CryptoJobMode mode, diff --git a/src/crypto/crypto_hash.cc b/src/crypto/crypto_hash.cc index 23e5fea262f2a6..bcd4c533b07ceb 100644 --- a/src/crypto/crypto_hash.cc +++ b/src/crypto/crypto_hash.cc @@ -11,6 +11,8 @@ namespace node { +using ncrypto::EVPMDCtxPointer; +using ncrypto::MarkPopErrorOnReturn; using v8::Context; using v8::FunctionCallbackInfo; using v8::FunctionTemplate; @@ -19,6 +21,7 @@ using v8::Isolate; using v8::Just; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::Name; @@ -144,14 +147,14 @@ void Hash::GetCachedAliases(const FunctionCallbackInfo<Value>& args) { Isolate* isolate = args.GetIsolate(); Local<Context> context = args.GetIsolate()->GetCurrentContext(); Environment* env = Environment::GetCurrent(context); - std::vector<Local<Name>> names; - std::vector<Local<Value>> values; size_t size = env->alias_to_md_id_map.size(); + LocalVector<Name> names(isolate); + LocalVector<Value> values(isolate); #if OPENSSL_VERSION_MAJOR >= 3 names.reserve(size); values.reserve(size); for (auto& [alias, id] : env->alias_to_md_id_map) { - names.push_back(OneByteString(isolate, alias.c_str(), alias.size())); + names.push_back(OneByteString(isolate, alias)); values.push_back(v8::Uint32::New(isolate, id)); } #else diff --git a/src/crypto/crypto_hash.h b/src/crypto/crypto_hash.h index 4289c352a7cdae..85da86dba98d5a 100644 --- a/src/crypto/crypto_hash.h +++ b/src/crypto/crypto_hash.h @@ -36,7 +36,7 @@ class Hash final : public BaseObject { Hash(Environment* env, v8::Local<v8::Object> wrap); private: - EVPMDCtxPointer mdctx_{}; + ncrypto::EVPMDCtxPointer mdctx_{}; unsigned int md_len_ = 0; ByteSource digest_; }; diff --git a/src/crypto/crypto_hmac.cc b/src/crypto/crypto_hmac.cc index ecc4f3fd8ae7df..25ccb1b9d04e51 100644 --- a/src/crypto/crypto_hmac.cc +++ b/src/crypto/crypto_hmac.cc @@ -13,6 +13,7 @@ namespace node { +using ncrypto::HMACCtxPointer; using v8::Boolean; using v8::FunctionCallbackInfo; using v8::FunctionTemplate; diff --git a/src/crypto/crypto_hmac.h b/src/crypto/crypto_hmac.h index 2f54b1c8a14af6..e29ec231a1b7d4 100644 --- a/src/crypto/crypto_hmac.h +++ b/src/crypto/crypto_hmac.h @@ -36,7 +36,7 @@ class Hmac : public BaseObject { static void Sign(const v8::FunctionCallbackInfo<v8::Value>& args); private: - HMACCtxPointer ctx_; + ncrypto::HMACCtxPointer ctx_; }; struct HmacConfig final : public MemoryRetainer { diff --git a/src/crypto/crypto_keygen.cc b/src/crypto/crypto_keygen.cc index c13acd63886673..246191f5d51796 100644 --- a/src/crypto/crypto_keygen.cc +++ b/src/crypto/crypto_keygen.cc @@ -12,6 +12,7 @@ namespace node { +using ncrypto::EVPKeyCtxPointer; using v8::FunctionCallbackInfo; using v8::Int32; using v8::JustVoid; diff --git a/src/crypto/crypto_keygen.h b/src/crypto/crypto_keygen.h index f1e92c69cb4065..6fdac8333b6ac6 100644 --- a/src/crypto/crypto_keygen.h +++ b/src/crypto/crypto_keygen.h @@ -163,7 +163,7 @@ struct KeyPairGenTraits final { static KeyGenJobStatus DoKeyGen( Environment* env, AdditionalParameters* params) { - EVPKeyCtxPointer ctx = KeyPairAlgorithmTraits::Setup(params); + ncrypto::EVPKeyCtxPointer ctx = KeyPairAlgorithmTraits::Setup(params); if (!ctx) return KeyGenJobStatus::FAILED; @@ -174,7 +174,7 @@ struct KeyPairGenTraits final { return KeyGenJobStatus::FAILED; auto data = KeyObjectData::CreateAsymmetric(KeyType::kKeyTypePrivate, - EVPKeyPointer(pkey)); + ncrypto::EVPKeyPointer(pkey)); if (!data) [[unlikely]] return KeyGenJobStatus::FAILED; params->key = std::move(data); @@ -280,7 +280,7 @@ struct NidKeyPairGenTraits final { using AdditionalParameters = NidKeyPairGenConfig; static constexpr const char* JobName = "NidKeyPairGenJob"; - static EVPKeyCtxPointer Setup(NidKeyPairGenConfig* params); + static ncrypto::EVPKeyCtxPointer Setup(NidKeyPairGenConfig* params); static v8::Maybe<void> AdditionalConfig( CryptoJobMode mode, diff --git a/src/crypto/crypto_keys.cc b/src/crypto/crypto_keys.cc index ac4103400e1e29..f66c57b1079af6 100644 --- a/src/crypto/crypto_keys.cc +++ b/src/crypto/crypto_keys.cc @@ -18,6 +18,12 @@ namespace node { +using ncrypto::BIOPointer; +using ncrypto::ECKeyPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::MarkPopErrorOnReturn; +using ncrypto::PKCS8Pointer; using v8::Array; using v8::Context; using v8::Function; @@ -41,11 +47,11 @@ using v8::Value; namespace crypto { namespace { -Maybe<ncrypto::EVPKeyPointer::AsymmetricKeyEncodingConfig> -GetKeyFormatAndTypeFromJs(const FunctionCallbackInfo<Value>& args, - unsigned int* offset, - KeyEncodingContext context) { - ncrypto::EVPKeyPointer::AsymmetricKeyEncodingConfig config; +Maybe<EVPKeyPointer::AsymmetricKeyEncodingConfig> GetKeyFormatAndTypeFromJs( + const FunctionCallbackInfo<Value>& args, + unsigned int* offset, + KeyEncodingContext context) { + EVPKeyPointer::AsymmetricKeyEncodingConfig config; // During key pair generation, it is possible not to specify a key encoding, // which will lead to a key object being returned. if (args[*offset]->IsUndefined()) { @@ -56,19 +62,19 @@ GetKeyFormatAndTypeFromJs(const FunctionCallbackInfo<Value>& args, config.output_key_object = false; CHECK(args[*offset]->IsInt32()); - config.format = static_cast<ncrypto::EVPKeyPointer::PKFormatType>( + config.format = static_cast<EVPKeyPointer::PKFormatType>( args[*offset].As<Int32>()->Value()); if (args[*offset + 1]->IsInt32()) { - config.type = static_cast<ncrypto::EVPKeyPointer::PKEncodingType>( + config.type = static_cast<EVPKeyPointer::PKEncodingType>( args[*offset + 1].As<Int32>()->Value()); } else { CHECK((context == kKeyContextInput && - config.format == ncrypto::EVPKeyPointer::PKFormatType::PEM) || + config.format == EVPKeyPointer::PKFormatType::PEM) || (context == kKeyContextGenerate && - config.format == ncrypto::EVPKeyPointer::PKFormatType::JWK)); + config.format == EVPKeyPointer::PKFormatType::JWK)); CHECK(args[*offset + 1]->IsNullOrUndefined()); - config.type = ncrypto::EVPKeyPointer::PKEncodingType::PKCS1; + config.type = EVPKeyPointer::PKEncodingType::PKCS1; } } @@ -79,16 +85,16 @@ GetKeyFormatAndTypeFromJs(const FunctionCallbackInfo<Value>& args, MaybeLocal<Value> BIOToStringOrBuffer( Environment* env, const BIOPointer& bio, - const ncrypto::EVPKeyPointer::AsymmetricKeyEncodingConfig& config) { + const EVPKeyPointer::AsymmetricKeyEncodingConfig& config) { BUF_MEM* bptr = bio; - if (config.format == ncrypto::EVPKeyPointer::PKFormatType::PEM) { + if (config.format == EVPKeyPointer::PKFormatType::PEM) { // PEM is an ASCII format, so we will return it as a string. return String::NewFromUtf8( env->isolate(), bptr->data, NewStringType::kNormal, bptr->length) .FromMaybe(Local<Value>()); } - CHECK_EQ(config.format, ncrypto::EVPKeyPointer::PKFormatType::DER); + CHECK_EQ(config.format, EVPKeyPointer::PKFormatType::DER); // DER is binary, return it as a buffer. return Buffer::Copy(env, bptr->data, bptr->length).FromMaybe(Local<Value>()); } @@ -96,7 +102,7 @@ MaybeLocal<Value> BIOToStringOrBuffer( MaybeLocal<Value> WritePrivateKey( Environment* env, const EVPKeyPointer& pkey, - const ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig& config) { + const EVPKeyPointer::PrivateKeyEncodingConfig& config) { CHECK(pkey); auto res = pkey.writePrivateKey(config); if (res) { @@ -111,7 +117,7 @@ MaybeLocal<Value> WritePrivateKey( MaybeLocal<Value> WritePublicKey( Environment* env, const EVPKeyPointer& pkey, - const ncrypto::EVPKeyPointer::PublicKeyEncodingConfig& config) { + const EVPKeyPointer::PublicKeyEncodingConfig& config) { CHECK(pkey); auto res = pkey.writePublicKey(config); if (res) { @@ -243,7 +249,7 @@ Maybe<void> GetAsymmetricKeyDetail(Environment* env, KeyObjectData TryParsePrivateKey( Environment* env, - const ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig& config, + const EVPKeyPointer::PrivateKeyEncodingConfig& config, const ncrypto::Buffer<const unsigned char>& buffer) { auto res = EVPKeyPointer::TryParsePrivateKey(config, buffer); if (res) { @@ -285,7 +291,7 @@ Maybe<void> ExportJWKInner(Environment* env, Maybe<void> KeyObjectData::ToEncodedPublicKey( Environment* env, - const ncrypto::EVPKeyPointer::PublicKeyEncodingConfig& config, + const EVPKeyPointer::PublicKeyEncodingConfig& config, Local<Value>* out) { CHECK(key_type_ != KeyType::kKeyTypeSecret); if (config.output_key_object) { @@ -294,7 +300,7 @@ Maybe<void> KeyObjectData::ToEncodedPublicKey( return NothingIfFalse( KeyObjectHandle::Create(env, addRefWithType(KeyType::kKeyTypePublic)) .ToLocal(out)); - } else if (config.format == ncrypto::EVPKeyPointer::PKFormatType::JWK) { + } else if (config.format == EVPKeyPointer::PKFormatType::JWK) { *out = Object::New(env->isolate()); return ExportJWKInner( env, addRefWithType(KeyType::kKeyTypePublic), *out, false); @@ -306,14 +312,14 @@ Maybe<void> KeyObjectData::ToEncodedPublicKey( Maybe<void> KeyObjectData::ToEncodedPrivateKey( Environment* env, - const ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig& config, + const EVPKeyPointer::PrivateKeyEncodingConfig& config, Local<Value>* out) { CHECK(key_type_ != KeyType::kKeyTypeSecret); if (config.output_key_object) { return NothingIfFalse( KeyObjectHandle::Create(env, addRefWithType(KeyType::kKeyTypePrivate)) .ToLocal(out)); - } else if (config.format == ncrypto::EVPKeyPointer::PKFormatType::JWK) { + } else if (config.format == EVPKeyPointer::PKFormatType::JWK) { *out = Object::New(env->isolate()); return ExportJWKInner( env, addRefWithType(KeyType::kKeyTypePrivate), *out, false); @@ -323,16 +329,16 @@ Maybe<void> KeyObjectData::ToEncodedPrivateKey( WritePrivateKey(env, GetAsymmetricKey(), config).ToLocal(out)); } -Maybe<ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig> +Maybe<EVPKeyPointer::PrivateKeyEncodingConfig> KeyObjectData::GetPrivateKeyEncodingFromJs( const FunctionCallbackInfo<Value>& args, unsigned int* offset, KeyEncodingContext context) { Environment* env = Environment::GetCurrent(args); - ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig config; + EVPKeyPointer::PrivateKeyEncodingConfig config; if (!GetKeyFormatAndTypeFromJs(args, offset, context).To(&config)) { - return Nothing<ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig>(); + return Nothing<EVPKeyPointer::PrivateKeyEncodingConfig>(); } if (config.output_key_object) { @@ -346,7 +352,7 @@ KeyObjectData::GetPrivateKeyEncodingFromJs( config.cipher = EVP_get_cipherbyname(*cipher_name); if (config.cipher == nullptr) { THROW_ERR_CRYPTO_UNKNOWN_CIPHER(env); - return Nothing<ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig>(); + return Nothing<EVPKeyPointer::PrivateKeyEncodingConfig>(); } needs_passphrase = true; } else { @@ -361,7 +367,7 @@ KeyObjectData::GetPrivateKeyEncodingFromJs( ArrayBufferOrViewContents<char> passphrase(args[*offset]); if (!passphrase.CheckSizeInt32()) [[unlikely]] { THROW_ERR_OUT_OF_RANGE(env, "passphrase is too big"); - return Nothing<ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig>(); + return Nothing<EVPKeyPointer::PrivateKeyEncodingConfig>(); } config.passphrase = passphrase.ToDataPointer(); } else { @@ -370,11 +376,10 @@ KeyObjectData::GetPrivateKeyEncodingFromJs( } (*offset)++; - return Just<ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig>( - std::move(config)); + return Just<EVPKeyPointer::PrivateKeyEncodingConfig>(std::move(config)); } -Maybe<ncrypto::EVPKeyPointer::PublicKeyEncodingConfig> +Maybe<EVPKeyPointer::PublicKeyEncodingConfig> KeyObjectData::GetPublicKeyEncodingFromJs( const FunctionCallbackInfo<Value>& args, unsigned int* offset, @@ -390,7 +395,7 @@ KeyObjectData KeyObjectData::GetPrivateKeyFromJs( Environment* env = Environment::GetCurrent(args); auto key = ByteSource::FromStringOrBuffer(env, args[(*offset)++]); - ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig config; + EVPKeyPointer::PrivateKeyEncodingConfig config; if (!GetPrivateKeyEncodingFromJs(args, offset, kKeyContextInput) .To(&config)) { return {}; @@ -423,7 +428,7 @@ KeyObjectData KeyObjectData::GetPublicOrPrivateKeyFromJs( return {}; } - ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig config; + EVPKeyPointer::PrivateKeyEncodingConfig config; if (!KeyObjectData::GetPrivateKeyEncodingFromJs( args, offset, kKeyContextInput) .To(&config)) { @@ -435,7 +440,7 @@ KeyObjectData KeyObjectData::GetPublicOrPrivateKeyFromJs( .len = data.size(), }; - if (config.format == ncrypto::EVPKeyPointer::PKFormatType::PEM) { + if (config.format == EVPKeyPointer::PKFormatType::PEM) { // For PEM, we can easily determine whether it is a public or private key // by looking for the respective PEM tags. auto res = EVPKeyPointer::TryParsePublicKeyPEM(buffer); @@ -456,13 +461,13 @@ KeyObjectData KeyObjectData::GetPublicOrPrivateKeyFromJs( static const auto is_public = [](const auto& config, const auto& buffer) -> bool { switch (config.type) { - case ncrypto::EVPKeyPointer::PKEncodingType::PKCS1: + case EVPKeyPointer::PKEncodingType::PKCS1: return !EVPKeyPointer::IsRSAPrivateKey(buffer); - case ncrypto::EVPKeyPointer::PKEncodingType::SPKI: + case EVPKeyPointer::PKEncodingType::SPKI: return true; - case ncrypto::EVPKeyPointer::PKEncodingType::PKCS8: + case EVPKeyPointer::PKEncodingType::PKCS8: return false; - case ncrypto::EVPKeyPointer::PKEncodingType::SEC1: + case EVPKeyPointer::PKEncodingType::SEC1: return false; default: UNREACHABLE("Invalid key encoding type"); @@ -754,22 +759,21 @@ void KeyObjectHandle::InitECRaw(const FunctionCallbackInfo<Value>& args) { MarkPopErrorOnReturn mark_pop_error_on_return; int id = OBJ_txt2nid(*name); - ECKeyPointer eckey(EC_KEY_new_by_curve_name(id)); + auto eckey = ECKeyPointer::NewByCurveName(id); if (!eckey) return args.GetReturnValue().Set(false); - const EC_GROUP* group = EC_KEY_get0_group(eckey.get()); - ECPointPointer pub(ECDH::BufferToPoint(env, group, args[1])); + const auto group = eckey.getGroup(); + auto pub = ECDH::BufferToPoint(env, group, args[1]); - if (!pub || - !eckey || - !EC_KEY_set_public_key(eckey.get(), pub.get())) { + if (!pub || !eckey || !eckey.setPublicKey(pub)) { return args.GetReturnValue().Set(false); } auto pkey = EVPKeyPointer::New(); - if (!EVP_PKEY_assign_EC_KEY(pkey.get(), eckey.get())) + if (!pkey.assign(eckey)) { args.GetReturnValue().Set(false); + } eckey.release(); // Release ownership of the key @@ -989,7 +993,7 @@ void KeyObjectHandle::Export(const FunctionCallbackInfo<Value>& args) { result = key->ExportSecretKey(); } else if (type == kKeyTypePublic) { unsigned int offset = 0; - ncrypto::EVPKeyPointer::PublicKeyEncodingConfig config; + EVPKeyPointer::PublicKeyEncodingConfig config; if (!KeyObjectData::GetPublicKeyEncodingFromJs( args, &offset, kKeyContextExport) .To(&config)) { @@ -1000,7 +1004,7 @@ void KeyObjectHandle::Export(const FunctionCallbackInfo<Value>& args) { } else { CHECK_EQ(type, kKeyTypePrivate); unsigned int offset = 0; - ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig config; + EVPKeyPointer::PrivateKeyEncodingConfig config; if (!KeyObjectData::GetPrivateKeyEncodingFromJs( args, &offset, kKeyContextExport) .To(&config)) { @@ -1021,12 +1025,12 @@ MaybeLocal<Value> KeyObjectHandle::ExportSecretKey() const { } MaybeLocal<Value> KeyObjectHandle::ExportPublicKey( - const ncrypto::EVPKeyPointer::PublicKeyEncodingConfig& config) const { + const EVPKeyPointer::PublicKeyEncodingConfig& config) const { return WritePublicKey(env(), data_.GetAsymmetricKey(), config); } MaybeLocal<Value> KeyObjectHandle::ExportPrivateKey( - const ncrypto::EVPKeyPointer::PrivateKeyEncodingConfig& config) const { + const EVPKeyPointer::PrivateKeyEncodingConfig& config) const { return WritePrivateKey(env(), data_.GetAsymmetricKey(), config); } @@ -1183,19 +1187,19 @@ void Initialize(Environment* env, Local<Object> target) { KeyObjectHandle::Initialize(env)).Check(); constexpr int kKeyEncodingPKCS1 = - static_cast<int>(ncrypto::EVPKeyPointer::PKEncodingType::PKCS1); + static_cast<int>(EVPKeyPointer::PKEncodingType::PKCS1); constexpr int kKeyEncodingPKCS8 = - static_cast<int>(ncrypto::EVPKeyPointer::PKEncodingType::PKCS8); + static_cast<int>(EVPKeyPointer::PKEncodingType::PKCS8); constexpr int kKeyEncodingSPKI = - static_cast<int>(ncrypto::EVPKeyPointer::PKEncodingType::SPKI); + static_cast<int>(EVPKeyPointer::PKEncodingType::SPKI); constexpr int kKeyEncodingSEC1 = - static_cast<int>(ncrypto::EVPKeyPointer::PKEncodingType::SEC1); + static_cast<int>(EVPKeyPointer::PKEncodingType::SEC1); constexpr int kKeyFormatDER = - static_cast<int>(ncrypto::EVPKeyPointer::PKFormatType::DER); + static_cast<int>(EVPKeyPointer::PKFormatType::DER); constexpr int kKeyFormatPEM = - static_cast<int>(ncrypto::EVPKeyPointer::PKFormatType::PEM); + static_cast<int>(EVPKeyPointer::PKFormatType::PEM); constexpr int kKeyFormatJWK = - static_cast<int>(ncrypto::EVPKeyPointer::PKFormatType::JWK); + static_cast<int>(EVPKeyPointer::PKFormatType::JWK); NODE_DEFINE_CONSTANT(target, kWebCryptoKeyFormatRaw); NODE_DEFINE_CONSTANT(target, kWebCryptoKeyFormatPKCS8); diff --git a/src/crypto/crypto_keys.h b/src/crypto/crypto_keys.h index 32832e87798372..e4f3e03e59bf48 100644 --- a/src/crypto/crypto_keys.h +++ b/src/crypto/crypto_keys.h @@ -33,10 +33,11 @@ enum KeyEncodingContext { enum class ParseKeyResult { kParseKeyNotRecognized = - static_cast<int>(EVPKeyPointer::PKParseError::NOT_RECOGNIZED), + static_cast<int>(ncrypto::EVPKeyPointer::PKParseError::NOT_RECOGNIZED), kParseKeyNeedPassphrase = - static_cast<int>(EVPKeyPointer::PKParseError::NEED_PASSPHRASE), - kParseKeyFailed = static_cast<int>(EVPKeyPointer::PKParseError::FAILED), + static_cast<int>(ncrypto::EVPKeyPointer::PKParseError::NEED_PASSPHRASE), + kParseKeyFailed = + static_cast<int>(ncrypto::EVPKeyPointer::PKParseError::FAILED), kParseKeyOk, }; @@ -45,7 +46,8 @@ class KeyObjectData final : public MemoryRetainer { public: static KeyObjectData CreateSecret(ByteSource key); - static KeyObjectData CreateAsymmetric(KeyType type, EVPKeyPointer&& pkey); + static KeyObjectData CreateAsymmetric(KeyType type, + ncrypto::EVPKeyPointer&& pkey); KeyObjectData(std::nullptr_t = nullptr); @@ -55,7 +57,7 @@ class KeyObjectData final : public MemoryRetainer { // These functions allow unprotected access to the raw key material and should // only be used to implement cryptographic operations requiring the key. - const EVPKeyPointer& GetAsymmetricKey() const; + const ncrypto::EVPKeyPointer& GetAsymmetricKey() const; const char* GetSymmetricKey() const; size_t GetSymmetricKeySize() const; @@ -103,11 +105,11 @@ class KeyObjectData final : public MemoryRetainer { private: explicit KeyObjectData(ByteSource symmetric_key); - explicit KeyObjectData(KeyType type, EVPKeyPointer&& pkey); + explicit KeyObjectData(KeyType type, ncrypto::EVPKeyPointer&& pkey); static KeyObjectData GetParsedKey(KeyType type, Environment* env, - EVPKeyPointer&& pkey, + ncrypto::EVPKeyPointer&& pkey, ParseKeyResult ret, const char* default_msg); @@ -116,10 +118,10 @@ class KeyObjectData final : public MemoryRetainer { struct Data { const ByteSource symmetric_key; - const EVPKeyPointer asymmetric_key; + const ncrypto::EVPKeyPointer asymmetric_key; explicit Data(ByteSource symmetric_key) : symmetric_key(std::move(symmetric_key)) {} - explicit Data(EVPKeyPointer asymmetric_key) + explicit Data(ncrypto::EVPKeyPointer asymmetric_key) : asymmetric_key(std::move(asymmetric_key)) {} }; std::shared_ptr<Data> data_; diff --git a/src/crypto/crypto_random.cc b/src/crypto/crypto_random.cc index b59e394d9a7e2c..cb96698aa644c3 100644 --- a/src/crypto/crypto_random.cc +++ b/src/crypto/crypto_random.cc @@ -7,12 +7,12 @@ #include "threadpoolwork-inl.h" #include "v8.h" -#include <openssl/bn.h> -#include <openssl/rand.h> #include <compare> namespace node { +using ncrypto::BignumPointer; +using ncrypto::ClearErrorOnReturn; using v8::ArrayBuffer; using v8::BackingStore; using v8::Boolean; @@ -28,6 +28,15 @@ using v8::Uint32; using v8::Value; namespace crypto { +namespace { +BignumPointer::PrimeCheckCallback getPrimeCheckCallback(Environment* env) { + // The callback is used to check if the operation should be stopped. + // Currently, the only check we perform is if env->is_stopping() + // is true. + return [env](int a, int b) -> bool { return !env->is_stopping(); }; +} + +} // namespace MaybeLocal<Value> RandomBytesTraits::EncodeOutput( Environment* env, const RandomBytesConfig& params, ByteSource* unused) { return v8::Undefined(env->isolate()); @@ -146,21 +155,14 @@ Maybe<void> RandomPrimeTraits::AdditionalConfig( bool RandomPrimeTraits::DeriveBits(Environment* env, const RandomPrimeConfig& params, ByteSource* unused) { - // BN_generate_prime_ex() calls RAND_bytes_ex() internally. - // Make sure the CSPRNG is properly seeded. - CHECK(ncrypto::CSPRNG(nullptr, 0)); - - if (BN_generate_prime_ex( - params.prime.get(), - params.bits, - params.safe ? 1 : 0, - params.add.get(), - params.rem.get(), - nullptr) == 0) { - return false; - } - - return true; + return params.prime.generate( + BignumPointer::PrimeConfig{ + .bits = params.bits, + .safe = params.safe, + .add = params.add, + .rem = params.rem, + }, + getPrimeCheckCallback(env)); } void CheckPrimeConfig::MemoryInfo(MemoryTracker* tracker) const { @@ -175,6 +177,11 @@ Maybe<void> CheckPrimeTraits::AdditionalConfig( ArrayBufferOrViewContents<unsigned char> candidate(args[offset]); params->candidate = BignumPointer(candidate.data(), candidate.size()); + if (!params->candidate) { + ThrowCryptoError( + Environment::GetCurrent(args), ERR_get_error(), "BignumPointer"); + return Nothing<void>(); + } CHECK(args[offset + 1]->IsInt32()); // Checks params->checks = args[offset + 1].As<Int32>()->Value(); @@ -187,14 +194,7 @@ bool CheckPrimeTraits::DeriveBits( Environment* env, const CheckPrimeConfig& params, ByteSource* out) { - - BignumCtxPointer ctx(BN_CTX_new()); - - int ret = BN_is_prime_ex( - params.candidate.get(), - params.checks, - ctx.get(), - nullptr); + int ret = params.candidate.isPrime(params.checks, getPrimeCheckCallback(env)); if (ret < 0) return false; ByteSource::Builder buf(1); buf.data<char>()[0] = ret; diff --git a/src/crypto/crypto_random.h b/src/crypto/crypto_random.h index 01cfc38f45e2f9..8b3193c24f6aa1 100644 --- a/src/crypto/crypto_random.h +++ b/src/crypto/crypto_random.h @@ -45,9 +45,9 @@ struct RandomBytesTraits final { using RandomBytesJob = DeriveBitsJob<RandomBytesTraits>; struct RandomPrimeConfig final : public MemoryRetainer { - BignumPointer prime; - BignumPointer rem; - BignumPointer add; + ncrypto::BignumPointer prime; + ncrypto::BignumPointer rem; + ncrypto::BignumPointer add; int bits; bool safe; void MemoryInfo(MemoryTracker* tracker) const override; @@ -80,7 +80,7 @@ struct RandomPrimeTraits final { using RandomPrimeJob = DeriveBitsJob<RandomPrimeTraits>; struct CheckPrimeConfig final : public MemoryRetainer { - BignumPointer candidate; + ncrypto::BignumPointer candidate; int checks = 1; void MemoryInfo(MemoryTracker* tracker) const override; diff --git a/src/crypto/crypto_rsa.cc b/src/crypto/crypto_rsa.cc index 6d360554b31d53..05a3882c7e17d7 100644 --- a/src/crypto/crypto_rsa.cc +++ b/src/crypto/crypto_rsa.cc @@ -14,6 +14,10 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::RSAPointer; using v8::ArrayBuffer; using v8::BackingStore; using v8::FunctionCallbackInfo; diff --git a/src/crypto/crypto_rsa.h b/src/crypto/crypto_rsa.h index cbab0ef15acdf7..6fc48da1aea2cd 100644 --- a/src/crypto/crypto_rsa.h +++ b/src/crypto/crypto_rsa.h @@ -41,7 +41,7 @@ struct RsaKeyGenTraits final { using AdditionalParameters = RsaKeyPairGenConfig; static constexpr const char* JobName = "RsaKeyPairGenJob"; - static EVPKeyCtxPointer Setup(RsaKeyPairGenConfig* params); + static ncrypto::EVPKeyCtxPointer Setup(RsaKeyPairGenConfig* params); static v8::Maybe<void> AdditionalConfig( CryptoJobMode mode, @@ -77,7 +77,7 @@ struct RSAKeyExportTraits final { using RSAKeyExportJob = KeyExportJob<RSAKeyExportTraits>; struct RSACipherConfig final : public MemoryRetainer { - CryptoJobMode mode; + CryptoJobMode mode = kCryptoJobAsync; ByteSource label; int padding = 0; const EVP_MD* digest = nullptr; diff --git a/src/crypto/crypto_sig.cc b/src/crypto/crypto_sig.cc index 0e808013a31f9d..abb8a804c1b508 100644 --- a/src/crypto/crypto_sig.cc +++ b/src/crypto/crypto_sig.cc @@ -12,6 +12,13 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::ClearErrorOnReturn; +using ncrypto::ECDSASigPointer; +using ncrypto::ECKeyPointer; +using ncrypto::EVPKeyCtxPointer; +using ncrypto::EVPKeyPointer; +using ncrypto::EVPMDCtxPointer; using v8::ArrayBuffer; using v8::BackingStore; using v8::Boolean; @@ -129,9 +136,7 @@ unsigned int GetBytesOfRS(const EVPKeyPointer& pkey) { // Both r and s are computed mod q, so their width is limited by that of q. bits = BignumPointer::GetBitCount(DSA_get0_q(dsa_key)); } else if (base_id == EVP_PKEY_EC) { - const EC_KEY* ec_key = EVP_PKEY_get0_EC_KEY(pkey.get()); - const EC_GROUP* ec_group = EC_KEY_get0_group(ec_key); - bits = EC_GROUP_order_bits(ec_group); + bits = EC_GROUP_order_bits(ECKeyPointer::GetGroup(pkey)); } else { return kNoDsaSignature; } @@ -144,16 +149,16 @@ bool ExtractP1363( unsigned char* out, size_t len, size_t n) { - ECDSASigPointer asn1_sig(d2i_ECDSA_SIG(nullptr, &sig_data, len)); + ncrypto::Buffer<const unsigned char> sig_buffer{ + .data = sig_data, + .len = len, + }; + auto asn1_sig = ECDSASigPointer::Parse(sig_buffer); if (!asn1_sig) return false; - const BIGNUM* pr; - const BIGNUM* ps; - ECDSA_SIG_get0(asn1_sig.get(), &pr, &ps); - - return BignumPointer::EncodePaddedInto(pr, out, n) > 0 && - BignumPointer::EncodePaddedInto(ps, out + n, n) > 0; + return BignumPointer::EncodePaddedInto(asn1_sig.r(), out, n) > 0 && + BignumPointer::EncodePaddedInto(asn1_sig.s(), out + n, n) > 0; } // Returns the maximum size of each of the integers (r, s) of the DSA signature. @@ -207,23 +212,19 @@ ByteSource ConvertSignatureToDER(const EVPKeyPointer& pkey, ByteSource&& out) { if (out.size() != 2 * n) return ByteSource(); - ECDSASigPointer asn1_sig(ECDSA_SIG_new()); + auto asn1_sig = ECDSASigPointer::New(); CHECK(asn1_sig); BignumPointer r(sig_data, n); CHECK(r); BignumPointer s(sig_data + n, n); CHECK(s); - CHECK_EQ(1, ECDSA_SIG_set0(asn1_sig.get(), r.release(), s.release())); - - unsigned char* data = nullptr; - int len = i2d_ECDSA_SIG(asn1_sig.get(), &data); - - if (len <= 0) - return ByteSource(); + CHECK(asn1_sig.setParams(std::move(r), std::move(s))); - CHECK_NOT_NULL(data); + auto buf = asn1_sig.encode(); + if (buf.len <= 0) return ByteSource(); - return ByteSource::Allocated(data, len); + CHECK_NOT_NULL(buf.data); + return ByteSource::Allocated(buf); } void CheckThrow(Environment* env, SignBase::Error error) { diff --git a/src/crypto/crypto_sig.h b/src/crypto/crypto_sig.h index 14c553fe3fca66..3a3c27b4e8e748 100644 --- a/src/crypto/crypto_sig.h +++ b/src/crypto/crypto_sig.h @@ -42,7 +42,7 @@ class SignBase : public BaseObject { SET_SELF_SIZE(SignBase) protected: - EVPMDCtxPointer mdctx_; + ncrypto::EVPMDCtxPointer mdctx_; }; class Sign : public SignBase { @@ -60,7 +60,7 @@ class Sign : public SignBase { : error(err), signature(std::move(sig)) {} }; - SignResult SignFinal(const EVPKeyPointer& pkey, + SignResult SignFinal(const ncrypto::EVPKeyPointer& pkey, int padding, const v8::Maybe<int>& saltlen, DSASigEnc dsa_sig_enc); @@ -81,7 +81,7 @@ class Verify : public SignBase { static void Initialize(Environment* env, v8::Local<v8::Object> target); static void RegisterExternalReferences(ExternalReferenceRegistry* registry); - Error VerifyFinal(const EVPKeyPointer& key, + Error VerifyFinal(const ncrypto::EVPKeyPointer& key, const ByteSource& sig, int padding, const v8::Maybe<int>& saltlen, diff --git a/src/crypto/crypto_spkac.cc b/src/crypto/crypto_spkac.cc index d0dcb1d7be5581..ba085226984767 100644 --- a/src/crypto/crypto_spkac.cc +++ b/src/crypto/crypto_spkac.cc @@ -9,6 +9,7 @@ namespace node { +using ncrypto::BIOPointer; using v8::Context; using v8::FunctionCallbackInfo; using v8::Local; diff --git a/src/crypto/crypto_tls.cc b/src/crypto/crypto_tls.cc index 981edd4f3f5fa1..72581556d9e757 100644 --- a/src/crypto/crypto_tls.cc +++ b/src/crypto/crypto_tls.cc @@ -36,6 +36,12 @@ namespace node { +using ncrypto::BIOPointer; +using ncrypto::ClearErrorOnReturn; +using ncrypto::MarkPopErrorOnReturn; +using ncrypto::SSLPointer; +using ncrypto::SSLSessionPointer; +using ncrypto::X509Pointer; using v8::Array; using v8::ArrayBuffer; using v8::ArrayBufferView; @@ -217,10 +223,12 @@ int SSLCertCallback(SSL* s, void* arg) { Local<Object> info = Object::New(env->isolate()); - const char* servername = GetServerName(s); - Local<String> servername_str = (servername == nullptr) - ? String::Empty(env->isolate()) - : OneByteString(env->isolate(), servername, strlen(servername)); + auto servername = SSLPointer::GetServerName(s); + Local<String> servername_str = + !servername.has_value() ? String::Empty(env->isolate()) + : OneByteString(env->isolate(), + servername.value().data(), + servername.value().length()); Local<Value> ocsp = Boolean::New( env->isolate(), SSL_get_tlsext_status_type(s) == TLSEXT_STATUSTYPE_ocsp); @@ -303,6 +311,20 @@ int SelectALPNCallback( : SSL_TLSEXT_ERR_ALERT_FATAL; } +MaybeLocal<Value> GetSSLOCSPResponse(Environment* env, SSL* ssl) { + const unsigned char* resp; + int len = SSL_get_tlsext_status_ocsp_resp(ssl, &resp); + if (resp == nullptr) return Null(env->isolate()); + + Local<Value> ret; + MaybeLocal<Object> maybe_buffer = + Buffer::Copy(env, reinterpret_cast<const char*>(resp), len); + + if (!maybe_buffer.ToLocal(&ret)) return MaybeLocal<Value>(); + + return ret; +} + int TLSExtStatusCallback(SSL* s, void* arg) { TLSWrap* w = static_cast<TLSWrap*>(SSL_get_app_data(s)); Environment* env = w->env(); @@ -311,7 +333,7 @@ int TLSExtStatusCallback(SSL* s, void* arg) { if (w->is_client()) { // Incoming response Local<Value> arg; - if (GetSSLOCSPResponse(env, s, Null(env->isolate())).ToLocal(&arg)) + if (GetSSLOCSPResponse(env, s).ToLocal(&arg)) w->MakeCallback(env->onocspresponse_string(), 1, &arg); // No async acceptance is possible, so always return 1 to accept the @@ -343,8 +365,7 @@ int TLSExtStatusCallback(SSL* s, void* arg) { void ConfigureSecureContext(SecureContext* sc) { // OCSP stapling - SSL_CTX_set_tlsext_status_cb(sc->ctx().get(), TLSExtStatusCallback); - SSL_CTX_set_tlsext_status_arg(sc->ctx().get(), nullptr); + sc->ctx().setStatusCallback(TLSExtStatusCallback); } inline bool Set( @@ -362,6 +383,19 @@ inline bool Set( .IsNothing(); } +inline bool Set(Environment* env, + Local<Object> target, + Local<String> name, + const std::string_view& value, + bool ignore_null = true) { + if (value.empty()) return ignore_null; + return !target + ->Set(env->context(), + name, + OneByteString(env->isolate(), value.data(), value.length())) + .IsNothing(); +} + std::string GetBIOError() { std::string ret; ERR_print_errors_cb( @@ -372,6 +406,7 @@ std::string GetBIOError() { static_cast<void*>(&ret)); return ret; } + } // namespace TLSWrap::TLSWrap(Environment* env, @@ -830,8 +865,7 @@ void TLSWrap::ClearOut() { if (context.IsEmpty()) [[unlikely]] return; const std::string error_str = GetBIOError(); - Local<String> message = OneByteString( - env()->isolate(), error_str.c_str(), error_str.size()); + Local<String> message = OneByteString(env()->isolate(), error_str); if (message.IsEmpty()) [[unlikely]] return; error = Exception::Error(message); @@ -1330,9 +1364,11 @@ void TLSWrap::GetServername(const FunctionCallbackInfo<Value>& args) { CHECK_NOT_NULL(wrap->ssl_); - const char* servername = GetServerName(wrap->ssl_.get()); - if (servername != nullptr) { - args.GetReturnValue().Set(OneByteString(env->isolate(), servername)); + auto servername = wrap->ssl_.getServerName(); + if (servername.has_value()) { + auto& sn = servername.value(); + args.GetReturnValue().Set( + OneByteString(env->isolate(), sn.data(), sn.length())); } else { args.GetReturnValue().Set(false); } @@ -1361,8 +1397,9 @@ int TLSWrap::SelectSNIContextCallback(SSL* s, int* ad, void* arg) { HandleScope handle_scope(env->isolate()); Context::Scope context_scope(env->context()); - const char* servername = GetServerName(s); - if (!Set(env, p->GetOwner(), env->servername_string(), servername)) + auto servername = SSLPointer::GetServerName(s); + if (!servername.has_value() || + !Set(env, p->GetOwner(), env->servername_string(), servername.value())) return SSL_TLSEXT_ERR_NOACK; Local<Value> ctx = p->object()->Get(env->context(), env->sni_context_string()) @@ -1803,7 +1840,7 @@ void TLSWrap::SetSession(const FunctionCallbackInfo<Value>& args) { if (sess == nullptr) return; // TODO(tniessen): figure out error handling - if (!SetTLSSession(w->ssl_, sess)) + if (!w->ssl_.setSession(sess)) return env->ThrowError("SSL_set_session error"); } @@ -1830,15 +1867,19 @@ void TLSWrap::VerifyError(const FunctionCallbackInfo<Value>& args) { if (x509_verify_error == X509_V_OK) return args.GetReturnValue().SetNull(); - const char* reason = X509_verify_cert_error_string(x509_verify_error); - const char* code = X509ErrorCode(x509_verify_error); + Local<Value> reason; + if (!GetValidationErrorReason(env, x509_verify_error).ToLocal(&reason)) { + return; + } + if (reason->IsUndefined()) [[unlikely]] + return; - Local<Object> error = - Exception::Error(OneByteString(env->isolate(), reason)) - ->ToObject(env->isolate()->GetCurrentContext()) - .FromMaybe(Local<Object>()); + Local<Object> error = Exception::Error(reason.As<v8::String>()) + ->ToObject(env->isolate()->GetCurrentContext()) + .FromMaybe(Local<Object>()); - if (Set(env, error, env->code_string(), code)) + auto code = X509Pointer::ErrorCode(x509_verify_error); + if (Set(env, error, env->code_string(), code.data())) args.GetReturnValue().Set(error); } @@ -1938,7 +1979,7 @@ void TLSWrap::GetSharedSigalgs(const FunctionCallbackInfo<Value>& args) { } else { sig_with_md += "UNDEF"; } - ret_arr[i] = OneByteString(env->isolate(), sig_with_md.c_str()); + ret_arr[i] = OneByteString(env->isolate(), sig_with_md); } args.GetReturnValue().Set( diff --git a/src/crypto/crypto_tls.h b/src/crypto/crypto_tls.h index 1faad67a4a2886..ed1ee337b42ec1 100644 --- a/src/crypto/crypto_tls.h +++ b/src/crypto/crypto_tls.h @@ -248,8 +248,8 @@ class TLSWrap : public AsyncWrap, Environment* const env_; Kind kind_; - SSLSessionPointer next_sess_; - SSLPointer ssl_; + ncrypto::SSLSessionPointer next_sess_; + ncrypto::SSLPointer ssl_; ClientHelloParser hello_parser_; v8::Global<v8::ArrayBufferView> ocsp_response_; BaseObjectPtr<SecureContext> sni_context_; @@ -288,7 +288,7 @@ class TLSWrap : public AsyncWrap, CertCb cert_cb_ = nullptr; void* cert_cb_arg_ = nullptr; - BIOPointer bio_trace_; + ncrypto::BIOPointer bio_trace_; bool has_active_write_issued_by_prev_listener_ = false; diff --git a/src/crypto/crypto_util.cc b/src/crypto/crypto_util.cc index 12ee0cde089702..e255288f6e013c 100644 --- a/src/crypto/crypto_util.cc +++ b/src/crypto/crypto_util.cc @@ -26,6 +26,11 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::BIOPointer; +using ncrypto::CryptoErrorList; +using ncrypto::EnginePointer; +using ncrypto::EVPKeyCtxPointer; using v8::ArrayBuffer; using v8::BackingStore; using v8::BigInt; @@ -36,6 +41,7 @@ using v8::HandleScope; using v8::Isolate; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::NewStringType; @@ -161,7 +167,7 @@ void InitCryptoOnce() { sk_SSL_COMP_zero(SSL_COMP_get_compression_methods()); #ifndef OPENSSL_NO_ENGINE - ncrypto::EnginePointer::initEnginesOnce(); + EnginePointer::initEnginesOnce(); #endif // !OPENSSL_NO_ENGINE } @@ -180,7 +186,7 @@ void SetFipsCrypto(const FunctionCallbackInfo<Value>& args) { CHECK(env->owns_process_state()); bool enable = args[0]->BooleanValue(env->isolate()); - ncrypto::CryptoErrorList errors; + CryptoErrorList errors; if (!ncrypto::setFipsEnabled(enable, &errors)) { Local<Value> exception; if (cryptoErrorListToException(env, errors).ToLocal(&exception)) { @@ -209,8 +215,8 @@ bool CryptoErrorStore::Empty() const { return errors_.empty(); } -MaybeLocal<Value> cryptoErrorListToException( - Environment* env, const ncrypto::CryptoErrorList& errors) { +MaybeLocal<Value> cryptoErrorListToException(Environment* env, + const CryptoErrorList& errors) { // The CryptoErrorList contains a listing of zero or more errors. // If there are no errors, it is likely a bug but we will return // an error anyway. @@ -236,7 +242,8 @@ MaybeLocal<Value> cryptoErrorListToException( if (errors.size() > 1) { CHECK(exception->IsObject()); Local<Object> exception_obj = exception.As<Object>(); - std::vector<Local<Value>> stack(errors.size() - 1); + LocalVector<Value> stack(env->isolate()); + stack.reserve(errors.size() - 1); // Iterate over all but the last error in the list. auto current = errors.begin(); @@ -252,11 +259,11 @@ MaybeLocal<Value> cryptoErrorListToException( } Local<v8::Array> stackArray = - v8::Array::New(env->isolate(), &stack[0], stack.size()); + v8::Array::New(env->isolate(), stack.data(), stack.size()); - if (!exception_obj - ->Set(env->context(), env->openssl_error_stack(), stackArray) - .IsNothing()) { + if (exception_obj + ->Set(env->context(), env->openssl_error_stack(), stackArray) + .IsNothing()) { return {}; } } @@ -585,7 +592,7 @@ void SetEngine(const FunctionCallbackInfo<Value>& args) { // If the engine name is not known, calling setAsDefault on the // empty engine pointer will be non-op that always returns false. args.GetReturnValue().Set( - ncrypto::EnginePointer::getEngineByName(engine_id.ToStringView()) + EnginePointer::getEngineByName(engine_id.ToStringView()) .setAsDefault(flags)); } #endif // !OPENSSL_NO_ENGINE @@ -595,7 +602,7 @@ MaybeLocal<Value> EncodeBignum( const BIGNUM* bn, int size, Local<Value>* error) { - auto buf = ncrypto::BignumPointer::EncodePadded(bn, size); + auto buf = BignumPointer::EncodePadded(bn, size); CHECK_EQ(buf.size(), static_cast<size_t>(size)); return StringBytes::Encode(env->isolate(), reinterpret_cast<const char*>(buf.get()), diff --git a/src/crypto/crypto_util.h b/src/crypto/crypto_util.h index 5c717c6fdb0fc4..a5967c7d24b836 100644 --- a/src/crypto/crypto_util.h +++ b/src/crypto/crypto_util.h @@ -38,6 +38,7 @@ #include <vector> namespace node { + namespace crypto { // Currently known sizes of commonly used OpenSSL struct sizes. // OpenSSL considers it's various structs to be opaque and the @@ -53,34 +54,6 @@ constexpr size_t kSizeOf_EVP_PKEY = 72; constexpr size_t kSizeOf_EVP_PKEY_CTX = 80; constexpr size_t kSizeOf_HMAC_CTX = 32; -// Define smart pointers for the most commonly used OpenSSL types: -using X509Pointer = ncrypto::X509Pointer; -using BIOPointer = ncrypto::BIOPointer; -using SSLCtxPointer = ncrypto::SSLCtxPointer; -using SSLSessionPointer = ncrypto::SSLSessionPointer; -using SSLPointer = ncrypto::SSLPointer; -using PKCS8Pointer = ncrypto::PKCS8Pointer; -using EVPKeyPointer = ncrypto::EVPKeyPointer; -using EVPKeyCtxPointer = ncrypto::EVPKeyCtxPointer; -using EVPMDCtxPointer = ncrypto::EVPMDCtxPointer; -using RSAPointer = ncrypto::RSAPointer; -using ECPointer = ncrypto::ECPointer; -using BignumPointer = ncrypto::BignumPointer; -using BignumCtxPointer = ncrypto::BignumCtxPointer; -using NetscapeSPKIPointer = ncrypto::NetscapeSPKIPointer; -using ECGroupPointer = ncrypto::ECGroupPointer; -using ECPointPointer = ncrypto::ECPointPointer; -using ECKeyPointer = ncrypto::ECKeyPointer; -using DHPointer = ncrypto::DHPointer; -using ECDSASigPointer = ncrypto::ECDSASigPointer; -using HMACCtxPointer = ncrypto::HMACCtxPointer; -using CipherCtxPointer = ncrypto::CipherCtxPointer; -using DsaPointer = ncrypto::DSAPointer; -using DsaSigPointer = ncrypto::DSASigPointer; - -using ClearErrorOnReturn = ncrypto::ClearErrorOnReturn; -using MarkPopErrorOnReturn = ncrypto::MarkPopErrorOnReturn; - bool ProcessFipsOptions(); bool InitCryptoOnce(v8::Isolate* isolate); @@ -261,8 +234,8 @@ class ByteSource { operator bool() const { return data_ != nullptr; } - BignumPointer ToBN() const { - return BignumPointer(data<unsigned char>(), size()); + ncrypto::BignumPointer ToBN() const { + return ncrypto::BignumPointer(data<unsigned char>(), size()); } // Creates a v8::BackingStore that takes over responsibility for @@ -297,7 +270,7 @@ class ByteSource { static ByteSource FromBuffer(v8::Local<v8::Value> buffer, bool ntc = false); - static ByteSource FromBIO(const BIOPointer& bio); + static ByteSource FromBIO(const ncrypto::BIOPointer& bio); static ByteSource NullTerminatedCopy(Environment* env, v8::Local<v8::Value> value); @@ -547,7 +520,8 @@ void ThrowCryptoError(Environment* env, class CipherPushContext { public: - inline explicit CipherPushContext(Environment* env) : env_(env) {} + inline explicit CipherPushContext(Environment* env) + : list_(env->isolate()), env_(env) {} inline void push_back(const char* str) { list_.emplace_back(OneByteString(env_->isolate(), str)); @@ -558,7 +532,7 @@ class CipherPushContext { } private: - std::vector<v8::Local<v8::Value>> list_; + v8::LocalVector<v8::Value> list_; Environment* env_; }; @@ -733,7 +707,8 @@ v8::Maybe<void> SetEncodedValue(Environment* env, const BIGNUM* bn, int size = 0); -bool SetRsaOaepLabel(const EVPKeyCtxPointer& rsa, const ByteSource& label); +bool SetRsaOaepLabel(const ncrypto::EVPKeyCtxPointer& rsa, + const ByteSource& label); namespace Util { void Initialize(Environment* env, v8::Local<v8::Object> target); diff --git a/src/crypto/crypto_x509.cc b/src/crypto/crypto_x509.cc index 9b9bb7be9a8dac..3465454e4de4a7 100644 --- a/src/crypto/crypto_x509.cc +++ b/src/crypto/crypto_x509.cc @@ -15,6 +15,15 @@ namespace node { +using ncrypto::BignumPointer; +using ncrypto::BIOPointer; +using ncrypto::ClearErrorOnReturn; +using ncrypto::DataPointer; +using ncrypto::ECKeyPointer; +using ncrypto::SSLPointer; +using ncrypto::StackOfASN1; +using ncrypto::X509Pointer; +using ncrypto::X509View; using v8::Array; using v8::ArrayBuffer; using v8::ArrayBufferView; @@ -60,34 +69,17 @@ void ManagedX509::MemoryInfo(MemoryTracker* tracker) const { } namespace { -void AddFingerprintDigest(const unsigned char* md, - unsigned int md_size, - char fingerprint[3 * EVP_MAX_MD_SIZE]) { - unsigned int i; - static constexpr char hex[] = "0123456789ABCDEF"; - - for (i = 0; i < md_size; i++) { - fingerprint[3 * i] = hex[(md[i] & 0xf0) >> 4]; - fingerprint[(3 * i) + 1] = hex[(md[i] & 0x0f)]; - fingerprint[(3 * i) + 2] = ':'; - } - - DCHECK_GT(md_size, 0); - fingerprint[(3 * (md_size - 1)) + 2] = '\0'; -} - MaybeLocal<Value> GetFingerprintDigest(Environment* env, const EVP_MD* method, - const ncrypto::X509View& cert) { - unsigned char md[EVP_MAX_MD_SIZE]; - unsigned int md_size; - char fingerprint[EVP_MAX_MD_SIZE * 3]; - - if (X509_digest(cert.get(), method, md, &md_size)) { - AddFingerprintDigest(md, md_size, fingerprint); - return OneByteString(env->isolate(), fingerprint); + const X509View& cert) { + auto fingerprint = cert.getFingerprint(method); + // Returning an empty string indicates that the digest failed for + // some reason. + if (!fingerprint.has_value()) [[unlikely]] { + return Undefined(env->isolate()); } - return Undefined(env->isolate()); + auto& fp = fingerprint.value(); + return OneByteString(env->isolate(), fp.data(), fp.length()); } template <const EVP_MD* (*algo)()> @@ -146,7 +138,7 @@ MaybeLocal<Value> ToV8Value(Local<Context> context, const ASN1_STRING* str) { if (value_str_size < 0) { return Undefined(context->GetIsolate()); } - ncrypto::DataPointer free_value_str(value_str, value_str_size); + DataPointer free_value_str(value_str, value_str_size); Local<Value> result; if (!String::NewFromUtf8(context->GetIsolate(), @@ -188,7 +180,7 @@ MaybeLocal<Value> ToBuffer(Environment* env, BIOPointer* bio) { return ret; } -MaybeLocal<Value> GetDer(Environment* env, const ncrypto::X509View& view) { +MaybeLocal<Value> GetDer(Environment* env, const X509View& view) { Local<Value> ret; auto bio = view.toDER(); if (!bio) return Undefined(env->isolate()); @@ -199,7 +191,7 @@ MaybeLocal<Value> GetDer(Environment* env, const ncrypto::X509View& view) { } MaybeLocal<Value> GetSubjectAltNameString(Environment* env, - const ncrypto::X509View& view) { + const X509View& view) { Local<Value> ret; auto bio = view.getSubjectAltName(); if (!bio) return Undefined(env->isolate()); @@ -207,8 +199,7 @@ MaybeLocal<Value> GetSubjectAltNameString(Environment* env, return ret; } -MaybeLocal<Value> GetInfoAccessString(Environment* env, - const ncrypto::X509View& view) { +MaybeLocal<Value> GetInfoAccessString(Environment* env, const X509View& view) { Local<Value> ret; auto bio = view.getInfoAccess(); if (!bio) return Undefined(env->isolate()); @@ -218,8 +209,7 @@ MaybeLocal<Value> GetInfoAccessString(Environment* env, return ret; } -MaybeLocal<Value> GetValidFrom(Environment* env, - const ncrypto::X509View& view) { +MaybeLocal<Value> GetValidFrom(Environment* env, const X509View& view) { Local<Value> ret; auto bio = view.getValidFrom(); if (!bio) return Undefined(env->isolate()); @@ -229,7 +219,7 @@ MaybeLocal<Value> GetValidFrom(Environment* env, return ret; } -MaybeLocal<Value> GetValidTo(Environment* env, const ncrypto::X509View& view) { +MaybeLocal<Value> GetValidTo(Environment* env, const X509View& view) { Local<Value> ret; auto bio = view.getValidTo(); if (!bio) return Undefined(env->isolate()); @@ -239,20 +229,17 @@ MaybeLocal<Value> GetValidTo(Environment* env, const ncrypto::X509View& view) { return ret; } -MaybeLocal<Value> GetValidFromDate(Environment* env, - const ncrypto::X509View& view) { +MaybeLocal<Value> GetValidFromDate(Environment* env, const X509View& view) { int64_t validFromTime = view.getValidFromTime(); return Date::New(env->context(), validFromTime * 1000.); } -MaybeLocal<Value> GetValidToDate(Environment* env, - const ncrypto::X509View& view) { +MaybeLocal<Value> GetValidToDate(Environment* env, const X509View& view) { int64_t validToTime = view.getValidToTime(); return Date::New(env->context(), validToTime * 1000.); } -MaybeLocal<Value> GetSerialNumber(Environment* env, - const ncrypto::X509View& view) { +MaybeLocal<Value> GetSerialNumber(Environment* env, const X509View& view) { if (auto serial = view.getSerialNumber()) { return OneByteString(env->isolate(), static_cast<unsigned char*>(serial.get())); @@ -260,8 +247,8 @@ MaybeLocal<Value> GetSerialNumber(Environment* env, return Undefined(env->isolate()); } -MaybeLocal<Value> GetKeyUsage(Environment* env, const ncrypto::X509View& cert) { - ncrypto::StackOfASN1 eku(static_cast<STACK_OF(ASN1_OBJECT)*>( +MaybeLocal<Value> GetKeyUsage(Environment* env, const X509View& cert) { + StackOfASN1 eku(static_cast<STACK_OF(ASN1_OBJECT)*>( X509_get_ext_d2i(cert.get(), NID_ext_key_usage, nullptr, nullptr))); if (eku) { const int count = sk_ASN1_OBJECT_num(eku.get()); @@ -475,10 +462,10 @@ void CheckHost(const FunctionCallbackInfo<Value>& args) { Utf8Value name(env->isolate(), args[0]); uint32_t flags = args[1].As<Uint32>()->Value(); - ncrypto::DataPointer peername; + DataPointer peername; switch (cert->view().checkHost(name.ToStringView(), flags, &peername)) { - case ncrypto::X509View::CheckMatch::MATCH: { // Match! + case X509View::CheckMatch::MATCH: { // Match! Local<Value> ret = args[0]; if (peername) { ret = OneByteString(env->isolate(), @@ -487,9 +474,9 @@ void CheckHost(const FunctionCallbackInfo<Value>& args) { } return args.GetReturnValue().Set(ret); } - case ncrypto::X509View::CheckMatch::NO_MATCH: // No Match! + case X509View::CheckMatch::NO_MATCH: // No Match! return; // No return value is set - case ncrypto::X509View::CheckMatch::INVALID_NAME: // Error! + case X509View::CheckMatch::INVALID_NAME: // Error! return THROW_ERR_INVALID_ARG_VALUE(env, "Invalid name"); default: // Error! return THROW_ERR_CRYPTO_OPERATION_FAILED(env); @@ -508,11 +495,11 @@ void CheckEmail(const FunctionCallbackInfo<Value>& args) { uint32_t flags = args[1].As<Uint32>()->Value(); switch (cert->view().checkEmail(name.ToStringView(), flags)) { - case ncrypto::X509View::CheckMatch::MATCH: // Match! + case X509View::CheckMatch::MATCH: // Match! return args.GetReturnValue().Set(args[0]); - case ncrypto::X509View::CheckMatch::NO_MATCH: // No Match! + case X509View::CheckMatch::NO_MATCH: // No Match! return; // No return value is set - case ncrypto::X509View::CheckMatch::INVALID_NAME: // Error! + case X509View::CheckMatch::INVALID_NAME: // Error! return THROW_ERR_INVALID_ARG_VALUE(env, "Invalid name"); default: // Error! return THROW_ERR_CRYPTO_OPERATION_FAILED(env); @@ -531,11 +518,11 @@ void CheckIP(const FunctionCallbackInfo<Value>& args) { uint32_t flags = args[1].As<Uint32>()->Value(); switch (cert->view().checkIp(name.ToStringView(), flags)) { - case ncrypto::X509View::CheckMatch::MATCH: // Match! + case X509View::CheckMatch::MATCH: // Match! return args.GetReturnValue().Set(args[0]); - case ncrypto::X509View::CheckMatch::NO_MATCH: // No Match! + case X509View::CheckMatch::NO_MATCH: // No Match! return; // No return value is set - case ncrypto::X509View::CheckMatch::INVALID_NAME: // Error! + case X509View::CheckMatch::INVALID_NAME: // Error! return THROW_ERR_INVALID_ARG_VALUE(env, "Invalid IP"); default: // Error! return THROW_ERR_CRYPTO_OPERATION_FAILED(env); @@ -611,7 +598,7 @@ bool Set(Environment* env, // The property value may be a single string or an array of strings. template <X509_NAME* get_name(const X509*)> static MaybeLocal<Value> GetX509NameObject(Environment* env, - const ncrypto::X509View& cert) { + const X509View& cert) { X509_NAME* name = get_name(cert.get()); CHECK_NOT_NULL(name); @@ -695,9 +682,8 @@ MaybeLocal<Object> GetPubKey(Environment* env, OSSL3_CONST RSA* rsa) { } MaybeLocal<Value> GetModulusString(Environment* env, const BIGNUM* n) { - auto bio = BIOPointer::NewMem(); + auto bio = BIOPointer::New(n); if (!bio) return {}; - BN_print(bio.get(), n); return ToV8Value(env->context(), bio); } @@ -712,7 +698,7 @@ MaybeLocal<Value> GetExponentString(Environment* env, const BIGNUM* e) { MaybeLocal<Value> GetECPubKey(Environment* env, const EC_GROUP* group, OSSL3_CONST EC_KEY* ec) { - const EC_POINT* pubkey = EC_KEY_get0_public_key(ec); + const auto pubkey = ECKeyPointer::GetPublicKey(ec); if (pubkey == nullptr) return Undefined(env->isolate()); return ECPointToBuffer(env, group, pubkey, EC_KEY_get_conv_form(ec), nullptr) @@ -736,8 +722,7 @@ MaybeLocal<Value> GetCurveName(Environment* env, const int nid) { : MaybeLocal<Value>(Undefined(env->isolate())); } -MaybeLocal<Object> X509ToObject(Environment* env, - const ncrypto::X509View& cert) { +MaybeLocal<Object> X509ToObject(Environment* env, const X509View& cert) { EscapableHandleScope scope(env->isolate()); Local<Object> info = Object::New(env->isolate()); @@ -795,7 +780,7 @@ MaybeLocal<Object> X509ToObject(Environment* env, return {}; } } else if (ec) { - const EC_GROUP* group = EC_KEY_get0_group(ec); + const auto group = ECKeyPointer::GetGroup(ec); if (!Set<Value>( env, info, env->bits_string(), GetECGroupBits(env, group)) || @@ -924,7 +909,7 @@ MaybeLocal<Object> X509Certificate::New(Environment* env, MaybeLocal<Object> X509Certificate::GetCert(Environment* env, const SSLPointer& ssl) { - auto cert = ncrypto::X509View::From(ssl); + auto cert = X509View::From(ssl); if (!cert) return {}; return New(env, cert.clone()); } @@ -958,8 +943,8 @@ v8::MaybeLocal<v8::Value> X509Certificate::toObject(Environment* env) { return toObject(env, view()); } -v8::MaybeLocal<v8::Value> X509Certificate::toObject( - Environment* env, const ncrypto::X509View& cert) { +v8::MaybeLocal<v8::Value> X509Certificate::toObject(Environment* env, + const X509View& cert) { if (!cert) return {}; return X509ToObject(env, cert).FromMaybe(Local<Value>()); } diff --git a/src/crypto/crypto_x509.h b/src/crypto/crypto_x509.h index 595a2344641030..54f4b2a40732d2 100644 --- a/src/crypto/crypto_x509.h +++ b/src/crypto/crypto_x509.h @@ -21,7 +21,7 @@ namespace crypto { class ManagedX509 final : public MemoryRetainer { public: ManagedX509() = default; - explicit ManagedX509(X509Pointer&& cert); + explicit ManagedX509(ncrypto::X509Pointer&& cert); ManagedX509(const ManagedX509& that); ManagedX509& operator=(const ManagedX509& that); @@ -35,7 +35,7 @@ class ManagedX509 final : public MemoryRetainer { SET_SELF_SIZE(ManagedX509) private: - X509Pointer cert_; + ncrypto::X509Pointer cert_; }; class X509Certificate final : public BaseObject { @@ -53,27 +53,24 @@ class X509Certificate final : public BaseObject { static v8::MaybeLocal<v8::Object> New( Environment* env, - X509Pointer cert, - STACK_OF(X509)* issuer_chain = nullptr); + ncrypto::X509Pointer cert, + STACK_OF(X509) * issuer_chain = nullptr); static v8::MaybeLocal<v8::Object> New( Environment* env, std::shared_ptr<ManagedX509> cert, STACK_OF(X509)* issuer_chain = nullptr); - static v8::MaybeLocal<v8::Object> GetCert( - Environment* env, - const SSLPointer& ssl); + static v8::MaybeLocal<v8::Object> GetCert(Environment* env, + const ncrypto::SSLPointer& ssl); - static v8::MaybeLocal<v8::Object> GetPeerCert( - Environment* env, - const SSLPointer& ssl, - GetPeerCertificateFlag flag); + static v8::MaybeLocal<v8::Object> GetPeerCert(Environment* env, + const ncrypto::SSLPointer& ssl, + GetPeerCertificateFlag flag); - static v8::Local<v8::Object> Wrap( - Environment* env, - v8::Local<v8::Object> object, - X509Pointer cert); + static v8::Local<v8::Object> Wrap(Environment* env, + v8::Local<v8::Object> object, + ncrypto::X509Pointer cert); inline BaseObjectPtr<X509Certificate> getIssuerCert() const { return issuer_cert_; diff --git a/src/env-inl.h b/src/env-inl.h index c460018af954e6..49c3513ee9b67b 100644 --- a/src/env-inl.h +++ b/src/env-inl.h @@ -691,7 +691,8 @@ inline bool Environment::no_global_search_paths() const { } inline bool Environment::should_start_debug_signal_handler() const { - return (flags_ & EnvironmentFlags::kNoStartDebugSignalHandler) == 0; + return ((flags_ & EnvironmentFlags::kNoStartDebugSignalHandler) == 0) && + !options_->disable_sigusr1; } inline bool Environment::no_browser_globals() const { diff --git a/src/env.cc b/src/env.cc index adb6cc1c2f1c01..b428c922ed218c 100644 --- a/src/env.cc +++ b/src/env.cc @@ -176,11 +176,7 @@ bool AsyncHooks::pop_async_context(double async_id) { } #endif native_execution_async_resources_.resize(offset); - if (native_execution_async_resources_.size() < - native_execution_async_resources_.capacity() / 2 && - native_execution_async_resources_.size() > 16) { - native_execution_async_resources_.shrink_to_fit(); - } + native_execution_async_resources_.shrink_to_fit(); } if (js_execution_async_resources()->Length() > offset) [[unlikely]] { @@ -1705,6 +1701,7 @@ AsyncHooks::AsyncHooks(Isolate* isolate, const SerializeInfo* info) fields_(isolate, kFieldsCount, MAYBE_FIELD_PTR(info, fields)), async_id_fields_( isolate, kUidFieldsCount, MAYBE_FIELD_PTR(info, async_id_fields)), + native_execution_async_resources_(isolate), info_(info) { HandleScope handle_scope(isolate); if (info == nullptr) { diff --git a/src/env.h b/src/env.h index 16312e548e526b..1239cbdbf2d375 100644 --- a/src/env.h +++ b/src/env.h @@ -405,7 +405,16 @@ class AsyncHooks : public MemoryRetainer { void grow_async_ids_stack(); v8::Global<v8::Array> js_execution_async_resources_; - std::vector<v8::Local<v8::Object>> native_execution_async_resources_; + + // TODO(@jasnell): Note that this is technically illegal use of + // v8::Locals which should be kept on the stack. Here, the entries + // in this object grows and shrinks with the C stack, and entries + // will be in the right handle scopes, but v8::Locals are supposed + // to remain on the stack and not the heap. For general purposes + // this *should* be ok but may need to be looked at further should + // v8 become stricter in the future about v8::Locals being held in + // the stack. + v8::LocalVector<v8::Object> native_execution_async_resources_; // Non-empty during deserialization const SerializeInfo* info_ = nullptr; diff --git a/src/env_properties.h b/src/env_properties.h index 592e95b0584a87..9f898231707822 100644 --- a/src/env_properties.h +++ b/src/env_properties.h @@ -99,6 +99,7 @@ "transferList") \ V(clone_untransferable_str, "Found invalid value in transferList.") \ V(code_string, "code") \ + V(column_number_string, "columnNumber") \ V(column_string, "column") \ V(commonjs_string, "commonjs") \ V(config_string, "config") \ @@ -144,10 +145,13 @@ V(entry_type_string, "entryType") \ V(env_pairs_string, "envPairs") \ V(env_var_settings_string, "envVarSettings") \ + V(err_sqlite_error_string, "ERR_SQLITE_ERROR") \ + V(errcode_string, "errcode") \ V(errno_string, "errno") \ V(error_string, "error") \ - V(events, "events") \ + V(errstr_string, "errstr") \ V(events_waiting, "eventsWaiting") \ + V(events, "events") \ V(exchange_string, "exchange") \ V(expire_string, "expire") \ V(exponent_string, "exponent") \ @@ -317,6 +321,7 @@ V(salt_length_string, "saltLength") \ V(scheme_string, "scheme") \ V(scopeid_string, "scopeid") \ + V(script_id_string, "scriptId") \ V(script_name_string, "scriptName") \ V(serial_number_string, "serialNumber") \ V(serial_string, "serial") \ diff --git a/src/histogram.cc b/src/histogram.cc index c62a5b8952400f..0f0cde7be431dc 100644 --- a/src/histogram.cc +++ b/src/histogram.cc @@ -339,7 +339,7 @@ Local<FunctionTemplate> IntervalHistogram::GetConstructorTemplate( Isolate* isolate = env->isolate(); tmpl = NewFunctionTemplate(isolate, nullptr); tmpl->Inherit(HandleWrap::GetConstructorTemplate(env)); - tmpl->SetClassName(OneByteString(isolate, "Histogram")); + tmpl->SetClassName(FIXED_ONE_BYTE_STRING(isolate, "Histogram")); auto instance = tmpl->InstanceTemplate(); instance->SetInternalFieldCount(HistogramImpl::kInternalFieldCount); HistogramImpl::AddMethods(isolate, tmpl); diff --git a/src/inspector/network_agent.cc b/src/inspector/network_agent.cc index f8b42b29158572..68a1bd4198fde4 100644 --- a/src/inspector/network_agent.cc +++ b/src/inspector/network_agent.cc @@ -53,12 +53,12 @@ void NetworkAgent::Wire(UberDispatcher* dispatcher) { DispatchResponse NetworkAgent::enable() { inspector_->Enable(); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse NetworkAgent::disable() { inspector_->Disable(); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } void NetworkAgent::requestWillBeSent( @@ -76,9 +76,11 @@ void NetworkAgent::requestWillBeSent( request->getString("method", &method); ErrorSupport errors; + errors.Push(); + errors.SetName("headers"); auto headers = Network::Headers::fromValue(request->getObject("headers"), &errors); - if (errors.hasErrors()) { + if (!errors.Errors().empty()) { headers = std::make_unique<Network::Headers>(DictionaryValue::create()); } @@ -105,9 +107,11 @@ void NetworkAgent::responseReceived( response->getString("statusText", &statusText); ErrorSupport errors; + errors.Push(); + errors.SetName("headers"); auto headers = Network::Headers::fromValue(response->getObject("headers"), &errors); - if (errors.hasErrors()) { + if (!errors.Errors().empty()) { headers = std::make_unique<Network::Headers>(DictionaryValue::create()); } diff --git a/src/inspector/node_inspector.gypi b/src/inspector/node_inspector.gypi index d559004be80944..3ae714b51407a4 100644 --- a/src/inspector/node_inspector.gypi +++ b/src/inspector/node_inspector.gypi @@ -1,6 +1,7 @@ { 'variables': { - 'protocol_tool_path': '../../tools/inspector_protocol', + 'protocol_tool_path': '../../deps/inspector_protocol', + 'jinja_dir': '../../tools/inspector_protocol', 'node_inspector_sources': [ 'src/inspector_agent.cc', 'src/inspector_io.cc', @@ -15,6 +16,8 @@ 'src/inspector_socket_server.h', 'src/inspector/main_thread_interface.cc', 'src/inspector/main_thread_interface.h', + 'src/inspector/node_json.cc', + 'src/inspector/node_json.h', 'src/inspector/node_string.cc', 'src/inspector/node_string.h', 'src/inspector/runtime_agent.cc', @@ -44,23 +47,11 @@ '<(SHARED_INTERMEDIATE_DIR)/src/node/inspector/protocol/Network.h', ], 'node_protocol_files': [ - '<(protocol_tool_path)/lib/Allocator_h.template', - '<(protocol_tool_path)/lib/base_string_adapter_cc.template', - '<(protocol_tool_path)/lib/base_string_adapter_h.template', - '<(protocol_tool_path)/lib/DispatcherBase_cpp.template', - '<(protocol_tool_path)/lib/DispatcherBase_h.template', - '<(protocol_tool_path)/lib/encoding_cpp.template', - '<(protocol_tool_path)/lib/encoding_h.template', - '<(protocol_tool_path)/lib/ErrorSupport_cpp.template', - '<(protocol_tool_path)/lib/ErrorSupport_h.template', '<(protocol_tool_path)/lib/Forward_h.template', - '<(protocol_tool_path)/lib/FrontendChannel_h.template', - '<(protocol_tool_path)/lib/Maybe_h.template', '<(protocol_tool_path)/lib/Object_cpp.template', '<(protocol_tool_path)/lib/Object_h.template', - '<(protocol_tool_path)/lib/Parser_cpp.template', - '<(protocol_tool_path)/lib/Parser_h.template', '<(protocol_tool_path)/lib/Protocol_cpp.template', + '<(protocol_tool_path)/lib/ValueConversions_cpp.template', '<(protocol_tool_path)/lib/ValueConversions_h.template', '<(protocol_tool_path)/lib/Values_cpp.template', '<(protocol_tool_path)/lib/Values_h.template', @@ -81,6 +72,9 @@ '<(SHARED_INTERMEDIATE_DIR)', '<(SHARED_INTERMEDIATE_DIR)/src', # for inspector ], + 'dependencies': [ + '<(protocol_tool_path)/inspector_protocol.gyp:crdtp', + ], 'actions': [ { 'action_name': 'convert_node_protocol_to_json', @@ -92,7 +86,7 @@ ], 'action': [ '<(python)', - 'tools/inspector_protocol/convert_protocol_to_json.py', + '<(protocol_tool_path)/convert_protocol_to_json.py', '<@(_inputs)', '<@(_outputs)', ], @@ -111,8 +105,9 @@ 'process_outputs_as_sources': 1, 'action': [ '<(python)', - 'tools/inspector_protocol/code_generator.py', - '--jinja_dir', '<@(protocol_tool_path)', + '<(protocol_tool_path)/code_generator.py', + '--inspector_protocol_dir', '<(protocol_tool_path)', + '--jinja_dir', '<(jinja_dir)', '--output_base', '<(SHARED_INTERMEDIATE_DIR)/src/', '--config', 'src/inspector/node_protocol_config.json', ], @@ -129,7 +124,7 @@ ], 'action': [ '<(python)', - 'tools/inspector_protocol/concatenate_protocols.py', + '<(protocol_tool_path)/concatenate_protocols.py', '<@(_inputs)', '<@(_outputs)', ], diff --git a/src/inspector/node_json.cc b/src/inspector/node_json.cc new file mode 100644 index 00000000000000..d8aacbdf1a8fc8 --- /dev/null +++ b/src/inspector/node_json.cc @@ -0,0 +1,190 @@ +#include "node_json.h" + +#include "crdtp/json.h" + +namespace node { +namespace inspector { + +using crdtp::ParserHandler; +using crdtp::span; +using crdtp::Status; +using protocol::Binary; +using protocol::BinaryValue; +using protocol::DictionaryValue; +using protocol::FundamentalValue; +using protocol::ListValue; +using protocol::String; +using protocol::StringUtil; +using protocol::StringValue; +using protocol::Value; + +namespace { + +// Uses the parsing events received from driver of `ParserHandler` +// (e.g. crdtp::json::ParseJSON) into a protocol::Value instance. +class ValueParserHandler : public ParserHandler { + public: + // Provides the parsed protocol::Value. + std::unique_ptr<Value> ReleaseRoot() { return std::move(root_); } + + // The first parsing error encountered; `status().ok()` is the default. + Status status() const { return status_; } + + private: + // Implementation of `ParserHandler`. + void HandleMapBegin() override { + if (!status_.ok()) return; + std::unique_ptr<DictionaryValue> dict = DictionaryValue::create(); + DictionaryValue* dict_ptr = dict.get(); + AddValueToParent(std::move(dict)); + stack_.emplace_back(dict_ptr); + } + + void HandleMapEnd() override { + if (!status_.ok()) return; + DCHECK(!stack_.empty()); + DCHECK(stack_.back().is_dict); + stack_.pop_back(); + } + + void HandleArrayBegin() override { + if (!status_.ok()) return; + std::unique_ptr<ListValue> list = ListValue::create(); + ListValue* list_ptr = list.get(); + AddValueToParent(std::move(list)); + stack_.emplace_back(list_ptr); + } + + void HandleArrayEnd() override { + if (!status_.ok()) return; + DCHECK(!stack_.empty()); + DCHECK(!stack_.back().is_dict); + stack_.pop_back(); + } + + void HandleString8(span<uint8_t> chars) override { + AddStringToParent(StringUtil::fromUTF8(chars.data(), chars.size())); + } + + void HandleString16(span<uint16_t> chars) override { + AddStringToParent(StringUtil::fromUTF16(chars.data(), chars.size())); + } + + void HandleBinary(span<uint8_t> bytes) override { + AddValueToParent( + BinaryValue::create(Binary::fromSpan(bytes.data(), bytes.size()))); + } + + void HandleDouble(double value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleInt32(int32_t value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleBool(bool value) override { + AddValueToParent(FundamentalValue::create(value)); + } + + void HandleNull() override { AddValueToParent(Value::null()); } + + void HandleError(Status error) override { status_ = error; } + + // Adding strings and values to the parent value. + // Strings are handled separately because they can be keys for + // dictionary values. + void AddStringToParent(String str) { + if (!status_.ok()) return; + if (!root_) { + DCHECK(!key_is_pending_); + root_ = StringValue::create(str); + } else if (stack_.back().is_dict) { + // If we already have a pending key, then this is the value of the + // key/value pair. Otherwise, it's the new pending key. + if (key_is_pending_) { + stack_.back().dict->setString(pending_key_, str); + key_is_pending_ = false; + } else { + pending_key_ = std::move(str); + key_is_pending_ = true; + } + } else { // Top of the stack is a list. + DCHECK(!key_is_pending_); + stack_.back().list->pushValue(StringValue::create(str)); + } + } + + void AddValueToParent(std::unique_ptr<Value> value) { + if (!status_.ok()) return; + if (!root_) { + DCHECK(!key_is_pending_); + root_ = std::move(value); + } else if (stack_.back().is_dict) { + DCHECK(key_is_pending_); + stack_.back().dict->setValue(pending_key_, std::move(value)); + key_is_pending_ = false; + } else { // Top of the stack is a list. + DCHECK(!key_is_pending_); + stack_.back().list->pushValue(std::move(value)); + } + } + + // `status_.ok()` is the default; if we receive an error event + // we keep the first one and stop modifying any other state. + Status status_; + + // The root of the parsed protocol::Value tree. + std::unique_ptr<Value> root_; + + // If root_ is a list or a dictionary, this stack keeps track of + // the container we're currently parsing as well as its ancestors. + struct ContainerState { + explicit ContainerState(DictionaryValue* dict) + : is_dict(true), dict(dict) {} + explicit ContainerState(ListValue* list) : is_dict(false), list(list) {} + + bool is_dict; + union { + DictionaryValue* dict; + ListValue* list; + }; + }; + std::vector<ContainerState> stack_; + + // For maps, keys and values are alternating events, so we keep the + // key around and process it when the value arrives. + bool key_is_pending_ = false; + String pending_key_; +}; +} // anonymous namespace + +std::unique_ptr<Value> JsonUtil::ParseJSON(const uint8_t* chars, size_t size) { + ValueParserHandler handler; + crdtp::json::ParseJSON(span<uint8_t>(chars, size), &handler); + if (handler.status().ok()) return handler.ReleaseRoot(); + return nullptr; +} + +std::unique_ptr<Value> JsonUtil::ParseJSON(const uint16_t* chars, size_t size) { + ValueParserHandler handler; + crdtp::json::ParseJSON(span<uint16_t>(chars, size), &handler); + if (handler.status().ok()) return handler.ReleaseRoot(); + return nullptr; +} + +std::unique_ptr<Value> JsonUtil::parseJSON(const std::string_view string) { + if (string.empty()) return nullptr; + + return ParseJSON(reinterpret_cast<const uint8_t*>(string.data()), + string.size()); +} + +std::unique_ptr<Value> JsonUtil::parseJSON(v8_inspector::StringView string) { + if (string.length() == 0) return nullptr; + if (string.is8Bit()) return ParseJSON(string.characters8(), string.length()); + return ParseJSON(string.characters16(), string.length()); +} + +} // namespace inspector +} // namespace node diff --git a/src/inspector/node_json.h b/src/inspector/node_json.h new file mode 100644 index 00000000000000..88bc705fa288d2 --- /dev/null +++ b/src/inspector/node_json.h @@ -0,0 +1,24 @@ +#ifndef SRC_INSPECTOR_NODE_JSON_H_ +#define SRC_INSPECTOR_NODE_JSON_H_ + +#include "node/inspector/protocol/Protocol.h" + +namespace node { +namespace inspector { + +struct JsonUtil { + // Parse s JSON string into protocol::Value. + static std::unique_ptr<protocol::Value> ParseJSON(const uint8_t* chars, + size_t size); + static std::unique_ptr<protocol::Value> ParseJSON(const uint16_t* chars, + size_t size); + + static std::unique_ptr<protocol::Value> parseJSON(const std::string_view); + static std::unique_ptr<protocol::Value> parseJSON( + v8_inspector::StringView view); +}; + +} // namespace inspector +} // namespace node + +#endif // SRC_INSPECTOR_NODE_JSON_H_ diff --git a/src/inspector/node_protocol_config.json b/src/inspector/node_protocol_config.json index 4ef37856068093..959a1f4eb1b67a 100644 --- a/src/inspector/node_protocol_config.json +++ b/src/inspector/node_protocol_config.json @@ -1,6 +1,6 @@ { "protocol": { - "path": "node_protocol.json", + "path": "node_protocol.pdl", "package": "src/node/inspector/protocol", "output": "node/inspector/protocol", "namespace": ["node", "inspector", "protocol"] @@ -18,5 +18,8 @@ "package": "src/node/inspector/protocol", "output": "node/inspector/protocol", "string_header": "inspector/node_string.h" + }, + "crdtp": { + "dir": "crdtp" } } diff --git a/src/inspector/node_string.cc b/src/inspector/node_string.cc index c62e7ed30c4e19..d83c53c81ca774 100644 --- a/src/inspector/node_string.cc +++ b/src/inspector/node_string.cc @@ -1,78 +1,57 @@ #include "node_string.h" +#include "crdtp/json.h" #include "node/inspector/protocol/Protocol.h" #include "simdutf.h" #include "util-inl.h" -namespace node { -namespace inspector { -namespace protocol { -namespace StringUtil { - -size_t kNotFound = std::string::npos; +namespace crdtp { -// NOLINTNEXTLINE(runtime/references) V8 API requirement -void builderAppendQuotedString(StringBuilder& builder, - const std::string_view string) { - builder.put('"'); - if (!string.empty()) { - size_t expected_utf16_length = - simdutf::utf16_length_from_utf8(string.data(), string.length()); - MaybeStackBuffer<char16_t> buffer(expected_utf16_length); - // simdutf::convert_utf8_to_utf16 returns zero in case of error. - size_t utf16_length = simdutf::convert_utf8_to_utf16( - string.data(), string.length(), buffer.out()); - // We have that utf16_length == expected_utf16_length if and only - // if the input was a valid UTF-8 string. - if (utf16_length != 0) { - CHECK_EQ(expected_utf16_length, utf16_length); - escapeWideStringForJSON(reinterpret_cast<const uint16_t*>(buffer.out()), - utf16_length, - &builder); - } // Otherwise, we had an invalid UTF-8 input. +bool ProtocolTypeTraits<std::string>::Deserialize(DeserializerState* state, + std::string* value) { + if (state->tokenizer()->TokenTag() == cbor::CBORTokenTag::STRING8) { + span<uint8_t> cbor_span = state->tokenizer()->GetString8(); + value->assign(reinterpret_cast<const char*>(cbor_span.data()), + cbor_span.size()); + return true; } - builder.put('"'); -} + CHECK(state->tokenizer()->TokenTag() == cbor::CBORTokenTag::STRING16); + span<uint8_t> utf16le = state->tokenizer()->GetString16WireRep(); -std::unique_ptr<Value> parseJSON(const std::string_view string) { - if (string.empty()) - return nullptr; - size_t expected_utf16_length = - simdutf::utf16_length_from_utf8(string.data(), string.length()); - MaybeStackBuffer<char16_t> buffer(expected_utf16_length); - // simdutf::convert_utf8_to_utf16 returns zero in case of error. - size_t utf16_length = simdutf::convert_utf8_to_utf16( - string.data(), string.length(), buffer.out()); - // We have that utf16_length == expected_utf16_length if and only - // if the input was a valid UTF-8 string. - if (utf16_length == 0) return nullptr; // We had an invalid UTF-8 input. - CHECK_EQ(expected_utf16_length, utf16_length); - return parseJSONCharacters(reinterpret_cast<const uint16_t*>(buffer.out()), - utf16_length); + value->assign(node::inspector::protocol::StringUtil::fromUTF16LE( + reinterpret_cast<const uint16_t*>(utf16le.data()), + utf16le.size() / sizeof(uint16_t))); + return true; } -std::unique_ptr<Value> parseJSON(v8_inspector::StringView string) { - if (string.length() == 0) - return nullptr; - if (string.is8Bit()) - return parseJSONCharacters(string.characters8(), string.length()); - return parseJSONCharacters(string.characters16(), string.length()); +void ProtocolTypeTraits<std::string>::Serialize(const std::string& value, + std::vector<uint8_t>* bytes) { + cbor::EncodeString8(SpanFrom(value), bytes); } -String StringViewToUtf8(v8_inspector::StringView view) { +} // namespace crdtp + +namespace node { +namespace inspector { +namespace protocol { + +String StringUtil::StringViewToUtf8(v8_inspector::StringView view) { if (view.length() == 0) return ""; if (view.is8Bit()) { return std::string(reinterpret_cast<const char*>(view.characters8()), view.length()); } - const char16_t* source = - reinterpret_cast<const char16_t*>(view.characters16()); + return fromUTF16(view.characters16(), view.length()); +} + +String StringUtil::fromUTF16(const uint16_t* data, size_t length) { + auto casted_data = reinterpret_cast<const char16_t*>(data); size_t expected_utf8_length = - simdutf::utf8_length_from_utf16(source, view.length()); + simdutf::utf8_length_from_utf16(casted_data, length); MaybeStackBuffer<char> buffer(expected_utf8_length); - // convert_utf16_to_utf8 returns zero in case of error. + // simdutf::convert_utf16_to_utf8 returns zero in case of error. size_t utf8_length = - simdutf::convert_utf16_to_utf8(source, view.length(), buffer.out()); + simdutf::convert_utf16_to_utf8(casted_data, length, buffer.out()); // We have that utf8_length == expected_utf8_length if and only // if the input was a valid UTF-16 string. Otherwise, utf8_length // must be zero. @@ -81,43 +60,18 @@ String StringViewToUtf8(v8_inspector::StringView view) { return String(buffer.out(), utf8_length); } -String fromDouble(double d) { - std::ostringstream stream; - stream.imbue(std::locale::classic()); // Ignore current locale - stream << std::fixed << d; - return stream.str(); -} - -double toDouble(const char* buffer, size_t length, bool* ok) { - std::istringstream stream(std::string(buffer, length)); - stream.imbue(std::locale::classic()); // Ignore current locale - double d; - stream >> d; - *ok = !stream.fail(); - return d; -} - -ProtocolMessage jsonToMessage(String message) { - return message; -} - -ProtocolMessage binaryToMessage(std::vector<uint8_t> message) { - return std::string(reinterpret_cast<const char*>(message.data()), - message.size()); -} - -String fromUTF8(const uint8_t* data, size_t length) { +String StringUtil::fromUTF8(const uint8_t* data, size_t length) { return std::string(reinterpret_cast<const char*>(data), length); } -String fromUTF16(const uint16_t* data, size_t length) { +String StringUtil::fromUTF16LE(const uint16_t* data, size_t length) { auto casted_data = reinterpret_cast<const char16_t*>(data); size_t expected_utf8_length = - simdutf::utf8_length_from_utf16(casted_data, length); + simdutf::utf8_length_from_utf16le(casted_data, length); MaybeStackBuffer<char> buffer(expected_utf8_length); - // simdutf::convert_utf16_to_utf8 returns zero in case of error. + // simdutf::convert_utf16le_to_utf8 returns zero in case of error. size_t utf8_length = - simdutf::convert_utf16_to_utf8(casted_data, length, buffer.out()); + simdutf::convert_utf16le_to_utf8(casted_data, length, buffer.out()); // We have that utf8_length == expected_utf8_length if and only // if the input was a valid UTF-16 string. Otherwise, utf8_length // must be zero. @@ -126,11 +80,11 @@ String fromUTF16(const uint16_t* data, size_t length) { return String(buffer.out(), utf8_length); } -const uint8_t* CharactersUTF8(const std::string_view s) { +const uint8_t* StringUtil::CharactersUTF8(const std::string_view s) { return reinterpret_cast<const uint8_t*>(s.data()); } -size_t CharacterCount(const std::string_view s) { +size_t StringUtil::CharacterCount(const std::string_view s) { // The utf32_length_from_utf8 function calls count_utf8. // The count_utf8 function counts the number of code points // (characters) in the string, assuming that the string is valid Unicode. @@ -138,8 +92,6 @@ size_t CharacterCount(const std::string_view s) { return simdutf::utf32_length_from_utf8(s.data(), s.length()); } -} // namespace StringUtil } // namespace protocol } // namespace inspector } // namespace node - diff --git a/src/inspector/node_string.h b/src/inspector/node_string.h index 369041841ef96d..d529d1337be0e2 100644 --- a/src/inspector/node_string.h +++ b/src/inspector/node_string.h @@ -3,6 +3,7 @@ #ifndef SRC_INSPECTOR_NODE_STRING_H_ #define SRC_INSPECTOR_NODE_STRING_H_ +#include "crdtp/protocol_core.h" #include "util.h" #include "v8-inspector.h" @@ -10,6 +11,16 @@ #include <sstream> #include <string> +namespace crdtp { + +template <> +struct ProtocolTypeTraits<std::string> { + static bool Deserialize(DeserializerState* state, std::string* value); + static void Serialize(const std::string& value, std::vector<uint8_t>* bytes); +}; + +} // namespace crdtp + namespace node { namespace inspector { namespace protocol { @@ -20,71 +31,25 @@ using String = std::string; using StringBuilder = std::ostringstream; using ProtocolMessage = std::string; -namespace StringUtil { -// NOLINTNEXTLINE(runtime/references) This is V8 API... -inline void builderAppend(StringBuilder& builder, char c) { - builder.put(c); -} - -// NOLINTNEXTLINE(runtime/references) -inline void builderAppend(StringBuilder& builder, const char* value, - size_t length) { - builder.write(value, length); -} - -// NOLINTNEXTLINE(runtime/references) -inline void builderAppend(StringBuilder& builder, const char* value) { - builderAppend(builder, value, std::strlen(value)); -} - -// NOLINTNEXTLINE(runtime/references) -inline void builderAppend(StringBuilder& builder, const String& string) { - builder << string; -} +// Implements StringUtil methods used in `inspector_protocol/lib/`. +struct StringUtil { + // Convert Utf16 in local endianness to Utf8 if needed. + static String StringViewToUtf8(v8_inspector::StringView view); + static String fromUTF16(const uint16_t* data, size_t length); -// NOLINTNEXTLINE(runtime/references) -inline void builderReserve(StringBuilder& builder, size_t) { - // ostringstream does not have a counterpart -} -inline String substring(const String& string, size_t start, size_t count) { - return string.substr(start, count); -} -inline String fromInteger(int n) { - return std::to_string(n); -} -inline String builderToString(const StringBuilder& builder) { - return builder.str(); -} -inline size_t find(const String& string, const char* substring) { - return string.find(substring); -} -String fromDouble(double d); -double toDouble(const char* buffer, size_t length, bool* ok); + static String fromUTF8(const uint8_t* data, size_t length); + static String fromUTF16LE(const uint16_t* data, size_t length); + static const uint8_t* CharactersUTF8(const std::string_view s); + static size_t CharacterCount(const std::string_view s); -String StringViewToUtf8(v8_inspector::StringView view); - -// NOLINTNEXTLINE(runtime/references) -void builderAppendQuotedString(StringBuilder& builder, const std::string_view); -std::unique_ptr<Value> parseJSON(const std::string_view); -std::unique_ptr<Value> parseJSON(v8_inspector::StringView view); - -ProtocolMessage jsonToMessage(String message); -ProtocolMessage binaryToMessage(std::vector<uint8_t> message); -String fromUTF8(const uint8_t* data, size_t length); -String fromUTF16(const uint16_t* data, size_t length); -const uint8_t* CharactersUTF8(const std::string_view s); -size_t CharacterCount(const std::string_view s); - -// Unimplemented. The generated code will fall back to CharactersUTF8(). -inline uint8_t* CharactersLatin1(const std::string_view s) { - return nullptr; -} -inline const uint16_t* CharactersUTF16(const std::string_view s) { - return nullptr; -} - -extern size_t kNotFound; -} // namespace StringUtil + // Unimplemented. The generated code will fall back to CharactersUTF8(). + inline static uint8_t* CharactersLatin1(const std::string_view s) { + return nullptr; + } + inline static const uint16_t* CharactersUTF16(const std::string_view s) { + return nullptr; + } +}; // A read-only sequence of uninterpreted bytes with reference-counted storage. // Though the templates for generating the protocol bindings reference diff --git a/src/inspector/runtime_agent.cc b/src/inspector/runtime_agent.cc index 94aa8bef405b66..d3bc60741d9256 100644 --- a/src/inspector/runtime_agent.cc +++ b/src/inspector/runtime_agent.cc @@ -19,7 +19,7 @@ void RuntimeAgent::Wire(UberDispatcher* dispatcher) { DispatchResponse RuntimeAgent::notifyWhenWaitingForDisconnect(bool enabled) { notify_when_waiting_for_disconnect_ = enabled; - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse RuntimeAgent::enable() { @@ -27,12 +27,12 @@ DispatchResponse RuntimeAgent::enable() { if (is_waiting_for_debugger_) { frontend_->waitingForDebugger(); } - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse RuntimeAgent::disable() { enabled_ = false; - return DispatchResponse::OK(); + return DispatchResponse::Success(); } void RuntimeAgent::setWaitingForDebugger() { diff --git a/src/inspector/tracing_agent.cc b/src/inspector/tracing_agent.cc index e7b6d3b3ea63bd..40c8aea35c931c 100644 --- a/src/inspector/tracing_agent.cc +++ b/src/inspector/tracing_agent.cc @@ -1,4 +1,5 @@ #include "tracing_agent.h" +#include "crdtp/json.h" #include "main_thread_interface.h" #include "node_internals.h" #include "node_v8_platform-inl.h" @@ -69,9 +70,16 @@ class SendMessageRequest : public Request { thread->GetObjectIfExists(object_id_)); if (frontend_wrapper == nullptr) return; auto frontend = frontend_wrapper->get(); - if (frontend != nullptr) { - frontend->sendRawJSONNotification(message_); + if (frontend == nullptr) { + return; } + std::vector<uint8_t> cbor; + crdtp::Status status = + crdtp::json::ConvertJSONToCBOR(crdtp::SpanFrom(message_), &cbor); + DCHECK(status.ok()); + USE(status); + + frontend->sendRawNotification(Serializable::From(cbor)); } private: @@ -136,11 +144,11 @@ void TracingAgent::Wire(UberDispatcher* dispatcher) { DispatchResponse TracingAgent::start( std::unique_ptr<protocol::NodeTracing::TraceConfig> traceConfig) { if (!trace_writer_.empty()) { - return DispatchResponse::Error( + return DispatchResponse::InvalidRequest( "Call NodeTracing::end to stop tracing before updating the config"); } if (!env_->owns_process_state()) { - return DispatchResponse::Error( + return DispatchResponse::InvalidRequest( "Tracing properties can only be changed through main thread sessions"); } @@ -151,7 +159,8 @@ DispatchResponse TracingAgent::start( categories_set.insert((*categories)[i]); if (categories_set.empty()) - return DispatchResponse::Error("At least one category should be enabled"); + return DispatchResponse::InvalidRequest( + "At least one category should be enabled"); tracing::AgentWriterHandle* writer = GetTracingAgentWriter(); if (writer != nullptr) { @@ -161,13 +170,13 @@ DispatchResponse TracingAgent::start( frontend_object_id_, main_thread_), tracing::Agent::kIgnoreDefaultCategories); } - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse TracingAgent::stop() { trace_writer_.reset(); frontend_->tracingComplete(); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse TracingAgent::getCategories( @@ -195,7 +204,7 @@ DispatchResponse TracingAgent::getCategories( categories_list->emplace_back("node.threadpoolwork.sync"); categories_list->emplace_back("node.vm.script"); categories_list->emplace_back("v8"); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } } // namespace protocol diff --git a/src/inspector/worker_agent.cc b/src/inspector/worker_agent.cc index 81706572e646ea..87da164ee9e9b9 100644 --- a/src/inspector/worker_agent.cc +++ b/src/inspector/worker_agent.cc @@ -93,13 +93,13 @@ void WorkerAgent::Wire(UberDispatcher* dispatcher) { DispatchResponse WorkerAgent::sendMessageToWorker(const String& message, const String& sessionId) { workers_->Receive(sessionId, message); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse WorkerAgent::enable(bool waitForDebuggerOnStart) { auto manager = manager_.lock(); if (!manager) { - return DispatchResponse::OK(); + return DispatchResponse::Success(); } if (!event_handle_) { std::unique_ptr<AgentWorkerInspectorDelegate> delegate( @@ -107,17 +107,17 @@ DispatchResponse WorkerAgent::enable(bool waitForDebuggerOnStart) { event_handle_ = manager->SetAutoAttach(std::move(delegate)); } event_handle_->SetWaitOnStart(waitForDebuggerOnStart); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse WorkerAgent::disable() { event_handle_.reset(); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } DispatchResponse WorkerAgent::detach(const String& sessionId) { workers_->Detached(sessionId); - return DispatchResponse::OK(); + return DispatchResponse::Success(); } void NodeWorkers::WorkerCreated(const std::string& title, diff --git a/src/inspector/worker_inspector.h b/src/inspector/worker_inspector.h index d3254d5aa0ebe4..24403bb1704c40 100644 --- a/src/inspector/worker_inspector.h +++ b/src/inspector/worker_inspector.h @@ -5,6 +5,7 @@ #error("This header can only be used when inspector is enabled") #endif +#include <cstdint> #include <memory> #include <string> #include <unordered_map> diff --git a/src/inspector_agent.cc b/src/inspector_agent.cc index bb39a0cb42a7be..be767c1825d64f 100644 --- a/src/inspector_agent.cc +++ b/src/inspector_agent.cc @@ -1,8 +1,10 @@ #include "inspector_agent.h" +#include "crdtp/json.h" #include "env-inl.h" #include "inspector/main_thread_interface.h" #include "inspector/network_inspector.h" +#include "inspector/node_json.h" #include "inspector/node_string.h" #include "inspector/runtime_agent.h" #include "inspector/tracing_agent.h" @@ -37,6 +39,12 @@ namespace node { namespace inspector { namespace { + +using crdtp::Dispatchable; +using crdtp::Serializable; +using crdtp::UberDispatcher; +using crdtp::json::ConvertCBORToJSON; +using crdtp::json::ConvertJSONToCBOR; using v8::Context; using v8::Function; using v8::HandleScope; @@ -45,7 +53,6 @@ using v8::Local; using v8::Message; using v8::Object; using v8::Value; - using v8_inspector::StringBuffer; using v8_inspector::StringView; using v8_inspector::V8Inspector; @@ -222,7 +229,7 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, this, StringView(), V8Inspector::ClientTrustLevel::kFullyTrusted); - node_dispatcher_ = std::make_unique<protocol::UberDispatcher>(this); + node_dispatcher_ = std::make_unique<UberDispatcher>(this); tracing_agent_ = std::make_unique<protocol::TracingAgent>(env, main_thread_); tracing_agent_->Wire(node_dispatcher_.get()); @@ -252,8 +259,7 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, void emitNotificationFromBackend(const StringView& event, const StringView& params) { std::unique_ptr<protocol::DictionaryValue> value = - protocol::DictionaryValue::cast( - protocol::StringUtil::parseJSON(params)); + protocol::DictionaryValue::cast(JsonUtil::parseJSON(params)); std::string raw_event = protocol::StringUtil::StringViewToUtf8(event); std::string domain_name = raw_event.substr(0, raw_event.find('.')); std::string event_name = raw_event.substr(raw_event.find('.') + 1); @@ -270,19 +276,24 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, per_process::Debug(DebugCategory::INSPECTOR_SERVER, "[inspector received] %s\n", raw_message); - std::unique_ptr<protocol::DictionaryValue> value = - protocol::DictionaryValue::cast( - protocol::StringUtil::parseJSON(message)); - int call_id; - std::string method; - node_dispatcher_->parseCommand(value.get(), &call_id, &method); + + std::vector<uint8_t> cbor_buffer; + ConvertJSONToCBOR(crdtp::SpanFrom(raw_message), &cbor_buffer); + Dispatchable dispatchable(crdtp::SpanFrom(cbor_buffer)); + crdtp::span<uint8_t> method = dispatchable.Method(); if (v8_inspector::V8InspectorSession::canDispatchMethod( - Utf8ToStringView(method)->string())) { + StringView(method.data(), method.size()))) { session_->dispatchProtocolMessage(message); - } else { - node_dispatcher_->dispatch( - call_id, method, std::move(value), raw_message); + return; } + UberDispatcher::DispatchResult result = + node_dispatcher_->Dispatch(dispatchable); + if (!result.MethodFound()) { + per_process::Debug(DebugCategory::INSPECTOR_SERVER, + "[inspector] method not found\n"); + // Fall through to send a method not found error. + } + result.Run(); } void schedulePauseOnNextStatement(const std::string& reason) { @@ -308,18 +319,23 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, } private: + // v8_inspector::V8Inspector::Channel void sendResponse( int callId, std::unique_ptr<v8_inspector::StringBuffer> message) override { sendMessageToFrontend(message->string()); } + // v8_inspector::V8Inspector::Channel void sendNotification( std::unique_ptr<v8_inspector::StringBuffer> message) override { sendMessageToFrontend(message->string()); } + // v8_inspector::V8Inspector::Channel void flushProtocolNotifications() override { } + // crdtp::FrontendChannel + void FlushProtocolNotifications() override {} void sendMessageToFrontend(const StringView& message) { if (per_process::enabled_debug_list.enabled( @@ -336,20 +352,34 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, sendMessageToFrontend(Utf8ToStringView(message)->string()); } - using Serializable = protocol::Serializable; - - void sendProtocolResponse(int callId, + // crdtp::FrontendChannel + void SendProtocolResponse(int callId, std::unique_ptr<Serializable> message) override { - sendMessageToFrontend(message->serializeToJSON()); + std::vector<uint8_t> cbor = message->Serialize(); + std::string json; + crdtp::Status status = ConvertCBORToJSON(crdtp::SpanFrom(cbor), &json); + DCHECK(status.ok()); + USE(status); + + sendMessageToFrontend(json); } - void sendProtocolNotification( + + // crdtp::FrontendChannel + void SendProtocolNotification( std::unique_ptr<Serializable> message) override { - sendMessageToFrontend(message->serializeToJSON()); + std::vector<uint8_t> cbor = message->Serialize(); + std::string json; + crdtp::Status status = ConvertCBORToJSON(crdtp::SpanFrom(cbor), &json); + DCHECK(status.ok()); + USE(status); + + sendMessageToFrontend(json); } - void fallThrough(int callId, - const std::string& method, - const std::string& message) override { + // crdtp::FrontendChannel + void FallThrough(int call_id, + crdtp::span<uint8_t> method, + crdtp::span<uint8_t> message) override { DCHECK(false); } @@ -359,7 +389,7 @@ class ChannelImpl final : public v8_inspector::V8Inspector::Channel, std::unique_ptr<NetworkInspector> network_inspector_; std::unique_ptr<InspectorSessionDelegate> delegate_; std::unique_ptr<v8_inspector::V8InspectorSession> session_; - std::unique_ptr<protocol::UberDispatcher> node_dispatcher_; + std::unique_ptr<UberDispatcher> node_dispatcher_; bool prevent_shutdown_; bool retaining_context_; }; diff --git a/src/inspector_js_api.cc b/src/inspector_js_api.cc index 282575601545d1..63ceaccdf2406b 100644 --- a/src/inspector_js_api.cc +++ b/src/inspector_js_api.cc @@ -333,7 +333,7 @@ void Url(const FunctionCallbackInfo<Value>& args) { if (url.empty()) { return; } - args.GetReturnValue().Set(OneByteString(env->isolate(), url.c_str())); + args.GetReturnValue().Set(OneByteString(env->isolate(), url)); } void Initialize(Local<Object> target, Local<Value> unused, diff --git a/src/internal_only_v8.cc b/src/internal_only_v8.cc index 83b165129cc899..487b8b7adfd356 100644 --- a/src/internal_only_v8.cc +++ b/src/internal_only_v8.cc @@ -10,6 +10,7 @@ using v8::FunctionCallbackInfo; using v8::Global; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::Object; using v8::Value; @@ -56,7 +57,7 @@ void QueryObjects(const FunctionCallbackInfo<Value>& args) { PrototypeChainHas prototype_chain_has(context, proto.As<Object>()); std::vector<Global<Object>> out; isolate->GetHeapProfiler()->QueryObjects(context, &prototype_chain_has, &out); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(out.size()); for (size_t i = 0; i < out.size(); ++i) { result.push_back(out[i].Get(isolate)); diff --git a/src/js_native_api.h b/src/js_native_api.h index 07e3df13407030..8ef079b5158249 100644 --- a/src/js_native_api.h +++ b/src/js_native_api.h @@ -92,8 +92,7 @@ NAPI_EXTERN napi_status NAPI_CDECL napi_create_string_utf16(napi_env env, const char16_t* str, size_t length, napi_value* result); -#ifdef NAPI_EXPERIMENTAL -#define NODE_API_EXPERIMENTAL_HAS_EXTERNAL_STRINGS +#if NAPI_VERSION >= 10 NAPI_EXTERN napi_status NAPI_CDECL node_api_create_external_string_latin1( napi_env env, char* str, @@ -110,17 +109,14 @@ node_api_create_external_string_utf16(napi_env env, void* finalize_hint, napi_value* result, bool* copied); -#endif // NAPI_EXPERIMENTAL -#ifdef NAPI_EXPERIMENTAL -#define NODE_API_EXPERIMENTAL_HAS_PROPERTY_KEYS NAPI_EXTERN napi_status NAPI_CDECL node_api_create_property_key_latin1( napi_env env, const char* str, size_t length, napi_value* result); NAPI_EXTERN napi_status NAPI_CDECL node_api_create_property_key_utf8( napi_env env, const char* str, size_t length, napi_value* result); NAPI_EXTERN napi_status NAPI_CDECL node_api_create_property_key_utf16( napi_env env, const char16_t* str, size_t length, napi_value* result); -#endif // NAPI_EXPERIMENTAL +#endif // NAPI_VERSION >= 10 NAPI_EXTERN napi_status NAPI_CDECL napi_create_symbol(napi_env env, napi_value description, diff --git a/src/js_native_api_v8.cc b/src/js_native_api_v8.cc index 97a59e4a17f548..de3d1f2f183274 100644 --- a/src/js_native_api_v8.cc +++ b/src/js_native_api_v8.cc @@ -2753,7 +2753,7 @@ napi_status NAPI_CDECL napi_create_reference(napi_env env, CHECK_ARG(env, result); v8::Local<v8::Value> v8_value = v8impl::V8LocalValueFromJsValue(value); - if (env->module_api_version != NAPI_VERSION_EXPERIMENTAL) { + if (env->module_api_version < 10) { if (!(v8_value->IsObject() || v8_value->IsFunction() || v8_value->IsSymbol())) { return napi_set_last_error(env, napi_invalid_arg); diff --git a/src/js_native_api_v8.h b/src/js_native_api_v8.h index 99bb30cfbe9a9d..27aeac589b19cd 100644 --- a/src/js_native_api_v8.h +++ b/src/js_native_api_v8.h @@ -234,11 +234,11 @@ inline napi_status napi_set_last_error(node_api_basic_env basic_env, CHECK_ENV_NOT_IN_GC((env)); \ RETURN_STATUS_IF_FALSE( \ (env), (env)->last_exception.IsEmpty(), napi_pending_exception); \ - RETURN_STATUS_IF_FALSE((env), \ - (env)->can_call_into_js(), \ - (env->module_api_version == NAPI_VERSION_EXPERIMENTAL \ - ? napi_cannot_run_js \ - : napi_pending_exception)); \ + RETURN_STATUS_IF_FALSE( \ + (env), \ + (env)->can_call_into_js(), \ + (env->module_api_version >= 10 ? napi_cannot_run_js \ + : napi_pending_exception)); \ napi_clear_last_error((env)); \ v8impl::TryCatch try_catch((env)) diff --git a/src/module_wrap.cc b/src/module_wrap.cc index 8be6dbd1d0262c..649ec428e2dd6f 100644 --- a/src/module_wrap.cc +++ b/src/module_wrap.cc @@ -23,25 +23,35 @@ using node::contextify::ContextifyContext; using v8::Array; using v8::ArrayBufferView; using v8::Context; +using v8::Data; using v8::EscapableHandleScope; +using v8::Exception; using v8::FixedArray; using v8::Function; using v8::FunctionCallbackInfo; using v8::FunctionTemplate; +using v8::Global; using v8::HandleScope; using v8::Int32; using v8::Integer; using v8::Isolate; +using v8::Just; using v8::Local; +using v8::LocalVector; +using v8::Maybe; using v8::MaybeLocal; using v8::MemorySpan; +using v8::Message; using v8::MicrotaskQueue; using v8::Module; using v8::ModuleRequest; +using v8::Name; +using v8::Null; using v8::Object; using v8::ObjectTemplate; using v8::PrimitiveArray; using v8::Promise; +using v8::PromiseRejectEvent; using v8::ScriptCompiler; using v8::ScriptOrigin; using v8::String; @@ -103,7 +113,7 @@ ModuleWrap* ModuleWrap::GetFromModule(Environment* env, return nullptr; } -v8::Maybe<bool> ModuleWrap::CheckUnsettledTopLevelAwait() { +Maybe<bool> ModuleWrap::CheckUnsettledTopLevelAwait() { Isolate* isolate = env()->isolate(); Local<Context> context = env()->context(); @@ -115,17 +125,17 @@ v8::Maybe<bool> ModuleWrap::CheckUnsettledTopLevelAwait() { Local<Module> module = module_.Get(isolate); // It's a synthetic module, likely a facade wrapping CJS. if (!module->IsSourceTextModule()) { - return v8::Just(true); + return Just(true); } if (!module->IsGraphAsync()) { // There is no TLA, no need to check. - return v8::Just(true); + return Just(true); } auto stalled_messages = std::get<1>(module->GetStalledTopLevelAwaitMessages(isolate)); if (stalled_messages.empty()) { - return v8::Just(true); + return Just(true); } if (env()->options()->warnings) { @@ -138,7 +148,7 @@ v8::Maybe<bool> ModuleWrap::CheckUnsettledTopLevelAwait() { } } - return v8::Just(false); + return Just(false); } Local<PrimitiveArray> ModuleWrap::GetHostDefinedOptions( @@ -229,7 +239,7 @@ void ModuleWrap::New(const FunctionCallbackInfo<Value>& args) { Local<Array> export_names_arr = args[2].As<Array>(); uint32_t len = export_names_arr->Length(); - std::vector<Local<String>> export_names(len); + LocalVector<String> export_names(realm->isolate(), len); for (uint32_t i = 0; i < len; i++) { Local<Value> export_name_val = export_names_arr->Get(context, i).ToLocalChecked(); @@ -245,7 +255,7 @@ void ModuleWrap::New(const FunctionCallbackInfo<Value>& args) { // When we are compiling for the default loader, this will be // std::nullopt, and CompileSourceTextModule() should use // on-disk cache. - std::optional<v8::ScriptCompiler::CachedData*> user_cached_data; + std::optional<ScriptCompiler::CachedData*> user_cached_data; if (id_symbol != realm->isolate_data()->source_text_module_default_hdo()) { user_cached_data = nullptr; @@ -324,7 +334,7 @@ void ModuleWrap::New(const FunctionCallbackInfo<Value>& args) { // be stored in an internal field. Local<Object> context_object = context->GetExtrasBindingObject(); Local<Value> synthetic_evaluation_step = - synthetic ? args[3] : Undefined(realm->isolate()).As<v8::Value>(); + synthetic ? args[3] : Undefined(realm->isolate()).As<Value>(); ModuleWrap* obj = new ModuleWrap( realm, that, module, url, context_object, synthetic_evaluation_step); @@ -405,22 +415,22 @@ static Local<Object> createImportAttributesContainer( const int elements_per_attribute) { CHECK_EQ(raw_attributes->Length() % elements_per_attribute, 0); size_t num_attributes = raw_attributes->Length() / elements_per_attribute; - std::vector<Local<v8::Name>> names(num_attributes); - std::vector<Local<v8::Value>> values(num_attributes); + LocalVector<Name> names(isolate, num_attributes); + LocalVector<Value> values(isolate, num_attributes); for (int i = 0; i < raw_attributes->Length(); i += elements_per_attribute) { int idx = i / elements_per_attribute; - names[idx] = raw_attributes->Get(realm->context(), i).As<v8::Name>(); + names[idx] = raw_attributes->Get(realm->context(), i).As<Name>(); values[idx] = raw_attributes->Get(realm->context(), i + 1).As<Value>(); } return Object::New( - isolate, v8::Null(isolate), names.data(), values.data(), num_attributes); + isolate, Null(isolate), names.data(), values.data(), num_attributes); } static Local<Array> createModuleRequestsContainer( Realm* realm, Isolate* isolate, Local<FixedArray> raw_requests) { - std::vector<Local<Value>> requests(raw_requests->Length()); + LocalVector<Value> requests(isolate, raw_requests->Length()); for (int i = 0; i < raw_requests->Length(); i++) { Local<ModuleRequest> module_request = @@ -434,7 +444,7 @@ static Local<Array> createModuleRequestsContainer( Local<Object> attributes = createImportAttributesContainer(realm, isolate, raw_attributes, 3); - Local<v8::Name> names[] = { + Local<Name> names[] = { realm->isolate_data()->specifier_string(), realm->isolate_data()->attributes_string(), }; @@ -444,8 +454,8 @@ static Local<Array> createModuleRequestsContainer( }; DCHECK_EQ(arraysize(names), arraysize(values)); - Local<Object> request = Object::New( - isolate, v8::Null(isolate), names, values, arraysize(names)); + Local<Object> request = + Object::New(isolate, Null(isolate), names, values, arraysize(names)); requests[i] = request; } @@ -481,11 +491,11 @@ void ModuleWrap::Link(const FunctionCallbackInfo<Value>& args) { Local<Array> modules = args[1].As<Array>(); CHECK_EQ(specifiers->Length(), modules->Length()); - std::vector<v8::Global<Value>> specifiers_buffer; + std::vector<Global<Value>> specifiers_buffer; if (FromV8Array(context, specifiers, &specifiers_buffer).IsNothing()) { return; } - std::vector<v8::Global<Value>> modules_buffer; + std::vector<Global<Value>> modules_buffer; if (FromV8Array(context, modules, &modules_buffer).IsNothing()) { return; } @@ -669,10 +679,10 @@ void ModuleWrap::EvaluateSync(const FunctionCallbackInfo<Value>& args) { // before handler was added which would remove it from the unhandled // rejection handling, since we are converting it into an error and throw // from here directly. - Local<Value> type = v8::Integer::New( - isolate, - static_cast<int32_t>( - v8::PromiseRejectEvent::kPromiseHandlerAddedAfterReject)); + Local<Value> type = + Integer::New(isolate, + static_cast<int32_t>( + PromiseRejectEvent::kPromiseHandlerAddedAfterReject)); Local<Value> args[] = {type, promise, Undefined(isolate)}; if (env->promise_reject_callback() ->Call(context, Undefined(isolate), arraysize(args), args) @@ -680,8 +690,7 @@ void ModuleWrap::EvaluateSync(const FunctionCallbackInfo<Value>& args) { return; } Local<Value> exception = promise->Result(); - Local<v8::Message> message = - v8::Exception::CreateMessage(isolate, exception); + Local<Message> message = Exception::CreateMessage(isolate, exception); AppendExceptionLine( env, exception, message, ErrorHandlingMode::MODULE_ERROR); isolate->ThrowException(exception); @@ -718,15 +727,15 @@ void ModuleWrap::GetNamespaceSync(const FunctionCallbackInfo<Value>& args) { Local<Module> module = obj->module_.Get(isolate); switch (module->GetStatus()) { - case v8::Module::Status::kUninstantiated: - case v8::Module::Status::kInstantiating: + case Module::Status::kUninstantiated: + case Module::Status::kInstantiating: return realm->env()->ThrowError( "Cannot get namespace, module has not been instantiated"); - case v8::Module::Status::kInstantiated: - case v8::Module::Status::kEvaluated: - case v8::Module::Status::kErrored: + case Module::Status::kInstantiated: + case Module::Status::kEvaluated: + case Module::Status::kErrored: break; - case v8::Module::Status::kEvaluating: + case Module::Status::kEvaluating: UNREACHABLE(); } @@ -746,14 +755,14 @@ void ModuleWrap::GetNamespace(const FunctionCallbackInfo<Value>& args) { Local<Module> module = obj->module_.Get(isolate); switch (module->GetStatus()) { - case v8::Module::Status::kUninstantiated: - case v8::Module::Status::kInstantiating: + case Module::Status::kUninstantiated: + case Module::Status::kInstantiating: return realm->env()->ThrowError( "cannot get namespace, module has not been instantiated"); - case v8::Module::Status::kInstantiated: - case v8::Module::Status::kEvaluating: - case v8::Module::Status::kEvaluated: - case v8::Module::Status::kErrored: + case Module::Status::kInstantiated: + case Module::Status::kEvaluating: + case Module::Status::kEvaluated: + case Module::Status::kErrored: break; default: UNREACHABLE(); @@ -825,7 +834,7 @@ MaybeLocal<Module> ModuleWrap::ResolveModuleCallback( static MaybeLocal<Promise> ImportModuleDynamically( Local<Context> context, - Local<v8::Data> host_defined_options, + Local<Data> host_defined_options, Local<Value> resource_name, Local<String> specifier, Local<FixedArray> import_attributes) { @@ -1011,7 +1020,7 @@ void ModuleWrap::CreateCachedData(const FunctionCallbackInfo<Value>& args) { Local<Module> module = obj->module_.Get(isolate); - CHECK_LT(module->GetStatus(), v8::Module::Status::kEvaluating); + CHECK_LT(module->GetStatus(), Module::Status::kEvaluating); Local<UnboundModuleScript> unbound_module_script = module->GetUnboundModuleScript(); diff --git a/src/node_api.cc b/src/node_api.cc index cccb2fd0a17f3a..1638d096969826 100644 --- a/src/node_api.cc +++ b/src/node_api.cc @@ -93,11 +93,11 @@ void node_napi_env__::CallbackIntoModule(T&& call) { return; } node::Environment* node_env = env->node_env(); - // If the module api version is less than NAPI_VERSION_EXPERIMENTAL, - // and the option --force-node-api-uncaught-exceptions-policy is not - // specified, emit a warning about the uncaught exception instead of - // triggering uncaught exception event. - if (env->module_api_version < NAPI_VERSION_EXPERIMENTAL && + // If the module api version is less than 10, and the option + // --force-node-api-uncaught-exceptions-policy is not specified, emit a + // warning about the uncaught exception instead of triggering the uncaught + // exception event. + if (env->module_api_version < 10 && !node_env->options()->force_node_api_uncaught_exceptions_policy && !enforceUncaughtExceptionPolicy) { ProcessEmitDeprecationWarning( @@ -678,11 +678,13 @@ node::addon_context_register_func get_node_api_context_register_func( const char* module_name, int32_t module_api_version) { static_assert( - NODE_API_SUPPORTED_VERSION_MAX == 9, + NODE_API_SUPPORTED_VERSION_MAX == 10, "New version of Node-API requires adding another else-if statement below " "for the new version and updating this assert condition."); if (module_api_version == 9) { return node_api_context_register_func<9>; + } else if (module_api_version == 10) { + return node_api_context_register_func<10>; } else if (module_api_version == NAPI_VERSION_EXPERIMENTAL) { return node_api_context_register_func<NAPI_VERSION_EXPERIMENTAL>; } else if (module_api_version >= NODE_API_SUPPORTED_VERSION_MIN && diff --git a/src/node_api.h b/src/node_api.h index 718f7541002eb9..35e5c3e49dd426 100644 --- a/src/node_api.h +++ b/src/node_api.h @@ -90,9 +90,6 @@ EXTERN_C_START // Deprecated. Replaced by symbol-based registration defined by NAPI_MODULE // and NAPI_MODULE_INIT macros. -#if defined(__cplusplus) && __cplusplus >= 201402L -[[deprecated]] -#endif NAPI_EXTERN void NAPI_CDECL napi_module_register(napi_module* mod); @@ -136,8 +133,7 @@ napi_create_external_buffer(napi_env env, napi_value* result); #endif // NODE_API_NO_EXTERNAL_BUFFERS_ALLOWED -#ifdef NAPI_EXPERIMENTAL -#define NODE_API_EXPERIMENTAL_HAS_CREATE_BUFFER_FROM_ARRAYBUFFER +#if NAPI_VERSION >= 10 NAPI_EXTERN napi_status NAPI_CDECL node_api_create_buffer_from_arraybuffer(napi_env env, @@ -145,7 +141,7 @@ node_api_create_buffer_from_arraybuffer(napi_env env, size_t byte_offset, size_t byte_length, napi_value* result); -#endif // NAPI_EXPERIMENTAL +#endif // NAPI_VERSION >= 10 NAPI_EXTERN napi_status NAPI_CDECL napi_create_buffer_copy(napi_env env, size_t length, diff --git a/src/node_builtins.cc b/src/node_builtins.cc index 9aaf5626fcfe4a..894fd515202cc3 100644 --- a/src/node_builtins.cc +++ b/src/node_builtins.cc @@ -78,7 +78,7 @@ void BuiltinLoader::GetNatives(Local<Name> property, Local<Object> out = Object::New(isolate); auto source = env->builtin_loader()->source_.read(); for (auto const& x : *source) { - Local<String> key = OneByteString(isolate, x.first.c_str(), x.first.size()); + Local<String> key = OneByteString(isolate, x.first); out->Set(context, key, x.second.ToStringChecked(isolate)).FromJust(); } info.GetReturnValue().Set(out); @@ -119,6 +119,9 @@ BuiltinLoader::BuiltinCategories BuiltinLoader::GetBuiltinCategories() const { builtin_categories.cannot_be_required = std::set<std::string> { #if !HAVE_INSPECTOR "inspector", "inspector/promises", "internal/util/inspector", + "internal/inspector/network", "internal/inspector/network_http", + "internal/inspector/network_undici", "internal/inspector_async_hook", + "internal/inspector_network_tracking", #endif // !HAVE_INSPECTOR #if !NODE_USE_V8_PLATFORM || !defined(NODE_HAVE_I18N_SUPPORT) @@ -204,7 +207,7 @@ MaybeLocal<String> BuiltinLoader::LoadBuiltinSource(Isolate* isolate, uv_err_name(r), uv_strerror(r), filename); - Local<String> message = OneByteString(isolate, buf.c_str()); + Local<String> message = OneByteString(isolate, buf); isolate->ThrowException(v8::Exception::Error(message)); return MaybeLocal<String>(); } @@ -274,8 +277,7 @@ MaybeLocal<Function> BuiltinLoader::LookupAndCompileInternal( } std::string filename_s = std::string("node:") + id; - Local<String> filename = - OneByteString(isolate, filename_s.c_str(), filename_s.size()); + Local<String> filename = OneByteString(isolate, filename_s); ScriptOrigin origin(filename, 0, 0, true); BuiltinCodeCacheData cached_data{}; @@ -441,9 +443,6 @@ MaybeLocal<Value> BuiltinLoader::CompileAndCall(Local<Context> context, const char* id, Realm* realm) { Isolate* isolate = context->GetIsolate(); - // Arguments must match the parameters specified in - // BuiltinLoader::LookupAndCompile(). - std::vector<Local<Value>> arguments; // Detects parameters of the scripts based on module ids. // internal/bootstrap/realm: process, getLinkedBinding, // getInternalBinding, primordials @@ -458,30 +457,33 @@ MaybeLocal<Value> BuiltinLoader::CompileAndCall(Local<Context> context, .ToLocal(&get_internal_binding)) { return MaybeLocal<Value>(); } - arguments = {realm->process_object(), - get_linked_binding, - get_internal_binding, - realm->primordials()}; + Local<Value> arguments[] = {realm->process_object(), + get_linked_binding, + get_internal_binding, + realm->primordials()}; + return CompileAndCall( + context, id, arraysize(arguments), &arguments[0], realm); } else if (strncmp(id, "internal/main/", strlen("internal/main/")) == 0 || strncmp(id, "internal/bootstrap/", strlen("internal/bootstrap/")) == 0) { // internal/main/*, internal/bootstrap/*: process, require, // internalBinding, primordials - arguments = {realm->process_object(), - realm->builtin_module_require(), - realm->internal_binding_loader(), - realm->primordials()}; - } else { - // This should be invoked with the other CompileAndCall() methods, as - // we are unable to generate the arguments. - // Currently there are two cases: - // internal/per_context/*: the arguments are generated in - // InitializePrimordials() - // all the other cases: the arguments are generated in the JS-land loader. - UNREACHABLE(); - } - return CompileAndCall(context, id, arguments.size(), arguments.data(), realm); + Local<Value> arguments[] = {realm->process_object(), + realm->builtin_module_require(), + realm->internal_binding_loader(), + realm->primordials()}; + return CompileAndCall( + context, id, arraysize(arguments), &arguments[0], realm); + } + + // This should be invoked with the other CompileAndCall() methods, as + // we are unable to generate the arguments. + // Currently there are two cases: + // internal/per_context/*: the arguments are generated in + // InitializePrimordials() + // all the other cases: the arguments are generated in the JS-land loader. + UNREACHABLE(); } MaybeLocal<Value> BuiltinLoader::CompileAndCall(Local<Context> context, @@ -592,7 +594,7 @@ void BuiltinLoader::GetBuiltinCategories( return; if (result ->Set(context, - OneByteString(isolate, "cannotBeRequired"), + FIXED_ONE_BYTE_STRING(isolate, "cannotBeRequired"), cannot_be_required_js) .IsNothing()) return; @@ -601,7 +603,7 @@ void BuiltinLoader::GetBuiltinCategories( return; if (result ->Set(context, - OneByteString(isolate, "canBeRequired"), + FIXED_ONE_BYTE_STRING(isolate, "canBeRequired"), can_be_required_js) .IsNothing()) { return; @@ -624,7 +626,7 @@ void BuiltinLoader::GetCacheUsage(const FunctionCallbackInfo<Value>& args) { } if (result ->Set(context, - OneByteString(isolate, "compiledWithCache"), + FIXED_ONE_BYTE_STRING(isolate, "compiledWithCache"), builtins_with_cache_js) .IsNothing()) { return; @@ -636,7 +638,7 @@ void BuiltinLoader::GetCacheUsage(const FunctionCallbackInfo<Value>& args) { } if (result ->Set(context, - OneByteString(isolate, "compiledWithoutCache"), + FIXED_ONE_BYTE_STRING(isolate, "compiledWithoutCache"), builtins_without_cache_js) .IsNothing()) { return; @@ -648,7 +650,7 @@ void BuiltinLoader::GetCacheUsage(const FunctionCallbackInfo<Value>& args) { } if (result ->Set(context, - OneByteString(isolate, "compiledInSnapshot"), + FIXED_ONE_BYTE_STRING(isolate, "compiledInSnapshot"), builtins_in_snapshot_js) .IsNothing()) { return; diff --git a/src/node_constants.cc b/src/node_constants.cc index 149c7c10732291..13263149c111be 100644 --- a/src/node_constants.cc +++ b/src/node_constants.cc @@ -1336,33 +1336,47 @@ void CreatePerContextProperties(Local<Object> target, // Define libuv constants. NODE_DEFINE_CONSTANT(os_constants, UV_UDP_REUSEADDR); - os_constants->Set(env->context(), - OneByteString(isolate, "dlopen"), - dlopen_constants).Check(); - os_constants->Set(env->context(), - OneByteString(isolate, "errno"), - err_constants).Check(); - os_constants->Set(env->context(), - OneByteString(isolate, "signals"), - sig_constants).Check(); - os_constants->Set(env->context(), - OneByteString(isolate, "priority"), - priority_constants).Check(); - target->Set(env->context(), - OneByteString(isolate, "os"), - os_constants).Check(); - target->Set(env->context(), - OneByteString(isolate, "fs"), - fs_constants).Check(); - target->Set(env->context(), - OneByteString(isolate, "crypto"), - crypto_constants).Check(); - target->Set(env->context(), - OneByteString(isolate, "zlib"), - zlib_constants).Check(); - target->Set(env->context(), - OneByteString(isolate, "trace"), - trace_constants).Check(); + os_constants + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "dlopen"), + dlopen_constants) + .Check(); + os_constants + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "errno"), + err_constants) + .Check(); + os_constants + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "signals"), + sig_constants) + .Check(); + os_constants + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "priority"), + priority_constants) + .Check(); + target + ->Set(env->context(), FIXED_ONE_BYTE_STRING(isolate, "os"), os_constants) + .Check(); + target + ->Set(env->context(), FIXED_ONE_BYTE_STRING(isolate, "fs"), fs_constants) + .Check(); + target + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "crypto"), + crypto_constants) + .Check(); + target + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "zlib"), + zlib_constants) + .Check(); + target + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "trace"), + trace_constants) + .Check(); } } // namespace constants diff --git a/src/node_contextify.cc b/src/node_contextify.cc index 5f4529262a464e..e57880c5e9f07c 100644 --- a/src/node_contextify.cc +++ b/src/node_contextify.cc @@ -58,6 +58,7 @@ using v8::Isolate; using v8::JustVoid; using v8::KeyCollectionMode; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::MeasureMemoryExecution; @@ -830,7 +831,7 @@ void ContextifyContext::IndexedPropertyEnumeratorCallback( } // Filter out non-number property names. - std::vector<Local<Value>> indices; + LocalVector<Value> indices(isolate); for (uint32_t i = 0; i < properties->Length(); i++) { Local<Value> prop = properties_vec[i].Get(isolate); if (!prop->IsNumber()) { @@ -1778,20 +1779,20 @@ static void CompileFunctionForCJSLoader( } Local<Value> undefined = v8::Undefined(isolate); - std::vector<Local<Name>> names = { + Local<Name> names[] = { env->cached_data_rejected_string(), env->source_map_url_string(), env->function_string(), FIXED_ONE_BYTE_STRING(isolate, "canParseAsESM"), }; - std::vector<Local<Value>> values = { + Local<Value> values[] = { Boolean::New(isolate, cache_rejected), fn.IsEmpty() ? undefined : fn->GetScriptOrigin().SourceMapUrl(), fn.IsEmpty() ? undefined : fn.As<Value>(), Boolean::New(isolate, can_parse_as_esm), }; Local<Object> result = Object::New( - isolate, v8::Null(isolate), names.data(), values.data(), names.size()); + isolate, v8::Null(isolate), &names[0], &values[0], arraysize(names)); args.GetReturnValue().Set(result); } diff --git a/src/node_credentials.cc b/src/node_credentials.cc index 0152f6269c83ef..de6e48a90552c7 100644 --- a/src/node_credentials.cc +++ b/src/node_credentials.cc @@ -99,15 +99,7 @@ bool SafeGetenv(const char* key, std::string* text, Environment* env) { *text = value.value(); } - auto options = - (env != nullptr ? env->options() - : per_process::cli_options->per_isolate->per_env); - - if (options->trace_env) { - fprintf(stderr, "[--trace-env] get environment variable \"%s\"\n", key); - - PrintTraceEnvStack(options); - } + TraceEnvVar(env, "get", key); return has_env; } diff --git a/src/node_env_var.cc b/src/node_env_var.cc index 82b8231c435775..70ff9da2537e93 100644 --- a/src/node_env_var.cc +++ b/src/node_env_var.cc @@ -21,6 +21,7 @@ using v8::Intercepted; using v8::Isolate; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::Name; @@ -273,7 +274,7 @@ void MapKVStore::Delete(Isolate* isolate, Local<String> key) { Local<Array> MapKVStore::Enumerate(Isolate* isolate) const { Mutex::ScopedLock lock(mutex_); - std::vector<Local<Value>> values; + LocalVector<Value> values(isolate); values.reserve(map_.size()); for (const auto& pair : map_) { values.emplace_back( @@ -337,19 +338,73 @@ Maybe<void> KVStore::AssignToObject(v8::Isolate* isolate, return JustVoid(); } -void PrintTraceEnvStack(Environment* env) { - PrintTraceEnvStack(env->options()); -} +struct TraceEnvVarOptions { + bool print_message : 1 = 0; + bool print_js_stack : 1 = 0; + bool print_native_stack : 1 = 0; +}; -void PrintTraceEnvStack(std::shared_ptr<EnvironmentOptions> options) { - if (options->trace_env_native_stack) { +template <typename... Args> +inline void TraceEnvVarImpl(Environment* env, + TraceEnvVarOptions options, + const char* format, + Args&&... args) { + if (options.print_message) { + fprintf(stderr, format, std::forward<Args>(args)...); + } + if (options.print_native_stack) { DumpNativeBacktrace(stderr); } - if (options->trace_env_js_stack) { + if (options.print_js_stack) { DumpJavaScriptBacktrace(stderr); } } +TraceEnvVarOptions GetTraceEnvVarOptions(Environment* env) { + TraceEnvVarOptions options; + auto cli_options = env != nullptr + ? env->options() + : per_process::cli_options->per_isolate->per_env; + if (cli_options->trace_env) { + options.print_message = 1; + }; + if (cli_options->trace_env_js_stack) { + options.print_js_stack = 1; + }; + if (cli_options->trace_env_native_stack) { + options.print_native_stack = 1; + }; + return options; +} + +void TraceEnvVar(Environment* env, const char* message) { + TraceEnvVarImpl( + env, GetTraceEnvVarOptions(env), "[--trace-env] %s\n", message); +} + +void TraceEnvVar(Environment* env, const char* message, const char* key) { + TraceEnvVarImpl(env, + GetTraceEnvVarOptions(env), + "[--trace-env] %s \"%s\"\n", + message, + key); +} + +void TraceEnvVar(Environment* env, + const char* message, + v8::Local<v8::String> key) { + TraceEnvVarOptions options = GetTraceEnvVarOptions(env); + if (options.print_message) { + Utf8Value key_utf8(env->isolate(), key); + TraceEnvVarImpl(env, + options, + "[--trace-env] %s \"%.*s\"\n", + message, + static_cast<int>(key_utf8.length()), + key_utf8.out()); + } +} + static Intercepted EnvGetter(Local<Name> property, const PropertyCallbackInfo<Value>& info) { Environment* env = Environment::GetCurrent(info); @@ -363,14 +418,7 @@ static Intercepted EnvGetter(Local<Name> property, env->env_vars()->Get(env->isolate(), property.As<String>()); bool has_env = !value_string.IsEmpty(); - if (env->options()->trace_env) { - Utf8Value key(env->isolate(), property.As<String>()); - fprintf(stderr, - "[--trace-env] get environment variable \"%.*s\"\n", - static_cast<int>(key.length()), - key.out()); - PrintTraceEnvStack(env); - } + TraceEnvVar(env, "get", property.As<String>()); if (has_env) { info.GetReturnValue().Set(value_string.ToLocalChecked()); @@ -410,14 +458,7 @@ static Intercepted EnvSetter(Local<Name> property, } env->env_vars()->Set(env->isolate(), key, value_string); - if (env->options()->trace_env) { - Utf8Value key_utf8(env->isolate(), key); - fprintf(stderr, - "[--trace-env] set environment variable \"%.*s\"\n", - static_cast<int>(key_utf8.length()), - key_utf8.out()); - PrintTraceEnvStack(env); - } + TraceEnvVar(env, "set", key); return Intercepted::kYes; } @@ -429,16 +470,7 @@ static Intercepted EnvQuery(Local<Name> property, if (property->IsString()) { int32_t rc = env->env_vars()->Query(env->isolate(), property.As<String>()); bool has_env = (rc != -1); - - if (env->options()->trace_env) { - Utf8Value key_utf8(env->isolate(), property.As<String>()); - fprintf(stderr, - "[--trace-env] query environment variable \"%.*s\": %s\n", - static_cast<int>(key_utf8.length()), - key_utf8.out(), - has_env ? "is set" : "is not set"); - PrintTraceEnvStack(env); - } + TraceEnvVar(env, "query", property.As<String>()); if (has_env) { // Return attributes for the property. info.GetReturnValue().Set(v8::None); @@ -455,14 +487,7 @@ static Intercepted EnvDeleter(Local<Name> property, if (property->IsString()) { env->env_vars()->Delete(env->isolate(), property.As<String>()); - if (env->options()->trace_env) { - Utf8Value key_utf8(env->isolate(), property.As<String>()); - fprintf(stderr, - "[--trace-env] delete environment variable \"%.*s\"\n", - static_cast<int>(key_utf8.length()), - key_utf8.out()); - PrintTraceEnvStack(env); - } + TraceEnvVar(env, "delete", property.As<String>()); } // process.env never has non-configurable properties, so always @@ -475,11 +500,7 @@ static void EnvEnumerator(const PropertyCallbackInfo<Array>& info) { Environment* env = Environment::GetCurrent(info); CHECK(env->has_run_bootstrapping_code()); - if (env->options()->trace_env) { - fprintf(stderr, "[--trace-env] enumerate environment variables\n"); - - PrintTraceEnvStack(env); - } + TraceEnvVar(env, "enumerate environment variables"); info.GetReturnValue().Set( env->env_vars()->Enumerate(env->isolate())); diff --git a/src/node_errors.cc b/src/node_errors.cc index 65f95c3157add2..609601328f7f5f 100644 --- a/src/node_errors.cc +++ b/src/node_errors.cc @@ -136,8 +136,13 @@ static std::string GetErrorSource(Isolate* isolate, // Print (filename):(line number): (message). ScriptOrigin origin = message->GetScriptOrigin(); - node::Utf8Value filename(isolate, message->GetScriptResourceName()); - const char* filename_string = *filename; + std::string filename_string; + if (message->GetScriptResourceName()->IsUndefined()) { + filename_string = "<anonymous_script>"; + } else { + node::Utf8Value filename(isolate, message->GetScriptResourceName()); + filename_string = filename.ToString(); + } int linenum = message->GetLineNumber(context).FromJust(); int script_start = (linenum - origin.LineOffset()) == 1 diff --git a/src/node_errors.h b/src/node_errors.h index 15d7143299fe3f..f3c3dfa0435872 100644 --- a/src/node_errors.h +++ b/src/node_errors.h @@ -118,7 +118,7 @@ void OOMErrorHandler(const char* location, const v8::OOMDetails& details); inline v8::Local<v8::Object> code( \ v8::Isolate* isolate, const char* format, Args&&... args) { \ std::string message = SPrintF(format, std::forward<Args>(args)...); \ - v8::Local<v8::String> js_code = OneByteString(isolate, #code); \ + v8::Local<v8::String> js_code = FIXED_ONE_BYTE_STRING(isolate, #code); \ v8::Local<v8::String> js_msg = \ v8::String::NewFromUtf8(isolate, \ message.c_str(), \ @@ -129,7 +129,7 @@ void OOMErrorHandler(const char* location, const v8::OOMDetails& details); ->ToObject(isolate->GetCurrentContext()) \ .ToLocalChecked(); \ e->Set(isolate->GetCurrentContext(), \ - OneByteString(isolate, "code"), \ + FIXED_ONE_BYTE_STRING(isolate, "code"), \ js_code) \ .Check(); \ return e; \ diff --git a/src/node_file.cc b/src/node_file.cc index 4bdbfa1be2c22f..1d22e19f16d5ad 100644 --- a/src/node_file.cc +++ b/src/node_file.cc @@ -67,6 +67,7 @@ using v8::Integer; using v8::Isolate; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Maybe; using v8::MaybeLocal; using v8::Nothing; @@ -896,8 +897,8 @@ void AfterScanDir(uv_fs_t* req) { Local<Value> error; int r; - std::vector<Local<Value>> name_v; - std::vector<Local<Value>> type_v; + LocalVector<Value> name_v(isolate); + LocalVector<Value> type_v(isolate); const bool with_file_types = req_wrap->with_file_types(); @@ -1405,16 +1406,15 @@ static void ReadLink(const FunctionCallbackInfo<Value>& args) { const char* link_path = static_cast<const char*>(req_wrap_sync.req.ptr); Local<Value> error; - MaybeLocal<Value> rc = StringBytes::Encode(isolate, - link_path, - encoding, - &error); - if (rc.IsEmpty()) { + Local<Value> ret; + if (!StringBytes::Encode(isolate, link_path, encoding, &error) + .ToLocal(&ret)) { + DCHECK(!error.IsEmpty()); env->isolate()->ThrowException(error); return; } - args.GetReturnValue().Set(rc.ToLocalChecked()); + args.GetReturnValue().Set(ret); } } @@ -1816,15 +1816,16 @@ static void MKDir(const FunctionCallbackInfo<Value>& args) { } if (!req_wrap_sync.continuation_data()->first_path().empty()) { Local<Value> error; + Local<Value> ret; std::string first_path(req_wrap_sync.continuation_data()->first_path()); - MaybeLocal<Value> path = StringBytes::Encode(env->isolate(), - first_path.c_str(), - UTF8, &error); - if (path.IsEmpty()) { + if (!StringBytes::Encode( + env->isolate(), first_path.c_str(), UTF8, &error) + .ToLocal(&ret)) { + DCHECK(!error.IsEmpty()); env->isolate()->ThrowException(error); return; } - args.GetReturnValue().Set(path.ToLocalChecked()); + args.GetReturnValue().Set(ret); } } else { SyncCallAndThrowOnError(env, &req_wrap_sync, uv_fs_mkdir, *path, mode); @@ -1865,16 +1866,15 @@ static void RealPath(const FunctionCallbackInfo<Value>& args) { const char* link_path = static_cast<const char*>(req_wrap_sync.req.ptr); Local<Value> error; - MaybeLocal<Value> rc = StringBytes::Encode(isolate, - link_path, - encoding, - &error); - if (rc.IsEmpty()) { + Local<Value> ret; + if (!StringBytes::Encode(isolate, link_path, encoding, &error) + .ToLocal(&ret)) { + DCHECK(!error.IsEmpty()); env->isolate()->ThrowException(error); return; } - args.GetReturnValue().Set(rc.ToLocalChecked()); + args.GetReturnValue().Set(ret); } } @@ -1946,8 +1946,8 @@ static void ReadDir(const FunctionCallbackInfo<Value>& args) { } int r; - std::vector<Local<Value>> name_v; - std::vector<Local<Value>> type_v; + LocalVector<Value> name_v(isolate); + LocalVector<Value> type_v(isolate); for (;;) { uv_dirent_t ent; @@ -1961,17 +1961,15 @@ static void ReadDir(const FunctionCallbackInfo<Value>& args) { } Local<Value> error; - MaybeLocal<Value> filename = StringBytes::Encode(isolate, - ent.name, - encoding, - &error); - - if (filename.IsEmpty()) { + Local<Value> fn; + if (!StringBytes::Encode(isolate, ent.name, encoding, &error) + .ToLocal(&fn)) { + DCHECK(!error.IsEmpty()); isolate->ThrowException(error); return; } - name_v.push_back(filename.ToLocalChecked()); + name_v.push_back(fn); if (with_types) { type_v.emplace_back(Integer::New(isolate, ent.type)); @@ -2385,7 +2383,6 @@ static void WriteString(const FunctionCallbackInfo<Value>& args) { } } else { // write(fd, string, pos, enc, undefined, ctx) CHECK_EQ(argc, 6); - FSReqWrapSync req_wrap_sync; FSReqBase::FSReqBuffer stack_buffer; if (buf == nullptr) { if (!StringBytes::StorageSize(isolate, value, enc).To(&len)) @@ -2399,6 +2396,7 @@ static void WriteString(const FunctionCallbackInfo<Value>& args) { buf = *stack_buffer; } uv_buf_t uvbuf = uv_buf_init(buf, len); + FSReqWrapSync req_wrap_sync("write"); FS_SYNC_TRACE_BEGIN(write); int bytesWritten = SyncCall(env, args[5], &req_wrap_sync, "write", uv_fs_write, fd, &uvbuf, 1, pos); @@ -2992,13 +2990,14 @@ static void Mkdtemp(const FunctionCallbackInfo<Value>& args) { return; } Local<Value> error; - MaybeLocal<Value> rc = - StringBytes::Encode(isolate, req_wrap_sync.req.path, encoding, &error); - if (rc.IsEmpty()) { + Local<Value> ret; + if (!StringBytes::Encode(isolate, req_wrap_sync.req.path, encoding, &error) + .ToLocal(&ret)) { + DCHECK(!error.IsEmpty()); env->isolate()->ThrowException(error); return; } - args.GetReturnValue().Set(rc.ToLocalChecked()); + args.GetReturnValue().Set(ret); } } @@ -3048,21 +3047,8 @@ static void GetFormatOfExtensionlessFile( } #ifdef _WIN32 -std::wstring ConvertToWideString(const std::string& str) { - int size_needed = MultiByteToWideChar( - CP_UTF8, 0, &str[0], static_cast<int>(str.size()), nullptr, 0); - std::wstring wstrTo(size_needed, 0); - MultiByteToWideChar(CP_UTF8, - 0, - &str[0], - static_cast<int>(str.size()), - &wstrTo[0], - size_needed); - return wstrTo; -} - #define BufferValueToPath(str) \ - std::filesystem::path(ConvertToWideString(str.ToString())) + std::filesystem::path(ConvertToWideString(str.ToString(), CP_UTF8)) std::string ConvertWideToUTF8(const std::wstring& wstr) { if (wstr.empty()) return std::string(); @@ -3310,9 +3296,11 @@ void BindingData::LegacyMainResolve(const FunctionCallbackInfo<Value>& args) { for (int i = 0; i < legacy_main_extensions_with_main_end; i++) { file_path = *initial_file_path + std::string(legacy_main_extensions[i]); // TODO(anonrig): Remove this when ToNamespacedPath supports std::string - Local<Value> local_file_path = - Buffer::Copy(env->isolate(), file_path.c_str(), file_path.size()) - .ToLocalChecked(); + Local<Value> local_file_path; + if (!Buffer::Copy(env->isolate(), file_path.c_str(), file_path.size()) + .ToLocal(&local_file_path)) { + return; + } BufferValue buff_file_path(isolate, local_file_path); ToNamespacedPath(env, &buff_file_path); @@ -3345,9 +3333,11 @@ void BindingData::LegacyMainResolve(const FunctionCallbackInfo<Value>& args) { i++) { file_path = *initial_file_path + std::string(legacy_main_extensions[i]); // TODO(anonrig): Remove this when ToNamespacedPath supports std::string - Local<Value> local_file_path = - Buffer::Copy(env->isolate(), file_path.c_str(), file_path.size()) - .ToLocalChecked(); + Local<Value> local_file_path; + if (!Buffer::Copy(env->isolate(), file_path.c_str(), file_path.size()) + .ToLocal(&local_file_path)) { + return; + } BufferValue buff_file_path(isolate, local_file_path); ToNamespacedPath(env, &buff_file_path); diff --git a/src/node_http2.cc b/src/node_http2.cc index 5363bbdc4dc57a..b23f4080a6d4e4 100644 --- a/src/node_http2.cc +++ b/src/node_http2.cc @@ -37,6 +37,7 @@ using v8::HandleScope; using v8::Integer; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::MaybeLocal; using v8::NewStringType; using v8::Number; @@ -724,13 +725,14 @@ MaybeLocal<Object> Http2SessionPerformanceEntryTraits::GetDetails( SET(stream_average_duration_string, stream_average_duration) SET(stream_count_string, stream_count) - if (!obj->Set( - env->context(), - env->type_string(), - OneByteString( - env->isolate(), - (entry.details.session_type == NGHTTP2_SESSION_SERVER) - ? "server" : "client")).IsJust()) { + if (!obj->Set(env->context(), + env->type_string(), + FIXED_ONE_BYTE_STRING( + env->isolate(), + (entry.details.session_type == NGHTTP2_SESSION_SERVER) + ? "server" + : "client")) + .IsJust()) { return MaybeLocal<Object>(); } @@ -1631,7 +1633,7 @@ void Http2Session::HandleOriginFrame(const nghttp2_frame* frame) { nghttp2_ext_origin* origin = static_cast<nghttp2_ext_origin*>(ext.payload); size_t nov = origin->nov; - std::vector<Local<Value>> origin_v(nov); + LocalVector<Value> origin_v(isolate, nov); for (size_t i = 0; i < nov; ++i) { const nghttp2_origin_entry& entry = origin->ov[i]; diff --git a/src/node_http_parser.cc b/src/node_http_parser.cc index dfb278151c9566..6ea4aa826e1c30 100644 --- a/src/node_http_parser.cc +++ b/src/node_http_parser.cc @@ -63,6 +63,7 @@ using v8::Int32; using v8::Integer; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::MaybeLocal; using v8::Number; using v8::Object; @@ -1091,7 +1092,7 @@ void ConnectionsList::All(const FunctionCallbackInfo<Value>& args) { ASSIGN_OR_RETURN_UNWRAP(&list, args.This()); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(list->all_connections_.size()); for (auto parser : list->all_connections_) { result.emplace_back(parser->object()); @@ -1108,7 +1109,7 @@ void ConnectionsList::Idle(const FunctionCallbackInfo<Value>& args) { ASSIGN_OR_RETURN_UNWRAP(&list, args.This()); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(list->all_connections_.size()); for (auto parser : list->all_connections_) { if (parser->last_message_start_ == 0) { @@ -1127,7 +1128,7 @@ void ConnectionsList::Active(const FunctionCallbackInfo<Value>& args) { ASSIGN_OR_RETURN_UNWRAP(&list, args.This()); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(list->active_connections_.size()); for (auto parser : list->active_connections_) { result.emplace_back(parser->object()); @@ -1176,7 +1177,7 @@ void ConnectionsList::Expired(const FunctionCallbackInfo<Value>& args) { auto iter = list->active_connections_.begin(); auto end = list->active_connections_.end(); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(list->active_connections_.size()); while (iter != end) { Parser* parser = *iter; @@ -1335,8 +1336,8 @@ void CreatePerContextProperties(Local<Object> target, BindingData* const binding_data = realm->AddBindingData<BindingData>(target); if (binding_data == nullptr) return; - std::vector<Local<Value>> methods_val; - std::vector<Local<Value>> all_methods_val; + LocalVector<Value> methods_val(isolate); + LocalVector<Value> all_methods_val(isolate); #define V(num, name, string) \ methods_val.push_back(FIXED_ONE_BYTE_STRING(isolate, #string)); diff --git a/src/node_internals.h b/src/node_internals.h index 000ba16303740d..382df89a2312f7 100644 --- a/src/node_internals.h +++ b/src/node_internals.h @@ -324,8 +324,11 @@ namespace credentials { bool SafeGetenv(const char* key, std::string* text, Environment* env = nullptr); } // namespace credentials -void PrintTraceEnvStack(Environment* env); -void PrintTraceEnvStack(std::shared_ptr<EnvironmentOptions> options); +void TraceEnvVar(Environment* env, const char* message); +void TraceEnvVar(Environment* env, const char* message, const char* key); +void TraceEnvVar(Environment* env, + const char* message, + v8::Local<v8::String> key); void DefineZlibConstants(v8::Local<v8::Object> target); v8::Isolate* NewIsolate(v8::Isolate::CreateParams* params, diff --git a/src/node_messaging.cc b/src/node_messaging.cc index 7447d7c6b8a712..5bd6635264ad11 100644 --- a/src/node_messaging.cc +++ b/src/node_messaging.cc @@ -1660,7 +1660,7 @@ static void CreatePerIsolateProperties(IsolateData* isolate_data, Local<FunctionTemplate> t = FunctionTemplate::New(isolate); t->InstanceTemplate()->SetInternalFieldCount( JSTransferable::kInternalFieldCount); - t->SetClassName(OneByteString(isolate, "JSTransferable")); + t->SetClassName(FIXED_ONE_BYTE_STRING(isolate, "JSTransferable")); isolate_data->set_js_transferable_constructor_template(t); } diff --git a/src/node_modules.cc b/src/node_modules.cc index 94ed9bc4b3c157..210a01d24e1176 100644 --- a/src/node_modules.cc +++ b/src/node_modules.cc @@ -25,6 +25,7 @@ using v8::FunctionCallbackInfo; using v8::HandleScope; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::NewStringType; using v8::Object; using v8::ObjectTemplate; @@ -343,8 +344,16 @@ void BindingData::GetNearestParentPackageJSON( path_value_str.push_back(kPathSeparator); } - auto package_json = - TraverseParent(realm, std::filesystem::path(path_value_str)); + std::filesystem::path path; + +#ifdef _WIN32 + std::wstring wide_path = ConvertToWideString(path_value_str, GetACP()); + path = std::filesystem::path(wide_path); +#else + path = std::filesystem::path(path_value_str); +#endif + + auto package_json = TraverseParent(realm, path); if (package_json != nullptr) { args.GetReturnValue().Set(package_json->Serialize(realm)); @@ -369,8 +378,16 @@ void BindingData::GetNearestParentPackageJSONType( path_value_str.push_back(kPathSeparator); } - auto package_json = - TraverseParent(realm, std::filesystem::path(path_value_str)); + std::filesystem::path path; + +#ifdef _WIN32 + std::wstring wide_path = ConvertToWideString(path_value_str, GetACP()); + path = std::filesystem::path(wide_path); +#else + path = std::filesystem::path(path_value_str); +#endif + + auto package_json = TraverseParent(realm, path); if (package_json == nullptr) { return; @@ -477,11 +494,11 @@ void EnableCompileCache(const FunctionCallbackInfo<Value>& args) { } Utf8Value value(isolate, args[0]); CompileCacheEnableResult result = env->EnableCompileCache(*value); - std::vector<Local<Value>> values = { + Local<Value> values[] = { v8::Integer::New(isolate, static_cast<uint8_t>(result.status)), ToV8Value(context, result.message).ToLocalChecked(), ToV8Value(context, result.cache_directory).ToLocalChecked()}; - args.GetReturnValue().Set(Array::New(isolate, values.data(), values.size())); + args.GetReturnValue().Set(Array::New(isolate, &values[0], arraysize(values))); } void GetCompileCacheDir(const FunctionCallbackInfo<Value>& args) { @@ -522,8 +539,8 @@ void BindingData::CreatePerContextProperties(Local<Object> target, Realm* realm = Realm::GetCurrent(context); realm->AddBindingData<BindingData>(target); - std::vector<Local<Value>> compile_cache_status_values; Isolate* isolate = context->GetIsolate(); + LocalVector<Value> compile_cache_status_values(isolate); #define V(status) \ compile_cache_status_values.push_back( \ diff --git a/src/node_options.cc b/src/node_options.cc index a03daec2bd74d7..1d81079a9b7d8a 100644 --- a/src/node_options.cc +++ b/src/node_options.cc @@ -23,6 +23,7 @@ using v8::FunctionCallbackInfo; using v8::Integer; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::Map; using v8::Name; using v8::Null; @@ -108,8 +109,12 @@ void PerIsolateOptions::CheckOptions(std::vector<std::string>* errors, void EnvironmentOptions::CheckOptions(std::vector<std::string>* errors, std::vector<std::string>* argv) { if (!input_type.empty()) { - if (input_type != "commonjs" && input_type != "module") { - errors->push_back("--input-type must be \"module\" or \"commonjs\""); + if (input_type != "commonjs" && input_type != "module" && + input_type != "commonjs-typescript" && + input_type != "module-typescript") { + errors->push_back( + "--input-type must be \"module\"," + "\"commonjs\", \"module-typescript\" or \"commonjs-typescript\""); } } @@ -388,6 +393,11 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() { " (default: current working directory)", &EnvironmentOptions::diagnostic_dir, kAllowedInEnvvar); + AddOption("--disable-sigusr1", + "Disable inspector thread to be listening for SIGUSR1 signal", + &EnvironmentOptions::disable_sigusr1, + kAllowedInEnvvar, + false); AddOption("--dns-result-order", "set default value of verbatim in dns.lookup. Options are " "'ipv4first' (IPv4 addresses are placed before IPv6 addresses) " @@ -1335,8 +1345,8 @@ void GetCLIOptionsValues(const FunctionCallbackInfo<Value>& args) { Mutex::ScopedLock lock(per_process::cli_options_mutex); IterateCLIOptionsScope s(env); - std::vector<Local<Name>> option_names; - std::vector<Local<Value>> option_values; + LocalVector<Name> option_names(isolate); + LocalVector<Value> option_values(isolate); option_names.reserve(_ppop_instance.options_.size() * 2); option_values.reserve(_ppop_instance.options_.size() * 2); diff --git a/src/node_options.h b/src/node_options.h index ab6ea77b2e9ce5..621f5eca96b106 100644 --- a/src/node_options.h +++ b/src/node_options.h @@ -116,6 +116,7 @@ class EnvironmentOptions : public Options { bool abort_on_uncaught_exception = false; std::vector<std::string> conditions; bool detect_module = true; + bool disable_sigusr1 = false; bool print_required_tla = false; bool require_module = true; std::string dns_result_order; diff --git a/src/node_os.cc b/src/node_os.cc index ce2af8d83b7443..edfe34f330f73c 100644 --- a/src/node_os.cc +++ b/src/node_os.cc @@ -48,6 +48,7 @@ using v8::Int32; using v8::Integer; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::MaybeLocal; using v8::NewStringType; using v8::Null; @@ -112,7 +113,7 @@ static void GetCPUInfo(const FunctionCallbackInfo<Value>& args) { // assemble them into objects in JS than to call Object::Set() repeatedly // The array is in the format // [model, speed, (5 entries of cpu_times), model2, speed2, ...] - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(count * 7); for (int i = 0; i < count; i++) { uv_cpu_info_t* ci = cpu_infos + i; @@ -193,7 +194,7 @@ static void GetInterfaceAddresses(const FunctionCallbackInfo<Value>& args) { } Local<Value> no_scope_id = Integer::New(isolate, -1); - std::vector<Local<Value>> result; + LocalVector<Value> result(isolate); result.reserve(count * 7); for (i = 0; i < count; i++) { const char* const raw_name = interfaces[i].name; diff --git a/src/node_perf.h b/src/node_perf.h index 3e994ce5a63b7d..79b3aaf8bb7f5f 100644 --- a/src/node_perf.h +++ b/src/node_perf.h @@ -124,12 +124,12 @@ struct PerformanceEntry { } v8::Local<v8::Value> argv[] = { - OneByteString(env->isolate(), name.c_str()), - OneByteString(env->isolate(), GetPerformanceEntryTypeName(Traits::kType)), - v8::Number::New(env->isolate(), start_time), - v8::Number::New(env->isolate(), duration), - detail - }; + OneByteString(env->isolate(), name), + OneByteString(env->isolate(), + GetPerformanceEntryTypeName(Traits::kType)), + v8::Number::New(env->isolate(), start_time), + v8::Number::New(env->isolate(), duration), + detail}; node::MakeSyncCallback( env->isolate(), diff --git a/src/node_process_events.cc b/src/node_process_events.cc index 128ad9fbb1f257..8aac953b3e0db5 100644 --- a/src/node_process_events.cc +++ b/src/node_process_events.cc @@ -21,8 +21,7 @@ using v8::Value; Maybe<bool> ProcessEmitWarningSync(Environment* env, std::string_view message) { Isolate* isolate = env->isolate(); Local<Context> context = env->context(); - Local<String> message_string = - OneByteString(isolate, message.data(), message.size()); + Local<String> message_string = OneByteString(isolate, message); Local<Value> argv[] = {message_string}; Local<Function> emit_function = env->process_emit_warning_sync(); diff --git a/src/node_process_methods.cc b/src/node_process_methods.cc index 127ef63210b962..c67d1ac00a972b 100644 --- a/src/node_process_methods.cc +++ b/src/node_process_methods.cc @@ -312,12 +312,12 @@ static void GetActiveResourcesInfo(const FunctionCallbackInfo<Value>& args) { // Active timeouts resources_info.insert(resources_info.end(), env->timeout_info()[0], - OneByteString(env->isolate(), "Timeout")); + FIXED_ONE_BYTE_STRING(env->isolate(), "Timeout")); // Active immediates resources_info.insert(resources_info.end(), env->immediate_info()->ref_count(), - OneByteString(env->isolate(), "Immediate")); + FIXED_ONE_BYTE_STRING(env->isolate(), "Immediate")); args.GetReturnValue().Set( Array::New(env->isolate(), resources_info.data(), resources_info.size())); diff --git a/src/node_process_object.cc b/src/node_process_object.cc index a13f8d15724cb0..7dd24545fee674 100644 --- a/src/node_process_object.cc +++ b/src/node_process_object.cc @@ -105,12 +105,10 @@ static void SetVersions(Isolate* isolate, Local<Object> versions) { for (const auto& version : versions_array) { versions - ->DefineOwnProperty( - context, - OneByteString(isolate, version.first.data(), version.first.size()), - OneByteString( - isolate, version.second.data(), version.second.size()), - v8::ReadOnly) + ->DefineOwnProperty(context, + OneByteString(isolate, version.first), + OneByteString(isolate, version.second), + v8::ReadOnly) .Check(); } } diff --git a/src/node_root_certs.h b/src/node_root_certs.h index 2c8670be39e586..ee229fc7740627 100644 --- a/src/node_root_certs.h +++ b/src/node_root_certs.h @@ -569,27 +569,6 @@ "dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E=\n" "-----END CERTIFICATE-----", -/* SecureSign RootCA11 */ -"-----BEGIN CERTIFICATE-----\n" -"MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDErMCkGA1UE\n" -"ChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoGA1UEAxMTU2VjdXJl\n" -"U2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0MDgwNDU2NDdaMFgxCzAJBgNV\n" -"BAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZpY2F0aW9uIFNlcnZpY2VzLCBJbmMuMRww\n" -"GgYDVQQDExNTZWN1cmVTaWduIFJvb3RDQTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB\n" -"CgKCAQEA/XeqpRyQBTvLTJszi1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1y\n" -"fIw/XwFndBWW4wI8h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyK\n" -"yiyhFTOVMdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9\n" -"UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni8McDWc/V\n" -"1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsCh8U+iQIDAQABo0Iw\n" -"QDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud\n" -"EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAKChOBZmLqdWHyGcBvod7bkixTgm2E5P\n" -"7KN/ed5GIaGHd48HCJqypMWvDzKYC3xmKbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI\n" -"6Dvd5+H0LgscNFxsWEr7jIhQX5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAY\n" -"ga1lme++5Jy/xIWrQbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR\n" -"7SXf+Of5pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN\n" -"QSdJQO7e5iNEOdyhIta6A/I=\n" -"-----END CERTIFICATE-----", - /* Microsec e-Szigno Root CA 2009 */ "-----BEGIN CERTIFICATE-----\n" "MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYDVQQGEwJI\n" @@ -2310,40 +2289,6 @@ "UvToiIMrVCjU8jVStDKDYmlkDJGcn5fqdBb9HxEGmpv0\n" "-----END CERTIFICATE-----", -/* Entrust Root Certification Authority - G4 */ -"-----BEGIN CERTIFICATE-----\n" -"MIIGSzCCBDOgAwIBAgIRANm1Q3+vqTkPAAAAAFVlrVgwDQYJKoZIhvcNAQELBQAwgb4xCzAJ\n" -"BgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVu\n" -"dHJ1c3QubmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMu\n" -"IC0gZm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0\n" -"aWZpY2F0aW9uIEF1dGhvcml0eSAtIEc0MB4XDTE1MDUyNzExMTExNloXDTM3MTIyNzExNDEx\n" -"Nlowgb4xCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9T\n" -"ZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRy\n" -"dXN0LCBJbmMuIC0gZm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3Qg\n" -"Um9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOC\n" -"Ag8AMIICCgKCAgEAsewsQu7i0TD/pZJH4i3DumSXbcr3DbVZwbPLqGgZ2K+EbTBwXX7zLtJT\n" -"meH+H17ZSK9dE43b/2MzTdMAArzE+NEGCJR5WIoV3imz/f3ET+iq4qA7ec2/a0My3dl0ELn3\n" -"9GjUu9CH1apLiipvKgS1sqbHoHrmSKvS0VnM1n4j5pds8ELl3FFLFUHtSUrJ3hCX1nbB76W1\n" -"NhSXNdh4IjVS70O92yfbYVaCNNzLiGAMC1rlLAHGVK/XqsEQe9IFWrhAnoanw5CGAlZSCXqc\n" -"0ieCU0plUmr1POeo8pyvi73TDtTUXm6Hnmo9RR3RXRv06QqsYJn7ibT/mCzPfB3pAqoEmh64\n" -"3IhuJbNsZvc8kPNXwbMv9W3y+8qh+CmdRouzavbmZwe+LGcKKh9asj5XxNMhIWNlUpEbsZmO\n" -"eX7m640A2Vqq6nPopIICR5b+W45UYaPrL0swsIsjdXJ8ITzI9vF01Bx7owVV7rtNOzK+mndm\n" -"nqxpkCIHH2E6lr7lmk/MBTwoWdPBDFSoWWG9yHJM6Nyfh3+9nEg2XpWjDrk4JFX8dWbrAuMI\n" -"NClKxuMrLzOg2qOGpRKX/YAr2hRC45K9PvJdXmd0LhyIRyk0X+IyqJwlN4y6mACXi0mWHv0l\n" -"iqzc2thddG5msP9E36EYxr5ILzeUePiVSj9/E15dWf10hkNjc0kCAwEAAaNCMEAwDwYDVR0T\n" -"AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJ84xFYjwznooHFs6FRM5Og6\n" -"sb9nMA0GCSqGSIb3DQEBCwUAA4ICAQAS5UKme4sPDORGpbZgQIeMJX6tuGguW8ZAdjwD+MlZ\n" -"9POrYs4QjbRaZIxowLByQzTSGwv2LFPSypBLhmb8qoMi9IsabyZIrHZ3CL/FmFz0Jomee8O5\n" -"ZDIBf9PD3Vht7LGrhFV0d4QEJ1JrhkzO3bll/9bGXp+aEJlLdWr+aumXIOTkdnrG0CSqkM0g\n" -"kLpHZPt/B7NTeLUKYvJzQ85BK4FqLoUWlFPUa19yIqtRLULVAJyZv967lDtX/Zr1hstWO1uI\n" -"AeV8KEsD+UmDfLJ/fOPtjqF/YFOOVZ1QNBIPt5d7bIdKROf1beyAN/BYGW5KaHbwH5Lk6rWS\n" -"02FREAutp9lfx1/cH6NcjKF+m7ee01ZvZl4HliDtC3T7Zk6LERXpgUl+b7DUUH8i119lAg2m\n" -"9IUe2K4GS0qn0jFmwvjO5QimpAKWRGhXxNUzzxkvFMSUHHuk2fCfDrGA4tGeEWSpiBE6doLl\n" -"YsKA2KSD7ZPvfC+QsDJMlhVoSFLUmQjAJOgc47OlIQ6SwJAfzyBfyjs4x7dtOvPmRLgOMWuI\n" -"jnDrnBdSqEGULoe256YSxXXfW8AKbnuk5F6G+TaU33fD6Q3AOfF5u0aOq0NZJ7cguyPpVkAh\n" -"7DE9ZapD8j3fcEThuk0mEDuYn/PIjhs4ViFqUZPTkcpG2om3PVODLAgfi49T3f+sHw==\n" -"-----END CERTIFICATE-----", - /* Microsoft ECC Root Certificate Authority 2017 */ "-----BEGIN CERTIFICATE-----\n" "MIICWTCCAd+gAwIBAgIQZvI9r4fei7FK6gxXMQHC7DAKBggqhkjOPQQDAzBlMQswCQYDVQQG\n" @@ -3161,37 +3106,6 @@ "Nzf43TNRnXCve1XYAS59BWQOhriR\n" "-----END CERTIFICATE-----", -/* Security Communication RootCA3 */ -"-----BEGIN CERTIFICATE-----\n" -"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\n" -"16/9M51NZg==\n" -"-----END CERTIFICATE-----", - /* Security Communication ECC RootCA1 */ "-----BEGIN CERTIFICATE-----\n" "MIICODCCAb6gAwIBAgIJANZdm7N4gS7rMAoGCCqGSM49BAMDMGExCzAJBgNVBAYTAkpQMSUw\n" diff --git a/src/node_snapshotable.cc b/src/node_snapshotable.cc index fe04a8ee8d708b..f9acb7b1d1618e 100644 --- a/src/node_snapshotable.cc +++ b/src/node_snapshotable.cc @@ -962,6 +962,8 @@ ExitCode BuildSnapshotWithoutCodeCache( } Isolate* isolate = setup->isolate(); + v8::Locker locker(isolate); + { HandleScope scope(isolate); TryCatch bootstrapCatch(isolate); @@ -973,25 +975,29 @@ ExitCode BuildSnapshotWithoutCodeCache( } }); + Context::Scope context_scope(setup->context()); + Environment* env = setup->env(); + // Run the custom main script for fully customized snapshots. if (snapshot_type == SnapshotMetadata::Type::kFullyCustomized) { - Context::Scope context_scope(setup->context()); - Environment* env = setup->env(); #if HAVE_INSPECTOR env->InitializeInspector({}); #endif if (LoadEnvironment(env, builder_script_content.value()).IsEmpty()) { return ExitCode::kGenericUserError; } + } - // FIXME(joyeecheung): right now running the loop in the snapshot - // builder might introduce inconsistencies in JS land that need to - // be synchronized again after snapshot restoration. - ExitCode exit_code = - SpinEventLoopInternal(env).FromMaybe(ExitCode::kGenericUserError); - if (exit_code != ExitCode::kNoFailure) { - return exit_code; - } + // Drain the loop and platform tasks before creating a snapshot. This is + // necessary to ensure that the no roots are held by the the platform + // tasks, which may reference objects associated with a context. For + // example, a WeakRef may schedule an per-isolate platform task as a GC + // root, and referencing an object in a context, causing an assertion in + // the snapshot creator. + ExitCode exit_code = + SpinEventLoopInternal(env).FromMaybe(ExitCode::kGenericUserError); + if (exit_code != ExitCode::kNoFailure) { + return exit_code; } } diff --git a/src/node_sockaddr.cc b/src/node_sockaddr.cc index 19fcc6b89ac145..8cfef3726def8c 100644 --- a/src/node_sockaddr.cc +++ b/src/node_sockaddr.cc @@ -20,6 +20,7 @@ using v8::FunctionTemplate; using v8::Int32; using v8::Isolate; using v8::Local; +using v8::LocalVector; using v8::MaybeLocal; using v8::Object; using v8::Uint32; @@ -498,15 +499,14 @@ std::string SocketAddressBlockList::SocketAddressMaskRule::ToString() { MaybeLocal<Array> SocketAddressBlockList::ListRules(Environment* env) { Mutex::ScopedLock lock(mutex_); - std::vector<Local<Value>> rules; + LocalVector<Value> rules(env->isolate()); if (!ListRules(env, &rules)) return MaybeLocal<Array>(); return Array::New(env->isolate(), rules.data(), rules.size()); } -bool SocketAddressBlockList::ListRules( - Environment* env, - std::vector<v8::Local<v8::Value>>* rules) { +bool SocketAddressBlockList::ListRules(Environment* env, + LocalVector<Value>* rules) { if (parent_ && !parent_->ListRules(env, rules)) return false; for (const auto& rule : rules_) { diff --git a/src/node_sockaddr.h b/src/node_sockaddr.h index b822e186969917..a522505949a263 100644 --- a/src/node_sockaddr.h +++ b/src/node_sockaddr.h @@ -315,9 +315,7 @@ class SocketAddressBlockList : public MemoryRetainer { SET_SELF_SIZE(SocketAddressBlockList) private: - bool ListRules( - Environment* env, - std::vector<v8::Local<v8::Value>>* vec); + bool ListRules(Environment* env, v8::LocalVector<v8::Value>* vec); std::shared_ptr<SocketAddressBlockList> parent_; std::list<std::unique_ptr<Rule>> rules_; diff --git a/src/node_sqlite.cc b/src/node_sqlite.cc index 7f5e2f89ce9dba..0b8f7ef2a21763 100644 --- a/src/node_sqlite.cc +++ b/src/node_sqlite.cc @@ -42,6 +42,7 @@ using v8::Number; using v8::Object; using v8::SideEffectType; using v8::String; +using v8::TryCatch; using v8::Uint8Array; using v8::Value; @@ -66,13 +67,14 @@ inline MaybeLocal<Object> CreateSQLiteError(Isolate* isolate, const char* message) { Local<String> js_msg; Local<Object> e; + Environment* env = Environment::GetCurrent(isolate); if (!String::NewFromUtf8(isolate, message).ToLocal(&js_msg) || !Exception::Error(js_msg) ->ToObject(isolate->GetCurrentContext()) .ToLocal(&e) || e->Set(isolate->GetCurrentContext(), - OneByteString(isolate, "code"), - OneByteString(isolate, "ERR_SQLITE_ERROR")) + env->code_string(), + env->err_sqlite_error_string()) .IsNothing()) { return MaybeLocal<Object>(); } @@ -85,15 +87,14 @@ inline MaybeLocal<Object> CreateSQLiteError(Isolate* isolate, sqlite3* db) { const char* errmsg = sqlite3_errmsg(db); Local<String> js_errmsg; Local<Object> e; + Environment* env = Environment::GetCurrent(isolate); if (!String::NewFromUtf8(isolate, errstr).ToLocal(&js_errmsg) || !CreateSQLiteError(isolate, errmsg).ToLocal(&e) || e->Set(isolate->GetCurrentContext(), - OneByteString(isolate, "errcode"), + env->errcode_string(), Integer::New(isolate, errcode)) .IsNothing() || - e->Set(isolate->GetCurrentContext(), - OneByteString(isolate, "errstr"), - js_errmsg) + e->Set(isolate->GetCurrentContext(), env->errstr_string(), js_errmsg) .IsNothing()) { return MaybeLocal<Object>(); } @@ -114,6 +115,19 @@ inline void THROW_ERR_SQLITE_ERROR(Isolate* isolate, const char* message) { } } +inline void THROW_ERR_SQLITE_ERROR(Isolate* isolate, int errcode) { + const char* errstr = sqlite3_errstr(errcode); + + Environment* env = Environment::GetCurrent(isolate); + auto error = CreateSQLiteError(isolate, errstr).ToLocalChecked(); + error + ->Set(isolate->GetCurrentContext(), + env->errcode_string(), + Integer::New(isolate, errcode)) + .ToChecked(); + isolate->ThrowException(error); +} + class UserDefinedFunction { public: explicit UserDefinedFunction(Environment* env, @@ -731,11 +745,11 @@ void DatabaseSync::CreateSession(const FunctionCallbackInfo<Value>& args) { // the reason for using static functions here is that SQLite needs a // function pointer -static std::function<int()> conflictCallback; +static std::function<int(int)> conflictCallback; static int xConflict(void* pCtx, int eConflict, sqlite3_changeset_iter* pIter) { if (!conflictCallback) return SQLITE_CHANGESET_ABORT; - return conflictCallback(); + return conflictCallback(eConflict); } static std::function<bool(std::string)> filterCallback; @@ -773,15 +787,27 @@ void DatabaseSync::ApplyChangeset(const FunctionCallbackInfo<Value>& args) { options->Get(env->context(), env->onconflict_string()).ToLocalChecked(); if (!conflictValue->IsUndefined()) { - if (!conflictValue->IsNumber()) { + if (!conflictValue->IsFunction()) { THROW_ERR_INVALID_ARG_TYPE( env->isolate(), - "The \"options.onConflict\" argument must be a number."); + "The \"options.onConflict\" argument must be a function."); return; } - - int conflictInt = conflictValue->Int32Value(env->context()).FromJust(); - conflictCallback = [conflictInt]() -> int { return conflictInt; }; + Local<Function> conflictFunc = conflictValue.As<Function>(); + conflictCallback = [env, conflictFunc](int conflictType) -> int { + Local<Value> argv[] = {Integer::New(env->isolate(), conflictType)}; + TryCatch try_catch(env->isolate()); + Local<Value> result = + conflictFunc->Call(env->context(), Null(env->isolate()), 1, argv) + .FromMaybe(Local<Value>()); + if (try_catch.HasCaught()) { + try_catch.ReThrow(); + return SQLITE_CHANGESET_ABORT; + } + constexpr auto invalid_value = -1; + if (!result->IsInt32()) return invalid_value; + return result->Int32Value(env->context()).FromJust(); + }; } if (options->HasOwnProperty(env->context(), env->filter_string()) @@ -819,12 +845,16 @@ void DatabaseSync::ApplyChangeset(const FunctionCallbackInfo<Value>& args) { xFilter, xConflict, nullptr); + if (r == SQLITE_OK) { + args.GetReturnValue().Set(true); + return; + } if (r == SQLITE_ABORT) { + // this is not an error, return false args.GetReturnValue().Set(false); return; } - CHECK_ERROR_OR_THROW(env->isolate(), db->connection_, r, SQLITE_OK, void()); - args.GetReturnValue().Set(true); + THROW_ERR_SQLITE_ERROR(env->isolate(), r); } void DatabaseSync::EnableLoadExtension( @@ -930,7 +960,7 @@ bool StatementSync::BindParams(const FunctionCallbackInfo<Value>& args) { int anon_idx = 1; int anon_start = 0; - if (args[0]->IsObject() && !args[0]->IsUint8Array()) { + if (args[0]->IsObject() && !args[0]->IsArrayBufferView()) { Local<Object> obj = args[0].As<Object>(); Local<Context> context = obj->GetIsolate()->GetCurrentContext(); Local<Array> keys; @@ -1035,7 +1065,7 @@ bool StatementSync::BindValue(const Local<Value>& value, const int index) { statement_, index, *val, val.length(), SQLITE_TRANSIENT); } else if (value->IsNull()) { r = sqlite3_bind_null(statement_, index); - } else if (value->IsUint8Array()) { + } else if (value->IsArrayBufferView()) { ArrayBufferViewContents<uint8_t> buf(value); r = sqlite3_bind_blob( statement_, index, buf.data(), buf.length(), SQLITE_TRANSIENT); @@ -1662,6 +1692,12 @@ void DefineConstants(Local<Object> target) { NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_OMIT); NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_REPLACE); NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_ABORT); + + NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_DATA); + NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_NOTFOUND); + NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_CONFLICT); + NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_CONSTRAINT); + NODE_DEFINE_CONSTANT(target, SQLITE_CHANGESET_FOREIGN_KEY); } static void Initialize(Local<Object> target, @@ -1699,7 +1735,7 @@ static void Initialize(Local<Object> target, "StatementSync", StatementSync::GetConstructorTemplate(env)); - target->Set(context, OneByteString(isolate, "constants"), constants).Check(); + target->Set(context, env->constants_string(), constants).Check(); } } // namespace sqlite diff --git a/src/node_util.cc b/src/node_util.cc index 9bf5418bf61dfa..c855201d8938fd 100644 --- a/src/node_util.cc +++ b/src/node_util.cc @@ -275,17 +275,25 @@ static void GetCallSites(const FunctionCallbackInfo<Value>& args) { script_name = v8::String::Empty(isolate); } + std::string script_id = std::to_string(stack_frame->GetScriptId()); + Local<Name> names[] = { env->function_name_string(), + env->script_id_string(), env->script_name_string(), env->line_number_string(), + env->column_number_string(), + // TODO(legendecas): deprecate CallSite.column. env->column_string(), }; Local<Value> values[] = { function_name, + OneByteString(isolate, script_id), script_name, Integer::NewFromUnsigned(isolate, stack_frame->GetLineNumber()), Integer::NewFromUnsigned(isolate, stack_frame->GetColumn()), + // TODO(legendecas): deprecate CallSite.column. + Integer::NewFromUnsigned(isolate, stack_frame->GetColumn()), }; Local<Object> obj = Object::New( isolate, v8::Null(isolate), names, values, arraysize(names)); diff --git a/src/node_version.h b/src/node_version.h index 9c33c50bf7eefe..f7c994a8c98b09 100644 --- a/src/node_version.h +++ b/src/node_version.h @@ -23,13 +23,13 @@ #define SRC_NODE_VERSION_H_ #define NODE_MAJOR_VERSION 22 -#define NODE_MINOR_VERSION 13 -#define NODE_PATCH_VERSION 2 +#define NODE_MINOR_VERSION 14 +#define NODE_PATCH_VERSION 0 #define NODE_VERSION_IS_LTS 1 #define NODE_VERSION_LTS_CODENAME "Jod" -#define NODE_VERSION_IS_RELEASE 0 +#define NODE_VERSION_IS_RELEASE 1 #ifndef NODE_STRINGIFY #define NODE_STRINGIFY(n) NODE_STRINGIFY_HELPER(n) @@ -100,7 +100,7 @@ // The NAPI_VERSION supported by the runtime. This is the inclusive range of // versions which the Node.js binary being built supports. -#define NODE_API_SUPPORTED_VERSION_MAX 9 +#define NODE_API_SUPPORTED_VERSION_MAX 10 #define NODE_API_SUPPORTED_VERSION_MIN 1 // Node API modules use NAPI_VERSION 8 by default if it is not explicitly diff --git a/src/node_webstorage.cc b/src/node_webstorage.cc index b27e173b53ec83..74ece724e207a6 100644 --- a/src/node_webstorage.cc +++ b/src/node_webstorage.cc @@ -26,6 +26,7 @@ using v8::Intercepted; using v8::Isolate; using v8::JustVoid; using v8::Local; +using v8::LocalVector; using v8::Map; using v8::Maybe; using v8::MaybeLocal; @@ -256,7 +257,7 @@ MaybeLocal<Array> Storage::Enumerate() { int r = sqlite3_prepare_v2(db_.get(), sql.data(), sql.size(), &s, 0); CHECK_ERROR_OR_THROW(env(), r, SQLITE_OK, Local<Array>()); auto stmt = stmt_unique_ptr(s); - std::vector<Local<Value>> values; + LocalVector<Value> values(env()->isolate()); Local<Value> value; while ((r = sqlite3_step(stmt.get())) == SQLITE_ROW) { CHECK(sqlite3_column_type(stmt.get(), 0) == SQLITE_BLOB); diff --git a/src/node_worker.cc b/src/node_worker.cc index bae606861eb1c6..1fc3774948dae3 100644 --- a/src/node_worker.cc +++ b/src/node_worker.cc @@ -54,7 +54,8 @@ Worker::Worker(Environment* env, std::shared_ptr<PerIsolateOptions> per_isolate_opts, std::vector<std::string>&& exec_argv, std::shared_ptr<KVStore> env_vars, - const SnapshotData* snapshot_data) + const SnapshotData* snapshot_data, + const bool is_internal) : AsyncWrap(env, wrap, AsyncWrap::PROVIDER_WORKER), per_isolate_opts_(per_isolate_opts), exec_argv_(exec_argv), @@ -63,7 +64,8 @@ Worker::Worker(Environment* env, name_(name), env_vars_(env_vars), embedder_preload_(env->embedder_preload()), - snapshot_data_(snapshot_data) { + snapshot_data_(snapshot_data), + is_internal_(is_internal) { Debug(this, "Creating new worker instance with thread id %llu", thread_id_.id); @@ -685,7 +687,8 @@ void Worker::New(const FunctionCallbackInfo<Value>& args) { per_isolate_opts, std::move(exec_argv_out), env_vars, - snapshot_data); + snapshot_data, + is_internal); CHECK(args[3]->IsFloat64Array()); Local<Float64Array> limit_info = args[3].As<Float64Array>(); @@ -1028,6 +1031,16 @@ void CreateWorkerPerContextProperties(Local<Object> target, Boolean::New(isolate, env->is_main_thread())) .Check(); + Worker* worker = env->isolate_data()->worker_context(); + bool is_internal = worker != nullptr && worker->is_internal(); + + // Set the is_internal property + target + ->Set(env->context(), + FIXED_ONE_BYTE_STRING(isolate, "isInternalThread"), + Boolean::New(isolate, is_internal)) + .Check(); + target ->Set(env->context(), FIXED_ONE_BYTE_STRING(isolate, "ownsProcessState"), diff --git a/src/node_worker.h b/src/node_worker.h index 07fd7b460654e1..c1d8619d28a908 100644 --- a/src/node_worker.h +++ b/src/node_worker.h @@ -34,7 +34,8 @@ class Worker : public AsyncWrap { std::shared_ptr<PerIsolateOptions> per_isolate_opts, std::vector<std::string>&& exec_argv, std::shared_ptr<KVStore> env_vars, - const SnapshotData* snapshot_data); + const SnapshotData* snapshot_data, + const bool is_internal); ~Worker() override; // Run the worker. This is only called from the worker thread. @@ -60,6 +61,7 @@ class Worker : public AsyncWrap { bool is_stopped() const; const SnapshotData* snapshot_data() const { return snapshot_data_; } + bool is_internal() const { return is_internal_; } static void New(const v8::FunctionCallbackInfo<v8::Value>& args); static void CloneParentEnvVars( @@ -132,6 +134,7 @@ class Worker : public AsyncWrap { Environment* env_ = nullptr; const SnapshotData* snapshot_data_ = nullptr; + const bool is_internal_; friend class WorkerThreadData; }; diff --git a/src/permission/fs_permission.cc b/src/permission/fs_permission.cc index ba5a78df18217d..6d11e06e46ebe8 100644 --- a/src/permission/fs_permission.cc +++ b/src/permission/fs_permission.cc @@ -58,16 +58,16 @@ bool is_tree_granted( std::string resolved_param = node::PathResolve(env, {param}); #ifdef _WIN32 // Remove leading "\\?\" from UNC path - if (resolved_param.substr(0, 4) == "\\\\?\\") { + if (resolved_param.starts_with("\\\\?\\")) { resolved_param.erase(0, 4); } // Remove leading "UNC\" from UNC path - if (resolved_param.substr(0, 4) == "UNC\\") { + if (resolved_param.starts_with("UNC\\")) { resolved_param.erase(0, 4); } // Remove leading "//" from UNC path - if (resolved_param.substr(0, 2) == "//") { + if (resolved_param.starts_with("//")) { resolved_param.erase(0, 2); } #endif @@ -143,10 +143,12 @@ void FSPermission::Apply(Environment* env, void FSPermission::GrantAccess(PermissionScope perm, const std::string& res) { const std::string path = WildcardIfDir(res); - if (perm == PermissionScope::kFileSystemRead) { + if (perm == PermissionScope::kFileSystemRead && + !granted_in_fs_.Lookup(path)) { granted_in_fs_.Insert(path); deny_all_in_ = false; - } else if (perm == PermissionScope::kFileSystemWrite) { + } else if (perm == PermissionScope::kFileSystemWrite && + !granted_out_fs_.Lookup(path)) { granted_out_fs_.Insert(path); deny_all_out_ = false; } diff --git a/src/quic/tlscontext.cc b/src/quic/tlscontext.cc index 358bad2ee3697f..378f956ab0c192 100644 --- a/src/quic/tlscontext.cc +++ b/src/quic/tlscontext.cc @@ -20,6 +20,13 @@ namespace node { +using ncrypto::BIOPointer; +using ncrypto::ClearErrorOnReturn; +using ncrypto::MarkPopErrorOnReturn; +using ncrypto::SSLCtxPointer; +using ncrypto::SSLPointer; +using ncrypto::SSLSessionPointer; +using ncrypto::X509Pointer; using v8::ArrayBuffer; using v8::Just; using v8::Local; @@ -43,7 +50,7 @@ namespace { // return 0; // }(); -void EnableTrace(Environment* env, crypto::BIOPointer* bio, SSL* ssl) { +void EnableTrace(Environment* env, BIOPointer* bio, SSL* ssl) { #if HAVE_SSL_TRACE static bool warn_trace_tls = true; if (warn_trace_tls) { @@ -63,7 +70,7 @@ void EnableTrace(Environment* env, crypto::BIOPointer* bio, SSL* ssl) { size_t len, SSL* ssl, void* arg) -> void { - crypto::MarkPopErrorOnReturn mark_pop_error_on_return; + MarkPopErrorOnReturn mark_pop_error_on_return; SSL_trace(write_p, version, content_type, buf, len, ssl, arg); }); SSL_set_msg_callback_arg(ssl, bio->get()); @@ -240,12 +247,12 @@ std::unique_ptr<TLSSession> TLSContext::NewSession( session, shared_from_this(), maybeSessionTicket); } -crypto::SSLCtxPointer TLSContext::Initialize() { - crypto::SSLCtxPointer ctx; +SSLCtxPointer TLSContext::Initialize() { + SSLCtxPointer ctx; switch (side_) { case Side::SERVER: { static constexpr unsigned char kSidCtx[] = "Node.js QUIC Server"; - ctx.reset(SSL_CTX_new(TLS_server_method())); + ctx = SSLCtxPointer::NewServer(); CHECK_EQ(ngtcp2_crypto_quictls_configure_server_context(ctx.get()), 0); CHECK_EQ(SSL_CTX_set_max_early_data(ctx.get(), UINT32_MAX), 1); SSL_CTX_set_options(ctx.get(), @@ -274,7 +281,7 @@ crypto::SSLCtxPointer TLSContext::Initialize() { break; } case Side::CLIENT: { - ctx.reset(SSL_CTX_new(TLS_client_method())); + ctx = SSLCtxPointer::NewClient(); CHECK_EQ(ngtcp2_crypto_quictls_configure_client_context(ctx.get()), 0); SSL_CTX_set_session_cache_mode( @@ -289,16 +296,16 @@ crypto::SSLCtxPointer TLSContext::Initialize() { if (SSL_CTX_set_ciphersuites(ctx.get(), options_.ciphers.c_str()) != 1) { validation_error_ = "Invalid cipher suite"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } if (SSL_CTX_set1_groups_list(ctx.get(), options_.groups.c_str()) != 1) { validation_error_ = "Invalid cipher groups"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } { - crypto::ClearErrorOnReturn clear_error_on_return; + ClearErrorOnReturn clear_error_on_return; if (options_.ca.empty()) { auto store = crypto::GetOrCreateRootCertStore(); X509_STORE_up_ref(store); @@ -311,14 +318,12 @@ crypto::SSLCtxPointer TLSContext::Initialize() { X509_STORE_up_ref(store); SSL_CTX_set_cert_store(ctx.get(), store); } else { - crypto::BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); + BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); CHECK(bio); X509_STORE* cert_store = SSL_CTX_get_cert_store(ctx.get()); - while (crypto::X509Pointer x509 = crypto::X509Pointer( - PEM_read_bio_X509_AUX(bio.get(), - nullptr, - crypto::NoPasswordCallback, - nullptr))) { + while ( + auto x509 = X509Pointer(PEM_read_bio_X509_AUX( + bio.get(), nullptr, crypto::NoPasswordCallback, nullptr))) { if (cert_store == crypto::GetOrCreateRootCertStore()) { cert_store = crypto::NewRootCertStore(); SSL_CTX_set_cert_store(ctx.get(), cert_store); @@ -332,48 +337,48 @@ crypto::SSLCtxPointer TLSContext::Initialize() { } { - crypto::ClearErrorOnReturn clear_error_on_return; + ClearErrorOnReturn clear_error_on_return; for (const auto& cert : options_.certs) { uv_buf_t buf = cert; if (buf.len > 0) { - crypto::BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); + BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); CHECK(bio); cert_.reset(); issuer_.reset(); if (crypto::SSL_CTX_use_certificate_chain( ctx.get(), std::move(bio), &cert_, &issuer_) == 0) { validation_error_ = "Invalid certificate"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } } } } { - crypto::ClearErrorOnReturn clear_error_on_return; + ClearErrorOnReturn clear_error_on_return; for (const auto& key : options_.keys) { if (key.GetKeyType() != crypto::KeyType::kKeyTypePrivate) { validation_error_ = "Invalid key"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } if (!SSL_CTX_use_PrivateKey(ctx.get(), key.GetAsymmetricKey().get())) { validation_error_ = "Invalid key"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } } } { - crypto::ClearErrorOnReturn clear_error_on_return; + ClearErrorOnReturn clear_error_on_return; for (const auto& crl : options_.crl) { uv_buf_t buf = crl; - crypto::BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); + BIOPointer bio = crypto::NodeBIO::NewFixed(buf.base, buf.len); DeleteFnPtr<X509_CRL, X509_CRL_free> crlptr(PEM_read_bio_X509_CRL( bio.get(), nullptr, crypto::NoPasswordCallback, nullptr)); if (!crlptr) { validation_error_ = "Invalid CRL"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } X509_STORE* cert_store = SSL_CTX_get_cert_store(ctx.get()); @@ -391,11 +396,11 @@ crypto::SSLCtxPointer TLSContext::Initialize() { } { - crypto::ClearErrorOnReturn clear_error_on_return; + ClearErrorOnReturn clear_error_on_return; if (options_.verify_private_key && SSL_CTX_check_private_key(ctx.get()) != 1) { validation_error_ = "Invalid private key"; - return crypto::SSLCtxPointer(); + return SSLCtxPointer(); } } @@ -506,11 +511,11 @@ bool TLSSession::early_data_was_accepted() const { return SSL_get_early_data_status(*this) == SSL_EARLY_DATA_ACCEPTED; } -crypto::SSLPointer TLSSession::Initialize( +SSLPointer TLSSession::Initialize( const std::optional<SessionTicket>& maybeSessionTicket) { auto& ctx = context(); auto& options = ctx.options(); - crypto::SSLPointer ssl(SSL_new(ctx)); + SSLPointer ssl(SSL_new(ctx)); SSL_set_app_data(ssl.get(), &ref_); ngtcp2_conn_set_tls_native_handle(*session_, ssl.get()); @@ -533,7 +538,7 @@ crypto::SSLPointer TLSSession::Initialize( reinterpret_cast<const unsigned char*>(options.alpn.data()), options.alpn.size()) != 0) { validation_error_ = "Invalid ALPN"; - return crypto::SSLPointer(); + return SSLPointer(); } if (!options.sni.empty()) { @@ -545,11 +550,11 @@ crypto::SSLPointer TLSSession::Initialize( if (maybeSessionTicket.has_value()) { auto sessionTicket = maybeSessionTicket.value(); uv_buf_t buf = sessionTicket.ticket(); - crypto::SSLSessionPointer ticket = crypto::GetTLSSession( + SSLSessionPointer ticket = crypto::GetTLSSession( reinterpret_cast<unsigned char*>(buf.base), buf.len); // The early data will just be ignored if it's invalid. - if (crypto::SetTLSSession(ssl, ticket) && + if (ssl.setSession(ticket) && SSL_SESSION_get_max_early_data(ticket.get()) != 0) { ngtcp2_vec rtp = sessionTicket.transport_params(); if (ngtcp2_conn_decode_and_set_0rtt_transport_params( @@ -614,9 +619,7 @@ MaybeLocal<Value> TLSSession::cipher_version(Environment* env) const { } const std::string_view TLSSession::servername() const { - const char* servername = crypto::GetServerName(ssl_.get()); - return servername != nullptr ? std::string_view(servername) - : std::string_view(); + return ssl_.getServerName().value_or(std::string_view()); } const std::string_view TLSSession::alpn() const { diff --git a/src/quic/tlscontext.h b/src/quic/tlscontext.h index 3f2f8aff42a8a5..30bd146b669adb 100644 --- a/src/quic/tlscontext.h +++ b/src/quic/tlscontext.h @@ -7,6 +7,7 @@ #include <crypto/crypto_context.h> #include <crypto/crypto_keys.h> #include <memory_tracker.h> +#include <ncrypto.h> #include <ngtcp2/ngtcp2_crypto.h> #include "bindingdata.h" #include "data.h" @@ -83,7 +84,7 @@ class TLSSession final : public MemoryRetainer { private: operator SSL*() const; - crypto::SSLPointer Initialize( + ncrypto::SSLPointer Initialize( const std::optional<SessionTicket>& maybeSessionTicket); static ngtcp2_conn* connection(ngtcp2_crypto_conn_ref* ref); @@ -91,8 +92,8 @@ class TLSSession final : public MemoryRetainer { ngtcp2_crypto_conn_ref ref_; std::shared_ptr<TLSContext> context_; Session* session_; - crypto::SSLPointer ssl_; - crypto::BIOPointer bio_trace_; + ncrypto::SSLPointer ssl_; + ncrypto::BIOPointer bio_trace_; std::string validation_error_ = ""; bool in_key_update_ = false; }; @@ -197,7 +198,7 @@ class TLSContext final : public MemoryRetainer, SET_SELF_SIZE(TLSContext) private: - crypto::SSLCtxPointer Initialize(); + ncrypto::SSLCtxPointer Initialize(); operator SSL_CTX*() const; static void OnKeylog(const SSL* ssl, const char* line); @@ -212,9 +213,9 @@ class TLSContext final : public MemoryRetainer, Side side_; Options options_; - crypto::X509Pointer cert_; - crypto::X509Pointer issuer_; - crypto::SSLCtxPointer ctx_; + ncrypto::X509Pointer cert_; + ncrypto::X509Pointer issuer_; + ncrypto::SSLCtxPointer ctx_; std::string validation_error_ = ""; friend class TLSSession; diff --git a/src/util-inl.h b/src/util-inl.h index e078c9a11b2fac..b5ae5950b62767 100644 --- a/src/util-inl.h +++ b/src/util-inl.h @@ -180,6 +180,11 @@ inline v8::Local<v8::String> OneByteString(v8::Isolate* isolate, .ToLocalChecked(); } +inline v8::Local<v8::String> OneByteString(v8::Isolate* isolate, + std::string_view str) { + return OneByteString(isolate, str.data(), str.size()); +} + char ToLower(char c) { return std::tolower(c, std::locale::classic()); } @@ -557,6 +562,22 @@ bool IsWindowsBatchFile(const char* filename) { #endif // _WIN32 } +#ifdef _WIN32 +inline std::wstring ConvertToWideString(const std::string& str, + UINT code_page) { + int size_needed = MultiByteToWideChar( + code_page, 0, &str[0], static_cast<int>(str.size()), nullptr, 0); + std::wstring wstrTo(size_needed, 0); + MultiByteToWideChar(code_page, + 0, + &str[0], + static_cast<int>(str.size()), + &wstrTo[0], + size_needed); + return wstrTo; +} +#endif // _WIN32 + } // namespace node #endif // defined(NODE_WANT_INTERNALS) && NODE_WANT_INTERNALS diff --git a/src/util.h b/src/util.h index b1f316eebc7199..0d4676ddade8d9 100644 --- a/src/util.h +++ b/src/util.h @@ -340,6 +340,9 @@ inline v8::Local<v8::String> OneByteString(v8::Isolate* isolate, const unsigned char* data, int length = -1); +inline v8::Local<v8::String> OneByteString(v8::Isolate* isolate, + std::string_view str); + // Used to be a macro, hence the uppercase name. template <int N> inline v8::Local<v8::String> FIXED_ONE_BYTE_STRING( diff --git a/src/uv.cc b/src/uv.cc index e6623bc7e162f5..168e7be408ce34 100644 --- a/src/uv.cc +++ b/src/uv.cc @@ -130,7 +130,7 @@ void Initialize(Local<Object> target, for (size_t i = 0; i < errors_len; ++i) { const auto& error = per_process::uv_errors_map[i]; const std::string prefixed_name = prefix + error.name; - Local<String> name = OneByteString(isolate, prefixed_name.c_str()); + Local<String> name = OneByteString(isolate, prefixed_name); Local<Integer> value = Integer::New(isolate, error.value); target->DefineOwnProperty(context, name, value, attributes).Check(); } diff --git a/test/abort/test-abort-backtrace.js b/test/abort/test-abort-backtrace.js index ce9ed39196eb1f..455bbf2361cf51 100644 --- a/test/abort/test-abort-backtrace.js +++ b/test/abort/test-abort-backtrace.js @@ -1,8 +1,47 @@ 'use strict'; -const common = require('../common'); +require('../common'); const assert = require('assert'); const cp = require('child_process'); +function getPrintedStackTrace(stderr) { + const lines = stderr.split('\n'); + + let state = 'initial'; + const result = { + message: [], + nativeStack: [], + jsStack: [], + }; + for (let i = 0; i < lines.length; ++i) { + const line = lines[i].trim(); + if (line.length === 0) { + continue; // Skip empty lines. + } + + switch (state) { + case 'initial': + result.message.push(line); + if (line.includes('Native stack trace')) { + state = 'native-stack'; + } else { + result.message.push(line); + } + break; + case 'native-stack': + if (line.includes('JavaScript stack trace')) { + state = 'js-stack'; + } else { + result.nativeStack.push(line); + } + break; + case 'js-stack': + result.jsStack.push(line); + break; + } + } + return result; +} + if (process.argv[2] === 'child') { process.abort(); } else { @@ -10,7 +49,7 @@ if (process.argv[2] === 'child') { const stderr = child.stderr.toString(); assert.strictEqual(child.stdout.toString(), ''); - const { nativeStack, jsStack } = common.getPrintedStackTrace(stderr); + const { nativeStack, jsStack } = getPrintedStackTrace(stderr); if (!nativeStack.every((frame, index) => frame.startsWith(`${index + 1}:`))) { assert.fail(`Each frame should start with a frame number:\n${stderr}`); @@ -18,7 +57,7 @@ if (process.argv[2] === 'child') { // For systems that don't support backtraces, the native stack is // going to be empty. - if (!common.isWindows && nativeStack.length > 0) { + if (process.platform !== 'win32' && nativeStack.length > 0) { const { getBinaryPath } = require('../common/shared-lib-util'); if (!nativeStack.some((frame) => frame.includes(`[${getBinaryPath()}]`))) { assert.fail(`Some native stack frame include the binary name:\n${stderr}`); diff --git a/test/addons/openssl-providers/providers.cjs b/test/addons/openssl-providers/providers.cjs index 2dabbf020e2a41..efa1019c62d99c 100644 --- a/test/addons/openssl-providers/providers.cjs +++ b/test/addons/openssl-providers/providers.cjs @@ -1,11 +1,14 @@ 'use strict'; const common = require('../../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} +const { hasOpenSSL3 } = require('../../common/crypto'); -if (!common.hasOpenSSL3) +if (!hasOpenSSL3) { common.skip('this test requires OpenSSL 3.x'); +} const assert = require('node:assert'); const { createHash, getCiphers, getHashes } = require('node:crypto'); const { debuglog } = require('node:util'); diff --git a/test/async-hooks/async-hooks.status b/test/async-hooks/async-hooks.status index 5dca3cb04f240c..673883e4fe3d4d 100644 --- a/test/async-hooks/async-hooks.status +++ b/test/async-hooks/async-hooks.status @@ -9,8 +9,6 @@ prefix async-hooks [$system==win32] [$system==linux] -# https://github.com/nodejs/node/issues/54809 -test-writewrap: PASS, FLAKY [$system==macos] diff --git a/test/async-hooks/init-hooks.js b/test/async-hooks/init-hooks.js index 2206ab31eba75f..8fc44994fbc497 100644 --- a/test/async-hooks/init-hooks.js +++ b/test/async-hooks/init-hooks.js @@ -1,9 +1,10 @@ 'use strict'; // Flags: --expose-gc -const common = require('../common'); +require('../common'); const assert = require('assert'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); const util = require('util'); const print = process._rawDebug; @@ -161,7 +162,7 @@ class ActivityCollector { const stub = { uid, type: 'Unknown', handleIsObject: true, handle: {} }; this._activities.set(uid, stub); return stub; - } else if (!common.isMainThread) { + } else if (!isMainThread) { // Worker threads start main script execution inside of an AsyncWrap // callback, so we don't yield errors for these. return null; diff --git a/test/async-hooks/test-crypto-pbkdf2.js b/test/async-hooks/test-crypto-pbkdf2.js index 4788ce4a580656..c607adf7258760 100644 --- a/test/async-hooks/test-crypto-pbkdf2.js +++ b/test/async-hooks/test-crypto-pbkdf2.js @@ -1,10 +1,13 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); -if (!common.isMainThread) +} +const { isMainThread } = require('worker_threads'); +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const assert = require('assert'); const tick = require('../common/tick'); diff --git a/test/async-hooks/test-crypto-randomBytes.js b/test/async-hooks/test-crypto-randomBytes.js index 88cd4643ab6638..8ecc1c45a9a524 100644 --- a/test/async-hooks/test-crypto-randomBytes.js +++ b/test/async-hooks/test-crypto-randomBytes.js @@ -1,10 +1,13 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); -if (!common.isMainThread) +} +const { isMainThread } = require('worker_threads'); +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const assert = require('assert'); const tick = require('../common/tick'); diff --git a/test/async-hooks/test-enable-disable.js b/test/async-hooks/test-enable-disable.js index 64139408a48209..d408338e892c32 100644 --- a/test/async-hooks/test-enable-disable.js +++ b/test/async-hooks/test-enable-disable.js @@ -87,8 +87,9 @@ const assert = require('assert'); const tick = require('../common/tick'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) common.skip('Worker bootstrapping works differently -> different timing'); // Include "Unknown"s because hook2 will not be able to identify diff --git a/test/async-hooks/test-fseventwrap.js b/test/async-hooks/test-fseventwrap.js index 12a439f8033cbc..a5e1a3b9d2f232 100644 --- a/test/async-hooks/test-fseventwrap.js +++ b/test/async-hooks/test-fseventwrap.js @@ -6,12 +6,15 @@ const initHooks = require('./init-hooks'); const tick = require('../common/tick'); const { checkInvocations } = require('./hook-checks'); const fs = require('fs'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} -if (common.isIBMi) +if (common.isIBMi) { common.skip('IBMi does not support fs.watch()'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-fsreqcallback-readFile.js b/test/async-hooks/test-fsreqcallback-readFile.js index 01ccce9b4cc694..65f3652f12f988 100644 --- a/test/async-hooks/test-fsreqcallback-readFile.js +++ b/test/async-hooks/test-fsreqcallback-readFile.js @@ -6,9 +6,11 @@ const tick = require('../common/tick'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); const fs = require('fs'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-getaddrinforeqwrap.js b/test/async-hooks/test-getaddrinforeqwrap.js index 7291ea8a301954..a21557bcd56e7a 100644 --- a/test/async-hooks/test-getaddrinforeqwrap.js +++ b/test/async-hooks/test-getaddrinforeqwrap.js @@ -6,9 +6,11 @@ const tick = require('../common/tick'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); const dns = require('dns'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-getnameinforeqwrap.js b/test/async-hooks/test-getnameinforeqwrap.js index c7a3937ff3ceef..b00fa0d4d9dd54 100644 --- a/test/async-hooks/test-getnameinforeqwrap.js +++ b/test/async-hooks/test-getnameinforeqwrap.js @@ -6,9 +6,11 @@ const tick = require('../common/tick'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); const dns = require('dns'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-graph.signal.js b/test/async-hooks/test-graph.signal.js index f87b1215b523b9..351fb7550af431 100644 --- a/test/async-hooks/test-graph.signal.js +++ b/test/async-hooks/test-graph.signal.js @@ -1,10 +1,13 @@ 'use strict'; const common = require('../common'); -if (common.isWindows) +if (common.isWindows) { common.skip('no signals on Windows'); -if (!common.isMainThread) +} +const { isMainThread } = require('worker_threads'); +if (!isMainThread) { common.skip('No signal handling available in Workers'); +} const initHooks = require('./init-hooks'); const verifyGraph = require('./verify-graph'); diff --git a/test/async-hooks/test-no-assert-when-disabled.js b/test/async-hooks/test-no-assert-when-disabled.js index 70114d1e1140f8..0e7c0568cc09fa 100644 --- a/test/async-hooks/test-no-assert-when-disabled.js +++ b/test/async-hooks/test-no-assert-when-disabled.js @@ -1,9 +1,10 @@ 'use strict'; // Flags: --no-force-async-hooks-checks --expose-internals const common = require('../common'); - -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); +if (!isMainThread) { common.skip('Workers don\'t inherit per-env state like the check flag'); +} const async_hooks = require('internal/async_hooks'); diff --git a/test/async-hooks/test-pipewrap.js b/test/async-hooks/test-pipewrap.js index 2d42e769cfd1f3..7ea5f38adc85e2 100644 --- a/test/async-hooks/test-pipewrap.js +++ b/test/async-hooks/test-pipewrap.js @@ -9,9 +9,11 @@ const tick = require('../common/tick'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); const { spawn } = require('child_process'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-promise.chain-promise-before-init-hooks.js b/test/async-hooks/test-promise.chain-promise-before-init-hooks.js index 52a312dbdfe196..c5e67b6f94ca68 100644 --- a/test/async-hooks/test-promise.chain-promise-before-init-hooks.js +++ b/test/async-hooks/test-promise.chain-promise-before-init-hooks.js @@ -4,9 +4,11 @@ const common = require('../common'); const assert = require('assert'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const p = new Promise(common.mustCall(function executor(resolve) { resolve(5); diff --git a/test/async-hooks/test-promise.js b/test/async-hooks/test-promise.js index 417cb3c80d6298..554c3ae7dd711e 100644 --- a/test/async-hooks/test-promise.js +++ b/test/async-hooks/test-promise.js @@ -5,9 +5,11 @@ const common = require('../common'); const assert = require('assert'); const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const hooks = initHooks(); diff --git a/test/async-hooks/test-signalwrap.js b/test/async-hooks/test-signalwrap.js index 4584d140ce1d0f..60adaedd476f27 100644 --- a/test/async-hooks/test-signalwrap.js +++ b/test/async-hooks/test-signalwrap.js @@ -1,10 +1,13 @@ 'use strict'; const common = require('../common'); -if (common.isWindows) +if (common.isWindows) { common.skip('no signals in Windows'); -if (!common.isMainThread) +} +const { isMainThread } = require('worker_threads'); +if (!isMainThread) { common.skip('No signal handling available in Workers'); +} const assert = require('assert'); const initHooks = require('./init-hooks'); diff --git a/test/async-hooks/test-statwatcher.js b/test/async-hooks/test-statwatcher.js index f3c0e74355eeba..8f4fb2175885f3 100644 --- a/test/async-hooks/test-statwatcher.js +++ b/test/async-hooks/test-statwatcher.js @@ -7,8 +7,11 @@ const initHooks = require('./init-hooks'); const { checkInvocations } = require('./hook-checks'); const fs = require('fs'); -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} tmpdir.refresh(); diff --git a/test/async-hooks/test-unhandled-rejection-context.js b/test/async-hooks/test-unhandled-rejection-context.js index 8404cf71f0db6f..168b51a3331f7f 100644 --- a/test/async-hooks/test-unhandled-rejection-context.js +++ b/test/async-hooks/test-unhandled-rejection-context.js @@ -5,9 +5,11 @@ const common = require('../common'); const assert = require('assert'); const initHooks = require('./init-hooks'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const promiseAsyncIds = []; const hooks = initHooks({ diff --git a/test/benchmark/test-benchmark-crypto.js b/test/benchmark/test-benchmark-crypto.js index 7f6988acf234d8..72d79ece13e787 100644 --- a/test/benchmark/test-benchmark-crypto.js +++ b/test/benchmark/test-benchmark-crypto.js @@ -5,8 +5,11 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); -if (common.hasFipsCrypto) +const { getFips } = require('crypto'); + +if (getFips()) { common.skip('some benchmarks are FIPS-incompatible'); +} const runBenchmark = require('../common/benchmark'); diff --git a/test/benchmark/test-benchmark-napi.js b/test/benchmark/test-benchmark-napi.js index 7164efe3d4e718..518e10a5111a5b 100644 --- a/test/benchmark/test-benchmark-napi.js +++ b/test/benchmark/test-benchmark-napi.js @@ -6,7 +6,9 @@ if (common.isWindows) { common.skip('vcbuild.bat doesn\'t build the n-api benchmarks yet'); } -if (!common.isMainThread) { +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('addons are not supported in workers'); } diff --git a/test/cctest/test_node_crypto_env.cc b/test/cctest/test_node_crypto_env.cc index 001867720f5e80..77aab8f4182d4f 100644 --- a/test/cctest/test_node_crypto_env.cc +++ b/test/cctest/test_node_crypto_env.cc @@ -1,3 +1,4 @@ +#include <ncrypto.h> #include "crypto/crypto_bio.h" #include "gtest/gtest.h" #include "node_options.h" @@ -21,7 +22,7 @@ TEST_F(NodeCryptoEnv, LoadBIO) { Env env{handle_scope, argv}; // just put a random string into BIO Local<String> key = String::NewFromUtf8(isolate_, "abcdef").ToLocalChecked(); - node::crypto::BIOPointer bio(node::crypto::LoadBIO(*env, key)); + ncrypto::BIOPointer bio(node::crypto::LoadBIO(*env, key)); #if OPENSSL_VERSION_NUMBER >= 0x30000000L const int ofs = 2; ASSERT_EQ(BIO_seek(bio.get(), ofs), ofs); diff --git a/test/common/README.md b/test/common/README.md index 5f5ff75fca2431..887dee2783ad72 100644 --- a/test/common/README.md +++ b/test/common/README.md @@ -102,10 +102,6 @@ symlinks ([SeCreateSymbolicLinkPrivilege](https://msdn.microsoft.com/en-us/library/windows/desktop/bb530716\(v=vs.85\).aspx)). On non-Windows platforms, this always returns `true`. -### `createZeroFilledFile(filename)` - -Creates a 10 MiB file of all null characters. - ### `enoughTestMem` * [\<boolean>][<boolean>] @@ -226,17 +222,6 @@ The TTY file descriptor is assumed to be capable of being writable. Indicates whether OpenSSL is available. -### `hasFipsCrypto` - -* [\<boolean>][<boolean>] - -Indicates that Node.js has been linked with a FIPS compatible OpenSSL library, -and that FIPS as been enabled using `--enable-fips`. - -To only detect if the OpenSSL library is FIPS compatible, regardless if it has -been enabled or not, then `process.config.variables.openssl_is_fips` can be -used to determine that situation. - ### `hasIntl` * [\<boolean>][<boolean>] @@ -249,12 +234,6 @@ Indicates if [internationalization][] is supported. Indicates whether `IPv6` is supported on this platform. -### `hasMultiLocalhost` - -* [\<boolean>][<boolean>] - -Indicates if there are multiple localhosts available. - ### `inFreeBSDJail` * [\<boolean>][<boolean>] @@ -274,10 +253,6 @@ Platform check for Advanced Interactive eXecutive (AIX). Attempts to 'kill' `pid` -### `isDumbTerminal` - -* [\<boolean>][<boolean>] - ### `isFreeBSD` * [\<boolean>][<boolean>] @@ -296,12 +271,6 @@ Platform check for IBMi. Platform check for Linux. -### `isLinuxPPCBE` - -* [\<boolean>][<boolean>] - -Platform check for Linux on PowerPC. - ### `isMacOS` * [\<boolean>][<boolean>] @@ -417,12 +386,6 @@ Returns `true` if the exit code `exitCode` and/or signal name `signal` represent the exit code and/or signal name of a node process that aborted, `false` otherwise. -### `opensslCli` - -* [\<boolean>][<boolean>] - -Indicates whether 'opensslCli' is supported. - ### `platformTimeout(ms)` * `ms` [\<number>][<number>] | [\<bigint>][<bigint>] @@ -485,10 +448,6 @@ will not be run. Logs '1..0 # Skipped: ' + `msg` and exits with exit code `0`. -### `skipIfDumbTerminal()` - -Skip the rest of the tests if the current terminal is a dumb terminal - ### `skipIfEslintMissing()` Skip the rest of the tests in the current file when `ESLint` is not available @@ -504,11 +463,6 @@ was disabled at compile time. Skip the rest of the tests in the current file when the Node.js executable was compiled with a pointer size smaller than 64 bits. -### `skipIfWorker()` - -Skip the rest of the tests in the current file when not running on a main -thread. - ## ArrayStream module The `ArrayStream` module provides a simple `Stream` that pushes elements from diff --git a/test/common/crypto.js b/test/common/crypto.js index 10432d7e7a7e32..f50d3895a1783b 100644 --- a/test/common/crypto.js +++ b/test/common/crypto.js @@ -1,8 +1,9 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); @@ -98,6 +99,27 @@ const pkcs8EncExp = getRegExpForPEM('ENCRYPTED PRIVATE KEY'); const sec1Exp = getRegExpForPEM('EC PRIVATE KEY'); const sec1EncExp = (cipher) => getRegExpForPEM('EC PRIVATE KEY', cipher); +// Synthesize OPENSSL_VERSION_NUMBER format with the layout 0xMNN00PPSL +const opensslVersionNumber = (major = 0, minor = 0, patch = 0) => { + assert(major >= 0 && major <= 0xf); + assert(minor >= 0 && minor <= 0xff); + assert(patch >= 0 && patch <= 0xff); + return (major << 28) | (minor << 20) | (patch << 4); +}; + +let OPENSSL_VERSION_NUMBER; +const hasOpenSSL = (major = 0, minor = 0, patch = 0) => { + if (!common.hasCrypto) return false; + if (OPENSSL_VERSION_NUMBER === undefined) { + const regexp = /(?<m>\d+)\.(?<n>\d+)\.(?<p>\d+)/; + const { m, n, p } = process.versions.openssl.match(regexp).groups; + OPENSSL_VERSION_NUMBER = opensslVersionNumber(m, n, p); + } + return OPENSSL_VERSION_NUMBER >= opensslVersionNumber(major, minor, patch); +}; + +let opensslCli = null; + module.exports = { modp2buf, assertApproximateSize, @@ -111,4 +133,32 @@ module.exports = { pkcs8EncExp, // used once sec1Exp, sec1EncExp, + hasOpenSSL, + get hasOpenSSL3() { + return hasOpenSSL(3); + }, + // opensslCli defined lazily to reduce overhead of spawnSync + get opensslCli() { + if (opensslCli !== null) return opensslCli; + + if (process.config.variables.node_shared_openssl) { + // Use external command + opensslCli = 'openssl'; + } else { + const path = require('path'); + // Use command built from sources included in Node.js repository + opensslCli = path.join(path.dirname(process.execPath), 'openssl-cli'); + } + + if (exports.isWindows) opensslCli += '.exe'; + + const { spawnSync } = require('child_process'); + + const opensslCmd = spawnSync(opensslCli, ['version']); + if (opensslCmd.status !== 0 || opensslCmd.error !== undefined) { + // OpenSSL command cannot be executed + opensslCli = false; + } + return opensslCli; + }, }; diff --git a/test/common/gc.js b/test/common/gc.js index 82cc4c79edc3dd..87625068c2cbca 100644 --- a/test/common/gc.js +++ b/test/common/gc.js @@ -3,6 +3,8 @@ const wait = require('timers/promises').setTimeout; const assert = require('assert'); const common = require('../common'); +// TODO(joyeecheung): rewrite checkIfCollectable to use this too. +const { setImmediate: setImmediatePromisified } = require('timers/promises'); const gcTrackerMap = new WeakMap(); const gcTrackerTag = 'NODE_TEST_COMMON_GC_TRACKER'; @@ -40,32 +42,26 @@ function onGC(obj, gcListener) { /** * Repeatedly triggers garbage collection until a specified condition is met or a maximum number of attempts is reached. + * This utillity must be run in a Node.js instance that enables --expose-gc. * @param {string|Function} [name] - Optional name, used in the rejection message if the condition is not met. * @param {Function} condition - A function that returns true when the desired condition is met. + * @param {number} maxCount - Maximum number of garbage collections that should be tried. + * @param {object} gcOptions - Options to pass into the global gc() function. * @returns {Promise} A promise that resolves when the condition is met, or rejects after 10 failed attempts. */ -function gcUntil(name, condition) { - if (typeof name === 'function') { - condition = name; - name = undefined; - } - return new Promise((resolve, reject) => { - let count = 0; - function gcAndCheck() { - setImmediate(() => { - count++; - global.gc(); - if (condition()) { - resolve(); - } else if (count < 10) { - gcAndCheck(); - } else { - reject(name === undefined ? undefined : 'Test ' + name + ' failed'); - } - }); +async function gcUntil(name, condition, maxCount = 10, gcOptions) { + for (let count = 0; count < maxCount; ++count) { + await setImmediatePromisified(); + if (gcOptions) { + await global.gc(gcOptions); + } else { + await global.gc(); // Passing in undefined is not the same as empty. } - gcAndCheck(); - }); + if (condition()) { + return; + } + } + throw new Error(`Test ${name} failed`); } // This function can be used to check if an object factor leaks or not, diff --git a/test/common/index.js b/test/common/index.js index d1eaf6e69f603b..92c7294e6f6298 100644 --- a/test/common/index.js +++ b/test/common/index.js @@ -19,12 +19,10 @@ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. -/* eslint-disable node-core/crypto-check */ 'use strict'; -const process = global.process; // Some tests tamper with the process global. +const process = globalThis.process; // Some tests tamper with the process globalThis. const assert = require('assert'); -const { exec, execSync, spawn, spawnSync } = require('child_process'); const fs = require('fs'); const net = require('net'); // Do not require 'os' until needed so that test-os-checked-function can @@ -32,7 +30,6 @@ const net = require('net'); const path = require('path'); const { inspect, getCallSites } = require('util'); const { isMainThread } = require('worker_threads'); -const { isModuleNamespaceObject } = require('util/types'); const tmpdir = require('./tmpdir'); const bits = ['arm64', 'loong64', 'mips', 'mipsel', 'ppc64', 'riscv64', 's390x', 'x64'] @@ -57,25 +54,6 @@ const noop = () => {}; const hasCrypto = Boolean(process.versions.openssl) && !process.env.NODE_SKIP_CRYPTO; -// Synthesize OPENSSL_VERSION_NUMBER format with the layout 0xMNN00PPSL -const opensslVersionNumber = (major = 0, minor = 0, patch = 0) => { - assert(major >= 0 && major <= 0xf); - assert(minor >= 0 && minor <= 0xff); - assert(patch >= 0 && patch <= 0xff); - return (major << 28) | (minor << 20) | (patch << 4); -}; - -let OPENSSL_VERSION_NUMBER; -const hasOpenSSL = (major = 0, minor = 0, patch = 0) => { - if (!hasCrypto) return false; - if (OPENSSL_VERSION_NUMBER === undefined) { - const regexp = /(?<m>\d+)\.(?<n>\d+)\.(?<p>\d+)/; - const { m, n, p } = process.versions.openssl.match(regexp).groups; - OPENSSL_VERSION_NUMBER = opensslVersionNumber(m, n, p); - } - return OPENSSL_VERSION_NUMBER >= opensslVersionNumber(major, minor, patch); -}; - const hasQuic = hasCrypto && !!process.config.variables.openssl_quic; function parseTestFlags(filename = process.argv[1]) { @@ -124,6 +102,7 @@ if (process.argv.length === 2 && inspect(flags), 'Use NODE_SKIP_FLAG_CHECK to run the test with the original flags.', ); + const { spawnSync } = require('child_process'); const args = [...flags, ...process.execArgv, ...process.argv.slice(1)]; const options = { encoding: 'utf8', stdio: 'inherit' }; const result = spawnSync(process.execPath, args, options); @@ -159,8 +138,6 @@ const isPi = (() => { } })(); -const isDumbTerminal = process.env.TERM === 'dumb'; - // When using high concurrency or in the CI we need much more time for each connection attempt net.setDefaultAutoSelectFamilyAttemptTimeout(platformTimeout(net.getDefaultAutoSelectFamilyAttemptTimeout() * 10)); const defaultAutoSelectFamilyAttemptTimeout = net.getDefaultAutoSelectFamilyAttemptTimeout(); @@ -220,7 +197,6 @@ if (process.env.NODE_TEST_WITH_ASYNC_HOOKS) { }).enable(); } -let opensslCli = null; let inFreeBSDJail = null; let localhostIPv4 = null; @@ -255,6 +231,7 @@ function childShouldThrowAndAbort() { // continuous testing and developers' machines escapedArgs[0] = 'ulimit -c 0 && ' + escapedArgs[0]; } + const { exec } = require('child_process'); const child = exec(...escapedArgs); child.on('exit', function onExit(exitCode, signal) { const errMsg = 'Test should have aborted ' + @@ -264,13 +241,6 @@ function childShouldThrowAndAbort() { }); } -function createZeroFilledFile(filename) { - const fd = fs.openSync(filename, 'w'); - fs.ftruncateSync(fd, 10 * 1024 * 1024); - fs.closeSync(fd); -} - - const pwdCommand = isWindows ? ['cmd.exe', ['/d', '/c', 'cd']] : ['pwd', []]; @@ -296,7 +266,7 @@ function platformTimeout(ms) { return ms; } -let knownGlobals = [ +const knownGlobals = new Set([ AbortController, atob, btoa, @@ -308,88 +278,59 @@ let knownGlobals = [ setInterval, setTimeout, queueMicrotask, -]; - -if (global.gc) { - knownGlobals.push(global.gc); -} - -if (global.navigator) { - knownGlobals.push(global.navigator); -} - -if (global.Navigator) { - knownGlobals.push(global.Navigator); -} - -if (global.Performance) { - knownGlobals.push(global.Performance); -} -if (global.performance) { - knownGlobals.push(global.performance); -} -if (global.PerformanceMark) { - knownGlobals.push(global.PerformanceMark); -} -if (global.PerformanceMeasure) { - knownGlobals.push(global.PerformanceMeasure); -} - -// TODO(@ethan-arrowood): Similar to previous checks, this can be temporary -// until v16.x is EOL. Once all supported versions have structuredClone we -// can add this to the list above instead. -if (global.structuredClone) { - knownGlobals.push(global.structuredClone); -} - -if (global.EventSource) { - knownGlobals.push(EventSource); -} - -if (global.fetch) { - knownGlobals.push(fetch); -} -if (hasCrypto && global.crypto) { - knownGlobals.push(global.crypto); - knownGlobals.push(global.Crypto); - knownGlobals.push(global.CryptoKey); - knownGlobals.push(global.SubtleCrypto); -} -if (global.CustomEvent) { - knownGlobals.push(global.CustomEvent); -} -if (global.ReadableStream) { - knownGlobals.push( - global.ReadableStream, - global.ReadableStreamDefaultReader, - global.ReadableStreamBYOBReader, - global.ReadableStreamBYOBRequest, - global.ReadableByteStreamController, - global.ReadableStreamDefaultController, - global.TransformStream, - global.TransformStreamDefaultController, - global.WritableStream, - global.WritableStreamDefaultWriter, - global.WritableStreamDefaultController, - global.ByteLengthQueuingStrategy, - global.CountQueuingStrategy, - global.TextEncoderStream, - global.TextDecoderStream, - global.CompressionStream, - global.DecompressionStream, - ); -} + structuredClone, +]); + +['gc', + // The following are assumed to be conditionally available in the + // global object currently. They can likely be added to the fixed + // set of known globals, however. + 'fetch', + 'navigator', + 'Navigator', + 'performance', + 'Performance', + 'PerformanceMark', + 'PerformanceMeasure', + 'EventSource', + 'CustomEvent', + 'ReadableStream', + 'ReadableStreamDefaultReader', + 'ReadableStreamBYOBReader', + 'ReadableStreamBYOBRequest', + 'ReadableByteStreamController', + 'ReadableStreamDefaultController', + 'TransformStream', + 'TransformStreamDefaultController', + 'WritableStream', + 'WritableStreamDefaultWriter', + 'WritableStreamDefaultController', + 'ByteLengthQueuingStrategy', + 'CountQueuingStrategy', + 'TextEncoderStream', + 'TextDecoderStream', + 'CompressionStream', + 'DecompressionStream', + 'Storage', + 'localStorage', + 'sessionStorage', +].forEach((i) => { + if (globalThis[i] !== undefined) { + knownGlobals.add(globalThis[i]); + } +}); -if (global.Storage) { - knownGlobals.push( - global.localStorage, - global.sessionStorage, - global.Storage, - ); +if (hasCrypto) { + knownGlobals.add(globalThis.crypto); + knownGlobals.add(globalThis.Crypto); + knownGlobals.add(globalThis.CryptoKey); + knownGlobals.add(globalThis.SubtleCrypto); } function allowGlobals(...allowlist) { - knownGlobals = knownGlobals.concat(allowlist); + for (const val of allowlist) { + knownGlobals.add(val); + } } if (process.env.NODE_TEST_KNOWN_GLOBALS !== '0') { @@ -401,10 +342,13 @@ if (process.env.NODE_TEST_KNOWN_GLOBALS !== '0') { function leakedGlobals() { const leaked = []; - for (const val in global) { + for (const val in globalThis) { // globalThis.crypto is a getter that throws if Node.js was compiled - // without OpenSSL. - if (val !== 'crypto' && !knownGlobals.includes(global[val])) { + // without OpenSSL so we'll skip it if it is not available. + if (val === 'crypto' && !hasCrypto) { + continue; + } + if (!knownGlobals.has(globalThis[val])) { leaked.push(val); } } @@ -510,15 +454,6 @@ function _mustCallInner(fn, criteria = 1, field) { return _return; } -function hasMultiLocalhost() { - const { internalBinding } = require('internal/test/binding'); - const { TCP, constants: TCPConstants } = internalBinding('tcp_wrap'); - const t = new TCP(TCPConstants.SOCKET); - const ret = t.bind('127.0.0.2', 0); - t.close(); - return ret === 0; -} - function skipIfEslintMissing() { if (!fs.existsSync( path.join(__dirname, '..', '..', 'tools', 'eslint', 'node_modules', 'eslint'), @@ -539,6 +474,7 @@ function canCreateSymLink() { 'System32', 'whoami.exe'); try { + const { execSync } = require('child_process'); const output = execSync(`${whoamiPath} /priv`, { timeout: 1000 }); return output.includes('SeCreateSymbolicLinkPrivilege'); } catch { @@ -746,12 +682,6 @@ function skipIf32Bits() { } } -function skipIfWorker() { - if (!isMainThread) { - skip('This test only works on a main thread'); - } -} - function getArrayBufferViews(buf) { const { buffer, byteOffset, byteLength } = buf; @@ -836,12 +766,6 @@ function invalidArgTypeHelper(input) { return ` Received type ${typeof input} (${inspected})`; } -function skipIfDumbTerminal() { - if (isDumbTerminal) { - skip('skipping - dumb terminal'); - } -} - function requireNoPackageJSONAbove(dir = __dirname) { let possiblePackage = path.join(dir, '..', 'package.json'); let lastPackage = null; @@ -857,6 +781,7 @@ function requireNoPackageJSONAbove(dir = __dirname) { } function spawnPromisified(...args) { + const { spawn } = require('child_process'); let stderr = ''; let stdout = ''; @@ -912,45 +837,6 @@ function escapePOSIXShell(cmdParts, ...args) { return [cmd, { env }]; }; -function getPrintedStackTrace(stderr) { - const lines = stderr.split('\n'); - - let state = 'initial'; - const result = { - message: [], - nativeStack: [], - jsStack: [], - }; - for (let i = 0; i < lines.length; ++i) { - const line = lines[i].trim(); - if (line.length === 0) { - continue; // Skip empty lines. - } - - switch (state) { - case 'initial': - result.message.push(line); - if (line.includes('Native stack trace')) { - state = 'native-stack'; - } else { - result.message.push(line); - } - break; - case 'native-stack': - if (line.includes('JavaScript stack trace')) { - state = 'js-stack'; - } else { - result.nativeStack.push(line); - } - break; - case 'js-stack': - result.jsStack.push(line); - break; - } - } - return result; -} - /** * Check the exports of require(esm). * TODO(joyeecheung): use it in all the test-require-module-* tests to minimize changes @@ -959,6 +845,7 @@ function getPrintedStackTrace(stderr) { * @param {object} expectation shape of expected namespace. */ function expectRequiredModule(mod, expectation, checkESModule = true) { + const { isModuleNamespaceObject } = require('util/types'); const clone = { ...mod }; if (Object.hasOwn(mod, 'default') && checkESModule) { assert.strictEqual(mod.__esModule, true); @@ -973,7 +860,6 @@ const common = { buildType, canCreateSymLink, childShouldThrowAndAbort, - createZeroFilledFile, defaultAutoSelectFamilyAttemptTimeout, escapePOSIXShell, expectsError, @@ -981,21 +867,16 @@ const common = { expectWarning, getArrayBufferViews, getBufferSources, - getPrintedStackTrace, getTTYfd, hasIntl, hasCrypto, - hasOpenSSL, hasQuic, - hasMultiLocalhost, invalidArgTypeHelper, isAlive, isASan, isDebug, - isDumbTerminal, isFreeBSD, isLinux, - isMainThread, isOpenBSD, isMacOS, isPi, @@ -1017,20 +898,14 @@ const common = { runWithInvalidFD, skip, skipIf32Bits, - skipIfDumbTerminal, skipIfEslintMissing, skipIfInspectorDisabled, - skipIfWorker, spawnPromisified, get enoughTestMem() { return require('os').totalmem() > 0x70000000; /* 1.75 Gb */ }, - get hasFipsCrypto() { - return hasCrypto && require('crypto').getFips(); - }, - get hasIPv6() { const iFaces = require('os').networkInterfaces(); let re; @@ -1047,11 +922,8 @@ const common = { }); }, - get hasOpenSSL3() { - return hasOpenSSL(3); - }, - get inFreeBSDJail() { + const { execSync } = require('child_process'); if (inFreeBSDJail !== null) return inFreeBSDJail; if (exports.isFreeBSD && @@ -1074,11 +946,6 @@ const common = { return require('os').type() === 'OS400'; }, - get isLinuxPPCBE() { - return (process.platform === 'linux') && (process.arch === 'ppc64') && - (require('os').endianness() === 'BE'); - }, - get localhostIPv4() { if (localhostIPv4 !== null) return localhostIPv4; @@ -1100,28 +967,6 @@ const common = { return localhostIPv4; }, - // opensslCli defined lazily to reduce overhead of spawnSync - get opensslCli() { - if (opensslCli !== null) return opensslCli; - - if (process.config.variables.node_shared_openssl) { - // Use external command - opensslCli = 'openssl'; - } else { - // Use command built from sources included in Node.js repository - opensslCli = path.join(path.dirname(process.execPath), 'openssl-cli'); - } - - if (exports.isWindows) opensslCli += '.exe'; - - const opensslCmd = spawnSync(opensslCli, ['version']); - if (opensslCmd.status !== 0 || opensslCmd.error !== undefined) { - // OpenSSL command cannot be executed - opensslCli = false; - } - return opensslCli; - }, - get PORT() { if (+process.env.TEST_PARALLEL) { throw new Error('common.PORT cannot be used in a parallelized test'); @@ -1129,11 +974,13 @@ const common = { return +process.env.NODE_COMMON_PORT || 12346; }, - /** - * Returns the EOL character used by this Git checkout. - */ - get checkoutEOL() { - return fs.readFileSync(__filename).includes('\r\n') ? '\r\n' : '\n'; + get isInsideDirWithUnusualChars() { + return __dirname.includes('%') || + (!isWindows && __dirname.includes('\\')) || + __dirname.includes('$') || + __dirname.includes('\n') || + __dirname.includes('\r') || + __dirname.includes('\t'); }, }; diff --git a/test/common/index.mjs b/test/common/index.mjs index 748977b85f8012..dd0adadcb28d38 100644 --- a/test/common/index.mjs +++ b/test/common/index.mjs @@ -7,9 +7,7 @@ const { allowGlobals, buildType, canCreateSymLink, - checkoutEOL, childShouldThrowAndAbort, - createZeroFilledFile, enoughTestMem, escapePOSIXShell, expectsError, @@ -20,15 +18,12 @@ const { hasCrypto, hasIntl, hasIPv6, - hasMultiLocalhost, isAIX, isAlive, - isDumbTerminal, isFreeBSD, isIBMi, + isInsideDirWithUnusualChars, isLinux, - isLinuxPPCBE, - isMainThread, isOpenBSD, isMacOS, isSunOS, @@ -40,7 +35,6 @@ const { mustNotMutateObjectDeep, mustSucceed, nodeProcessAborted, - opensslCli, parseTestFlags, PIPE, platformTimeout, @@ -48,7 +42,6 @@ const { runWithInvalidFD, skip, skipIf32Bits, - skipIfDumbTerminal, skipIfEslintMissing, skipIfInspectorDisabled, spawnPromisified, @@ -60,10 +53,8 @@ export { allowGlobals, buildType, canCreateSymLink, - checkoutEOL, childShouldThrowAndAbort, createRequire, - createZeroFilledFile, enoughTestMem, escapePOSIXShell, expectsError, @@ -75,15 +66,12 @@ export { hasCrypto, hasIntl, hasIPv6, - hasMultiLocalhost, isAIX, isAlive, - isDumbTerminal, isFreeBSD, isIBMi, + isInsideDirWithUnusualChars, isLinux, - isLinuxPPCBE, - isMainThread, isOpenBSD, isMacOS, isSunOS, @@ -95,7 +83,6 @@ export { mustNotMutateObjectDeep, mustSucceed, nodeProcessAborted, - opensslCli, parseTestFlags, PIPE, platformTimeout, @@ -103,7 +90,6 @@ export { runWithInvalidFD, skip, skipIf32Bits, - skipIfDumbTerminal, skipIfEslintMissing, skipIfInspectorDisabled, spawnPromisified, diff --git a/test/common/net.js b/test/common/net.js index 84eddd0966ed56..3886c542421005 100644 --- a/test/common/net.js +++ b/test/common/net.js @@ -17,7 +17,17 @@ function checkSupportReusePort() { }); } +function hasMultiLocalhost() { + const { internalBinding } = require('internal/test/binding'); + const { TCP, constants: TCPConstants } = internalBinding('tcp_wrap'); + const t = new TCP(TCPConstants.SOCKET); + const ret = t.bind('127.0.0.2', 0); + t.close(); + return ret === 0; +} + module.exports = { checkSupportReusePort, + hasMultiLocalhost, options, }; diff --git a/test/common/test-error-reporter.js b/test/common/test-error-reporter.js new file mode 100644 index 00000000000000..d6db28e675ad6f --- /dev/null +++ b/test/common/test-error-reporter.js @@ -0,0 +1,41 @@ +'use strict'; +const { relative } = require('node:path'); +const { inspect } = require('node:util'); +const cwd = process.cwd(); + +module.exports = async function* errorReporter(source) { + for await (const event of source) { + if (event.type === 'test:fail') { + const { name, details, line, column, file } = event.data; + let { error } = details; + + if (error?.failureType === 'subtestsFailed') { + // In the interest of keeping things concise, skip failures that are + // only due to nested failures. + continue; + } + + if (error?.code === 'ERR_TEST_FAILURE') { + error = error.cause; + } + + const output = [ + `Test failure: '${name}'`, + ]; + + if (file) { + output.push(`Location: ${relative(cwd, file)}:${line}:${column}`); + } + + output.push(inspect(error)); + output.push('\n'); + yield output.join('\n'); + + if (process.env.FAIL_FAST) { + yield `\nBailing on failed test: ${event.data.name}\n`; + process.exitCode = 1; + process.emit('SIGINT'); + } + } + } +}; diff --git a/test/es-module/test-esm-invalid-pjson.js b/test/es-module/test-esm-invalid-pjson.js index 8eb417eec3a1a5..2235aa00e90653 100644 --- a/test/es-module/test-esm-invalid-pjson.js +++ b/test/es-module/test-esm-invalid-pjson.js @@ -19,6 +19,8 @@ describe('ESM: Package.json', { concurrency: !process.env.TEST_PARALLEL }, () => assert.ok( stderr.includes( `Invalid package config ${path.toNamespacedPath(invalidJson)} while importing "invalid-pjson" from ${entry}.` + ) || stderr.includes( + `Invalid package config ${path.toNamespacedPath(invalidJson)} while importing "invalid-pjson" from ${path.toNamespacedPath(entry)}.` ), stderr ); diff --git a/test/es-module/test-esm-resolve-type.mjs b/test/es-module/test-esm-resolve-type.mjs index 7ba1fcbf1437ce..b005ada776f5d3 100644 --- a/test/es-module/test-esm-resolve-type.mjs +++ b/test/es-module/test-esm-resolve-type.mjs @@ -13,8 +13,10 @@ import path from 'path'; import fs from 'fs'; import url from 'url'; import process from 'process'; +import { isMainThread } from 'worker_threads'; -if (!common.isMainThread) { + +if (!isMainThread) { common.skip( 'test-esm-resolve-type.mjs: process.chdir is not available in Workers' ); diff --git a/test/es-module/test-typescript-eval.mjs b/test/es-module/test-typescript-eval.mjs index e6d841ffa07f7e..38744de7185179 100644 --- a/test/es-module/test-typescript-eval.mjs +++ b/test/es-module/test-typescript-eval.mjs @@ -1,5 +1,5 @@ import { skip, spawnPromisified } from '../common/index.mjs'; -import { match, strictEqual } from 'node:assert'; +import { doesNotMatch, match, strictEqual } from 'node:assert'; import { test } from 'node:test'; if (!process.config.variables.node_use_amaro) skip('Requires Amaro'); @@ -20,7 +20,7 @@ test('eval TypeScript ESM syntax', async () => { test('eval TypeScript ESM syntax with input-type module', async () => { const result = await spawnPromisified(process.execPath, [ '--experimental-strip-types', - '--input-type=module', + '--input-type=module-typescript', '--eval', `import util from 'node:util' const text: string = 'Hello, TypeScript!' @@ -37,17 +37,16 @@ test('eval TypeScript CommonJS syntax', async () => { '--eval', `const util = require('node:util'); const text: string = 'Hello, TypeScript!' - console.log(util.styleText('red', text));`, - '--no-warnings']); + console.log(util.styleText('red', text));`]); match(result.stdout, /Hello, TypeScript!/); - strictEqual(result.stderr, ''); + match(result.stderr, /ExperimentalWarning: Type Stripping is an experimental/); strictEqual(result.code, 0); }); -test('eval TypeScript CommonJS syntax with input-type commonjs', async () => { +test('eval TypeScript CommonJS syntax with input-type commonjs-typescript', async () => { const result = await spawnPromisified(process.execPath, [ '--experimental-strip-types', - '--input-type=commonjs', + '--input-type=commonjs-typescript', '--eval', `const util = require('node:util'); const text: string = 'Hello, TypeScript!' @@ -84,10 +83,10 @@ test('TypeScript ESM syntax not specified', async () => { strictEqual(result.code, 0); }); -test('expect fail eval TypeScript CommonJS syntax with input-type module', async () => { +test('expect fail eval TypeScript CommonJS syntax with input-type module-typescript', async () => { const result = await spawnPromisified(process.execPath, [ '--experimental-strip-types', - '--input-type=module', + '--input-type=module-typescript', '--eval', `const util = require('node:util'); const text: string = 'Hello, TypeScript!' @@ -98,10 +97,10 @@ test('expect fail eval TypeScript CommonJS syntax with input-type module', async strictEqual(result.code, 1); }); -test('expect fail eval TypeScript ESM syntax with input-type commonjs', async () => { +test('expect fail eval TypeScript ESM syntax with input-type commonjs-typescript', async () => { const result = await spawnPromisified(process.execPath, [ '--experimental-strip-types', - '--input-type=commonjs', + '--input-type=commonjs-typescript', '--eval', `import util from 'node:util' const text: string = 'Hello, TypeScript!' @@ -111,12 +110,156 @@ test('expect fail eval TypeScript ESM syntax with input-type commonjs', async () strictEqual(result.code, 1); }); -test('check syntax error is thrown when passing invalid syntax', async () => { +test('check syntax error is thrown when passing unsupported syntax', async () => { const result = await spawnPromisified(process.execPath, [ '--experimental-strip-types', '--eval', 'enum Foo { A, B, C }']); strictEqual(result.stdout, ''); + match(result.stderr, /SyntaxError/); + doesNotMatch(result.stderr, /ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('check syntax error is thrown when passing unsupported syntax with --input-type=module-typescript', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=module-typescript', + '--eval', + 'enum Foo { A, B, C }']); + strictEqual(result.stdout, ''); + match(result.stderr, /ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('check syntax error is thrown when passing unsupported syntax with --input-type=commonjs-typescript', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=commonjs-typescript', + '--eval', + 'enum Foo { A, B, C }']); + strictEqual(result.stdout, ''); + match(result.stderr, /ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('should not parse TypeScript with --type-module=commonjs', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=commonjs', + '--eval', + `enum Foo {}`]); + + strictEqual(result.stdout, ''); + match(result.stderr, /SyntaxError/); + doesNotMatch(result.stderr, /ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('should not parse TypeScript with --type-module=module', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=module', + '--eval', + `enum Foo {}`]); + + strictEqual(result.stdout, ''); + match(result.stderr, /SyntaxError/); + doesNotMatch(result.stderr, /ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('check warning is emitted when eval TypeScript CommonJS syntax', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + `const util = require('node:util'); + const text: string = 'Hello, TypeScript!' + console.log(util.styleText('red', text));`]); + match(result.stderr, /ExperimentalWarning: Type Stripping is an experimental/); + match(result.stdout, /Hello, TypeScript!/); + strictEqual(result.code, 0); +}); + +test('code is throwing a non Error is rethrown', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + `throw null;`]); + doesNotMatch(result.stderr, /node:internal\/process\/execution/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); + +test('code is throwing an error with customized accessors', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + `throw Object.defineProperty(new Error, "stack", { set() {throw this} });`]); + + match(result.stderr, /Error/); + match(result.stderr, /at \[eval\]:1:29/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); + +test('typescript code is throwing an error', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + `const foo: string = 'Hello, TypeScript!'; throw new Error(foo);`]); + + match(result.stderr, /Hello, TypeScript!/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); + +test('typescript ESM code is throwing a syntax error at runtime', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + 'import util from "node:util"; function foo(){}; throw new SyntaxError(foo<Number>(1));']); + // Trick by passing ambiguous syntax to see if evaluated in TypeScript or JavaScript + // If evaluated in JavaScript `foo<Number>(1)` is evaluated as `foo < Number > (1)` + // result in false + // If evaluated in TypeScript `foo<Number>(1)` is evaluated as `foo(1)` + match(result.stderr, /SyntaxError: false/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); + +test('typescript CJS code is throwing a syntax error at runtime', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--eval', + 'const util = require("node:util"); function foo(){}; throw new SyntaxError(foo<Number>(1));']); + // Trick by passing ambiguous syntax to see if evaluated in TypeScript or JavaScript + // If evaluated in JavaScript `foo<Number>(1)` is evaluated as `foo < Number > (1)` + // result in false + // If evaluated in TypeScript `foo<Number>(1)` is evaluated as `foo(1)` + match(result.stderr, /SyntaxError: false/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); + +test('check syntax error is thrown when passing invalid syntax with --input-type=commonjs-typescript', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=commonjs-typescript', + '--eval', + 'function foo(){ await Promise.resolve(1); }']); + strictEqual(result.stdout, ''); + match(result.stderr, /ERR_INVALID_TYPESCRIPT_SYNTAX/); + strictEqual(result.code, 1); +}); + +test('check syntax error is thrown when passing invalid syntax with --input-type=module-typescript', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--input-type=module-typescript', + '--eval', + 'function foo(){ await Promise.resolve(1); }']); + strictEqual(result.stdout, ''); match(result.stderr, /ERR_INVALID_TYPESCRIPT_SYNTAX/); strictEqual(result.code, 1); }); diff --git a/test/es-module/test-typescript.mjs b/test/es-module/test-typescript.mjs index 44a5431c37b479..abaa2f647fbe86 100644 --- a/test/es-module/test-typescript.mjs +++ b/test/es-module/test-typescript.mjs @@ -1,4 +1,4 @@ -import { skip, spawnPromisified, isWindows } from '../common/index.mjs'; +import { skip, spawnPromisified } from '../common/index.mjs'; import * as fixtures from '../common/fixtures.mjs'; import { match, strictEqual } from 'node:assert'; import { test } from 'node:test'; @@ -359,10 +359,7 @@ test('execute a JavaScript file importing a cjs TypeScript file', async () => { strictEqual(result.code, 0); }); -// TODO(marco-ippolito) Due to a bug in SWC, the TypeScript loader -// does not work on Windows arm64. This test should be re-enabled -// when https://github.com/nodejs/node/issues/54645 is fixed -test('execute a TypeScript test mocking module', { skip: isWindows && process.arch === 'arm64' }, async () => { +test('execute a TypeScript test mocking module', async () => { const result = await spawnPromisified(process.execPath, [ '--test', '--experimental-test-module-mocks', @@ -412,3 +409,40 @@ test('expect error when executing a TypeScript file with generics', async () => strictEqual(result.stdout, ''); strictEqual(result.code, 1); }); + +test('execute a TypeScript loader and a .ts file', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--no-warnings', + '--import', + fixtures.fileURL('typescript/ts/test-loader.ts'), + fixtures.path('typescript/ts/test-typescript.ts'), + ]); + strictEqual(result.stderr, ''); + match(result.stdout, /Hello, TypeScript!/); + strictEqual(result.code, 0); +}); + +test('execute a TypeScript loader and a .js file', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + '--no-warnings', + '--import', + fixtures.fileURL('typescript/ts/test-loader.ts'), + fixtures.path('typescript/ts/test-simple.js'), + ]); + strictEqual(result.stderr, ''); + match(result.stdout, /Hello, TypeScript!/); + strictEqual(result.code, 0); +}); + +test('execute invalid TypeScript syntax', async () => { + const result = await spawnPromisified(process.execPath, [ + '--experimental-strip-types', + fixtures.path('typescript/ts/test-invalid-syntax.ts'), + ]); + + match(result.stderr, /ERR_INVALID_TYPESCRIPT_SYNTAX/); + strictEqual(result.stdout, ''); + strictEqual(result.code, 1); +}); diff --git a/test/es-module/test-vm-main-context-default-loader.js b/test/es-module/test-vm-main-context-default-loader.js index f9edc761465d96..bda954be6ebf97 100644 --- a/test/es-module/test-vm-main-context-default-loader.js +++ b/test/es-module/test-vm-main-context-default-loader.js @@ -3,7 +3,11 @@ const common = require('../common'); // Can't process.chdir() in worker. -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const tmpdir = require('../common/tmpdir'); const fixtures = require('../common/fixtures'); diff --git "a/test/fixtures/copy/utf/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/experimental.json" "b/test/fixtures/copy/utf/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/experimental.json" new file mode 100644 index 00000000000000..12611d2385a5a5 --- /dev/null +++ "b/test/fixtures/copy/utf/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/experimental.json" @@ -0,0 +1,3 @@ +{ + "ofLife": 42 +} diff --git a/test/fixtures/disable-signal/sigusr1.js b/test/fixtures/disable-signal/sigusr1.js new file mode 100644 index 00000000000000..6abf3ab2b5888a --- /dev/null +++ b/test/fixtures/disable-signal/sigusr1.js @@ -0,0 +1,2 @@ +console.log('pid is', process.pid); +setInterval(() => {}, 1000); diff --git a/test/fixtures/errors/core_line_numbers.snapshot b/test/fixtures/errors/core_line_numbers.snapshot index 54cdb52744b29e..9ef06c33af8e28 100644 --- a/test/fixtures/errors/core_line_numbers.snapshot +++ b/test/fixtures/errors/core_line_numbers.snapshot @@ -1,10 +1,10 @@ -node:punycode:49 +node:punycode:54 throw new RangeError(errors[type]); ^ RangeError: Invalid input - at error (node:punycode:49:8) - at Object.decode (node:punycode:242:5) + at error (node:punycode:54:8) + at Object.decode (node:punycode:247:5) at Object.<anonymous> (*core_line_numbers.js:13:10) Node.js * diff --git a/test/fixtures/errors/throw_in_eval_anonymous.js b/test/fixtures/errors/throw_in_eval_anonymous.js new file mode 100644 index 00000000000000..aa9ab6a05803bb --- /dev/null +++ b/test/fixtures/errors/throw_in_eval_anonymous.js @@ -0,0 +1,9 @@ +'use strict'; +require('../../common'); + +Error.stackTraceLimit = 1; +eval(` + + throw new Error('error in anonymous script'); + +`) diff --git a/test/fixtures/errors/throw_in_eval_anonymous.snapshot b/test/fixtures/errors/throw_in_eval_anonymous.snapshot new file mode 100644 index 00000000000000..e6f731f4d99cd7 --- /dev/null +++ b/test/fixtures/errors/throw_in_eval_anonymous.snapshot @@ -0,0 +1,8 @@ +<anonymous_script>:* + throw new Error('error in anonymous script'); + ^ + +Error: error in anonymous script + at eval (eval at <anonymous> (*throw_in_eval_anonymous.js:*:*), <anonymous>:*:*) + +Node.js * diff --git a/test/fixtures/errors/throw_in_eval_named.js b/test/fixtures/errors/throw_in_eval_named.js new file mode 100644 index 00000000000000..0d33fcf4d05dd5 --- /dev/null +++ b/test/fixtures/errors/throw_in_eval_named.js @@ -0,0 +1,9 @@ +'use strict'; +require('../../common'); + +Error.stackTraceLimit = 1; +eval(` + + throw new Error('error in named script'); + +//# sourceURL=evalscript.js`) diff --git a/test/fixtures/errors/throw_in_eval_named.snapshot b/test/fixtures/errors/throw_in_eval_named.snapshot new file mode 100644 index 00000000000000..3be4c3584735fb --- /dev/null +++ b/test/fixtures/errors/throw_in_eval_named.snapshot @@ -0,0 +1,8 @@ +evalscript.js:* + throw new Error('error in named script'); + ^ + +Error: error in named script + at eval (evalscript.js:*:*) + +Node.js * diff --git a/test/message/eval_messages.js b/test/fixtures/eval/eval_messages.js similarity index 98% rename from test/message/eval_messages.js rename to test/fixtures/eval/eval_messages.js index 69dcbd6efa23a7..171bff06b8d6e9 100644 --- a/test/message/eval_messages.js +++ b/test/fixtures/eval/eval_messages.js @@ -21,7 +21,7 @@ 'use strict'; -require('../common'); +require('../../common'); const spawn = require('child_process').spawn; diff --git a/test/fixtures/eval/eval_messages.snapshot b/test/fixtures/eval/eval_messages.snapshot new file mode 100644 index 00000000000000..f6fc803e0e3ec3 --- /dev/null +++ b/test/fixtures/eval/eval_messages.snapshot @@ -0,0 +1,49 @@ +[eval] +[eval]:1 +with(this){__filename} +^^^^ + +SyntaxError: Strict mode code may not include a with statement + +Node.js * +42 +42 +[eval]:1 +throw new Error("hello") +^ + +Error: hello + +Node.js * +[eval]:1 +throw new Error("hello") +^ + +Error: hello + +Node.js * +100 +[eval]:1 +var x = 100; y = x; + ^ + +ReferenceError: y is not defined + +Node.js * + +[eval]:1 +var ______________________________________________; throw 10 + ^ +10 +(Use `node --trace-uncaught ...` to show where the exception was thrown) + +Node.js * + +[eval]:1 +var ______________________________________________; throw 10 + ^ +10 +(Use `node --trace-uncaught ...` to show where the exception was thrown) + +Node.js * +done diff --git a/test/fixtures/eval/eval_typescript.js b/test/fixtures/eval/eval_typescript.js new file mode 100644 index 00000000000000..d16eefc8d42c9b --- /dev/null +++ b/test/fixtures/eval/eval_typescript.js @@ -0,0 +1,25 @@ +'use strict'; + +require('../../common'); + +const spawnSync = require('child_process').spawnSync; + +const queue = [ + 'enum Foo{};', + 'throw new SyntaxError("hello")', + 'const foo;', + 'let x: number = 100;x;', + 'const foo: string = 10;', + 'function foo(){};foo<Number>(1);', + 'interface Foo{};const foo;', + 'function foo(){ await Promise.resolve(1)};', +]; + +for (const cmd of queue) { + const args = ['--disable-warning=ExperimentalWarning','--experimental-strip-types', '-p', cmd]; + const result = spawnSync(process.execPath, args, { + stdio: 'pipe' + }); + process.stdout.write(result.stdout); + process.stdout.write(result.stderr); +} diff --git a/test/fixtures/eval/eval_typescript.snapshot b/test/fixtures/eval/eval_typescript.snapshot new file mode 100644 index 00000000000000..074e966e51e0f5 --- /dev/null +++ b/test/fixtures/eval/eval_typescript.snapshot @@ -0,0 +1,48 @@ +[eval]:1 +enum Foo{}; +^^^^ + x TypeScript enum is not supported in strip-only mode + ,---- + 1 | enum Foo{}; + : ^^^^^^^^^^ + `---- + +SyntaxError: Unexpected reserved word + +Node.js * +[eval]:1 +throw new SyntaxError("hello") +^ + +SyntaxError: hello + +Node.js * +[eval]:1 +const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +100 +undefined +false +[eval]:1 + ;const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +[eval]:1 +function foo(){ await Promise.resolve(1)}; + ^^^^^ + x await isn't allowed in non-async function + ,---- + 1 | function foo(){ await Promise.resolve(1)}; + : ^^^^^^^ + `---- + +SyntaxError: await is only valid in async functions and the top level bodies of modules + +Node.js * diff --git a/test/message/stdin_messages.js b/test/fixtures/eval/stdin_messages.js similarity index 96% rename from test/message/stdin_messages.js rename to test/fixtures/eval/stdin_messages.js index 79475bd4d217b6..a5bac683fb6ed4 100644 --- a/test/message/stdin_messages.js +++ b/test/fixtures/eval/stdin_messages.js @@ -21,12 +21,12 @@ 'use strict'; -require('../common'); +require('../../common'); const spawn = require('child_process').spawn; function run(cmd, strict, cb) { - const args = []; + const args = ['--experimental-strip-types']; if (strict) args.push('--use_strict'); args.push('-p'); const child = spawn(process.execPath, args); diff --git a/test/fixtures/eval/stdin_messages.snapshot b/test/fixtures/eval/stdin_messages.snapshot new file mode 100644 index 00000000000000..66bd506f758ca9 --- /dev/null +++ b/test/fixtures/eval/stdin_messages.snapshot @@ -0,0 +1,54 @@ +[stdin] +[stdin]:1 +with(this){__filename} +^^^^ + x The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'. + ,---- + 1 | with(this){__filename} + : ^^^^ + `---- + +SyntaxError: Strict mode code may not include a with statement + +Node.js * +42 +42 +[stdin]:1 +throw new Error("hello") +^ + +Error: hello + +Node.js * +[stdin]:1 +throw new Error("hello") +^ + +Error: hello + +Node.js * +100 +[stdin]:1 +let x = 100; y = x; + ^ + +ReferenceError: y is not defined + +Node.js * + +[stdin]:1 +let ______________________________________________; throw 10 + ^ +10 +(Use `node --trace-uncaught ...` to show where the exception was thrown) + +Node.js * + +[stdin]:1 +let ______________________________________________; throw 10 + ^ +10 +(Use `node --trace-uncaught ...` to show where the exception was thrown) + +Node.js * +done diff --git a/test/fixtures/eval/stdin_typescript.js b/test/fixtures/eval/stdin_typescript.js new file mode 100644 index 00000000000000..800ff6cbcb76c4 --- /dev/null +++ b/test/fixtures/eval/stdin_typescript.js @@ -0,0 +1,38 @@ +'use strict'; + +require('../../common'); + +const spawn = require('child_process').spawn; + +function run(cmd, strict, cb) { + const args = ['--disable-warning=ExperimentalWarning', '--experimental-strip-types']; + if (strict) args.push('--use_strict'); + args.push('-p'); + const child = spawn(process.execPath, args); + child.stdout.pipe(process.stdout); + child.stderr.pipe(process.stdout); + child.stdin.end(cmd); + child.on('close', cb); +} + +const queue = + [ + 'enum Foo{};', + 'throw new SyntaxError("hello")', + 'const foo;', + 'let x: number = 100;x;', + 'const foo: string = 10;', + 'function foo(){};foo<Number>(1);', + 'interface Foo{};const foo;', + 'function foo(){ await Promise.resolve(1)};', + ]; + +function go() { + const c = queue.shift(); + if (!c) return console.log('done'); + run(c, false, function () { + run(c, true, go); + }); +} + +go(); diff --git a/test/fixtures/eval/stdin_typescript.snapshot b/test/fixtures/eval/stdin_typescript.snapshot new file mode 100644 index 00000000000000..3e209e6db2973a --- /dev/null +++ b/test/fixtures/eval/stdin_typescript.snapshot @@ -0,0 +1,97 @@ +[stdin]:1 +enum Foo{}; +^^^^ + x TypeScript enum is not supported in strip-only mode + ,---- + 1 | enum Foo{}; + : ^^^^^^^^^^ + `---- + +SyntaxError: Unexpected reserved word + +Node.js * +[stdin]:1 +enum Foo{}; +^^^^ + x TypeScript enum is not supported in strip-only mode + ,---- + 1 | enum Foo{}; + : ^^^^^^^^^^ + `---- + +SyntaxError: Unexpected reserved word + +Node.js * +[stdin]:1 +throw new SyntaxError("hello") +^ + +SyntaxError: hello + +Node.js * +[stdin]:1 +throw new SyntaxError("hello") +^ + +SyntaxError: hello + +Node.js * +[stdin]:1 +const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +[stdin]:1 +const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +100 +100 +undefined +undefined +false +false +[stdin]:1 + ;const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +[stdin]:1 + ;const foo; + ^^^ + +SyntaxError: Missing initializer in const declaration + +Node.js * +[stdin]:1 +function foo(){ await Promise.resolve(1)}; + ^^^^^ + x await isn't allowed in non-async function + ,---- + 1 | function foo(){ await Promise.resolve(1)}; + : ^^^^^^^ + `---- + +SyntaxError: await is only valid in async functions and the top level bodies of modules + +Node.js * +[stdin]:1 +function foo(){ await Promise.resolve(1)}; + ^^^^^ + x await isn't allowed in non-async function + ,---- + 1 | function foo(){ await Promise.resolve(1)}; + : ^^^^^^^ + `---- + +SyntaxError: await is only valid in async functions and the top level bodies of modules + +Node.js * +done diff --git a/test/fixtures/icu/localizationData-v74.2.json b/test/fixtures/icu/localizationData-v74.2.json index 65671ba5acb299..1cca79672ac25e 100644 --- a/test/fixtures/icu/localizationData-v74.2.json +++ b/test/fixtures/icu/localizationData-v74.2.json @@ -20,14 +20,14 @@ "dateTimeFormats": { "en": "7/25/1980, 1:35:33 AM", "zh": "1980/7/25 01:35:33", - "hi": "25/7/1980, 1:35:33 am", + "hi": "25/7/1980, पू 1:35:33", "es": "25/7/1980, 1:35:33", "fr": "25/07/1980 01:35:33", - "ar": "٢٥‏/٧‏/١٩٨٠، ١:٣٥:٣٣ ص", + "ar": "25‏/7‏/1980، 1:35:33 ص", "bn": "২৫/৭/১৯৮০, ১:৩৫:৩৩ AM", "ru": "25.07.1980, 01:35:33", "pt": "25/07/1980, 01:35:33", - "ur": "25/7/1980، 1:35:33 AM", + "ur": "25/7/1980، 1:35:33 ق.د.", "id": "25/7/1980, 01.35.33", "de": "25.7.1980, 01:35:33", "ja": "1980/7/25 1:35:33", @@ -41,7 +41,7 @@ "hi": "25/7/1980", "es": "25/7/1980", "fr": "25/07/1980", - "ar": "٢٥‏/٧‏/١٩٨٠", + "ar": "25‏/7‏/1980", "bn": "২৫/৭/১৯৮০", "ru": "25.07.1980", "pt": "25/07/1980", @@ -77,7 +77,7 @@ "hi": "2,75,760.913", "es": "275.760,913", "fr": "275 760,913", - "ar": "٢٧٥٬٧٦٠٫٩١٣", + "ar": "275,760.913", "bn": "২,৭৫,৭৬০.৯১৩", "ru": "275 760,913", "pt": "275.760,913", @@ -113,7 +113,7 @@ "hi": "5,86,920.617 घंटे पहले", "es": "hace 586.920,617 horas", "fr": "il y a 586 920,617 heures", - "ar": "قبل ٥٨٦٬٩٢٠٫٦١٧ ساعة", + "ar": "قبل 586,920.617 ساعة", "bn": "৫,৮৬,৯২০.৬১৭ ঘন্টা আগে", "ru": "586 920,617 часа назад", "pt": "há 586.920,617 horas", diff --git a/test/fixtures/loader-is-internal-thread.js b/test/fixtures/loader-is-internal-thread.js new file mode 100644 index 00000000000000..d97328bc2075ac --- /dev/null +++ b/test/fixtures/loader-is-internal-thread.js @@ -0,0 +1,3 @@ +const { isInternalThread } = require('node:worker_threads'); + +console.log(`isInternalThread: ${isInternalThread}`); \ No newline at end of file diff --git a/test/fixtures/module-require/relative/subdir/relative-subdir.js b/test/fixtures/module-require/relative/subdir/relative-subdir.js new file mode 100644 index 00000000000000..34eb71b3c6ca39 --- /dev/null +++ b/test/fixtures/module-require/relative/subdir/relative-subdir.js @@ -0,0 +1 @@ +exports.value = 'relative subdir'; diff --git a/test/fixtures/packages/cjs-main-no-index/main.js b/test/fixtures/packages/cjs-main-no-index/main.js new file mode 100644 index 00000000000000..888cae37af95c5 --- /dev/null +++ b/test/fixtures/packages/cjs-main-no-index/main.js @@ -0,0 +1 @@ +module.exports = 42; diff --git a/test/fixtures/packages/cjs-main-no-index/other.js b/test/fixtures/packages/cjs-main-no-index/other.js new file mode 100644 index 00000000000000..8fa48276783484 --- /dev/null +++ b/test/fixtures/packages/cjs-main-no-index/other.js @@ -0,0 +1,3 @@ +const answer = require('./'); + +module.exports = answer+1; diff --git a/test/fixtures/packages/cjs-main-no-index/package.json b/test/fixtures/packages/cjs-main-no-index/package.json new file mode 100644 index 00000000000000..897d3f99daf7a2 --- /dev/null +++ b/test/fixtures/packages/cjs-main-no-index/package.json @@ -0,0 +1,5 @@ +{ + "name": "main-no-index", + "main": "./main.js", + "type":"commonjs" +} diff --git a/test/fixtures/packages/nested/package.json b/test/fixtures/packages/nested/package.json new file mode 100644 index 00000000000000..0ce6c71db42e8c --- /dev/null +++ b/test/fixtures/packages/nested/package.json @@ -0,0 +1 @@ +{"name": "package-with-sub-package"} diff --git a/test/fixtures/packages/nested/sub-pkg-cjs/index.js b/test/fixtures/packages/nested/sub-pkg-cjs/index.js new file mode 100644 index 00000000000000..679ad2d65ed570 --- /dev/null +++ b/test/fixtures/packages/nested/sub-pkg-cjs/index.js @@ -0,0 +1,3 @@ +const { findPackageJSON } = require('node:module'); + +module.exports = findPackageJSON('..', __filename); diff --git a/test/fixtures/packages/nested/sub-pkg-cjs/package.json b/test/fixtures/packages/nested/sub-pkg-cjs/package.json new file mode 100644 index 00000000000000..2dec7591cd6db8 --- /dev/null +++ b/test/fixtures/packages/nested/sub-pkg-cjs/package.json @@ -0,0 +1 @@ +{"name": "sub-package", "type": "commonjs"} diff --git a/test/fixtures/packages/nested/sub-pkg-esm/index.js b/test/fixtures/packages/nested/sub-pkg-esm/index.js new file mode 100644 index 00000000000000..546390de4bf3a5 --- /dev/null +++ b/test/fixtures/packages/nested/sub-pkg-esm/index.js @@ -0,0 +1,3 @@ +import { findPackageJSON } from 'node:module'; + +export default findPackageJSON('..', import.meta.url); diff --git a/test/fixtures/packages/nested/sub-pkg-esm/package.json b/test/fixtures/packages/nested/sub-pkg-esm/package.json new file mode 100644 index 00000000000000..c294ec5158824a --- /dev/null +++ b/test/fixtures/packages/nested/sub-pkg-esm/package.json @@ -0,0 +1 @@ +{"name": "sub-package", "type": "module"} diff --git a/test/fixtures/packages/root-types-field/index.js b/test/fixtures/packages/root-types-field/index.js new file mode 100644 index 00000000000000..e69de29bb2d1d6 diff --git a/test/fixtures/packages/root-types-field/package.json b/test/fixtures/packages/root-types-field/package.json new file mode 100644 index 00000000000000..4af68442446dd8 --- /dev/null +++ b/test/fixtures/packages/root-types-field/package.json @@ -0,0 +1,5 @@ +{ + "name": "package-with-unrecognised-fields", + "type": "module", + "types": "./index.d.ts" +} diff --git a/test/fixtures/permission/fs-write.js b/test/fixtures/permission/fs-write.js index 0c0ec72602041a..83fe3d234db290 100644 --- a/test/fixtures/permission/fs-write.js +++ b/test/fixtures/permission/fs-write.js @@ -1,7 +1,11 @@ 'use strict'; const common = require('../../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const fs = require('fs'); @@ -553,4 +557,4 @@ const relativeProtectedFolder = process.env.RELATIVEBLOCKEDFOLDER; }, { code: 'ERR_ACCESS_DENIED', }); -} \ No newline at end of file +} diff --git a/test/fixtures/permission/processbinding.js b/test/fixtures/permission/processbinding.js index bdb958fb01b5ca..69e2fac5d7f151 100644 --- a/test/fixtures/permission/processbinding.js +++ b/test/fixtures/permission/processbinding.js @@ -1,5 +1,9 @@ const common = require('../../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); diff --git a/test/fixtures/snapshot/child-process-sync.js b/test/fixtures/snapshot/child-process-sync.js index 5ffacb05357df6..956b027d387192 100644 --- a/test/fixtures/snapshot/child-process-sync.js +++ b/test/fixtures/snapshot/child-process-sync.js @@ -8,7 +8,8 @@ const { function spawn() { const { spawnSync, execFileSync, execSync } = require('child_process'); spawnSync(process.execPath, [ __filename, 'spawnSync' ], { stdio: 'inherit' }); - execSync(`"${process.execPath}" "${__filename}" "execSync"`, { stdio: 'inherit' }); + if (!process.env.DIRNAME_CONTAINS_SHELL_UNSAFE_CHARS) + execSync(`"${process.execPath}" "${__filename}" "execSync"`, { stdio: 'inherit' }); execFileSync(process.execPath, [ __filename, 'execFileSync' ], { stdio: 'inherit' }); } diff --git a/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site-min.js b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site-min.js new file mode 100644 index 00000000000000..45b7ed2b219b86 --- /dev/null +++ b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site-min.js @@ -0,0 +1,3 @@ +var functionA=function(){functionB()};function functionB(){functionC()}var functionC=function(){functionD()},functionD=function(){if(0<Math.random())throw Error("an error!");},thrower=functionA;try{functionA()}catch(a){throw a;}; +//# sourceMappingURL=enclosing-call-site.js.map + diff --git a/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js new file mode 100644 index 00000000000000..d00041506fad48 --- /dev/null +++ b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js @@ -0,0 +1,27 @@ +const functionA = () => { + functionB() +} + +function functionB() { + functionC() +} + +const functionC = () => { + functionD() +} + +const functionD = () => { + (function functionE () { + if (Math.random() > 0) { + throw new Error('an error!') + } + })() +} + +const thrower = functionA + +try { + thrower() +} catch (err) { + throw err +} diff --git a/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js.map b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js.map new file mode 100644 index 00000000000000..d0c785f26091cc --- /dev/null +++ b/test/fixtures/source-map/node_modules/error-stack/enclosing-call-site.js.map @@ -0,0 +1,8 @@ +{ +"version":3, +"file":"enclosing-call-site-min.js", +"lineCount":1, +"mappings":"AAAA,IAAMA,UAAYA,QAAA,EAAM,CACtBC,SAAA,EADsB,CAIxBA,SAASA,UAAS,EAAG,CACnBC,SAAA,EADmB,CAIrB,IAAMA,UAAYA,QAAA,EAAM,CACtBC,SAAA,EADsB,CAAxB,CAIMA,UAAYA,QAAA,EAAM,CAEpB,GAAoB,CAApB,CAAIC,IAAA,CAAKC,MAAL,EAAJ,CACE,KAAUC,MAAJ,CAAU,WAAV,CAAN,CAHkB,CAJxB,CAYMC,QAAUP,SAEhB,IAAI,CACFO,SAAA,EADE,CAEF,MAAOC,CAAP,CAAY,CACZ,KAAMA,EAAN,CADY;", +"sources":["enclosing-call-site.js"], +"names":["functionA","functionB","functionC","functionD","Math","random","Error","thrower","err"] +} diff --git a/test/fixtures/source-map/output/source_map_disabled_by_api.js b/test/fixtures/source-map/output/source_map_disabled_by_api.js index 8f455f26b6c9c4..1291f3583ac239 100644 --- a/test/fixtures/source-map/output/source_map_disabled_by_api.js +++ b/test/fixtures/source-map/output/source_map_disabled_by_api.js @@ -2,11 +2,23 @@ 'use strict'; require('../../../common'); -const assert = require('assert'); +const assert = require('node:assert'); +const Module = require('node:module'); Error.stackTraceLimit = 5; -assert.strictEqual(process.sourceMapsEnabled, true); -process.setSourceMapsEnabled(false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: true, + generatedCode: true, +}); +Module.setSourceMapsSupport(false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); assert.strictEqual(process.sourceMapsEnabled, false); try { @@ -19,7 +31,13 @@ try { // support enabled programmatically. delete require.cache[require .resolve('../enclosing-call-site-min.js')]; -process.setSourceMapsEnabled(true); +Module.setSourceMapsSupport(true); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: false, + generatedCode: false, +}); assert.strictEqual(process.sourceMapsEnabled, true); try { diff --git a/test/fixtures/source-map/output/source_map_disabled_by_process_api.js b/test/fixtures/source-map/output/source_map_disabled_by_process_api.js new file mode 100644 index 00000000000000..f9fc5b0c966ca6 --- /dev/null +++ b/test/fixtures/source-map/output/source_map_disabled_by_process_api.js @@ -0,0 +1,42 @@ +// Flags: --enable-source-maps + +'use strict'; +require('../../../common'); +const assert = require('node:assert'); +const Module = require('node:module'); +Error.stackTraceLimit = 5; + +assert.strictEqual(process.sourceMapsEnabled, true); +process.setSourceMapsEnabled(false); +assert.strictEqual(process.sourceMapsEnabled, false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); + +try { + require('../enclosing-call-site-min.js'); +} catch (e) { + console.log(e); +} + +// Delete the CJS module cache and loading the module again with source maps +// support enabled programmatically. +delete require.cache[require + .resolve('../enclosing-call-site-min.js')]; +process.setSourceMapsEnabled(true); +assert.strictEqual(process.sourceMapsEnabled, true); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: true, + generatedCode: true, +}); + +try { + require('../enclosing-call-site-min.js'); +} catch (e) { + console.log(e); +} diff --git a/test/fixtures/source-map/output/source_map_disabled_by_process_api.snapshot b/test/fixtures/source-map/output/source_map_disabled_by_process_api.snapshot new file mode 100644 index 00000000000000..655cd6695e1116 --- /dev/null +++ b/test/fixtures/source-map/output/source_map_disabled_by_process_api.snapshot @@ -0,0 +1,12 @@ +Error: an error! + at functionD (*enclosing-call-site-min.js:1:156) + at functionC (*enclosing-call-site-min.js:1:97) + at functionB (*enclosing-call-site-min.js:1:60) + at functionA (*enclosing-call-site-min.js:1:26) + at Object.<anonymous> (*enclosing-call-site-min.js:1:199) +Error: an error! + at functionD (*enclosing-call-site.js:16:17) + at functionC (*enclosing-call-site.js:10:3) + at functionB (*enclosing-call-site.js:6:3) + at functionA (*enclosing-call-site.js:2:3) + at Object.<anonymous> (*enclosing-call-site.js:24:3) diff --git a/test/fixtures/source-map/output/source_map_enabled_by_api.js b/test/fixtures/source-map/output/source_map_enabled_by_api.js index 1dd4f9530c68db..e09e05b59339f4 100644 --- a/test/fixtures/source-map/output/source_map_enabled_by_api.js +++ b/test/fixtures/source-map/output/source_map_enabled_by_api.js @@ -1,10 +1,22 @@ 'use strict'; require('../../../common'); -const assert = require('assert'); +const assert = require('node:assert'); +const Module = require('node:module'); Error.stackTraceLimit = 5; -assert.strictEqual(process.sourceMapsEnabled, false); -process.setSourceMapsEnabled(true); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); +Module.setSourceMapsSupport(true); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: false, + generatedCode: false, +}); assert.strictEqual(process.sourceMapsEnabled, true); try { @@ -16,7 +28,13 @@ try { delete require.cache[require .resolve('../enclosing-call-site-min.js')]; -process.setSourceMapsEnabled(false); +Module.setSourceMapsSupport(false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); assert.strictEqual(process.sourceMapsEnabled, false); try { diff --git a/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.js b/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.js new file mode 100644 index 00000000000000..5de2f3b0d7eb85 --- /dev/null +++ b/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.js @@ -0,0 +1,48 @@ +'use strict'; +require('../../../common'); +const assert = require('node:assert'); +const Module = require('node:module'); +Error.stackTraceLimit = 5; + +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); +Module.setSourceMapsSupport(true, { + nodeModules: true, +}); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: true, + generatedCode: false, +}); +assert.strictEqual(process.sourceMapsEnabled, true); + +try { + require('../node_modules/error-stack/enclosing-call-site-min.js').simpleErrorStack(); +} catch (e) { + console.log(e); +} + +delete require.cache[require + .resolve('../node_modules/error-stack/enclosing-call-site-min.js')]; + +Module.setSourceMapsSupport(true, { + nodeModules: false, +}); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: false, + generatedCode: false, +}); +assert.strictEqual(process.sourceMapsEnabled, true); + +try { + require('../node_modules/error-stack/enclosing-call-site-min.js').simpleErrorStack(); +} catch (e) { + console.log(e); +} \ No newline at end of file diff --git a/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.snapshot b/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.snapshot new file mode 100644 index 00000000000000..f46c21dbe42057 --- /dev/null +++ b/test/fixtures/source-map/output/source_map_enabled_by_api_node_modules.snapshot @@ -0,0 +1,12 @@ +Error: an error! + at functionD (*node_modules*error-stack*enclosing-call-site.js:16:17) + at functionC (*node_modules*error-stack*enclosing-call-site.js:10:3) + at functionB (*node_modules*error-stack*enclosing-call-site.js:6:3) + at functionA (*node_modules*error-stack*enclosing-call-site.js:2:3) + at Object.<anonymous> (*node_modules*error-stack*enclosing-call-site.js:24:3) +Error: an error! + at functionD (*node_modules*error-stack*enclosing-call-site-min.js:1:156) + at functionC (*node_modules*error-stack*enclosing-call-site-min.js:1:97) + at functionB (*node_modules*error-stack*enclosing-call-site-min.js:1:60) + at functionA (*node_modules*error-stack*enclosing-call-site-min.js:1:26) + at Object.<anonymous> (*node_modules*error-stack*enclosing-call-site-min.js:1:199) diff --git a/test/fixtures/source-map/output/source_map_enabled_by_process_api.js b/test/fixtures/source-map/output/source_map_enabled_by_process_api.js new file mode 100644 index 00000000000000..867a5cc082d40b --- /dev/null +++ b/test/fixtures/source-map/output/source_map_enabled_by_process_api.js @@ -0,0 +1,39 @@ +'use strict'; +require('../../../common'); +const assert = require('node:assert'); +const Module = require('node:module'); +Error.stackTraceLimit = 5; + +assert.strictEqual(process.sourceMapsEnabled, false); +process.setSourceMapsEnabled(true); +assert.strictEqual(process.sourceMapsEnabled, true); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: true, + nodeModules: true, + generatedCode: true, +}); + +try { + require('../enclosing-call-site-min.js'); +} catch (e) { + console.log(e); +} + +delete require.cache[require + .resolve('../enclosing-call-site-min.js')]; + +process.setSourceMapsEnabled(false); +assert.strictEqual(process.sourceMapsEnabled, false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); + +try { + require('../enclosing-call-site-min.js'); +} catch (e) { + console.log(e); +} diff --git a/test/fixtures/source-map/output/source_map_enabled_by_process_api.snapshot b/test/fixtures/source-map/output/source_map_enabled_by_process_api.snapshot new file mode 100644 index 00000000000000..082b3f310ed4f9 --- /dev/null +++ b/test/fixtures/source-map/output/source_map_enabled_by_process_api.snapshot @@ -0,0 +1,12 @@ +Error: an error! + at functionD (*enclosing-call-site.js:16:17) + at functionC (*enclosing-call-site.js:10:3) + at functionB (*enclosing-call-site.js:6:3) + at functionA (*enclosing-call-site.js:2:3) + at Object.<anonymous> (*enclosing-call-site.js:24:3) +Error: an error! + at functionD (*enclosing-call-site-min.js:1:156) + at functionC (*enclosing-call-site-min.js:1:97) + at functionB (*enclosing-call-site-min.js:1:60) + at functionA (*enclosing-call-site-min.js:1:26) + at Object.<anonymous> (*enclosing-call-site-min.js:1:199) diff --git a/test/fixtures/source-map/output/source_map_prepare_stack_trace.js b/test/fixtures/source-map/output/source_map_prepare_stack_trace.js index 1b04e0a3ac221b..894aea60a96f18 100644 --- a/test/fixtures/source-map/output/source_map_prepare_stack_trace.js +++ b/test/fixtures/source-map/output/source_map_prepare_stack_trace.js @@ -2,7 +2,8 @@ 'use strict'; require('../../../common'); -const assert = require('assert'); +const assert = require('node:assert'); +const Module = require('node:module'); Error.stackTraceLimit = 5; assert.strictEqual(typeof Error.prepareStackTrace, 'function'); @@ -22,8 +23,13 @@ try { // Source maps support is disabled programmatically even without deleting the // CJS module cache. -process.setSourceMapsEnabled(false); -assert.strictEqual(process.sourceMapsEnabled, false); +Module.setSourceMapsSupport(false); +assert.deepStrictEqual(Module.getSourceMapsSupport(), { + __proto__: null, + enabled: false, + nodeModules: false, + generatedCode: false, +}); try { require('../enclosing-call-site-min.js'); diff --git a/test/fixtures/test-runner/error-reporter-fail-fast/a.mjs b/test/fixtures/test-runner/error-reporter-fail-fast/a.mjs new file mode 100644 index 00000000000000..6508394bbc682d --- /dev/null +++ b/test/fixtures/test-runner/error-reporter-fail-fast/a.mjs @@ -0,0 +1,6 @@ +const assert = require('node:assert'); +const { test } = require('node:test'); + +test('fail', () => { + assert.fail('a.mjs fail'); +}); diff --git a/test/fixtures/test-runner/error-reporter-fail-fast/b.mjs b/test/fixtures/test-runner/error-reporter-fail-fast/b.mjs new file mode 100644 index 00000000000000..87abd62db2773f --- /dev/null +++ b/test/fixtures/test-runner/error-reporter-fail-fast/b.mjs @@ -0,0 +1,6 @@ +const assert = require('node:assert'); +const { test } = require('node:test'); + +test('fail', () => { + assert.fail('b.mjs fail'); +}); diff --git a/test/fixtures/test-runner/output/assertion-color-tty.mjs b/test/fixtures/test-runner/output/assertion-color-tty.mjs new file mode 100644 index 00000000000000..28845882c10002 --- /dev/null +++ b/test/fixtures/test-runner/output/assertion-color-tty.mjs @@ -0,0 +1,6 @@ +import assert from 'node:assert/strict' +import { test } from 'node:test' + +test('failing assertion', () => { + assert.strictEqual('!Hello World', 'Hello World!') +}) diff --git a/test/fixtures/test-runner/output/assertion-color-tty.snapshot b/test/fixtures/test-runner/output/assertion-color-tty.snapshot new file mode 100644 index 00000000000000..a74016febc5df4 --- /dev/null +++ b/test/fixtures/test-runner/output/assertion-color-tty.snapshot @@ -0,0 +1,25 @@ +[31m✖ failing assertion [90m(*ms)[39m[39m +[34mℹ tests 1[39m +[34mℹ suites 0[39m +[34mℹ pass 0[39m +[34mℹ fail 1[39m +[34mℹ cancelled 0[39m +[34mℹ skipped 0[39m +[34mℹ todo 0[39m +[34mℹ duration_ms *[39m + +[31m✖ failing tests:[39m + +* +[31m✖ failing assertion [90m(*ms)[39m[39m + [AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: + [32mactual[39m [31mexpected[39m + + [39m'[39m[32m![39m[39mH[39m[39me[39m[39ml[39m[39ml[39m[39mo[39m[39m [39m[39mW[39m[39mo[39m[39mr[39m[39ml[39m[39md[39m[31m![39m[39m'[39m + ] { + generatedMessage: [33mtrue[39m, + code: [32m'ERR_ASSERTION'[39m, + actual: [32m'!Hello World'[39m, + expected: [32m'Hello World!'[39m, + operator: [32m'strictEqual'[39m + } diff --git a/test/fixtures/test-runner/output/default_output.snapshot b/test/fixtures/test-runner/output/default_output.snapshot index 73bfc1da5e92e9..d0a83395733924 100644 --- a/test/fixtures/test-runner/output/default_output.snapshot +++ b/test/fixtures/test-runner/output/default_output.snapshot @@ -1,32 +1,9 @@ [32m✔ should pass [90m(*ms)[39m[39m [31m✖ should fail [90m(*ms)[39m[39m - Error: fail - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - [90m﹣ should skip [90m(*ms)[39m # SKIP[39m ▶ parent [31m✖ should fail [90m(*ms)[39m[39m - Error: fail - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - *[39m - [31m✖ should pass but parent fail [90m(*ms)[39m[39m - [32m'test did not finish before its parent and was cancelled'[39m - [31m✖ parent [90m(*ms)[39m[39m [34mℹ tests 6[39m [34mℹ suites 0[39m diff --git a/test/fixtures/test-runner/output/eval_spec.snapshot b/test/fixtures/test-runner/output/eval_spec.snapshot index 5c9a53009508e1..116c23ccf97077 100644 --- a/test/fixtures/test-runner/output/eval_spec.snapshot +++ b/test/fixtures/test-runner/output/eval_spec.snapshot @@ -1,14 +1,5 @@ ✔ passes (*ms) ✖ fails (*ms) - Error: fail - * - * - * - * - * - * - * - ℹ tests 2 ℹ suites 0 ℹ pass 1 diff --git a/test/fixtures/test-runner/output/hooks_spec_reporter.snapshot b/test/fixtures/test-runner/output/hooks_spec_reporter.snapshot index ea916c2ee754c4..8c267672b9a951 100644 --- a/test/fixtures/test-runner/output/hooks_spec_reporter.snapshot +++ b/test/fixtures/test-runner/output/hooks_spec_reporter.snapshot @@ -10,161 +10,29 @@ describe hooks - no subtests (*ms) before throws 1 - 'test did not finish before its parent and was cancelled' - 2 - 'test did not finish before its parent and was cancelled' - before throws (*ms) - - Error: before - * - * - * - * - * - * - * - * - before throws - no subtests (*ms) - Error: before - * - * - * - * - * - * - * - * - after throws 1 (*ms) 2 (*ms) after throws (*ms) - - Error: after - * - * - * - * - * - * - * - * - * - * - after throws - no subtests (*ms) - Error: after - * - * - * - * - * - * - * - * - * - * - beforeEach throws 1 (*ms) - Error: beforeEach - * - * - * - * - * - * - * - * - * - at new Promise (<anonymous>) - 2 (*ms) - Error: beforeEach - * - * - * - * - * - * - * - * - * - at async Promise.all (index 0) - beforeEach throws (*ms) afterEach throws 1 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - at async Promise.all (index 0) - * - 2 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - * - afterEach throws (*ms) afterEach when test fails 1 (*ms) - Error: test - * - * - * - * - * - * - at new Promise (<anonymous>) - * - * - at Array.map (<anonymous>) - 2 (*ms) afterEach when test fails (*ms) afterEach throws and test fails 1 (*ms) - Error: test - * - * - * - * - * - * - at new Promise (<anonymous>) - * - * - at Array.map (<anonymous>) - 2 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - * - afterEach throws and test fails (*ms) test hooks 1 (*ms) @@ -177,155 +45,24 @@ test hooks - no subtests (*ms) t.before throws 1 (*ms) - Error: before - * - * - * - * - * - * - * - * - * - * - 2 (*ms) - Error: before - * - * - * - * - * - * - * - * - * - * - t.before throws (*ms) - - Error: before - * - * - * - * - * - * - * - * - * - * - t.before throws - no subtests (*ms) - Error: before - * - * - * - * - * - * - * - * - * - * - t.after throws 1 (*ms) 2 (*ms) t.after throws (*ms) - - Error: after - * - * - * - * - * - * - * - * - * - t.after throws - no subtests (*ms) - Error: after - * - * - * - * - * - * - * - * - * - t.beforeEach throws 1 (*ms) - Error: beforeEach - * - * - * - * - * - * - * - * - * - * - 2 (*ms) - Error: beforeEach - * - * - * - * - * - * - * - * - * - * - t.beforeEach throws (*ms) t.afterEach throws 1 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - * - * - 2 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - * - * - t.afterEach throws (*ms) afterEach when test fails 1 (*ms) - Error: test - * - * - * - * - * - * - * - * - * - 2 (*ms) afterEach when test fails (*ms) afterEach context when test passes @@ -333,64 +70,16 @@ afterEach context when test passes (*ms) afterEach context when test fails 1 (*ms) - Error: test - * - * - * - * - afterEach context when test fails (*ms) afterEach throws and test fails 1 (*ms) - Error: test - * - * - * - * - * - * - * - * - * - 2 (*ms) - Error: afterEach - * - * - * - * - * - * - * - * - * - * - afterEach throws and test fails (*ms) t.after() is called if test body throws (*ms) - Error: bye - * - * - * - * - - after() called run after when before throws 1 - 'test did not finish before its parent and was cancelled' - run after when before throws (*ms) - - Error: before - * - * - * - * - * - * - * - * - test hooks - async 1 (*ms) 2 (*ms) diff --git a/test/fixtures/test-runner/output/non-tty-forced-color-output.js b/test/fixtures/test-runner/output/non-tty-forced-color-output.js new file mode 100644 index 00000000000000..4d3c9de969a13f --- /dev/null +++ b/test/fixtures/test-runner/output/non-tty-forced-color-output.js @@ -0,0 +1,6 @@ +'use strict'; + +process.env.FORCE_COLOR = 1; + +const test = require('node:test'); +test('passing test', () => {}); diff --git a/test/fixtures/test-runner/output/non-tty-forced-color-output.snapshot b/test/fixtures/test-runner/output/non-tty-forced-color-output.snapshot new file mode 100644 index 00000000000000..3d1f593832fe77 --- /dev/null +++ b/test/fixtures/test-runner/output/non-tty-forced-color-output.snapshot @@ -0,0 +1,9 @@ +✔ passing test (*ms) +ℹ tests 1 +ℹ suites 0 +ℹ pass 1 +ℹ fail 0 +ℹ cancelled 0 +ℹ skipped 0 +ℹ todo 0 +ℹ duration_ms * diff --git a/test/fixtures/test-runner/output/spec_reporter.snapshot b/test/fixtures/test-runner/output/spec_reporter.snapshot index f37d7f35b8a7d6..175a25000f1e60 100644 --- a/test/fixtures/test-runner/output/spec_reporter.snapshot +++ b/test/fixtures/test-runner/output/spec_reporter.snapshot @@ -1,91 +1,19 @@ sync pass todo (*ms) # TODO sync pass todo with message (*ms) # this is a passing todo sync fail todo (*ms) # TODO - Error: thrown from sync fail todo - * - * - * - * - * - * - * - sync fail todo with message (*ms) # this is a failing todo - Error: thrown from sync fail todo with message - * - * - * - * - * - * - * - sync skip pass (*ms) # SKIP sync skip pass with message (*ms) # this is skipped sync pass (*ms) this test should pass sync throw fail (*ms) - Error: thrown from sync throw fail - * - * - * - * - * - * - * - async skip pass (*ms) # SKIP async pass (*ms) async throw fail (*ms) - Error: thrown from async throw fail - * - * - * - * - * - * - * - async skip fail (*ms) # SKIP - Error: thrown from async throw fail - * - * - * - * - * - * - * - async assertion fail (*ms) - AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: - - true !== false - - * - * - * - * - * - * - * { - generatedMessage: true, - code: 'ERR_ASSERTION', - actual: true, - expected: false, - operator: 'strictEqual' - } - resolve pass (*ms) reject fail (*ms) - Error: rejected from reject fail - * - * - * - * - * - * - * - unhandled rejection - passes but warns (*ms) async unhandled rejection - passes but warns (*ms) immediate throw - passes but warns (*ms) @@ -93,23 +21,9 @@ immediate resolve pass (*ms) subtest sync throw fail +sync throw fail (*ms) - Error: thrown from subtest sync throw fail - * - * - * - * - * - * - * - * - * - * - this subtest should make its parent test fail subtest sync throw fail (*ms) sync throw non-error fail (*ms) - Symbol(thrown symbol from sync throw non-error fail) - level 0a level 1a (*ms) level 1b (*ms) @@ -118,8 +32,6 @@ level 0a (*ms) top level +long running (*ms) - 'test did not finish before its parent and was cancelled' - +short running ++short running (*ms) +short running (*ms) @@ -128,15 +40,6 @@ sync skip option (*ms) # SKIP sync skip option with message (*ms) # this is skipped sync skip option is false fail (*ms) - Error: this should be executed - * - * - * - * - * - * - * - <anonymous> (*ms) functionOnly (*ms) <anonymous> (*ms) @@ -147,43 +50,15 @@ functionAndOptions (*ms) # SKIP callback pass (*ms) callback fail (*ms) - Error: callback failure - * - * - sync t is this in test (*ms) async t is this in test (*ms) callback t is this in test (*ms) callback also returns a Promise (*ms) - 'passed a callback but also returned a Promise' - callback throw (*ms) - Error: thrown from callback throw - * - * - * - * - * - * - * - callback called twice (*ms) - 'callback invoked multiple times' - callback called twice in different ticks (*ms) callback called twice in future tick (*ms) - Error [ERR_TEST_FAILURE]: callback invoked multiple times - * { - code: 'ERR_TEST_FAILURE', - failureType: 'multipleCallbackInvocations', - cause: 'callback invoked multiple times' - } - callback async throw (*ms) - Error: thrown from callback async throw - * - * - callback async throw after done (*ms) only is set but not in only mode running subtest 1 (*ms) @@ -195,108 +70,21 @@ only is set but not in only mode (*ms) 'only' and 'runOnly' require the --test-only command-line option. custom inspect symbol fail (*ms) - customized - custom inspect symbol that throws fail (*ms) - { foo: 1, [Symbol(nodejs.util.inspect.custom)]: [Function: [nodejs.util.inspect.custom]] } - subtest sync throw fails sync throw fails at first (*ms) - Error: thrown from subtest sync throw fails at first - * - * - * - * - * - * - * - * - * - * - sync throw fails at second (*ms) - Error: thrown from subtest sync throw fails at second - * - * - * - * - * - * - * - * - subtest sync throw fails (*ms) timed out async test (*ms) - 'test timed out after *ms' - timed out callback test (*ms) - 'test timed out after *ms' - large timeout async test is ok (*ms) large timeout callback test is ok (*ms) successful thenable (*ms) rejected thenable (*ms) - 'custom error' - unfinished test with uncaughtException (*ms) - Error: foo - * - * - * - unfinished test with unhandledRejection (*ms) - Error: bar - * - * - * - assertion errors display actual and expected properly (*ms) - AssertionError [ERR_ASSERTION]: Expected values to be loosely deep-equal: - - { - bar: 1, - baz: { - date: 1970-01-01T00:00:00.000Z, - null: null, - number: 1, - string: 'Hello', - undefined: undefined - }, - boo: [ - 1 - ], - foo: 1 - } - - should loosely deep-equal - - { - baz: { - date: 1970-01-01T00:00:00.000Z, - null: null, - number: 1, - string: 'Hello', - undefined: undefined - }, - boo: [ - 1 - ], - circular: <ref *1> { - bar: 2, - c: [Circular *1] - } - } - * { - generatedMessage: true, - code: 'ERR_ASSERTION', - actual: [Object], - expected: [Object], - operator: 'deepEqual' - } - invalid subtest fail (*ms) - 'test could not be started because its parent finished' - Error: Test "unhandled rejection - passes but warns" at test/fixtures/test-runner/output/output.js:72:1 generated asynchronous activity after the test ended. This activity created the error "Error: rejected from unhandled rejection fail" and would have caused the test to fail, but instead triggered an unhandledRejection event. Error: Test "async unhandled rejection - passes but warns" at test/fixtures/test-runner/output/output.js:76:1 generated asynchronous activity after the test ended. This activity created the error "Error: rejected from async unhandled rejection fail" and would have caused the test to fail, but instead triggered an unhandledRejection event. Error: A resource generated asynchronous activity after the test ended. This activity created the error "Error: uncaught from outside of a test" which triggered an uncaughtException event, caught by the test runner. diff --git a/test/fixtures/test-runner/output/spec_reporter_cli.snapshot b/test/fixtures/test-runner/output/spec_reporter_cli.snapshot index d8648bfe03a8be..a6381bc50453cf 100644 --- a/test/fixtures/test-runner/output/spec_reporter_cli.snapshot +++ b/test/fixtures/test-runner/output/spec_reporter_cli.snapshot @@ -1,91 +1,19 @@ sync pass todo (*ms) # TODO sync pass todo with message (*ms) # this is a passing todo sync fail todo (*ms) # TODO - Error: thrown from sync fail todo - * - * - * - * - * - * - * - sync fail todo with message (*ms) # this is a failing todo - Error: thrown from sync fail todo with message - * - * - * - * - * - * - * - sync skip pass (*ms) # SKIP sync skip pass with message (*ms) # this is skipped sync pass (*ms) this test should pass sync throw fail (*ms) - Error: thrown from sync throw fail - * - * - * - * - * - * - * - async skip pass (*ms) # SKIP async pass (*ms) async throw fail (*ms) - Error: thrown from async throw fail - * - * - * - * - * - * - * - async skip fail (*ms) # SKIP - Error: thrown from async throw fail - * - * - * - * - * - * - * - async assertion fail (*ms) - AssertionError [ERR_ASSERTION]: Expected values to be strictly equal: - - true !== false - - * - * - * - * - * - * - * { - generatedMessage: true, - code: 'ERR_ASSERTION', - actual: true, - expected: false, - operator: 'strictEqual' - } - resolve pass (*ms) reject fail (*ms) - Error: rejected from reject fail - * - * - * - * - * - * - * - unhandled rejection - passes but warns (*ms) async unhandled rejection - passes but warns (*ms) immediate throw - passes but warns (*ms) @@ -93,23 +21,9 @@ immediate resolve pass (*ms) subtest sync throw fail +sync throw fail (*ms) - Error: thrown from subtest sync throw fail - * - * - * - * - * - * - * - * - * - * - this subtest should make its parent test fail subtest sync throw fail (*ms) sync throw non-error fail (*ms) - Symbol(thrown symbol from sync throw non-error fail) - level 0a level 1a (*ms) level 1b (*ms) @@ -118,8 +32,6 @@ level 0a (*ms) top level +long running (*ms) - 'test did not finish before its parent and was cancelled' - +short running ++short running (*ms) +short running (*ms) @@ -128,15 +40,6 @@ sync skip option (*ms) # SKIP sync skip option with message (*ms) # this is skipped sync skip option is false fail (*ms) - Error: this should be executed - * - * - * - * - * - * - * - <anonymous> (*ms) functionOnly (*ms) <anonymous> (*ms) @@ -147,43 +50,15 @@ functionAndOptions (*ms) # SKIP callback pass (*ms) callback fail (*ms) - Error: callback failure - * - * - sync t is this in test (*ms) async t is this in test (*ms) callback t is this in test (*ms) callback also returns a Promise (*ms) - 'passed a callback but also returned a Promise' - callback throw (*ms) - Error: thrown from callback throw - * - * - * - * - * - * - * - callback called twice (*ms) - 'callback invoked multiple times' - callback called twice in different ticks (*ms) callback called twice in future tick (*ms) - Error [ERR_TEST_FAILURE]: callback invoked multiple times - * { - code: 'ERR_TEST_FAILURE', - failureType: 'multipleCallbackInvocations', - cause: 'callback invoked multiple times' - } - callback async throw (*ms) - Error: thrown from callback async throw - * - * - callback async throw after done (*ms) only is set but not in only mode running subtest 1 (*ms) @@ -195,108 +70,21 @@ only is set but not in only mode (*ms) 'only' and 'runOnly' require the --test-only command-line option. custom inspect symbol fail (*ms) - customized - custom inspect symbol that throws fail (*ms) - { foo: 1 } - subtest sync throw fails sync throw fails at first (*ms) - Error: thrown from subtest sync throw fails at first - * - * - * - * - * - * - * - * - * - * - sync throw fails at second (*ms) - Error: thrown from subtest sync throw fails at second - * - * - * - * - * - * - * - * - subtest sync throw fails (*ms) timed out async test (*ms) - 'test timed out after *ms' - timed out callback test (*ms) - 'test timed out after *ms' - large timeout async test is ok (*ms) large timeout callback test is ok (*ms) successful thenable (*ms) rejected thenable (*ms) - 'custom error' - unfinished test with uncaughtException (*ms) - Error: foo - * - * - * - unfinished test with unhandledRejection (*ms) - Error: bar - * - * - * - assertion errors display actual and expected properly (*ms) - AssertionError [ERR_ASSERTION]: Expected values to be loosely deep-equal: - - { - bar: 1, - baz: { - date: 1970-01-01T00:00:00.000Z, - null: null, - number: 1, - string: 'Hello', - undefined: undefined - }, - boo: [ - 1 - ], - foo: 1 - } - - should loosely deep-equal - - { - baz: { - date: 1970-01-01T00:00:00.000Z, - null: null, - number: 1, - string: 'Hello', - undefined: undefined - }, - boo: [ - 1 - ], - circular: <ref *1> { - bar: 2, - c: [Circular *1] - } - } - * { - generatedMessage: true, - code: 'ERR_ASSERTION', - actual: { foo: 1, bar: 1, boo: [ 1 ], baz: { date: 1970-01-01T00:00:00.000Z, null: null, number: 1, string: 'Hello', undefined: undefined } }, - expected: { boo: [ 1 ], baz: { date: 1970-01-01T00:00:00.000Z, null: null, number: 1, string: 'Hello', undefined: undefined }, circular: <ref *1> { bar: 2, c: [Circular *1] } }, - operator: 'deepEqual' - } - invalid subtest fail (*ms) - 'test could not be started because its parent finished' - Error: Test "unhandled rejection - passes but warns" at test/fixtures/test-runner/output/output.js:72:1 generated asynchronous activity after the test ended. This activity created the error "Error: rejected from unhandled rejection fail" and would have caused the test to fail, but instead triggered an unhandledRejection event. Error: Test "async unhandled rejection - passes but warns" at test/fixtures/test-runner/output/output.js:76:1 generated asynchronous activity after the test ended. This activity created the error "Error: rejected from async unhandled rejection fail" and would have caused the test to fail, but instead triggered an unhandledRejection event. Error: A resource generated asynchronous activity after the test ended. This activity created the error "Error: uncaught from outside of a test" which triggered an uncaughtException event, caught by the test runner. diff --git a/test/fixtures/test-runner/snapshots/file-snapshots.js b/test/fixtures/test-runner/snapshots/file-snapshots.js new file mode 100644 index 00000000000000..cb085f866cfceb --- /dev/null +++ b/test/fixtures/test-runner/snapshots/file-snapshots.js @@ -0,0 +1,21 @@ +'use strict'; +const { test } = require('node:test'); + +test('snapshot file path is created', (t) => { + t.assert.fileSnapshot({ baz: 9 }, './foo/bar/baz/1.json'); +}); + +test('test with plan', (t) => { + t.plan(2); + t.assert.fileSnapshot({ foo: 1, bar: 2 }, '2.json'); + t.assert.fileSnapshot(5, '3.txt'); +}); + +test('custom serializers are supported', (t) => { + t.assert.fileSnapshot({ foo: 1 }, '4.txt', { + serializers: [ + (value) => { return value + '424242'; }, + (value) => { return JSON.stringify(value); }, + ] + }); +}); diff --git a/test/fixtures/test426/LICENSE.md b/test/fixtures/test426/LICENSE.md new file mode 100644 index 00000000000000..39501a3b7c70dd --- /dev/null +++ b/test/fixtures/test426/LICENSE.md @@ -0,0 +1,14 @@ +The Source Map Tests suite ("Software") is protected by copyright and is being made available under the "BSD License", included below. This Software may be subject to third party rights (rights from parties other than Ecma International), including patent rights, and no licenses under such third party rights are granted under this license even if the third party concerned is a member of Ecma International. SEE THE ECMA CODE OF CONDUCT IN PATENT MATTERS AVAILABLE AT https://www.ecma-international.org/ipr FOR INFORMATION REGARDING THE LICENSING OF PATENT CLAIMS THAT ARE REQUIRED TO IMPLEMENT ECMA INTERNATIONAL STANDARDS*. + +Copyright (c) 2024, Ecma International +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. + +* Ecma International Standards hereafter means Ecma International Standards as well as Ecma Technical Reports diff --git a/test/fixtures/test426/README.md b/test/fixtures/test426/README.md new file mode 100644 index 00000000000000..e3e353fd500458 --- /dev/null +++ b/test/fixtures/test426/README.md @@ -0,0 +1,55 @@ +# Source Map Tests + +This repository holds testing discussions and tests for the the Source Map debugging format. Specifically, we're looking to encourage discussion around: + +- Manual and automated testing strategies for Source Maps +- Gathering a list of Soure Map generators and consumers +- General discussion around deviations between source maps + +Open discussion happens in the [GitHub issues](https://github.com/source-map/source-map-tests/issues). + +Source Map spec: + * Repo: https://github.com/tc39/source-map + * Rendered spec: https://tc39.es/source-map/ + +## Test cases + +This repo also contains cross-implementation test cases that can be run in test +suites for source map implementations, including browser devtool and library test +suites. + +### Running the tests + +#### Tools + +[Source map validator](https://github.com/jkup/source-map-validator): + * The tests are included in the validator test suite [here](https://github.com/jkup/source-map-validator/blob/main/src/spec-tests.test.ts). You can run them with `npm test`. + +#### Browsers + +The tests for Firefox are in the Mozilla [source-map](https://github.com/mozilla/source-map) library: + * The upstream repo has a [test file](https://github.com/mozilla/source-map/blob/master/test/test-spec-tests.js) for running the spec tests from this repo. They can be run with `npm test`. + +How to run in WebKit: + * Check out [WebKit](https://github.com/WebKit/WebKit/) + * `cd` to the checked out WebKit directory. + * Run `git am <this-repo>/webkit/0001-Add-harness-for-source-maps-spec-tests.patch` + * Run `Tools/Scripts/build-webkit` (depending on the platform you may need to pass `--gtk` or other flags) + * Run `Tools/Scripts/run-webkit-tests LayoutTests/inspector/model/source-map-spec.html` (again, you may need `--gtk` on Linux) + +How to run in Chrome Devtools: +1. Setup: + * Install depot_tools following this [depot_tools guide](https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up) + * Check out [Chrome Devtools](https://chromium.googlesource.com/devtools/devtools-frontend): + * Run `gclient config https://chromium.googlesource.com/devtools/devtools-frontend --unmanaged` + * Run `cd devtools-frontend` + * Run `gclient sync` + * Run `gn gen out/Default` +2. Build: + * Run `autoninja -C out/Default` +3. Test: + * Run `npm run auto-unittest` +4. Apply patches from this repo: + * Run `git apply <path to .patch file>` in `devtools-frontend` repo + +More information about running Chrome Devtools without building Chromium can be found [here](https://chromium.googlesource.com/devtools/devtools-frontend/+/refs/heads/chromium/3965/README.md) diff --git a/test/fixtures/test426/chrome/0001-Add-source-map-specification-tests.patch b/test/fixtures/test426/chrome/0001-Add-source-map-specification-tests.patch new file mode 100644 index 00000000000000..995bcf246c839d --- /dev/null +++ b/test/fixtures/test426/chrome/0001-Add-source-map-specification-tests.patch @@ -0,0 +1,3867 @@ +From afa11641db357e524c8f4d5f573945dd15c1f2e9 Mon Sep 17 00:00:00 2001 +From: Agata Belkius <abelkius@gmail.com> +Date: Fri, 19 Apr 2024 15:30:48 +0100 +Subject: [PATCH 1/2] Add source map specification tests + +--- + front_end/BUILD.gn | 1 + + front_end/core/sdk/BUILD.gn | 1 + + front_end/core/sdk/SourceMapSpec.test.ts | 206 +++ + .../core/sdk/fixtures/sourcemaps/BUILD.gn | 202 +++ + .../sourcemaps/basic-mapping-as-index-map.js | 2 + + .../basic-mapping-as-index-map.js.map | 15 + + .../sourcemaps/basic-mapping-original.js | 8 + + .../sdk/fixtures/sourcemaps/basic-mapping.js | 2 + + .../fixtures/sourcemaps/basic-mapping.js.map | 6 + + .../fixtures/sourcemaps/ignore-list-empty.js | 1 + + .../sourcemaps/ignore-list-empty.js.map | 8 + + .../sourcemaps/ignore-list-out-of-bounds.js | 1 + + .../ignore-list-out-of-bounds.js.map | 8 + + .../sourcemaps/ignore-list-valid-1.js | 1 + + .../sourcemaps/ignore-list-valid-1.js.map | 8 + + .../sourcemaps/ignore-list-wrong-type-1.js | 1 + + .../ignore-list-wrong-type-1.js.map | 8 + + .../sourcemaps/ignore-list-wrong-type-2.js | 1 + + .../ignore-list-wrong-type-2.js.map | 8 + + .../sourcemaps/ignore-list-wrong-type-3.js | 1 + + .../ignore-list-wrong-type-3.js.map | 8 + + .../index-map-invalid-base-mappings.js | 1 + + .../index-map-invalid-base-mappings.js.map | 15 + + .../sourcemaps/index-map-invalid-order.js | 1 + + .../sourcemaps/index-map-invalid-order.js.map | 23 + + .../sourcemaps/index-map-invalid-overlap.js | 1 + + .../index-map-invalid-overlap.js.map | 23 + + .../sourcemaps/index-map-missing-map.js | 1 + + .../sourcemaps/index-map-missing-map.js.map | 8 + + .../index-map-missing-offset-column.js | 1 + + .../index-map-missing-offset-column.js.map | 14 + + .../index-map-missing-offset-line.js | 1 + + .../index-map-missing-offset-line.js.map | 14 + + .../sourcemaps/index-map-missing-offset.js | 1 + + .../index-map-missing-offset.js.map | 13 + + .../index-map-offset-column-wrong-type.js | 1 + + .../index-map-offset-column-wrong-type.js.map | 14 + + .../index-map-offset-line-wrong-type.js | 1 + + .../index-map-offset-line-wrong-type.js.map | 14 + + .../index-map-two-concatenated-sources.js | 2 + + .../index-map-two-concatenated-sources.js.map | 24 + + .../sourcemaps/index-map-wrong-type-map.js | 1 + + .../index-map-wrong-type-map.js.map | 9 + + .../sourcemaps/index-map-wrong-type-offset.js | 1 + + .../index-map-wrong-type-offset.js.map | 14 + + .../index-map-wrong-type-sections.js | 1 + + .../index-map-wrong-type-sections.js.map | 4 + + .../invalid-mapping-bad-separator.js | 2 + + .../invalid-mapping-bad-separator.js.map | 6 + + .../invalid-mapping-not-a-string-1.js | 1 + + .../invalid-mapping-not-a-string-1.js.map | 7 + + .../invalid-mapping-not-a-string-2.js | 1 + + .../invalid-mapping-not-a-string-2.js.map | 7 + + ...nvalid-mapping-segment-column-too-large.js | 1 + + ...id-mapping-segment-column-too-large.js.map | 7 + + ...apping-segment-name-index-out-of-bounds.js | 1 + + ...ng-segment-name-index-out-of-bounds.js.map | 7 + + ...id-mapping-segment-name-index-too-large.js | 1 + + ...apping-segment-name-index-too-large.js.map | 7 + + ...invalid-mapping-segment-negative-column.js | 1 + + ...lid-mapping-segment-negative-column.js.map | 7 + + ...lid-mapping-segment-negative-name-index.js | 1 + + ...mapping-segment-negative-name-index.js.map | 7 + + ...apping-segment-negative-original-column.js | 1 + + ...ng-segment-negative-original-column.js.map | 7 + + ...-mapping-segment-negative-original-line.js | 1 + + ...ping-segment-negative-original-line.js.map | 7 + + ...apping-segment-negative-relative-column.js | 1 + + ...ng-segment-negative-relative-column.js.map | 8 + + ...ng-segment-negative-relative-name-index.js | 1 + + ...egment-negative-relative-name-index.js.map | 8 + + ...gment-negative-relative-original-column.js | 1 + + ...t-negative-relative-original-column.js.map | 8 + + ...segment-negative-relative-original-line.js | 1 + + ...ent-negative-relative-original-line.js.map | 8 + + ...-segment-negative-relative-source-index.js | 1 + + ...ment-negative-relative-source-index.js.map | 8 + + ...d-mapping-segment-negative-source-index.js | 1 + + ...pping-segment-negative-source-index.js.map | 7 + + ...pping-segment-original-column-too-large.js | 1 + + ...g-segment-original-column-too-large.js.map | 7 + + ...mapping-segment-original-line-too-large.js | 1 + + ...ing-segment-original-line-too-large.js.map | 7 + + ...ping-segment-source-index-out-of-bounds.js | 1 + + ...-segment-source-index-out-of-bounds.js.map | 7 + + ...-mapping-segment-source-index-too-large.js | 1 + + ...ping-segment-source-index-too-large.js.map | 7 + + ...valid-mapping-segment-with-three-fields.js | 2 + + ...d-mapping-segment-with-three-fields.js.map | 6 + + ...invalid-mapping-segment-with-two-fields.js | 2 + + ...lid-mapping-segment-with-two-fields.js.map | 6 + + ...nvalid-mapping-segment-with-zero-fields.js | 1 + + ...id-mapping-segment-with-zero-fields.js.map | 7 + + .../invalid-vlq-missing-continuation.js | 1 + + .../invalid-vlq-missing-continuation.js.map | 6 + + .../sourcemaps/invalid-vlq-non-base64-char.js | 1 + + .../invalid-vlq-non-base64-char.js.map | 6 + + .../sdk/fixtures/sourcemaps/names-missing.js | 1 + + .../fixtures/sourcemaps/names-missing.js.map | 5 + + .../fixtures/sourcemaps/names-not-a-list-1.js | 1 + + .../sourcemaps/names-not-a-list-1.js.map | 6 + + .../fixtures/sourcemaps/names-not-a-list-2.js | 1 + + .../sourcemaps/names-not-a-list-2.js.map | 6 + + .../fixtures/sourcemaps/names-not-string.js | 1 + + .../sourcemaps/names-not-string.js.map | 6 + + .../sourcemaps/second-source-original.js | 4 + + .../sourcemaps/source-map-spec-tests.json | 1540 +++++++++++++++++ + .../sources-and-sources-content-both-null.js | 1 + + ...urces-and-sources-content-both-null.js.map | 7 + + .../fixtures/sourcemaps/sources-missing.js | 1 + + .../sourcemaps/sources-missing.js.map | 5 + + .../sources-non-null-sources-content-null.js | 2 + + ...urces-non-null-sources-content-null.js.map | 7 + + .../sourcemaps/sources-not-a-list-1.js | 1 + + .../sourcemaps/sources-not-a-list-1.js.map | 6 + + .../sourcemaps/sources-not-a-list-2.js | 1 + + .../sourcemaps/sources-not-a-list-2.js.map | 6 + + .../sourcemaps/sources-not-string-or-null.js | 1 + + .../sources-not-string-or-null.js.map | 6 + + .../sources-null-sources-content-non-null.js | 2 + + ...urces-null-sources-content-non-null.js.map | 7 + + .../sourcemaps/transitive-mapping-original.js | 5 + + .../transitive-mapping-original.js.map | 8 + + .../transitive-mapping-three-steps.js | 6 + + .../transitive-mapping-three-steps.js.map | 7 + + .../fixtures/sourcemaps/transitive-mapping.js | 2 + + .../sourcemaps/transitive-mapping.js.map | 6 + + .../sourcemaps/typescript-original.ts | 5 + + .../sourcemaps/unrecognized-property.js | 1 + + .../sourcemaps/unrecognized-property.js.map | 8 + + .../valid-mapping-boundary-values.js | 1 + + .../valid-mapping-boundary-values.js.map | 7 + + .../sourcemaps/valid-mapping-empty-groups.js | 1 + + .../valid-mapping-empty-groups.js.map | 8 + + .../sourcemaps/valid-mapping-large-vlq.js | 1 + + .../sourcemaps/valid-mapping-large-vlq.js.map | 6 + + .../sourcemaps/valid-mapping-null-sources.js | 2 + + .../valid-mapping-null-sources.js.map | 6 + + .../fixtures/sourcemaps/version-missing.js | 1 + + .../sourcemaps/version-missing.js.map | 5 + + .../sourcemaps/version-not-a-number.js | 1 + + .../sourcemaps/version-not-a-number.js.map | 6 + + .../sourcemaps/version-numeric-string.js | 1 + + .../sourcemaps/version-numeric-string.js.map | 6 + + .../fixtures/sourcemaps/version-too-high.js | 1 + + .../sourcemaps/version-too-high.js.map | 6 + + .../fixtures/sourcemaps/version-too-low.js | 1 + + .../sourcemaps/version-too-low.js.map | 6 + + .../sdk/fixtures/sourcemaps/version-valid.js | 1 + + .../fixtures/sourcemaps/version-valid.js.map | 6 + + 150 files changed, 2648 insertions(+) + create mode 100644 front_end/core/sdk/SourceMapSpec.test.ts + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/BUILD.gn + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-missing.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-string.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/second-source-original.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-missing.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-missing.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-high.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-low.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-valid.js + create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map + +diff --git a/front_end/BUILD.gn b/front_end/BUILD.gn +index 863a434cea..125b34ba73 100644 +--- a/front_end/BUILD.gn ++++ b/front_end/BUILD.gn +@@ -106,6 +106,7 @@ group("unittests") { + "core/protocol_client:unittests", + "core/root:unittests", + "core/sdk:unittests", ++ "core/sdk/fixtures/sourcemaps", + "entrypoints/formatter_worker:unittests", + "entrypoints/heap_snapshot_worker:unittests", + "entrypoints/inspector_main:unittests", +diff --git a/front_end/core/sdk/BUILD.gn b/front_end/core/sdk/BUILD.gn +index 8d1cf0fa92..f8879365f4 100644 +--- a/front_end/core/sdk/BUILD.gn ++++ b/front_end/core/sdk/BUILD.gn +@@ -165,6 +165,7 @@ ts_library("unittests") { + "SourceMapManager.test.ts", + "SourceMapScopes.test.ts", + "SourceMapScopesInfo.test.ts", ++ "SourceMapSpec.test.ts", + "StorageBucketsModel.test.ts", + "StorageKeyManager.test.ts", + "Target.test.ts", +diff --git a/front_end/core/sdk/SourceMapSpec.test.ts b/front_end/core/sdk/SourceMapSpec.test.ts +new file mode 100644 +index 0000000000..93b26a2e13 +--- /dev/null ++++ b/front_end/core/sdk/SourceMapSpec.test.ts +@@ -0,0 +1,206 @@ ++// Copyright 2024 The Chromium Authors. All rights reserved. ++// Use of this source code is governed by a BSD-style license that can be ++// found in the LICENSE file. ++ ++ ++/** ++ This file tests if devtools sourcemaps implementation is matching the sourcemaps spec. ++ Sourcemap Spec tests are using test data coming from: https://github.com/tc39/source-map-tests ++ ++ There is a lot of warnings of invalid source maps passing the validation - this is up to the authors ++ which ones of these could be actually checked in the SourceMaps implementetion and which ones are ok to ignore. ++ ++ **/ ++ ++const {assert} = chai; ++import type * as Platform from '../platform/platform.js'; ++import {assertNotNullOrUndefined} from '../platform/platform.js'; ++import { SourceMapV3, parseSourceMap } from './SourceMap.js'; ++import * as SDK from './sdk.js'; ++import {describeWithEnvironment} from '../../testing/EnvironmentHelpers.js'; ++ ++interface TestSpec { ++ name: string; ++ description: string; ++ baseFile: string; ++ sourceMapFile: string; ++ sourceMapIsValid: boolean; ++ testActions?: TestAction[]; ++} ++ ++interface TestAction { ++ actionType: string; ++ generatedLine: number; ++ generatedColumn: number; ++ originalSource: string; ++ originalLine: number; ++ originalColumn: number; ++ mappedName: null | string; ++ intermediateMaps?: string[] ++} ++ ++// Accept "null", null, or undefined for tests specifying a missing value. ++function nullish(arg : any) { ++ if (arg === "null" || arg === undefined) { ++ return null; ++ } ++ return arg; ++} ++ ++describeWithEnvironment('SourceMapSpec', () => { ++ let testCases : TestSpec[] | undefined; ++ let sourceMapContents : SourceMapV3[] = []; ++ ++ before(async () => { ++ testCases = await loadTestCasesFromFixture('source-map-spec-tests.json'); ++ sourceMapContents = await Promise.all( ++ testCases!.map( ++ async (testCase) => { ++ const { sourceMapFile } = testCase; ++ return loadSourceMapFromFixture(sourceMapFile); ++ } ++ ) ++ ); ++ }); ++ ++ it('Spec tests', () => { ++ const consoleErrorSpy = sinon.spy(console, 'error'); ++ testCases!.forEach(({ ++ baseFile, ++ sourceMapFile, ++ testActions, ++ sourceMapIsValid, ++ name ++ }, index) => { ++ const sourceMapContent = sourceMapContents[index]; ++ ++ // These test cases are ignored because certain validity checks are ++ // not implemented, such as checking the version number is `3`. ++ const ignoredCasesForBasicValidity = [ ++ "fileNotAString1", ++ "fileNotAString2", ++ "versionMissing", ++ "versionNotANumber", ++ "versionNumericString", ++ "versionTooHigh", ++ "versionTooLow", ++ "sourcesNotAList1", ++ "sourcesNotAList2", ++ "sourcesNotStringOrNull", ++ // FIXME: this test should be revised after recent spec changes ++ "namesMissing", ++ "namesNotAList1", ++ "namesNotAList2", ++ "namesNotString", ++ "ignoreListWrongType1", ++ "ignoreListWrongType2", ++ "ignoreListOutOfBounds", ++ "indexMapWrongTypeSections", ++ "indexMapWrongTypeMap", ++ "indexMapMissingOffset", ++ "invalidVLQDueToNonBase64Character", ++ ]; ++ ++ // 1) check if an invalid sourcemap throws on SourceMap instance creation, or ++ // 2) check if an invalid sourcemap throws on mapping creation ++ if (!sourceMapIsValid) { ++ if (ignoredCasesForBasicValidity.includes(name)) ++ return; ++ ++ let thrownDuringParse = false; ++ try { ++ const sourceMap = new SDK.SourceMap.SourceMap( ++ baseFile as Platform.DevToolsPath.UrlString, ++ sourceMapFile as Platform.DevToolsPath.UrlString, ++ sourceMapContent); ++ sourceMap.mappings(); ++ } catch { ++ thrownDuringParse = true; ++ } ++ assert.equal( ++ thrownDuringParse || consoleErrorSpy.calledWith("Failed to parse source map"), ++ true, ++ `${name}: expected invalid source map to fail to load` ++ ); ++ ++ return; ++ } ++ ++ // 3) check if a valid sourcemap can be parsed and a SourceMap instance created ++ const baseFileUrl = baseFile as Platform.DevToolsPath.UrlString; ++ const sourceMapFileUrl = sourceMapFile as Platform.DevToolsPath.UrlString; ++ ++ assert.doesNotThrow( ++ () => parseSourceMap(JSON.stringify(sourceMapContent)), ++ undefined, ++ undefined, ++ `${name}: expected valid source map to parse` ++ ); ++ assert.doesNotThrow(() => new SDK.SourceMap.SourceMap( ++ baseFileUrl, ++ sourceMapFileUrl, ++ sourceMapContent ++ ), undefined, undefined, `${name}: expected valid source map to parse`); ++ ++ // 4) check if the mappings are valid ++ const sourceMap = new SDK.SourceMap.SourceMap( ++ baseFileUrl, ++ sourceMapFileUrl, ++ sourceMapContent); ++ ++ assert.doesNotThrow(() => sourceMap.findEntry(1, 1)); ++ ++ if (testActions !== undefined) { ++ testActions.forEach(({ ++ actionType, ++ originalSource, ++ originalLine, ++ originalColumn, ++ generatedLine, ++ generatedColumn, ++ intermediateMaps ++ }) => { ++ ++ if (actionType === "checkMapping" && sourceMapIsValid) { ++ // 4a) check if the mappings are valid for regular sourcemaps ++ // extract to separate function ++ let actual = sourceMap.findEntry(generatedLine, generatedColumn); ++ assertNotNullOrUndefined(actual); ++ ++ assert.strictEqual(nullish(actual.sourceURL), originalSource, 'unexpected source URL'); ++ assert.strictEqual(nullish(actual.sourceLineNumber), originalLine, 'unexpected source line number'); ++ assert.strictEqual(nullish(actual.sourceColumnNumber), originalColumn, 'unexpected source column number'); ++ } ++ }); ++ } ++ }); ++ }); ++}); ++ ++async function loadTestCasesFromFixture(filename: string): Promise<TestSpec[]> { ++ const testSpec = await getFixtureFileContents<{ tests: TestSpec[] }>(filename); ++ return testSpec?.tests ?? []; ++}; ++ ++async function loadSourceMapFromFixture(filename: string): Promise<SourceMapV3> { ++ return getFixtureFileContents<SourceMapV3>(filename); ++}; ++ ++async function getFixtureFileContents<T>(filename: string): ++ Promise<T> { ++ const url = new URL(`/front_end/core/sdk/fixtures/sourcemaps/${filename}`, window.location.origin); ++ ++ const response = await fetch(url); ++ ++ if (response.status !== 200) { ++ throw new Error(`Unable to load ${url}`); ++ } ++ ++ const contentType = response.headers.get('content-type'); ++ const isGzipEncoded = contentType !== null && contentType.includes('gzip'); ++ let buffer = await response.arrayBuffer(); ++ ++ const decoder = new TextDecoder('utf-8'); ++ const contents = JSON.parse(decoder.decode(buffer)) as T; ++ return contents; ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn b/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn +new file mode 100644 +index 0000000000..a82b09a02d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn +@@ -0,0 +1,202 @@ ++# Copyright 2022 The Chromium Authors. All rights reserved. ++# Use of this source code is governed by a BSD-style license that can be ++# found in the LICENSE file. ++ ++import("../../../../../scripts/build/ninja/copy.gni") ++ ++copy_to_gen("sourcemaps") { ++ sources = [ ++ "basic-mapping-as-index-map.js", ++ "basic-mapping-as-index-map.js.map", ++ "basic-mapping-original.js", ++ "basic-mapping.js", ++ "basic-mapping.js.map", ++ "file-not-a-string-1.js", ++ "file-not-a-string-1.js.map", ++ "file-not-a-string-2.js", ++ "file-not-a-string-2.js.map", ++ "ignore-list-empty.js", ++ "ignore-list-empty.js.map", ++ "ignore-list-out-of-bounds.js", ++ "ignore-list-out-of-bounds.js.map", ++ "ignore-list-valid-1.js", ++ "ignore-list-valid-1.js.map", ++ "ignore-list-wrong-type-1.js", ++ "ignore-list-wrong-type-1.js.map", ++ "ignore-list-wrong-type-2.js", ++ "ignore-list-wrong-type-2.js.map", ++ "ignore-list-wrong-type-3.js", ++ "ignore-list-wrong-type-3.js.map", ++ "index-map-empty-sections.js", ++ "index-map-empty-sections.js.map", ++ "index-map-file-wrong-type-1.js", ++ "index-map-file-wrong-type-1.js.map", ++ "index-map-file-wrong-type-2.js", ++ "index-map-file-wrong-type-2.js.map", ++ "index-map-invalid-base-mappings.js", ++ "index-map-invalid-base-mappings.js.map", ++ "index-map-invalid-order.js", ++ "index-map-invalid-order.js.map", ++ "index-map-invalid-overlap.js", ++ "index-map-invalid-overlap.js.map", ++ "index-map-invalid-sub-map.js", ++ "index-map-invalid-sub-map.js.map", ++ "index-map-missing-file.js", ++ "index-map-missing-file.js.map", ++ "index-map-missing-map.js", ++ "index-map-missing-map.js.map", ++ "index-map-missing-offset-column.js", ++ "index-map-missing-offset-column.js.map", ++ "index-map-missing-offset-line.js", ++ "index-map-missing-offset-line.js.map", ++ "index-map-missing-offset.js", ++ "index-map-missing-offset.js.map", ++ "index-map-offset-column-wrong-type.js", ++ "index-map-offset-column-wrong-type.js.map", ++ "index-map-offset-line-wrong-type.js", ++ "index-map-offset-line-wrong-type.js.map", ++ "index-map-two-concatenated-sources.js", ++ "index-map-two-concatenated-sources.js.map", ++ "index-map-wrong-type-map.js", ++ "index-map-wrong-type-map.js.map", ++ "index-map-wrong-type-offset.js", ++ "index-map-wrong-type-offset.js.map", ++ "index-map-wrong-type-sections.js", ++ "index-map-wrong-type-sections.js.map", ++ "invalid-mapping-bad-separator.js", ++ "invalid-mapping-bad-separator.js.map", ++ "invalid-mapping-not-a-string-1.js", ++ "invalid-mapping-not-a-string-1.js.map", ++ "invalid-mapping-not-a-string-2.js", ++ "invalid-mapping-not-a-string-2.js.map", ++ "invalid-mapping-segment-column-too-large.js", ++ "invalid-mapping-segment-column-too-large.js.map", ++ "invalid-mapping-segment-name-index-out-of-bounds.js", ++ "invalid-mapping-segment-name-index-out-of-bounds.js.map", ++ "invalid-mapping-segment-name-index-too-large.js", ++ "invalid-mapping-segment-name-index-too-large.js.map", ++ "invalid-mapping-segment-negative-column.js", ++ "invalid-mapping-segment-negative-column.js.map", ++ "invalid-mapping-segment-negative-name-index.js", ++ "invalid-mapping-segment-negative-name-index.js.map", ++ "invalid-mapping-segment-negative-original-column.js", ++ "invalid-mapping-segment-negative-original-column.js.map", ++ "invalid-mapping-segment-negative-original-line.js", ++ "invalid-mapping-segment-negative-original-line.js.map", ++ "invalid-mapping-segment-negative-relative-column.js", ++ "invalid-mapping-segment-negative-relative-column.js.map", ++ "invalid-mapping-segment-negative-relative-name-index.js", ++ "invalid-mapping-segment-negative-relative-name-index.js.map", ++ "invalid-mapping-segment-negative-relative-original-column.js", ++ "invalid-mapping-segment-negative-relative-original-column.js.map", ++ "invalid-mapping-segment-negative-relative-original-line.js", ++ "invalid-mapping-segment-negative-relative-original-line.js.map", ++ "invalid-mapping-segment-negative-relative-source-index.js", ++ "invalid-mapping-segment-negative-relative-source-index.js.map", ++ "invalid-mapping-segment-negative-source-index.js", ++ "invalid-mapping-segment-negative-source-index.js.map", ++ "invalid-mapping-segment-original-column-too-large.js", ++ "invalid-mapping-segment-original-column-too-large.js.map", ++ "invalid-mapping-segment-original-line-too-large.js", ++ "invalid-mapping-segment-original-line-too-large.js.map", ++ "invalid-mapping-segment-source-index-out-of-bounds.js", ++ "invalid-mapping-segment-source-index-out-of-bounds.js.map", ++ "invalid-mapping-segment-source-index-too-large.js", ++ "invalid-mapping-segment-source-index-too-large.js.map", ++ "invalid-mapping-segment-with-three-fields.js", ++ "invalid-mapping-segment-with-three-fields.js.map", ++ "invalid-mapping-segment-with-two-fields.js", ++ "invalid-mapping-segment-with-two-fields.js.map", ++ "invalid-mapping-segment-with-zero-fields.js", ++ "invalid-mapping-segment-with-zero-fields.js.map", ++ "invalid-vlq-missing-continuation.js", ++ "invalid-vlq-missing-continuation.js.map", ++ "invalid-vlq-non-base64-char.js", ++ "invalid-vlq-non-base64-char.js.map", ++ "mapping-semantics-column-reset.js", ++ "mapping-semantics-column-reset.js.map", ++ "mapping-semantics-five-field-segment.js", ++ "mapping-semantics-five-field-segment.js.map", ++ "mapping-semantics-four-field-segment.js", ++ "mapping-semantics-four-field-segment.js.map", ++ "mapping-semantics-relative-1.js", ++ "mapping-semantics-relative-1.js.map", ++ "mapping-semantics-relative-2.js", ++ "mapping-semantics-relative-2.js.map", ++ "mapping-semantics-single-field-segment.js", ++ "mapping-semantics-single-field-segment.js.map", ++ "names-missing.js", ++ "names-missing.js.map", ++ "names-not-a-list-1.js", ++ "names-not-a-list-1.js.map", ++ "names-not-a-list-2.js", ++ "names-not-a-list-2.js.map", ++ "names-not-string.js", ++ "names-not-string.js.map", ++ "second-source-original.js", ++ "source-map-spec-tests.json", ++ "source-resolution-absolute-url.js", ++ "source-resolution-absolute-url.js.map", ++ "source-resolution-relative-url.js", ++ "source-resolution-relative-url.js.map", ++ "source-root-not-a-string-1.js", ++ "source-root-not-a-string-1.js.map", ++ "source-root-not-a-string-2.js", ++ "source-root-not-a-string-2.js.map", ++ "source-root-resolution.js", ++ "source-root-resolution.js.map", ++ "sources-and-sources-content-both-null.js", ++ "sources-and-sources-content-both-null.js.map", ++ "sources-missing.js", ++ "sources-missing.js.map", ++ "sources-non-null-sources-content-null.js", ++ "sources-non-null-sources-content-null.js.map", ++ "sources-not-a-list-1.js", ++ "sources-not-a-list-1.js.map", ++ "sources-not-a-list-2.js", ++ "sources-not-a-list-2.js.map", ++ "sources-not-string-or-null.js", ++ "sources-not-string-or-null.js.map", ++ "sources-null-sources-content-non-null.js", ++ "sources-null-sources-content-non-null.js.map", ++ "transitive-mapping-original.js", ++ "transitive-mapping-original.js.map", ++ "transitive-mapping-three-steps.js", ++ "transitive-mapping-three-steps.js.map", ++ "transitive-mapping.js", ++ "transitive-mapping.js.map", ++ "typescript-original.ts", ++ "unrecognized-property.js", ++ "unrecognized-property.js.map", ++ "valid-mapping-boundary-values.js", ++ "valid-mapping-boundary-values.js.map", ++ "valid-mapping-empty-groups.js", ++ "valid-mapping-empty-groups.js.map", ++ "valid-mapping-empty-string.js", ++ "valid-mapping-empty-string.js.map", ++ "valid-mapping-large-vlq.js", ++ "valid-mapping-large-vlq.js.map", ++ "valid-mapping-null-sources.js", ++ "valid-mapping-null-sources.js.map", ++ "version-missing.js", ++ "version-missing.js.map", ++ "version-not-a-number.js", ++ "version-not-a-number.js.map", ++ "version-numeric-string.js", ++ "version-numeric-string.js.map", ++ "version-too-high.js", ++ "version-too-high.js.map", ++ "version-too-low.js", ++ "version-too-low.js.map", ++ "version-valid.js", ++ "version-valid.js.map", ++ "vlq-valid-continuation-bit-present-1.js", ++ "vlq-valid-continuation-bit-present-1.js.map", ++ "vlq-valid-continuation-bit-present-2.js", ++ "vlq-valid-continuation-bit-present-2.js.map", ++ "vlq-valid-negative-digit.js", ++ "vlq-valid-negative-digit.js.map", ++ "vlq-valid-single-digit.js", ++ "vlq-valid-single-digit.js.map", ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js +new file mode 100644 +index 0000000000..b9fae38043 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=basic-mapping-as-index-map.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map +new file mode 100644 +index 0000000000..c0ad870ed2 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "file": "basic-mapping-as-index-map.js", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js +new file mode 100644 +index 0000000000..301b186cb1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js +@@ -0,0 +1,8 @@ ++function foo() { ++ return 42; ++} ++function bar() { ++ return 24; ++} ++foo(); ++bar(); +diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js +new file mode 100644 +index 0000000000..2e479a4175 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=basic-mapping.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map +new file mode 100644 +index 0000000000..12dc9679a4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version":3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js +new file mode 100644 +index 0000000000..385a5c3501 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-empty.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map +new file mode 100644 +index 0000000000..7297863a9b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js +new file mode 100644 +index 0000000000..7a0fbb8833 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-out-of-bounds.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map +new file mode 100644 +index 0000000000..fb2566bb41 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [1] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js +new file mode 100644 +index 0000000000..ea64a5565a +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-valid-1.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map +new file mode 100644 +index 0000000000..98eebdf7f6 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [0] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js +new file mode 100644 +index 0000000000..8b40bd3847 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-1.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map +new file mode 100644 +index 0000000000..688740aba8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": ["not a number"] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js +new file mode 100644 +index 0000000000..35c7791164 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-2.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map +new file mode 100644 +index 0000000000..ca1d30de2d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": ["0"] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js +new file mode 100644 +index 0000000000..8735d41758 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-3.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map +new file mode 100644 +index 0000000000..1ac167d56c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": 0 ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js +new file mode 100644 +index 0000000000..e90bef083c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-base-mappings.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map +new file mode 100644 +index 0000000000..b489c1f080 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "mappings": "AAAA", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js +new file mode 100644 +index 0000000000..263fa3c6e0 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-order.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map +new file mode 100644 +index 0000000000..82da69df72 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map +@@ -0,0 +1,23 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 1, "column": 4 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js +new file mode 100644 +index 0000000000..9aff8dc620 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-overlap.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map +new file mode 100644 +index 0000000000..8d42546fd8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map +@@ -0,0 +1,23 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js +new file mode 100644 +index 0000000000..86c8e9a253 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-map.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map +new file mode 100644 +index 0000000000..3bce47e852 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js +new file mode 100644 +index 0000000000..fe6917403f +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset-column.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map +new file mode 100644 +index 0000000000..aa48bbb993 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js +new file mode 100644 +index 0000000000..ba8614e412 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset-line.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map +new file mode 100644 +index 0000000000..3d60444ea7 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js +new file mode 100644 +index 0000000000..9ca2cf3fb5 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map +new file mode 100644 +index 0000000000..7285138bf5 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map +@@ -0,0 +1,13 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js +new file mode 100644 +index 0000000000..ed1e9ec5d5 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-offset-column-wrong-type.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map +new file mode 100644 +index 0000000000..b43e79a9dd +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": true }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js +new file mode 100644 +index 0000000000..d58f2aff99 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-offset-line-wrong-type.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map +new file mode 100644 +index 0000000000..81dbcd6ec4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": true, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js +new file mode 100644 +index 0000000000..b8702d7187 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar();function baz(){return"baz"}baz(); ++//# sourceMappingURL=index-map-two-concatenated-sources.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map +new file mode 100644 +index 0000000000..f67f5de3c5 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map +@@ -0,0 +1,24 @@ ++{ ++ "version": 3, ++ "file": "index-map-two-concatenated-sources.js", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 62 }, ++ "map": { ++ "version": 3, ++ "names": ["baz"], ++ "sources": ["second-source-original.js"], ++ "mappings":"AAAA,SAASA,MACP,MAAO,KACT,CACAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js +new file mode 100644 +index 0000000000..d31d6d6358 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-map.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map +new file mode 100644 +index 0000000000..0963f623d7 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map +@@ -0,0 +1,9 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": "not a map" ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js +new file mode 100644 +index 0000000000..048e1246f8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-offset.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map +new file mode 100644 +index 0000000000..fbc6e4e678 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": "not an offset", ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js +new file mode 100644 +index 0000000000..011eca806e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-sections.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map +new file mode 100644 +index 0000000000..dbfb4ead30 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map +@@ -0,0 +1,4 @@ ++{ ++ "version": 3, ++ "sections": "not a sections list" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js +new file mode 100644 +index 0000000000..25338aca30 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-bad-separator.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map +new file mode 100644 +index 0000000000..5f4f5b9233 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA.SAASA:MACP" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js +new file mode 100644 +index 0000000000..cb38e2fe9d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-not-a-string-1.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map +new file mode 100644 +index 0000000000..5bf3e2a9d8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-not-a-string-1.js", ++ "sources": ["empty-original.js"], ++ "mappings": 5 ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js +new file mode 100644 +index 0000000000..3d84abd6c6 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-not-a-string-2.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map +new file mode 100644 +index 0000000000..4527e7f764 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-not-a-string-2.js", ++ "sources": ["empty-original.js"], ++ "mappings": [1, 2, 3, 4] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js +new file mode 100644 +index 0000000000..55591f874b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-column-too-large.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map +new file mode 100644 +index 0000000000..b4c059e015 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-column-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "ggggggE" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js +new file mode 100644 +index 0000000000..2a6b434eff +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-name-index-out-of-bounds.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map +new file mode 100644 +index 0000000000..8dd2ea6c2d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "file": "invalid-mapping-segment-name-index-out-of-bounds.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAC" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js +new file mode 100644 +index 0000000000..709e34dbd3 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-name-index-too-large.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map +new file mode 100644 +index 0000000000..c7bf5b98d1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-name-index-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAggggggE" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js +new file mode 100644 +index 0000000000..a202152d6f +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-column.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map +new file mode 100644 +index 0000000000..403878bfa4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-column.js", ++ "sources": ["empty-original.js"], ++ "mappings": "F" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js +new file mode 100644 +index 0000000000..3e3f634204 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-name-index.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map +new file mode 100644 +index 0000000000..b94f63646e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-name-index.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAF" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js +new file mode 100644 +index 0000000000..f21d5342b3 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-original-column.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map +new file mode 100644 +index 0000000000..011c639d3f +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-original-column.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAF" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js +new file mode 100644 +index 0000000000..b37309601c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-original-line.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map +new file mode 100644 +index 0000000000..e7ec993eeb +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-original-line.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAFA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js +new file mode 100644 +index 0000000000..94b835d687 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-column.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map +new file mode 100644 +index 0000000000..414884072b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-column.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "C,F" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js +new file mode 100644 +index 0000000000..c965c5f011 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-name-index.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map +new file mode 100644 +index 0000000000..1fbbcfcd32 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-name-index.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AAAAC,AAAAF" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js +new file mode 100644 +index 0000000000..493a6ec88a +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-column.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map +new file mode 100644 +index 0000000000..7e62895651 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-original-column.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AAAC,AAAF" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js +new file mode 100644 +index 0000000000..ca8329fb98 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-line.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map +new file mode 100644 +index 0000000000..86b0fb3a04 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-original-line.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AACA,AAFA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js +new file mode 100644 +index 0000000000..fa92225b09 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-source-index.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map +new file mode 100644 +index 0000000000..2efeb047db +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-source-index.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "ACAA,AFAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js +new file mode 100644 +index 0000000000..6e05849b6a +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-source-index.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map +new file mode 100644 +index 0000000000..596c2f298b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-source-index.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AFAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js +new file mode 100644 +index 0000000000..0936ed7ea8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-original-column-too-large.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map +new file mode 100644 +index 0000000000..ff2103fe24 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-original-column-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAggggggE" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js +new file mode 100644 +index 0000000000..9b3aa5a361 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-original-line-too-large.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map +new file mode 100644 +index 0000000000..890f1c71fc +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-original-line-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAggggggEA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js +new file mode 100644 +index 0000000000..2e5fbca268 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-source-index-out-of-bounds.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map +new file mode 100644 +index 0000000000..86dedb114f +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-source-index-out-of-bounds.js", ++ "sources": ["empty-original.js"], ++ "mappings": "ACAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js +new file mode 100644 +index 0000000000..3f4943e127 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-source-index-too-large.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map +new file mode 100644 +index 0000000000..e9f858c6e1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-source-index-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AggggggEAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js +new file mode 100644 +index 0000000000..4b868fac9c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-segment-with-three-fields.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map +new file mode 100644 +index 0000000000..c2af1165ad +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js +new file mode 100644 +index 0000000000..96045a7a11 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-segment-with-two-fields.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map +new file mode 100644 +index 0000000000..73cf00fa1c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js +new file mode 100644 +index 0000000000..9d5332a56c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-with-zero-fields.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map +new file mode 100644 +index 0000000000..5a34d25b64 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-with-zero-fields.js", ++ "sources": ["empty-original.js"], ++ "mappings": ",,,," ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js +new file mode 100644 +index 0000000000..2c2a0090ac +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-vlq-missing-continuation.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map +new file mode 100644 +index 0000000000..dd0e363ff4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "g" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js +new file mode 100644 +index 0000000000..d1b20b41a2 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-vlq-non-base64-char.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map +new file mode 100644 +index 0000000000..4fa1ac5768 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "A$%?!" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-missing.js b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js +new file mode 100644 +index 0000000000..58781fd887 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-missing.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map +new file mode 100644 +index 0000000000..82170bf784 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map +@@ -0,0 +1,5 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js +new file mode 100644 +index 0000000000..dc65f1972b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-a-list-1.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map +new file mode 100644 +index 0000000000..fe1edaeb96 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": "not a list", ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js +new file mode 100644 +index 0000000000..d7251f78da +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-a-list-2.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map +new file mode 100644 +index 0000000000..3388d2bb71 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": { "foo": 3 }, ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js +new file mode 100644 +index 0000000000..8dc7b4811a +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-string.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map +new file mode 100644 +index 0000000000..c0feb0739a +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": [null, 3, true, false, {}, []], ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js b/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js +new file mode 100644 +index 0000000000..c339bc9d15 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js +@@ -0,0 +1,4 @@ ++function baz() { ++ return "baz"; ++} ++baz(); +diff --git a/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json b/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json +new file mode 100644 +index 0000000000..0f7a3c1cb1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json +@@ -0,0 +1,1540 @@ ++{ ++ "tests": [ ++ { ++ "name": "versionValid", ++ "description": "Test a simple source map with a valid version number", ++ "baseFile": "version-valid.js", ++ "sourceMapFile": "version-valid.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "versionMissing", ++ "description": "Test a source map that is missing a version field", ++ "baseFile": "version-missing.js", ++ "sourceMapFile": "version-missing.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionNotANumber", ++ "description": "Test a source map with a version field that is not a number", ++ "baseFile": "version-not-a-number.js", ++ "sourceMapFile": "version-not-a-number.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionNumericString", ++ "description": "Test a source map with a version field that is a number as a string", ++ "baseFile": "version-numeric-string.js", ++ "sourceMapFile": "version-numeric-string.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionTooHigh", ++ "description": "Test a source map with an integer version field that is too high", ++ "baseFile": "version-too-high.js", ++ "sourceMapFile": "version-too-high.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionTooLow", ++ "description": "Test a source map with an integer version field that is too low", ++ "baseFile": "version-too-low.js", ++ "sourceMapFile": "version-too-low.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesMissing", ++ "description": "Test a source map that is missing a necessary sources field", ++ "baseFile": "sources-missing.js", ++ "sourceMapFile": "sources-missing.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotAList1", ++ "description": "Test a source map with a sources field that is not a valid list (string)", ++ "baseFile": "sources-not-a-list-1.js", ++ "sourceMapFile": "sources-not-a-list-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotAList2", ++ "description": "Test a source map with a sources field that is not a valid list (object)", ++ "baseFile": "sources-not-a-list-2.js", ++ "sourceMapFile": "sources-not-a-list-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotStringOrNull", ++ "description": "Test a source map with a sources list that has non-string and non-null items", ++ "baseFile": "sources-not-string-or-null.js", ++ "sourceMapFile": "sources-not-string-or-null.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesAndSourcesContentBothNull", ++ "description": "Test a source map that has both null sources and sourcesContent entries", ++ "baseFile": "sources-and-sources-content-both-null.js", ++ "sourceMapFile": "sources-and-sources-content-both-null.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "fileNotAString1", ++ "description": "Test a source map with a file field that is not a valid string", ++ "baseFile": "file-not-a-string-1.js", ++ "sourceMapFile": "file-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "fileNotAString2", ++ "description": "Test a source map with a file field that is not a valid string", ++ "baseFile": "file-not-a-string-2.js", ++ "sourceMapFile": "file-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourceRootNotAString1", ++ "description": "Test a source map with a sourceRoot field that is not a valid string", ++ "baseFile": "source-root-not-a-string-1.js", ++ "sourceMapFile": "source-root-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourceRootNotAString2", ++ "description": "Test a source map with a sourceRoot field that is not a valid string", ++ "baseFile": "source-root-not-a-string-2.js", ++ "sourceMapFile": "source-root-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesMissing", ++ "description": "Test a source map that is missing a necessary names field", ++ "baseFile": "names-missing.js", ++ "sourceMapFile": "names-missing.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesNotAList1", ++ "description": "Test a source map with a names field that is not a valid list (string)", ++ "baseFile": "names-not-a-list-1.js", ++ "sourceMapFile": "names-not-a-list-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesNotAList2", ++ "description": "Test a source map with a names field that is not a valid list (object)", ++ "baseFile": "names-not-a-list-2.js", ++ "sourceMapFile": "names-not-a-list-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesNotString", ++ "description": "Test a source map with a names list that has non-string items", ++ "baseFile": "names-not-string.js", ++ "sourceMapFile": "names-not-string.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListEmpty", ++ "description": "Test a source map with an ignore list that has no items", ++ "baseFile": "ignore-list-empty.js", ++ "sourceMapFile": "ignore-list-empty.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "ignoreListValid1", ++ "description": "Test a source map with a simple valid ignore list", ++ "baseFile": "ignore-list-valid-1.js", ++ "sourceMapFile": "ignore-list-valid-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkIgnoreList", ++ "present": ["empty-original.js"] ++ } ++ ] ++ }, ++ { ++ "name": "ignoreListWrongType1", ++ "description": "Test a source map with an ignore list with the wrong type of items", ++ "baseFile": "ignore-list-wrong-type-1.js", ++ "sourceMapFile": "ignore-list-wrong-type-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListWrongType2", ++ "description": "Test a source map with an ignore list with the wrong type of items", ++ "baseFile": "ignore-list-wrong-type-2.js", ++ "sourceMapFile": "ignore-list-wrong-type-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListWrongType3", ++ "description": "Test a source map with an ignore list that is not a list", ++ "baseFile": "ignore-list-wrong-type-3.js", ++ "sourceMapFile": "ignore-list-wrong-type-3.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListOutOfBounds", ++ "description": "Test a source map with an ignore list with an item with an out-of-bounds index", ++ "baseFile": "ignore-list-out-of-bounds.js", ++ "sourceMapFile": "ignore-list-out-of-bounds.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "unrecognizedProperty", ++ "description": "Test a source map that has an extra field not explicitly encoded in the spec", ++ "baseFile": "unrecognized-property.js", ++ "sourceMapFile": "unrecognized-property.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "invalidVLQDueToNonBase64Character", ++ "description": "Test a source map that has a mapping with an invalid non-base64 character", ++ "baseFile": "invalid-vlq-non-base64-char.js", ++ "sourceMapFile": "invalid-vlq-non-base64-char.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidVLQDueToMissingContinuationDigits", ++ "description": "Test a source map that has a mapping with an invalid VLQ that has a continuation bit but no continuing digits", ++ "baseFile": "invalid-vlq-missing-continuation.js", ++ "sourceMapFile": "invalid-vlq-missing-continuation.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingNotAString1", ++ "description": "Test a source map that has an invalid mapping that is not a string (number)", ++ "baseFile": "invalid-mapping-not-a-string-1.js", ++ "sourceMapFile": "invalid-mapping-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingNotAString2", ++ "description": "Test a source map that has an invalid mapping that is not a string (array)", ++ "baseFile": "invalid-mapping-not-a-string-2.js", ++ "sourceMapFile": "invalid-mapping-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentBadSeparator", ++ "description": "Test a source map that uses separator characters not recognized in the spec", ++ "baseFile": "invalid-mapping-bad-separator.js", ++ "sourceMapFile": "invalid-mapping-bad-separator.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithZeroFields", ++ "description": "Test a source map that has the wrong number (zero) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-zero-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-zero-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithTwoFields", ++ "description": "Test a source map that has the wrong number (two) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-two-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-two-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithThreeFields", ++ "description": "Test a source map that has the wrong number (three) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-three-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-three-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithSourceIndexOutOfBounds", ++ "description": "Test a source map that has a source index field that is out of bounds of the sources field", ++ "baseFile": "invalid-mapping-segment-source-index-out-of-bounds.js", ++ "sourceMapFile": "invalid-mapping-segment-source-index-out-of-bounds.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNameIndexOutOfBounds", ++ "description": "Test a source map that has a name index field that is out of bounds of the names field", ++ "baseFile": "invalid-mapping-segment-name-index-out-of-bounds.js", ++ "sourceMapFile": "invalid-mapping-segment-name-index-out-of-bounds.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeColumn", ++ "description": "Test a source map that has an invalid negative non-relative column field", ++ "baseFile": "invalid-mapping-segment-negative-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeSourceIndex", ++ "description": "Test a source map that has an invalid negative non-relative source index field", ++ "baseFile": "invalid-mapping-segment-negative-source-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-source-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeOriginalLine", ++ "description": "Test a source map that has an invalid negative non-relative original line field", ++ "baseFile": "invalid-mapping-segment-negative-original-line.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-original-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeOriginalColumn", ++ "description": "Test a source map that has an invalid negative non-relative original column field", ++ "baseFile": "invalid-mapping-segment-negative-original-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-original-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeNameIndex", ++ "description": "Test a source map that has an invalid negative non-relative name index field", ++ "baseFile": "invalid-mapping-segment-negative-name-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-name-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeColumn", ++ "description": "Test a source map that has an invalid negative relative column field", ++ "baseFile": "invalid-mapping-segment-negative-relative-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeSourceIndex", ++ "description": "Test a source map that has an invalid negative relative source index field", ++ "baseFile": "invalid-mapping-segment-negative-relative-source-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-source-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalLine", ++ "description": "Test a source map that has an invalid negative relative original line field", ++ "baseFile": "invalid-mapping-segment-negative-relative-original-line.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalColumn", ++ "description": "Test a source map that has an invalid negative relative original column field", ++ "baseFile": "invalid-mapping-segment-negative-relative-original-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeNameIndex", ++ "description": "Test a source map that has an invalid negative relative name index field", ++ "baseFile": "invalid-mapping-segment-negative-relative-name-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-name-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithColumnExceeding32Bits", ++ "description": "Test a source map that has a column field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-column-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-column-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithSourceIndexExceeding32Bits", ++ "description": "Test a source map that has a source index field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-source-index-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-source-index-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithOriginalLineExceeding32Bits", ++ "description": "Test a source map that has a original line field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-original-line-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-original-line-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithOriginalColumnExceeding32Bits", ++ "description": "Test a source map that has an original column field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-original-column-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-original-column-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNameIndexExceeding32Bits", ++ "description": "Test a source map that has a name index field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-name-index-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-name-index-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "validMappingFieldsWith32BitMaxValues", ++ "description": "Test a source map that has segment fields with max values representable in 32 bits", ++ "baseFile": "valid-mapping-boundary-values.js", ++ "sourceMapFile": "valid-mapping-boundary-values.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingLargeVLQ", ++ "description": "Test a source map that has a segment field VLQ that is very long but within 32-bits", ++ "baseFile": "valid-mapping-large-vlq.js", ++ "sourceMapFile": "valid-mapping-large-vlq.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingEmptyGroups", ++ "description": "Test a source map with a mapping that has many empty groups", ++ "baseFile": "valid-mapping-empty-groups.js", ++ "sourceMapFile": "valid-mapping-empty-groups.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingEmptyString", ++ "description": "Test a source map with an empty string mapping", ++ "baseFile": "valid-mapping-empty-string.js", ++ "sourceMapFile": "valid-mapping-empty-string.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "indexMapWrongTypeSections", ++ "description": "Test an index map with a sections field with the wrong type", ++ "baseFile": "index-map-wrong-type-sections.js", ++ "sourceMapFile": "index-map-wrong-type-sections.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapWrongTypeOffset", ++ "description": "Test an index map with an offset field with the wrong type", ++ "baseFile": "index-map-wrong-type-offset.js", ++ "sourceMapFile": "index-map-wrong-type-offset.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapWrongTypeMap", ++ "description": "Test an index map with a map field with the wrong type", ++ "baseFile": "index-map-wrong-type-map.js", ++ "sourceMapFile": "index-map-wrong-type-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidBaseMappings", ++ "description": "Test that an index map cannot also have a regular mappings field", ++ "baseFile": "index-map-invalid-base-mappings.js", ++ "sourceMapFile": "index-map-invalid-base-mappings.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidOverlap", ++ "description": "Test that an invalid index map with multiple sections that overlap", ++ "baseFile": "index-map-invalid-overlap.js", ++ "sourceMapFile": "index-map-invalid-overlap.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidOrder", ++ "description": "Test that an invalid index map with multiple sections in the wrong order", ++ "baseFile": "index-map-invalid-order.js", ++ "sourceMapFile": "index-map-invalid-order.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingMap", ++ "description": "Test that an index map that is missing a section map", ++ "baseFile": "index-map-missing-map.js", ++ "sourceMapFile": "index-map-missing-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidSubMap", ++ "description": "Test that an index map that has an invalid section map", ++ "baseFile": "index-map-invalid-sub-map.js", ++ "sourceMapFile": "index-map-invalid-sub-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffset", ++ "description": "Test that an index map that is missing a section offset", ++ "baseFile": "index-map-missing-offset.js", ++ "sourceMapFile": "index-map-missing-offset.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffsetLine", ++ "description": "Test that an index map that is missing a section offset's line field", ++ "baseFile": "index-map-missing-offset-line.js", ++ "sourceMapFile": "index-map-missing-offset-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffsetColumn", ++ "description": "Test that an index map that is missing a section offset's column field", ++ "baseFile": "index-map-missing-offset-column.js", ++ "sourceMapFile": "index-map-missing-offset-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapOffsetLineWrongType", ++ "description": "Test that an index map that has an offset line field with the wrong type of value", ++ "baseFile": "index-map-offset-line-wrong-type.js", ++ "sourceMapFile": "index-map-offset-line-wrong-type.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapOffsetColumnWrongType", ++ "description": "Test that an index map that has an offset column field with the wrong type of value", ++ "baseFile": "index-map-offset-column-wrong-type.js", ++ "sourceMapFile": "index-map-offset-column-wrong-type.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapEmptySections", ++ "description": "Test a trivial index map with no sections", ++ "baseFile": "index-map-empty-sections.js", ++ "sourceMapFile": "index-map-empty-sections.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "indexMapFileWrongType1", ++ "description": "Test an index map with a file field with the wrong type", ++ "baseFile": "index-map-file-wrong-type-1.js", ++ "sourceMapFile": "index-map-file-wrong-type-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapFileWrongType2", ++ "description": "Test an index map with a file field with the wrong type", ++ "baseFile": "index-map-file-wrong-type-2.js", ++ "sourceMapFile": "index-map-file-wrong-type-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "basicMapping", ++ "description": "Test a simple source map that has several valid mappings", ++ "baseFile": "basic-mapping.js", ++ "sourceMapFile": "basic-mapping.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "sourceRootResolution", ++ "description": "Similar to basic mapping test, but test resoultion of sources with a sourceRoot field", ++ "baseFile": "source-root-resolution.js", ++ "sourceMapFile": "source-root-resolution.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "theroot/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "theroot/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "sourceResolutionAbsoluteURL", ++ "description": "Test resoultion of sources with absolute URLs", ++ "baseFile": "source-resolution-absolute-url.js", ++ "sourceMapFile": "source-resolution-absolute-url.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "/baz/quux/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "/baz/quux/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "basicMappingWithIndexMap", ++ "description": "Test a version of basic-mapping.js.map that is split into sections with an index map", ++ "baseFile": "basic-mapping-as-index-map.js", ++ "sourceMapFile": "basic-mapping-as-index-map.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "indexMapWithMissingFile", ++ "description": "Same as the basic mapping index map test but without the optional file field", ++ "baseFile": "index-map-missing-file.js", ++ "sourceMapFile": "index-map-missing-file.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "indexMapWithTwoConcatenatedSources", ++ "description": "Test an index map that has two sub-maps for concatenated sources", ++ "baseFile": "index-map-two-concatenated-sources.js", ++ "sourceMapFile": "index-map-two-concatenated-sources.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 62, ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 71, ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "baz" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 77, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 83, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 88, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 89, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": "baz" ++ } ++ ] ++ }, ++ { ++ "name": "sourcesNullSourcesContentNonNull", ++ "description": "Test a source map that has a null source but has a sourcesContent", ++ "baseFile": "sources-null-sources-content-non-null.js", ++ "sourceMapFile": "sources-null-sources-content-non-null.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": null, ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": null, ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "sourcesNonNullSourcesContentNull", ++ "description": "Test a source map that has a non-null source but has a null sourcesContent", ++ "baseFile": "sources-non-null-sources-content-null.js", ++ "sourceMapFile": "sources-non-null-sources-content-null.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "transitiveMapping", ++ "description": "Test a simple two-stage transitive mapping from a minified JS to a TypeScript source", ++ "baseFile": "transitive-mapping.js", ++ "sourceMapFile": "transitive-mapping.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 13, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 13, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 16, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 23, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 29, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "transitiveMappingWithThreeSteps", ++ "description": "Test a three-stage transitive mapping from an un-minified JS to minified JS to a TypeScript source", ++ "baseFile": "transitive-mapping-three-steps.js", ++ "sourceMapFile": "transitive-mapping-three-steps.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 13, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 13, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 1, ++ "generatedColumn": 4, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 1, ++ "generatedColumn": 11, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 2, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 4, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 4, ++ "generatedColumn": 4, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidSingleDigit", ++ "description": "Test VLQ decoding for a single digit, no continuation VLQ", ++ "baseFile": "vlq-valid-single-digit.js", ++ "sourceMapFile": "vlq-valid-single-digit.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-single-digit-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidNegativeDigit", ++ "description": "Test VLQ decoding where there's a negative digit, no continuation bit", ++ "baseFile": "vlq-valid-negative-digit.js", ++ "sourceMapFile": "vlq-valid-negative-digit.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-negative-digit-original.js", ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 2, ++ "originalSource": "vlq-valid-negative-digit-original.js", ++ "originalLine": 1, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidContinuationBitPresent1", ++ "description": "Test VLQ decoding where continuation bits are present (continuations are leading zero)", ++ "baseFile": "vlq-valid-continuation-bit-present-1.js", ++ "sourceMapFile": "vlq-valid-continuation-bit-present-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-continuation-bit-present-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidContinuationBitPresent2", ++ "description": "Test VLQ decoding where continuation bits are present (continuations have non-zero bits)", ++ "baseFile": "vlq-valid-continuation-bit-present-2.js", ++ "sourceMapFile": "vlq-valid-continuation-bit-present-2.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 16, ++ "originalSource": "vlq-valid-continuation-bit-present-2-original.js", ++ "originalLine": 1, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsSingleFieldSegment", ++ "description": "Test mapping semantics for a single field segment mapping", ++ "baseFile": "mapping-semantics-single-field-segment.js", ++ "sourceMapFile": "mapping-semantics-single-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "mapping-semantics-single-field-segment-original.js", ++ "originalLine": 0, ++ "originalColumn": 1, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 2, ++ "originalSource": null, ++ "originalLine": null, ++ "originalColumn": null, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsFourFieldSegment", ++ "description": "Test mapping semantics for a four field segment mapping", ++ "baseFile": "mapping-semantics-four-field-segment.js", ++ "sourceMapFile": "mapping-semantics-four-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-four-field-segment-original.js", ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsFiveFieldSegment", ++ "description": "Test mapping semantics for a five field segment mapping", ++ "baseFile": "mapping-semantics-five-field-segment.js", ++ "sourceMapFile": "mapping-semantics-five-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-five-field-segment-original.js", ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsColumnReset", ++ "description": "Test that the generated column field resets to zero on new lines", ++ "baseFile": "mapping-semantics-column-reset.js", ++ "sourceMapFile": "mapping-semantics-column-reset.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-column-reset-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 1, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-column-reset-original.js", ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsRelative1", ++ "description": "Test that fields are calculated relative to previous ones", ++ "baseFile": "mapping-semantics-relative-1.js", ++ "sourceMapFile": "mapping-semantics-relative-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-relative-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 5, ++ "originalSource": "mapping-semantics-relative-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsRelative2", ++ "description": "Test that fields are calculated relative to previous ones, across lines", ++ "baseFile": "mapping-semantics-relative-2.js", ++ "sourceMapFile": "mapping-semantics-relative-2.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-relative-2-original.js", ++ "originalLine": 0, ++ "originalColumn": 2, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 1, ++ "generatedColumn": 2, ++ "originalSource": "mapping-semantics-relative-2-original.js", ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": "bar" ++ } ++ ] ++ } ++ ] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js +new file mode 100644 +index 0000000000..9263eba549 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-and-sources-content-both-null.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map +new file mode 100644 +index 0000000000..09a7c1f369 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "sources": [null], ++ "sourcesContent": [null], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js +new file mode 100644 +index 0000000000..779b865e27 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-missing.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map +new file mode 100644 +index 0000000000..92aff4fb0e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map +@@ -0,0 +1,5 @@ ++{ ++ "version" : 3, ++ "names": ["foo"], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js +new file mode 100644 +index 0000000000..939b568ba1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=sources-non-null-sources-content-null.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map +new file mode 100644 +index 0000000000..e573906b2d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "sources": ["basic-mapping-original.js"], ++ "sourcesContent": [null], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js +new file mode 100644 +index 0000000000..7e33b7e867 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-a-list-1.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map +new file mode 100644 +index 0000000000..26330517b9 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": "not a list", ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js +new file mode 100644 +index 0000000000..4021f763fc +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-a-list-2.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map +new file mode 100644 +index 0000000000..2ed85962fd +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": { "source.js": 3 }, ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js +new file mode 100644 +index 0000000000..7dca97a1da +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-string-or-null.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map +new file mode 100644 +index 0000000000..db25561966 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [3, {}, true, false, []], ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js +new file mode 100644 +index 0000000000..a760594ee9 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=sources-null-sources-content-non-null.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map +new file mode 100644 +index 0000000000..43af03903f +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version":3, ++ "names": ["foo"], ++ "sources": [null], ++ "sourcesContent": ["function foo()\n{ return 42; }\nfunction bar()\n { return 24; }\nfoo();\nbar();"], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js +new file mode 100644 +index 0000000000..0a96699d6e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js +@@ -0,0 +1,5 @@ ++function foo(x) { ++ return x; ++} ++foo("foo"); ++//# sourceMappingURL=transitive-mapping-original.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map +new file mode 100644 +index 0000000000..65af25c1eb +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "file" : "transitive-mapping-original.js", ++ "sourceRoot": "", ++ "sources": ["typescript-original.ts"], ++ "names": [], ++ "mappings": "AACA,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AACD,GAAG,CAAC,KAAK,CAAC,CAAC" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js +new file mode 100644 +index 0000000000..fd956164d3 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js +@@ -0,0 +1,6 @@ ++function foo(x) { ++ return x; ++} ++ ++foo("foo"); ++//# sourceMappingURL=transitive-mapping-three-steps.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map +new file mode 100644 +index 0000000000..90459d90f6 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "file": "transitive-mapping-three-steps.js", ++ "sources": ["transitive-mapping.js"], ++ "names": ["foo", "x"], ++ "mappings": "AAAA,SAASA,IAAIC;IAAG,OAAOA;AAAC;;AAACD,IAAI,KAAK" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js +new file mode 100644 +index 0000000000..183c027f1b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js +@@ -0,0 +1,2 @@ ++function foo(x){return x}foo("foo"); ++//# sourceMappingURL=transitive-mapping.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map +new file mode 100644 +index 0000000000..d6a6fa6672 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","x"], ++ "sources": ["transitive-mapping-original.js"], ++ "mappings":"AAAA,SAASA,IAAIC,GACT,OAAOA,CACX,CACAD,IAAI" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts b/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts +new file mode 100644 +index 0000000000..cd51c01ba1 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts +@@ -0,0 +1,5 @@ ++type FooArg = string | number; ++function foo(x : FooArg) { ++ return x; ++} ++foo("foo"); +diff --git a/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js +new file mode 100644 +index 0000000000..19dfb0e2e6 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=unrecognized-property.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map +new file mode 100644 +index 0000000000..40bee558a4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "", ++ "foobar": 42, ++ "unusedProperty": [1, 2, 3, 4] ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js +new file mode 100644 +index 0000000000..3c49709e05 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-boundary-values.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map +new file mode 100644 +index 0000000000..4dd836e63d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "file": "valid-mapping-boundary-values.js", ++ "sources": ["empty-original.js"], ++ "mappings": "+/////DA+/////D+/////DA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js +new file mode 100644 +index 0000000000..a2b767b619 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-empty-groups.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map +new file mode 100644 +index 0000000000..643c9ae784 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "valid-mapping-empty-groups.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js +new file mode 100644 +index 0000000000..b0cd897813 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-large-vlq.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map +new file mode 100644 +index 0000000000..76e18704c4 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["valid-mapping-large-vlq.js"], ++ "mappings": "igggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js +new file mode 100644 +index 0000000000..ee2acf0f5b +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=valid-mapping-null-sources.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map +new file mode 100644 +index 0000000000..199cda9369 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version":3, ++ "names": ["foo"], ++ "sources": [null], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-missing.js b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js +new file mode 100644 +index 0000000000..c32d1f1a1c +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-missing.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map +new file mode 100644 +index 0000000000..49d8ce766e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map +@@ -0,0 +1,5 @@ ++{ ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js +new file mode 100644 +index 0000000000..ae2342e2ff +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-not-a-number.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map +new file mode 100644 +index 0000000000..a584d6e695 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : "3foo", ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js +new file mode 100644 +index 0000000000..a55170885d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-numeric-string.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map +new file mode 100644 +index 0000000000..dbe52a7d0d +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : "3", ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js +new file mode 100644 +index 0000000000..55f4e1a298 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-too-high.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map +new file mode 100644 +index 0000000000..ee23be32ff +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 4, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js +new file mode 100644 +index 0000000000..d9642920b3 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-too-low.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map +new file mode 100644 +index 0000000000..64ca7a6e2e +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 2, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-valid.js b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js +new file mode 100644 +index 0000000000..82d0bfa1eb +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-valid.js.map +diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map +new file mode 100644 +index 0000000000..1a163052d8 +--- /dev/null ++++ b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +-- +2.39.2 + diff --git a/test/fixtures/test426/chrome/0002-Add-reverse-mapping-code-to-test.patch b/test/fixtures/test426/chrome/0002-Add-reverse-mapping-code-to-test.patch new file mode 100644 index 00000000000000..dc08ba5fadb482 --- /dev/null +++ b/test/fixtures/test426/chrome/0002-Add-reverse-mapping-code-to-test.patch @@ -0,0 +1,46 @@ +From bebeda0b8133fc8f44382e59edda9203c980e8f3 Mon Sep 17 00:00:00 2001 +From: Asumu Takikawa <asumu@igalia.com> +Date: Thu, 11 Jul 2024 16:44:29 -0700 +Subject: [PATCH 2/2] Add reverse mapping code to test + +--- + front_end/core/sdk/SourceMapSpec.test.ts | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +diff --git a/front_end/core/sdk/SourceMapSpec.test.ts b/front_end/core/sdk/SourceMapSpec.test.ts +index 93b26a2e13..402b82e4c0 100644 +--- a/front_end/core/sdk/SourceMapSpec.test.ts ++++ b/front_end/core/sdk/SourceMapSpec.test.ts +@@ -12,7 +12,6 @@ + + **/ + +-const {assert} = chai; + import type * as Platform from '../platform/platform.js'; + import {assertNotNullOrUndefined} from '../platform/platform.js'; + import { SourceMapV3, parseSourceMap } from './SourceMap.js'; +@@ -170,6 +169,21 @@ describeWithEnvironment('SourceMapSpec', () => { + assert.strictEqual(nullish(actual.sourceURL), originalSource, 'unexpected source URL'); + assert.strictEqual(nullish(actual.sourceLineNumber), originalLine, 'unexpected source line number'); + assert.strictEqual(nullish(actual.sourceColumnNumber), originalColumn, 'unexpected source column number'); ++ ++ if (originalSource != null) { ++ let reverseEntries = sourceMap.findReverseEntries( ++ originalSource as Platform.DevToolsPath.UrlString, ++ originalLine, ++ originalColumn ++ ); ++ ++ const anyEntryMatched = reverseEntries.some((entry) => { ++ return entry.sourceURL === originalSource && ++ entry.sourceLineNumber === originalLine && ++ entry.sourceColumnNumber === originalColumn; ++ }); ++ assert.isTrue(anyEntryMatched, `expected any matching reverse lookup entry, got none`); ++ } + } + }); + } +-- +2.39.2 + diff --git a/test/fixtures/test426/resources/basic-mapping-as-index-map.js b/test/fixtures/test426/resources/basic-mapping-as-index-map.js new file mode 100644 index 00000000000000..b9fae380437d95 --- /dev/null +++ b/test/fixtures/test426/resources/basic-mapping-as-index-map.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=basic-mapping-as-index-map.js.map diff --git a/test/fixtures/test426/resources/basic-mapping-as-index-map.js.map b/test/fixtures/test426/resources/basic-mapping-as-index-map.js.map new file mode 100644 index 00000000000000..c0ad870ed2baec --- /dev/null +++ b/test/fixtures/test426/resources/basic-mapping-as-index-map.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "file": "basic-mapping-as-index-map.js", + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" + } + } + ] +} diff --git a/test/fixtures/test426/resources/basic-mapping-original.js b/test/fixtures/test426/resources/basic-mapping-original.js new file mode 100644 index 00000000000000..301b186cb15e6d --- /dev/null +++ b/test/fixtures/test426/resources/basic-mapping-original.js @@ -0,0 +1,8 @@ +function foo() { + return 42; +} +function bar() { + return 24; +} +foo(); +bar(); diff --git a/test/fixtures/test426/resources/basic-mapping.js b/test/fixtures/test426/resources/basic-mapping.js new file mode 100644 index 00000000000000..2e479a4175b861 --- /dev/null +++ b/test/fixtures/test426/resources/basic-mapping.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=basic-mapping.js.map diff --git a/test/fixtures/test426/resources/basic-mapping.js.map b/test/fixtures/test426/resources/basic-mapping.js.map new file mode 100644 index 00000000000000..12dc9679a4b1db --- /dev/null +++ b/test/fixtures/test426/resources/basic-mapping.js.map @@ -0,0 +1,6 @@ +{ + "version":3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +} diff --git a/test/fixtures/test426/resources/file-not-a-string-1.js b/test/fixtures/test426/resources/file-not-a-string-1.js new file mode 100644 index 00000000000000..d049f870450a55 --- /dev/null +++ b/test/fixtures/test426/resources/file-not-a-string-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=file-not-a-string-1.js.map diff --git a/test/fixtures/test426/resources/file-not-a-string-1.js.map b/test/fixtures/test426/resources/file-not-a-string-1.js.map new file mode 100644 index 00000000000000..85e973d881dfbf --- /dev/null +++ b/test/fixtures/test426/resources/file-not-a-string-1.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "file": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/file-not-a-string-2.js b/test/fixtures/test426/resources/file-not-a-string-2.js new file mode 100644 index 00000000000000..07b8152c0c6cd1 --- /dev/null +++ b/test/fixtures/test426/resources/file-not-a-string-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=file-not-a-string-2.js.map diff --git a/test/fixtures/test426/resources/file-not-a-string-2.js.map b/test/fixtures/test426/resources/file-not-a-string-2.js.map new file mode 100644 index 00000000000000..a5b6b1f9d94fc3 --- /dev/null +++ b/test/fixtures/test426/resources/file-not-a-string-2.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "file": 235324, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/ignore-list-empty.js b/test/fixtures/test426/resources/ignore-list-empty.js new file mode 100644 index 00000000000000..385a5c3501b22c --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-empty.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-empty.js.map diff --git a/test/fixtures/test426/resources/ignore-list-empty.js.map b/test/fixtures/test426/resources/ignore-list-empty.js.map new file mode 100644 index 00000000000000..7297863a9be8ef --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-empty.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": [] +} diff --git a/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js b/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js new file mode 100644 index 00000000000000..567174a707ef49 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-out-of-bounds-1.js.map diff --git a/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js.map b/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js.map new file mode 100644 index 00000000000000..fb2566bb419b98 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-out-of-bounds-1.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": [1] +} diff --git a/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js b/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js new file mode 100644 index 00000000000000..4216d9a67315a9 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-out-of-bounds-2.js.map diff --git a/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js.map b/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js.map new file mode 100644 index 00000000000000..41371a76a89663 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-out-of-bounds-2.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": [-1] +} diff --git a/test/fixtures/test426/resources/ignore-list-valid-1.js b/test/fixtures/test426/resources/ignore-list-valid-1.js new file mode 100644 index 00000000000000..ea64a5565a6325 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-valid-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-valid-1.js.map diff --git a/test/fixtures/test426/resources/ignore-list-valid-1.js.map b/test/fixtures/test426/resources/ignore-list-valid-1.js.map new file mode 100644 index 00000000000000..98eebdf7f65598 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-valid-1.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": [0] +} diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-1.js b/test/fixtures/test426/resources/ignore-list-wrong-type-1.js new file mode 100644 index 00000000000000..8b40bd38476724 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-wrong-type-1.js.map diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-1.js.map b/test/fixtures/test426/resources/ignore-list-wrong-type-1.js.map new file mode 100644 index 00000000000000..688740aba843fc --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-1.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": ["not a number"] +} diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-2.js b/test/fixtures/test426/resources/ignore-list-wrong-type-2.js new file mode 100644 index 00000000000000..35c77911648ef6 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-wrong-type-2.js.map diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-2.js.map b/test/fixtures/test426/resources/ignore-list-wrong-type-2.js.map new file mode 100644 index 00000000000000..ca1d30de2d3626 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-2.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": ["0"] +} diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-3.js b/test/fixtures/test426/resources/ignore-list-wrong-type-3.js new file mode 100644 index 00000000000000..8735d4175804bf --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-3.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-wrong-type-3.js.map diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-3.js.map b/test/fixtures/test426/resources/ignore-list-wrong-type-3.js.map new file mode 100644 index 00000000000000..1ac167d56c4e74 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-3.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": 0 +} diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-4.js b/test/fixtures/test426/resources/ignore-list-wrong-type-4.js new file mode 100644 index 00000000000000..e42f4698a3ec0e --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-4.js @@ -0,0 +1 @@ +//# sourceMappingURL=ignore-list-wrong-type-4.js.map diff --git a/test/fixtures/test426/resources/ignore-list-wrong-type-4.js.map b/test/fixtures/test426/resources/ignore-list-wrong-type-4.js.map new file mode 100644 index 00000000000000..c1a27efe980dd4 --- /dev/null +++ b/test/fixtures/test426/resources/ignore-list-wrong-type-4.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "", + "names": [], + "ignoreList": [0.5] +} diff --git a/test/fixtures/test426/resources/index-map-empty-sections.js b/test/fixtures/test426/resources/index-map-empty-sections.js new file mode 100644 index 00000000000000..abe9f7f30816c6 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-empty-sections.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-empty-sections.js.map diff --git a/test/fixtures/test426/resources/index-map-empty-sections.js.map b/test/fixtures/test426/resources/index-map-empty-sections.js.map new file mode 100644 index 00000000000000..f3efabbe00c395 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-empty-sections.js.map @@ -0,0 +1,4 @@ +{ + "version": 3, + "sections": [] +} diff --git a/test/fixtures/test426/resources/index-map-file-wrong-type-1.js b/test/fixtures/test426/resources/index-map-file-wrong-type-1.js new file mode 100644 index 00000000000000..48bb12855bf5c4 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-file-wrong-type-1.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=index-map-file-wrong-type-1.js.map diff --git a/test/fixtures/test426/resources/index-map-file-wrong-type-1.js.map b/test/fixtures/test426/resources/index-map-file-wrong-type-1.js.map new file mode 100644 index 00000000000000..dd39b5a2b13c19 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-file-wrong-type-1.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "file": [], + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-file-wrong-type-2.js b/test/fixtures/test426/resources/index-map-file-wrong-type-2.js new file mode 100644 index 00000000000000..c002ba726a51bf --- /dev/null +++ b/test/fixtures/test426/resources/index-map-file-wrong-type-2.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=index-map-file-wrong-type-2.js.map diff --git a/test/fixtures/test426/resources/index-map-file-wrong-type-2.js.map b/test/fixtures/test426/resources/index-map-file-wrong-type-2.js.map new file mode 100644 index 00000000000000..0ee0a406be8d60 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-file-wrong-type-2.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "file": 2345234234, + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-invalid-base-mappings.js b/test/fixtures/test426/resources/index-map-invalid-base-mappings.js new file mode 100644 index 00000000000000..e90bef083c4925 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-base-mappings.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-invalid-base-mappings.js.map diff --git a/test/fixtures/test426/resources/index-map-invalid-base-mappings.js.map b/test/fixtures/test426/resources/index-map-invalid-base-mappings.js.map new file mode 100644 index 00000000000000..4ad1fefe65097b --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-base-mappings.js.map @@ -0,0 +1,16 @@ +{ + "version": 3, + "mappings": "AAAA", + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContnet": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-invalid-order.js b/test/fixtures/test426/resources/index-map-invalid-order.js new file mode 100644 index 00000000000000..263fa3c6e0b92e --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-order.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-invalid-order.js.map diff --git a/test/fixtures/test426/resources/index-map-invalid-order.js.map b/test/fixtures/test426/resources/index-map-invalid-order.js.map new file mode 100644 index 00000000000000..74e0c1d052c4bc --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-order.js.map @@ -0,0 +1,25 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 1, "column": 4 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original-1.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + }, + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original-2.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-invalid-overlap.js b/test/fixtures/test426/resources/index-map-invalid-overlap.js new file mode 100644 index 00000000000000..9aff8dc6203abc --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-overlap.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-invalid-overlap.js.map diff --git a/test/fixtures/test426/resources/index-map-invalid-overlap.js.map b/test/fixtures/test426/resources/index-map-invalid-overlap.js.map new file mode 100644 index 00000000000000..3c08cb7beb59d9 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-overlap.js.map @@ -0,0 +1,25 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original-1.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + }, + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original-2.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-invalid-sub-map.js b/test/fixtures/test426/resources/index-map-invalid-sub-map.js new file mode 100644 index 00000000000000..284e8d77e6591e --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-sub-map.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-invalid-sub-map.js.map diff --git a/test/fixtures/test426/resources/index-map-invalid-sub-map.js.map b/test/fixtures/test426/resources/index-map-invalid-sub-map.js.map new file mode 100644 index 00000000000000..4020ae30c5765b --- /dev/null +++ b/test/fixtures/test426/resources/index-map-invalid-sub-map.js.map @@ -0,0 +1,13 @@ +{ + "version": 3, + "file": "index-map-invalid-sub-map.js", + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": "3", + "mappings": 7 + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-missing-file.js b/test/fixtures/test426/resources/index-map-missing-file.js new file mode 100644 index 00000000000000..be2a93cb77cdee --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-file.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=index-map-missing-file.js.map diff --git a/test/fixtures/test426/resources/index-map-missing-file.js.map b/test/fixtures/test426/resources/index-map-missing-file.js.map new file mode 100644 index 00000000000000..8a6d4b5dc78800 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-file.js.map @@ -0,0 +1,14 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-missing-map.js b/test/fixtures/test426/resources/index-map-missing-map.js new file mode 100644 index 00000000000000..86c8e9a2535ad9 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-map.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-missing-map.js.map diff --git a/test/fixtures/test426/resources/index-map-missing-map.js.map b/test/fixtures/test426/resources/index-map-missing-map.js.map new file mode 100644 index 00000000000000..3bce47e852cfec --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-map.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0, "column": 0 } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-missing-offset-column.js b/test/fixtures/test426/resources/index-map-missing-offset-column.js new file mode 100644 index 00000000000000..fe6917403f1804 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset-column.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-missing-offset-column.js.map diff --git a/test/fixtures/test426/resources/index-map-missing-offset-column.js.map b/test/fixtures/test426/resources/index-map-missing-offset-column.js.map new file mode 100644 index 00000000000000..ae27aa5e62c72d --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset-column.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-missing-offset-line.js b/test/fixtures/test426/resources/index-map-missing-offset-line.js new file mode 100644 index 00000000000000..ba8614e412cef8 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset-line.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-missing-offset-line.js.map diff --git a/test/fixtures/test426/resources/index-map-missing-offset-line.js.map b/test/fixtures/test426/resources/index-map-missing-offset-line.js.map new file mode 100644 index 00000000000000..7b128e96b0b7cb --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset-line.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-missing-offset.js b/test/fixtures/test426/resources/index-map-missing-offset.js new file mode 100644 index 00000000000000..9ca2cf3fb5159d --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-missing-offset.js.map diff --git a/test/fixtures/test426/resources/index-map-missing-offset.js.map b/test/fixtures/test426/resources/index-map-missing-offset.js.map new file mode 100644 index 00000000000000..7737595d848cd6 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-missing-offset.js.map @@ -0,0 +1,14 @@ +{ + "version": 3, + "sections": [ + { + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js b/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js new file mode 100644 index 00000000000000..ed1e9ec5d5b8a6 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-offset-column-wrong-type.js.map diff --git a/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js.map b/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js.map new file mode 100644 index 00000000000000..6ea11758c1e448 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-offset-column-wrong-type.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0, "column": true }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js b/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js new file mode 100644 index 00000000000000..d58f2aff993e6e --- /dev/null +++ b/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-offset-line-wrong-type.js.map diff --git a/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js.map b/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js.map new file mode 100644 index 00000000000000..d48b2f43f16b21 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-offset-line-wrong-type.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": true, "column": 0 }, + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-two-concatenated-sources.js b/test/fixtures/test426/resources/index-map-two-concatenated-sources.js new file mode 100644 index 00000000000000..b8702d7187c925 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-two-concatenated-sources.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar();function baz(){return"baz"}baz(); +//# sourceMappingURL=index-map-two-concatenated-sources.js.map diff --git a/test/fixtures/test426/resources/index-map-two-concatenated-sources.js.map b/test/fixtures/test426/resources/index-map-two-concatenated-sources.js.map new file mode 100644 index 00000000000000..f67f5de3c5d8c3 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-two-concatenated-sources.js.map @@ -0,0 +1,24 @@ +{ + "version": 3, + "file": "index-map-two-concatenated-sources.js", + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": { + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" + } + }, + { + "offset": { "line": 0, "column": 62 }, + "map": { + "version": 3, + "names": ["baz"], + "sources": ["second-source-original.js"], + "mappings":"AAAA,SAASA,MACP,MAAO,KACT,CACAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-wrong-type-map.js b/test/fixtures/test426/resources/index-map-wrong-type-map.js new file mode 100644 index 00000000000000..d31d6d6358b493 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-map.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-wrong-type-map.js.map diff --git a/test/fixtures/test426/resources/index-map-wrong-type-map.js.map b/test/fixtures/test426/resources/index-map-wrong-type-map.js.map new file mode 100644 index 00000000000000..0963f623d761a9 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-map.js.map @@ -0,0 +1,9 @@ +{ + "version": 3, + "sections": [ + { + "offset": { "line": 0, "column": 0 }, + "map": "not a map" + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-wrong-type-offset.js b/test/fixtures/test426/resources/index-map-wrong-type-offset.js new file mode 100644 index 00000000000000..048e1246f8b01b --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-offset.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-wrong-type-offset.js.map diff --git a/test/fixtures/test426/resources/index-map-wrong-type-offset.js.map b/test/fixtures/test426/resources/index-map-wrong-type-offset.js.map new file mode 100644 index 00000000000000..645278c3b4755a --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-offset.js.map @@ -0,0 +1,15 @@ +{ + "version": 3, + "sections": [ + { + "offset": "not an offset", + "map": { + "version": 3, + "names": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAA" + } + } + ] +} diff --git a/test/fixtures/test426/resources/index-map-wrong-type-sections.js b/test/fixtures/test426/resources/index-map-wrong-type-sections.js new file mode 100644 index 00000000000000..011eca806ed600 --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-sections.js @@ -0,0 +1 @@ +//# sourceMappingURL=index-map-wrong-type-sections.js.map diff --git a/test/fixtures/test426/resources/index-map-wrong-type-sections.js.map b/test/fixtures/test426/resources/index-map-wrong-type-sections.js.map new file mode 100644 index 00000000000000..dbfb4ead3001fb --- /dev/null +++ b/test/fixtures/test426/resources/index-map-wrong-type-sections.js.map @@ -0,0 +1,4 @@ +{ + "version": 3, + "sections": "not a sections list" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-bad-separator.js b/test/fixtures/test426/resources/invalid-mapping-bad-separator.js new file mode 100644 index 00000000000000..25338aca30cefd --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-bad-separator.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=invalid-mapping-bad-separator.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-bad-separator.js.map b/test/fixtures/test426/resources/invalid-mapping-bad-separator.js.map new file mode 100644 index 00000000000000..5f4f5b92330a6b --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-bad-separator.js.map @@ -0,0 +1,6 @@ +{ + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAAA.SAASA:MACP" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js b/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js new file mode 100644 index 00000000000000..cb38e2fe9d7b1d --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-not-a-string-1.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js.map b/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js.map new file mode 100644 index 00000000000000..73d74bef42e202 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-not-a-string-1.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-not-a-string-1.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": 5 +} diff --git a/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js b/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js new file mode 100644 index 00000000000000..3d84abd6c6b480 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-not-a-string-2.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js.map b/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js.map new file mode 100644 index 00000000000000..3143cbce170b9e --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-not-a-string-2.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-not-a-string-2.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": [1, 2, 3, 4] +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js b/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js new file mode 100644 index 00000000000000..55591f874b1b9e --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-column-too-large.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js.map new file mode 100644 index 00000000000000..96b3ce97dcb271 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-column-too-large.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-column-too-large.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "ggggggE" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js new file mode 100644 index 00000000000000..2a6b434eff5819 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-name-index-out-of-bounds.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map new file mode 100644 index 00000000000000..3efb8da9abbaa6 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": ["foo"], + "file": "invalid-mapping-segment-name-index-out-of-bounds.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAAC" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js new file mode 100644 index 00000000000000..709e34dbd326a0 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-name-index-too-large.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js.map new file mode 100644 index 00000000000000..1d44bb8300f7c0 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-name-index-too-large.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-name-index-too-large.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAAggggggE" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js new file mode 100644 index 00000000000000..a202152d6fdf29 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-column.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js.map new file mode 100644 index 00000000000000..bb7e887dc05f4a --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-column.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-column.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "F" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js new file mode 100644 index 00000000000000..3e3f6342046785 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-name-index.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js.map new file mode 100644 index 00000000000000..5197ab23b1d2cd --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-name-index.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-name-index.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAAF" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js new file mode 100644 index 00000000000000..f21d5342b395a8 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-original-column.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js.map new file mode 100644 index 00000000000000..4a76cb3e390636 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-column.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-original-column.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAF" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js new file mode 100644 index 00000000000000..b37309601ce013 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-original-line.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js.map new file mode 100644 index 00000000000000..40170361b5ddf8 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-original-line.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-original-line.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAFA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js new file mode 100644 index 00000000000000..94b835d6877c07 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-relative-column.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js.map new file mode 100644 index 00000000000000..414884072b55a5 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-column.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-relative-column.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "C,F" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js new file mode 100644 index 00000000000000..c965c5f011f584 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-relative-name-index.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js.map new file mode 100644 index 00000000000000..1fbbcfcd323e5f --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-name-index.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-relative-name-index.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAAC,AAAAF" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js new file mode 100644 index 00000000000000..493a6ec88a391a --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-column.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js.map new file mode 100644 index 00000000000000..7e62895651fa30 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-column.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-relative-original-column.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAC,AAAF" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js new file mode 100644 index 00000000000000..ca8329fb98f02a --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-line.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js.map new file mode 100644 index 00000000000000..86b0fb3a04cc3d --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-original-line.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-relative-original-line.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AACA,AAFA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js new file mode 100644 index 00000000000000..fa92225b096325 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-relative-source-index.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js.map new file mode 100644 index 00000000000000..2efeb047db618e --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-relative-source-index.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-relative-source-index.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "ACAA,AFAA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js b/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js new file mode 100644 index 00000000000000..6e05849b6a0354 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-negative-source-index.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js.map new file mode 100644 index 00000000000000..ed835d8007ca68 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-negative-source-index.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-negative-source-index.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AFAA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js b/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js new file mode 100644 index 00000000000000..0936ed7ea8fdd4 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-original-column-too-large.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js.map new file mode 100644 index 00000000000000..8dee1df731c241 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-original-column-too-large.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-original-column-too-large.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAAggggggE" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js b/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js new file mode 100644 index 00000000000000..9b3aa5a361ae96 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-original-line-too-large.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js.map new file mode 100644 index 00000000000000..8ee6fea9c8350a --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-original-line-too-large.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-original-line-too-large.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AAggggggEA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js new file mode 100644 index 00000000000000..2e5fbca26825ae --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-source-index-out-of-bounds.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map new file mode 100644 index 00000000000000..fec001a67329e8 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-source-index-out-of-bounds.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "ACAA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js new file mode 100644 index 00000000000000..3f4943e1272d01 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-source-index-too-large.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js.map new file mode 100644 index 00000000000000..555489fa65701f --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-source-index-too-large.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-source-index-too-large.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "AggggggEAA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js b/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js new file mode 100644 index 00000000000000..ad452d96af8286 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=invalid-mapping-segment-with-three-fields.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js.map new file mode 100644 index 00000000000000..c2af1165ad8f1f --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-three-fields.js.map @@ -0,0 +1,6 @@ +{ + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AAA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js b/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js new file mode 100644 index 00000000000000..04c520b47877a1 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=invalid-mapping-segment-with-two-fields.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js.map new file mode 100644 index 00000000000000..73cf00fa1c9606 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-two-fields.js.map @@ -0,0 +1,6 @@ +{ + "version": 3, + "names": ["foo","bar"], + "sources": ["basic-mapping-original.js"], + "mappings": "AA" +} diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js b/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js new file mode 100644 index 00000000000000..cf627825a581f0 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-mapping-segment-with-zero-fields.js.map diff --git a/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js.map b/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js.map new file mode 100644 index 00000000000000..fb8e7cff64c376 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-mapping-segment-with-zero-fields.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "invalid-mapping-segment-with-zero-fields.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": ",,,," +} diff --git a/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js b/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js new file mode 100644 index 00000000000000..2c2a0090aca613 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-vlq-missing-continuation.js.map diff --git a/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js.map b/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js.map new file mode 100644 index 00000000000000..dd0e363ff47354 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-missing-continuation.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": [], + "names": [], + "mappings": "g" +} diff --git a/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js b/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js new file mode 100644 index 00000000000000..557cb6aed3b262 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-vlq-non-base64-char-padding.js.map diff --git a/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js.map b/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js.map new file mode 100644 index 00000000000000..b439caabc88143 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-non-base64-char-padding.js.map @@ -0,0 +1,7 @@ +{ + "version" : 3, + "sources": ["foo.js"], + "sourcesContent": ["hello world"], + "names": [], + "mappings": ";;A=" +} diff --git a/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js b/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js new file mode 100644 index 00000000000000..d1b20b41a29fc5 --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js @@ -0,0 +1 @@ +//# sourceMappingURL=invalid-vlq-non-base64-char.js.map diff --git a/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js.map b/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js.map new file mode 100644 index 00000000000000..4fa1ac5768853e --- /dev/null +++ b/test/fixtures/test426/resources/invalid-vlq-non-base64-char.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": [], + "names": [], + "mappings": "A$%?!" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-column-reset.js b/test/fixtures/test426/resources/mapping-semantics-column-reset.js new file mode 100644 index 00000000000000..b64482d0984324 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-column-reset.js @@ -0,0 +1,3 @@ + foo + bar +//# sourceMappingURL=mapping-semantics-column-reset.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-column-reset.js.map b/test/fixtures/test426/resources/mapping-semantics-column-reset.js.map new file mode 100644 index 00000000000000..97bc9b91a43d51 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-column-reset.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["mapping-semantics-column-reset-original.js"], + "sourcesContent": ["foo\nbar"], + "mappings": "CAAA;CACA" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js b/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js new file mode 100644 index 00000000000000..0f6602d61503c5 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js @@ -0,0 +1,2 @@ +foo +//# sourceMappingURL=mapping-semantics-five-field-segment.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js.map b/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js.map new file mode 100644 index 00000000000000..d0504f511dad2d --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-five-field-segment.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": ["foo"], + "sources": ["unused", "mapping-semantics-five-field-segment-original.js"], + "sourcesContent": ["", "\n\n foo"], + "mappings": "CCEEA" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js b/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js new file mode 100644 index 00000000000000..3dcbee9294c0b4 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js @@ -0,0 +1,2 @@ +foo +//# sourceMappingURL=mapping-semantics-four-field-segment.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js.map b/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js.map new file mode 100644 index 00000000000000..9e01ac4b6c58f8 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-four-field-segment.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["unused", "mapping-semantics-four-field-segment-original.js"], + "sourcesContent": ["", "\n\n foo"], + "mappings": "CCEE" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-relative-1.js b/test/fixtures/test426/resources/mapping-semantics-relative-1.js new file mode 100644 index 00000000000000..281870cc50e772 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-relative-1.js @@ -0,0 +1,2 @@ + 42; 24; +//# sourceMappingURL=mapping-semantics-relative-1.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-relative-1.js.map b/test/fixtures/test426/resources/mapping-semantics-relative-1.js.map new file mode 100644 index 00000000000000..6570031f8983f4 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-relative-1.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["unused", "mapping-semantics-relative-1-original.js"], + "sourcesContent": ["", "42; 24;"], + "mappings": "CCAA,IAAI" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-relative-2.js b/test/fixtures/test426/resources/mapping-semantics-relative-2.js new file mode 100644 index 00000000000000..f4bff1c75bccef --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-relative-2.js @@ -0,0 +1,3 @@ + foo + bar +//# sourceMappingURL=mapping-semantics-relative-2.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-relative-2.js.map b/test/fixtures/test426/resources/mapping-semantics-relative-2.js.map new file mode 100644 index 00000000000000..d6845233f91207 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-relative-2.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": ["foo", "bar"], + "sources": ["unused", "mapping-semantics-relative-2-original.js"], + "sourcesContent": ["", " foo\n bar"], + "mappings": "CCAEA;EACAC" +} diff --git a/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js b/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js new file mode 100644 index 00000000000000..ca06b7c58d8847 --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js @@ -0,0 +1,2 @@ + 3 +//# sourceMappingURL=mapping-semantics-single-field-segment.js.map diff --git a/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js.map b/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js.map new file mode 100644 index 00000000000000..8260d63085d79b --- /dev/null +++ b/test/fixtures/test426/resources/mapping-semantics-single-field-segment.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["mapping-semantics-single-field-segment-original.js"], + "sourcesContent": ["3 3"], + "mappings": "AAAC,E" +} diff --git a/test/fixtures/test426/resources/mappings-missing.js b/test/fixtures/test426/resources/mappings-missing.js new file mode 100644 index 00000000000000..07a8361e8fcae9 --- /dev/null +++ b/test/fixtures/test426/resources/mappings-missing.js @@ -0,0 +1 @@ +//# sourceMappingURL=mappings-missing.js.map diff --git a/test/fixtures/test426/resources/mappings-missing.js.map b/test/fixtures/test426/resources/mappings-missing.js.map new file mode 100644 index 00000000000000..7a60084729612d --- /dev/null +++ b/test/fixtures/test426/resources/mappings-missing.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "names": ["foo"], + "sources": ["1.js"], + "sourcesContent": ["hello world"] +} diff --git a/test/fixtures/test426/resources/names-missing.js b/test/fixtures/test426/resources/names-missing.js new file mode 100644 index 00000000000000..58781fd88705d3 --- /dev/null +++ b/test/fixtures/test426/resources/names-missing.js @@ -0,0 +1 @@ +//# sourceMappingURL=names-missing.js.map diff --git a/test/fixtures/test426/resources/names-missing.js.map b/test/fixtures/test426/resources/names-missing.js.map new file mode 100644 index 00000000000000..475f4e309b2641 --- /dev/null +++ b/test/fixtures/test426/resources/names-missing.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": ["empty-original.js"], + "sourcesContent" : [""], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/names-not-a-list-1.js b/test/fixtures/test426/resources/names-not-a-list-1.js new file mode 100644 index 00000000000000..dc65f1972b5a87 --- /dev/null +++ b/test/fixtures/test426/resources/names-not-a-list-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=names-not-a-list-1.js.map diff --git a/test/fixtures/test426/resources/names-not-a-list-1.js.map b/test/fixtures/test426/resources/names-not-a-list-1.js.map new file mode 100644 index 00000000000000..fe1edaeb96ad90 --- /dev/null +++ b/test/fixtures/test426/resources/names-not-a-list-1.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": ["source.js"], + "names": "not a list", + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/names-not-a-list-2.js b/test/fixtures/test426/resources/names-not-a-list-2.js new file mode 100644 index 00000000000000..d7251f78da8457 --- /dev/null +++ b/test/fixtures/test426/resources/names-not-a-list-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=names-not-a-list-2.js.map diff --git a/test/fixtures/test426/resources/names-not-a-list-2.js.map b/test/fixtures/test426/resources/names-not-a-list-2.js.map new file mode 100644 index 00000000000000..3388d2bb7109d0 --- /dev/null +++ b/test/fixtures/test426/resources/names-not-a-list-2.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": ["source.js"], + "names": { "foo": 3 }, + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/names-not-string.js b/test/fixtures/test426/resources/names-not-string.js new file mode 100644 index 00000000000000..8dc7b4811a3e91 --- /dev/null +++ b/test/fixtures/test426/resources/names-not-string.js @@ -0,0 +1 @@ +//# sourceMappingURL=names-not-string.js.map diff --git a/test/fixtures/test426/resources/names-not-string.js.map b/test/fixtures/test426/resources/names-not-string.js.map new file mode 100644 index 00000000000000..c0feb0739aecff --- /dev/null +++ b/test/fixtures/test426/resources/names-not-string.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": ["source.js"], + "names": [null, 3, true, false, {}, []], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/second-source-original.js b/test/fixtures/test426/resources/second-source-original.js new file mode 100644 index 00000000000000..c339bc9d15daa0 --- /dev/null +++ b/test/fixtures/test426/resources/second-source-original.js @@ -0,0 +1,4 @@ +function baz() { + return "baz"; +} +baz(); diff --git a/test/fixtures/test426/resources/source-resolution-absolute-url.js b/test/fixtures/test426/resources/source-resolution-absolute-url.js new file mode 100644 index 00000000000000..7ab34b6bd0fac9 --- /dev/null +++ b/test/fixtures/test426/resources/source-resolution-absolute-url.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=source-resolution-absolute-url.js.map diff --git a/test/fixtures/test426/resources/source-resolution-absolute-url.js.map b/test/fixtures/test426/resources/source-resolution-absolute-url.js.map new file mode 100644 index 00000000000000..195dc42ecea399 --- /dev/null +++ b/test/fixtures/test426/resources/source-resolution-absolute-url.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "file": "source-root-resolution.js", + "names": ["foo", "bar"], + "sources": ["/baz/quux/basic-mapping-original.js"], + "sourcesContent": ["function foo() {\nreturn 42;\n }\n function bar() {\n return 24;\n }\n foo();\n bar();"], + "mappings": "AAAA,SAASA" +} diff --git a/test/fixtures/test426/resources/source-root-not-a-string-1.js b/test/fixtures/test426/resources/source-root-not-a-string-1.js new file mode 100644 index 00000000000000..f176f3143a4adf --- /dev/null +++ b/test/fixtures/test426/resources/source-root-not-a-string-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=source-root-not-a-string-1.js.map diff --git a/test/fixtures/test426/resources/source-root-not-a-string-1.js.map b/test/fixtures/test426/resources/source-root-not-a-string-1.js.map new file mode 100644 index 00000000000000..e297f5c03e5096 --- /dev/null +++ b/test/fixtures/test426/resources/source-root-not-a-string-1.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sourceRoot": [], + "sources": ["empty-original.js"], + "sourcesContent": [""], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/source-root-not-a-string-2.js b/test/fixtures/test426/resources/source-root-not-a-string-2.js new file mode 100644 index 00000000000000..e7e6d9547825e6 --- /dev/null +++ b/test/fixtures/test426/resources/source-root-not-a-string-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=source-root-not-a-string-2.js.map diff --git a/test/fixtures/test426/resources/source-root-not-a-string-2.js.map b/test/fixtures/test426/resources/source-root-not-a-string-2.js.map new file mode 100644 index 00000000000000..d5705ebfb8e982 --- /dev/null +++ b/test/fixtures/test426/resources/source-root-not-a-string-2.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sourceRoot": -10923409, + "sources": ["empty-original.js"], + "sourcesContent": [""], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/source-root-resolution.js b/test/fixtures/test426/resources/source-root-resolution.js new file mode 100644 index 00000000000000..15a1a4c95026b0 --- /dev/null +++ b/test/fixtures/test426/resources/source-root-resolution.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=source-root-resolution.js.map diff --git a/test/fixtures/test426/resources/source-root-resolution.js.map b/test/fixtures/test426/resources/source-root-resolution.js.map new file mode 100644 index 00000000000000..52fc9a23793f7c --- /dev/null +++ b/test/fixtures/test426/resources/source-root-resolution.js.map @@ -0,0 +1,9 @@ +{ + "version": 3, + "sourceRoot": "theroot", + "file": "source-root-resolution.js", + "names": ["foo", "bar"], + "sources": ["basic-mapping-original.js"], + "sourcesContent": ["function foo() {\n return 42;\n }\n function bar() {\n return 24;\n }\n foo();\n bar();"], + "mappings": "AAAA,SAASA" +} diff --git a/test/fixtures/test426/resources/sources-and-sources-content-both-null.js b/test/fixtures/test426/resources/sources-and-sources-content-both-null.js new file mode 100644 index 00000000000000..9263eba549f5b6 --- /dev/null +++ b/test/fixtures/test426/resources/sources-and-sources-content-both-null.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-and-sources-content-both-null.js.map diff --git a/test/fixtures/test426/resources/sources-and-sources-content-both-null.js.map b/test/fixtures/test426/resources/sources-and-sources-content-both-null.js.map new file mode 100644 index 00000000000000..09a7c1f3698ce6 --- /dev/null +++ b/test/fixtures/test426/resources/sources-and-sources-content-both-null.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": ["foo"], + "sources": [null], + "sourcesContent": [null], + "mappings":"AAAA,SAASA" +} diff --git a/test/fixtures/test426/resources/sources-content-missing.js b/test/fixtures/test426/resources/sources-content-missing.js new file mode 100644 index 00000000000000..c97d9f133a590d --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-missing.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-content-missing.js.map diff --git a/test/fixtures/test426/resources/sources-content-missing.js.map b/test/fixtures/test426/resources/sources-content-missing.js.map new file mode 100644 index 00000000000000..fa7922f5c783fe --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-missing.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "names": ["foo"], + "sources": ["basic-mapping-original.js"], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/sources-content-not-a-list-1.js b/test/fixtures/test426/resources/sources-content-not-a-list-1.js new file mode 100644 index 00000000000000..5395f8b6fbe655 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-a-list-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-content-not-a-list-1.js.map diff --git a/test/fixtures/test426/resources/sources-content-not-a-list-1.js.map b/test/fixtures/test426/resources/sources-content-not-a-list-1.js.map new file mode 100644 index 00000000000000..3710f95111b755 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-a-list-1.js.map @@ -0,0 +1,7 @@ +{ + "version" : 3, + "sources": ["first.js"], + "sourcesContent": "not a list", + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-content-not-a-list-2.js b/test/fixtures/test426/resources/sources-content-not-a-list-2.js new file mode 100644 index 00000000000000..0ccc4aa460af30 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-a-list-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-content-not-a-list-2.js.map diff --git a/test/fixtures/test426/resources/sources-content-not-a-list-2.js.map b/test/fixtures/test426/resources/sources-content-not-a-list-2.js.map new file mode 100644 index 00000000000000..ab9ae257c1f9e4 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-a-list-2.js.map @@ -0,0 +1,7 @@ +{ + "version" : 3, + "sources": ["first.js"], + "sourcesContent": { "foobar baz": 3 }, + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-content-not-string-or-null.js b/test/fixtures/test426/resources/sources-content-not-string-or-null.js new file mode 100644 index 00000000000000..480b4ba7403f88 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-string-or-null.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-content-not-string-or-null.js.map diff --git a/test/fixtures/test426/resources/sources-content-not-string-or-null.js.map b/test/fixtures/test426/resources/sources-content-not-string-or-null.js.map new file mode 100644 index 00000000000000..6e6c2517150b96 --- /dev/null +++ b/test/fixtures/test426/resources/sources-content-not-string-or-null.js.map @@ -0,0 +1,7 @@ +{ + "version" : 3, + "sources": ["1.js", "2.js", "3.js", "4.js", "5.js"], + "sourcesContent": [3, {}, true, false, []], + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-missing.js b/test/fixtures/test426/resources/sources-missing.js new file mode 100644 index 00000000000000..779b865e2769ad --- /dev/null +++ b/test/fixtures/test426/resources/sources-missing.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-missing.js.map diff --git a/test/fixtures/test426/resources/sources-missing.js.map b/test/fixtures/test426/resources/sources-missing.js.map new file mode 100644 index 00000000000000..92aff4fb0e74b1 --- /dev/null +++ b/test/fixtures/test426/resources/sources-missing.js.map @@ -0,0 +1,5 @@ +{ + "version" : 3, + "names": ["foo"], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/sources-non-null-sources-content-null.js b/test/fixtures/test426/resources/sources-non-null-sources-content-null.js new file mode 100644 index 00000000000000..939b568ba14251 --- /dev/null +++ b/test/fixtures/test426/resources/sources-non-null-sources-content-null.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=sources-non-null-sources-content-null.js.map diff --git a/test/fixtures/test426/resources/sources-non-null-sources-content-null.js.map b/test/fixtures/test426/resources/sources-non-null-sources-content-null.js.map new file mode 100644 index 00000000000000..e573906b2d7144 --- /dev/null +++ b/test/fixtures/test426/resources/sources-non-null-sources-content-null.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": ["foo"], + "sources": ["basic-mapping-original.js"], + "sourcesContent": [null], + "mappings":"AAAA,SAASA" +} diff --git a/test/fixtures/test426/resources/sources-not-a-list-1.js b/test/fixtures/test426/resources/sources-not-a-list-1.js new file mode 100644 index 00000000000000..7e33b7e8672535 --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-a-list-1.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-not-a-list-1.js.map diff --git a/test/fixtures/test426/resources/sources-not-a-list-1.js.map b/test/fixtures/test426/resources/sources-not-a-list-1.js.map new file mode 100644 index 00000000000000..26330517b9884f --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-a-list-1.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": "not a list", + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-not-a-list-2.js b/test/fixtures/test426/resources/sources-not-a-list-2.js new file mode 100644 index 00000000000000..4021f763fc880b --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-a-list-2.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-not-a-list-2.js.map diff --git a/test/fixtures/test426/resources/sources-not-a-list-2.js.map b/test/fixtures/test426/resources/sources-not-a-list-2.js.map new file mode 100644 index 00000000000000..2ed85962fddf31 --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-a-list-2.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": { "source.js": 3 }, + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-not-string-or-null.js b/test/fixtures/test426/resources/sources-not-string-or-null.js new file mode 100644 index 00000000000000..7dca97a1dab557 --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-string-or-null.js @@ -0,0 +1 @@ +//# sourceMappingURL=sources-not-string-or-null.js.map diff --git a/test/fixtures/test426/resources/sources-not-string-or-null.js.map b/test/fixtures/test426/resources/sources-not-string-or-null.js.map new file mode 100644 index 00000000000000..db25561966056d --- /dev/null +++ b/test/fixtures/test426/resources/sources-not-string-or-null.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": [3, {}, true, false, []], + "names": ["foo"], + "mappings": "AAAAA" +} diff --git a/test/fixtures/test426/resources/sources-null-sources-content-non-null.js b/test/fixtures/test426/resources/sources-null-sources-content-non-null.js new file mode 100644 index 00000000000000..a760594ee9bd13 --- /dev/null +++ b/test/fixtures/test426/resources/sources-null-sources-content-non-null.js @@ -0,0 +1,2 @@ +function foo(){return 42}function bar(){return 24}foo();bar(); +//# sourceMappingURL=sources-null-sources-content-non-null.js.map diff --git a/test/fixtures/test426/resources/sources-null-sources-content-non-null.js.map b/test/fixtures/test426/resources/sources-null-sources-content-non-null.js.map new file mode 100644 index 00000000000000..43af03903f64f8 --- /dev/null +++ b/test/fixtures/test426/resources/sources-null-sources-content-non-null.js.map @@ -0,0 +1,7 @@ +{ + "version":3, + "names": ["foo"], + "sources": [null], + "sourcesContent": ["function foo()\n{ return 42; }\nfunction bar()\n { return 24; }\nfoo();\nbar();"], + "mappings":"AAAA,SAASA" +} diff --git a/test/fixtures/test426/resources/transitive-mapping-original.js b/test/fixtures/test426/resources/transitive-mapping-original.js new file mode 100644 index 00000000000000..0a96699d6e2540 --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping-original.js @@ -0,0 +1,5 @@ +function foo(x) { + return x; +} +foo("foo"); +//# sourceMappingURL=transitive-mapping-original.js.map diff --git a/test/fixtures/test426/resources/transitive-mapping-original.js.map b/test/fixtures/test426/resources/transitive-mapping-original.js.map new file mode 100644 index 00000000000000..65af25c1ebbe4c --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping-original.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "file" : "transitive-mapping-original.js", + "sourceRoot": "", + "sources": ["typescript-original.ts"], + "names": [], + "mappings": "AACA,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AACD,GAAG,CAAC,KAAK,CAAC,CAAC" +} diff --git a/test/fixtures/test426/resources/transitive-mapping-three-steps.js b/test/fixtures/test426/resources/transitive-mapping-three-steps.js new file mode 100644 index 00000000000000..fd956164d34906 --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping-three-steps.js @@ -0,0 +1,6 @@ +function foo(x) { + return x; +} + +foo("foo"); +//# sourceMappingURL=transitive-mapping-three-steps.js.map diff --git a/test/fixtures/test426/resources/transitive-mapping-three-steps.js.map b/test/fixtures/test426/resources/transitive-mapping-three-steps.js.map new file mode 100644 index 00000000000000..90459d90f6a0ea --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping-three-steps.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "file": "transitive-mapping-three-steps.js", + "sources": ["transitive-mapping.js"], + "names": ["foo", "x"], + "mappings": "AAAA,SAASA,IAAIC;IAAG,OAAOA;AAAC;;AAACD,IAAI,KAAK" +} diff --git a/test/fixtures/test426/resources/transitive-mapping.js b/test/fixtures/test426/resources/transitive-mapping.js new file mode 100644 index 00000000000000..183c027f1bb81e --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping.js @@ -0,0 +1,2 @@ +function foo(x){return x}foo("foo"); +//# sourceMappingURL=transitive-mapping.js.map diff --git a/test/fixtures/test426/resources/transitive-mapping.js.map b/test/fixtures/test426/resources/transitive-mapping.js.map new file mode 100644 index 00000000000000..d6a6fa6672d483 --- /dev/null +++ b/test/fixtures/test426/resources/transitive-mapping.js.map @@ -0,0 +1,6 @@ +{ + "version": 3, + "names": ["foo","x"], + "sources": ["transitive-mapping-original.js"], + "mappings":"AAAA,SAASA,IAAIC,GACT,OAAOA,CACX,CACAD,IAAI" +} diff --git a/test/fixtures/test426/resources/typescript-original.ts b/test/fixtures/test426/resources/typescript-original.ts new file mode 100644 index 00000000000000..cd51c01ba1297e --- /dev/null +++ b/test/fixtures/test426/resources/typescript-original.ts @@ -0,0 +1,5 @@ +type FooArg = string | number; +function foo(x : FooArg) { + return x; +} +foo("foo"); diff --git a/test/fixtures/test426/resources/unrecognized-property.js b/test/fixtures/test426/resources/unrecognized-property.js new file mode 100644 index 00000000000000..19dfb0e2e6c7c1 --- /dev/null +++ b/test/fixtures/test426/resources/unrecognized-property.js @@ -0,0 +1 @@ +//# sourceMappingURL=unrecognized-property.js.map diff --git a/test/fixtures/test426/resources/unrecognized-property.js.map b/test/fixtures/test426/resources/unrecognized-property.js.map new file mode 100644 index 00000000000000..40bee558a4ff92 --- /dev/null +++ b/test/fixtures/test426/resources/unrecognized-property.js.map @@ -0,0 +1,8 @@ +{ + "version" : 3, + "sources": [], + "names": [], + "mappings": "", + "foobar": 42, + "unusedProperty": [1, 2, 3, 4] +} diff --git a/test/fixtures/test426/resources/valid-mapping-boundary-values.js b/test/fixtures/test426/resources/valid-mapping-boundary-values.js new file mode 100644 index 00000000000000..3c49709e05ac02 --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-boundary-values.js @@ -0,0 +1 @@ +//# sourceMappingURL=valid-mapping-boundary-values.js.map diff --git a/test/fixtures/test426/resources/valid-mapping-boundary-values.js.map b/test/fixtures/test426/resources/valid-mapping-boundary-values.js.map new file mode 100644 index 00000000000000..39943bc891655e --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-boundary-values.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": ["foo"], + "file": "valid-mapping-boundary-values.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "+/////DA+/////D+/////DA" +} diff --git a/test/fixtures/test426/resources/valid-mapping-empty-groups.js b/test/fixtures/test426/resources/valid-mapping-empty-groups.js new file mode 100644 index 00000000000000..a2b767b619a03c --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-empty-groups.js @@ -0,0 +1 @@ +//# sourceMappingURL=valid-mapping-empty-groups.js.map diff --git a/test/fixtures/test426/resources/valid-mapping-empty-groups.js.map b/test/fixtures/test426/resources/valid-mapping-empty-groups.js.map new file mode 100644 index 00000000000000..643c9ae78481a9 --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-empty-groups.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "valid-mapping-empty-groups.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" +} diff --git a/test/fixtures/test426/resources/valid-mapping-empty-string.js b/test/fixtures/test426/resources/valid-mapping-empty-string.js new file mode 100644 index 00000000000000..83fc1bf3ac7314 --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-empty-string.js @@ -0,0 +1 @@ +//# sourceMappingURL=valid-mapping-empty-string.js.map diff --git a/test/fixtures/test426/resources/valid-mapping-empty-string.js.map b/test/fixtures/test426/resources/valid-mapping-empty-string.js.map new file mode 100644 index 00000000000000..a35268d8f5b88b --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-empty-string.js.map @@ -0,0 +1,8 @@ +{ + "version": 3, + "names": [], + "file": "valid-mapping-empty-string.js", + "sources": ["empty-original.js"], + "sourcesContent": [""], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/valid-mapping-large-vlq.js b/test/fixtures/test426/resources/valid-mapping-large-vlq.js new file mode 100644 index 00000000000000..b0cd8978132af3 --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-large-vlq.js @@ -0,0 +1 @@ +//# sourceMappingURL=valid-mapping-large-vlq.js.map diff --git a/test/fixtures/test426/resources/valid-mapping-large-vlq.js.map b/test/fixtures/test426/resources/valid-mapping-large-vlq.js.map new file mode 100644 index 00000000000000..76e18704c4b1a2 --- /dev/null +++ b/test/fixtures/test426/resources/valid-mapping-large-vlq.js.map @@ -0,0 +1,6 @@ +{ + "version": 3, + "names": [], + "sources": ["valid-mapping-large-vlq.js"], + "mappings": "igggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggA" +} diff --git a/test/fixtures/test426/resources/version-missing.js b/test/fixtures/test426/resources/version-missing.js new file mode 100644 index 00000000000000..c32d1f1a1cc682 --- /dev/null +++ b/test/fixtures/test426/resources/version-missing.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-missing.js.map diff --git a/test/fixtures/test426/resources/version-missing.js.map b/test/fixtures/test426/resources/version-missing.js.map new file mode 100644 index 00000000000000..49d8ce766edb9f --- /dev/null +++ b/test/fixtures/test426/resources/version-missing.js.map @@ -0,0 +1,5 @@ +{ + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/version-not-a-number.js b/test/fixtures/test426/resources/version-not-a-number.js new file mode 100644 index 00000000000000..ae2342e2ffe510 --- /dev/null +++ b/test/fixtures/test426/resources/version-not-a-number.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-not-a-number.js.map diff --git a/test/fixtures/test426/resources/version-not-a-number.js.map b/test/fixtures/test426/resources/version-not-a-number.js.map new file mode 100644 index 00000000000000..a584d6e6951171 --- /dev/null +++ b/test/fixtures/test426/resources/version-not-a-number.js.map @@ -0,0 +1,6 @@ +{ + "version" : "3foo", + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/version-numeric-string.js b/test/fixtures/test426/resources/version-numeric-string.js new file mode 100644 index 00000000000000..a55170885da6dc --- /dev/null +++ b/test/fixtures/test426/resources/version-numeric-string.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-numeric-string.js.map diff --git a/test/fixtures/test426/resources/version-numeric-string.js.map b/test/fixtures/test426/resources/version-numeric-string.js.map new file mode 100644 index 00000000000000..dbe52a7d0df69a --- /dev/null +++ b/test/fixtures/test426/resources/version-numeric-string.js.map @@ -0,0 +1,6 @@ +{ + "version" : "3", + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/version-too-high.js b/test/fixtures/test426/resources/version-too-high.js new file mode 100644 index 00000000000000..55f4e1a298fad7 --- /dev/null +++ b/test/fixtures/test426/resources/version-too-high.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-too-high.js.map diff --git a/test/fixtures/test426/resources/version-too-high.js.map b/test/fixtures/test426/resources/version-too-high.js.map new file mode 100644 index 00000000000000..ee23be32ff278f --- /dev/null +++ b/test/fixtures/test426/resources/version-too-high.js.map @@ -0,0 +1,6 @@ +{ + "version" : 4, + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/version-too-low.js b/test/fixtures/test426/resources/version-too-low.js new file mode 100644 index 00000000000000..d9642920b31345 --- /dev/null +++ b/test/fixtures/test426/resources/version-too-low.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-too-low.js.map diff --git a/test/fixtures/test426/resources/version-too-low.js.map b/test/fixtures/test426/resources/version-too-low.js.map new file mode 100644 index 00000000000000..64ca7a6e2e9282 --- /dev/null +++ b/test/fixtures/test426/resources/version-too-low.js.map @@ -0,0 +1,6 @@ +{ + "version" : 2, + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/version-valid.js b/test/fixtures/test426/resources/version-valid.js new file mode 100644 index 00000000000000..82d0bfa1eb2a17 --- /dev/null +++ b/test/fixtures/test426/resources/version-valid.js @@ -0,0 +1 @@ +//# sourceMappingURL=version-valid.js.map diff --git a/test/fixtures/test426/resources/version-valid.js.map b/test/fixtures/test426/resources/version-valid.js.map new file mode 100644 index 00000000000000..1a163052d8fc86 --- /dev/null +++ b/test/fixtures/test426/resources/version-valid.js.map @@ -0,0 +1,6 @@ +{ + "version" : 3, + "sources": [], + "names": [], + "mappings": "" +} diff --git a/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js new file mode 100644 index 00000000000000..511e7be18ae5ba --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js @@ -0,0 +1,2 @@ + 3 +//# sourceMappingURL=vlq-valid-continuation-bit-present-1.js.map diff --git a/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js.map b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js.map new file mode 100644 index 00000000000000..f4acb4b4183754 --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-1.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["vlq-valid-continuation-bit-present-1-original.js"], + "sourcesContent": [" 3"], + "mappings": "+gAgAgAigA" +} diff --git a/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js new file mode 100644 index 00000000000000..0c879ce052ad95 --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js @@ -0,0 +1,4 @@ + + + 3 +//# sourceMappingURL=vlq-valid-continuation-bit-present-2.js.map diff --git a/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js.map b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js.map new file mode 100644 index 00000000000000..a975cf8591ff6d --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-continuation-bit-present-2.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["vlq-valid-continuation-bit-present-2-original.js"], + "sourcesContent": ["\n 3"], + "mappings": ";;gBACC" +} diff --git a/test/fixtures/test426/resources/vlq-valid-negative-digit.js b/test/fixtures/test426/resources/vlq-valid-negative-digit.js new file mode 100644 index 00000000000000..d8e795090effae --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-negative-digit.js @@ -0,0 +1,4 @@ + + + 4; 3 +//# sourceMappingURL=vlq-valid-negative-digit.js.map diff --git a/test/fixtures/test426/resources/vlq-valid-negative-digit.js.map b/test/fixtures/test426/resources/vlq-valid-negative-digit.js.map new file mode 100644 index 00000000000000..71dec0d65a1aa9 --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-negative-digit.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["vlq-valid-negative-digit-original.js"], + "sourcesContent": ["\n 4;3"], + "mappings": ";;eACG,bAAF" +} diff --git a/test/fixtures/test426/resources/vlq-valid-single-digit.js b/test/fixtures/test426/resources/vlq-valid-single-digit.js new file mode 100644 index 00000000000000..54c59aae1fcb44 --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-single-digit.js @@ -0,0 +1,2 @@ + 3 +//# sourceMappingURL=vlq-valid-single-digit.js.map diff --git a/test/fixtures/test426/resources/vlq-valid-single-digit.js.map b/test/fixtures/test426/resources/vlq-valid-single-digit.js.map new file mode 100644 index 00000000000000..9e35a7a0a6a591 --- /dev/null +++ b/test/fixtures/test426/resources/vlq-valid-single-digit.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "names": [], + "sources": ["vlq-valid-single-digit-original.js"], + "sourcesContent": ["3"], + "mappings": "eAAA" +} diff --git a/test/fixtures/test426/source-map-spec-tests.json b/test/fixtures/test426/source-map-spec-tests.json new file mode 100644 index 00000000000000..bf3dc64ba5b9c9 --- /dev/null +++ b/test/fixtures/test426/source-map-spec-tests.json @@ -0,0 +1,1596 @@ +{ + "tests": [ + { + "name": "versionValid", + "description": "Test a simple source map with a valid version number", + "baseFile": "version-valid.js", + "sourceMapFile": "version-valid.js.map", + "sourceMapIsValid": true + }, + { + "name": "versionMissing", + "description": "Test a source map that is missing a version field", + "baseFile": "version-missing.js", + "sourceMapFile": "version-missing.js.map", + "sourceMapIsValid": false + }, + { + "name": "versionNotANumber", + "description": "Test a source map with a version field that is not a number", + "baseFile": "version-not-a-number.js", + "sourceMapFile": "version-not-a-number.js.map", + "sourceMapIsValid": false + }, + { + "name": "versionNumericString", + "description": "Test a source map with a version field that is a number as a string", + "baseFile": "version-numeric-string.js", + "sourceMapFile": "version-numeric-string.js.map", + "sourceMapIsValid": false + }, + { + "name": "versionTooHigh", + "description": "Test a source map with an integer version field that is too high", + "baseFile": "version-too-high.js", + "sourceMapFile": "version-too-high.js.map", + "sourceMapIsValid": false + }, + { + "name": "versionTooLow", + "description": "Test a source map with an integer version field that is too low", + "baseFile": "version-too-low.js", + "sourceMapFile": "version-too-low.js.map", + "sourceMapIsValid": false + }, + { + "name": "mappingsMissing", + "description": "Test a source map that is missing a necessary mappings field", + "baseFile": "mappings-missing.js", + "sourceMapFile": "mappings-missing.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesMissing", + "description": "Test a source map that is missing a necessary sources field", + "baseFile": "sources-missing.js", + "sourceMapFile": "sources-missing.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesNotAList1", + "description": "Test a source map with a sources field that is not a valid list (string)", + "baseFile": "sources-not-a-list-1.js", + "sourceMapFile": "sources-not-a-list-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesNotAList2", + "description": "Test a source map with a sources field that is not a valid list (object)", + "baseFile": "sources-not-a-list-2.js", + "sourceMapFile": "sources-not-a-list-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesNotStringOrNull", + "description": "Test a source map with a sources list that has non-string and non-null items", + "baseFile": "sources-not-string-or-null.js", + "sourceMapFile": "sources-not-string-or-null.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesContentMissing", + "description": "Test a source map that is missing an optional sourcesContent field", + "baseFile": "sources-content-missing.js", + "sourceMapFile": "sources-content-missing.js.map", + "sourceMapIsValid": true + }, + { + "name": "sourcesContentNotAList1", + "description": "Test a source map with a sourcesContent field that is not a valid list (string)", + "baseFile": "sources-content-not-a-list-1.js", + "sourceMapFile": "sources-content-not-a-list-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesContentNotAList2", + "description": "Test a source map with a sourcesContent field that is not a valid list (object)", + "baseFile": "sources-content-not-a-list-2.js", + "sourceMapFile": "sources-content-not-a-list-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesContentNotStringOrNull", + "description": "Test a source map with a sourcesContent list that has non-string and non-null items", + "baseFile": "sources-not-string-or-null.js", + "sourceMapFile": "sources-content-not-string-or-null.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourcesAndSourcesContentBothNull", + "description": "Test a source map that has both null sources and sourcesContent entries", + "baseFile": "sources-and-sources-content-both-null.js", + "sourceMapFile": "sources-and-sources-content-both-null.js.map", + "sourceMapIsValid": true + }, + { + "name": "fileNotAString1", + "description": "Test a source map with a file field that is not a valid string", + "baseFile": "file-not-a-string-1.js", + "sourceMapFile": "file-not-a-string-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "fileNotAString2", + "description": "Test a source map with a file field that is not a valid string", + "baseFile": "file-not-a-string-2.js", + "sourceMapFile": "file-not-a-string-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourceRootNotAString1", + "description": "Test a source map with a sourceRoot field that is not a valid string", + "baseFile": "source-root-not-a-string-1.js", + "sourceMapFile": "source-root-not-a-string-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "sourceRootNotAString2", + "description": "Test a source map with a sourceRoot field that is not a valid string", + "baseFile": "source-root-not-a-string-2.js", + "sourceMapFile": "source-root-not-a-string-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "namesMissing", + "description": "Test a source map that is missing the optional names field", + "baseFile": "names-missing.js", + "sourceMapFile": "names-missing.js.map", + "sourceMapIsValid": true + }, + { + "name": "namesNotAList1", + "description": "Test a source map with a names field that is not a valid list (string)", + "baseFile": "names-not-a-list-1.js", + "sourceMapFile": "names-not-a-list-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "namesNotAList2", + "description": "Test a source map with a names field that is not a valid list (object)", + "baseFile": "names-not-a-list-2.js", + "sourceMapFile": "names-not-a-list-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "namesNotString", + "description": "Test a source map with a names list that has non-string items", + "baseFile": "names-not-string.js", + "sourceMapFile": "names-not-string.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListEmpty", + "description": "Test a source map with an ignore list that has no items", + "baseFile": "ignore-list-empty.js", + "sourceMapFile": "ignore-list-empty.js.map", + "sourceMapIsValid": true + }, + { + "name": "ignoreListValid1", + "description": "Test a source map with a simple valid ignore list", + "baseFile": "ignore-list-valid-1.js", + "sourceMapFile": "ignore-list-valid-1.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkIgnoreList", + "present": ["empty-original.js"] + } + ] + }, + { + "name": "ignoreListWrongType1", + "description": "Test a source map with an ignore list with the wrong type of items", + "baseFile": "ignore-list-wrong-type-1.js", + "sourceMapFile": "ignore-list-wrong-type-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListWrongType2", + "description": "Test a source map with an ignore list with the wrong type of items", + "baseFile": "ignore-list-wrong-type-2.js", + "sourceMapFile": "ignore-list-wrong-type-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListWrongType3", + "description": "Test a source map with an ignore list that is not a list", + "baseFile": "ignore-list-wrong-type-3.js", + "sourceMapFile": "ignore-list-wrong-type-3.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListWrongType4", + "description": "Test a source map with an ignore list with a negative index", + "baseFile": "ignore-list-wrong-type-4.js", + "sourceMapFile": "ignore-list-wrong-type-4.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListOutOfBounds1", + "description": "Test a source map with an ignore list with an item with an out-of-bounds index (too big)", + "baseFile": "ignore-list-out-of-bounds-1.js", + "sourceMapFile": "ignore-list-out-of-bounds-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "ignoreListOutOfBounds2", + "description": "Test a source map with an ignore list with an item with an out-of-bounds index (too low)", + "baseFile": "ignore-list-out-of-bounds-2.js", + "sourceMapFile": "ignore-list-out-of-bounds-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "unrecognizedProperty", + "description": "Test a source map that has an extra field not explicitly encoded in the spec", + "baseFile": "unrecognized-property.js", + "sourceMapFile": "unrecognized-property.js.map", + "sourceMapIsValid": true + }, + { + "name": "invalidVLQDueToNonBase64Character", + "description": "Test a source map that has a mapping with an invalid non-base64 character", + "baseFile": "invalid-vlq-non-base64-char.js", + "sourceMapFile": "invalid-vlq-non-base64-char.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidVLQDueToNonBase64CharacterPadding", + "description": "Test a source map that has a mapping with an invalid padding character =", + "baseFile": "invalid-vlq-non-base64-char-padding.js", + "sourceMapFile": "invalid-vlq-non-base64-char-padding.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidVLQDueToMissingContinuationDigits", + "description": "Test a source map that has a mapping with an invalid VLQ that has a continuation bit but no continuing digits", + "baseFile": "invalid-vlq-missing-continuation.js", + "sourceMapFile": "invalid-vlq-missing-continuation.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingNotAString1", + "description": "Test a source map that has an invalid mapping that is not a string (number)", + "baseFile": "invalid-mapping-not-a-string-1.js", + "sourceMapFile": "invalid-mapping-not-a-string-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingNotAString2", + "description": "Test a source map that has an invalid mapping that is not a string (array)", + "baseFile": "invalid-mapping-not-a-string-2.js", + "sourceMapFile": "invalid-mapping-not-a-string-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentBadSeparator", + "description": "Test a source map that uses separator characters not recognized in the spec", + "baseFile": "invalid-mapping-bad-separator.js", + "sourceMapFile": "invalid-mapping-bad-separator.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithZeroFields", + "description": "Test a source map that has the wrong number (zero) of segments fields", + "baseFile": "invalid-mapping-segment-with-zero-fields.js", + "sourceMapFile": "invalid-mapping-segment-with-zero-fields.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithTwoFields", + "description": "Test a source map that has the wrong number (two) of segments fields", + "baseFile": "invalid-mapping-segment-with-two-fields.js", + "sourceMapFile": "invalid-mapping-segment-with-two-fields.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithThreeFields", + "description": "Test a source map that has the wrong number (three) of segments fields", + "baseFile": "invalid-mapping-segment-with-three-fields.js", + "sourceMapFile": "invalid-mapping-segment-with-three-fields.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithSourceIndexOutOfBounds", + "description": "Test a source map that has a source index field that is out of bounds of the sources field", + "baseFile": "invalid-mapping-segment-source-index-out-of-bounds.js", + "sourceMapFile": "invalid-mapping-segment-source-index-out-of-bounds.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNameIndexOutOfBounds", + "description": "Test a source map that has a name index field that is out of bounds of the names field", + "baseFile": "invalid-mapping-segment-name-index-out-of-bounds.js", + "sourceMapFile": "invalid-mapping-segment-name-index-out-of-bounds.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeColumn", + "description": "Test a source map that has an invalid negative non-relative column field", + "baseFile": "invalid-mapping-segment-negative-column.js", + "sourceMapFile": "invalid-mapping-segment-negative-column.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeSourceIndex", + "description": "Test a source map that has an invalid negative non-relative source index field", + "baseFile": "invalid-mapping-segment-negative-source-index.js", + "sourceMapFile": "invalid-mapping-segment-negative-source-index.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeOriginalLine", + "description": "Test a source map that has an invalid negative non-relative original line field", + "baseFile": "invalid-mapping-segment-negative-original-line.js", + "sourceMapFile": "invalid-mapping-segment-negative-original-line.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeOriginalColumn", + "description": "Test a source map that has an invalid negative non-relative original column field", + "baseFile": "invalid-mapping-segment-negative-original-column.js", + "sourceMapFile": "invalid-mapping-segment-negative-original-column.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeNameIndex", + "description": "Test a source map that has an invalid negative non-relative name index field", + "baseFile": "invalid-mapping-segment-negative-name-index.js", + "sourceMapFile": "invalid-mapping-segment-negative-name-index.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeRelativeColumn", + "description": "Test a source map that has an invalid negative relative column field", + "baseFile": "invalid-mapping-segment-negative-relative-column.js", + "sourceMapFile": "invalid-mapping-segment-negative-relative-column.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeRelativeSourceIndex", + "description": "Test a source map that has an invalid negative relative source index field", + "baseFile": "invalid-mapping-segment-negative-relative-source-index.js", + "sourceMapFile": "invalid-mapping-segment-negative-relative-source-index.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeRelativeOriginalLine", + "description": "Test a source map that has an invalid negative relative original line field", + "baseFile": "invalid-mapping-segment-negative-relative-original-line.js", + "sourceMapFile": "invalid-mapping-segment-negative-relative-original-line.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeRelativeOriginalColumn", + "description": "Test a source map that has an invalid negative relative original column field", + "baseFile": "invalid-mapping-segment-negative-relative-original-column.js", + "sourceMapFile": "invalid-mapping-segment-negative-relative-original-column.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNegativeRelativeNameIndex", + "description": "Test a source map that has an invalid negative relative name index field", + "baseFile": "invalid-mapping-segment-negative-relative-name-index.js", + "sourceMapFile": "invalid-mapping-segment-negative-relative-name-index.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithColumnExceeding32Bits", + "description": "Test a source map that has a column field that exceeds 32 bits", + "baseFile": "invalid-mapping-segment-column-too-large.js", + "sourceMapFile": "invalid-mapping-segment-column-too-large.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithSourceIndexExceeding32Bits", + "description": "Test a source map that has a source index field that exceeds 32 bits", + "baseFile": "invalid-mapping-segment-source-index-too-large.js", + "sourceMapFile": "invalid-mapping-segment-source-index-too-large.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithOriginalLineExceeding32Bits", + "description": "Test a source map that has a original line field that exceeds 32 bits", + "baseFile": "invalid-mapping-segment-original-line-too-large.js", + "sourceMapFile": "invalid-mapping-segment-original-line-too-large.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithOriginalColumnExceeding32Bits", + "description": "Test a source map that has an original column field that exceeds 32 bits", + "baseFile": "invalid-mapping-segment-original-column-too-large.js", + "sourceMapFile": "invalid-mapping-segment-original-column-too-large.js.map", + "sourceMapIsValid": false + }, + { + "name": "invalidMappingSegmentWithNameIndexExceeding32Bits", + "description": "Test a source map that has a name index field that exceeds 32 bits", + "baseFile": "invalid-mapping-segment-name-index-too-large.js", + "sourceMapFile": "invalid-mapping-segment-name-index-too-large.js.map", + "sourceMapIsValid": false + }, + { + "name": "validMappingFieldsWith32BitMaxValues", + "description": "Test a source map that has segment fields with max values representable in 32 bits", + "baseFile": "valid-mapping-boundary-values.js", + "sourceMapFile": "valid-mapping-boundary-values.js.map", + "sourceMapIsValid": true + }, + { + "name": "validMappingLargeVLQ", + "description": "Test a source map that has a segment field VLQ that is very long but within 32-bits", + "baseFile": "valid-mapping-large-vlq.js", + "sourceMapFile": "valid-mapping-large-vlq.js.map", + "sourceMapIsValid": true + }, + { + "name": "validMappingEmptyGroups", + "description": "Test a source map with a mapping that has many empty groups", + "baseFile": "valid-mapping-empty-groups.js", + "sourceMapFile": "valid-mapping-empty-groups.js.map", + "sourceMapIsValid": true + }, + { + "name": "validMappingEmptyString", + "description": "Test a source map with an empty string mapping", + "baseFile": "valid-mapping-empty-string.js", + "sourceMapFile": "valid-mapping-empty-string.js.map", + "sourceMapIsValid": true + }, + { + "name": "indexMapWrongTypeSections", + "description": "Test an index map with a sections field with the wrong type", + "baseFile": "index-map-wrong-type-sections.js", + "sourceMapFile": "index-map-wrong-type-sections.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapWrongTypeOffset", + "description": "Test an index map with an offset field with the wrong type", + "baseFile": "index-map-wrong-type-offset.js", + "sourceMapFile": "index-map-wrong-type-offset.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapWrongTypeMap", + "description": "Test an index map with a map field with the wrong type", + "baseFile": "index-map-wrong-type-map.js", + "sourceMapFile": "index-map-wrong-type-map.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapInvalidBaseMappings", + "description": "Test that an index map cannot also have a regular mappings field", + "baseFile": "index-map-invalid-base-mappings.js", + "sourceMapFile": "index-map-invalid-base-mappings.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapInvalidOverlap", + "description": "Test that an invalid index map with multiple sections that overlap", + "baseFile": "index-map-invalid-overlap.js", + "sourceMapFile": "index-map-invalid-overlap.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapInvalidOrder", + "description": "Test that an invalid index map with multiple sections in the wrong order", + "baseFile": "index-map-invalid-order.js", + "sourceMapFile": "index-map-invalid-order.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapMissingMap", + "description": "Test that an index map that is missing a section map", + "baseFile": "index-map-missing-map.js", + "sourceMapFile": "index-map-missing-map.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapInvalidSubMap", + "description": "Test that an index map that has an invalid section map", + "baseFile": "index-map-invalid-sub-map.js", + "sourceMapFile": "index-map-invalid-sub-map.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapMissingOffset", + "description": "Test that an index map that is missing a section offset", + "baseFile": "index-map-missing-offset.js", + "sourceMapFile": "index-map-missing-offset.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapMissingOffsetLine", + "description": "Test that an index map that is missing a section offset's line field", + "baseFile": "index-map-missing-offset-line.js", + "sourceMapFile": "index-map-missing-offset-line.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapMissingOffsetColumn", + "description": "Test that an index map that is missing a section offset's column field", + "baseFile": "index-map-missing-offset-column.js", + "sourceMapFile": "index-map-missing-offset-column.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapOffsetLineWrongType", + "description": "Test that an index map that has an offset line field with the wrong type of value", + "baseFile": "index-map-offset-line-wrong-type.js", + "sourceMapFile": "index-map-offset-line-wrong-type.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapOffsetColumnWrongType", + "description": "Test that an index map that has an offset column field with the wrong type of value", + "baseFile": "index-map-offset-column-wrong-type.js", + "sourceMapFile": "index-map-offset-column-wrong-type.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapEmptySections", + "description": "Test a trivial index map with no sections", + "baseFile": "index-map-empty-sections.js", + "sourceMapFile": "index-map-empty-sections.js.map", + "sourceMapIsValid": true + }, + { + "name": "indexMapFileWrongType1", + "description": "Test an index map with a file field with the wrong type", + "baseFile": "index-map-file-wrong-type-1.js", + "sourceMapFile": "index-map-file-wrong-type-1.js.map", + "sourceMapIsValid": false + }, + { + "name": "indexMapFileWrongType2", + "description": "Test an index map with a file field with the wrong type", + "baseFile": "index-map-file-wrong-type-2.js", + "sourceMapFile": "index-map-file-wrong-type-2.js.map", + "sourceMapIsValid": false + }, + { + "name": "basicMapping", + "description": "Test a simple source map that has several valid mappings", + "baseFile": "basic-mapping.js", + "sourceMapFile": "basic-mapping.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 15, + "originalLine": 1, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 22, + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 24, + "originalLine": 2, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 25, + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 34, + "originalSource": "basic-mapping-original.js", + "originalLine": 3, + "originalColumn": 9, + "mappedName": "bar" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 40, + "originalLine": 4, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 47, + "originalLine": 4, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 49, + "originalLine": 5, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 50, + "originalLine": 6, + "originalColumn": 0, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 56, + "originalLine": 7, + "originalColumn": 0, + "mappedName": "bar" + } + ] + }, + { + "name": "sourceRootResolution", + "description": "Similar to basic mapping test, but test resoultion of sources with a sourceRoot field", + "baseFile": "source-root-resolution.js", + "sourceMapFile": "source-root-resolution.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "theroot/basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "theroot/basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + } + ] + }, + { + "name": "sourceResolutionAbsoluteURL", + "description": "Test resoultion of sources with absolute URLs", + "baseFile": "source-resolution-absolute-url.js", + "sourceMapFile": "source-resolution-absolute-url.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "/baz/quux/basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "/baz/quux/basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + } + ] + }, + { + "name": "basicMappingWithIndexMap", + "description": "Test a version of basic-mapping.js.map that is split into sections with an index map", + "baseFile": "basic-mapping-as-index-map.js", + "sourceMapFile": "basic-mapping-as-index-map.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 15, + "originalLine": 1, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 22, + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 24, + "originalLine": 2, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 25, + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 34, + "originalSource": "basic-mapping-original.js", + "originalLine": 3, + "originalColumn": 9, + "mappedName": "bar" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 40, + "originalLine": 4, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 47, + "originalLine": 4, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 49, + "originalLine": 5, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 50, + "originalLine": 6, + "originalColumn": 0, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 56, + "originalLine": 7, + "originalColumn": 0, + "mappedName": "bar" + } + ] + }, + { + "name": "indexMapWithMissingFile", + "description": "Same as the basic mapping index map test but without the optional file field", + "baseFile": "index-map-missing-file.js", + "sourceMapFile": "index-map-missing-file.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 15, + "originalLine": 1, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 22, + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 24, + "originalLine": 2, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 25, + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 34, + "originalSource": "basic-mapping-original.js", + "originalLine": 3, + "originalColumn": 9, + "mappedName": "bar" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 40, + "originalLine": 4, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 47, + "originalLine": 4, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 49, + "originalLine": 5, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 50, + "originalLine": 6, + "originalColumn": 0, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 56, + "originalLine": 7, + "originalColumn": 0, + "mappedName": "bar" + } + ] + }, + { + "name": "indexMapWithTwoConcatenatedSources", + "description": "Test an index map that has two sub-maps for concatenated sources", + "baseFile": "index-map-two-concatenated-sources.js", + "sourceMapFile": "index-map-two-concatenated-sources.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 15, + "originalLine": 1, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 22, + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 24, + "originalLine": 2, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 25, + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 34, + "originalSource": "basic-mapping-original.js", + "originalLine": 3, + "originalColumn": 9, + "mappedName": "bar" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 40, + "originalLine": 4, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 47, + "originalLine": 4, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 49, + "originalLine": 5, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 50, + "originalLine": 6, + "originalColumn": 0, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "originalSource": "basic-mapping-original.js", + "generatedLine": 0, + "generatedColumn": 56, + "originalLine": 7, + "originalColumn": 0, + "mappedName": "bar" + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 62, + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 71, + "originalLine": 0, + "originalColumn": 9, + "mappedName": "baz" + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 77, + "originalLine": 1, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 83, + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 88, + "originalLine": 2, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "originalSource": "second-source-original.js", + "generatedLine": 0, + "generatedColumn": 89, + "originalLine": 3, + "originalColumn": 0, + "mappedName": "baz" + } + ] + }, + { + "name": "sourcesNullSourcesContentNonNull", + "description": "Test a source map that has a null source but has a sourcesContent", + "baseFile": "sources-null-sources-content-non-null.js", + "sourceMapFile": "sources-null-sources-content-non-null.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": null, + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": null, + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + } + ] + }, + { + "name": "sourcesNonNullSourcesContentNull", + "description": "Test a source map that has a non-null source but has a null sourcesContent", + "baseFile": "sources-non-null-sources-content-null.js", + "sourceMapFile": "sources-non-null-sources-content-null.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "basic-mapping-original.js", + "originalLine": 0, + "originalColumn": 9, + "mappedName": "foo" + } + ] + }, + { + "name": "transitiveMapping", + "description": "Test a simple two-stage transitive mapping from a minified JS to a TypeScript source", + "baseFile": "transitive-mapping.js", + "sourceMapFile": "transitive-mapping.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 13, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 13, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 16, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 2, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 23, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 2, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 24, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 25, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 4, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 29, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping-original.js.map"], + "originalLine": 4, + "originalColumn": 4, + "mappedName": null + } + ] + }, + { + "name": "transitiveMappingWithThreeSteps", + "description": "Test a three-stage transitive mapping from an un-minified JS to minified JS to a TypeScript source", + "baseFile": "transitive-mapping-three-steps.js", + "sourceMapFile": "transitive-mapping-three-steps.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 9, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 0, + "generatedColumn": 13, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 1, + "originalColumn": 13, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 1, + "generatedColumn": 4, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 2, + "originalColumn": 2, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 1, + "generatedColumn": 11, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 2, + "originalColumn": 9, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 2, + "generatedColumn": 0, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 3, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 4, + "generatedColumn": 0, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 4, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMappingTransitive", + "generatedLine": 4, + "generatedColumn": 4, + "originalSource": "typescript-original.ts", + "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], + "originalLine": 4, + "originalColumn": 4, + "mappedName": null + } + ] + }, + { + "name": "vlqValidSingleDigit", + "description": "Test VLQ decoding for a single digit, no continuation VLQ", + "baseFile": "vlq-valid-single-digit.js", + "sourceMapFile": "vlq-valid-single-digit.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 15, + "originalSource": "vlq-valid-single-digit-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + } + ] + }, + { + "name": "vlqValidNegativeDigit", + "description": "Test VLQ decoding where there's a negative digit, no continuation bit", + "baseFile": "vlq-valid-negative-digit.js", + "sourceMapFile": "vlq-valid-negative-digit.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 2, + "generatedColumn": 15, + "originalSource": "vlq-valid-negative-digit-original.js", + "originalLine": 1, + "originalColumn": 3, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 2, + "generatedColumn": 2, + "originalSource": "vlq-valid-negative-digit-original.js", + "originalLine": 1, + "originalColumn": 1, + "mappedName": null + } + ] + }, + { + "name": "vlqValidContinuationBitPresent1", + "description": "Test VLQ decoding where continuation bits are present (continuations are leading zero)", + "baseFile": "vlq-valid-continuation-bit-present-1.js", + "sourceMapFile": "vlq-valid-continuation-bit-present-1.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 15, + "originalSource": "vlq-valid-continuation-bit-present-1-original.js", + "originalLine": 0, + "originalColumn": 1, + "mappedName": null + } + ] + }, + { + "name": "vlqValidContinuationBitPresent2", + "description": "Test VLQ decoding where continuation bits are present (continuations have non-zero bits)", + "baseFile": "vlq-valid-continuation-bit-present-2.js", + "sourceMapFile": "vlq-valid-continuation-bit-present-2.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 2, + "generatedColumn": 16, + "originalSource": "vlq-valid-continuation-bit-present-2-original.js", + "originalLine": 1, + "originalColumn": 1, + "mappedName": null + } + ] + }, + { + "name": "mappingSemanticsSingleFieldSegment", + "description": "Test mapping semantics for a single field segment mapping", + "baseFile": "mapping-semantics-single-field-segment.js", + "sourceMapFile": "mapping-semantics-single-field-segment.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 0, + "originalSource": "mapping-semantics-single-field-segment-original.js", + "originalLine": 0, + "originalColumn": 1, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 2, + "originalSource": null, + "originalLine": null, + "originalColumn": null, + "mappedName": null + } + ] + }, + { + "name": "mappingSemanticsFourFieldSegment", + "description": "Test mapping semantics for a four field segment mapping", + "baseFile": "mapping-semantics-four-field-segment.js", + "sourceMapFile": "mapping-semantics-four-field-segment.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 1, + "originalSource": "mapping-semantics-four-field-segment-original.js", + "originalLine": 2, + "originalColumn": 2, + "mappedName": null + } + ] + }, + { + "name": "mappingSemanticsFiveFieldSegment", + "description": "Test mapping semantics for a five field segment mapping", + "baseFile": "mapping-semantics-five-field-segment.js", + "sourceMapFile": "mapping-semantics-five-field-segment.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 1, + "originalSource": "mapping-semantics-five-field-segment-original.js", + "originalLine": 2, + "originalColumn": 2, + "mappedName": "foo" + } + ] + }, + { + "name": "mappingSemanticsColumnReset", + "description": "Test that the generated column field resets to zero on new lines", + "baseFile": "mapping-semantics-column-reset.js", + "sourceMapFile": "mapping-semantics-column-reset.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 1, + "originalSource": "mapping-semantics-column-reset-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 1, + "generatedColumn": 1, + "originalSource": "mapping-semantics-column-reset-original.js", + "originalLine": 1, + "originalColumn": 0, + "mappedName": null + } + ] + }, + { + "name": "mappingSemanticsRelative1", + "description": "Test that fields are calculated relative to previous ones", + "baseFile": "mapping-semantics-relative-1.js", + "sourceMapFile": "mapping-semantics-relative-1.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 1, + "originalSource": "mapping-semantics-relative-1-original.js", + "originalLine": 0, + "originalColumn": 0, + "mappedName": null + }, + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 5, + "originalSource": "mapping-semantics-relative-1-original.js", + "originalLine": 0, + "originalColumn": 4, + "mappedName": null + } + ] + }, + { + "name": "mappingSemanticsRelative2", + "description": "Test that fields are calculated relative to previous ones, across lines", + "baseFile": "mapping-semantics-relative-2.js", + "sourceMapFile": "mapping-semantics-relative-2.js.map", + "sourceMapIsValid": true, + "testActions": [ + { + "actionType": "checkMapping", + "generatedLine": 0, + "generatedColumn": 1, + "originalSource": "mapping-semantics-relative-2-original.js", + "originalLine": 0, + "originalColumn": 2, + "mappedName": "foo" + }, + { + "actionType": "checkMapping", + "generatedLine": 1, + "generatedColumn": 2, + "originalSource": "mapping-semantics-relative-2-original.js", + "originalLine": 1, + "originalColumn": 2, + "mappedName": "bar" + } + ] + } + ] +} diff --git a/test/fixtures/test426/webkit/0001-Add-test-runner-for-the-source-map-spec-tests.patch b/test/fixtures/test426/webkit/0001-Add-test-runner-for-the-source-map-spec-tests.patch new file mode 100644 index 00000000000000..9ba9f695a7b180 --- /dev/null +++ b/test/fixtures/test426/webkit/0001-Add-test-runner-for-the-source-map-spec-tests.patch @@ -0,0 +1,11542 @@ +From bcb0accac37b7fe585a01cd7de7f6c91e5704426 Mon Sep 17 00:00:00 2001 +From: Asumu Takikawa <asumu@igalia.com> +Date: Mon, 11 Mar 2024 13:41:31 -0700 +Subject: [PATCH] Add test runner for the source map spec tests + +Need the bug URL (OOPS!). + +Reviewed by NOBODY (OOPS!). + +This patch adds a layout test for the inspector using the imported spec +tests from TG4 for the current Source Map specification: + + https://github.com/tc39/source-map + https://github.com/tc39/source-map-tests + +It also adds the tests themselves as imported tests under +`LayoutTests/imported`. + +* LayoutTests/imported/tg4/source-map-tests/LICENSE.md: Added. +* LayoutTests/imported/tg4/source-map-tests/README.WebKit: Added. +* LayoutTests/imported/tg4/source-map-tests/README.md: Added. +* LayoutTests/imported/tg4/source-map-tests/chrome/0001-Add-source-map-specification-tests.patch: Added. +* LayoutTests/imported/tg4/source-map-tests/chrome/0002-Add-reverse-mapping-code-to-test.patch: Added. +* LayoutTests/imported/tg4/source-map-tests/firefox/0001-WIP-Firefox-source-map-spec-tests.patch: Added. +* LayoutTests/imported/tg4/source-map-tests/firefox/browser_spec-source-map.js: Added. +(async checkValidity): +(async checkMapping): +(const.testCase.of.testDescriptions.tests.const.testFunction.async const): +(const.testCase.of.testDescriptions.tests.const.testFunction.testCase.name): +(read): +* LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-original.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js: Added. +(foo): +(bar): +(baz): +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/second-source-original.js: Added. +(baz): +* LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js: Added. +(foo): +(bar): +* LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js: Added. +(foo): +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js: Added. +(foo): +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js: Added. +(foo): +* LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/typescript-original.ts: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js: Added. +* LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js.map: Added. +* LayoutTests/imported/tg4/source-map-tests/source-map-spec-tests.json: Added. +* LayoutTests/imported/tg4/source-map-tests/webkit/0001-Add-harness-for-source-maps-spec-tests.patch: Added. +* LayoutTests/imported/tg4/source-map-tests/webkit/source-map-spec.html: Added. +* LayoutTests/inspector/model/source-map-spec-expected.txt: Added. +* LayoutTests/inspector/model/source-map-spec.html: Added. +--- + .../imported/tg4/source-map-tests/LICENSE.md | 14 + + .../tg4/source-map-tests/README.WebKit | 1 + + .../imported/tg4/source-map-tests/README.md | 176 + + ...1-Add-source-map-specification-tests.patch | 3867 +++++++++++++++++ + ...002-Add-reverse-mapping-code-to-test.patch | 46 + + ...01-WIP-Firefox-source-map-spec-tests.patch | 337 ++ + .../firefox/browser_spec-source-map.js | 71 + + .../resources/basic-mapping-as-index-map.js | 2 + + .../basic-mapping-as-index-map.js.map | 15 + + .../resources/basic-mapping-original.js | 8 + + .../resources/basic-mapping.js | 2 + + .../resources/basic-mapping.js.map | 6 + + .../resources/file-not-a-string-1.js | 1 + + .../resources/file-not-a-string-1.js.map | 8 + + .../resources/file-not-a-string-2.js | 1 + + .../resources/file-not-a-string-2.js.map | 8 + + .../resources/ignore-list-empty.js | 1 + + .../resources/ignore-list-empty.js.map | 8 + + .../resources/ignore-list-out-of-bounds-1.js | 1 + + .../ignore-list-out-of-bounds-1.js.map | 8 + + .../resources/ignore-list-out-of-bounds-2.js | 1 + + .../ignore-list-out-of-bounds-2.js.map | 8 + + .../resources/ignore-list-valid-1.js | 1 + + .../resources/ignore-list-valid-1.js.map | 8 + + .../resources/ignore-list-wrong-type-1.js | 1 + + .../resources/ignore-list-wrong-type-1.js.map | 8 + + .../resources/ignore-list-wrong-type-2.js | 1 + + .../resources/ignore-list-wrong-type-2.js.map | 8 + + .../resources/ignore-list-wrong-type-3.js | 1 + + .../resources/ignore-list-wrong-type-3.js.map | 8 + + .../resources/ignore-list-wrong-type-4.js | 1 + + .../resources/ignore-list-wrong-type-4.js.map | 8 + + .../resources/index-map-empty-sections.js | 1 + + .../resources/index-map-empty-sections.js.map | 4 + + .../resources/index-map-file-wrong-type-1.js | 2 + + .../index-map-file-wrong-type-1.js.map | 15 + + .../resources/index-map-file-wrong-type-2.js | 2 + + .../index-map-file-wrong-type-2.js.map | 15 + + .../index-map-invalid-base-mappings.js | 1 + + .../index-map-invalid-base-mappings.js.map | 15 + + .../resources/index-map-invalid-order.js | 1 + + .../resources/index-map-invalid-order.js.map | 23 + + .../resources/index-map-invalid-overlap.js | 1 + + .../index-map-invalid-overlap.js.map | 23 + + .../resources/index-map-invalid-sub-map.js | 1 + + .../index-map-invalid-sub-map.js.map | 13 + + .../resources/index-map-missing-file.js | 2 + + .../resources/index-map-missing-file.js.map | 14 + + .../resources/index-map-missing-map.js | 1 + + .../resources/index-map-missing-map.js.map | 8 + + .../index-map-missing-offset-column.js | 1 + + .../index-map-missing-offset-column.js.map | 14 + + .../index-map-missing-offset-line.js | 1 + + .../index-map-missing-offset-line.js.map | 14 + + .../resources/index-map-missing-offset.js | 1 + + .../resources/index-map-missing-offset.js.map | 13 + + .../index-map-offset-column-wrong-type.js | 1 + + .../index-map-offset-column-wrong-type.js.map | 14 + + .../index-map-offset-line-wrong-type.js | 1 + + .../index-map-offset-line-wrong-type.js.map | 14 + + .../index-map-two-concatenated-sources.js | 2 + + .../index-map-two-concatenated-sources.js.map | 24 + + .../resources/index-map-wrong-type-map.js | 1 + + .../resources/index-map-wrong-type-map.js.map | 9 + + .../resources/index-map-wrong-type-offset.js | 1 + + .../index-map-wrong-type-offset.js.map | 14 + + .../index-map-wrong-type-sections.js | 1 + + .../index-map-wrong-type-sections.js.map | 4 + + .../invalid-mapping-bad-separator.js | 2 + + .../invalid-mapping-bad-separator.js.map | 6 + + .../invalid-mapping-not-a-string-1.js | 1 + + .../invalid-mapping-not-a-string-1.js.map | 7 + + .../invalid-mapping-not-a-string-2.js | 1 + + .../invalid-mapping-not-a-string-2.js.map | 7 + + ...nvalid-mapping-segment-column-too-large.js | 1 + + ...id-mapping-segment-column-too-large.js.map | 7 + + ...apping-segment-name-index-out-of-bounds.js | 1 + + ...ng-segment-name-index-out-of-bounds.js.map | 7 + + ...id-mapping-segment-name-index-too-large.js | 1 + + ...apping-segment-name-index-too-large.js.map | 7 + + ...invalid-mapping-segment-negative-column.js | 1 + + ...lid-mapping-segment-negative-column.js.map | 7 + + ...lid-mapping-segment-negative-name-index.js | 1 + + ...mapping-segment-negative-name-index.js.map | 7 + + ...apping-segment-negative-original-column.js | 1 + + ...ng-segment-negative-original-column.js.map | 7 + + ...-mapping-segment-negative-original-line.js | 1 + + ...ping-segment-negative-original-line.js.map | 7 + + ...apping-segment-negative-relative-column.js | 1 + + ...ng-segment-negative-relative-column.js.map | 8 + + ...ng-segment-negative-relative-name-index.js | 1 + + ...egment-negative-relative-name-index.js.map | 8 + + ...gment-negative-relative-original-column.js | 1 + + ...t-negative-relative-original-column.js.map | 8 + + ...segment-negative-relative-original-line.js | 1 + + ...ent-negative-relative-original-line.js.map | 8 + + ...-segment-negative-relative-source-index.js | 1 + + ...ment-negative-relative-source-index.js.map | 8 + + ...d-mapping-segment-negative-source-index.js | 1 + + ...pping-segment-negative-source-index.js.map | 7 + + ...pping-segment-original-column-too-large.js | 1 + + ...g-segment-original-column-too-large.js.map | 7 + + ...mapping-segment-original-line-too-large.js | 1 + + ...ing-segment-original-line-too-large.js.map | 7 + + ...ping-segment-source-index-out-of-bounds.js | 1 + + ...-segment-source-index-out-of-bounds.js.map | 7 + + ...-mapping-segment-source-index-too-large.js | 1 + + ...ping-segment-source-index-too-large.js.map | 7 + + ...valid-mapping-segment-with-three-fields.js | 2 + + ...d-mapping-segment-with-three-fields.js.map | 6 + + ...invalid-mapping-segment-with-two-fields.js | 2 + + ...lid-mapping-segment-with-two-fields.js.map | 6 + + ...nvalid-mapping-segment-with-zero-fields.js | 1 + + ...id-mapping-segment-with-zero-fields.js.map | 7 + + .../invalid-vlq-missing-continuation.js | 1 + + .../invalid-vlq-missing-continuation.js.map | 6 + + .../resources/invalid-vlq-non-base64-char.js | 1 + + .../invalid-vlq-non-base64-char.js.map | 6 + + .../mapping-semantics-column-reset.js | 3 + + .../mapping-semantics-column-reset.js.map | 7 + + .../mapping-semantics-five-field-segment.js | 2 + + ...apping-semantics-five-field-segment.js.map | 7 + + .../mapping-semantics-four-field-segment.js | 2 + + ...apping-semantics-four-field-segment.js.map | 7 + + .../resources/mapping-semantics-relative-1.js | 2 + + .../mapping-semantics-relative-1.js.map | 7 + + .../resources/mapping-semantics-relative-2.js | 3 + + .../mapping-semantics-relative-2.js.map | 7 + + .../mapping-semantics-single-field-segment.js | 2 + + ...ping-semantics-single-field-segment.js.map | 7 + + .../resources/names-missing.js | 1 + + .../resources/names-missing.js.map | 6 + + .../resources/names-not-a-list-1.js | 1 + + .../resources/names-not-a-list-1.js.map | 6 + + .../resources/names-not-a-list-2.js | 1 + + .../resources/names-not-a-list-2.js.map | 6 + + .../resources/names-not-string.js | 1 + + .../resources/names-not-string.js.map | 6 + + .../resources/second-source-original.js | 4 + + .../source-resolution-absolute-url.js | 2 + + .../source-resolution-absolute-url.js.map | 8 + + .../resources/source-root-not-a-string-1.js | 1 + + .../source-root-not-a-string-1.js.map | 8 + + .../resources/source-root-not-a-string-2.js | 1 + + .../source-root-not-a-string-2.js.map | 8 + + .../resources/source-root-resolution.js | 2 + + .../resources/source-root-resolution.js.map | 9 + + .../sources-and-sources-content-both-null.js | 1 + + ...urces-and-sources-content-both-null.js.map | 7 + + .../resources/sources-missing.js | 1 + + .../resources/sources-missing.js.map | 5 + + .../sources-non-null-sources-content-null.js | 2 + + ...urces-non-null-sources-content-null.js.map | 7 + + .../resources/sources-not-a-list-1.js | 1 + + .../resources/sources-not-a-list-1.js.map | 6 + + .../resources/sources-not-a-list-2.js | 1 + + .../resources/sources-not-a-list-2.js.map | 6 + + .../resources/sources-not-string-or-null.js | 1 + + .../sources-not-string-or-null.js.map | 6 + + .../sources-null-sources-content-non-null.js | 2 + + ...urces-null-sources-content-non-null.js.map | 7 + + .../resources/transitive-mapping-original.js | 5 + + .../transitive-mapping-original.js.map | 8 + + .../transitive-mapping-three-steps.js | 6 + + .../transitive-mapping-three-steps.js.map | 7 + + .../resources/transitive-mapping.js | 2 + + .../resources/transitive-mapping.js.map | 6 + + .../resources/typescript-original.ts | 5 + + .../resources/unrecognized-property.js | 1 + + .../resources/unrecognized-property.js.map | 8 + + .../valid-mapping-boundary-values.js | 1 + + .../valid-mapping-boundary-values.js.map | 7 + + .../resources/valid-mapping-empty-groups.js | 1 + + .../valid-mapping-empty-groups.js.map | 8 + + .../resources/valid-mapping-empty-string.js | 1 + + .../valid-mapping-empty-string.js.map | 8 + + .../resources/valid-mapping-large-vlq.js | 1 + + .../resources/valid-mapping-large-vlq.js.map | 6 + + .../resources/version-missing.js | 1 + + .../resources/version-missing.js.map | 5 + + .../resources/version-not-a-number.js | 1 + + .../resources/version-not-a-number.js.map | 6 + + .../resources/version-numeric-string.js | 1 + + .../resources/version-numeric-string.js.map | 6 + + .../resources/version-too-high.js | 1 + + .../resources/version-too-high.js.map | 6 + + .../resources/version-too-low.js | 1 + + .../resources/version-too-low.js.map | 6 + + .../resources/version-valid.js | 1 + + .../resources/version-valid.js.map | 6 + + .../vlq-valid-continuation-bit-present-1.js | 2 + + ...lq-valid-continuation-bit-present-1.js.map | 7 + + .../vlq-valid-continuation-bit-present-2.js | 4 + + ...lq-valid-continuation-bit-present-2.js.map | 7 + + .../resources/vlq-valid-negative-digit.js | 4 + + .../resources/vlq-valid-negative-digit.js.map | 7 + + .../resources/vlq-valid-single-digit.js | 2 + + .../resources/vlq-valid-single-digit.js.map | 7 + + .../source-map-spec-tests.json | 1554 +++++++ + ...d-harness-for-source-maps-spec-tests.patch | 1649 +++++++ + .../webkit/source-map-spec.html | 83 + + .../model/source-map-spec-expected.txt | 828 ++++ + .../inspector/model/source-map-spec.html | 87 + + 203 files changed, 9653 insertions(+) + create mode 100644 LayoutTests/imported/tg4/source-map-tests/LICENSE.md + create mode 100644 LayoutTests/imported/tg4/source-map-tests/README.WebKit + create mode 100644 LayoutTests/imported/tg4/source-map-tests/README.md + create mode 100644 LayoutTests/imported/tg4/source-map-tests/chrome/0001-Add-source-map-specification-tests.patch + create mode 100644 LayoutTests/imported/tg4/source-map-tests/chrome/0002-Add-reverse-mapping-code-to-test.patch + create mode 100644 LayoutTests/imported/tg4/source-map-tests/firefox/0001-WIP-Firefox-source-map-spec-tests.patch + create mode 100644 LayoutTests/imported/tg4/source-map-tests/firefox/browser_spec-source-map.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-original.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/second-source-original.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/typescript-original.ts + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js + create mode 100644 LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js.map + create mode 100644 LayoutTests/imported/tg4/source-map-tests/source-map-spec-tests.json + create mode 100644 LayoutTests/imported/tg4/source-map-tests/webkit/0001-Add-harness-for-source-maps-spec-tests.patch + create mode 100644 LayoutTests/imported/tg4/source-map-tests/webkit/source-map-spec.html + create mode 100644 LayoutTests/inspector/model/source-map-spec-expected.txt + create mode 100644 LayoutTests/inspector/model/source-map-spec.html + +diff --git a/LayoutTests/imported/tg4/source-map-tests/LICENSE.md b/LayoutTests/imported/tg4/source-map-tests/LICENSE.md +new file mode 100644 +index 000000000000..39501a3b7c70 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/LICENSE.md +@@ -0,0 +1,14 @@ ++The Source Map Tests suite ("Software") is protected by copyright and is being made available under the "BSD License", included below. This Software may be subject to third party rights (rights from parties other than Ecma International), including patent rights, and no licenses under such third party rights are granted under this license even if the third party concerned is a member of Ecma International. SEE THE ECMA CODE OF CONDUCT IN PATENT MATTERS AVAILABLE AT https://www.ecma-international.org/ipr FOR INFORMATION REGARDING THE LICENSING OF PATENT CLAIMS THAT ARE REQUIRED TO IMPLEMENT ECMA INTERNATIONAL STANDARDS*. ++ ++Copyright (c) 2024, Ecma International ++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. ++ ++* Ecma International Standards hereafter means Ecma International Standards as well as Ecma Technical Reports +diff --git a/LayoutTests/imported/tg4/source-map-tests/README.WebKit b/LayoutTests/imported/tg4/source-map-tests/README.WebKit +new file mode 100644 +index 000000000000..9d6cf4b7fb68 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/README.WebKit +@@ -0,0 +1 @@ ++FIXME +diff --git a/LayoutTests/imported/tg4/source-map-tests/README.md b/LayoutTests/imported/tg4/source-map-tests/README.md +new file mode 100644 +index 000000000000..a8bb3947c435 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/README.md +@@ -0,0 +1,176 @@ ++# Source Map Tests ++ ++This repository holds testing discussions and tests for the the Source Map debugging format. Specifically, we're looking to encourage discussion around: ++ ++- Manual and automated testing strategies for Source Maps ++- Gathering a list of Soure Map generators and consumers ++- General discussion around deviations between source maps ++ ++Open discussion happens in the [GitHub issues](https://github.com/source-map/source-map-tests/issues). ++ ++Source Map spec: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit?pli=1# ++ ++## Test cases ++ ++These test cases are still a work-in-progress 🚧. ++ ++#### Running the tests ++ ++How to run in WebKit: ++ * Check out [WebKit](https://github.com/WebKit/WebKit/) ++ * `cd` to the checked out WebKit directory. ++ * Run `git am <this-repo>/webkit/0001-Add-harness-for-source-maps-spec-tests.patch` ++ * Run `Tools/Scripts/build-webkit` (depending on the platform you may need to pass `--gtk` or other flags) ++ * Run `Tools/Scripts/run-webkit-tests LayoutTests/inspector/model/source-map-spec.html` (again, you may need `--gtk` on Linux) ++ ++For Firefox, see the Mozilla [source-map](https://github.com/mozilla/source-map) library: ++ * There is a [branch](https://github.com/takikawa/source-map/tree/add-spec-tests) for adding the spec tests to the package. ++ ++How to run in Chrome Devtools: ++1. Setup: ++ * Install depot_tools following this [depot_tools guide](https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up) ++ * Check out [Chrome Devtools](https://chromium.googlesource.com/devtools/devtools-frontend): ++ * Run `gclient config https://chromium.googlesource.com/devtools/devtools-frontend --unmanaged` ++ * Run `cd devtools-frontend` ++ * Run `gclient sync` ++ * Run `gn gen out/Default` ++2. Build: ++ * Run `autoninja -C out/Default` ++3. Test: ++ * Run `npm run auto-unittest` ++4. Apply patches from this repo: ++ * Run `git apply <path to .patch file>` in `devtools-frontend` repo ++ ++More information about running Chrome Devtools without building Chromium can be found [here](https://chromium.googlesource.com/devtools/devtools-frontend/+/refs/heads/chromium/3965/README.md) ++ ++### Goals of tests ++ ++* Thoroughly test all aspects of the source maps spec that can be tested. ++* Strictly follow the spec when determining test behavior. ++ ++### Test coverage ++ ++#### Core spec ++ ++* Encoding ++ - [ ] Source map must be a valid JSON document. ++ - Base64 VLQ ++ * VLQs should decode correctly ++ - [X] A VLQ with a non-base64 character will fail to decode. ++ - [ ] A VLQ with one digit and no continuation digits should decode. ++ - [ ] A negative VLQ with the sign bit set to 1 should decode. ++ - [ ] A VLQ with non-zero continuation bits (and more than one digit) should decode. ++ - [X] A VLQ with a non-zero continuation bit with no further digits should fail to decode. ++ - [ ] A VLQ should decode with the correct order of digits (least to most significant). ++ - [x] A long VLQ with many trailing zero digits will decode. ++ * [x] A VLQ exceeding the 32-bit size limit is invalid (note: the spec is unclear on the details of this limit) ++ * [x] A VLQ at exactly the 32-bit size limit should be decoded (positive and negative). ++* Basic format ++ - `version` field ++ * [X] Must be present ++ * [X] Must be a number ++ * [X] Must be 3 ++ - `file` field ++ * [ ] Optional, allow missing ++ * [ ] Must be a string? (spec is not clear) ++ - `sourceRoot` field ++ * [ ] Optional, allow missing ++ * [ ] Must be a string? (spec is not clear) ++ - `sources` field ++ * [X] Must be present ++ * [X] Must be an array ++ * [X] Array elements must be `null` or a string ++ - `sourcesContent` field ++ * [X] Must be present ++ * [X] Must be an array ++ * [X] Array elements must be `null` or a string ++ - `names` field ++ * [X] Must be present (note: the spec implies this but implementations may not agree) ++ * [X] Must be an array ++ * [X] Array elements must be strings ++ - `mappings` field ++ * [X] Must be present ++ * [X] Must be a string ++ * [ ] Empty string is valid ++ - `ignoreList` field ++ * [ ] Optional, allow missing ++ * [ ] Must be an array ++ * [ ] Array elements must be numbers ++ * [ ] Elements must not be out of bounds for the `sources` list ++ - [X] Extra unrecognized fields are allowed ++* Index maps ++ - ? Must be mutually exclusive with non-index map? ++ - `file` field ++ * [ ] Optional, allow missing ++ * [ ] Must be a string? (spec is not clear) ++ - `sections` field ++ * [X] Must be present ++ * [X] Must be an array ++ * [ ] An empty sections array is valid ++ * [X] Array elements are valid section objects ++ - `offset` field ++ * [X] Must be present ++ * `line` field ++ - [X] Must be present ++ - [X] Must be a number ++ * `column` field ++ - [X] Must be present ++ - [X] Must be a number ++ - `map` field ++ * [X] Must be present ++ * [X] Must be an object ++ * [ ] Must be a valid source map ++ - [X] Sections are in order (the spec is not 100% clear, but assumption is increasing numeric order, may need subtests) ++ - [X] Sections are non-overlapping (the definition of overlap is not clear, may need subtests) ++* Mappings format ++ - [X] Each line is separated by ";" ++ - [X] A line may consist of zero segments (e.g., ";;") ++ - [X] Each line consists only of segments separated by "," ++ - [X] Must have greater than zero fields (note: many implementations don't check) ++ - [X] Must have 1, 4, or 5 fields ++ - [X] The source index must not be out of bounds of the sources array ++ - [X] The name index must not be out of bounds of the names array ++ - Absolute VLQ values must be non-negative ++ * [X] The column must be non-negative ++ * [X] The source index must be non-negative ++ * [X] The original line must be non-negative ++ * [X] The original column must be non-negative ++ * [X] The name index must be non-negative ++ - Relative VLQ values must be non-negative after adding to previous value ++ * [X] The column must be non-negative ++ * [X] The source index must be non-negative ++ * [X] The original line must be non-negative ++ * [X] The original column must be non-negative ++ * [X] The name index must be non-negative ++* Ignore list ++ - [X] An ignore list is optional, may be missing ++ - [X] An ignore list can't be a non-array value ++ * [X] An ignore list can be empty ++ * [X] An ignore list entry must be a number ++ * [X] An ignore list entry cannot be out-of-bounds of the sources array ++ - [X] Ignore list entries are detected and are present ++ - [X] Items not specified in the ignore list don't show up as ignored ++* Mappings semantics ++ - [ ] A source map with no mappings does not map any position. ++ - [ ] A single field segment gets mapped to the correct line and column. ++ - [X] A four field segment gets mapped to the correct line and column. ++ - [X] A five field segment gets mapped to the correct line and column. ++ - [X] When a name is present in a segment, it is correctly mapped. ++ - [X] When a source is present in a segment, it is correctly mapped. ++ - [ ] The second occurence of a field segment in a line is mapped relative to the previous one. ++ - [ ] When a new line starts, the generated column field resets to zero rather than being relative to the previous line. ++ - [ ] For fields other than the generated column, a segment field that has occured once in a previous line is mapped relatively when it occurs in the next line. ++ - [ ] Ensure that a transitive source map mapping works as expected ++ - Index maps are correctly used in mappings ++ * [ ] An index map with one sub-map will map correctly. ++ * [X] An index map with multiple sub-maps will map correctly, with appropriate offsets for the second and later sub-maps. ++* Resolution of sources ++ - [ ] When `sourceRoot` is provided, it is prepended to any `sources` entries and will be mapped with the full URL. ++ - [ ] If the source URL is an absolute URL, it is resolved as an absolute URL. ++ - [ ] If the source URL is a relative URL, it is resolved relative to the source map path. ++* Wasm support ++ - [ ] Create versions of the tests that use a Wasm source. ++ ++### Scopes Proposal ++ ++TODO +diff --git a/LayoutTests/imported/tg4/source-map-tests/chrome/0001-Add-source-map-specification-tests.patch b/LayoutTests/imported/tg4/source-map-tests/chrome/0001-Add-source-map-specification-tests.patch +new file mode 100644 +index 000000000000..c5fbd4baa8b0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/chrome/0001-Add-source-map-specification-tests.patch +@@ -0,0 +1,3867 @@ ++From afa11641db357e524c8f4d5f573945dd15c1f2e9 Mon Sep 17 00:00:00 2001 ++From: Agata Belkius <abelkius@gmail.com> ++Date: Fri, 19 Apr 2024 15:30:48 +0100 ++Subject: [PATCH 1/2] Add source map specification tests ++ ++--- ++ front_end/BUILD.gn | 1 + ++ front_end/core/sdk/BUILD.gn | 1 + ++ front_end/core/sdk/SourceMapSpec.test.ts | 206 +++ ++ .../core/sdk/fixtures/sourcemaps/BUILD.gn | 202 +++ ++ .../sourcemaps/basic-mapping-as-index-map.js | 2 + ++ .../basic-mapping-as-index-map.js.map | 15 + ++ .../sourcemaps/basic-mapping-original.js | 8 + ++ .../sdk/fixtures/sourcemaps/basic-mapping.js | 2 + ++ .../fixtures/sourcemaps/basic-mapping.js.map | 6 + ++ .../fixtures/sourcemaps/ignore-list-empty.js | 1 + ++ .../sourcemaps/ignore-list-empty.js.map | 8 + ++ .../sourcemaps/ignore-list-out-of-bounds.js | 1 + ++ .../ignore-list-out-of-bounds.js.map | 8 + ++ .../sourcemaps/ignore-list-valid-1.js | 1 + ++ .../sourcemaps/ignore-list-valid-1.js.map | 8 + ++ .../sourcemaps/ignore-list-wrong-type-1.js | 1 + ++ .../ignore-list-wrong-type-1.js.map | 8 + ++ .../sourcemaps/ignore-list-wrong-type-2.js | 1 + ++ .../ignore-list-wrong-type-2.js.map | 8 + ++ .../sourcemaps/ignore-list-wrong-type-3.js | 1 + ++ .../ignore-list-wrong-type-3.js.map | 8 + ++ .../index-map-invalid-base-mappings.js | 1 + ++ .../index-map-invalid-base-mappings.js.map | 15 + ++ .../sourcemaps/index-map-invalid-order.js | 1 + ++ .../sourcemaps/index-map-invalid-order.js.map | 23 + ++ .../sourcemaps/index-map-invalid-overlap.js | 1 + ++ .../index-map-invalid-overlap.js.map | 23 + ++ .../sourcemaps/index-map-missing-map.js | 1 + ++ .../sourcemaps/index-map-missing-map.js.map | 8 + ++ .../index-map-missing-offset-column.js | 1 + ++ .../index-map-missing-offset-column.js.map | 14 + ++ .../index-map-missing-offset-line.js | 1 + ++ .../index-map-missing-offset-line.js.map | 14 + ++ .../sourcemaps/index-map-missing-offset.js | 1 + ++ .../index-map-missing-offset.js.map | 13 + ++ .../index-map-offset-column-wrong-type.js | 1 + ++ .../index-map-offset-column-wrong-type.js.map | 14 + ++ .../index-map-offset-line-wrong-type.js | 1 + ++ .../index-map-offset-line-wrong-type.js.map | 14 + ++ .../index-map-two-concatenated-sources.js | 2 + ++ .../index-map-two-concatenated-sources.js.map | 24 + ++ .../sourcemaps/index-map-wrong-type-map.js | 1 + ++ .../index-map-wrong-type-map.js.map | 9 + ++ .../sourcemaps/index-map-wrong-type-offset.js | 1 + ++ .../index-map-wrong-type-offset.js.map | 14 + ++ .../index-map-wrong-type-sections.js | 1 + ++ .../index-map-wrong-type-sections.js.map | 4 + ++ .../invalid-mapping-bad-separator.js | 2 + ++ .../invalid-mapping-bad-separator.js.map | 6 + ++ .../invalid-mapping-not-a-string-1.js | 1 + ++ .../invalid-mapping-not-a-string-1.js.map | 7 + ++ .../invalid-mapping-not-a-string-2.js | 1 + ++ .../invalid-mapping-not-a-string-2.js.map | 7 + ++ ...nvalid-mapping-segment-column-too-large.js | 1 + ++ ...id-mapping-segment-column-too-large.js.map | 7 + ++ ...apping-segment-name-index-out-of-bounds.js | 1 + ++ ...ng-segment-name-index-out-of-bounds.js.map | 7 + ++ ...id-mapping-segment-name-index-too-large.js | 1 + ++ ...apping-segment-name-index-too-large.js.map | 7 + ++ ...invalid-mapping-segment-negative-column.js | 1 + ++ ...lid-mapping-segment-negative-column.js.map | 7 + ++ ...lid-mapping-segment-negative-name-index.js | 1 + ++ ...mapping-segment-negative-name-index.js.map | 7 + ++ ...apping-segment-negative-original-column.js | 1 + ++ ...ng-segment-negative-original-column.js.map | 7 + ++ ...-mapping-segment-negative-original-line.js | 1 + ++ ...ping-segment-negative-original-line.js.map | 7 + ++ ...apping-segment-negative-relative-column.js | 1 + ++ ...ng-segment-negative-relative-column.js.map | 8 + ++ ...ng-segment-negative-relative-name-index.js | 1 + ++ ...egment-negative-relative-name-index.js.map | 8 + ++ ...gment-negative-relative-original-column.js | 1 + ++ ...t-negative-relative-original-column.js.map | 8 + ++ ...segment-negative-relative-original-line.js | 1 + ++ ...ent-negative-relative-original-line.js.map | 8 + ++ ...-segment-negative-relative-source-index.js | 1 + ++ ...ment-negative-relative-source-index.js.map | 8 + ++ ...d-mapping-segment-negative-source-index.js | 1 + ++ ...pping-segment-negative-source-index.js.map | 7 + ++ ...pping-segment-original-column-too-large.js | 1 + ++ ...g-segment-original-column-too-large.js.map | 7 + ++ ...mapping-segment-original-line-too-large.js | 1 + ++ ...ing-segment-original-line-too-large.js.map | 7 + ++ ...ping-segment-source-index-out-of-bounds.js | 1 + ++ ...-segment-source-index-out-of-bounds.js.map | 7 + ++ ...-mapping-segment-source-index-too-large.js | 1 + ++ ...ping-segment-source-index-too-large.js.map | 7 + ++ ...valid-mapping-segment-with-three-fields.js | 2 + ++ ...d-mapping-segment-with-three-fields.js.map | 6 + ++ ...invalid-mapping-segment-with-two-fields.js | 2 + ++ ...lid-mapping-segment-with-two-fields.js.map | 6 + ++ ...nvalid-mapping-segment-with-zero-fields.js | 1 + ++ ...id-mapping-segment-with-zero-fields.js.map | 7 + ++ .../invalid-vlq-missing-continuation.js | 1 + ++ .../invalid-vlq-missing-continuation.js.map | 6 + ++ .../sourcemaps/invalid-vlq-non-base64-char.js | 1 + ++ .../invalid-vlq-non-base64-char.js.map | 6 + ++ .../sdk/fixtures/sourcemaps/names-missing.js | 1 + ++ .../fixtures/sourcemaps/names-missing.js.map | 5 + ++ .../fixtures/sourcemaps/names-not-a-list-1.js | 1 + ++ .../sourcemaps/names-not-a-list-1.js.map | 6 + ++ .../fixtures/sourcemaps/names-not-a-list-2.js | 1 + ++ .../sourcemaps/names-not-a-list-2.js.map | 6 + ++ .../fixtures/sourcemaps/names-not-string.js | 1 + ++ .../sourcemaps/names-not-string.js.map | 6 + ++ .../sourcemaps/second-source-original.js | 4 + ++ .../sourcemaps/source-map-spec-tests.json | 1540 +++++++++++++++++ ++ .../sources-and-sources-content-both-null.js | 1 + ++ ...urces-and-sources-content-both-null.js.map | 7 + ++ .../fixtures/sourcemaps/sources-missing.js | 1 + ++ .../sourcemaps/sources-missing.js.map | 5 + ++ .../sources-non-null-sources-content-null.js | 2 + ++ ...urces-non-null-sources-content-null.js.map | 7 + ++ .../sourcemaps/sources-not-a-list-1.js | 1 + ++ .../sourcemaps/sources-not-a-list-1.js.map | 6 + ++ .../sourcemaps/sources-not-a-list-2.js | 1 + ++ .../sourcemaps/sources-not-a-list-2.js.map | 6 + ++ .../sourcemaps/sources-not-string-or-null.js | 1 + ++ .../sources-not-string-or-null.js.map | 6 + ++ .../sources-null-sources-content-non-null.js | 2 + ++ ...urces-null-sources-content-non-null.js.map | 7 + ++ .../sourcemaps/transitive-mapping-original.js | 5 + ++ .../transitive-mapping-original.js.map | 8 + ++ .../transitive-mapping-three-steps.js | 6 + ++ .../transitive-mapping-three-steps.js.map | 7 + ++ .../fixtures/sourcemaps/transitive-mapping.js | 2 + ++ .../sourcemaps/transitive-mapping.js.map | 6 + ++ .../sourcemaps/typescript-original.ts | 5 + ++ .../sourcemaps/unrecognized-property.js | 1 + ++ .../sourcemaps/unrecognized-property.js.map | 8 + ++ .../valid-mapping-boundary-values.js | 1 + ++ .../valid-mapping-boundary-values.js.map | 7 + ++ .../sourcemaps/valid-mapping-empty-groups.js | 1 + ++ .../valid-mapping-empty-groups.js.map | 8 + ++ .../sourcemaps/valid-mapping-large-vlq.js | 1 + ++ .../sourcemaps/valid-mapping-large-vlq.js.map | 6 + ++ .../sourcemaps/valid-mapping-null-sources.js | 2 + ++ .../valid-mapping-null-sources.js.map | 6 + ++ .../fixtures/sourcemaps/version-missing.js | 1 + ++ .../sourcemaps/version-missing.js.map | 5 + ++ .../sourcemaps/version-not-a-number.js | 1 + ++ .../sourcemaps/version-not-a-number.js.map | 6 + ++ .../sourcemaps/version-numeric-string.js | 1 + ++ .../sourcemaps/version-numeric-string.js.map | 6 + ++ .../fixtures/sourcemaps/version-too-high.js | 1 + ++ .../sourcemaps/version-too-high.js.map | 6 + ++ .../fixtures/sourcemaps/version-too-low.js | 1 + ++ .../sourcemaps/version-too-low.js.map | 6 + ++ .../sdk/fixtures/sourcemaps/version-valid.js | 1 + ++ .../fixtures/sourcemaps/version-valid.js.map | 6 + ++ 150 files changed, 2648 insertions(+) ++ create mode 100644 front_end/core/sdk/SourceMapSpec.test.ts ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/BUILD.gn ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-missing.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-string.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/second-source-original.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-missing.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-missing.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-high.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-low.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-valid.js ++ create mode 100644 front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map ++ ++diff --git a/front_end/BUILD.gn b/front_end/BUILD.gn ++index 863a434cea..125b34ba73 100644 ++--- a/front_end/BUILD.gn +++++ b/front_end/BUILD.gn ++@@ -106,6 +106,7 @@ group("unittests") { ++ "core/protocol_client:unittests", ++ "core/root:unittests", ++ "core/sdk:unittests", +++ "core/sdk/fixtures/sourcemaps", ++ "entrypoints/formatter_worker:unittests", ++ "entrypoints/heap_snapshot_worker:unittests", ++ "entrypoints/inspector_main:unittests", ++diff --git a/front_end/core/sdk/BUILD.gn b/front_end/core/sdk/BUILD.gn ++index 8d1cf0fa92..f8879365f4 100644 ++--- a/front_end/core/sdk/BUILD.gn +++++ b/front_end/core/sdk/BUILD.gn ++@@ -165,6 +165,7 @@ ts_library("unittests") { ++ "SourceMapManager.test.ts", ++ "SourceMapScopes.test.ts", ++ "SourceMapScopesInfo.test.ts", +++ "SourceMapSpec.test.ts", ++ "StorageBucketsModel.test.ts", ++ "StorageKeyManager.test.ts", ++ "Target.test.ts", ++diff --git a/front_end/core/sdk/SourceMapSpec.test.ts b/front_end/core/sdk/SourceMapSpec.test.ts ++new file mode 100644 ++index 0000000000..93b26a2e13 ++--- /dev/null +++++ b/front_end/core/sdk/SourceMapSpec.test.ts ++@@ -0,0 +1,206 @@ +++// Copyright 2024 The Chromium Authors. All rights reserved. +++// Use of this source code is governed by a BSD-style license that can be +++// found in the LICENSE file. +++ +++ +++/** +++ This file tests if devtools sourcemaps implementation is matching the sourcemaps spec. +++ Sourcemap Spec tests are using test data coming from: https://github.com/tc39/source-map-tests +++ +++ There is a lot of warnings of invalid source maps passing the validation - this is up to the authors +++ which ones of these could be actually checked in the SourceMaps implementetion and which ones are ok to ignore. +++ +++ **/ +++ +++const {assert} = chai; +++import type * as Platform from '../platform/platform.js'; +++import {assertNotNullOrUndefined} from '../platform/platform.js'; +++import { SourceMapV3, parseSourceMap } from './SourceMap.js'; +++import * as SDK from './sdk.js'; +++import {describeWithEnvironment} from '../../testing/EnvironmentHelpers.js'; +++ +++interface TestSpec { +++ name: string; +++ description: string; +++ baseFile: string; +++ sourceMapFile: string; +++ sourceMapIsValid: boolean; +++ testActions?: TestAction[]; +++} +++ +++interface TestAction { +++ actionType: string; +++ generatedLine: number; +++ generatedColumn: number; +++ originalSource: string; +++ originalLine: number; +++ originalColumn: number; +++ mappedName: null | string; +++ intermediateMaps?: string[] +++} +++ +++// Accept "null", null, or undefined for tests specifying a missing value. +++function nullish(arg : any) { +++ if (arg === "null" || arg === undefined) { +++ return null; +++ } +++ return arg; +++} +++ +++describeWithEnvironment('SourceMapSpec', () => { +++ let testCases : TestSpec[] | undefined; +++ let sourceMapContents : SourceMapV3[] = []; +++ +++ before(async () => { +++ testCases = await loadTestCasesFromFixture('source-map-spec-tests.json'); +++ sourceMapContents = await Promise.all( +++ testCases!.map( +++ async (testCase) => { +++ const { sourceMapFile } = testCase; +++ return loadSourceMapFromFixture(sourceMapFile); +++ } +++ ) +++ ); +++ }); +++ +++ it('Spec tests', () => { +++ const consoleErrorSpy = sinon.spy(console, 'error'); +++ testCases!.forEach(({ +++ baseFile, +++ sourceMapFile, +++ testActions, +++ sourceMapIsValid, +++ name +++ }, index) => { +++ const sourceMapContent = sourceMapContents[index]; +++ +++ // These test cases are ignored because certain validity checks are +++ // not implemented, such as checking the version number is `3`. +++ const ignoredCasesForBasicValidity = [ +++ "fileNotAString1", +++ "fileNotAString2", +++ "versionMissing", +++ "versionNotANumber", +++ "versionNumericString", +++ "versionTooHigh", +++ "versionTooLow", +++ "sourcesNotAList1", +++ "sourcesNotAList2", +++ "sourcesNotStringOrNull", +++ // FIXME: this test should be revised after recent spec changes +++ "namesMissing", +++ "namesNotAList1", +++ "namesNotAList2", +++ "namesNotString", +++ "ignoreListWrongType1", +++ "ignoreListWrongType2", +++ "ignoreListOutOfBounds", +++ "indexMapWrongTypeSections", +++ "indexMapWrongTypeMap", +++ "indexMapMissingOffset", +++ "invalidVLQDueToNonBase64Character", +++ ]; +++ +++ // 1) check if an invalid sourcemap throws on SourceMap instance creation, or +++ // 2) check if an invalid sourcemap throws on mapping creation +++ if (!sourceMapIsValid) { +++ if (ignoredCasesForBasicValidity.includes(name)) +++ return; +++ +++ let thrownDuringParse = false; +++ try { +++ const sourceMap = new SDK.SourceMap.SourceMap( +++ baseFile as Platform.DevToolsPath.UrlString, +++ sourceMapFile as Platform.DevToolsPath.UrlString, +++ sourceMapContent); +++ sourceMap.mappings(); +++ } catch { +++ thrownDuringParse = true; +++ } +++ assert.equal( +++ thrownDuringParse || consoleErrorSpy.calledWith("Failed to parse source map"), +++ true, +++ `${name}: expected invalid source map to fail to load` +++ ); +++ +++ return; +++ } +++ +++ // 3) check if a valid sourcemap can be parsed and a SourceMap instance created +++ const baseFileUrl = baseFile as Platform.DevToolsPath.UrlString; +++ const sourceMapFileUrl = sourceMapFile as Platform.DevToolsPath.UrlString; +++ +++ assert.doesNotThrow( +++ () => parseSourceMap(JSON.stringify(sourceMapContent)), +++ undefined, +++ undefined, +++ `${name}: expected valid source map to parse` +++ ); +++ assert.doesNotThrow(() => new SDK.SourceMap.SourceMap( +++ baseFileUrl, +++ sourceMapFileUrl, +++ sourceMapContent +++ ), undefined, undefined, `${name}: expected valid source map to parse`); +++ +++ // 4) check if the mappings are valid +++ const sourceMap = new SDK.SourceMap.SourceMap( +++ baseFileUrl, +++ sourceMapFileUrl, +++ sourceMapContent); +++ +++ assert.doesNotThrow(() => sourceMap.findEntry(1, 1)); +++ +++ if (testActions !== undefined) { +++ testActions.forEach(({ +++ actionType, +++ originalSource, +++ originalLine, +++ originalColumn, +++ generatedLine, +++ generatedColumn, +++ intermediateMaps +++ }) => { +++ +++ if (actionType === "checkMapping" && sourceMapIsValid) { +++ // 4a) check if the mappings are valid for regular sourcemaps +++ // extract to separate function +++ let actual = sourceMap.findEntry(generatedLine, generatedColumn); +++ assertNotNullOrUndefined(actual); +++ +++ assert.strictEqual(nullish(actual.sourceURL), originalSource, 'unexpected source URL'); +++ assert.strictEqual(nullish(actual.sourceLineNumber), originalLine, 'unexpected source line number'); +++ assert.strictEqual(nullish(actual.sourceColumnNumber), originalColumn, 'unexpected source column number'); +++ } +++ }); +++ } +++ }); +++ }); +++}); +++ +++async function loadTestCasesFromFixture(filename: string): Promise<TestSpec[]> { +++ const testSpec = await getFixtureFileContents<{ tests: TestSpec[] }>(filename); +++ return testSpec?.tests ?? []; +++}; +++ +++async function loadSourceMapFromFixture(filename: string): Promise<SourceMapV3> { +++ return getFixtureFileContents<SourceMapV3>(filename); +++}; +++ +++async function getFixtureFileContents<T>(filename: string): +++ Promise<T> { +++ const url = new URL(`/front_end/core/sdk/fixtures/sourcemaps/${filename}`, window.location.origin); +++ +++ const response = await fetch(url); +++ +++ if (response.status !== 200) { +++ throw new Error(`Unable to load ${url}`); +++ } +++ +++ const contentType = response.headers.get('content-type'); +++ const isGzipEncoded = contentType !== null && contentType.includes('gzip'); +++ let buffer = await response.arrayBuffer(); +++ +++ const decoder = new TextDecoder('utf-8'); +++ const contents = JSON.parse(decoder.decode(buffer)) as T; +++ return contents; +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn b/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn ++new file mode 100644 ++index 0000000000..a82b09a02d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/BUILD.gn ++@@ -0,0 +1,202 @@ +++# Copyright 2022 The Chromium Authors. All rights reserved. +++# Use of this source code is governed by a BSD-style license that can be +++# found in the LICENSE file. +++ +++import("../../../../../scripts/build/ninja/copy.gni") +++ +++copy_to_gen("sourcemaps") { +++ sources = [ +++ "basic-mapping-as-index-map.js", +++ "basic-mapping-as-index-map.js.map", +++ "basic-mapping-original.js", +++ "basic-mapping.js", +++ "basic-mapping.js.map", +++ "file-not-a-string-1.js", +++ "file-not-a-string-1.js.map", +++ "file-not-a-string-2.js", +++ "file-not-a-string-2.js.map", +++ "ignore-list-empty.js", +++ "ignore-list-empty.js.map", +++ "ignore-list-out-of-bounds.js", +++ "ignore-list-out-of-bounds.js.map", +++ "ignore-list-valid-1.js", +++ "ignore-list-valid-1.js.map", +++ "ignore-list-wrong-type-1.js", +++ "ignore-list-wrong-type-1.js.map", +++ "ignore-list-wrong-type-2.js", +++ "ignore-list-wrong-type-2.js.map", +++ "ignore-list-wrong-type-3.js", +++ "ignore-list-wrong-type-3.js.map", +++ "index-map-empty-sections.js", +++ "index-map-empty-sections.js.map", +++ "index-map-file-wrong-type-1.js", +++ "index-map-file-wrong-type-1.js.map", +++ "index-map-file-wrong-type-2.js", +++ "index-map-file-wrong-type-2.js.map", +++ "index-map-invalid-base-mappings.js", +++ "index-map-invalid-base-mappings.js.map", +++ "index-map-invalid-order.js", +++ "index-map-invalid-order.js.map", +++ "index-map-invalid-overlap.js", +++ "index-map-invalid-overlap.js.map", +++ "index-map-invalid-sub-map.js", +++ "index-map-invalid-sub-map.js.map", +++ "index-map-missing-file.js", +++ "index-map-missing-file.js.map", +++ "index-map-missing-map.js", +++ "index-map-missing-map.js.map", +++ "index-map-missing-offset-column.js", +++ "index-map-missing-offset-column.js.map", +++ "index-map-missing-offset-line.js", +++ "index-map-missing-offset-line.js.map", +++ "index-map-missing-offset.js", +++ "index-map-missing-offset.js.map", +++ "index-map-offset-column-wrong-type.js", +++ "index-map-offset-column-wrong-type.js.map", +++ "index-map-offset-line-wrong-type.js", +++ "index-map-offset-line-wrong-type.js.map", +++ "index-map-two-concatenated-sources.js", +++ "index-map-two-concatenated-sources.js.map", +++ "index-map-wrong-type-map.js", +++ "index-map-wrong-type-map.js.map", +++ "index-map-wrong-type-offset.js", +++ "index-map-wrong-type-offset.js.map", +++ "index-map-wrong-type-sections.js", +++ "index-map-wrong-type-sections.js.map", +++ "invalid-mapping-bad-separator.js", +++ "invalid-mapping-bad-separator.js.map", +++ "invalid-mapping-not-a-string-1.js", +++ "invalid-mapping-not-a-string-1.js.map", +++ "invalid-mapping-not-a-string-2.js", +++ "invalid-mapping-not-a-string-2.js.map", +++ "invalid-mapping-segment-column-too-large.js", +++ "invalid-mapping-segment-column-too-large.js.map", +++ "invalid-mapping-segment-name-index-out-of-bounds.js", +++ "invalid-mapping-segment-name-index-out-of-bounds.js.map", +++ "invalid-mapping-segment-name-index-too-large.js", +++ "invalid-mapping-segment-name-index-too-large.js.map", +++ "invalid-mapping-segment-negative-column.js", +++ "invalid-mapping-segment-negative-column.js.map", +++ "invalid-mapping-segment-negative-name-index.js", +++ "invalid-mapping-segment-negative-name-index.js.map", +++ "invalid-mapping-segment-negative-original-column.js", +++ "invalid-mapping-segment-negative-original-column.js.map", +++ "invalid-mapping-segment-negative-original-line.js", +++ "invalid-mapping-segment-negative-original-line.js.map", +++ "invalid-mapping-segment-negative-relative-column.js", +++ "invalid-mapping-segment-negative-relative-column.js.map", +++ "invalid-mapping-segment-negative-relative-name-index.js", +++ "invalid-mapping-segment-negative-relative-name-index.js.map", +++ "invalid-mapping-segment-negative-relative-original-column.js", +++ "invalid-mapping-segment-negative-relative-original-column.js.map", +++ "invalid-mapping-segment-negative-relative-original-line.js", +++ "invalid-mapping-segment-negative-relative-original-line.js.map", +++ "invalid-mapping-segment-negative-relative-source-index.js", +++ "invalid-mapping-segment-negative-relative-source-index.js.map", +++ "invalid-mapping-segment-negative-source-index.js", +++ "invalid-mapping-segment-negative-source-index.js.map", +++ "invalid-mapping-segment-original-column-too-large.js", +++ "invalid-mapping-segment-original-column-too-large.js.map", +++ "invalid-mapping-segment-original-line-too-large.js", +++ "invalid-mapping-segment-original-line-too-large.js.map", +++ "invalid-mapping-segment-source-index-out-of-bounds.js", +++ "invalid-mapping-segment-source-index-out-of-bounds.js.map", +++ "invalid-mapping-segment-source-index-too-large.js", +++ "invalid-mapping-segment-source-index-too-large.js.map", +++ "invalid-mapping-segment-with-three-fields.js", +++ "invalid-mapping-segment-with-three-fields.js.map", +++ "invalid-mapping-segment-with-two-fields.js", +++ "invalid-mapping-segment-with-two-fields.js.map", +++ "invalid-mapping-segment-with-zero-fields.js", +++ "invalid-mapping-segment-with-zero-fields.js.map", +++ "invalid-vlq-missing-continuation.js", +++ "invalid-vlq-missing-continuation.js.map", +++ "invalid-vlq-non-base64-char.js", +++ "invalid-vlq-non-base64-char.js.map", +++ "mapping-semantics-column-reset.js", +++ "mapping-semantics-column-reset.js.map", +++ "mapping-semantics-five-field-segment.js", +++ "mapping-semantics-five-field-segment.js.map", +++ "mapping-semantics-four-field-segment.js", +++ "mapping-semantics-four-field-segment.js.map", +++ "mapping-semantics-relative-1.js", +++ "mapping-semantics-relative-1.js.map", +++ "mapping-semantics-relative-2.js", +++ "mapping-semantics-relative-2.js.map", +++ "mapping-semantics-single-field-segment.js", +++ "mapping-semantics-single-field-segment.js.map", +++ "names-missing.js", +++ "names-missing.js.map", +++ "names-not-a-list-1.js", +++ "names-not-a-list-1.js.map", +++ "names-not-a-list-2.js", +++ "names-not-a-list-2.js.map", +++ "names-not-string.js", +++ "names-not-string.js.map", +++ "second-source-original.js", +++ "source-map-spec-tests.json", +++ "source-resolution-absolute-url.js", +++ "source-resolution-absolute-url.js.map", +++ "source-resolution-relative-url.js", +++ "source-resolution-relative-url.js.map", +++ "source-root-not-a-string-1.js", +++ "source-root-not-a-string-1.js.map", +++ "source-root-not-a-string-2.js", +++ "source-root-not-a-string-2.js.map", +++ "source-root-resolution.js", +++ "source-root-resolution.js.map", +++ "sources-and-sources-content-both-null.js", +++ "sources-and-sources-content-both-null.js.map", +++ "sources-missing.js", +++ "sources-missing.js.map", +++ "sources-non-null-sources-content-null.js", +++ "sources-non-null-sources-content-null.js.map", +++ "sources-not-a-list-1.js", +++ "sources-not-a-list-1.js.map", +++ "sources-not-a-list-2.js", +++ "sources-not-a-list-2.js.map", +++ "sources-not-string-or-null.js", +++ "sources-not-string-or-null.js.map", +++ "sources-null-sources-content-non-null.js", +++ "sources-null-sources-content-non-null.js.map", +++ "transitive-mapping-original.js", +++ "transitive-mapping-original.js.map", +++ "transitive-mapping-three-steps.js", +++ "transitive-mapping-three-steps.js.map", +++ "transitive-mapping.js", +++ "transitive-mapping.js.map", +++ "typescript-original.ts", +++ "unrecognized-property.js", +++ "unrecognized-property.js.map", +++ "valid-mapping-boundary-values.js", +++ "valid-mapping-boundary-values.js.map", +++ "valid-mapping-empty-groups.js", +++ "valid-mapping-empty-groups.js.map", +++ "valid-mapping-empty-string.js", +++ "valid-mapping-empty-string.js.map", +++ "valid-mapping-large-vlq.js", +++ "valid-mapping-large-vlq.js.map", +++ "valid-mapping-null-sources.js", +++ "valid-mapping-null-sources.js.map", +++ "version-missing.js", +++ "version-missing.js.map", +++ "version-not-a-number.js", +++ "version-not-a-number.js.map", +++ "version-numeric-string.js", +++ "version-numeric-string.js.map", +++ "version-too-high.js", +++ "version-too-high.js.map", +++ "version-too-low.js", +++ "version-too-low.js.map", +++ "version-valid.js", +++ "version-valid.js.map", +++ "vlq-valid-continuation-bit-present-1.js", +++ "vlq-valid-continuation-bit-present-1.js.map", +++ "vlq-valid-continuation-bit-present-2.js", +++ "vlq-valid-continuation-bit-present-2.js.map", +++ "vlq-valid-negative-digit.js", +++ "vlq-valid-negative-digit.js.map", +++ "vlq-valid-single-digit.js", +++ "vlq-valid-single-digit.js.map", +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js ++new file mode 100644 ++index 0000000000..b9fae38043 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=basic-mapping-as-index-map.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map ++new file mode 100644 ++index 0000000000..c0ad870ed2 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-as-index-map.js.map ++@@ -0,0 +1,15 @@ +++{ +++ "version": 3, +++ "file": "basic-mapping-as-index-map.js", +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js ++new file mode 100644 ++index 0000000000..301b186cb1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping-original.js ++@@ -0,0 +1,8 @@ +++function foo() { +++ return 42; +++} +++function bar() { +++ return 24; +++} +++foo(); +++bar(); ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js ++new file mode 100644 ++index 0000000000..2e479a4175 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=basic-mapping.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map ++new file mode 100644 ++index 0000000000..12dc9679a4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/basic-mapping.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version":3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js ++new file mode 100644 ++index 0000000000..385a5c3501 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-empty.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map ++new file mode 100644 ++index 0000000000..7297863a9b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-empty.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": [] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js ++new file mode 100644 ++index 0000000000..7a0fbb8833 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-out-of-bounds.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map ++new file mode 100644 ++index 0000000000..fb2566bb41 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-out-of-bounds.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": [1] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js ++new file mode 100644 ++index 0000000000..ea64a5565a ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-valid-1.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map ++new file mode 100644 ++index 0000000000..98eebdf7f6 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-valid-1.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": [0] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js ++new file mode 100644 ++index 0000000000..8b40bd3847 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-wrong-type-1.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map ++new file mode 100644 ++index 0000000000..688740aba8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-1.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": ["not a number"] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js ++new file mode 100644 ++index 0000000000..35c7791164 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-wrong-type-2.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map ++new file mode 100644 ++index 0000000000..ca1d30de2d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-2.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": ["0"] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js ++new file mode 100644 ++index 0000000000..8735d41758 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=ignore-list-wrong-type-3.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map ++new file mode 100644 ++index 0000000000..1ac167d56c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/ignore-list-wrong-type-3.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "", +++ "names": [], +++ "ignoreList": 0 +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js ++new file mode 100644 ++index 0000000000..e90bef083c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-invalid-base-mappings.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map ++new file mode 100644 ++index 0000000000..b489c1f080 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-base-mappings.js.map ++@@ -0,0 +1,15 @@ +++{ +++ "version": 3, +++ "mappings": "AAAA", +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js ++new file mode 100644 ++index 0000000000..263fa3c6e0 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-invalid-order.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map ++new file mode 100644 ++index 0000000000..82da69df72 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-order.js.map ++@@ -0,0 +1,23 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 1, "column": 4 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ }, +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js ++new file mode 100644 ++index 0000000000..9aff8dc620 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-invalid-overlap.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map ++new file mode 100644 ++index 0000000000..8d42546fd8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-invalid-overlap.js.map ++@@ -0,0 +1,23 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ }, +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js ++new file mode 100644 ++index 0000000000..86c8e9a253 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-missing-map.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map ++new file mode 100644 ++index 0000000000..3bce47e852 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-map.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js ++new file mode 100644 ++index 0000000000..fe6917403f ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-missing-offset-column.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map ++new file mode 100644 ++index 0000000000..aa48bbb993 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-column.js.map ++@@ -0,0 +1,14 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js ++new file mode 100644 ++index 0000000000..ba8614e412 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-missing-offset-line.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map ++new file mode 100644 ++index 0000000000..3d60444ea7 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset-line.js.map ++@@ -0,0 +1,14 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js ++new file mode 100644 ++index 0000000000..9ca2cf3fb5 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-missing-offset.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map ++new file mode 100644 ++index 0000000000..7285138bf5 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-missing-offset.js.map ++@@ -0,0 +1,13 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js ++new file mode 100644 ++index 0000000000..ed1e9ec5d5 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-offset-column-wrong-type.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map ++new file mode 100644 ++index 0000000000..b43e79a9dd ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-column-wrong-type.js.map ++@@ -0,0 +1,14 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": true }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js ++new file mode 100644 ++index 0000000000..d58f2aff99 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-offset-line-wrong-type.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map ++new file mode 100644 ++index 0000000000..81dbcd6ec4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-offset-line-wrong-type.js.map ++@@ -0,0 +1,14 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": true, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js ++new file mode 100644 ++index 0000000000..b8702d7187 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar();function baz(){return"baz"}baz(); +++//# sourceMappingURL=index-map-two-concatenated-sources.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map ++new file mode 100644 ++index 0000000000..f67f5de3c5 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-two-concatenated-sources.js.map ++@@ -0,0 +1,24 @@ +++{ +++ "version": 3, +++ "file": "index-map-two-concatenated-sources.js", +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +++ } +++ }, +++ { +++ "offset": { "line": 0, "column": 62 }, +++ "map": { +++ "version": 3, +++ "names": ["baz"], +++ "sources": ["second-source-original.js"], +++ "mappings":"AAAA,SAASA,MACP,MAAO,KACT,CACAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js ++new file mode 100644 ++index 0000000000..d31d6d6358 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-wrong-type-map.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map ++new file mode 100644 ++index 0000000000..0963f623d7 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-map.js.map ++@@ -0,0 +1,9 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": "not a map" +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js ++new file mode 100644 ++index 0000000000..048e1246f8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-wrong-type-offset.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map ++new file mode 100644 ++index 0000000000..fbc6e4e678 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-offset.js.map ++@@ -0,0 +1,14 @@ +++{ +++ "version": 3, +++ "sections": [ +++ { +++ "offset": "not an offset", +++ "map": { +++ "version": 3, +++ "names": [], +++ "sources": ["empty-original.js"], +++ "mappings": "AAAA" +++ } +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js ++new file mode 100644 ++index 0000000000..011eca806e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=index-map-wrong-type-sections.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map ++new file mode 100644 ++index 0000000000..dbfb4ead30 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/index-map-wrong-type-sections.js.map ++@@ -0,0 +1,4 @@ +++{ +++ "version": 3, +++ "sections": "not a sections list" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js ++new file mode 100644 ++index 0000000000..25338aca30 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-bad-separator.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map ++new file mode 100644 ++index 0000000000..5f4f5b9233 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-bad-separator.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAAA.SAASA:MACP" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js ++new file mode 100644 ++index 0000000000..cb38e2fe9d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-not-a-string-1.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map ++new file mode 100644 ++index 0000000000..5bf3e2a9d8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-1.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-not-a-string-1.js", +++ "sources": ["empty-original.js"], +++ "mappings": 5 +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js ++new file mode 100644 ++index 0000000000..3d84abd6c6 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-not-a-string-2.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map ++new file mode 100644 ++index 0000000000..4527e7f764 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-not-a-string-2.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-not-a-string-2.js", +++ "sources": ["empty-original.js"], +++ "mappings": [1, 2, 3, 4] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js ++new file mode 100644 ++index 0000000000..55591f874b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-column-too-large.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map ++new file mode 100644 ++index 0000000000..b4c059e015 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-column-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-column-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "ggggggE" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js ++new file mode 100644 ++index 0000000000..2a6b434eff ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-name-index-out-of-bounds.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map ++new file mode 100644 ++index 0000000000..8dd2ea6c2d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-out-of-bounds.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "file": "invalid-mapping-segment-name-index-out-of-bounds.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAC" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js ++new file mode 100644 ++index 0000000000..709e34dbd3 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-name-index-too-large.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map ++new file mode 100644 ++index 0000000000..c7bf5b98d1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-name-index-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-name-index-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAggggggE" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js ++new file mode 100644 ++index 0000000000..a202152d6f ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-column.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map ++new file mode 100644 ++index 0000000000..403878bfa4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-column.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-column.js", +++ "sources": ["empty-original.js"], +++ "mappings": "F" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js ++new file mode 100644 ++index 0000000000..3e3f634204 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-name-index.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map ++new file mode 100644 ++index 0000000000..b94f63646e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-name-index.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-name-index.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAF" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js ++new file mode 100644 ++index 0000000000..f21d5342b3 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-original-column.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map ++new file mode 100644 ++index 0000000000..011c639d3f ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-column.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-original-column.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAF" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js ++new file mode 100644 ++index 0000000000..b37309601c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-original-line.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map ++new file mode 100644 ++index 0000000000..e7ec993eeb ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-original-line.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-original-line.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAFA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js ++new file mode 100644 ++index 0000000000..94b835d687 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-relative-column.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map ++new file mode 100644 ++index 0000000000..414884072b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-column.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-relative-column.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "C,F" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js ++new file mode 100644 ++index 0000000000..c965c5f011 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-relative-name-index.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map ++new file mode 100644 ++index 0000000000..1fbbcfcd32 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-name-index.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-relative-name-index.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "AAAAC,AAAAF" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js ++new file mode 100644 ++index 0000000000..493a6ec88a ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-column.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map ++new file mode 100644 ++index 0000000000..7e62895651 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-column.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-relative-original-column.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "AAAC,AAAF" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js ++new file mode 100644 ++index 0000000000..ca8329fb98 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-line.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map ++new file mode 100644 ++index 0000000000..86b0fb3a04 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-original-line.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-relative-original-line.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "AACA,AAFA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js ++new file mode 100644 ++index 0000000000..fa92225b09 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-relative-source-index.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map ++new file mode 100644 ++index 0000000000..2efeb047db ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-relative-source-index.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-relative-source-index.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": "ACAA,AFAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js ++new file mode 100644 ++index 0000000000..6e05849b6a ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-source-index.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map ++new file mode 100644 ++index 0000000000..596c2f298b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-negative-source-index.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-source-index.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AFAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js ++new file mode 100644 ++index 0000000000..0936ed7ea8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-original-column-too-large.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map ++new file mode 100644 ++index 0000000000..ff2103fe24 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-column-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-original-column-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAggggggE" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js ++new file mode 100644 ++index 0000000000..9b3aa5a361 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-original-line-too-large.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map ++new file mode 100644 ++index 0000000000..890f1c71fc ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-original-line-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-original-line-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAggggggEA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js ++new file mode 100644 ++index 0000000000..2e5fbca268 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-source-index-out-of-bounds.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map ++new file mode 100644 ++index 0000000000..86dedb114f ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-out-of-bounds.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-source-index-out-of-bounds.js", +++ "sources": ["empty-original.js"], +++ "mappings": "ACAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js ++new file mode 100644 ++index 0000000000..3f4943e127 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-source-index-too-large.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map ++new file mode 100644 ++index 0000000000..e9f858c6e1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-source-index-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-source-index-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AggggggEAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js ++new file mode 100644 ++index 0000000000..4b868fac9c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-segment-with-three-fields.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map ++new file mode 100644 ++index 0000000000..c2af1165ad ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-three-fields.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js ++new file mode 100644 ++index 0000000000..96045a7a11 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-segment-with-two-fields.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map ++new file mode 100644 ++index 0000000000..73cf00fa1c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-two-fields.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js ++new file mode 100644 ++index 0000000000..9d5332a56c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-with-zero-fields.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map ++new file mode 100644 ++index 0000000000..5a34d25b64 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-mapping-segment-with-zero-fields.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-with-zero-fields.js", +++ "sources": ["empty-original.js"], +++ "mappings": ",,,," +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js ++new file mode 100644 ++index 0000000000..2c2a0090ac ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-vlq-missing-continuation.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map ++new file mode 100644 ++index 0000000000..dd0e363ff4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-missing-continuation.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "g" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js ++new file mode 100644 ++index 0000000000..d1b20b41a2 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-vlq-non-base64-char.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map ++new file mode 100644 ++index 0000000000..4fa1ac5768 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/invalid-vlq-non-base64-char.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "A$%?!" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-missing.js b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js ++new file mode 100644 ++index 0000000000..58781fd887 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-missing.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map ++new file mode 100644 ++index 0000000000..82170bf784 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-missing.js.map ++@@ -0,0 +1,5 @@ +++{ +++ "version" : 3, +++ "sources": ["empty-original.js"], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js ++new file mode 100644 ++index 0000000000..dc65f1972b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-not-a-list-1.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map ++new file mode 100644 ++index 0000000000..fe1edaeb96 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-1.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": ["source.js"], +++ "names": "not a list", +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js ++new file mode 100644 ++index 0000000000..d7251f78da ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-not-a-list-2.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map ++new file mode 100644 ++index 0000000000..3388d2bb71 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-a-list-2.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": ["source.js"], +++ "names": { "foo": 3 }, +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js ++new file mode 100644 ++index 0000000000..8dc7b4811a ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-not-string.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map ++new file mode 100644 ++index 0000000000..c0feb0739a ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/names-not-string.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": ["source.js"], +++ "names": [null, 3, true, false, {}, []], +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js b/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js ++new file mode 100644 ++index 0000000000..c339bc9d15 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/second-source-original.js ++@@ -0,0 +1,4 @@ +++function baz() { +++ return "baz"; +++} +++baz(); ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json b/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json ++new file mode 100644 ++index 0000000000..0f7a3c1cb1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/source-map-spec-tests.json ++@@ -0,0 +1,1540 @@ +++{ +++ "tests": [ +++ { +++ "name": "versionValid", +++ "description": "Test a simple source map with a valid version number", +++ "baseFile": "version-valid.js", +++ "sourceMapFile": "version-valid.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "versionMissing", +++ "description": "Test a source map that is missing a version field", +++ "baseFile": "version-missing.js", +++ "sourceMapFile": "version-missing.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionNotANumber", +++ "description": "Test a source map with a version field that is not a number", +++ "baseFile": "version-not-a-number.js", +++ "sourceMapFile": "version-not-a-number.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionNumericString", +++ "description": "Test a source map with a version field that is a number as a string", +++ "baseFile": "version-numeric-string.js", +++ "sourceMapFile": "version-numeric-string.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooHigh", +++ "description": "Test a source map with an integer version field that is too high", +++ "baseFile": "version-too-high.js", +++ "sourceMapFile": "version-too-high.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooLow", +++ "description": "Test a source map with an integer version field that is too low", +++ "baseFile": "version-too-low.js", +++ "sourceMapFile": "version-too-low.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesMissing", +++ "description": "Test a source map that is missing a necessary sources field", +++ "baseFile": "sources-missing.js", +++ "sourceMapFile": "sources-missing.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesNotAList1", +++ "description": "Test a source map with a sources field that is not a valid list (string)", +++ "baseFile": "sources-not-a-list-1.js", +++ "sourceMapFile": "sources-not-a-list-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesNotAList2", +++ "description": "Test a source map with a sources field that is not a valid list (object)", +++ "baseFile": "sources-not-a-list-2.js", +++ "sourceMapFile": "sources-not-a-list-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesNotStringOrNull", +++ "description": "Test a source map with a sources list that has non-string and non-null items", +++ "baseFile": "sources-not-string-or-null.js", +++ "sourceMapFile": "sources-not-string-or-null.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesAndSourcesContentBothNull", +++ "description": "Test a source map that has both null sources and sourcesContent entries", +++ "baseFile": "sources-and-sources-content-both-null.js", +++ "sourceMapFile": "sources-and-sources-content-both-null.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "fileNotAString1", +++ "description": "Test a source map with a file field that is not a valid string", +++ "baseFile": "file-not-a-string-1.js", +++ "sourceMapFile": "file-not-a-string-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "fileNotAString2", +++ "description": "Test a source map with a file field that is not a valid string", +++ "baseFile": "file-not-a-string-2.js", +++ "sourceMapFile": "file-not-a-string-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourceRootNotAString1", +++ "description": "Test a source map with a sourceRoot field that is not a valid string", +++ "baseFile": "source-root-not-a-string-1.js", +++ "sourceMapFile": "source-root-not-a-string-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourceRootNotAString2", +++ "description": "Test a source map with a sourceRoot field that is not a valid string", +++ "baseFile": "source-root-not-a-string-2.js", +++ "sourceMapFile": "source-root-not-a-string-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesMissing", +++ "description": "Test a source map that is missing a necessary names field", +++ "baseFile": "names-missing.js", +++ "sourceMapFile": "names-missing.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesNotAList1", +++ "description": "Test a source map with a names field that is not a valid list (string)", +++ "baseFile": "names-not-a-list-1.js", +++ "sourceMapFile": "names-not-a-list-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesNotAList2", +++ "description": "Test a source map with a names field that is not a valid list (object)", +++ "baseFile": "names-not-a-list-2.js", +++ "sourceMapFile": "names-not-a-list-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesNotString", +++ "description": "Test a source map with a names list that has non-string items", +++ "baseFile": "names-not-string.js", +++ "sourceMapFile": "names-not-string.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "ignoreListEmpty", +++ "description": "Test a source map with an ignore list that has no items", +++ "baseFile": "ignore-list-empty.js", +++ "sourceMapFile": "ignore-list-empty.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "ignoreListValid1", +++ "description": "Test a source map with a simple valid ignore list", +++ "baseFile": "ignore-list-valid-1.js", +++ "sourceMapFile": "ignore-list-valid-1.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkIgnoreList", +++ "present": ["empty-original.js"] +++ } +++ ] +++ }, +++ { +++ "name": "ignoreListWrongType1", +++ "description": "Test a source map with an ignore list with the wrong type of items", +++ "baseFile": "ignore-list-wrong-type-1.js", +++ "sourceMapFile": "ignore-list-wrong-type-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "ignoreListWrongType2", +++ "description": "Test a source map with an ignore list with the wrong type of items", +++ "baseFile": "ignore-list-wrong-type-2.js", +++ "sourceMapFile": "ignore-list-wrong-type-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "ignoreListWrongType3", +++ "description": "Test a source map with an ignore list that is not a list", +++ "baseFile": "ignore-list-wrong-type-3.js", +++ "sourceMapFile": "ignore-list-wrong-type-3.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "ignoreListOutOfBounds", +++ "description": "Test a source map with an ignore list with an item with an out-of-bounds index", +++ "baseFile": "ignore-list-out-of-bounds.js", +++ "sourceMapFile": "ignore-list-out-of-bounds.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "unrecognizedProperty", +++ "description": "Test a source map that has an extra field not explicitly encoded in the spec", +++ "baseFile": "unrecognized-property.js", +++ "sourceMapFile": "unrecognized-property.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "invalidVLQDueToNonBase64Character", +++ "description": "Test a source map that has a mapping with an invalid non-base64 character", +++ "baseFile": "invalid-vlq-non-base64-char.js", +++ "sourceMapFile": "invalid-vlq-non-base64-char.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidVLQDueToMissingContinuationDigits", +++ "description": "Test a source map that has a mapping with an invalid VLQ that has a continuation bit but no continuing digits", +++ "baseFile": "invalid-vlq-missing-continuation.js", +++ "sourceMapFile": "invalid-vlq-missing-continuation.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingNotAString1", +++ "description": "Test a source map that has an invalid mapping that is not a string (number)", +++ "baseFile": "invalid-mapping-not-a-string-1.js", +++ "sourceMapFile": "invalid-mapping-not-a-string-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingNotAString2", +++ "description": "Test a source map that has an invalid mapping that is not a string (array)", +++ "baseFile": "invalid-mapping-not-a-string-2.js", +++ "sourceMapFile": "invalid-mapping-not-a-string-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentBadSeparator", +++ "description": "Test a source map that uses separator characters not recognized in the spec", +++ "baseFile": "invalid-mapping-bad-separator.js", +++ "sourceMapFile": "invalid-mapping-bad-separator.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithZeroFields", +++ "description": "Test a source map that has the wrong number (zero) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-zero-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-zero-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithTwoFields", +++ "description": "Test a source map that has the wrong number (two) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-two-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-two-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithThreeFields", +++ "description": "Test a source map that has the wrong number (three) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-three-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-three-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithSourceIndexOutOfBounds", +++ "description": "Test a source map that has a source index field that is out of bounds of the sources field", +++ "baseFile": "invalid-mapping-segment-source-index-out-of-bounds.js", +++ "sourceMapFile": "invalid-mapping-segment-source-index-out-of-bounds.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNameIndexOutOfBounds", +++ "description": "Test a source map that has a name index field that is out of bounds of the names field", +++ "baseFile": "invalid-mapping-segment-name-index-out-of-bounds.js", +++ "sourceMapFile": "invalid-mapping-segment-name-index-out-of-bounds.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeColumn", +++ "description": "Test a source map that has an invalid negative non-relative column field", +++ "baseFile": "invalid-mapping-segment-negative-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeSourceIndex", +++ "description": "Test a source map that has an invalid negative non-relative source index field", +++ "baseFile": "invalid-mapping-segment-negative-source-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-source-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeOriginalLine", +++ "description": "Test a source map that has an invalid negative non-relative original line field", +++ "baseFile": "invalid-mapping-segment-negative-original-line.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-original-line.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeOriginalColumn", +++ "description": "Test a source map that has an invalid negative non-relative original column field", +++ "baseFile": "invalid-mapping-segment-negative-original-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-original-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeNameIndex", +++ "description": "Test a source map that has an invalid negative non-relative name index field", +++ "baseFile": "invalid-mapping-segment-negative-name-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-name-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeRelativeColumn", +++ "description": "Test a source map that has an invalid negative relative column field", +++ "baseFile": "invalid-mapping-segment-negative-relative-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-relative-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeRelativeSourceIndex", +++ "description": "Test a source map that has an invalid negative relative source index field", +++ "baseFile": "invalid-mapping-segment-negative-relative-source-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-relative-source-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalLine", +++ "description": "Test a source map that has an invalid negative relative original line field", +++ "baseFile": "invalid-mapping-segment-negative-relative-original-line.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-line.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalColumn", +++ "description": "Test a source map that has an invalid negative relative original column field", +++ "baseFile": "invalid-mapping-segment-negative-relative-original-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeRelativeNameIndex", +++ "description": "Test a source map that has an invalid negative relative name index field", +++ "baseFile": "invalid-mapping-segment-negative-relative-name-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-relative-name-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithColumnExceeding32Bits", +++ "description": "Test a source map that has a column field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-column-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-column-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithSourceIndexExceeding32Bits", +++ "description": "Test a source map that has a source index field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-source-index-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-source-index-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithOriginalLineExceeding32Bits", +++ "description": "Test a source map that has a original line field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-original-line-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-original-line-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithOriginalColumnExceeding32Bits", +++ "description": "Test a source map that has an original column field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-original-column-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-original-column-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNameIndexExceeding32Bits", +++ "description": "Test a source map that has a name index field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-name-index-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-name-index-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "validMappingFieldsWith32BitMaxValues", +++ "description": "Test a source map that has segment fields with max values representable in 32 bits", +++ "baseFile": "valid-mapping-boundary-values.js", +++ "sourceMapFile": "valid-mapping-boundary-values.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "validMappingLargeVLQ", +++ "description": "Test a source map that has a segment field VLQ that is very long but within 32-bits", +++ "baseFile": "valid-mapping-large-vlq.js", +++ "sourceMapFile": "valid-mapping-large-vlq.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "validMappingEmptyGroups", +++ "description": "Test a source map with a mapping that has many empty groups", +++ "baseFile": "valid-mapping-empty-groups.js", +++ "sourceMapFile": "valid-mapping-empty-groups.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "validMappingEmptyString", +++ "description": "Test a source map with an empty string mapping", +++ "baseFile": "valid-mapping-empty-string.js", +++ "sourceMapFile": "valid-mapping-empty-string.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "indexMapWrongTypeSections", +++ "description": "Test an index map with a sections field with the wrong type", +++ "baseFile": "index-map-wrong-type-sections.js", +++ "sourceMapFile": "index-map-wrong-type-sections.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapWrongTypeOffset", +++ "description": "Test an index map with an offset field with the wrong type", +++ "baseFile": "index-map-wrong-type-offset.js", +++ "sourceMapFile": "index-map-wrong-type-offset.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapWrongTypeMap", +++ "description": "Test an index map with a map field with the wrong type", +++ "baseFile": "index-map-wrong-type-map.js", +++ "sourceMapFile": "index-map-wrong-type-map.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapInvalidBaseMappings", +++ "description": "Test that an index map cannot also have a regular mappings field", +++ "baseFile": "index-map-invalid-base-mappings.js", +++ "sourceMapFile": "index-map-invalid-base-mappings.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapInvalidOverlap", +++ "description": "Test that an invalid index map with multiple sections that overlap", +++ "baseFile": "index-map-invalid-overlap.js", +++ "sourceMapFile": "index-map-invalid-overlap.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapInvalidOrder", +++ "description": "Test that an invalid index map with multiple sections in the wrong order", +++ "baseFile": "index-map-invalid-order.js", +++ "sourceMapFile": "index-map-invalid-order.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapMissingMap", +++ "description": "Test that an index map that is missing a section map", +++ "baseFile": "index-map-missing-map.js", +++ "sourceMapFile": "index-map-missing-map.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapInvalidSubMap", +++ "description": "Test that an index map that has an invalid section map", +++ "baseFile": "index-map-invalid-sub-map.js", +++ "sourceMapFile": "index-map-invalid-sub-map.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapMissingOffset", +++ "description": "Test that an index map that is missing a section offset", +++ "baseFile": "index-map-missing-offset.js", +++ "sourceMapFile": "index-map-missing-offset.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapMissingOffsetLine", +++ "description": "Test that an index map that is missing a section offset's line field", +++ "baseFile": "index-map-missing-offset-line.js", +++ "sourceMapFile": "index-map-missing-offset-line.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapMissingOffsetColumn", +++ "description": "Test that an index map that is missing a section offset's column field", +++ "baseFile": "index-map-missing-offset-column.js", +++ "sourceMapFile": "index-map-missing-offset-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapOffsetLineWrongType", +++ "description": "Test that an index map that has an offset line field with the wrong type of value", +++ "baseFile": "index-map-offset-line-wrong-type.js", +++ "sourceMapFile": "index-map-offset-line-wrong-type.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapOffsetColumnWrongType", +++ "description": "Test that an index map that has an offset column field with the wrong type of value", +++ "baseFile": "index-map-offset-column-wrong-type.js", +++ "sourceMapFile": "index-map-offset-column-wrong-type.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapEmptySections", +++ "description": "Test a trivial index map with no sections", +++ "baseFile": "index-map-empty-sections.js", +++ "sourceMapFile": "index-map-empty-sections.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "indexMapFileWrongType1", +++ "description": "Test an index map with a file field with the wrong type", +++ "baseFile": "index-map-file-wrong-type-1.js", +++ "sourceMapFile": "index-map-file-wrong-type-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "indexMapFileWrongType2", +++ "description": "Test an index map with a file field with the wrong type", +++ "baseFile": "index-map-file-wrong-type-2.js", +++ "sourceMapFile": "index-map-file-wrong-type-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "basicMapping", +++ "description": "Test a simple source map that has several valid mappings", +++ "baseFile": "basic-mapping.js", +++ "sourceMapFile": "basic-mapping.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ } +++ ] +++ }, +++ { +++ "name": "sourceRootResolution", +++ "description": "Similar to basic mapping test, but test resoultion of sources with a sourceRoot field", +++ "baseFile": "source-root-resolution.js", +++ "sourceMapFile": "source-root-resolution.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "theroot/basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "theroot/basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ } +++ ] +++ }, +++ { +++ "name": "sourceResolutionAbsoluteURL", +++ "description": "Test resoultion of sources with absolute URLs", +++ "baseFile": "source-resolution-absolute-url.js", +++ "sourceMapFile": "source-resolution-absolute-url.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "/baz/quux/basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "/baz/quux/basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ } +++ ] +++ }, +++ { +++ "name": "basicMappingWithIndexMap", +++ "description": "Test a version of basic-mapping.js.map that is split into sections with an index map", +++ "baseFile": "basic-mapping-as-index-map.js", +++ "sourceMapFile": "basic-mapping-as-index-map.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ } +++ ] +++ }, +++ { +++ "name": "indexMapWithMissingFile", +++ "description": "Same as the basic mapping index map test but without the optional file field", +++ "baseFile": "index-map-missing-file.js", +++ "sourceMapFile": "index-map-missing-file.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ } +++ ] +++ }, +++ { +++ "name": "indexMapWithTwoConcatenatedSources", +++ "description": "Test an index map that has two sub-maps for concatenated sources", +++ "baseFile": "index-map-two-concatenated-sources.js", +++ "sourceMapFile": "index-map-two-concatenated-sources.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 62, +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 71, +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "baz" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 77, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 83, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 88, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "second-source-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 89, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": "baz" +++ } +++ ] +++ }, +++ { +++ "name": "sourcesNullSourcesContentNonNull", +++ "description": "Test a source map that has a null source but has a sourcesContent", +++ "baseFile": "sources-null-sources-content-non-null.js", +++ "sourceMapFile": "sources-null-sources-content-non-null.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": null, +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": null, +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ } +++ ] +++ }, +++ { +++ "name": "sourcesNonNullSourcesContentNull", +++ "description": "Test a source map that has a non-null source but has a null sourcesContent", +++ "baseFile": "sources-non-null-sources-content-null.js", +++ "sourceMapFile": "sources-non-null-sources-content-null.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ } +++ ] +++ }, +++ { +++ "name": "transitiveMapping", +++ "description": "Test a simple two-stage transitive mapping from a minified JS to a TypeScript source", +++ "baseFile": "transitive-mapping.js", +++ "sourceMapFile": "transitive-mapping.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 13, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 13, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 16, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 2, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 23, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 2, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 4, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 29, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping-original.js.map"], +++ "originalLine": 4, +++ "originalColumn": 4, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "transitiveMappingWithThreeSteps", +++ "description": "Test a three-stage transitive mapping from an un-minified JS to minified JS to a TypeScript source", +++ "baseFile": "transitive-mapping-three-steps.js", +++ "sourceMapFile": "transitive-mapping-three-steps.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 0, +++ "generatedColumn": 13, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 1, +++ "originalColumn": 13, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 1, +++ "generatedColumn": 4, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 2, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 1, +++ "generatedColumn": 11, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 2, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 2, +++ "generatedColumn": 0, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 4, +++ "generatedColumn": 0, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 4, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMappingTransitive", +++ "generatedLine": 4, +++ "generatedColumn": 4, +++ "originalSource": "typescript-original.ts", +++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], +++ "originalLine": 4, +++ "originalColumn": 4, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "vlqValidSingleDigit", +++ "description": "Test VLQ decoding for a single digit, no continuation VLQ", +++ "baseFile": "vlq-valid-single-digit.js", +++ "sourceMapFile": "vlq-valid-single-digit.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalSource": "vlq-valid-single-digit-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "vlqValidNegativeDigit", +++ "description": "Test VLQ decoding where there's a negative digit, no continuation bit", +++ "baseFile": "vlq-valid-negative-digit.js", +++ "sourceMapFile": "vlq-valid-negative-digit.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 2, +++ "generatedColumn": 15, +++ "originalSource": "vlq-valid-negative-digit-original.js", +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 2, +++ "generatedColumn": 2, +++ "originalSource": "vlq-valid-negative-digit-original.js", +++ "originalLine": 1, +++ "originalColumn": 1, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "vlqValidContinuationBitPresent1", +++ "description": "Test VLQ decoding where continuation bits are present (continuations are leading zero)", +++ "baseFile": "vlq-valid-continuation-bit-present-1.js", +++ "sourceMapFile": "vlq-valid-continuation-bit-present-1.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalSource": "vlq-valid-continuation-bit-present-1-original.js", +++ "originalLine": 0, +++ "originalColumn": 1, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "vlqValidContinuationBitPresent2", +++ "description": "Test VLQ decoding where continuation bits are present (continuations have non-zero bits)", +++ "baseFile": "vlq-valid-continuation-bit-present-2.js", +++ "sourceMapFile": "vlq-valid-continuation-bit-present-2.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 2, +++ "generatedColumn": 16, +++ "originalSource": "vlq-valid-continuation-bit-present-2-original.js", +++ "originalLine": 1, +++ "originalColumn": 1, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsSingleFieldSegment", +++ "description": "Test mapping semantics for a single field segment mapping", +++ "baseFile": "mapping-semantics-single-field-segment.js", +++ "sourceMapFile": "mapping-semantics-single-field-segment.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "mapping-semantics-single-field-segment-original.js", +++ "originalLine": 0, +++ "originalColumn": 1, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 2, +++ "originalSource": null, +++ "originalLine": null, +++ "originalColumn": null, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsFourFieldSegment", +++ "description": "Test mapping semantics for a four field segment mapping", +++ "baseFile": "mapping-semantics-four-field-segment.js", +++ "sourceMapFile": "mapping-semantics-four-field-segment.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-four-field-segment-original.js", +++ "originalLine": 2, +++ "originalColumn": 2, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsFiveFieldSegment", +++ "description": "Test mapping semantics for a five field segment mapping", +++ "baseFile": "mapping-semantics-five-field-segment.js", +++ "sourceMapFile": "mapping-semantics-five-field-segment.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-five-field-segment-original.js", +++ "originalLine": 2, +++ "originalColumn": 2, +++ "mappedName": "foo" +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsColumnReset", +++ "description": "Test that the generated column field resets to zero on new lines", +++ "baseFile": "mapping-semantics-column-reset.js", +++ "sourceMapFile": "mapping-semantics-column-reset.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-column-reset-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 1, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-column-reset-original.js", +++ "originalLine": 1, +++ "originalColumn": 0, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsRelative1", +++ "description": "Test that fields are calculated relative to previous ones", +++ "baseFile": "mapping-semantics-relative-1.js", +++ "sourceMapFile": "mapping-semantics-relative-1.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-relative-1-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 5, +++ "originalSource": "mapping-semantics-relative-1-original.js", +++ "originalLine": 0, +++ "originalColumn": 4, +++ "mappedName": null +++ } +++ ] +++ }, +++ { +++ "name": "mappingSemanticsRelative2", +++ "description": "Test that fields are calculated relative to previous ones, across lines", +++ "baseFile": "mapping-semantics-relative-2.js", +++ "sourceMapFile": "mapping-semantics-relative-2.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 1, +++ "originalSource": "mapping-semantics-relative-2-original.js", +++ "originalLine": 0, +++ "originalColumn": 2, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 1, +++ "generatedColumn": 2, +++ "originalSource": "mapping-semantics-relative-2-original.js", +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": "bar" +++ } +++ ] +++ } +++ ] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js ++new file mode 100644 ++index 0000000000..9263eba549 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-and-sources-content-both-null.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map ++new file mode 100644 ++index 0000000000..09a7c1f369 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-and-sources-content-both-null.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "sources": [null], +++ "sourcesContent": [null], +++ "mappings":"AAAA,SAASA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js ++new file mode 100644 ++index 0000000000..779b865e27 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-missing.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map ++new file mode 100644 ++index 0000000000..92aff4fb0e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-missing.js.map ++@@ -0,0 +1,5 @@ +++{ +++ "version" : 3, +++ "names": ["foo"], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js ++new file mode 100644 ++index 0000000000..939b568ba1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=sources-non-null-sources-content-null.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map ++new file mode 100644 ++index 0000000000..e573906b2d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-non-null-sources-content-null.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "sources": ["basic-mapping-original.js"], +++ "sourcesContent": [null], +++ "mappings":"AAAA,SAASA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js ++new file mode 100644 ++index 0000000000..7e33b7e867 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-not-a-list-1.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map ++new file mode 100644 ++index 0000000000..26330517b9 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-1.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": "not a list", +++ "names": ["foo"], +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js ++new file mode 100644 ++index 0000000000..4021f763fc ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-not-a-list-2.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map ++new file mode 100644 ++index 0000000000..2ed85962fd ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-a-list-2.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": { "source.js": 3 }, +++ "names": ["foo"], +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js ++new file mode 100644 ++index 0000000000..7dca97a1da ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-not-string-or-null.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map ++new file mode 100644 ++index 0000000000..db25561966 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-not-string-or-null.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [3, {}, true, false, []], +++ "names": ["foo"], +++ "mappings": "AAAAA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js ++new file mode 100644 ++index 0000000000..a760594ee9 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=sources-null-sources-content-non-null.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map ++new file mode 100644 ++index 0000000000..43af03903f ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/sources-null-sources-content-non-null.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version":3, +++ "names": ["foo"], +++ "sources": [null], +++ "sourcesContent": ["function foo()\n{ return 42; }\nfunction bar()\n { return 24; }\nfoo();\nbar();"], +++ "mappings":"AAAA,SAASA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js ++new file mode 100644 ++index 0000000000..0a96699d6e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js ++@@ -0,0 +1,5 @@ +++function foo(x) { +++ return x; +++} +++foo("foo"); +++//# sourceMappingURL=transitive-mapping-original.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map ++new file mode 100644 ++index 0000000000..65af25c1eb ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-original.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "file" : "transitive-mapping-original.js", +++ "sourceRoot": "", +++ "sources": ["typescript-original.ts"], +++ "names": [], +++ "mappings": "AACA,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AACD,GAAG,CAAC,KAAK,CAAC,CAAC" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js ++new file mode 100644 ++index 0000000000..fd956164d3 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js ++@@ -0,0 +1,6 @@ +++function foo(x) { +++ return x; +++} +++ +++foo("foo"); +++//# sourceMappingURL=transitive-mapping-three-steps.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map ++new file mode 100644 ++index 0000000000..90459d90f6 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping-three-steps.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "file": "transitive-mapping-three-steps.js", +++ "sources": ["transitive-mapping.js"], +++ "names": ["foo", "x"], +++ "mappings": "AAAA,SAASA,IAAIC;IAAG,OAAOA;AAAC;;AAACD,IAAI,KAAK" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js ++new file mode 100644 ++index 0000000000..183c027f1b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js ++@@ -0,0 +1,2 @@ +++function foo(x){return x}foo("foo"); +++//# sourceMappingURL=transitive-mapping.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map ++new file mode 100644 ++index 0000000000..d6a6fa6672 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/transitive-mapping.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","x"], +++ "sources": ["transitive-mapping-original.js"], +++ "mappings":"AAAA,SAASA,IAAIC,GACT,OAAOA,CACX,CACAD,IAAI" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts b/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts ++new file mode 100644 ++index 0000000000..cd51c01ba1 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/typescript-original.ts ++@@ -0,0 +1,5 @@ +++type FooArg = string | number; +++function foo(x : FooArg) { +++ return x; +++} +++foo("foo"); ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js ++new file mode 100644 ++index 0000000000..19dfb0e2e6 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=unrecognized-property.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map ++new file mode 100644 ++index 0000000000..40bee558a4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/unrecognized-property.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "", +++ "foobar": 42, +++ "unusedProperty": [1, 2, 3, 4] +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js ++new file mode 100644 ++index 0000000000..3c49709e05 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-boundary-values.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map ++new file mode 100644 ++index 0000000000..4dd836e63d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-boundary-values.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "file": "valid-mapping-boundary-values.js", +++ "sources": ["empty-original.js"], +++ "mappings": "+/////DA+/////D+/////DA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js ++new file mode 100644 ++index 0000000000..a2b767b619 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-empty-groups.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map ++new file mode 100644 ++index 0000000000..643c9ae784 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-empty-groups.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "valid-mapping-empty-groups.js", +++ "sources": ["empty-original.js"], +++ "sourcesContent": [""], +++ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js ++new file mode 100644 ++index 0000000000..b0cd897813 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-large-vlq.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map ++new file mode 100644 ++index 0000000000..76e18704c4 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-large-vlq.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": [], +++ "sources": ["valid-mapping-large-vlq.js"], +++ "mappings": "igggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js ++new file mode 100644 ++index 0000000000..ee2acf0f5b ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=valid-mapping-null-sources.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map ++new file mode 100644 ++index 0000000000..199cda9369 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/valid-mapping-null-sources.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version":3, +++ "names": ["foo"], +++ "sources": [null], +++ "mappings":"AAAA,SAASA" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-missing.js b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js ++new file mode 100644 ++index 0000000000..c32d1f1a1c ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-missing.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map ++new file mode 100644 ++index 0000000000..49d8ce766e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-missing.js.map ++@@ -0,0 +1,5 @@ +++{ +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js ++new file mode 100644 ++index 0000000000..ae2342e2ff ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-not-a-number.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map ++new file mode 100644 ++index 0000000000..a584d6e695 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-not-a-number.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3foo", +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js ++new file mode 100644 ++index 0000000000..a55170885d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-numeric-string.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map ++new file mode 100644 ++index 0000000000..dbe52a7d0d ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-numeric-string.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js ++new file mode 100644 ++index 0000000000..55f4e1a298 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-too-high.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map ++new file mode 100644 ++index 0000000000..ee23be32ff ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-high.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 4, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js ++new file mode 100644 ++index 0000000000..d9642920b3 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-too-low.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map ++new file mode 100644 ++index 0000000000..64ca7a6e2e ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-too-low.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 2, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-valid.js b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js ++new file mode 100644 ++index 0000000000..82d0bfa1eb ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-valid.js.map ++diff --git a/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map ++new file mode 100644 ++index 0000000000..1a163052d8 ++--- /dev/null +++++ b/front_end/core/sdk/fixtures/sourcemaps/version-valid.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++-- ++2.39.2 ++ +diff --git a/LayoutTests/imported/tg4/source-map-tests/chrome/0002-Add-reverse-mapping-code-to-test.patch b/LayoutTests/imported/tg4/source-map-tests/chrome/0002-Add-reverse-mapping-code-to-test.patch +new file mode 100644 +index 000000000000..dc08ba5fadb4 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/chrome/0002-Add-reverse-mapping-code-to-test.patch +@@ -0,0 +1,46 @@ ++From bebeda0b8133fc8f44382e59edda9203c980e8f3 Mon Sep 17 00:00:00 2001 ++From: Asumu Takikawa <asumu@igalia.com> ++Date: Thu, 11 Jul 2024 16:44:29 -0700 ++Subject: [PATCH 2/2] Add reverse mapping code to test ++ ++--- ++ front_end/core/sdk/SourceMapSpec.test.ts | 16 +++++++++++++++- ++ 1 file changed, 15 insertions(+), 1 deletion(-) ++ ++diff --git a/front_end/core/sdk/SourceMapSpec.test.ts b/front_end/core/sdk/SourceMapSpec.test.ts ++index 93b26a2e13..402b82e4c0 100644 ++--- a/front_end/core/sdk/SourceMapSpec.test.ts +++++ b/front_end/core/sdk/SourceMapSpec.test.ts ++@@ -12,7 +12,6 @@ ++ ++ **/ ++ ++-const {assert} = chai; ++ import type * as Platform from '../platform/platform.js'; ++ import {assertNotNullOrUndefined} from '../platform/platform.js'; ++ import { SourceMapV3, parseSourceMap } from './SourceMap.js'; ++@@ -170,6 +169,21 @@ describeWithEnvironment('SourceMapSpec', () => { ++ assert.strictEqual(nullish(actual.sourceURL), originalSource, 'unexpected source URL'); ++ assert.strictEqual(nullish(actual.sourceLineNumber), originalLine, 'unexpected source line number'); ++ assert.strictEqual(nullish(actual.sourceColumnNumber), originalColumn, 'unexpected source column number'); +++ +++ if (originalSource != null) { +++ let reverseEntries = sourceMap.findReverseEntries( +++ originalSource as Platform.DevToolsPath.UrlString, +++ originalLine, +++ originalColumn +++ ); +++ +++ const anyEntryMatched = reverseEntries.some((entry) => { +++ return entry.sourceURL === originalSource && +++ entry.sourceLineNumber === originalLine && +++ entry.sourceColumnNumber === originalColumn; +++ }); +++ assert.isTrue(anyEntryMatched, `expected any matching reverse lookup entry, got none`); +++ } ++ } ++ }); ++ } ++-- ++2.39.2 ++ +diff --git a/LayoutTests/imported/tg4/source-map-tests/firefox/0001-WIP-Firefox-source-map-spec-tests.patch b/LayoutTests/imported/tg4/source-map-tests/firefox/0001-WIP-Firefox-source-map-spec-tests.patch +new file mode 100644 +index 000000000000..a9e256e02f8a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/firefox/0001-WIP-Firefox-source-map-spec-tests.patch +@@ -0,0 +1,337 @@ ++From 8327515870d595ab04a111f6c37b84eab8a5010c Mon Sep 17 00:00:00 2001 ++From: Asumu Takikawa <asumu@igalia.com> ++Date: Tue, 27 Feb 2024 18:22:45 -0800 ++Subject: [PATCH] WIP Firefox source map spec tests ++ ++--- ++ .../test/browser/browser.toml | 2 + ++ .../test/browser/browser_spec-source-map.js | 68 +++++++++++++++++++ ++ .../fixtures/basic-mapping-original.js | 8 +++ ++ .../test/browser/fixtures/basic-mapping.js | 1 + ++ .../browser/fixtures/basic-mapping.js.map | 6 ++ ++ .../fixtures/source-map-spec-tests.json | 60 ++++++++++++++++ ++ .../browser/fixtures/unrecognized-property.js | 1 + ++ .../fixtures/unrecognized-property.js.map | 8 +++ ++ .../browser/fixtures/version-not-a-number.js | 1 + ++ .../fixtures/version-not-a-number.js.map | 6 ++ ++ .../test/browser/fixtures/version-numbers.js | 6 ++ ++ .../test/browser/fixtures/version-too-high.js | 1 + ++ .../browser/fixtures/version-too-high.js.map | 6 ++ ++ .../test/browser/fixtures/version-too-low.js | 1 + ++ .../browser/fixtures/version-too-low.js.map | 6 ++ ++ .../test/browser/fixtures/version-valid.js | 1 + ++ .../browser/fixtures/version-valid.js.map | 6 ++ ++ 17 files changed, 188 insertions(+) ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/browser_spec-source-map.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping-original.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js.map ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/source-map-spec-tests.json ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js.map ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js.map ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-numbers.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js.map ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js.map ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js ++ create mode 100644 devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js.map ++ ++diff --git a/devtools/client/shared/source-map-loader/test/browser/browser.toml b/devtools/client/shared/source-map-loader/test/browser/browser.toml ++index 5a602e9eeb893..a670ab0acee89 100644 ++--- a/devtools/client/shared/source-map-loader/test/browser/browser.toml +++++ b/devtools/client/shared/source-map-loader/test/browser/browser.toml ++@@ -19,3 +19,5 @@ skip-if = [ ++ "http3", # Bug 1829298 ++ "http2", ++ ] +++ +++["browser_spec-source-map.js"] ++diff --git a/devtools/client/shared/source-map-loader/test/browser/browser_spec-source-map.js b/devtools/client/shared/source-map-loader/test/browser/browser_spec-source-map.js ++new file mode 100644 ++index 0000000000000..34695d6bd395b ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/browser_spec-source-map.js ++@@ -0,0 +1,68 @@ +++"use strict"; +++ +++const { +++ generatedToOriginalId, +++} = require("resource://devtools/client/shared/source-map-loader/utils/index.js"); +++ +++async function isValidSourceMap(base) { +++ try { +++ await fetchFixtureSourceMap(base); +++ } catch (exn) { +++ return false; +++ } +++ return true; +++} +++ +++async function checkMapping(testCase, action) { +++ const originalId = generatedToOriginalId(testCase.baseFile, `${URL_ROOT_SSL}fixtures/${action.originalSource}`); +++ const generatedLoc = await gSourceMapLoader.getGeneratedLocation({ +++ sourceId: originalId, +++ line: action.originalLine + 1, +++ column: action.originalColumn, +++ }); +++ Assert.ok(generatedLoc !== null, "Location lookup should not return null"); +++ Assert.equal(testCase.baseFile, generatedLoc.sourceId); +++ Assert.equal(action.generatedLine + 1, generatedLoc.line); +++ Assert.equal(action.generatedColumn, generatedLoc.column); +++} +++ +++const SPEC_TESTS_URI = `${URL_ROOT_SSL}fixtures/source-map-spec-tests.json` +++const testDescriptions = JSON.parse(read(SPEC_TESTS_URI)); +++ +++for (const testCase of testDescriptions.tests) { +++ async function testFunction() { +++ const baseName = testCase.baseFile.substring(0, testCase.baseFile.indexOf(".js")); +++ Assert.equal(testCase.sourceMapIsValid, await isValidSourceMap(baseName)); +++ +++ if (testCase.testActions) { +++ for (const action of testCase.testActions) { +++ if (action.actionType === "checkMapping") +++ await checkMapping(testCase, action); +++ } +++ } +++ }; +++ Object.defineProperty(testFunction, "name", { value: testCase.name }); +++ add_task(testFunction); +++} +++ +++function read(srcChromeURL) { +++ const scriptableStream = Cc[ +++ "@mozilla.org/scriptableinputstream;1" +++ ].getService(Ci.nsIScriptableInputStream); +++ +++ const channel = NetUtil.newChannel({ +++ uri: srcChromeURL, +++ loadUsingSystemPrincipal: true, +++ }); +++ const input = channel.open(); +++ scriptableStream.init(input); +++ +++ let data = ""; +++ while (input.available()) { +++ data = data.concat(scriptableStream.read(input.available())); +++ } +++ scriptableStream.close(); +++ input.close(); +++ +++ return data; +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping-original.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping-original.js ++new file mode 100644 ++index 0000000000000..301b186cb15e6 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping-original.js ++@@ -0,0 +1,8 @@ +++function foo() { +++ return 42; +++} +++function bar() { +++ return 24; +++} +++foo(); +++bar(); ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js ++new file mode 100644 ++index 0000000000000..9df72406be544 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js ++@@ -0,0 +1 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); ++\ No newline at end of file ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js.map ++new file mode 100644 ++index 0000000000000..12dc9679a4b1d ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/basic-mapping.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version":3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/source-map-spec-tests.json b/devtools/client/shared/source-map-loader/test/browser/fixtures/source-map-spec-tests.json ++new file mode 100644 ++index 0000000000000..16d8442811655 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/source-map-spec-tests.json ++@@ -0,0 +1,60 @@ +++{ +++ "tests": [ +++ { +++ "name": "versionValid", +++ "baseFile": "version-valid.js", +++ "sourceMapFile": "version-valid.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "versionNotANumber", +++ "baseFile": "version-not-a-number.js", +++ "sourceMapFile": "version-not-a-number.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooHigh", +++ "baseFile": "version-too-high.js", +++ "sourceMapFile": "version-too-high.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooLow", +++ "baseFile": "version-too-low.js", +++ "sourceMapFile": "version-too-low.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "unrecognizedProperty", +++ "baseFile": "unrecognized-property.js", +++ "sourceMapFile": "unrecognized-property.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "basicMapping", +++ "baseFile": "basic-mapping.js", +++ "sourceMapFile": "basic-mapping.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "mappedName": "bar" +++ } +++ ] +++ } +++ ] +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js ++new file mode 100644 ++index 0000000000000..47303d1fcf302 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js ++@@ -0,0 +1 @@ +++// # sourceMappingURL=unrecognized-property.js.map ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js.map ++new file mode 100644 ++index 0000000000000..40bee558a4ff9 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/unrecognized-property.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "", +++ "foobar": 42, +++ "unusedProperty": [1, 2, 3, 4] +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js ++new file mode 100644 ++index 0000000000000..5382a716e3a21 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js ++@@ -0,0 +1 @@ +++// # sourceMappingURL=version-not-a-number.js.map ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js.map ++new file mode 100644 ++index 0000000000000..a584d6e695117 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-not-a-number.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3foo", +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-numbers.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-numbers.js ++new file mode 100644 ++index 0000000000000..e79993b659db6 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-numbers.js ++@@ -0,0 +1,6 @@ +++// Test that invalid version numbers are rejected. +++ +++assert(isValidSourceMap("./version-valid.map")); +++assert(!isValidSourceMap("./version-not-a-number.map")); +++assert(!isValidSourceMap("./version-too-low.map")); +++assert(!isValidSourceMap("./version-too-high.map")); ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js ++new file mode 100644 ++index 0000000000000..04bfe7f62b7b9 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js ++@@ -0,0 +1 @@ +++// # sourceMappingURL=version-too-high.js.map ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js.map ++new file mode 100644 ++index 0000000000000..ee23be32ff278 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-high.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 4, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js ++new file mode 100644 ++index 0000000000000..54b3526c6b5e2 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js ++@@ -0,0 +1 @@ +++// # sourceMappingURL=version-too-low.js.map ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js.map ++new file mode 100644 ++index 0000000000000..64ca7a6e2e928 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-too-low.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 2, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js ++new file mode 100644 ++index 0000000000000..f8541f9efdc71 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js ++@@ -0,0 +1 @@ +++// # sourceMappingURL=version-valid.js.map ++diff --git a/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js.map b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js.map ++new file mode 100644 ++index 0000000000000..1a163052d8fc8 ++--- /dev/null +++++ b/devtools/client/shared/source-map-loader/test/browser/fixtures/version-valid.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++-- ++2.39.2 ++ +diff --git a/LayoutTests/imported/tg4/source-map-tests/firefox/browser_spec-source-map.js b/LayoutTests/imported/tg4/source-map-tests/firefox/browser_spec-source-map.js +new file mode 100644 +index 000000000000..af18e9bca51d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/firefox/browser_spec-source-map.js +@@ -0,0 +1,71 @@ ++"use strict"; ++ ++const { ++ generatedToOriginalId, ++} = require("resource://devtools/client/shared/source-map-loader/utils/index.js"); ++ ++async function checkValidity(isValid, base, testCase) { ++ try { ++ await fetchFixtureSourceMap(base); ++ const originalId = generatedToOriginalId(testCase.baseFile, "unused"); ++ await gSourceMapLoader.getOriginalRanges(originalId); ++ } catch (exn) { ++ Assert.ok(!isValid, "Source map loading failed with " + exn.message); ++ return; ++ } ++ Assert.ok(isValid, "Source map loading should have failed but did not"); ++} ++ ++async function checkMapping(testCase, action) { ++ const originalId = generatedToOriginalId(testCase.baseFile, `${URL_ROOT_SSL}fixtures/${action.originalSource}`); ++ const generatedLoc = await gSourceMapLoader.getGeneratedLocation({ ++ sourceId: originalId, ++ line: action.originalLine + 1, ++ column: action.originalColumn, ++ }); ++ Assert.ok(generatedLoc !== null, "Location lookup should not return null"); ++ Assert.equal(testCase.baseFile, generatedLoc.sourceId); ++ Assert.equal(action.generatedLine + 1, generatedLoc.line); ++ Assert.equal(action.generatedColumn, generatedLoc.column); ++} ++ ++const SPEC_TESTS_URI = `${URL_ROOT_SSL}fixtures/source-map-spec-tests.json` ++const testDescriptions = JSON.parse(read(SPEC_TESTS_URI)); ++ ++for (const testCase of testDescriptions.tests) { ++ // The following uses a hack to ensure the test case name is used in stack traces. ++ const testFunction = {[testCase.name]: async function() { ++ const baseName = testCase.baseFile.substring(0, testCase.baseFile.indexOf(".js")); ++ await checkValidity(testCase.sourceMapIsValid, baseName, testCase); ++ ++ if (testCase.testActions) { ++ for (const action of testCase.testActions) { ++ if (action.actionType === "checkMapping") ++ await checkMapping(testCase, action); ++ } ++ } ++ }}[testCase.name]; ++ add_task(testFunction); ++} ++ ++function read(srcChromeURL) { ++ const scriptableStream = Cc[ ++ "@mozilla.org/scriptableinputstream;1" ++ ].getService(Ci.nsIScriptableInputStream); ++ ++ const channel = NetUtil.newChannel({ ++ uri: srcChromeURL, ++ loadUsingSystemPrincipal: true, ++ }); ++ const input = channel.open(); ++ scriptableStream.init(input); ++ ++ let data = ""; ++ while (input.available()) { ++ data = data.concat(scriptableStream.read(input.available())); ++ } ++ scriptableStream.close(); ++ input.close(); ++ ++ return data; ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js +new file mode 100644 +index 000000000000..b9fae380437d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=basic-mapping-as-index-map.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js.map +new file mode 100644 +index 000000000000..c0ad870ed2ba +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-as-index-map.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "file": "basic-mapping-as-index-map.js", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-original.js b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-original.js +new file mode 100644 +index 000000000000..301b186cb15e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping-original.js +@@ -0,0 +1,8 @@ ++function foo() { ++ return 42; ++} ++function bar() { ++ return 24; ++} ++foo(); ++bar(); +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js +new file mode 100644 +index 000000000000..2e479a4175b8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=basic-mapping.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js.map +new file mode 100644 +index 000000000000..12dc9679a4b1 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/basic-mapping.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version":3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js +new file mode 100644 +index 000000000000..d049f870450a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=file-not-a-string-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js.map +new file mode 100644 +index 000000000000..85e973d881df +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "file": [], ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js +new file mode 100644 +index 000000000000..07b8152c0c6c +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=file-not-a-string-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js.map +new file mode 100644 +index 000000000000..a5b6b1f9d94f +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/file-not-a-string-2.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "file": 235324, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js +new file mode 100644 +index 000000000000..385a5c3501b2 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-empty.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js.map +new file mode 100644 +index 000000000000..7297863a9be8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-empty.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js +new file mode 100644 +index 000000000000..567174a707ef +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-out-of-bounds-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js.map +new file mode 100644 +index 000000000000..fb2566bb419b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [1] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js +new file mode 100644 +index 000000000000..4216d9a67315 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-out-of-bounds-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js.map +new file mode 100644 +index 000000000000..41371a76a896 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-out-of-bounds-2.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [-1] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js +new file mode 100644 +index 000000000000..ea64a5565a63 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-valid-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js.map +new file mode 100644 +index 000000000000..98eebdf7f655 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-valid-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [0] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js +new file mode 100644 +index 000000000000..8b40bd384767 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js.map +new file mode 100644 +index 000000000000..688740aba843 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": ["not a number"] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js +new file mode 100644 +index 000000000000..35c77911648e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js.map +new file mode 100644 +index 000000000000..ca1d30de2d36 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-2.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": ["0"] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js +new file mode 100644 +index 000000000000..8735d4175804 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-3.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js.map +new file mode 100644 +index 000000000000..1ac167d56c4e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-3.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": 0 ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js +new file mode 100644 +index 000000000000..35db5acc432b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=ignore-list-wrong-type-4.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js.map +new file mode 100644 +index 000000000000..c1a27efe980d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/ignore-list-wrong-type-4.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "", ++ "names": [], ++ "ignoreList": [0.5] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js +new file mode 100644 +index 000000000000..abe9f7f30816 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-empty-sections.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js.map +new file mode 100644 +index 000000000000..f3efabbe00c3 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-empty-sections.js.map +@@ -0,0 +1,4 @@ ++{ ++ "version": 3, ++ "sections": [] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js +new file mode 100644 +index 000000000000..48bb12855bf5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=index-map-file-wrong-type-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js.map +new file mode 100644 +index 000000000000..dd39b5a2b13c +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-1.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "file": [], ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js +new file mode 100644 +index 000000000000..c002ba726a51 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=index-map-file-wrong-type-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js.map +new file mode 100644 +index 000000000000..0ee0a406be8d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-file-wrong-type-2.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "file": 2345234234, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js +new file mode 100644 +index 000000000000..e90bef083c49 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-base-mappings.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js.map +new file mode 100644 +index 000000000000..b489c1f080b1 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-base-mappings.js.map +@@ -0,0 +1,15 @@ ++{ ++ "version": 3, ++ "mappings": "AAAA", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js +new file mode 100644 +index 000000000000..263fa3c6e0b9 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-order.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js.map +new file mode 100644 +index 000000000000..82da69df720e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-order.js.map +@@ -0,0 +1,23 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 1, "column": 4 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js +new file mode 100644 +index 000000000000..9aff8dc6203a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-overlap.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js.map +new file mode 100644 +index 000000000000..8d42546fd899 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-overlap.js.map +@@ -0,0 +1,23 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js +new file mode 100644 +index 000000000000..284e8d77e659 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-invalid-sub-map.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js.map +new file mode 100644 +index 000000000000..4020ae30c576 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-invalid-sub-map.js.map +@@ -0,0 +1,13 @@ ++{ ++ "version": 3, ++ "file": "index-map-invalid-sub-map.js", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": "3", ++ "mappings": 7 ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js +new file mode 100644 +index 000000000000..be2a93cb77cd +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=index-map-missing-file.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js.map +new file mode 100644 +index 000000000000..8a6d4b5dc788 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-file.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js +new file mode 100644 +index 000000000000..86c8e9a2535a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-map.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js.map +new file mode 100644 +index 000000000000..3bce47e852cf +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-map.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js +new file mode 100644 +index 000000000000..fe6917403f18 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset-column.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js.map +new file mode 100644 +index 000000000000..aa48bbb99317 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-column.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js +new file mode 100644 +index 000000000000..ba8614e412ce +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset-line.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js.map +new file mode 100644 +index 000000000000..3d60444ea74f +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset-line.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js +new file mode 100644 +index 000000000000..9ca2cf3fb515 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-missing-offset.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js.map +new file mode 100644 +index 000000000000..7285138bf51e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-missing-offset.js.map +@@ -0,0 +1,13 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js +new file mode 100644 +index 000000000000..ed1e9ec5d5b8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-offset-column-wrong-type.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js.map +new file mode 100644 +index 000000000000..b43e79a9dd85 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-column-wrong-type.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": true }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js +new file mode 100644 +index 000000000000..d58f2aff993e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-offset-line-wrong-type.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js.map +new file mode 100644 +index 000000000000..81dbcd6ec434 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-offset-line-wrong-type.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": true, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js +new file mode 100644 +index 000000000000..b8702d7187c9 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar();function baz(){return"baz"}baz(); ++//# sourceMappingURL=index-map-two-concatenated-sources.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js.map +new file mode 100644 +index 000000000000..f67f5de3c5d8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-two-concatenated-sources.js.map +@@ -0,0 +1,24 @@ ++{ ++ "version": 3, ++ "file": "index-map-two-concatenated-sources.js", ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": { ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" ++ } ++ }, ++ { ++ "offset": { "line": 0, "column": 62 }, ++ "map": { ++ "version": 3, ++ "names": ["baz"], ++ "sources": ["second-source-original.js"], ++ "mappings":"AAAA,SAASA,MACP,MAAO,KACT,CACAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js +new file mode 100644 +index 000000000000..d31d6d6358b4 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-map.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js.map +new file mode 100644 +index 000000000000..0963f623d761 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-map.js.map +@@ -0,0 +1,9 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": { "line": 0, "column": 0 }, ++ "map": "not a map" ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js +new file mode 100644 +index 000000000000..048e1246f8b0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-offset.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js.map +new file mode 100644 +index 000000000000..fbc6e4e67887 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-offset.js.map +@@ -0,0 +1,14 @@ ++{ ++ "version": 3, ++ "sections": [ ++ { ++ "offset": "not an offset", ++ "map": { ++ "version": 3, ++ "names": [], ++ "sources": ["empty-original.js"], ++ "mappings": "AAAA" ++ } ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js +new file mode 100644 +index 000000000000..011eca806ed6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=index-map-wrong-type-sections.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js.map +new file mode 100644 +index 000000000000..dbfb4ead3001 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/index-map-wrong-type-sections.js.map +@@ -0,0 +1,4 @@ ++{ ++ "version": 3, ++ "sections": "not a sections list" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js +new file mode 100644 +index 000000000000..25338aca30ce +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-bad-separator.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js.map +new file mode 100644 +index 000000000000..5f4f5b92330a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-bad-separator.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAAA.SAASA:MACP" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js +new file mode 100644 +index 000000000000..cb38e2fe9d7b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-not-a-string-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js.map +new file mode 100644 +index 000000000000..5bf3e2a9d85b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-1.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-not-a-string-1.js", ++ "sources": ["empty-original.js"], ++ "mappings": 5 ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js +new file mode 100644 +index 000000000000..3d84abd6c6b4 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-not-a-string-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js.map +new file mode 100644 +index 000000000000..4527e7f7641c +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-not-a-string-2.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-not-a-string-2.js", ++ "sources": ["empty-original.js"], ++ "mappings": [1, 2, 3, 4] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js +new file mode 100644 +index 000000000000..55591f874b1b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-column-too-large.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js.map +new file mode 100644 +index 000000000000..b4c059e0151b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-column-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-column-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "ggggggE" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js +new file mode 100644 +index 000000000000..2a6b434eff58 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-name-index-out-of-bounds.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map +new file mode 100644 +index 000000000000..8dd2ea6c2da0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "file": "invalid-mapping-segment-name-index-out-of-bounds.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAC" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js +new file mode 100644 +index 000000000000..709e34dbd326 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-name-index-too-large.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js.map +new file mode 100644 +index 000000000000..c7bf5b98d120 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-name-index-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-name-index-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAggggggE" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js +new file mode 100644 +index 000000000000..a202152d6fdf +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-column.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js.map +new file mode 100644 +index 000000000000..403878bfa47a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-column.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-column.js", ++ "sources": ["empty-original.js"], ++ "mappings": "F" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js +new file mode 100644 +index 000000000000..3e3f63420467 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-name-index.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js.map +new file mode 100644 +index 000000000000..b94f63646e46 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-name-index.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-name-index.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAAF" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js +new file mode 100644 +index 000000000000..f21d5342b395 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-original-column.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js.map +new file mode 100644 +index 000000000000..011c639d3f91 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-column.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-original-column.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAF" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js +new file mode 100644 +index 000000000000..b37309601ce0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-original-line.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js.map +new file mode 100644 +index 000000000000..e7ec993eebda +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-original-line.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-original-line.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAFA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js +new file mode 100644 +index 000000000000..94b835d6877c +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-column.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js.map +new file mode 100644 +index 000000000000..414884072b55 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-column.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-column.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "C,F" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js +new file mode 100644 +index 000000000000..c965c5f011f5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-name-index.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js.map +new file mode 100644 +index 000000000000..1fbbcfcd323e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-name-index.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-name-index.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AAAAC,AAAAF" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js +new file mode 100644 +index 000000000000..493a6ec88a39 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-column.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js.map +new file mode 100644 +index 000000000000..7e62895651fa +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-column.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-original-column.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AAAC,AAAF" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js +new file mode 100644 +index 000000000000..ca8329fb98f0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-original-line.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js.map +new file mode 100644 +index 000000000000..86b0fb3a04cc +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-original-line.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-original-line.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "AACA,AAFA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js +new file mode 100644 +index 000000000000..fa92225b0963 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-relative-source-index.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js.map +new file mode 100644 +index 000000000000..2efeb047db61 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-relative-source-index.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-relative-source-index.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "ACAA,AFAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js +new file mode 100644 +index 000000000000..6e05849b6a03 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-negative-source-index.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js.map +new file mode 100644 +index 000000000000..596c2f298bbe +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-negative-source-index.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-negative-source-index.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AFAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js +new file mode 100644 +index 000000000000..0936ed7ea8fd +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-original-column-too-large.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js.map +new file mode 100644 +index 000000000000..ff2103fe24fe +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-column-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-original-column-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAAggggggE" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js +new file mode 100644 +index 000000000000..9b3aa5a361ae +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-original-line-too-large.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js.map +new file mode 100644 +index 000000000000..890f1c71fc5b +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-original-line-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-original-line-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AAggggggEA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js +new file mode 100644 +index 000000000000..2e5fbca26825 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-source-index-out-of-bounds.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map +new file mode 100644 +index 000000000000..86dedb114fa9 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-source-index-out-of-bounds.js", ++ "sources": ["empty-original.js"], ++ "mappings": "ACAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js +new file mode 100644 +index 000000000000..3f4943e1272d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-source-index-too-large.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js.map +new file mode 100644 +index 000000000000..e9f858c6e15d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-source-index-too-large.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-source-index-too-large.js", ++ "sources": ["empty-original.js"], ++ "mappings": "AggggggEAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js +new file mode 100644 +index 000000000000..4b868fac9c5e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-segment-with-three-fields.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js.map +new file mode 100644 +index 000000000000..c2af1165ad8f +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-three-fields.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js +new file mode 100644 +index 000000000000..96045a7a11dd +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=invalid-mapping-segment-with-two-fields.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js.map +new file mode 100644 +index 000000000000..73cf00fa1c96 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-two-fields.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","bar"], ++ "sources": ["basic-mapping-original.js"], ++ "mappings": "AA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js +new file mode 100644 +index 000000000000..9d5332a56ca5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-mapping-segment-with-zero-fields.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js.map +new file mode 100644 +index 000000000000..5a34d25b645e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-mapping-segment-with-zero-fields.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "invalid-mapping-segment-with-zero-fields.js", ++ "sources": ["empty-original.js"], ++ "mappings": ",,,," ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js +new file mode 100644 +index 000000000000..2c2a0090aca6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-vlq-missing-continuation.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js.map +new file mode 100644 +index 000000000000..dd0e363ff473 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-missing-continuation.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "g" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js +new file mode 100644 +index 000000000000..d1b20b41a29f +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=invalid-vlq-non-base64-char.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js.map +new file mode 100644 +index 000000000000..4fa1ac576885 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/invalid-vlq-non-base64-char.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "A$%?!" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js +new file mode 100644 +index 000000000000..b64482d09843 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js +@@ -0,0 +1,3 @@ ++ foo ++ bar ++//# sourceMappingURL=mapping-semantics-column-reset.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js.map +new file mode 100644 +index 000000000000..97bc9b91a43d +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-column-reset.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["mapping-semantics-column-reset-original.js"], ++ "sourcesContent": ["foo\nbar"], ++ "mappings": "CAAA;CACA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js +new file mode 100644 +index 000000000000..0f6602d61503 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js +@@ -0,0 +1,2 @@ ++foo ++//# sourceMappingURL=mapping-semantics-five-field-segment.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js.map +new file mode 100644 +index 000000000000..d0504f511dad +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-five-field-segment.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "sources": ["unused", "mapping-semantics-five-field-segment-original.js"], ++ "sourcesContent": ["", "\n\n foo"], ++ "mappings": "CCEEA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js +new file mode 100644 +index 000000000000..3dcbee9294c0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js +@@ -0,0 +1,2 @@ ++foo ++//# sourceMappingURL=mapping-semantics-four-field-segment.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js.map +new file mode 100644 +index 000000000000..9e01ac4b6c58 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-four-field-segment.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["unused", "mapping-semantics-four-field-segment-original.js"], ++ "sourcesContent": ["", "\n\n foo"], ++ "mappings": "CCEE" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js +new file mode 100644 +index 000000000000..281870cc50e7 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js +@@ -0,0 +1,2 @@ ++ 42; 24; ++//# sourceMappingURL=mapping-semantics-relative-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js.map +new file mode 100644 +index 000000000000..6570031f8983 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-1.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["unused", "mapping-semantics-relative-1-original.js"], ++ "sourcesContent": ["", "42; 24;"], ++ "mappings": "CCAA,IAAI" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js +new file mode 100644 +index 000000000000..f4bff1c75bcc +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js +@@ -0,0 +1,3 @@ ++ foo ++ bar ++//# sourceMappingURL=mapping-semantics-relative-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js.map +new file mode 100644 +index 000000000000..d6845233f912 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-relative-2.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo", "bar"], ++ "sources": ["unused", "mapping-semantics-relative-2-original.js"], ++ "sourcesContent": ["", " foo\n bar"], ++ "mappings": "CCAEA;EACAC" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js +new file mode 100644 +index 000000000000..ca06b7c58d88 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js +@@ -0,0 +1,2 @@ ++ 3 ++//# sourceMappingURL=mapping-semantics-single-field-segment.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js.map +new file mode 100644 +index 000000000000..8260d63085d7 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/mapping-semantics-single-field-segment.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["mapping-semantics-single-field-segment-original.js"], ++ "sourcesContent": ["3 3"], ++ "mappings": "AAAC,E" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js b/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js +new file mode 100644 +index 000000000000..58781fd88705 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-missing.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js.map +new file mode 100644 +index 000000000000..475f4e309b26 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-missing.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["empty-original.js"], ++ "sourcesContent" : [""], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js +new file mode 100644 +index 000000000000..dc65f1972b5a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-a-list-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js.map +new file mode 100644 +index 000000000000..fe1edaeb96ad +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-1.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": "not a list", ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js +new file mode 100644 +index 000000000000..d7251f78da84 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-a-list-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js.map +new file mode 100644 +index 000000000000..3388d2bb7109 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-a-list-2.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": { "foo": 3 }, ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js +new file mode 100644 +index 000000000000..8dc7b4811a3e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=names-not-string.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js.map +new file mode 100644 +index 000000000000..c0feb0739aec +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/names-not-string.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": ["source.js"], ++ "names": [null, 3, true, false, {}, []], ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/second-source-original.js b/LayoutTests/imported/tg4/source-map-tests/resources/second-source-original.js +new file mode 100644 +index 000000000000..c339bc9d15da +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/second-source-original.js +@@ -0,0 +1,4 @@ ++function baz() { ++ return "baz"; ++} ++baz(); +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js b/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js +new file mode 100644 +index 000000000000..7ab34b6bd0fa +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=source-resolution-absolute-url.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js.map +new file mode 100644 +index 000000000000..195dc42ecea3 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-resolution-absolute-url.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "file": "source-root-resolution.js", ++ "names": ["foo", "bar"], ++ "sources": ["/baz/quux/basic-mapping-original.js"], ++ "sourcesContent": ["function foo() {\nreturn 42;\n }\n function bar() {\n return 24;\n }\n foo();\n bar();"], ++ "mappings": "AAAA,SAASA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js +new file mode 100644 +index 000000000000..f176f3143a4a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=source-root-not-a-string-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js.map +new file mode 100644 +index 000000000000..e297f5c03e50 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-1.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sourceRoot": [], ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js +new file mode 100644 +index 000000000000..f176f3143a4a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=source-root-not-a-string-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js.map +new file mode 100644 +index 000000000000..d5705ebfb8e9 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-not-a-string-2.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sourceRoot": -10923409, ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js +new file mode 100644 +index 000000000000..15a1a4c95026 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=source-root-resolution.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js.map +new file mode 100644 +index 000000000000..b2067265c02e +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/source-root-resolution.js.map +@@ -0,0 +1,9 @@ ++{ ++ "version": 3, ++ "sourceRoot": "theroot", ++ "file": "source-root-resolution.js", ++ "names": ["foo", "bar"], ++ "sources": ["basic-mapping-original.js"], ++ "sourcesContent": ["function foo() {\n return 42;\n }\n function bar() {\n return 24;\n }\n foo();\n bar();"], ++ "mappings": "AAAA,SAASA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js +new file mode 100644 +index 000000000000..9263eba549f5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-and-sources-content-both-null.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js.map +new file mode 100644 +index 000000000000..09a7c1f3698c +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-and-sources-content-both-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "sources": [null], ++ "sourcesContent": [null], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js +new file mode 100644 +index 000000000000..779b865e2769 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-missing.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js.map +new file mode 100644 +index 000000000000..92aff4fb0e74 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-missing.js.map +@@ -0,0 +1,5 @@ ++{ ++ "version" : 3, ++ "names": ["foo"], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js +new file mode 100644 +index 000000000000..939b568ba142 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=sources-non-null-sources-content-null.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js.map +new file mode 100644 +index 000000000000..e573906b2d71 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-non-null-sources-content-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "sources": ["basic-mapping-original.js"], ++ "sourcesContent": [null], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js +new file mode 100644 +index 000000000000..7e33b7e86725 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-a-list-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js.map +new file mode 100644 +index 000000000000..26330517b988 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-1.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": "not a list", ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js +new file mode 100644 +index 000000000000..4021f763fc88 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-a-list-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js.map +new file mode 100644 +index 000000000000..2ed85962fddf +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-a-list-2.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": { "source.js": 3 }, ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js +new file mode 100644 +index 000000000000..7dca97a1dab5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=sources-not-string-or-null.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js.map +new file mode 100644 +index 000000000000..db2556196605 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-not-string-or-null.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [3, {}, true, false, []], ++ "names": ["foo"], ++ "mappings": "AAAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js b/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js +new file mode 100644 +index 000000000000..a760594ee9bd +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js +@@ -0,0 +1,2 @@ ++function foo(){return 42}function bar(){return 24}foo();bar(); ++//# sourceMappingURL=sources-null-sources-content-non-null.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js.map +new file mode 100644 +index 000000000000..43af03903f64 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/sources-null-sources-content-non-null.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version":3, ++ "names": ["foo"], ++ "sources": [null], ++ "sourcesContent": ["function foo()\n{ return 42; }\nfunction bar()\n { return 24; }\nfoo();\nbar();"], ++ "mappings":"AAAA,SAASA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js +new file mode 100644 +index 000000000000..0a96699d6e25 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js +@@ -0,0 +1,5 @@ ++function foo(x) { ++ return x; ++} ++foo("foo"); ++//# sourceMappingURL=transitive-mapping-original.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js.map +new file mode 100644 +index 000000000000..65af25c1ebbe +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-original.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "file" : "transitive-mapping-original.js", ++ "sourceRoot": "", ++ "sources": ["typescript-original.ts"], ++ "names": [], ++ "mappings": "AACA,SAAS,GAAG,CAAC,CAAU;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AACD,GAAG,CAAC,KAAK,CAAC,CAAC" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js +new file mode 100644 +index 000000000000..fd956164d349 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js +@@ -0,0 +1,6 @@ ++function foo(x) { ++ return x; ++} ++ ++foo("foo"); ++//# sourceMappingURL=transitive-mapping-three-steps.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js.map +new file mode 100644 +index 000000000000..90459d90f6a0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping-three-steps.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "file": "transitive-mapping-three-steps.js", ++ "sources": ["transitive-mapping.js"], ++ "names": ["foo", "x"], ++ "mappings": "AAAA,SAASA,IAAIC;IAAG,OAAOA;AAAC;;AAACD,IAAI,KAAK" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js +new file mode 100644 +index 000000000000..183c027f1bb8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js +@@ -0,0 +1,2 @@ ++function foo(x){return x}foo("foo"); ++//# sourceMappingURL=transitive-mapping.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js.map +new file mode 100644 +index 000000000000..d6a6fa6672d4 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/transitive-mapping.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": ["foo","x"], ++ "sources": ["transitive-mapping-original.js"], ++ "mappings":"AAAA,SAASA,IAAIC,GACT,OAAOA,CACX,CACAD,IAAI" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/typescript-original.ts b/LayoutTests/imported/tg4/source-map-tests/resources/typescript-original.ts +new file mode 100644 +index 000000000000..cd51c01ba129 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/typescript-original.ts +@@ -0,0 +1,5 @@ ++type FooArg = string | number; ++function foo(x : FooArg) { ++ return x; ++} ++foo("foo"); +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js b/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js +new file mode 100644 +index 000000000000..19dfb0e2e6c7 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=unrecognized-property.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js.map +new file mode 100644 +index 000000000000..40bee558a4ff +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/unrecognized-property.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "", ++ "foobar": 42, ++ "unusedProperty": [1, 2, 3, 4] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js +new file mode 100644 +index 000000000000..3c49709e05ac +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-boundary-values.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js.map +new file mode 100644 +index 000000000000..4dd836e63d8f +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-boundary-values.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": ["foo"], ++ "file": "valid-mapping-boundary-values.js", ++ "sources": ["empty-original.js"], ++ "mappings": "+/////DA+/////D+/////DA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js +new file mode 100644 +index 000000000000..a2b767b619a0 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-empty-groups.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js.map +new file mode 100644 +index 000000000000..643c9ae78481 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-groups.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "valid-mapping-empty-groups.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js +new file mode 100644 +index 000000000000..83fc1bf3ac73 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-empty-string.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js.map +new file mode 100644 +index 000000000000..a35268d8f5b8 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-empty-string.js.map +@@ -0,0 +1,8 @@ ++{ ++ "version": 3, ++ "names": [], ++ "file": "valid-mapping-empty-string.js", ++ "sources": ["empty-original.js"], ++ "sourcesContent": [""], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js +new file mode 100644 +index 000000000000..b0cd8978132a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=valid-mapping-large-vlq.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js.map +new file mode 100644 +index 000000000000..76e18704c4b1 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/valid-mapping-large-vlq.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["valid-mapping-large-vlq.js"], ++ "mappings": "igggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js +new file mode 100644 +index 000000000000..c32d1f1a1cc6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-missing.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js.map +new file mode 100644 +index 000000000000..49d8ce766edb +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-missing.js.map +@@ -0,0 +1,5 @@ ++{ ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js +new file mode 100644 +index 000000000000..ae2342e2ffe5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-not-a-number.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js.map +new file mode 100644 +index 000000000000..a584d6e69511 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-not-a-number.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : "3foo", ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js +new file mode 100644 +index 000000000000..a55170885da6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-numeric-string.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js.map +new file mode 100644 +index 000000000000..dbe52a7d0df6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-numeric-string.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : "3", ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js +new file mode 100644 +index 000000000000..55f4e1a298fa +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-too-high.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js.map +new file mode 100644 +index 000000000000..ee23be32ff27 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-high.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 4, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js +new file mode 100644 +index 000000000000..d9642920b313 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-too-low.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js.map +new file mode 100644 +index 000000000000..64ca7a6e2e92 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-too-low.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 2, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js b/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js +new file mode 100644 +index 000000000000..82d0bfa1eb2a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js +@@ -0,0 +1 @@ ++//# sourceMappingURL=version-valid.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js.map +new file mode 100644 +index 000000000000..1a163052d8fc +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/version-valid.js.map +@@ -0,0 +1,6 @@ ++{ ++ "version" : 3, ++ "sources": [], ++ "names": [], ++ "mappings": "" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js +new file mode 100644 +index 000000000000..511e7be18ae5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js +@@ -0,0 +1,2 @@ ++ 3 ++//# sourceMappingURL=vlq-valid-continuation-bit-present-1.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js.map +new file mode 100644 +index 000000000000..f4acb4b41837 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-1.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["vlq-valid-continuation-bit-present-1-original.js"], ++ "sourcesContent": [" 3"], ++ "mappings": "+gAgAgAigA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js +new file mode 100644 +index 000000000000..0c879ce052ad +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js +@@ -0,0 +1,4 @@ ++ ++ ++ 3 ++//# sourceMappingURL=vlq-valid-continuation-bit-present-2.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js.map +new file mode 100644 +index 000000000000..a975cf8591ff +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-continuation-bit-present-2.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["vlq-valid-continuation-bit-present-2-original.js"], ++ "sourcesContent": ["\n 3"], ++ "mappings": ";;gBACC" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js +new file mode 100644 +index 000000000000..d8e795090eff +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js +@@ -0,0 +1,4 @@ ++ ++ ++ 4; 3 ++//# sourceMappingURL=vlq-valid-negative-digit.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js.map +new file mode 100644 +index 000000000000..71dec0d65a1a +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-negative-digit.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["vlq-valid-negative-digit-original.js"], ++ "sourcesContent": ["\n 4;3"], ++ "mappings": ";;eACG,bAAF" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js +new file mode 100644 +index 000000000000..54c59aae1fcb +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js +@@ -0,0 +1,2 @@ ++ 3 ++//# sourceMappingURL=vlq-valid-single-digit.js.map +diff --git a/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js.map b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js.map +new file mode 100644 +index 000000000000..9e35a7a0a6a5 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/resources/vlq-valid-single-digit.js.map +@@ -0,0 +1,7 @@ ++{ ++ "version": 3, ++ "names": [], ++ "sources": ["vlq-valid-single-digit-original.js"], ++ "sourcesContent": ["3"], ++ "mappings": "eAAA" ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/source-map-spec-tests.json b/LayoutTests/imported/tg4/source-map-tests/source-map-spec-tests.json +new file mode 100644 +index 000000000000..4601502fffd6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/source-map-spec-tests.json +@@ -0,0 +1,1554 @@ ++{ ++ "tests": [ ++ { ++ "name": "versionValid", ++ "description": "Test a simple source map with a valid version number", ++ "baseFile": "version-valid.js", ++ "sourceMapFile": "version-valid.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "versionMissing", ++ "description": "Test a source map that is missing a version field", ++ "baseFile": "version-missing.js", ++ "sourceMapFile": "version-missing.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionNotANumber", ++ "description": "Test a source map with a version field that is not a number", ++ "baseFile": "version-not-a-number.js", ++ "sourceMapFile": "version-not-a-number.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionNumericString", ++ "description": "Test a source map with a version field that is a number as a string", ++ "baseFile": "version-numeric-string.js", ++ "sourceMapFile": "version-numeric-string.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionTooHigh", ++ "description": "Test a source map with an integer version field that is too high", ++ "baseFile": "version-too-high.js", ++ "sourceMapFile": "version-too-high.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "versionTooLow", ++ "description": "Test a source map with an integer version field that is too low", ++ "baseFile": "version-too-low.js", ++ "sourceMapFile": "version-too-low.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesMissing", ++ "description": "Test a source map that is missing a necessary sources field", ++ "baseFile": "sources-missing.js", ++ "sourceMapFile": "sources-missing.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotAList1", ++ "description": "Test a source map with a sources field that is not a valid list (string)", ++ "baseFile": "sources-not-a-list-1.js", ++ "sourceMapFile": "sources-not-a-list-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotAList2", ++ "description": "Test a source map with a sources field that is not a valid list (object)", ++ "baseFile": "sources-not-a-list-2.js", ++ "sourceMapFile": "sources-not-a-list-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesNotStringOrNull", ++ "description": "Test a source map with a sources list that has non-string and non-null items", ++ "baseFile": "sources-not-string-or-null.js", ++ "sourceMapFile": "sources-not-string-or-null.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourcesAndSourcesContentBothNull", ++ "description": "Test a source map that has both null sources and sourcesContent entries", ++ "baseFile": "sources-and-sources-content-both-null.js", ++ "sourceMapFile": "sources-and-sources-content-both-null.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "fileNotAString1", ++ "description": "Test a source map with a file field that is not a valid string", ++ "baseFile": "file-not-a-string-1.js", ++ "sourceMapFile": "file-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "fileNotAString2", ++ "description": "Test a source map with a file field that is not a valid string", ++ "baseFile": "file-not-a-string-2.js", ++ "sourceMapFile": "file-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourceRootNotAString1", ++ "description": "Test a source map with a sourceRoot field that is not a valid string", ++ "baseFile": "source-root-not-a-string-1.js", ++ "sourceMapFile": "source-root-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "sourceRootNotAString2", ++ "description": "Test a source map with a sourceRoot field that is not a valid string", ++ "baseFile": "source-root-not-a-string-2.js", ++ "sourceMapFile": "source-root-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesMissing", ++ "description": "Test a source map that is missing the optional names field", ++ "baseFile": "names-missing.js", ++ "sourceMapFile": "names-missing.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "namesNotAList1", ++ "description": "Test a source map with a names field that is not a valid list (string)", ++ "baseFile": "names-not-a-list-1.js", ++ "sourceMapFile": "names-not-a-list-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesNotAList2", ++ "description": "Test a source map with a names field that is not a valid list (object)", ++ "baseFile": "names-not-a-list-2.js", ++ "sourceMapFile": "names-not-a-list-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "namesNotString", ++ "description": "Test a source map with a names list that has non-string items", ++ "baseFile": "names-not-string.js", ++ "sourceMapFile": "names-not-string.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListEmpty", ++ "description": "Test a source map with an ignore list that has no items", ++ "baseFile": "ignore-list-empty.js", ++ "sourceMapFile": "ignore-list-empty.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "ignoreListValid1", ++ "description": "Test a source map with a simple valid ignore list", ++ "baseFile": "ignore-list-valid-1.js", ++ "sourceMapFile": "ignore-list-valid-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkIgnoreList", ++ "present": ["empty-original.js"] ++ } ++ ] ++ }, ++ { ++ "name": "ignoreListWrongType1", ++ "description": "Test a source map with an ignore list with the wrong type of items", ++ "baseFile": "ignore-list-wrong-type-1.js", ++ "sourceMapFile": "ignore-list-wrong-type-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListWrongType2", ++ "description": "Test a source map with an ignore list with the wrong type of items", ++ "baseFile": "ignore-list-wrong-type-2.js", ++ "sourceMapFile": "ignore-list-wrong-type-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListWrongType3", ++ "description": "Test a source map with an ignore list that is not a list", ++ "baseFile": "ignore-list-wrong-type-3.js", ++ "sourceMapFile": "ignore-list-wrong-type-3.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListWrongType4", ++ "description": "Test a source map with an ignore list with a negative index", ++ "baseFile": "ignore-list-wrong-type-4.js", ++ "sourceMapFile": "ignore-list-wrong-type-4.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListOutOfBounds1", ++ "description": "Test a source map with an ignore list with an item with an out-of-bounds index (too big)", ++ "baseFile": "ignore-list-out-of-bounds-1.js", ++ "sourceMapFile": "ignore-list-out-of-bounds-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "ignoreListOutOfBounds2", ++ "description": "Test a source map with an ignore list with an item with an out-of-bounds index (too low)", ++ "baseFile": "ignore-list-out-of-bounds-2.js", ++ "sourceMapFile": "ignore-list-out-of-bounds-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "unrecognizedProperty", ++ "description": "Test a source map that has an extra field not explicitly encoded in the spec", ++ "baseFile": "unrecognized-property.js", ++ "sourceMapFile": "unrecognized-property.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "invalidVLQDueToNonBase64Character", ++ "description": "Test a source map that has a mapping with an invalid non-base64 character", ++ "baseFile": "invalid-vlq-non-base64-char.js", ++ "sourceMapFile": "invalid-vlq-non-base64-char.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidVLQDueToMissingContinuationDigits", ++ "description": "Test a source map that has a mapping with an invalid VLQ that has a continuation bit but no continuing digits", ++ "baseFile": "invalid-vlq-missing-continuation.js", ++ "sourceMapFile": "invalid-vlq-missing-continuation.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingNotAString1", ++ "description": "Test a source map that has an invalid mapping that is not a string (number)", ++ "baseFile": "invalid-mapping-not-a-string-1.js", ++ "sourceMapFile": "invalid-mapping-not-a-string-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingNotAString2", ++ "description": "Test a source map that has an invalid mapping that is not a string (array)", ++ "baseFile": "invalid-mapping-not-a-string-2.js", ++ "sourceMapFile": "invalid-mapping-not-a-string-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentBadSeparator", ++ "description": "Test a source map that uses separator characters not recognized in the spec", ++ "baseFile": "invalid-mapping-bad-separator.js", ++ "sourceMapFile": "invalid-mapping-bad-separator.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithZeroFields", ++ "description": "Test a source map that has the wrong number (zero) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-zero-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-zero-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithTwoFields", ++ "description": "Test a source map that has the wrong number (two) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-two-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-two-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithThreeFields", ++ "description": "Test a source map that has the wrong number (three) of segments fields", ++ "baseFile": "invalid-mapping-segment-with-three-fields.js", ++ "sourceMapFile": "invalid-mapping-segment-with-three-fields.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithSourceIndexOutOfBounds", ++ "description": "Test a source map that has a source index field that is out of bounds of the sources field", ++ "baseFile": "invalid-mapping-segment-source-index-out-of-bounds.js", ++ "sourceMapFile": "invalid-mapping-segment-source-index-out-of-bounds.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNameIndexOutOfBounds", ++ "description": "Test a source map that has a name index field that is out of bounds of the names field", ++ "baseFile": "invalid-mapping-segment-name-index-out-of-bounds.js", ++ "sourceMapFile": "invalid-mapping-segment-name-index-out-of-bounds.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeColumn", ++ "description": "Test a source map that has an invalid negative non-relative column field", ++ "baseFile": "invalid-mapping-segment-negative-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeSourceIndex", ++ "description": "Test a source map that has an invalid negative non-relative source index field", ++ "baseFile": "invalid-mapping-segment-negative-source-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-source-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeOriginalLine", ++ "description": "Test a source map that has an invalid negative non-relative original line field", ++ "baseFile": "invalid-mapping-segment-negative-original-line.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-original-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeOriginalColumn", ++ "description": "Test a source map that has an invalid negative non-relative original column field", ++ "baseFile": "invalid-mapping-segment-negative-original-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-original-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeNameIndex", ++ "description": "Test a source map that has an invalid negative non-relative name index field", ++ "baseFile": "invalid-mapping-segment-negative-name-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-name-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeColumn", ++ "description": "Test a source map that has an invalid negative relative column field", ++ "baseFile": "invalid-mapping-segment-negative-relative-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeSourceIndex", ++ "description": "Test a source map that has an invalid negative relative source index field", ++ "baseFile": "invalid-mapping-segment-negative-relative-source-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-source-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalLine", ++ "description": "Test a source map that has an invalid negative relative original line field", ++ "baseFile": "invalid-mapping-segment-negative-relative-original-line.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeOriginalColumn", ++ "description": "Test a source map that has an invalid negative relative original column field", ++ "baseFile": "invalid-mapping-segment-negative-relative-original-column.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-original-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNegativeRelativeNameIndex", ++ "description": "Test a source map that has an invalid negative relative name index field", ++ "baseFile": "invalid-mapping-segment-negative-relative-name-index.js", ++ "sourceMapFile": "invalid-mapping-segment-negative-relative-name-index.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithColumnExceeding32Bits", ++ "description": "Test a source map that has a column field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-column-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-column-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithSourceIndexExceeding32Bits", ++ "description": "Test a source map that has a source index field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-source-index-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-source-index-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithOriginalLineExceeding32Bits", ++ "description": "Test a source map that has a original line field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-original-line-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-original-line-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithOriginalColumnExceeding32Bits", ++ "description": "Test a source map that has an original column field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-original-column-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-original-column-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "invalidMappingSegmentWithNameIndexExceeding32Bits", ++ "description": "Test a source map that has a name index field that exceeds 32 bits", ++ "baseFile": "invalid-mapping-segment-name-index-too-large.js", ++ "sourceMapFile": "invalid-mapping-segment-name-index-too-large.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "validMappingFieldsWith32BitMaxValues", ++ "description": "Test a source map that has segment fields with max values representable in 32 bits", ++ "baseFile": "valid-mapping-boundary-values.js", ++ "sourceMapFile": "valid-mapping-boundary-values.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingLargeVLQ", ++ "description": "Test a source map that has a segment field VLQ that is very long but within 32-bits", ++ "baseFile": "valid-mapping-large-vlq.js", ++ "sourceMapFile": "valid-mapping-large-vlq.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingEmptyGroups", ++ "description": "Test a source map with a mapping that has many empty groups", ++ "baseFile": "valid-mapping-empty-groups.js", ++ "sourceMapFile": "valid-mapping-empty-groups.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "validMappingEmptyString", ++ "description": "Test a source map with an empty string mapping", ++ "baseFile": "valid-mapping-empty-string.js", ++ "sourceMapFile": "valid-mapping-empty-string.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "indexMapWrongTypeSections", ++ "description": "Test an index map with a sections field with the wrong type", ++ "baseFile": "index-map-wrong-type-sections.js", ++ "sourceMapFile": "index-map-wrong-type-sections.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapWrongTypeOffset", ++ "description": "Test an index map with an offset field with the wrong type", ++ "baseFile": "index-map-wrong-type-offset.js", ++ "sourceMapFile": "index-map-wrong-type-offset.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapWrongTypeMap", ++ "description": "Test an index map with a map field with the wrong type", ++ "baseFile": "index-map-wrong-type-map.js", ++ "sourceMapFile": "index-map-wrong-type-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidBaseMappings", ++ "description": "Test that an index map cannot also have a regular mappings field", ++ "baseFile": "index-map-invalid-base-mappings.js", ++ "sourceMapFile": "index-map-invalid-base-mappings.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidOverlap", ++ "description": "Test that an invalid index map with multiple sections that overlap", ++ "baseFile": "index-map-invalid-overlap.js", ++ "sourceMapFile": "index-map-invalid-overlap.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidOrder", ++ "description": "Test that an invalid index map with multiple sections in the wrong order", ++ "baseFile": "index-map-invalid-order.js", ++ "sourceMapFile": "index-map-invalid-order.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingMap", ++ "description": "Test that an index map that is missing a section map", ++ "baseFile": "index-map-missing-map.js", ++ "sourceMapFile": "index-map-missing-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapInvalidSubMap", ++ "description": "Test that an index map that has an invalid section map", ++ "baseFile": "index-map-invalid-sub-map.js", ++ "sourceMapFile": "index-map-invalid-sub-map.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffset", ++ "description": "Test that an index map that is missing a section offset", ++ "baseFile": "index-map-missing-offset.js", ++ "sourceMapFile": "index-map-missing-offset.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffsetLine", ++ "description": "Test that an index map that is missing a section offset's line field", ++ "baseFile": "index-map-missing-offset-line.js", ++ "sourceMapFile": "index-map-missing-offset-line.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapMissingOffsetColumn", ++ "description": "Test that an index map that is missing a section offset's column field", ++ "baseFile": "index-map-missing-offset-column.js", ++ "sourceMapFile": "index-map-missing-offset-column.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapOffsetLineWrongType", ++ "description": "Test that an index map that has an offset line field with the wrong type of value", ++ "baseFile": "index-map-offset-line-wrong-type.js", ++ "sourceMapFile": "index-map-offset-line-wrong-type.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapOffsetColumnWrongType", ++ "description": "Test that an index map that has an offset column field with the wrong type of value", ++ "baseFile": "index-map-offset-column-wrong-type.js", ++ "sourceMapFile": "index-map-offset-column-wrong-type.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapEmptySections", ++ "description": "Test a trivial index map with no sections", ++ "baseFile": "index-map-empty-sections.js", ++ "sourceMapFile": "index-map-empty-sections.js.map", ++ "sourceMapIsValid": true ++ }, ++ { ++ "name": "indexMapFileWrongType1", ++ "description": "Test an index map with a file field with the wrong type", ++ "baseFile": "index-map-file-wrong-type-1.js", ++ "sourceMapFile": "index-map-file-wrong-type-1.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "indexMapFileWrongType2", ++ "description": "Test an index map with a file field with the wrong type", ++ "baseFile": "index-map-file-wrong-type-2.js", ++ "sourceMapFile": "index-map-file-wrong-type-2.js.map", ++ "sourceMapIsValid": false ++ }, ++ { ++ "name": "basicMapping", ++ "description": "Test a simple source map that has several valid mappings", ++ "baseFile": "basic-mapping.js", ++ "sourceMapFile": "basic-mapping.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "sourceRootResolution", ++ "description": "Similar to basic mapping test, but test resoultion of sources with a sourceRoot field", ++ "baseFile": "source-root-resolution.js", ++ "sourceMapFile": "source-root-resolution.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "theroot/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "theroot/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "sourceResolutionAbsoluteURL", ++ "description": "Test resoultion of sources with absolute URLs", ++ "baseFile": "source-resolution-absolute-url.js", ++ "sourceMapFile": "source-resolution-absolute-url.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "/baz/quux/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "/baz/quux/basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "basicMappingWithIndexMap", ++ "description": "Test a version of basic-mapping.js.map that is split into sections with an index map", ++ "baseFile": "basic-mapping-as-index-map.js", ++ "sourceMapFile": "basic-mapping-as-index-map.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "indexMapWithMissingFile", ++ "description": "Same as the basic mapping index map test but without the optional file field", ++ "baseFile": "index-map-missing-file.js", ++ "sourceMapFile": "index-map-missing-file.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ } ++ ] ++ }, ++ { ++ "name": "indexMapWithTwoConcatenatedSources", ++ "description": "Test an index map that has two sub-maps for concatenated sources", ++ "baseFile": "index-map-two-concatenated-sources.js", ++ "sourceMapFile": "index-map-two-concatenated-sources.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 22, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 34, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 3, ++ "originalColumn": 9, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 40, ++ "originalLine": 4, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 47, ++ "originalLine": 4, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 49, ++ "originalLine": 5, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 50, ++ "originalLine": 6, ++ "originalColumn": 0, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "basic-mapping-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 56, ++ "originalLine": 7, ++ "originalColumn": 0, ++ "mappedName": "bar" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 62, ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 71, ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "baz" ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 77, ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 83, ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 88, ++ "originalLine": 2, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "originalSource": "second-source-original.js", ++ "generatedLine": 0, ++ "generatedColumn": 89, ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": "baz" ++ } ++ ] ++ }, ++ { ++ "name": "sourcesNullSourcesContentNonNull", ++ "description": "Test a source map that has a null source but has a sourcesContent", ++ "baseFile": "sources-null-sources-content-non-null.js", ++ "sourceMapFile": "sources-null-sources-content-non-null.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": null, ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": null, ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "sourcesNonNullSourcesContentNull", ++ "description": "Test a source map that has a non-null source but has a null sourcesContent", ++ "baseFile": "sources-non-null-sources-content-null.js", ++ "sourceMapFile": "sources-non-null-sources-content-null.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "basic-mapping-original.js", ++ "originalLine": 0, ++ "originalColumn": 9, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "transitiveMapping", ++ "description": "Test a simple two-stage transitive mapping from a minified JS to a TypeScript source", ++ "baseFile": "transitive-mapping.js", ++ "sourceMapFile": "transitive-mapping.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 13, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 13, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 16, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 23, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 24, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 25, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 29, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "transitiveMappingWithThreeSteps", ++ "description": "Test a three-stage transitive mapping from an un-minified JS to minified JS to a TypeScript source", ++ "baseFile": "transitive-mapping-three-steps.js", ++ "sourceMapFile": "transitive-mapping-three-steps.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 9, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 0, ++ "generatedColumn": 13, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 1, ++ "originalColumn": 13, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 1, ++ "generatedColumn": 4, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 1, ++ "generatedColumn": 11, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 2, ++ "originalColumn": 9, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 2, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 3, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 4, ++ "generatedColumn": 0, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMappingTransitive", ++ "generatedLine": 4, ++ "generatedColumn": 4, ++ "originalSource": "typescript-original.ts", ++ "intermediateMaps": ["transitive-mapping.js.map", "transitive-mapping-original.js.map"], ++ "originalLine": 4, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidSingleDigit", ++ "description": "Test VLQ decoding for a single digit, no continuation VLQ", ++ "baseFile": "vlq-valid-single-digit.js", ++ "sourceMapFile": "vlq-valid-single-digit.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-single-digit-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidNegativeDigit", ++ "description": "Test VLQ decoding where there's a negative digit, no continuation bit", ++ "baseFile": "vlq-valid-negative-digit.js", ++ "sourceMapFile": "vlq-valid-negative-digit.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-negative-digit-original.js", ++ "originalLine": 1, ++ "originalColumn": 3, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 2, ++ "originalSource": "vlq-valid-negative-digit-original.js", ++ "originalLine": 1, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidContinuationBitPresent1", ++ "description": "Test VLQ decoding where continuation bits are present (continuations are leading zero)", ++ "baseFile": "vlq-valid-continuation-bit-present-1.js", ++ "sourceMapFile": "vlq-valid-continuation-bit-present-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 15, ++ "originalSource": "vlq-valid-continuation-bit-present-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "vlqValidContinuationBitPresent2", ++ "description": "Test VLQ decoding where continuation bits are present (continuations have non-zero bits)", ++ "baseFile": "vlq-valid-continuation-bit-present-2.js", ++ "sourceMapFile": "vlq-valid-continuation-bit-present-2.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 2, ++ "generatedColumn": 16, ++ "originalSource": "vlq-valid-continuation-bit-present-2-original.js", ++ "originalLine": 1, ++ "originalColumn": 1, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsSingleFieldSegment", ++ "description": "Test mapping semantics for a single field segment mapping", ++ "baseFile": "mapping-semantics-single-field-segment.js", ++ "sourceMapFile": "mapping-semantics-single-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 0, ++ "originalSource": "mapping-semantics-single-field-segment-original.js", ++ "originalLine": 0, ++ "originalColumn": 1, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 2, ++ "originalSource": null, ++ "originalLine": null, ++ "originalColumn": null, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsFourFieldSegment", ++ "description": "Test mapping semantics for a four field segment mapping", ++ "baseFile": "mapping-semantics-four-field-segment.js", ++ "sourceMapFile": "mapping-semantics-four-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-four-field-segment-original.js", ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsFiveFieldSegment", ++ "description": "Test mapping semantics for a five field segment mapping", ++ "baseFile": "mapping-semantics-five-field-segment.js", ++ "sourceMapFile": "mapping-semantics-five-field-segment.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-five-field-segment-original.js", ++ "originalLine": 2, ++ "originalColumn": 2, ++ "mappedName": "foo" ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsColumnReset", ++ "description": "Test that the generated column field resets to zero on new lines", ++ "baseFile": "mapping-semantics-column-reset.js", ++ "sourceMapFile": "mapping-semantics-column-reset.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-column-reset-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 1, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-column-reset-original.js", ++ "originalLine": 1, ++ "originalColumn": 0, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsRelative1", ++ "description": "Test that fields are calculated relative to previous ones", ++ "baseFile": "mapping-semantics-relative-1.js", ++ "sourceMapFile": "mapping-semantics-relative-1.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-relative-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 0, ++ "mappedName": null ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 5, ++ "originalSource": "mapping-semantics-relative-1-original.js", ++ "originalLine": 0, ++ "originalColumn": 4, ++ "mappedName": null ++ } ++ ] ++ }, ++ { ++ "name": "mappingSemanticsRelative2", ++ "description": "Test that fields are calculated relative to previous ones, across lines", ++ "baseFile": "mapping-semantics-relative-2.js", ++ "sourceMapFile": "mapping-semantics-relative-2.js.map", ++ "sourceMapIsValid": true, ++ "testActions": [ ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 0, ++ "generatedColumn": 1, ++ "originalSource": "mapping-semantics-relative-2-original.js", ++ "originalLine": 0, ++ "originalColumn": 2, ++ "mappedName": "foo" ++ }, ++ { ++ "actionType": "checkMapping", ++ "generatedLine": 1, ++ "generatedColumn": 2, ++ "originalSource": "mapping-semantics-relative-2-original.js", ++ "originalLine": 1, ++ "originalColumn": 2, ++ "mappedName": "bar" ++ } ++ ] ++ } ++ ] ++} +diff --git a/LayoutTests/imported/tg4/source-map-tests/webkit/0001-Add-harness-for-source-maps-spec-tests.patch b/LayoutTests/imported/tg4/source-map-tests/webkit/0001-Add-harness-for-source-maps-spec-tests.patch +new file mode 100644 +index 000000000000..050bf042bac6 +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/webkit/0001-Add-harness-for-source-maps-spec-tests.patch +@@ -0,0 +1,1649 @@ ++From d2ac7108de0b2a76e072ba8d7d4a9e733d3782ef Mon Sep 17 00:00:00 2001 ++From: Asumu Takikawa <asumu@igalia.com> ++Date: Mon, 11 Mar 2024 13:41:31 -0700 ++Subject: [PATCH] Add harness for source maps spec tests ++ ++Need a short description (OOPS!). ++Need the bug URL (OOPS!). ++ ++Reviewed by NOBODY (OOPS!). ++ ++Explanation of why this fixes the bug (OOPS!). ++ ++* LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js.map: Added. ++* LayoutTests/inspector/model/resources/basic-mapping-original.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/basic-mapping.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/basic-mapping.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js: Added. ++* LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js.map: Added. ++* LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js: Added. ++* LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js.map: Added. ++* LayoutTests/inspector/model/resources/names-missing.js: Added. ++* LayoutTests/inspector/model/resources/names-missing.js.map: Added. ++* LayoutTests/inspector/model/resources/names-not-a-list-1.js: Added. ++* LayoutTests/inspector/model/resources/names-not-a-list-1.js.map: Added. ++* LayoutTests/inspector/model/resources/names-not-a-list-2.js: Added. ++* LayoutTests/inspector/model/resources/names-not-a-list-2.js.map: Added. ++* LayoutTests/inspector/model/resources/source-map-spec-tests.json: Added. ++* LayoutTests/inspector/model/resources/sources-missing.js: Added. ++* LayoutTests/inspector/model/resources/sources-missing.js.map: Added. ++* LayoutTests/inspector/model/resources/sources-not-a-list-1.js: Added. ++* LayoutTests/inspector/model/resources/sources-not-a-list-1.js.map: Added. ++* LayoutTests/inspector/model/resources/sources-not-a-list-2.js: Added. ++* LayoutTests/inspector/model/resources/sources-not-a-list-2.js.map: Added. ++* LayoutTests/inspector/model/resources/unrecognized-property.js: Added. ++* LayoutTests/inspector/model/resources/unrecognized-property.js.map: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js.map: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js.map: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js.map: Added. ++* LayoutTests/inspector/model/resources/valid-mapping-null-sources.js: Added. ++(foo): ++(bar): ++* LayoutTests/inspector/model/resources/valid-mapping-null-sources.js.map: Added. ++* LayoutTests/inspector/model/resources/version-not-a-number.js: Added. ++* LayoutTests/inspector/model/resources/version-not-a-number.js.map: Added. ++* LayoutTests/inspector/model/resources/version-numeric-string.js: Added. ++* LayoutTests/inspector/model/resources/version-numeric-string.js.map: Added. ++* LayoutTests/inspector/model/resources/version-too-high.js: Added. ++* LayoutTests/inspector/model/resources/version-too-high.js.map: Added. ++* LayoutTests/inspector/model/resources/version-too-low.js: Added. ++* LayoutTests/inspector/model/resources/version-too-low.js.map: Added. ++* LayoutTests/inspector/model/resources/version-valid.js: Added. ++* LayoutTests/inspector/model/resources/version-valid.js.map: Added. ++* LayoutTests/inspector/model/source-map-spec-expected.txt: Added. ++* LayoutTests/inspector/model/source-map-spec.html: Added. ++--- ++ .../resources/basic-mapping-as-index-map.js | 2 + ++ .../basic-mapping-as-index-map.js.map | 23 + ++ .../model/resources/basic-mapping-original.js | 8 + ++ .../model/resources/basic-mapping.js | 2 + ++ .../model/resources/basic-mapping.js.map | 6 + ++ .../invalid-mapping-bad-separator.js | 2 + ++ .../invalid-mapping-bad-separator.js.map | 6 + ++ .../invalid-mapping-not-a-string-1.js | 1 + ++ .../invalid-mapping-not-a-string-1.js.map | 7 + ++ .../invalid-mapping-not-a-string-2.js | 1 + ++ .../invalid-mapping-not-a-string-2.js.map | 7 + ++ ...nvalid-mapping-segment-column-too-large.js | 1 + ++ ...id-mapping-segment-column-too-large.js.map | 7 + ++ ...apping-segment-name-index-out-of-bounds.js | 1 + ++ ...ng-segment-name-index-out-of-bounds.js.map | 7 + ++ ...id-mapping-segment-name-index-too-large.js | 1 + ++ ...apping-segment-name-index-too-large.js.map | 7 + ++ ...invalid-mapping-segment-negative-column.js | 1 + ++ ...lid-mapping-segment-negative-column.js.map | 7 + ++ ...lid-mapping-segment-negative-name-index.js | 1 + ++ ...mapping-segment-negative-name-index.js.map | 7 + ++ ...apping-segment-negative-original-column.js | 1 + ++ ...ng-segment-negative-original-column.js.map | 7 + ++ ...-mapping-segment-negative-original-line.js | 1 + ++ ...ping-segment-negative-original-line.js.map | 7 + ++ ...d-mapping-segment-negative-source-index.js | 1 + ++ ...pping-segment-negative-source-index.js.map | 7 + ++ ...pping-segment-original-column-too-large.js | 1 + ++ ...g-segment-original-column-too-large.js.map | 7 + ++ ...mapping-segment-original-line-too-large.js | 1 + ++ ...ing-segment-original-line-too-large.js.map | 7 + ++ ...ping-segment-source-index-out-of-bounds.js | 1 + ++ ...-segment-source-index-out-of-bounds.js.map | 7 + ++ ...-mapping-segment-source-index-too-large.js | 1 + ++ ...ping-segment-source-index-too-large.js.map | 7 + ++ ...valid-mapping-segment-with-three-fields.js | 2 + ++ ...d-mapping-segment-with-three-fields.js.map | 6 + ++ ...invalid-mapping-segment-with-two-fields.js | 2 + ++ ...lid-mapping-segment-with-two-fields.js.map | 6 + ++ ...nvalid-mapping-segment-with-zero-fields.js | 1 + ++ ...id-mapping-segment-with-zero-fields.js.map | 7 + ++ .../resources/invalid-vlq-non-base64-char.js | 1 + ++ .../invalid-vlq-non-base64-char.js.map | 6 + ++ .../model/resources/names-missing.js | 1 + ++ .../model/resources/names-missing.js.map | 5 + ++ .../model/resources/names-not-a-list-1.js | 1 + ++ .../model/resources/names-not-a-list-1.js.map | 6 + ++ .../model/resources/names-not-a-list-2.js | 1 + ++ .../model/resources/names-not-a-list-2.js.map | 6 + ++ .../resources/source-map-spec-tests.json | 503 ++++++++++++++++++ ++ .../model/resources/sources-missing.js | 1 + ++ .../model/resources/sources-missing.js.map | 5 + ++ .../model/resources/sources-not-a-list-1.js | 1 + ++ .../resources/sources-not-a-list-1.js.map | 6 + ++ .../model/resources/sources-not-a-list-2.js | 1 + ++ .../resources/sources-not-a-list-2.js.map | 6 + ++ .../model/resources/unrecognized-property.js | 1 + ++ .../resources/unrecognized-property.js.map | 8 + ++ .../valid-mapping-boundary-values.js | 1 + ++ .../valid-mapping-boundary-values.js.map | 7 + ++ .../resources/valid-mapping-empty-groups.js | 1 + ++ .../valid-mapping-empty-groups.js.map | 7 + ++ .../resources/valid-mapping-large-vlq.js | 1 + ++ .../resources/valid-mapping-large-vlq.js.map | 6 + ++ .../resources/valid-mapping-null-sources.js | 2 + ++ .../valid-mapping-null-sources.js.map | 6 + ++ .../model/resources/version-not-a-number.js | 1 + ++ .../resources/version-not-a-number.js.map | 6 + ++ .../model/resources/version-numeric-string.js | 1 + ++ .../resources/version-numeric-string.js.map | 6 + ++ .../model/resources/version-too-high.js | 1 + ++ .../model/resources/version-too-high.js.map | 6 + ++ .../model/resources/version-too-low.js | 1 + ++ .../model/resources/version-too-low.js.map | 6 + ++ .../model/resources/version-valid.js | 1 + ++ .../model/resources/version-valid.js.map | 6 + ++ .../model/source-map-spec-expected.txt | 22 + ++ .../inspector/model/source-map-spec.html | 83 +++ ++ 78 files changed, 915 insertions(+) ++ create mode 100644 LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js ++ create mode 100644 LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/basic-mapping-original.js ++ create mode 100644 LayoutTests/inspector/model/resources/basic-mapping.js ++ create mode 100644 LayoutTests/inspector/model/resources/basic-mapping.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js ++ create mode 100644 LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/names-missing.js ++ create mode 100644 LayoutTests/inspector/model/resources/names-missing.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/names-not-a-list-1.js ++ create mode 100644 LayoutTests/inspector/model/resources/names-not-a-list-1.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/names-not-a-list-2.js ++ create mode 100644 LayoutTests/inspector/model/resources/names-not-a-list-2.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/source-map-spec-tests.json ++ create mode 100644 LayoutTests/inspector/model/resources/sources-missing.js ++ create mode 100644 LayoutTests/inspector/model/resources/sources-missing.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/sources-not-a-list-1.js ++ create mode 100644 LayoutTests/inspector/model/resources/sources-not-a-list-1.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/sources-not-a-list-2.js ++ create mode 100644 LayoutTests/inspector/model/resources/sources-not-a-list-2.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/unrecognized-property.js ++ create mode 100644 LayoutTests/inspector/model/resources/unrecognized-property.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-null-sources.js ++ create mode 100644 LayoutTests/inspector/model/resources/valid-mapping-null-sources.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/version-not-a-number.js ++ create mode 100644 LayoutTests/inspector/model/resources/version-not-a-number.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/version-numeric-string.js ++ create mode 100644 LayoutTests/inspector/model/resources/version-numeric-string.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/version-too-high.js ++ create mode 100644 LayoutTests/inspector/model/resources/version-too-high.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/version-too-low.js ++ create mode 100644 LayoutTests/inspector/model/resources/version-too-low.js.map ++ create mode 100644 LayoutTests/inspector/model/resources/version-valid.js ++ create mode 100644 LayoutTests/inspector/model/resources/version-valid.js.map ++ create mode 100644 LayoutTests/inspector/model/source-map-spec-expected.txt ++ create mode 100644 LayoutTests/inspector/model/source-map-spec.html ++ ++diff --git a/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js b/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js ++new file mode 100644 ++index 000000000000..b9fae380437d ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=basic-mapping-as-index-map.js.map ++diff --git a/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js.map b/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js.map ++new file mode 100644 ++index 000000000000..12053a5698a6 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/basic-mapping-as-index-map.js.map ++@@ -0,0 +1,23 @@ +++{ +++ "version": "3", +++ "sections": [ +++ { +++ "offset": { "line": 0, "column": 0 }, +++ "map": { +++ "version": "3", +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAAA,SAASA,MACP,OAAO,EACT,CACA" +++ } +++ }, +++ { +++ "offset": { "line": 0, "column": 34 }, +++ "map": { +++ "version": "3", +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAGSC,MACP,OAAO,EACT,CACAD,MACAC" +++ } +++ } +++ ] +++} ++diff --git a/LayoutTests/inspector/model/resources/basic-mapping-original.js b/LayoutTests/inspector/model/resources/basic-mapping-original.js ++new file mode 100644 ++index 000000000000..301b186cb15e ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/basic-mapping-original.js ++@@ -0,0 +1,8 @@ +++function foo() { +++ return 42; +++} +++function bar() { +++ return 24; +++} +++foo(); +++bar(); ++diff --git a/LayoutTests/inspector/model/resources/basic-mapping.js b/LayoutTests/inspector/model/resources/basic-mapping.js ++new file mode 100644 ++index 000000000000..2e479a4175b8 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/basic-mapping.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=basic-mapping.js.map ++diff --git a/LayoutTests/inspector/model/resources/basic-mapping.js.map b/LayoutTests/inspector/model/resources/basic-mapping.js.map ++new file mode 100644 ++index 000000000000..12dc9679a4b1 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/basic-mapping.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version":3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings":"AAAA,SAASA,MACP,OAAO,EACT,CACA,SAASC,MACP,OAAO,EACT,CACAD,MACAC" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js b/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js ++new file mode 100644 ++index 000000000000..25338aca30ce ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-bad-separator.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js.map ++new file mode 100644 ++index 000000000000..5f4f5b92330a ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-bad-separator.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAAA.SAASA:MACP" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js ++new file mode 100644 ++index 000000000000..cb38e2fe9d7b ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-not-a-string-1.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js.map ++new file mode 100644 ++index 000000000000..5bf3e2a9d85b ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-1.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-not-a-string-1.js", +++ "sources": ["empty-original.js"], +++ "mappings": 5 +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js ++new file mode 100644 ++index 000000000000..3d84abd6c6b4 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-not-a-string-2.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js.map ++new file mode 100644 ++index 000000000000..4527e7f7641c ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-not-a-string-2.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-not-a-string-2.js", +++ "sources": ["empty-original.js"], +++ "mappings": [1, 2, 3, 4] +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js ++new file mode 100644 ++index 000000000000..55591f874b1b ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-column-too-large.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js.map ++new file mode 100644 ++index 000000000000..b4c059e0151b ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-column-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-column-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "ggggggE" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js ++new file mode 100644 ++index 000000000000..2a6b434eff58 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-name-index-out-of-bounds.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map ++new file mode 100644 ++index 000000000000..8dd2ea6c2da0 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-out-of-bounds.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "file": "invalid-mapping-segment-name-index-out-of-bounds.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAC" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js ++new file mode 100644 ++index 000000000000..709e34dbd326 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-name-index-too-large.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js.map ++new file mode 100644 ++index 000000000000..c7bf5b98d120 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-name-index-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-name-index-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAggggggE" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js ++new file mode 100644 ++index 000000000000..a202152d6fdf ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-column.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js.map ++new file mode 100644 ++index 000000000000..403878bfa47a ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-column.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-column.js", +++ "sources": ["empty-original.js"], +++ "mappings": "F" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js ++new file mode 100644 ++index 000000000000..3e3f63420467 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-name-index.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js.map ++new file mode 100644 ++index 000000000000..b94f63646e46 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-name-index.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-name-index.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAAF" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js ++new file mode 100644 ++index 000000000000..f21d5342b395 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-original-column.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js.map ++new file mode 100644 ++index 000000000000..011c639d3f91 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-column.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-original-column.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAF" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js ++new file mode 100644 ++index 000000000000..b37309601ce0 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-original-line.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js.map ++new file mode 100644 ++index 000000000000..e7ec993eebda ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-original-line.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-original-line.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAFA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js ++new file mode 100644 ++index 000000000000..6e05849b6a03 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-negative-source-index.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js.map ++new file mode 100644 ++index 000000000000..596c2f298bbe ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-negative-source-index.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-negative-source-index.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AFAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js ++new file mode 100644 ++index 000000000000..0936ed7ea8fd ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-original-column-too-large.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js.map ++new file mode 100644 ++index 000000000000..ff2103fe24fe ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-column-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-original-column-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAAggggggE" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js ++new file mode 100644 ++index 000000000000..9b3aa5a361ae ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-original-line-too-large.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js.map ++new file mode 100644 ++index 000000000000..890f1c71fc5b ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-original-line-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-original-line-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AAggggggEA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js ++new file mode 100644 ++index 000000000000..2e5fbca26825 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-source-index-out-of-bounds.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map ++new file mode 100644 ++index 000000000000..86dedb114fa9 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-out-of-bounds.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-source-index-out-of-bounds.js", +++ "sources": ["empty-original.js"], +++ "mappings": "ACAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js ++new file mode 100644 ++index 000000000000..3f4943e1272d ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-source-index-too-large.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js.map ++new file mode 100644 ++index 000000000000..e9f858c6e15d ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-source-index-too-large.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-source-index-too-large.js", +++ "sources": ["empty-original.js"], +++ "mappings": "AggggggEAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js ++new file mode 100644 ++index 000000000000..4b868fac9c5e ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-segment-with-three-fields.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js.map ++new file mode 100644 ++index 000000000000..c2af1165ad8f ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-three-fields.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js ++new file mode 100644 ++index 000000000000..96045a7a11dd ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=invalid-mapping-segment-with-two-fields.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js.map ++new file mode 100644 ++index 000000000000..73cf00fa1c96 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-two-fields.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": ["foo","bar"], +++ "sources": ["basic-mapping-original.js"], +++ "mappings": "AA" +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js ++new file mode 100644 ++index 000000000000..9d5332a56ca5 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-mapping-segment-with-zero-fields.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js.map b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js.map ++new file mode 100644 ++index 000000000000..5a34d25b645e ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-mapping-segment-with-zero-fields.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "invalid-mapping-segment-with-zero-fields.js", +++ "sources": ["empty-original.js"], +++ "mappings": ",,,," +++} ++diff --git a/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js b/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js ++new file mode 100644 ++index 000000000000..d1b20b41a29f ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=invalid-vlq-non-base64-char.js.map ++diff --git a/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js.map b/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js.map ++new file mode 100644 ++index 000000000000..4fa1ac576885 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/invalid-vlq-non-base64-char.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "A$%?!" +++} ++diff --git a/LayoutTests/inspector/model/resources/names-missing.js b/LayoutTests/inspector/model/resources/names-missing.js ++new file mode 100644 ++index 000000000000..58781fd88705 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-missing.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-missing.js.map ++diff --git a/LayoutTests/inspector/model/resources/names-missing.js.map b/LayoutTests/inspector/model/resources/names-missing.js.map ++new file mode 100644 ++index 000000000000..7dc1b929e485 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-missing.js.map ++@@ -0,0 +1,5 @@ +++{ +++ "version" : "3", +++ "sources": ["empty-original.js"], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/names-not-a-list-1.js b/LayoutTests/inspector/model/resources/names-not-a-list-1.js ++new file mode 100644 ++index 000000000000..dc65f1972b5a ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-not-a-list-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-not-a-list-1.js.map ++diff --git a/LayoutTests/inspector/model/resources/names-not-a-list-1.js.map b/LayoutTests/inspector/model/resources/names-not-a-list-1.js.map ++new file mode 100644 ++index 000000000000..843f7cc2e6fd ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-not-a-list-1.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": ["source.js"], +++ "names": "not a list", +++ "mappings": "AAAAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/names-not-a-list-2.js b/LayoutTests/inspector/model/resources/names-not-a-list-2.js ++new file mode 100644 ++index 000000000000..d7251f78da84 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-not-a-list-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=names-not-a-list-2.js.map ++diff --git a/LayoutTests/inspector/model/resources/names-not-a-list-2.js.map b/LayoutTests/inspector/model/resources/names-not-a-list-2.js.map ++new file mode 100644 ++index 000000000000..cd7a42a74c4f ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/names-not-a-list-2.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": ["source.js"], +++ "names": { "foo": 3 }, +++ "mappings": "AAAAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/source-map-spec-tests.json b/LayoutTests/inspector/model/resources/source-map-spec-tests.json ++new file mode 100644 ++index 000000000000..3091a3c93273 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/source-map-spec-tests.json ++@@ -0,0 +1,503 @@ +++{ +++ "tests": [ +++ { +++ "name": "versionValid", +++ "description": "Test a simple source map with a valid version number", +++ "baseFile": "version-valid.js", +++ "sourceMapFile": "version-valid.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "versionNotANumber", +++ "description": "Test a source map with a version field that is not a number", +++ "baseFile": "version-not-a-number.js", +++ "sourceMapFile": "version-not-a-number.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionNumericString", +++ "description": "Test a source map with a version field that is a number as a string", +++ "baseFile": "version-numeric-string.js", +++ "sourceMapFile": "version-numeric-string.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooHigh", +++ "description": "Test a source map with an integer version field that is too high", +++ "baseFile": "version-too-high.js", +++ "sourceMapFile": "version-too-high.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "versionTooLow", +++ "description": "Test a source map with an integer version field that is too low", +++ "baseFile": "version-too-low.js", +++ "sourceMapFile": "version-too-low.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesMissing", +++ "description": "Test a source map that is missing a necessary sources field", +++ "baseFile": "sources-missing.js", +++ "sourceMapFile": "sources-missing.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesNotAList1", +++ "description": "Test a source map with a sources field that is not a valid list (string)", +++ "baseFile": "sources-not-a-list-1.js", +++ "sourceMapFile": "sources-not-a-list-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "sourcesNotAList2", +++ "description": "Test a source map with a sources field that is not a valid list (object)", +++ "baseFile": "sources-not-a-list-2.js", +++ "sourceMapFile": "sources-not-a-list-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesMissing", +++ "description": "Test a source map that is missing a necessary names field", +++ "baseFile": "names-missing.js", +++ "sourceMapFile": "names-missing.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesNotAList1", +++ "description": "Test a source map with a names field that is not a valid list (string)", +++ "baseFile": "names-not-a-list-1.js", +++ "sourceMapFile": "names-not-a-list-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "namesNotAList2", +++ "description": "Test a source map with a names field that is not a valid list (object)", +++ "baseFile": "names-not-a-list-2.js", +++ "sourceMapFile": "names-not-a-list-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "unrecognizedProperty", +++ "description": "Test a source map that has an extra field not explicitly encoded in the spec", +++ "baseFile": "unrecognized-property.js", +++ "sourceMapFile": "unrecognized-property.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "invalidVLQDueToNonBase64Character", +++ "description": "Test a source map that has a mapping with an invalid non-base64 character", +++ "baseFile": "invalid-vlq-non-base64-char.js", +++ "sourceMapFile": "invalid-vlq-non-base64-char.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingNotAString1", +++ "description": "Test a source map that has an invalid mapping that is not a string (number)", +++ "baseFile": "invalid-mapping-not-a-string-1.js", +++ "sourceMapFile": "invalid-mapping-not-a-string-1.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingNotAString2", +++ "description": "Test a source map that has an invalid mapping that is not a string (array)", +++ "baseFile": "invalid-mapping-not-a-string-2.js", +++ "sourceMapFile": "invalid-mapping-not-a-string-2.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentBadSeparator", +++ "description": "Test a source map that uses separator characters not recognized in the spec", +++ "baseFile": "invalid-mapping-bad-separator.js", +++ "sourceMapFile": "invalid-mapping-bad-separator.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithZeroFields", +++ "description": "Test a source map that has the wrong number (zero) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-zero-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-zero-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithTwoFields", +++ "description": "Test a source map that has the wrong number (two) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-two-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-two-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithThreeFields", +++ "description": "Test a source map that has the wrong number (three) of segments fields", +++ "baseFile": "invalid-mapping-segment-with-three-fields.js", +++ "sourceMapFile": "invalid-mapping-segment-with-three-fields.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithSourceIndexOutOfBounds", +++ "description": "Test a source map that has a source index field that is out of bounds of the sources field", +++ "baseFile": "invalid-mapping-segment-source-index-out-of-bounds.js", +++ "sourceMapFile": "invalid-mapping-segment-source-index-out-of-bounds.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNameIndexOutOfBounds", +++ "description": "Test a source map that has a name index field that is out of bounds of the names field", +++ "baseFile": "invalid-mapping-segment-name-index-out-of-bounds.js", +++ "sourceMapFile": "invalid-mapping-segment-name-index-out-of-bounds.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeColumn", +++ "description": "Test a source map that has an invalid negative non-relative column field", +++ "baseFile": "invalid-mapping-segment-negative-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeSourceIndex", +++ "description": "Test a source map that has an invalid negative non-relative source index field", +++ "baseFile": "invalid-mapping-segment-negative-source-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-source-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeOriginalLine", +++ "description": "Test a source map that has an invalid negative non-relative original line field", +++ "baseFile": "invalid-mapping-segment-negative-original-line.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-original-line.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeOriginalColumn", +++ "description": "Test a source map that has an invalid negative non-relative original column field", +++ "baseFile": "invalid-mapping-segment-negative-original-column.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-original-column.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNegativeNameIndex", +++ "description": "Test a source map that has an invalid negative non-relative name index field", +++ "baseFile": "invalid-mapping-segment-negative-name-index.js", +++ "sourceMapFile": "invalid-mapping-segment-negative-name-index.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithColumnExceeding32Bits", +++ "description": "Test a source map that has a column field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-column-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-column-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithSourceIndexExceeding32Bits", +++ "description": "Test a source map that has a source index field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-source-index-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-source-index-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithOriginalLineExceeding32Bits", +++ "description": "Test a source map that has a original line field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-original-line-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-original-line-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithOriginalColumnExceeding32Bits", +++ "description": "Test a source map that has an original column field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-original-column-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-original-column-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "invalidMappingSegmentWithNameIndexExceeding32Bits", +++ "description": "Test a source map that has a name index field that exceeds 32 bits", +++ "baseFile": "invalid-mapping-segment-name-index-too-large.js", +++ "sourceMapFile": "invalid-mapping-segment-name-index-too-large.js.map", +++ "sourceMapIsValid": false +++ }, +++ { +++ "name": "validMappingFieldsWith32BitMaxValues", +++ "description": "Test a source map that has segment fields with max values representable in 32 bits", +++ "baseFile": "valid-mapping-boundary-values.js", +++ "sourceMapFile": "valid-mapping-boundary-values.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "validMappingLargeVLQ", +++ "description": "Test a source map that has a segment field VLQ that is very long but within 32-bits", +++ "baseFile": "valid-mapping-large-vlq.js", +++ "sourceMapFile": "valid-mapping-large-vlq.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "validMappingEmptyGroups", +++ "description": "Test a source map with a mapping that has many empty groups", +++ "baseFile": "valid-mapping-empty-groups.js", +++ "sourceMapFile": "valid-mapping-empty-groups.js.map", +++ "sourceMapIsValid": true +++ }, +++ { +++ "name": "basicMapping", +++ "description": "Test a simple source map that has several valid mappings", +++ "baseFile": "basic-mapping.js", +++ "sourceMapFile": "basic-mapping.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ } +++ ] +++ }, +++ { +++ "name": "basicMappingWithIndexMap", +++ "description": "Test a version of basic-mapping.js.map that is split into sections with an index map", +++ "baseFile": "basic-mapping-as-index-map.js", +++ "sourceMapFile": "basic-mapping-as-index-map.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 15, +++ "originalLine": 1, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 22, +++ "originalLine": 1, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 24, +++ "originalLine": 2, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 25, +++ "originalLine": 3, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 34, +++ "originalSource": "basic-mapping-original.js", +++ "originalLine": 3, +++ "originalColumn": 9, +++ "mappedName": "bar" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 40, +++ "originalLine": 4, +++ "originalColumn": 2, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 47, +++ "originalLine": 4, +++ "originalColumn": 9, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 49, +++ "originalLine": 5, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 50, +++ "originalLine": 6, +++ "originalColumn": 0, +++ "mappedName": "foo" +++ }, +++ { +++ "actionType": "checkMapping", +++ "originalSource": "basic-mapping-original.js", +++ "generatedLine": 0, +++ "generatedColumn": 56, +++ "originalLine": 7, +++ "originalColumn": 0, +++ "mappedName": "bar" +++ } +++ ] +++ }, +++ { +++ "name": "validMappingNullSources", +++ "description": "Test a source map that has null sources", +++ "baseFile": "valid-mapping-null-sources.js", +++ "sourceMapFile": "valid-mapping-null-sources.js.map", +++ "sourceMapIsValid": true, +++ "testActions": [ +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 0, +++ "originalSource": null, +++ "originalLine": 0, +++ "originalColumn": 0, +++ "mappedName": null +++ }, +++ { +++ "actionType": "checkMapping", +++ "generatedLine": 0, +++ "generatedColumn": 9, +++ "originalSource": null, +++ "originalLine": 0, +++ "originalColumn": 9, +++ "mappedName": "foo" +++ } +++ ] +++ } +++ ] +++} ++diff --git a/LayoutTests/inspector/model/resources/sources-missing.js b/LayoutTests/inspector/model/resources/sources-missing.js ++new file mode 100644 ++index 000000000000..779b865e2769 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-missing.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-missing.js.map ++diff --git a/LayoutTests/inspector/model/resources/sources-missing.js.map b/LayoutTests/inspector/model/resources/sources-missing.js.map ++new file mode 100644 ++index 000000000000..61122fcb3f25 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-missing.js.map ++@@ -0,0 +1,5 @@ +++{ +++ "version" : "3", +++ "names": ["foo"], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/sources-not-a-list-1.js b/LayoutTests/inspector/model/resources/sources-not-a-list-1.js ++new file mode 100644 ++index 000000000000..7e33b7e86725 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-not-a-list-1.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-not-a-list-1.js.map ++diff --git a/LayoutTests/inspector/model/resources/sources-not-a-list-1.js.map b/LayoutTests/inspector/model/resources/sources-not-a-list-1.js.map ++new file mode 100644 ++index 000000000000..b2e24787bc16 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-not-a-list-1.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": "not a list", +++ "names": ["foo"], +++ "mappings": "AAAAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/sources-not-a-list-2.js b/LayoutTests/inspector/model/resources/sources-not-a-list-2.js ++new file mode 100644 ++index 000000000000..4021f763fc88 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-not-a-list-2.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=sources-not-a-list-2.js.map ++diff --git a/LayoutTests/inspector/model/resources/sources-not-a-list-2.js.map b/LayoutTests/inspector/model/resources/sources-not-a-list-2.js.map ++new file mode 100644 ++index 000000000000..6a6a8635729c ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/sources-not-a-list-2.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": { "source.js": 3 }, +++ "names": ["foo"], +++ "mappings": "AAAAA" +++} ++diff --git a/LayoutTests/inspector/model/resources/unrecognized-property.js b/LayoutTests/inspector/model/resources/unrecognized-property.js ++new file mode 100644 ++index 000000000000..19dfb0e2e6c7 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/unrecognized-property.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=unrecognized-property.js.map ++diff --git a/LayoutTests/inspector/model/resources/unrecognized-property.js.map b/LayoutTests/inspector/model/resources/unrecognized-property.js.map ++new file mode 100644 ++index 000000000000..40bee558a4ff ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/unrecognized-property.js.map ++@@ -0,0 +1,8 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "", +++ "foobar": 42, +++ "unusedProperty": [1, 2, 3, 4] +++} ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js b/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js ++new file mode 100644 ++index 000000000000..3c49709e05ac ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-boundary-values.js.map ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js.map b/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js.map ++new file mode 100644 ++index 000000000000..4dd836e63d8f ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-boundary-values.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": ["foo"], +++ "file": "valid-mapping-boundary-values.js", +++ "sources": ["empty-original.js"], +++ "mappings": "+/////DA+/////D+/////DA" +++} ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js b/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js ++new file mode 100644 ++index 000000000000..a2b767b619a0 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-empty-groups.js.map ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js.map b/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js.map ++new file mode 100644 ++index 000000000000..53be4ae4ae91 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-empty-groups.js.map ++@@ -0,0 +1,7 @@ +++{ +++ "version": 3, +++ "names": [], +++ "file": "valid-mapping-empty-groups.js", +++ "sources": ["empty-original.js"], +++ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" +++} ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js b/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js ++new file mode 100644 ++index 000000000000..b0cd8978132a ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=valid-mapping-large-vlq.js.map ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js.map b/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js.map ++new file mode 100644 ++index 000000000000..76e18704c4b1 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-large-vlq.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version": 3, +++ "names": [], +++ "sources": ["valid-mapping-large-vlq.js"], +++ "mappings": "igggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggA" +++} ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js b/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js ++new file mode 100644 ++index 000000000000..ee2acf0f5b2f ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js ++@@ -0,0 +1,2 @@ +++function foo(){return 42}function bar(){return 24}foo();bar(); +++//# sourceMappingURL=valid-mapping-null-sources.js.map ++diff --git a/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js.map b/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js.map ++new file mode 100644 ++index 000000000000..199cda936955 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/valid-mapping-null-sources.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version":3, +++ "names": ["foo"], +++ "sources": [null], +++ "mappings":"AAAA,SAASA" +++} ++diff --git a/LayoutTests/inspector/model/resources/version-not-a-number.js b/LayoutTests/inspector/model/resources/version-not-a-number.js ++new file mode 100644 ++index 000000000000..ae2342e2ffe5 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-not-a-number.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-not-a-number.js.map ++diff --git a/LayoutTests/inspector/model/resources/version-not-a-number.js.map b/LayoutTests/inspector/model/resources/version-not-a-number.js.map ++new file mode 100644 ++index 000000000000..a584d6e69511 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-not-a-number.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3foo", +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/version-numeric-string.js b/LayoutTests/inspector/model/resources/version-numeric-string.js ++new file mode 100644 ++index 000000000000..a55170885da6 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-numeric-string.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-numeric-string.js.map ++diff --git a/LayoutTests/inspector/model/resources/version-numeric-string.js.map b/LayoutTests/inspector/model/resources/version-numeric-string.js.map ++new file mode 100644 ++index 000000000000..dbe52a7d0df6 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-numeric-string.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : "3", +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/version-too-high.js b/LayoutTests/inspector/model/resources/version-too-high.js ++new file mode 100644 ++index 000000000000..55f4e1a298fa ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-too-high.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-too-high.js.map ++diff --git a/LayoutTests/inspector/model/resources/version-too-high.js.map b/LayoutTests/inspector/model/resources/version-too-high.js.map ++new file mode 100644 ++index 000000000000..ee23be32ff27 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-too-high.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 4, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/version-too-low.js b/LayoutTests/inspector/model/resources/version-too-low.js ++new file mode 100644 ++index 000000000000..d9642920b313 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-too-low.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-too-low.js.map ++diff --git a/LayoutTests/inspector/model/resources/version-too-low.js.map b/LayoutTests/inspector/model/resources/version-too-low.js.map ++new file mode 100644 ++index 000000000000..64ca7a6e2e92 ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-too-low.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 2, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/resources/version-valid.js b/LayoutTests/inspector/model/resources/version-valid.js ++new file mode 100644 ++index 000000000000..82d0bfa1eb2a ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-valid.js ++@@ -0,0 +1 @@ +++//# sourceMappingURL=version-valid.js.map ++diff --git a/LayoutTests/inspector/model/resources/version-valid.js.map b/LayoutTests/inspector/model/resources/version-valid.js.map ++new file mode 100644 ++index 000000000000..1a163052d8fc ++--- /dev/null +++++ b/LayoutTests/inspector/model/resources/version-valid.js.map ++@@ -0,0 +1,6 @@ +++{ +++ "version" : 3, +++ "sources": [], +++ "names": [], +++ "mappings": "" +++} ++diff --git a/LayoutTests/inspector/model/source-map-spec-expected.txt b/LayoutTests/inspector/model/source-map-spec-expected.txt ++new file mode 100644 ++index 000000000000..c74ab5bcfb32 ++--- /dev/null +++++ b/LayoutTests/inspector/model/source-map-spec-expected.txt ++@@ -0,0 +1,22 @@ +++Ensure a source map loads for resources with sourceMappingURLs. +++ +++ +++== Running test suite: SourceMapSpec +++-- Running test case: SourceMapSpec +++PASS: Resource should have loaded 1 SourceMap. +++PASS: SourceMap should be a WI.SourceMap instance. +++PASS: Resource may or may not load a SourceMap. +++PASS: Resource may or may not load a SourceMap. +++PASS: Resource may or may not load a SourceMap. +++PASS: Resource may or may not load a SourceMap. +++PASS: Resource should have loaded 1 SourceMap. +++PASS: SourceMap should be a WI.SourceMap instance. +++PASS: Resource should have loaded 1 SourceMap. +++PASS: SourceMap should be a WI.SourceMap instance. +++PASS: expectEqual(0, 0) +++PASS: expectEqual(9, 9) +++PASS: expectEqual("basic-mapping-original.js", "basic-mapping-original.js") +++PASS: expectEqual(3, 3) +++PASS: expectEqual(9, 9) +++PASS: expectEqual("basic-mapping-original.js", "basic-mapping-original.js") +++ ++diff --git a/LayoutTests/inspector/model/source-map-spec.html b/LayoutTests/inspector/model/source-map-spec.html ++new file mode 100644 ++index 000000000000..b30b1dd526fc ++--- /dev/null +++++ b/LayoutTests/inspector/model/source-map-spec.html ++@@ -0,0 +1,83 @@ +++<!DOCTYPE html> +++<html> +++<head> +++<script src="../../http/tests/inspector/resources/inspector-test.js"></script> +++<script> +++function triggerScriptResource(scriptName) { +++ let script = document.createElement("script"); +++ script.src = `resources/${scriptName}`; +++ document.body.appendChild(script); +++} +++ +++async function setup() +++{ +++ const response = await fetch("resources/source-map-spec-tests.json"); +++ const json = await response.json(); +++ TestPage.dispatchEventToFrontend("TestDescriptionsFetched", {json}); +++} +++ +++ +++function test() +++{ +++ function checkMapping(resource, testCase, action) +++ { +++ const location = resource.createSourceCodeLocation(action.generatedLine, action.generatedColumn); +++ InspectorTest.expectEqual(location.displayLineNumber, action.originalLine, "Original line should match"); +++ InspectorTest.expectEqual(location.displayColumnNumber, action.originalColumn, "Original column should match"); +++ InspectorTest.expectEqual(location.displaySourceCode.displayName, action.originalSource, "Original source should match"); +++ } +++ +++ function withTimeout(promise, seconds) +++ { +++ return Promise.race([promise, new Promise((resolve, reject) => { +++ setTimeout(resolve, seconds); +++ })]); +++ } +++ +++ let suite = InspectorTest.createAsyncSuite("SourceMapSpec"); +++ +++ suite.addTestCase({ +++ name: "SourceMapSpec", +++ description: "Run test cases from the source maps spec test suite", +++ async test(resolve, reject) { +++ InspectorTest.evaluateInPage("setup()"); +++ const event = await InspectorTest.awaitEvent("TestDescriptionsFetched"); +++ const testDescriptions = event.data.json; +++ +++ for (const testCase of testDescriptions.tests) { +++ InspectorTest.log(testCase.name); +++ InspectorTest.evaluateInPage(`triggerScriptResource('${testCase.baseFile}')`); +++ let resourceEvent = await WI.Frame.awaitEvent(WI.Frame.Event.ResourceWasAdded); +++ let resource = resourceEvent.data.resource; +++ let sourceMapEvent = await withTimeout(resource.awaitEvent(WI.SourceCode.Event.SourceMapAdded), 50); +++ +++ if (testCase.sourceMapIsValid) { +++ InspectorTest.expectEqual(resource.sourceMaps.length, 1, "Resource should have loaded 1 SourceMap."); +++ InspectorTest.expectThat(resource.sourceMaps[0] instanceof WI.SourceMap, "SourceMap should be a WI.SourceMap instance."); +++ if (!(resource.sourceMaps[0] instanceof WI.SourceMap)) { +++ continue; +++ } +++ } else { +++ const hasFailedSourceMap = WI.networkManager.isSourceMapURL(absoluteURL(testCase.sourceMapFile, resource.displayURL)); +++ InspectorTest.expectThat(hasFailedSourceMap, "Expected that there is an associated failed source map URL"); +++ InspectorTest.expectEqual(resource.sourceMaps.length, 0, "Expected no source map resource loaded"); +++ } +++ +++ if (testCase.testActions) { +++ for (const action of testCase.testActions) { +++ if (action.actionType === "checkMapping") +++ checkMapping(resource, testCase, action); +++ } +++ } +++ } +++ } +++ }); +++ +++ suite.runTestCasesAndFinish(); +++} +++</script> +++</head> +++<body onload="runTest()"> +++<p>Ensure a source map loads for resources with sourceMappingURLs.</p> +++</body> +++</html> ++-- ++2.39.2 ++ +diff --git a/LayoutTests/imported/tg4/source-map-tests/webkit/source-map-spec.html b/LayoutTests/imported/tg4/source-map-tests/webkit/source-map-spec.html +new file mode 100644 +index 000000000000..b30b1dd526fc +--- /dev/null ++++ b/LayoutTests/imported/tg4/source-map-tests/webkit/source-map-spec.html +@@ -0,0 +1,83 @@ ++<!DOCTYPE html> ++<html> ++<head> ++<script src="../../http/tests/inspector/resources/inspector-test.js"></script> ++<script> ++function triggerScriptResource(scriptName) { ++ let script = document.createElement("script"); ++ script.src = `resources/${scriptName}`; ++ document.body.appendChild(script); ++} ++ ++async function setup() ++{ ++ const response = await fetch("resources/source-map-spec-tests.json"); ++ const json = await response.json(); ++ TestPage.dispatchEventToFrontend("TestDescriptionsFetched", {json}); ++} ++ ++ ++function test() ++{ ++ function checkMapping(resource, testCase, action) ++ { ++ const location = resource.createSourceCodeLocation(action.generatedLine, action.generatedColumn); ++ InspectorTest.expectEqual(location.displayLineNumber, action.originalLine, "Original line should match"); ++ InspectorTest.expectEqual(location.displayColumnNumber, action.originalColumn, "Original column should match"); ++ InspectorTest.expectEqual(location.displaySourceCode.displayName, action.originalSource, "Original source should match"); ++ } ++ ++ function withTimeout(promise, seconds) ++ { ++ return Promise.race([promise, new Promise((resolve, reject) => { ++ setTimeout(resolve, seconds); ++ })]); ++ } ++ ++ let suite = InspectorTest.createAsyncSuite("SourceMapSpec"); ++ ++ suite.addTestCase({ ++ name: "SourceMapSpec", ++ description: "Run test cases from the source maps spec test suite", ++ async test(resolve, reject) { ++ InspectorTest.evaluateInPage("setup()"); ++ const event = await InspectorTest.awaitEvent("TestDescriptionsFetched"); ++ const testDescriptions = event.data.json; ++ ++ for (const testCase of testDescriptions.tests) { ++ InspectorTest.log(testCase.name); ++ InspectorTest.evaluateInPage(`triggerScriptResource('${testCase.baseFile}')`); ++ let resourceEvent = await WI.Frame.awaitEvent(WI.Frame.Event.ResourceWasAdded); ++ let resource = resourceEvent.data.resource; ++ let sourceMapEvent = await withTimeout(resource.awaitEvent(WI.SourceCode.Event.SourceMapAdded), 50); ++ ++ if (testCase.sourceMapIsValid) { ++ InspectorTest.expectEqual(resource.sourceMaps.length, 1, "Resource should have loaded 1 SourceMap."); ++ InspectorTest.expectThat(resource.sourceMaps[0] instanceof WI.SourceMap, "SourceMap should be a WI.SourceMap instance."); ++ if (!(resource.sourceMaps[0] instanceof WI.SourceMap)) { ++ continue; ++ } ++ } else { ++ const hasFailedSourceMap = WI.networkManager.isSourceMapURL(absoluteURL(testCase.sourceMapFile, resource.displayURL)); ++ InspectorTest.expectThat(hasFailedSourceMap, "Expected that there is an associated failed source map URL"); ++ InspectorTest.expectEqual(resource.sourceMaps.length, 0, "Expected no source map resource loaded"); ++ } ++ ++ if (testCase.testActions) { ++ for (const action of testCase.testActions) { ++ if (action.actionType === "checkMapping") ++ checkMapping(resource, testCase, action); ++ } ++ } ++ } ++ } ++ }); ++ ++ suite.runTestCasesAndFinish(); ++} ++</script> ++</head> ++<body onload="runTest()"> ++<p>Ensure a source map loads for resources with sourceMappingURLs.</p> ++</body> ++</html> +diff --git a/LayoutTests/inspector/model/source-map-spec-expected.txt b/LayoutTests/inspector/model/source-map-spec-expected.txt +new file mode 100644 +index 000000000000..fd0094a8ac46 +--- /dev/null ++++ b/LayoutTests/inspector/model/source-map-spec-expected.txt +@@ -0,0 +1,828 @@ ++Run source map specification consumer test cases. ++ ++ ++== Running test suite: SourceMapSpec ++-- Running test case: SourceMapSpec ++versionValid ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++versionMissing ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++versionNotANumber ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++versionNumericString ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++versionTooHigh ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++versionTooLow ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++sourcesMissing ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++sourcesNotAList1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++sourcesNotAList2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++sourcesNotStringOrNull ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++sourcesAndSourcesContentBothNull ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++fileNotAString1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++fileNotAString2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++sourceRootNotAString1 ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++sourceRootNotAString2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++PASS: Expected no source map resource loaded ++namesMissing ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++namesNotAList1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++namesNotAList2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++namesNotString ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++ignoreListEmpty ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++ignoreListValid1 ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++Ignore list test ignored (unsupported) ++ignoreListWrongType1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++ignoreListWrongType2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++ignoreListWrongType3 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++ignoreListWrongType4 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++PASS: Expected no source map resource loaded ++ignoreListOutOfBounds1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++ignoreListOutOfBounds2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++unrecognizedProperty ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++invalidVLQDueToNonBase64Character ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidVLQDueToMissingContinuationDigits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingNotAString1 ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++invalidMappingNotAString2 ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++invalidMappingSegmentBadSeparator ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithZeroFields ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++PASS: Expected no source map resource loaded ++invalidMappingSegmentWithTwoFields ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++PASS: Expected no source map resource loaded ++invalidMappingSegmentWithThreeFields ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++PASS: Expected no source map resource loaded ++invalidMappingSegmentWithSourceIndexOutOfBounds ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNameIndexOutOfBounds ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeColumn ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeSourceIndex ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeOriginalLine ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeOriginalColumn ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeNameIndex ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeRelativeColumn ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeRelativeSourceIndex ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeRelativeOriginalLine ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeRelativeOriginalColumn ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNegativeRelativeNameIndex ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithColumnExceeding32Bits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithSourceIndexExceeding32Bits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithOriginalLineExceeding32Bits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithOriginalColumnExceeding32Bits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++invalidMappingSegmentWithNameIndexExceeding32Bits ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++validMappingFieldsWith32BitMaxValues ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++validMappingLargeVLQ ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++validMappingEmptyGroups ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++validMappingEmptyString ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++indexMapWrongTypeSections ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++indexMapWrongTypeOffset ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapWrongTypeMap ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++indexMapInvalidBaseMappings ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapInvalidOverlap ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapInvalidOrder ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapMissingMap ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++indexMapInvalidSubMap ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++indexMapMissingOffset ++PASS: Expected that there is an associated failed source map URL ++PASS: Expected no source map resource loaded ++indexMapMissingOffsetLine ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapMissingOffsetColumn ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapOffsetLineWrongType ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapOffsetColumnWrongType ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapEmptySections ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++indexMapFileWrongType1 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++indexMapFileWrongType2 ++FAIL: Expected that there is an associated failed source map URL ++ Expected: truthy ++ Actual: false ++FAIL: Expected no source map resource loaded ++ Expected: 0 ++ Actual: 1 ++basicMapping ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 22) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 24) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 25) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 34) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 40) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 47) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 49) should be mapped ++PASS: Original line: 5, expected: 5 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 50) should be mapped ++PASS: Original line: 6, expected: 6 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 56) should be mapped ++PASS: Original line: 7, expected: 7 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++sourceRootResolution ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++FAIL: Original source: basic-mapping-original.js, expected: theroot/basic-mapping-original.js ++ Expected: "theroot/basic-mapping-original.js" ++ Actual: "basic-mapping-original.js" ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++FAIL: Original source: basic-mapping-original.js, expected: theroot/basic-mapping-original.js ++ Expected: "theroot/basic-mapping-original.js" ++ Actual: "basic-mapping-original.js" ++sourceResolutionAbsoluteURL ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++FAIL: Original source: basic-mapping-original.js, expected: /baz/quux/basic-mapping-original.js ++ Expected: "/baz/quux/basic-mapping-original.js" ++ Actual: "basic-mapping-original.js" ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++FAIL: Original source: basic-mapping-original.js, expected: /baz/quux/basic-mapping-original.js ++ Expected: "/baz/quux/basic-mapping-original.js" ++ Actual: "basic-mapping-original.js" ++basicMappingWithIndexMap ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 22) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 24) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 25) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 34) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 40) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 47) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 49) should be mapped ++PASS: Original line: 5, expected: 5 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 50) should be mapped ++PASS: Original line: 6, expected: 6 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 56) should be mapped ++PASS: Original line: 7, expected: 7 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++indexMapWithMissingFile ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 22) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 24) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 25) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 34) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 40) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 47) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 49) should be mapped ++PASS: Original line: 5, expected: 5 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 50) should be mapped ++PASS: Original line: 6, expected: 6 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 56) should be mapped ++PASS: Original line: 7, expected: 7 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++indexMapWithTwoConcatenatedSources ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 22) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 24) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 25) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 34) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 40) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 47) should be mapped ++PASS: Original line: 4, expected: 4 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 49) should be mapped ++PASS: Original line: 5, expected: 5 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 50) should be mapped ++PASS: Original line: 6, expected: 6 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 56) should be mapped ++PASS: Original line: 7, expected: 7 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 62) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++PASS: Test location (0, 71) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++PASS: Test location (0, 77) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++PASS: Test location (0, 83) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++PASS: Test location (0, 88) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++PASS: Test location (0, 89) should be mapped ++PASS: Original line: 3, expected: 3 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: second-source-original.js, expected: second-source-original.js ++sourcesNullSourcesContentNonNull ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++FAIL: Original source: sources-null-sources-content-non-null.js.map, expected: null ++ Expected: null ++ Actual: "sources-null-sources-content-non-null.js.map" ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++FAIL: Original source: sources-null-sources-content-non-null.js.map, expected: null ++ Expected: null ++ Actual: "sources-null-sources-content-non-null.js.map" ++sourcesNonNullSourcesContentNull ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++PASS: Test location (0, 9) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 9, expected: 9 ++PASS: Original source: basic-mapping-original.js, expected: basic-mapping-original.js ++transitiveMapping ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++transitiveMappingWithThreeSteps ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++Transitive mapping test ignored ++vlqValidSingleDigit ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: vlq-valid-single-digit-original.js, expected: vlq-valid-single-digit-original.js ++vlqValidNegativeDigit ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (2, 15) should be mapped ++PASS: Original line: 1, expected: 1 ++FAIL: Original column: 1, expected: 3 ++ Expected: 3 ++ Actual: 1 ++PASS: Original source: vlq-valid-negative-digit-original.js, expected: vlq-valid-negative-digit-original.js ++PASS: Test location (2, 2) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 1, expected: 1 ++PASS: Original source: vlq-valid-negative-digit-original.js, expected: vlq-valid-negative-digit-original.js ++vlqValidContinuationBitPresent1 ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 15) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 1, expected: 1 ++PASS: Original source: vlq-valid-continuation-bit-present-1-original.js, expected: vlq-valid-continuation-bit-present-1-original.js ++vlqValidContinuationBitPresent2 ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (2, 16) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 1, expected: 1 ++PASS: Original source: vlq-valid-continuation-bit-present-2-original.js, expected: vlq-valid-continuation-bit-present-2-original.js ++mappingSemanticsSingleFieldSegment ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 0) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 1, expected: 1 ++PASS: Original source: mapping-semantics-single-field-segment-original.js, expected: mapping-semantics-single-field-segment-original.js ++PASS: Test location (0, 2) should be mapped ++FAIL: Original line: 0, expected: null ++ Expected: null ++ Actual: 0 ++FAIL: Original column: 1, expected: null ++ Expected: null ++ Actual: 1 ++FAIL: Original source: mapping-semantics-single-field-segment-original.js, expected: null ++ Expected: null ++ Actual: "mapping-semantics-single-field-segment-original.js" ++mappingSemanticsFourFieldSegment ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 1) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: mapping-semantics-four-field-segment-original.js, expected: mapping-semantics-four-field-segment-original.js ++mappingSemanticsFiveFieldSegment ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 1) should be mapped ++PASS: Original line: 2, expected: 2 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: mapping-semantics-five-field-segment-original.js, expected: mapping-semantics-five-field-segment-original.js ++mappingSemanticsColumnReset ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 1) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: mapping-semantics-column-reset-original.js, expected: mapping-semantics-column-reset-original.js ++PASS: Test location (1, 1) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: mapping-semantics-column-reset-original.js, expected: mapping-semantics-column-reset-original.js ++mappingSemanticsRelative1 ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 1) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 0, expected: 0 ++PASS: Original source: mapping-semantics-relative-1-original.js, expected: mapping-semantics-relative-1-original.js ++PASS: Test location (0, 5) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 4, expected: 4 ++PASS: Original source: mapping-semantics-relative-1-original.js, expected: mapping-semantics-relative-1-original.js ++mappingSemanticsRelative2 ++PASS: Resource should have loaded 1 SourceMap. ++PASS: SourceMap should be a WI.SourceMap instance. ++PASS: Test location (0, 1) should be mapped ++PASS: Original line: 0, expected: 0 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: mapping-semantics-relative-2-original.js, expected: mapping-semantics-relative-2-original.js ++PASS: Test location (1, 2) should be mapped ++PASS: Original line: 1, expected: 1 ++PASS: Original column: 2, expected: 2 ++PASS: Original source: mapping-semantics-relative-2-original.js, expected: mapping-semantics-relative-2-original.js ++ +diff --git a/LayoutTests/inspector/model/source-map-spec.html b/LayoutTests/inspector/model/source-map-spec.html +new file mode 100644 +index 000000000000..08979e569710 +--- /dev/null ++++ b/LayoutTests/inspector/model/source-map-spec.html +@@ -0,0 +1,87 @@ ++<!DOCTYPE html> ++<html> ++<head> ++<script src="../../http/tests/inspector/resources/inspector-test.js"></script> ++<script> ++function triggerScriptResource(scriptName) { ++ let script = document.createElement("script"); ++ script.src = `../../imported/tg4/source-map-tests/resources/${scriptName}`; ++ document.body.appendChild(script); ++} ++ ++async function setup() ++{ ++ const response = await fetch("../../imported/tg4/source-map-tests/source-map-spec-tests.json"); ++ const json = await response.json(); ++ TestPage.dispatchEventToFrontend("TestDescriptionsFetched", {json}); ++} ++ ++function test() ++{ ++ function checkMapping(resource, testCase, action) ++ { ++ const location = resource.createSourceCodeLocation(action.generatedLine, action.generatedColumn); ++ InspectorTest.expectThat(location.hasMappedLocation(), `Test location (${action.generatedLine}, ${action.generatedColumn}) should be mapped`); ++ InspectorTest.expectEqual(location.displayLineNumber, action.originalLine, `Original line: ${location.displayLineNumber}, expected: ${action.originalLine}`); ++ InspectorTest.expectEqual(location.displayColumnNumber, action.originalColumn, `Original column: ${location.displayColumnNumber}, expected: ${action.originalColumn}`); ++ InspectorTest.expectEqual(location.displaySourceCode.displayName, action.originalSource, `Original source: ${location.displaySourceCode.displayName}, expected: ${action.originalSource}`); ++ } ++ ++ function withTimeout(promise, seconds) ++ { ++ return Promise.race([promise, new Promise((resolve, reject) => { ++ setTimeout(resolve, seconds); ++ })]); ++ } ++ ++ let suite = InspectorTest.createAsyncSuite("SourceMapSpec"); ++ ++ suite.addTestCase({ ++ name: "SourceMapSpec", ++ description: "Run test cases from the source maps spec test suite", ++ async test() { ++ InspectorTest.evaluateInPage("setup()"); ++ const event = await InspectorTest.awaitEvent("TestDescriptionsFetched"); ++ const testDescriptions = event.data.json; ++ ++ for (const testCase of testDescriptions.tests) { ++ InspectorTest.log(testCase.name); ++ InspectorTest.evaluateInPage(`triggerScriptResource('${testCase.baseFile}')`); ++ let resourceEvent = await WI.Frame.awaitEvent(WI.Frame.Event.ResourceWasAdded); ++ let resource = resourceEvent.data.resource; ++ let sourceMapEvent = await withTimeout(resource.awaitEvent(WI.SourceCode.Event.SourceMapAdded), 50); ++ ++ if (testCase.sourceMapIsValid) { ++ InspectorTest.expectEqual(resource.sourceMaps.length, 1, "Resource should have loaded 1 SourceMap."); ++ InspectorTest.expectThat(resource.sourceMaps[0] instanceof WI.SourceMap, "SourceMap should be a WI.SourceMap instance."); ++ if (!(resource.sourceMaps[0] instanceof WI.SourceMap)) { ++ continue; ++ } ++ } else { ++ const hasFailedSourceMap = WI.networkManager.isSourceMapURL(absoluteURL(testCase.sourceMapFile, resource.displayURL)); ++ InspectorTest.expectThat(hasFailedSourceMap, "Expected that there is an associated failed source map URL"); ++ InspectorTest.expectEqual(resource.sourceMaps.length, 0, "Expected no source map resource loaded"); ++ } ++ ++ if (testCase.testActions) { ++ for (const action of testCase.testActions) { ++ if (action.actionType === "checkMapping") ++ checkMapping(resource, testCase, action); ++ else if (action.actionType === "checkMappingTransitive") ++ InspectorTest.log("Transitive mapping test ignored"); ++ else if (action.actionType === "checkIgnoreList") ++ InspectorTest.log("Ignore list test ignored (unsupported)") ++ } ++ } ++ } ++ } ++ }); ++ ++ suite.runTestCasesAndFinish(); ++} ++</script> ++</head> ++<body onload="runTest()"> ++<p>Run source map specification consumer test cases.</p> ++</body> ++</html> +-- +2.39.2 + diff --git a/test/fixtures/typescript/ts/hook.ts b/test/fixtures/typescript/ts/hook.ts new file mode 100644 index 00000000000000..e0dd46448b837e --- /dev/null +++ b/test/fixtures/typescript/ts/hook.ts @@ -0,0 +1,11 @@ +import type { ResolveHook } from 'node:module'; + +// Pass through +export const resolve: ResolveHook = async function resolve(specifier, context, nextResolve) { + if(false){ + // https://github.com/nodejs/node/issues/54645 + // A bug in the typescript parsers swc causes + // the next line to not be parsed correctly + } + return nextResolve(specifier, context); +}; diff --git a/test/fixtures/typescript/ts/test-invalid-syntax.ts b/test/fixtures/typescript/ts/test-invalid-syntax.ts new file mode 100644 index 00000000000000..031bce938d27dc --- /dev/null +++ b/test/fixtures/typescript/ts/test-invalid-syntax.ts @@ -0,0 +1,3 @@ +function foo(): string { + await Promise.resolve(1); +} diff --git a/test/fixtures/typescript/ts/test-loader.ts b/test/fixtures/typescript/ts/test-loader.ts new file mode 100644 index 00000000000000..8b957bf72f0aa0 --- /dev/null +++ b/test/fixtures/typescript/ts/test-loader.ts @@ -0,0 +1,4 @@ +import { register } from 'node:module'; +import * as fixtures from '../../../common/fixtures.mjs'; + +register(fixtures.fileURL('typescript/ts/hook.ts')); diff --git a/test/fixtures/typescript/ts/test-simple.js b/test/fixtures/typescript/ts/test-simple.js new file mode 100644 index 00000000000000..f738e60f7d61db --- /dev/null +++ b/test/fixtures/typescript/ts/test-simple.js @@ -0,0 +1,2 @@ +const str = "Hello, TypeScript!"; +console.log(str); diff --git a/test/fixtures/worker-is-internal-thread.js b/test/fixtures/worker-is-internal-thread.js new file mode 100644 index 00000000000000..7e3f1f413830ca --- /dev/null +++ b/test/fixtures/worker-is-internal-thread.js @@ -0,0 +1,3 @@ +const { isInternalThread, parentPort } = require('node:worker_threads'); + +parentPort.postMessage(`isInternalThread: ${isInternalThread}`); \ No newline at end of file diff --git a/test/internet/test-trace-events-dns.js b/test/internet/test-trace-events-dns.js index c18a49bc9496c8..c5df4751374399 100644 --- a/test/internet/test-trace-events-dns.js +++ b/test/internet/test-trace-events-dns.js @@ -5,9 +5,11 @@ const cp = require('child_process'); const tmpdir = require('../common/tmpdir'); const fs = require('fs'); const util = require('util'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const traceFile = 'node_trace.1.log'; diff --git a/test/js-native-api/test_cannot_run_js/binding.gyp b/test/js-native-api/test_cannot_run_js/binding.gyp index 0b827ff34d129f..dfaaf408296d1d 100644 --- a/test/js-native-api/test_cannot_run_js/binding.gyp +++ b/test/js-native-api/test_cannot_run_js/binding.gyp @@ -5,14 +5,14 @@ "sources": [ "test_cannot_run_js.c" ], - "defines": [ "NAPI_EXPERIMENTAL" ], + "defines": [ "NAPI_VERSION=10" ], }, { "target_name": "test_pending_exception", "sources": [ "test_cannot_run_js.c" ], - "defines": [ "NAPI_VERSION=8" ], + "defines": [ "NAPI_VERSION=9" ], } ] } diff --git a/test/js-native-api/test_cannot_run_js/test_cannot_run_js.c b/test/js-native-api/test_cannot_run_js/test_cannot_run_js.c index 9a4b9547493505..dddb8b59421419 100644 --- a/test/js-native-api/test_cannot_run_js/test_cannot_run_js.c +++ b/test/js-native-api/test_cannot_run_js/test_cannot_run_js.c @@ -22,7 +22,7 @@ static void Finalize(napi_env env, void* data, void* hint) { // napi_pending_exception is returned). This is not deterministic from // the point of view of the addon. -#ifdef NAPI_EXPERIMENTAL +#if NAPI_VERSION > 9 NODE_API_BASIC_ASSERT_RETURN_VOID( result == napi_cannot_run_js || result == napi_ok, "getting named property from global in finalizer should succeed " @@ -32,19 +32,10 @@ static void Finalize(napi_env env, void* data, void* hint) { result == napi_pending_exception || result == napi_ok, "getting named property from global in finalizer should succeed " "or return napi_pending_exception"); -#endif // NAPI_EXPERIMENTAL +#endif // NAPI_VERSION > 9 free(ref); } -static void BasicFinalize(node_api_basic_env env, void* data, void* hint) { -#ifdef NAPI_EXPERIMENTAL - NODE_API_BASIC_CALL_RETURN_VOID( - env, node_api_post_finalizer(env, Finalize, data, hint)); -#else - Finalize(env, data, hint); -#endif -} - static napi_value CreateRef(napi_env env, napi_callback_info info) { size_t argc = 1; napi_value cb; @@ -55,8 +46,7 @@ static napi_value CreateRef(napi_env env, napi_callback_info info) { NODE_API_CALL(env, napi_typeof(env, cb, &value_type)); NODE_API_ASSERT( env, value_type == napi_function, "argument must be function"); - NODE_API_CALL(env, - napi_add_finalizer(env, cb, ref, BasicFinalize, NULL, ref)); + NODE_API_CALL(env, napi_add_finalizer(env, cb, ref, Finalize, NULL, ref)); return cb; } diff --git a/test/js-native-api/test_general/test.js b/test/js-native-api/test_general/test.js index 3d4f2f9715678e..843c6aee3af47f 100644 --- a/test/js-native-api/test_general/test.js +++ b/test/js-native-api/test_general/test.js @@ -34,7 +34,7 @@ assert.notStrictEqual(test_general.testGetPrototype(baseObject), test_general.testGetPrototype(extendedObject)); // Test version management functions -assert.strictEqual(test_general.testGetVersion(), 9); +assert.strictEqual(test_general.testGetVersion(), 10); [ 123, diff --git a/test/js-native-api/test_string/binding.gyp b/test/js-native-api/test_string/binding.gyp index 7fc4d9c24226d4..82a1185c3d9d76 100644 --- a/test/js-native-api/test_string/binding.gyp +++ b/test/js-native-api/test_string/binding.gyp @@ -7,7 +7,7 @@ "test_null.c", ], "defines": [ - "NAPI_EXPERIMENTAL", + "NAPI_VERSION=10", ], }, ], diff --git a/test/message/eval_messages.out b/test/message/eval_messages.out deleted file mode 100644 index e07bbe4d6acd3c..00000000000000 --- a/test/message/eval_messages.out +++ /dev/null @@ -1,77 +0,0 @@ -[eval] -[eval]:1 -with(this){__filename} -^^^^ - -SyntaxError: Strict mode code may not include a with statement - at makeContextifyScript (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [eval]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_string:*:* - -Node.js * -42 -42 -[eval]:1 -throw new Error("hello") -^ - -Error: hello - at [eval]:1:7 - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [eval]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_string:*:* - -Node.js * - -[eval]:1 -throw new Error("hello") -^ - -Error: hello - at [eval]:1:7 - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [eval]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_string:*:* - -Node.js * -100 -[eval]:1 -var x = 100; y = x; - ^ - -ReferenceError: y is not defined - at [eval]:1:16 - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [eval]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_string:*:* - -Node.js * - -[eval]:1 -var ______________________________________________; throw 10 - ^ -10 -(Use `* --trace-uncaught ...` to show where the exception was thrown) - -Node.js * - -[eval]:1 -var ______________________________________________; throw 10 - ^ -10 -(Use `* --trace-uncaught ...` to show where the exception was thrown) - -Node.js * -done diff --git a/test/message/stdin_messages.out b/test/message/stdin_messages.out deleted file mode 100644 index 6afc8a62d7fcd9..00000000000000 --- a/test/message/stdin_messages.out +++ /dev/null @@ -1,89 +0,0 @@ -[stdin] -[stdin]:1 -with(this){__filename} -^^^^ - -SyntaxError: Strict mode code may not include a with statement - at makeContextifyScript (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [stdin]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_stdin:*:* - at Socket.<anonymous> (node:internal/process/execution:*:*) - at Socket.emit (node:events:*:*) - at endReadableNT (node:internal/streams/readable:*:*) - at process.processTicksAndRejections (node:internal/process/task_queues:*:*) - -Node.js * -42 -42 -[stdin]:1 -throw new Error("hello") -^ - -Error: hello - at [stdin]:1:7 - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [stdin]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_stdin:*:* - at Socket.<anonymous> (node:internal/process/execution:*:*) - at Socket.emit (node:events:*:*) - at endReadableNT (node:internal/streams/readable:*:*) - -Node.js * -[stdin]:1 -throw new Error("hello") -^ - -Error: hello - at [stdin]:1:* - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [stdin]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_stdin:*:* - at Socket.<anonymous> (node:internal/process/execution:*:*) - at Socket.emit (node:events:*:*) - at endReadableNT (node:internal/streams/readable:*:*) - -Node.js * -100 -[stdin]:1 -let x = 100; y = x; - ^ - -ReferenceError: y is not defined - at [stdin]:1:16 - at runScriptInThisContext (node:internal/vm:*:*) - at node:internal/process/execution:*:* - at [stdin]-wrapper:*:* - at runScript (node:internal/process/execution:*:*) - at evalScript (node:internal/process/execution:*:*) - at node:internal/main/eval_stdin:*:* - at Socket.<anonymous> (node:internal/process/execution:*:*) - at Socket.emit (node:events:*:*) - at endReadableNT (node:internal/streams/readable:*:*) - -Node.js * - -[stdin]:1 -let ______________________________________________; throw 10 - ^ -10 -(Use `* --trace-uncaught ...` to show where the exception was thrown) - -Node.js * - -[stdin]:1 -let ______________________________________________; throw 10 - ^ -10 -(Use `* --trace-uncaught ...` to show where the exception was thrown) - -Node.js * -done diff --git a/test/node-api/test_buffer/binding.gyp b/test/node-api/test_buffer/binding.gyp index 2fd28280d404c4..0a1dc92de7ffb4 100644 --- a/test/node-api/test_buffer/binding.gyp +++ b/test/node-api/test_buffer/binding.gyp @@ -3,7 +3,7 @@ { "target_name": "test_buffer", "defines": [ - 'NAPI_EXPERIMENTAL' + 'NAPI_VERSION=10' ], "sources": [ "test_buffer.c" ] }, diff --git a/test/node-api/test_reference_by_node_api_version/binding.gyp b/test/node-api/test_reference_by_node_api_version/binding.gyp index 2ee1d24763b0b3..4987828ffb3d86 100644 --- a/test/node-api/test_reference_by_node_api_version/binding.gyp +++ b/test/node-api/test_reference_by_node_api_version/binding.gyp @@ -3,12 +3,12 @@ { "target_name": "test_reference_all_types", "sources": [ "test_reference_by_node_api_version.c" ], - "defines": [ "NAPI_EXPERIMENTAL" ], + "defines": [ "NAPI_VERSION=10" ], }, { "target_name": "test_reference_obj_only", "sources": [ "test_reference_by_node_api_version.c" ], - "defines": [ "NAPI_VERSION=8" ], + "defines": [ "NAPI_VERSION=9" ], } ] } diff --git a/test/parallel/test-aborted-util.js b/test/parallel/test-aborted-util.js index 4bc45b9f5529bb..0566204ccdb074 100644 --- a/test/parallel/test-aborted-util.js +++ b/test/parallel/test-aborted-util.js @@ -32,7 +32,7 @@ test('Aborted with gc cleanup', async () => { const { promise, resolve } = Promise.withResolvers(); setImmediate(() => { - global.gc(); + globalThis.gc(); ac.abort(); strictEqual(ac.signal.aborted, true); strictEqual(getEventListeners(ac.signal, 'abort').length, 0); diff --git a/test/parallel/test-abortsignal-drop-settled-signals.mjs b/test/parallel/test-abortsignal-drop-settled-signals.mjs index 2bff3a3e063057..b300b0e223fc93 100644 --- a/test/parallel/test-abortsignal-drop-settled-signals.mjs +++ b/test/parallel/test-abortsignal-drop-settled-signals.mjs @@ -16,7 +16,7 @@ function makeSubsequentCalls(limit, done, holdReferences = false) { // This setImmediate is necessary to ensure that in the last iteration the remaining signal is GCed (if not // retained) setImmediate(() => { - global.gc(); + globalThis.gc(); done(ac.signal, dependantSymbol); }); return; @@ -50,7 +50,7 @@ function runShortLivedSourceSignal(limit, done) { function run(iteration) { if (iteration > limit) { - global.gc(); + globalThis.gc(); done(signalRefs); return; } @@ -74,9 +74,9 @@ function runWithOrphanListeners(limit, done) { const ac = new AbortController(); if (iteration > limit) { setImmediate(() => { - global.gc(); + globalThis.gc(); setImmediate(() => { - global.gc(); + globalThis.gc(); done(composedSignalRefs); }); @@ -134,25 +134,30 @@ it('does not prevent source signal from being GCed if it is short-lived', (t, do it('drops settled dependant signals when signal is composite', (t, done) => { const controllers = Array.from({ length: 2 }, () => new AbortController()); - const composedSignal1 = AbortSignal.any([controllers[0].signal]); - const composedSignalRef = new WeakRef(AbortSignal.any([composedSignal1, controllers[1].signal])); + + // Using WeakRefs to avoid this test to retain information that will make the test fail + const composedSignal1 = new WeakRef(AbortSignal.any([controllers[0].signal])); + const composedSignalRef = new WeakRef(AbortSignal.any([composedSignal1.deref(), controllers[1].signal])); const kDependantSignals = Object.getOwnPropertySymbols(controllers[0].signal).find( (s) => s.toString() === 'Symbol(kDependantSignals)' ); - setImmediate(() => { - global.gc({ execution: 'async' }).then(() => { - t.assert.strictEqual(composedSignalRef.deref(), undefined); - t.assert.strictEqual(controllers[0].signal[kDependantSignals].size, 2); - t.assert.strictEqual(controllers[1].signal[kDependantSignals].size, 1); - - setImmediate(() => { - t.assert.strictEqual(controllers[0].signal[kDependantSignals].size, 0); - t.assert.strictEqual(controllers[1].signal[kDependantSignals].size, 0); + t.assert.strictEqual(controllers[0].signal[kDependantSignals].size, 2); + t.assert.strictEqual(controllers[1].signal[kDependantSignals].size, 1); - done(); + setImmediate(() => { + globalThis.gc({ execution: 'async' }).then(async () => { + await gcUntil('all signals are GCed', () => { + const totalDependantSignals = Math.max( + controllers[0].signal[kDependantSignals].size, + controllers[1].signal[kDependantSignals].size + ); + + return composedSignalRef.deref() === undefined && totalDependantSignals === 0; }); + + done(); }); }); }); diff --git a/test/parallel/test-assert-checktag.js b/test/parallel/test-assert-checktag.js index 7587939436f40d..b86a1bde7f096d 100644 --- a/test/parallel/test-assert-checktag.js +++ b/test/parallel/test-assert-checktag.js @@ -49,13 +49,13 @@ test('', { skip: !hasCrypto }, () => { { // At the moment global has its own type tag const fakeGlobal = {}; - Object.setPrototypeOf(fakeGlobal, Object.getPrototypeOf(global)); - for (const prop of Object.keys(global)) { + Object.setPrototypeOf(fakeGlobal, Object.getPrototypeOf(globalThis)); + for (const prop of Object.keys(globalThis)) { fakeGlobal[prop] = global[prop]; } - assert.notDeepEqual(fakeGlobal, global); + assert.notDeepEqual(fakeGlobal, globalThis); // Message will be truncated anyway, don't validate - assert.throws(() => assert.deepStrictEqual(fakeGlobal, global), + assert.throws(() => assert.deepStrictEqual(fakeGlobal, globalThis), assert.AssertionError); } diff --git a/test/parallel/test-assert-objects.js b/test/parallel/test-assert-objects.js index de1bafae331214..0da31871ff1d3f 100644 --- a/test/parallel/test-assert-objects.js +++ b/test/parallel/test-assert-objects.js @@ -87,6 +87,41 @@ describe('Object Comparison Tests', () => { actual: [1, 'two', true], expected: [1, 'two', false], }, + { + description: 'throws when comparing [0] with [-0]', + actual: [0], + expected: [-0], + }, + { + description: 'throws when comparing [0, 0, 0] with [0, -0]', + actual: [0, 0, 0], + expected: [0, -0], + }, + { + description: 'throws when comparing ["-0"] with [-0]', + actual: ['-0'], + expected: [-0], + }, + { + description: 'throws when comparing [-0] with [0]', + actual: [-0], + expected: [0], + }, + { + description: 'throws when comparing [-0] with ["-0"]', + actual: [-0], + expected: ['-0'], + }, + { + description: 'throws when comparing ["0"] with [0]', + actual: ['0'], + expected: [0], + }, + { + description: 'throws when comparing [0] with ["0"]', + actual: [0], + expected: ['0'], + }, { description: 'throws when comparing two Date objects with different times', @@ -261,6 +296,16 @@ describe('Object Comparison Tests', () => { actual: { dataView: new Uint8Array(3) }, expected: { dataView: new DataView(new ArrayBuffer(3)) }, }, + { + description: 'throws when comparing Float32Array([+0.0]) with Float32Array([-0.0])', + actual: new Float32Array([+0.0]), + expected: new Float32Array([-0.0]), + }, + { + description: 'throws when comparing two different urls', + actual: new URL('http://foo'), + expected: new URL('http://bar'), + }, { description: 'throws when comparing SharedArrayBuffers when expected has different elements actual', actual: (() => { @@ -375,6 +420,21 @@ describe('Object Comparison Tests', () => { actual: [1, 'two', true], expected: [1, 'two', true], }, + { + description: 'compares [0] with [0]', + actual: [0], + expected: [0], + }, + { + description: 'compares [-0] with [-0]', + actual: [-0], + expected: [-0], + }, + { + description: 'compares [0, -0, 0] with [0, 0]', + actual: [0, -0, 0], + expected: [0, 0], + }, { description: 'compares two Date objects with the same time', actual: new Date(0), @@ -718,6 +778,21 @@ describe('Object Comparison Tests', () => { actual: [1, 2, 3], expected: [2], }, + { + description: 'ensures that File extends Blob', + actual: Object.getPrototypeOf(File.prototype), + expected: Blob.prototype + }, + { + description: 'compares NaN with NaN', + actual: NaN, + expected: NaN, + }, + { + description: 'compares two identical urls', + actual: new URL('http://foo'), + expected: new URL('http://foo'), + }, ].forEach(({ description, actual, expected }) => { it(description, () => { assert.partialDeepStrictEqual(actual, expected); diff --git a/test/parallel/test-assert-typedarray-deepequal.js b/test/parallel/test-assert-typedarray-deepequal.js index 7fb18c1886ba91..403cd6748d507e 100644 --- a/test/parallel/test-assert-typedarray-deepequal.js +++ b/test/parallel/test-assert-typedarray-deepequal.js @@ -101,10 +101,15 @@ suite('notEqualArrayPairs', () => { makeBlock(assert.deepStrictEqual, arrayPair[0], arrayPair[1]), assert.AssertionError ); + // TODO(puskin94): remove emitWarning override once the partialDeepStrictEqual method is not experimental anymore + // Suppress warnings, necessary otherwise the tools/pseudo-tty.py runner will fail + const originalEmitWarning = process.emitWarning; + process.emitWarning = () => {}; assert.throws( makeBlock(assert.partialDeepStrictEqual, arrayPair[0], arrayPair[1]), assert.AssertionError ); + process.emitWarning = originalEmitWarning; // Restore original process.emitWarning }); } }); diff --git a/test/parallel/test-assert.js b/test/parallel/test-assert.js index e639e7f150a5df..0c3571a80c10aa 100644 --- a/test/parallel/test-assert.js +++ b/test/parallel/test-assert.js @@ -1351,6 +1351,17 @@ test('Additional assert', () => { } ); + assert.throws( + () => { + assert.partialDeepStrictEqual({ a: true }, { a: false }, 'custom message'); + }, + { + code: 'ERR_ASSERTION', + name: 'AssertionError', + message: 'custom message\n+ actual - expected\n\n {\n+ a: true\n- a: false\n }\n' + } + ); + { let threw = false; try { diff --git a/test/parallel/test-async-hooks-destroy-on-gc.js b/test/parallel/test-async-hooks-destroy-on-gc.js index fe6325e189734b..dd7eef8776cdf3 100644 --- a/test/parallel/test-async-hooks-destroy-on-gc.js +++ b/test/parallel/test-async-hooks-destroy-on-gc.js @@ -22,6 +22,6 @@ let asyncId = null; } setImmediate(() => { - global.gc(); + globalThis.gc(); setImmediate(() => assert.ok(destroyedIds.has(asyncId))); }); diff --git a/test/parallel/test-async-hooks-disable-during-promise.js b/test/parallel/test-async-hooks-disable-during-promise.js index 6b9b53bd30f0f5..a25dae51e1f82d 100644 --- a/test/parallel/test-async-hooks-disable-during-promise.js +++ b/test/parallel/test-async-hooks-disable-during-promise.js @@ -1,9 +1,11 @@ 'use strict'; const common = require('../common'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different AsyncWraps'); +} const hook = async_hooks.createHook({ init: common.mustCall(2), diff --git a/test/parallel/test-async-hooks-disable-gc-tracking.js b/test/parallel/test-async-hooks-disable-gc-tracking.js index 84c5043aad3335..87b096c258121c 100644 --- a/test/parallel/test-async-hooks-disable-gc-tracking.js +++ b/test/parallel/test-async-hooks-disable-gc-tracking.js @@ -14,7 +14,7 @@ const hook = async_hooks.createHook({ new async_hooks.AsyncResource('foobar', { requireManualDestroy: true }); setImmediate(() => { - global.gc(); + globalThis.gc(); setImmediate(() => { hook.disable(); }); diff --git a/test/parallel/test-async-hooks-prevent-double-destroy.js b/test/parallel/test-async-hooks-prevent-double-destroy.js index 689dc399f9d2f2..4aa55a5a6c87bf 100644 --- a/test/parallel/test-async-hooks-prevent-double-destroy.js +++ b/test/parallel/test-async-hooks-prevent-double-destroy.js @@ -17,7 +17,7 @@ const hook = async_hooks.createHook({ } setImmediate(() => { - global.gc(); + globalThis.gc(); setImmediate(() => { hook.disable(); }); diff --git a/test/parallel/test-async-hooks-promise-triggerid.js b/test/parallel/test-async-hooks-promise-triggerid.js index b860d60999e1ef..89e5bc1464f8d5 100644 --- a/test/parallel/test-async-hooks-promise-triggerid.js +++ b/test/parallel/test-async-hooks-promise-triggerid.js @@ -2,9 +2,11 @@ const common = require('../common'); const assert = require('assert'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const promiseAsyncIds = []; diff --git a/test/parallel/test-async-hooks-promise.js b/test/parallel/test-async-hooks-promise.js index 9db510e329ffad..74f72a188240a0 100644 --- a/test/parallel/test-async-hooks-promise.js +++ b/test/parallel/test-async-hooks-promise.js @@ -2,9 +2,11 @@ const common = require('../common'); const assert = require('assert'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} const initCalls = []; const resolveCalls = []; diff --git a/test/parallel/test-async-hooks-top-level-clearimmediate.js b/test/parallel/test-async-hooks-top-level-clearimmediate.js index cc5fcf48eb50b3..fd91fefa9c4bce 100644 --- a/test/parallel/test-async-hooks-top-level-clearimmediate.js +++ b/test/parallel/test-async-hooks-top-level-clearimmediate.js @@ -5,9 +5,11 @@ const common = require('../common'); const assert = require('assert'); const async_hooks = require('async_hooks'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different async IDs'); +} let seenId, seenResource; diff --git a/test/parallel/test-async-wrap-promise-after-enabled.js b/test/parallel/test-async-wrap-promise-after-enabled.js index 0d58cbd653868b..cbca873574c1f8 100644 --- a/test/parallel/test-async-wrap-promise-after-enabled.js +++ b/test/parallel/test-async-wrap-promise-after-enabled.js @@ -4,9 +4,11 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Worker bootstrapping works differently -> different timing'); +} const async_hooks = require('async_hooks'); diff --git a/test/parallel/test-bootstrap-modules.js b/test/parallel/test-bootstrap-modules.js index 12adfaa7f5c5e1..9d3802e2f110fa 100644 --- a/test/parallel/test-bootstrap-modules.js +++ b/test/parallel/test-bootstrap-modules.js @@ -116,7 +116,9 @@ expected.atRunTime = new Set([ 'NativeModule internal/modules/esm/utils', ]); -if (common.isMainThread) { +const { isMainThread } = require('worker_threads'); + +if (isMainThread) { [ 'NativeModule url', ].forEach(expected.beforePreExec.add.bind(expected.beforePreExec)); @@ -187,7 +189,7 @@ function err(message) { } } -if (common.isMainThread) { +if (isMainThread) { const missing = expected.beforePreExec.difference(actual.beforePreExec); const extra = actual.beforePreExec.difference(expected.beforePreExec); if (missing.size !== 0) { @@ -213,10 +215,10 @@ if (common.isMainThread) { } } -if (!common.isMainThread) { +if (!isMainThread) { // For workers, just merge beforePreExec into atRunTime for now. // When we start adding modules to the worker snapshot, this branch - // can be removed and we can just remove the common.isMainThread + // can be removed and we can just remove the isMainThread // conditions. expected.beforePreExec.forEach(expected.atRunTime.add.bind(expected.atRunTime)); actual.beforePreExec.forEach(actual.atRunTime.add.bind(actual.atRunTime)); diff --git a/test/parallel/test-child-process-advanced-serialization-splitted-length-field.js b/test/parallel/test-child-process-advanced-serialization-splitted-length-field.js new file mode 100644 index 00000000000000..5407a56f495c8f --- /dev/null +++ b/test/parallel/test-child-process-advanced-serialization-splitted-length-field.js @@ -0,0 +1,24 @@ +'use strict'; +const common = require('../common'); +const child_process = require('child_process'); + +// Regression test for https://github.com/nodejs/node/issues/55834 +const msgLen = 65521; +let cnt = 10; + +if (process.argv[2] === 'child') { + const msg = Buffer.allocUnsafe(msgLen); + (function send() { + if (cnt--) { + process.send(msg, send); + } else { + process.disconnect(); + } + })(); +} else { + const child = child_process.spawn(process.execPath, [__filename, 'child'], { + stdio: ['inherit', 'inherit', 'inherit', 'ipc'], + serialization: 'advanced' + }); + child.on('message', common.mustCall(cnt)); +} diff --git a/test/parallel/test-child-process-bad-stdio.js b/test/parallel/test-child-process-bad-stdio.js index 90e8ddd0215a2b..b612fc832281a6 100644 --- a/test/parallel/test-child-process-bad-stdio.js +++ b/test/parallel/test-child-process-bad-stdio.js @@ -1,21 +1,23 @@ 'use strict'; // Flags: --expose-internals const common = require('../common'); -const assert = require('assert'); -const cp = require('child_process'); if (process.argv[2] === 'child') { setTimeout(() => {}, common.platformTimeout(100)); return; } +const assert = require('node:assert'); +const cp = require('node:child_process'); +const { mock, test } = require('node:test'); +const { ChildProcess } = require('internal/child_process'); + // Monkey patch spawn() to create a child process normally, but destroy the // stdout and stderr streams. This replicates the conditions where the streams // cannot be properly created. -const ChildProcess = require('internal/child_process').ChildProcess; const original = ChildProcess.prototype.spawn; -ChildProcess.prototype.spawn = function() { +mock.method(ChildProcess.prototype, 'spawn', function() { const err = original.apply(this, arguments); this.stdout.destroy(); @@ -24,7 +26,7 @@ ChildProcess.prototype.spawn = function() { this.stderr = null; return err; -}; +}); function createChild(options, callback) { const [cmd, opts] = common.escapePOSIXShell`"${process.execPath}" "${__filename}" child`; @@ -33,32 +35,32 @@ function createChild(options, callback) { return cp.exec(cmd, options, common.mustCall(callback)); } -// Verify that normal execution of a child process is handled. -{ +test('normal execution of a child process is handled', (_, done) => { createChild({}, (err, stdout, stderr) => { assert.strictEqual(err, null); assert.strictEqual(stdout, ''); assert.strictEqual(stderr, ''); + done(); }); -} +}); -// Verify that execution with an error event is handled. -{ +test('execution with an error event is handled', (_, done) => { const error = new Error('foo'); const child = createChild({}, (err, stdout, stderr) => { assert.strictEqual(err, error); assert.strictEqual(stdout, ''); assert.strictEqual(stderr, ''); + done(); }); child.emit('error', error); -} +}); -// Verify that execution with a killed process is handled. -{ +test('execution with a killed process is handled', (_, done) => { createChild({ timeout: 1 }, (err, stdout, stderr) => { assert.strictEqual(err.killed, true); assert.strictEqual(stdout, ''); assert.strictEqual(stderr, ''); + done(); }); -} +}); diff --git a/test/parallel/test-child-process-validate-stdio.js b/test/parallel/test-child-process-validate-stdio.js index d5958c694ff6ff..5ba6f0fd123cc1 100644 --- a/test/parallel/test-child-process-validate-stdio.js +++ b/test/parallel/test-child-process-validate-stdio.js @@ -43,7 +43,9 @@ assert.throws(() => getValidStdio(stdio2, true), assert.throws(() => getValidStdio(stdio), expectedError); } -if (common.isMainThread) { +const { isMainThread } = require('worker_threads'); + +if (isMainThread) { const stdio3 = [process.stdin, process.stdout, process.stderr]; const result = getValidStdio(stdio3, false); assert.deepStrictEqual(result, { diff --git a/test/parallel/test-child-process-windows-hide.js b/test/parallel/test-child-process-windows-hide.js index ef4a8be8784ebc..c218c901a7f2ea 100644 --- a/test/parallel/test-child-process-windows-hide.js +++ b/test/parallel/test-child-process-windows-hide.js @@ -3,49 +3,48 @@ const common = require('../common'); const assert = require('assert'); const cp = require('child_process'); +const { test } = require('node:test'); const internalCp = require('internal/child_process'); const cmd = process.execPath; const args = ['-p', '42']; const options = { windowsHide: true }; -// Since windowsHide isn't really observable, monkey patch spawn() and -// spawnSync() to verify that the flag is being passed through correctly. -const originalSpawn = internalCp.ChildProcess.prototype.spawn; -const originalSpawnSync = internalCp.spawnSync; +// Since windowsHide isn't really observable, this test relies on monkey +// patching spawn() and spawnSync() to verify that the flag is being passed +// through correctly. -internalCp.ChildProcess.prototype.spawn = common.mustCall(function(options) { - assert.strictEqual(options.windowsHide, true); - return originalSpawn.apply(this, arguments); -}, 2); - -internalCp.spawnSync = common.mustCall(function(options) { - assert.strictEqual(options.windowsHide, true); - return originalSpawnSync.apply(this, arguments); -}); - -{ +test('spawnSync() passes windowsHide correctly', (t) => { + const spy = t.mock.method(internalCp, 'spawnSync'); const child = cp.spawnSync(cmd, args, options); assert.strictEqual(child.status, 0); assert.strictEqual(child.signal, null); assert.strictEqual(child.stdout.toString().trim(), '42'); assert.strictEqual(child.stderr.toString().trim(), ''); -} + assert.strictEqual(spy.mock.calls.length, 1); + assert.strictEqual(spy.mock.calls[0].arguments[0].windowsHide, true); +}); -{ +test('spawn() passes windowsHide correctly', (t, done) => { + const spy = t.mock.method(internalCp.ChildProcess.prototype, 'spawn'); const child = cp.spawn(cmd, args, options); child.on('exit', common.mustCall((code, signal) => { assert.strictEqual(code, 0); assert.strictEqual(signal, null); + assert.strictEqual(spy.mock.calls.length, 1); + assert.strictEqual(spy.mock.calls[0].arguments[0].windowsHide, true); + done(); })); -} +}); -{ - const callback = common.mustSucceed((stdout, stderr) => { +test('execFile() passes windowsHide correctly', (t, done) => { + const spy = t.mock.method(internalCp.ChildProcess.prototype, 'spawn'); + cp.execFile(cmd, args, options, common.mustSucceed((stdout, stderr) => { assert.strictEqual(stdout.trim(), '42'); assert.strictEqual(stderr.trim(), ''); - }); - - cp.execFile(cmd, args, options, callback); -} + assert.strictEqual(spy.mock.calls.length, 1); + assert.strictEqual(spy.mock.calls[0].arguments[0].windowsHide, true); + done(); + })); +}); diff --git a/test/parallel/test-cli-eval.js b/test/parallel/test-cli-eval.js index 0a4faf9c43311f..42e9369f6aa876 100644 --- a/test/parallel/test-cli-eval.js +++ b/test/parallel/test-cli-eval.js @@ -350,7 +350,7 @@ child.exec( // Regression test for https://github.com/nodejs/node/issues/45336 child.execFile(process.execPath, ['-p', - 'Object.defineProperty(global, "fs", { configurable: false });' + + 'Object.defineProperty(globalThis, "fs", { configurable: false });' + 'fs === require("node:fs")'], common.mustSucceed((stdout) => { assert.match(stdout, /^true/); diff --git a/test/parallel/test-cli-node-options.js b/test/parallel/test-cli-node-options.js index 03ffe7aa03f481..b1d5c44ceeeebc 100644 --- a/test/parallel/test-cli-node-options.js +++ b/test/parallel/test-cli-node-options.js @@ -12,6 +12,7 @@ const { Worker } = require('worker_threads'); const fixtures = require('../common/fixtures'); const tmpdir = require('../common/tmpdir'); +const { hasOpenSSL3 } = require('../common/crypto'); tmpdir.refresh(); const printA = path.relative(tmpdir.path, fixtures.path('printA.js')); @@ -64,7 +65,7 @@ if (common.isLinux) { if (common.hasCrypto) { expectNoWorker('--use-openssl-ca', 'B\n'); expectNoWorker('--use-bundled-ca', 'B\n'); - if (!common.hasOpenSSL3) + if (!hasOpenSSL3) expectNoWorker('--openssl-config=_ossl_cfg', 'B\n'); } diff --git a/test/parallel/test-cluster-net-listen-relative-path.js b/test/parallel/test-cluster-net-listen-relative-path.js index bb4d0b90f203e6..16d2bf5c836b53 100644 --- a/test/parallel/test-cluster-net-listen-relative-path.js +++ b/test/parallel/test-cluster-net-listen-relative-path.js @@ -1,11 +1,16 @@ 'use strict'; const common = require('../common'); -if (common.isWindows) +if (common.isWindows) { common.skip('On Windows named pipes live in their own ' + 'filesystem and don\'t have a ~100 byte limit'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const cluster = require('cluster'); diff --git a/test/parallel/test-code-cache.js b/test/parallel/test-code-cache.js index 1c768d664c8a18..576f713af1b02a 100644 --- a/test/parallel/test-code-cache.js +++ b/test/parallel/test-code-cache.js @@ -5,7 +5,8 @@ // and the cache is used when built in modules are compiled. // Otherwise, verifies that no cache is used when compiling builtins. -const { isMainThread } = require('../common'); +require('../common'); +const { isMainThread } = require('worker_threads'); const assert = require('assert'); const { internalBinding diff --git a/test/parallel/test-common-gc.js b/test/parallel/test-common-gc.js index f7d73ccd0423e3..54abe3695cc3be 100644 --- a/test/parallel/test-common-gc.js +++ b/test/parallel/test-common-gc.js @@ -5,10 +5,10 @@ const { onGC } = require('../common/gc'); { onGC({}, { ongc: common.mustCall() }); - global.gc(); + globalThis.gc(); } { onGC(process, { ongc: common.mustNotCall() }); - global.gc(); + globalThis.gc(); } diff --git a/test/parallel/test-console-assign-undefined.js b/test/parallel/test-console-assign-undefined.js index 1021307b3c5f22..7f5b0e04727679 100644 --- a/test/parallel/test-console-assign-undefined.js +++ b/test/parallel/test-console-assign-undefined.js @@ -1,28 +1,28 @@ 'use strict'; -// Patch global.console before importing modules that may modify the console +// Patch globalThis.console before importing modules that may modify the console // object. -const tmp = global.console; -global.console = 42; +const tmp = globalThis.console; +globalThis.console = 42; require('../common'); const assert = require('assert'); // Originally the console had a getter. Test twice to verify it had no side // effect. -assert.strictEqual(global.console, 42); -assert.strictEqual(global.console, 42); +assert.strictEqual(globalThis.console, 42); +assert.strictEqual(globalThis.console, 42); assert.throws( () => console.log('foo'), { name: 'TypeError' } ); -global.console = 1; -assert.strictEqual(global.console, 1); +globalThis.console = 1; +assert.strictEqual(globalThis.console, 1); assert.strictEqual(console, 1); // Reset the console -global.console = tmp; +globalThis.console = tmp; console.log('foo'); diff --git a/test/parallel/test-console-clear.js b/test/parallel/test-console-clear.js index 5975602547922a..8ded51595f654e 100644 --- a/test/parallel/test-console-clear.js +++ b/test/parallel/test-console-clear.js @@ -1,6 +1,6 @@ 'use strict'; -const common = require('../common'); +require('../common'); const assert = require('assert'); const stdoutWrite = process.stdout.write; @@ -18,7 +18,7 @@ function doTest(isTTY, check) { } // Fake TTY -if (!common.isDumbTerminal) { +if (process.env.TERM !== 'dumb') { doTest(true, check); } doTest(false, ''); diff --git a/test/parallel/test-console-diagnostics-channels.js b/test/parallel/test-console-diagnostics-channels.js new file mode 100644 index 00000000000000..1a12d7a78f0b71 --- /dev/null +++ b/test/parallel/test-console-diagnostics-channels.js @@ -0,0 +1,77 @@ +'use strict'; + +const { mustCall } = require('../common'); +const { deepStrictEqual, ok, strictEqual } = require('assert'); + +const { channel } = require('diagnostics_channel'); + +const { + hijackStdout, + hijackStderr, + restoreStdout, + restoreStderr +} = require('../common/hijackstdio'); + +const stdoutMethods = [ + 'log', + 'info', + 'debug', +]; + +const stderrMethods = [ + 'warn', + 'error', +]; + +const methods = [ + ...stdoutMethods, + ...stderrMethods, +]; + +const channels = { + log: channel('console.log'), + info: channel('console.info'), + debug: channel('console.debug'), + warn: channel('console.warn'), + error: channel('console.error') +}; + +process.stdout.isTTY = false; +process.stderr.isTTY = false; + +for (const method of methods) { + let intercepted = false; + let formatted = false; + + const isStdout = stdoutMethods.includes(method); + const hijack = isStdout ? hijackStdout : hijackStderr; + const restore = isStdout ? restoreStdout : restoreStderr; + + const foo = 'string'; + const bar = { key: /value/ }; + const baz = [ 1, 2, 3 ]; + + channels[method].subscribe(mustCall((args) => { + // Should not have been formatted yet. + intercepted = true; + ok(!formatted); + + // Should receive expected log message args. + deepStrictEqual(args, [foo, bar, baz]); + + // Should be able to mutate message args and have it reflected in output. + bar.added = true; + })); + + hijack(mustCall((output) => { + // Should have already been intercepted. + formatted = true; + ok(intercepted); + + // Should produce expected formatted output with mutated message args. + strictEqual(output, 'string { key: /value/, added: true } [ 1, 2, 3 ]\n'); + })); + + console[method](foo, bar, baz); + restore(); +} diff --git a/test/parallel/test-console-instance.js b/test/parallel/test-console-instance.js index bf22314e22e031..0364a6213bc726 100644 --- a/test/parallel/test-console-instance.js +++ b/test/parallel/test-console-instance.js @@ -36,9 +36,9 @@ process.stdout.write = process.stderr.write = common.mustNotCall(); // Make sure that the "Console" function exists. assert.strictEqual(typeof Console, 'function'); -assert.strictEqual(requiredConsole, global.console); +assert.strictEqual(requiredConsole, globalThis.console); // Make sure the custom instanceof of Console works -assert.ok(global.console instanceof Console); +assert.ok(globalThis.console instanceof Console); assert.ok(!({} instanceof Console)); // Make sure that the Console constructor throws diff --git a/test/parallel/test-console-self-assign.js b/test/parallel/test-console-self-assign.js index 53c54ab9a327cf..46f9bc93d4f2bf 100644 --- a/test/parallel/test-console-self-assign.js +++ b/test/parallel/test-console-self-assign.js @@ -3,4 +3,4 @@ require('../common'); // Assigning to itself should not throw. -global.console = global.console; // eslint-disable-line no-self-assign +globalThis.console = globalThis.console; // eslint-disable-line no-self-assign diff --git a/test/parallel/test-console.js b/test/parallel/test-console.js index 85b46a7c992552..e25ac7178722c0 100644 --- a/test/parallel/test-console.js +++ b/test/parallel/test-console.js @@ -31,10 +31,12 @@ const { restoreStderr } = require('../common/hijackstdio'); +const { isMainThread } = require('worker_threads'); + assert.ok(process.stdout.writable); assert.ok(process.stderr.writable); // Support legacy API -if (common.isMainThread) { +if (isMainThread) { assert.strictEqual(typeof process.stdout.fd, 'number'); assert.strictEqual(typeof process.stderr.fd, 'number'); } diff --git a/test/parallel/test-crypto-aes-wrap.js b/test/parallel/test-crypto-aes-wrap.js index 6fe35258f7d6b2..21d48d8a3fbae7 100644 --- a/test/parallel/test-crypto-aes-wrap.js +++ b/test/parallel/test-crypto-aes-wrap.js @@ -1,62 +1,60 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +// Tests that the AES wrap and unwrap functions are working correctly. const assert = require('assert'); const crypto = require('crypto'); -const test = [ +const ivShort = Buffer.from('3fd838af', 'hex'); +const ivLong = Buffer.from('3fd838af4093d749', 'hex'); +const key1 = Buffer.from('b26f309fbe57e9b3bb6ae5ef31d54450', 'hex'); +const key2 = Buffer.from('40978085d68091f7dfca0d7dfc7a5ee76d2cc7f2f345a304', 'hex'); +const key3 = Buffer.from('29c9eab5ed5ad44134a1437fe2e673b4d88a5b7c72e68454fea08721392b7323', 'hex'); + +[ { algorithm: 'aes128-wrap', - key: 'b26f309fbe57e9b3bb6ae5ef31d54450', - iv: '3fd838af4093d749', + key: key1, + iv: ivLong, text: '12345678123456781234567812345678' }, { algorithm: 'id-aes128-wrap-pad', - key: 'b26f309fbe57e9b3bb6ae5ef31d54450', - iv: '3fd838af', + key: key1, + iv: ivShort, text: '12345678123456781234567812345678123' }, { algorithm: 'aes192-wrap', - key: '40978085d68091f7dfca0d7dfc7a5ee76d2cc7f2f345a304', - iv: '3fd838af4093d749', + key: key2, + iv: ivLong, text: '12345678123456781234567812345678' }, { algorithm: 'id-aes192-wrap-pad', - key: '40978085d68091f7dfca0d7dfc7a5ee76d2cc7f2f345a304', - iv: '3fd838af', + key: key2, + iv: ivShort, text: '12345678123456781234567812345678123' }, { algorithm: 'aes256-wrap', - key: '29c9eab5ed5ad44134a1437fe2e673b4d88a5b7c72e68454fea08721392b7323', - iv: '3fd838af4093d749', + key: key3, + iv: ivLong, text: '12345678123456781234567812345678' }, { algorithm: 'id-aes256-wrap-pad', - key: '29c9eab5ed5ad44134a1437fe2e673b4d88a5b7c72e68454fea08721392b7323', - iv: '3fd838af', + key: key3, + iv: ivShort, text: '12345678123456781234567812345678123' }, -]; - -test.forEach((data) => { - const cipher = crypto.createCipheriv( - data.algorithm, - Buffer.from(data.key, 'hex'), - Buffer.from(data.iv, 'hex')); - const ciphertext = cipher.update(data.text, 'utf8'); - - const decipher = crypto.createDecipheriv( - data.algorithm, - Buffer.from(data.key, 'hex'), - Buffer.from(data.iv, 'hex')); - const msg = decipher.update(ciphertext, 'buffer', 'utf8'); - - assert.strictEqual(msg, data.text, `${data.algorithm} test case failed`); +].forEach(({ algorithm, key, iv, text }) => { + const cipher = crypto.createCipheriv(algorithm, key, iv); + const decipher = crypto.createDecipheriv(algorithm, key, iv); + const msg = decipher.update(cipher.update(text, 'utf8'), 'buffer', 'utf8'); + assert.strictEqual(msg, text, `${algorithm} test case failed`); }); diff --git a/test/parallel/test-crypto-authenticated.js b/test/parallel/test-crypto-authenticated.js index d191ab7be2de20..181ea732b91281 100644 --- a/test/parallel/test-crypto-authenticated.js +++ b/test/parallel/test-crypto-authenticated.js @@ -21,13 +21,17 @@ // Flags: --no-warnings 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); const { inspect } = require('util'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); + +const isFipsEnabled = crypto.getFips(); // // Test authenticated encryption modes. @@ -53,7 +57,7 @@ for (const test of TEST_CASES) { continue; } - if (common.hasFipsCrypto && test.iv.length < 24) { + if (isFipsEnabled && test.iv.length < 24) { common.printSkipMessage('IV len < 12 bytes unsupported in FIPS mode'); continue; } @@ -95,7 +99,7 @@ for (const test of TEST_CASES) { } { - if (isCCM && common.hasFipsCrypto) { + if (isCCM && isFipsEnabled) { assert.throws(() => { crypto.createDecipheriv(test.algo, Buffer.from(test.key, 'hex'), @@ -286,7 +290,7 @@ for (const test of TEST_CASES) { }); }, errMessages.authTagLength); - if (!common.hasFipsCrypto) { + if (!isFipsEnabled) { assert.throws(() => { crypto.createDecipheriv('aes-256-ccm', 'FxLKsqdmv0E9xrQhp0b1ZgI0K7JFZJM8', @@ -312,7 +316,7 @@ for (const test of TEST_CASES) { }); // CCM decryption and create(De|C)ipher are unsupported in FIPS mode. - if (!common.hasFipsCrypto) { + if (!isFipsEnabled) { assert.throws(() => { crypto.createDecipheriv(`aes-256-${mode}`, 'FxLKsqdmv0E9xrQhp0b1ZgI0K7JFZJM8', @@ -388,7 +392,7 @@ for (const test of TEST_CASES) { cipher.setAAD(Buffer.from('0123456789', 'hex')); }, /options\.plaintextLength required for CCM mode with AAD/); - if (!common.hasFipsCrypto) { + if (!isFipsEnabled) { assert.throws(() => { const cipher = crypto.createDecipheriv('aes-256-ccm', 'FxLKsqdmv0E9xrQhp0b1ZgI0K7JFZJM8', @@ -403,7 +407,7 @@ for (const test of TEST_CASES) { // Test that final() throws in CCM mode when no authentication tag is provided. { - if (!common.hasFipsCrypto) { + if (!isFipsEnabled) { const key = Buffer.from('1ed2233fa2223ef5d7df08546049406c', 'hex'); const iv = Buffer.from('7305220bca40d4c90e1791e9', 'hex'); const ct = Buffer.from('8beba09d4d4d861f957d51c0794f4abf8030848e', 'hex'); @@ -562,7 +566,7 @@ for (const test of TEST_CASES) { ]) { assert.throws(() => { cipher.final(); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { code: 'ERR_OSSL_TAG_NOT_SET' } : { message: /Unsupported state/ diff --git a/test/parallel/test-crypto-cipheriv-decipheriv.js b/test/parallel/test-crypto-cipheriv-decipheriv.js index 3e3632203af72c..88d07c3b957f57 100644 --- a/test/parallel/test-crypto-cipheriv-decipheriv.js +++ b/test/parallel/test-crypto-cipheriv-decipheriv.js @@ -5,6 +5,8 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); +const isFipsEnabled = crypto.getFips(); function testCipher1(key, iv) { // Test encryption and decryption with explicit key and iv @@ -150,7 +152,7 @@ testCipher1(Buffer.from('0123456789abcd0123456789'), '12345678'); testCipher1(Buffer.from('0123456789abcd0123456789'), Buffer.from('12345678')); testCipher2(Buffer.from('0123456789abcd0123456789'), Buffer.from('12345678')); -if (!common.hasFipsCrypto) { +if (!isFipsEnabled) { testCipher3(Buffer.from('000102030405060708090A0B0C0D0E0F', 'hex'), Buffer.from('A6A6A6A6A6A6A6A6', 'hex')); } @@ -193,10 +195,10 @@ assert.throws( errMessage); // But all other IV lengths should be accepted. -const minIvLength = common.hasOpenSSL3 ? 8 : 1; -const maxIvLength = common.hasOpenSSL3 ? 64 : 256; +const minIvLength = hasOpenSSL3 ? 8 : 1; +const maxIvLength = hasOpenSSL3 ? 64 : 256; for (let n = minIvLength; n < maxIvLength; n += 1) { - if (common.hasFipsCrypto && n < 12) continue; + if (isFipsEnabled && n < 12) continue; crypto.createCipheriv('aes-128-gcm', Buffer.alloc(16), Buffer.alloc(n)); } diff --git a/test/parallel/test-crypto-classes.js b/test/parallel/test-crypto-classes.js index f736921476a1c5..429bc91d4412be 100644 --- a/test/parallel/test-crypto-classes.js +++ b/test/parallel/test-crypto-classes.js @@ -4,9 +4,9 @@ const assert = require('assert'); if (!common.hasCrypto) { common.skip('missing crypto'); - return; } const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); // 'ClassName' : ['args', 'for', 'constructor'] const TEST_CASES = { @@ -21,8 +21,8 @@ const TEST_CASES = { 'ECDH': ['prime256v1'], }; -if (!common.hasFipsCrypto) { - TEST_CASES.DiffieHellman = [common.hasOpenSSL3 ? 1024 : 256]; +if (!crypto.getFips()) { + TEST_CASES.DiffieHellman = [hasOpenSSL3 ? 1024 : 256]; } for (const [clazz, args] of Object.entries(TEST_CASES)) { diff --git a/test/parallel/test-crypto-dh-constructor.js b/test/parallel/test-crypto-dh-constructor.js index c7eaca29347a2b..eb8674932484ed 100644 --- a/test/parallel/test-crypto-dh-constructor.js +++ b/test/parallel/test-crypto-dh-constructor.js @@ -5,8 +5,9 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); -const size = common.hasFipsCrypto || common.hasOpenSSL3 ? 1024 : 256; +const size = crypto.getFips() || hasOpenSSL3 ? 1024 : 256; const dh1 = crypto.createDiffieHellman(size); const p1 = dh1.getPrime('buffer'); diff --git a/test/parallel/test-crypto-dh-errors.js b/test/parallel/test-crypto-dh-errors.js index 476ca64b4425b5..0af4db0310750c 100644 --- a/test/parallel/test-crypto-dh-errors.js +++ b/test/parallel/test-crypto-dh-errors.js @@ -5,6 +5,7 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); // https://github.com/nodejs/node/issues/32738 // XXX(bnoordhuis) validateInt32() throwing ERR_OUT_OF_RANGE and RangeError @@ -24,7 +25,7 @@ assert.throws(() => crypto.createDiffieHellman('abcdef', 13.37), { }); for (const bits of [-1, 0, 1]) { - if (common.hasOpenSSL3) { + if (hasOpenSSL3) { assert.throws(() => crypto.createDiffieHellman(bits), { code: 'ERR_OSSL_DH_MODULUS_TOO_SMALL', name: 'Error', diff --git a/test/parallel/test-crypto-dh-generate-keys.js b/test/parallel/test-crypto-dh-generate-keys.js index fc277bb0d9b8e4..e4598274328bd8 100644 --- a/test/parallel/test-crypto-dh-generate-keys.js +++ b/test/parallel/test-crypto-dh-generate-keys.js @@ -6,9 +6,10 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); { - const size = common.hasFipsCrypto || common.hasOpenSSL3 ? 1024 : 256; + const size = crypto.getFips() || hasOpenSSL3 ? 1024 : 256; function unlessInvalidState(f) { try { diff --git a/test/parallel/test-crypto-dh-leak.js b/test/parallel/test-crypto-dh-leak.js index 1998d61d4affd7..df1ba89737c619 100644 --- a/test/parallel/test-crypto-dh-leak.js +++ b/test/parallel/test-crypto-dh-leak.js @@ -9,10 +9,11 @@ if (common.isASan) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); const before = process.memoryUsage.rss(); { - const size = common.hasFipsCrypto || common.hasOpenSSL3 ? 1024 : 256; + const size = crypto.getFips() || hasOpenSSL3 ? 1024 : 256; const dh = crypto.createDiffieHellman(size); const publicKey = dh.generateKeys(); const privateKey = dh.getPrivateKey(); @@ -21,7 +22,7 @@ const before = process.memoryUsage.rss(); dh.setPrivateKey(privateKey); } } -global.gc(); +globalThis.gc(); const after = process.memoryUsage.rss(); // RSS should stay the same, ceteris paribus, but allow for diff --git a/test/parallel/test-crypto-dh-odd-key.js b/test/parallel/test-crypto-dh-odd-key.js index 69a1eb56c866b3..fbe42be425ed1c 100644 --- a/test/parallel/test-crypto-dh-odd-key.js +++ b/test/parallel/test-crypto-dh-odd-key.js @@ -21,22 +21,24 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); function test() { const odd = Buffer.alloc(39, 'A'); - const c = crypto.createDiffieHellman(common.hasOpenSSL3 ? 1024 : 32); + const c = crypto.createDiffieHellman(hasOpenSSL3 ? 1024 : 32); c.setPrivateKey(odd); c.generateKeys(); } // FIPS requires a length of at least 1024 -if (!common.hasFipsCrypto) { +if (!crypto.getFips()) { test(); } else { assert.throws(function() { test(); }, /key size too small/); diff --git a/test/parallel/test-crypto-dh-stateless.js b/test/parallel/test-crypto-dh-stateless.js index 2ccac322e23958..f4fc1849699e31 100644 --- a/test/parallel/test-crypto-dh-stateless.js +++ b/test/parallel/test-crypto-dh-stateless.js @@ -5,6 +5,7 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); assert.throws(() => crypto.diffieHellman(), { name: 'TypeError', @@ -150,7 +151,7 @@ const list = [ // TODO(danbev): Take a closer look if there should be a check in OpenSSL3 // when the dh parameters differ. -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { // Same primes, but different generator. list.push([{ group: 'modp5' }, { prime: group.getPrime(), generator: 5 }]); // Same generator, but different primes. @@ -161,7 +162,7 @@ for (const [params1, params2] of list) { assert.throws(() => { test(crypto.generateKeyPairSync('dh', params1), crypto.generateKeyPairSync('dh', params2)); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { name: 'Error', code: 'ERR_OSSL_MISMATCHING_DOMAIN_PARAMETERS' } : { @@ -220,7 +221,7 @@ const not256k1 = crypto.getCurves().find((c) => /^sec.*(224|384|512)/.test(c)); assert.throws(() => { test(crypto.generateKeyPairSync('ec', { namedCurve: 'secp256k1' }), crypto.generateKeyPairSync('ec', { namedCurve: not256k1 })); -}, common.hasOpenSSL3 ? { +}, hasOpenSSL3 ? { name: 'Error', code: 'ERR_OSSL_MISMATCHING_DOMAIN_PARAMETERS' } : { diff --git a/test/parallel/test-crypto-dh.js b/test/parallel/test-crypto-dh.js index 9ebe14011eed22..d7ffbe5eca9273 100644 --- a/test/parallel/test-crypto-dh.js +++ b/test/parallel/test-crypto-dh.js @@ -1,13 +1,18 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); +const { + hasOpenSSL3, + hasOpenSSL, +} = require('../common/crypto'); { - const size = common.hasFipsCrypto || common.hasOpenSSL3 ? 1024 : 256; + const size = crypto.getFips() || hasOpenSSL3 ? 1024 : 256; const dh1 = crypto.createDiffieHellman(size); const p1 = dh1.getPrime('buffer'); const dh2 = crypto.createDiffieHellman(p1, 'buffer'); @@ -53,7 +58,7 @@ const crypto = require('crypto'); assert.strictEqual(secret1, secret4); let wrongBlockLength; - if (common.hasOpenSSL3) { + if (hasOpenSSL3) { wrongBlockLength = { message: 'error:1C80006B:Provider routines::wrong final block length', code: 'ERR_OSSL_WRONG_FINAL_BLOCK_LENGTH', @@ -87,11 +92,11 @@ const crypto = require('crypto'); { // Error message was changed in OpenSSL 3.0.x from 3.0.12, and 3.1.x from 3.1.4. - const hasOpenSSL3WithNewErrorMessage = (common.hasOpenSSL(3, 0, 12) && !common.hasOpenSSL(3, 1, 0)) || - (common.hasOpenSSL(3, 1, 4)); + const hasOpenSSL3WithNewErrorMessage = (hasOpenSSL(3, 0, 12) && !hasOpenSSL(3, 1, 0)) || + (hasOpenSSL(3, 1, 4)); assert.throws(() => { dh3.computeSecret(''); - }, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ? + }, { message: hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ? 'Unspecified validation error' : 'Supplied key is too small' }); } diff --git a/test/parallel/test-crypto-ecb.js b/test/parallel/test-crypto-ecb.js index aecd858ef3bf1e..6439c9354a059e 100644 --- a/test/parallel/test-crypto-ecb.js +++ b/test/parallel/test-crypto-ecb.js @@ -21,18 +21,23 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { hasOpenSSL3 } = require('../common/crypto'); +const crypto = require('crypto'); -if (common.hasFipsCrypto) +if (crypto.getFips()) { common.skip('BF-ECB is not FIPS 140-2 compatible'); +} -if (common.hasOpenSSL3) +if (hasOpenSSL3) { common.skip('Blowfish is only available with the legacy provider in ' + 'OpenSSl 3.x'); +} const assert = require('assert'); -const crypto = require('crypto'); // Testing whether EVP_CipherInit_ex is functioning correctly. // Reference: bug#1997 diff --git a/test/parallel/test-crypto-fips.js b/test/parallel/test-crypto-fips.js index 8a8a8089a3cf3b..de004b9a9e8f23 100644 --- a/test/parallel/test-crypto-fips.js +++ b/test/parallel/test-crypto-fips.js @@ -10,6 +10,7 @@ const path = require('path'); const fixtures = require('../common/fixtures'); const { internalBinding } = require('internal/test/binding'); const { testFipsCrypto } = internalBinding('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); const FIPS_ENABLED = 1; const FIPS_DISABLED = 0; @@ -114,7 +115,7 @@ assert.ok(test_result === 1 || test_result === 0); // ("Error: Cannot set FIPS mode in a non-FIPS build."). // Due to this uncertainty the following tests are skipped when configured // with --shared-openssl. -if (!sharedOpenSSL() && !common.hasOpenSSL3) { +if (!sharedOpenSSL() && !hasOpenSSL3) { // OpenSSL config file should be able to turn on FIPS mode testHelper( 'stdout', @@ -144,7 +145,7 @@ if (!sharedOpenSSL() && !common.hasOpenSSL3) { // will not work as expected with that version. // TODO(danbev) Revisit these test once FIPS support is available in // OpenSSL 3.x. -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { testHelper( 'stdout', [`--openssl-config=${CNF_FIPS_OFF}`], diff --git a/test/parallel/test-crypto-hash.js b/test/parallel/test-crypto-hash.js index 83218c105a4596..61145aee0727fb 100644 --- a/test/parallel/test-crypto-hash.js +++ b/test/parallel/test-crypto-hash.js @@ -1,12 +1,14 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); const fs = require('fs'); +const { hasOpenSSL } = require('../common/crypto'); const fixtures = require('../common/fixtures'); let cryptoType; @@ -39,7 +41,7 @@ a8.write(''); a8.end(); a8 = a8.read(); -if (!common.hasFipsCrypto) { +if (!crypto.getFips()) { cryptoType = 'md5'; digest = 'latin1'; const a0 = crypto.createHash(cryptoType).update('Test123').digest(digest); @@ -182,19 +184,21 @@ assert.throws( // Test XOF hash functions and the outputLength option. { - // Default outputLengths. - assert.strictEqual(crypto.createHash('shake128').digest('hex'), - '7f9c2ba4e88f827d616045507605853e'); - assert.strictEqual(crypto.createHash('shake128', null).digest('hex'), - '7f9c2ba4e88f827d616045507605853e'); - assert.strictEqual(crypto.createHash('shake256').digest('hex'), - '46b9dd2b0ba88d13233b3feb743eeb24' + - '3fcd52ea62b81b82b50c27646ed5762f'); - assert.strictEqual(crypto.createHash('shake256', { outputLength: 0 }) - .copy() // Default outputLength. - .digest('hex'), - '46b9dd2b0ba88d13233b3feb743eeb24' + - '3fcd52ea62b81b82b50c27646ed5762f'); + // Default outputLengths. Since OpenSSL 3.4 an outputLength is mandatory + if (!hasOpenSSL(3, 4)) { + assert.strictEqual(crypto.createHash('shake128').digest('hex'), + '7f9c2ba4e88f827d616045507605853e'); + assert.strictEqual(crypto.createHash('shake128', null).digest('hex'), + '7f9c2ba4e88f827d616045507605853e'); + assert.strictEqual(crypto.createHash('shake256').digest('hex'), + '46b9dd2b0ba88d13233b3feb743eeb24' + + '3fcd52ea62b81b82b50c27646ed5762f'); + assert.strictEqual(crypto.createHash('shake256', { outputLength: 0 }) + .copy() // Default outputLength. + .digest('hex'), + '46b9dd2b0ba88d13233b3feb743eeb24' + + '3fcd52ea62b81b82b50c27646ed5762f'); + } // Short outputLengths. assert.strictEqual(crypto.createHash('shake128', { outputLength: 0 }) diff --git a/test/parallel/test-crypto-hkdf.js b/test/parallel/test-crypto-hkdf.js index ff3abdf291efcd..3f7e61e9b2ebc0 100644 --- a/test/parallel/test-crypto-hkdf.js +++ b/test/parallel/test-crypto-hkdf.js @@ -13,6 +13,7 @@ const { hkdfSync, getHashes } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); { assert.throws(() => hkdf(), { @@ -124,7 +125,7 @@ const algorithms = [ ['sha256', '', 'salt', '', 10], ['sha512', 'secret', 'salt', '', 15], ]; -if (!common.hasOpenSSL3) +if (!hasOpenSSL3) algorithms.push(['whirlpool', 'secret', '', 'info', 20]); algorithms.forEach(([ hash, secret, salt, info, length ]) => { @@ -215,7 +216,7 @@ algorithms.forEach(([ hash, secret, salt, info, length ]) => { }); -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { const kKnownUnsupported = ['shake128', 'shake256']; getHashes() .filter((hash) => !kKnownUnsupported.includes(hash)) diff --git a/test/parallel/test-crypto-hmac.js b/test/parallel/test-crypto-hmac.js index 62a6ac18d25265..afb5f74cbf076b 100644 --- a/test/parallel/test-crypto-hmac.js +++ b/test/parallel/test-crypto-hmac.js @@ -1,7 +1,8 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const crypto = require('crypto'); @@ -40,7 +41,7 @@ assert.throws( function testHmac(algo, key, data, expected) { // FIPS does not support MD5. - if (common.hasFipsCrypto && algo === 'md5') + if (crypto.getFips() && algo === 'md5') return; if (!Array.isArray(data)) diff --git a/test/parallel/test-crypto-key-objects.js b/test/parallel/test-crypto-key-objects.js index f5271f16d346c0..0c516d80950694 100644 --- a/test/parallel/test-crypto-key-objects.js +++ b/test/parallel/test-crypto-key-objects.js @@ -24,6 +24,8 @@ const { generateKeyPairSync, } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + const fixtures = require('../common/fixtures'); const publicPem = fixtures.readKey('rsa_public.pem', 'ascii'); @@ -297,7 +299,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem', // This should not cause a crash: https://github.com/nodejs/node/issues/25247 assert.throws(() => { createPrivateKey({ key: '' }); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { message: 'error:1E08010C:DECODER routines::unsupported', } : { message: 'error:0909006C:PEM routines:get_name:no start line', @@ -323,7 +325,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem', type: 'pkcs1' }); createPrivateKey({ key, format: 'der', type: 'pkcs1' }); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { message: /error:1E08010C:DECODER routines::unsupported/, library: 'DECODER routines' } : { @@ -510,7 +512,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem', { // Reading an encrypted key without a passphrase should fail. - assert.throws(() => createPrivateKey(privateDsa), common.hasOpenSSL3 ? { + assert.throws(() => createPrivateKey(privateDsa), hasOpenSSL3 ? { name: 'Error', message: 'error:07880109:common libcrypto routines::interrupted or ' + 'cancelled', @@ -526,7 +528,7 @@ const privateDsa = fixtures.readKey('dsa_private_encrypted_1025.pem', key: privateDsa, format: 'pem', passphrase: Buffer.alloc(1025, 'a') - }), common.hasOpenSSL3 ? { name: 'Error' } : { + }), hasOpenSSL3 ? { name: 'Error' } : { code: 'ERR_OSSL_PEM_BAD_PASSWORD_READ', name: 'Error' }); diff --git a/test/parallel/test-crypto-keygen-async-dsa-key-object.js b/test/parallel/test-crypto-keygen-async-dsa-key-object.js index c15807295541e2..a3df136230d0f8 100644 --- a/test/parallel/test-crypto-keygen-async-dsa-key-object.js +++ b/test/parallel/test-crypto-keygen-async-dsa-key-object.js @@ -9,23 +9,25 @@ const { generateKeyPair, } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + // Test async DSA key object generation. { generateKeyPair('dsa', { - modulusLength: common.hasOpenSSL3 ? 2048 : 512, + modulusLength: hasOpenSSL3 ? 2048 : 512, divisorLength: 256 }, common.mustSucceed((publicKey, privateKey) => { assert.strictEqual(publicKey.type, 'public'); assert.strictEqual(publicKey.asymmetricKeyType, 'dsa'); assert.deepStrictEqual(publicKey.asymmetricKeyDetails, { - modulusLength: common.hasOpenSSL3 ? 2048 : 512, + modulusLength: hasOpenSSL3 ? 2048 : 512, divisorLength: 256 }); assert.strictEqual(privateKey.type, 'private'); assert.strictEqual(privateKey.asymmetricKeyType, 'dsa'); assert.deepStrictEqual(privateKey.asymmetricKeyDetails, { - modulusLength: common.hasOpenSSL3 ? 2048 : 512, + modulusLength: hasOpenSSL3 ? 2048 : 512, divisorLength: 256 }); })); diff --git a/test/parallel/test-crypto-keygen-async-dsa.js b/test/parallel/test-crypto-keygen-async-dsa.js index 048c0ce6fb92ef..41968d8cc23365 100644 --- a/test/parallel/test-crypto-keygen-async-dsa.js +++ b/test/parallel/test-crypto-keygen-async-dsa.js @@ -14,6 +14,8 @@ const { spkiExp, } = require('../common/crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + // Test async DSA key generation. { const privateKeyEncoding = { @@ -22,7 +24,7 @@ const { }; generateKeyPair('dsa', { - modulusLength: common.hasOpenSSL3 ? 2048 : 512, + modulusLength: hasOpenSSL3 ? 2048 : 512, divisorLength: 256, publicKeyEncoding: { type: 'spki', @@ -39,8 +41,8 @@ const { // The private key is DER-encoded. assert(Buffer.isBuffer(privateKeyDER)); - assertApproximateSize(publicKey, common.hasOpenSSL3 ? 1194 : 440); - assertApproximateSize(privateKeyDER, common.hasOpenSSL3 ? 721 : 336); + assertApproximateSize(publicKey, hasOpenSSL3 ? 1194 : 440); + assertApproximateSize(privateKeyDER, hasOpenSSL3 ? 721 : 336); // Since the private key is encrypted, signing shouldn't work anymore. assert.throws(() => { diff --git a/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted-p256.js b/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted-p256.js index 553674774571d3..55aa3831c4233b 100644 --- a/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted-p256.js +++ b/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted-p256.js @@ -14,6 +14,8 @@ const { pkcs8EncExp, } = require('../common/crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + // Test async elliptic curve key generation, e.g. for ECDSA, with an encrypted // private key with paramEncoding explicit. { @@ -38,7 +40,7 @@ const { // Since the private key is encrypted, signing shouldn't work anymore. assert.throws(() => testSignVerify(publicKey, privateKey), - common.hasOpenSSL3 ? { + hasOpenSSL3 ? { message: 'error:07880109:common libcrypto ' + 'routines::interrupted or cancelled' } : { diff --git a/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted.js.js b/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted.js.js index 79a132eed0b854..8a55d4338bc72f 100644 --- a/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted.js.js +++ b/test/parallel/test-crypto-keygen-async-explicit-elliptic-curve-encrypted.js.js @@ -12,6 +12,7 @@ const { testSignVerify, spkiExp, sec1EncExp, + hasOpenSSL3, } = require('../common/crypto'); { @@ -38,7 +39,7 @@ const { // Since the private key is encrypted, signing shouldn't work anymore. assert.throws(() => testSignVerify(publicKey, privateKey), - common.hasOpenSSL3 ? { + hasOpenSSL3 ? { message: 'error:07880109:common libcrypto ' + 'routines::interrupted or cancelled' } : { diff --git a/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted-p256.js b/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted-p256.js index 5e7d1a6c9b6611..4c11401d0fc516 100644 --- a/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted-p256.js +++ b/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted-p256.js @@ -12,6 +12,7 @@ const { testSignVerify, spkiExp, pkcs8EncExp, + hasOpenSSL3, } = require('../common/crypto'); // Test async elliptic curve key generation, e.g. for ECDSA, with an encrypted @@ -38,7 +39,7 @@ const { // Since the private key is encrypted, signing shouldn't work anymore. assert.throws(() => testSignVerify(publicKey, privateKey), - common.hasOpenSSL3 ? { + hasOpenSSL3 ? { message: 'error:07880109:common libcrypto ' + 'routines::interrupted or cancelled' } : { diff --git a/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted.js b/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted.js index 1cc93d0a794931..0503ff74787f37 100644 --- a/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted.js +++ b/test/parallel/test-crypto-keygen-async-named-elliptic-curve-encrypted.js @@ -12,6 +12,7 @@ const { testSignVerify, spkiExp, sec1EncExp, + hasOpenSSL3, } = require('../common/crypto'); { @@ -38,7 +39,7 @@ const { // Since the private key is encrypted, signing shouldn't work anymore. assert.throws(() => testSignVerify(publicKey, privateKey), - common.hasOpenSSL3 ? { + hasOpenSSL3 ? { message: 'error:07880109:common libcrypto ' + 'routines::interrupted or cancelled' } : { diff --git a/test/parallel/test-crypto-keygen-async-rsa.js b/test/parallel/test-crypto-keygen-async-rsa.js index f4a83809dc73c7..c80d7d33492923 100644 --- a/test/parallel/test-crypto-keygen-async-rsa.js +++ b/test/parallel/test-crypto-keygen-async-rsa.js @@ -13,6 +13,7 @@ const { testEncryptDecrypt, testSignVerify, pkcs1EncExp, + hasOpenSSL3, } = require('../common/crypto'); // Test async RSA key generation with an encrypted private key. @@ -43,7 +44,7 @@ const { type: 'pkcs1', format: 'der', }; - const expectedError = common.hasOpenSSL3 ? { + const expectedError = hasOpenSSL3 ? { name: 'Error', message: 'error:07880109:common libcrypto routines::interrupted or ' + 'cancelled' diff --git a/test/parallel/test-crypto-keygen-bit-length.js b/test/parallel/test-crypto-keygen-bit-length.js index 08772ba2e496b8..63a80659bb2f53 100644 --- a/test/parallel/test-crypto-keygen-bit-length.js +++ b/test/parallel/test-crypto-keygen-bit-length.js @@ -8,6 +8,7 @@ const assert = require('assert'); const { generateKeyPair, } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); // This tests check that generateKeyPair returns correct bit length in // KeyObject's asymmetricKeyDetails. @@ -27,7 +28,7 @@ const { assert.strictEqual(publicKey.asymmetricKeyDetails.modulusLength, 513); })); - if (common.hasOpenSSL3) { + if (hasOpenSSL3) { generateKeyPair('dsa', { modulusLength: 2049, divisorLength: 256, diff --git a/test/parallel/test-crypto-keygen-empty-passphrase-no-prompt.js b/test/parallel/test-crypto-keygen-empty-passphrase-no-prompt.js index 7679a492c3194c..cb873ff04748b7 100644 --- a/test/parallel/test-crypto-keygen-empty-passphrase-no-prompt.js +++ b/test/parallel/test-crypto-keygen-empty-passphrase-no-prompt.js @@ -11,6 +11,7 @@ const { } = require('crypto'); const { testSignVerify, + hasOpenSSL3, } = require('../common/crypto'); // Passing an empty passphrase string should not cause OpenSSL's default @@ -40,7 +41,7 @@ for (const type of ['pkcs1', 'pkcs8']) { // the key, and not specifying a passphrase should fail when decoding it. assert.throws(() => { return testSignVerify(publicKey, privateKey); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { name: 'Error', code: 'ERR_OSSL_CRYPTO_INTERRUPTED_OR_CANCELLED', message: 'error:07880109:common libcrypto routines::interrupted or cancelled' diff --git a/test/parallel/test-crypto-keygen-missing-oid.js b/test/parallel/test-crypto-keygen-missing-oid.js index f7fefe13848d4b..1e4f309292eb47 100644 --- a/test/parallel/test-crypto-keygen-missing-oid.js +++ b/test/parallel/test-crypto-keygen-missing-oid.js @@ -11,6 +11,8 @@ const { getCurves, } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + // This test creates EC key pairs on curves without associated OIDs. // Specifying a key encoding should not crash. { @@ -20,7 +22,7 @@ const { continue; const expectedErrorCode = - common.hasOpenSSL3 ? 'ERR_OSSL_MISSING_OID' : 'ERR_OSSL_EC_MISSING_OID'; + hasOpenSSL3 ? 'ERR_OSSL_MISSING_OID' : 'ERR_OSSL_EC_MISSING_OID'; const params = { namedCurve, publicKeyEncoding: { diff --git a/test/parallel/test-crypto-keygen.js b/test/parallel/test-crypto-keygen.js index b09ca9e7c531ea..edaee845075668 100644 --- a/test/parallel/test-crypto-keygen.js +++ b/test/parallel/test-crypto-keygen.js @@ -14,6 +14,7 @@ const { } = require('crypto'); const { inspect } = require('util'); +const { hasOpenSSL3 } = require('../common/crypto'); // Test invalid parameter encoding. { @@ -351,7 +352,7 @@ const { inspect } = require('util'); publicExponent }, common.mustCall((err) => { assert.strictEqual(err.name, 'Error'); - assert.match(err.message, common.hasOpenSSL3 ? /exponent/ : /bad e value/); + assert.match(err.message, hasOpenSSL3 ? /exponent/ : /bad e value/); })); } } diff --git a/test/parallel/test-crypto-no-algorithm.js b/test/parallel/test-crypto-no-algorithm.js index 37db38cf613b65..bb5b81e119c87d 100644 --- a/test/parallel/test-crypto-no-algorithm.js +++ b/test/parallel/test-crypto-no-algorithm.js @@ -4,13 +4,16 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); -if (!common.hasOpenSSL3) +const { hasOpenSSL3 } = require('../common/crypto'); + +if (!hasOpenSSL3) common.skip('this test requires OpenSSL 3.x'); const assert = require('node:assert/strict'); const crypto = require('node:crypto'); +const { isMainThread } = require('worker_threads'); -if (common.isMainThread) { +if (isMainThread) { // TODO(richardlau): Decide if `crypto.setFips` should error if the // provider named "fips" is not available. crypto.setFips(1); diff --git a/test/parallel/test-crypto-oneshot-hash.js b/test/parallel/test-crypto-oneshot-hash.js index 56b4c04a65a1c1..861aded5dd3f60 100644 --- a/test/parallel/test-crypto-oneshot-hash.js +++ b/test/parallel/test-crypto-oneshot-hash.js @@ -8,6 +8,7 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL } = require('../common/crypto'); const fs = require('fs'); // Test errors for invalid arguments. @@ -31,6 +32,9 @@ const methods = crypto.getHashes(); const input = fs.readFileSync(fixtures.path('utf8_test_text.txt')); for (const method of methods) { + // Skip failing tests on OpenSSL 3.4.0 + if (method.startsWith('shake') && hasOpenSSL(3, 4)) + continue; for (const outputEncoding of ['buffer', 'hex', 'base64', undefined]) { const oldDigest = crypto.createHash(method).update(input).digest(outputEncoding || 'hex'); const digestFromBuffer = crypto.hash(method, input, outputEncoding); diff --git a/test/parallel/test-crypto-padding.js b/test/parallel/test-crypto-padding.js index f1f14b472997e7..48cd1ed4df61aa 100644 --- a/test/parallel/test-crypto-padding.js +++ b/test/parallel/test-crypto-padding.js @@ -26,6 +26,7 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); // Input data. const ODD_LENGTH_PLAIN = 'Hello node world!'; @@ -82,7 +83,7 @@ assert.strictEqual(enc(EVEN_LENGTH_PLAIN, true), EVEN_LENGTH_ENCRYPTED); assert.throws(function() { // Input must have block length %. enc(ODD_LENGTH_PLAIN, false); -}, common.hasOpenSSL3 ? { +}, hasOpenSSL3 ? { message: 'error:1C80006B:Provider routines::wrong final block length', code: 'ERR_OSSL_WRONG_FINAL_BLOCK_LENGTH', reason: 'wrong final block length', @@ -109,7 +110,7 @@ assert.strictEqual(dec(EVEN_LENGTH_ENCRYPTED, false).length, 48); assert.throws(function() { // Must have at least 1 byte of padding (PKCS): assert.strictEqual(dec(EVEN_LENGTH_ENCRYPTED_NOPAD, true), EVEN_LENGTH_PLAIN); -}, common.hasOpenSSL3 ? { +}, hasOpenSSL3 ? { message: 'error:1C800064:Provider routines::bad decrypt', reason: 'bad decrypt', code: 'ERR_OSSL_BAD_DECRYPT', diff --git a/test/parallel/test-crypto-pbkdf2.js b/test/parallel/test-crypto-pbkdf2.js index 1f8e6a81f300e7..efd8d6eaf0d640 100644 --- a/test/parallel/test-crypto-pbkdf2.js +++ b/test/parallel/test-crypto-pbkdf2.js @@ -5,6 +5,7 @@ if (!common.hasCrypto) const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); function runPBKDF2(password, salt, iterations, keylen, hash) { const syncResult = @@ -219,7 +220,7 @@ assert.throws( } ); -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { const kNotPBKDF2Supported = ['shake128', 'shake256']; crypto.getHashes() .filter((hash) => !kNotPBKDF2Supported.includes(hash)) diff --git a/test/parallel/test-crypto-prime.js b/test/parallel/test-crypto-prime.js index 209c8251f78053..5ffdc1394282be 100644 --- a/test/parallel/test-crypto-prime.js +++ b/test/parallel/test-crypto-prime.js @@ -14,6 +14,8 @@ const { checkPrimeSync, } = require('crypto'); +const { Worker } = require('worker_threads'); + const { promisify } = require('util'); const pgeneratePrime = promisify(generatePrime); const pCheckPrime = promisify(checkPrime); @@ -252,6 +254,19 @@ for (const checks of [-(2 ** 31), -1, 2 ** 31, 2 ** 32 - 1, 2 ** 32, 2 ** 50]) { }); } +{ + const bytes = Buffer.alloc(67108864); + bytes[0] = 0x1; + assert.throws(() => checkPrime(bytes, common.mustNotCall()), { + code: 'ERR_OSSL_BN_BIGNUM_TOO_LONG', + message: /bignum too long/ + }); + assert.throws(() => checkPrimeSync(bytes), { + code: 'ERR_OSSL_BN_BIGNUM_TOO_LONG', + message: /bignum too long/ + }); +} + assert(!checkPrimeSync(Buffer.from([0x1]))); assert(checkPrimeSync(Buffer.from([0x2]))); assert(checkPrimeSync(Buffer.from([0x3]))); @@ -295,3 +310,17 @@ assert.throws(() => { checkPrime(prime, common.mustSucceed(assert)); })); } + +{ + // Verify that generatePrime can be reasonably interrupted. + const worker = new Worker(` + const { generatePrime } = require('crypto'); + generatePrime(2048, () => { + throw new Error('should not be called'); + }); + process.exit(42); + `, { eval: true }); + + worker.on('error', common.mustNotCall()); + worker.on('exit', common.mustCall((exitCode) => assert.strictEqual(exitCode, 42))); +} diff --git a/test/parallel/test-crypto-private-decrypt-gh32240.js b/test/parallel/test-crypto-private-decrypt-gh32240.js index e88227a215ba4f..1ff5b565d6d5f4 100644 --- a/test/parallel/test-crypto-private-decrypt-gh32240.js +++ b/test/parallel/test-crypto-private-decrypt-gh32240.js @@ -14,6 +14,8 @@ const { privateDecrypt, } = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); + const pair = generateKeyPairSync('rsa', { modulusLength: 512 }); const expected = Buffer.from('shibboleth'); @@ -34,7 +36,7 @@ function decrypt(key) { } decrypt(pkey); -assert.throws(() => decrypt(pkeyEncrypted), common.hasOpenSSL3 ? +assert.throws(() => decrypt(pkeyEncrypted), hasOpenSSL3 ? { message: 'error:07880109:common libcrypto routines::interrupted or ' + 'cancelled' } : { code: 'ERR_MISSING_PASSPHRASE' }); diff --git a/test/parallel/test-crypto-publicDecrypt-fails-first-time.js b/test/parallel/test-crypto-publicDecrypt-fails-first-time.js index a60b87dbf65229..1d64e08920c63b 100644 --- a/test/parallel/test-crypto-publicDecrypt-fails-first-time.js +++ b/test/parallel/test-crypto-publicDecrypt-fails-first-time.js @@ -3,11 +3,15 @@ const common = require('../common'); // Test for https://github.com/nodejs/node/issues/40814 -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} -if (!common.hasOpenSSL3) +const { hasOpenSSL3 } = require('../common/crypto'); + +if (!hasOpenSSL3) { common.skip('only openssl3'); // https://github.com/nodejs/node/pull/42793#issuecomment-1107491901 +} const assert = require('assert'); const crypto = require('crypto'); diff --git a/test/parallel/test-crypto-rsa-dsa.js b/test/parallel/test-crypto-rsa-dsa.js index 5f4fafdfffbf72..dcd5045daaf58c 100644 --- a/test/parallel/test-crypto-rsa-dsa.js +++ b/test/parallel/test-crypto-rsa-dsa.js @@ -9,6 +9,7 @@ const crypto = require('crypto'); const constants = crypto.constants; const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); // Test certificates const certPem = fixtures.readKey('rsa_cert.crt'); @@ -36,11 +37,11 @@ const openssl1DecryptError = { library: 'digital envelope routines', }; -const decryptError = common.hasOpenSSL3 ? +const decryptError = hasOpenSSL3 ? { message: 'error:1C800064:Provider routines::bad decrypt' } : openssl1DecryptError; -const decryptPrivateKeyError = common.hasOpenSSL3 ? { +const decryptPrivateKeyError = hasOpenSSL3 ? { message: 'error:1C800064:Provider routines::bad decrypt', } : openssl1DecryptError; @@ -146,7 +147,7 @@ function getBufferCopy(buf) { // Now with RSA_NO_PADDING. Plaintext needs to match key size. // OpenSSL 3.x has a rsa_check_padding that will cause an error if // RSA_NO_PADDING is used. - if (!common.hasOpenSSL3) { + if (!hasOpenSSL3) { { const plaintext = 'x'.repeat(rsaKeySize / 8); encryptedBuffer = crypto.privateEncrypt({ diff --git a/test/parallel/test-crypto-secure-heap.js b/test/parallel/test-crypto-secure-heap.js index 0e5788f00e4a44..c20b01a91a9840 100644 --- a/test/parallel/test-crypto-secure-heap.js +++ b/test/parallel/test-crypto-secure-heap.js @@ -1,21 +1,26 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} -if (common.isWindows) +if (common.isWindows) { common.skip('Not supported on Windows'); +} -if (common.isASan) +if (common.isASan) { common.skip('ASan does not play well with secure heap allocations'); +} const assert = require('assert'); const { fork } = require('child_process'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); const { secureHeapUsed, createDiffieHellman, + getFips, } = require('crypto'); if (process.argv[2] === 'child') { @@ -29,7 +34,7 @@ if (process.argv[2] === 'child') { assert.strictEqual(a.used, 0); { - const size = common.hasFipsCrypto || common.hasOpenSSL3 ? 1024 : 256; + const size = getFips() || hasOpenSSL3 ? 1024 : 256; const dh1 = createDiffieHellman(size); const p1 = dh1.getPrime('buffer'); const dh2 = createDiffieHellman(p1, 'buffer'); diff --git a/test/parallel/test-crypto-sign-verify.js b/test/parallel/test-crypto-sign-verify.js index 8a263ec3350f55..0589d60736e377 100644 --- a/test/parallel/test-crypto-sign-verify.js +++ b/test/parallel/test-crypto-sign-verify.js @@ -8,6 +8,10 @@ const fs = require('fs'); const exec = require('child_process').exec; const crypto = require('crypto'); const fixtures = require('../common/fixtures'); +const { + hasOpenSSL3, + opensslCli, +} = require('../common/crypto'); // Test certificates const certPem = fixtures.readKey('rsa_cert.crt'); @@ -62,7 +66,7 @@ const keySize = 2048; key: keyPem, padding: crypto.constants.RSA_PKCS1_OAEP_PADDING }); - }, { message: common.hasOpenSSL3 ? + }, { message: hasOpenSSL3 ? 'error:1C8000A5:Provider routines::illegal or unsupported padding mode' : 'bye, bye, error stack' }); @@ -340,7 +344,7 @@ assert.throws( key: keyPem, padding: crypto.constants.RSA_PKCS1_OAEP_PADDING }); - }, common.hasOpenSSL3 ? { + }, hasOpenSSL3 ? { code: 'ERR_OSSL_ILLEGAL_OR_UNSUPPORTED_PADDING_MODE', message: /illegal or unsupported padding mode/, } : { @@ -599,8 +603,9 @@ assert.throws( // Note: this particular test *must* be the last in this file as it will exit // early if no openssl binary is found { - if (!common.opensslCli) + if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); + } const pubfile = fixtures.path('keys', 'rsa_public_2048.pem'); const privkey = fixtures.readKey('rsa_private_2048.pem'); @@ -622,7 +627,7 @@ assert.throws( fs.writeFileSync(msgfile, msg); exec(...common.escapePOSIXShell`"${ - common.opensslCli}" dgst -sha256 -verify "${pubfile}" -signature "${ + opensslCli}" dgst -sha256 -verify "${pubfile}" -signature "${ sigfile}" -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-2 "${msgfile }"`, common.mustCall((err, stdout, stderr) => { assert(stdout.includes('Verified OK')); diff --git a/test/parallel/test-crypto-stream.js b/test/parallel/test-crypto-stream.js index 008ab129f0e019..62be4eaf6edfb0 100644 --- a/test/parallel/test-crypto-stream.js +++ b/test/parallel/test-crypto-stream.js @@ -21,14 +21,16 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const stream = require('stream'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); -if (!common.hasFipsCrypto) { +if (!crypto.getFips()) { // Small stream to buffer converter class Stream2buffer extends stream.Writable { constructor(callback) { @@ -71,7 +73,7 @@ const cipher = crypto.createCipheriv('aes-128-cbc', key, iv); const decipher = crypto.createDecipheriv('aes-128-cbc', badkey, iv); cipher.pipe(decipher) - .on('error', common.expectsError(common.hasOpenSSL3 ? { + .on('error', common.expectsError(hasOpenSSL3 ? { message: /bad decrypt/, library: 'Provider routines', reason: 'bad decrypt', diff --git a/test/parallel/test-crypto-x509.js b/test/parallel/test-crypto-x509.js index bd906c25b9ee19..f75e1d63470bfb 100644 --- a/test/parallel/test-crypto-x509.js +++ b/test/parallel/test-crypto-x509.js @@ -18,6 +18,7 @@ const { const assert = require('assert'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); const { readFileSync } = require('fs'); const cert = readFileSync(fixtures.path('keys', 'agent1-cert.pem')); @@ -50,7 +51,7 @@ emailAddress=ry@tinyclouds.org`; let infoAccessCheck = `OCSP - URI:http://ocsp.nodejs.org/ CA Issuers - URI:http://ca.nodejs.org/ca.cert`; -if (!common.hasOpenSSL3) +if (!hasOpenSSL3) infoAccessCheck += '\n'; const der = Buffer.from( @@ -357,7 +358,7 @@ UcXd/5qu2GhokrKU2cPttU+XAN2Om6a0 const cert = new X509Certificate(certPem); assert.throws(() => cert.publicKey, { - message: common.hasOpenSSL3 ? /decode error/ : /wrong tag/, + message: hasOpenSSL3 ? /decode error/ : /wrong tag/, name: 'Error' }); diff --git a/test/parallel/test-crypto.js b/test/parallel/test-crypto.js index 4271121881379b..93644e016de447 100644 --- a/test/parallel/test-crypto.js +++ b/test/parallel/test-crypto.js @@ -29,6 +29,7 @@ const assert = require('assert'); const crypto = require('crypto'); const tls = require('tls'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); // Test Certificates const certPfx = fixtures.readKey('rsa_cert.pfx'); @@ -208,9 +209,9 @@ assert.throws(() => { ].join('\n'); crypto.createSign('SHA256').update('test').sign(priv); }, (err) => { - if (!common.hasOpenSSL3) + if (!hasOpenSSL3) assert.ok(!('opensslErrorStack' in err)); - assert.throws(() => { throw err; }, common.hasOpenSSL3 ? { + assert.throws(() => { throw err; }, hasOpenSSL3 ? { name: 'Error', message: 'error:02000070:rsa routines::digest too big for rsa key', library: 'rsa routines', @@ -225,7 +226,7 @@ assert.throws(() => { return true; }); -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { assert.throws(() => { // The correct header inside `rsa_private_pkcs8_bad.pem` should have been // -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY----- diff --git a/test/parallel/test-cwd-enoent-preload.js b/test/parallel/test-cwd-enoent-preload.js index 21b20d6d035672..a7841e984d0eab 100644 --- a/test/parallel/test-cwd-enoent-preload.js +++ b/test/parallel/test-cwd-enoent-preload.js @@ -1,10 +1,15 @@ 'use strict'; const common = require('../common'); // Fails with EINVAL on SmartOS, EBUSY on Windows, EBUSY on AIX. -if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) +if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) { common.skip('cannot rmdir current working directory'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-cwd-enoent-repl.js b/test/parallel/test-cwd-enoent-repl.js index 0a61cbfbced9b4..fcb08c004f345c 100644 --- a/test/parallel/test-cwd-enoent-repl.js +++ b/test/parallel/test-cwd-enoent-repl.js @@ -1,10 +1,15 @@ 'use strict'; const common = require('../common'); // Fails with EINVAL on SmartOS, EBUSY on Windows, EBUSY on AIX. -if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) +if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) { common.skip('cannot rmdir current working directory'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-cwd-enoent.js b/test/parallel/test-cwd-enoent.js index 876888bc2be518..ca8b460835d45a 100644 --- a/test/parallel/test-cwd-enoent.js +++ b/test/parallel/test-cwd-enoent.js @@ -1,10 +1,15 @@ 'use strict'; const common = require('../common'); // Fails with EINVAL on SmartOS, EBUSY on Windows, EBUSY on AIX. -if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) +if (common.isSunOS || common.isWindows || common.isAIX || common.isIBMi) { common.skip('cannot rmdir current working directory'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-disable-sigusr1.js b/test/parallel/test-disable-sigusr1.js new file mode 100644 index 00000000000000..e1d15a25ee6505 --- /dev/null +++ b/test/parallel/test-disable-sigusr1.js @@ -0,0 +1,26 @@ +'use strict'; + +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const { it } = require('node:test'); +const assert = require('node:assert'); +const { NodeInstance } = require('../common/inspector-helper.js'); + +common.skipIfInspectorDisabled(); + +it('should not attach a debugger with SIGUSR1', { skip: common.isWindows }, async () => { + const file = fixtures.path('disable-signal/sigusr1.js'); + const instance = new NodeInstance(['--disable-sigusr1'], undefined, file); + + instance.on('stderr', common.mustNotCall()); + const loggedPid = await new Promise((resolve) => { + instance.on('stdout', (data) => { + const matches = data.match(/pid is (\d+)/); + if (matches) resolve(Number(matches[1])); + }); + }); + + assert.ok(process.kill(instance.pid, 'SIGUSR1')); + assert.strictEqual(loggedPid, instance.pid); + assert.ok(await instance.kill()); +}); diff --git a/test/parallel/test-domain-crypto.js b/test/parallel/test-domain-crypto.js index e0a470bd9db515..47eb33f70aae45 100644 --- a/test/parallel/test-domain-crypto.js +++ b/test/parallel/test-domain-crypto.js @@ -31,7 +31,7 @@ const crypto = require('crypto'); // Pollution of global is intentional as part of test. common.allowGlobals(require('domain')); // See https://github.com/nodejs/node/commit/d1eff9ab -global.domain = require('domain'); +globalThis.domain = require('domain'); // Should not throw a 'TypeError: undefined is not a function' exception crypto.randomBytes(8); diff --git a/test/parallel/test-dotenv-edge-cases.js b/test/parallel/test-dotenv-edge-cases.js index 769d33a13b8ce9..926c8d0793ac8b 100644 --- a/test/parallel/test-dotenv-edge-cases.js +++ b/test/parallel/test-dotenv-edge-cases.js @@ -170,4 +170,16 @@ describe('.env supports edge cases', () => { assert.strictEqual(SingleQuotesChild.stderr, ''); assert.strictEqual(SingleQuotesChild.code, 0); }); + + it('should reject invalid env file flag', async () => { + const child = await common.spawnPromisified( + process.execPath, + ['--env-file-ABCD', validEnvFilePath], + { cwd: __dirname }, + ); + + assert.strictEqual(child.stdout, ''); + assert.strictEqual(child.code, 9); + assert.match(child.stderr, /bad option: --env-file-ABCD/); + }); }); diff --git a/test/parallel/test-dsa-fips-invalid-key.js b/test/parallel/test-dsa-fips-invalid-key.js index 05cc1d143aca6e..3df51bfbed3517 100644 --- a/test/parallel/test-dsa-fips-invalid-key.js +++ b/test/parallel/test-dsa-fips-invalid-key.js @@ -1,12 +1,18 @@ 'use strict'; const common = require('../common'); + +if (!common.hasCrypto) { + common.skip('no crypto'); +} + const fixtures = require('../common/fixtures'); +const crypto = require('crypto'); -if (!common.hasFipsCrypto) +if (!crypto.getFips()) { common.skip('node compiled without FIPS OpenSSL.'); +} const assert = require('assert'); -const crypto = require('crypto'); const input = 'hello'; diff --git a/test/parallel/test-eslint-require-common-first.js b/test/parallel/test-eslint-require-common-first.js index ef19f95b97d635..d7980cebedbfb8 100644 --- a/test/parallel/test-eslint-require-common-first.js +++ b/test/parallel/test-eslint-require-common-first.js @@ -20,6 +20,12 @@ new RuleTester({ code: 'require("common")\n' + 'require("assert")' }, + { + code: 'import "../../../../common/index.mjs";', + languageOptions: { + sourceType: 'module', + }, + }, ], invalid: [ { diff --git a/test/parallel/test-esm-loader-hooks-inspect-brk.js b/test/parallel/test-esm-loader-hooks-inspect-brk.js index 881bdfd2dd101a..251ebb230dcd31 100644 --- a/test/parallel/test-esm-loader-hooks-inspect-brk.js +++ b/test/parallel/test-esm-loader-hooks-inspect-brk.js @@ -10,23 +10,20 @@ const assert = require('assert'); const fixtures = require('../common/fixtures'); const { NodeInstance } = require('../common/inspector-helper.js'); -async function runIfWaitingForDebugger(session) { - const commands = [ - { 'method': 'Runtime.enable' }, - { 'method': 'Debugger.enable' }, - { 'method': 'Runtime.runIfWaitingForDebugger' }, - ]; - - await session.send(commands); - await session.waitForNotification('Debugger.paused'); -} - async function runTest() { const main = fixtures.path('es-module-loaders', 'register-loader.mjs'); const child = new NodeInstance(['--inspect-brk=0'], '', main); const session = await child.connectInspectorSession(); - await runIfWaitingForDebugger(session); + await session.send({ method: 'NodeRuntime.enable' }); + await session.waitForNotification('NodeRuntime.waitingForDebugger'); + await session.send([ + { 'method': 'Runtime.enable' }, + { 'method': 'Debugger.enable' }, + { 'method': 'Runtime.runIfWaitingForDebugger' }, + ]); + await session.send({ method: 'NodeRuntime.disable' }); + await session.waitForNotification('Debugger.paused'); await session.runToCompletion(); assert.strictEqual((await child.expectShutdown()).exitCode, 0); } diff --git a/test/parallel/test-event-emitter-listeners.js b/test/parallel/test-event-emitter-listeners.js index eb1da829c95f21..4a08ad34c273cd 100644 --- a/test/parallel/test-event-emitter-listeners.js +++ b/test/parallel/test-event-emitter-listeners.js @@ -86,6 +86,11 @@ function listener4() { assert.deepStrictEqual(ee.listeners('foo'), []); } +{ + const ee = new events.EventEmitter(); + assert.deepStrictEqual(ee.listeners(), []); +} + { class TestStream extends events.EventEmitter {} const s = new TestStream(); diff --git a/test/parallel/test-eventtarget-memoryleakwarning.js b/test/parallel/test-eventtarget-memoryleakwarning.js index 2c907165d865d9..2ec48720c8a8c5 100644 --- a/test/parallel/test-eventtarget-memoryleakwarning.js +++ b/test/parallel/test-eventtarget-memoryleakwarning.js @@ -103,7 +103,7 @@ common.expectWarning({ }); await setTimeout(0); - global.gc(); + globalThis.gc(); } })().then(common.mustCall(), common.mustNotCall()); } diff --git a/test/parallel/test-eventtarget.js b/test/parallel/test-eventtarget.js index cbe7eb3b0e8687..7153da172c1cf6 100644 --- a/test/parallel/test-eventtarget.js +++ b/test/parallel/test-eventtarget.js @@ -683,7 +683,7 @@ let asyncTest = Promise.resolve(); const et = new EventTarget(); et.addEventListener('foo', common.mustNotCall(), { [kWeakHandler]: {} }); setImmediate(() => { - global.gc(); + globalThis.gc(); et.dispatchEvent(new Event('foo')); }); } diff --git a/test/parallel/test-finalization-registry-shutdown.js b/test/parallel/test-finalization-registry-shutdown.js index f896aa2f285c75..e288d8fecca7e6 100644 --- a/test/parallel/test-finalization-registry-shutdown.js +++ b/test/parallel/test-finalization-registry-shutdown.js @@ -19,5 +19,5 @@ process.on('exit', () => { // This is the final chance to execute JavaScript. register(); // Queue a FinalizationRegistryCleanupTask by a testing gc request. - global.gc(); + globalThis.gc(); }); diff --git a/test/parallel/test-find-package-json.js b/test/parallel/test-find-package-json.js new file mode 100644 index 00000000000000..5e55e81da1e7b8 --- /dev/null +++ b/test/parallel/test-find-package-json.js @@ -0,0 +1,192 @@ +'use strict'; + +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const tmpdir = require('../common/tmpdir'); +const assert = require('node:assert'); +const fs = require('node:fs'); +const { findPackageJSON } = require('node:module'); +const path = require('node:path'); +const { describe, it } = require('node:test'); + + +describe('findPackageJSON', () => { // Throws when no arguments are provided + it('should throw when no arguments are provided', () => { + assert.throws( + () => findPackageJSON(), + { code: 'ERR_MISSING_ARGS' } + ); + }); + + it('should throw when parentLocation is invalid', () => { + for (const invalid of [null, {}, [], Symbol(), () => {}, true, false, 1, 0]) { + assert.throws( + () => findPackageJSON('', invalid), + { code: 'ERR_INVALID_ARG_TYPE' }, + ); + } + }); + + it('should accept a file URL (string), like from `import.meta.resolve()`', () => { + const importMetaUrl = `${fixtures.fileURL('whatever.ext')}`; + const specifierBase = './packages/root-types-field'; + assert.strictEqual( + findPackageJSON(`${specifierBase}/index.js`, importMetaUrl), + path.toNamespacedPath(fixtures.path(specifierBase, 'package.json')), + ); + }); + + it('should accept a file URL instance', () => { + const importMetaUrl = fixtures.fileURL('whatever.ext'); + const specifierBase = './packages/root-types-field'; + assert.strictEqual( + findPackageJSON( + new URL(`${specifierBase}/index.js`, importMetaUrl), + importMetaUrl, + ), + path.toNamespacedPath(fixtures.path(specifierBase, 'package.json')), + ); + }); + + it('should be able to crawl up (CJS)', () => { + const pathToMod = fixtures.path('packages/nested/sub-pkg-cjs/index.js'); + const parentPkg = require(pathToMod); + + const pathToParent = path.toNamespacedPath(fixtures.path('packages/nested/package.json')); + assert.strictEqual(parentPkg, pathToParent); + }); + + it('should be able to crawl up (ESM)', () => { + const pathToMod = fixtures.path('packages/nested/sub-pkg-esm/index.js'); + const parentPkg = require(pathToMod).default; // This test is a CJS file + + const pathToParent = path.toNamespacedPath(fixtures.path('packages/nested/package.json')); + assert.strictEqual(parentPkg, pathToParent); + }); + + it('can require via package.json', () => { + const pathToMod = fixtures.path('packages/cjs-main-no-index/other.js'); + // `require()` falls back to package.json values like "main" to resolve when there is no index + const answer = require(pathToMod); + + assert.strictEqual(answer, 43); + }); + + it('should be able to resolve both root and closest package.json', () => { + tmpdir.refresh(); + + fs.writeFileSync(tmpdir.resolve('entry.mjs'), ` + import { findPackageJSON } from 'node:module'; + import fs from 'node:fs'; + + const readPJSON = (locus) => JSON.parse(fs.readFileSync(locus, 'utf8')); + + const { secretNumberPkgRoot } = readPJSON(findPackageJSON('pkg', import.meta.url)); + const { secretNumberSubfolder } = readPJSON(findPackageJSON(import.meta.resolve('pkg'))); + const { secretNumberSubfolder2 } = readPJSON(findPackageJSON(import.meta.resolve('pkg2'))); + const { secretNumberPkg2 } = readPJSON(findPackageJSON('pkg2', import.meta.url)); + + console.log(secretNumberPkgRoot, secretNumberSubfolder, secretNumberSubfolder2, secretNumberPkg2); + `); + + const secretNumberPkgRoot = Math.ceil(Math.random() * 999); + const secretNumberSubfolder = Math.ceil(Math.random() * 999); + const secretNumberSubfolder2 = Math.ceil(Math.random() * 999); + const secretNumberPkg2 = Math.ceil(Math.random() * 999); + + fs.mkdirSync(tmpdir.resolve('node_modules/pkg/subfolder'), { recursive: true }); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg/subfolder/index.js'), + '', + ); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg/subfolder/package.json'), + JSON.stringify({ + type: 'module', + secretNumberSubfolder, + }), + ); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg/package.json'), + JSON.stringify({ + name: 'pkg', + exports: './subfolder/index.js', + secretNumberPkgRoot, + }), + ); + + fs.mkdirSync(tmpdir.resolve('node_modules/pkg/subfolder2')); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg/subfolder2/package.json'), + JSON.stringify({ + type: 'module', + secretNumberSubfolder2, + }), + ); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg/subfolder2/index.js'), + '', + ); + + fs.mkdirSync(tmpdir.resolve('node_modules/pkg2')); + fs.writeFileSync( + tmpdir.resolve('node_modules/pkg2/package.json'), + JSON.stringify({ + name: 'pkg', + main: tmpdir.resolve('node_modules/pkg/subfolder2/index.js'), + secretNumberPkg2, + }), + ); + + common.spawnPromisified(process.execPath, [tmpdir.resolve('entry.mjs')]).then(common.mustCall((result) => { + console.error(result.stderr); + console.log(result.stdout); + assert.deepStrictEqual(result, { + stdout: `${secretNumberPkgRoot} ${secretNumberSubfolder} ${secretNumberSubfolder2} ${secretNumberPkg2}\n`, + stderr: '', + code: 0, + signal: null, + }); + })); + }); + + it('should work within a loader', async () => { + const specifierBase = './packages/root-types-field'; + const target = fixtures.fileURL(specifierBase, 'index.js'); + const foundPjsonPath = path.toNamespacedPath(fixtures.path(specifierBase, 'package.json')); + const { code, stderr, stdout } = await common.spawnPromisified(process.execPath, [ + '--no-warnings', + '--loader', + [ + 'data:text/javascript,', + 'import fs from "node:fs";', + 'import module from "node:module";', + encodeURIComponent(`fs.writeSync(1, module.findPackageJSON(${JSON.stringify(target)}));`), + 'export const resolve = async (s, c, n) => n(s);', + ].join(''), + '--eval', + 'import "node:os";', // Can be anything that triggers the resolve hook chain + ]); + + assert.strictEqual(stderr, ''); + assert.ok(stdout.includes(foundPjsonPath), stdout); + assert.strictEqual(code, 0); + }); + + it('should work with an async resolve hook registered', async () => { + const specifierBase = './packages/root-types-field'; + const target = fixtures.fileURL(specifierBase, 'index.js'); + const foundPjsonPath = path.toNamespacedPath(fixtures.path(specifierBase, 'package.json')); + const { code, stderr, stdout } = await common.spawnPromisified(process.execPath, [ + '--no-warnings', + '--loader', + 'data:text/javascript,export const resolve = async (s, c, n) => n(s);', + '--print', + `require("node:module").findPackageJSON(${JSON.stringify(target)})`, + ]); + + assert.strictEqual(stderr, ''); + assert.ok(stdout.includes(foundPjsonPath), stdout); + assert.strictEqual(code, 0); + }); +}); diff --git a/test/parallel/test-fs-cp.mjs b/test/parallel/test-fs-cp.mjs index 0f3274ada62975..260a1449d1a953 100644 --- a/test/parallel/test-fs-cp.mjs +++ b/test/parallel/test-fs-cp.mjs @@ -1,4 +1,4 @@ -import { mustCall, mustNotMutateObjectDeep } from '../common/index.mjs'; +import { mustCall, mustNotMutateObjectDeep, isInsideDirWithUnusualChars } from '../common/index.mjs'; import assert from 'assert'; import fs from 'fs'; @@ -264,7 +264,7 @@ function nextdir(dirname) { } // It throws error if parent directory of symlink in dest points to src. -{ +if (!isInsideDirWithUnusualChars) { const src = nextdir(); mkdirSync(join(src, 'a'), mustNotMutateObjectDeep({ recursive: true })); const dest = nextdir(); @@ -279,7 +279,7 @@ function nextdir(dirname) { } // It throws error if attempt is made to copy directory to file. -{ +if (!isInsideDirWithUnusualChars) { const src = nextdir(); mkdirSync(src, mustNotMutateObjectDeep({ recursive: true })); const dest = './test/fixtures/copy/kitchen-sink/README.md'; @@ -310,7 +310,7 @@ function nextdir(dirname) { // It throws error if attempt is made to copy file to directory. -{ +if (!isInsideDirWithUnusualChars) { const src = './test/fixtures/copy/kitchen-sink/README.md'; const dest = nextdir(); mkdirSync(dest, mustNotMutateObjectDeep({ recursive: true })); @@ -346,7 +346,7 @@ function nextdir(dirname) { // It throws error if attempt is made to copy src to dest // when src is parent directory of the parent of dest -{ +if (!isInsideDirWithUnusualChars) { const src = nextdir('a'); const destParent = nextdir('a/b'); const dest = nextdir('a/b/c'); @@ -370,7 +370,7 @@ function nextdir(dirname) { } // It throws an error if attempt is made to copy socket. -if (!isWindows) { +if (!isWindows && !isInsideDirWithUnusualChars) { const src = nextdir(); mkdirSync(src); const dest = nextdir(); @@ -738,7 +738,7 @@ if (!isWindows) { } // It returns an error if attempt is made to copy socket. -if (!isWindows) { +if (!isWindows && !isInsideDirWithUnusualChars) { const src = nextdir(); mkdirSync(src); const dest = nextdir(); diff --git a/test/parallel/test-fs-filehandle.js b/test/parallel/test-fs-filehandle.js index 818a3824904431..bcb62da9e4c2cc 100644 --- a/test/parallel/test-fs-filehandle.js +++ b/test/parallel/test-fs-filehandle.js @@ -35,6 +35,6 @@ common.expectWarning({ 'DeprecationWarning': [[deprecationWarning, 'DEP0137']] }); -global.gc(); +globalThis.gc(); setTimeout(() => {}, 10); diff --git a/test/parallel/test-fs-glob.mjs b/test/parallel/test-fs-glob.mjs index 2321ceb87b8ba1..09cc8791bcc34f 100644 --- a/test/parallel/test-fs-glob.mjs +++ b/test/parallel/test-fs-glob.mjs @@ -386,3 +386,97 @@ describe('fsPromises glob - withFileTypes', function() { }); } }); + +// [pattern, exclude option, expected result] +const pattern2 = [ + ['a/{b,c}*', ['a/*c'], ['a/b', 'a/cb']], + ['a/{a,b,c}*', ['a/*bc*', 'a/cb'], ['a/b', 'a/c']], + ['a/**/[cg]', ['**/c'], ['a/abcdef/g', 'a/abcfed/g']], + ['a/**/[cg]', ['./**/c'], ['a/abcdef/g', 'a/abcfed/g']], + ['a/**/[cg]', ['a/**/[cg]/../c'], ['a/abcdef/g', 'a/abcfed/g']], + ['a/*/+(c|g)/*', ['**/./h'], ['a/b/c/d']], + [ + 'a/**/[cg]/../[cg]', + ['a/ab{cde,cfe}*'], + [ + 'a/b/c', + 'a/c', + 'a/c/d/c', + ...(common.isWindows ? [] : ['a/symlink/a/b/c']), + ], + ], + [ + `${absDir}/*`, + [`${absDir}/asdf`, `${absDir}/ba*`], + [`${absDir}/foo`, `${absDir}/quux`, `${absDir}/qwer`, `${absDir}/rewq`], + ], + [ + `${absDir}/*`, + [`${absDir}/asdf`, `**/ba*`], + [ + `${absDir}/bar`, + `${absDir}/baz`, + `${absDir}/foo`, + `${absDir}/quux`, + `${absDir}/qwer`, + `${absDir}/rewq`, + ], + ], + [ + [`${absDir}/*`, 'a/**/[cg]'], + [`${absDir}/*{a,q}*`, './a/*{c,b}*/*'], + [`${absDir}/foo`, 'a/c', ...(common.isWindows ? [] : ['a/symlink/a/b/c'])], + ], +]; + +describe('globSync - exclude', function() { + for (const [pattern, exclude] of Object.entries(patterns).map(([k, v]) => [k, v.filter(Boolean)])) { + test(`${pattern} - exclude: ${exclude}`, () => { + const actual = globSync(pattern, { cwd: fixtureDir, exclude }).sort(); + assert.strictEqual(actual.length, 0); + }); + } + for (const [pattern, exclude, expected] of pattern2) { + test(`${pattern} - exclude: ${exclude}`, () => { + const actual = globSync(pattern, { cwd: fixtureDir, exclude }).sort(); + const normalized = expected.filter(Boolean).map((item) => item.replaceAll('/', sep)).sort(); + assert.deepStrictEqual(actual, normalized); + }); + } +}); + +describe('glob - exclude', function() { + const promisified = promisify(glob); + for (const [pattern, exclude] of Object.entries(patterns).map(([k, v]) => [k, v.filter(Boolean)])) { + test(`${pattern} - exclude: ${exclude}`, async () => { + const actual = (await promisified(pattern, { cwd: fixtureDir, exclude })).sort(); + assert.strictEqual(actual.length, 0); + }); + } + for (const [pattern, exclude, expected] of pattern2) { + test(`${pattern} - exclude: ${exclude}`, async () => { + const actual = (await promisified(pattern, { cwd: fixtureDir, exclude })).sort(); + const normalized = expected.filter(Boolean).map((item) => item.replaceAll('/', sep)).sort(); + assert.deepStrictEqual(actual, normalized); + }); + } +}); + +describe('fsPromises glob - exclude', function() { + for (const [pattern, exclude] of Object.entries(patterns).map(([k, v]) => [k, v.filter(Boolean)])) { + test(`${pattern} - exclude: ${exclude}`, async () => { + const actual = []; + for await (const item of asyncGlob(pattern, { cwd: fixtureDir, exclude })) actual.push(item); + actual.sort(); + assert.strictEqual(actual.length, 0); + }); + } + for (const [pattern, exclude, expected] of pattern2) { + test(`${pattern} - exclude: ${exclude}`, async () => { + const actual = []; + for await (const item of asyncGlob(pattern, { cwd: fixtureDir, exclude })) actual.push(item); + const normalized = expected.filter(Boolean).map((item) => item.replaceAll('/', sep)).sort(); + assert.deepStrictEqual(actual.sort(), normalized); + }); + } +}); diff --git a/test/parallel/test-fs-mkdir.js b/test/parallel/test-fs-mkdir.js index 89b8b436d5c9f4..f7685c7de0a962 100644 --- a/test/parallel/test-fs-mkdir.js +++ b/test/parallel/test-fs-mkdir.js @@ -24,6 +24,7 @@ const common = require('../common'); const assert = require('assert'); const fs = require('fs'); const path = require('path'); +const { isMainThread } = require('worker_threads'); const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); @@ -217,7 +218,7 @@ function nextdir() { // mkdirpSync dirname loop // XXX: windows and smartos have issues removing a directory that you're in. -if (common.isMainThread && (common.isLinux || common.isMacOS)) { +if (isMainThread && (common.isLinux || common.isMacOS)) { const pathname = tmpdir.resolve(nextdir()); fs.mkdirSync(pathname); process.chdir(pathname); diff --git a/test/parallel/test-fs-promises-file-handle-close.js b/test/parallel/test-fs-promises-file-handle-close.js index d6417964746720..288bc31ea0ada5 100644 --- a/test/parallel/test-fs-promises-file-handle-close.js +++ b/test/parallel/test-fs-promises-file-handle-close.js @@ -32,7 +32,7 @@ doOpen().then(common.mustCall((fd) => { })).then(common.mustCall(() => { setImmediate(() => { // The FileHandle should be out-of-scope and no longer accessed now. - global.gc(); + globalThis.gc(); // Wait an extra event loop turn, as the warning is emitted from the // native layer in an unref()'ed setImmediate() callback. diff --git a/test/parallel/test-fs-realpath.js b/test/parallel/test-fs-realpath.js index d944195de3de0c..69237e3974e5b0 100644 --- a/test/parallel/test-fs-realpath.js +++ b/test/parallel/test-fs-realpath.js @@ -23,9 +23,11 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); const tmpdir = require('../common/tmpdir'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-fs-whatwg-url.js b/test/parallel/test-fs-whatwg-url.js index 7401ed7e76ecd1..2d5664cd12015c 100644 --- a/test/parallel/test-fs-whatwg-url.js +++ b/test/parallel/test-fs-whatwg-url.js @@ -5,6 +5,8 @@ const fixtures = require('../common/fixtures'); const assert = require('assert'); const fs = require('fs'); const tmpdir = require('../common/tmpdir'); +const { isMainThread } = require('worker_threads'); + tmpdir.refresh(); const url = fixtures.fileURL('a.js'); @@ -86,7 +88,7 @@ if (common.isWindows) { // Test that strings are interpreted as paths and not as URL // Can't use process.chdir in Workers // Please avoid testing fs.rmdir('file:') or using it as cleanup -if (common.isMainThread && !common.isWindows) { +if (isMainThread && !common.isWindows) { const oldCwd = process.cwd(); process.chdir(tmpdir.path); diff --git a/test/parallel/test-fs-write-file-sync.js b/test/parallel/test-fs-write-file-sync.js index 4ead91530bb748..e5fbe32eab6d14 100644 --- a/test/parallel/test-fs-write-file-sync.js +++ b/test/parallel/test-fs-write-file-sync.js @@ -21,9 +21,11 @@ 'use strict'; const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('Setting process.umask is not supported in Workers'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-fs-write-reuse-callback.js b/test/parallel/test-fs-write-reuse-callback.js index 82c772ab340fed..c80902e54103fc 100644 --- a/test/parallel/test-fs-write-reuse-callback.js +++ b/test/parallel/test-fs-write-reuse-callback.js @@ -20,7 +20,7 @@ let done = 0; const ondone = common.mustSucceed(() => { if (++done < writes) { - if (done % 25 === 0) global.gc(); + if (done % 25 === 0) globalThis.gc(); setImmediate(write); } else { assert.strictEqual( diff --git a/test/parallel/test-fs-write.js b/test/parallel/test-fs-write.js index a4aeb4e16a748f..82f3425de2aa16 100644 --- a/test/parallel/test-fs-write.js +++ b/test/parallel/test-fs-write.js @@ -39,14 +39,18 @@ const { createExternalizableString, externalizeString, isOneByteString, -} = global; +} = globalThis; + +assert.notStrictEqual(createExternalizableString, undefined); +assert.notStrictEqual(externalizeString, undefined); +assert.notStrictEqual(isOneByteString, undefined); // Account for extra globals exposed by --expose_externalize_string. common.allowGlobals( createExternalizableString, externalizeString, isOneByteString, - global.x, + globalThis.x, ); { diff --git a/test/parallel/test-gc-http-client-connaborted.js b/test/parallel/test-gc-http-client-connaborted.js index 93ca8ee4de59f1..e52a555d788085 100644 --- a/test/parallel/test-gc-http-client-connaborted.js +++ b/test/parallel/test-gc-http-client-connaborted.js @@ -53,7 +53,7 @@ setImmediate(status); function status() { if (done > 0) { createClients = false; - global.gc(); + globalThis.gc(); console.log(`done/collected/total: ${done}/${countGC}/${count}`); if (countGC === count) { server.close(); diff --git a/test/parallel/test-gc-net-timeout.js b/test/parallel/test-gc-net-timeout.js index c4f74b34b79ec9..7a195c26bcdd6b 100644 --- a/test/parallel/test-gc-net-timeout.js +++ b/test/parallel/test-gc-net-timeout.js @@ -64,7 +64,7 @@ setImmediate(status); function status() { if (done > 0) { createClients = false; - global.gc(); + globalThis.gc(); console.log(`done/collected/total: ${done}/${countGC}/${count}`); if (countGC === count) { server.close(); diff --git a/test/parallel/test-gc-tls-external-memory.js b/test/parallel/test-gc-tls-external-memory.js index dcf38e11f6c6bf..480b1086b5395e 100644 --- a/test/parallel/test-gc-tls-external-memory.js +++ b/test/parallel/test-gc-tls-external-memory.js @@ -27,7 +27,7 @@ connect(); function connect() { if (runs % 64 === 0) - global.gc(); + globalThis.gc(); const externalMemoryUsage = process.memoryUsage().external; assert(externalMemoryUsage >= 0, `${externalMemoryUsage} < 0`); if (runs++ === 512) { diff --git a/test/parallel/test-global-setters.js b/test/parallel/test-global-setters.js index 7fd070ed8e1c4e..42f2b69b37b408 100644 --- a/test/parallel/test-global-setters.js +++ b/test/parallel/test-global-setters.js @@ -1,4 +1,10 @@ -/* eslint-disable strict */ +// When setters and getters were added for global.process and global.Buffer to +// create a deprecation path for them in ESM, this test was added to make sure +// the setters and getters behaved as expected. +// Ref: https://github.com/nodejs/node/pull/26882 +// Ref: https://github.com/nodejs/node/pull/26334 + +'use strict'; require('../common'); const assert = require('assert'); const _process = require('process'); @@ -8,20 +14,20 @@ assert.strictEqual(process, _process); // eslint-disable-next-line no-global-assign process = 'asdf'; assert.strictEqual(process, 'asdf'); -assert.strictEqual(global.process, 'asdf'); -global.process = _process; +assert.strictEqual(globalThis.process, 'asdf'); +globalThis.process = _process; assert.strictEqual(process, _process); assert.strictEqual( - typeof Object.getOwnPropertyDescriptor(global, 'process').get, + typeof Object.getOwnPropertyDescriptor(globalThis, 'process').get, 'function'); assert.strictEqual(Buffer, _Buffer); // eslint-disable-next-line no-global-assign Buffer = 'asdf'; assert.strictEqual(Buffer, 'asdf'); -assert.strictEqual(global.Buffer, 'asdf'); -global.Buffer = _Buffer; +assert.strictEqual(globalThis.Buffer, 'asdf'); +globalThis.Buffer = _Buffer; assert.strictEqual(Buffer, _Buffer); assert.strictEqual( - typeof Object.getOwnPropertyDescriptor(global, 'Buffer').get, + typeof Object.getOwnPropertyDescriptor(globalThis, 'Buffer').get, 'function'); diff --git a/test/parallel/test-global.js b/test/parallel/test-global.js index 37f4db5252be5c..835bcc75a83e3b 100644 --- a/test/parallel/test-global.js +++ b/test/parallel/test-global.js @@ -60,9 +60,9 @@ for (const moduleName of builtinModules) { 'crypto', 'navigator', ]; - assert.deepStrictEqual(new Set(Object.keys(global)), new Set(expected)); + assert.deepStrictEqual(new Set(Object.keys(globalThis)), new Set(expected)); expected.forEach((value) => { - const desc = Object.getOwnPropertyDescriptor(global, value); + const desc = Object.getOwnPropertyDescriptor(globalThis, value); if (typeof desc.value === 'function') { assert.strictEqual(desc.value.name, value); } else if (typeof desc.get === 'function') { @@ -74,15 +74,15 @@ for (const moduleName of builtinModules) { common.allowGlobals('bar', 'foo'); baseFoo = 'foo'; // eslint-disable-line no-undef -global.baseBar = 'bar'; +globalThis.baseBar = 'bar'; -assert.strictEqual(global.baseFoo, 'foo', - `x -> global.x failed: global.baseFoo = ${global.baseFoo}`); +assert.strictEqual(globalThis.baseFoo, 'foo', + `x -> globalThis.x failed: globalThis.baseFoo = ${globalThis.baseFoo}`); assert.strictEqual(baseBar, // eslint-disable-line no-undef 'bar', // eslint-disable-next-line no-undef - `global.x -> x failed: baseBar = ${baseBar}`); + `globalThis.x -> x failed: baseBar = ${baseBar}`); const mod = require(fixtures.path('global', 'plain')); const fooBar = mod.fooBar; @@ -91,4 +91,4 @@ assert.strictEqual(fooBar.foo, 'foo'); assert.strictEqual(fooBar.bar, 'bar'); -assert.strictEqual(Object.prototype.toString.call(global), '[object global]'); +assert.strictEqual(Object.prototype.toString.call(globalThis), '[object global]'); diff --git a/test/parallel/test-h2leak-destroy-session-on-socket-ended.js b/test/parallel/test-h2leak-destroy-session-on-socket-ended.js index 3f0fe3e69d924d..af692b278f7d06 100644 --- a/test/parallel/test-h2leak-destroy-session-on-socket-ended.js +++ b/test/parallel/test-h2leak-destroy-session-on-socket-ended.js @@ -31,8 +31,8 @@ server.on('secureConnection', (s) => { firstServerStream = null; setImmediate(() => { - global.gc(); - global.gc(); + globalThis.gc(); + globalThis.gc(); server.close(); }); diff --git a/test/parallel/test-heapdump-async-hooks-init-promise.js b/test/parallel/test-heapdump-async-hooks-init-promise.js index c59cb89baa3d18..63b26843d1254e 100644 --- a/test/parallel/test-heapdump-async-hooks-init-promise.js +++ b/test/parallel/test-heapdump-async-hooks-init-promise.js @@ -43,4 +43,4 @@ async_hooks.createHook({ Promise.resolve().then(() => {}); -setImmediate(global.gc); +setImmediate(globalThis.gc); diff --git a/test/parallel/test-http-agent-domain-reused-gc.js b/test/parallel/test-http-agent-domain-reused-gc.js index 35146ee688eb9b..4f12c2ede839cd 100644 --- a/test/parallel/test-http-agent-domain-reused-gc.js +++ b/test/parallel/test-http-agent-domain-reused-gc.js @@ -26,7 +26,7 @@ async_hooks.createHook({ }, before(id) { if (id === reusedHandleId) { - global.gc(); + globalThis.gc(); checkBeforeCalled(); } } diff --git a/test/parallel/test-http-chunk-problem.js b/test/parallel/test-http-chunk-problem.js index 3629b7576600e8..90c54b8f5c7dcb 100644 --- a/test/parallel/test-http-chunk-problem.js +++ b/test/parallel/test-http-chunk-problem.js @@ -1,9 +1,12 @@ 'use strict'; // http://groups.google.com/group/nodejs/browse_thread/thread/f66cd3c960406919 const common = require('../common'); -if (!common.hasCrypto) + +if (!common.hasCrypto) { common.skip('missing crypto'); +} +const fs = require('fs'); const assert = require('assert'); if (process.argv[2] === 'request') { @@ -73,7 +76,11 @@ function executeRequest(cb) { tmpdir.refresh(); -common.createZeroFilledFile(filename); + +// Create a zero-filled file. +const fd = fs.openSync(filename, 'w'); +fs.ftruncateSync(fd, 10 * 1024 * 1024); +fs.closeSync(fd); server = http.createServer(function(req, res) { res.writeHead(200); diff --git a/test/parallel/test-http-localaddress.js b/test/parallel/test-http-localaddress.js index a0e4bb80a3f8c2..da25ab3047613f 100644 --- a/test/parallel/test-http-localaddress.js +++ b/test/parallel/test-http-localaddress.js @@ -22,8 +22,10 @@ // Flags: --expose-internals 'use strict'; const common = require('../common'); -if (!common.hasMultiLocalhost()) +const { hasMultiLocalhost } = require('../common/net'); +if (!hasMultiLocalhost()) { common.skip('platform-specific test.'); +} const http = require('http'); const assert = require('assert'); diff --git a/test/parallel/test-http-parser-bad-ref.js b/test/parallel/test-http-parser-bad-ref.js index 2c1bfe67485db7..e34054eca67063 100644 --- a/test/parallel/test-http-parser-bad-ref.js +++ b/test/parallel/test-http-parser-bad-ref.js @@ -18,7 +18,7 @@ let messagesComplete = 0; function flushPool() { Buffer.allocUnsafe(Buffer.poolSize - 1); - global.gc(); + globalThis.gc(); } function demoBug(part1, part2) { diff --git a/test/parallel/test-http-server-connections-checking-leak.js b/test/parallel/test-http-server-connections-checking-leak.js index 282c9a569fba7d..38dca83102cfea 100644 --- a/test/parallel/test-http-server-connections-checking-leak.js +++ b/test/parallel/test-http-server-connections-checking-leak.js @@ -20,5 +20,5 @@ for (let i = 0; i < max; i++) { } setImmediate(() => { - global.gc(); + globalThis.gc(); }); diff --git a/test/parallel/test-http-server-headers-timeout-delayed-headers.js b/test/parallel/test-http-server-headers-timeout-delayed-headers.js index af4a5df4b7f530..652969ae324cdf 100644 --- a/test/parallel/test-http-server-headers-timeout-delayed-headers.js +++ b/test/parallel/test-http-server-headers-timeout-delayed-headers.js @@ -38,25 +38,29 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - const errOrEnd = common.mustSucceed(function(err) { + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. + }); + + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); - - client.on('end', errOrEnd); - client.on('error', errOrEnd); + })); client.resume(); sendDelayedRequestHeaders = common.mustCall(() => { setTimeout(() => { - client.write('POST / HTTP/1.1\r\n'); - client.write('Content-Length: 20\r\n'); - client.write('Connection: close\r\n\r\n'); - client.write('12345678901234567890\r\n\r\n'); + client.write( + 'POST / HTTP/1.1\r\n' + + 'Content-Length: 20\r\n' + + 'Connection: close\r\n\r\n' + + '12345678901234567890\r\n\r\n' + ); }, common.platformTimeout(headersTimeout * 2)).unref(); }); })); diff --git a/test/parallel/test-http-server-headers-timeout-interrupted-headers.js b/test/parallel/test-http-server-headers-timeout-interrupted-headers.js index 9d25940ec65cd1..863057dc2819f5 100644 --- a/test/parallel/test-http-server-headers-timeout-interrupted-headers.js +++ b/test/parallel/test-http-server-headers-timeout-interrupted-headers.js @@ -38,21 +38,25 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - const errOrEnd = common.mustSucceed(function(err) { + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. + }); + + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); - - client.on('end', errOrEnd); - client.on('error', errOrEnd); + })); client.resume(); - client.write('GET / HTTP/1.1\r\n'); - client.write('Connection: close\r\n'); - client.write('X-CRASH: '); + client.write( + 'GET / HTTP/1.1\r\n' + + 'Connection: close\r\n' + + 'X-CRASH: ' + ); sendDelayedRequestHeaders = common.mustCall(() => { setTimeout(() => { diff --git a/test/parallel/test-http-server-keepalive-req-gc.js b/test/parallel/test-http-server-keepalive-req-gc.js index 3bfb6c9600cc24..c827cd19ad7222 100644 --- a/test/parallel/test-http-server-keepalive-req-gc.js +++ b/test/parallel/test-http-server-keepalive-req-gc.js @@ -16,8 +16,8 @@ const server = createServer(common.mustCall((req, res) => { req.on('end', common.mustCall(() => { setImmediate(async () => { client.end(); - await global.gc({ type: 'major', execution: 'async' }); - await global.gc({ type: 'major', execution: 'async' }); + await globalThis.gc({ type: 'major', execution: 'async' }); + await globalThis.gc({ type: 'major', execution: 'async' }); }); })); res.end('hello world'); diff --git a/test/parallel/test-http-server-request-timeout-delayed-body.js b/test/parallel/test-http-server-request-timeout-delayed-body.js index fdfbbb2f4cb4e8..2bc6b55a6fcb76 100644 --- a/test/parallel/test-http-server-request-timeout-delayed-body.js +++ b/test/parallel/test-http-server-request-timeout-delayed-body.js @@ -45,27 +45,30 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - client.resume(); - client.write('POST / HTTP/1.1\r\n'); - client.write('Host: example.com\r\n'); - client.write('Content-Length: 20\r\n'); - client.write('Connection: close\r\n'); - client.write('\r\n'); - - sendDelayedRequestBody = common.mustCall(() => { - setTimeout(() => { - client.write('12345678901234567890\r\n\r\n'); - }, common.platformTimeout(requestTimeout * 2)).unref(); + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. }); - const errOrEnd = common.mustSucceed(function(err) { + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); + })); - client.on('end', errOrEnd); - client.on('error', errOrEnd); + client.resume(); + client.write( + 'POST / HTTP/1.1\r\n' + + 'Host: example.com\r\n' + + 'Content-Length: 20\r\n' + + 'Connection: close\r\n\r\n' + ); + + sendDelayedRequestBody = common.mustCall(() => { + setTimeout(() => { + client.write('12345678901234567890\r\n\r\n'); + }, common.platformTimeout(requestTimeout * 2)).unref(); + }); })); diff --git a/test/parallel/test-http-server-request-timeout-delayed-headers.js b/test/parallel/test-http-server-request-timeout-delayed-headers.js index 304a78b96a77d3..e0d4945ec927e1 100644 --- a/test/parallel/test-http-server-request-timeout-delayed-headers.js +++ b/test/parallel/test-http-server-request-timeout-delayed-headers.js @@ -33,25 +33,29 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - const errOrEnd = common.mustSucceed(function(err) { + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. + }); + + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); - - client.on('end', errOrEnd); - client.on('error', errOrEnd); + })); client.resume(); sendDelayedRequestHeaders = common.mustCall(() => { setTimeout(() => { - client.write('POST / HTTP/1.1\r\n'); - client.write('Content-Length: 20\r\n'); - client.write('Connection: close\r\n\r\n'); - client.write('12345678901234567890\r\n\r\n'); + client.write( + 'POST / HTTP/1.1\r\n' + + 'Content-Length: 20\r\n' + + 'Connection: close\r\n\r\n' + + '12345678901234567890\r\n\r\n' + ); }, common.platformTimeout(requestTimeout * 2)).unref(); }); })); diff --git a/test/parallel/test-http-server-request-timeout-interrupted-body.js b/test/parallel/test-http-server-request-timeout-interrupted-body.js index 82c2f3171736a6..97e0a21d53d747 100644 --- a/test/parallel/test-http-server-request-timeout-interrupted-body.js +++ b/test/parallel/test-http-server-request-timeout-interrupted-body.js @@ -45,24 +45,27 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - const errOrEnd = common.mustSucceed(function(err) { + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. + }); + + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); - - client.on('error', errOrEnd); - client.on('end', errOrEnd); + })); client.resume(); - client.write('POST / HTTP/1.1\r\n'); - client.write('Host: example.com\r\n'); - client.write('Content-Length: 20\r\n'); - client.write('Connection: close\r\n'); - client.write('\r\n'); - client.write('1234567890'); + client.write( + 'POST / HTTP/1.1\r\n' + + 'Host: example.com\r\n' + + 'Content-Length: 20\r\n' + + 'Connection: close\r\n\r\n' + + '1234567890' + ); sendDelayedRequestBody = common.mustCall(() => { setTimeout(() => { diff --git a/test/parallel/test-http-server-request-timeout-interrupted-headers.js b/test/parallel/test-http-server-request-timeout-interrupted-headers.js index eb9914dad1f56a..752156ed0ed9da 100644 --- a/test/parallel/test-http-server-request-timeout-interrupted-headers.js +++ b/test/parallel/test-http-server-request-timeout-interrupted-headers.js @@ -33,21 +33,25 @@ server.listen(0, common.mustCall(() => { response += chunk; })); - const errOrEnd = common.mustSucceed(function(err) { + client.on('error', () => { + // Ignore errors like 'write EPIPE' that might occur while the request is + // sent. + }); + + client.on('close', common.mustCall(() => { assert.strictEqual( response, 'HTTP/1.1 408 Request Timeout\r\nConnection: close\r\n\r\n' ); server.close(); - }); - - client.on('end', errOrEnd); - client.on('error', errOrEnd); + })); client.resume(); - client.write('GET / HTTP/1.1\r\n'); - client.write('Connection: close\r\n'); - client.write('X-CRASH: '); + client.write( + 'GET / HTTP/1.1\r\n' + + 'Connection: close\r\n' + + 'X-CRASH: ' + ); sendDelayedRequestHeaders = common.mustCall(() => { setTimeout(() => { diff --git a/test/parallel/test-http2-connect-options.js b/test/parallel/test-http2-connect-options.js index 233ced016974e2..1abcee99e06433 100644 --- a/test/parallel/test-http2-connect-options.js +++ b/test/parallel/test-http2-connect-options.js @@ -4,8 +4,10 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); -if (!common.hasMultiLocalhost()) +const { hasMultiLocalhost } = require('../common/net'); +if (!hasMultiLocalhost()) { common.skip('platform-specific test.'); +} const http2 = require('http2'); const assert = require('assert'); diff --git a/test/parallel/test-http2-createwritereq.js b/test/parallel/test-http2-createwritereq.js index 3015ad6c642801..6d2b07d5849ad0 100644 --- a/test/parallel/test-http2-createwritereq.js +++ b/test/parallel/test-http2-createwritereq.js @@ -69,7 +69,7 @@ server.listen(0, common.mustCall(function() { req.destroy = function(...args) { // Schedule a garbage collection event at the end of the current // MakeCallback() run. - process.nextTick(global.gc); + process.nextTick(globalThis.gc); return origDestroy.call(this, ...args); }; diff --git a/test/parallel/test-http2-ip-address-host.js b/test/parallel/test-http2-ip-address-host.js new file mode 100644 index 00000000000000..c0699a89169153 --- /dev/null +++ b/test/parallel/test-http2-ip-address-host.js @@ -0,0 +1,53 @@ +'use strict'; + +const common = require('../common'); +if (!common.hasCrypto) { common.skip('missing crypto'); }; +const assert = require('assert'); +const fixtures = require('../common/fixtures'); +const h2 = require('http2'); + +function loadKey(keyname) { + return fixtures.readKey(keyname, 'binary'); +} + +const key = loadKey('agent8-key.pem'); +const cert = fixtures.readKey('agent8-cert.pem'); + +const server = h2.createSecureServer({ key, cert }); +const hasIPv6 = common.hasIPv6; +const testCount = hasIPv6 ? 2 : 1; + +server.on('stream', common.mustCall((stream) => { + const session = stream.session; + assert.strictEqual(session.servername, undefined); + stream.respond({ 'content-type': 'application/json' }); + stream.end(JSON.stringify({ + servername: session.servername, + originSet: session.originSet + }) + ); +}, testCount)); + +let done = 0; + +server.listen(0, common.mustCall(() => { + function handleRequest(url) { + const client = h2.connect(url, + { rejectUnauthorized: false }); + const req = client.request(); + let data = ''; + req.setEncoding('utf8'); + req.on('data', (d) => data += d); + req.on('end', common.mustCall(() => { + const originSet = req.session.originSet; + assert.strictEqual(originSet[0], url); + client.close(); + if (++done === testCount) server.close(); + })); + } + + const ipv4Url = `https://127.0.0.1:${server.address().port}`; + const ipv6Url = `https://[::1]:${server.address().port}`; + handleRequest(ipv4Url); + if (hasIPv6) handleRequest(ipv6Url); +})); diff --git a/test/parallel/test-http2-session-gc-while-write-scheduled.js b/test/parallel/test-http2-session-gc-while-write-scheduled.js index 62379f7d7ed678..9693ded17c0a18 100644 --- a/test/parallel/test-http2-session-gc-while-write-scheduled.js +++ b/test/parallel/test-http2-session-gc-while-write-scheduled.js @@ -23,6 +23,6 @@ const tick = require('../common/tick'); // This schedules a write. client.settings(http2.getDefaultSettings()); client = null; - global.gc(); + globalThis.gc(); }); } diff --git a/test/parallel/test-http2-write-finishes-after-stream-destroy.js b/test/parallel/test-http2-write-finishes-after-stream-destroy.js index ed8833fdb926b1..bf9de8f9291917 100644 --- a/test/parallel/test-http2-write-finishes-after-stream-destroy.js +++ b/test/parallel/test-http2-write-finishes-after-stream-destroy.js @@ -9,7 +9,7 @@ const { duplexPair } = require('stream'); // Make sure the Http2Stream destructor works, since we don't clean the // stream up like we would otherwise do. -process.on('exit', global.gc); +process.on('exit', globalThis.gc); { const [ clientSide, serverSide ] = duplexPair(); diff --git a/test/parallel/test-https-agent-session-eviction.js b/test/parallel/test-https-agent-session-eviction.js index e0986e53c1103b..6f88e81e9ff29d 100644 --- a/test/parallel/test-https-agent-session-eviction.js +++ b/test/parallel/test-https-agent-session-eviction.js @@ -2,10 +2,13 @@ 'use strict'; const common = require('../common'); -const { readKey } = require('../common/fixtures'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { readKey } = require('../common/fixtures'); +const { hasOpenSSL } = require('../common/crypto'); const https = require('https'); const { SSL_OP_NO_TICKET } = require('crypto').constants; @@ -56,7 +59,7 @@ function faultyServer(port) { function second(server, session) { const req = https.request({ port: server.address().port, - ciphers: (common.hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), + ciphers: (hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), rejectUnauthorized: false }, function(res) { res.resume(); diff --git a/test/parallel/test-https-client-renegotiation-limit.js b/test/parallel/test-https-client-renegotiation-limit.js index 35fcc6bfcc6e43..18a602d738c316 100644 --- a/test/parallel/test-https-client-renegotiation-limit.js +++ b/test/parallel/test-https-client-renegotiation-limit.js @@ -21,11 +21,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} const assert = require('assert'); const tls = require('tls'); diff --git a/test/parallel/test-https-foafssl.js b/test/parallel/test-https-foafssl.js index d6dde97a41da9c..df375e7d22201e 100644 --- a/test/parallel/test-https-foafssl.js +++ b/test/parallel/test-https-foafssl.js @@ -21,11 +21,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} -if (!common.opensslCli) +const { opensslCli } = require('../common/crypto'); + +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} const assert = require('assert'); const fixtures = require('../common/fixtures'); @@ -67,7 +71,7 @@ server.listen(0, function() { '-cert', fixtures.path('keys/rsa_cert_foafssl_b.crt'), '-key', fixtures.path('keys/rsa_private_b.pem')]; - const client = spawn(common.opensslCli, args); + const client = spawn(opensslCli, args); client.stdout.on('data', function(data) { console.log('response received'); diff --git a/test/parallel/test-https-localaddress.js b/test/parallel/test-https-localaddress.js index 0de0974dc69b04..2a4629b34e4105 100644 --- a/test/parallel/test-https-localaddress.js +++ b/test/parallel/test-https-localaddress.js @@ -25,8 +25,10 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); -if (!common.hasMultiLocalhost()) +const { hasMultiLocalhost } = require('../common/net'); +if (!hasMultiLocalhost()) { common.skip('platform-specific test.'); +} const fixtures = require('../common/fixtures'); const assert = require('assert'); diff --git a/test/parallel/test-https-server-connections-checking-leak.js b/test/parallel/test-https-server-connections-checking-leak.js index e920c8e403705f..f79149ef70a9ab 100644 --- a/test/parallel/test-https-server-connections-checking-leak.js +++ b/test/parallel/test-https-server-connections-checking-leak.js @@ -25,5 +25,5 @@ for (let i = 0; i < max; i++) { } setImmediate(() => { - global.gc(); + globalThis.gc(); }); diff --git a/test/parallel/test-icu-env.js b/test/parallel/test-icu-env.js index afa36132f60e8d..26075a3d0acec2 100644 --- a/test/parallel/test-icu-env.js +++ b/test/parallel/test-icu-env.js @@ -4,7 +4,7 @@ const assert = require('assert'); const { execFileSync } = require('child_process'); const { readFileSync, globSync } = require('fs'); const { path } = require('../common/fixtures'); - +const { isMainThread } = require('worker_threads'); // This test checks for regressions in environment variable handling and // caching, but the localization data originated from ICU might change @@ -169,7 +169,7 @@ if (isMockable) { // Tests with process.env mutated inside { // process.env.TZ is not intercepted in Workers - if (common.isMainThread) { + if (isMainThread) { assert.strictEqual( isSet(zones.map((TZ) => runEnvInside({ TZ }, () => new Date(333333333333).toString()))), true diff --git a/test/parallel/test-inspector-already-activated-cli.js b/test/parallel/test-inspector-already-activated-cli.js index ba76d5168c14b9..9de226cedca60c 100644 --- a/test/parallel/test-inspector-already-activated-cli.js +++ b/test/parallel/test-inspector-already-activated-cli.js @@ -3,7 +3,12 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const inspector = require('inspector'); diff --git a/test/parallel/test-inspector-async-hook-after-done.js b/test/parallel/test-inspector-async-hook-after-done.js index 9f96fdb7b0da84..b49fe32982e132 100644 --- a/test/parallel/test-inspector-async-hook-after-done.js +++ b/test/parallel/test-inspector-async-hook-after-done.js @@ -3,7 +3,12 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { Worker } = require('worker_threads'); diff --git a/test/parallel/test-inspector-async-hook-setup-at-signal.js b/test/parallel/test-inspector-async-hook-setup-at-signal.js index 43f50d00615723..64a3835e415746 100644 --- a/test/parallel/test-inspector-async-hook-setup-at-signal.js +++ b/test/parallel/test-inspector-async-hook-setup-at-signal.js @@ -6,7 +6,11 @@ common.skipIf32Bits(); const { NodeInstance } = require('../common/inspector-helper.js'); const assert = require('assert'); -common.skipIfWorker(); // Signal starts a server for a main thread inspector +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const script = ` process._rawDebug('Waiting until a signal enables the inspector...'); diff --git a/test/parallel/test-inspector-connect-main-thread.js b/test/parallel/test-inspector-connect-main-thread.js index b724bf3cd9d62f..2281b5efcf3ed8 100644 --- a/test/parallel/test-inspector-connect-main-thread.js +++ b/test/parallel/test-inspector-connect-main-thread.js @@ -10,8 +10,8 @@ const { pathToFileURL } = require('url'); const { isMainThread, parentPort, Worker, workerData } = require('worker_threads'); -if (!workerData) { - common.skipIfWorker(); +if (!workerData && !isMainThread) { + common.skip('This test only works on a main thread'); } function toDebug() { diff --git a/test/parallel/test-inspector-connect-to-main-thread.js b/test/parallel/test-inspector-connect-to-main-thread.js index 7254145a2733f0..9244a85f21b15a 100644 --- a/test/parallel/test-inspector-connect-to-main-thread.js +++ b/test/parallel/test-inspector-connect-to-main-thread.js @@ -6,8 +6,8 @@ common.skipIfInspectorDisabled(); const { Session } = require('inspector'); const { Worker, isMainThread, workerData } = require('worker_threads'); -if (!workerData) { - common.skipIfWorker(); +if (!workerData && !isMainThread) { + common.skip('This test only works on a main thread'); } if (isMainThread) { diff --git a/test/parallel/test-inspector-contexts.js b/test/parallel/test-inspector-contexts.js index 9cdf2d0017c4be..e7bdc53f8cd576 100644 --- a/test/parallel/test-inspector-contexts.js +++ b/test/parallel/test-inspector-contexts.js @@ -8,6 +8,7 @@ common.skipIfInspectorDisabled(); const assert = require('assert'); const vm = require('vm'); const { Session } = require('inspector'); +const { isMainThread } = require('worker_threads'); const session = new Session(); session.connect(); @@ -34,7 +35,7 @@ async function testContextCreatedAndDestroyed() { assert.strictEqual(name.includes(`[${process.pid}]`), true); } else { let expects = `${process.argv0}[${process.pid}]`; - if (!common.isMainThread) { + if (!isMainThread) { expects = `Worker[${require('worker_threads').threadId}]`; } assert.strictEqual(expects, name); diff --git a/test/parallel/test-inspector-exit-worker-in-wait-for-connection.js b/test/parallel/test-inspector-exit-worker-in-wait-for-connection.js index 4fcbb092fd23cf..9215d4969fb92f 100644 --- a/test/parallel/test-inspector-exit-worker-in-wait-for-connection.js +++ b/test/parallel/test-inspector-exit-worker-in-wait-for-connection.js @@ -3,9 +3,15 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -const { parentPort, workerData, Worker } = require('node:worker_threads'); -if (!workerData) { - common.skipIfWorker(); +const { + isMainThread, + parentPort, + workerData, + Worker, +} = require('node:worker_threads'); + +if (!workerData && !isMainThread) { + common.skip('This test only works on a main thread'); } const inspector = require('node:inspector'); diff --git a/test/parallel/test-inspector-exit-worker-in-wait-for-connection2.js b/test/parallel/test-inspector-exit-worker-in-wait-for-connection2.js index fb13fc3f969304..cf485ae3a4318f 100644 --- a/test/parallel/test-inspector-exit-worker-in-wait-for-connection2.js +++ b/test/parallel/test-inspector-exit-worker-in-wait-for-connection2.js @@ -3,9 +3,9 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -const { workerData, Worker } = require('node:worker_threads'); -if (!workerData) { - common.skipIfWorker(); +const { isMainThread, workerData, Worker } = require('node:worker_threads'); +if (!workerData && !isMainThread) { + common.skip('This test only works on a main thread'); } const assert = require('node:assert'); diff --git a/test/parallel/test-inspector-network-domain.js b/test/parallel/test-inspector-network-fetch.js similarity index 79% rename from test/parallel/test-inspector-network-domain.js rename to test/parallel/test-inspector-network-fetch.js index d2a56dca95a4ff..26f6d52ff40694 100644 --- a/test/parallel/test-inspector-network-domain.js +++ b/test/parallel/test-inspector-network-fetch.js @@ -11,15 +11,25 @@ const http = require('node:http'); const https = require('node:https'); const inspector = require('node:inspector/promises'); +// Disable certificate validation for the global fetch. +const undici = require('../../deps/undici/src/index.js'); +undici.setGlobalDispatcher(new undici.Agent({ + connect: { + rejectUnauthorized: false, + }, +})); + const session = new inspector.Session(); session.connect(); -const requestHeaders = { - 'accept-language': 'en-US', - 'Cookie': ['k1=v1', 'k2=v2'], - 'age': 1000, - 'x-header1': ['value1', 'value2'] -}; +const requestHeaders = [ + ['accept-language', 'en-US'], + ['cookie', 'k1=v1'], + ['cookie', 'k2=v2'], + ['age', 1000], + ['x-header1', 'value1'], + ['x-header1', 'value2'], +]; const setResponseHeaders = (res) => { res.setHeader('server', 'node'); @@ -28,7 +38,7 @@ const setResponseHeaders = (res) => { res.setHeader('x-header2', ['value1', 'value2']); }; -const httpServer = http.createServer((req, res) => { +const handleRequest = (req, res) => { const path = req.url; switch (path) { case '/hello-world': @@ -39,23 +49,14 @@ const httpServer = http.createServer((req, res) => { default: assert(false, `Unexpected path: ${path}`); } -}); +}; + +const httpServer = http.createServer(handleRequest); const httpsServer = https.createServer({ key: fixtures.readKey('agent1-key.pem'), cert: fixtures.readKey('agent1-cert.pem') -}, (req, res) => { - const path = req.url; - switch (path) { - case '/hello-world': - setResponseHeaders(res); - res.writeHead(200); - res.end('hello world\n'); - break; - default: - assert(false, `Unexpected path: ${path}`); - } -}); +}, handleRequest); const terminate = () => { session.disconnect(); @@ -67,7 +68,7 @@ const terminate = () => { const testHttpGet = () => new Promise((resolve, reject) => { session.on('Network.requestWillBeSent', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); - assert.strictEqual(params.request.url, 'http://127.0.0.1/hello-world'); + assert.strictEqual(params.request.url, `http://127.0.0.1:${httpServer.address().port}/hello-world`); assert.strictEqual(params.request.method, 'GET'); assert.strictEqual(typeof params.request.headers, 'object'); assert.strictEqual(params.request.headers['accept-language'], 'en-US'); @@ -80,14 +81,14 @@ const testHttpGet = () => new Promise((resolve, reject) => { session.on('Network.responseReceived', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); assert.strictEqual(typeof params.timestamp, 'number'); - assert.strictEqual(params.type, 'Other'); + assert.strictEqual(params.type, 'Fetch'); assert.strictEqual(params.response.status, 200); assert.strictEqual(params.response.statusText, 'OK'); - assert.strictEqual(params.response.url, 'http://127.0.0.1/hello-world'); + assert.strictEqual(params.response.url, `http://127.0.0.1:${httpServer.address().port}/hello-world`); assert.strictEqual(typeof params.response.headers, 'object'); assert.strictEqual(params.response.headers.server, 'node'); assert.strictEqual(params.response.headers.etag, '12345'); - assert.strictEqual(params.response.headers['set-cookie'], 'key1=value1\nkey2=value2'); + assert.strictEqual(params.response.headers['Set-Cookie'], 'key1=value1\nkey2=value2'); assert.strictEqual(params.response.headers['x-header2'], 'value1, value2'); })); session.on('Network.loadingFinished', common.mustCall(({ params }) => { @@ -96,18 +97,15 @@ const testHttpGet = () => new Promise((resolve, reject) => { resolve(); })); - http.get({ - host: '127.0.0.1', - port: httpServer.address().port, - path: '/hello-world', - headers: requestHeaders - }, common.mustCall()); + fetch(`http://127.0.0.1:${httpServer.address().port}/hello-world`, { + headers: requestHeaders, + }).then(common.mustCall()); }); const testHttpsGet = () => new Promise((resolve, reject) => { session.on('Network.requestWillBeSent', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); - assert.strictEqual(params.request.url, 'https://127.0.0.1/hello-world'); + assert.strictEqual(params.request.url, `https://127.0.0.1:${httpsServer.address().port}/hello-world`); assert.strictEqual(params.request.method, 'GET'); assert.strictEqual(typeof params.request.headers, 'object'); assert.strictEqual(params.request.headers['accept-language'], 'en-US'); @@ -120,14 +118,14 @@ const testHttpsGet = () => new Promise((resolve, reject) => { session.on('Network.responseReceived', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); assert.strictEqual(typeof params.timestamp, 'number'); - assert.strictEqual(params.type, 'Other'); + assert.strictEqual(params.type, 'Fetch'); assert.strictEqual(params.response.status, 200); assert.strictEqual(params.response.statusText, 'OK'); - assert.strictEqual(params.response.url, 'https://127.0.0.1/hello-world'); + assert.strictEqual(params.response.url, `https://127.0.0.1:${httpsServer.address().port}/hello-world`); assert.strictEqual(typeof params.response.headers, 'object'); assert.strictEqual(params.response.headers.server, 'node'); assert.strictEqual(params.response.headers.etag, '12345'); - assert.strictEqual(params.response.headers['set-cookie'], 'key1=value1\nkey2=value2'); + assert.strictEqual(params.response.headers['Set-Cookie'], 'key1=value1\nkey2=value2'); assert.strictEqual(params.response.headers['x-header2'], 'value1, value2'); })); session.on('Network.loadingFinished', common.mustCall(({ params }) => { @@ -136,13 +134,9 @@ const testHttpsGet = () => new Promise((resolve, reject) => { resolve(); })); - https.get({ - host: '127.0.0.1', - port: httpsServer.address().port, - path: '/hello-world', - rejectUnauthorized: false, + fetch(`https://127.0.0.1:${httpsServer.address().port}/hello-world`, { headers: requestHeaders, - }, common.mustCall()); + }).then(common.mustCall()); }); const testHttpError = () => new Promise((resolve, reject) => { @@ -150,16 +144,14 @@ const testHttpError = () => new Promise((resolve, reject) => { session.on('Network.loadingFailed', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); assert.strictEqual(typeof params.timestamp, 'number'); - assert.strictEqual(params.type, 'Other'); + assert.strictEqual(params.type, 'Fetch'); assert.strictEqual(typeof params.errorText, 'string'); resolve(); })); session.on('Network.responseReceived', common.mustNotCall()); session.on('Network.loadingFinished', common.mustNotCall()); - http.get({ - host: addresses.INVALID_HOST, - }, common.mustNotCall()).on('error', common.mustCall()); + fetch(`http://${addresses.INVALID_HOST}`).catch(common.mustCall()); }); @@ -168,16 +160,14 @@ const testHttpsError = () => new Promise((resolve, reject) => { session.on('Network.loadingFailed', common.mustCall(({ params }) => { assert.ok(params.requestId.startsWith('node-network-event-')); assert.strictEqual(typeof params.timestamp, 'number'); - assert.strictEqual(params.type, 'Other'); + assert.strictEqual(params.type, 'Fetch'); assert.strictEqual(typeof params.errorText, 'string'); resolve(); })); session.on('Network.responseReceived', common.mustNotCall()); session.on('Network.loadingFinished', common.mustNotCall()); - https.get({ - host: addresses.INVALID_HOST, - }, common.mustNotCall()).on('error', common.mustCall()); + fetch(`https://${addresses.INVALID_HOST}`).catch(common.mustCall()); }); const testNetworkInspection = async () => { diff --git a/test/parallel/test-inspector-network-http.js b/test/parallel/test-inspector-network-http.js new file mode 100644 index 00000000000000..e1e987cdd71e28 --- /dev/null +++ b/test/parallel/test-inspector-network-http.js @@ -0,0 +1,241 @@ +// Flags: --inspect=0 --experimental-network-inspection +'use strict'; +const common = require('../common'); + +common.skipIfInspectorDisabled(); + +const assert = require('node:assert'); +const { once } = require('node:events'); +const { addresses } = require('../common/internet'); +const fixtures = require('../common/fixtures'); +const http = require('node:http'); +const https = require('node:https'); +const inspector = require('node:inspector/promises'); + +const session = new inspector.Session(); +session.connect(); + +const requestHeaders = { + 'accept-language': 'en-US', + 'Cookie': ['k1=v1', 'k2=v2'], + 'age': 1000, + 'x-header1': ['value1', 'value2'] +}; + +const setResponseHeaders = (res) => { + res.setHeader('server', 'node'); + res.setHeader('etag', 12345); + res.setHeader('Set-Cookie', ['key1=value1', 'key2=value2']); + res.setHeader('x-header2', ['value1', 'value2']); +}; + +const kTimeout = 1000; +const kDelta = 200; + +const handleRequest = (req, res) => { + const path = req.url; + switch (path) { + case '/hello-world': + setResponseHeaders(res); + res.writeHead(200); + // Ensure the header is sent. + res.write('\n'); + + setTimeout(() => { + res.end('hello world\n'); + }, kTimeout); + break; + default: + assert(false, `Unexpected path: ${path}`); + } +}; + +const httpServer = http.createServer(handleRequest); + +const httpsServer = https.createServer({ + key: fixtures.readKey('agent1-key.pem'), + cert: fixtures.readKey('agent1-cert.pem') +}, handleRequest); + +const terminate = () => { + session.disconnect(); + httpServer.close(); + httpsServer.close(); + inspector.close(); +}; + +function verifyRequestWillBeSent({ method, params }, expect) { + assert.strictEqual(method, 'Network.requestWillBeSent'); + + assert.ok(params.requestId.startsWith('node-network-event-')); + assert.strictEqual(params.request.url, expect.url); + assert.strictEqual(params.request.method, 'GET'); + assert.strictEqual(typeof params.request.headers, 'object'); + assert.strictEqual(params.request.headers['accept-language'], 'en-US'); + assert.strictEqual(params.request.headers.cookie, 'k1=v1; k2=v2'); + assert.strictEqual(params.request.headers.age, '1000'); + assert.strictEqual(params.request.headers['x-header1'], 'value1, value2'); + assert.strictEqual(typeof params.timestamp, 'number'); + assert.strictEqual(typeof params.wallTime, 'number'); + + return params; +} + +function verifyResponseReceived({ method, params }, expect) { + assert.strictEqual(method, 'Network.responseReceived'); + + assert.ok(params.requestId.startsWith('node-network-event-')); + assert.strictEqual(typeof params.timestamp, 'number'); + assert.strictEqual(params.type, 'Other'); + assert.strictEqual(params.response.status, 200); + assert.strictEqual(params.response.statusText, 'OK'); + assert.strictEqual(params.response.url, expect.url); + assert.strictEqual(typeof params.response.headers, 'object'); + assert.strictEqual(params.response.headers.server, 'node'); + assert.strictEqual(params.response.headers.etag, '12345'); + assert.strictEqual(params.response.headers['set-cookie'], 'key1=value1\nkey2=value2'); + assert.strictEqual(params.response.headers['x-header2'], 'value1, value2'); + + return params; +} + +function verifyLoadingFinished({ method, params }) { + assert.strictEqual(method, 'Network.loadingFinished'); + + assert.ok(params.requestId.startsWith('node-network-event-')); + assert.strictEqual(typeof params.timestamp, 'number'); + return params; +} + +function verifyLoadingFailed({ method, params }) { + assert.strictEqual(method, 'Network.loadingFailed'); + + assert.ok(params.requestId.startsWith('node-network-event-')); + assert.strictEqual(typeof params.timestamp, 'number'); + assert.strictEqual(params.type, 'Other'); + assert.strictEqual(typeof params.errorText, 'string'); +} + +async function testHttpGet() { + const url = `http://127.0.0.1:${httpServer.address().port}/hello-world`; + const requestWillBeSentFuture = once(session, 'Network.requestWillBeSent') + .then(([event]) => verifyRequestWillBeSent(event, { url })); + + const responseReceivedFuture = once(session, 'Network.responseReceived') + .then(([event]) => verifyResponseReceived(event, { url })); + + const loadingFinishedFuture = once(session, 'Network.loadingFinished') + .then(([event]) => verifyLoadingFinished(event)); + + http.get({ + host: '127.0.0.1', + port: httpServer.address().port, + path: '/hello-world', + headers: requestHeaders + }, common.mustCall((res) => { + // Dump the response. + res.on('data', () => {}); + res.on('end', () => {}); + })); + + await requestWillBeSentFuture; + const responseReceived = await responseReceivedFuture; + const loadingFinished = await loadingFinishedFuture; + + const delta = (loadingFinished.timestamp - responseReceived.timestamp) * 1000; + assert.ok(delta > kDelta); +} + +async function testHttpsGet() { + const url = `https://127.0.0.1:${httpsServer.address().port}/hello-world`; + const requestWillBeSentFuture = once(session, 'Network.requestWillBeSent') + .then(([event]) => verifyRequestWillBeSent(event, { url })); + + const responseReceivedFuture = once(session, 'Network.responseReceived') + .then(([event]) => verifyResponseReceived(event, { url })); + + const loadingFinishedFuture = once(session, 'Network.loadingFinished') + .then(([event]) => verifyLoadingFinished(event)); + + https.get({ + host: '127.0.0.1', + port: httpsServer.address().port, + path: '/hello-world', + rejectUnauthorized: false, + headers: requestHeaders, + }, common.mustCall((res) => { + // Dump the response. + res.on('data', () => {}); + res.on('end', () => {}); + })); + + await requestWillBeSentFuture; + const responseReceived = await responseReceivedFuture; + const loadingFinished = await loadingFinishedFuture; + + const delta = (loadingFinished.timestamp - responseReceived.timestamp) * 1000; + assert.ok(delta > kDelta); +} + +async function testHttpError() { + const url = `http://${addresses.INVALID_HOST}/`; + const requestWillBeSentFuture = once(session, 'Network.requestWillBeSent') + .then(([event]) => verifyRequestWillBeSent(event, { url })); + session.on('Network.responseReceived', common.mustNotCall()); + session.on('Network.loadingFinished', common.mustNotCall()); + + const loadingFailedFuture = once(session, 'Network.loadingFailed') + .then(([event]) => verifyLoadingFailed(event)); + + http.get({ + host: addresses.INVALID_HOST, + headers: requestHeaders, + }, common.mustNotCall()).on('error', common.mustCall()); + + await requestWillBeSentFuture; + await loadingFailedFuture; +} + +async function testHttpsError() { + const url = `https://${addresses.INVALID_HOST}/`; + const requestWillBeSentFuture = once(session, 'Network.requestWillBeSent') + .then(([event]) => verifyRequestWillBeSent(event, { url })); + session.on('Network.responseReceived', common.mustNotCall()); + session.on('Network.loadingFinished', common.mustNotCall()); + + const loadingFailedFuture = once(session, 'Network.loadingFailed') + .then(([event]) => verifyLoadingFailed(event)); + + https.get({ + host: addresses.INVALID_HOST, + headers: requestHeaders, + }, common.mustNotCall()).on('error', common.mustCall()); + + await requestWillBeSentFuture; + await loadingFailedFuture; +} + +const testNetworkInspection = async () => { + await testHttpGet(); + session.removeAllListeners(); + await testHttpsGet(); + session.removeAllListeners(); + await testHttpError(); + session.removeAllListeners(); + await testHttpsError(); + session.removeAllListeners(); +}; + +httpServer.listen(0, () => { + httpsServer.listen(0, async () => { + try { + await session.post('Network.enable'); + await testNetworkInspection(); + await session.post('Network.disable'); + } catch (e) { + assert.fail(e); + } finally { + terminate(); + } + }); +}); diff --git a/test/parallel/test-inspector-open-coverage.js b/test/parallel/test-inspector-open-coverage.js index 259049c36822ab..33f50bfc3f53c4 100644 --- a/test/parallel/test-inspector-open-coverage.js +++ b/test/parallel/test-inspector-open-coverage.js @@ -7,7 +7,12 @@ const fixtures = require('../common/fixtures'); const tmpdir = require('../common/tmpdir'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} tmpdir.refresh(); diff --git a/test/parallel/test-inspector-open-port-integer-overflow.js b/test/parallel/test-inspector-open-port-integer-overflow.js index 0f9a4799d0642a..a1b5c640c4c18d 100644 --- a/test/parallel/test-inspector-open-port-integer-overflow.js +++ b/test/parallel/test-inspector-open-port-integer-overflow.js @@ -5,7 +5,12 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const inspector = require('inspector'); diff --git a/test/parallel/test-inspector-overwrite-config.js b/test/parallel/test-inspector-overwrite-config.js index c20df083256120..53599b31df8acc 100644 --- a/test/parallel/test-inspector-overwrite-config.js +++ b/test/parallel/test-inspector-overwrite-config.js @@ -13,9 +13,11 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('--require does not work with Workers'); +} const inspector = require('inspector'); const msg = 'Test inspector logging'; diff --git a/test/parallel/test-inspector-port-zero-cluster.js b/test/parallel/test-inspector-port-zero-cluster.js index 8e2db0b69d5ca0..5ee7bcf7417345 100644 --- a/test/parallel/test-inspector-port-zero-cluster.js +++ b/test/parallel/test-inspector-port-zero-cluster.js @@ -3,7 +3,12 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} // Assert that even when started with `--inspect=0` workers are assigned // consecutive (i.e. deterministically predictable) debug ports diff --git a/test/parallel/test-inspector-scriptparsed-context.js b/test/parallel/test-inspector-scriptparsed-context.js index bd86ba53d4c986..31ae896c818b82 100644 --- a/test/parallel/test-inspector-scriptparsed-context.js +++ b/test/parallel/test-inspector-scriptparsed-context.js @@ -8,8 +8,8 @@ const script = ` 'use strict'; const assert = require('assert'); const vm = require('vm'); - global.outer = true; - global.inner = false; + globalThis.outer = true; + globalThis.inner = false; const context = vm.createContext({ outer: false, inner: true diff --git a/test/parallel/test-inspector-strip-types.js b/test/parallel/test-inspector-strip-types.js index c03a58345e59f9..ff6313a6eb2b21 100644 --- a/test/parallel/test-inspector-strip-types.js +++ b/test/parallel/test-inspector-strip-types.js @@ -7,8 +7,10 @@ if (!process.config.variables.node_use_amaro) common.skip('Requires Amaro'); const { NodeInstance } = require('../common/inspector-helper.js'); const fixtures = require('../common/fixtures'); const assert = require('assert'); +const { pathToFileURL } = require('url'); const scriptPath = fixtures.path('typescript/ts/test-typescript.ts'); +const scriptURL = pathToFileURL(scriptPath); async function runTest() { const child = new NodeInstance( @@ -30,10 +32,10 @@ async function runTest() { const scriptParsed = await session.waitForNotification((notification) => { if (notification.method !== 'Debugger.scriptParsed') return false; - return notification.params.url === scriptPath; + return notification.params.url === scriptPath || notification.params.url === scriptURL.href; }); // Verify that the script has a sourceURL, hinting that it is a generated source. - assert(scriptParsed.params.hasSourceURL); + assert(scriptParsed.params.hasSourceURL || common.isInsideDirWithUnusualChars); await session.waitForPauseOnStart(); await session.runToCompletion(); diff --git a/test/parallel/test-inspector-tracing-domain.js b/test/parallel/test-inspector-tracing-domain.js index f5ac6875a0f643..aa31d63a01577d 100644 --- a/test/parallel/test-inspector-tracing-domain.js +++ b/test/parallel/test-inspector-tracing-domain.js @@ -3,7 +3,13 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); // https://github.com/nodejs/node/issues/22767 + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + // https://github.com/nodejs/node/issues/22767 + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { Session } = require('inspector'); diff --git a/test/parallel/test-inspector-vm-global-accessors-getter-sideeffect.js b/test/parallel/test-inspector-vm-global-accessors-getter-sideeffect.js index 8b367e98c37f49..89414e50346871 100644 --- a/test/parallel/test-inspector-vm-global-accessors-getter-sideeffect.js +++ b/test/parallel/test-inspector-vm-global-accessors-getter-sideeffect.js @@ -14,7 +14,7 @@ session.connect(); const context = vm.createContext({ get a() { - global.foo = '1'; + globalThis.foo = '1'; return 100; } }); diff --git a/test/parallel/test-inspector-workers-flat-list.js b/test/parallel/test-inspector-workers-flat-list.js index 9f6495d10fb147..a7b57fbb0a353b 100644 --- a/test/parallel/test-inspector-workers-flat-list.js +++ b/test/parallel/test-inspector-workers-flat-list.js @@ -6,8 +6,8 @@ common.skipIfInspectorDisabled(); const { Worker, isMainThread, parentPort, workerData } = require('worker_threads'); -if (isMainThread || workerData !== 'launched by test') { - common.skipIfWorker(); +if (!isMainThread || workerData !== 'launched by test') { + common.skip('This test only works on a main thread'); } const { Session } = require('inspector'); diff --git a/test/parallel/test-internal-module-require.js b/test/parallel/test-internal-module-require.js index c6e2057d3da1ee..b4f772b09be98a 100644 --- a/test/parallel/test-internal-module-require.js +++ b/test/parallel/test-internal-module-require.js @@ -8,8 +8,9 @@ // 3. Deprecated modules are properly deprecated. const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) { +if (!isMainThread) { common.skip('Cannot test the existence of --expose-internals from worker'); } diff --git a/test/parallel/test-is-internal-thread.mjs b/test/parallel/test-is-internal-thread.mjs new file mode 100644 index 00000000000000..dd8af897c219ba --- /dev/null +++ b/test/parallel/test-is-internal-thread.mjs @@ -0,0 +1,36 @@ +import { spawnPromisified } from '../common/index.mjs'; +import * as fixtures from '../common/fixtures.mjs'; +import assert from 'node:assert'; +import { execPath } from 'node:process'; +import { describe, it } from 'node:test'; +import { isInternalThread, Worker } from 'node:worker_threads'; +import * as common from '../common/index.mjs'; + +describe('worker_threads.isInternalThread', { concurrency: !process.env.TEST_PARALLEL }, () => { + it('should be true inside the loader thread', async () => { + const { code, signal, stdout, stderr } = await spawnPromisified(execPath, [ + '--no-warnings', + '--experimental-loader', + fixtures.fileURL('loader-is-internal-thread.js'), + '--eval', + 'setTimeout(() => {},99)', + ]); + + assert.strictEqual(stderr, ''); + assert.match(stdout, /isInternalThread: true/); + assert.strictEqual(code, 0); + assert.strictEqual(signal, null); + }); + + it('should be false inside the main thread', async () => { + assert.strictEqual(isInternalThread, false); + }); + + it('should be false inside a regular worker thread', async () => { + const worker = new Worker(fixtures.path('worker-is-internal-thread.js')); + + worker.on('message', common.mustCall((message) => { + assert.strictEqual(message, 'isInternalThread: false'); + })); + }); +}); diff --git a/test/parallel/test-module-create-require-multibyte.js b/test/parallel/test-module-create-require-multibyte.js new file mode 100644 index 00000000000000..f9c4b6345dc59e --- /dev/null +++ b/test/parallel/test-module-create-require-multibyte.js @@ -0,0 +1,24 @@ +'use strict'; + +require('../common'); +const fixtures = require('../common/fixtures'); +const assert = require('assert'); + +// This test ensures that the module can be resolved +// even if the path given to createRequire contains multibyte characters. + +const { createRequire } = require('module'); + +{ + const u = fixtures.fileURL('あ.js'); + + const reqToo = createRequire(u); + assert.deepStrictEqual(reqToo('./experimental'), { ofLife: 42 }); +} + +{ + const u = fixtures.fileURL('copy/utf/新建文件夹/index.js'); + + const reqToo = createRequire(u); + assert.deepStrictEqual(reqToo('./experimental'), { ofLife: 42 }); +} diff --git a/test/parallel/test-module-relative-lookup.js b/test/parallel/test-module-relative-lookup.js index 675c12c541fd4d..76af2b3b30c2e0 100644 --- a/test/parallel/test-module-relative-lookup.js +++ b/test/parallel/test-module-relative-lookup.js @@ -2,7 +2,7 @@ const common = require('../common'); const assert = require('assert'); -const _module = require('module'); // Avoid collision with global.module +const _module = require('module'); // Avoid collision with globalThis.module // Current directory gets highest priority for local modules function testFirstInPath(moduleName, isLocalModule) { diff --git a/test/parallel/test-module-setsourcemapssupport.js b/test/parallel/test-module-setsourcemapssupport.js new file mode 100644 index 00000000000000..ea3e396a5c5960 --- /dev/null +++ b/test/parallel/test-module-setsourcemapssupport.js @@ -0,0 +1,43 @@ +'use strict'; +require('../common'); +const assert = require('node:assert'); +const Module = require('node:module'); + +// This test verifies that the `Module.setSourceMapsSupport` throws on invalid +// argument inputs. + +{ + const unexpectedValues = [ + undefined, + null, + 1, + {}, + () => {}, + ]; + for (const it of unexpectedValues) { + assert.throws(() => { + Module.setSourceMapsSupport(it); + }, /ERR_INVALID_ARG_TYPE/); + } +} + +{ + const unexpectedValues = [ + null, + 1, + {}, + () => {}, + ]; + for (const it of unexpectedValues) { + assert.throws(() => { + Module.setSourceMapsSupport(true, { + nodeModules: it, + }); + }, /ERR_INVALID_ARG_TYPE/); + assert.throws(() => { + Module.setSourceMapsSupport(true, { + generatedCode: it, + }); + }, /ERR_INVALID_ARG_TYPE/); + } +} diff --git a/test/parallel/test-module-strip-types.js b/test/parallel/test-module-strip-types.js index 6e729a55936804..0f90039b563033 100644 --- a/test/parallel/test-module-strip-types.js +++ b/test/parallel/test-module-strip-types.js @@ -12,6 +12,12 @@ common.expectWarning( 'stripTypeScriptTypes is an experimental feature and might change at any time', ); +const sourceToBeTransformed = ` + namespace MathUtil { + export const add = (a: number, b: number) => a + b; + }`; +const sourceToBeTransformedMapping = 'UACY;aACK,MAAM,CAAC,GAAW,IAAc,IAAI;AACnD,GAFU,aAAA'; + test('stripTypeScriptTypes', () => { const source = 'const x: number = 1;'; const result = stripTypeScriptTypes(source); @@ -48,45 +54,52 @@ test('stripTypeScriptTypes sourceUrl throws when mode is strip', () => { }); test('stripTypeScriptTypes source map when mode is transform', () => { - const source = ` - namespace MathUtil { - export const add = (a: number, b: number) => a + b; - }`; - const result = stripTypeScriptTypes(source, { mode: 'transform', sourceMap: true }); + const result = stripTypeScriptTypes(sourceToBeTransformed, { mode: 'transform', sourceMap: true }); const script = new vm.Script(result); const sourceMap = { version: 3, - sources: [ - '<anon>', - ], - sourcesContent: [ - '\n namespace MathUtil {\n export const add = (a: number, b: number) => a + b;\n }', - ], + sources: [''], names: [], - mappings: ';UACY;aACK,MAAM,CAAC,GAAW,IAAc,IAAI;AACnD,GAFU,aAAA' + mappings: sourceToBeTransformedMapping, }; - assert(script.sourceMapURL, `sourceMappingURL=data:application/json;base64,${JSON.stringify(sourceMap)}`); + const inlinedSourceMap = Buffer.from(JSON.stringify(sourceMap)).toString('base64'); + assert.strictEqual(script.sourceMapURL, `data:application/json;base64,${inlinedSourceMap}`); }); test('stripTypeScriptTypes source map when mode is transform and sourceUrl', () => { - const source = ` - namespace MathUtil { - export const add = (a: number, b: number) => a + b; - }`; - const result = stripTypeScriptTypes(source, { mode: 'transform', sourceMap: true, sourceUrl: 'test.ts' }); + const result = stripTypeScriptTypes(sourceToBeTransformed, { + mode: 'transform', + sourceMap: true, + sourceUrl: 'test.ts' + }); + const script = new vm.Script(result); + const sourceMap = + { + version: 3, + sources: ['test.ts'], + names: [], + mappings: sourceToBeTransformedMapping, + }; + const inlinedSourceMap = Buffer.from(JSON.stringify(sourceMap)).toString('base64'); + assert.strictEqual(script.sourceMapURL, `data:application/json;base64,${inlinedSourceMap}`); +}); + +test('stripTypeScriptTypes source map when mode is transform and sourceUrl with non-latin-1 chars', () => { + const sourceUrl = 'dir%20with $unusual"chars?\'åß∂ƒ©∆¬…`.cts'; + const result = stripTypeScriptTypes(sourceToBeTransformed, { + mode: 'transform', + sourceMap: true, + sourceUrl, + }); const script = new vm.Script(result); const sourceMap = { version: 3, - sources: [ - 'test.ts', - ], - sourcesContent: [ - '\n namespace MathUtil {\n export const add = (a: number, b: number) => a + b;\n }', - ], + sources: [sourceUrl], names: [], - mappings: ';UACY;aACK,MAAM,CAAC,GAAW,IAAc,IAAI;AACnD,GAFU,aAAA' + mappings: sourceToBeTransformedMapping, }; - assert(script.sourceMapURL, `sourceMappingURL=data:application/json;base64,${JSON.stringify(sourceMap)}`); + const inlinedSourceMap = Buffer.from(JSON.stringify(sourceMap)).toString('base64'); + assert.strictEqual(script.sourceMapURL, `data:application/json;base64,${inlinedSourceMap}`); }); diff --git a/test/parallel/test-net-connect-memleak.js b/test/parallel/test-net-connect-memleak.js index 84f643746838b6..079e45f7223a8b 100644 --- a/test/parallel/test-net-connect-memleak.js +++ b/test/parallel/test-net-connect-memleak.js @@ -49,7 +49,7 @@ const gcListener = { ongc() { collected = true; } }; } function done(sock) { - global.gc(); + globalThis.gc(); setImmediate(() => { assert.strictEqual(collected, true); sock.end(); diff --git a/test/parallel/test-net-write-fully-async-buffer.js b/test/parallel/test-net-write-fully-async-buffer.js index 0dddb51bd76ade..042dd79cb03127 100644 --- a/test/parallel/test-net-write-fully-async-buffer.js +++ b/test/parallel/test-net-write-fully-async-buffer.js @@ -23,7 +23,7 @@ const server = net.createServer(common.mustCall(function(conn) { } while (conn.write(Buffer.from(data))); - global.gc({ type: 'minor' }); + globalThis.gc({ type: 'minor' }); // The buffer allocated above should still be alive. } diff --git a/test/parallel/test-net-write-fully-async-hex-string.js b/test/parallel/test-net-write-fully-async-hex-string.js index 37b5cd75c1385c..b80b09f3244585 100644 --- a/test/parallel/test-net-write-fully-async-hex-string.js +++ b/test/parallel/test-net-write-fully-async-hex-string.js @@ -21,7 +21,7 @@ const server = net.createServer(common.mustCall(function(conn) { } while (conn.write(data, 'hex')); - global.gc({ type: 'minor' }); + globalThis.gc({ type: 'minor' }); // The buffer allocated inside the .write() call should still be alive. } diff --git a/test/parallel/test-node-output-errors.mjs b/test/parallel/test-node-output-errors.mjs index 1f93330834ea64..3d913475d8d2a0 100644 --- a/test/parallel/test-node-output-errors.mjs +++ b/test/parallel/test-node-output-errors.mjs @@ -63,6 +63,8 @@ describe('errors output', { concurrency: !process.env.TEST_PARALLEL }, () => { { name: 'errors/if-error-has-good-stack.js', transform: errTransform }, { name: 'errors/throw_custom_error.js', transform: errTransform }, { name: 'errors/throw_error_with_getter_throw.js', transform: errTransform }, + { name: 'errors/throw_in_eval_anonymous.js', transform: errTransform }, + { name: 'errors/throw_in_eval_named.js', transform: errTransform }, { name: 'errors/throw_in_line_with_tabs.js', transform: errTransform }, { name: 'errors/throw_non_error.js', transform: errTransform }, { name: 'errors/throw_null.js', transform: errTransform }, diff --git a/test/parallel/test-node-output-eval.mjs b/test/parallel/test-node-output-eval.mjs new file mode 100644 index 00000000000000..d8c52176b1c3c3 --- /dev/null +++ b/test/parallel/test-node-output-eval.mjs @@ -0,0 +1,41 @@ +import '../common/index.mjs'; +import * as fixtures from '../common/fixtures.mjs'; +import * as snapshot from '../common/assertSnapshot.js'; +import { describe, it } from 'node:test'; + +describe('eval output', { concurrency: true }, () => { + function normalize(str) { + return str.replaceAll(snapshot.replaceWindowsPaths(process.cwd()), '') + .replaceAll(/\d+:\d+/g, '*:*'); + } + + const defaultTransform = snapshot.transform( + normalize, + snapshot.replaceWindowsLineEndings, + snapshot.replaceWindowsPaths, + snapshot.replaceNodeVersion, + removeStackTraces, + filterEmptyLines, + ); + + function removeStackTraces(output) { + return output.replaceAll(/^ *at .+$/gm, ''); + } + + function filterEmptyLines(output) { + return output.replaceAll(/^\s*$/gm, ''); + } + + const tests = [ + { name: 'eval/eval_messages.js' }, + { name: 'eval/stdin_messages.js' }, + { name: 'eval/stdin_typescript.js' }, + { name: 'eval/eval_typescript.js' }, + ]; + + for (const { name } of tests) { + it(name, async () => { + await snapshot.spawnAndAssert(fixtures.path(name), defaultTransform); + }); + } +}); diff --git a/test/parallel/test-node-output-sourcemaps.mjs b/test/parallel/test-node-output-sourcemaps.mjs index e9104db220867f..29cc5eb711f176 100644 --- a/test/parallel/test-node-output-sourcemaps.mjs +++ b/test/parallel/test-node-output-sourcemaps.mjs @@ -27,7 +27,10 @@ describe('sourcemaps output', { concurrency: !process.env.TEST_PARALLEL }, () => const tests = [ { name: 'source-map/output/source_map_disabled_by_api.js' }, + { name: 'source-map/output/source_map_disabled_by_process_api.js' }, { name: 'source-map/output/source_map_enabled_by_api.js' }, + { name: 'source-map/output/source_map_enabled_by_api_node_modules.js' }, + { name: 'source-map/output/source_map_enabled_by_process_api.js' }, { name: 'source-map/output/source_map_enclosing_function.js' }, { name: 'source-map/output/source_map_eval.js' }, { name: 'source-map/output/source_map_no_source_file.js' }, diff --git a/test/parallel/test-npm-install.js b/test/parallel/test-npm-install.js index ec848339b74004..fe9dbd46d9a7e0 100644 --- a/test/parallel/test-npm-install.js +++ b/test/parallel/test-npm-install.js @@ -2,6 +2,8 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); +if (common.isInsideDirWithUnusualChars) + common.skip('npm does not support this install path'); const path = require('path'); const exec = require('child_process').exec; diff --git a/test/parallel/test-performance-gc.js b/test/parallel/test-performance-gc.js index 9c4a3a850a22dd..9dddf7207f59d2 100644 --- a/test/parallel/test-performance-gc.js +++ b/test/parallel/test-performance-gc.js @@ -40,7 +40,7 @@ const kinds = [ obs.disconnect(); })); obs.observe({ entryTypes: ['gc'] }); - global.gc(); + globalThis.gc(); // Keep the event loop alive to witness the GC async callback happen. setImmediate(() => setImmediate(() => 0)); } @@ -51,6 +51,6 @@ const kinds = [ process.on('beforeExit', () => { assert(!didCall); didCall = true; - global.gc(); + globalThis.gc(); }); } diff --git a/test/parallel/test-performance-nodetiming-uvmetricsinfo.js b/test/parallel/test-performance-nodetiming-uvmetricsinfo.js index 3d32e0deb72e94..b67682b0ff3559 100644 --- a/test/parallel/test-performance-nodetiming-uvmetricsinfo.js +++ b/test/parallel/test-performance-nodetiming-uvmetricsinfo.js @@ -1,7 +1,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const { spawnSync } = require('node:child_process'); const assert = require('node:assert'); diff --git a/test/parallel/test-permission-allow-addons-cli.js b/test/parallel/test-permission-allow-addons-cli.js index 484f16e0acb3b5..342bdb6bc01e35 100644 --- a/test/parallel/test-permission-allow-addons-cli.js +++ b/test/parallel/test-permission-allow-addons-cli.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const { createRequire } = require('node:module'); const assert = require('node:assert'); diff --git a/test/parallel/test-permission-allow-child-process-cli.js b/test/parallel/test-permission-allow-child-process-cli.js index 1569b2b5e87459..cf7e79e208d389 100644 --- a/test/parallel/test-permission-allow-child-process-cli.js +++ b/test/parallel/test-permission-allow-child-process-cli.js @@ -2,11 +2,24 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + const assert = require('assert'); const childProcess = require('child_process'); +const fs = require('fs'); if (process.argv[2] === 'child') { + assert.throws(() => { + fs.writeFileSync(__filename, 'should not write'); + }, common.expectsError({ + code: 'ERR_ACCESS_DENIED', + permission: 'FileSystemWrite', + })); process.exit(0); } @@ -21,6 +34,7 @@ if (process.argv[2] === 'child') { // doesNotThrow childProcess.spawnSync(process.execPath, ['--version']); childProcess.execSync(...common.escapePOSIXShell`"${process.execPath}" --version`); - childProcess.fork(__filename, ['child']); + const child = childProcess.fork(__filename, ['child']); + child.on('close', common.mustCall()); childProcess.execFileSync(process.execPath, ['--version']); } diff --git a/test/parallel/test-permission-allow-wasi-cli.js b/test/parallel/test-permission-allow-wasi-cli.js index c6bea9fb39cf0a..20aca9292533d5 100644 --- a/test/parallel/test-permission-allow-wasi-cli.js +++ b/test/parallel/test-permission-allow-wasi-cli.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { WASI } = require('wasi'); diff --git a/test/parallel/test-permission-child-process-cli.js b/test/parallel/test-permission-child-process-cli.js index dfea008a60407b..7d8fbf0564d5ef 100644 --- a/test/parallel/test-permission-child-process-cli.js +++ b/test/parallel/test-permission-child-process-cli.js @@ -2,7 +2,12 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + const assert = require('assert'); const childProcess = require('child_process'); diff --git a/test/parallel/test-permission-dc-worker-threads.js b/test/parallel/test-permission-dc-worker-threads.js index 73cbf02981fa88..4fdb566f9e1701 100644 --- a/test/parallel/test-permission-dc-worker-threads.js +++ b/test/parallel/test-permission-dc-worker-threads.js @@ -1,4 +1,4 @@ -// Flags: --experimental-permission --allow-fs-read=* --experimental-test-module-mocks +// Flags: --permission --allow-fs-read=* --experimental-test-module-mocks 'use strict'; const common = require('../common'); diff --git a/test/parallel/test-permission-fs-absolute-path.js b/test/parallel/test-permission-fs-absolute-path.js index 2c2257052c8b02..c3bf9ef5cfb2d1 100644 --- a/test/parallel/test-permission-fs-absolute-path.js +++ b/test/parallel/test-permission-fs-absolute-path.js @@ -3,7 +3,11 @@ const common = require('../common'); const path = require('path'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { spawnSync } = require('child_process'); diff --git a/test/parallel/test-permission-fs-internal-module-stat.js b/test/parallel/test-permission-fs-internal-module-stat.js index fd0222cc34fa2e..ef99e4cca73a4f 100644 --- a/test/parallel/test-permission-fs-internal-module-stat.js +++ b/test/parallel/test-permission-fs-internal-module-stat.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} if (!common.hasCrypto) { common.skip('no crypto'); diff --git a/test/parallel/test-permission-fs-read.js b/test/parallel/test-permission-fs-read.js index ed8e866a6a4c10..b719207bdbd820 100644 --- a/test/parallel/test-permission-fs-read.js +++ b/test/parallel/test-permission-fs-read.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} if (!common.hasCrypto) { common.skip('no crypto'); diff --git a/test/parallel/test-permission-fs-relative-path.js b/test/parallel/test-permission-fs-relative-path.js index 3b115ee35d1227..9f4ce25f0f7d37 100644 --- a/test/parallel/test-permission-fs-relative-path.js +++ b/test/parallel/test-permission-fs-relative-path.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { spawnSync } = require('child_process'); diff --git a/test/parallel/test-permission-fs-repeat-path.js b/test/parallel/test-permission-fs-repeat-path.js new file mode 100644 index 00000000000000..d24197e905063d --- /dev/null +++ b/test/parallel/test-permission-fs-repeat-path.js @@ -0,0 +1,44 @@ +// Flags: --permission --allow-fs-read=* --allow-child-process +'use strict'; + +const common = require('../common'); +const path = require('path'); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +const assert = require('assert'); +const { spawnSync } = require('child_process'); + +{ + // Relative path as CLI args are supported + const { status, stdout } = spawnSync( + process.execPath, + [ + '--permission', + '--allow-fs-write', path.resolve('../fixtures/permission/deny/regular-file.md'), + '--allow-fs-write', path.resolve('../fixtures/permission/deny/regular-file.md'), + '--allow-fs-read', path.resolve('../fixtures/permission/deny/regular-file.md'), + '--allow-fs-read', path.resolve('../fixtures/permission/deny/regular-file.md'), + '-e', + ` + const path = require("path"); + const absolutePath = path.resolve("../fixtures/permission/deny/regular-file.md"); + const blockedPath = path.resolve("../fixtures/permission/deny/protected-file.md"); + console.log(process.permission.has("fs.write", absolutePath)); + console.log(process.permission.has("fs.read", absolutePath)); + console.log(process.permission.has("fs.read", blockedPath)); + console.log(process.permission.has("fs.write", blockedPath)); + `, + ] + ); + + const [fsWrite, fsRead, fsBlockedRead, fsBlockedWrite] = stdout.toString().split('\n'); + assert.strictEqual(status, 0); + assert.strictEqual(fsWrite, 'true'); + assert.strictEqual(fsRead, 'true'); + assert.strictEqual(fsBlockedRead, 'false'); + assert.strictEqual(fsBlockedWrite, 'false'); +} diff --git a/test/parallel/test-permission-fs-require.js b/test/parallel/test-permission-fs-require.js index 5d3a407708371e..8406f9ec052eae 100644 --- a/test/parallel/test-permission-fs-require.js +++ b/test/parallel/test-permission-fs-require.js @@ -2,7 +2,13 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + const fixtures = require('../common/fixtures'); const assert = require('node:assert'); diff --git a/test/parallel/test-permission-fs-symlink-relative.js b/test/parallel/test-permission-fs-symlink-relative.js index cf9b37ea79b059..e1fe5d064a8756 100644 --- a/test/parallel/test-permission-fs-symlink-relative.js +++ b/test/parallel/test-permission-fs-symlink-relative.js @@ -2,7 +2,12 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const path = require('path'); diff --git a/test/parallel/test-permission-fs-symlink-target-write.js b/test/parallel/test-permission-fs-symlink-target-write.js index f55b19fa764a89..1cffead4dd7e71 100644 --- a/test/parallel/test-permission-fs-symlink-target-write.js +++ b/test/parallel/test-permission-fs-symlink-target-write.js @@ -2,11 +2,19 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); -if (!common.canCreateSymLink()) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +if (!common.canCreateSymLink()) { common.skip('insufficient privileges'); -if (!common.hasCrypto) +} + +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); const fs = require('fs'); @@ -15,9 +23,7 @@ const tmpdir = require('../common/tmpdir'); const fixtures = require('../common/fixtures'); const { spawnSync } = require('child_process'); -{ - tmpdir.refresh(); -} +tmpdir.refresh(); const readOnlyFolder = tmpdir.resolve('read-only'); const readWriteFolder = tmpdir.resolve('read-write'); diff --git a/test/parallel/test-permission-fs-symlink.js b/test/parallel/test-permission-fs-symlink.js index 92965c960177d4..e5a80dba44ddf4 100644 --- a/test/parallel/test-permission-fs-symlink.js +++ b/test/parallel/test-permission-fs-symlink.js @@ -2,13 +2,19 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const fixtures = require('../common/fixtures'); -if (!common.canCreateSymLink()) +if (!common.canCreateSymLink()) { common.skip('insufficient privileges'); -if (!common.hasCrypto) +} +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-permission-fs-traversal-path.js b/test/parallel/test-permission-fs-traversal-path.js index 03571c2d01c861..ed9e434b6b862b 100644 --- a/test/parallel/test-permission-fs-traversal-path.js +++ b/test/parallel/test-permission-fs-traversal-path.js @@ -2,13 +2,20 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const fixtures = require('../common/fixtures'); -if (!common.canCreateSymLink()) +if (!common.canCreateSymLink()) { common.skip('insufficient privileges'); -if (!common.hasCrypto) +} + +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); const fs = require('fs'); diff --git a/test/parallel/test-permission-fs-wildcard.js b/test/parallel/test-permission-fs-wildcard.js index adca56ed0dba6d..1b67f37c2dcda2 100644 --- a/test/parallel/test-permission-fs-wildcard.js +++ b/test/parallel/test-permission-fs-wildcard.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const path = require('path'); diff --git a/test/parallel/test-permission-fs-windows-path.js b/test/parallel/test-permission-fs-windows-path.js index 6869b347cf283f..c3b3683b6479f7 100644 --- a/test/parallel/test-permission-fs-windows-path.js +++ b/test/parallel/test-permission-fs-windows-path.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const { spawnSync } = require('child_process'); diff --git a/test/parallel/test-permission-fs-write-report.js b/test/parallel/test-permission-fs-write-report.js index 111f73b7bcc1ed..a5f8d74904fedc 100644 --- a/test/parallel/test-permission-fs-write-report.js +++ b/test/parallel/test-permission-fs-write-report.js @@ -2,9 +2,15 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); -if (!common.hasCrypto) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); diff --git a/test/parallel/test-permission-fs-write-v8.js b/test/parallel/test-permission-fs-write-v8.js index 85cb9a5519b3af..1b8691969b7afb 100644 --- a/test/parallel/test-permission-fs-write-v8.js +++ b/test/parallel/test-permission-fs-write-v8.js @@ -2,9 +2,15 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); -if (!common.hasCrypto) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); const v8 = require('v8'); diff --git a/test/parallel/test-permission-fs-write.js b/test/parallel/test-permission-fs-write.js index 34eab7a40005db..385a37e2a92d86 100644 --- a/test/parallel/test-permission-fs-write.js +++ b/test/parallel/test-permission-fs-write.js @@ -2,9 +2,15 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); -if (!common.hasCrypto) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +if (!common.hasCrypto) { common.skip('no crypto'); +} const assert = require('assert'); const path = require('path'); diff --git a/test/parallel/test-permission-inspector-brk.js b/test/parallel/test-permission-inspector-brk.js index 61c9c799ba7eb6..3cc7caabd42ba1 100644 --- a/test/parallel/test-permission-inspector-brk.js +++ b/test/parallel/test-permission-inspector-brk.js @@ -5,8 +5,12 @@ const assert = require('assert'); const { spawnSync } = require('child_process'); const fixtures = require('../common/fixtures'); const file = fixtures.path('permission', 'inspector-brk.js'); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} -common.skipIfWorker(); common.skipIfInspectorDisabled(); // See https://github.com/nodejs/node/issues/53385 diff --git a/test/parallel/test-permission-inspector.js b/test/parallel/test-permission-inspector.js index 9d3bf485fc4348..4b52e12abca090 100644 --- a/test/parallel/test-permission-inspector.js +++ b/test/parallel/test-permission-inspector.js @@ -2,7 +2,12 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + common.skipIfInspectorDisabled(); const { Session } = require('inspector'); diff --git a/test/parallel/test-permission-no-addons.js b/test/parallel/test-permission-no-addons.js index a3ae6f4be10641..df08c4aa9f9db5 100644 --- a/test/parallel/test-permission-no-addons.js +++ b/test/parallel/test-permission-no-addons.js @@ -2,7 +2,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const { createRequire } = require('node:module'); const assert = require('node:assert'); diff --git a/test/parallel/test-permission-processbinding.js b/test/parallel/test-permission-processbinding.js index 47a1364f19e303..f5e33dac4deb52 100644 --- a/test/parallel/test-permission-processbinding.js +++ b/test/parallel/test-permission-processbinding.js @@ -1,7 +1,11 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} if (!common.hasCrypto) { common.skip('no crypto'); diff --git a/test/parallel/test-permission-sqlite-load-extension.js b/test/parallel/test-permission-sqlite-load-extension.js index 28d750d0cd06b6..1e6f7426ed9400 100644 --- a/test/parallel/test-permission-sqlite-load-extension.js +++ b/test/parallel/test-permission-sqlite-load-extension.js @@ -1,18 +1,16 @@ 'use strict'; const common = require('../common'); const assert = require('node:assert'); -const childProcess = require('child_process'); const code = `const sqlite = require('node:sqlite'); const db = new sqlite.DatabaseSync(':memory:', { allowExtension: true }); db.loadExtension('nonexistent');`.replace(/\n/g, ' '); -childProcess.exec( - `${process.execPath} --permission -e "${code}"`, - {}, - common.mustCall((err, _, stderr) => { - assert.strictEqual(err.code, 1); - assert.match(stderr, /Error: Cannot load SQLite extensions when the permission model is enabled/); - assert.match(stderr, /code: 'ERR_LOAD_SQLITE_EXTENSION'/); - }) -); +common.spawnPromisified( + process.execPath, + ['--permission', '--eval', code], +).then(common.mustCall(({ code, stderr }) => { + assert.match(stderr, /Error: Cannot load SQLite extensions when the permission model is enabled/); + assert.match(stderr, /code: 'ERR_LOAD_SQLITE_EXTENSION'/); + assert.strictEqual(code, 1); +})); diff --git a/test/parallel/test-permission-worker-threads-cli.js b/test/parallel/test-permission-worker-threads-cli.js index efd98b2a3881aa..cf397c280474c1 100644 --- a/test/parallel/test-permission-worker-threads-cli.js +++ b/test/parallel/test-permission-worker-threads-cli.js @@ -2,13 +2,17 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); -const assert = require('assert'); const { Worker, isMainThread, } = require('worker_threads'); +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} + +const assert = require('assert'); + // Guarantee the initial state { assert.ok(!process.permission.has('worker')); diff --git a/test/parallel/test-pipe-file-to-http.js b/test/parallel/test-pipe-file-to-http.js index 82bdbe6a832a98..ffbab21f71fd9d 100644 --- a/test/parallel/test-pipe-file-to-http.js +++ b/test/parallel/test-pipe-file-to-http.js @@ -54,7 +54,12 @@ const server = http.createServer((req, res) => { server.listen(0); server.on('listening', () => { - common.createZeroFilledFile(filename); + + // Create a zero-filled file + const fd = fs.openSync(filename, 'w'); + fs.ftruncateSync(fd, 10 * 1024 * 1024); + fs.closeSync(fd); + makeRequest(); }); diff --git a/test/parallel/test-preload-self-referential.js b/test/parallel/test-preload-self-referential.js index 867e1c67983c83..68681332978ea6 100644 --- a/test/parallel/test-preload-self-referential.js +++ b/test/parallel/test-preload-self-referential.js @@ -4,11 +4,13 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); const assert = require('assert'); const { exec } = require('child_process'); +const { isMainThread } = require('worker_threads'); const nodeBinary = process.argv[0]; -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const selfRefModule = fixtures.path('self_ref_module'); const fixtureA = fixtures.path('printA.js'); diff --git a/test/parallel/test-primitive-timer-leak.js b/test/parallel/test-primitive-timer-leak.js index d590a0347b9cac..a0fe2765e1282d 100644 --- a/test/parallel/test-primitive-timer-leak.js +++ b/test/parallel/test-primitive-timer-leak.js @@ -5,7 +5,7 @@ const { onGC } = require('../common/gc'); // See https://github.com/nodejs/node/issues/53335 const poller = setInterval(() => { - global.gc(); + globalThis.gc(); }, 100); let count = 0; diff --git a/test/parallel/test-process-abort.js b/test/parallel/test-process-abort.js index 665e1399a3f362..34353befb02a44 100644 --- a/test/parallel/test-process-abort.js +++ b/test/parallel/test-process-abort.js @@ -2,9 +2,11 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.abort() is not available in Workers'); +} // Check that our built-in methods do not have a prototype/constructor behaviour // if they don't need to. This could be tested for any of our C++ methods. diff --git a/test/parallel/test-process-beforeexit-throw-exit.js b/test/parallel/test-process-beforeexit-throw-exit.js index 6e9d764be90baa..c967d3a62712a7 100644 --- a/test/parallel/test-process-beforeexit-throw-exit.js +++ b/test/parallel/test-process-beforeexit-throw-exit.js @@ -1,6 +1,10 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} // Test that 'exit' is emitted if 'beforeExit' throws. diff --git a/test/parallel/test-process-chdir-errormessage.js b/test/parallel/test-process-chdir-errormessage.js index 0ed368287b377e..727a13f6f63f16 100644 --- a/test/parallel/test-process-chdir-errormessage.js +++ b/test/parallel/test-process-chdir-errormessage.js @@ -1,8 +1,11 @@ 'use strict'; const common = require('../common'); -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); assert.throws( diff --git a/test/parallel/test-process-chdir.js b/test/parallel/test-process-chdir.js index ee59df853b24ce..42d2a60c8ec63e 100644 --- a/test/parallel/test-process-chdir.js +++ b/test/parallel/test-process-chdir.js @@ -4,9 +4,11 @@ const common = require('../common'); const assert = require('assert'); const fs = require('fs'); const path = require('path'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const tmpdir = require('../common/tmpdir'); diff --git a/test/parallel/test-process-env-allowed-flags-are-documented.js b/test/parallel/test-process-env-allowed-flags-are-documented.js index 3480b2c1482f17..730adb682ad7f1 100644 --- a/test/parallel/test-process-env-allowed-flags-are-documented.js +++ b/test/parallel/test-process-env-allowed-flags-are-documented.js @@ -5,6 +5,7 @@ const common = require('../common'); const assert = require('assert'); const fs = require('fs'); const path = require('path'); +const { hasOpenSSL3 } = require('../common/crypto'); const rootDir = path.resolve(__dirname, '..', '..'); const cliMd = path.join(rootDir, 'doc', 'api', 'cli.md'); @@ -43,7 +44,7 @@ for (const line of [...nodeOptionsLines, ...v8OptionsLines]) { } } -if (!common.hasOpenSSL3) { +if (!hasOpenSSL3) { documented.delete('--openssl-legacy-provider'); documented.delete('--openssl-shared-config'); } @@ -55,8 +56,8 @@ const conditionalOpts = [ filter: (opt) => { return [ '--openssl-config', - common.hasOpenSSL3 ? '--openssl-legacy-provider' : '', - common.hasOpenSSL3 ? '--openssl-shared-config' : '', + hasOpenSSL3 ? '--openssl-legacy-provider' : '', + hasOpenSSL3 ? '--openssl-shared-config' : '', '--tls-cipher-list', '--use-bundled-ca', '--use-openssl-ca', diff --git a/test/parallel/test-process-env-tz.js b/test/parallel/test-process-env-tz.js index dcc69ed4bf1d3b..b7bf730a9afa38 100644 --- a/test/parallel/test-process-env-tz.js +++ b/test/parallel/test-process-env-tz.js @@ -1,12 +1,15 @@ 'use strict'; const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.env.TZ is not intercepted in Workers'); +} -if (common.isWindows) // Using a different TZ format. +if (common.isWindows) { // Using a different TZ format. common.skip('todo: test on Windows'); +} const date = new Date('2018-04-14T12:34:56.789Z'); diff --git a/test/parallel/test-process-euid-egid.js b/test/parallel/test-process-euid-egid.js index 11a8cfa0ed2b3c..3f4934233a6308 100644 --- a/test/parallel/test-process-euid-egid.js +++ b/test/parallel/test-process-euid-egid.js @@ -3,6 +3,8 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); + if (common.isWindows) { assert.strictEqual(process.geteuid, undefined); assert.strictEqual(process.getegid, undefined); @@ -11,8 +13,9 @@ if (common.isWindows) { return; } -if (!common.isMainThread) +if (!isMainThread) { return; +} assert.throws(() => { process.seteuid({}); diff --git a/test/parallel/test-process-exit-handler.js b/test/parallel/test-process-exit-handler.js index d74e320fe63082..2546aa60a5cf89 100644 --- a/test/parallel/test-process-exit-handler.js +++ b/test/parallel/test-process-exit-handler.js @@ -1,8 +1,10 @@ 'use strict'; const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('execArgv does not affect Workers'); +} // This test ensures that no asynchronous operations are performed in the 'exit' // handler. diff --git a/test/parallel/test-process-get-builtin.mjs b/test/parallel/test-process-get-builtin.mjs index 4b840585f2ad33..f22cf8a1a4728b 100644 --- a/test/parallel/test-process-get-builtin.mjs +++ b/test/parallel/test-process-get-builtin.mjs @@ -1,6 +1,7 @@ -import { isMainThread, hasCrypto, hasIntl } from '../common/index.mjs'; +import { hasCrypto, hasIntl } from '../common/index.mjs'; import assert from 'node:assert'; import { builtinModules } from 'node:module'; +import { isMainThread } from 'node:worker_threads'; for (const invalid of [1, undefined, null, false, [], {}, () => {}, Symbol('test')]) { assert.throws(() => process.getBuiltinModule(invalid), { code: 'ERR_INVALID_ARG_TYPE' }); diff --git a/test/parallel/test-process-initgroups.js b/test/parallel/test-process-initgroups.js index 6b4e3bdf1470b4..52597e096175e9 100644 --- a/test/parallel/test-process-initgroups.js +++ b/test/parallel/test-process-initgroups.js @@ -7,8 +7,11 @@ if (common.isWindows) { return; } -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { return; +} [undefined, null, true, {}, [], () => {}].forEach((val) => { assert.throws( diff --git a/test/parallel/test-process-load-env-file.js b/test/parallel/test-process-load-env-file.js index 1dada3aa9b7016..ec99c099d11b80 100644 --- a/test/parallel/test-process-load-env-file.js +++ b/test/parallel/test-process-load-env-file.js @@ -5,6 +5,7 @@ const fixtures = require('../../test/common/fixtures'); const assert = require('node:assert'); const { describe, it } = require('node:test'); const { join } = require('node:path'); +const { isMainThread } = require('worker_threads'); const basicValidEnvFilePath = fixtures.path('dotenv/basic-valid.env'); const validEnvFilePath = fixtures.path('dotenv/valid.env'); @@ -58,7 +59,7 @@ describe('process.loadEnvFile()', () => { const originalCwd = process.cwd(); try { - if (common.isMainThread) { + if (isMainThread) { process.chdir(join(originalCwd, 'lib')); } @@ -66,7 +67,7 @@ describe('process.loadEnvFile()', () => { process.loadEnvFile(); }, { code: 'ENOENT', syscall: 'open', path: '.env' }); } finally { - if (common.isMainThread) { + if (isMainThread) { process.chdir(originalCwd); } } diff --git a/test/parallel/test-process-ref-unref.js b/test/parallel/test-process-ref-unref.js new file mode 100644 index 00000000000000..19665703cfe341 --- /dev/null +++ b/test/parallel/test-process-ref-unref.js @@ -0,0 +1,60 @@ +'use strict'; + +require('../common'); + +const { + describe, + it, +} = require('node:test'); + +const { + strictEqual, +} = require('node:assert'); + +class Foo { + refCalled = 0; + unrefCalled = 0; + ref() { + this.refCalled++; + } + unref() { + this.unrefCalled++; + } +} + +class Foo2 { + refCalled = 0; + unrefCalled = 0; + [Symbol.for('nodejs.ref')]() { + this.refCalled++; + } + [Symbol.for('nodejs.unref')]() { + this.unrefCalled++; + } +} + +describe('process.ref/unref work as expected', () => { + it('refs...', () => { + // Objects that implement the new Symbol-based API + // just work. + const foo1 = new Foo(); + const foo2 = new Foo2(); + process.ref(foo1); + process.unref(foo1); + process.ref(foo2); + process.unref(foo2); + strictEqual(foo1.refCalled, 1); + strictEqual(foo1.unrefCalled, 1); + strictEqual(foo2.refCalled, 1); + strictEqual(foo2.unrefCalled, 1); + + // Objects that implement the legacy API also just work. + const i = setInterval(() => {}, 1000); + strictEqual(i.hasRef(), true); + process.unref(i); + strictEqual(i.hasRef(), false); + process.ref(i); + strictEqual(i.hasRef(), true); + clearInterval(i); + }); +}); diff --git a/test/parallel/test-process-setgroups.js b/test/parallel/test-process-setgroups.js index 9506f24a5f3447..49d147b6c2ddf5 100644 --- a/test/parallel/test-process-setgroups.js +++ b/test/parallel/test-process-setgroups.js @@ -1,14 +1,16 @@ 'use strict'; const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); if (common.isWindows) { assert.strictEqual(process.setgroups, undefined); return; } -if (!common.isMainThread) +if (!isMainThread) { return; +} assert.throws( () => { diff --git a/test/parallel/test-process-uid-gid.js b/test/parallel/test-process-uid-gid.js index 54e87a6ff5c6e0..10eee45af1555b 100644 --- a/test/parallel/test-process-uid-gid.js +++ b/test/parallel/test-process-uid-gid.js @@ -23,6 +23,7 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); if (common.isWindows) { // uid/gid functions are POSIX only. @@ -33,8 +34,9 @@ if (common.isWindows) { return; } -if (!common.isMainThread) +if (!isMainThread) { return; +} assert.throws(() => { process.setuid({}); diff --git a/test/parallel/test-process-umask-mask.js b/test/parallel/test-process-umask-mask.js index d599379761fd40..f0a67b8f14e895 100644 --- a/test/parallel/test-process-umask-mask.js +++ b/test/parallel/test-process-umask-mask.js @@ -5,8 +5,9 @@ const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) common.skip('Setting process.umask is not supported in Workers'); let mask; diff --git a/test/parallel/test-process-umask.js b/test/parallel/test-process-umask.js index e90955f394df4e..594f75ebebed2b 100644 --- a/test/parallel/test-process-umask.js +++ b/test/parallel/test-process-umask.js @@ -22,8 +22,9 @@ 'use strict'; const common = require('../common'); const assert = require('assert'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) { +if (!isMainThread) { assert.strictEqual(typeof process.umask(), 'number'); assert.throws(() => { process.umask('0664'); diff --git a/test/parallel/test-process-versions.js b/test/parallel/test-process-versions.js index 3b8af4b5b52526..0a2a4014f18d6b 100644 --- a/test/parallel/test-process-versions.js +++ b/test/parallel/test-process-versions.js @@ -85,11 +85,12 @@ assert.match(process.versions.modules, /^\d+$/); assert.match(process.versions.cjs_module_lexer, commonTemplate); if (common.hasCrypto) { + const { hasOpenSSL3 } = require('../common/crypto'); assert.match(process.versions.ncrypto, commonTemplate); if (process.config.variables.node_shared_openssl) { assert.ok(process.versions.openssl); } else { - const versionRegex = common.hasOpenSSL3 ? + const versionRegex = hasOpenSSL3 ? // The following also matches a development version of OpenSSL 3.x which // can be in the format '3.0.0-alpha4-dev'. This can be handy when // building and linking against the main development branch of OpenSSL. diff --git a/test/parallel/test-readline-interface-no-trailing-newline.js b/test/parallel/test-readline-interface-no-trailing-newline.js index b3392db8619c95..398b85838c8b71 100644 --- a/test/parallel/test-readline-interface-no-trailing-newline.js +++ b/test/parallel/test-readline-interface-no-trailing-newline.js @@ -3,7 +3,9 @@ const common = require('../common'); const ArrayStream = require('../common/arraystream'); const assert = require('assert'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const readline = require('readline'); const rli = new readline.Interface({ diff --git a/test/parallel/test-readline-interface-recursive-writes.js b/test/parallel/test-readline-interface-recursive-writes.js index 3a0aee5be9d619..ea3df1968d08d8 100644 --- a/test/parallel/test-readline-interface-recursive-writes.js +++ b/test/parallel/test-readline-interface-recursive-writes.js @@ -3,7 +3,9 @@ const common = require('../common'); const ArrayStream = require('../common/arraystream'); const assert = require('assert'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const readline = require('readline'); const rli = new readline.Interface({ diff --git a/test/parallel/test-readline-interface.js b/test/parallel/test-readline-interface.js index a90e07d235030f..12ba0c709622e9 100644 --- a/test/parallel/test-readline-interface.js +++ b/test/parallel/test-readline-interface.js @@ -22,7 +22,10 @@ // Flags: --expose-internals 'use strict'; const common = require('../common'); -common.skipIfDumbTerminal(); + +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const assert = require('assert'); const readline = require('readline'); diff --git a/test/parallel/test-readline-position.js b/test/parallel/test-readline-position.js index 3603a42ecedc68..ac2fe43b37a097 100644 --- a/test/parallel/test-readline-position.js +++ b/test/parallel/test-readline-position.js @@ -7,7 +7,9 @@ const assert = require('assert'); const ctrlU = { ctrl: true, name: 'u' }; -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} { const input = new PassThrough(); diff --git a/test/parallel/test-readline-promises-interface.js b/test/parallel/test-readline-promises-interface.js index 8e42d977301267..97424c1372629c 100644 --- a/test/parallel/test-readline-promises-interface.js +++ b/test/parallel/test-readline-promises-interface.js @@ -1,7 +1,10 @@ // Flags: --expose-internals 'use strict'; const common = require('../common'); -common.skipIfDumbTerminal(); + +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const assert = require('assert'); const readline = require('readline/promises'); diff --git a/test/parallel/test-readline-promises-tab-complete.js b/test/parallel/test-readline-promises-tab-complete.js index fd32900e71d096..d8b0ac30ee779d 100644 --- a/test/parallel/test-readline-promises-tab-complete.js +++ b/test/parallel/test-readline-promises-tab-complete.js @@ -8,7 +8,9 @@ const assert = require('assert'); const { EventEmitter } = require('events'); const { getStringWidth } = require('internal/util/inspect'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} // This test verifies that the tab completion supports unicode and the writes // are limited to the minimum. diff --git a/test/parallel/test-readline-tab-complete.js b/test/parallel/test-readline-tab-complete.js index 64df237d56ad44..5b7b19102f412a 100644 --- a/test/parallel/test-readline-tab-complete.js +++ b/test/parallel/test-readline-tab-complete.js @@ -8,7 +8,9 @@ const assert = require('assert'); const EventEmitter = require('events').EventEmitter; const { getStringWidth } = require('internal/util/inspect'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} // This test verifies that the tab completion supports unicode and the writes // are limited to the minimum. diff --git a/test/parallel/test-readline-undefined-columns.js b/test/parallel/test-readline-undefined-columns.js index 25bafe957fa40a..d7000a16dd88a7 100644 --- a/test/parallel/test-readline-undefined-columns.js +++ b/test/parallel/test-readline-undefined-columns.js @@ -5,7 +5,9 @@ const assert = require('assert'); const PassThrough = require('stream').PassThrough; const readline = require('readline'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} // Checks that tab completion still works // when output column size is undefined diff --git a/test/parallel/test-readline.js b/test/parallel/test-readline.js index 77799fc14cf75f..0cf577942915a6 100644 --- a/test/parallel/test-readline.js +++ b/test/parallel/test-readline.js @@ -4,7 +4,9 @@ const { PassThrough } = require('stream'); const readline = require('readline'); const assert = require('assert'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} { const input = new PassThrough(); diff --git a/test/parallel/test-repl-autocomplete.js b/test/parallel/test-repl-autocomplete.js index cb17523494b2ff..a68322c501e264 100644 --- a/test/parallel/test-repl-autocomplete.js +++ b/test/parallel/test-repl-autocomplete.js @@ -9,7 +9,9 @@ const assert = require('assert'); const fs = require('fs'); const { inspect } = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); diff --git a/test/parallel/test-repl-autolibs.js b/test/parallel/test-repl-autolibs.js index 5cf3b1497221d0..a1eb476ef530b1 100644 --- a/test/parallel/test-repl-autolibs.js +++ b/test/parallel/test-repl-autolibs.js @@ -41,7 +41,7 @@ function test1() { assert.strictEqual(data, `${util.inspect(require('fs'), null, 2, false)}\n`); // Globally added lib matches required lib - assert.strictEqual(global.fs, require('fs')); + assert.strictEqual(globalThis.fs, require('fs')); test2(); } }; @@ -58,11 +58,11 @@ function test2() { // REPL response error message assert.strictEqual(data, '{}\n'); // Original value wasn't overwritten - assert.strictEqual(val, global.url); + assert.strictEqual(val, globalThis.url); } }; const val = {}; - global.url = val; + globalThis.url = val; common.allowGlobals(val); assert(!gotWrite); putIn.run(['url']); diff --git a/test/parallel/test-repl-editor.js b/test/parallel/test-repl-editor.js index e260f5e89174a8..fee647d0478e50 100644 --- a/test/parallel/test-repl-editor.js +++ b/test/parallel/test-repl-editor.js @@ -5,7 +5,9 @@ const assert = require('assert'); const repl = require('repl'); const ArrayStream = require('../common/arraystream'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} // \u001b[nG - Moves the cursor to n st column // \u001b[0J - Clear screen diff --git a/test/parallel/test-repl-history-navigation.js b/test/parallel/test-repl-history-navigation.js index 4df120d7cb9eae..64317be960e8d1 100644 --- a/test/parallel/test-repl-history-navigation.js +++ b/test/parallel/test-repl-history-navigation.js @@ -9,7 +9,9 @@ const assert = require('assert'); const fs = require('fs'); const { inspect } = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); diff --git a/test/parallel/test-repl-load-multiline-no-trailing-newline.js b/test/parallel/test-repl-load-multiline-no-trailing-newline.js index f57638d2521bbe..8fda91e35d1030 100644 --- a/test/parallel/test-repl-load-multiline-no-trailing-newline.js +++ b/test/parallel/test-repl-load-multiline-no-trailing-newline.js @@ -5,7 +5,9 @@ const fixtures = require('../common/fixtures'); const assert = require('assert'); const repl = require('repl'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const command = `.load ${fixtures.path('repl-load-multiline-no-trailing-newline.js')}`; const terminalCode = '\u001b[1G\u001b[0J \u001b[1G'; diff --git a/test/parallel/test-repl-load-multiline.js b/test/parallel/test-repl-load-multiline.js index 4fcf206bef1be1..920f4b1c25d144 100644 --- a/test/parallel/test-repl-load-multiline.js +++ b/test/parallel/test-repl-load-multiline.js @@ -5,7 +5,9 @@ const fixtures = require('../common/fixtures'); const assert = require('assert'); const repl = require('repl'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const command = `.load ${fixtures.path('repl-load-multiline.js')}`; const terminalCode = '\u001b[1G\u001b[0J \u001b[1G'; diff --git a/test/parallel/test-repl-mode.js b/test/parallel/test-repl-mode.js index aca8418904d082..f8a54d34089b00 100644 --- a/test/parallel/test-repl-mode.js +++ b/test/parallel/test-repl-mode.js @@ -4,7 +4,9 @@ const assert = require('assert'); const Stream = require('stream'); const repl = require('repl'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const tests = [ testSloppyMode, diff --git a/test/parallel/test-repl-permission-model.js b/test/parallel/test-repl-permission-model.js index 938f5121163a23..ab5c7bff06cde8 100644 --- a/test/parallel/test-repl-permission-model.js +++ b/test/parallel/test-repl-permission-model.js @@ -8,7 +8,9 @@ const REPL = require('internal/repl'); const assert = require('assert'); const { inspect } = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} // Create an input stream specialized for testing an array of actions class ActionStream extends stream.Stream { diff --git a/test/parallel/test-repl-persistent-history.js b/test/parallel/test-repl-persistent-history.js index 99ba92eda4cf3d..f5e2d48139f449 100644 --- a/test/parallel/test-repl-persistent-history.js +++ b/test/parallel/test-repl-persistent-history.js @@ -11,7 +11,9 @@ const fs = require('fs'); const os = require('os'); const util = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); diff --git a/test/parallel/test-repl-programmatic-history.js b/test/parallel/test-repl-programmatic-history.js index 1ae5123c6c8ea1..aae15eb752c862 100644 --- a/test/parallel/test-repl-programmatic-history.js +++ b/test/parallel/test-repl-programmatic-history.js @@ -9,7 +9,9 @@ const fs = require('fs'); const os = require('os'); const util = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); diff --git a/test/parallel/test-repl-require-self-referential.js b/test/parallel/test-repl-require-self-referential.js index 7ced6dbf11721e..9a4fe000bbb7e3 100644 --- a/test/parallel/test-repl-require-self-referential.js +++ b/test/parallel/test-repl-require-self-referential.js @@ -4,9 +4,11 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); const assert = require('assert'); const { spawn } = require('child_process'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const selfRefModule = fixtures.path('self_ref_module'); const child = spawn(process.execPath, diff --git a/test/parallel/test-repl-require.js b/test/parallel/test-repl-require.js index fc431dea9f0f69..e740acef08b068 100644 --- a/test/parallel/test-repl-require.js +++ b/test/parallel/test-repl-require.js @@ -4,9 +4,11 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); const assert = require('assert'); const net = require('net'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} process.chdir(fixtures.fixturesDir); const repl = require('repl'); diff --git a/test/parallel/test-repl-reverse-search.js b/test/parallel/test-repl-reverse-search.js index 93fb037c392c01..246488cbd0ef5f 100644 --- a/test/parallel/test-repl-reverse-search.js +++ b/test/parallel/test-repl-reverse-search.js @@ -9,7 +9,10 @@ const assert = require('assert'); const fs = require('fs'); const { inspect } = require('util'); -common.skipIfDumbTerminal(); +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} + common.allowGlobals('aaaa'); const tmpdir = require('../common/tmpdir'); diff --git a/test/parallel/test-repl-sigint-nested-eval.js b/test/parallel/test-repl-sigint-nested-eval.js index 62eb46e0af6759..7955cf413f7c49 100644 --- a/test/parallel/test-repl-sigint-nested-eval.js +++ b/test/parallel/test-repl-sigint-nested-eval.js @@ -4,8 +4,12 @@ if (common.isWindows) { // No way to send CTRL_C_EVENT to processes from JS right now. common.skip('platform not supported'); } -if (!common.isMainThread) + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('No signal handling available in Workers'); +} const assert = require('assert'); const spawn = require('child_process').spawn; diff --git a/test/parallel/test-repl-sigint.js b/test/parallel/test-repl-sigint.js index 8ad0b2f5c2c853..f4087b11d488d6 100644 --- a/test/parallel/test-repl-sigint.js +++ b/test/parallel/test-repl-sigint.js @@ -4,8 +4,12 @@ if (common.isWindows) { // No way to send CTRL_C_EVENT to processes from JS right now. common.skip('platform not supported'); } -if (!common.isMainThread) + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('No signal handling available in Workers'); +} const assert = require('assert'); const spawn = require('child_process').spawn; diff --git a/test/parallel/test-repl-strict-mode-previews.js b/test/parallel/test-repl-strict-mode-previews.js index a05e11b39cf3ee..e7fc1ea5191ea3 100644 --- a/test/parallel/test-repl-strict-mode-previews.js +++ b/test/parallel/test-repl-strict-mode-previews.js @@ -5,7 +5,10 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfDumbTerminal(); + +if (process.env.TERM === 'dumb') { + common.skip('skipping - dumb terminal'); +} if (process.argv[2] === 'child') { const stream = require('stream'); diff --git a/test/parallel/test-repl-tab-complete-import.js b/test/parallel/test-repl-tab-complete-import.js index e328d95db5986c..60f97835c970bb 100644 --- a/test/parallel/test-repl-tab-complete-import.js +++ b/test/parallel/test-repl-tab-complete-import.js @@ -7,8 +7,11 @@ const assert = require('assert'); const { builtinModules } = require('module'); const publicModules = builtinModules.filter((lib) => !lib.startsWith('_')); -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} // We have to change the directory to ../fixtures before requiring repl // in order to make the tests for completion of node_modules work properly diff --git a/test/parallel/test-repl-tab-complete.js b/test/parallel/test-repl-tab-complete.js index 57278f52ccf2c6..b8d29c7967c10d 100644 --- a/test/parallel/test-repl-tab-complete.js +++ b/test/parallel/test-repl-tab-complete.js @@ -34,9 +34,11 @@ const { builtinModules } = require('module'); const publicModules = builtinModules.filter((lib) => !lib.startsWith('_')); const hasInspector = process.features.inspector; +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} // We have to change the directory to ../fixtures before requiring repl // in order to make the tests for completion of node_modules work properly diff --git a/test/parallel/test-repl-underscore.js b/test/parallel/test-repl-underscore.js index 0f8103ce4573cd..8ce9de5563acfb 100644 --- a/test/parallel/test-repl-underscore.js +++ b/test/parallel/test-repl-underscore.js @@ -150,8 +150,8 @@ function testResetContextGlobal() { ]); // Delete globals leaked by REPL when `useGlobal` is `true` - delete global.module; - delete global.require; + delete globalThis.module; + delete globalThis.require; } function testError() { diff --git a/test/parallel/test-repl-use-global.js b/test/parallel/test-repl-use-global.js index 3457d0c5ba7210..06cda54f4d6fa2 100644 --- a/test/parallel/test-repl-use-global.js +++ b/test/parallel/test-repl-use-global.js @@ -20,10 +20,10 @@ const globalTest = (useGlobal, cb, output) => (err, repl) => { let str = ''; output.on('data', (data) => (str += data)); - global.lunch = 'tacos'; - repl.write('global.lunch;\n'); + globalThis.lunch = 'tacos'; + repl.write('globalThis.lunch;\n'); repl.close(); - delete global.lunch; + delete globalThis.lunch; cb(null, str.trim()); }; diff --git a/test/parallel/test-repl.js b/test/parallel/test-repl.js index 610c7813e0439c..0b29b973ee7e5c 100644 --- a/test/parallel/test-repl.js +++ b/test/parallel/test-repl.js @@ -36,7 +36,7 @@ const prompt_tcp = 'node via TCP socket> '; const moduleFilename = fixtures.path('a'); // Function for REPL to run -global.invoke_me = function(arg) { +globalThis.invoke_me = function(arg) { return `invoked ${arg}`; }; @@ -792,7 +792,10 @@ const errorTests = [ expect: [ 'Object [console] {', ' log: [Function: log],', + ' info: [Function: info],', + ' debug: [Function: debug],', ' warn: [Function: warn],', + ' error: [Function: error],', ' dir: [Function: dir],', ' time: [Function: time],', ' timeEnd: [Function: timeEnd],', @@ -805,10 +808,7 @@ const errorTests = [ ' group: [Function: group],', ' groupEnd: [Function: groupEnd],', ' table: [Function: table],', - / {2}debug: \[Function: (debug|log)],/, - / {2}info: \[Function: (info|log)],/, / {2}dirxml: \[Function: (dirxml|log)],/, - / {2}error: \[Function: (error|warn)],/, / {2}groupCollapsed: \[Function: (groupCollapsed|group)],/, / {2}Console: \[Function: Console],?/, ...process.features.inspector ? [ @@ -937,8 +937,8 @@ alternatively use dynamic import: const { default: alias, namedExport } = await socket.end(); } - common.allowGlobals(global.invoke_me, global.message, global.a, global.blah, - global.I, global.f, global.path, global.x, global.name, global.foo); + common.allowGlobals(globalThis.invoke_me, globalThis.message, globalThis.a, globalThis.blah, + globalThis.I, globalThis.f, globalThis.path, globalThis.x, globalThis.name, globalThis.foo); })().then(common.mustCall()); function startTCPRepl() { diff --git a/test/parallel/test-require-resolve-opts-paths-relative.js b/test/parallel/test-require-resolve-opts-paths-relative.js new file mode 100644 index 00000000000000..13d17d478b753d --- /dev/null +++ b/test/parallel/test-require-resolve-opts-paths-relative.js @@ -0,0 +1,44 @@ +'use strict'; + +const common = require('../common'); +const assert = require('assert'); +const fixtures = require('../common/fixtures'); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) + common.skip('process.chdir is not available in Workers'); + +const subdir = fixtures.path('module-require', 'relative', 'subdir'); + +process.chdir(subdir); + +// Parent directory paths (`..`) work as intended +{ + assert(require.resolve('.', { paths: ['../'] }).endsWith('index.js')); + assert(require.resolve('./index.js', { paths: ['../'] }).endsWith('index.js')); + + // paths: [".."] should resolve like paths: ["../"] + assert(require.resolve('.', { paths: ['..'] }).endsWith('index.js')); + assert(require.resolve('./index.js', { paths: ['..'] }).endsWith('index.js')); +} + +process.chdir('..'); + +// Current directory paths (`.`) work as intended +{ + assert(require.resolve('.', { paths: ['.'] }).endsWith('index.js')); + assert(require.resolve('./index.js', { paths: ['./'] }).endsWith('index.js')); + + // paths: ["."] should resolve like paths: ["../"] + assert(require.resolve('.', { paths: ['.'] }).endsWith('index.js')); + assert(require.resolve('./index.js', { paths: ['.'] }).endsWith('index.js')); +} + +// Sub directory paths work as intended +{ + // assert.deepStrictEqual(fs.readdirSync('./subdir'), [5]); + assert(require.resolve('./relative-subdir.js', { paths: ['./subdir'] }).endsWith('relative-subdir.js')); + + // paths: ["subdir"] should resolve like paths: ["./subdir"] + assert(require.resolve('./relative-subdir.js', { paths: ['subdir'] }).endsWith('relative-subdir.js')); +} diff --git a/test/parallel/test-require-symlink.js b/test/parallel/test-require-symlink.js index 0c4477023bc90b..9ca543e8d64ca4 100644 --- a/test/parallel/test-require-symlink.js +++ b/test/parallel/test-require-symlink.js @@ -2,10 +2,14 @@ 'use strict'; const common = require('../common'); -if (!common.canCreateSymLink()) +if (!common.canCreateSymLink()) { common.skip('insufficient privileges'); -if (!common.isMainThread) +} +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const assert = require('assert'); const { spawn } = require('child_process'); diff --git a/test/parallel/test-runner-assert.js b/test/parallel/test-runner-assert.js index 73d3b107251b50..74384947278e4e 100644 --- a/test/parallel/test-runner-assert.js +++ b/test/parallel/test-runner-assert.js @@ -10,7 +10,7 @@ test('expected methods are on t.assert', (t) => { 'strict', ]; const assertKeys = Object.keys(assert).filter((key) => !uncopiedKeys.includes(key)); - const expectedKeys = ['snapshot'].concat(assertKeys).sort(); + const expectedKeys = ['snapshot', 'fileSnapshot'].concat(assertKeys).sort(); assert.deepStrictEqual(Object.keys(t.assert).sort(), expectedKeys); }); diff --git a/test/parallel/test-runner-custom-assertions.js b/test/parallel/test-runner-custom-assertions.js new file mode 100644 index 00000000000000..a4bdf0f548be80 --- /dev/null +++ b/test/parallel/test-runner-custom-assertions.js @@ -0,0 +1,63 @@ +'use strict'; +require('../common'); +const assert = require('node:assert'); +const { test, assert: testAssertions } = require('node:test'); + +testAssertions.register('isOdd', (n) => { + assert.strictEqual(n % 2, 1); +}); + +testAssertions.register('ok', () => { + return 'ok'; +}); + +testAssertions.register('snapshot', () => { + return 'snapshot'; +}); + +testAssertions.register('deepStrictEqual', () => { + return 'deepStrictEqual'; +}); + +testAssertions.register('context', function() { + return this; +}); + +test('throws if name is not a string', () => { + assert.throws(() => { + testAssertions.register(5); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: 'The "name" argument must be of type string. Received type number (5)' + }); +}); + +test('throws if fn is not a function', () => { + assert.throws(() => { + testAssertions.register('foo', 5); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: 'The "fn" argument must be of type function. Received type number (5)' + }); +}); + +test('invokes a custom assertion as part of the test plan', (t) => { + t.plan(2); + t.assert.isOdd(5); + assert.throws(() => { + t.assert.isOdd(4); + }, { + code: 'ERR_ASSERTION', + message: /Expected values to be strictly equal/ + }); +}); + +test('can override existing assertions', (t) => { + assert.strictEqual(t.assert.ok(), 'ok'); + assert.strictEqual(t.assert.snapshot(), 'snapshot'); + assert.strictEqual(t.assert.deepStrictEqual(), 'deepStrictEqual'); +}); + +test('"this" is set to the TestContext', (t) => { + assert.strictEqual(t.assert.context(), t); +}); diff --git a/test/parallel/test-runner-error-reporter.js b/test/parallel/test-runner-error-reporter.js new file mode 100644 index 00000000000000..84ae37fbc86a9d --- /dev/null +++ b/test/parallel/test-runner-error-reporter.js @@ -0,0 +1,32 @@ +'use strict'; + +require('../common'); +const fixtures = require('../common/fixtures'); +const assert = require('node:assert'); +const { spawnSync } = require('node:child_process'); +const { test } = require('node:test'); +const cwd = fixtures.path('test-runner', 'error-reporter-fail-fast'); + +test('all tests failures reported without FAIL_FAST flag', async () => { + const args = [ + '--test-reporter=./test/common/test-error-reporter.js', + '--test-concurrency=1', + '--test', + `${cwd}/*.mjs`, + ]; + const cp = spawnSync(process.execPath, args); + const failureCount = (cp.stdout.toString().match(/Test failure:/g) || []).length; + assert.strictEqual(failureCount, 2); +}); + +test('FAIL_FAST stops test execution after first failure', async () => { + const args = [ + '--test-reporter=./test/common/test-error-reporter.js', + '--test-concurrency=1', + '--test', + `${cwd}/*.mjs`, + ]; + const cp = spawnSync(process.execPath, args, { env: { ...process.env, FAIL_FAST: 'true' } }); + const failureCount = (cp.stdout.toString().match(/Test failure:/g) || []).length; + assert.strictEqual(failureCount, 1); +}); diff --git a/test/parallel/test-runner-mock-timers.js b/test/parallel/test-runner-mock-timers.js index 87b8ba7e3784d2..da7458b4c46dd3 100644 --- a/test/parallel/test-runner-mock-timers.js +++ b/test/parallel/test-runner-mock-timers.js @@ -69,7 +69,7 @@ describe('Mock Timers Test Suite', () => { 'clearImmediate', ]; - const globalTimersDescriptors = timers.map((fn) => getDescriptor(global, fn)); + const globalTimersDescriptors = timers.map((fn) => getDescriptor(globalThis, fn)); const nodeTimersDescriptors = timers.map((fn) => getDescriptor(nodeTimers, fn)); const nodeTimersPromisesDescriptors = timers .filter((fn) => !fn.includes('clear')) @@ -116,7 +116,7 @@ describe('Mock Timers Test Suite', () => { it('should reset all timers when calling .reset function', (t) => { t.mock.timers.enable(); const fn = t.mock.fn(); - global.setTimeout(fn, 1000); + globalThis.setTimeout(fn, 1000); t.mock.timers.reset(); assert.deepStrictEqual(Date.now, globalThis.Date.now); assert.throws(() => { @@ -131,7 +131,7 @@ describe('Mock Timers Test Suite', () => { it('should reset all timers when calling Symbol.dispose', (t) => { t.mock.timers.enable(); const fn = t.mock.fn(); - global.setTimeout(fn, 1000); + globalThis.setTimeout(fn, 1000); // TODO(benjamingr) refactor to `using` t.mock.timers[Symbol.dispose](); assert.throws(() => { @@ -148,8 +148,8 @@ describe('Mock Timers Test Suite', () => { const order = []; const fn1 = t.mock.fn(() => order.push('f1')); const fn2 = t.mock.fn(() => order.push('f2')); - global.setTimeout(fn1, 1000); - global.setTimeout(fn2, 1000); + globalThis.setTimeout(fn1, 1000); + globalThis.setTimeout(fn2, 1000); t.mock.timers.tick(1000); assert.strictEqual(fn1.mock.callCount(), 1); assert.strictEqual(fn2.mock.callCount(), 1); @@ -170,11 +170,11 @@ describe('Mock Timers Test Suite', () => { const intervalFn = t.mock.fn(); t.mock.timers.enable(); - global.setTimeout(timeoutFn, 1111); - const id = global.setInterval(intervalFn, 9999); + globalThis.setTimeout(timeoutFn, 1111); + const id = globalThis.setInterval(intervalFn, 9999); t.mock.timers.runAll(); - global.clearInterval(id); + globalThis.clearInterval(id); assert.strictEqual(timeoutFn.mock.callCount(), 1); assert.strictEqual(intervalFn.mock.callCount(), 1); }); @@ -184,11 +184,11 @@ describe('Mock Timers Test Suite', () => { const intervalFn = t.mock.fn(); t.mock.timers.enable(); - global.setTimeout(timeoutFn, 1111); - const id = global.setInterval(intervalFn, 9999); + globalThis.setTimeout(timeoutFn, 1111); + const id = globalThis.setInterval(intervalFn, 9999); t.mock.timers.runAll(); - global.clearInterval(id); + globalThis.clearInterval(id); assert.strictEqual(timeoutFn.mock.callCount(), 1); assert.strictEqual(intervalFn.mock.callCount(), 1); assert.strictEqual(Date.now(), 9999); @@ -209,7 +209,7 @@ describe('Mock Timers Test Suite', () => { const fn = mock.fn(); - global.setTimeout(fn, 4000); + globalThis.setTimeout(fn, 4000); mock.timers.tick(4000); assert.strictEqual(fn.mock.callCount(), 1); @@ -220,7 +220,7 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setTimeout'] }); const fn = t.mock.fn(); - global.setTimeout(fn, 2000); + globalThis.setTimeout(fn, 2000); t.mock.timers.tick(1000); assert.strictEqual(fn.mock.callCount(), 0); @@ -234,7 +234,7 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setTimeout'] }); const fn = t.mock.fn(); const args = ['a', 'b', 'c']; - global.setTimeout(fn, 2000, ...args); + globalThis.setTimeout(fn, 2000, ...args); t.mock.timers.tick(1000); t.mock.timers.tick(500); @@ -248,7 +248,7 @@ describe('Mock Timers Test Suite', () => { const now = Date.now(); const timeout = 2; const expected = () => now - timeout; - global.setTimeout(common.mustCall(() => { + globalThis.setTimeout(common.mustCall(() => { assert.strictEqual(now - timeout, expected()); done(); }), timeout); @@ -257,7 +257,7 @@ describe('Mock Timers Test Suite', () => { it('should change timeout to 1ms when it is > TIMEOUT_MAX', (t) => { t.mock.timers.enable({ apis: ['setTimeout'] }); const fn = t.mock.fn(); - global.setTimeout(fn, TIMEOUT_MAX + 1); + globalThis.setTimeout(fn, TIMEOUT_MAX + 1); t.mock.timers.tick(1); assert.strictEqual(fn.mock.callCount(), 1); }); @@ -265,7 +265,7 @@ describe('Mock Timers Test Suite', () => { it('should change the delay to one if timeout < 0', (t) => { t.mock.timers.enable({ apis: ['setTimeout'] }); const fn = t.mock.fn(); - global.setTimeout(fn, -1); + globalThis.setTimeout(fn, -1); t.mock.timers.tick(1); assert.strictEqual(fn.mock.callCount(), 1); }); @@ -277,8 +277,8 @@ describe('Mock Timers Test Suite', () => { const fn = mock.fn(); - const id = global.setTimeout(fn, 4000); - global.clearTimeout(id); + const id = globalThis.setTimeout(fn, 4000); + globalThis.clearTimeout(id); t.mock.timers.tick(4000); assert.strictEqual(fn.mock.callCount(), 0); @@ -297,13 +297,13 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setInterval'] }); const fn = t.mock.fn(); - const id = global.setInterval(fn, 200); + const id = globalThis.setInterval(fn, 200); t.mock.timers.tick(200); t.mock.timers.tick(200); t.mock.timers.tick(200); - global.clearInterval(id); + globalThis.clearInterval(id); assert.strictEqual(fn.mock.callCount(), 3); }); @@ -312,13 +312,13 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setInterval'] }); const fn = t.mock.fn(); const args = ['a', 'b', 'c']; - const id = global.setInterval(fn, 200, ...args); + const id = globalThis.setInterval(fn, 200, ...args); t.mock.timers.tick(200); t.mock.timers.tick(200); t.mock.timers.tick(200); - global.clearInterval(id); + globalThis.clearInterval(id); assert.strictEqual(fn.mock.callCount(), 3); assert.deepStrictEqual(fn.mock.calls[0].arguments, args); @@ -332,8 +332,8 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setInterval'] }); const fn = mock.fn(); - const id = global.setInterval(fn, 200); - global.clearInterval(id); + const id = globalThis.setInterval(fn, 200); + globalThis.clearInterval(id); t.mock.timers.tick(200); assert.strictEqual(fn.mock.callCount(), 0); @@ -352,7 +352,7 @@ describe('Mock Timers Test Suite', () => { const now = Date.now(); const timeout = 2; const expected = () => now - timeout; - global.setImmediate(common.mustCall(() => { + globalThis.setImmediate(common.mustCall(() => { assert.strictEqual(now - timeout, expected()); done(); })); @@ -362,7 +362,7 @@ describe('Mock Timers Test Suite', () => { t.mock.timers.enable({ apis: ['setImmediate'] }); const fn = t.mock.fn(); const args = ['a', 'b', 'c']; - global.setImmediate(fn, ...args); + globalThis.setImmediate(fn, ...args); t.mock.timers.tick(9999); assert.strictEqual(fn.mock.callCount(), 1); @@ -372,14 +372,14 @@ describe('Mock Timers Test Suite', () => { it('should not advance in time if clearImmediate was invoked', (t) => { t.mock.timers.enable({ apis: ['setImmediate'] }); - const id = global.setImmediate(common.mustNotCall()); - global.clearImmediate(id); + const id = globalThis.setImmediate(common.mustNotCall()); + globalThis.clearImmediate(id); t.mock.timers.tick(200); }); it('should advance in time and trigger timers when calling the .tick function', (t) => { t.mock.timers.enable({ apis: ['setImmediate'] }); - global.setImmediate(common.mustCall(1)); + globalThis.setImmediate(common.mustCall(1)); t.mock.timers.tick(0); }); @@ -389,8 +389,8 @@ describe('Mock Timers Test Suite', () => { const fn1 = t.mock.fn(common.mustCall(() => order.push('f1'), 1)); const fn2 = t.mock.fn(common.mustCall(() => order.push('f2'), 1)); - global.setImmediate(fn1); - global.setImmediate(fn2); + globalThis.setImmediate(fn1); + globalThis.setImmediate(fn2); t.mock.timers.tick(0); @@ -403,8 +403,8 @@ describe('Mock Timers Test Suite', () => { const fn1 = t.mock.fn(common.mustCall(() => order.push('f1'), 1)); const fn2 = t.mock.fn(common.mustCall(() => order.push('f2'), 1)); - global.setTimeout(fn2, 0); - global.setImmediate(fn1); + globalThis.setTimeout(fn2, 0); + globalThis.setImmediate(fn1); t.mock.timers.tick(100); diff --git a/test/parallel/test-runner-module-mocking.js b/test/parallel/test-runner-module-mocking.js index 53b764d9ec5f93..7f84e9df54eaa8 100644 --- a/test/parallel/test-runner-module-mocking.js +++ b/test/parallel/test-runner-module-mocking.js @@ -1,8 +1,9 @@ // Flags: --experimental-test-module-mocks --experimental-require-module 'use strict'; const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) { +if (!isMainThread) { common.skip('registering customization hooks in Workers does not work'); } @@ -656,7 +657,7 @@ test('should throw ERR_ACCESS_DENIED when permission model is enabled', async (t const cwd = fixtures.path('test-runner'); const fixture = fixtures.path('test-runner', 'mock-nm.js'); const args = [ - '--experimental-permission', + '--permission', '--allow-fs-read=*', '--experimental-test-module-mocks', fixture, @@ -674,7 +675,7 @@ test('should work when --allow-worker is passed and permission model is enabled' const cwd = fixtures.path('test-runner'); const fixture = fixtures.path('test-runner', 'mock-nm.js'); const args = [ - '--experimental-permission', + '--permission', '--allow-fs-read=*', '--allow-worker', '--experimental-test-module-mocks', diff --git a/test/parallel/test-runner-output.mjs b/test/parallel/test-runner-output.mjs index 17bb5f1ce7a175..db136f5a4f6108 100644 --- a/test/parallel/test-runner-output.mjs +++ b/test/parallel/test-runner-output.mjs @@ -203,6 +203,17 @@ const tests = [ name: 'test-runner/output/arbitrary-output.js', flags: ['--test-reporter=tap'], }, + { + name: 'test-runner/output/non-tty-forced-color-output.js', + flags: ['--test-reporter=spec'], + transform: specTransform, + }, + canColorize ? { + name: 'test-runner/output/assertion-color-tty.mjs', + flags: ['--test', '--stack-trace-limit=0'], + transform: specTransform, + tty: true, + } : false, { name: 'test-runner/output/async-test-scheduling.mjs', flags: ['--test-reporter=tap'], diff --git a/test/parallel/test-runner-snapshot-file-tests.js b/test/parallel/test-runner-snapshot-file-tests.js new file mode 100644 index 00000000000000..38984956695b82 --- /dev/null +++ b/test/parallel/test-runner-snapshot-file-tests.js @@ -0,0 +1,82 @@ +'use strict'; +const common = require('../common'); +const fixtures = require('../common/fixtures'); +const tmpdir = require('../common/tmpdir'); +const { suite, test } = require('node:test'); + +tmpdir.refresh(); + +suite('t.assert.fileSnapshot() validation', () => { + test('path must be a string', (t) => { + t.assert.throws(() => { + t.assert.fileSnapshot({}, 5); + }, /The "path" argument must be of type string/); + }); + + test('options must be an object', (t) => { + t.assert.throws(() => { + t.assert.fileSnapshot({}, '', null); + }, /The "options" argument must be of type object/); + }); + + test('options.serializers must be an array if present', (t) => { + t.assert.throws(() => { + t.assert.fileSnapshot({}, '', { serializers: 5 }); + }, /The "options\.serializers" property must be an instance of Array/); + }); + + test('options.serializers must only contain functions', (t) => { + t.assert.throws(() => { + t.assert.fileSnapshot({}, '', { serializers: [() => {}, ''] }); + }, /The "options\.serializers\[1\]" property must be of type function/); + }); +}); + +suite('t.assert.fileSnapshot() update/read flow', () => { + const fixture = fixtures.path( + 'test-runner', 'snapshots', 'file-snapshots.js' + ); + + test('fails prior to snapshot generation', async (t) => { + const child = await common.spawnPromisified( + process.execPath, + [fixture], + { cwd: tmpdir.path }, + ); + + t.assert.strictEqual(child.code, 1); + t.assert.strictEqual(child.signal, null); + t.assert.match(child.stdout, /tests 3/); + t.assert.match(child.stdout, /pass 0/); + t.assert.match(child.stdout, /fail 3/); + t.assert.match(child.stdout, /Missing snapshots can be generated/); + }); + + test('passes when regenerating snapshots', async (t) => { + const child = await common.spawnPromisified( + process.execPath, + ['--test-update-snapshots', fixture], + { cwd: tmpdir.path }, + ); + + t.assert.strictEqual(child.code, 0); + t.assert.strictEqual(child.signal, null); + t.assert.match(child.stdout, /tests 3/); + t.assert.match(child.stdout, /pass 3/); + t.assert.match(child.stdout, /fail 0/); + }); + + test('passes when snapshots exist', async (t) => { + const child = await common.spawnPromisified( + process.execPath, + [fixture], + { cwd: tmpdir.path }, + ); + + t.assert.strictEqual(child.code, 0); + t.assert.strictEqual(child.signal, null); + t.assert.match(child.stdout, /tests 3/); + t.assert.match(child.stdout, /pass 3/); + t.assert.match(child.stdout, /fail 0/); + }); +}); diff --git a/test/parallel/test-runner-source-maps-invalid-json.js b/test/parallel/test-runner-source-maps-invalid-json.js new file mode 100644 index 00000000000000..508e2d432117f7 --- /dev/null +++ b/test/parallel/test-runner-source-maps-invalid-json.js @@ -0,0 +1,12 @@ +// Flags: --enable-source-maps +'use strict'; + +require('../common'); +const test = require('node:test'); + +// Verify that test runner can handle invalid source maps. + +test('ok', () => {}); + +// eslint-disable-next-line @stylistic/js/spaced-comment +//# sourceMappingURL=data:application/json;base64,-1 diff --git a/test/parallel/test-runner-wait-for.js b/test/parallel/test-runner-wait-for.js new file mode 100644 index 00000000000000..8f1e28f12868e4 --- /dev/null +++ b/test/parallel/test-runner-wait-for.js @@ -0,0 +1,124 @@ +'use strict'; +require('../common'); +const { suite, test } = require('node:test'); + +suite('input validation', () => { + test('throws if condition is not a function', (t) => { + t.assert.throws(() => { + t.waitFor(5); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: /The "condition" argument must be of type function/, + }); + }); + + test('throws if options is not an object', (t) => { + t.assert.throws(() => { + t.waitFor(() => {}, null); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: /The "options" argument must be of type object/, + }); + }); + + test('throws if options.interval is not a number', (t) => { + t.assert.throws(() => { + t.waitFor(() => {}, { interval: 'foo' }); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: /The "options\.interval" property must be of type number/, + }); + }); + + test('throws if options.timeout is not a number', (t) => { + t.assert.throws(() => { + t.waitFor(() => {}, { timeout: 'foo' }); + }, { + code: 'ERR_INVALID_ARG_TYPE', + message: /The "options\.timeout" property must be of type number/, + }); + }); +}); + +test('returns the result of the condition function', async (t) => { + const result = await t.waitFor(() => { + return 42; + }); + + t.assert.strictEqual(result, 42); +}); + +test('returns the result of an async condition function', async (t) => { + const result = await t.waitFor(async () => { + return 84; + }); + + t.assert.strictEqual(result, 84); +}); + +test('errors if the condition times out', async (t) => { + await t.assert.rejects(async () => { + await t.waitFor(() => { + return new Promise(() => {}); + }, { + interval: 60_000, + timeout: 1, + }); + }, { + message: /waitFor\(\) timed out/, + }); +}); + +test('polls until the condition returns successfully', async (t) => { + let count = 0; + const result = await t.waitFor(() => { + ++count; + if (count < 4) { + throw new Error('resource is not ready yet'); + } + + return 'success'; + }, { + interval: 1, + timeout: 60_000, + }); + + t.assert.strictEqual(result, 'success'); + t.assert.strictEqual(count, 4); +}); + +test('sets last failure as error cause on timeouts', async (t) => { + const error = new Error('boom'); + await t.assert.rejects(async () => { + await t.waitFor(() => { + return new Promise((_, reject) => { + reject(error); + }); + }); + }, (err) => { + t.assert.match(err.message, /timed out/); + t.assert.strictEqual(err.cause, error); + return true; + }); +}); + +test('limits polling if condition takes longer than interval', async (t) => { + let count = 0; + + function condition() { + count++; + return new Promise((resolve) => { + setTimeout(() => { + resolve('success'); + }, 200); + }); + } + + const result = await t.waitFor(condition, { + interval: 1, + timeout: 60_000, + }); + + t.assert.strictEqual(result, 'success'); + t.assert.strictEqual(count, 1); +}); diff --git a/test/parallel/test-set-http-max-http-headers.js b/test/parallel/test-set-http-max-http-headers.js index c4df779d2bd4fa..01061a0916595c 100644 --- a/test/parallel/test-set-http-max-http-headers.js +++ b/test/parallel/test-set-http-max-http-headers.js @@ -4,17 +4,10 @@ const common = require('../common'); const assert = require('assert'); const { spawn } = require('child_process'); const path = require('path'); +const { suite, test } = require('node:test'); const testName = path.join(__dirname, 'test-http-max-http-headers.js'); -const timeout = common.platformTimeout(100); - -const tests = []; - -function test(fn) { - tests.push(fn); -} - -test(function(cb) { +test(function(_, cb) { console.log('running subtest expecting failure'); // Validate that the test fails if the max header size is too small. @@ -30,7 +23,7 @@ test(function(cb) { })); }); -test(function(cb) { +test(function(_, cb) { console.log('running subtest expecting success'); const env = Object.assign({}, process.env, { @@ -54,13 +47,13 @@ test(function(cb) { })); }); -// Next, repeat the same checks using NODE_OPTIONS if it is supported. -if (!process.config.variables.node_without_node_options) { +const skip = process.config.variables.node_without_node_options; +suite('same checks using NODE_OPTIONS if it is supported', { skip }, () => { const env = Object.assign({}, process.env, { NODE_OPTIONS: '--max-http-header-size=1024' }); - test(function(cb) { + test(function(_, cb) { console.log('running subtest expecting failure'); // Validate that the test fails if the max header size is too small. @@ -74,7 +67,7 @@ if (!process.config.variables.node_without_node_options) { })); }); - test(function(cb) { + test(function(_, cb) { // Validate that the test now passes if the same limit is large enough. const args = ['--expose-internals', testName, '1024']; const cp = spawn(process.execPath, args, { env, stdio: 'inherit' }); @@ -85,18 +78,4 @@ if (!process.config.variables.node_without_node_options) { cb(); })); }); -} - -function runTest() { - const fn = tests.shift(); - - if (!fn) { - return; - } - - fn(() => { - setTimeout(runTest, timeout); - }); -} - -runTest(); +}); diff --git a/test/parallel/test-set-process-debug-port.js b/test/parallel/test-set-process-debug-port.js index d00a1ddf68ebb6..7f0cbe068549d0 100644 --- a/test/parallel/test-set-process-debug-port.js +++ b/test/parallel/test-set-process-debug-port.js @@ -2,7 +2,11 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); const kMinPort = 1024; diff --git a/test/parallel/test-setproctitle.js b/test/parallel/test-setproctitle.js index 7c4287829f7c0a..b08302e0a35ac0 100644 --- a/test/parallel/test-setproctitle.js +++ b/test/parallel/test-setproctitle.js @@ -1,15 +1,16 @@ 'use strict'; // Original test written by Jakub Lekstan <kuebzky@gmail.com> const common = require('../common'); +const { isMainThread } = require('worker_threads'); // FIXME add sunos support -if (common.isSunOS) +if (common.isSunOS || common.isIBMi) { common.skip(`Unsupported platform [${process.platform}]`); -// FIXME add IBMi support -if (common.isIBMi) - common.skip('Unsupported platform IBMi'); -if (!common.isMainThread) +} + +if (!isMainThread) { common.skip('Setting the process title from Workers is not supported'); +} const assert = require('assert'); const { exec, execSync } = require('child_process'); @@ -25,8 +26,9 @@ process.title = title; assert.strictEqual(process.title, title); // Test setting the title but do not try to run `ps` on Windows. -if (common.isWindows) +if (common.isWindows) { common.skip('Windows does not have "ps" utility'); +} try { execSync('command -v ps'); diff --git a/test/parallel/test-shadow-realm-import-value-resolve.js b/test/parallel/test-shadow-realm-import-value-resolve.js index ee1c17d67c12f1..eeb00509d53a6c 100644 --- a/test/parallel/test-shadow-realm-import-value-resolve.js +++ b/test/parallel/test-shadow-realm-import-value-resolve.js @@ -3,8 +3,11 @@ const common = require('../common'); const assert = require('assert'); const path = require('path'); +const { isMainThread } = require('worker_threads'); -common.skipIfWorker('process.chdir is not supported in workers.'); +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} async function main() { const realm = new ShadowRealm(); diff --git a/test/parallel/test-signal-args.js b/test/parallel/test-signal-args.js index 7b72ed6dcb92d5..28a077ecc1c7d9 100644 --- a/test/parallel/test-signal-args.js +++ b/test/parallel/test-signal-args.js @@ -3,10 +3,15 @@ const common = require('../common'); const assert = require('assert'); -if (common.isWindows) +if (common.isWindows) { common.skip('Sending signals with process.kill is not supported on Windows'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('No signal handling available in Workers'); +} process.once('SIGINT', common.mustCall((signal) => { assert.strictEqual(signal, 'SIGINT'); diff --git a/test/parallel/test-signal-handler.js b/test/parallel/test-signal-handler.js index 05ec4e7f73faf5..b84d2063a288db 100644 --- a/test/parallel/test-signal-handler.js +++ b/test/parallel/test-signal-handler.js @@ -23,10 +23,15 @@ const common = require('../common'); -if (common.isWindows) +if (common.isWindows) { common.skip('SIGUSR1 and SIGHUP signals are not supported'); -if (!common.isMainThread) +} + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('Signal handling in Workers is not supported'); +} console.log(`process.pid: ${process.pid}`); diff --git a/test/parallel/test-snapshot-child-process-sync.js b/test/parallel/test-snapshot-child-process-sync.js index f47aa321c1290f..ac11ceae54d402 100644 --- a/test/parallel/test-snapshot-child-process-sync.js +++ b/test/parallel/test-snapshot-child-process-sync.js @@ -3,7 +3,7 @@ // This tests that process.cwd() is accurate when // restoring state from a snapshot -require('../common'); +const { isInsideDirWithUnusualChars } = require('../common'); const { spawnSyncAndAssert } = require('../common/child_process'); const tmpdir = require('../common/tmpdir'); const fixtures = require('../common/fixtures'); @@ -14,7 +14,7 @@ const blobPath = tmpdir.resolve('snapshot.blob'); const file = fixtures.path('snapshot', 'child-process-sync.js'); const expected = [ 'From child process spawnSync', - 'From child process execSync', + ...(isInsideDirWithUnusualChars ? [] : ['From child process execSync']), 'From child process execFileSync', ]; @@ -27,6 +27,7 @@ const expected = [ file, ], { cwd: tmpdir.path, + env: { ...process.env, DIRNAME_CONTAINS_SHELL_UNSAFE_CHARS: isInsideDirWithUnusualChars ? 'TRUE' : '' }, }, { trim: true, stdout(output) { @@ -43,6 +44,7 @@ const expected = [ file, ], { cwd: tmpdir.path, + env: { ...process.env, DIRNAME_CONTAINS_SHELL_UNSAFE_CHARS: isInsideDirWithUnusualChars ? 'TRUE' : '' }, }, { trim: true, stdout(output) { diff --git a/test/parallel/test-source-map-enable.js b/test/parallel/test-source-map-enable.js index 46c25d26cfa8e7..64f4254fcddbc6 100644 --- a/test/parallel/test-source-map-enable.js +++ b/test/parallel/test-source-map-enable.js @@ -242,6 +242,7 @@ function nextdir() { // Persists line lengths for in-memory representation of source file. { + const checkoutEOL = fs.readFileSync(__filename).includes('\r\n') ? '\r\n' : '\n'; const coverageDirectory = nextdir(); spawnSync(process.execPath, [ require.resolve('../fixtures/source-map/istanbul-throw.js'), @@ -250,7 +251,7 @@ function nextdir() { 'istanbul-throw.js', coverageDirectory ); - if (common.checkoutEOL === '\r\n') { + if (checkoutEOL === '\r\n') { assert.deepStrictEqual(sourceMap.lineLengths, [1086, 31, 185, 649, 0]); } else { assert.deepStrictEqual(sourceMap.lineLengths, [1085, 30, 184, 648, 0]); diff --git a/test/parallel/test-sqlite-session.js b/test/parallel/test-sqlite-session.js index 617c0c2aa71181..5cba37e337e835 100644 --- a/test/parallel/test-sqlite-session.js +++ b/test/parallel/test-sqlite-session.js @@ -128,15 +128,15 @@ test('database.createSession() - use table option to track specific table', (t) }); suite('conflict resolution', () => { + const createDataTableSql = `CREATE TABLE data ( + key INTEGER PRIMARY KEY, + value TEXT UNIQUE + ) STRICT`; + const prepareConflict = () => { const database1 = new DatabaseSync(':memory:'); const database2 = new DatabaseSync(':memory:'); - const createDataTableSql = `CREATE TABLE data ( - key INTEGER PRIMARY KEY, - value TEXT - ) STRICT - `; database1.exec(createDataTableSql); database2.exec(createDataTableSql); @@ -151,7 +151,91 @@ suite('conflict resolution', () => { }; }; - test('database.applyChangeset() - conflict with default behavior (abort)', (t) => { + const prepareDataConflict = () => { + const database1 = new DatabaseSync(':memory:'); + const database2 = new DatabaseSync(':memory:'); + + database1.exec(createDataTableSql); + database2.exec(createDataTableSql); + + const insertSql = 'INSERT INTO data (key, value) VALUES (?, ?)'; + database1.prepare(insertSql).run(1, 'hello'); + database2.prepare(insertSql).run(1, 'othervalue'); + const session = database1.createSession(); + database1.prepare('UPDATE data SET value = ? WHERE key = ?').run('foo', 1); + return { + database2, + changeset: session.changeset() + }; + }; + + const prepareNotFoundConflict = () => { + const database1 = new DatabaseSync(':memory:'); + const database2 = new DatabaseSync(':memory:'); + + database1.exec(createDataTableSql); + database2.exec(createDataTableSql); + + const insertSql = 'INSERT INTO data (key, value) VALUES (?, ?)'; + database1.prepare(insertSql).run(1, 'hello'); + const session = database1.createSession(); + database1.prepare('DELETE FROM data WHERE key = 1').run(); + return { + database2, + changeset: session.changeset() + }; + }; + + const prepareFkConflict = () => { + const database1 = new DatabaseSync(':memory:'); + const database2 = new DatabaseSync(':memory:'); + + database1.exec(createDataTableSql); + database2.exec(createDataTableSql); + const fkTableSql = `CREATE TABLE other ( + key INTEGER PRIMARY KEY, + ref REFERENCES data(key) + )`; + database1.exec(fkTableSql); + database2.exec(fkTableSql); + + const insertDataSql = 'INSERT INTO data (key, value) VALUES (?, ?)'; + const insertOtherSql = 'INSERT INTO other (key, ref) VALUES (?, ?)'; + database1.prepare(insertDataSql).run(1, 'hello'); + database2.prepare(insertDataSql).run(1, 'hello'); + database1.prepare(insertOtherSql).run(1, 1); + database2.prepare(insertOtherSql).run(1, 1); + + database1.exec('DELETE FROM other WHERE key = 1'); // So we don't get a fk violation in database1 + const session = database1.createSession(); + database1.prepare('DELETE FROM data WHERE key = 1').run(); // Changeset with fk violation + database2.exec('PRAGMA foreign_keys = ON'); // Needs to be supported, otherwise will fail here + + return { + database2, + changeset: session.changeset() + }; + }; + + const prepareConstraintConflict = () => { + const database1 = new DatabaseSync(':memory:'); + const database2 = new DatabaseSync(':memory:'); + + database1.exec(createDataTableSql); + database2.exec(createDataTableSql); + + const insertSql = 'INSERT INTO data (key, value) VALUES (?, ?)'; + const session = database1.createSession(); + database1.prepare(insertSql).run(1, 'hello'); + database2.prepare(insertSql).run(2, 'hello'); // database2 already constains hello + + return { + database2, + changeset: session.changeset() + }; + }; + + test('database.applyChangeset() - SQLITE_CHANGESET_CONFLICT conflict with default behavior (abort)', (t) => { const { database2, changeset } = prepareConflict(); // When changeset is aborted due to a conflict, applyChangeset should return false t.assert.strictEqual(database2.applyChangeset(changeset), false); @@ -160,40 +244,120 @@ suite('conflict resolution', () => { [{ value: 'world' }]); // unchanged }); - test('database.applyChangeset() - conflict with SQLITE_CHANGESET_ABORT', (t) => { + test('database.applyChangeset() - SQLITE_CHANGESET_CONFLICT conflict handled with SQLITE_CHANGESET_ABORT', (t) => { const { database2, changeset } = prepareConflict(); + let conflictType = null; const result = database2.applyChangeset(changeset, { - onConflict: constants.SQLITE_CHANGESET_ABORT + onConflict: (conflictType_) => { + conflictType = conflictType_; + return constants.SQLITE_CHANGESET_ABORT; + } }); // When changeset is aborted due to a conflict, applyChangeset should return false t.assert.strictEqual(result, false); + t.assert.strictEqual(conflictType, constants.SQLITE_CHANGESET_CONFLICT); deepStrictEqual(t)( database2.prepare('SELECT value from data').all(), [{ value: 'world' }]); // unchanged }); - test('database.applyChangeset() - conflict with SQLITE_CHANGESET_REPLACE', (t) => { - const { database2, changeset } = prepareConflict(); + test('database.applyChangeset() - SQLITE_CHANGESET_DATA conflict handled with SQLITE_CHANGESET_REPLACE', (t) => { + const { database2, changeset } = prepareDataConflict(); + let conflictType = null; const result = database2.applyChangeset(changeset, { - onConflict: constants.SQLITE_CHANGESET_REPLACE + onConflict: (conflictType_) => { + conflictType = conflictType_; + return constants.SQLITE_CHANGESET_REPLACE; + } }); // Not aborted due to conflict, so should return true t.assert.strictEqual(result, true); + t.assert.strictEqual(conflictType, constants.SQLITE_CHANGESET_DATA); deepStrictEqual(t)( database2.prepare('SELECT value from data ORDER BY key').all(), - [{ value: 'hello' }, { value: 'foo' }]); // replaced + [{ value: 'foo' }]); // replaced }); - test('database.applyChangeset() - conflict with SQLITE_CHANGESET_OMIT', (t) => { - const { database2, changeset } = prepareConflict(); + test('database.applyChangeset() - SQLITE_CHANGESET_NOTFOUND conflict with SQLITE_CHANGESET_OMIT', (t) => { + const { database2, changeset } = prepareNotFoundConflict(); + let conflictType = null; const result = database2.applyChangeset(changeset, { - onConflict: constants.SQLITE_CHANGESET_OMIT + onConflict: (conflictType_) => { + conflictType = conflictType_; + return constants.SQLITE_CHANGESET_OMIT; + } }); // Not aborted due to conflict, so should return true t.assert.strictEqual(result, true); - deepStrictEqual(t)( - database2.prepare('SELECT value from data ORDER BY key ASC').all(), - [{ value: 'world' }, { value: 'foo' }]); // Conflicting change omitted + t.assert.strictEqual(conflictType, constants.SQLITE_CHANGESET_NOTFOUND); + deepStrictEqual(t)(database2.prepare('SELECT value from data').all(), []); + }); + + test('database.applyChangeset() - SQLITE_CHANGESET_FOREIGN_KEY conflict', (t) => { + const { database2, changeset } = prepareFkConflict(); + let conflictType = null; + const result = database2.applyChangeset(changeset, { + onConflict: (conflictType_) => { + conflictType = conflictType_; + return constants.SQLITE_CHANGESET_OMIT; + } + }); + // Not aborted due to conflict, so should return true + t.assert.strictEqual(result, true); + t.assert.strictEqual(conflictType, constants.SQLITE_CHANGESET_FOREIGN_KEY); + deepStrictEqual(t)(database2.prepare('SELECT value from data').all(), []); + }); + + test('database.applyChangeset() - SQLITE_CHANGESET_CONSTRAINT conflict', (t) => { + const { database2, changeset } = prepareConstraintConflict(); + let conflictType = null; + const result = database2.applyChangeset(changeset, { + onConflict: (conflictType_) => { + conflictType = conflictType_; + return constants.SQLITE_CHANGESET_OMIT; + } + }); + // Not aborted due to conflict, so should return true + t.assert.strictEqual(result, true); + t.assert.strictEqual(conflictType, constants.SQLITE_CHANGESET_CONSTRAINT); + deepStrictEqual(t)(database2.prepare('SELECT key, value from data').all(), [{ key: 2, value: 'hello' }]); + }); + + test('conflict resolution handler returns invalid value', (t) => { + const invalidHandlers = [ + () => -1, + () => ({}), + () => null, + async () => constants.SQLITE_CHANGESET_ABORT, + ]; + + for (const invalidHandler of invalidHandlers) { + const { database2, changeset } = prepareConflict(); + t.assert.throws(() => { + database2.applyChangeset(changeset, { + onConflict: invalidHandler + }); + }, { + name: 'Error', + message: 'bad parameter or other API misuse', + errcode: 21, + code: 'ERR_SQLITE_ERROR' + }, `Did not throw expected exception when using invalid onConflict handler: ${invalidHandler}`); + } + }); + + test('conflict resolution handler throws', (t) => { + const { database2, changeset } = prepareConflict(); + t.assert.throws(() => { + database2.applyChangeset(changeset, { + onConflict: () => { + throw new Error('some error'); + } + }); + }, { + name: 'Error', + message: 'some error' + }); }); }); @@ -299,7 +463,7 @@ test('database.applyChangeset() - wrong arguments', (t) => { }, null); }, { name: 'TypeError', - message: 'The "options.onConflict" argument must be a number.' + message: 'The "options.onConflict" argument must be a function.' }); }); diff --git a/test/parallel/test-sqlite-typed-array-and-data-view.js b/test/parallel/test-sqlite-typed-array-and-data-view.js new file mode 100644 index 00000000000000..1cc75c541b6261 --- /dev/null +++ b/test/parallel/test-sqlite-typed-array-and-data-view.js @@ -0,0 +1,61 @@ +'use strict'; +require('../common'); +const tmpdir = require('../common/tmpdir'); +const { join } = require('node:path'); +const { DatabaseSync } = require('node:sqlite'); +const { suite, test } = require('node:test'); +let cnt = 0; + +tmpdir.refresh(); + +function nextDb() { + return join(tmpdir.path, `database-${cnt++}.db`); +} + +const arrayBuffer = new Uint8Array([1, 2, 3, 4, 5, 6, 7, 8]).buffer; +const TypedArrays = [ + ['Int8Array', Int8Array], + ['Uint8Array', Uint8Array], + ['Uint8ClampedArray', Uint8ClampedArray], + ['Int16Array', Int16Array], + ['Uint16Array', Uint16Array], + ['Int32Array', Int32Array], + ['Uint32Array', Uint32Array], + ['Float32Array', Float32Array], + ['Float64Array', Float64Array], + ['BigInt64Array', BigInt64Array], + ['BigUint64Array', BigUint64Array], + ['DataView', DataView], +]; + +suite('StatementSync with TypedArray/DataView', () => { + for (const [displayName, TypedArray] of TypedArrays) { + test(displayName, (t) => { + const db = new DatabaseSync(nextDb()); + t.after(() => { db.close(); }); + db.exec('CREATE TABLE test (data BLOB)'); + // insert + { + const stmt = db.prepare('INSERT INTO test VALUES (?)'); + stmt.run(new TypedArray(arrayBuffer)); + } + // select all + { + const stmt = db.prepare('SELECT * FROM test'); + const row = stmt.get(); + t.assert.ok(row.data instanceof Uint8Array); + t.assert.strictEqual(row.data.length, 8); + t.assert.deepStrictEqual(row.data, new Uint8Array(arrayBuffer)); + } + // query + { + const stmt = db.prepare('SELECT * FROM test WHERE data = ?'); + const rows = stmt.all(new TypedArray(arrayBuffer)); + t.assert.strictEqual(rows.length, 1); + t.assert.ok(rows[0].data instanceof Uint8Array); + t.assert.strictEqual(rows[0].data.length, 8); + t.assert.deepStrictEqual(rows[0].data, new Uint8Array(arrayBuffer)); + } + }); + } +}); diff --git a/test/parallel/test-sqlite.js b/test/parallel/test-sqlite.js index 87162526ffadcd..c9a45fa22aecc2 100644 --- a/test/parallel/test-sqlite.js +++ b/test/parallel/test-sqlite.js @@ -103,3 +103,11 @@ test('PRAGMAs are supported', (t) => { { __proto__: null, journal_mode: 'wal' }, ); }); + +test('math functions are enabled', (t) => { + const db = new DatabaseSync(':memory:'); + t.assert.deepStrictEqual( + db.prepare('SELECT PI() AS pi').get(), + { __proto__: null, pi: 3.141592653589793 }, + ); +}); diff --git a/test/parallel/test-startup-empty-regexp-statics.js b/test/parallel/test-startup-empty-regexp-statics.js index 5744bbc14bba21..6cb9c50a521f1d 100644 --- a/test/parallel/test-startup-empty-regexp-statics.js +++ b/test/parallel/test-startup-empty-regexp-statics.js @@ -1,6 +1,11 @@ 'use strict'; const common = require('../common'); + +if (common.isInsideDirWithUnusualChars) { + common.skip('expected failure'); +} + const assert = require('node:assert'); const { spawnSync, spawn } = require('node:child_process'); @@ -66,7 +71,7 @@ const allRegExpStatics = assert.strictEqual(child.signal, null); } -{ +if (!common.isInsideDirWithUnusualChars) { const child = spawn(process.execPath, [], { stdio: ['pipe', 'pipe', 'inherit'], encoding: 'utf8' }); let stdout = ''; diff --git a/test/parallel/test-startup-empty-regexp-statics.mjs b/test/parallel/test-startup-empty-regexp-statics.mjs index 1f3869372b9690..1771bfd6530369 100644 --- a/test/parallel/test-startup-empty-regexp-statics.mjs +++ b/test/parallel/test-startup-empty-regexp-statics.mjs @@ -1,26 +1,28 @@ // We must load the CJS version here because the ESM wrapper call `hasIPv6` // which compiles a RegEx. // eslint-disable-next-line node-core/require-common-first -import '../common/index.js'; +import common from '../common/index.js'; import assert from 'node:assert'; -assert.strictEqual(RegExp.$_, ''); -assert.strictEqual(RegExp.$0, undefined); -assert.strictEqual(RegExp.$1, ''); -assert.strictEqual(RegExp.$2, ''); -assert.strictEqual(RegExp.$3, ''); -assert.strictEqual(RegExp.$4, ''); -assert.strictEqual(RegExp.$5, ''); -assert.strictEqual(RegExp.$6, ''); -assert.strictEqual(RegExp.$7, ''); -assert.strictEqual(RegExp.$8, ''); -assert.strictEqual(RegExp.$9, ''); -assert.strictEqual(RegExp.input, ''); -assert.strictEqual(RegExp.lastMatch, ''); -assert.strictEqual(RegExp.lastParen, ''); -assert.strictEqual(RegExp.leftContext, ''); -assert.strictEqual(RegExp.rightContext, ''); -assert.strictEqual(RegExp['$&'], ''); -assert.strictEqual(RegExp['$`'], ''); -assert.strictEqual(RegExp['$+'], ''); -assert.strictEqual(RegExp["$'"], ''); +if (!common.isInsideDirWithUnusualChars) { + assert.strictEqual(RegExp.$_, ''); + assert.strictEqual(RegExp.$0, undefined); + assert.strictEqual(RegExp.$1, ''); + assert.strictEqual(RegExp.$2, ''); + assert.strictEqual(RegExp.$3, ''); + assert.strictEqual(RegExp.$4, ''); + assert.strictEqual(RegExp.$5, ''); + assert.strictEqual(RegExp.$6, ''); + assert.strictEqual(RegExp.$7, ''); + assert.strictEqual(RegExp.$8, ''); + assert.strictEqual(RegExp.$9, ''); + assert.strictEqual(RegExp.input, ''); + assert.strictEqual(RegExp.lastMatch, ''); + assert.strictEqual(RegExp.lastParen, ''); + assert.strictEqual(RegExp.leftContext, ''); + assert.strictEqual(RegExp.rightContext, ''); + assert.strictEqual(RegExp['$&'], ''); + assert.strictEqual(RegExp['$`'], ''); + assert.strictEqual(RegExp['$+'], ''); + assert.strictEqual(RegExp["$'"], ''); +} diff --git a/test/parallel/test-stdio-pipe-access.js b/test/parallel/test-stdio-pipe-access.js index ac0e22c399a1b9..6bf6b107c60e92 100644 --- a/test/parallel/test-stdio-pipe-access.js +++ b/test/parallel/test-stdio-pipe-access.js @@ -1,7 +1,10 @@ 'use strict'; const common = require('../common'); -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip("Workers don't have process-like stdio"); +} // Test if Node handles accessing process.stdin if it is a redirected // pipe without deadlocking diff --git a/test/parallel/test-stdio-pipe-redirect.js b/test/parallel/test-stdio-pipe-redirect.js index 8b48133c8b0317..69367119ed3402 100644 --- a/test/parallel/test-stdio-pipe-redirect.js +++ b/test/parallel/test-stdio-pipe-redirect.js @@ -1,7 +1,10 @@ 'use strict'; const common = require('../common'); -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip("Workers don't have process-like stdio"); +} // Test if Node handles redirecting one child process stdout to another // process stdin without crashing. diff --git a/test/parallel/test-stream-compose.js b/test/parallel/test-stream-compose.js index 1ff8c39b7a2234..d7a54e177668a2 100644 --- a/test/parallel/test-stream-compose.js +++ b/test/parallel/test-stream-compose.js @@ -1,5 +1,3 @@ -// Flags: --expose-internals - 'use strict'; const common = require('../common'); @@ -9,9 +7,9 @@ const { Transform, Writable, finished, + compose, PassThrough } = require('stream'); -const compose = require('internal/streams/compose'); const assert = require('assert'); { diff --git a/test/parallel/test-timers-api-refs.js b/test/parallel/test-timers-api-refs.js index 3c55a05ac4c20a..a6a541963110bb 100644 --- a/test/parallel/test-timers-api-refs.js +++ b/test/parallel/test-timers-api-refs.js @@ -4,12 +4,12 @@ const timers = require('timers'); // Delete global APIs to make sure they're not relied on by the internal timers // code -delete global.setTimeout; -delete global.clearTimeout; -delete global.setInterval; -delete global.clearInterval; -delete global.setImmediate; -delete global.clearImmediate; +delete globalThis.setTimeout; +delete globalThis.clearTimeout; +delete globalThis.setInterval; +delete globalThis.clearInterval; +delete globalThis.setImmediate; +delete globalThis.clearImmediate; const timeoutCallback = () => { timers.clearTimeout(timeout); }; const timeout = timers.setTimeout(common.mustCall(timeoutCallback), 1); diff --git a/test/parallel/test-timers-immediate-unref-simple.js b/test/parallel/test-timers-immediate-unref-simple.js index 369894fcdebbae..fae8ad3eaea801 100644 --- a/test/parallel/test-timers-immediate-unref-simple.js +++ b/test/parallel/test-timers-immediate-unref-simple.js @@ -1,8 +1,9 @@ 'use strict'; const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) { +if (!isMainThread) { // Note that test-timers-immediate-unref-nested-once works instead. common.skip('Worker bootstrapping works differently -> different timing'); } diff --git a/test/parallel/test-timers-process-tampering.js b/test/parallel/test-timers-process-tampering.js index 766cc9f3560c82..8632e7c96fa086 100644 --- a/test/parallel/test-timers-process-tampering.js +++ b/test/parallel/test-timers-process-tampering.js @@ -3,6 +3,6 @@ 'use strict'; const common = require('../common'); -global.process = {}; // Boom! -common.allowGlobals(global.process); +globalThis.process = {}; // Boom! +common.allowGlobals(globalThis.process); setImmediate(common.mustCall()); diff --git a/test/parallel/test-tls-alert-handling.js b/test/parallel/test-tls-alert-handling.js index b14438bc92d7e6..eec072796063dc 100644 --- a/test/parallel/test-tls-alert-handling.js +++ b/test/parallel/test-tls-alert-handling.js @@ -1,11 +1,19 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { + hasOpenSSL, + hasOpenSSL3, + opensslCli, +} = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI'); +} const assert = require('assert'); const net = require('net'); @@ -33,14 +41,14 @@ let iter = 0; const errorHandler = common.mustCall((err) => { let expectedErrorCode = 'ERR_SSL_WRONG_VERSION_NUMBER'; let expectedErrorReason = 'wrong version number'; - if (common.hasOpenSSL(3, 2)) { + if (hasOpenSSL(3, 2)) { expectedErrorCode = 'ERR_SSL_PACKET_LENGTH_TOO_LONG'; expectedErrorReason = 'packet length too long'; }; assert.strictEqual(err.code, expectedErrorCode); assert.strictEqual(err.library, 'SSL routines'); - if (!common.hasOpenSSL3) assert.strictEqual(err.function, 'ssl3_get_record'); + if (!hasOpenSSL3) assert.strictEqual(err.function, 'ssl3_get_record'); assert.strictEqual(err.reason, expectedErrorReason); errorReceived = true; if (canCloseServer()) @@ -96,13 +104,13 @@ function sendBADTLSRecord() { client.on('error', common.mustCall((err) => { let expectedErrorCode = 'ERR_SSL_TLSV1_ALERT_PROTOCOL_VERSION'; let expectedErrorReason = 'tlsv1 alert protocol version'; - if (common.hasOpenSSL(3, 2)) { + if (hasOpenSSL(3, 2)) { expectedErrorCode = 'ERR_SSL_TLSV1_ALERT_RECORD_OVERFLOW'; expectedErrorReason = 'tlsv1 alert record overflow'; } assert.strictEqual(err.code, expectedErrorCode); assert.strictEqual(err.library, 'SSL routines'); - if (!common.hasOpenSSL3) + if (!hasOpenSSL3) assert.strictEqual(err.function, 'ssl3_read_bytes'); assert.strictEqual(err.reason, expectedErrorReason); })); diff --git a/test/parallel/test-tls-alert.js b/test/parallel/test-tls-alert.js index e6aaaedfe59d72..23c92e7293458f 100644 --- a/test/parallel/test-tls-alert.js +++ b/test/parallel/test-tls-alert.js @@ -21,11 +21,18 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { + hasOpenSSL, + opensslCli, +} = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} const assert = require('assert'); const { execFile } = require('child_process'); @@ -42,10 +49,10 @@ const server = tls.Server({ cert: loadPEM('agent2-cert') }, null).listen(0, common.mustCall(() => { const args = ['s_client', '-quiet', '-tls1_1', - '-cipher', (common.hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), + '-cipher', (hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), '-connect', `127.0.0.1:${server.address().port}`]; - execFile(common.opensslCli, args, common.mustCall((err, _, stderr) => { + execFile(opensslCli, args, common.mustCall((err, _, stderr) => { assert.strictEqual(err.code, 1); assert.match(stderr, /SSL alert number 70/); server.close(); diff --git a/test/parallel/test-tls-alpn-server-client.js b/test/parallel/test-tls-alpn-server-client.js index 8f1a4b8e439aab..b7cd2806471e67 100644 --- a/test/parallel/test-tls-alpn-server-client.js +++ b/test/parallel/test-tls-alpn-server-client.js @@ -1,8 +1,9 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const { spawn } = require('child_process'); @@ -198,7 +199,7 @@ function TestFatalAlert() { // OpenSSL's s_client should output the TLS alert number, which is 120 // for the 'no_application_protocol' alert. - const { opensslCli } = common; + const { opensslCli } = require('../common/crypto'); if (opensslCli) { const addr = `${serverIP}:${port}`; let stderr = ''; diff --git a/test/parallel/test-tls-cert-ext-encoding.js b/test/parallel/test-tls-cert-ext-encoding.js index 4556b5791851c5..154e0cdcf02294 100644 --- a/test/parallel/test-tls-cert-ext-encoding.js +++ b/test/parallel/test-tls-cert-ext-encoding.js @@ -3,7 +3,9 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); -if (common.hasOpenSSL3) +const { hasOpenSSL3 } = require('../common/crypto'); + +if (hasOpenSSL3) // TODO(danbev) This test fails with the following error: // error:0D00008F:asn1 encoding routines::no matching choice type // diff --git a/test/parallel/test-tls-client-auth.js b/test/parallel/test-tls-client-auth.js index de4c8f038ec073..b347c0a88df571 100644 --- a/test/parallel/test-tls-client-auth.js +++ b/test/parallel/test-tls-client-auth.js @@ -3,6 +3,11 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); +if (!common.hasCrypto) { + common.skip('missing crypto'); +} +const { hasOpenSSL } = require('../common/crypto'); + const { assert, connect, keys, tls } = require(fixtures.path('tls-connect')); @@ -79,7 +84,7 @@ connect({ }, function(err, pair, cleanup) { assert.strictEqual(pair.server.err.code, 'ERR_SSL_PEER_DID_NOT_RETURN_A_CERTIFICATE'); - const expectedErr = common.hasOpenSSL(3, 2) ? + const expectedErr = hasOpenSSL(3, 2) ? 'ERR_SSL_SSL/TLS_ALERT_HANDSHAKE_FAILURE' : 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE'; assert.strictEqual(pair.client.err.code, expectedErr); diff --git a/test/parallel/test-tls-client-getephemeralkeyinfo.js b/test/parallel/test-tls-client-getephemeralkeyinfo.js index 0bacd8702fc650..0f132c565e4400 100644 --- a/test/parallel/test-tls-client-getephemeralkeyinfo.js +++ b/test/parallel/test-tls-client-getephemeralkeyinfo.js @@ -3,6 +3,7 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); const fixtures = require('../common/fixtures'); +const { hasOpenSSL } = require('../common/crypto'); const assert = require('assert'); const { X509Certificate } = require('crypto'); @@ -69,7 +70,7 @@ function test(size, type, name, cipher) { test(undefined, undefined, undefined, 'AES256-SHA256'); test('auto', 'DH', undefined, 'DHE-RSA-AES256-GCM-SHA384'); -if (!common.hasOpenSSL(3, 2)) { +if (!hasOpenSSL(3, 2)) { test(1024, 'DH', undefined, 'DHE-RSA-AES256-GCM-SHA384'); } else { test(3072, 'DH', undefined, 'DHE-RSA-AES256-GCM-SHA384'); diff --git a/test/parallel/test-tls-client-mindhsize.js b/test/parallel/test-tls-client-mindhsize.js index 15c086842e1e4a..1ab5b5fe1bffd7 100644 --- a/test/parallel/test-tls-client-mindhsize.js +++ b/test/parallel/test-tls-client-mindhsize.js @@ -3,6 +3,7 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); +const { hasOpenSSL } = require('../common/crypto'); const assert = require('assert'); const tls = require('tls'); const fixtures = require('../common/fixtures'); @@ -38,7 +39,7 @@ function test(size, err, next) { // Client set minimum DH parameter size to 2048 or 3072 bits // so that it fails when it makes a connection to the tls // server where is too small - const minDHSize = common.hasOpenSSL(3, 2) ? 3072 : 2048; + const minDHSize = hasOpenSSL(3, 2) ? 3072 : 2048; const client = tls.connect({ minDHSize: minDHSize, port: this.address().port, @@ -76,7 +77,7 @@ function testDHE3072() { test(3072, false, null); } -if (common.hasOpenSSL(3, 2)) { +if (hasOpenSSL(3, 2)) { // Minimum size for OpenSSL 3.2 is 2048 by default testDHE2048(true, testDHE3072); } else { diff --git a/test/parallel/test-tls-client-renegotiation-13.js b/test/parallel/test-tls-client-renegotiation-13.js index a32baed0249a0a..38a72fb525b430 100644 --- a/test/parallel/test-tls-client-renegotiation-13.js +++ b/test/parallel/test-tls-client-renegotiation-13.js @@ -1,6 +1,12 @@ 'use strict'; const common = require('../common'); + +if (!common.hasCrypto) { + common.skip('missing crypto'); +} +const { hasOpenSSL3 } = require('../common/crypto'); + const fixtures = require('../common/fixtures'); // Confirm that for TLSv1.3, renegotiate() is disallowed. @@ -29,7 +35,7 @@ connect({ const ok = client.renegotiate({}, common.mustCall((err) => { assert.throws(() => { throw err; }, { - message: common.hasOpenSSL3 ? + message: hasOpenSSL3 ? 'error:0A00010A:SSL routines::wrong ssl version' : 'error:1420410A:SSL routines:SSL_renegotiate:wrong ssl version', code: 'ERR_SSL_WRONG_SSL_VERSION', diff --git a/test/parallel/test-tls-client-renegotiation-limit.js b/test/parallel/test-tls-client-renegotiation-limit.js index 71d7a85bae468b..b35140e8964ac1 100644 --- a/test/parallel/test-tls-client-renegotiation-limit.js +++ b/test/parallel/test-tls-client-renegotiation-limit.js @@ -21,11 +21,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} const assert = require('assert'); const tls = require('tls'); diff --git a/test/parallel/test-tls-connect-memleak.js b/test/parallel/test-tls-connect-memleak.js index 5bdcbe89f785f6..7b9cb71d8df0ba 100644 --- a/test/parallel/test-tls-connect-memleak.js +++ b/test/parallel/test-tls-connect-memleak.js @@ -57,7 +57,7 @@ const gcListener = { ongc() { collected = true; } }; } function done(sock) { - global.gc(); + globalThis.gc(); setImmediate(() => { assert.strictEqual(collected, true); sock.end(); diff --git a/test/parallel/test-tls-dhe.js b/test/parallel/test-tls-dhe.js index 21739ce42428eb..25b58191e1d413 100644 --- a/test/parallel/test-tls-dhe.js +++ b/test/parallel/test-tls-dhe.js @@ -22,11 +22,18 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { + hasOpenSSL, + opensslCli, +} = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('missing openssl-cli'); +} const assert = require('assert'); const { X509Certificate } = require('crypto'); @@ -43,7 +50,7 @@ const dheCipher = 'DHE-RSA-AES128-SHA256'; const ecdheCipher = 'ECDHE-RSA-AES128-SHA256'; const ciphers = `${dheCipher}:${ecdheCipher}`; -if (!common.hasOpenSSL(3, 2)) { +if (!hasOpenSSL(3, 2)) { // Test will emit a warning because the DH parameter size is < 2048 bits // when the test is run on versions lower than OpenSSL32 common.expectWarning('SecurityWarning', @@ -70,7 +77,7 @@ function test(dhparam, keylen, expectedCipher) { const args = ['s_client', '-connect', `127.0.0.1:${server.address().port}`, '-cipher', `${ciphers}:@SECLEVEL=1`]; - execFile(common.opensslCli, args, common.mustSucceed((stdout) => { + execFile(opensslCli, args, common.mustSucceed((stdout) => { assert(keylen === null || stdout.includes(`Server Temp Key: DH, ${keylen} bits`)); assert(stdout.includes(`Cipher : ${expectedCipher}`)); @@ -107,7 +114,7 @@ function testCustomParam(keylen, expectedCipher) { }, /DH parameter is less than 1024 bits/); // Custom DHE parameters are supported (but discouraged). - if (!common.hasOpenSSL(3, 2)) { + if (!hasOpenSSL(3, 2)) { await testCustomParam(1024, dheCipher); } else { await testCustomParam(3072, dheCipher); diff --git a/test/parallel/test-tls-ecdh-auto.js b/test/parallel/test-tls-ecdh-auto.js index 11c588d8ac8ce1..adc7817b729aa8 100644 --- a/test/parallel/test-tls-ecdh-auto.js +++ b/test/parallel/test-tls-ecdh-auto.js @@ -4,11 +4,15 @@ const common = require('../common'); // This test ensures that the value "auto" on ecdhCurve option is // supported to enable automatic curve selection in TLS server. -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('missing openssl-cli'); +} const assert = require('assert'); const tls = require('tls'); @@ -36,7 +40,7 @@ const server = tls.createServer(options, (conn) => { '-cipher', `${options.ciphers}`, '-connect', `127.0.0.1:${server.address().port}`]; - execFile(common.opensslCli, args, common.mustSucceed((stdout) => { + execFile(opensslCli, args, common.mustSucceed((stdout) => { assert(stdout.includes(reply)); server.close(); })); diff --git a/test/parallel/test-tls-ecdh-multiple.js b/test/parallel/test-tls-ecdh-multiple.js index 5bf119f48bacad..957f8e0407a6de 100644 --- a/test/parallel/test-tls-ecdh-multiple.js +++ b/test/parallel/test-tls-ecdh-multiple.js @@ -4,11 +4,16 @@ const common = require('../common'); // This test ensures that ecdhCurve option of TLS server supports colon // separated ECDH curve names as value. -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); +const crypto = require('crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('missing openssl-cli'); +} const assert = require('assert'); const tls = require('tls'); @@ -36,7 +41,7 @@ const server = tls.createServer(options, (conn) => { '-cipher', `${options.ciphers}`, '-connect', `127.0.0.1:${server.address().port}`]; - execFile(common.opensslCli, args, common.mustSucceed((stdout) => { + execFile(opensslCli, args, common.mustSucceed((stdout) => { assert(stdout.includes(reply)); server.close(); })); @@ -51,8 +56,9 @@ const server = tls.createServer(options, (conn) => { ]; // Brainpool is not supported in FIPS mode. - if (common.hasFipsCrypto) + if (crypto.getFips()) { unsupportedCurves.push('brainpoolP256r1'); + } unsupportedCurves.forEach((ecdhCurve) => { assert.throws(() => tls.createServer({ ecdhCurve }), diff --git a/test/parallel/test-tls-ecdh.js b/test/parallel/test-tls-ecdh.js index 276b713f5ecf70..4d45e7f024586e 100644 --- a/test/parallel/test-tls-ecdh.js +++ b/test/parallel/test-tls-ecdh.js @@ -23,11 +23,15 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} -if (!common.opensslCli) +const { opensslCli } = require('../common/crypto'); + +if (!opensslCli) { common.skip('missing openssl-cli'); +} const assert = require('assert'); const tls = require('tls'); @@ -49,7 +53,7 @@ const server = tls.createServer(options, common.mustCall(function(conn) { })); server.listen(0, '127.0.0.1', common.mustCall(function() { - const cmd = common.escapePOSIXShell`"${common.opensslCli}" s_client -cipher ${ + const cmd = common.escapePOSIXShell`"${opensslCli}" s_client -cipher ${ options.ciphers} -connect 127.0.0.1:${this.address().port}`; exec(...cmd, common.mustSucceed((stdout, stderr) => { diff --git a/test/parallel/test-tls-empty-sni-context.js b/test/parallel/test-tls-empty-sni-context.js index 093e5cca712d2c..79f1ddd341d938 100644 --- a/test/parallel/test-tls-empty-sni-context.js +++ b/test/parallel/test-tls-empty-sni-context.js @@ -3,7 +3,7 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); - +const { hasOpenSSL } = require('../common/crypto'); const assert = require('assert'); const tls = require('tls'); @@ -26,7 +26,7 @@ const server = tls.createServer(options, (c) => { }, common.mustNotCall()); c.on('error', common.mustCall((err) => { - const expectedErr = common.hasOpenSSL(3, 2) ? + const expectedErr = hasOpenSSL(3, 2) ? 'ERR_SSL_SSL/TLS_ALERT_HANDSHAKE_FAILURE' : 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE'; assert.strictEqual(err.code, expectedErr); })); diff --git a/test/parallel/test-tls-error-stack.js b/test/parallel/test-tls-error-stack.js new file mode 100644 index 00000000000000..36deb05b511234 --- /dev/null +++ b/test/parallel/test-tls-error-stack.js @@ -0,0 +1,18 @@ +'use strict'; + +// This tests that the crypto error stack can be correctly converted. +const common = require('../common'); +if (!common.hasCrypto) + common.skip('missing crypto'); + +const assert = require('assert'); +const tls = require('tls'); + +assert.throws(() => { + tls.createSecureContext({ clientCertEngine: 'x' }); +}, (err) => { + return err.name === 'Error' && + /could not load the shared library/.test(err.message) && + Array.isArray(err.opensslErrorStack) && + err.opensslErrorStack.length > 0; +}); diff --git a/test/parallel/test-tls-getprotocol.js b/test/parallel/test-tls-getprotocol.js index a9c8775e2f112f..b1eab88fd6517e 100644 --- a/test/parallel/test-tls-getprotocol.js +++ b/test/parallel/test-tls-getprotocol.js @@ -3,6 +3,8 @@ const common = require('../common'); if (!common.hasCrypto) common.skip('missing crypto'); +const { hasOpenSSL } = require('../common/crypto'); + // This test ensures that `getProtocol` returns the right protocol // from a TLS connection @@ -14,11 +16,11 @@ const clientConfigs = [ { secureProtocol: 'TLSv1_method', version: 'TLSv1', - ciphers: (common.hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT') + ciphers: (hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT') }, { secureProtocol: 'TLSv1_1_method', version: 'TLSv1.1', - ciphers: (common.hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT') + ciphers: (hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT') }, { secureProtocol: 'TLSv1_2_method', version: 'TLSv1.2' diff --git a/test/parallel/test-tls-junk-server.js b/test/parallel/test-tls-junk-server.js index cc520383ede45f..0e536a66884e94 100644 --- a/test/parallel/test-tls-junk-server.js +++ b/test/parallel/test-tls-junk-server.js @@ -1,8 +1,11 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { hasOpenSSL } = require('../common/crypto'); const assert = require('assert'); const https = require('https'); @@ -21,7 +24,7 @@ server.listen(0, function() { req.end(); let expectedErrorMessage = new RegExp('wrong version number'); - if (common.hasOpenSSL(3, 2)) { + if (hasOpenSSL(3, 2)) { expectedErrorMessage = new RegExp('packet length too long'); }; req.once('error', common.mustCall(function(err) { diff --git a/test/parallel/test-tls-key-mismatch.js b/test/parallel/test-tls-key-mismatch.js index fdbb3676267a9d..df8848a03de4a9 100644 --- a/test/parallel/test-tls-key-mismatch.js +++ b/test/parallel/test-tls-key-mismatch.js @@ -22,14 +22,16 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const fixtures = require('../common/fixtures'); +const { hasOpenSSL3 } = require('../common/crypto'); const assert = require('assert'); const tls = require('tls'); -const errorMessageRegex = common.hasOpenSSL3 ? +const errorMessageRegex = hasOpenSSL3 ? /^Error: error:05800074:x509 certificate routines::key values mismatch$/ : /^Error: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch$/; diff --git a/test/parallel/test-tls-legacy-pfx.js b/test/parallel/test-tls-legacy-pfx.js index 33b4c58fc6ccc3..5106217718dbdc 100644 --- a/test/parallel/test-tls-legacy-pfx.js +++ b/test/parallel/test-tls-legacy-pfx.js @@ -1,9 +1,14 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); -if (!common.hasOpenSSL3) +} + +const { hasOpenSSL3 } = require('../common/crypto'); + +if (!hasOpenSSL3) { common.skip('OpenSSL legacy failures are only testable with OpenSSL 3+'); +} const fixtures = require('../common/fixtures'); diff --git a/test/parallel/test-tls-min-max-version.js b/test/parallel/test-tls-min-max-version.js index af32468eea6a68..4903d92f5c5700 100644 --- a/test/parallel/test-tls-min-max-version.js +++ b/test/parallel/test-tls-min-max-version.js @@ -1,5 +1,13 @@ 'use strict'; const common = require('../common'); + +if (!common.hasCrypto) { + common.skip('missing crypto'); +} +const { + hasOpenSSL, + hasOpenSSL3, +} = require('../common/crypto'); const fixtures = require('../common/fixtures'); const { inspect } = require('util'); @@ -16,13 +24,13 @@ function test(cmin, cmax, cprot, smin, smax, sprot, proto, cerr, serr) { assert(proto || cerr || serr, 'test missing any expectations'); let ciphers; - if (common.hasOpenSSL3 && (proto === 'TLSv1' || proto === 'TLSv1.1' || + if (hasOpenSSL3 && (proto === 'TLSv1' || proto === 'TLSv1.1' || proto === 'TLSv1_1_method' || proto === 'TLSv1_method' || sprot === 'TLSv1_1_method' || sprot === 'TLSv1_method')) { if (serr !== 'ERR_SSL_UNSUPPORTED_PROTOCOL') ciphers = 'ALL@SECLEVEL=0'; } - if (common.hasOpenSSL(3, 1) && cerr === 'ERR_SSL_TLSV1_ALERT_PROTOCOL_VERSION') { + if (hasOpenSSL(3, 1) && cerr === 'ERR_SSL_TLSV1_ALERT_PROTOCOL_VERSION') { ciphers = 'DEFAULT@SECLEVEL=0'; } // Report where test was called from. Strip leading garbage from @@ -125,9 +133,9 @@ test(U, U, 'TLS_method', U, U, 'TLSv1_method', 'TLSv1'); // OpenSSL 1.1.1 and 3.0 use a different error code and alert (sent to the // client) when no protocols are enabled on the server. -const NO_PROTOCOLS_AVAILABLE_SERVER = common.hasOpenSSL3 ? +const NO_PROTOCOLS_AVAILABLE_SERVER = hasOpenSSL3 ? 'ERR_SSL_NO_PROTOCOLS_AVAILABLE' : 'ERR_SSL_INTERNAL_ERROR'; -const NO_PROTOCOLS_AVAILABLE_SERVER_ALERT = common.hasOpenSSL3 ? +const NO_PROTOCOLS_AVAILABLE_SERVER_ALERT = hasOpenSSL3 ? 'ERR_SSL_TLSV1_ALERT_PROTOCOL_VERSION' : 'ERR_SSL_TLSV1_ALERT_INTERNAL_ERROR'; // SSLv23 also means "any supported protocol" greater than the default diff --git a/test/parallel/test-tls-no-sslv3.js b/test/parallel/test-tls-no-sslv3.js index 9282beb4bdac2c..cd5f4ad944a6c5 100644 --- a/test/parallel/test-tls-no-sslv3.js +++ b/test/parallel/test-tls-no-sslv3.js @@ -1,10 +1,14 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} -if (common.opensslCli === false) +const { opensslCli } = require('../common/crypto'); + +if (opensslCli === false) { common.skip('node compiled without OpenSSL CLI.'); +} const assert = require('assert'); const tls = require('tls'); @@ -23,7 +27,7 @@ server.listen(0, '127.0.0.1', function() { '-ssl3', '-connect', address]; - const client = spawn(common.opensslCli, args, { stdio: 'pipe' }); + const client = spawn(opensslCli, args, { stdio: 'pipe' }); client.stdout.pipe(process.stdout); client.stderr.pipe(process.stderr); client.stderr.setEncoding('utf8'); diff --git a/test/parallel/test-tls-ocsp-callback.js b/test/parallel/test-tls-ocsp-callback.js index 04a60a0890c506..bdf622d4686ec1 100644 --- a/test/parallel/test-tls-ocsp-callback.js +++ b/test/parallel/test-tls-ocsp-callback.js @@ -22,12 +22,17 @@ 'use strict'; const common = require('../common'); -if (!common.opensslCli) - common.skip('node compiled without OpenSSL CLI.'); - -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); + +if (!opensslCli) { + common.skip('node compiled without OpenSSL CLI.'); +} +const crypto = require('crypto'); const tls = require('tls'); const fixtures = require('../common/fixtures'); @@ -108,6 +113,6 @@ test({ ocsp: true, response: false }); test({ ocsp: true, response: 'hello world' }); test({ ocsp: false }); -if (!common.hasFipsCrypto) { +if (!crypto.getFips()) { test({ ocsp: true, response: 'hello pfx', pfx: pfx, passphrase: 'sample' }); } diff --git a/test/parallel/test-tls-psk-circuit.js b/test/parallel/test-tls-psk-circuit.js index e93db3eb1b4923..61861ecf4dafa6 100644 --- a/test/parallel/test-tls-psk-circuit.js +++ b/test/parallel/test-tls-psk-circuit.js @@ -1,9 +1,11 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} +const { hasOpenSSL } = require('../common/crypto'); const assert = require('assert'); const tls = require('tls'); @@ -62,11 +64,12 @@ test({ psk: USERS.UserA, identity: 'UserA' }, { minVersion: 'TLSv1.3' }); test({ psk: USERS.UserB, identity: 'UserB' }); test({ psk: USERS.UserB, identity: 'UserB' }, { minVersion: 'TLSv1.3' }); // Unrecognized user should fail handshake -const expectedHandshakeErr = common.hasOpenSSL(3, 2) ? +const expectedHandshakeErr = hasOpenSSL(3, 2) ? 'ERR_SSL_SSL/TLS_ALERT_HANDSHAKE_FAILURE' : 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE'; test({ psk: USERS.UserB, identity: 'UserC' }, {}, expectedHandshakeErr); // Recognized user but incorrect secret should fail handshake -const expectedIllegalParameterErr = common.hasOpenSSL(3, 2) ? - 'ERR_SSL_SSL/TLS_ALERT_ILLEGAL_PARAMETER' : 'ERR_SSL_SSLV3_ALERT_ILLEGAL_PARAMETER'; +const expectedIllegalParameterErr = hasOpenSSL(3, 4) ? 'ERR_SSL_TLSV1_ALERT_DECRYPT_ERROR' : + hasOpenSSL(3, 2) ? + 'ERR_SSL_SSL/TLS_ALERT_ILLEGAL_PARAMETER' : 'ERR_SSL_SSLV3_ALERT_ILLEGAL_PARAMETER'; test({ psk: USERS.UserA, identity: 'UserB' }, {}, expectedIllegalParameterErr); test({ psk: USERS.UserB, identity: 'UserB' }); diff --git a/test/parallel/test-tls-psk-server.js b/test/parallel/test-tls-psk-server.js index b9260958401522..87fad86083e1ab 100644 --- a/test/parallel/test-tls-psk-server.js +++ b/test/parallel/test-tls-psk-server.js @@ -1,10 +1,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); -if (!common.opensslCli) +} + +const { opensslCli } = require('../common/crypto'); + +if (!opensslCli) { common.skip('missing openssl cli'); +} const assert = require('assert'); @@ -41,7 +46,7 @@ let sentWorld = false; let gotWorld = false; server.listen(0, () => { - const client = spawn(common.opensslCli, [ + const client = spawn(opensslCli, [ 's_client', '-connect', `127.0.0.1:${server.address().port}`, '-cipher', CIPHERS, diff --git a/test/parallel/test-tls-securepair-leak.js b/test/parallel/test-tls-securepair-leak.js index 98bdcde76ec034..e3d5c2cdf37b5d 100644 --- a/test/parallel/test-tls-securepair-leak.js +++ b/test/parallel/test-tls-securepair-leak.js @@ -17,7 +17,7 @@ const before = process.memoryUsage().external; createSecurePair(context, false, false, false, options).destroy(); } setImmediate(() => { - global.gc(); + globalThis.gc(); const after = process.memoryUsage().external; // It's not an exact science but a SecurePair grows .external by about 45 KiB. diff --git a/test/parallel/test-tls-securepair-server.js b/test/parallel/test-tls-securepair-server.js index 78cd9f725401ed..fb4ebe6a2511cf 100644 --- a/test/parallel/test-tls-securepair-server.js +++ b/test/parallel/test-tls-securepair-server.js @@ -21,11 +21,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('missing openssl-cli'); +} const assert = require('assert'); const tls = require('tls'); @@ -109,7 +113,7 @@ server.listen(0, common.mustCall(function() { const args = ['s_client', '-connect', `127.0.0.1:${this.address().port}`]; - const client = spawn(common.opensslCli, args); + const client = spawn(opensslCli, args); let out = ''; diff --git a/test/parallel/test-tls-server-verify.js b/test/parallel/test-tls-server-verify.js index 51ccd0d747fdf5..2517c7c8dbbb1f 100644 --- a/test/parallel/test-tls-server-verify.js +++ b/test/parallel/test-tls-server-verify.js @@ -22,11 +22,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} // This is a rather complex test which sets up various TLS servers with node // and connects to them using the 'openssl s_client' command line utility @@ -188,7 +192,7 @@ function runClient(prefix, port, options, cb) { } // To test use: openssl s_client -connect localhost:8000 - const client = spawn(common.opensslCli, args); + const client = spawn(opensslCli, args); let out = ''; diff --git a/test/parallel/test-tls-session-cache.js b/test/parallel/test-tls-session-cache.js index b55e150401d8a2..9524764aa609ee 100644 --- a/test/parallel/test-tls-session-cache.js +++ b/test/parallel/test-tls-session-cache.js @@ -21,17 +21,23 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} +const { + hasOpenSSL, + opensslCli, +} = require('../common/crypto'); + +if (!opensslCli) { + common.skip('node compiled without OpenSSL CLI.'); +} + const fixtures = require('../common/fixtures'); const assert = require('assert'); const tls = require('tls'); const { spawn } = require('child_process'); -if (!common.opensslCli) - common.skip('node compiled without OpenSSL CLI.'); - - doTest({ tickets: false }, function() { doTest({ tickets: true }, function() { doTest({ tickets: false, invalidSession: true }, function() { @@ -100,7 +106,7 @@ function doTest(testOptions, callback) { const args = [ 's_client', '-tls1', - '-cipher', (common.hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), + '-cipher', (hasOpenSSL(3, 1) ? 'DEFAULT:@SECLEVEL=0' : 'DEFAULT'), '-connect', `localhost:${this.address().port}`, '-servername', 'ohgod', '-key', fixtures.path('keys/rsa_private.pem'), @@ -109,7 +115,7 @@ function doTest(testOptions, callback) { ].concat(testOptions.tickets ? [] : '-no_ticket'); function spawnClient() { - const client = spawn(common.opensslCli, args, { + const client = spawn(opensslCli, args, { stdio: [ 0, 1, 'pipe' ] }); let err = ''; diff --git a/test/parallel/test-tls-set-ciphers.js b/test/parallel/test-tls-set-ciphers.js index f7062e73c9403c..1e63e9376e134b 100644 --- a/test/parallel/test-tls-set-ciphers.js +++ b/test/parallel/test-tls-set-ciphers.js @@ -1,7 +1,17 @@ 'use strict'; const common = require('../common'); -if (!common.hasOpenSSL3) +if (!common.hasCrypto) { common.skip('missing crypto, or OpenSSL version lower than 3'); +} + +const { + hasOpenSSL, + hasOpenSSL3, +} = require('../common/crypto'); + +if (!hasOpenSSL3) { + common.skip('missing crypto, or OpenSSL version lower than 3'); +} const fixtures = require('../common/fixtures'); const { inspect } = require('util'); @@ -80,7 +90,7 @@ function test(cciphers, sciphers, cipher, cerr, serr, options) { const U = undefined; let expectedTLSAlertError = 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE'; -if (common.hasOpenSSL(3, 2)) { +if (hasOpenSSL(3, 2)) { expectedTLSAlertError = 'ERR_SSL_SSL/TLS_ALERT_HANDSHAKE_FAILURE'; } @@ -117,7 +127,7 @@ test(U, 'AES256-SHA', 'TLS_AES_256_GCM_SHA384', U, U, { maxVersion: 'TLSv1.3' }) // default, but work. // However, for OpenSSL32 AES_128 is not enabled due to the // default security level -if (!common.hasOpenSSL(3, 2)) { +if (!hasOpenSSL(3, 2)) { test('TLS_AES_128_CCM_8_SHA256', U, U, 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE', 'ERR_SSL_NO_SHARED_CIPHER'); diff --git a/test/parallel/test-tls-set-secure-context.js b/test/parallel/test-tls-set-secure-context.js index c056875e14ddfb..3d2de6b3321414 100644 --- a/test/parallel/test-tls-set-secure-context.js +++ b/test/parallel/test-tls-set-secure-context.js @@ -1,8 +1,9 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} // This test verifies the behavior of the tls setSecureContext() method. // It also verifies that existing connections are not disrupted when the @@ -12,6 +13,7 @@ const assert = require('assert'); const events = require('events'); const https = require('https'); const timers = require('timers/promises'); +const { hasOpenSSL3 } = require('../common/crypto'); const fixtures = require('../common/fixtures'); const credentialOptions = [ { @@ -55,7 +57,7 @@ server.listen(0, common.mustCall(() => { server.setSecureContext(credentialOptions[1]); firstResponse.write('request-'); - const errorMessageRegex = common.hasOpenSSL3 ? + const errorMessageRegex = hasOpenSSL3 ? /^Error: self-signed certificate$/ : /^Error: self signed certificate$/; await assert.rejects(makeRequest(port, 3), errorMessageRegex); diff --git a/test/parallel/test-tls-set-sigalgs.js b/test/parallel/test-tls-set-sigalgs.js index 3f3d152f4d877e..985ca13ba2ac7d 100644 --- a/test/parallel/test-tls-set-sigalgs.js +++ b/test/parallel/test-tls-set-sigalgs.js @@ -1,6 +1,9 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) common.skip('missing crypto'); +if (!common.hasCrypto) { + common.skip('missing crypto'); +} +const { hasOpenSSL } = require('../common/crypto'); const fixtures = require('../common/fixtures'); // Test sigalgs: option for TLS. @@ -63,7 +66,7 @@ test('RSA-PSS+SHA256:RSA-PSS+SHA512:ECDSA+SHA256', ['RSA-PSS+SHA256', 'ECDSA+SHA256']); // Do not have shared sigalgs. -const handshakeErr = common.hasOpenSSL(3, 2) ? +const handshakeErr = hasOpenSSL(3, 2) ? 'ERR_SSL_SSL/TLS_ALERT_HANDSHAKE_FAILURE' : 'ERR_SSL_SSLV3_ALERT_HANDSHAKE_FAILURE'; test('RSA-PSS+SHA384', 'ECDSA+SHA256', undefined, handshakeErr, diff --git a/test/parallel/test-tls-transport-destroy-after-own-gc.js b/test/parallel/test-tls-transport-destroy-after-own-gc.js index 17c494ca0b79d1..bcac2c6ebde2b8 100644 --- a/test/parallel/test-tls-transport-destroy-after-own-gc.js +++ b/test/parallel/test-tls-transport-destroy-after-own-gc.js @@ -19,11 +19,11 @@ let clientTLSHandle = clientTLS._handle; // eslint-disable-line no-unused-vars setImmediate(() => { clientTLS = null; - global.gc(); + globalThis.gc(); clientTLSHandle = null; - global.gc(); + globalThis.gc(); setImmediate(() => { clientSide = null; - global.gc(); + globalThis.gc(); }); }); diff --git a/test/parallel/test-trace-env.js b/test/parallel/test-trace-env.js index c67924e5c610d3..7a7b80fa4c1094 100644 --- a/test/parallel/test-trace-env.js +++ b/test/parallel/test-trace-env.js @@ -14,28 +14,30 @@ spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('empty.js')], // If the internals remove any one of them, the checks here can be updated // accordingly. if (common.hasIntl) { - assert.match(output, /get environment variable "NODE_ICU_DATA"/); + assert.match(output, /get "NODE_ICU_DATA"/); } if (common.hasCrypto) { - assert.match(output, /get environment variable "NODE_EXTRA_CA_CERTS"/); - } - if (common.hasOpenSSL3) { - assert.match(output, /get environment variable "OPENSSL_CONF"/); + assert.match(output, /get "NODE_EXTRA_CA_CERTS"/); + + const { hasOpenSSL3 } = require('../common/crypto'); + if (hasOpenSSL3) { + assert.match(output, /get "OPENSSL_CONF"/); + } } - assert.match(output, /get environment variable "NODE_DEBUG_NATIVE"/); - assert.match(output, /get environment variable "NODE_COMPILE_CACHE"/); - assert.match(output, /get environment variable "NODE_NO_WARNINGS"/); - assert.match(output, /get environment variable "NODE_V8_COVERAGE"/); - assert.match(output, /get environment variable "NODE_DEBUG"/); - assert.match(output, /get environment variable "NODE_CHANNEL_FD"/); - assert.match(output, /get environment variable "NODE_UNIQUE_ID"/); + assert.match(output, /get "NODE_DEBUG_NATIVE"/); + assert.match(output, /get "NODE_COMPILE_CACHE"/); + assert.match(output, /get "NODE_NO_WARNINGS"/); + assert.match(output, /get "NODE_V8_COVERAGE"/); + assert.match(output, /get "NODE_DEBUG"/); + assert.match(output, /get "NODE_CHANNEL_FD"/); + assert.match(output, /get "NODE_UNIQUE_ID"/); if (common.isWindows) { - assert.match(output, /get environment variable "USERPROFILE"/); + assert.match(output, /get "USERPROFILE"/); } else { - assert.match(output, /get environment variable "HOME"/); + assert.match(output, /get "HOME"/); } - assert.match(output, /get environment variable "NODE_PATH"/); - assert.match(output, /get environment variable "WATCH_REPORT_DEPENDENCIES"/); + assert.match(output, /get "NODE_PATH"/); + assert.match(output, /get "WATCH_REPORT_DEPENDENCIES"/); } }); @@ -48,22 +50,22 @@ spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env' } }, { stderr(output) { - assert.match(output, /get environment variable "FOO"/); - assert.match(output, /get environment variable "BAR"/); + assert.match(output, /get "FOO"/); + assert.match(output, /get "BAR"/); } }); // Check set from user land. spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'set.js') ], { stderr(output) { - assert.match(output, /set environment variable "FOO"/); + assert.match(output, /set "FOO"/); } }); // Check define from user land. spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'define.js') ], { stderr(output) { - assert.match(output, /set environment variable "FOO"/); + assert.match(output, /set "FOO"/); } }); @@ -77,16 +79,16 @@ spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env' } }, { stderr(output) { - assert.match(output, /query environment variable "FOO": is set/); - assert.match(output, /query environment variable "BAR": is not set/); - assert.match(output, /query environment variable "BAZ": is not set/); + assert.match(output, /query "FOO"/); + assert.match(output, /query "BAR"/); + assert.match(output, /query "BAZ"/); } }); // Check delete from user land. spawnSyncAndAssert(process.execPath, ['--trace-env', fixtures.path('process-env', 'delete.js') ], { stderr(output) { - assert.match(output, /delete environment variable "FOO"/); + assert.match(output, /delete "FOO"/); } }); diff --git a/test/parallel/test-trace-events-api.js b/test/parallel/test-trace-events-api.js index 709f8de9097906..9bffb3b78c4ba3 100644 --- a/test/parallel/test-trace-events-api.js +++ b/test/parallel/test-trace-events-api.js @@ -2,7 +2,12 @@ 'use strict'; const common = require('../common'); -common.skipIfWorker(); // https://github.com/nodejs/node/issues/22767 +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + // https://github.com/nodejs/node/issues/22767 + common.skip('This test only works on a main thread'); +} try { require('trace_events'); @@ -104,7 +109,7 @@ if (isChild) { assert.strictEqual(getEnabledCategories(), 'abc'); tracing3 = undefined; } - global.gc(); + globalThis.gc(); assert.strictEqual(getEnabledCategories(), 'abc'); // Not able to disable the thing after this point, however. } diff --git a/test/parallel/test-trace-events-dynamic-enable.js b/test/parallel/test-trace-events-dynamic-enable.js index 69251944031e1f..5b2ce313421568 100644 --- a/test/parallel/test-trace-events-dynamic-enable.js +++ b/test/parallel/test-trace-events-dynamic-enable.js @@ -4,7 +4,13 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); // https://github.com/nodejs/node/issues/22767 + +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + // https://github.com/nodejs/node/issues/22767 + common.skip('This test only works on a main thread'); +} const { internalBinding } = require('internal/test/binding'); diff --git a/test/parallel/test-util-format.js b/test/parallel/test-util-format.js index 8d2cab5a9c7a1c..6f222d0fea0fb8 100644 --- a/test/parallel/test-util-format.js +++ b/test/parallel/test-util-format.js @@ -197,9 +197,9 @@ assert.strictEqual(util.format('%s', -Infinity), '-Infinity'); util.format('%s', Object.setPrototypeOf(new Foo(), null)), '[Foo: null prototype] {}' ); - global.Foo = Foo; + globalThis.Foo = Foo; assert.strictEqual(util.format('%s', new Foo()), 'Bar'); - delete global.Foo; + delete globalThis.Foo; class Bar { abc = true; } assert.strictEqual(util.format('%s', new Bar()), 'Bar { abc: true }'); class Foobar extends Array { aaa = true; } diff --git a/test/parallel/test-util-getcallsites.js b/test/parallel/test-util-getcallsites.js index aef687c76b3c48..9930661b9022cd 100644 --- a/test/parallel/test-util-getcallsites.js +++ b/test/parallel/test-util-getcallsites.js @@ -79,6 +79,13 @@ const assert = require('node:assert'); ); } +// ScriptId is a string. +{ + const callSites = getCallSites(1); + assert.strictEqual(callSites.length, 1); + assert.strictEqual(typeof callSites[0].scriptId, 'string'); +} + // Guarantee [eval] will appear on stacktraces when using -e { const { status, stderr, stdout } = spawnSync( @@ -126,6 +133,7 @@ const assert = require('node:assert'); assert.strictEqual(stderr.toString(), ''); assert.match(output, /lineNumber: 8/); assert.match(output, /column: 18/); + assert.match(output, /columnNumber: 18/); assert.match(output, /test-get-callsite\.ts/); assert.strictEqual(status, 0); } @@ -143,6 +151,7 @@ const assert = require('node:assert'); // Line should be wrong when sourcemaps are disable assert.match(output, /lineNumber: 2/); assert.match(output, /column: 18/); + assert.match(output, /columnNumber: 18/); assert.match(output, /test-get-callsite\.ts/); assert.strictEqual(status, 0); } @@ -159,6 +168,7 @@ const assert = require('node:assert'); assert.strictEqual(stderr.toString(), ''); assert.match(output, /lineNumber: 2/); assert.match(output, /column: 18/); + assert.match(output, /columnNumber: 18/); assert.match(output, /test-get-callsite-explicit\.ts/); assert.strictEqual(status, 0); } diff --git a/test/parallel/test-util-inspect.js b/test/parallel/test-util-inspect.js index e69c0349dbafa9..48aaad977282fb 100644 --- a/test/parallel/test-util-inspect.js +++ b/test/parallel/test-util-inspect.js @@ -770,23 +770,25 @@ assert.strictEqual(util.inspect(-5e-324), '-5e-324'); // Note: Symbols are not supported by `Error#toString()` which is called by // accessing the `stack` property. [ - [404, '404: foo', '[404]'], - [0, '0: foo', '[RangeError: foo]'], - [0n, '0: foo', '[RangeError: foo]'], + [404, '404 [RangeError]: foo', '[404]'], + [0, '0 [RangeError]: foo', '[RangeError: foo]'], + [0n, '0 [RangeError]: foo', '[RangeError: foo]'], [null, 'null: foo', '[RangeError: foo]'], [undefined, 'RangeError: foo', '[RangeError: foo]'], - [false, 'false: foo', '[RangeError: foo]'], + [false, 'false [RangeError]: foo', '[RangeError: foo]'], ['', 'foo', '[RangeError: foo]'], - [[1, 2, 3], '1,2,3: foo', '[1,2,3]'], + [[1, 2, 3], '1,2,3 [RangeError]: foo', '[[\n 1,\n 2,\n 3\n]]'], ].forEach(([value, outputStart, stack]) => { let err = new RangeError('foo'); err.name = value; + const result = util.inspect(err); assert( - util.inspect(err).startsWith(outputStart), + result.startsWith(outputStart), util.format( - 'The name set to %o did not result in the expected output "%s"', + 'The name set to %o did not result in the expected output "%s", got "%s"', value, - outputStart + outputStart, + result.split('\n')[0] ) ); @@ -1263,9 +1265,9 @@ if (typeof Symbol !== 'undefined') { // a bonafide native Promise. { const oldPromise = Promise; - global.Promise = function() { this.bar = 42; }; + globalThis.Promise = function() { this.bar = 42; }; assert.strictEqual(util.inspect(new Promise()), '{ bar: 42 }'); - global.Promise = oldPromise; + globalThis.Promise = oldPromise; } // Test Map iterators. @@ -3179,7 +3181,7 @@ assert.strictEqual( } // Consistency check. - assert(fullObjectGraph(global).has(Function.prototype)); + assert(fullObjectGraph(globalThis).has(Function.prototype)); } { @@ -3394,3 +3396,35 @@ assert.strictEqual( Object.defineProperty(BuiltinPrototype, 'constructor', desc); } } + +{ + function f() {} + Object.defineProperty(f, 'name', { value: Symbol('f') }); + + assert.strictEqual( + util.inspect(f), + '[Function: Symbol(f)]', + ); +} + +{ + const error = new EvalError(); + const re = /a/g; + error.name = re; + assert.strictEqual(error.name, re); + assert.strictEqual( + util.inspect(error), + `${re} [EvalError] +${error.stack.split('\n').slice(1).join('\n')}`, + ); +} + +{ + const error = new Error(); + error.stack = [Symbol('foo')]; + + assert.strictEqual( + inspect(error), + '[[\n Symbol(foo)\n]]' + ); +} diff --git a/test/parallel/test-vm-basic.js b/test/parallel/test-vm-basic.js index 93c3fbaea631ab..5687987faeb0b9 100644 --- a/test/parallel/test-vm-basic.js +++ b/test/parallel/test-vm-basic.js @@ -59,9 +59,9 @@ const vm = require('vm'); const result = vm.runInThisContext( 'vmResult = "foo"; Object.prototype.toString.call(process);' ); - assert.strictEqual(global.vmResult, 'foo'); + assert.strictEqual(globalThis.vmResult, 'foo'); assert.strictEqual(result, '[object process]'); - delete global.vmResult; + delete globalThis.vmResult; } // vm.runInNewContext @@ -69,7 +69,7 @@ const vm = require('vm'); const result = vm.runInNewContext( 'vmResult = "foo"; typeof process;' ); - assert.strictEqual(global.vmResult, undefined); + assert.strictEqual(globalThis.vmResult, undefined); assert.strictEqual(result, 'undefined'); } diff --git a/test/parallel/test-vm-create-and-run-in-context.js b/test/parallel/test-vm-create-and-run-in-context.js index bd746cf2df7080..314ab9525743dc 100644 --- a/test/parallel/test-vm-create-and-run-in-context.js +++ b/test/parallel/test-vm-create-and-run-in-context.js @@ -45,6 +45,6 @@ assert.strictEqual(context.thing, 'lala'); // Run in contextified sandbox without referencing the context const sandbox = { x: 1 }; vm.createContext(sandbox); -global.gc(); +globalThis.gc(); vm.runInContext('x = 2', sandbox); // Should not crash. diff --git a/test/parallel/test-vm-cross-context.js b/test/parallel/test-vm-cross-context.js index b7cf1309d3689f..abdfde32a8d847 100644 --- a/test/parallel/test-vm-cross-context.js +++ b/test/parallel/test-vm-cross-context.js @@ -23,7 +23,7 @@ require('../common'); const vm = require('vm'); -const ctx = vm.createContext(global); +const ctx = vm.createContext(globalThis); // Should not throw. vm.runInContext('!function() { var x = console.log; }()', ctx); diff --git a/test/parallel/test-vm-global-get-own.js b/test/parallel/test-vm-global-get-own.js index 246fcbf866b8b6..de5e0a9619af65 100644 --- a/test/parallel/test-vm-global-get-own.js +++ b/test/parallel/test-vm-global-get-own.js @@ -9,7 +9,7 @@ const vm = require('vm'); // Related to: // - https://github.com/nodejs/node/issues/45983 -const global = vm.runInContext('this', vm.createContext()); +const contextGlobal = vm.runInContext('this', vm.createContext()); function runAssertions(data, property, viaDefine, value1, value2, value3) { // Define the property for the first time @@ -35,20 +35,20 @@ function runAssertionsOnSandbox(builder) { } // Assertions on: define property -runAssertions(global, 'toto', true, 1, 2, 3); -runAssertions(global, Symbol.for('toto'), true, 1, 2, 3); -runAssertions(global, 'tutu', true, fun1, fun2, fun3); -runAssertions(global, Symbol.for('tutu'), true, fun1, fun2, fun3); -runAssertions(global, 'tyty', true, fun1, 2, 3); -runAssertions(global, Symbol.for('tyty'), true, fun1, 2, 3); +runAssertions(contextGlobal, 'toto', true, 1, 2, 3); +runAssertions(contextGlobal, Symbol.for('toto'), true, 1, 2, 3); +runAssertions(contextGlobal, 'tutu', true, fun1, fun2, fun3); +runAssertions(contextGlobal, Symbol.for('tutu'), true, fun1, fun2, fun3); +runAssertions(contextGlobal, 'tyty', true, fun1, 2, 3); +runAssertions(contextGlobal, Symbol.for('tyty'), true, fun1, 2, 3); // Assertions on: direct assignment -runAssertions(global, 'titi', false, 1, 2, 3); -runAssertions(global, Symbol.for('titi'), false, 1, 2, 3); -runAssertions(global, 'tata', false, fun1, fun2, fun3); -runAssertions(global, Symbol.for('tata'), false, fun1, fun2, fun3); -runAssertions(global, 'tztz', false, fun1, 2, 3); -runAssertions(global, Symbol.for('tztz'), false, fun1, 2, 3); +runAssertions(contextGlobal, 'titi', false, 1, 2, 3); +runAssertions(contextGlobal, Symbol.for('titi'), false, 1, 2, 3); +runAssertions(contextGlobal, 'tata', false, fun1, fun2, fun3); +runAssertions(contextGlobal, Symbol.for('tata'), false, fun1, fun2, fun3); +runAssertions(contextGlobal, 'tztz', false, fun1, 2, 3); +runAssertions(contextGlobal, Symbol.for('tztz'), false, fun1, 2, 3); // Assertions on: define property from sandbox runAssertionsOnSandbox( diff --git a/test/parallel/test-vm-measure-memory-lazy.js b/test/parallel/test-vm-measure-memory-lazy.js index 513cfbc3672451..7f85f8d6ca9656 100644 --- a/test/parallel/test-vm-measure-memory-lazy.js +++ b/test/parallel/test-vm-measure-memory-lazy.js @@ -10,28 +10,28 @@ const vm = require('vm'); expectExperimentalWarning(); -// Test lazy memory measurement - we will need to global.gc() +// Test lazy memory measurement - we will need to globalThis.gc() // or otherwise these may not resolve. { vm.measureMemory() .then(common.mustCall(assertSummaryShape)); - global.gc(); + globalThis.gc(); } { vm.measureMemory({}) .then(common.mustCall(assertSummaryShape)); - global.gc(); + globalThis.gc(); } { vm.measureMemory({ mode: 'summary' }) .then(common.mustCall(assertSummaryShape)); - global.gc(); + globalThis.gc(); } { vm.measureMemory({ mode: 'detailed' }) .then(common.mustCall(assertSummaryShape)); - global.gc(); + globalThis.gc(); } diff --git a/test/parallel/test-vm-module-basic.js b/test/parallel/test-vm-module-basic.js index cba1e037ac455a..53fed6536079a0 100644 --- a/test/parallel/test-vm-module-basic.js +++ b/test/parallel/test-vm-module-basic.js @@ -37,15 +37,15 @@ const util = require('util'); (async () => { const m = new SourceTextModule(` - global.vmResultFoo = "foo"; - global.vmResultTypeofProcess = Object.prototype.toString.call(process); + globalThis.vmResultFoo = "foo"; + globalThis.vmResultTypeofProcess = Object.prototype.toString.call(process); `); await m.link(common.mustNotCall()); await m.evaluate(); - assert.strictEqual(global.vmResultFoo, 'foo'); - assert.strictEqual(global.vmResultTypeofProcess, '[object process]'); - delete global.vmResultFoo; - delete global.vmResultTypeofProcess; + assert.strictEqual(globalThis.vmResultFoo, 'foo'); + assert.strictEqual(globalThis.vmResultTypeofProcess, '[object process]'); + delete globalThis.vmResultFoo; + delete globalThis.vmResultTypeofProcess; })().then(common.mustCall()); (async () => { diff --git a/test/parallel/test-vm-new-script-new-context.js b/test/parallel/test-vm-new-script-new-context.js index 482b4130d615d9..b4221d81d98dcb 100644 --- a/test/parallel/test-vm-new-script-new-context.js +++ b/test/parallel/test-vm-new-script-new-context.js @@ -49,43 +49,43 @@ const Script = require('vm').Script; } { - global.hello = 5; + globalThis.hello = 5; const script = new Script('hello = 2'); script.runInNewContext(); - assert.strictEqual(global.hello, 5); + assert.strictEqual(globalThis.hello, 5); // Cleanup - delete global.hello; + delete globalThis.hello; } { - global.code = 'foo = 1;' + + globalThis.code = 'foo = 1;' + 'bar = 2;' + 'if (baz !== 3) throw new Error(\'test fail\');'; - global.foo = 2; - global.obj = { foo: 0, baz: 3 }; - const script = new Script(global.code); + globalThis.foo = 2; + globalThis.obj = { foo: 0, baz: 3 }; + const script = new Script(globalThis.code); /* eslint-disable no-unused-vars */ - const baz = script.runInNewContext(global.obj); + const baz = script.runInNewContext(globalThis.obj); /* eslint-enable no-unused-vars */ - assert.strictEqual(global.obj.foo, 1); - assert.strictEqual(global.obj.bar, 2); - assert.strictEqual(global.foo, 2); + assert.strictEqual(globalThis.obj.foo, 1); + assert.strictEqual(globalThis.obj.bar, 2); + assert.strictEqual(globalThis.foo, 2); // cleanup - delete global.code; - delete global.foo; - delete global.obj; + delete globalThis.code; + delete globalThis.foo; + delete globalThis.obj; } { const script = new Script('f()'); - function changeFoo() { global.foo = 100; } + function changeFoo() { globalThis.foo = 100; } script.runInNewContext({ f: changeFoo }); - assert.strictEqual(global.foo, 100); + assert.strictEqual(globalThis.foo, 100); // cleanup - delete global.foo; + delete globalThis.foo; } { diff --git a/test/parallel/test-vm-new-script-this-context.js b/test/parallel/test-vm-new-script-this-context.js index 18f39f9086ae2a..30b220e3d4a2c2 100644 --- a/test/parallel/test-vm-new-script-this-context.js +++ b/test/parallel/test-vm-new-script-this-context.js @@ -35,34 +35,34 @@ assert.throws(() => { script.runInThisContext(script); }, /^Error: test$/); -global.hello = 5; +globalThis.hello = 5; script = new Script('hello = 2'); script.runInThisContext(script); -assert.strictEqual(global.hello, 2); +assert.strictEqual(globalThis.hello, 2); // Pass values -global.code = 'foo = 1;' + +globalThis.code = 'foo = 1;' + 'bar = 2;' + 'if (typeof baz !== "undefined") throw new Error("test fail");'; -global.foo = 2; -global.obj = { foo: 0, baz: 3 }; -script = new Script(global.code); +globalThis.foo = 2; +globalThis.obj = { foo: 0, baz: 3 }; +script = new Script(globalThis.code); script.runInThisContext(script); -assert.strictEqual(global.obj.foo, 0); -assert.strictEqual(global.bar, 2); -assert.strictEqual(global.foo, 1); +assert.strictEqual(globalThis.obj.foo, 0); +assert.strictEqual(globalThis.bar, 2); +assert.strictEqual(globalThis.foo, 1); // Call a function -global.f = function() { global.foo = 100; }; +globalThis.f = function() { globalThis.foo = 100; }; script = new Script('f()'); script.runInThisContext(script); -assert.strictEqual(global.foo, 100); +assert.strictEqual(globalThis.foo, 100); common.allowGlobals( - global.hello, - global.code, - global.foo, - global.obj, - global.f + globalThis.hello, + globalThis.code, + globalThis.foo, + globalThis.obj, + globalThis.f ); diff --git a/test/parallel/test-vm-run-in-new-context.js b/test/parallel/test-vm-run-in-new-context.js index 6e8c42812bbc88..c6f8fbf893ca9a 100644 --- a/test/parallel/test-vm-run-in-new-context.js +++ b/test/parallel/test-vm-run-in-new-context.js @@ -26,7 +26,7 @@ const common = require('../common'); const assert = require('assert'); const vm = require('vm'); -if (typeof global.gc !== 'function') +if (typeof globalThis.gc !== 'function') assert.fail('Run this test with --expose-gc'); // Run a string @@ -38,28 +38,28 @@ assert.throws(() => { vm.runInNewContext('throw new Error(\'test\');'); }, /^Error: test$/); -global.hello = 5; +globalThis.hello = 5; vm.runInNewContext('hello = 2'); -assert.strictEqual(global.hello, 5); +assert.strictEqual(globalThis.hello, 5); // Pass values in and out -global.code = 'foo = 1;' + +globalThis.code = 'foo = 1;' + 'bar = 2;' + 'if (baz !== 3) throw new Error(\'test fail\');'; -global.foo = 2; -global.obj = { foo: 0, baz: 3 }; +globalThis.foo = 2; +globalThis.obj = { foo: 0, baz: 3 }; /* eslint-disable no-unused-vars */ -const baz = vm.runInNewContext(global.code, global.obj); +const baz = vm.runInNewContext(globalThis.code, globalThis.obj); /* eslint-enable no-unused-vars */ -assert.strictEqual(global.obj.foo, 1); -assert.strictEqual(global.obj.bar, 2); -assert.strictEqual(global.foo, 2); +assert.strictEqual(globalThis.obj.foo, 1); +assert.strictEqual(globalThis.obj.bar, 2); +assert.strictEqual(globalThis.foo, 2); // Call a function by reference -function changeFoo() { global.foo = 100; } +function changeFoo() { globalThis.foo = 100; } vm.runInNewContext('f()', { f: changeFoo }); -assert.strictEqual(global.foo, 100); +assert.strictEqual(globalThis.foo, 100); // Modify an object by reference const f = { a: 1 }; @@ -68,7 +68,7 @@ assert.strictEqual(f.a, 2); // Use function in context without referencing context const fn = vm.runInNewContext('(function() { obj.p = {}; })', { obj: {} }); -global.gc(); +globalThis.gc(); fn(); // Should not crash @@ -93,8 +93,8 @@ for (const arg of [filename, { filename }]) { } common.allowGlobals( - global.hello, - global.code, - global.foo, - global.obj + globalThis.hello, + globalThis.code, + globalThis.foo, + globalThis.obj ); diff --git a/test/parallel/test-vm-static-this.js b/test/parallel/test-vm-static-this.js index e9382d6c3b4c1a..f47c0b5d0d056a 100644 --- a/test/parallel/test-vm-static-this.js +++ b/test/parallel/test-vm-static-this.js @@ -33,9 +33,9 @@ assert.throws(function() { vm.runInThisContext('throw new Error(\'test\');'); }, /test/); -global.hello = 5; +globalThis.hello = 5; vm.runInThisContext('hello = 2'); -assert.strictEqual(global.hello, 2); +assert.strictEqual(globalThis.hello, 2); // pass values @@ -43,23 +43,23 @@ const code = 'foo = 1;' + 'bar = 2;' + 'if (typeof baz !== \'undefined\')' + 'throw new Error(\'test fail\');'; -global.foo = 2; -global.obj = { foo: 0, baz: 3 }; +globalThis.foo = 2; +globalThis.obj = { foo: 0, baz: 3 }; /* eslint-disable no-unused-vars */ const baz = vm.runInThisContext(code); /* eslint-enable no-unused-vars */ -assert.strictEqual(global.obj.foo, 0); -assert.strictEqual(global.bar, 2); -assert.strictEqual(global.foo, 1); +assert.strictEqual(globalThis.obj.foo, 0); +assert.strictEqual(globalThis.bar, 2); +assert.strictEqual(globalThis.foo, 1); // call a function -global.f = function() { global.foo = 100; }; +globalThis.f = function() { globalThis.foo = 100; }; vm.runInThisContext('f()'); -assert.strictEqual(global.foo, 100); +assert.strictEqual(globalThis.foo, 100); common.allowGlobals( - global.hello, - global.foo, - global.obj, - global.f + globalThis.hello, + globalThis.foo, + globalThis.obj, + globalThis.f ); diff --git a/test/parallel/test-warn-sigprof.js b/test/parallel/test-warn-sigprof.js index 36b0db78d82687..929deb69addb17 100644 --- a/test/parallel/test-warn-sigprof.js +++ b/test/parallel/test-warn-sigprof.js @@ -7,10 +7,15 @@ const common = require('../common'); common.skipIfInspectorDisabled(); -if (common.isWindows) +if (common.isWindows) { common.skip('test does not apply to Windows'); +} -common.skipIfWorker(); // Worker inspector never has a server running +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} common.expectWarning('Warning', 'process.on(SIGPROF) is reserved while debugging'); diff --git a/test/parallel/test-watch-file-shared-dependency.mjs b/test/parallel/test-watch-file-shared-dependency.mjs index 37ac647f82310e..3889bc4d074865 100644 --- a/test/parallel/test-watch-file-shared-dependency.mjs +++ b/test/parallel/test-watch-file-shared-dependency.mjs @@ -12,8 +12,6 @@ if (common.isIBMi) if (common.isAIX) common.skip('folder watch capability is limited in AIX.'); -tmpdir.refresh(); - const { FilesWatcher } = watcher; tmpdir.refresh(); @@ -32,15 +30,18 @@ Object.entries(fixtureContent) .forEach(([file, content]) => writeFileSync(fixturePaths[file], content)); describe('watch file with shared dependency', () => { - it('should not remove shared dependencies when unfiltering an owner', () => { + it('should not remove shared dependencies when unfiltering an owner', (t, done) => { const controller = new AbortController(); - const watcher = new FilesWatcher({ signal: controller.signal, debounce: 200 }); + const watcher = new FilesWatcher({ signal: controller.signal }); watcher.on('changed', ({ owners }) => { - assert.strictEqual(owners.size, 2); + if (owners.size !== 2) return; + + // If this code is never reached the test times out. assert.ok(owners.has(fixturePaths['test.js'])); assert.ok(owners.has(fixturePaths['test-2.js'])); controller.abort(); + done(); }); watcher.filterFile(fixturePaths['test.js']); watcher.filterFile(fixturePaths['test-2.js']); @@ -49,6 +50,20 @@ describe('watch file with shared dependency', () => { watcher.unfilterFilesOwnedBy([fixturePaths['test.js']]); watcher.filterFile(fixturePaths['test.js']); watcher.filterFile(fixturePaths['dependency.js'], fixturePaths['test.js']); - writeFileSync(fixturePaths['dependency.js'], 'module.exports = { modified: true };'); + + if (common.isMacOS) { + // Do the write with a delay to ensure that the OS is ready to notify us. + setTimeout(() => { + writeFileSync( + fixturePaths['dependency.js'], + 'module.exports = { modified: true };' + ); + }, common.platformTimeout(200)); + } else { + writeFileSync( + fixturePaths['dependency.js'], + 'module.exports = { modified: true };' + ); + } }); }); diff --git a/test/parallel/test-webstorage.js b/test/parallel/test-webstorage.js index 4da6b67bd2932b..7f9fe8dfa53391 100644 --- a/test/parallel/test-webstorage.js +++ b/test/parallel/test-webstorage.js @@ -69,7 +69,7 @@ test('sessionStorage is not persisted', async () => { test('localStorage throws without --localstorage-file ', async () => { const cp = await spawnPromisified(process.execPath, [ '--experimental-webstorage', - '-pe', 'localStorage === global.localStorage', + '-pe', 'localStorage === globalThis.localStorage', ]); assert.strictEqual(cp.code, 1); assert.strictEqual(cp.signal, null); @@ -81,7 +81,7 @@ test('localStorage is not persisted if it is unused', async () => { const cp = await spawnPromisified(process.execPath, [ '--experimental-webstorage', '--localstorage-file', nextLocalStorage(), - '-pe', 'localStorage === global.localStorage', + '-pe', 'localStorage === globalThis.localStorage', ]); assert.strictEqual(cp.code, 0); assert.match(cp.stdout, /true/); diff --git a/test/parallel/test-whatwg-url-custom-global.js b/test/parallel/test-whatwg-url-custom-global.js index b99dfd8f3e7d94..16efdfa8df1174 100644 --- a/test/parallel/test-whatwg-url-custom-global.js +++ b/test/parallel/test-whatwg-url-custom-global.js @@ -6,7 +6,7 @@ require('../common'); const assert = require('assert'); assert.deepStrictEqual( - Object.getOwnPropertyDescriptor(global, 'URL'), + Object.getOwnPropertyDescriptor(globalThis, 'URL'), { value: URL, writable: true, @@ -16,7 +16,7 @@ assert.deepStrictEqual( ); assert.deepStrictEqual( - Object.getOwnPropertyDescriptor(global, 'URLSearchParams'), + Object.getOwnPropertyDescriptor(globalThis, 'URLSearchParams'), { value: URLSearchParams, writable: true, diff --git a/test/parallel/test-worker-cli-options.js b/test/parallel/test-worker-cli-options.js index 0c243d251e97bc..3e6ab46db6ea74 100644 --- a/test/parallel/test-worker-cli-options.js +++ b/test/parallel/test-worker-cli-options.js @@ -8,7 +8,7 @@ const CODE = ` // If the --expose-internals flag does not pass to worker // require function will throw an error require('internal/options'); -global.gc(); +globalThis.gc(); `; // Test if the flags is passed to worker threads correctly diff --git a/test/parallel/test-worker-eval-typescript.js b/test/parallel/test-worker-eval-typescript.js new file mode 100644 index 00000000000000..daf0de87dccccd --- /dev/null +++ b/test/parallel/test-worker-eval-typescript.js @@ -0,0 +1,67 @@ +'use strict'; +require('../common'); +const assert = require('assert'); +const { Worker } = require('worker_threads'); +const { test } = require('node:test'); +const { once } = require('events'); + +const esmHelloWorld = ` + import worker from 'worker_threads'; + const foo: string = 'Hello, World!'; + worker.parentPort.postMessage(foo); +`; + +const cjsHelloWorld = ` + const { parentPort } = require('worker_threads'); + const foo: string = 'Hello, World!'; + parentPort.postMessage(foo); +`; + +const flags = ['--experimental-strip-types', '--disable-warning=ExperimentalWarning']; + +test('Worker eval module typescript without input-type', async () => { + const w = new Worker(esmHelloWorld, { eval: true, execArgv: [...flags] }); + assert.deepStrictEqual(await once(w, 'message'), ['Hello, World!']); +}); + +test('Worker eval module typescript with --input-type=module-typescript', async () => { + const w = new Worker(esmHelloWorld, { eval: true, execArgv: ['--input-type=module-typescript', + ...flags] }); + assert.deepStrictEqual(await once(w, 'message'), ['Hello, World!']); +}); + +test('Worker eval module typescript with --input-type=commonjs-typescript', async () => { + const w = new Worker(esmHelloWorld, { eval: true, execArgv: ['--input-type=commonjs-typescript', + ...flags] }); + + const [err] = await once(w, 'error'); + assert.strictEqual(err.name, 'SyntaxError'); + assert.match(err.message, /Cannot use import statement outside a module/); +}); + +test('Worker eval module typescript with --input-type=module', async () => { + const w = new Worker(esmHelloWorld, { eval: true, execArgv: ['--input-type=module', + ...flags] }); + const [err] = await once(w, 'error'); + assert.strictEqual(err.name, 'SyntaxError'); + assert.match(err.message, /Missing initializer in const declaration/); +}); + +test('Worker eval commonjs typescript without input-type', async () => { + const w = new Worker(cjsHelloWorld, { eval: true, execArgv: [...flags] }); + assert.deepStrictEqual(await once(w, 'message'), ['Hello, World!']); +}); + +test('Worker eval commonjs typescript with --input-type=commonjs-typescript', async () => { + const w = new Worker(cjsHelloWorld, { eval: true, execArgv: ['--input-type=commonjs-typescript', + ...flags] }); + assert.deepStrictEqual(await once(w, 'message'), ['Hello, World!']); +}); + +test('Worker eval commonjs typescript with --input-type=module-typescript', async () => { + const w = new Worker(cjsHelloWorld, { eval: true, execArgv: ['--input-type=module-typescript', + ...flags] }); + const [err] = await once(w, 'error'); + assert.strictEqual(err.name, 'ReferenceError'); + assert.match(err.message, /require is not defined in ES module scope, you can use import instead/); +}); diff --git a/test/parallel/test-worker-message-channel-sharedarraybuffer.js b/test/parallel/test-worker-message-channel-sharedarraybuffer.js index 220aa978b12051..6ee577d447ec97 100644 --- a/test/parallel/test-worker-message-channel-sharedarraybuffer.js +++ b/test/parallel/test-worker-message-channel-sharedarraybuffer.js @@ -19,7 +19,7 @@ const { Worker } = require('worker_threads'); `, { eval: true }); w.on('message', common.mustCall(() => { assert.strictEqual(local.toString(), 'Hello world!'); - global.gc(); + globalThis.gc(); w.terminate(); })); w.postMessage({ sharedArrayBuffer }); diff --git a/test/parallel/test-worker-message-port-move.js b/test/parallel/test-worker-message-port-move.js index 44efd2e6a6b94f..b8db31b88c7bc4 100644 --- a/test/parallel/test-worker-message-port-move.js +++ b/test/parallel/test-worker-message-port-move.js @@ -48,7 +48,7 @@ vm.runInContext('(' + function() { { let threw = false; try { - port.postMessage(global); + port.postMessage(globalThis); } catch (e) { assert.strictEqual(e.constructor.name, 'DOMException'); assert(e instanceof Object); diff --git a/test/parallel/test-worker-name.js b/test/parallel/test-worker-name.js index 952fcee0e05429..30f3710a826caf 100644 --- a/test/parallel/test-worker-name.js +++ b/test/parallel/test-worker-name.js @@ -4,10 +4,17 @@ const common = require('../common'); const fixtures = require('../common/fixtures'); common.skipIfInspectorDisabled(); -common.skipIfWorker(); // This test requires both main and worker threads. + +const { + Worker, + isMainThread, +} = require('worker_threads'); + +if (!isMainThread) { + common.skip('This test only works on a main thread'); +} const assert = require('assert'); -const { Worker, isMainThread } = require('worker_threads'); if (isMainThread) { const name = 'Hello Thread'; diff --git a/test/parallel/test-worker-stdio-flush-inflight.js b/test/parallel/test-worker-stdio-flush-inflight.js new file mode 100644 index 00000000000000..34b81152811e7b --- /dev/null +++ b/test/parallel/test-worker-stdio-flush-inflight.js @@ -0,0 +1,24 @@ +'use strict'; +const common = require('../common'); +const assert = require('assert'); +const { Worker, isMainThread } = require('worker_threads'); + +if (isMainThread) { + const w = new Worker(__filename, { stdout: true }); + const expected = 'hello world'; + + let data = ''; + w.stdout.setEncoding('utf8'); + w.stdout.on('data', (chunk) => { + data += chunk; + }); + + w.on('exit', common.mustCall(() => { + assert.strictEqual(data, expected); + })); +} else { + process.stdout.write('hello'); + process.stdout.write(' '); + process.stdout.write('world'); + process.exit(0); +} diff --git a/test/parallel/test-worker-stdio-flush.js b/test/parallel/test-worker-stdio-flush.js new file mode 100644 index 00000000000000..e52e721fc69483 --- /dev/null +++ b/test/parallel/test-worker-stdio-flush.js @@ -0,0 +1,25 @@ +'use strict'; +const common = require('../common'); +const assert = require('assert'); +const { Worker, isMainThread } = require('worker_threads'); + +if (isMainThread) { + const w = new Worker(__filename, { stdout: true }); + const expected = 'hello world'; + + let data = ''; + w.stdout.setEncoding('utf8'); + w.stdout.on('data', (chunk) => { + data += chunk; + }); + + w.on('exit', common.mustCall(() => { + assert.strictEqual(data, expected); + })); +} else { + process.on('exit', () => { + process.stdout.write(' '); + process.stdout.write('world'); + }); + process.stdout.write('hello'); +} diff --git a/test/parallel/test-worker-workerdata-sharedarraybuffer.js b/test/parallel/test-worker-workerdata-sharedarraybuffer.js index 4e3d508ac94941..4f1b332461280f 100644 --- a/test/parallel/test-worker-workerdata-sharedarraybuffer.js +++ b/test/parallel/test-worker-workerdata-sharedarraybuffer.js @@ -23,7 +23,7 @@ const { Worker } = require('worker_threads'); }); w.on('message', common.mustCall(() => { assert.strictEqual(local.toString(), 'Hello world!'); - global.gc(); + globalThis.gc(); w.terminate(); })); w.postMessage({}); diff --git a/test/parallel/test-x509-escaping.js b/test/parallel/test-x509-escaping.js index e6ae4d886908cb..b507af88e1f7f3 100644 --- a/test/parallel/test-x509-escaping.js +++ b/test/parallel/test-x509-escaping.js @@ -1,15 +1,16 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} const assert = require('assert'); const { X509Certificate } = require('crypto'); const tls = require('tls'); const fixtures = require('../common/fixtures'); -const { hasOpenSSL3 } = common; +const { hasOpenSSL3 } = require('../common/crypto'); // Test that all certificate chains provided by the reporter are rejected. { diff --git a/test/parallel/test-zlib-const.js b/test/parallel/test-zlib-const.js index 342c8c712a475b..5b9a127f0eaa02 100644 --- a/test/parallel/test-zlib-const.js +++ b/test/parallel/test-zlib-const.js @@ -1,4 +1,4 @@ -/* eslint-disable strict */ +'use strict'; require('../common'); const assert = require('assert'); @@ -9,27 +9,17 @@ assert.strictEqual(zlib.constants.Z_OK, 0, 'Expected Z_OK to be 0;', `got ${zlib.constants.Z_OK}`, ].join(' ')); -zlib.constants.Z_OK = 1; -assert.strictEqual(zlib.constants.Z_OK, 0, - [ - 'Z_OK should be immutable.', - `Expected to get 0, got ${zlib.constants.Z_OK}`, - ].join(' ')); + +assert.throws(() => { zlib.constants.Z_OK = 1; }, + TypeError, 'zlib.constants.Z_OK should be immutable'); assert.strictEqual(zlib.codes.Z_OK, 0, `Expected Z_OK to be 0; got ${zlib.codes.Z_OK}`); -zlib.codes.Z_OK = 1; -assert.strictEqual(zlib.codes.Z_OK, 0, - [ - 'Z_OK should be immutable.', - `Expected to get 0, got ${zlib.codes.Z_OK}`, - ].join(' ')); -zlib.codes = { Z_OK: 1 }; -assert.strictEqual(zlib.codes.Z_OK, 0, - [ - 'Z_OK should be immutable.', - `Expected to get 0, got ${zlib.codes.Z_OK}`, - ].join(' ')); +assert.throws(() => { zlib.codes.Z_OK = 1; }, + TypeError, 'zlib.codes.Z_OK should be immutable'); + +assert.throws(() => { zlib.codes = { Z_OK: 1 }; }, + TypeError, 'zlib.codes should be immutable'); assert.ok(Object.isFrozen(zlib.codes), [ diff --git a/test/parallel/test-zlib-invalid-input-memory.js b/test/parallel/test-zlib-invalid-input-memory.js index 9761e4bbf097d8..ac718395dae184 100644 --- a/test/parallel/test-zlib-invalid-input-memory.js +++ b/test/parallel/test-zlib-invalid-input-memory.js @@ -17,7 +17,7 @@ const ongc = common.mustCall(); strm.once('error', common.mustCall((err) => { assert(err); setImmediate(() => { - global.gc(); + globalThis.gc(); // Keep the event loop alive for seeing the async_hooks destroy hook // we use for GC tracking... // TODO(addaleax): This should maybe not be necessary? diff --git a/test/parallel/test-zlib-unused-weak.js b/test/parallel/test-zlib-unused-weak.js index 2c1e2d729030dd..cd1ab91ceb5c4b 100644 --- a/test/parallel/test-zlib-unused-weak.js +++ b/test/parallel/test-zlib-unused-weak.js @@ -6,12 +6,12 @@ const zlib = require('zlib'); // Tests that native zlib handles start out their life as weak handles. -global.gc(); +globalThis.gc(); const before = process.memoryUsage().external; for (let i = 0; i < 100; ++i) zlib.createGzip(); const afterCreation = process.memoryUsage().external; -global.gc(); +globalThis.gc(); const afterGC = process.memoryUsage().external; assert((afterGC - before) / (afterCreation - before) <= 0.05, diff --git a/test/pseudo-tty/test-assert-colors.js b/test/pseudo-tty/test-assert-colors.js index d43dd60224a06f..889e9a6e006e99 100644 --- a/test/pseudo-tty/test-assert-colors.js +++ b/test/pseudo-tty/test-assert-colors.js @@ -1,11 +1,16 @@ +// Flags: --no-warnings 'use strict'; require('../common'); const assert = require('assert').strict; -assert.throws(() => { +function setup() { process.env.FORCE_COLOR = '1'; delete process.env.NODE_DISABLE_COLORS; delete process.env.NO_COLOR; +} + +assert.throws(() => { + setup(); assert.deepStrictEqual([1, 2, 2, 2, 2], [2, 2, 2, 2, 2]); }, (err) => { const expected = 'Expected values to be strictly deep-equal:\n' + @@ -19,6 +24,48 @@ assert.throws(() => { '\x1B[39m 2,\n' + '\x1B[31m-\x1B[39m 2\n' + '\x1B[39m ]\n'; + assert.strictEqual(err.message, expected); return true; }); + +{ + assert.throws(() => { + setup(); + assert.partialDeepStrictEqual({ a: 1, b: 2, c: 3, d: 5 }, { z: 4, b: 5 }); + }, (err) => { + const expected = 'Expected values to be partially and strictly deep-equal:\n' + + '\x1B[90mactual\x1B[39m \x1B[31m- expected\x1B[39m\n' + + '\n' + + '\x1B[39m {\n' + + '\x1B[90m a: 1,\x1B[39m\n' + + '\x1B[90m b: 2,\x1B[39m\n' + + '\x1B[90m c: 3,\x1B[39m\n' + + '\x1B[90m d: 5\x1B[39m\n' + + '\x1B[31m-\x1B[39m b: 5,\n' + + '\x1B[31m-\x1B[39m z: 4\n' + + '\x1B[39m }\n'; + + assert.strictEqual(err.message, expected); + return true; + }); + + assert.throws(() => { + setup(); + assert.partialDeepStrictEqual([1, 2, 3, 5], [4, 5]); + }, (err) => { + const expected = 'Expected values to be partially and strictly deep-equal:\n' + + '\x1B[90mactual\x1B[39m \x1B[31m- expected\x1B[39m\n' + + '\n' + + '\x1B[39m [\n' + + '\x1B[90m 1,\x1B[39m\n' + + '\x1B[90m 2,\x1B[39m\n' + + '\x1B[90m 3,\x1B[39m\n' + + '\x1B[31m-\x1B[39m 4,\n' + + '\x1B[39m 5\n' + + '\x1B[39m ]\n'; + + assert.strictEqual(err.message, expected); + return true; + }); +} diff --git a/test/pseudo-tty/test-assert-no-color.js b/test/pseudo-tty/test-assert-no-color.js index d488f4e6bfcbe7..c2e79d26701413 100644 --- a/test/pseudo-tty/test-assert-no-color.js +++ b/test/pseudo-tty/test-assert-no-color.js @@ -1,3 +1,4 @@ +// Flags: --no-warnings 'use strict'; require('../common'); const assert = require('assert').strict; @@ -17,3 +18,19 @@ assert.throws( '- foo: \'bar\'\n' + '- }\n', }); + +{ + assert.throws( + () => { + assert.partialDeepStrictEqual({}, { foo: 'bar' }); + }, + { + message: 'Expected values to be partially and strictly deep-equal:\n' + + '+ actual - expected\n' + + '\n' + + '+ {}\n' + + '- {\n' + + "- foo: 'bar'\n" + + '- }\n', + }); +} diff --git a/test/pummel/test-crypto-dh-hash.js b/test/pummel/test-crypto-dh-hash.js index ef5a640688c9bb..b59f556a2042b9 100644 --- a/test/pummel/test-crypto-dh-hash.js +++ b/test/pummel/test-crypto-dh-hash.js @@ -30,7 +30,9 @@ if (common.isPi) { common.skip('Too slow for Raspberry Pi devices'); } -if (!common.hasOpenSSL3) { +const { hasOpenSSL3 } = require('../common/crypto'); + +if (!hasOpenSSL3) { common.skip('Too slow when dynamically linked against OpenSSL 1.1.1'); } diff --git a/test/pummel/test-crypto-dh-keys.js b/test/pummel/test-crypto-dh-keys.js index 2caa4e244a9859..abce6a07acf4ac 100644 --- a/test/pummel/test-crypto-dh-keys.js +++ b/test/pummel/test-crypto-dh-keys.js @@ -36,8 +36,9 @@ const crypto = require('crypto'); [ 'modp1', 'modp2', 'modp5', 'modp14', 'modp15', 'modp16', 'modp17' ] .forEach((name) => { // modp1 is 768 bits, FIPS requires >= 1024 - if (name === 'modp1' && common.hasFipsCrypto) + if (name === 'modp1' && crypto.getFips()) { return; + } const group1 = crypto.getDiffieHellman(name); const group2 = crypto.getDiffieHellman(name); group1.generateKeys(); diff --git a/test/pummel/test-dh-regr.js b/test/pummel/test-dh-regr.js index 41d5bf872f97ec..cfae57d0728bdb 100644 --- a/test/pummel/test-dh-regr.js +++ b/test/pummel/test-dh-regr.js @@ -32,10 +32,11 @@ if (common.isPi) { const assert = require('assert'); const crypto = require('crypto'); +const { hasOpenSSL3 } = require('../common/crypto'); // FIPS requires length >= 1024 but we use 512/256 in this test to keep it from // taking too long and timing out in CI. -const length = (common.hasFipsCrypto) ? 1024 : common.hasOpenSSL3 ? 512 : 256; +const length = crypto.getFips() ? 1024 : hasOpenSSL3 ? 512 : 256; const p = crypto.createDiffieHellman(length).getPrime(); diff --git a/test/report/test-report-signal.js b/test/report/test-report-signal.js index cb5efd9fc39fe2..03908ddcf24f16 100644 --- a/test/report/test-report-signal.js +++ b/test/report/test-report-signal.js @@ -3,11 +3,15 @@ // Test producing a report via signal. const common = require('../common'); -if (common.isWindows) +if (common.isWindows) { return common.skip('Unsupported on Windows.'); +} -if (!common.isMainThread) +const { isMainThread } = require('worker_threads'); + +if (!isMainThread) { common.skip('Signal reporting is only supported in the main thread'); +} const assert = require('assert'); const helper = require('../common/report'); diff --git a/test/sequential/sequential.status b/test/sequential/sequential.status index 5f4445416d95fa..a3199b385dd99d 100644 --- a/test/sequential/sequential.status +++ b/test/sequential/sequential.status @@ -28,7 +28,11 @@ test-http-server-request-timeouts-mixed: PASS, FLAKY # https://github.com/nodejs/node/issues/54816 test-single-executable-application-empty: PASS, FLAKY +# https://github.com/nodejs/node/issues/43465 +test-http-server-request-timeouts-mixed: PASS, FLAKY + [$system==solaris] # Also applies to SmartOS +test-worker-prof: PASS, FLAKY [$system==freebsd] @@ -48,7 +52,3 @@ test-tls-securepair-client: PASS, FLAKY [$arch==arm] # https://github.com/nodejs/node/issues/49933 test-watch-mode-inspect: SKIP - -[$arch==s390x] -# https://github.com/nodejs/node/issues/41286 -test-performance-eventloopdelay: PASS, FLAKY diff --git a/test/sequential/test-fs-watch.js b/test/sequential/test-fs-watch.js index cb12acfc115a4b..8db27a79e33d0a 100644 --- a/test/sequential/test-fs-watch.js +++ b/test/sequential/test-fs-watch.js @@ -29,9 +29,11 @@ const fs = require('fs'); const path = require('path'); const tmpdir = require('../common/tmpdir'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const expectFilePath = common.isWindows || common.isLinux || diff --git a/test/sequential/test-heapdump.js b/test/sequential/test-heapdump.js index 1388623e61f939..f9df88375ae596 100644 --- a/test/sequential/test-heapdump.js +++ b/test/sequential/test-heapdump.js @@ -1,9 +1,11 @@ 'use strict'; const common = require('../common'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} const { writeHeapSnapshot, getHeapSnapshot } = require('v8'); const assert = require('assert'); diff --git a/test/sequential/test-init.js b/test/sequential/test-init.js index 7195369e0e4f8e..dd5db5640d1f0c 100644 --- a/test/sequential/test-init.js +++ b/test/sequential/test-init.js @@ -24,9 +24,11 @@ const common = require('../common'); const assert = require('assert'); const child = require('child_process'); const fixtures = require('../common/fixtures'); +const { isMainThread } = require('worker_threads'); -if (!common.isMainThread) +if (!isMainThread) { common.skip('process.chdir is not available in Workers'); +} if (process.env.TEST_INIT) { return process.stdout.write('Loaded successfully!'); diff --git a/test/sequential/test-perf-hooks.js b/test/sequential/test-perf-hooks.js index 1e11f26571480d..847decdef18bfc 100644 --- a/test/sequential/test-perf-hooks.js +++ b/test/sequential/test-perf-hooks.js @@ -1,11 +1,12 @@ 'use strict'; -const common = require('../common'); +require('../common'); const { performance } = require('perf_hooks'); // Get the start time as soon as possible. const testStartTime = performance.now(); const assert = require('assert'); const { writeSync } = require('fs'); +const { isMainThread } = require('worker_threads'); // Use writeSync to stdout to avoid disturbing the loop. function log(str) { @@ -131,7 +132,7 @@ function checkValue(timing, name, min, max) { } let loopStart = initialTiming.loopStart; -if (common.isMainThread) { +if (isMainThread) { // In the main thread, the loop does not start until we start an operation // that requires it, e.g. setTimeout(). assert.strictEqual(initialTiming.loopStart, -1); diff --git a/test/sequential/test-performance-eventloopdelay.js b/test/sequential/test-performance-eventloopdelay.js index 0bc1758113e480..0d38300d7b3a15 100644 --- a/test/sequential/test-performance-eventloopdelay.js +++ b/test/sequential/test-performance-eventloopdelay.js @@ -3,6 +3,7 @@ const common = require('../common'); const assert = require('assert'); +const os = require('os'); const { monitorEventLoopDelay } = require('perf_hooks'); @@ -51,9 +52,13 @@ const { sleep } = require('internal/util'); } { + const s390x = os.arch() === 's390x'; const histogram = monitorEventLoopDelay({ resolution: 1 }); histogram.enable(); let m = 5; + if (s390x) { + m = m * 2; + } function spinAWhile() { sleep(1000); if (--m > 0) { diff --git a/test/sequential/test-tls-psk-client.js b/test/sequential/test-tls-psk-client.js index ddebc8f8cc9807..c07b1f92d98376 100644 --- a/test/sequential/test-tls-psk-client.js +++ b/test/sequential/test-tls-psk-client.js @@ -1,10 +1,15 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); -if (!common.opensslCli) +} + +const { opensslCli } = require('../common/crypto'); + +if (!opensslCli) { common.skip('missing openssl cli'); +} const assert = require('assert'); const tls = require('tls'); @@ -16,7 +21,7 @@ const KEY = 'd731ef57be09e5204f0b205b60627028'; const IDENTITY = 'Client_identity'; // Hardcoded by `openssl s_server` const useIPv4 = !common.hasIPv6; -const server = spawn(common.opensslCli, [ +const server = spawn(opensslCli, [ 's_server', '-accept', common.PORT, '-cipher', CIPHERS, diff --git a/test/sequential/test-tls-securepair-client.js b/test/sequential/test-tls-securepair-client.js index f3ca42ad6edfb0..262518621b5f3f 100644 --- a/test/sequential/test-tls-securepair-client.js +++ b/test/sequential/test-tls-securepair-client.js @@ -23,14 +23,19 @@ const common = require('../common'); -if (!common.opensslCli) - common.skip('node compiled without OpenSSL CLI.'); - -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); -if (common.isWindows) +if (!opensslCli) { + common.skip('node compiled without OpenSSL CLI.'); +} + +if (common.isWindows) { common.skip('test does not work on Windows'); // ...but it should! +} const net = require('net'); const assert = require('assert'); @@ -63,11 +68,11 @@ function test(keyPath, certPath, check, next) { const key = fixtures.readSync(keyPath).toString(); const cert = fixtures.readSync(certPath).toString(); - const server = spawn(common.opensslCli, ['s_server', - '-accept', 0, - '-cert', fixtures.path(certPath), - '-key', fixtures.path(keyPath), - ...(useIPv4 ? ['-4'] : []), + const server = spawn(opensslCli, ['s_server', + '-accept', 0, + '-cert', fixtures.path(certPath), + '-key', fixtures.path(keyPath), + ...(useIPv4 ? ['-4'] : []), ]); server.stdout.pipe(process.stdout); server.stderr.pipe(process.stdout); diff --git a/test/sequential/test-tls-session-timeout.js b/test/sequential/test-tls-session-timeout.js index 09107011aeda52..a93cdc793a2337 100644 --- a/test/sequential/test-tls-session-timeout.js +++ b/test/sequential/test-tls-session-timeout.js @@ -22,8 +22,11 @@ 'use strict'; const common = require('../common'); -if (!common.hasCrypto) +if (!common.hasCrypto) { common.skip('missing crypto'); +} + +const { opensslCli } = require('../common/crypto'); const tmpdir = require('../common/tmpdir'); tmpdir.refresh(); @@ -56,8 +59,9 @@ const cert = fixtures.readKey('rsa_cert.crt'); } } -if (!common.opensslCli) +if (!opensslCli) { common.skip('node compiled without OpenSSL CLI.'); +} doTest(); @@ -105,7 +109,7 @@ function doTest() { '-sess_in', sessionFileName, '-sess_out', sessionFileName, ]; - const client = spawn(common.opensslCli, flags, { + const client = spawn(opensslCli, flags, { stdio: ['ignore', 'pipe', 'ignore'] }); diff --git a/test/sequential/test-watch-mode.mjs b/test/sequential/test-watch-mode.mjs index 39bc7223dffdfc..324cdd10b3b4ef 100644 --- a/test/sequential/test-watch-mode.mjs +++ b/test/sequential/test-watch-mode.mjs @@ -242,6 +242,32 @@ describe('watch mode', { concurrency: !process.env.TEST_PARALLEL, timeout: 60_00 } }); + it('should load new env variables when --env-file-if-exists changes', async () => { + const envKey = `TEST_ENV_${Date.now()}`; + const envKey2 = `TEST_ENV_2_${Date.now()}`; + const jsFile = createTmpFile(`console.log('ENV: ' + process.env.${envKey} + '\\n' + 'ENV2: ' + process.env.${envKey2});`); + const envFile = createTmpFile(`${envKey}=value1`, '.env'); + const { done, restart } = runInBackground({ args: ['--watch', `--env-file-if-exists=${envFile}`, jsFile] }); + + try { + await restart(); + writeFileSync(envFile, `${envKey}=value1\n${envKey2}=newValue`); + + // Second restart, after env change + const { stderr, stdout } = await restart(); + + assert.strictEqual(stderr, ''); + assert.deepStrictEqual(stdout, [ + `Restarting ${inspect(jsFile)}`, + 'ENV: value1', + 'ENV2: newValue', + `Completed running ${inspect(jsFile)}`, + ]); + } finally { + await done(); + } + }); + it('should watch changes to a failing file', async () => { const file = createTmpFile('throw new Error("fails");'); const { stderr, stdout } = await runWriteSucceed({ diff --git a/test/sqlite/.gitignore b/test/sqlite/.gitignore new file mode 100644 index 00000000000000..378eac25d31170 --- /dev/null +++ b/test/sqlite/.gitignore @@ -0,0 +1 @@ +build diff --git a/test/sqlite/sqlite.status b/test/sqlite/sqlite.status new file mode 100644 index 00000000000000..dae653683a3274 --- /dev/null +++ b/test/sqlite/sqlite.status @@ -0,0 +1,7 @@ +prefix sqlite + +# To mark a test as flaky, list the test name in the appropriate section +# below, without ".js", followed by ": PASS,FLAKY". Example: +# sample-test : PASS,FLAKY + +[true] # This section applies to all platforms diff --git a/test/sqlite/test_sqlite_extensions/binding.gyp b/test/sqlite/test_sqlite_extensions/binding.gyp new file mode 100644 index 00000000000000..aa4de6b8c08d15 --- /dev/null +++ b/test/sqlite/test_sqlite_extensions/binding.gyp @@ -0,0 +1,10 @@ +{ + "targets": [ + { + "target_name": "sqlite_extension", + "type": "shared_library", + "sources": [ "extension.c" ], + "include_dirs": [ "../../../deps/sqlite" ] + } + ] +} diff --git a/test/sqlite/extension.c b/test/sqlite/test_sqlite_extensions/extension.c similarity index 100% rename from test/sqlite/extension.c rename to test/sqlite/test_sqlite_extensions/extension.c diff --git a/test/sqlite/test-sqlite-extensions.mjs b/test/sqlite/test_sqlite_extensions/test.js similarity index 80% rename from test/sqlite/test-sqlite-extensions.mjs rename to test/sqlite/test_sqlite_extensions/test.js index 0e0acf2dc33d30..ece230399c73dc 100644 --- a/test/sqlite/test-sqlite-extensions.mjs +++ b/test/sqlite/test_sqlite_extensions/test.js @@ -1,19 +1,25 @@ -import * as common from '../common/index.mjs'; +'use strict'; +const common = require('../../common'); +const assert = require('node:assert'); +const path = require('node:path'); +const sqlite = require('node:sqlite'); +const test = require('node:test'); +const fs = require('node:fs'); +const childProcess = require('node:child_process'); -import assert from 'node:assert'; -import path from 'node:path'; -import sqlite from 'node:sqlite'; -import test from 'node:test'; -import fs from 'node:fs'; -import childProcess from 'child_process'; +if (process.config.variables.node_shared_sqlite) { + common.skip('Missing libsqlite_extension binary'); +} // Lib extension binary is named differently on different platforms -function resolveBuiltBinary(binary) { - const targetFile = fs.readdirSync(path.dirname(process.execPath)).find((file) => file.startsWith(binary)); - return path.join(path.dirname(process.execPath), targetFile); +function resolveBuiltBinary() { + const buildDir = `${__dirname}/build/${common.buildType}`; + const lib = 'sqlite_extension'; + const targetFile = fs.readdirSync(buildDir).find((file) => file.startsWith(lib)); + return path.join(buildDir, targetFile); } -const binary = resolveBuiltBinary('libsqlite_extension'); +const binary = resolveBuiltBinary(); test('should load extension successfully', () => { const db = new sqlite.DatabaseSync(':memory:', { diff --git a/test/sqlite/testcfg.py b/test/sqlite/testcfg.py index 3d43abbe89482d..e66cfa69ff89ae 100644 --- a/test/sqlite/testcfg.py +++ b/test/sqlite/testcfg.py @@ -3,4 +3,4 @@ import testpy def GetConfiguration(context, root): - return testpy.SimpleTestConfiguration(context, root, 'sqlite') + return testpy.AddonTestConfiguration(context, root, 'sqlite') diff --git a/test/test426/README.md b/test/test426/README.md new file mode 100644 index 00000000000000..edf4b3a95b8e96 --- /dev/null +++ b/test/test426/README.md @@ -0,0 +1,17 @@ +# test426 (Source Map Tests) + +The tests here are drivers for running the [Source Map Tests][]. This test +suite ensures that the Node.js source map implementation conforms to the +[Source Map Specification][] ([ECMA426][]). + +The [`test/fixtures/test426`](../fixtures/test426/) contains a copy of the set of +[Source Map Tests][] suite. The last updated hash is: + +* <https://github.com/tc39/source-map-tests/commit/cbed127c46330ff4b52525e73b9356e2ad3d6369> + +See the json files in [the `status` folder](./status) for prerequisites, +expected failures, and support status for specific tests. + +[ECMA426]: https://tc39.es/ecma426/ +[Source Map Specification]: https://github.com/tc39/ecma426 +[Source Map Tests]: https://github.com/tc39/source-map-tests diff --git a/test/test426/status/source-map-spec-tests.json b/test/test426/status/source-map-spec-tests.json new file mode 100644 index 00000000000000..967da8e59679af --- /dev/null +++ b/test/test426/status/source-map-spec-tests.json @@ -0,0 +1,14 @@ +{ + "sourceRootResolution": { + "testActions": { + "skip": "sourceRoot is not supported" + } + }, + "mappingSemanticsSingleFieldSegment": { + "testActions": { + "1": { + "skip": "Might be incorrect test" + } + } + } +} diff --git a/test/test426/test-source-map-spec.mjs b/test/test426/test-source-map-spec.mjs new file mode 100644 index 00000000000000..61b51305bf9a85 --- /dev/null +++ b/test/test426/test-source-map-spec.mjs @@ -0,0 +1,58 @@ +import '../common/index.mjs'; +import * as fixtures from '../common/fixtures.mjs'; + +import assert from 'node:assert'; +import test from 'node:test'; +import { SourceMap } from 'node:module'; +import { readFileSync } from 'node:fs'; + +const specJson = fixtures.readSync('test426/source-map-spec-tests.json', 'utf8'); +const spec = JSON.parse(specJson); + +const kStatus = JSON.parse(readFileSync(new URL('./status/source-map-spec-tests.json', import.meta.url), 'utf8')); + +const kActionRunner = { + checkMapping, +}; + +spec.tests.forEach((testSpec) => { + const sourceMapJson = fixtures.readSync(['test426/resources', testSpec.sourceMapFile], 'utf8'); + const sourceMapPayload = JSON.parse(sourceMapJson); + + test(testSpec.name, async (t) => { + let sourceMap; + try { + sourceMap = new SourceMap(sourceMapPayload); + } catch { + // Be lenient with invalid source maps. Some source maps are invalid spec-wise, + // let's try the best to parse them. Maybe a strict parsing mode can be introduced + // for future-proof source map format. + assert.ok(!testSpec.sourceMapIsValid); + return; + } + assert.ok(sourceMap); + + const subtests = (testSpec.testActions ?? []).map((action, idx) => { + const testRunner = kActionRunner[action.actionType]; + const testName = `action#${idx} - ${action.actionType}`; + if (testRunner == null) { + return t.test(testName, { + todo: true, + }); + } + const skip = kStatus[testSpec.name]?.testActions?.skip || kStatus[testSpec.name]?.testActions?.[idx]?.skip; + return t.test(testName, { + skip, + }, testRunner.bind(null, sourceMap, action)); + }); + + await Promise.all(subtests); + }); +}); + +function checkMapping(sourceMap, action) { + const result = sourceMap.findEntry(action.generatedLine, action.generatedColumn); + assert.strictEqual(result.originalSource, action.originalSource); + assert.strictEqual(result.originalLine, action.originalLine); + assert.strictEqual(result.originalColumn, action.originalColumn); +} diff --git a/test/test426/testcfg.py b/test/test426/testcfg.py new file mode 100644 index 00000000000000..235311f0dddde8 --- /dev/null +++ b/test/test426/testcfg.py @@ -0,0 +1,6 @@ +import sys, os +sys.path.append(os.path.join(os.path.dirname(__file__), '..')) +import testpy + +def GetConfiguration(context, root): + return testpy.ParallelTestConfiguration(context, root, 'test426') diff --git a/test/tick-processor/util.js b/test/tick-processor/util.js index 6d118b7c38bc66..9586a81c276a65 100644 --- a/test/tick-processor/util.js +++ b/test/tick-processor/util.js @@ -5,14 +5,21 @@ const { isWindows, isSunOS, isAIX, - isLinuxPPCBE, isFreeBSD, } = require('../common'); +const { endianness } = require('os'); + +function isLinuxPPCBE() { + return (process.platform === 'linux') && + (process.arch === 'ppc64') && + (endianness() === 'BE'); +} + module.exports = { isCPPSymbolsNotMapped: isWindows || isSunOS || isAIX || - isLinuxPPCBE || + isLinuxPPCBE() || isFreeBSD, }; diff --git a/test/wasi/test-wasi-io.js b/test/wasi/test-wasi-io.js index 061ac88a73ece4..f5348644f1cfbf 100644 --- a/test/wasi/test-wasi-io.js +++ b/test/wasi/test-wasi-io.js @@ -1,14 +1,19 @@ 'use strict'; -const common = require('../common'); -const { checkoutEOL } = common; +require('../common'); +const { readFileSync } = require('fs'); const { testWasiPreview1 } = require('../common/wasi'); +const checkoutEOL = readFileSync(__filename).includes('\r\n') ? '\r\n' : '\n'; + +// TODO(@jasnell): It's not entirely clear what this test is asserting. +// More comments would be helpful. + testWasiPreview1(['freopen'], {}, { stdout: `hello from input2.txt${checkoutEOL}` }); testWasiPreview1(['read_file'], {}, { stdout: `hello from input.txt${checkoutEOL}` }); testWasiPreview1(['read_file_twice'], {}, { stdout: `hello from input.txt${checkoutEOL}hello from input.txt${checkoutEOL}`, }); // Tests that are currently unsupported on Windows. -if (!common.isWindows) { +if (process.platform !== 'win32') { testWasiPreview1(['stdin'], { input: 'hello world' }, { stdout: 'hello world' }); } diff --git a/tools/actions/create-release.sh b/tools/actions/create-release-proposal.sh similarity index 97% rename from tools/actions/create-release.sh rename to tools/actions/create-release-proposal.sh index 1392c4dd458476..cc5e8b5b7834fd 100755 --- a/tools/actions/create-release.sh +++ b/tools/actions/create-release-proposal.sh @@ -126,4 +126,4 @@ if (data.errors?.length) { console.log(util.inspect(data, { depth: Infinity })); EOF -gh pr edit "$PR_URL" --add-label release --add-assignee "$RELEASER" +gh pr edit "$PR_URL" --add-label release --add-label "v$RELEASE_LINE.x" --add-assignee "$RELEASER" diff --git a/tools/actions/lint-release-proposal-commit-list.mjs b/tools/actions/lint-release-proposal-commit-list.mjs new file mode 100755 index 00000000000000..b9745bad3c30c1 --- /dev/null +++ b/tools/actions/lint-release-proposal-commit-list.mjs @@ -0,0 +1,62 @@ +#!/usr/bin/env node + +// Takes a stream of JSON objects as inputs, validates the CHANGELOG contains a +// line corresponding, then outputs the prURL value. +// +// Example: +// $ git log upstream/vXX.x...upstream/vX.X.X-proposal \ +// --format='{"prURL":"%(trailers:key=PR-URL,valueonly,separator=)","title":"%s","smallSha":"%h"}' \ +// | ./lint-release-proposal-commit-list.mjs "path/to/CHANGELOG.md" "$(git rev-parse upstream/vX.X.X-proposal)" + +const [,, CHANGELOG_PATH, RELEASE_COMMIT_SHA] = process.argv; + +import assert from 'node:assert'; +import { readFile } from 'node:fs/promises'; +import { createInterface } from 'node:readline'; + +// Creating the iterator early to avoid missing any data: +const stdinLineByLine = createInterface(process.stdin)[Symbol.asyncIterator](); + +const changelog = await readFile(CHANGELOG_PATH, 'utf-8'); +const commitListingStart = changelog.indexOf('\n### Commits\n'); +const commitListingEnd = changelog.indexOf('\n\n<a', commitListingStart); +const commitList = changelog.slice(commitListingStart, commitListingEnd === -1 ? undefined : commitListingEnd + 1) + // Checking for semverness is too expansive, it is left as a exercice for human reviewers. + .replaceAll('**(SEMVER-MINOR)** ', '') + // Correct Markdown escaping is validated by the linter, getting rid of it here helps. + .replaceAll('\\', ''); + +let expectedNumberOfCommitsLeft = commitList.match(/\n\* \[/g).length; +for await (const line of stdinLineByLine) { + const { smallSha, title, prURL } = JSON.parse(line); + + if (smallSha === RELEASE_COMMIT_SHA.slice(0, 10)) { + assert.strictEqual( + expectedNumberOfCommitsLeft, 0, + 'Some commits are listed without being included in the proposal, or are listed more than once', + ); + continue; + } + + const lineStart = commitList.indexOf(`\n* [[\`${smallSha}\`]`); + assert.notStrictEqual(lineStart, -1, `Cannot find ${smallSha} on the list`); + const lineEnd = commitList.indexOf('\n', lineStart + 1); + + const colonIndex = title.indexOf(':'); + const expectedCommitTitle = `${`**${title.slice(0, colonIndex)}`.replace('**Revert "', '_**Revert**_ "**')}**${title.slice(colonIndex)}`; + try { + assert(commitList.lastIndexOf(`/${smallSha})] - ${expectedCommitTitle} (`, lineEnd) > lineStart, `Commit title doesn't match`); + } catch (e) { + if (e?.code === 'ERR_ASSERTION') { + e.operator = 'includes'; + e.expected = expectedCommitTitle; + e.actual = commitList.slice(lineStart + 1, lineEnd); + } + throw e; + } + assert.strictEqual(commitList.slice(lineEnd - prURL.length - 2, lineEnd), `(${prURL})`, `when checking ${smallSha} ${title}`); + + expectedNumberOfCommitsLeft--; + console.log(prURL); +} +assert.strictEqual(expectedNumberOfCommitsLeft, 0, 'Release commit is not the last commit in the proposal'); diff --git a/tools/certdata.txt b/tools/certdata.txt index 110a814718cfd7..e0f60abcd6cf62 100644 --- a/tools/certdata.txt +++ b/tools/certdata.txt @@ -323,7 +323,10 @@ CKA_VALUE MULTILINE_OCTAL \174\136\232\166\351\131\220\305\174\203\065\021\145\121 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust.net Premium 2048 Secure Server CA" @@ -627,7 +630,10 @@ CKA_VALUE MULTILINE_OCTAL \036\177\132\264\074 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust Root Certification Authority" @@ -3808,140 +3814,6 @@ CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE -# -# Certificate "SecureSign RootCA11" -# -# Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP -# Serial Number: 1 (0x1) -# Subject: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP -# Not Valid Before: Wed Apr 08 04:56:47 2009 -# Not Valid After : Sun Apr 08 04:56:47 2029 -# Fingerprint (SHA-256): BF:0F:EE:FB:9E:3A:58:1A:D5:F9:E9:DB:75:89:98:57:43:D2:61:08:5C:4D:31:4F:6F:5D:72:59:AA:42:16:12 -# Fingerprint (SHA1): 3B:C4:9F:48:F8:F3:73:A0:9C:1E:BD:F8:5B:B1:C3:65:C7:D8:11:B3 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "SecureSign RootCA11" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040 -\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145 -\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032 -\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147 -\156\040\122\157\157\164\103\101\061\061 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040 -\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145 -\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032 -\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147 -\156\040\122\157\157\164\103\101\061\061 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\001\001 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\003\155\060\202\002\125\240\003\002\001\002\002\001\001 -\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060 -\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061\053 -\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040\103 -\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145\162 -\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032\006 -\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147\156 -\040\122\157\157\164\103\101\061\061\060\036\027\015\060\071\060 -\064\060\070\060\064\065\066\064\067\132\027\015\062\071\060\064 -\060\070\060\064\065\066\064\067\132\060\130\061\013\060\011\006 -\003\125\004\006\023\002\112\120\061\053\060\051\006\003\125\004 -\012\023\042\112\141\160\141\156\040\103\145\162\164\151\146\151 -\143\141\164\151\157\156\040\123\145\162\166\151\143\145\163\054 -\040\111\156\143\056\061\034\060\032\006\003\125\004\003\023\023 -\123\145\143\165\162\145\123\151\147\156\040\122\157\157\164\103 -\101\061\061\060\202\001\042\060\015\006\011\052\206\110\206\367 -\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012\002 -\202\001\001\000\375\167\252\245\034\220\005\073\313\114\233\063 -\213\132\024\105\244\347\220\026\321\337\127\322\041\020\244\027 -\375\337\254\326\037\247\344\333\174\367\354\337\270\003\332\224 -\130\375\135\162\174\214\077\137\001\147\164\025\226\343\002\074 -\207\333\256\313\001\216\302\363\146\306\205\105\364\002\306\072 -\265\142\262\257\372\234\277\244\346\324\200\060\230\363\015\266 -\223\217\251\324\330\066\362\260\374\212\312\054\241\025\063\225 -\061\332\300\033\362\356\142\231\206\143\077\277\335\223\052\203 -\250\166\271\023\037\267\316\116\102\205\217\042\347\056\032\362 -\225\011\262\005\265\104\116\167\241\040\275\251\362\116\012\175 -\120\255\365\005\015\105\117\106\161\375\050\076\123\373\004\330 -\055\327\145\035\112\033\372\317\073\260\061\232\065\156\310\213 -\006\323\000\221\362\224\010\145\114\261\064\006\000\172\211\342 -\360\307\003\131\317\325\326\350\247\062\263\346\230\100\206\305 -\315\047\022\213\314\173\316\267\021\074\142\140\007\043\076\053 -\100\156\224\200\011\155\266\263\157\167\157\065\010\120\373\002 -\207\305\076\211\002\003\001\000\001\243\102\060\100\060\035\006 -\003\125\035\016\004\026\004\024\133\370\115\117\262\245\206\324 -\072\322\361\143\232\240\276\011\366\127\267\336\060\016\006\003 -\125\035\017\001\001\377\004\004\003\002\001\006\060\017\006\003 -\125\035\023\001\001\377\004\005\060\003\001\001\377\060\015\006 -\011\052\206\110\206\367\015\001\001\005\005\000\003\202\001\001 -\000\240\241\070\026\146\056\247\126\037\041\234\006\372\035\355 -\271\042\305\070\046\330\116\117\354\243\177\171\336\106\041\241 -\207\167\217\007\010\232\262\244\305\257\017\062\230\013\174\146 -\051\266\233\175\045\122\111\103\253\114\056\053\156\172\160\257 -\026\016\343\002\154\373\102\346\030\235\105\330\125\310\350\073 -\335\347\341\364\056\013\034\064\134\154\130\112\373\214\210\120 -\137\225\034\277\355\253\042\265\145\263\205\272\236\017\270\255 -\345\172\033\212\120\072\035\275\015\274\173\124\120\013\271\102 -\257\125\240\030\201\255\145\231\357\276\344\234\277\304\205\253 -\101\262\124\157\334\045\315\355\170\342\216\014\215\011\111\335 -\143\173\132\151\226\002\041\250\275\122\131\351\175\065\313\310 -\122\312\177\201\376\331\153\323\367\021\355\045\337\370\347\371 -\244\372\162\227\204\123\015\245\320\062\030\121\166\131\024\154 -\017\353\354\137\200\214\165\103\203\303\205\230\377\114\236\055 -\015\344\167\203\223\116\265\226\007\213\050\023\233\214\031\215 -\101\047\111\100\356\336\346\043\104\071\334\241\042\326\272\003 -\362 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for "SecureSign RootCA11" -# Issuer: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP -# Serial Number: 1 (0x1) -# Subject: CN=SecureSign RootCA11,O="Japan Certification Services, Inc.",C=JP -# Not Valid Before: Wed Apr 08 04:56:47 2009 -# Not Valid After : Sun Apr 08 04:56:47 2029 -# Fingerprint (SHA-256): BF:0F:EE:FB:9E:3A:58:1A:D5:F9:E9:DB:75:89:98:57:43:D2:61:08:5C:4D:31:4F:6F:5D:72:59:AA:42:16:12 -# Fingerprint (SHA1): 3B:C4:9F:48:F8:F3:73:A0:9C:1E:BD:F8:5B:B1:C3:65:C7:D8:11:B3 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "SecureSign RootCA11" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\073\304\237\110\370\363\163\240\234\036\275\370\133\261\303\145 -\307\330\021\263 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\267\122\164\342\222\264\200\223\362\165\344\314\327\362\352\046 -END -CKA_ISSUER MULTILINE_OCTAL -\060\130\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\053\060\051\006\003\125\004\012\023\042\112\141\160\141\156\040 -\103\145\162\164\151\146\151\143\141\164\151\157\156\040\123\145 -\162\166\151\143\145\163\054\040\111\156\143\056\061\034\060\032 -\006\003\125\004\003\023\023\123\145\143\165\162\145\123\151\147 -\156\040\122\157\157\164\103\101\061\061 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\001\001 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - # # Certificate "Microsec e-Szigno Root CA 2009" # @@ -4939,7 +4811,10 @@ CKA_VALUE MULTILINE_OCTAL \007\072\027\144\265\004\265\043\041\231\012\225\073\227\174\357 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "AffirmTrust Commercial" @@ -5067,7 +4942,10 @@ CKA_VALUE MULTILINE_OCTAL \355\132\000\124\205\034\026\066\222\014\134\372\246\255\277\333 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "AffirmTrust Networking" @@ -5227,7 +5105,10 @@ CKA_VALUE MULTILINE_OCTAL \051\340\266\270\011\150\031\034\030\103 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "AffirmTrust Premium" @@ -5335,7 +5216,10 @@ CKA_VALUE MULTILINE_OCTAL \214\171 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "AffirmTrust Premium ECC" @@ -10269,7 +10153,10 @@ CKA_VALUE MULTILINE_OCTAL \105\366 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust Root Certification Authority - G2" @@ -10416,7 +10303,10 @@ CKA_VALUE MULTILINE_OCTAL \231\267\046\101\133\045\140\256\320\110\032\356\006 END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Server Distrust After: Sat Nov 30 23:59:59 2024 +CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL +\062\064\061\061\063\060\062\063\065\071\065\071\132 +END CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE # Trust for "Entrust Root Certification Authority - EC1" @@ -15014,7 +14904,7 @@ CKA_SERIAL_NUMBER MULTILINE_OCTAL \002\021\000\331\265\103\177\257\251\071\017\000\000\000\000\125 \145\255\130 END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE @@ -21228,173 +21118,6 @@ CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE -# -# Certificate "Security Communication RootCA3" -# -# Issuer: CN=Security Communication RootCA3,O="SECOM Trust Systems CO.,LTD.",C=JP -# Serial Number:00:e1:7c:37:40:fd:1b:fe:67 -# Subject: CN=Security Communication RootCA3,O="SECOM Trust Systems CO.,LTD.",C=JP -# Not Valid Before: Thu Jun 16 06:17:16 2016 -# Not Valid After : Mon Jan 18 06:17:16 2038 -# Fingerprint (SHA-256): 24:A5:5C:2A:B0:51:44:2D:06:17:76:65:41:23:9A:4A:D0:32:D7:C5:51:75:AA:34:FF:DE:2F:BC:4F:5C:52:94 -# Fingerprint (SHA1): C3:03:C8:22:74:92:E5:61:A2:9C:5F:79:91:2B:1E:44:13:91:30:3A -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Security Communication RootCA3" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040 -\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117 -\056\054\114\124\104\056\061\047\060\045\006\003\125\004\003\023 -\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156 -\151\143\141\164\151\157\156\040\122\157\157\164\103\101\063 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040 -\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117 -\056\054\114\124\104\056\061\047\060\045\006\003\125\004\003\023 -\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156 -\151\143\141\164\151\157\156\040\122\157\157\164\103\101\063 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\011\000\341\174\067\100\375\033\376\147 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\005\177\060\202\003\147\240\003\002\001\002\002\011\000 -\341\174\067\100\375\033\376\147\060\015\006\011\052\206\110\206 -\367\015\001\001\014\005\000\060\135\061\013\060\011\006\003\125 -\004\006\023\002\112\120\061\045\060\043\006\003\125\004\012\023 -\034\123\105\103\117\115\040\124\162\165\163\164\040\123\171\163 -\164\145\155\163\040\103\117\056\054\114\124\104\056\061\047\060 -\045\006\003\125\004\003\023\036\123\145\143\165\162\151\164\171 -\040\103\157\155\155\165\156\151\143\141\164\151\157\156\040\122 -\157\157\164\103\101\063\060\036\027\015\061\066\060\066\061\066 -\060\066\061\067\061\066\132\027\015\063\070\060\061\061\070\060 -\066\061\067\061\066\132\060\135\061\013\060\011\006\003\125\004 -\006\023\002\112\120\061\045\060\043\006\003\125\004\012\023\034 -\123\105\103\117\115\040\124\162\165\163\164\040\123\171\163\164 -\145\155\163\040\103\117\056\054\114\124\104\056\061\047\060\045 -\006\003\125\004\003\023\036\123\145\143\165\162\151\164\171\040 -\103\157\155\155\165\156\151\143\141\164\151\157\156\040\122\157 -\157\164\103\101\063\060\202\002\042\060\015\006\011\052\206\110 -\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002 -\012\002\202\002\001\000\343\311\162\111\367\060\336\011\174\251 -\100\201\130\323\264\072\335\272\141\017\223\120\156\151\074\065 -\302\356\133\163\220\033\147\114\041\354\137\065\273\071\076\053 -\012\140\357\273\155\053\206\373\161\242\310\254\344\126\224\371 -\311\257\261\162\324\040\254\164\322\270\025\255\121\376\205\164 -\241\271\020\376\005\200\371\122\223\263\100\075\165\020\254\300 -\226\267\247\176\166\274\343\033\122\031\316\021\037\013\004\064 -\365\330\365\151\074\167\363\144\364\015\252\205\336\340\011\120 -\004\027\226\204\267\310\212\274\115\162\374\034\273\317\363\006 -\115\371\237\144\367\176\246\146\206\065\161\310\021\200\114\301 -\161\100\130\036\276\240\163\366\374\076\120\341\340\057\046\075 -\176\134\043\265\171\160\336\372\340\321\245\326\014\101\161\173 -\367\352\214\034\210\307\354\213\365\321\057\125\226\106\174\132 -\073\130\073\373\272\330\055\265\045\332\172\116\317\104\256\041 -\246\236\230\312\040\156\174\273\210\205\133\373\300\020\142\273 -\362\371\047\107\357\321\211\071\103\304\337\336\341\101\277\124 -\163\040\227\055\154\332\363\324\007\243\346\271\330\157\256\374 -\214\031\056\323\147\147\053\225\333\130\134\265\152\002\363\270 -\203\136\264\153\276\101\176\127\011\165\104\120\125\315\132\021 -\141\041\012\141\302\251\210\375\023\274\055\211\057\315\141\340 -\225\276\312\265\173\341\173\064\147\013\037\266\014\307\174\036 -\031\123\312\247\261\112\025\040\126\024\160\075\053\202\054\017 -\235\025\035\107\200\107\377\170\231\016\061\257\157\076\217\355 -\206\151\036\173\030\210\024\262\302\374\202\063\056\234\113\055 -\373\160\073\161\252\053\173\046\047\363\032\302\334\373\027\270 -\241\352\313\240\264\256\323\224\176\172\320\253\303\354\070\055 -\021\056\210\277\324\077\255\022\073\102\254\217\002\156\175\314 -\321\137\141\276\241\274\072\152\110\352\046\125\042\026\135\137 -\015\377\047\063\237\030\003\164\212\133\122\040\107\153\105\115 -\042\167\214\125\047\360\257\036\214\311\203\042\124\267\232\320 -\117\331\316\374\331\056\034\226\050\261\002\323\003\275\045\122 -\034\064\146\117\043\253\364\167\202\226\035\321\127\060\010\021 -\005\375\127\321\331\307\002\003\001\000\001\243\102\060\100\060 -\035\006\003\125\035\016\004\026\004\024\144\024\174\374\130\162 -\026\246\012\051\064\025\157\052\313\274\374\257\250\253\060\016 -\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\017 -\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060 -\015\006\011\052\206\110\206\367\015\001\001\014\005\000\003\202 -\002\001\000\334\002\043\010\342\357\041\072\307\015\267\046\322 -\142\223\247\245\043\162\007\040\202\140\337\030\327\124\255\151 -\045\222\236\331\024\317\231\271\122\201\317\256\154\212\073\132 -\071\310\154\001\103\302\042\155\002\360\142\315\116\143\103\300 -\024\332\364\143\360\352\364\161\356\116\207\343\161\251\364\311 -\127\345\056\137\034\171\273\043\252\207\104\127\351\275\065\115 -\101\273\113\050\243\230\262\033\331\013\027\007\345\367\352\235 -\365\166\327\277\304\266\201\130\377\310\377\144\151\142\171\255 -\156\016\037\177\356\035\151\345\267\162\161\263\376\245\001\065 -\224\124\053\300\122\155\217\125\304\311\322\270\313\312\064\010 -\121\205\240\365\274\264\027\130\352\012\134\172\275\143\306\072 -\057\377\226\111\031\204\352\147\330\004\261\141\364\000\133\112 -\267\234\161\067\031\205\171\277\201\260\307\023\016\166\161\076 -\072\200\006\256\006\026\247\215\265\302\304\313\377\100\245\134 -\215\245\311\072\355\162\201\312\134\230\074\322\064\003\167\010 -\375\360\051\131\135\041\010\307\140\277\244\161\173\270\331\036 -\202\276\011\257\145\157\050\253\277\113\265\356\076\010\107\047 -\240\017\157\017\213\077\254\225\030\363\271\016\334\147\125\156 -\142\236\106\016\321\004\170\312\162\256\166\331\245\370\262\337 -\210\011\141\213\357\044\116\321\131\077\132\324\075\311\223\074 -\053\144\365\201\015\026\226\367\222\303\376\061\157\350\052\062 -\164\016\364\114\230\112\030\016\060\124\325\305\353\274\305\025 -\236\350\231\041\353\047\053\011\012\333\361\346\160\030\126\273 -\014\344\276\371\350\020\244\023\222\270\034\340\333\147\035\123 -\003\244\042\247\334\135\222\020\074\352\377\374\033\020\032\303 -\330\320\234\235\145\313\320\053\047\061\003\036\066\341\075\166 -\165\014\377\105\046\271\335\121\274\043\307\137\330\330\207\020 -\100\022\015\075\070\067\347\104\074\030\300\123\011\144\217\377 -\325\232\246\174\160\056\163\125\041\350\337\377\203\271\035\076 -\062\036\326\246\175\054\361\146\351\134\035\247\243\316\136\045 -\062\053\343\225\254\052\007\316\264\050\170\206\074\055\246\235 -\115\322\164\060\335\144\121\025\333\203\203\121\327\257\375\063 -\235\115\146 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for "Security Communication RootCA3" -# Issuer: CN=Security Communication RootCA3,O="SECOM Trust Systems CO.,LTD.",C=JP -# Serial Number:00:e1:7c:37:40:fd:1b:fe:67 -# Subject: CN=Security Communication RootCA3,O="SECOM Trust Systems CO.,LTD.",C=JP -# Not Valid Before: Thu Jun 16 06:17:16 2016 -# Not Valid After : Mon Jan 18 06:17:16 2038 -# Fingerprint (SHA-256): 24:A5:5C:2A:B0:51:44:2D:06:17:76:65:41:23:9A:4A:D0:32:D7:C5:51:75:AA:34:FF:DE:2F:BC:4F:5C:52:94 -# Fingerprint (SHA1): C3:03:C8:22:74:92:E5:61:A2:9C:5F:79:91:2B:1E:44:13:91:30:3A -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Security Communication RootCA3" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\303\003\310\042\164\222\345\141\242\234\137\171\221\053\036\104 -\023\221\060\072 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\034\232\026\377\236\134\340\115\212\024\001\364\065\135\051\046 -END -CKA_ISSUER MULTILINE_OCTAL -\060\135\061\013\060\011\006\003\125\004\006\023\002\112\120\061 -\045\060\043\006\003\125\004\012\023\034\123\105\103\117\115\040 -\124\162\165\163\164\040\123\171\163\164\145\155\163\040\103\117 -\056\054\114\124\104\056\061\047\060\045\006\003\125\004\003\023 -\036\123\145\143\165\162\151\164\171\040\103\157\155\155\165\156 -\151\143\141\164\151\157\156\040\122\157\157\164\103\101\063 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\011\000\341\174\067\100\375\033\376\147 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - # # Certificate "Security Communication ECC RootCA1" # diff --git a/tools/dep_updaters/update-github-reporter.sh b/tools/dep_updaters/update-github-reporter.sh deleted file mode 100755 index 6ab4d876ede054..00000000000000 --- a/tools/dep_updaters/update-github-reporter.sh +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh - -# Shell script to update @reporters/github in the source tree to the latest release. - -# This script must be in the tools directory when it runs because it uses the -# script source file path to determine directories to work in. - -set -ex - -ROOT=$(cd "$(dirname "$0")/../.." && pwd) -[ -z "$NODE" ] && NODE="$ROOT/out/Release/node" -[ -x "$NODE" ] || NODE=$(command -v node) -NPM="$ROOT/deps/npm/bin/npm-cli.js" - -# shellcheck disable=SC1091 -. "$ROOT/tools/dep_updaters/utils.sh" - -NEW_VERSION=$("$NODE" "$NPM" view @reporters/github dist-tags.latest) -CURRENT_VERSION=$("$NODE" -p "require('./tools/github_reporter/package.json').version") - -# This function exit with 0 if new version and current version are the same -compare_dependency_version "@reporters/github" "$NEW_VERSION" "$CURRENT_VERSION" - -cd "$( dirname "$0" )/../.." || exit -rm -rf tools/github_reporter - -( - rm -rf github-reporter-tmp - mkdir github-reporter-tmp - cd github-reporter-tmp || exit - - "$NODE" "$NPM" init --yes - "$NODE" "$NPM" install --global-style --no-bin-links --ignore-scripts "@reporters/github@$NEW_VERSION" - "$NODE" "$NPM" exec --package=esbuild@0.17.15 --yes -- esbuild ./node_modules/@reporters/github --bundle --platform=node --outfile=bundle.js -) - -mkdir tools/github_reporter -mv github-reporter-tmp/bundle.js tools/github_reporter/index.js -mv github-reporter-tmp/node_modules/@reporters/github/package.json tools/github_reporter/package.json -rm -rf github-reporter-tmp/ - -# The last line of the script should always print the new version, -# as we need to add it to $GITHUB_ENV variable. -echo "NEW_VERSION=$NEW_VERSION" diff --git a/tools/doc/html.mjs b/tools/doc/html.mjs index 68762d89e048ce..d61d335c7b8957 100644 --- a/tools/doc/html.mjs +++ b/tools/doc/html.mjs @@ -527,11 +527,11 @@ function altDocs(filename, docCreated, versions) { return list ? ` <li class="picker-header"> - <a href="#"> + <a href="#alt-docs" aria-controls="alt-docs"> <span class="picker-arrow"></span> Other versions </a> - <div class="picker"><ol id="alt-docs">${list}</ol></div> + <div class="picker" tabindex="-1"><ol id="alt-docs">${list}</ol></div> </li> ` : ''; } @@ -557,12 +557,12 @@ function gtocPicker(id) { return ` <li class="picker-header"> - <a href="#"> + <a href="#gtoc-picker" aria-controls="gtoc-picker"> <span class="picker-arrow"></span> Index </a> - <div class="picker">${gtoc}</div> + <div class="picker" tabindex="-1" id="gtoc-picker">${gtoc}</div> </li> `; } @@ -574,12 +574,12 @@ function tocPicker(id, content) { return ` <li class="picker-header"> - <a href="#"> + <a href="#toc-picker" aria-controls="toc-picker"> <span class="picker-arrow"></span> Table of contents </a> - <div class="picker">${content.tocPicker}</div> + <div class="picker" tabindex="-1">${content.tocPicker.replace('<ul', '<ul id="toc-picker"')}</div> </li> `; } diff --git a/tools/doc/package-lock.json b/tools/doc/package-lock.json index a7c2088abd3ad5..bbb562ae9c9100 100644 --- a/tools/doc/package-lock.json +++ b/tools/doc/package-lock.json @@ -11,7 +11,7 @@ "node-doc-generator": "generate.js" }, "devDependencies": { - "highlight.js": "^11.9.0", + "highlight.js": "^11.11.1", "js-yaml": "^4.1.0", "rehype-raw": "^7.0.0", "rehype-stringify": "^10.0.0", @@ -441,9 +441,9 @@ } }, "node_modules/highlight.js": { - "version": "11.9.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.9.0.tgz", - "integrity": "sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==", + "version": "11.11.1", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.11.1.tgz", + "integrity": "sha512-Xwwo44whKBVCYoliBQwaPvtd/2tYFkRQtXDWj1nackaV2JPXx3L0+Jvd8/qCJ2p+ML0/XVkJ2q+Mr+UVdpJK5w==", "dev": true, "engines": { "node": ">=12.0.0" diff --git a/tools/doc/package.json b/tools/doc/package.json index d27ce6ca5102f9..1bfd9f853d9990 100644 --- a/tools/doc/package.json +++ b/tools/doc/package.json @@ -7,7 +7,7 @@ "node": ">=14.8.0" }, "devDependencies": { - "highlight.js": "^11.9.0", + "highlight.js": "^11.11.1", "js-yaml": "^4.1.0", "rehype-raw": "^7.0.0", "rehype-stringify": "^10.0.0", diff --git a/tools/eslint-rules/require-common-first.js b/tools/eslint-rules/require-common-first.js index 2bfe146086e577..5a8980d5d1c71b 100644 --- a/tools/eslint-rules/require-common-first.js +++ b/tools/eslint-rules/require-common-first.js @@ -22,7 +22,7 @@ module.exports = { * @returns {string} module name */ function getModuleName(str) { - if (str === '../common/index.mjs') { + if (str.startsWith('../') && str.endsWith('/common/index.mjs')) { return 'common'; } diff --git a/tools/eslint/package-lock.json b/tools/eslint/package-lock.json index ddae8841e1ea39..7d57c1b57129b2 100644 --- a/tools/eslint/package-lock.json +++ b/tools/eslint/package-lock.json @@ -11,12 +11,12 @@ "@babel/core": "^7.26.0", "@babel/eslint-parser": "^7.25.9", "@babel/plugin-syntax-import-attributes": "^7.26.0", - "@stylistic/eslint-plugin-js": "^2.11.0", - "eslint": "^9.16.0", + "@stylistic/eslint-plugin-js": "^2.12.1", + "eslint": "^9.17.0", "eslint-formatter-tap": "^8.40.0", - "eslint-plugin-jsdoc": "^50.6.0", + "eslint-plugin-jsdoc": "^50.6.1", "eslint-plugin-markdown": "^5.1.0", - "globals": "^15.12.0" + "globals": "^15.14.0" } }, "node_modules/@ampproject/remapping": { @@ -382,9 +382,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz", - "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", + "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } @@ -535,9 +535,9 @@ } }, "node_modules/@stylistic/eslint-plugin-js": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.11.0.tgz", - "integrity": "sha512-btchD0P3iij6cIk5RR5QMdEhtCCV0+L6cNheGhGCd//jaHILZMTi/EOqgEDAf1s4ZoViyExoToM+S2Iwa3U9DA==", + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.12.1.tgz", + "integrity": "sha512-5ybogtEgWIGCR6dMnaabztbWyVdAPDsf/5XOk6jBonWug875Q9/a6gm9QxnU3rhdyDEnckWKX7dduwYJMOWrVA==", "dependencies": { "eslint-visitor-keys": "^4.2.0", "espree": "^10.3.0" @@ -757,9 +757,9 @@ "license": "MIT" }, "node_modules/cross-spawn": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", - "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -812,16 +812,16 @@ } }, "node_modules/eslint": { - "version": "9.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz", - "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==", + "version": "9.17.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", + "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.0", "@eslint/core": "^0.9.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.16.0", + "@eslint/js": "9.17.0", "@eslint/plugin-kit": "^0.2.3", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -830,7 +830,7 @@ "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", - "cross-spawn": "^7.0.5", + "cross-spawn": "^7.0.6", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", "eslint-scope": "^8.2.0", @@ -882,9 +882,9 @@ } }, "node_modules/eslint-plugin-jsdoc": { - "version": "50.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.0.tgz", - "integrity": "sha512-tCNp4fR79Le3dYTPB0dKEv7yFyvGkUCa+Z3yuTrrNGGOxBlXo9Pn0PEgroOZikUQOGjxoGMVKNjrOHcYEdfszg==", + "version": "50.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.1.tgz", + "integrity": "sha512-UWyaYi6iURdSfdVVqvfOs2vdCVz0J40O/z/HTsv2sFjdjmdlUI/qlKLOTmwbPQ2tAfQnE5F9vqx+B+poF71DBQ==", "dependencies": { "@es-joy/jsdoccomment": "~0.49.0", "are-docs-informative": "^0.0.2", @@ -1254,9 +1254,9 @@ } }, "node_modules/globals": { - "version": "15.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz", - "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==", + "version": "15.14.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz", + "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==", "engines": { "node": ">=18" }, @@ -1364,8 +1364,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "license": "ISC" + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/js-tokens": { "version": "4.0.0", @@ -1660,7 +1659,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "license": "MIT", "engines": { "node": ">=8" } @@ -1708,7 +1706,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -1720,7 +1717,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "license": "MIT", "engines": { "node": ">=8" } @@ -1852,7 +1848,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, diff --git a/tools/eslint/package.json b/tools/eslint/package.json index 59b2e661aa96f1..68bedee0cb10f9 100644 --- a/tools/eslint/package.json +++ b/tools/eslint/package.json @@ -6,11 +6,11 @@ "@babel/core": "^7.26.0", "@babel/eslint-parser": "^7.25.9", "@babel/plugin-syntax-import-attributes": "^7.26.0", - "@stylistic/eslint-plugin-js": "^2.11.0", - "eslint": "^9.16.0", + "@stylistic/eslint-plugin-js": "^2.12.1", + "eslint": "^9.17.0", "eslint-formatter-tap": "^8.40.0", - "eslint-plugin-jsdoc": "^50.6.0", + "eslint-plugin-jsdoc": "^50.6.1", "eslint-plugin-markdown": "^5.1.0", - "globals": "^15.12.0" + "globals": "^15.14.0" } } diff --git a/tools/github_reporter/index.js b/tools/github_reporter/index.js deleted file mode 100644 index 3bab152c932229..00000000000000 --- a/tools/github_reporter/index.js +++ /dev/null @@ -1,20230 +0,0 @@ -"use strict"; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; - -// node_modules/@reporters/github/node_modules/@actions/core/lib/utils.js -var require_utils = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/utils.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toCommandProperties = exports2.toCommandValue = void 0; - function toCommandValue(input) { - if (input === null || input === void 0) { - return ""; - } else if (typeof input === "string" || input instanceof String) { - return input; - } - return JSON.stringify(input); - } - exports2.toCommandValue = toCommandValue; - function toCommandProperties(annotationProperties) { - if (!Object.keys(annotationProperties).length) { - return {}; - } - return { - title: annotationProperties.title, - file: annotationProperties.file, - line: annotationProperties.startLine, - endLine: annotationProperties.endLine, - col: annotationProperties.startColumn, - endColumn: annotationProperties.endColumn - }; - } - exports2.toCommandProperties = toCommandProperties; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/command.js -var require_command = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/command.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.issue = exports2.issueCommand = void 0; - var os = __importStar(require("os")); - var utils_1 = require_utils(); - function issueCommand(command, properties, message) { - const cmd = new Command(command, properties, message); - process.stdout.write(cmd.toString() + os.EOL); - } - exports2.issueCommand = issueCommand; - function issue(name, message = "") { - issueCommand(name, {}, message); - } - exports2.issue = issue; - var CMD_STRING = "::"; - var Command = class { - constructor(command, properties, message) { - if (!command) { - command = "missing.command"; - } - this.command = command; - this.properties = properties; - this.message = message; - } - toString() { - let cmdStr = CMD_STRING + this.command; - if (this.properties && Object.keys(this.properties).length > 0) { - cmdStr += " "; - let first = true; - for (const key in this.properties) { - if (this.properties.hasOwnProperty(key)) { - const val = this.properties[key]; - if (val) { - if (first) { - first = false; - } else { - cmdStr += ","; - } - cmdStr += `${key}=${escapeProperty(val)}`; - } - } - } - } - cmdStr += `${CMD_STRING}${escapeData(this.message)}`; - return cmdStr; - } - }; - function escapeData(s) { - return (0, utils_1.toCommandValue)(s).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A"); - } - function escapeProperty(s) { - return (0, utils_1.toCommandValue)(s).replace(/%/g, "%25").replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/:/g, "%3A").replace(/,/g, "%2C"); - } - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/file-command.js -var require_file_command = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/file-command.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.prepareKeyValueMessage = exports2.issueFileCommand = void 0; - var crypto = __importStar(require("crypto")); - var fs = __importStar(require("fs")); - var os = __importStar(require("os")); - var utils_1 = require_utils(); - function issueFileCommand(command, message) { - const filePath = process.env[`GITHUB_${command}`]; - if (!filePath) { - throw new Error(`Unable to find environment variable for file command ${command}`); - } - if (!fs.existsSync(filePath)) { - throw new Error(`Missing file at path: ${filePath}`); - } - fs.appendFileSync(filePath, `${(0, utils_1.toCommandValue)(message)}${os.EOL}`, { - encoding: "utf8" - }); - } - exports2.issueFileCommand = issueFileCommand; - function prepareKeyValueMessage(key, value) { - const delimiter = `ghadelimiter_${crypto.randomUUID()}`; - const convertedValue = (0, utils_1.toCommandValue)(value); - if (key.includes(delimiter)) { - throw new Error(`Unexpected input: name should not contain the delimiter "${delimiter}"`); - } - if (convertedValue.includes(delimiter)) { - throw new Error(`Unexpected input: value should not contain the delimiter "${delimiter}"`); - } - return `${key}<<${delimiter}${os.EOL}${convertedValue}${os.EOL}${delimiter}`; - } - exports2.prepareKeyValueMessage = prepareKeyValueMessage; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/http-client/lib/proxy.js -var require_proxy = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/http-client/lib/proxy.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.checkBypass = exports2.getProxyUrl = void 0; - function getProxyUrl(reqUrl) { - const usingSsl = reqUrl.protocol === "https:"; - if (checkBypass(reqUrl)) { - return void 0; - } - const proxyVar = (() => { - if (usingSsl) { - return process.env["https_proxy"] || process.env["HTTPS_PROXY"]; - } else { - return process.env["http_proxy"] || process.env["HTTP_PROXY"]; - } - })(); - if (proxyVar) { - try { - return new DecodedURL(proxyVar); - } catch (_a) { - if (!proxyVar.startsWith("http://") && !proxyVar.startsWith("https://")) - return new DecodedURL(`http://${proxyVar}`); - } - } else { - return void 0; - } - } - exports2.getProxyUrl = getProxyUrl; - function checkBypass(reqUrl) { - if (!reqUrl.hostname) { - return false; - } - const reqHost = reqUrl.hostname; - if (isLoopbackAddress(reqHost)) { - return true; - } - const noProxy = process.env["no_proxy"] || process.env["NO_PROXY"] || ""; - if (!noProxy) { - return false; - } - let reqPort; - if (reqUrl.port) { - reqPort = Number(reqUrl.port); - } else if (reqUrl.protocol === "http:") { - reqPort = 80; - } else if (reqUrl.protocol === "https:") { - reqPort = 443; - } - const upperReqHosts = [reqUrl.hostname.toUpperCase()]; - if (typeof reqPort === "number") { - upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`); - } - for (const upperNoProxyItem of noProxy.split(",").map((x) => x.trim().toUpperCase()).filter((x) => x)) { - if (upperNoProxyItem === "*" || upperReqHosts.some((x) => x === upperNoProxyItem || x.endsWith(`.${upperNoProxyItem}`) || upperNoProxyItem.startsWith(".") && x.endsWith(`${upperNoProxyItem}`))) { - return true; - } - } - return false; - } - exports2.checkBypass = checkBypass; - function isLoopbackAddress(host) { - const hostLower = host.toLowerCase(); - return hostLower === "localhost" || hostLower.startsWith("127.") || hostLower.startsWith("[::1]") || hostLower.startsWith("[0:0:0:0:0:0:0:1]"); - } - var DecodedURL = class extends URL { - constructor(url, base) { - super(url, base); - this._decodedUsername = decodeURIComponent(super.username); - this._decodedPassword = decodeURIComponent(super.password); - } - get username() { - return this._decodedUsername; - } - get password() { - return this._decodedPassword; - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/tunnel/lib/tunnel.js -var require_tunnel = __commonJS({ - "node_modules/@reporters/github/node_modules/tunnel/lib/tunnel.js"(exports2) { - "use strict"; - var net = require("net"); - var tls = require("tls"); - var http = require("http"); - var https = require("https"); - var events = require("events"); - var assert = require("assert"); - var util2 = require("util"); - exports2.httpOverHttp = httpOverHttp; - exports2.httpsOverHttp = httpsOverHttp; - exports2.httpOverHttps = httpOverHttps; - exports2.httpsOverHttps = httpsOverHttps; - function httpOverHttp(options) { - var agent = new TunnelingAgent(options); - agent.request = http.request; - return agent; - } - function httpsOverHttp(options) { - var agent = new TunnelingAgent(options); - agent.request = http.request; - agent.createSocket = createSecureSocket; - agent.defaultPort = 443; - return agent; - } - function httpOverHttps(options) { - var agent = new TunnelingAgent(options); - agent.request = https.request; - return agent; - } - function httpsOverHttps(options) { - var agent = new TunnelingAgent(options); - agent.request = https.request; - agent.createSocket = createSecureSocket; - agent.defaultPort = 443; - return agent; - } - function TunnelingAgent(options) { - var self = this; - self.options = options || {}; - self.proxyOptions = self.options.proxy || {}; - self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets; - self.requests = []; - self.sockets = []; - self.on("free", function onFree(socket, host, port, localAddress) { - var options2 = toOptions(host, port, localAddress); - for (var i = 0, len = self.requests.length; i < len; ++i) { - var pending = self.requests[i]; - if (pending.host === options2.host && pending.port === options2.port) { - self.requests.splice(i, 1); - pending.request.onSocket(socket); - return; - } - } - socket.destroy(); - self.removeSocket(socket); - }); - } - util2.inherits(TunnelingAgent, events.EventEmitter); - TunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) { - var self = this; - var options = mergeOptions({ request: req }, self.options, toOptions(host, port, localAddress)); - if (self.sockets.length >= this.maxSockets) { - self.requests.push(options); - return; - } - self.createSocket(options, function(socket) { - socket.on("free", onFree); - socket.on("close", onCloseOrRemove); - socket.on("agentRemove", onCloseOrRemove); - req.onSocket(socket); - function onFree() { - self.emit("free", socket, options); - } - function onCloseOrRemove(err) { - self.removeSocket(socket); - socket.removeListener("free", onFree); - socket.removeListener("close", onCloseOrRemove); - socket.removeListener("agentRemove", onCloseOrRemove); - } - }); - }; - TunnelingAgent.prototype.createSocket = function createSocket(options, cb) { - var self = this; - var placeholder = {}; - self.sockets.push(placeholder); - var connectOptions = mergeOptions({}, self.proxyOptions, { - method: "CONNECT", - path: options.host + ":" + options.port, - agent: false, - headers: { - host: options.host + ":" + options.port - } - }); - if (options.localAddress) { - connectOptions.localAddress = options.localAddress; - } - if (connectOptions.proxyAuth) { - connectOptions.headers = connectOptions.headers || {}; - connectOptions.headers["Proxy-Authorization"] = "Basic " + new Buffer(connectOptions.proxyAuth).toString("base64"); - } - debug("making CONNECT request"); - var connectReq = self.request(connectOptions); - connectReq.useChunkedEncodingByDefault = false; - connectReq.once("response", onResponse); - connectReq.once("upgrade", onUpgrade); - connectReq.once("connect", onConnect); - connectReq.once("error", onError); - connectReq.end(); - function onResponse(res) { - res.upgrade = true; - } - function onUpgrade(res, socket, head) { - process.nextTick(function() { - onConnect(res, socket, head); - }); - } - function onConnect(res, socket, head) { - connectReq.removeAllListeners(); - socket.removeAllListeners(); - if (res.statusCode !== 200) { - debug( - "tunneling socket could not be established, statusCode=%d", - res.statusCode - ); - socket.destroy(); - var error = new Error("tunneling socket could not be established, statusCode=" + res.statusCode); - error.code = "ECONNRESET"; - options.request.emit("error", error); - self.removeSocket(placeholder); - return; - } - if (head.length > 0) { - debug("got illegal response body from proxy"); - socket.destroy(); - var error = new Error("got illegal response body from proxy"); - error.code = "ECONNRESET"; - options.request.emit("error", error); - self.removeSocket(placeholder); - return; - } - debug("tunneling connection has established"); - self.sockets[self.sockets.indexOf(placeholder)] = socket; - return cb(socket); - } - function onError(cause) { - connectReq.removeAllListeners(); - debug( - "tunneling socket could not be established, cause=%s\n", - cause.message, - cause.stack - ); - var error = new Error("tunneling socket could not be established, cause=" + cause.message); - error.code = "ECONNRESET"; - options.request.emit("error", error); - self.removeSocket(placeholder); - } - }; - TunnelingAgent.prototype.removeSocket = function removeSocket(socket) { - var pos = this.sockets.indexOf(socket); - if (pos === -1) { - return; - } - this.sockets.splice(pos, 1); - var pending = this.requests.shift(); - if (pending) { - this.createSocket(pending, function(socket2) { - pending.request.onSocket(socket2); - }); - } - }; - function createSecureSocket(options, cb) { - var self = this; - TunnelingAgent.prototype.createSocket.call(self, options, function(socket) { - var hostHeader = options.request.getHeader("host"); - var tlsOptions = mergeOptions({}, self.options, { - socket, - servername: hostHeader ? hostHeader.replace(/:.*$/, "") : options.host - }); - var secureSocket = tls.connect(0, tlsOptions); - self.sockets[self.sockets.indexOf(socket)] = secureSocket; - cb(secureSocket); - }); - } - function toOptions(host, port, localAddress) { - if (typeof host === "string") { - return { - host, - port, - localAddress - }; - } - return host; - } - function mergeOptions(target) { - for (var i = 1, len = arguments.length; i < len; ++i) { - var overrides = arguments[i]; - if (typeof overrides === "object") { - var keys = Object.keys(overrides); - for (var j = 0, keyLen = keys.length; j < keyLen; ++j) { - var k = keys[j]; - if (overrides[k] !== void 0) { - target[k] = overrides[k]; - } - } - } - } - return target; - } - var debug; - if (process.env.NODE_DEBUG && /\btunnel\b/.test(process.env.NODE_DEBUG)) { - debug = function() { - var args = Array.prototype.slice.call(arguments); - if (typeof args[0] === "string") { - args[0] = "TUNNEL: " + args[0]; - } else { - args.unshift("TUNNEL:"); - } - console.error.apply(console, args); - }; - } else { - debug = function() { - }; - } - exports2.debug = debug; - } -}); - -// node_modules/@reporters/github/node_modules/tunnel/index.js -var require_tunnel2 = __commonJS({ - "node_modules/@reporters/github/node_modules/tunnel/index.js"(exports2, module2) { - module2.exports = require_tunnel(); - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/symbols.js -var require_symbols = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/symbols.js"(exports2, module2) { - module2.exports = { - kClose: Symbol("close"), - kDestroy: Symbol("destroy"), - kDispatch: Symbol("dispatch"), - kUrl: Symbol("url"), - kWriting: Symbol("writing"), - kResuming: Symbol("resuming"), - kQueue: Symbol("queue"), - kConnect: Symbol("connect"), - kConnecting: Symbol("connecting"), - kHeadersList: Symbol("headers list"), - kKeepAliveDefaultTimeout: Symbol("default keep alive timeout"), - kKeepAliveMaxTimeout: Symbol("max keep alive timeout"), - kKeepAliveTimeoutThreshold: Symbol("keep alive timeout threshold"), - kKeepAliveTimeoutValue: Symbol("keep alive timeout"), - kKeepAlive: Symbol("keep alive"), - kHeadersTimeout: Symbol("headers timeout"), - kBodyTimeout: Symbol("body timeout"), - kServerName: Symbol("server name"), - kLocalAddress: Symbol("local address"), - kHost: Symbol("host"), - kNoRef: Symbol("no ref"), - kBodyUsed: Symbol("used"), - kRunning: Symbol("running"), - kBlocking: Symbol("blocking"), - kPending: Symbol("pending"), - kSize: Symbol("size"), - kBusy: Symbol("busy"), - kQueued: Symbol("queued"), - kFree: Symbol("free"), - kConnected: Symbol("connected"), - kClosed: Symbol("closed"), - kNeedDrain: Symbol("need drain"), - kReset: Symbol("reset"), - kDestroyed: Symbol.for("nodejs.stream.destroyed"), - kMaxHeadersSize: Symbol("max headers size"), - kRunningIdx: Symbol("running index"), - kPendingIdx: Symbol("pending index"), - kError: Symbol("error"), - kClients: Symbol("clients"), - kClient: Symbol("client"), - kParser: Symbol("parser"), - kOnDestroyed: Symbol("destroy callbacks"), - kPipelining: Symbol("pipelining"), - kSocket: Symbol("socket"), - kHostHeader: Symbol("host header"), - kConnector: Symbol("connector"), - kStrictContentLength: Symbol("strict content length"), - kMaxRedirections: Symbol("maxRedirections"), - kMaxRequests: Symbol("maxRequestsPerClient"), - kProxy: Symbol("proxy agent options"), - kCounter: Symbol("socket request counter"), - kInterceptors: Symbol("dispatch interceptors"), - kMaxResponseSize: Symbol("max response size"), - kHTTP2Session: Symbol("http2Session"), - kHTTP2SessionState: Symbol("http2Session state"), - kHTTP2BuildRequest: Symbol("http2 build request"), - kHTTP1BuildRequest: Symbol("http1 build request"), - kHTTP2CopyHeaders: Symbol("http2 copy headers"), - kHTTPConnVersion: Symbol("http connection version"), - kRetryHandlerDefaultRetry: Symbol("retry agent default retry"), - kConstruct: Symbol("constructable") - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/errors.js -var require_errors = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/errors.js"(exports2, module2) { - "use strict"; - var UndiciError = class extends Error { - constructor(message) { - super(message); - this.name = "UndiciError"; - this.code = "UND_ERR"; - } - }; - var ConnectTimeoutError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, ConnectTimeoutError); - this.name = "ConnectTimeoutError"; - this.message = message || "Connect Timeout Error"; - this.code = "UND_ERR_CONNECT_TIMEOUT"; - } - }; - var HeadersTimeoutError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, HeadersTimeoutError); - this.name = "HeadersTimeoutError"; - this.message = message || "Headers Timeout Error"; - this.code = "UND_ERR_HEADERS_TIMEOUT"; - } - }; - var HeadersOverflowError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, HeadersOverflowError); - this.name = "HeadersOverflowError"; - this.message = message || "Headers Overflow Error"; - this.code = "UND_ERR_HEADERS_OVERFLOW"; - } - }; - var BodyTimeoutError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, BodyTimeoutError); - this.name = "BodyTimeoutError"; - this.message = message || "Body Timeout Error"; - this.code = "UND_ERR_BODY_TIMEOUT"; - } - }; - var ResponseStatusCodeError = class extends UndiciError { - constructor(message, statusCode, headers, body) { - super(message); - Error.captureStackTrace(this, ResponseStatusCodeError); - this.name = "ResponseStatusCodeError"; - this.message = message || "Response Status Code Error"; - this.code = "UND_ERR_RESPONSE_STATUS_CODE"; - this.body = body; - this.status = statusCode; - this.statusCode = statusCode; - this.headers = headers; - } - }; - var InvalidArgumentError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, InvalidArgumentError); - this.name = "InvalidArgumentError"; - this.message = message || "Invalid Argument Error"; - this.code = "UND_ERR_INVALID_ARG"; - } - }; - var InvalidReturnValueError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, InvalidReturnValueError); - this.name = "InvalidReturnValueError"; - this.message = message || "Invalid Return Value Error"; - this.code = "UND_ERR_INVALID_RETURN_VALUE"; - } - }; - var RequestAbortedError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, RequestAbortedError); - this.name = "AbortError"; - this.message = message || "Request aborted"; - this.code = "UND_ERR_ABORTED"; - } - }; - var InformationalError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, InformationalError); - this.name = "InformationalError"; - this.message = message || "Request information"; - this.code = "UND_ERR_INFO"; - } - }; - var RequestContentLengthMismatchError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, RequestContentLengthMismatchError); - this.name = "RequestContentLengthMismatchError"; - this.message = message || "Request body length does not match content-length header"; - this.code = "UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"; - } - }; - var ResponseContentLengthMismatchError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, ResponseContentLengthMismatchError); - this.name = "ResponseContentLengthMismatchError"; - this.message = message || "Response body length does not match content-length header"; - this.code = "UND_ERR_RES_CONTENT_LENGTH_MISMATCH"; - } - }; - var ClientDestroyedError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, ClientDestroyedError); - this.name = "ClientDestroyedError"; - this.message = message || "The client is destroyed"; - this.code = "UND_ERR_DESTROYED"; - } - }; - var ClientClosedError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, ClientClosedError); - this.name = "ClientClosedError"; - this.message = message || "The client is closed"; - this.code = "UND_ERR_CLOSED"; - } - }; - var SocketError = class extends UndiciError { - constructor(message, socket) { - super(message); - Error.captureStackTrace(this, SocketError); - this.name = "SocketError"; - this.message = message || "Socket error"; - this.code = "UND_ERR_SOCKET"; - this.socket = socket; - } - }; - var NotSupportedError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, NotSupportedError); - this.name = "NotSupportedError"; - this.message = message || "Not supported error"; - this.code = "UND_ERR_NOT_SUPPORTED"; - } - }; - var BalancedPoolMissingUpstreamError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, NotSupportedError); - this.name = "MissingUpstreamError"; - this.message = message || "No upstream has been added to the BalancedPool"; - this.code = "UND_ERR_BPL_MISSING_UPSTREAM"; - } - }; - var HTTPParserError = class extends Error { - constructor(message, code, data) { - super(message); - Error.captureStackTrace(this, HTTPParserError); - this.name = "HTTPParserError"; - this.code = code ? `HPE_${code}` : void 0; - this.data = data ? data.toString() : void 0; - } - }; - var ResponseExceededMaxSizeError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, ResponseExceededMaxSizeError); - this.name = "ResponseExceededMaxSizeError"; - this.message = message || "Response content exceeded max size"; - this.code = "UND_ERR_RES_EXCEEDED_MAX_SIZE"; - } - }; - var RequestRetryError = class extends UndiciError { - constructor(message, code, { headers, data }) { - super(message); - Error.captureStackTrace(this, RequestRetryError); - this.name = "RequestRetryError"; - this.message = message || "Request retry error"; - this.code = "UND_ERR_REQ_RETRY"; - this.statusCode = code; - this.data = data; - this.headers = headers; - } - }; - module2.exports = { - HTTPParserError, - UndiciError, - HeadersTimeoutError, - HeadersOverflowError, - BodyTimeoutError, - RequestContentLengthMismatchError, - ConnectTimeoutError, - ResponseStatusCodeError, - InvalidArgumentError, - InvalidReturnValueError, - RequestAbortedError, - ClientDestroyedError, - ClientClosedError, - InformationalError, - SocketError, - NotSupportedError, - ResponseContentLengthMismatchError, - BalancedPoolMissingUpstreamError, - ResponseExceededMaxSizeError, - RequestRetryError - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/constants.js -var require_constants = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/constants.js"(exports2, module2) { - "use strict"; - var headerNameLowerCasedRecord = {}; - var wellknownHeaderNames = [ - "Accept", - "Accept-Encoding", - "Accept-Language", - "Accept-Ranges", - "Access-Control-Allow-Credentials", - "Access-Control-Allow-Headers", - "Access-Control-Allow-Methods", - "Access-Control-Allow-Origin", - "Access-Control-Expose-Headers", - "Access-Control-Max-Age", - "Access-Control-Request-Headers", - "Access-Control-Request-Method", - "Age", - "Allow", - "Alt-Svc", - "Alt-Used", - "Authorization", - "Cache-Control", - "Clear-Site-Data", - "Connection", - "Content-Disposition", - "Content-Encoding", - "Content-Language", - "Content-Length", - "Content-Location", - "Content-Range", - "Content-Security-Policy", - "Content-Security-Policy-Report-Only", - "Content-Type", - "Cookie", - "Cross-Origin-Embedder-Policy", - "Cross-Origin-Opener-Policy", - "Cross-Origin-Resource-Policy", - "Date", - "Device-Memory", - "Downlink", - "ECT", - "ETag", - "Expect", - "Expect-CT", - "Expires", - "Forwarded", - "From", - "Host", - "If-Match", - "If-Modified-Since", - "If-None-Match", - "If-Range", - "If-Unmodified-Since", - "Keep-Alive", - "Last-Modified", - "Link", - "Location", - "Max-Forwards", - "Origin", - "Permissions-Policy", - "Pragma", - "Proxy-Authenticate", - "Proxy-Authorization", - "RTT", - "Range", - "Referer", - "Referrer-Policy", - "Refresh", - "Retry-After", - "Sec-WebSocket-Accept", - "Sec-WebSocket-Extensions", - "Sec-WebSocket-Key", - "Sec-WebSocket-Protocol", - "Sec-WebSocket-Version", - "Server", - "Server-Timing", - "Service-Worker-Allowed", - "Service-Worker-Navigation-Preload", - "Set-Cookie", - "SourceMap", - "Strict-Transport-Security", - "Supports-Loading-Mode", - "TE", - "Timing-Allow-Origin", - "Trailer", - "Transfer-Encoding", - "Upgrade", - "Upgrade-Insecure-Requests", - "User-Agent", - "Vary", - "Via", - "WWW-Authenticate", - "X-Content-Type-Options", - "X-DNS-Prefetch-Control", - "X-Frame-Options", - "X-Permitted-Cross-Domain-Policies", - "X-Powered-By", - "X-Requested-With", - "X-XSS-Protection" - ]; - for (let i = 0; i < wellknownHeaderNames.length; ++i) { - const key = wellknownHeaderNames[i]; - const lowerCasedKey = key.toLowerCase(); - headerNameLowerCasedRecord[key] = headerNameLowerCasedRecord[lowerCasedKey] = lowerCasedKey; - } - Object.setPrototypeOf(headerNameLowerCasedRecord, null); - module2.exports = { - wellknownHeaderNames, - headerNameLowerCasedRecord - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/util.js -var require_util = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/util.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var { kDestroyed, kBodyUsed } = require_symbols(); - var { IncomingMessage } = require("http"); - var stream = require("stream"); - var net = require("net"); - var { InvalidArgumentError } = require_errors(); - var { Blob: Blob2 } = require("buffer"); - var nodeUtil = require("util"); - var { stringify } = require("querystring"); - var { headerNameLowerCasedRecord } = require_constants(); - var [nodeMajor, nodeMinor] = process.versions.node.split(".").map((v) => Number(v)); - function nop() { - } - function isStream(obj) { - return obj && typeof obj === "object" && typeof obj.pipe === "function" && typeof obj.on === "function"; - } - function isBlobLike(object) { - return Blob2 && object instanceof Blob2 || object && typeof object === "object" && (typeof object.stream === "function" || typeof object.arrayBuffer === "function") && /^(Blob|File)$/.test(object[Symbol.toStringTag]); - } - function buildURL(url, queryParams) { - if (url.includes("?") || url.includes("#")) { - throw new Error('Query params cannot be passed when url already contains "?" or "#".'); - } - const stringified = stringify(queryParams); - if (stringified) { - url += "?" + stringified; - } - return url; - } - function parseURL(url) { - if (typeof url === "string") { - url = new URL(url); - if (!/^https?:/.test(url.origin || url.protocol)) { - throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`."); - } - return url; - } - if (!url || typeof url !== "object") { - throw new InvalidArgumentError("Invalid URL: The URL argument must be a non-null object."); - } - if (!/^https?:/.test(url.origin || url.protocol)) { - throw new InvalidArgumentError("Invalid URL protocol: the URL must start with `http:` or `https:`."); - } - if (!(url instanceof URL)) { - if (url.port != null && url.port !== "" && !Number.isFinite(parseInt(url.port))) { - throw new InvalidArgumentError("Invalid URL: port must be a valid integer or a string representation of an integer."); - } - if (url.path != null && typeof url.path !== "string") { - throw new InvalidArgumentError("Invalid URL path: the path must be a string or null/undefined."); - } - if (url.pathname != null && typeof url.pathname !== "string") { - throw new InvalidArgumentError("Invalid URL pathname: the pathname must be a string or null/undefined."); - } - if (url.hostname != null && typeof url.hostname !== "string") { - throw new InvalidArgumentError("Invalid URL hostname: the hostname must be a string or null/undefined."); - } - if (url.origin != null && typeof url.origin !== "string") { - throw new InvalidArgumentError("Invalid URL origin: the origin must be a string or null/undefined."); - } - const port = url.port != null ? url.port : url.protocol === "https:" ? 443 : 80; - let origin = url.origin != null ? url.origin : `${url.protocol}//${url.hostname}:${port}`; - let path2 = url.path != null ? url.path : `${url.pathname || ""}${url.search || ""}`; - if (origin.endsWith("/")) { - origin = origin.substring(0, origin.length - 1); - } - if (path2 && !path2.startsWith("/")) { - path2 = `/${path2}`; - } - url = new URL(origin + path2); - } - return url; - } - function parseOrigin(url) { - url = parseURL(url); - if (url.pathname !== "/" || url.search || url.hash) { - throw new InvalidArgumentError("invalid url"); - } - return url; - } - function getHostname(host) { - if (host[0] === "[") { - const idx2 = host.indexOf("]"); - assert(idx2 !== -1); - return host.substring(1, idx2); - } - const idx = host.indexOf(":"); - if (idx === -1) - return host; - return host.substring(0, idx); - } - function getServerName(host) { - if (!host) { - return null; - } - assert.strictEqual(typeof host, "string"); - const servername = getHostname(host); - if (net.isIP(servername)) { - return ""; - } - return servername; - } - function deepClone(obj) { - return JSON.parse(JSON.stringify(obj)); - } - function isAsyncIterable(obj) { - return !!(obj != null && typeof obj[Symbol.asyncIterator] === "function"); - } - function isIterable(obj) { - return !!(obj != null && (typeof obj[Symbol.iterator] === "function" || typeof obj[Symbol.asyncIterator] === "function")); - } - function bodyLength(body) { - if (body == null) { - return 0; - } else if (isStream(body)) { - const state = body._readableState; - return state && state.objectMode === false && state.ended === true && Number.isFinite(state.length) ? state.length : null; - } else if (isBlobLike(body)) { - return body.size != null ? body.size : null; - } else if (isBuffer(body)) { - return body.byteLength; - } - return null; - } - function isDestroyed(stream2) { - return !stream2 || !!(stream2.destroyed || stream2[kDestroyed]); - } - function isReadableAborted(stream2) { - const state = stream2 && stream2._readableState; - return isDestroyed(stream2) && state && !state.endEmitted; - } - function destroy(stream2, err) { - if (stream2 == null || !isStream(stream2) || isDestroyed(stream2)) { - return; - } - if (typeof stream2.destroy === "function") { - if (Object.getPrototypeOf(stream2).constructor === IncomingMessage) { - stream2.socket = null; - } - stream2.destroy(err); - } else if (err) { - process.nextTick((stream3, err2) => { - stream3.emit("error", err2); - }, stream2, err); - } - if (stream2.destroyed !== true) { - stream2[kDestroyed] = true; - } - } - var KEEPALIVE_TIMEOUT_EXPR = /timeout=(\d+)/; - function parseKeepAliveTimeout(val) { - const m = val.toString().match(KEEPALIVE_TIMEOUT_EXPR); - return m ? parseInt(m[1], 10) * 1e3 : null; - } - function headerNameToString(value) { - return headerNameLowerCasedRecord[value] || value.toLowerCase(); - } - function parseHeaders(headers, obj = {}) { - if (!Array.isArray(headers)) - return headers; - for (let i = 0; i < headers.length; i += 2) { - const key = headers[i].toString().toLowerCase(); - let val = obj[key]; - if (!val) { - if (Array.isArray(headers[i + 1])) { - obj[key] = headers[i + 1].map((x) => x.toString("utf8")); - } else { - obj[key] = headers[i + 1].toString("utf8"); - } - } else { - if (!Array.isArray(val)) { - val = [val]; - obj[key] = val; - } - val.push(headers[i + 1].toString("utf8")); - } - } - if ("content-length" in obj && "content-disposition" in obj) { - obj["content-disposition"] = Buffer.from(obj["content-disposition"]).toString("latin1"); - } - return obj; - } - function parseRawHeaders(headers) { - const ret = []; - let hasContentLength = false; - let contentDispositionIdx = -1; - for (let n = 0; n < headers.length; n += 2) { - const key = headers[n + 0].toString(); - const val = headers[n + 1].toString("utf8"); - if (key.length === 14 && (key === "content-length" || key.toLowerCase() === "content-length")) { - ret.push(key, val); - hasContentLength = true; - } else if (key.length === 19 && (key === "content-disposition" || key.toLowerCase() === "content-disposition")) { - contentDispositionIdx = ret.push(key, val) - 1; - } else { - ret.push(key, val); - } - } - if (hasContentLength && contentDispositionIdx !== -1) { - ret[contentDispositionIdx] = Buffer.from(ret[contentDispositionIdx]).toString("latin1"); - } - return ret; - } - function isBuffer(buffer) { - return buffer instanceof Uint8Array || Buffer.isBuffer(buffer); - } - function validateHandler(handler, method, upgrade) { - if (!handler || typeof handler !== "object") { - throw new InvalidArgumentError("handler must be an object"); - } - if (typeof handler.onConnect !== "function") { - throw new InvalidArgumentError("invalid onConnect method"); - } - if (typeof handler.onError !== "function") { - throw new InvalidArgumentError("invalid onError method"); - } - if (typeof handler.onBodySent !== "function" && handler.onBodySent !== void 0) { - throw new InvalidArgumentError("invalid onBodySent method"); - } - if (upgrade || method === "CONNECT") { - if (typeof handler.onUpgrade !== "function") { - throw new InvalidArgumentError("invalid onUpgrade method"); - } - } else { - if (typeof handler.onHeaders !== "function") { - throw new InvalidArgumentError("invalid onHeaders method"); - } - if (typeof handler.onData !== "function") { - throw new InvalidArgumentError("invalid onData method"); - } - if (typeof handler.onComplete !== "function") { - throw new InvalidArgumentError("invalid onComplete method"); - } - } - } - function isDisturbed(body) { - return !!(body && (stream.isDisturbed ? stream.isDisturbed(body) || body[kBodyUsed] : body[kBodyUsed] || body.readableDidRead || body._readableState && body._readableState.dataEmitted || isReadableAborted(body))); - } - function isErrored(body) { - return !!(body && (stream.isErrored ? stream.isErrored(body) : /state: 'errored'/.test( - nodeUtil.inspect(body) - ))); - } - function isReadable(body) { - return !!(body && (stream.isReadable ? stream.isReadable(body) : /state: 'readable'/.test( - nodeUtil.inspect(body) - ))); - } - function getSocketInfo(socket) { - return { - localAddress: socket.localAddress, - localPort: socket.localPort, - remoteAddress: socket.remoteAddress, - remotePort: socket.remotePort, - remoteFamily: socket.remoteFamily, - timeout: socket.timeout, - bytesWritten: socket.bytesWritten, - bytesRead: socket.bytesRead - }; - } - async function* convertIterableToBuffer(iterable) { - for await (const chunk of iterable) { - yield Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk); - } - } - var ReadableStream; - function ReadableStreamFrom(iterable) { - if (!ReadableStream) { - ReadableStream = require("stream/web").ReadableStream; - } - if (ReadableStream.from) { - return ReadableStream.from(convertIterableToBuffer(iterable)); - } - let iterator; - return new ReadableStream( - { - async start() { - iterator = iterable[Symbol.asyncIterator](); - }, - async pull(controller) { - const { done, value } = await iterator.next(); - if (done) { - queueMicrotask(() => { - controller.close(); - }); - } else { - const buf = Buffer.isBuffer(value) ? value : Buffer.from(value); - controller.enqueue(new Uint8Array(buf)); - } - return controller.desiredSize > 0; - }, - async cancel(reason) { - await iterator.return(); - } - }, - 0 - ); - } - function isFormDataLike(object) { - return object && typeof object === "object" && typeof object.append === "function" && typeof object.delete === "function" && typeof object.get === "function" && typeof object.getAll === "function" && typeof object.has === "function" && typeof object.set === "function" && object[Symbol.toStringTag] === "FormData"; - } - function throwIfAborted(signal) { - if (!signal) { - return; - } - if (typeof signal.throwIfAborted === "function") { - signal.throwIfAborted(); - } else { - if (signal.aborted) { - const err = new Error("The operation was aborted"); - err.name = "AbortError"; - throw err; - } - } - } - function addAbortListener(signal, listener) { - if ("addEventListener" in signal) { - signal.addEventListener("abort", listener, { once: true }); - return () => signal.removeEventListener("abort", listener); - } - signal.addListener("abort", listener); - return () => signal.removeListener("abort", listener); - } - var hasToWellFormed = !!String.prototype.toWellFormed; - function toUSVString(val) { - if (hasToWellFormed) { - return `${val}`.toWellFormed(); - } else if (nodeUtil.toUSVString) { - return nodeUtil.toUSVString(val); - } - return `${val}`; - } - function parseRangeHeader(range) { - if (range == null || range === "") - return { start: 0, end: null, size: null }; - const m = range ? range.match(/^bytes (\d+)-(\d+)\/(\d+)?$/) : null; - return m ? { - start: parseInt(m[1]), - end: m[2] ? parseInt(m[2]) : null, - size: m[3] ? parseInt(m[3]) : null - } : null; - } - var kEnumerableProperty = /* @__PURE__ */ Object.create(null); - kEnumerableProperty.enumerable = true; - module2.exports = { - kEnumerableProperty, - nop, - isDisturbed, - isErrored, - isReadable, - toUSVString, - isReadableAborted, - isBlobLike, - parseOrigin, - parseURL, - getServerName, - isStream, - isIterable, - isAsyncIterable, - isDestroyed, - headerNameToString, - parseRawHeaders, - parseHeaders, - parseKeepAliveTimeout, - destroy, - bodyLength, - deepClone, - ReadableStreamFrom, - isBuffer, - validateHandler, - getSocketInfo, - isFormDataLike, - buildURL, - throwIfAborted, - addAbortListener, - parseRangeHeader, - nodeMajor, - nodeMinor, - nodeHasAutoSelectFamily: nodeMajor > 18 || nodeMajor === 18 && nodeMinor >= 13, - safeHTTPMethods: ["GET", "HEAD", "OPTIONS", "TRACE"] - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/timers.js -var require_timers = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/timers.js"(exports2, module2) { - "use strict"; - var fastNow = Date.now(); - var fastNowTimeout; - var fastTimers = []; - function onTimeout() { - fastNow = Date.now(); - let len = fastTimers.length; - let idx = 0; - while (idx < len) { - const timer = fastTimers[idx]; - if (timer.state === 0) { - timer.state = fastNow + timer.delay; - } else if (timer.state > 0 && fastNow >= timer.state) { - timer.state = -1; - timer.callback(timer.opaque); - } - if (timer.state === -1) { - timer.state = -2; - if (idx !== len - 1) { - fastTimers[idx] = fastTimers.pop(); - } else { - fastTimers.pop(); - } - len -= 1; - } else { - idx += 1; - } - } - if (fastTimers.length > 0) { - refreshTimeout(); - } - } - function refreshTimeout() { - if (fastNowTimeout && fastNowTimeout.refresh) { - fastNowTimeout.refresh(); - } else { - clearTimeout(fastNowTimeout); - fastNowTimeout = setTimeout(onTimeout, 1e3); - if (fastNowTimeout.unref) { - fastNowTimeout.unref(); - } - } - } - var Timeout = class { - constructor(callback, delay, opaque) { - this.callback = callback; - this.delay = delay; - this.opaque = opaque; - this.state = -2; - this.refresh(); - } - refresh() { - if (this.state === -2) { - fastTimers.push(this); - if (!fastNowTimeout || fastTimers.length === 1) { - refreshTimeout(); - } - } - this.state = 0; - } - clear() { - this.state = -1; - } - }; - module2.exports = { - setTimeout(callback, delay, opaque) { - return delay < 1e3 ? setTimeout(callback, delay, opaque) : new Timeout(callback, delay, opaque); - }, - clearTimeout(timeout) { - if (timeout instanceof Timeout) { - timeout.clear(); - } else { - clearTimeout(timeout); - } - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/deps/streamsearch/sbmh.js -var require_sbmh = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/deps/streamsearch/sbmh.js"(exports2, module2) { - "use strict"; - var EventEmitter = require("node:events").EventEmitter; - var inherits = require("node:util").inherits; - function SBMH(needle) { - if (typeof needle === "string") { - needle = Buffer.from(needle); - } - if (!Buffer.isBuffer(needle)) { - throw new TypeError("The needle has to be a String or a Buffer."); - } - const needleLength = needle.length; - if (needleLength === 0) { - throw new Error("The needle cannot be an empty String/Buffer."); - } - if (needleLength > 256) { - throw new Error("The needle cannot have a length bigger than 256."); - } - this.maxMatches = Infinity; - this.matches = 0; - this._occ = new Array(256).fill(needleLength); - this._lookbehind_size = 0; - this._needle = needle; - this._bufpos = 0; - this._lookbehind = Buffer.alloc(needleLength); - for (var i = 0; i < needleLength - 1; ++i) { - this._occ[needle[i]] = needleLength - 1 - i; - } - } - inherits(SBMH, EventEmitter); - SBMH.prototype.reset = function() { - this._lookbehind_size = 0; - this.matches = 0; - this._bufpos = 0; - }; - SBMH.prototype.push = function(chunk, pos) { - if (!Buffer.isBuffer(chunk)) { - chunk = Buffer.from(chunk, "binary"); - } - const chlen = chunk.length; - this._bufpos = pos || 0; - let r; - while (r !== chlen && this.matches < this.maxMatches) { - r = this._sbmh_feed(chunk); - } - return r; - }; - SBMH.prototype._sbmh_feed = function(data) { - const len = data.length; - const needle = this._needle; - const needleLength = needle.length; - const lastNeedleChar = needle[needleLength - 1]; - let pos = -this._lookbehind_size; - let ch; - if (pos < 0) { - while (pos < 0 && pos <= len - needleLength) { - ch = this._sbmh_lookup_char(data, pos + needleLength - 1); - if (ch === lastNeedleChar && this._sbmh_memcmp(data, pos, needleLength - 1)) { - this._lookbehind_size = 0; - ++this.matches; - this.emit("info", true); - return this._bufpos = pos + needleLength; - } - pos += this._occ[ch]; - } - if (pos < 0) { - while (pos < 0 && !this._sbmh_memcmp(data, pos, len - pos)) { - ++pos; - } - } - if (pos >= 0) { - this.emit("info", false, this._lookbehind, 0, this._lookbehind_size); - this._lookbehind_size = 0; - } else { - const bytesToCutOff = this._lookbehind_size + pos; - if (bytesToCutOff > 0) { - this.emit("info", false, this._lookbehind, 0, bytesToCutOff); - } - this._lookbehind.copy( - this._lookbehind, - 0, - bytesToCutOff, - this._lookbehind_size - bytesToCutOff - ); - this._lookbehind_size -= bytesToCutOff; - data.copy(this._lookbehind, this._lookbehind_size); - this._lookbehind_size += len; - this._bufpos = len; - return len; - } - } - pos += (pos >= 0) * this._bufpos; - if (data.indexOf(needle, pos) !== -1) { - pos = data.indexOf(needle, pos); - ++this.matches; - if (pos > 0) { - this.emit("info", true, data, this._bufpos, pos); - } else { - this.emit("info", true); - } - return this._bufpos = pos + needleLength; - } else { - pos = len - needleLength; - } - while (pos < len && (data[pos] !== needle[0] || Buffer.compare( - data.subarray(pos, pos + len - pos), - needle.subarray(0, len - pos) - ) !== 0)) { - ++pos; - } - if (pos < len) { - data.copy(this._lookbehind, 0, pos, pos + (len - pos)); - this._lookbehind_size = len - pos; - } - if (pos > 0) { - this.emit("info", false, data, this._bufpos, pos < len ? pos : len); - } - this._bufpos = len; - return len; - }; - SBMH.prototype._sbmh_lookup_char = function(data, pos) { - return pos < 0 ? this._lookbehind[this._lookbehind_size + pos] : data[pos]; - }; - SBMH.prototype._sbmh_memcmp = function(data, pos, len) { - for (var i = 0; i < len; ++i) { - if (this._sbmh_lookup_char(data, pos + i) !== this._needle[i]) { - return false; - } - } - return true; - }; - module2.exports = SBMH; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/PartStream.js -var require_PartStream = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/PartStream.js"(exports2, module2) { - "use strict"; - var inherits = require("node:util").inherits; - var ReadableStream = require("node:stream").Readable; - function PartStream(opts) { - ReadableStream.call(this, opts); - } - inherits(PartStream, ReadableStream); - PartStream.prototype._read = function(n) { - }; - module2.exports = PartStream; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/getLimit.js -var require_getLimit = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/getLimit.js"(exports2, module2) { - "use strict"; - module2.exports = function getLimit(limits, name, defaultLimit) { - if (!limits || limits[name] === void 0 || limits[name] === null) { - return defaultLimit; - } - if (typeof limits[name] !== "number" || isNaN(limits[name])) { - throw new TypeError("Limit " + name + " is not a valid number"); - } - return limits[name]; - }; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/HeaderParser.js -var require_HeaderParser = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/HeaderParser.js"(exports2, module2) { - "use strict"; - var EventEmitter = require("node:events").EventEmitter; - var inherits = require("node:util").inherits; - var getLimit = require_getLimit(); - var StreamSearch = require_sbmh(); - var B_DCRLF = Buffer.from("\r\n\r\n"); - var RE_CRLF = /\r\n/g; - var RE_HDR = /^([^:]+):[ \t]?([\x00-\xFF]+)?$/; - function HeaderParser(cfg) { - EventEmitter.call(this); - cfg = cfg || {}; - const self = this; - this.nread = 0; - this.maxed = false; - this.npairs = 0; - this.maxHeaderPairs = getLimit(cfg, "maxHeaderPairs", 2e3); - this.maxHeaderSize = getLimit(cfg, "maxHeaderSize", 80 * 1024); - this.buffer = ""; - this.header = {}; - this.finished = false; - this.ss = new StreamSearch(B_DCRLF); - this.ss.on("info", function(isMatch, data, start, end) { - if (data && !self.maxed) { - if (self.nread + end - start >= self.maxHeaderSize) { - end = self.maxHeaderSize - self.nread + start; - self.nread = self.maxHeaderSize; - self.maxed = true; - } else { - self.nread += end - start; - } - self.buffer += data.toString("binary", start, end); - } - if (isMatch) { - self._finish(); - } - }); - } - inherits(HeaderParser, EventEmitter); - HeaderParser.prototype.push = function(data) { - const r = this.ss.push(data); - if (this.finished) { - return r; - } - }; - HeaderParser.prototype.reset = function() { - this.finished = false; - this.buffer = ""; - this.header = {}; - this.ss.reset(); - }; - HeaderParser.prototype._finish = function() { - if (this.buffer) { - this._parseHeader(); - } - this.ss.matches = this.ss.maxMatches; - const header = this.header; - this.header = {}; - this.buffer = ""; - this.finished = true; - this.nread = this.npairs = 0; - this.maxed = false; - this.emit("header", header); - }; - HeaderParser.prototype._parseHeader = function() { - if (this.npairs === this.maxHeaderPairs) { - return; - } - const lines = this.buffer.split(RE_CRLF); - const len = lines.length; - let m, h; - for (var i = 0; i < len; ++i) { - if (lines[i].length === 0) { - continue; - } - if (lines[i][0] === " " || lines[i][0] === " ") { - if (h) { - this.header[h][this.header[h].length - 1] += lines[i]; - continue; - } - } - const posColon = lines[i].indexOf(":"); - if (posColon === -1 || posColon === 0) { - return; - } - m = RE_HDR.exec(lines[i]); - h = m[1].toLowerCase(); - this.header[h] = this.header[h] || []; - this.header[h].push(m[2] || ""); - if (++this.npairs === this.maxHeaderPairs) { - break; - } - } - }; - module2.exports = HeaderParser; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/Dicer.js -var require_Dicer = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/deps/dicer/lib/Dicer.js"(exports2, module2) { - "use strict"; - var WritableStream = require("node:stream").Writable; - var inherits = require("node:util").inherits; - var StreamSearch = require_sbmh(); - var PartStream = require_PartStream(); - var HeaderParser = require_HeaderParser(); - var DASH = 45; - var B_ONEDASH = Buffer.from("-"); - var B_CRLF = Buffer.from("\r\n"); - var EMPTY_FN = function() { - }; - function Dicer(cfg) { - if (!(this instanceof Dicer)) { - return new Dicer(cfg); - } - WritableStream.call(this, cfg); - if (!cfg || !cfg.headerFirst && typeof cfg.boundary !== "string") { - throw new TypeError("Boundary required"); - } - if (typeof cfg.boundary === "string") { - this.setBoundary(cfg.boundary); - } else { - this._bparser = void 0; - } - this._headerFirst = cfg.headerFirst; - this._dashes = 0; - this._parts = 0; - this._finished = false; - this._realFinish = false; - this._isPreamble = true; - this._justMatched = false; - this._firstWrite = true; - this._inHeader = true; - this._part = void 0; - this._cb = void 0; - this._ignoreData = false; - this._partOpts = { highWaterMark: cfg.partHwm }; - this._pause = false; - const self = this; - this._hparser = new HeaderParser(cfg); - this._hparser.on("header", function(header) { - self._inHeader = false; - self._part.emit("header", header); - }); - } - inherits(Dicer, WritableStream); - Dicer.prototype.emit = function(ev) { - if (ev === "finish" && !this._realFinish) { - if (!this._finished) { - const self = this; - process.nextTick(function() { - self.emit("error", new Error("Unexpected end of multipart data")); - if (self._part && !self._ignoreData) { - const type = self._isPreamble ? "Preamble" : "Part"; - self._part.emit("error", new Error(type + " terminated early due to unexpected end of multipart data")); - self._part.push(null); - process.nextTick(function() { - self._realFinish = true; - self.emit("finish"); - self._realFinish = false; - }); - return; - } - self._realFinish = true; - self.emit("finish"); - self._realFinish = false; - }); - } - } else { - WritableStream.prototype.emit.apply(this, arguments); - } - }; - Dicer.prototype._write = function(data, encoding, cb) { - if (!this._hparser && !this._bparser) { - return cb(); - } - if (this._headerFirst && this._isPreamble) { - if (!this._part) { - this._part = new PartStream(this._partOpts); - if (this.listenerCount("preamble") !== 0) { - this.emit("preamble", this._part); - } else { - this._ignore(); - } - } - const r = this._hparser.push(data); - if (!this._inHeader && r !== void 0 && r < data.length) { - data = data.slice(r); - } else { - return cb(); - } - } - if (this._firstWrite) { - this._bparser.push(B_CRLF); - this._firstWrite = false; - } - this._bparser.push(data); - if (this._pause) { - this._cb = cb; - } else { - cb(); - } - }; - Dicer.prototype.reset = function() { - this._part = void 0; - this._bparser = void 0; - this._hparser = void 0; - }; - Dicer.prototype.setBoundary = function(boundary) { - const self = this; - this._bparser = new StreamSearch("\r\n--" + boundary); - this._bparser.on("info", function(isMatch, data, start, end) { - self._oninfo(isMatch, data, start, end); - }); - }; - Dicer.prototype._ignore = function() { - if (this._part && !this._ignoreData) { - this._ignoreData = true; - this._part.on("error", EMPTY_FN); - this._part.resume(); - } - }; - Dicer.prototype._oninfo = function(isMatch, data, start, end) { - let buf; - const self = this; - let i = 0; - let r; - let shouldWriteMore = true; - if (!this._part && this._justMatched && data) { - while (this._dashes < 2 && start + i < end) { - if (data[start + i] === DASH) { - ++i; - ++this._dashes; - } else { - if (this._dashes) { - buf = B_ONEDASH; - } - this._dashes = 0; - break; - } - } - if (this._dashes === 2) { - if (start + i < end && this.listenerCount("trailer") !== 0) { - this.emit("trailer", data.slice(start + i, end)); - } - this.reset(); - this._finished = true; - if (self._parts === 0) { - self._realFinish = true; - self.emit("finish"); - self._realFinish = false; - } - } - if (this._dashes) { - return; - } - } - if (this._justMatched) { - this._justMatched = false; - } - if (!this._part) { - this._part = new PartStream(this._partOpts); - this._part._read = function(n) { - self._unpause(); - }; - if (this._isPreamble && this.listenerCount("preamble") !== 0) { - this.emit("preamble", this._part); - } else if (this._isPreamble !== true && this.listenerCount("part") !== 0) { - this.emit("part", this._part); - } else { - this._ignore(); - } - if (!this._isPreamble) { - this._inHeader = true; - } - } - if (data && start < end && !this._ignoreData) { - if (this._isPreamble || !this._inHeader) { - if (buf) { - shouldWriteMore = this._part.push(buf); - } - shouldWriteMore = this._part.push(data.slice(start, end)); - if (!shouldWriteMore) { - this._pause = true; - } - } else if (!this._isPreamble && this._inHeader) { - if (buf) { - this._hparser.push(buf); - } - r = this._hparser.push(data.slice(start, end)); - if (!this._inHeader && r !== void 0 && r < end) { - this._oninfo(false, data, start + r, end); - } - } - } - if (isMatch) { - this._hparser.reset(); - if (this._isPreamble) { - this._isPreamble = false; - } else { - if (start !== end) { - ++this._parts; - this._part.on("end", function() { - if (--self._parts === 0) { - if (self._finished) { - self._realFinish = true; - self.emit("finish"); - self._realFinish = false; - } else { - self._unpause(); - } - } - }); - } - } - this._part.push(null); - this._part = void 0; - this._ignoreData = false; - this._justMatched = true; - this._dashes = 0; - } - }; - Dicer.prototype._unpause = function() { - if (!this._pause) { - return; - } - this._pause = false; - if (this._cb) { - const cb = this._cb; - this._cb = void 0; - cb(); - } - }; - module2.exports = Dicer; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/decodeText.js -var require_decodeText = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/decodeText.js"(exports2, module2) { - "use strict"; - var utf8Decoder = new TextDecoder("utf-8"); - var textDecoders = /* @__PURE__ */ new Map([ - ["utf-8", utf8Decoder], - ["utf8", utf8Decoder] - ]); - function getDecoder(charset) { - let lc; - while (true) { - switch (charset) { - case "utf-8": - case "utf8": - return decoders.utf8; - case "latin1": - case "ascii": - case "us-ascii": - case "iso-8859-1": - case "iso8859-1": - case "iso88591": - case "iso_8859-1": - case "windows-1252": - case "iso_8859-1:1987": - case "cp1252": - case "x-cp1252": - return decoders.latin1; - case "utf16le": - case "utf-16le": - case "ucs2": - case "ucs-2": - return decoders.utf16le; - case "base64": - return decoders.base64; - default: - if (lc === void 0) { - lc = true; - charset = charset.toLowerCase(); - continue; - } - return decoders.other.bind(charset); - } - } - } - var decoders = { - utf8: (data, sourceEncoding) => { - if (data.length === 0) { - return ""; - } - if (typeof data === "string") { - data = Buffer.from(data, sourceEncoding); - } - return data.utf8Slice(0, data.length); - }, - latin1: (data, sourceEncoding) => { - if (data.length === 0) { - return ""; - } - if (typeof data === "string") { - return data; - } - return data.latin1Slice(0, data.length); - }, - utf16le: (data, sourceEncoding) => { - if (data.length === 0) { - return ""; - } - if (typeof data === "string") { - data = Buffer.from(data, sourceEncoding); - } - return data.ucs2Slice(0, data.length); - }, - base64: (data, sourceEncoding) => { - if (data.length === 0) { - return ""; - } - if (typeof data === "string") { - data = Buffer.from(data, sourceEncoding); - } - return data.base64Slice(0, data.length); - }, - other: (data, sourceEncoding) => { - if (data.length === 0) { - return ""; - } - if (typeof data === "string") { - data = Buffer.from(data, sourceEncoding); - } - if (textDecoders.has(exports2.toString())) { - try { - return textDecoders.get(exports2).decode(data); - } catch { - } - } - return typeof data === "string" ? data : data.toString(); - } - }; - function decodeText(text, sourceEncoding, destEncoding) { - if (text) { - return getDecoder(destEncoding)(text, sourceEncoding); - } - return text; - } - module2.exports = decodeText; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/parseParams.js -var require_parseParams = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/parseParams.js"(exports2, module2) { - "use strict"; - var decodeText = require_decodeText(); - var RE_ENCODED = /%[a-fA-F0-9][a-fA-F0-9]/g; - var EncodedLookup = { - "%00": "\0", - "%01": "", - "%02": "", - "%03": "", - "%04": "", - "%05": "", - "%06": "", - "%07": "\x07", - "%08": "\b", - "%09": " ", - "%0a": "\n", - "%0A": "\n", - "%0b": "\v", - "%0B": "\v", - "%0c": "\f", - "%0C": "\f", - "%0d": "\r", - "%0D": "\r", - "%0e": "", - "%0E": "", - "%0f": "", - "%0F": "", - "%10": "", - "%11": "", - "%12": "", - "%13": "", - "%14": "", - "%15": "", - "%16": "", - "%17": "", - "%18": "", - "%19": "", - "%1a": "", - "%1A": "", - "%1b": "\x1B", - "%1B": "\x1B", - "%1c": "", - "%1C": "", - "%1d": "", - "%1D": "", - "%1e": "", - "%1E": "", - "%1f": "", - "%1F": "", - "%20": " ", - "%21": "!", - "%22": '"', - "%23": "#", - "%24": "$", - "%25": "%", - "%26": "&", - "%27": "'", - "%28": "(", - "%29": ")", - "%2a": "*", - "%2A": "*", - "%2b": "+", - "%2B": "+", - "%2c": ",", - "%2C": ",", - "%2d": "-", - "%2D": "-", - "%2e": ".", - "%2E": ".", - "%2f": "/", - "%2F": "/", - "%30": "0", - "%31": "1", - "%32": "2", - "%33": "3", - "%34": "4", - "%35": "5", - "%36": "6", - "%37": "7", - "%38": "8", - "%39": "9", - "%3a": ":", - "%3A": ":", - "%3b": ";", - "%3B": ";", - "%3c": "<", - "%3C": "<", - "%3d": "=", - "%3D": "=", - "%3e": ">", - "%3E": ">", - "%3f": "?", - "%3F": "?", - "%40": "@", - "%41": "A", - "%42": "B", - "%43": "C", - "%44": "D", - "%45": "E", - "%46": "F", - "%47": "G", - "%48": "H", - "%49": "I", - "%4a": "J", - "%4A": "J", - "%4b": "K", - "%4B": "K", - "%4c": "L", - "%4C": "L", - "%4d": "M", - "%4D": "M", - "%4e": "N", - "%4E": "N", - "%4f": "O", - "%4F": "O", - "%50": "P", - "%51": "Q", - "%52": "R", - "%53": "S", - "%54": "T", - "%55": "U", - "%56": "V", - "%57": "W", - "%58": "X", - "%59": "Y", - "%5a": "Z", - "%5A": "Z", - "%5b": "[", - "%5B": "[", - "%5c": "\\", - "%5C": "\\", - "%5d": "]", - "%5D": "]", - "%5e": "^", - "%5E": "^", - "%5f": "_", - "%5F": "_", - "%60": "`", - "%61": "a", - "%62": "b", - "%63": "c", - "%64": "d", - "%65": "e", - "%66": "f", - "%67": "g", - "%68": "h", - "%69": "i", - "%6a": "j", - "%6A": "j", - "%6b": "k", - "%6B": "k", - "%6c": "l", - "%6C": "l", - "%6d": "m", - "%6D": "m", - "%6e": "n", - "%6E": "n", - "%6f": "o", - "%6F": "o", - "%70": "p", - "%71": "q", - "%72": "r", - "%73": "s", - "%74": "t", - "%75": "u", - "%76": "v", - "%77": "w", - "%78": "x", - "%79": "y", - "%7a": "z", - "%7A": "z", - "%7b": "{", - "%7B": "{", - "%7c": "|", - "%7C": "|", - "%7d": "}", - "%7D": "}", - "%7e": "~", - "%7E": "~", - "%7f": "\x7F", - "%7F": "\x7F", - "%80": "\x80", - "%81": "\x81", - "%82": "\x82", - "%83": "\x83", - "%84": "\x84", - "%85": "\x85", - "%86": "\x86", - "%87": "\x87", - "%88": "\x88", - "%89": "\x89", - "%8a": "\x8A", - "%8A": "\x8A", - "%8b": "\x8B", - "%8B": "\x8B", - "%8c": "\x8C", - "%8C": "\x8C", - "%8d": "\x8D", - "%8D": "\x8D", - "%8e": "\x8E", - "%8E": "\x8E", - "%8f": "\x8F", - "%8F": "\x8F", - "%90": "\x90", - "%91": "\x91", - "%92": "\x92", - "%93": "\x93", - "%94": "\x94", - "%95": "\x95", - "%96": "\x96", - "%97": "\x97", - "%98": "\x98", - "%99": "\x99", - "%9a": "\x9A", - "%9A": "\x9A", - "%9b": "\x9B", - "%9B": "\x9B", - "%9c": "\x9C", - "%9C": "\x9C", - "%9d": "\x9D", - "%9D": "\x9D", - "%9e": "\x9E", - "%9E": "\x9E", - "%9f": "\x9F", - "%9F": "\x9F", - "%a0": "\xA0", - "%A0": "\xA0", - "%a1": "\xA1", - "%A1": "\xA1", - "%a2": "\xA2", - "%A2": "\xA2", - "%a3": "\xA3", - "%A3": "\xA3", - "%a4": "\xA4", - "%A4": "\xA4", - "%a5": "\xA5", - "%A5": "\xA5", - "%a6": "\xA6", - "%A6": "\xA6", - "%a7": "\xA7", - "%A7": "\xA7", - "%a8": "\xA8", - "%A8": "\xA8", - "%a9": "\xA9", - "%A9": "\xA9", - "%aa": "\xAA", - "%Aa": "\xAA", - "%aA": "\xAA", - "%AA": "\xAA", - "%ab": "\xAB", - "%Ab": "\xAB", - "%aB": "\xAB", - "%AB": "\xAB", - "%ac": "\xAC", - "%Ac": "\xAC", - "%aC": "\xAC", - "%AC": "\xAC", - "%ad": "\xAD", - "%Ad": "\xAD", - "%aD": "\xAD", - "%AD": "\xAD", - "%ae": "\xAE", - "%Ae": "\xAE", - "%aE": "\xAE", - "%AE": "\xAE", - "%af": "\xAF", - "%Af": "\xAF", - "%aF": "\xAF", - "%AF": "\xAF", - "%b0": "\xB0", - "%B0": "\xB0", - "%b1": "\xB1", - "%B1": "\xB1", - "%b2": "\xB2", - "%B2": "\xB2", - "%b3": "\xB3", - "%B3": "\xB3", - "%b4": "\xB4", - "%B4": "\xB4", - "%b5": "\xB5", - "%B5": "\xB5", - "%b6": "\xB6", - "%B6": "\xB6", - "%b7": "\xB7", - "%B7": "\xB7", - "%b8": "\xB8", - "%B8": "\xB8", - "%b9": "\xB9", - "%B9": "\xB9", - "%ba": "\xBA", - "%Ba": "\xBA", - "%bA": "\xBA", - "%BA": "\xBA", - "%bb": "\xBB", - "%Bb": "\xBB", - "%bB": "\xBB", - "%BB": "\xBB", - "%bc": "\xBC", - "%Bc": "\xBC", - "%bC": "\xBC", - "%BC": "\xBC", - "%bd": "\xBD", - "%Bd": "\xBD", - "%bD": "\xBD", - "%BD": "\xBD", - "%be": "\xBE", - "%Be": "\xBE", - "%bE": "\xBE", - "%BE": "\xBE", - "%bf": "\xBF", - "%Bf": "\xBF", - "%bF": "\xBF", - "%BF": "\xBF", - "%c0": "\xC0", - "%C0": "\xC0", - "%c1": "\xC1", - "%C1": "\xC1", - "%c2": "\xC2", - "%C2": "\xC2", - "%c3": "\xC3", - "%C3": "\xC3", - "%c4": "\xC4", - "%C4": "\xC4", - "%c5": "\xC5", - "%C5": "\xC5", - "%c6": "\xC6", - "%C6": "\xC6", - "%c7": "\xC7", - "%C7": "\xC7", - "%c8": "\xC8", - "%C8": "\xC8", - "%c9": "\xC9", - "%C9": "\xC9", - "%ca": "\xCA", - "%Ca": "\xCA", - "%cA": "\xCA", - "%CA": "\xCA", - "%cb": "\xCB", - "%Cb": "\xCB", - "%cB": "\xCB", - "%CB": "\xCB", - "%cc": "\xCC", - "%Cc": "\xCC", - "%cC": "\xCC", - "%CC": "\xCC", - "%cd": "\xCD", - "%Cd": "\xCD", - "%cD": "\xCD", - "%CD": "\xCD", - "%ce": "\xCE", - "%Ce": "\xCE", - "%cE": "\xCE", - "%CE": "\xCE", - "%cf": "\xCF", - "%Cf": "\xCF", - "%cF": "\xCF", - "%CF": "\xCF", - "%d0": "\xD0", - "%D0": "\xD0", - "%d1": "\xD1", - "%D1": "\xD1", - "%d2": "\xD2", - "%D2": "\xD2", - "%d3": "\xD3", - "%D3": "\xD3", - "%d4": "\xD4", - "%D4": "\xD4", - "%d5": "\xD5", - "%D5": "\xD5", - "%d6": "\xD6", - "%D6": "\xD6", - "%d7": "\xD7", - "%D7": "\xD7", - "%d8": "\xD8", - "%D8": "\xD8", - "%d9": "\xD9", - "%D9": "\xD9", - "%da": "\xDA", - "%Da": "\xDA", - "%dA": "\xDA", - "%DA": "\xDA", - "%db": "\xDB", - "%Db": "\xDB", - "%dB": "\xDB", - "%DB": "\xDB", - "%dc": "\xDC", - "%Dc": "\xDC", - "%dC": "\xDC", - "%DC": "\xDC", - "%dd": "\xDD", - "%Dd": "\xDD", - "%dD": "\xDD", - "%DD": "\xDD", - "%de": "\xDE", - "%De": "\xDE", - "%dE": "\xDE", - "%DE": "\xDE", - "%df": "\xDF", - "%Df": "\xDF", - "%dF": "\xDF", - "%DF": "\xDF", - "%e0": "\xE0", - "%E0": "\xE0", - "%e1": "\xE1", - "%E1": "\xE1", - "%e2": "\xE2", - "%E2": "\xE2", - "%e3": "\xE3", - "%E3": "\xE3", - "%e4": "\xE4", - "%E4": "\xE4", - "%e5": "\xE5", - "%E5": "\xE5", - "%e6": "\xE6", - "%E6": "\xE6", - "%e7": "\xE7", - "%E7": "\xE7", - "%e8": "\xE8", - "%E8": "\xE8", - "%e9": "\xE9", - "%E9": "\xE9", - "%ea": "\xEA", - "%Ea": "\xEA", - "%eA": "\xEA", - "%EA": "\xEA", - "%eb": "\xEB", - "%Eb": "\xEB", - "%eB": "\xEB", - "%EB": "\xEB", - "%ec": "\xEC", - "%Ec": "\xEC", - "%eC": "\xEC", - "%EC": "\xEC", - "%ed": "\xED", - "%Ed": "\xED", - "%eD": "\xED", - "%ED": "\xED", - "%ee": "\xEE", - "%Ee": "\xEE", - "%eE": "\xEE", - "%EE": "\xEE", - "%ef": "\xEF", - "%Ef": "\xEF", - "%eF": "\xEF", - "%EF": "\xEF", - "%f0": "\xF0", - "%F0": "\xF0", - "%f1": "\xF1", - "%F1": "\xF1", - "%f2": "\xF2", - "%F2": "\xF2", - "%f3": "\xF3", - "%F3": "\xF3", - "%f4": "\xF4", - "%F4": "\xF4", - "%f5": "\xF5", - "%F5": "\xF5", - "%f6": "\xF6", - "%F6": "\xF6", - "%f7": "\xF7", - "%F7": "\xF7", - "%f8": "\xF8", - "%F8": "\xF8", - "%f9": "\xF9", - "%F9": "\xF9", - "%fa": "\xFA", - "%Fa": "\xFA", - "%fA": "\xFA", - "%FA": "\xFA", - "%fb": "\xFB", - "%Fb": "\xFB", - "%fB": "\xFB", - "%FB": "\xFB", - "%fc": "\xFC", - "%Fc": "\xFC", - "%fC": "\xFC", - "%FC": "\xFC", - "%fd": "\xFD", - "%Fd": "\xFD", - "%fD": "\xFD", - "%FD": "\xFD", - "%fe": "\xFE", - "%Fe": "\xFE", - "%fE": "\xFE", - "%FE": "\xFE", - "%ff": "\xFF", - "%Ff": "\xFF", - "%fF": "\xFF", - "%FF": "\xFF" - }; - function encodedReplacer(match) { - return EncodedLookup[match]; - } - var STATE_KEY = 0; - var STATE_VALUE = 1; - var STATE_CHARSET = 2; - var STATE_LANG = 3; - function parseParams(str) { - const res = []; - let state = STATE_KEY; - let charset = ""; - let inquote = false; - let escaping = false; - let p = 0; - let tmp = ""; - const len = str.length; - for (var i = 0; i < len; ++i) { - const char = str[i]; - if (char === "\\" && inquote) { - if (escaping) { - escaping = false; - } else { - escaping = true; - continue; - } - } else if (char === '"') { - if (!escaping) { - if (inquote) { - inquote = false; - state = STATE_KEY; - } else { - inquote = true; - } - continue; - } else { - escaping = false; - } - } else { - if (escaping && inquote) { - tmp += "\\"; - } - escaping = false; - if ((state === STATE_CHARSET || state === STATE_LANG) && char === "'") { - if (state === STATE_CHARSET) { - state = STATE_LANG; - charset = tmp.substring(1); - } else { - state = STATE_VALUE; - } - tmp = ""; - continue; - } else if (state === STATE_KEY && (char === "*" || char === "=") && res.length) { - state = char === "*" ? STATE_CHARSET : STATE_VALUE; - res[p] = [tmp, void 0]; - tmp = ""; - continue; - } else if (!inquote && char === ";") { - state = STATE_KEY; - if (charset) { - if (tmp.length) { - tmp = decodeText( - tmp.replace(RE_ENCODED, encodedReplacer), - "binary", - charset - ); - } - charset = ""; - } else if (tmp.length) { - tmp = decodeText(tmp, "binary", "utf8"); - } - if (res[p] === void 0) { - res[p] = tmp; - } else { - res[p][1] = tmp; - } - tmp = ""; - ++p; - continue; - } else if (!inquote && (char === " " || char === " ")) { - continue; - } - } - tmp += char; - } - if (charset && tmp.length) { - tmp = decodeText( - tmp.replace(RE_ENCODED, encodedReplacer), - "binary", - charset - ); - } else if (tmp) { - tmp = decodeText(tmp, "binary", "utf8"); - } - if (res[p] === void 0) { - if (tmp) { - res[p] = tmp; - } - } else { - res[p][1] = tmp; - } - return res; - } - module2.exports = parseParams; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/basename.js -var require_basename = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/basename.js"(exports2, module2) { - "use strict"; - module2.exports = function basename(path2) { - if (typeof path2 !== "string") { - return ""; - } - for (var i = path2.length - 1; i >= 0; --i) { - switch (path2.charCodeAt(i)) { - case 47: - case 92: - path2 = path2.slice(i + 1); - return path2 === ".." || path2 === "." ? "" : path2; - } - } - return path2 === ".." || path2 === "." ? "" : path2; - }; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/types/multipart.js -var require_multipart = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/types/multipart.js"(exports2, module2) { - "use strict"; - var { Readable } = require("node:stream"); - var { inherits } = require("node:util"); - var Dicer = require_Dicer(); - var parseParams = require_parseParams(); - var decodeText = require_decodeText(); - var basename = require_basename(); - var getLimit = require_getLimit(); - var RE_BOUNDARY = /^boundary$/i; - var RE_FIELD = /^form-data$/i; - var RE_CHARSET = /^charset$/i; - var RE_FILENAME = /^filename$/i; - var RE_NAME = /^name$/i; - Multipart.detect = /^multipart\/form-data/i; - function Multipart(boy, cfg) { - let i; - let len; - const self = this; - let boundary; - const limits = cfg.limits; - const isPartAFile = cfg.isPartAFile || ((fieldName, contentType, fileName) => contentType === "application/octet-stream" || fileName !== void 0); - const parsedConType = cfg.parsedConType || []; - const defCharset = cfg.defCharset || "utf8"; - const preservePath = cfg.preservePath; - const fileOpts = { highWaterMark: cfg.fileHwm }; - for (i = 0, len = parsedConType.length; i < len; ++i) { - if (Array.isArray(parsedConType[i]) && RE_BOUNDARY.test(parsedConType[i][0])) { - boundary = parsedConType[i][1]; - break; - } - } - function checkFinished() { - if (nends === 0 && finished && !boy._done) { - finished = false; - self.end(); - } - } - if (typeof boundary !== "string") { - throw new Error("Multipart: Boundary not found"); - } - const fieldSizeLimit = getLimit(limits, "fieldSize", 1 * 1024 * 1024); - const fileSizeLimit = getLimit(limits, "fileSize", Infinity); - const filesLimit = getLimit(limits, "files", Infinity); - const fieldsLimit = getLimit(limits, "fields", Infinity); - const partsLimit = getLimit(limits, "parts", Infinity); - const headerPairsLimit = getLimit(limits, "headerPairs", 2e3); - const headerSizeLimit = getLimit(limits, "headerSize", 80 * 1024); - let nfiles = 0; - let nfields = 0; - let nends = 0; - let curFile; - let curField; - let finished = false; - this._needDrain = false; - this._pause = false; - this._cb = void 0; - this._nparts = 0; - this._boy = boy; - const parserCfg = { - boundary, - maxHeaderPairs: headerPairsLimit, - maxHeaderSize: headerSizeLimit, - partHwm: fileOpts.highWaterMark, - highWaterMark: cfg.highWaterMark - }; - this.parser = new Dicer(parserCfg); - this.parser.on("drain", function() { - self._needDrain = false; - if (self._cb && !self._pause) { - const cb = self._cb; - self._cb = void 0; - cb(); - } - }).on("part", function onPart(part) { - if (++self._nparts > partsLimit) { - self.parser.removeListener("part", onPart); - self.parser.on("part", skipPart); - boy.hitPartsLimit = true; - boy.emit("partsLimit"); - return skipPart(part); - } - if (curField) { - const field = curField; - field.emit("end"); - field.removeAllListeners("end"); - } - part.on("header", function(header) { - let contype; - let fieldname; - let parsed; - let charset; - let encoding; - let filename; - let nsize = 0; - if (header["content-type"]) { - parsed = parseParams(header["content-type"][0]); - if (parsed[0]) { - contype = parsed[0].toLowerCase(); - for (i = 0, len = parsed.length; i < len; ++i) { - if (RE_CHARSET.test(parsed[i][0])) { - charset = parsed[i][1].toLowerCase(); - break; - } - } - } - } - if (contype === void 0) { - contype = "text/plain"; - } - if (charset === void 0) { - charset = defCharset; - } - if (header["content-disposition"]) { - parsed = parseParams(header["content-disposition"][0]); - if (!RE_FIELD.test(parsed[0])) { - return skipPart(part); - } - for (i = 0, len = parsed.length; i < len; ++i) { - if (RE_NAME.test(parsed[i][0])) { - fieldname = parsed[i][1]; - } else if (RE_FILENAME.test(parsed[i][0])) { - filename = parsed[i][1]; - if (!preservePath) { - filename = basename(filename); - } - } - } - } else { - return skipPart(part); - } - if (header["content-transfer-encoding"]) { - encoding = header["content-transfer-encoding"][0].toLowerCase(); - } else { - encoding = "7bit"; - } - let onData, onEnd; - if (isPartAFile(fieldname, contype, filename)) { - if (nfiles === filesLimit) { - if (!boy.hitFilesLimit) { - boy.hitFilesLimit = true; - boy.emit("filesLimit"); - } - return skipPart(part); - } - ++nfiles; - if (boy.listenerCount("file") === 0) { - self.parser._ignore(); - return; - } - ++nends; - const file = new FileStream(fileOpts); - curFile = file; - file.on("end", function() { - --nends; - self._pause = false; - checkFinished(); - if (self._cb && !self._needDrain) { - const cb = self._cb; - self._cb = void 0; - cb(); - } - }); - file._read = function(n) { - if (!self._pause) { - return; - } - self._pause = false; - if (self._cb && !self._needDrain) { - const cb = self._cb; - self._cb = void 0; - cb(); - } - }; - boy.emit("file", fieldname, file, filename, encoding, contype); - onData = function(data) { - if ((nsize += data.length) > fileSizeLimit) { - const extralen = fileSizeLimit - nsize + data.length; - if (extralen > 0) { - file.push(data.slice(0, extralen)); - } - file.truncated = true; - file.bytesRead = fileSizeLimit; - part.removeAllListeners("data"); - file.emit("limit"); - return; - } else if (!file.push(data)) { - self._pause = true; - } - file.bytesRead = nsize; - }; - onEnd = function() { - curFile = void 0; - file.push(null); - }; - } else { - if (nfields === fieldsLimit) { - if (!boy.hitFieldsLimit) { - boy.hitFieldsLimit = true; - boy.emit("fieldsLimit"); - } - return skipPart(part); - } - ++nfields; - ++nends; - let buffer = ""; - let truncated = false; - curField = part; - onData = function(data) { - if ((nsize += data.length) > fieldSizeLimit) { - const extralen = fieldSizeLimit - (nsize - data.length); - buffer += data.toString("binary", 0, extralen); - truncated = true; - part.removeAllListeners("data"); - } else { - buffer += data.toString("binary"); - } - }; - onEnd = function() { - curField = void 0; - if (buffer.length) { - buffer = decodeText(buffer, "binary", charset); - } - boy.emit("field", fieldname, buffer, false, truncated, encoding, contype); - --nends; - checkFinished(); - }; - } - part._readableState.sync = false; - part.on("data", onData); - part.on("end", onEnd); - }).on("error", function(err) { - if (curFile) { - curFile.emit("error", err); - } - }); - }).on("error", function(err) { - boy.emit("error", err); - }).on("finish", function() { - finished = true; - checkFinished(); - }); - } - Multipart.prototype.write = function(chunk, cb) { - const r = this.parser.write(chunk); - if (r && !this._pause) { - cb(); - } else { - this._needDrain = !r; - this._cb = cb; - } - }; - Multipart.prototype.end = function() { - const self = this; - if (self.parser.writable) { - self.parser.end(); - } else if (!self._boy._done) { - process.nextTick(function() { - self._boy._done = true; - self._boy.emit("finish"); - }); - } - }; - function skipPart(part) { - part.resume(); - } - function FileStream(opts) { - Readable.call(this, opts); - this.bytesRead = 0; - this.truncated = false; - } - inherits(FileStream, Readable); - FileStream.prototype._read = function(n) { - }; - module2.exports = Multipart; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/Decoder.js -var require_Decoder = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/utils/Decoder.js"(exports2, module2) { - "use strict"; - var RE_PLUS = /\+/g; - var HEX = [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 1, - 1, - 1, - 1, - 1, - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ]; - function Decoder() { - this.buffer = void 0; - } - Decoder.prototype.write = function(str) { - str = str.replace(RE_PLUS, " "); - let res = ""; - let i = 0; - let p = 0; - const len = str.length; - for (; i < len; ++i) { - if (this.buffer !== void 0) { - if (!HEX[str.charCodeAt(i)]) { - res += "%" + this.buffer; - this.buffer = void 0; - --i; - } else { - this.buffer += str[i]; - ++p; - if (this.buffer.length === 2) { - res += String.fromCharCode(parseInt(this.buffer, 16)); - this.buffer = void 0; - } - } - } else if (str[i] === "%") { - if (i > p) { - res += str.substring(p, i); - p = i; - } - this.buffer = ""; - ++p; - } - } - if (p < len && this.buffer === void 0) { - res += str.substring(p); - } - return res; - }; - Decoder.prototype.reset = function() { - this.buffer = void 0; - }; - module2.exports = Decoder; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/types/urlencoded.js -var require_urlencoded = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/types/urlencoded.js"(exports2, module2) { - "use strict"; - var Decoder = require_Decoder(); - var decodeText = require_decodeText(); - var getLimit = require_getLimit(); - var RE_CHARSET = /^charset$/i; - UrlEncoded.detect = /^application\/x-www-form-urlencoded/i; - function UrlEncoded(boy, cfg) { - const limits = cfg.limits; - const parsedConType = cfg.parsedConType; - this.boy = boy; - this.fieldSizeLimit = getLimit(limits, "fieldSize", 1 * 1024 * 1024); - this.fieldNameSizeLimit = getLimit(limits, "fieldNameSize", 100); - this.fieldsLimit = getLimit(limits, "fields", Infinity); - let charset; - for (var i = 0, len = parsedConType.length; i < len; ++i) { - if (Array.isArray(parsedConType[i]) && RE_CHARSET.test(parsedConType[i][0])) { - charset = parsedConType[i][1].toLowerCase(); - break; - } - } - if (charset === void 0) { - charset = cfg.defCharset || "utf8"; - } - this.decoder = new Decoder(); - this.charset = charset; - this._fields = 0; - this._state = "key"; - this._checkingBytes = true; - this._bytesKey = 0; - this._bytesVal = 0; - this._key = ""; - this._val = ""; - this._keyTrunc = false; - this._valTrunc = false; - this._hitLimit = false; - } - UrlEncoded.prototype.write = function(data, cb) { - if (this._fields === this.fieldsLimit) { - if (!this.boy.hitFieldsLimit) { - this.boy.hitFieldsLimit = true; - this.boy.emit("fieldsLimit"); - } - return cb(); - } - let idxeq; - let idxamp; - let i; - let p = 0; - const len = data.length; - while (p < len) { - if (this._state === "key") { - idxeq = idxamp = void 0; - for (i = p; i < len; ++i) { - if (!this._checkingBytes) { - ++p; - } - if (data[i] === 61) { - idxeq = i; - break; - } else if (data[i] === 38) { - idxamp = i; - break; - } - if (this._checkingBytes && this._bytesKey === this.fieldNameSizeLimit) { - this._hitLimit = true; - break; - } else if (this._checkingBytes) { - ++this._bytesKey; - } - } - if (idxeq !== void 0) { - if (idxeq > p) { - this._key += this.decoder.write(data.toString("binary", p, idxeq)); - } - this._state = "val"; - this._hitLimit = false; - this._checkingBytes = true; - this._val = ""; - this._bytesVal = 0; - this._valTrunc = false; - this.decoder.reset(); - p = idxeq + 1; - } else if (idxamp !== void 0) { - ++this._fields; - let key; - const keyTrunc = this._keyTrunc; - if (idxamp > p) { - key = this._key += this.decoder.write(data.toString("binary", p, idxamp)); - } else { - key = this._key; - } - this._hitLimit = false; - this._checkingBytes = true; - this._key = ""; - this._bytesKey = 0; - this._keyTrunc = false; - this.decoder.reset(); - if (key.length) { - this.boy.emit( - "field", - decodeText(key, "binary", this.charset), - "", - keyTrunc, - false - ); - } - p = idxamp + 1; - if (this._fields === this.fieldsLimit) { - return cb(); - } - } else if (this._hitLimit) { - if (i > p) { - this._key += this.decoder.write(data.toString("binary", p, i)); - } - p = i; - if ((this._bytesKey = this._key.length) === this.fieldNameSizeLimit) { - this._checkingBytes = false; - this._keyTrunc = true; - } - } else { - if (p < len) { - this._key += this.decoder.write(data.toString("binary", p)); - } - p = len; - } - } else { - idxamp = void 0; - for (i = p; i < len; ++i) { - if (!this._checkingBytes) { - ++p; - } - if (data[i] === 38) { - idxamp = i; - break; - } - if (this._checkingBytes && this._bytesVal === this.fieldSizeLimit) { - this._hitLimit = true; - break; - } else if (this._checkingBytes) { - ++this._bytesVal; - } - } - if (idxamp !== void 0) { - ++this._fields; - if (idxamp > p) { - this._val += this.decoder.write(data.toString("binary", p, idxamp)); - } - this.boy.emit( - "field", - decodeText(this._key, "binary", this.charset), - decodeText(this._val, "binary", this.charset), - this._keyTrunc, - this._valTrunc - ); - this._state = "key"; - this._hitLimit = false; - this._checkingBytes = true; - this._key = ""; - this._bytesKey = 0; - this._keyTrunc = false; - this.decoder.reset(); - p = idxamp + 1; - if (this._fields === this.fieldsLimit) { - return cb(); - } - } else if (this._hitLimit) { - if (i > p) { - this._val += this.decoder.write(data.toString("binary", p, i)); - } - p = i; - if (this._val === "" && this.fieldSizeLimit === 0 || (this._bytesVal = this._val.length) === this.fieldSizeLimit) { - this._checkingBytes = false; - this._valTrunc = true; - } - } else { - if (p < len) { - this._val += this.decoder.write(data.toString("binary", p)); - } - p = len; - } - } - } - cb(); - }; - UrlEncoded.prototype.end = function() { - if (this.boy._done) { - return; - } - if (this._state === "key" && this._key.length > 0) { - this.boy.emit( - "field", - decodeText(this._key, "binary", this.charset), - "", - this._keyTrunc, - false - ); - } else if (this._state === "val") { - this.boy.emit( - "field", - decodeText(this._key, "binary", this.charset), - decodeText(this._val, "binary", this.charset), - this._keyTrunc, - this._valTrunc - ); - } - this.boy._done = true; - this.boy.emit("finish"); - }; - module2.exports = UrlEncoded; - } -}); - -// node_modules/@reporters/github/node_modules/@fastify/busboy/lib/main.js -var require_main = __commonJS({ - "node_modules/@reporters/github/node_modules/@fastify/busboy/lib/main.js"(exports2, module2) { - "use strict"; - var WritableStream = require("node:stream").Writable; - var { inherits } = require("node:util"); - var Dicer = require_Dicer(); - var MultipartParser = require_multipart(); - var UrlencodedParser = require_urlencoded(); - var parseParams = require_parseParams(); - function Busboy(opts) { - if (!(this instanceof Busboy)) { - return new Busboy(opts); - } - if (typeof opts !== "object") { - throw new TypeError("Busboy expected an options-Object."); - } - if (typeof opts.headers !== "object") { - throw new TypeError("Busboy expected an options-Object with headers-attribute."); - } - if (typeof opts.headers["content-type"] !== "string") { - throw new TypeError("Missing Content-Type-header."); - } - const { - headers, - ...streamOptions - } = opts; - this.opts = { - autoDestroy: false, - ...streamOptions - }; - WritableStream.call(this, this.opts); - this._done = false; - this._parser = this.getParserByHeaders(headers); - this._finished = false; - } - inherits(Busboy, WritableStream); - Busboy.prototype.emit = function(ev) { - if (ev === "finish") { - if (!this._done) { - this._parser?.end(); - return; - } else if (this._finished) { - return; - } - this._finished = true; - } - WritableStream.prototype.emit.apply(this, arguments); - }; - Busboy.prototype.getParserByHeaders = function(headers) { - const parsed = parseParams(headers["content-type"]); - const cfg = { - defCharset: this.opts.defCharset, - fileHwm: this.opts.fileHwm, - headers, - highWaterMark: this.opts.highWaterMark, - isPartAFile: this.opts.isPartAFile, - limits: this.opts.limits, - parsedConType: parsed, - preservePath: this.opts.preservePath - }; - if (MultipartParser.detect.test(parsed[0])) { - return new MultipartParser(this, cfg); - } - if (UrlencodedParser.detect.test(parsed[0])) { - return new UrlencodedParser(this, cfg); - } - throw new Error("Unsupported Content-Type."); - }; - Busboy.prototype._write = function(chunk, encoding, cb) { - this._parser.write(chunk, cb); - }; - module2.exports = Busboy; - module2.exports.default = Busboy; - module2.exports.Busboy = Busboy; - module2.exports.Dicer = Dicer; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/constants.js -var require_constants2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/constants.js"(exports2, module2) { - "use strict"; - var { MessageChannel, receiveMessageOnPort } = require("worker_threads"); - var corsSafeListedMethods = ["GET", "HEAD", "POST"]; - var corsSafeListedMethodsSet = new Set(corsSafeListedMethods); - var nullBodyStatus = [101, 204, 205, 304]; - var redirectStatus = [301, 302, 303, 307, 308]; - var redirectStatusSet = new Set(redirectStatus); - var badPorts = [ - "1", - "7", - "9", - "11", - "13", - "15", - "17", - "19", - "20", - "21", - "22", - "23", - "25", - "37", - "42", - "43", - "53", - "69", - "77", - "79", - "87", - "95", - "101", - "102", - "103", - "104", - "109", - "110", - "111", - "113", - "115", - "117", - "119", - "123", - "135", - "137", - "139", - "143", - "161", - "179", - "389", - "427", - "465", - "512", - "513", - "514", - "515", - "526", - "530", - "531", - "532", - "540", - "548", - "554", - "556", - "563", - "587", - "601", - "636", - "989", - "990", - "993", - "995", - "1719", - "1720", - "1723", - "2049", - "3659", - "4045", - "5060", - "5061", - "6000", - "6566", - "6665", - "6666", - "6667", - "6668", - "6669", - "6697", - "10080" - ]; - var badPortsSet = new Set(badPorts); - var referrerPolicy = [ - "", - "no-referrer", - "no-referrer-when-downgrade", - "same-origin", - "origin", - "strict-origin", - "origin-when-cross-origin", - "strict-origin-when-cross-origin", - "unsafe-url" - ]; - var referrerPolicySet = new Set(referrerPolicy); - var requestRedirect = ["follow", "manual", "error"]; - var safeMethods = ["GET", "HEAD", "OPTIONS", "TRACE"]; - var safeMethodsSet = new Set(safeMethods); - var requestMode = ["navigate", "same-origin", "no-cors", "cors"]; - var requestCredentials = ["omit", "same-origin", "include"]; - var requestCache = [ - "default", - "no-store", - "reload", - "no-cache", - "force-cache", - "only-if-cached" - ]; - var requestBodyHeader = [ - "content-encoding", - "content-language", - "content-location", - "content-type", - // See https://github.com/nodejs/undici/issues/2021 - // 'Content-Length' is a forbidden header name, which is typically - // removed in the Headers implementation. However, undici doesn't - // filter out headers, so we add it here. - "content-length" - ]; - var requestDuplex = [ - "half" - ]; - var forbiddenMethods = ["CONNECT", "TRACE", "TRACK"]; - var forbiddenMethodsSet = new Set(forbiddenMethods); - var subresource = [ - "audio", - "audioworklet", - "font", - "image", - "manifest", - "paintworklet", - "script", - "style", - "track", - "video", - "xslt", - "" - ]; - var subresourceSet = new Set(subresource); - var DOMException2 = globalThis.DOMException ?? (() => { - try { - atob("~"); - } catch (err) { - return Object.getPrototypeOf(err).constructor; - } - })(); - var channel; - var structuredClone = globalThis.structuredClone ?? // https://github.com/nodejs/node/blob/b27ae24dcc4251bad726d9d84baf678d1f707fed/lib/internal/structured_clone.js - // structuredClone was added in v17.0.0, but fetch supports v16.8 - function structuredClone2(value, options = void 0) { - if (arguments.length === 0) { - throw new TypeError("missing argument"); - } - if (!channel) { - channel = new MessageChannel(); - } - channel.port1.unref(); - channel.port2.unref(); - channel.port1.postMessage(value, options?.transfer); - return receiveMessageOnPort(channel.port2).message; - }; - module2.exports = { - DOMException: DOMException2, - structuredClone, - subresource, - forbiddenMethods, - requestBodyHeader, - referrerPolicy, - requestRedirect, - requestMode, - requestCredentials, - requestCache, - redirectStatus, - corsSafeListedMethods, - nullBodyStatus, - safeMethods, - badPorts, - requestDuplex, - subresourceSet, - badPortsSet, - redirectStatusSet, - corsSafeListedMethodsSet, - safeMethodsSet, - forbiddenMethodsSet, - referrerPolicySet - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/global.js -var require_global = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/global.js"(exports2, module2) { - "use strict"; - var globalOrigin = Symbol.for("undici.globalOrigin.1"); - function getGlobalOrigin() { - return globalThis[globalOrigin]; - } - function setGlobalOrigin(newOrigin) { - if (newOrigin === void 0) { - Object.defineProperty(globalThis, globalOrigin, { - value: void 0, - writable: true, - enumerable: false, - configurable: false - }); - return; - } - const parsedURL = new URL(newOrigin); - if (parsedURL.protocol !== "http:" && parsedURL.protocol !== "https:") { - throw new TypeError(`Only http & https urls are allowed, received ${parsedURL.protocol}`); - } - Object.defineProperty(globalThis, globalOrigin, { - value: parsedURL, - writable: true, - enumerable: false, - configurable: false - }); - } - module2.exports = { - getGlobalOrigin, - setGlobalOrigin - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/util.js -var require_util2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/util.js"(exports2, module2) { - "use strict"; - var { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = require_constants2(); - var { getGlobalOrigin } = require_global(); - var { performance: performance2 } = require("perf_hooks"); - var { isBlobLike, toUSVString, ReadableStreamFrom } = require_util(); - var assert = require("assert"); - var { isUint8Array } = require("util/types"); - var supportedHashes = []; - var crypto; - try { - crypto = require("crypto"); - const possibleRelevantHashes = ["sha256", "sha384", "sha512"]; - supportedHashes = crypto.getHashes().filter((hash) => possibleRelevantHashes.includes(hash)); - } catch { - } - function responseURL(response) { - const urlList = response.urlList; - const length = urlList.length; - return length === 0 ? null : urlList[length - 1].toString(); - } - function responseLocationURL(response, requestFragment) { - if (!redirectStatusSet.has(response.status)) { - return null; - } - let location = response.headersList.get("location"); - if (location !== null && isValidHeaderValue(location)) { - location = new URL(location, responseURL(response)); - } - if (location && !location.hash) { - location.hash = requestFragment; - } - return location; - } - function requestCurrentURL(request) { - return request.urlList[request.urlList.length - 1]; - } - function requestBadPort(request) { - const url = requestCurrentURL(request); - if (urlIsHttpHttpsScheme(url) && badPortsSet.has(url.port)) { - return "blocked"; - } - return "allowed"; - } - function isErrorLike(object) { - return object instanceof Error || (object?.constructor?.name === "Error" || object?.constructor?.name === "DOMException"); - } - function isValidReasonPhrase(statusText) { - for (let i = 0; i < statusText.length; ++i) { - const c = statusText.charCodeAt(i); - if (!(c === 9 || // HTAB - c >= 32 && c <= 126 || // SP / VCHAR - c >= 128 && c <= 255)) { - return false; - } - } - return true; - } - function isTokenCharCode(c) { - switch (c) { - case 34: - case 40: - case 41: - case 44: - case 47: - case 58: - case 59: - case 60: - case 61: - case 62: - case 63: - case 64: - case 91: - case 92: - case 93: - case 123: - case 125: - return false; - default: - return c >= 33 && c <= 126; - } - } - function isValidHTTPToken(characters) { - if (characters.length === 0) { - return false; - } - for (let i = 0; i < characters.length; ++i) { - if (!isTokenCharCode(characters.charCodeAt(i))) { - return false; - } - } - return true; - } - function isValidHeaderName(potentialValue) { - return isValidHTTPToken(potentialValue); - } - function isValidHeaderValue(potentialValue) { - if (potentialValue.startsWith(" ") || potentialValue.startsWith(" ") || potentialValue.endsWith(" ") || potentialValue.endsWith(" ")) { - return false; - } - if (potentialValue.includes("\0") || potentialValue.includes("\r") || potentialValue.includes("\n")) { - return false; - } - return true; - } - function setRequestReferrerPolicyOnRedirect(request, actualResponse) { - const { headersList } = actualResponse; - const policyHeader = (headersList.get("referrer-policy") ?? "").split(","); - let policy = ""; - if (policyHeader.length > 0) { - for (let i = policyHeader.length; i !== 0; i--) { - const token = policyHeader[i - 1].trim(); - if (referrerPolicyTokens.has(token)) { - policy = token; - break; - } - } - } - if (policy !== "") { - request.referrerPolicy = policy; - } - } - function crossOriginResourcePolicyCheck() { - return "allowed"; - } - function corsCheck() { - return "success"; - } - function TAOCheck() { - return "success"; - } - function appendFetchMetadata(httpRequest) { - let header = null; - header = httpRequest.mode; - httpRequest.headersList.set("sec-fetch-mode", header); - } - function appendRequestOriginHeader(request) { - let serializedOrigin = request.origin; - if (request.responseTainting === "cors" || request.mode === "websocket") { - if (serializedOrigin) { - request.headersList.append("origin", serializedOrigin); - } - } else if (request.method !== "GET" && request.method !== "HEAD") { - switch (request.referrerPolicy) { - case "no-referrer": - serializedOrigin = null; - break; - case "no-referrer-when-downgrade": - case "strict-origin": - case "strict-origin-when-cross-origin": - if (request.origin && urlHasHttpsScheme(request.origin) && !urlHasHttpsScheme(requestCurrentURL(request))) { - serializedOrigin = null; - } - break; - case "same-origin": - if (!sameOrigin(request, requestCurrentURL(request))) { - serializedOrigin = null; - } - break; - default: - } - if (serializedOrigin) { - request.headersList.append("origin", serializedOrigin); - } - } - } - function coarsenedSharedCurrentTime(crossOriginIsolatedCapability) { - return performance2.now(); - } - function createOpaqueTimingInfo(timingInfo) { - return { - startTime: timingInfo.startTime ?? 0, - redirectStartTime: 0, - redirectEndTime: 0, - postRedirectStartTime: timingInfo.startTime ?? 0, - finalServiceWorkerStartTime: 0, - finalNetworkResponseStartTime: 0, - finalNetworkRequestStartTime: 0, - endTime: 0, - encodedBodySize: 0, - decodedBodySize: 0, - finalConnectionTimingInfo: null - }; - } - function makePolicyContainer() { - return { - referrerPolicy: "strict-origin-when-cross-origin" - }; - } - function clonePolicyContainer(policyContainer) { - return { - referrerPolicy: policyContainer.referrerPolicy - }; - } - function determineRequestsReferrer(request) { - const policy = request.referrerPolicy; - assert(policy); - let referrerSource = null; - if (request.referrer === "client") { - const globalOrigin = getGlobalOrigin(); - if (!globalOrigin || globalOrigin.origin === "null") { - return "no-referrer"; - } - referrerSource = new URL(globalOrigin); - } else if (request.referrer instanceof URL) { - referrerSource = request.referrer; - } - let referrerURL = stripURLForReferrer(referrerSource); - const referrerOrigin = stripURLForReferrer(referrerSource, true); - if (referrerURL.toString().length > 4096) { - referrerURL = referrerOrigin; - } - const areSameOrigin = sameOrigin(request, referrerURL); - const isNonPotentiallyTrustWorthy = isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(request.url); - switch (policy) { - case "origin": - return referrerOrigin != null ? referrerOrigin : stripURLForReferrer(referrerSource, true); - case "unsafe-url": - return referrerURL; - case "same-origin": - return areSameOrigin ? referrerOrigin : "no-referrer"; - case "origin-when-cross-origin": - return areSameOrigin ? referrerURL : referrerOrigin; - case "strict-origin-when-cross-origin": { - const currentURL = requestCurrentURL(request); - if (sameOrigin(referrerURL, currentURL)) { - return referrerURL; - } - if (isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(currentURL)) { - return "no-referrer"; - } - return referrerOrigin; - } - case "strict-origin": - case "no-referrer-when-downgrade": - default: - return isNonPotentiallyTrustWorthy ? "no-referrer" : referrerOrigin; - } - } - function stripURLForReferrer(url, originOnly) { - assert(url instanceof URL); - if (url.protocol === "file:" || url.protocol === "about:" || url.protocol === "blank:") { - return "no-referrer"; - } - url.username = ""; - url.password = ""; - url.hash = ""; - if (originOnly) { - url.pathname = ""; - url.search = ""; - } - return url; - } - function isURLPotentiallyTrustworthy(url) { - if (!(url instanceof URL)) { - return false; - } - if (url.href === "about:blank" || url.href === "about:srcdoc") { - return true; - } - if (url.protocol === "data:") - return true; - if (url.protocol === "file:") - return true; - return isOriginPotentiallyTrustworthy(url.origin); - function isOriginPotentiallyTrustworthy(origin) { - if (origin == null || origin === "null") - return false; - const originAsURL = new URL(origin); - if (originAsURL.protocol === "https:" || originAsURL.protocol === "wss:") { - return true; - } - if (/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(originAsURL.hostname) || (originAsURL.hostname === "localhost" || originAsURL.hostname.includes("localhost.")) || originAsURL.hostname.endsWith(".localhost")) { - return true; - } - return false; - } - } - function bytesMatch(bytes, metadataList) { - if (crypto === void 0) { - return true; - } - const parsedMetadata = parseMetadata(metadataList); - if (parsedMetadata === "no metadata") { - return true; - } - if (parsedMetadata.length === 0) { - return true; - } - const strongest = getStrongestMetadata(parsedMetadata); - const metadata = filterMetadataListByAlgorithm(parsedMetadata, strongest); - for (const item of metadata) { - const algorithm = item.algo; - const expectedValue = item.hash; - let actualValue = crypto.createHash(algorithm).update(bytes).digest("base64"); - if (actualValue[actualValue.length - 1] === "=") { - if (actualValue[actualValue.length - 2] === "=") { - actualValue = actualValue.slice(0, -2); - } else { - actualValue = actualValue.slice(0, -1); - } - } - if (compareBase64Mixed(actualValue, expectedValue)) { - return true; - } - } - return false; - } - var parseHashWithOptions = /(?<algo>sha256|sha384|sha512)-((?<hash>[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i; - function parseMetadata(metadata) { - const result = []; - let empty = true; - for (const token of metadata.split(" ")) { - empty = false; - const parsedToken = parseHashWithOptions.exec(token); - if (parsedToken === null || parsedToken.groups === void 0 || parsedToken.groups.algo === void 0) { - continue; - } - const algorithm = parsedToken.groups.algo.toLowerCase(); - if (supportedHashes.includes(algorithm)) { - result.push(parsedToken.groups); - } - } - if (empty === true) { - return "no metadata"; - } - return result; - } - function getStrongestMetadata(metadataList) { - let algorithm = metadataList[0].algo; - if (algorithm[3] === "5") { - return algorithm; - } - for (let i = 1; i < metadataList.length; ++i) { - const metadata = metadataList[i]; - if (metadata.algo[3] === "5") { - algorithm = "sha512"; - break; - } else if (algorithm[3] === "3") { - continue; - } else if (metadata.algo[3] === "3") { - algorithm = "sha384"; - } - } - return algorithm; - } - function filterMetadataListByAlgorithm(metadataList, algorithm) { - if (metadataList.length === 1) { - return metadataList; - } - let pos = 0; - for (let i = 0; i < metadataList.length; ++i) { - if (metadataList[i].algo === algorithm) { - metadataList[pos++] = metadataList[i]; - } - } - metadataList.length = pos; - return metadataList; - } - function compareBase64Mixed(actualValue, expectedValue) { - if (actualValue.length !== expectedValue.length) { - return false; - } - for (let i = 0; i < actualValue.length; ++i) { - if (actualValue[i] !== expectedValue[i]) { - if (actualValue[i] === "+" && expectedValue[i] === "-" || actualValue[i] === "/" && expectedValue[i] === "_") { - continue; - } - return false; - } - } - return true; - } - function tryUpgradeRequestToAPotentiallyTrustworthyURL(request) { - } - function sameOrigin(A, B) { - if (A.origin === B.origin && A.origin === "null") { - return true; - } - if (A.protocol === B.protocol && A.hostname === B.hostname && A.port === B.port) { - return true; - } - return false; - } - function createDeferredPromise() { - let res; - let rej; - const promise = new Promise((resolve, reject) => { - res = resolve; - rej = reject; - }); - return { promise, resolve: res, reject: rej }; - } - function isAborted(fetchParams) { - return fetchParams.controller.state === "aborted"; - } - function isCancelled(fetchParams) { - return fetchParams.controller.state === "aborted" || fetchParams.controller.state === "terminated"; - } - var normalizeMethodRecord = { - delete: "DELETE", - DELETE: "DELETE", - get: "GET", - GET: "GET", - head: "HEAD", - HEAD: "HEAD", - options: "OPTIONS", - OPTIONS: "OPTIONS", - post: "POST", - POST: "POST", - put: "PUT", - PUT: "PUT" - }; - Object.setPrototypeOf(normalizeMethodRecord, null); - function normalizeMethod(method) { - return normalizeMethodRecord[method.toLowerCase()] ?? method; - } - function serializeJavascriptValueToJSONString(value) { - const result = JSON.stringify(value); - if (result === void 0) { - throw new TypeError("Value is not JSON serializable"); - } - assert(typeof result === "string"); - return result; - } - var esIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())); - function makeIterator(iterator, name, kind) { - const object = { - index: 0, - kind, - target: iterator - }; - const i = { - next() { - if (Object.getPrototypeOf(this) !== i) { - throw new TypeError( - `'next' called on an object that does not implement interface ${name} Iterator.` - ); - } - const { index, kind: kind2, target } = object; - const values = target(); - const len = values.length; - if (index >= len) { - return { value: void 0, done: true }; - } - const pair = values[index]; - object.index = index + 1; - return iteratorResult(pair, kind2); - }, - // The class string of an iterator prototype object for a given interface is the - // result of concatenating the identifier of the interface and the string " Iterator". - [Symbol.toStringTag]: `${name} Iterator` - }; - Object.setPrototypeOf(i, esIteratorPrototype); - return Object.setPrototypeOf({}, i); - } - function iteratorResult(pair, kind) { - let result; - switch (kind) { - case "key": { - result = pair[0]; - break; - } - case "value": { - result = pair[1]; - break; - } - case "key+value": { - result = pair; - break; - } - } - return { value: result, done: false }; - } - async function fullyReadBody(body, processBody, processBodyError) { - const successSteps = processBody; - const errorSteps = processBodyError; - let reader; - try { - reader = body.stream.getReader(); - } catch (e) { - errorSteps(e); - return; - } - try { - const result = await readAllBytes(reader); - successSteps(result); - } catch (e) { - errorSteps(e); - } - } - var ReadableStream = globalThis.ReadableStream; - function isReadableStreamLike(stream) { - if (!ReadableStream) { - ReadableStream = require("stream/web").ReadableStream; - } - return stream instanceof ReadableStream || stream[Symbol.toStringTag] === "ReadableStream" && typeof stream.tee === "function"; - } - var MAXIMUM_ARGUMENT_LENGTH = 65535; - function isomorphicDecode(input) { - if (input.length < MAXIMUM_ARGUMENT_LENGTH) { - return String.fromCharCode(...input); - } - return input.reduce((previous, current) => previous + String.fromCharCode(current), ""); - } - function readableStreamClose(controller) { - try { - controller.close(); - } catch (err) { - if (!err.message.includes("Controller is already closed")) { - throw err; - } - } - } - function isomorphicEncode(input) { - for (let i = 0; i < input.length; i++) { - assert(input.charCodeAt(i) <= 255); - } - return input; - } - async function readAllBytes(reader) { - const bytes = []; - let byteLength = 0; - while (true) { - const { done, value: chunk } = await reader.read(); - if (done) { - return Buffer.concat(bytes, byteLength); - } - if (!isUint8Array(chunk)) { - throw new TypeError("Received non-Uint8Array chunk"); - } - bytes.push(chunk); - byteLength += chunk.length; - } - } - function urlIsLocal(url) { - assert("protocol" in url); - const protocol = url.protocol; - return protocol === "about:" || protocol === "blob:" || protocol === "data:"; - } - function urlHasHttpsScheme(url) { - if (typeof url === "string") { - return url.startsWith("https:"); - } - return url.protocol === "https:"; - } - function urlIsHttpHttpsScheme(url) { - assert("protocol" in url); - const protocol = url.protocol; - return protocol === "http:" || protocol === "https:"; - } - var hasOwn = Object.hasOwn || ((dict, key) => Object.prototype.hasOwnProperty.call(dict, key)); - module2.exports = { - isAborted, - isCancelled, - createDeferredPromise, - ReadableStreamFrom, - toUSVString, - tryUpgradeRequestToAPotentiallyTrustworthyURL, - coarsenedSharedCurrentTime, - determineRequestsReferrer, - makePolicyContainer, - clonePolicyContainer, - appendFetchMetadata, - appendRequestOriginHeader, - TAOCheck, - corsCheck, - crossOriginResourcePolicyCheck, - createOpaqueTimingInfo, - setRequestReferrerPolicyOnRedirect, - isValidHTTPToken, - requestBadPort, - requestCurrentURL, - responseURL, - responseLocationURL, - isBlobLike, - isURLPotentiallyTrustworthy, - isValidReasonPhrase, - sameOrigin, - normalizeMethod, - serializeJavascriptValueToJSONString, - makeIterator, - isValidHeaderName, - isValidHeaderValue, - hasOwn, - isErrorLike, - fullyReadBody, - bytesMatch, - isReadableStreamLike, - readableStreamClose, - isomorphicEncode, - isomorphicDecode, - urlIsLocal, - urlHasHttpsScheme, - urlIsHttpHttpsScheme, - readAllBytes, - normalizeMethodRecord, - parseMetadata - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/symbols.js -var require_symbols2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/symbols.js"(exports2, module2) { - "use strict"; - module2.exports = { - kUrl: Symbol("url"), - kHeaders: Symbol("headers"), - kSignal: Symbol("signal"), - kState: Symbol("state"), - kGuard: Symbol("guard"), - kRealm: Symbol("realm") - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/webidl.js -var require_webidl = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/webidl.js"(exports2, module2) { - "use strict"; - var { types } = require("util"); - var { hasOwn, toUSVString } = require_util2(); - var webidl = {}; - webidl.converters = {}; - webidl.util = {}; - webidl.errors = {}; - webidl.errors.exception = function(message) { - return new TypeError(`${message.header}: ${message.message}`); - }; - webidl.errors.conversionFailed = function(context) { - const plural = context.types.length === 1 ? "" : " one of"; - const message = `${context.argument} could not be converted to${plural}: ${context.types.join(", ")}.`; - return webidl.errors.exception({ - header: context.prefix, - message - }); - }; - webidl.errors.invalidArgument = function(context) { - return webidl.errors.exception({ - header: context.prefix, - message: `"${context.value}" is an invalid ${context.type}.` - }); - }; - webidl.brandCheck = function(V, I, opts = void 0) { - if (opts?.strict !== false && !(V instanceof I)) { - throw new TypeError("Illegal invocation"); - } else { - return V?.[Symbol.toStringTag] === I.prototype[Symbol.toStringTag]; - } - }; - webidl.argumentLengthCheck = function({ length }, min, ctx) { - if (length < min) { - throw webidl.errors.exception({ - message: `${min} argument${min !== 1 ? "s" : ""} required, but${length ? " only" : ""} ${length} found.`, - ...ctx - }); - } - }; - webidl.illegalConstructor = function() { - throw webidl.errors.exception({ - header: "TypeError", - message: "Illegal constructor" - }); - }; - webidl.util.Type = function(V) { - switch (typeof V) { - case "undefined": - return "Undefined"; - case "boolean": - return "Boolean"; - case "string": - return "String"; - case "symbol": - return "Symbol"; - case "number": - return "Number"; - case "bigint": - return "BigInt"; - case "function": - case "object": { - if (V === null) { - return "Null"; - } - return "Object"; - } - } - }; - webidl.util.ConvertToInt = function(V, bitLength, signedness, opts = {}) { - let upperBound; - let lowerBound; - if (bitLength === 64) { - upperBound = Math.pow(2, 53) - 1; - if (signedness === "unsigned") { - lowerBound = 0; - } else { - lowerBound = Math.pow(-2, 53) + 1; - } - } else if (signedness === "unsigned") { - lowerBound = 0; - upperBound = Math.pow(2, bitLength) - 1; - } else { - lowerBound = Math.pow(-2, bitLength) - 1; - upperBound = Math.pow(2, bitLength - 1) - 1; - } - let x = Number(V); - if (x === 0) { - x = 0; - } - if (opts.enforceRange === true) { - if (Number.isNaN(x) || x === Number.POSITIVE_INFINITY || x === Number.NEGATIVE_INFINITY) { - throw webidl.errors.exception({ - header: "Integer conversion", - message: `Could not convert ${V} to an integer.` - }); - } - x = webidl.util.IntegerPart(x); - if (x < lowerBound || x > upperBound) { - throw webidl.errors.exception({ - header: "Integer conversion", - message: `Value must be between ${lowerBound}-${upperBound}, got ${x}.` - }); - } - return x; - } - if (!Number.isNaN(x) && opts.clamp === true) { - x = Math.min(Math.max(x, lowerBound), upperBound); - if (Math.floor(x) % 2 === 0) { - x = Math.floor(x); - } else { - x = Math.ceil(x); - } - return x; - } - if (Number.isNaN(x) || x === 0 && Object.is(0, x) || x === Number.POSITIVE_INFINITY || x === Number.NEGATIVE_INFINITY) { - return 0; - } - x = webidl.util.IntegerPart(x); - x = x % Math.pow(2, bitLength); - if (signedness === "signed" && x >= Math.pow(2, bitLength) - 1) { - return x - Math.pow(2, bitLength); - } - return x; - }; - webidl.util.IntegerPart = function(n) { - const r = Math.floor(Math.abs(n)); - if (n < 0) { - return -1 * r; - } - return r; - }; - webidl.sequenceConverter = function(converter) { - return (V) => { - if (webidl.util.Type(V) !== "Object") { - throw webidl.errors.exception({ - header: "Sequence", - message: `Value of type ${webidl.util.Type(V)} is not an Object.` - }); - } - const method = V?.[Symbol.iterator]?.(); - const seq = []; - if (method === void 0 || typeof method.next !== "function") { - throw webidl.errors.exception({ - header: "Sequence", - message: "Object is not an iterator." - }); - } - while (true) { - const { done, value } = method.next(); - if (done) { - break; - } - seq.push(converter(value)); - } - return seq; - }; - }; - webidl.recordConverter = function(keyConverter, valueConverter) { - return (O) => { - if (webidl.util.Type(O) !== "Object") { - throw webidl.errors.exception({ - header: "Record", - message: `Value of type ${webidl.util.Type(O)} is not an Object.` - }); - } - const result = {}; - if (!types.isProxy(O)) { - const keys2 = Object.keys(O); - for (const key of keys2) { - const typedKey = keyConverter(key); - const typedValue = valueConverter(O[key]); - result[typedKey] = typedValue; - } - return result; - } - const keys = Reflect.ownKeys(O); - for (const key of keys) { - const desc = Reflect.getOwnPropertyDescriptor(O, key); - if (desc?.enumerable) { - const typedKey = keyConverter(key); - const typedValue = valueConverter(O[key]); - result[typedKey] = typedValue; - } - } - return result; - }; - }; - webidl.interfaceConverter = function(i) { - return (V, opts = {}) => { - if (opts.strict !== false && !(V instanceof i)) { - throw webidl.errors.exception({ - header: i.name, - message: `Expected ${V} to be an instance of ${i.name}.` - }); - } - return V; - }; - }; - webidl.dictionaryConverter = function(converters) { - return (dictionary) => { - const type = webidl.util.Type(dictionary); - const dict = {}; - if (type === "Null" || type === "Undefined") { - return dict; - } else if (type !== "Object") { - throw webidl.errors.exception({ - header: "Dictionary", - message: `Expected ${dictionary} to be one of: Null, Undefined, Object.` - }); - } - for (const options of converters) { - const { key, defaultValue, required, converter } = options; - if (required === true) { - if (!hasOwn(dictionary, key)) { - throw webidl.errors.exception({ - header: "Dictionary", - message: `Missing required key "${key}".` - }); - } - } - let value = dictionary[key]; - const hasDefault = hasOwn(options, "defaultValue"); - if (hasDefault && value !== null) { - value = value ?? defaultValue; - } - if (required || hasDefault || value !== void 0) { - value = converter(value); - if (options.allowedValues && !options.allowedValues.includes(value)) { - throw webidl.errors.exception({ - header: "Dictionary", - message: `${value} is not an accepted type. Expected one of ${options.allowedValues.join(", ")}.` - }); - } - dict[key] = value; - } - } - return dict; - }; - }; - webidl.nullableConverter = function(converter) { - return (V) => { - if (V === null) { - return V; - } - return converter(V); - }; - }; - webidl.converters.DOMString = function(V, opts = {}) { - if (V === null && opts.legacyNullToEmptyString) { - return ""; - } - if (typeof V === "symbol") { - throw new TypeError("Could not convert argument of type symbol to string."); - } - return String(V); - }; - webidl.converters.ByteString = function(V) { - const x = webidl.converters.DOMString(V); - for (let index = 0; index < x.length; index++) { - if (x.charCodeAt(index) > 255) { - throw new TypeError( - `Cannot convert argument to a ByteString because the character at index ${index} has a value of ${x.charCodeAt(index)} which is greater than 255.` - ); - } - } - return x; - }; - webidl.converters.USVString = toUSVString; - webidl.converters.boolean = function(V) { - const x = Boolean(V); - return x; - }; - webidl.converters.any = function(V) { - return V; - }; - webidl.converters["long long"] = function(V) { - const x = webidl.util.ConvertToInt(V, 64, "signed"); - return x; - }; - webidl.converters["unsigned long long"] = function(V) { - const x = webidl.util.ConvertToInt(V, 64, "unsigned"); - return x; - }; - webidl.converters["unsigned long"] = function(V) { - const x = webidl.util.ConvertToInt(V, 32, "unsigned"); - return x; - }; - webidl.converters["unsigned short"] = function(V, opts) { - const x = webidl.util.ConvertToInt(V, 16, "unsigned", opts); - return x; - }; - webidl.converters.ArrayBuffer = function(V, opts = {}) { - if (webidl.util.Type(V) !== "Object" || !types.isAnyArrayBuffer(V)) { - throw webidl.errors.conversionFailed({ - prefix: `${V}`, - argument: `${V}`, - types: ["ArrayBuffer"] - }); - } - if (opts.allowShared === false && types.isSharedArrayBuffer(V)) { - throw webidl.errors.exception({ - header: "ArrayBuffer", - message: "SharedArrayBuffer is not allowed." - }); - } - return V; - }; - webidl.converters.TypedArray = function(V, T, opts = {}) { - if (webidl.util.Type(V) !== "Object" || !types.isTypedArray(V) || V.constructor.name !== T.name) { - throw webidl.errors.conversionFailed({ - prefix: `${T.name}`, - argument: `${V}`, - types: [T.name] - }); - } - if (opts.allowShared === false && types.isSharedArrayBuffer(V.buffer)) { - throw webidl.errors.exception({ - header: "ArrayBuffer", - message: "SharedArrayBuffer is not allowed." - }); - } - return V; - }; - webidl.converters.DataView = function(V, opts = {}) { - if (webidl.util.Type(V) !== "Object" || !types.isDataView(V)) { - throw webidl.errors.exception({ - header: "DataView", - message: "Object is not a DataView." - }); - } - if (opts.allowShared === false && types.isSharedArrayBuffer(V.buffer)) { - throw webidl.errors.exception({ - header: "ArrayBuffer", - message: "SharedArrayBuffer is not allowed." - }); - } - return V; - }; - webidl.converters.BufferSource = function(V, opts = {}) { - if (types.isAnyArrayBuffer(V)) { - return webidl.converters.ArrayBuffer(V, opts); - } - if (types.isTypedArray(V)) { - return webidl.converters.TypedArray(V, V.constructor); - } - if (types.isDataView(V)) { - return webidl.converters.DataView(V, opts); - } - throw new TypeError(`Could not convert ${V} to a BufferSource.`); - }; - webidl.converters["sequence<ByteString>"] = webidl.sequenceConverter( - webidl.converters.ByteString - ); - webidl.converters["sequence<sequence<ByteString>>"] = webidl.sequenceConverter( - webidl.converters["sequence<ByteString>"] - ); - webidl.converters["record<ByteString, ByteString>"] = webidl.recordConverter( - webidl.converters.ByteString, - webidl.converters.ByteString - ); - module2.exports = { - webidl - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/dataURL.js -var require_dataURL = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/dataURL.js"(exports2, module2) { - var assert = require("assert"); - var { atob: atob2 } = require("buffer"); - var { isomorphicDecode } = require_util2(); - var encoder = new TextEncoder(); - var HTTP_TOKEN_CODEPOINTS = /^[!#$%&'*+-.^_|~A-Za-z0-9]+$/; - var HTTP_WHITESPACE_REGEX = /(\u000A|\u000D|\u0009|\u0020)/; - var HTTP_QUOTED_STRING_TOKENS = /[\u0009|\u0020-\u007E|\u0080-\u00FF]/; - function dataURLProcessor(dataURL) { - assert(dataURL.protocol === "data:"); - let input = URLSerializer(dataURL, true); - input = input.slice(5); - const position = { position: 0 }; - let mimeType = collectASequenceOfCodePointsFast( - ",", - input, - position - ); - const mimeTypeLength = mimeType.length; - mimeType = removeASCIIWhitespace(mimeType, true, true); - if (position.position >= input.length) { - return "failure"; - } - position.position++; - const encodedBody = input.slice(mimeTypeLength + 1); - let body = stringPercentDecode(encodedBody); - if (/;(\u0020){0,}base64$/i.test(mimeType)) { - const stringBody = isomorphicDecode(body); - body = forgivingBase64(stringBody); - if (body === "failure") { - return "failure"; - } - mimeType = mimeType.slice(0, -6); - mimeType = mimeType.replace(/(\u0020)+$/, ""); - mimeType = mimeType.slice(0, -1); - } - if (mimeType.startsWith(";")) { - mimeType = "text/plain" + mimeType; - } - let mimeTypeRecord = parseMIMEType(mimeType); - if (mimeTypeRecord === "failure") { - mimeTypeRecord = parseMIMEType("text/plain;charset=US-ASCII"); - } - return { mimeType: mimeTypeRecord, body }; - } - function URLSerializer(url, excludeFragment = false) { - if (!excludeFragment) { - return url.href; - } - const href = url.href; - const hashLength = url.hash.length; - return hashLength === 0 ? href : href.substring(0, href.length - hashLength); - } - function collectASequenceOfCodePoints(condition, input, position) { - let result = ""; - while (position.position < input.length && condition(input[position.position])) { - result += input[position.position]; - position.position++; - } - return result; - } - function collectASequenceOfCodePointsFast(char, input, position) { - const idx = input.indexOf(char, position.position); - const start = position.position; - if (idx === -1) { - position.position = input.length; - return input.slice(start); - } - position.position = idx; - return input.slice(start, position.position); - } - function stringPercentDecode(input) { - const bytes = encoder.encode(input); - return percentDecode(bytes); - } - function percentDecode(input) { - const output = []; - for (let i = 0; i < input.length; i++) { - const byte = input[i]; - if (byte !== 37) { - output.push(byte); - } else if (byte === 37 && !/^[0-9A-Fa-f]{2}$/i.test(String.fromCharCode(input[i + 1], input[i + 2]))) { - output.push(37); - } else { - const nextTwoBytes = String.fromCharCode(input[i + 1], input[i + 2]); - const bytePoint = Number.parseInt(nextTwoBytes, 16); - output.push(bytePoint); - i += 2; - } - } - return Uint8Array.from(output); - } - function parseMIMEType(input) { - input = removeHTTPWhitespace(input, true, true); - const position = { position: 0 }; - const type = collectASequenceOfCodePointsFast( - "/", - input, - position - ); - if (type.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(type)) { - return "failure"; - } - if (position.position > input.length) { - return "failure"; - } - position.position++; - let subtype = collectASequenceOfCodePointsFast( - ";", - input, - position - ); - subtype = removeHTTPWhitespace(subtype, false, true); - if (subtype.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(subtype)) { - return "failure"; - } - const typeLowercase = type.toLowerCase(); - const subtypeLowercase = subtype.toLowerCase(); - const mimeType = { - type: typeLowercase, - subtype: subtypeLowercase, - /** @type {Map<string, string>} */ - parameters: /* @__PURE__ */ new Map(), - // https://mimesniff.spec.whatwg.org/#mime-type-essence - essence: `${typeLowercase}/${subtypeLowercase}` - }; - while (position.position < input.length) { - position.position++; - collectASequenceOfCodePoints( - // https://fetch.spec.whatwg.org/#http-whitespace - (char) => HTTP_WHITESPACE_REGEX.test(char), - input, - position - ); - let parameterName = collectASequenceOfCodePoints( - (char) => char !== ";" && char !== "=", - input, - position - ); - parameterName = parameterName.toLowerCase(); - if (position.position < input.length) { - if (input[position.position] === ";") { - continue; - } - position.position++; - } - if (position.position > input.length) { - break; - } - let parameterValue = null; - if (input[position.position] === '"') { - parameterValue = collectAnHTTPQuotedString(input, position, true); - collectASequenceOfCodePointsFast( - ";", - input, - position - ); - } else { - parameterValue = collectASequenceOfCodePointsFast( - ";", - input, - position - ); - parameterValue = removeHTTPWhitespace(parameterValue, false, true); - if (parameterValue.length === 0) { - continue; - } - } - if (parameterName.length !== 0 && HTTP_TOKEN_CODEPOINTS.test(parameterName) && (parameterValue.length === 0 || HTTP_QUOTED_STRING_TOKENS.test(parameterValue)) && !mimeType.parameters.has(parameterName)) { - mimeType.parameters.set(parameterName, parameterValue); - } - } - return mimeType; - } - function forgivingBase64(data) { - data = data.replace(/[\u0009\u000A\u000C\u000D\u0020]/g, ""); - if (data.length % 4 === 0) { - data = data.replace(/=?=$/, ""); - } - if (data.length % 4 === 1) { - return "failure"; - } - if (/[^+/0-9A-Za-z]/.test(data)) { - return "failure"; - } - const binary = atob2(data); - const bytes = new Uint8Array(binary.length); - for (let byte = 0; byte < binary.length; byte++) { - bytes[byte] = binary.charCodeAt(byte); - } - return bytes; - } - function collectAnHTTPQuotedString(input, position, extractValue) { - const positionStart = position.position; - let value = ""; - assert(input[position.position] === '"'); - position.position++; - while (true) { - value += collectASequenceOfCodePoints( - (char) => char !== '"' && char !== "\\", - input, - position - ); - if (position.position >= input.length) { - break; - } - const quoteOrBackslash = input[position.position]; - position.position++; - if (quoteOrBackslash === "\\") { - if (position.position >= input.length) { - value += "\\"; - break; - } - value += input[position.position]; - position.position++; - } else { - assert(quoteOrBackslash === '"'); - break; - } - } - if (extractValue) { - return value; - } - return input.slice(positionStart, position.position); - } - function serializeAMimeType(mimeType) { - assert(mimeType !== "failure"); - const { parameters, essence } = mimeType; - let serialization = essence; - for (let [name, value] of parameters.entries()) { - serialization += ";"; - serialization += name; - serialization += "="; - if (!HTTP_TOKEN_CODEPOINTS.test(value)) { - value = value.replace(/(\\|")/g, "\\$1"); - value = '"' + value; - value += '"'; - } - serialization += value; - } - return serialization; - } - function isHTTPWhiteSpace(char) { - return char === "\r" || char === "\n" || char === " " || char === " "; - } - function removeHTTPWhitespace(str, leading = true, trailing = true) { - let lead = 0; - let trail = str.length - 1; - if (leading) { - for (; lead < str.length && isHTTPWhiteSpace(str[lead]); lead++) - ; - } - if (trailing) { - for (; trail > 0 && isHTTPWhiteSpace(str[trail]); trail--) - ; - } - return str.slice(lead, trail + 1); - } - function isASCIIWhitespace(char) { - return char === "\r" || char === "\n" || char === " " || char === "\f" || char === " "; - } - function removeASCIIWhitespace(str, leading = true, trailing = true) { - let lead = 0; - let trail = str.length - 1; - if (leading) { - for (; lead < str.length && isASCIIWhitespace(str[lead]); lead++) - ; - } - if (trailing) { - for (; trail > 0 && isASCIIWhitespace(str[trail]); trail--) - ; - } - return str.slice(lead, trail + 1); - } - module2.exports = { - dataURLProcessor, - URLSerializer, - collectASequenceOfCodePoints, - collectASequenceOfCodePointsFast, - stringPercentDecode, - parseMIMEType, - collectAnHTTPQuotedString, - serializeAMimeType - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/file.js -var require_file = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/file.js"(exports2, module2) { - "use strict"; - var { Blob: Blob2, File: NativeFile } = require("buffer"); - var { types } = require("util"); - var { kState } = require_symbols2(); - var { isBlobLike } = require_util2(); - var { webidl } = require_webidl(); - var { parseMIMEType, serializeAMimeType } = require_dataURL(); - var { kEnumerableProperty } = require_util(); - var encoder = new TextEncoder(); - var File = class extends Blob2 { - constructor(fileBits, fileName, options = {}) { - webidl.argumentLengthCheck(arguments, 2, { header: "File constructor" }); - fileBits = webidl.converters["sequence<BlobPart>"](fileBits); - fileName = webidl.converters.USVString(fileName); - options = webidl.converters.FilePropertyBag(options); - const n = fileName; - let t = options.type; - let d; - substep: { - if (t) { - t = parseMIMEType(t); - if (t === "failure") { - t = ""; - break substep; - } - t = serializeAMimeType(t).toLowerCase(); - } - d = options.lastModified; - } - super(processBlobParts(fileBits, options), { type: t }); - this[kState] = { - name: n, - lastModified: d, - type: t - }; - } - get name() { - webidl.brandCheck(this, File); - return this[kState].name; - } - get lastModified() { - webidl.brandCheck(this, File); - return this[kState].lastModified; - } - get type() { - webidl.brandCheck(this, File); - return this[kState].type; - } - }; - var FileLike = class { - constructor(blobLike, fileName, options = {}) { - const n = fileName; - const t = options.type; - const d = options.lastModified ?? Date.now(); - this[kState] = { - blobLike, - name: n, - type: t, - lastModified: d - }; - } - stream(...args) { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.stream(...args); - } - arrayBuffer(...args) { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.arrayBuffer(...args); - } - slice(...args) { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.slice(...args); - } - text(...args) { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.text(...args); - } - get size() { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.size; - } - get type() { - webidl.brandCheck(this, FileLike); - return this[kState].blobLike.type; - } - get name() { - webidl.brandCheck(this, FileLike); - return this[kState].name; - } - get lastModified() { - webidl.brandCheck(this, FileLike); - return this[kState].lastModified; - } - get [Symbol.toStringTag]() { - return "File"; - } - }; - Object.defineProperties(File.prototype, { - [Symbol.toStringTag]: { - value: "File", - configurable: true - }, - name: kEnumerableProperty, - lastModified: kEnumerableProperty - }); - webidl.converters.Blob = webidl.interfaceConverter(Blob2); - webidl.converters.BlobPart = function(V, opts) { - if (webidl.util.Type(V) === "Object") { - if (isBlobLike(V)) { - return webidl.converters.Blob(V, { strict: false }); - } - if (ArrayBuffer.isView(V) || types.isAnyArrayBuffer(V)) { - return webidl.converters.BufferSource(V, opts); - } - } - return webidl.converters.USVString(V, opts); - }; - webidl.converters["sequence<BlobPart>"] = webidl.sequenceConverter( - webidl.converters.BlobPart - ); - webidl.converters.FilePropertyBag = webidl.dictionaryConverter([ - { - key: "lastModified", - converter: webidl.converters["long long"], - get defaultValue() { - return Date.now(); - } - }, - { - key: "type", - converter: webidl.converters.DOMString, - defaultValue: "" - }, - { - key: "endings", - converter: (value) => { - value = webidl.converters.DOMString(value); - value = value.toLowerCase(); - if (value !== "native") { - value = "transparent"; - } - return value; - }, - defaultValue: "transparent" - } - ]); - function processBlobParts(parts, options) { - const bytes = []; - for (const element of parts) { - if (typeof element === "string") { - let s = element; - if (options.endings === "native") { - s = convertLineEndingsNative(s); - } - bytes.push(encoder.encode(s)); - } else if (types.isAnyArrayBuffer(element) || types.isTypedArray(element)) { - if (!element.buffer) { - bytes.push(new Uint8Array(element)); - } else { - bytes.push( - new Uint8Array(element.buffer, element.byteOffset, element.byteLength) - ); - } - } else if (isBlobLike(element)) { - bytes.push(element); - } - } - return bytes; - } - function convertLineEndingsNative(s) { - let nativeLineEnding = "\n"; - if (process.platform === "win32") { - nativeLineEnding = "\r\n"; - } - return s.replace(/\r?\n/g, nativeLineEnding); - } - function isFileLike(object) { - return NativeFile && object instanceof NativeFile || object instanceof File || object && (typeof object.stream === "function" || typeof object.arrayBuffer === "function") && object[Symbol.toStringTag] === "File"; - } - module2.exports = { File, FileLike, isFileLike }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/formdata.js -var require_formdata = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/formdata.js"(exports2, module2) { - "use strict"; - var { isBlobLike, toUSVString, makeIterator } = require_util2(); - var { kState } = require_symbols2(); - var { File: UndiciFile, FileLike, isFileLike } = require_file(); - var { webidl } = require_webidl(); - var { Blob: Blob2, File: NativeFile } = require("buffer"); - var File = NativeFile ?? UndiciFile; - var FormData = class { - constructor(form) { - if (form !== void 0) { - throw webidl.errors.conversionFailed({ - prefix: "FormData constructor", - argument: "Argument 1", - types: ["undefined"] - }); - } - this[kState] = []; - } - append(name, value, filename = void 0) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 2, { header: "FormData.append" }); - if (arguments.length === 3 && !isBlobLike(value)) { - throw new TypeError( - "Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'" - ); - } - name = webidl.converters.USVString(name); - value = isBlobLike(value) ? webidl.converters.Blob(value, { strict: false }) : webidl.converters.USVString(value); - filename = arguments.length === 3 ? webidl.converters.USVString(filename) : void 0; - const entry = makeEntry(name, value, filename); - this[kState].push(entry); - } - delete(name) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 1, { header: "FormData.delete" }); - name = webidl.converters.USVString(name); - this[kState] = this[kState].filter((entry) => entry.name !== name); - } - get(name) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 1, { header: "FormData.get" }); - name = webidl.converters.USVString(name); - const idx = this[kState].findIndex((entry) => entry.name === name); - if (idx === -1) { - return null; - } - return this[kState][idx].value; - } - getAll(name) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 1, { header: "FormData.getAll" }); - name = webidl.converters.USVString(name); - return this[kState].filter((entry) => entry.name === name).map((entry) => entry.value); - } - has(name) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 1, { header: "FormData.has" }); - name = webidl.converters.USVString(name); - return this[kState].findIndex((entry) => entry.name === name) !== -1; - } - set(name, value, filename = void 0) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 2, { header: "FormData.set" }); - if (arguments.length === 3 && !isBlobLike(value)) { - throw new TypeError( - "Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'" - ); - } - name = webidl.converters.USVString(name); - value = isBlobLike(value) ? webidl.converters.Blob(value, { strict: false }) : webidl.converters.USVString(value); - filename = arguments.length === 3 ? toUSVString(filename) : void 0; - const entry = makeEntry(name, value, filename); - const idx = this[kState].findIndex((entry2) => entry2.name === name); - if (idx !== -1) { - this[kState] = [ - ...this[kState].slice(0, idx), - entry, - ...this[kState].slice(idx + 1).filter((entry2) => entry2.name !== name) - ]; - } else { - this[kState].push(entry); - } - } - entries() { - webidl.brandCheck(this, FormData); - return makeIterator( - () => this[kState].map((pair) => [pair.name, pair.value]), - "FormData", - "key+value" - ); - } - keys() { - webidl.brandCheck(this, FormData); - return makeIterator( - () => this[kState].map((pair) => [pair.name, pair.value]), - "FormData", - "key" - ); - } - values() { - webidl.brandCheck(this, FormData); - return makeIterator( - () => this[kState].map((pair) => [pair.name, pair.value]), - "FormData", - "value" - ); - } - /** - * @param {(value: string, key: string, self: FormData) => void} callbackFn - * @param {unknown} thisArg - */ - forEach(callbackFn, thisArg = globalThis) { - webidl.brandCheck(this, FormData); - webidl.argumentLengthCheck(arguments, 1, { header: "FormData.forEach" }); - if (typeof callbackFn !== "function") { - throw new TypeError( - "Failed to execute 'forEach' on 'FormData': parameter 1 is not of type 'Function'." - ); - } - for (const [key, value] of this) { - callbackFn.apply(thisArg, [value, key, this]); - } - } - }; - FormData.prototype[Symbol.iterator] = FormData.prototype.entries; - Object.defineProperties(FormData.prototype, { - [Symbol.toStringTag]: { - value: "FormData", - configurable: true - } - }); - function makeEntry(name, value, filename) { - name = Buffer.from(name).toString("utf8"); - if (typeof value === "string") { - value = Buffer.from(value).toString("utf8"); - } else { - if (!isFileLike(value)) { - value = value instanceof Blob2 ? new File([value], "blob", { type: value.type }) : new FileLike(value, "blob", { type: value.type }); - } - if (filename !== void 0) { - const options = { - type: value.type, - lastModified: value.lastModified - }; - value = NativeFile && value instanceof NativeFile || value instanceof UndiciFile ? new File([value], filename, options) : new FileLike(value, filename, options); - } - } - return { name, value }; - } - module2.exports = { FormData }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/body.js -var require_body = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/body.js"(exports2, module2) { - "use strict"; - var Busboy = require_main(); - var util2 = require_util(); - var { - ReadableStreamFrom, - isBlobLike, - isReadableStreamLike, - readableStreamClose, - createDeferredPromise, - fullyReadBody - } = require_util2(); - var { FormData } = require_formdata(); - var { kState } = require_symbols2(); - var { webidl } = require_webidl(); - var { DOMException: DOMException2, structuredClone } = require_constants2(); - var { Blob: Blob2, File: NativeFile } = require("buffer"); - var { kBodyUsed } = require_symbols(); - var assert = require("assert"); - var { isErrored } = require_util(); - var { isUint8Array, isArrayBuffer } = require("util/types"); - var { File: UndiciFile } = require_file(); - var { parseMIMEType, serializeAMimeType } = require_dataURL(); - var ReadableStream = globalThis.ReadableStream; - var File = NativeFile ?? UndiciFile; - var textEncoder = new TextEncoder(); - var textDecoder = new TextDecoder(); - function extractBody(object, keepalive = false) { - if (!ReadableStream) { - ReadableStream = require("stream/web").ReadableStream; - } - let stream = null; - if (object instanceof ReadableStream) { - stream = object; - } else if (isBlobLike(object)) { - stream = object.stream(); - } else { - stream = new ReadableStream({ - async pull(controller) { - controller.enqueue( - typeof source === "string" ? textEncoder.encode(source) : source - ); - queueMicrotask(() => readableStreamClose(controller)); - }, - start() { - }, - type: void 0 - }); - } - assert(isReadableStreamLike(stream)); - let action = null; - let source = null; - let length = null; - let type = null; - if (typeof object === "string") { - source = object; - type = "text/plain;charset=UTF-8"; - } else if (object instanceof URLSearchParams) { - source = object.toString(); - type = "application/x-www-form-urlencoded;charset=UTF-8"; - } else if (isArrayBuffer(object)) { - source = new Uint8Array(object.slice()); - } else if (ArrayBuffer.isView(object)) { - source = new Uint8Array(object.buffer.slice(object.byteOffset, object.byteOffset + object.byteLength)); - } else if (util2.isFormDataLike(object)) { - const boundary = `----formdata-undici-0${`${Math.floor(Math.random() * 1e11)}`.padStart(11, "0")}`; - const prefix = `--${boundary}\r -Content-Disposition: form-data`; - const escape = (str) => str.replace(/\n/g, "%0A").replace(/\r/g, "%0D").replace(/"/g, "%22"); - const normalizeLinefeeds = (value) => value.replace(/\r?\n|\r/g, "\r\n"); - const blobParts = []; - const rn = new Uint8Array([13, 10]); - length = 0; - let hasUnknownSizeValue = false; - for (const [name, value] of object) { - if (typeof value === "string") { - const chunk2 = textEncoder.encode(prefix + `; name="${escape(normalizeLinefeeds(name))}"\r -\r -${normalizeLinefeeds(value)}\r -`); - blobParts.push(chunk2); - length += chunk2.byteLength; - } else { - const chunk2 = textEncoder.encode(`${prefix}; name="${escape(normalizeLinefeeds(name))}"` + (value.name ? `; filename="${escape(value.name)}"` : "") + `\r -Content-Type: ${value.type || "application/octet-stream"}\r -\r -`); - blobParts.push(chunk2, value, rn); - if (typeof value.size === "number") { - length += chunk2.byteLength + value.size + rn.byteLength; - } else { - hasUnknownSizeValue = true; - } - } - } - const chunk = textEncoder.encode(`--${boundary}--`); - blobParts.push(chunk); - length += chunk.byteLength; - if (hasUnknownSizeValue) { - length = null; - } - source = object; - action = async function* () { - for (const part of blobParts) { - if (part.stream) { - yield* part.stream(); - } else { - yield part; - } - } - }; - type = "multipart/form-data; boundary=" + boundary; - } else if (isBlobLike(object)) { - source = object; - length = object.size; - if (object.type) { - type = object.type; - } - } else if (typeof object[Symbol.asyncIterator] === "function") { - if (keepalive) { - throw new TypeError("keepalive"); - } - if (util2.isDisturbed(object) || object.locked) { - throw new TypeError( - "Response body object should not be disturbed or locked" - ); - } - stream = object instanceof ReadableStream ? object : ReadableStreamFrom(object); - } - if (typeof source === "string" || util2.isBuffer(source)) { - length = Buffer.byteLength(source); - } - if (action != null) { - let iterator; - stream = new ReadableStream({ - async start() { - iterator = action(object)[Symbol.asyncIterator](); - }, - async pull(controller) { - const { value, done } = await iterator.next(); - if (done) { - queueMicrotask(() => { - controller.close(); - }); - } else { - if (!isErrored(stream)) { - controller.enqueue(new Uint8Array(value)); - } - } - return controller.desiredSize > 0; - }, - async cancel(reason) { - await iterator.return(); - }, - type: void 0 - }); - } - const body = { stream, source, length }; - return [body, type]; - } - function safelyExtractBody(object, keepalive = false) { - if (!ReadableStream) { - ReadableStream = require("stream/web").ReadableStream; - } - if (object instanceof ReadableStream) { - assert(!util2.isDisturbed(object), "The body has already been consumed."); - assert(!object.locked, "The stream is locked."); - } - return extractBody(object, keepalive); - } - function cloneBody(body) { - const [out1, out2] = body.stream.tee(); - const out2Clone = structuredClone(out2, { transfer: [out2] }); - const [, finalClone] = out2Clone.tee(); - body.stream = out1; - return { - stream: finalClone, - length: body.length, - source: body.source - }; - } - async function* consumeBody(body) { - if (body) { - if (isUint8Array(body)) { - yield body; - } else { - const stream = body.stream; - if (util2.isDisturbed(stream)) { - throw new TypeError("The body has already been consumed."); - } - if (stream.locked) { - throw new TypeError("The stream is locked."); - } - stream[kBodyUsed] = true; - yield* stream; - } - } - } - function throwIfAborted(state) { - if (state.aborted) { - throw new DOMException2("The operation was aborted.", "AbortError"); - } - } - function bodyMixinMethods(instance) { - const methods = { - blob() { - return specConsumeBody(this, (bytes) => { - let mimeType = bodyMimeType(this); - if (mimeType === "failure") { - mimeType = ""; - } else if (mimeType) { - mimeType = serializeAMimeType(mimeType); - } - return new Blob2([bytes], { type: mimeType }); - }, instance); - }, - arrayBuffer() { - return specConsumeBody(this, (bytes) => { - return new Uint8Array(bytes).buffer; - }, instance); - }, - text() { - return specConsumeBody(this, utf8DecodeBytes, instance); - }, - json() { - return specConsumeBody(this, parseJSONFromBytes, instance); - }, - async formData() { - webidl.brandCheck(this, instance); - throwIfAborted(this[kState]); - const contentType = this.headers.get("Content-Type"); - if (/multipart\/form-data/.test(contentType)) { - const headers = {}; - for (const [key, value] of this.headers) - headers[key.toLowerCase()] = value; - const responseFormData = new FormData(); - let busboy; - try { - busboy = new Busboy({ - headers, - preservePath: true - }); - } catch (err) { - throw new DOMException2(`${err}`, "AbortError"); - } - busboy.on("field", (name, value) => { - responseFormData.append(name, value); - }); - busboy.on("file", (name, value, filename, encoding, mimeType) => { - const chunks = []; - if (encoding === "base64" || encoding.toLowerCase() === "base64") { - let base64chunk = ""; - value.on("data", (chunk) => { - base64chunk += chunk.toString().replace(/[\r\n]/gm, ""); - const end = base64chunk.length - base64chunk.length % 4; - chunks.push(Buffer.from(base64chunk.slice(0, end), "base64")); - base64chunk = base64chunk.slice(end); - }); - value.on("end", () => { - chunks.push(Buffer.from(base64chunk, "base64")); - responseFormData.append(name, new File(chunks, filename, { type: mimeType })); - }); - } else { - value.on("data", (chunk) => { - chunks.push(chunk); - }); - value.on("end", () => { - responseFormData.append(name, new File(chunks, filename, { type: mimeType })); - }); - } - }); - const busboyResolve = new Promise((resolve, reject) => { - busboy.on("finish", resolve); - busboy.on("error", (err) => reject(new TypeError(err))); - }); - if (this.body !== null) - for await (const chunk of consumeBody(this[kState].body)) - busboy.write(chunk); - busboy.end(); - await busboyResolve; - return responseFormData; - } else if (/application\/x-www-form-urlencoded/.test(contentType)) { - let entries; - try { - let text = ""; - const streamingDecoder = new TextDecoder("utf-8", { ignoreBOM: true }); - for await (const chunk of consumeBody(this[kState].body)) { - if (!isUint8Array(chunk)) { - throw new TypeError("Expected Uint8Array chunk"); - } - text += streamingDecoder.decode(chunk, { stream: true }); - } - text += streamingDecoder.decode(); - entries = new URLSearchParams(text); - } catch (err) { - throw Object.assign(new TypeError(), { cause: err }); - } - const formData = new FormData(); - for (const [name, value] of entries) { - formData.append(name, value); - } - return formData; - } else { - await Promise.resolve(); - throwIfAborted(this[kState]); - throw webidl.errors.exception({ - header: `${instance.name}.formData`, - message: "Could not parse content as FormData." - }); - } - } - }; - return methods; - } - function mixinBody(prototype) { - Object.assign(prototype.prototype, bodyMixinMethods(prototype)); - } - async function specConsumeBody(object, convertBytesToJSValue, instance) { - webidl.brandCheck(object, instance); - throwIfAborted(object[kState]); - if (bodyUnusable(object[kState].body)) { - throw new TypeError("Body is unusable"); - } - const promise = createDeferredPromise(); - const errorSteps = (error) => promise.reject(error); - const successSteps = (data) => { - try { - promise.resolve(convertBytesToJSValue(data)); - } catch (e) { - errorSteps(e); - } - }; - if (object[kState].body == null) { - successSteps(new Uint8Array()); - return promise.promise; - } - await fullyReadBody(object[kState].body, successSteps, errorSteps); - return promise.promise; - } - function bodyUnusable(body) { - return body != null && (body.stream.locked || util2.isDisturbed(body.stream)); - } - function utf8DecodeBytes(buffer) { - if (buffer.length === 0) { - return ""; - } - if (buffer[0] === 239 && buffer[1] === 187 && buffer[2] === 191) { - buffer = buffer.subarray(3); - } - const output = textDecoder.decode(buffer); - return output; - } - function parseJSONFromBytes(bytes) { - return JSON.parse(utf8DecodeBytes(bytes)); - } - function bodyMimeType(object) { - const { headersList } = object[kState]; - const contentType = headersList.get("content-type"); - if (contentType === null) { - return "failure"; - } - return parseMIMEType(contentType); - } - module2.exports = { - extractBody, - safelyExtractBody, - cloneBody, - mixinBody - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/request.js -var require_request = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/request.js"(exports2, module2) { - "use strict"; - var { - InvalidArgumentError, - NotSupportedError - } = require_errors(); - var assert = require("assert"); - var { kHTTP2BuildRequest, kHTTP2CopyHeaders, kHTTP1BuildRequest } = require_symbols(); - var util2 = require_util(); - var tokenRegExp = /^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/; - var headerCharRegex = /[^\t\x20-\x7e\x80-\xff]/; - var invalidPathRegex = /[^\u0021-\u00ff]/; - var kHandler = Symbol("handler"); - var channels = {}; - var extractBody; - try { - const diagnosticsChannel = require("diagnostics_channel"); - channels.create = diagnosticsChannel.channel("undici:request:create"); - channels.bodySent = diagnosticsChannel.channel("undici:request:bodySent"); - channels.headers = diagnosticsChannel.channel("undici:request:headers"); - channels.trailers = diagnosticsChannel.channel("undici:request:trailers"); - channels.error = diagnosticsChannel.channel("undici:request:error"); - } catch { - channels.create = { hasSubscribers: false }; - channels.bodySent = { hasSubscribers: false }; - channels.headers = { hasSubscribers: false }; - channels.trailers = { hasSubscribers: false }; - channels.error = { hasSubscribers: false }; - } - var Request = class { - constructor(origin, { - path: path2, - method, - body, - headers, - query, - idempotent, - blocking, - upgrade, - headersTimeout, - bodyTimeout, - reset, - throwOnError, - expectContinue - }, handler) { - if (typeof path2 !== "string") { - throw new InvalidArgumentError("path must be a string"); - } else if (path2[0] !== "/" && !(path2.startsWith("http://") || path2.startsWith("https://")) && method !== "CONNECT") { - throw new InvalidArgumentError("path must be an absolute URL or start with a slash"); - } else if (invalidPathRegex.exec(path2) !== null) { - throw new InvalidArgumentError("invalid request path"); - } - if (typeof method !== "string") { - throw new InvalidArgumentError("method must be a string"); - } else if (tokenRegExp.exec(method) === null) { - throw new InvalidArgumentError("invalid request method"); - } - if (upgrade && typeof upgrade !== "string") { - throw new InvalidArgumentError("upgrade must be a string"); - } - if (headersTimeout != null && (!Number.isFinite(headersTimeout) || headersTimeout < 0)) { - throw new InvalidArgumentError("invalid headersTimeout"); - } - if (bodyTimeout != null && (!Number.isFinite(bodyTimeout) || bodyTimeout < 0)) { - throw new InvalidArgumentError("invalid bodyTimeout"); - } - if (reset != null && typeof reset !== "boolean") { - throw new InvalidArgumentError("invalid reset"); - } - if (expectContinue != null && typeof expectContinue !== "boolean") { - throw new InvalidArgumentError("invalid expectContinue"); - } - this.headersTimeout = headersTimeout; - this.bodyTimeout = bodyTimeout; - this.throwOnError = throwOnError === true; - this.method = method; - this.abort = null; - if (body == null) { - this.body = null; - } else if (util2.isStream(body)) { - this.body = body; - const rState = this.body._readableState; - if (!rState || !rState.autoDestroy) { - this.endHandler = function autoDestroy() { - util2.destroy(this); - }; - this.body.on("end", this.endHandler); - } - this.errorHandler = (err) => { - if (this.abort) { - this.abort(err); - } else { - this.error = err; - } - }; - this.body.on("error", this.errorHandler); - } else if (util2.isBuffer(body)) { - this.body = body.byteLength ? body : null; - } else if (ArrayBuffer.isView(body)) { - this.body = body.buffer.byteLength ? Buffer.from(body.buffer, body.byteOffset, body.byteLength) : null; - } else if (body instanceof ArrayBuffer) { - this.body = body.byteLength ? Buffer.from(body) : null; - } else if (typeof body === "string") { - this.body = body.length ? Buffer.from(body) : null; - } else if (util2.isFormDataLike(body) || util2.isIterable(body) || util2.isBlobLike(body)) { - this.body = body; - } else { - throw new InvalidArgumentError("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable"); - } - this.completed = false; - this.aborted = false; - this.upgrade = upgrade || null; - this.path = query ? util2.buildURL(path2, query) : path2; - this.origin = origin; - this.idempotent = idempotent == null ? method === "HEAD" || method === "GET" : idempotent; - this.blocking = blocking == null ? false : blocking; - this.reset = reset == null ? null : reset; - this.host = null; - this.contentLength = null; - this.contentType = null; - this.headers = ""; - this.expectContinue = expectContinue != null ? expectContinue : false; - if (Array.isArray(headers)) { - if (headers.length % 2 !== 0) { - throw new InvalidArgumentError("headers array must be even"); - } - for (let i = 0; i < headers.length; i += 2) { - processHeader(this, headers[i], headers[i + 1]); - } - } else if (headers && typeof headers === "object") { - const keys = Object.keys(headers); - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - processHeader(this, key, headers[key]); - } - } else if (headers != null) { - throw new InvalidArgumentError("headers must be an object or an array"); - } - if (util2.isFormDataLike(this.body)) { - if (util2.nodeMajor < 16 || util2.nodeMajor === 16 && util2.nodeMinor < 8) { - throw new InvalidArgumentError("Form-Data bodies are only supported in node v16.8 and newer."); - } - if (!extractBody) { - extractBody = require_body().extractBody; - } - const [bodyStream, contentType] = extractBody(body); - if (this.contentType == null) { - this.contentType = contentType; - this.headers += `content-type: ${contentType}\r -`; - } - this.body = bodyStream.stream; - this.contentLength = bodyStream.length; - } else if (util2.isBlobLike(body) && this.contentType == null && body.type) { - this.contentType = body.type; - this.headers += `content-type: ${body.type}\r -`; - } - util2.validateHandler(handler, method, upgrade); - this.servername = util2.getServerName(this.host); - this[kHandler] = handler; - if (channels.create.hasSubscribers) { - channels.create.publish({ request: this }); - } - } - onBodySent(chunk) { - if (this[kHandler].onBodySent) { - try { - return this[kHandler].onBodySent(chunk); - } catch (err) { - this.abort(err); - } - } - } - onRequestSent() { - if (channels.bodySent.hasSubscribers) { - channels.bodySent.publish({ request: this }); - } - if (this[kHandler].onRequestSent) { - try { - return this[kHandler].onRequestSent(); - } catch (err) { - this.abort(err); - } - } - } - onConnect(abort) { - assert(!this.aborted); - assert(!this.completed); - if (this.error) { - abort(this.error); - } else { - this.abort = abort; - return this[kHandler].onConnect(abort); - } - } - onHeaders(statusCode, headers, resume, statusText) { - assert(!this.aborted); - assert(!this.completed); - if (channels.headers.hasSubscribers) { - channels.headers.publish({ request: this, response: { statusCode, headers, statusText } }); - } - try { - return this[kHandler].onHeaders(statusCode, headers, resume, statusText); - } catch (err) { - this.abort(err); - } - } - onData(chunk) { - assert(!this.aborted); - assert(!this.completed); - try { - return this[kHandler].onData(chunk); - } catch (err) { - this.abort(err); - return false; - } - } - onUpgrade(statusCode, headers, socket) { - assert(!this.aborted); - assert(!this.completed); - return this[kHandler].onUpgrade(statusCode, headers, socket); - } - onComplete(trailers) { - this.onFinally(); - assert(!this.aborted); - this.completed = true; - if (channels.trailers.hasSubscribers) { - channels.trailers.publish({ request: this, trailers }); - } - try { - return this[kHandler].onComplete(trailers); - } catch (err) { - this.onError(err); - } - } - onError(error) { - this.onFinally(); - if (channels.error.hasSubscribers) { - channels.error.publish({ request: this, error }); - } - if (this.aborted) { - return; - } - this.aborted = true; - return this[kHandler].onError(error); - } - onFinally() { - if (this.errorHandler) { - this.body.off("error", this.errorHandler); - this.errorHandler = null; - } - if (this.endHandler) { - this.body.off("end", this.endHandler); - this.endHandler = null; - } - } - // TODO: adjust to support H2 - addHeader(key, value) { - processHeader(this, key, value); - return this; - } - static [kHTTP1BuildRequest](origin, opts, handler) { - return new Request(origin, opts, handler); - } - static [kHTTP2BuildRequest](origin, opts, handler) { - const headers = opts.headers; - opts = { ...opts, headers: null }; - const request = new Request(origin, opts, handler); - request.headers = {}; - if (Array.isArray(headers)) { - if (headers.length % 2 !== 0) { - throw new InvalidArgumentError("headers array must be even"); - } - for (let i = 0; i < headers.length; i += 2) { - processHeader(request, headers[i], headers[i + 1], true); - } - } else if (headers && typeof headers === "object") { - const keys = Object.keys(headers); - for (let i = 0; i < keys.length; i++) { - const key = keys[i]; - processHeader(request, key, headers[key], true); - } - } else if (headers != null) { - throw new InvalidArgumentError("headers must be an object or an array"); - } - return request; - } - static [kHTTP2CopyHeaders](raw) { - const rawHeaders = raw.split("\r\n"); - const headers = {}; - for (const header of rawHeaders) { - const [key, value] = header.split(": "); - if (value == null || value.length === 0) - continue; - if (headers[key]) - headers[key] += `,${value}`; - else - headers[key] = value; - } - return headers; - } - }; - function processHeaderValue(key, val, skipAppend) { - if (val && typeof val === "object") { - throw new InvalidArgumentError(`invalid ${key} header`); - } - val = val != null ? `${val}` : ""; - if (headerCharRegex.exec(val) !== null) { - throw new InvalidArgumentError(`invalid ${key} header`); - } - return skipAppend ? val : `${key}: ${val}\r -`; - } - function processHeader(request, key, val, skipAppend = false) { - if (val && (typeof val === "object" && !Array.isArray(val))) { - throw new InvalidArgumentError(`invalid ${key} header`); - } else if (val === void 0) { - return; - } - if (request.host === null && key.length === 4 && key.toLowerCase() === "host") { - if (headerCharRegex.exec(val) !== null) { - throw new InvalidArgumentError(`invalid ${key} header`); - } - request.host = val; - } else if (request.contentLength === null && key.length === 14 && key.toLowerCase() === "content-length") { - request.contentLength = parseInt(val, 10); - if (!Number.isFinite(request.contentLength)) { - throw new InvalidArgumentError("invalid content-length header"); - } - } else if (request.contentType === null && key.length === 12 && key.toLowerCase() === "content-type") { - request.contentType = val; - if (skipAppend) - request.headers[key] = processHeaderValue(key, val, skipAppend); - else - request.headers += processHeaderValue(key, val); - } else if (key.length === 17 && key.toLowerCase() === "transfer-encoding") { - throw new InvalidArgumentError("invalid transfer-encoding header"); - } else if (key.length === 10 && key.toLowerCase() === "connection") { - const value = typeof val === "string" ? val.toLowerCase() : null; - if (value !== "close" && value !== "keep-alive") { - throw new InvalidArgumentError("invalid connection header"); - } else if (value === "close") { - request.reset = true; - } - } else if (key.length === 10 && key.toLowerCase() === "keep-alive") { - throw new InvalidArgumentError("invalid keep-alive header"); - } else if (key.length === 7 && key.toLowerCase() === "upgrade") { - throw new InvalidArgumentError("invalid upgrade header"); - } else if (key.length === 6 && key.toLowerCase() === "expect") { - throw new NotSupportedError("expect header not supported"); - } else if (tokenRegExp.exec(key) === null) { - throw new InvalidArgumentError("invalid header key"); - } else { - if (Array.isArray(val)) { - for (let i = 0; i < val.length; i++) { - if (skipAppend) { - if (request.headers[key]) - request.headers[key] += `,${processHeaderValue(key, val[i], skipAppend)}`; - else - request.headers[key] = processHeaderValue(key, val[i], skipAppend); - } else { - request.headers += processHeaderValue(key, val[i]); - } - } - } else { - if (skipAppend) - request.headers[key] = processHeaderValue(key, val, skipAppend); - else - request.headers += processHeaderValue(key, val); - } - } - } - module2.exports = Request; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/dispatcher.js -var require_dispatcher = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/dispatcher.js"(exports2, module2) { - "use strict"; - var EventEmitter = require("events"); - var Dispatcher = class extends EventEmitter { - dispatch() { - throw new Error("not implemented"); - } - close() { - throw new Error("not implemented"); - } - destroy() { - throw new Error("not implemented"); - } - }; - module2.exports = Dispatcher; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/dispatcher-base.js -var require_dispatcher_base = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/dispatcher-base.js"(exports2, module2) { - "use strict"; - var Dispatcher = require_dispatcher(); - var { - ClientDestroyedError, - ClientClosedError, - InvalidArgumentError - } = require_errors(); - var { kDestroy, kClose, kDispatch, kInterceptors } = require_symbols(); - var kDestroyed = Symbol("destroyed"); - var kClosed = Symbol("closed"); - var kOnDestroyed = Symbol("onDestroyed"); - var kOnClosed = Symbol("onClosed"); - var kInterceptedDispatch = Symbol("Intercepted Dispatch"); - var DispatcherBase = class extends Dispatcher { - constructor() { - super(); - this[kDestroyed] = false; - this[kOnDestroyed] = null; - this[kClosed] = false; - this[kOnClosed] = []; - } - get destroyed() { - return this[kDestroyed]; - } - get closed() { - return this[kClosed]; - } - get interceptors() { - return this[kInterceptors]; - } - set interceptors(newInterceptors) { - if (newInterceptors) { - for (let i = newInterceptors.length - 1; i >= 0; i--) { - const interceptor = this[kInterceptors][i]; - if (typeof interceptor !== "function") { - throw new InvalidArgumentError("interceptor must be an function"); - } - } - } - this[kInterceptors] = newInterceptors; - } - close(callback) { - if (callback === void 0) { - return new Promise((resolve, reject) => { - this.close((err, data) => { - return err ? reject(err) : resolve(data); - }); - }); - } - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - if (this[kDestroyed]) { - queueMicrotask(() => callback(new ClientDestroyedError(), null)); - return; - } - if (this[kClosed]) { - if (this[kOnClosed]) { - this[kOnClosed].push(callback); - } else { - queueMicrotask(() => callback(null, null)); - } - return; - } - this[kClosed] = true; - this[kOnClosed].push(callback); - const onClosed = () => { - const callbacks = this[kOnClosed]; - this[kOnClosed] = null; - for (let i = 0; i < callbacks.length; i++) { - callbacks[i](null, null); - } - }; - this[kClose]().then(() => this.destroy()).then(() => { - queueMicrotask(onClosed); - }); - } - destroy(err, callback) { - if (typeof err === "function") { - callback = err; - err = null; - } - if (callback === void 0) { - return new Promise((resolve, reject) => { - this.destroy(err, (err2, data) => { - return err2 ? ( - /* istanbul ignore next: should never error */ - reject(err2) - ) : resolve(data); - }); - }); - } - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - if (this[kDestroyed]) { - if (this[kOnDestroyed]) { - this[kOnDestroyed].push(callback); - } else { - queueMicrotask(() => callback(null, null)); - } - return; - } - if (!err) { - err = new ClientDestroyedError(); - } - this[kDestroyed] = true; - this[kOnDestroyed] = this[kOnDestroyed] || []; - this[kOnDestroyed].push(callback); - const onDestroyed = () => { - const callbacks = this[kOnDestroyed]; - this[kOnDestroyed] = null; - for (let i = 0; i < callbacks.length; i++) { - callbacks[i](null, null); - } - }; - this[kDestroy](err).then(() => { - queueMicrotask(onDestroyed); - }); - } - [kInterceptedDispatch](opts, handler) { - if (!this[kInterceptors] || this[kInterceptors].length === 0) { - this[kInterceptedDispatch] = this[kDispatch]; - return this[kDispatch](opts, handler); - } - let dispatch = this[kDispatch].bind(this); - for (let i = this[kInterceptors].length - 1; i >= 0; i--) { - dispatch = this[kInterceptors][i](dispatch); - } - this[kInterceptedDispatch] = dispatch; - return dispatch(opts, handler); - } - dispatch(opts, handler) { - if (!handler || typeof handler !== "object") { - throw new InvalidArgumentError("handler must be an object"); - } - try { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("opts must be an object."); - } - if (this[kDestroyed] || this[kOnDestroyed]) { - throw new ClientDestroyedError(); - } - if (this[kClosed]) { - throw new ClientClosedError(); - } - return this[kInterceptedDispatch](opts, handler); - } catch (err) { - if (typeof handler.onError !== "function") { - throw new InvalidArgumentError("invalid onError method"); - } - handler.onError(err); - return false; - } - } - }; - module2.exports = DispatcherBase; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/core/connect.js -var require_connect = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/core/connect.js"(exports2, module2) { - "use strict"; - var net = require("net"); - var assert = require("assert"); - var util2 = require_util(); - var { InvalidArgumentError, ConnectTimeoutError } = require_errors(); - var tls; - var SessionCache; - if (global.FinalizationRegistry && !process.env.NODE_V8_COVERAGE) { - SessionCache = class WeakSessionCache { - constructor(maxCachedSessions) { - this._maxCachedSessions = maxCachedSessions; - this._sessionCache = /* @__PURE__ */ new Map(); - this._sessionRegistry = new global.FinalizationRegistry((key) => { - if (this._sessionCache.size < this._maxCachedSessions) { - return; - } - const ref = this._sessionCache.get(key); - if (ref !== void 0 && ref.deref() === void 0) { - this._sessionCache.delete(key); - } - }); - } - get(sessionKey) { - const ref = this._sessionCache.get(sessionKey); - return ref ? ref.deref() : null; - } - set(sessionKey, session) { - if (this._maxCachedSessions === 0) { - return; - } - this._sessionCache.set(sessionKey, new WeakRef(session)); - this._sessionRegistry.register(session, sessionKey); - } - }; - } else { - SessionCache = class SimpleSessionCache { - constructor(maxCachedSessions) { - this._maxCachedSessions = maxCachedSessions; - this._sessionCache = /* @__PURE__ */ new Map(); - } - get(sessionKey) { - return this._sessionCache.get(sessionKey); - } - set(sessionKey, session) { - if (this._maxCachedSessions === 0) { - return; - } - if (this._sessionCache.size >= this._maxCachedSessions) { - const { value: oldestKey } = this._sessionCache.keys().next(); - this._sessionCache.delete(oldestKey); - } - this._sessionCache.set(sessionKey, session); - } - }; - } - function buildConnector({ allowH2, maxCachedSessions, socketPath, timeout, ...opts }) { - if (maxCachedSessions != null && (!Number.isInteger(maxCachedSessions) || maxCachedSessions < 0)) { - throw new InvalidArgumentError("maxCachedSessions must be a positive integer or zero"); - } - const options = { path: socketPath, ...opts }; - const sessionCache = new SessionCache(maxCachedSessions == null ? 100 : maxCachedSessions); - timeout = timeout == null ? 1e4 : timeout; - allowH2 = allowH2 != null ? allowH2 : false; - return function connect({ hostname, host, protocol, port, servername, localAddress, httpSocket }, callback) { - let socket; - if (protocol === "https:") { - if (!tls) { - tls = require("tls"); - } - servername = servername || options.servername || util2.getServerName(host) || null; - const sessionKey = servername || hostname; - const session = sessionCache.get(sessionKey) || null; - assert(sessionKey); - socket = tls.connect({ - highWaterMark: 16384, - // TLS in node can't have bigger HWM anyway... - ...options, - servername, - session, - localAddress, - // TODO(HTTP/2): Add support for h2c - ALPNProtocols: allowH2 ? ["http/1.1", "h2"] : ["http/1.1"], - socket: httpSocket, - // upgrade socket connection - port: port || 443, - host: hostname - }); - socket.on("session", function(session2) { - sessionCache.set(sessionKey, session2); - }); - } else { - assert(!httpSocket, "httpSocket can only be sent on TLS update"); - socket = net.connect({ - highWaterMark: 64 * 1024, - // Same as nodejs fs streams. - ...options, - localAddress, - port: port || 80, - host: hostname - }); - } - if (options.keepAlive == null || options.keepAlive) { - const keepAliveInitialDelay = options.keepAliveInitialDelay === void 0 ? 6e4 : options.keepAliveInitialDelay; - socket.setKeepAlive(true, keepAliveInitialDelay); - } - const cancelTimeout = setupTimeout(() => onConnectTimeout(socket), timeout); - socket.setNoDelay(true).once(protocol === "https:" ? "secureConnect" : "connect", function() { - cancelTimeout(); - if (callback) { - const cb = callback; - callback = null; - cb(null, this); - } - }).on("error", function(err) { - cancelTimeout(); - if (callback) { - const cb = callback; - callback = null; - cb(err); - } - }); - return socket; - }; - } - function setupTimeout(onConnectTimeout2, timeout) { - if (!timeout) { - return () => { - }; - } - let s1 = null; - let s2 = null; - const timeoutId = setTimeout(() => { - s1 = setImmediate(() => { - if (process.platform === "win32") { - s2 = setImmediate(() => onConnectTimeout2()); - } else { - onConnectTimeout2(); - } - }); - }, timeout); - return () => { - clearTimeout(timeoutId); - clearImmediate(s1); - clearImmediate(s2); - }; - } - function onConnectTimeout(socket) { - util2.destroy(socket, new ConnectTimeoutError()); - } - module2.exports = buildConnector; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/llhttp/utils.js -var require_utils2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/llhttp/utils.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.enumToMap = void 0; - function enumToMap(obj) { - const res = {}; - Object.keys(obj).forEach((key) => { - const value = obj[key]; - if (typeof value === "number") { - res[key] = value; - } - }); - return res; - } - exports2.enumToMap = enumToMap; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/llhttp/constants.js -var require_constants3 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/llhttp/constants.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.SPECIAL_HEADERS = exports2.HEADER_STATE = exports2.MINOR = exports2.MAJOR = exports2.CONNECTION_TOKEN_CHARS = exports2.HEADER_CHARS = exports2.TOKEN = exports2.STRICT_TOKEN = exports2.HEX = exports2.URL_CHAR = exports2.STRICT_URL_CHAR = exports2.USERINFO_CHARS = exports2.MARK = exports2.ALPHANUM = exports2.NUM = exports2.HEX_MAP = exports2.NUM_MAP = exports2.ALPHA = exports2.FINISH = exports2.H_METHOD_MAP = exports2.METHOD_MAP = exports2.METHODS_RTSP = exports2.METHODS_ICE = exports2.METHODS_HTTP = exports2.METHODS = exports2.LENIENT_FLAGS = exports2.FLAGS = exports2.TYPE = exports2.ERROR = void 0; - var utils_1 = require_utils2(); - var ERROR; - (function(ERROR2) { - ERROR2[ERROR2["OK"] = 0] = "OK"; - ERROR2[ERROR2["INTERNAL"] = 1] = "INTERNAL"; - ERROR2[ERROR2["STRICT"] = 2] = "STRICT"; - ERROR2[ERROR2["LF_EXPECTED"] = 3] = "LF_EXPECTED"; - ERROR2[ERROR2["UNEXPECTED_CONTENT_LENGTH"] = 4] = "UNEXPECTED_CONTENT_LENGTH"; - ERROR2[ERROR2["CLOSED_CONNECTION"] = 5] = "CLOSED_CONNECTION"; - ERROR2[ERROR2["INVALID_METHOD"] = 6] = "INVALID_METHOD"; - ERROR2[ERROR2["INVALID_URL"] = 7] = "INVALID_URL"; - ERROR2[ERROR2["INVALID_CONSTANT"] = 8] = "INVALID_CONSTANT"; - ERROR2[ERROR2["INVALID_VERSION"] = 9] = "INVALID_VERSION"; - ERROR2[ERROR2["INVALID_HEADER_TOKEN"] = 10] = "INVALID_HEADER_TOKEN"; - ERROR2[ERROR2["INVALID_CONTENT_LENGTH"] = 11] = "INVALID_CONTENT_LENGTH"; - ERROR2[ERROR2["INVALID_CHUNK_SIZE"] = 12] = "INVALID_CHUNK_SIZE"; - ERROR2[ERROR2["INVALID_STATUS"] = 13] = "INVALID_STATUS"; - ERROR2[ERROR2["INVALID_EOF_STATE"] = 14] = "INVALID_EOF_STATE"; - ERROR2[ERROR2["INVALID_TRANSFER_ENCODING"] = 15] = "INVALID_TRANSFER_ENCODING"; - ERROR2[ERROR2["CB_MESSAGE_BEGIN"] = 16] = "CB_MESSAGE_BEGIN"; - ERROR2[ERROR2["CB_HEADERS_COMPLETE"] = 17] = "CB_HEADERS_COMPLETE"; - ERROR2[ERROR2["CB_MESSAGE_COMPLETE"] = 18] = "CB_MESSAGE_COMPLETE"; - ERROR2[ERROR2["CB_CHUNK_HEADER"] = 19] = "CB_CHUNK_HEADER"; - ERROR2[ERROR2["CB_CHUNK_COMPLETE"] = 20] = "CB_CHUNK_COMPLETE"; - ERROR2[ERROR2["PAUSED"] = 21] = "PAUSED"; - ERROR2[ERROR2["PAUSED_UPGRADE"] = 22] = "PAUSED_UPGRADE"; - ERROR2[ERROR2["PAUSED_H2_UPGRADE"] = 23] = "PAUSED_H2_UPGRADE"; - ERROR2[ERROR2["USER"] = 24] = "USER"; - })(ERROR = exports2.ERROR || (exports2.ERROR = {})); - var TYPE; - (function(TYPE2) { - TYPE2[TYPE2["BOTH"] = 0] = "BOTH"; - TYPE2[TYPE2["REQUEST"] = 1] = "REQUEST"; - TYPE2[TYPE2["RESPONSE"] = 2] = "RESPONSE"; - })(TYPE = exports2.TYPE || (exports2.TYPE = {})); - var FLAGS; - (function(FLAGS2) { - FLAGS2[FLAGS2["CONNECTION_KEEP_ALIVE"] = 1] = "CONNECTION_KEEP_ALIVE"; - FLAGS2[FLAGS2["CONNECTION_CLOSE"] = 2] = "CONNECTION_CLOSE"; - FLAGS2[FLAGS2["CONNECTION_UPGRADE"] = 4] = "CONNECTION_UPGRADE"; - FLAGS2[FLAGS2["CHUNKED"] = 8] = "CHUNKED"; - FLAGS2[FLAGS2["UPGRADE"] = 16] = "UPGRADE"; - FLAGS2[FLAGS2["CONTENT_LENGTH"] = 32] = "CONTENT_LENGTH"; - FLAGS2[FLAGS2["SKIPBODY"] = 64] = "SKIPBODY"; - FLAGS2[FLAGS2["TRAILING"] = 128] = "TRAILING"; - FLAGS2[FLAGS2["TRANSFER_ENCODING"] = 512] = "TRANSFER_ENCODING"; - })(FLAGS = exports2.FLAGS || (exports2.FLAGS = {})); - var LENIENT_FLAGS; - (function(LENIENT_FLAGS2) { - LENIENT_FLAGS2[LENIENT_FLAGS2["HEADERS"] = 1] = "HEADERS"; - LENIENT_FLAGS2[LENIENT_FLAGS2["CHUNKED_LENGTH"] = 2] = "CHUNKED_LENGTH"; - LENIENT_FLAGS2[LENIENT_FLAGS2["KEEP_ALIVE"] = 4] = "KEEP_ALIVE"; - })(LENIENT_FLAGS = exports2.LENIENT_FLAGS || (exports2.LENIENT_FLAGS = {})); - var METHODS; - (function(METHODS2) { - METHODS2[METHODS2["DELETE"] = 0] = "DELETE"; - METHODS2[METHODS2["GET"] = 1] = "GET"; - METHODS2[METHODS2["HEAD"] = 2] = "HEAD"; - METHODS2[METHODS2["POST"] = 3] = "POST"; - METHODS2[METHODS2["PUT"] = 4] = "PUT"; - METHODS2[METHODS2["CONNECT"] = 5] = "CONNECT"; - METHODS2[METHODS2["OPTIONS"] = 6] = "OPTIONS"; - METHODS2[METHODS2["TRACE"] = 7] = "TRACE"; - METHODS2[METHODS2["COPY"] = 8] = "COPY"; - METHODS2[METHODS2["LOCK"] = 9] = "LOCK"; - METHODS2[METHODS2["MKCOL"] = 10] = "MKCOL"; - METHODS2[METHODS2["MOVE"] = 11] = "MOVE"; - METHODS2[METHODS2["PROPFIND"] = 12] = "PROPFIND"; - METHODS2[METHODS2["PROPPATCH"] = 13] = "PROPPATCH"; - METHODS2[METHODS2["SEARCH"] = 14] = "SEARCH"; - METHODS2[METHODS2["UNLOCK"] = 15] = "UNLOCK"; - METHODS2[METHODS2["BIND"] = 16] = "BIND"; - METHODS2[METHODS2["REBIND"] = 17] = "REBIND"; - METHODS2[METHODS2["UNBIND"] = 18] = "UNBIND"; - METHODS2[METHODS2["ACL"] = 19] = "ACL"; - METHODS2[METHODS2["REPORT"] = 20] = "REPORT"; - METHODS2[METHODS2["MKACTIVITY"] = 21] = "MKACTIVITY"; - METHODS2[METHODS2["CHECKOUT"] = 22] = "CHECKOUT"; - METHODS2[METHODS2["MERGE"] = 23] = "MERGE"; - METHODS2[METHODS2["M-SEARCH"] = 24] = "M-SEARCH"; - METHODS2[METHODS2["NOTIFY"] = 25] = "NOTIFY"; - METHODS2[METHODS2["SUBSCRIBE"] = 26] = "SUBSCRIBE"; - METHODS2[METHODS2["UNSUBSCRIBE"] = 27] = "UNSUBSCRIBE"; - METHODS2[METHODS2["PATCH"] = 28] = "PATCH"; - METHODS2[METHODS2["PURGE"] = 29] = "PURGE"; - METHODS2[METHODS2["MKCALENDAR"] = 30] = "MKCALENDAR"; - METHODS2[METHODS2["LINK"] = 31] = "LINK"; - METHODS2[METHODS2["UNLINK"] = 32] = "UNLINK"; - METHODS2[METHODS2["SOURCE"] = 33] = "SOURCE"; - METHODS2[METHODS2["PRI"] = 34] = "PRI"; - METHODS2[METHODS2["DESCRIBE"] = 35] = "DESCRIBE"; - METHODS2[METHODS2["ANNOUNCE"] = 36] = "ANNOUNCE"; - METHODS2[METHODS2["SETUP"] = 37] = "SETUP"; - METHODS2[METHODS2["PLAY"] = 38] = "PLAY"; - METHODS2[METHODS2["PAUSE"] = 39] = "PAUSE"; - METHODS2[METHODS2["TEARDOWN"] = 40] = "TEARDOWN"; - METHODS2[METHODS2["GET_PARAMETER"] = 41] = "GET_PARAMETER"; - METHODS2[METHODS2["SET_PARAMETER"] = 42] = "SET_PARAMETER"; - METHODS2[METHODS2["REDIRECT"] = 43] = "REDIRECT"; - METHODS2[METHODS2["RECORD"] = 44] = "RECORD"; - METHODS2[METHODS2["FLUSH"] = 45] = "FLUSH"; - })(METHODS = exports2.METHODS || (exports2.METHODS = {})); - exports2.METHODS_HTTP = [ - METHODS.DELETE, - METHODS.GET, - METHODS.HEAD, - METHODS.POST, - METHODS.PUT, - METHODS.CONNECT, - METHODS.OPTIONS, - METHODS.TRACE, - METHODS.COPY, - METHODS.LOCK, - METHODS.MKCOL, - METHODS.MOVE, - METHODS.PROPFIND, - METHODS.PROPPATCH, - METHODS.SEARCH, - METHODS.UNLOCK, - METHODS.BIND, - METHODS.REBIND, - METHODS.UNBIND, - METHODS.ACL, - METHODS.REPORT, - METHODS.MKACTIVITY, - METHODS.CHECKOUT, - METHODS.MERGE, - METHODS["M-SEARCH"], - METHODS.NOTIFY, - METHODS.SUBSCRIBE, - METHODS.UNSUBSCRIBE, - METHODS.PATCH, - METHODS.PURGE, - METHODS.MKCALENDAR, - METHODS.LINK, - METHODS.UNLINK, - METHODS.PRI, - // TODO(indutny): should we allow it with HTTP? - METHODS.SOURCE - ]; - exports2.METHODS_ICE = [ - METHODS.SOURCE - ]; - exports2.METHODS_RTSP = [ - METHODS.OPTIONS, - METHODS.DESCRIBE, - METHODS.ANNOUNCE, - METHODS.SETUP, - METHODS.PLAY, - METHODS.PAUSE, - METHODS.TEARDOWN, - METHODS.GET_PARAMETER, - METHODS.SET_PARAMETER, - METHODS.REDIRECT, - METHODS.RECORD, - METHODS.FLUSH, - // For AirPlay - METHODS.GET, - METHODS.POST - ]; - exports2.METHOD_MAP = utils_1.enumToMap(METHODS); - exports2.H_METHOD_MAP = {}; - Object.keys(exports2.METHOD_MAP).forEach((key) => { - if (/^H/.test(key)) { - exports2.H_METHOD_MAP[key] = exports2.METHOD_MAP[key]; - } - }); - var FINISH; - (function(FINISH2) { - FINISH2[FINISH2["SAFE"] = 0] = "SAFE"; - FINISH2[FINISH2["SAFE_WITH_CB"] = 1] = "SAFE_WITH_CB"; - FINISH2[FINISH2["UNSAFE"] = 2] = "UNSAFE"; - })(FINISH = exports2.FINISH || (exports2.FINISH = {})); - exports2.ALPHA = []; - for (let i = "A".charCodeAt(0); i <= "Z".charCodeAt(0); i++) { - exports2.ALPHA.push(String.fromCharCode(i)); - exports2.ALPHA.push(String.fromCharCode(i + 32)); - } - exports2.NUM_MAP = { - 0: 0, - 1: 1, - 2: 2, - 3: 3, - 4: 4, - 5: 5, - 6: 6, - 7: 7, - 8: 8, - 9: 9 - }; - exports2.HEX_MAP = { - 0: 0, - 1: 1, - 2: 2, - 3: 3, - 4: 4, - 5: 5, - 6: 6, - 7: 7, - 8: 8, - 9: 9, - A: 10, - B: 11, - C: 12, - D: 13, - E: 14, - F: 15, - a: 10, - b: 11, - c: 12, - d: 13, - e: 14, - f: 15 - }; - exports2.NUM = [ - "0", - "1", - "2", - "3", - "4", - "5", - "6", - "7", - "8", - "9" - ]; - exports2.ALPHANUM = exports2.ALPHA.concat(exports2.NUM); - exports2.MARK = ["-", "_", ".", "!", "~", "*", "'", "(", ")"]; - exports2.USERINFO_CHARS = exports2.ALPHANUM.concat(exports2.MARK).concat(["%", ";", ":", "&", "=", "+", "$", ","]); - exports2.STRICT_URL_CHAR = [ - "!", - '"', - "$", - "%", - "&", - "'", - "(", - ")", - "*", - "+", - ",", - "-", - ".", - "/", - ":", - ";", - "<", - "=", - ">", - "@", - "[", - "\\", - "]", - "^", - "_", - "`", - "{", - "|", - "}", - "~" - ].concat(exports2.ALPHANUM); - exports2.URL_CHAR = exports2.STRICT_URL_CHAR.concat([" ", "\f"]); - for (let i = 128; i <= 255; i++) { - exports2.URL_CHAR.push(i); - } - exports2.HEX = exports2.NUM.concat(["a", "b", "c", "d", "e", "f", "A", "B", "C", "D", "E", "F"]); - exports2.STRICT_TOKEN = [ - "!", - "#", - "$", - "%", - "&", - "'", - "*", - "+", - "-", - ".", - "^", - "_", - "`", - "|", - "~" - ].concat(exports2.ALPHANUM); - exports2.TOKEN = exports2.STRICT_TOKEN.concat([" "]); - exports2.HEADER_CHARS = [" "]; - for (let i = 32; i <= 255; i++) { - if (i !== 127) { - exports2.HEADER_CHARS.push(i); - } - } - exports2.CONNECTION_TOKEN_CHARS = exports2.HEADER_CHARS.filter((c) => c !== 44); - exports2.MAJOR = exports2.NUM_MAP; - exports2.MINOR = exports2.MAJOR; - var HEADER_STATE; - (function(HEADER_STATE2) { - HEADER_STATE2[HEADER_STATE2["GENERAL"] = 0] = "GENERAL"; - HEADER_STATE2[HEADER_STATE2["CONNECTION"] = 1] = "CONNECTION"; - HEADER_STATE2[HEADER_STATE2["CONTENT_LENGTH"] = 2] = "CONTENT_LENGTH"; - HEADER_STATE2[HEADER_STATE2["TRANSFER_ENCODING"] = 3] = "TRANSFER_ENCODING"; - HEADER_STATE2[HEADER_STATE2["UPGRADE"] = 4] = "UPGRADE"; - HEADER_STATE2[HEADER_STATE2["CONNECTION_KEEP_ALIVE"] = 5] = "CONNECTION_KEEP_ALIVE"; - HEADER_STATE2[HEADER_STATE2["CONNECTION_CLOSE"] = 6] = "CONNECTION_CLOSE"; - HEADER_STATE2[HEADER_STATE2["CONNECTION_UPGRADE"] = 7] = "CONNECTION_UPGRADE"; - HEADER_STATE2[HEADER_STATE2["TRANSFER_ENCODING_CHUNKED"] = 8] = "TRANSFER_ENCODING_CHUNKED"; - })(HEADER_STATE = exports2.HEADER_STATE || (exports2.HEADER_STATE = {})); - exports2.SPECIAL_HEADERS = { - "connection": HEADER_STATE.CONNECTION, - "content-length": HEADER_STATE.CONTENT_LENGTH, - "proxy-connection": HEADER_STATE.CONNECTION, - "transfer-encoding": HEADER_STATE.TRANSFER_ENCODING, - "upgrade": HEADER_STATE.UPGRADE - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/handler/RedirectHandler.js -var require_RedirectHandler = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/handler/RedirectHandler.js"(exports2, module2) { - "use strict"; - var util2 = require_util(); - var { kBodyUsed } = require_symbols(); - var assert = require("assert"); - var { InvalidArgumentError } = require_errors(); - var EE = require("events"); - var redirectableStatusCodes = [300, 301, 302, 303, 307, 308]; - var kBody = Symbol("body"); - var BodyAsyncIterable = class { - constructor(body) { - this[kBody] = body; - this[kBodyUsed] = false; - } - async *[Symbol.asyncIterator]() { - assert(!this[kBodyUsed], "disturbed"); - this[kBodyUsed] = true; - yield* this[kBody]; - } - }; - var RedirectHandler = class { - constructor(dispatch, maxRedirections, opts, handler) { - if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) { - throw new InvalidArgumentError("maxRedirections must be a positive number"); - } - util2.validateHandler(handler, opts.method, opts.upgrade); - this.dispatch = dispatch; - this.location = null; - this.abort = null; - this.opts = { ...opts, maxRedirections: 0 }; - this.maxRedirections = maxRedirections; - this.handler = handler; - this.history = []; - if (util2.isStream(this.opts.body)) { - if (util2.bodyLength(this.opts.body) === 0) { - this.opts.body.on("data", function() { - assert(false); - }); - } - if (typeof this.opts.body.readableDidRead !== "boolean") { - this.opts.body[kBodyUsed] = false; - EE.prototype.on.call(this.opts.body, "data", function() { - this[kBodyUsed] = true; - }); - } - } else if (this.opts.body && typeof this.opts.body.pipeTo === "function") { - this.opts.body = new BodyAsyncIterable(this.opts.body); - } else if (this.opts.body && typeof this.opts.body !== "string" && !ArrayBuffer.isView(this.opts.body) && util2.isIterable(this.opts.body)) { - this.opts.body = new BodyAsyncIterable(this.opts.body); - } - } - onConnect(abort) { - this.abort = abort; - this.handler.onConnect(abort, { history: this.history }); - } - onUpgrade(statusCode, headers, socket) { - this.handler.onUpgrade(statusCode, headers, socket); - } - onError(error) { - this.handler.onError(error); - } - onHeaders(statusCode, headers, resume, statusText) { - this.location = this.history.length >= this.maxRedirections || util2.isDisturbed(this.opts.body) ? null : parseLocation(statusCode, headers); - if (this.opts.origin) { - this.history.push(new URL(this.opts.path, this.opts.origin)); - } - if (!this.location) { - return this.handler.onHeaders(statusCode, headers, resume, statusText); - } - const { origin, pathname, search } = util2.parseURL(new URL(this.location, this.opts.origin && new URL(this.opts.path, this.opts.origin))); - const path2 = search ? `${pathname}${search}` : pathname; - this.opts.headers = cleanRequestHeaders(this.opts.headers, statusCode === 303, this.opts.origin !== origin); - this.opts.path = path2; - this.opts.origin = origin; - this.opts.maxRedirections = 0; - this.opts.query = null; - if (statusCode === 303 && this.opts.method !== "HEAD") { - this.opts.method = "GET"; - this.opts.body = null; - } - } - onData(chunk) { - if (this.location) { - } else { - return this.handler.onData(chunk); - } - } - onComplete(trailers) { - if (this.location) { - this.location = null; - this.abort = null; - this.dispatch(this.opts, this); - } else { - this.handler.onComplete(trailers); - } - } - onBodySent(chunk) { - if (this.handler.onBodySent) { - this.handler.onBodySent(chunk); - } - } - }; - function parseLocation(statusCode, headers) { - if (redirectableStatusCodes.indexOf(statusCode) === -1) { - return null; - } - for (let i = 0; i < headers.length; i += 2) { - if (headers[i].toString().toLowerCase() === "location") { - return headers[i + 1]; - } - } - } - function shouldRemoveHeader(header, removeContent, unknownOrigin) { - if (header.length === 4) { - return util2.headerNameToString(header) === "host"; - } - if (removeContent && util2.headerNameToString(header).startsWith("content-")) { - return true; - } - if (unknownOrigin && (header.length === 13 || header.length === 6 || header.length === 19)) { - const name = util2.headerNameToString(header); - return name === "authorization" || name === "cookie" || name === "proxy-authorization"; - } - return false; - } - function cleanRequestHeaders(headers, removeContent, unknownOrigin) { - const ret = []; - if (Array.isArray(headers)) { - for (let i = 0; i < headers.length; i += 2) { - if (!shouldRemoveHeader(headers[i], removeContent, unknownOrigin)) { - ret.push(headers[i], headers[i + 1]); - } - } - } else if (headers && typeof headers === "object") { - for (const key of Object.keys(headers)) { - if (!shouldRemoveHeader(key, removeContent, unknownOrigin)) { - ret.push(key, headers[key]); - } - } - } else { - assert(headers == null, "headers must be an object or an array"); - } - return ret; - } - module2.exports = RedirectHandler; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/interceptor/redirectInterceptor.js -var require_redirectInterceptor = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/interceptor/redirectInterceptor.js"(exports2, module2) { - "use strict"; - var RedirectHandler = require_RedirectHandler(); - function createRedirectInterceptor({ maxRedirections: defaultMaxRedirections }) { - return (dispatch) => { - return function Intercept(opts, handler) { - const { maxRedirections = defaultMaxRedirections } = opts; - if (!maxRedirections) { - return dispatch(opts, handler); - } - const redirectHandler = new RedirectHandler(dispatch, maxRedirections, opts, handler); - opts = { ...opts, maxRedirections: 0 }; - return dispatch(opts, redirectHandler); - }; - }; - } - module2.exports = createRedirectInterceptor; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/llhttp/llhttp-wasm.js -var require_llhttp_wasm = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/llhttp/llhttp-wasm.js"(exports2, module2) { - module2.exports = "AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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ADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEHdATYCHEEAC3sBAX8CQCAAKAIMIgMNAAJAIAAoAgRFDQAgACABNgIECwJAIAAgASACEMSAgIAAIgMNACAAKAIMDwsgACADNgIcQQAhAyAAKAIEIgFFDQAgACABIAIgACgCCBGBgICAAAAiAUUNACAAIAI2AhQgACABNgIMIAEhAwsgAwvk8wEDDn8DfgR/I4CAgIAAQRBrIgMkgICAgAAgASEEIAEhBSABIQYgASEHIAEhCCABIQkgASEKIAEhCyABIQwgASENIAEhDiABIQ8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgACgCHCIQQX9qDt0B2gEB2QECAwQFBgcICQoLDA0O2AEPENcBERLWARMUFRYXGBkaG+AB3wEcHR7VAR8gISIjJCXUASYnKCkqKyzTAdIBLS7RAdABLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVG2wFHSElKzwHOAUvNAUzMAU1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4ABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwHLAcoBuAHJAbkByAG6AbsBvAG9Ab4BvwHAAcEBwgHDAcQBxQHGAQDcAQtBACEQDMYBC0EOIRAMxQELQQ0hEAzEAQtBDyEQDMMBC0EQIRAMwgELQRMhEAzBAQtBFCEQDMABC0EVIRAMvwELQRYhEAy+AQtBFyEQDL0BC0EYIRAMvAELQRkhEAy7AQtBGiEQDLoBC0EbIRAMuQELQRwhEAy4AQtBCCEQDLcBC0EdIRAMtgELQSAhEAy1AQtBHyEQDLQBC0EHIRAMswELQSEhEAyyAQtBIiEQDLEBC0EeIRAMsAELQSMhEAyvAQtBEiEQDK4BC0ERIRAMrQELQSQhEAysAQtBJSEQDKsBC0EmIRAMqgELQSchEAypAQtBwwEhEAyoAQtBKSEQDKcBC0ErIRAMpgELQSwhEAylAQtBLSEQDKQBC0EuIRAMowELQS8hEAyiAQtBxAEhEAyhAQtBMCEQDKABC0E0IRAMnwELQQwhEAyeAQtBMSEQDJ0BC0EyIRAMnAELQTMhEAybAQtBOSEQDJoBC0E1IRAMmQELQcUBIRAMmAELQQshEAyXAQtBOiEQDJYBC0E2IRAMlQELQQohEAyUAQtBNyEQDJMBC0E4IRAMkgELQTwhEAyRAQtBOyEQDJABC0E9IRAMjwELQQkhEAyOAQtBKCEQDI0BC0E+IRAMjAELQT8hEAyLAQtBwAAhEAyKAQtBwQAhEAyJAQtBwgAhEAyIAQtBwwAhEAyHAQtBxAAhEAyGAQtBxQAhEAyFAQtBxgAhEAyEAQtBKiEQDIMBC0HHACEQDIIBC0HIACEQDIEBC0HJACEQDIABC0HKACEQDH8LQcsAIRAMfgtBzQAhEAx9C0HMACEQDHwLQc4AIRAMewtBzwAhEAx6C0HQACEQDHkLQdEAIRAMeAtB0gAhEAx3C0HTACEQDHYLQdQAIRAMdQtB1gAhEAx0C0HVACEQDHMLQQYhEAxyC0HXACEQDHELQQUhEAxwC0HYACEQDG8LQQQhEAxuC0HZACEQDG0LQdoAIRAMbAtB2wAhEAxrC0HcACEQDGoLQQMhEAxpC0HdACEQDGgLQd4AIRAMZwtB3wAhEAxmC0HhACEQDGULQeAAIRAMZAtB4gAhEAxjC0HjACEQDGILQQIhEAxhC0HkACEQDGALQeUAIRAMXwtB5gAhEAxeC0HnACEQDF0LQegAIRAMXAtB6QAhEAxbC0HqACEQDFoLQesAIRAMWQtB7AAhEAxYC0HtACEQDFcLQe4AIRAMVgtB7wAhEAxVC0HwACEQDFQLQfEAIRAMUwtB8gAhEAxSC0HzACEQDFELQfQAIRAMUAtB9QAhEAxPC0H2ACEQDE4LQfcAIRAMTQtB+AAhEAxMC0H5ACEQDEsLQfoAIRAMSgtB+wAhEAxJC0H8ACEQDEgLQf0AIRAMRwtB/gAhEAxGC0H/ACEQDEULQYABIRAMRAtBgQEhEAxDC0GCASEQDEILQYMBIRAMQQtBhAEhEAxAC0GFASEQDD8LQYYBIRAMPgtBhwEhEAw9C0GIASEQDDwLQYkBIRAMOwtBigEhEAw6C0GLASEQDDkLQYwBIRAMOAtBjQEhEAw3C0GOASEQDDYLQY8BIRAMNQtBkAEhEAw0C0GRASEQDDMLQZIBIRAMMgtBkwEhEAwxC0GUASEQDDALQZUBIRAMLwtBlgEhEAwuC0GXASEQDC0LQZgBIRAMLAtBmQEhEAwrC0GaASEQDCoLQZsBIRAMKQtBnAEhEAwoC0GdASEQDCcLQZ4BIRAMJgtBnwEhEAwlC0GgASEQDCQLQaEBIRAMIwtBogEhEAwiC0GjASEQDCELQaQBIRAMIAtBpQEhEAwfC0GmASEQDB4LQacBIRAMHQtBqAEhEAwcC0GpASEQDBsLQaoBIRAMGgtBqwEhEAwZC0GsASEQDBgLQa0BIRAMFwtBrgEhEAwWC0EBIRAMFQtBrwEhEAwUC0GwASEQDBMLQbEBIRAMEgtBswEhEAwRC0GyASEQDBALQbQBIRAMDwtBtQEhEAwOC0G2ASEQDA0LQbcBIRAMDAtBuAEhEAwLC0G5ASEQDAoLQboBIRAMCQtBuwEhEAwIC0HGASEQDAcLQbwBIRAMBgtBvQEhEAwFC0G+ASEQDAQLQb8BIRAMAwtBwAEhEAwCC0HCASEQDAELQcEBIRALA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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FCAAIBA2AgxBACEQDLIBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxNCyAAQdMANgIcIAAgATYCFCAAIBA2AgxBACEQDLEBCyAAKAIEIRAgAEEANgIEAkAgACAQIAEQp4CAgAAiEA0AIAEhAQxRCyAAQeUANgIcIAAgATYCFCAAIBA2AgxBACEQDLABCyAAQQA2AhwgACABNgIUIABBxoqAgAA2AhAgAEEHNgIMQQAhEAyvAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHSADYCHCAAIAE2AhQgACAQNgIMQQAhEAyuAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMSQsgAEHTADYCHCAAIAE2AhQgACAQNgIMQQAhEAytAQsgACgCBCEQIABBADYCBAJAIAAgECABEKeAgIAAIhANACABIQEMTQsgAEHlADYCHCAAIAE2AhQgACAQNgIMQQAhEAysAQsgAEEANgIcIAAgATYCFCAAQdyIgIAANgIQIABBBzYCDEEAIRAMqwELIBBBP0cNASABQQFqIQELQQUhEAyQAQtBACEQIABBADYCHCAAIAE2AhQgAEH9koCAADYCECAAQQc2AgwMqAELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0gA2AhwgACABNgIUIAAgEDYCDEEAIRAMpwELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEILIABB0wA2AhwgACABNgIUIAAgEDYCDEEAIRAMpgELIAAoAgQhECAAQQA2AgQCQCAAIBAgARCngICAACIQDQAgASEBDEYLIABB5QA2AhwgACABNgIUIAAgEDYCDEEAIRAMpQELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0gA2AhwgACAUNgIUIAAgATYCDEEAIRAMpAELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDD8LIABB0wA2AhwgACAUNgIUIAAgATYCDEEAIRAMowELIAAoAgQhASAAQQA2AgQCQCAAIAEgFBCngICAACIBDQAgFCEBDEMLIABB5QA2AhwgACAU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YWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWVzc2FnZV9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX21ldGhvZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lYCBjYWxsYmFjayBlcnJvcgBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNlcnZlcgBJbnZhbGlkIGhlYWRlciB2YWx1ZSBjaGFyAEludmFsaWQgaGVhZGVyIGZpZWxkIGNoYXIAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl92ZXJzaW9uAEludmFsaWQgbWlub3IgdmVyc2lvbgBJbnZhbGlkIG1ham9yIHZlcnNpb24ARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgdmVyc2lvbgBFeHBlY3RlZCBDUkxGIGFmdGVyIHZlcnNpb24ASW52YWxpZCBIVFRQIHZlcnNpb24ASW52YWxpZCBoZWFkZXIgdG9rZW4AU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl91cmwASW52YWxpZCBjaGFyYWN0ZXJzIGluIHVybABVbmV4cGVjdGVkIHN0YXJ0IGNoYXIgaW4gdXJsAERvdWJsZSBAIGluIHVybABFbXB0eSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXJhY3RlciBpbiBDb250ZW50LUxlbmd0aABEdXBsaWNhdGUgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyIGluIHVybCBwYXRoAENvbnRlbnQtTGVuZ3RoIGNhbid0IGJlIHByZXNlbnQgd2l0aCBUcmFuc2Zlci1FbmNvZGluZwBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBzaXplAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX3ZhbHVlAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgdmFsdWUATWlzc2luZyBleHBlY3RlZCBMRiBhZnRlciBoZWFkZXIgdmFsdWUASW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIHF1b3RlIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fbmFtZQBJbnZhbGlkIGNoYXJhY3RlciBpbiBjaHVuayBleHRlbnNpb25zIG5hbWUAUGF1c2Ugb24gQ09OTkVDVC9VcGdyYWRlAFBhdXNlIG9uIFBSSS9VcGdyYWRlAEV4cGVjdGVkIEhUVFAvMiBDb25uZWN0aW9uIFByZWZhY2UAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9tZXRob2QARXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgbWV0aG9kAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25faGVhZGVyX2ZpZWxkAFBhdXNlZABJbnZhbGlkIHdvcmQgZW5jb3VudGVyZWQASW52YWxpZCBtZXRob2QgZW5jb3VudGVyZWQAVW5leHBlY3RlZCBjaGFyIGluIHVybCBzY2hlbWEAUmVxdWVzdCBoYXMgaW52YWxpZCBgVHJhbnNmZXItRW5jb2RpbmdgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX0NIVU5LX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX05BTUVfQ09NUExFVEUASFBFX0NCX01FU1NBR0VfQ09NUExFVEUASFBFX0NCX01FVEhPRF9DT01QTEVURQBIUEVfQ0JfSEVBREVSX0ZJRUxEX0NPTVBMRVRFAERFTEVURQBIUEVfSU5WQUxJRF9FT0ZfU1RBVEUASU5WQUxJRF9TU0xfQ0VSVElGSUNBVEUAUEFVU0UATk9fUkVTUE9OU0UAVU5TVVBQT1JURURfTUVESUFfVFlQRQBHT05FAE5PVF9BQ0NFUFRBQkxFAFNFUlZJQ0VfVU5BVkFJTEFCTEUAUkFOR0VfTk9UX1NBVElTRklBQkxFAE9SSUdJTl9JU19VTlJFQUNIQUJMRQBSRVNQT05TRV9JU19TVEFMRQBQVVJHRQBNRVJHRQBSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFAFJFUVVFU1RfSEVBREVSX1RPT19MQVJHRQBQQVlMT0FEX1RPT19MQVJHRQBJTlNVRkZJQ0lFTlRfU1RPUkFHRQBIUEVfUEFVU0VEX1VQR1JBREUASFBFX1BBVVNFRF9IMl9VUEdSQURFAFNPVVJDRQBBTk5PVU5DRQBUUkFDRQBIUEVfVU5FWFBFQ1RFRF9TUEFDRQBERVNDUklCRQBVTlNVQlNDUklCRQBSRUNPUkQASFBFX0lOVkFMSURfTUVUSE9EAE5PVF9GT1VORABQUk9QRklORABVTkJJTkQAUkVCSU5EAFVOQVVUSE9SSVpFRABNRVRIT0RfTk9UX0FMTE9XRUQASFRUUF9WRVJTSU9OX05PVF9TVVBQT1JURUQAQUxSRUFEWV9SRVBPUlRFRABBQ0NFUFRFRABOT1RfSU1QTEVNRU5URUQATE9PUF9ERVRFQ1RFRABIUEVfQ1JfRVhQRUNURUQASFBFX0xGX0VYUEVDVEVEAENSRUFURUQASU1fVVNFRABIUEVfUEFVU0VEAFRJTUVPVVRfT0NDVVJFRABQQVlNRU5UX1JFUVVJUkVEAFBSRUNPTkRJVElPTl9SRVFVSVJFRABQUk9YWV9BVVRIRU5USUNBVElPTl9SRVFVSVJFRABORVRXT1JLX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAExFTkdUSF9SRVFVSVJFRABTU0xfQ0VSVElGSUNBVEVfUkVRVUlSRUQAVVBHUkFERV9SRVFVSVJFRABQQUdFX0VYUElSRUQAUFJFQ09ORElUSU9OX0ZBSUxFRABFWFBFQ1RBVElPTl9GQUlMRUQAUkVWQUxJREFUSU9OX0ZBSUxFRABTU0xfSEFORFNIQUtFX0ZBSUxFRABMT0NLRUQAVFJBTlNGT1JNQVRJT05fQVBQTElFRABOT1RfTU9ESUZJRUQATk9UX0VYVEVOREVEAEJBTkRXSURUSF9MSU1JVF9FWENFRURFRABTSVRFX0lTX09WRVJMT0FERUQASEVBRABFeHBlY3RlZCBIVFRQLwAAXhMAACYTAAAwEAAA8BcAAJ0TAAAVEgAAORcAAPASAAAKEAAAdRIAAK0SAACCEwAATxQAAH8QAACgFQAAIxQAAIkSAACLFAAATRUAANQRAADPFAAAEBgAAMkWAADcFgAAwREAAOAXAAC7FAAAdBQAAHwVAADlFAAACBcAAB8QAABlFQAAoxQAACgVAAACFQAAmRUAACwQAACLGQAATw8AANQOAABqEAAAzhAAAAIXAACJDgAAbhMAABwTAABmFAAAVhcAAMETAADNEwAAbBMAAGgXAABmFwAAXxcAACITAADODwAAaQ4AANgOAABjFgAAyxMAAKoOAAAoFwAAJhcAAMUTAABdFgAA6BEAAGcTAABlEwAA8hYAAHMTAAAdFwAA+RYAAPMRAADPDgAAzhUAAAwSAACzEQAApREAAGEQAAAyFwAAuxMAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIDAgICAgIAAAICAAICAAICAgICAgICAgIABAAAAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAACAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbG9zZWVlcC1hbGl2ZQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEAAAEBAAEBAAEBAQEBAQEBAQEAAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AAAAAAAAAAAAAAAAAAAByYW5zZmVyLWVuY29kaW5ncGdyYWRlDQoNCg0KU00NCg0KVFRQL0NFL1RTUC8AAAAAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQIAAQMAAAAAAAAAAAAAAAAAAAAAAAAEAQEFAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAQAAAgAAAAAAAAAAAAAAAAAAAAAAAAMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAIAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABOT1VOQ0VFQ0tPVVRORUNURVRFQ1JJQkVMVVNIRVRFQURTRUFSQ0hSR0VDVElWSVRZTEVOREFSVkVPVElGWVBUSU9OU0NIU0VBWVNUQVRDSEdFT1JESVJFQ1RPUlRSQ0hQQVJBTUVURVJVUkNFQlNDUklCRUFSRE9XTkFDRUlORE5LQ0tVQlNDUklCRUhUVFAvQURUUC8="; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js -var require_llhttp_simd_wasm = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/llhttp/llhttp_simd-wasm.js"(exports2, module2) { - module2.exports = "AGFzbQEAAAABMAhgAX8Bf2ADf39/AX9gBH9/f38Bf2AAAGADf39/AGABfwBgAn9/AGAGf39/f39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQACA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAA0ZFAwMEAAAFAAAAAAAABQEFAAUFBQAABgAAAAAGBgYGAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAAABAQcAAAUFAwABBAUBcAESEgUDAQACBggBfwFBgNQECwfRBSIGbWVtb3J5AgALX2luaXRpYWxpemUACRlfX2luZGlyZWN0X2Z1bmN0aW9uX3RhYmxlAQALbGxodHRwX2luaXQAChhsbGh0dHBfc2hvdWxkX2tlZXBfYWxpdmUAQQxsbGh0dHBfYWxsb2MADAZtYWxsb2MARgtsbGh0dHBfZnJlZQANBGZyZWUASA9sbGh0dHBfZ2V0X3R5cGUADhVsbGh0dHBfZ2V0X2h0dHBfbWFqb3IADxVsbGh0dHBfZ2V0X2h0dHBfbWlub3IAEBFsbGh0dHBfZ2V0X21ldGhvZAARFmxsaHR0cF9nZXRfc3RhdHVzX2NvZGUAEhJsbGh0dHBfZ2V0X3VwZ3JhZGUAEwxsbGh0dHBfcmVzZXQAFA5sbGh0dHBfZXhlY3V0ZQAVFGxsaHR0cF9zZXR0aW5nc19pbml0ABYNbGxodHRwX2ZpbmlzaAAXDGxsaHR0cF9wYXVzZQAYDWxsaHR0cF9yZXN1bWUAGRtsbGh0dHBfcmVzdW1lX2FmdGVyX3VwZ3JhZGUAGhBsbGh0dHBfZ2V0X2Vycm5vABsXbGxodHRwX2dldF9lcnJvcl9yZWFzb24AHBdsbGh0dHBfc2V0X2Vycm9yX3JlYXNvbgAdFGxsaHR0cF9nZXRfZXJyb3JfcG9zAB4RbGxodHRwX2Vycm5vX25hbWUAHxJsbGh0dHBfbWV0aG9kX25hbWUAIBJs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IAH9CwMAIABBMGogAf0LAwAgAEEgaiAB/QsDACAAQd0BNgIcQQALewEBfwJAIAAoAgwiAw0AAkAgACgCBEUNACAAIAE2AgQLAkAgACABIAIQxICAgAAiAw0AIAAoAgwPCyAAIAM2AhxBACEDIAAoAgQiAUUNACAAIAEgAiAAKAIIEYGAgIAAACIBRQ0AIAAgAjYCFCAAIAE2AgwgASEDCyADC+TzAQMOfwN+BH8jgICAgABBEGsiAySAgICAACABIQQgASEFIAEhBiABIQcgASEIIAEhCSABIQogASELIAEhDCABIQ0gASEOIAEhDwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIcIhBBf2oO3QHaAQHZAQIDBAUGBwgJCgsMDQ7YAQ8Q1wEREtYBExQVFhcYGRob4AHfARwdHtUBHyAhIiMkJdQBJicoKSorLNMB0gEtLtEB0AEvMDEyMzQ1Njc4OTo7PD0+P0BBQkNERUbbAUdISUrPAc4BS80BTMwBTU5PUFFSU1RVVldYWVpbXF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gAGBAYIBgwGEAYUBhgGHAYgBiQGKAYsBjAGNAY4BjwGQAZEB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QAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIBAOxwEAAQID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YWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAIAAgICAgIAAAICAAICAAICAgICAgICAgIAAwAEAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgIAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgACAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABsb3NlZWVwLWFsaXZlAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQEBAQEBAgEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFjaHVua2VkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGVjdGlvbmVudC1sZW5ndGhvbnJveHktY29ubmVjdGlvbgAAAAAAAAAAAAAAAAAAAHJhbnNmZXItZW5jb2RpbmdwZ3JhZGUNCg0KDQpTTQ0KDQpUVFAvQ0UvVFNQLwAAAAAAAAAAAAAAAAECAAEDAAAAAAAAAAAAAAAAAAAAAAAABAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAgABAwAAAAAAAAAAAAAAAAAAAAAAAAQBAQUBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAAAAAAAABAAACAAAAAAAAAAAAAAAAAAAAAAAAAwQAAAQEBAQEBAQEBAQEBQQEBAQEBAQEBAQEBAAEAAYHBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQABAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAQAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAgAAAAACAAAAAAAAAAAAAAAAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw=="; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/client.js -var require_client = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/client.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var net = require("net"); - var http = require("http"); - var { pipeline } = require("stream"); - var util2 = require_util(); - var timers = require_timers(); - var Request = require_request(); - var DispatcherBase = require_dispatcher_base(); - var { - RequestContentLengthMismatchError, - ResponseContentLengthMismatchError, - InvalidArgumentError, - RequestAbortedError, - HeadersTimeoutError, - HeadersOverflowError, - SocketError, - InformationalError, - BodyTimeoutError, - HTTPParserError, - ResponseExceededMaxSizeError, - ClientDestroyedError - } = require_errors(); - var buildConnector = require_connect(); - var { - kUrl, - kReset, - kServerName, - kClient, - kBusy, - kParser, - kConnect, - kBlocking, - kResuming, - kRunning, - kPending, - kSize, - kWriting, - kQueue, - kConnected, - kConnecting, - kNeedDrain, - kNoRef, - kKeepAliveDefaultTimeout, - kHostHeader, - kPendingIdx, - kRunningIdx, - kError, - kPipelining, - kSocket, - kKeepAliveTimeoutValue, - kMaxHeadersSize, - kKeepAliveMaxTimeout, - kKeepAliveTimeoutThreshold, - kHeadersTimeout, - kBodyTimeout, - kStrictContentLength, - kConnector, - kMaxRedirections, - kMaxRequests, - kCounter, - kClose, - kDestroy, - kDispatch, - kInterceptors, - kLocalAddress, - kMaxResponseSize, - kHTTPConnVersion, - // HTTP2 - kHost, - kHTTP2Session, - kHTTP2SessionState, - kHTTP2BuildRequest, - kHTTP2CopyHeaders, - kHTTP1BuildRequest - } = require_symbols(); - var http2; - try { - http2 = require("http2"); - } catch { - http2 = { constants: {} }; - } - var { - constants: { - HTTP2_HEADER_AUTHORITY, - HTTP2_HEADER_METHOD, - HTTP2_HEADER_PATH, - HTTP2_HEADER_SCHEME, - HTTP2_HEADER_CONTENT_LENGTH, - HTTP2_HEADER_EXPECT, - HTTP2_HEADER_STATUS - } - } = http2; - var h2ExperimentalWarned = false; - var FastBuffer = Buffer[Symbol.species]; - var kClosedResolve = Symbol("kClosedResolve"); - var channels = {}; - try { - const diagnosticsChannel = require("diagnostics_channel"); - channels.sendHeaders = diagnosticsChannel.channel("undici:client:sendHeaders"); - channels.beforeConnect = diagnosticsChannel.channel("undici:client:beforeConnect"); - channels.connectError = diagnosticsChannel.channel("undici:client:connectError"); - channels.connected = diagnosticsChannel.channel("undici:client:connected"); - } catch { - channels.sendHeaders = { hasSubscribers: false }; - channels.beforeConnect = { hasSubscribers: false }; - channels.connectError = { hasSubscribers: false }; - channels.connected = { hasSubscribers: false }; - } - var Client = class extends DispatcherBase { - /** - * - * @param {string|URL} url - * @param {import('../types/client').Client.Options} options - */ - constructor(url, { - interceptors, - maxHeaderSize, - headersTimeout, - socketTimeout, - requestTimeout, - connectTimeout, - bodyTimeout, - idleTimeout, - keepAlive, - keepAliveTimeout, - maxKeepAliveTimeout, - keepAliveMaxTimeout, - keepAliveTimeoutThreshold, - socketPath, - pipelining, - tls, - strictContentLength, - maxCachedSessions, - maxRedirections, - connect: connect2, - maxRequestsPerClient, - localAddress, - maxResponseSize, - autoSelectFamily, - autoSelectFamilyAttemptTimeout, - // h2 - allowH2, - maxConcurrentStreams - } = {}) { - super(); - if (keepAlive !== void 0) { - throw new InvalidArgumentError("unsupported keepAlive, use pipelining=0 instead"); - } - if (socketTimeout !== void 0) { - throw new InvalidArgumentError("unsupported socketTimeout, use headersTimeout & bodyTimeout instead"); - } - if (requestTimeout !== void 0) { - throw new InvalidArgumentError("unsupported requestTimeout, use headersTimeout & bodyTimeout instead"); - } - if (idleTimeout !== void 0) { - throw new InvalidArgumentError("unsupported idleTimeout, use keepAliveTimeout instead"); - } - if (maxKeepAliveTimeout !== void 0) { - throw new InvalidArgumentError("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead"); - } - if (maxHeaderSize != null && !Number.isFinite(maxHeaderSize)) { - throw new InvalidArgumentError("invalid maxHeaderSize"); - } - if (socketPath != null && typeof socketPath !== "string") { - throw new InvalidArgumentError("invalid socketPath"); - } - if (connectTimeout != null && (!Number.isFinite(connectTimeout) || connectTimeout < 0)) { - throw new InvalidArgumentError("invalid connectTimeout"); - } - if (keepAliveTimeout != null && (!Number.isFinite(keepAliveTimeout) || keepAliveTimeout <= 0)) { - throw new InvalidArgumentError("invalid keepAliveTimeout"); - } - if (keepAliveMaxTimeout != null && (!Number.isFinite(keepAliveMaxTimeout) || keepAliveMaxTimeout <= 0)) { - throw new InvalidArgumentError("invalid keepAliveMaxTimeout"); - } - if (keepAliveTimeoutThreshold != null && !Number.isFinite(keepAliveTimeoutThreshold)) { - throw new InvalidArgumentError("invalid keepAliveTimeoutThreshold"); - } - if (headersTimeout != null && (!Number.isInteger(headersTimeout) || headersTimeout < 0)) { - throw new InvalidArgumentError("headersTimeout must be a positive integer or zero"); - } - if (bodyTimeout != null && (!Number.isInteger(bodyTimeout) || bodyTimeout < 0)) { - throw new InvalidArgumentError("bodyTimeout must be a positive integer or zero"); - } - if (connect2 != null && typeof connect2 !== "function" && typeof connect2 !== "object") { - throw new InvalidArgumentError("connect must be a function or an object"); - } - if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) { - throw new InvalidArgumentError("maxRedirections must be a positive number"); - } - if (maxRequestsPerClient != null && (!Number.isInteger(maxRequestsPerClient) || maxRequestsPerClient < 0)) { - throw new InvalidArgumentError("maxRequestsPerClient must be a positive number"); - } - if (localAddress != null && (typeof localAddress !== "string" || net.isIP(localAddress) === 0)) { - throw new InvalidArgumentError("localAddress must be valid string IP address"); - } - if (maxResponseSize != null && (!Number.isInteger(maxResponseSize) || maxResponseSize < -1)) { - throw new InvalidArgumentError("maxResponseSize must be a positive number"); - } - if (autoSelectFamilyAttemptTimeout != null && (!Number.isInteger(autoSelectFamilyAttemptTimeout) || autoSelectFamilyAttemptTimeout < -1)) { - throw new InvalidArgumentError("autoSelectFamilyAttemptTimeout must be a positive number"); - } - if (allowH2 != null && typeof allowH2 !== "boolean") { - throw new InvalidArgumentError("allowH2 must be a valid boolean value"); - } - if (maxConcurrentStreams != null && (typeof maxConcurrentStreams !== "number" || maxConcurrentStreams < 1)) { - throw new InvalidArgumentError("maxConcurrentStreams must be a possitive integer, greater than 0"); - } - if (typeof connect2 !== "function") { - connect2 = buildConnector({ - ...tls, - maxCachedSessions, - allowH2, - socketPath, - timeout: connectTimeout, - ...util2.nodeHasAutoSelectFamily && autoSelectFamily ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0, - ...connect2 - }); - } - this[kInterceptors] = interceptors && interceptors.Client && Array.isArray(interceptors.Client) ? interceptors.Client : [createRedirectInterceptor({ maxRedirections })]; - this[kUrl] = util2.parseOrigin(url); - this[kConnector] = connect2; - this[kSocket] = null; - this[kPipelining] = pipelining != null ? pipelining : 1; - this[kMaxHeadersSize] = maxHeaderSize || http.maxHeaderSize; - this[kKeepAliveDefaultTimeout] = keepAliveTimeout == null ? 4e3 : keepAliveTimeout; - this[kKeepAliveMaxTimeout] = keepAliveMaxTimeout == null ? 6e5 : keepAliveMaxTimeout; - this[kKeepAliveTimeoutThreshold] = keepAliveTimeoutThreshold == null ? 1e3 : keepAliveTimeoutThreshold; - this[kKeepAliveTimeoutValue] = this[kKeepAliveDefaultTimeout]; - this[kServerName] = null; - this[kLocalAddress] = localAddress != null ? localAddress : null; - this[kResuming] = 0; - this[kNeedDrain] = 0; - this[kHostHeader] = `host: ${this[kUrl].hostname}${this[kUrl].port ? `:${this[kUrl].port}` : ""}\r -`; - this[kBodyTimeout] = bodyTimeout != null ? bodyTimeout : 3e5; - this[kHeadersTimeout] = headersTimeout != null ? headersTimeout : 3e5; - this[kStrictContentLength] = strictContentLength == null ? true : strictContentLength; - this[kMaxRedirections] = maxRedirections; - this[kMaxRequests] = maxRequestsPerClient; - this[kClosedResolve] = null; - this[kMaxResponseSize] = maxResponseSize > -1 ? maxResponseSize : -1; - this[kHTTPConnVersion] = "h1"; - this[kHTTP2Session] = null; - this[kHTTP2SessionState] = !allowH2 ? null : { - // streams: null, // Fixed queue of streams - For future support of `push` - openStreams: 0, - // Keep track of them to decide wether or not unref the session - maxConcurrentStreams: maxConcurrentStreams != null ? maxConcurrentStreams : 100 - // Max peerConcurrentStreams for a Node h2 server - }; - this[kHost] = `${this[kUrl].hostname}${this[kUrl].port ? `:${this[kUrl].port}` : ""}`; - this[kQueue] = []; - this[kRunningIdx] = 0; - this[kPendingIdx] = 0; - } - get pipelining() { - return this[kPipelining]; - } - set pipelining(value) { - this[kPipelining] = value; - resume(this, true); - } - get [kPending]() { - return this[kQueue].length - this[kPendingIdx]; - } - get [kRunning]() { - return this[kPendingIdx] - this[kRunningIdx]; - } - get [kSize]() { - return this[kQueue].length - this[kRunningIdx]; - } - get [kConnected]() { - return !!this[kSocket] && !this[kConnecting] && !this[kSocket].destroyed; - } - get [kBusy]() { - const socket = this[kSocket]; - return socket && (socket[kReset] || socket[kWriting] || socket[kBlocking]) || this[kSize] >= (this[kPipelining] || 1) || this[kPending] > 0; - } - /* istanbul ignore: only used for test */ - [kConnect](cb) { - connect(this); - this.once("connect", cb); - } - [kDispatch](opts, handler) { - const origin = opts.origin || this[kUrl].origin; - const request = this[kHTTPConnVersion] === "h2" ? Request[kHTTP2BuildRequest](origin, opts, handler) : Request[kHTTP1BuildRequest](origin, opts, handler); - this[kQueue].push(request); - if (this[kResuming]) { - } else if (util2.bodyLength(request.body) == null && util2.isIterable(request.body)) { - this[kResuming] = 1; - process.nextTick(resume, this); - } else { - resume(this, true); - } - if (this[kResuming] && this[kNeedDrain] !== 2 && this[kBusy]) { - this[kNeedDrain] = 2; - } - return this[kNeedDrain] < 2; - } - async [kClose]() { - return new Promise((resolve) => { - if (!this[kSize]) { - resolve(null); - } else { - this[kClosedResolve] = resolve; - } - }); - } - async [kDestroy](err) { - return new Promise((resolve) => { - const requests = this[kQueue].splice(this[kPendingIdx]); - for (let i = 0; i < requests.length; i++) { - const request = requests[i]; - errorRequest(this, request, err); - } - const callback = () => { - if (this[kClosedResolve]) { - this[kClosedResolve](); - this[kClosedResolve] = null; - } - resolve(); - }; - if (this[kHTTP2Session] != null) { - util2.destroy(this[kHTTP2Session], err); - this[kHTTP2Session] = null; - this[kHTTP2SessionState] = null; - } - if (!this[kSocket]) { - queueMicrotask(callback); - } else { - util2.destroy(this[kSocket].on("close", callback), err); - } - resume(this); - }); - } - }; - function onHttp2SessionError(err) { - assert(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID"); - this[kSocket][kError] = err; - onError(this[kClient], err); - } - function onHttp2FrameError(type, code, id) { - const err = new InformationalError(`HTTP/2: "frameError" received - type ${type}, code ${code}`); - if (id === 0) { - this[kSocket][kError] = err; - onError(this[kClient], err); - } - } - function onHttp2SessionEnd() { - util2.destroy(this, new SocketError("other side closed")); - util2.destroy(this[kSocket], new SocketError("other side closed")); - } - function onHTTP2GoAway(code) { - const client = this[kClient]; - const err = new InformationalError(`HTTP/2: "GOAWAY" frame received with code ${code}`); - client[kSocket] = null; - client[kHTTP2Session] = null; - if (client.destroyed) { - assert(this[kPending] === 0); - const requests = client[kQueue].splice(client[kRunningIdx]); - for (let i = 0; i < requests.length; i++) { - const request = requests[i]; - errorRequest(this, request, err); - } - } else if (client[kRunning] > 0) { - const request = client[kQueue][client[kRunningIdx]]; - client[kQueue][client[kRunningIdx]++] = null; - errorRequest(client, request, err); - } - client[kPendingIdx] = client[kRunningIdx]; - assert(client[kRunning] === 0); - client.emit( - "disconnect", - client[kUrl], - [client], - err - ); - resume(client); - } - var constants = require_constants3(); - var createRedirectInterceptor = require_redirectInterceptor(); - var EMPTY_BUF = Buffer.alloc(0); - async function lazyllhttp() { - const llhttpWasmData = process.env.JEST_WORKER_ID ? require_llhttp_wasm() : void 0; - let mod; - try { - mod = await WebAssembly.compile(Buffer.from(require_llhttp_simd_wasm(), "base64")); - } catch (e) { - mod = await WebAssembly.compile(Buffer.from(llhttpWasmData || require_llhttp_wasm(), "base64")); - } - return await WebAssembly.instantiate(mod, { - env: { - /* eslint-disable camelcase */ - wasm_on_url: (p, at, len) => { - return 0; - }, - wasm_on_status: (p, at, len) => { - assert.strictEqual(currentParser.ptr, p); - const start = at - currentBufferPtr + currentBufferRef.byteOffset; - return currentParser.onStatus(new FastBuffer(currentBufferRef.buffer, start, len)) || 0; - }, - wasm_on_message_begin: (p) => { - assert.strictEqual(currentParser.ptr, p); - return currentParser.onMessageBegin() || 0; - }, - wasm_on_header_field: (p, at, len) => { - assert.strictEqual(currentParser.ptr, p); - const start = at - currentBufferPtr + currentBufferRef.byteOffset; - return currentParser.onHeaderField(new FastBuffer(currentBufferRef.buffer, start, len)) || 0; - }, - wasm_on_header_value: (p, at, len) => { - assert.strictEqual(currentParser.ptr, p); - const start = at - currentBufferPtr + currentBufferRef.byteOffset; - return currentParser.onHeaderValue(new FastBuffer(currentBufferRef.buffer, start, len)) || 0; - }, - wasm_on_headers_complete: (p, statusCode, upgrade, shouldKeepAlive) => { - assert.strictEqual(currentParser.ptr, p); - return currentParser.onHeadersComplete(statusCode, Boolean(upgrade), Boolean(shouldKeepAlive)) || 0; - }, - wasm_on_body: (p, at, len) => { - assert.strictEqual(currentParser.ptr, p); - const start = at - currentBufferPtr + currentBufferRef.byteOffset; - return currentParser.onBody(new FastBuffer(currentBufferRef.buffer, start, len)) || 0; - }, - wasm_on_message_complete: (p) => { - assert.strictEqual(currentParser.ptr, p); - return currentParser.onMessageComplete() || 0; - } - /* eslint-enable camelcase */ - } - }); - } - var llhttpInstance = null; - var llhttpPromise = lazyllhttp(); - llhttpPromise.catch(); - var currentParser = null; - var currentBufferRef = null; - var currentBufferSize = 0; - var currentBufferPtr = null; - var TIMEOUT_HEADERS = 1; - var TIMEOUT_BODY = 2; - var TIMEOUT_IDLE = 3; - var Parser = class { - constructor(client, socket, { exports: exports3 }) { - assert(Number.isFinite(client[kMaxHeadersSize]) && client[kMaxHeadersSize] > 0); - this.llhttp = exports3; - this.ptr = this.llhttp.llhttp_alloc(constants.TYPE.RESPONSE); - this.client = client; - this.socket = socket; - this.timeout = null; - this.timeoutValue = null; - this.timeoutType = null; - this.statusCode = null; - this.statusText = ""; - this.upgrade = false; - this.headers = []; - this.headersSize = 0; - this.headersMaxSize = client[kMaxHeadersSize]; - this.shouldKeepAlive = false; - this.paused = false; - this.resume = this.resume.bind(this); - this.bytesRead = 0; - this.keepAlive = ""; - this.contentLength = ""; - this.connection = ""; - this.maxResponseSize = client[kMaxResponseSize]; - } - setTimeout(value, type) { - this.timeoutType = type; - if (value !== this.timeoutValue) { - timers.clearTimeout(this.timeout); - if (value) { - this.timeout = timers.setTimeout(onParserTimeout, value, this); - if (this.timeout.unref) { - this.timeout.unref(); - } - } else { - this.timeout = null; - } - this.timeoutValue = value; - } else if (this.timeout) { - if (this.timeout.refresh) { - this.timeout.refresh(); - } - } - } - resume() { - if (this.socket.destroyed || !this.paused) { - return; - } - assert(this.ptr != null); - assert(currentParser == null); - this.llhttp.llhttp_resume(this.ptr); - assert(this.timeoutType === TIMEOUT_BODY); - if (this.timeout) { - if (this.timeout.refresh) { - this.timeout.refresh(); - } - } - this.paused = false; - this.execute(this.socket.read() || EMPTY_BUF); - this.readMore(); - } - readMore() { - while (!this.paused && this.ptr) { - const chunk = this.socket.read(); - if (chunk === null) { - break; - } - this.execute(chunk); - } - } - execute(data) { - assert(this.ptr != null); - assert(currentParser == null); - assert(!this.paused); - const { socket, llhttp } = this; - if (data.length > currentBufferSize) { - if (currentBufferPtr) { - llhttp.free(currentBufferPtr); - } - currentBufferSize = Math.ceil(data.length / 4096) * 4096; - currentBufferPtr = llhttp.malloc(currentBufferSize); - } - new Uint8Array(llhttp.memory.buffer, currentBufferPtr, currentBufferSize).set(data); - try { - let ret; - try { - currentBufferRef = data; - currentParser = this; - ret = llhttp.llhttp_execute(this.ptr, currentBufferPtr, data.length); - } catch (err) { - throw err; - } finally { - currentParser = null; - currentBufferRef = null; - } - const offset = llhttp.llhttp_get_error_pos(this.ptr) - currentBufferPtr; - if (ret === constants.ERROR.PAUSED_UPGRADE) { - this.onUpgrade(data.slice(offset)); - } else if (ret === constants.ERROR.PAUSED) { - this.paused = true; - socket.unshift(data.slice(offset)); - } else if (ret !== constants.ERROR.OK) { - const ptr = llhttp.llhttp_get_error_reason(this.ptr); - let message = ""; - if (ptr) { - const len = new Uint8Array(llhttp.memory.buffer, ptr).indexOf(0); - message = "Response does not match the HTTP/1.1 protocol (" + Buffer.from(llhttp.memory.buffer, ptr, len).toString() + ")"; - } - throw new HTTPParserError(message, constants.ERROR[ret], data.slice(offset)); - } - } catch (err) { - util2.destroy(socket, err); - } - } - destroy() { - assert(this.ptr != null); - assert(currentParser == null); - this.llhttp.llhttp_free(this.ptr); - this.ptr = null; - timers.clearTimeout(this.timeout); - this.timeout = null; - this.timeoutValue = null; - this.timeoutType = null; - this.paused = false; - } - onStatus(buf) { - this.statusText = buf.toString(); - } - onMessageBegin() { - const { socket, client } = this; - if (socket.destroyed) { - return -1; - } - const request = client[kQueue][client[kRunningIdx]]; - if (!request) { - return -1; - } - } - onHeaderField(buf) { - const len = this.headers.length; - if ((len & 1) === 0) { - this.headers.push(buf); - } else { - this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf]); - } - this.trackHeader(buf.length); - } - onHeaderValue(buf) { - let len = this.headers.length; - if ((len & 1) === 1) { - this.headers.push(buf); - len += 1; - } else { - this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf]); - } - const key = this.headers[len - 2]; - if (key.length === 10 && key.toString().toLowerCase() === "keep-alive") { - this.keepAlive += buf.toString(); - } else if (key.length === 10 && key.toString().toLowerCase() === "connection") { - this.connection += buf.toString(); - } else if (key.length === 14 && key.toString().toLowerCase() === "content-length") { - this.contentLength += buf.toString(); - } - this.trackHeader(buf.length); - } - trackHeader(len) { - this.headersSize += len; - if (this.headersSize >= this.headersMaxSize) { - util2.destroy(this.socket, new HeadersOverflowError()); - } - } - onUpgrade(head) { - const { upgrade, client, socket, headers, statusCode } = this; - assert(upgrade); - const request = client[kQueue][client[kRunningIdx]]; - assert(request); - assert(!socket.destroyed); - assert(socket === client[kSocket]); - assert(!this.paused); - assert(request.upgrade || request.method === "CONNECT"); - this.statusCode = null; - this.statusText = ""; - this.shouldKeepAlive = null; - assert(this.headers.length % 2 === 0); - this.headers = []; - this.headersSize = 0; - socket.unshift(head); - socket[kParser].destroy(); - socket[kParser] = null; - socket[kClient] = null; - socket[kError] = null; - socket.removeListener("error", onSocketError).removeListener("readable", onSocketReadable).removeListener("end", onSocketEnd).removeListener("close", onSocketClose); - client[kSocket] = null; - client[kQueue][client[kRunningIdx]++] = null; - client.emit("disconnect", client[kUrl], [client], new InformationalError("upgrade")); - try { - request.onUpgrade(statusCode, headers, socket); - } catch (err) { - util2.destroy(socket, err); - } - resume(client); - } - onHeadersComplete(statusCode, upgrade, shouldKeepAlive) { - const { client, socket, headers, statusText } = this; - if (socket.destroyed) { - return -1; - } - const request = client[kQueue][client[kRunningIdx]]; - if (!request) { - return -1; - } - assert(!this.upgrade); - assert(this.statusCode < 200); - if (statusCode === 100) { - util2.destroy(socket, new SocketError("bad response", util2.getSocketInfo(socket))); - return -1; - } - if (upgrade && !request.upgrade) { - util2.destroy(socket, new SocketError("bad upgrade", util2.getSocketInfo(socket))); - return -1; - } - assert.strictEqual(this.timeoutType, TIMEOUT_HEADERS); - this.statusCode = statusCode; - this.shouldKeepAlive = shouldKeepAlive || // Override llhttp value which does not allow keepAlive for HEAD. - request.method === "HEAD" && !socket[kReset] && this.connection.toLowerCase() === "keep-alive"; - if (this.statusCode >= 200) { - const bodyTimeout = request.bodyTimeout != null ? request.bodyTimeout : client[kBodyTimeout]; - this.setTimeout(bodyTimeout, TIMEOUT_BODY); - } else if (this.timeout) { - if (this.timeout.refresh) { - this.timeout.refresh(); - } - } - if (request.method === "CONNECT") { - assert(client[kRunning] === 1); - this.upgrade = true; - return 2; - } - if (upgrade) { - assert(client[kRunning] === 1); - this.upgrade = true; - return 2; - } - assert(this.headers.length % 2 === 0); - this.headers = []; - this.headersSize = 0; - if (this.shouldKeepAlive && client[kPipelining]) { - const keepAliveTimeout = this.keepAlive ? util2.parseKeepAliveTimeout(this.keepAlive) : null; - if (keepAliveTimeout != null) { - const timeout = Math.min( - keepAliveTimeout - client[kKeepAliveTimeoutThreshold], - client[kKeepAliveMaxTimeout] - ); - if (timeout <= 0) { - socket[kReset] = true; - } else { - client[kKeepAliveTimeoutValue] = timeout; - } - } else { - client[kKeepAliveTimeoutValue] = client[kKeepAliveDefaultTimeout]; - } - } else { - socket[kReset] = true; - } - const pause = request.onHeaders(statusCode, headers, this.resume, statusText) === false; - if (request.aborted) { - return -1; - } - if (request.method === "HEAD") { - return 1; - } - if (statusCode < 200) { - return 1; - } - if (socket[kBlocking]) { - socket[kBlocking] = false; - resume(client); - } - return pause ? constants.ERROR.PAUSED : 0; - } - onBody(buf) { - const { client, socket, statusCode, maxResponseSize } = this; - if (socket.destroyed) { - return -1; - } - const request = client[kQueue][client[kRunningIdx]]; - assert(request); - assert.strictEqual(this.timeoutType, TIMEOUT_BODY); - if (this.timeout) { - if (this.timeout.refresh) { - this.timeout.refresh(); - } - } - assert(statusCode >= 200); - if (maxResponseSize > -1 && this.bytesRead + buf.length > maxResponseSize) { - util2.destroy(socket, new ResponseExceededMaxSizeError()); - return -1; - } - this.bytesRead += buf.length; - if (request.onData(buf) === false) { - return constants.ERROR.PAUSED; - } - } - onMessageComplete() { - const { client, socket, statusCode, upgrade, headers, contentLength, bytesRead, shouldKeepAlive } = this; - if (socket.destroyed && (!statusCode || shouldKeepAlive)) { - return -1; - } - if (upgrade) { - return; - } - const request = client[kQueue][client[kRunningIdx]]; - assert(request); - assert(statusCode >= 100); - this.statusCode = null; - this.statusText = ""; - this.bytesRead = 0; - this.contentLength = ""; - this.keepAlive = ""; - this.connection = ""; - assert(this.headers.length % 2 === 0); - this.headers = []; - this.headersSize = 0; - if (statusCode < 200) { - return; - } - if (request.method !== "HEAD" && contentLength && bytesRead !== parseInt(contentLength, 10)) { - util2.destroy(socket, new ResponseContentLengthMismatchError()); - return -1; - } - request.onComplete(headers); - client[kQueue][client[kRunningIdx]++] = null; - if (socket[kWriting]) { - assert.strictEqual(client[kRunning], 0); - util2.destroy(socket, new InformationalError("reset")); - return constants.ERROR.PAUSED; - } else if (!shouldKeepAlive) { - util2.destroy(socket, new InformationalError("reset")); - return constants.ERROR.PAUSED; - } else if (socket[kReset] && client[kRunning] === 0) { - util2.destroy(socket, new InformationalError("reset")); - return constants.ERROR.PAUSED; - } else if (client[kPipelining] === 1) { - setImmediate(resume, client); - } else { - resume(client); - } - } - }; - function onParserTimeout(parser) { - const { socket, timeoutType, client } = parser; - if (timeoutType === TIMEOUT_HEADERS) { - if (!socket[kWriting] || socket.writableNeedDrain || client[kRunning] > 1) { - assert(!parser.paused, "cannot be paused while waiting for headers"); - util2.destroy(socket, new HeadersTimeoutError()); - } - } else if (timeoutType === TIMEOUT_BODY) { - if (!parser.paused) { - util2.destroy(socket, new BodyTimeoutError()); - } - } else if (timeoutType === TIMEOUT_IDLE) { - assert(client[kRunning] === 0 && client[kKeepAliveTimeoutValue]); - util2.destroy(socket, new InformationalError("socket idle timeout")); - } - } - function onSocketReadable() { - const { [kParser]: parser } = this; - if (parser) { - parser.readMore(); - } - } - function onSocketError(err) { - const { [kClient]: client, [kParser]: parser } = this; - assert(err.code !== "ERR_TLS_CERT_ALTNAME_INVALID"); - if (client[kHTTPConnVersion] !== "h2") { - if (err.code === "ECONNRESET" && parser.statusCode && !parser.shouldKeepAlive) { - parser.onMessageComplete(); - return; - } - } - this[kError] = err; - onError(this[kClient], err); - } - function onError(client, err) { - if (client[kRunning] === 0 && err.code !== "UND_ERR_INFO" && err.code !== "UND_ERR_SOCKET") { - assert(client[kPendingIdx] === client[kRunningIdx]); - const requests = client[kQueue].splice(client[kRunningIdx]); - for (let i = 0; i < requests.length; i++) { - const request = requests[i]; - errorRequest(client, request, err); - } - assert(client[kSize] === 0); - } - } - function onSocketEnd() { - const { [kParser]: parser, [kClient]: client } = this; - if (client[kHTTPConnVersion] !== "h2") { - if (parser.statusCode && !parser.shouldKeepAlive) { - parser.onMessageComplete(); - return; - } - } - util2.destroy(this, new SocketError("other side closed", util2.getSocketInfo(this))); - } - function onSocketClose() { - const { [kClient]: client, [kParser]: parser } = this; - if (client[kHTTPConnVersion] === "h1" && parser) { - if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) { - parser.onMessageComplete(); - } - this[kParser].destroy(); - this[kParser] = null; - } - const err = this[kError] || new SocketError("closed", util2.getSocketInfo(this)); - client[kSocket] = null; - if (client.destroyed) { - assert(client[kPending] === 0); - const requests = client[kQueue].splice(client[kRunningIdx]); - for (let i = 0; i < requests.length; i++) { - const request = requests[i]; - errorRequest(client, request, err); - } - } else if (client[kRunning] > 0 && err.code !== "UND_ERR_INFO") { - const request = client[kQueue][client[kRunningIdx]]; - client[kQueue][client[kRunningIdx]++] = null; - errorRequest(client, request, err); - } - client[kPendingIdx] = client[kRunningIdx]; - assert(client[kRunning] === 0); - client.emit("disconnect", client[kUrl], [client], err); - resume(client); - } - async function connect(client) { - assert(!client[kConnecting]); - assert(!client[kSocket]); - let { host, hostname, protocol, port } = client[kUrl]; - if (hostname[0] === "[") { - const idx = hostname.indexOf("]"); - assert(idx !== -1); - const ip = hostname.substring(1, idx); - assert(net.isIP(ip)); - hostname = ip; - } - client[kConnecting] = true; - if (channels.beforeConnect.hasSubscribers) { - channels.beforeConnect.publish({ - connectParams: { - host, - hostname, - protocol, - port, - servername: client[kServerName], - localAddress: client[kLocalAddress] - }, - connector: client[kConnector] - }); - } - try { - const socket = await new Promise((resolve, reject) => { - client[kConnector]({ - host, - hostname, - protocol, - port, - servername: client[kServerName], - localAddress: client[kLocalAddress] - }, (err, socket2) => { - if (err) { - reject(err); - } else { - resolve(socket2); - } - }); - }); - if (client.destroyed) { - util2.destroy(socket.on("error", () => { - }), new ClientDestroyedError()); - return; - } - client[kConnecting] = false; - assert(socket); - const isH2 = socket.alpnProtocol === "h2"; - if (isH2) { - if (!h2ExperimentalWarned) { - h2ExperimentalWarned = true; - process.emitWarning("H2 support is experimental, expect them to change at any time.", { - code: "UNDICI-H2" - }); - } - const session = http2.connect(client[kUrl], { - createConnection: () => socket, - peerMaxConcurrentStreams: client[kHTTP2SessionState].maxConcurrentStreams - }); - client[kHTTPConnVersion] = "h2"; - session[kClient] = client; - session[kSocket] = socket; - session.on("error", onHttp2SessionError); - session.on("frameError", onHttp2FrameError); - session.on("end", onHttp2SessionEnd); - session.on("goaway", onHTTP2GoAway); - session.on("close", onSocketClose); - session.unref(); - client[kHTTP2Session] = session; - socket[kHTTP2Session] = session; - } else { - if (!llhttpInstance) { - llhttpInstance = await llhttpPromise; - llhttpPromise = null; - } - socket[kNoRef] = false; - socket[kWriting] = false; - socket[kReset] = false; - socket[kBlocking] = false; - socket[kParser] = new Parser(client, socket, llhttpInstance); - } - socket[kCounter] = 0; - socket[kMaxRequests] = client[kMaxRequests]; - socket[kClient] = client; - socket[kError] = null; - socket.on("error", onSocketError).on("readable", onSocketReadable).on("end", onSocketEnd).on("close", onSocketClose); - client[kSocket] = socket; - if (channels.connected.hasSubscribers) { - channels.connected.publish({ - connectParams: { - host, - hostname, - protocol, - port, - servername: client[kServerName], - localAddress: client[kLocalAddress] - }, - connector: client[kConnector], - socket - }); - } - client.emit("connect", client[kUrl], [client]); - } catch (err) { - if (client.destroyed) { - return; - } - client[kConnecting] = false; - if (channels.connectError.hasSubscribers) { - channels.connectError.publish({ - connectParams: { - host, - hostname, - protocol, - port, - servername: client[kServerName], - localAddress: client[kLocalAddress] - }, - connector: client[kConnector], - error: err - }); - } - if (err.code === "ERR_TLS_CERT_ALTNAME_INVALID") { - assert(client[kRunning] === 0); - while (client[kPending] > 0 && client[kQueue][client[kPendingIdx]].servername === client[kServerName]) { - const request = client[kQueue][client[kPendingIdx]++]; - errorRequest(client, request, err); - } - } else { - onError(client, err); - } - client.emit("connectionError", client[kUrl], [client], err); - } - resume(client); - } - function emitDrain(client) { - client[kNeedDrain] = 0; - client.emit("drain", client[kUrl], [client]); - } - function resume(client, sync) { - if (client[kResuming] === 2) { - return; - } - client[kResuming] = 2; - _resume(client, sync); - client[kResuming] = 0; - if (client[kRunningIdx] > 256) { - client[kQueue].splice(0, client[kRunningIdx]); - client[kPendingIdx] -= client[kRunningIdx]; - client[kRunningIdx] = 0; - } - } - function _resume(client, sync) { - while (true) { - if (client.destroyed) { - assert(client[kPending] === 0); - return; - } - if (client[kClosedResolve] && !client[kSize]) { - client[kClosedResolve](); - client[kClosedResolve] = null; - return; - } - const socket = client[kSocket]; - if (socket && !socket.destroyed && socket.alpnProtocol !== "h2") { - if (client[kSize] === 0) { - if (!socket[kNoRef] && socket.unref) { - socket.unref(); - socket[kNoRef] = true; - } - } else if (socket[kNoRef] && socket.ref) { - socket.ref(); - socket[kNoRef] = false; - } - if (client[kSize] === 0) { - if (socket[kParser].timeoutType !== TIMEOUT_IDLE) { - socket[kParser].setTimeout(client[kKeepAliveTimeoutValue], TIMEOUT_IDLE); - } - } else if (client[kRunning] > 0 && socket[kParser].statusCode < 200) { - if (socket[kParser].timeoutType !== TIMEOUT_HEADERS) { - const request2 = client[kQueue][client[kRunningIdx]]; - const headersTimeout = request2.headersTimeout != null ? request2.headersTimeout : client[kHeadersTimeout]; - socket[kParser].setTimeout(headersTimeout, TIMEOUT_HEADERS); - } - } - } - if (client[kBusy]) { - client[kNeedDrain] = 2; - } else if (client[kNeedDrain] === 2) { - if (sync) { - client[kNeedDrain] = 1; - process.nextTick(emitDrain, client); - } else { - emitDrain(client); - } - continue; - } - if (client[kPending] === 0) { - return; - } - if (client[kRunning] >= (client[kPipelining] || 1)) { - return; - } - const request = client[kQueue][client[kPendingIdx]]; - if (client[kUrl].protocol === "https:" && client[kServerName] !== request.servername) { - if (client[kRunning] > 0) { - return; - } - client[kServerName] = request.servername; - if (socket && socket.servername !== request.servername) { - util2.destroy(socket, new InformationalError("servername changed")); - return; - } - } - if (client[kConnecting]) { - return; - } - if (!socket && !client[kHTTP2Session]) { - connect(client); - return; - } - if (socket.destroyed || socket[kWriting] || socket[kReset] || socket[kBlocking]) { - return; - } - if (client[kRunning] > 0 && !request.idempotent) { - return; - } - if (client[kRunning] > 0 && (request.upgrade || request.method === "CONNECT")) { - return; - } - if (client[kRunning] > 0 && util2.bodyLength(request.body) !== 0 && (util2.isStream(request.body) || util2.isAsyncIterable(request.body))) { - return; - } - if (!request.aborted && write(client, request)) { - client[kPendingIdx]++; - } else { - client[kQueue].splice(client[kPendingIdx], 1); - } - } - } - function shouldSendContentLength(method) { - return method !== "GET" && method !== "HEAD" && method !== "OPTIONS" && method !== "TRACE" && method !== "CONNECT"; - } - function write(client, request) { - if (client[kHTTPConnVersion] === "h2") { - writeH2(client, client[kHTTP2Session], request); - return; - } - const { body, method, path: path2, host, upgrade, headers, blocking, reset } = request; - const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH"; - if (body && typeof body.read === "function") { - body.read(0); - } - const bodyLength = util2.bodyLength(body); - let contentLength = bodyLength; - if (contentLength === null) { - contentLength = request.contentLength; - } - if (contentLength === 0 && !expectsPayload) { - contentLength = null; - } - if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength !== null && request.contentLength !== contentLength) { - if (client[kStrictContentLength]) { - errorRequest(client, request, new RequestContentLengthMismatchError()); - return false; - } - process.emitWarning(new RequestContentLengthMismatchError()); - } - const socket = client[kSocket]; - try { - request.onConnect((err) => { - if (request.aborted || request.completed) { - return; - } - errorRequest(client, request, err || new RequestAbortedError()); - util2.destroy(socket, new InformationalError("aborted")); - }); - } catch (err) { - errorRequest(client, request, err); - } - if (request.aborted) { - return false; - } - if (method === "HEAD") { - socket[kReset] = true; - } - if (upgrade || method === "CONNECT") { - socket[kReset] = true; - } - if (reset != null) { - socket[kReset] = reset; - } - if (client[kMaxRequests] && socket[kCounter]++ >= client[kMaxRequests]) { - socket[kReset] = true; - } - if (blocking) { - socket[kBlocking] = true; - } - let header = `${method} ${path2} HTTP/1.1\r -`; - if (typeof host === "string") { - header += `host: ${host}\r -`; - } else { - header += client[kHostHeader]; - } - if (upgrade) { - header += `connection: upgrade\r -upgrade: ${upgrade}\r -`; - } else if (client[kPipelining] && !socket[kReset]) { - header += "connection: keep-alive\r\n"; - } else { - header += "connection: close\r\n"; - } - if (headers) { - header += headers; - } - if (channels.sendHeaders.hasSubscribers) { - channels.sendHeaders.publish({ request, headers: header, socket }); - } - if (!body || bodyLength === 0) { - if (contentLength === 0) { - socket.write(`${header}content-length: 0\r -\r -`, "latin1"); - } else { - assert(contentLength === null, "no body must not have content length"); - socket.write(`${header}\r -`, "latin1"); - } - request.onRequestSent(); - } else if (util2.isBuffer(body)) { - assert(contentLength === body.byteLength, "buffer body must have content length"); - socket.cork(); - socket.write(`${header}content-length: ${contentLength}\r -\r -`, "latin1"); - socket.write(body); - socket.uncork(); - request.onBodySent(body); - request.onRequestSent(); - if (!expectsPayload) { - socket[kReset] = true; - } - } else if (util2.isBlobLike(body)) { - if (typeof body.stream === "function") { - writeIterable({ body: body.stream(), client, request, socket, contentLength, header, expectsPayload }); - } else { - writeBlob({ body, client, request, socket, contentLength, header, expectsPayload }); - } - } else if (util2.isStream(body)) { - writeStream({ body, client, request, socket, contentLength, header, expectsPayload }); - } else if (util2.isIterable(body)) { - writeIterable({ body, client, request, socket, contentLength, header, expectsPayload }); - } else { - assert(false); - } - return true; - } - function writeH2(client, session, request) { - const { body, method, path: path2, host, upgrade, expectContinue, signal, headers: reqHeaders } = request; - let headers; - if (typeof reqHeaders === "string") - headers = Request[kHTTP2CopyHeaders](reqHeaders.trim()); - else - headers = reqHeaders; - if (upgrade) { - errorRequest(client, request, new Error("Upgrade not supported for H2")); - return false; - } - try { - request.onConnect((err) => { - if (request.aborted || request.completed) { - return; - } - errorRequest(client, request, err || new RequestAbortedError()); - }); - } catch (err) { - errorRequest(client, request, err); - } - if (request.aborted) { - return false; - } - let stream; - const h2State = client[kHTTP2SessionState]; - headers[HTTP2_HEADER_AUTHORITY] = host || client[kHost]; - headers[HTTP2_HEADER_METHOD] = method; - if (method === "CONNECT") { - session.ref(); - stream = session.request(headers, { endStream: false, signal }); - if (stream.id && !stream.pending) { - request.onUpgrade(null, null, stream); - ++h2State.openStreams; - } else { - stream.once("ready", () => { - request.onUpgrade(null, null, stream); - ++h2State.openStreams; - }); - } - stream.once("close", () => { - h2State.openStreams -= 1; - if (h2State.openStreams === 0) - session.unref(); - }); - return true; - } - headers[HTTP2_HEADER_PATH] = path2; - headers[HTTP2_HEADER_SCHEME] = "https"; - const expectsPayload = method === "PUT" || method === "POST" || method === "PATCH"; - if (body && typeof body.read === "function") { - body.read(0); - } - let contentLength = util2.bodyLength(body); - if (contentLength == null) { - contentLength = request.contentLength; - } - if (contentLength === 0 || !expectsPayload) { - contentLength = null; - } - if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength != null && request.contentLength !== contentLength) { - if (client[kStrictContentLength]) { - errorRequest(client, request, new RequestContentLengthMismatchError()); - return false; - } - process.emitWarning(new RequestContentLengthMismatchError()); - } - if (contentLength != null) { - assert(body, "no body must not have content length"); - headers[HTTP2_HEADER_CONTENT_LENGTH] = `${contentLength}`; - } - session.ref(); - const shouldEndStream = method === "GET" || method === "HEAD"; - if (expectContinue) { - headers[HTTP2_HEADER_EXPECT] = "100-continue"; - stream = session.request(headers, { endStream: shouldEndStream, signal }); - stream.once("continue", writeBodyH2); - } else { - stream = session.request(headers, { - endStream: shouldEndStream, - signal - }); - writeBodyH2(); - } - ++h2State.openStreams; - stream.once("response", (headers2) => { - const { [HTTP2_HEADER_STATUS]: statusCode, ...realHeaders } = headers2; - if (request.onHeaders(Number(statusCode), realHeaders, stream.resume.bind(stream), "") === false) { - stream.pause(); - } - }); - stream.once("end", () => { - request.onComplete([]); - }); - stream.on("data", (chunk) => { - if (request.onData(chunk) === false) { - stream.pause(); - } - }); - stream.once("close", () => { - h2State.openStreams -= 1; - if (h2State.openStreams === 0) { - session.unref(); - } - }); - stream.once("error", function(err) { - if (client[kHTTP2Session] && !client[kHTTP2Session].destroyed && !this.closed && !this.destroyed) { - h2State.streams -= 1; - util2.destroy(stream, err); - } - }); - stream.once("frameError", (type, code) => { - const err = new InformationalError(`HTTP/2: "frameError" received - type ${type}, code ${code}`); - errorRequest(client, request, err); - if (client[kHTTP2Session] && !client[kHTTP2Session].destroyed && !this.closed && !this.destroyed) { - h2State.streams -= 1; - util2.destroy(stream, err); - } - }); - return true; - function writeBodyH2() { - if (!body) { - request.onRequestSent(); - } else if (util2.isBuffer(body)) { - assert(contentLength === body.byteLength, "buffer body must have content length"); - stream.cork(); - stream.write(body); - stream.uncork(); - stream.end(); - request.onBodySent(body); - request.onRequestSent(); - } else if (util2.isBlobLike(body)) { - if (typeof body.stream === "function") { - writeIterable({ - client, - request, - contentLength, - h2stream: stream, - expectsPayload, - body: body.stream(), - socket: client[kSocket], - header: "" - }); - } else { - writeBlob({ - body, - client, - request, - contentLength, - expectsPayload, - h2stream: stream, - header: "", - socket: client[kSocket] - }); - } - } else if (util2.isStream(body)) { - writeStream({ - body, - client, - request, - contentLength, - expectsPayload, - socket: client[kSocket], - h2stream: stream, - header: "" - }); - } else if (util2.isIterable(body)) { - writeIterable({ - body, - client, - request, - contentLength, - expectsPayload, - header: "", - h2stream: stream, - socket: client[kSocket] - }); - } else { - assert(false); - } - } - } - function writeStream({ h2stream, body, client, request, socket, contentLength, header, expectsPayload }) { - assert(contentLength !== 0 || client[kRunning] === 0, "stream body cannot be pipelined"); - if (client[kHTTPConnVersion] === "h2") { - let onPipeData = function(chunk) { - request.onBodySent(chunk); - }; - const pipe = pipeline( - body, - h2stream, - (err) => { - if (err) { - util2.destroy(body, err); - util2.destroy(h2stream, err); - } else { - request.onRequestSent(); - } - } - ); - pipe.on("data", onPipeData); - pipe.once("end", () => { - pipe.removeListener("data", onPipeData); - util2.destroy(pipe); - }); - return; - } - let finished = false; - const writer = new AsyncWriter({ socket, request, contentLength, client, expectsPayload, header }); - const onData = function(chunk) { - if (finished) { - return; - } - try { - if (!writer.write(chunk) && this.pause) { - this.pause(); - } - } catch (err) { - util2.destroy(this, err); - } - }; - const onDrain = function() { - if (finished) { - return; - } - if (body.resume) { - body.resume(); - } - }; - const onAbort = function() { - if (finished) { - return; - } - const err = new RequestAbortedError(); - queueMicrotask(() => onFinished(err)); - }; - const onFinished = function(err) { - if (finished) { - return; - } - finished = true; - assert(socket.destroyed || socket[kWriting] && client[kRunning] <= 1); - socket.off("drain", onDrain).off("error", onFinished); - body.removeListener("data", onData).removeListener("end", onFinished).removeListener("error", onFinished).removeListener("close", onAbort); - if (!err) { - try { - writer.end(); - } catch (er) { - err = er; - } - } - writer.destroy(err); - if (err && (err.code !== "UND_ERR_INFO" || err.message !== "reset")) { - util2.destroy(body, err); - } else { - util2.destroy(body); - } - }; - body.on("data", onData).on("end", onFinished).on("error", onFinished).on("close", onAbort); - if (body.resume) { - body.resume(); - } - socket.on("drain", onDrain).on("error", onFinished); - } - async function writeBlob({ h2stream, body, client, request, socket, contentLength, header, expectsPayload }) { - assert(contentLength === body.size, "blob body must have content length"); - const isH2 = client[kHTTPConnVersion] === "h2"; - try { - if (contentLength != null && contentLength !== body.size) { - throw new RequestContentLengthMismatchError(); - } - const buffer = Buffer.from(await body.arrayBuffer()); - if (isH2) { - h2stream.cork(); - h2stream.write(buffer); - h2stream.uncork(); - } else { - socket.cork(); - socket.write(`${header}content-length: ${contentLength}\r -\r -`, "latin1"); - socket.write(buffer); - socket.uncork(); - } - request.onBodySent(buffer); - request.onRequestSent(); - if (!expectsPayload) { - socket[kReset] = true; - } - resume(client); - } catch (err) { - util2.destroy(isH2 ? h2stream : socket, err); - } - } - async function writeIterable({ h2stream, body, client, request, socket, contentLength, header, expectsPayload }) { - assert(contentLength !== 0 || client[kRunning] === 0, "iterator body cannot be pipelined"); - let callback = null; - function onDrain() { - if (callback) { - const cb = callback; - callback = null; - cb(); - } - } - const waitForDrain = () => new Promise((resolve, reject) => { - assert(callback === null); - if (socket[kError]) { - reject(socket[kError]); - } else { - callback = resolve; - } - }); - if (client[kHTTPConnVersion] === "h2") { - h2stream.on("close", onDrain).on("drain", onDrain); - try { - for await (const chunk of body) { - if (socket[kError]) { - throw socket[kError]; - } - const res = h2stream.write(chunk); - request.onBodySent(chunk); - if (!res) { - await waitForDrain(); - } - } - } catch (err) { - h2stream.destroy(err); - } finally { - request.onRequestSent(); - h2stream.end(); - h2stream.off("close", onDrain).off("drain", onDrain); - } - return; - } - socket.on("close", onDrain).on("drain", onDrain); - const writer = new AsyncWriter({ socket, request, contentLength, client, expectsPayload, header }); - try { - for await (const chunk of body) { - if (socket[kError]) { - throw socket[kError]; - } - if (!writer.write(chunk)) { - await waitForDrain(); - } - } - writer.end(); - } catch (err) { - writer.destroy(err); - } finally { - socket.off("close", onDrain).off("drain", onDrain); - } - } - var AsyncWriter = class { - constructor({ socket, request, contentLength, client, expectsPayload, header }) { - this.socket = socket; - this.request = request; - this.contentLength = contentLength; - this.client = client; - this.bytesWritten = 0; - this.expectsPayload = expectsPayload; - this.header = header; - socket[kWriting] = true; - } - write(chunk) { - const { socket, request, contentLength, client, bytesWritten, expectsPayload, header } = this; - if (socket[kError]) { - throw socket[kError]; - } - if (socket.destroyed) { - return false; - } - const len = Buffer.byteLength(chunk); - if (!len) { - return true; - } - if (contentLength !== null && bytesWritten + len > contentLength) { - if (client[kStrictContentLength]) { - throw new RequestContentLengthMismatchError(); - } - process.emitWarning(new RequestContentLengthMismatchError()); - } - socket.cork(); - if (bytesWritten === 0) { - if (!expectsPayload) { - socket[kReset] = true; - } - if (contentLength === null) { - socket.write(`${header}transfer-encoding: chunked\r -`, "latin1"); - } else { - socket.write(`${header}content-length: ${contentLength}\r -\r -`, "latin1"); - } - } - if (contentLength === null) { - socket.write(`\r -${len.toString(16)}\r -`, "latin1"); - } - this.bytesWritten += len; - const ret = socket.write(chunk); - socket.uncork(); - request.onBodySent(chunk); - if (!ret) { - if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) { - if (socket[kParser].timeout.refresh) { - socket[kParser].timeout.refresh(); - } - } - } - return ret; - } - end() { - const { socket, contentLength, client, bytesWritten, expectsPayload, header, request } = this; - request.onRequestSent(); - socket[kWriting] = false; - if (socket[kError]) { - throw socket[kError]; - } - if (socket.destroyed) { - return; - } - if (bytesWritten === 0) { - if (expectsPayload) { - socket.write(`${header}content-length: 0\r -\r -`, "latin1"); - } else { - socket.write(`${header}\r -`, "latin1"); - } - } else if (contentLength === null) { - socket.write("\r\n0\r\n\r\n", "latin1"); - } - if (contentLength !== null && bytesWritten !== contentLength) { - if (client[kStrictContentLength]) { - throw new RequestContentLengthMismatchError(); - } else { - process.emitWarning(new RequestContentLengthMismatchError()); - } - } - if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) { - if (socket[kParser].timeout.refresh) { - socket[kParser].timeout.refresh(); - } - } - resume(client); - } - destroy(err) { - const { socket, client } = this; - socket[kWriting] = false; - if (err) { - assert(client[kRunning] <= 1, "pipeline should only contain this request"); - util2.destroy(socket, err); - } - } - }; - function errorRequest(client, request, err) { - try { - request.onError(err); - assert(request.aborted); - } catch (err2) { - client.emit("error", err2); - } - } - module2.exports = Client; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/node/fixed-queue.js -var require_fixed_queue = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/node/fixed-queue.js"(exports2, module2) { - "use strict"; - var kSize = 2048; - var kMask = kSize - 1; - var FixedCircularBuffer = class { - constructor() { - this.bottom = 0; - this.top = 0; - this.list = new Array(kSize); - this.next = null; - } - isEmpty() { - return this.top === this.bottom; - } - isFull() { - return (this.top + 1 & kMask) === this.bottom; - } - push(data) { - this.list[this.top] = data; - this.top = this.top + 1 & kMask; - } - shift() { - const nextItem = this.list[this.bottom]; - if (nextItem === void 0) - return null; - this.list[this.bottom] = void 0; - this.bottom = this.bottom + 1 & kMask; - return nextItem; - } - }; - module2.exports = class FixedQueue { - constructor() { - this.head = this.tail = new FixedCircularBuffer(); - } - isEmpty() { - return this.head.isEmpty(); - } - push(data) { - if (this.head.isFull()) { - this.head = this.head.next = new FixedCircularBuffer(); - } - this.head.push(data); - } - shift() { - const tail = this.tail; - const next = tail.shift(); - if (tail.isEmpty() && tail.next !== null) { - this.tail = tail.next; - } - return next; - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/pool-stats.js -var require_pool_stats = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/pool-stats.js"(exports2, module2) { - var { kFree, kConnected, kPending, kQueued, kRunning, kSize } = require_symbols(); - var kPool = Symbol("pool"); - var PoolStats = class { - constructor(pool) { - this[kPool] = pool; - } - get connected() { - return this[kPool][kConnected]; - } - get free() { - return this[kPool][kFree]; - } - get pending() { - return this[kPool][kPending]; - } - get queued() { - return this[kPool][kQueued]; - } - get running() { - return this[kPool][kRunning]; - } - get size() { - return this[kPool][kSize]; - } - }; - module2.exports = PoolStats; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/pool-base.js -var require_pool_base = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/pool-base.js"(exports2, module2) { - "use strict"; - var DispatcherBase = require_dispatcher_base(); - var FixedQueue = require_fixed_queue(); - var { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = require_symbols(); - var PoolStats = require_pool_stats(); - var kClients = Symbol("clients"); - var kNeedDrain = Symbol("needDrain"); - var kQueue = Symbol("queue"); - var kClosedResolve = Symbol("closed resolve"); - var kOnDrain = Symbol("onDrain"); - var kOnConnect = Symbol("onConnect"); - var kOnDisconnect = Symbol("onDisconnect"); - var kOnConnectionError = Symbol("onConnectionError"); - var kGetDispatcher = Symbol("get dispatcher"); - var kAddClient = Symbol("add client"); - var kRemoveClient = Symbol("remove client"); - var kStats = Symbol("stats"); - var PoolBase = class extends DispatcherBase { - constructor() { - super(); - this[kQueue] = new FixedQueue(); - this[kClients] = []; - this[kQueued] = 0; - const pool = this; - this[kOnDrain] = function onDrain(origin, targets) { - const queue = pool[kQueue]; - let needDrain = false; - while (!needDrain) { - const item = queue.shift(); - if (!item) { - break; - } - pool[kQueued]--; - needDrain = !this.dispatch(item.opts, item.handler); - } - this[kNeedDrain] = needDrain; - if (!this[kNeedDrain] && pool[kNeedDrain]) { - pool[kNeedDrain] = false; - pool.emit("drain", origin, [pool, ...targets]); - } - if (pool[kClosedResolve] && queue.isEmpty()) { - Promise.all(pool[kClients].map((c) => c.close())).then(pool[kClosedResolve]); - } - }; - this[kOnConnect] = (origin, targets) => { - pool.emit("connect", origin, [pool, ...targets]); - }; - this[kOnDisconnect] = (origin, targets, err) => { - pool.emit("disconnect", origin, [pool, ...targets], err); - }; - this[kOnConnectionError] = (origin, targets, err) => { - pool.emit("connectionError", origin, [pool, ...targets], err); - }; - this[kStats] = new PoolStats(this); - } - get [kBusy]() { - return this[kNeedDrain]; - } - get [kConnected]() { - return this[kClients].filter((client) => client[kConnected]).length; - } - get [kFree]() { - return this[kClients].filter((client) => client[kConnected] && !client[kNeedDrain]).length; - } - get [kPending]() { - let ret = this[kQueued]; - for (const { [kPending]: pending } of this[kClients]) { - ret += pending; - } - return ret; - } - get [kRunning]() { - let ret = 0; - for (const { [kRunning]: running } of this[kClients]) { - ret += running; - } - return ret; - } - get [kSize]() { - let ret = this[kQueued]; - for (const { [kSize]: size } of this[kClients]) { - ret += size; - } - return ret; - } - get stats() { - return this[kStats]; - } - async [kClose]() { - if (this[kQueue].isEmpty()) { - return Promise.all(this[kClients].map((c) => c.close())); - } else { - return new Promise((resolve) => { - this[kClosedResolve] = resolve; - }); - } - } - async [kDestroy](err) { - while (true) { - const item = this[kQueue].shift(); - if (!item) { - break; - } - item.handler.onError(err); - } - return Promise.all(this[kClients].map((c) => c.destroy(err))); - } - [kDispatch](opts, handler) { - const dispatcher = this[kGetDispatcher](); - if (!dispatcher) { - this[kNeedDrain] = true; - this[kQueue].push({ opts, handler }); - this[kQueued]++; - } else if (!dispatcher.dispatch(opts, handler)) { - dispatcher[kNeedDrain] = true; - this[kNeedDrain] = !this[kGetDispatcher](); - } - return !this[kNeedDrain]; - } - [kAddClient](client) { - client.on("drain", this[kOnDrain]).on("connect", this[kOnConnect]).on("disconnect", this[kOnDisconnect]).on("connectionError", this[kOnConnectionError]); - this[kClients].push(client); - if (this[kNeedDrain]) { - process.nextTick(() => { - if (this[kNeedDrain]) { - this[kOnDrain](client[kUrl], [this, client]); - } - }); - } - return this; - } - [kRemoveClient](client) { - client.close(() => { - const idx = this[kClients].indexOf(client); - if (idx !== -1) { - this[kClients].splice(idx, 1); - } - }); - this[kNeedDrain] = this[kClients].some((dispatcher) => !dispatcher[kNeedDrain] && dispatcher.closed !== true && dispatcher.destroyed !== true); - } - }; - module2.exports = { - PoolBase, - kClients, - kNeedDrain, - kAddClient, - kRemoveClient, - kGetDispatcher - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/pool.js -var require_pool = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/pool.js"(exports2, module2) { - "use strict"; - var { - PoolBase, - kClients, - kNeedDrain, - kAddClient, - kGetDispatcher - } = require_pool_base(); - var Client = require_client(); - var { - InvalidArgumentError - } = require_errors(); - var util2 = require_util(); - var { kUrl, kInterceptors } = require_symbols(); - var buildConnector = require_connect(); - var kOptions = Symbol("options"); - var kConnections = Symbol("connections"); - var kFactory = Symbol("factory"); - function defaultFactory(origin, opts) { - return new Client(origin, opts); - } - var Pool = class extends PoolBase { - constructor(origin, { - connections, - factory = defaultFactory, - connect, - connectTimeout, - tls, - maxCachedSessions, - socketPath, - autoSelectFamily, - autoSelectFamilyAttemptTimeout, - allowH2, - ...options - } = {}) { - super(); - if (connections != null && (!Number.isFinite(connections) || connections < 0)) { - throw new InvalidArgumentError("invalid connections"); - } - if (typeof factory !== "function") { - throw new InvalidArgumentError("factory must be a function."); - } - if (connect != null && typeof connect !== "function" && typeof connect !== "object") { - throw new InvalidArgumentError("connect must be a function or an object"); - } - if (typeof connect !== "function") { - connect = buildConnector({ - ...tls, - maxCachedSessions, - allowH2, - socketPath, - timeout: connectTimeout, - ...util2.nodeHasAutoSelectFamily && autoSelectFamily ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : void 0, - ...connect - }); - } - this[kInterceptors] = options.interceptors && options.interceptors.Pool && Array.isArray(options.interceptors.Pool) ? options.interceptors.Pool : []; - this[kConnections] = connections || null; - this[kUrl] = util2.parseOrigin(origin); - this[kOptions] = { ...util2.deepClone(options), connect, allowH2 }; - this[kOptions].interceptors = options.interceptors ? { ...options.interceptors } : void 0; - this[kFactory] = factory; - } - [kGetDispatcher]() { - let dispatcher = this[kClients].find((dispatcher2) => !dispatcher2[kNeedDrain]); - if (dispatcher) { - return dispatcher; - } - if (!this[kConnections] || this[kClients].length < this[kConnections]) { - dispatcher = this[kFactory](this[kUrl], this[kOptions]); - this[kAddClient](dispatcher); - } - return dispatcher; - } - }; - module2.exports = Pool; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/balanced-pool.js -var require_balanced_pool = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/balanced-pool.js"(exports2, module2) { - "use strict"; - var { - BalancedPoolMissingUpstreamError, - InvalidArgumentError - } = require_errors(); - var { - PoolBase, - kClients, - kNeedDrain, - kAddClient, - kRemoveClient, - kGetDispatcher - } = require_pool_base(); - var Pool = require_pool(); - var { kUrl, kInterceptors } = require_symbols(); - var { parseOrigin } = require_util(); - var kFactory = Symbol("factory"); - var kOptions = Symbol("options"); - var kGreatestCommonDivisor = Symbol("kGreatestCommonDivisor"); - var kCurrentWeight = Symbol("kCurrentWeight"); - var kIndex = Symbol("kIndex"); - var kWeight = Symbol("kWeight"); - var kMaxWeightPerServer = Symbol("kMaxWeightPerServer"); - var kErrorPenalty = Symbol("kErrorPenalty"); - function getGreatestCommonDivisor(a, b) { - if (b === 0) - return a; - return getGreatestCommonDivisor(b, a % b); - } - function defaultFactory(origin, opts) { - return new Pool(origin, opts); - } - var BalancedPool = class extends PoolBase { - constructor(upstreams = [], { factory = defaultFactory, ...opts } = {}) { - super(); - this[kOptions] = opts; - this[kIndex] = -1; - this[kCurrentWeight] = 0; - this[kMaxWeightPerServer] = this[kOptions].maxWeightPerServer || 100; - this[kErrorPenalty] = this[kOptions].errorPenalty || 15; - if (!Array.isArray(upstreams)) { - upstreams = [upstreams]; - } - if (typeof factory !== "function") { - throw new InvalidArgumentError("factory must be a function."); - } - this[kInterceptors] = opts.interceptors && opts.interceptors.BalancedPool && Array.isArray(opts.interceptors.BalancedPool) ? opts.interceptors.BalancedPool : []; - this[kFactory] = factory; - for (const upstream of upstreams) { - this.addUpstream(upstream); - } - this._updateBalancedPoolStats(); - } - addUpstream(upstream) { - const upstreamOrigin = parseOrigin(upstream).origin; - if (this[kClients].find((pool2) => pool2[kUrl].origin === upstreamOrigin && pool2.closed !== true && pool2.destroyed !== true)) { - return this; - } - const pool = this[kFactory](upstreamOrigin, Object.assign({}, this[kOptions])); - this[kAddClient](pool); - pool.on("connect", () => { - pool[kWeight] = Math.min(this[kMaxWeightPerServer], pool[kWeight] + this[kErrorPenalty]); - }); - pool.on("connectionError", () => { - pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty]); - this._updateBalancedPoolStats(); - }); - pool.on("disconnect", (...args) => { - const err = args[2]; - if (err && err.code === "UND_ERR_SOCKET") { - pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty]); - this._updateBalancedPoolStats(); - } - }); - for (const client of this[kClients]) { - client[kWeight] = this[kMaxWeightPerServer]; - } - this._updateBalancedPoolStats(); - return this; - } - _updateBalancedPoolStats() { - this[kGreatestCommonDivisor] = this[kClients].map((p) => p[kWeight]).reduce(getGreatestCommonDivisor, 0); - } - removeUpstream(upstream) { - const upstreamOrigin = parseOrigin(upstream).origin; - const pool = this[kClients].find((pool2) => pool2[kUrl].origin === upstreamOrigin && pool2.closed !== true && pool2.destroyed !== true); - if (pool) { - this[kRemoveClient](pool); - } - return this; - } - get upstreams() { - return this[kClients].filter((dispatcher) => dispatcher.closed !== true && dispatcher.destroyed !== true).map((p) => p[kUrl].origin); - } - [kGetDispatcher]() { - if (this[kClients].length === 0) { - throw new BalancedPoolMissingUpstreamError(); - } - const dispatcher = this[kClients].find((dispatcher2) => !dispatcher2[kNeedDrain] && dispatcher2.closed !== true && dispatcher2.destroyed !== true); - if (!dispatcher) { - return; - } - const allClientsBusy = this[kClients].map((pool) => pool[kNeedDrain]).reduce((a, b) => a && b, true); - if (allClientsBusy) { - return; - } - let counter = 0; - let maxWeightIndex = this[kClients].findIndex((pool) => !pool[kNeedDrain]); - while (counter++ < this[kClients].length) { - this[kIndex] = (this[kIndex] + 1) % this[kClients].length; - const pool = this[kClients][this[kIndex]]; - if (pool[kWeight] > this[kClients][maxWeightIndex][kWeight] && !pool[kNeedDrain]) { - maxWeightIndex = this[kIndex]; - } - if (this[kIndex] === 0) { - this[kCurrentWeight] = this[kCurrentWeight] - this[kGreatestCommonDivisor]; - if (this[kCurrentWeight] <= 0) { - this[kCurrentWeight] = this[kMaxWeightPerServer]; - } - } - if (pool[kWeight] >= this[kCurrentWeight] && !pool[kNeedDrain]) { - return pool; - } - } - this[kCurrentWeight] = this[kClients][maxWeightIndex][kWeight]; - this[kIndex] = maxWeightIndex; - return this[kClients][maxWeightIndex]; - } - }; - module2.exports = BalancedPool; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/compat/dispatcher-weakref.js -var require_dispatcher_weakref = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/compat/dispatcher-weakref.js"(exports2, module2) { - "use strict"; - var { kConnected, kSize } = require_symbols(); - var CompatWeakRef = class { - constructor(value) { - this.value = value; - } - deref() { - return this.value[kConnected] === 0 && this.value[kSize] === 0 ? void 0 : this.value; - } - }; - var CompatFinalizer = class { - constructor(finalizer) { - this.finalizer = finalizer; - } - register(dispatcher, key) { - if (dispatcher.on) { - dispatcher.on("disconnect", () => { - if (dispatcher[kConnected] === 0 && dispatcher[kSize] === 0) { - this.finalizer(key); - } - }); - } - } - }; - module2.exports = function() { - if (process.env.NODE_V8_COVERAGE) { - return { - WeakRef: CompatWeakRef, - FinalizationRegistry: CompatFinalizer - }; - } - return { - WeakRef: global.WeakRef || CompatWeakRef, - FinalizationRegistry: global.FinalizationRegistry || CompatFinalizer - }; - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/agent.js -var require_agent = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/agent.js"(exports2, module2) { - "use strict"; - var { InvalidArgumentError } = require_errors(); - var { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = require_symbols(); - var DispatcherBase = require_dispatcher_base(); - var Pool = require_pool(); - var Client = require_client(); - var util2 = require_util(); - var createRedirectInterceptor = require_redirectInterceptor(); - var { WeakRef: WeakRef2, FinalizationRegistry } = require_dispatcher_weakref()(); - var kOnConnect = Symbol("onConnect"); - var kOnDisconnect = Symbol("onDisconnect"); - var kOnConnectionError = Symbol("onConnectionError"); - var kMaxRedirections = Symbol("maxRedirections"); - var kOnDrain = Symbol("onDrain"); - var kFactory = Symbol("factory"); - var kFinalizer = Symbol("finalizer"); - var kOptions = Symbol("options"); - function defaultFactory(origin, opts) { - return opts && opts.connections === 1 ? new Client(origin, opts) : new Pool(origin, opts); - } - var Agent = class extends DispatcherBase { - constructor({ factory = defaultFactory, maxRedirections = 0, connect, ...options } = {}) { - super(); - if (typeof factory !== "function") { - throw new InvalidArgumentError("factory must be a function."); - } - if (connect != null && typeof connect !== "function" && typeof connect !== "object") { - throw new InvalidArgumentError("connect must be a function or an object"); - } - if (!Number.isInteger(maxRedirections) || maxRedirections < 0) { - throw new InvalidArgumentError("maxRedirections must be a positive number"); - } - if (connect && typeof connect !== "function") { - connect = { ...connect }; - } - this[kInterceptors] = options.interceptors && options.interceptors.Agent && Array.isArray(options.interceptors.Agent) ? options.interceptors.Agent : [createRedirectInterceptor({ maxRedirections })]; - this[kOptions] = { ...util2.deepClone(options), connect }; - this[kOptions].interceptors = options.interceptors ? { ...options.interceptors } : void 0; - this[kMaxRedirections] = maxRedirections; - this[kFactory] = factory; - this[kClients] = /* @__PURE__ */ new Map(); - this[kFinalizer] = new FinalizationRegistry( - /* istanbul ignore next: gc is undeterministic */ - (key) => { - const ref = this[kClients].get(key); - if (ref !== void 0 && ref.deref() === void 0) { - this[kClients].delete(key); - } - } - ); - const agent = this; - this[kOnDrain] = (origin, targets) => { - agent.emit("drain", origin, [agent, ...targets]); - }; - this[kOnConnect] = (origin, targets) => { - agent.emit("connect", origin, [agent, ...targets]); - }; - this[kOnDisconnect] = (origin, targets, err) => { - agent.emit("disconnect", origin, [agent, ...targets], err); - }; - this[kOnConnectionError] = (origin, targets, err) => { - agent.emit("connectionError", origin, [agent, ...targets], err); - }; - } - get [kRunning]() { - let ret = 0; - for (const ref of this[kClients].values()) { - const client = ref.deref(); - if (client) { - ret += client[kRunning]; - } - } - return ret; - } - [kDispatch](opts, handler) { - let key; - if (opts.origin && (typeof opts.origin === "string" || opts.origin instanceof URL)) { - key = String(opts.origin); - } else { - throw new InvalidArgumentError("opts.origin must be a non-empty string or URL."); - } - const ref = this[kClients].get(key); - let dispatcher = ref ? ref.deref() : null; - if (!dispatcher) { - dispatcher = this[kFactory](opts.origin, this[kOptions]).on("drain", this[kOnDrain]).on("connect", this[kOnConnect]).on("disconnect", this[kOnDisconnect]).on("connectionError", this[kOnConnectionError]); - this[kClients].set(key, new WeakRef2(dispatcher)); - this[kFinalizer].register(dispatcher, key); - } - return dispatcher.dispatch(opts, handler); - } - async [kClose]() { - const closePromises = []; - for (const ref of this[kClients].values()) { - const client = ref.deref(); - if (client) { - closePromises.push(client.close()); - } - } - await Promise.all(closePromises); - } - async [kDestroy](err) { - const destroyPromises = []; - for (const ref of this[kClients].values()) { - const client = ref.deref(); - if (client) { - destroyPromises.push(client.destroy(err)); - } - } - await Promise.all(destroyPromises); - } - }; - module2.exports = Agent; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/readable.js -var require_readable = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/readable.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var { Readable } = require("stream"); - var { RequestAbortedError, NotSupportedError, InvalidArgumentError } = require_errors(); - var util2 = require_util(); - var { ReadableStreamFrom, toUSVString } = require_util(); - var Blob2; - var kConsume = Symbol("kConsume"); - var kReading = Symbol("kReading"); - var kBody = Symbol("kBody"); - var kAbort = Symbol("abort"); - var kContentType = Symbol("kContentType"); - var noop = () => { - }; - module2.exports = class BodyReadable extends Readable { - constructor({ - resume, - abort, - contentType = "", - highWaterMark = 64 * 1024 - // Same as nodejs fs streams. - }) { - super({ - autoDestroy: true, - read: resume, - highWaterMark - }); - this._readableState.dataEmitted = false; - this[kAbort] = abort; - this[kConsume] = null; - this[kBody] = null; - this[kContentType] = contentType; - this[kReading] = false; - } - destroy(err) { - if (this.destroyed) { - return this; - } - if (!err && !this._readableState.endEmitted) { - err = new RequestAbortedError(); - } - if (err) { - this[kAbort](); - } - return super.destroy(err); - } - emit(ev, ...args) { - if (ev === "data") { - this._readableState.dataEmitted = true; - } else if (ev === "error") { - this._readableState.errorEmitted = true; - } - return super.emit(ev, ...args); - } - on(ev, ...args) { - if (ev === "data" || ev === "readable") { - this[kReading] = true; - } - return super.on(ev, ...args); - } - addListener(ev, ...args) { - return this.on(ev, ...args); - } - off(ev, ...args) { - const ret = super.off(ev, ...args); - if (ev === "data" || ev === "readable") { - this[kReading] = this.listenerCount("data") > 0 || this.listenerCount("readable") > 0; - } - return ret; - } - removeListener(ev, ...args) { - return this.off(ev, ...args); - } - push(chunk) { - if (this[kConsume] && chunk !== null && this.readableLength === 0) { - consumePush(this[kConsume], chunk); - return this[kReading] ? super.push(chunk) : true; - } - return super.push(chunk); - } - // https://fetch.spec.whatwg.org/#dom-body-text - async text() { - return consume(this, "text"); - } - // https://fetch.spec.whatwg.org/#dom-body-json - async json() { - return consume(this, "json"); - } - // https://fetch.spec.whatwg.org/#dom-body-blob - async blob() { - return consume(this, "blob"); - } - // https://fetch.spec.whatwg.org/#dom-body-arraybuffer - async arrayBuffer() { - return consume(this, "arrayBuffer"); - } - // https://fetch.spec.whatwg.org/#dom-body-formdata - async formData() { - throw new NotSupportedError(); - } - // https://fetch.spec.whatwg.org/#dom-body-bodyused - get bodyUsed() { - return util2.isDisturbed(this); - } - // https://fetch.spec.whatwg.org/#dom-body-body - get body() { - if (!this[kBody]) { - this[kBody] = ReadableStreamFrom(this); - if (this[kConsume]) { - this[kBody].getReader(); - assert(this[kBody].locked); - } - } - return this[kBody]; - } - dump(opts) { - let limit = opts && Number.isFinite(opts.limit) ? opts.limit : 262144; - const signal = opts && opts.signal; - if (signal) { - try { - if (typeof signal !== "object" || !("aborted" in signal)) { - throw new InvalidArgumentError("signal must be an AbortSignal"); - } - util2.throwIfAborted(signal); - } catch (err) { - return Promise.reject(err); - } - } - if (this.closed) { - return Promise.resolve(null); - } - return new Promise((resolve, reject) => { - const signalListenerCleanup = signal ? util2.addAbortListener(signal, () => { - this.destroy(); - }) : noop; - this.on("close", function() { - signalListenerCleanup(); - if (signal && signal.aborted) { - reject(signal.reason || Object.assign(new Error("The operation was aborted"), { name: "AbortError" })); - } else { - resolve(null); - } - }).on("error", noop).on("data", function(chunk) { - limit -= chunk.length; - if (limit <= 0) { - this.destroy(); - } - }).resume(); - }); - } - }; - function isLocked(self) { - return self[kBody] && self[kBody].locked === true || self[kConsume]; - } - function isUnusable(self) { - return util2.isDisturbed(self) || isLocked(self); - } - async function consume(stream, type) { - if (isUnusable(stream)) { - throw new TypeError("unusable"); - } - assert(!stream[kConsume]); - return new Promise((resolve, reject) => { - stream[kConsume] = { - type, - stream, - resolve, - reject, - length: 0, - body: [] - }; - stream.on("error", function(err) { - consumeFinish(this[kConsume], err); - }).on("close", function() { - if (this[kConsume].body !== null) { - consumeFinish(this[kConsume], new RequestAbortedError()); - } - }); - process.nextTick(consumeStart, stream[kConsume]); - }); - } - function consumeStart(consume2) { - if (consume2.body === null) { - return; - } - const { _readableState: state } = consume2.stream; - for (const chunk of state.buffer) { - consumePush(consume2, chunk); - } - if (state.endEmitted) { - consumeEnd(this[kConsume]); - } else { - consume2.stream.on("end", function() { - consumeEnd(this[kConsume]); - }); - } - consume2.stream.resume(); - while (consume2.stream.read() != null) { - } - } - function consumeEnd(consume2) { - const { type, body, resolve, stream, length } = consume2; - try { - if (type === "text") { - resolve(toUSVString(Buffer.concat(body))); - } else if (type === "json") { - resolve(JSON.parse(Buffer.concat(body))); - } else if (type === "arrayBuffer") { - const dst = new Uint8Array(length); - let pos = 0; - for (const buf of body) { - dst.set(buf, pos); - pos += buf.byteLength; - } - resolve(dst.buffer); - } else if (type === "blob") { - if (!Blob2) { - Blob2 = require("buffer").Blob; - } - resolve(new Blob2(body, { type: stream[kContentType] })); - } - consumeFinish(consume2); - } catch (err) { - stream.destroy(err); - } - } - function consumePush(consume2, chunk) { - consume2.length += chunk.length; - consume2.body.push(chunk); - } - function consumeFinish(consume2, err) { - if (consume2.body === null) { - return; - } - if (err) { - consume2.reject(err); - } else { - consume2.resolve(); - } - consume2.type = null; - consume2.stream = null; - consume2.resolve = null; - consume2.reject = null; - consume2.length = 0; - consume2.body = null; - } - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/util.js -var require_util3 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/util.js"(exports2, module2) { - var assert = require("assert"); - var { - ResponseStatusCodeError - } = require_errors(); - var { toUSVString } = require_util(); - async function getResolveErrorBodyCallback({ callback, body, contentType, statusCode, statusMessage, headers }) { - assert(body); - let chunks = []; - let limit = 0; - for await (const chunk of body) { - chunks.push(chunk); - limit += chunk.length; - if (limit > 128 * 1024) { - chunks = null; - break; - } - } - if (statusCode === 204 || !contentType || !chunks) { - process.nextTick(callback, new ResponseStatusCodeError(`Response status code ${statusCode}${statusMessage ? `: ${statusMessage}` : ""}`, statusCode, headers)); - return; - } - try { - if (contentType.startsWith("application/json")) { - const payload = JSON.parse(toUSVString(Buffer.concat(chunks))); - process.nextTick(callback, new ResponseStatusCodeError(`Response status code ${statusCode}${statusMessage ? `: ${statusMessage}` : ""}`, statusCode, headers, payload)); - return; - } - if (contentType.startsWith("text/")) { - const payload = toUSVString(Buffer.concat(chunks)); - process.nextTick(callback, new ResponseStatusCodeError(`Response status code ${statusCode}${statusMessage ? `: ${statusMessage}` : ""}`, statusCode, headers, payload)); - return; - } - } catch (err) { - } - process.nextTick(callback, new ResponseStatusCodeError(`Response status code ${statusCode}${statusMessage ? `: ${statusMessage}` : ""}`, statusCode, headers)); - } - module2.exports = { getResolveErrorBodyCallback }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/abort-signal.js -var require_abort_signal = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/abort-signal.js"(exports2, module2) { - var { addAbortListener } = require_util(); - var { RequestAbortedError } = require_errors(); - var kListener = Symbol("kListener"); - var kSignal = Symbol("kSignal"); - function abort(self) { - if (self.abort) { - self.abort(); - } else { - self.onError(new RequestAbortedError()); - } - } - function addSignal(self, signal) { - self[kSignal] = null; - self[kListener] = null; - if (!signal) { - return; - } - if (signal.aborted) { - abort(self); - return; - } - self[kSignal] = signal; - self[kListener] = () => { - abort(self); - }; - addAbortListener(self[kSignal], self[kListener]); - } - function removeSignal(self) { - if (!self[kSignal]) { - return; - } - if ("removeEventListener" in self[kSignal]) { - self[kSignal].removeEventListener("abort", self[kListener]); - } else { - self[kSignal].removeListener("abort", self[kListener]); - } - self[kSignal] = null; - self[kListener] = null; - } - module2.exports = { - addSignal, - removeSignal - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/api-request.js -var require_api_request = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/api-request.js"(exports2, module2) { - "use strict"; - var Readable = require_readable(); - var { - InvalidArgumentError, - RequestAbortedError - } = require_errors(); - var util2 = require_util(); - var { getResolveErrorBodyCallback } = require_util3(); - var { AsyncResource } = require("async_hooks"); - var { addSignal, removeSignal } = require_abort_signal(); - var RequestHandler = class extends AsyncResource { - constructor(opts, callback) { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - const { signal, method, opaque, body, onInfo, responseHeaders, throwOnError, highWaterMark } = opts; - try { - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - if (highWaterMark && (typeof highWaterMark !== "number" || highWaterMark < 0)) { - throw new InvalidArgumentError("invalid highWaterMark"); - } - if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") { - throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget"); - } - if (method === "CONNECT") { - throw new InvalidArgumentError("invalid method"); - } - if (onInfo && typeof onInfo !== "function") { - throw new InvalidArgumentError("invalid onInfo callback"); - } - super("UNDICI_REQUEST"); - } catch (err) { - if (util2.isStream(body)) { - util2.destroy(body.on("error", util2.nop), err); - } - throw err; - } - this.responseHeaders = responseHeaders || null; - this.opaque = opaque || null; - this.callback = callback; - this.res = null; - this.abort = null; - this.body = body; - this.trailers = {}; - this.context = null; - this.onInfo = onInfo || null; - this.throwOnError = throwOnError; - this.highWaterMark = highWaterMark; - if (util2.isStream(body)) { - body.on("error", (err) => { - this.onError(err); - }); - } - addSignal(this, signal); - } - onConnect(abort, context) { - if (!this.callback) { - throw new RequestAbortedError(); - } - this.abort = abort; - this.context = context; - } - onHeaders(statusCode, rawHeaders, resume, statusMessage) { - const { callback, opaque, abort, context, responseHeaders, highWaterMark } = this; - const headers = responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - if (statusCode < 200) { - if (this.onInfo) { - this.onInfo({ statusCode, headers }); - } - return; - } - const parsedHeaders = responseHeaders === "raw" ? util2.parseHeaders(rawHeaders) : headers; - const contentType = parsedHeaders["content-type"]; - const body = new Readable({ resume, abort, contentType, highWaterMark }); - this.callback = null; - this.res = body; - if (callback !== null) { - if (this.throwOnError && statusCode >= 400) { - this.runInAsyncScope( - getResolveErrorBodyCallback, - null, - { callback, body, contentType, statusCode, statusMessage, headers } - ); - } else { - this.runInAsyncScope(callback, null, null, { - statusCode, - headers, - trailers: this.trailers, - opaque, - body, - context - }); - } - } - } - onData(chunk) { - const { res } = this; - return res.push(chunk); - } - onComplete(trailers) { - const { res } = this; - removeSignal(this); - util2.parseHeaders(trailers, this.trailers); - res.push(null); - } - onError(err) { - const { res, callback, body, opaque } = this; - removeSignal(this); - if (callback) { - this.callback = null; - queueMicrotask(() => { - this.runInAsyncScope(callback, null, err, { opaque }); - }); - } - if (res) { - this.res = null; - queueMicrotask(() => { - util2.destroy(res, err); - }); - } - if (body) { - this.body = null; - util2.destroy(body, err); - } - } - }; - function request(opts, callback) { - if (callback === void 0) { - return new Promise((resolve, reject) => { - request.call(this, opts, (err, data) => { - return err ? reject(err) : resolve(data); - }); - }); - } - try { - this.dispatch(opts, new RequestHandler(opts, callback)); - } catch (err) { - if (typeof callback !== "function") { - throw err; - } - const opaque = opts && opts.opaque; - queueMicrotask(() => callback(err, { opaque })); - } - } - module2.exports = request; - module2.exports.RequestHandler = RequestHandler; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/api-stream.js -var require_api_stream = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/api-stream.js"(exports2, module2) { - "use strict"; - var { finished, PassThrough } = require("stream"); - var { - InvalidArgumentError, - InvalidReturnValueError, - RequestAbortedError - } = require_errors(); - var util2 = require_util(); - var { getResolveErrorBodyCallback } = require_util3(); - var { AsyncResource } = require("async_hooks"); - var { addSignal, removeSignal } = require_abort_signal(); - var StreamHandler = class extends AsyncResource { - constructor(opts, factory, callback) { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - const { signal, method, opaque, body, onInfo, responseHeaders, throwOnError } = opts; - try { - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - if (typeof factory !== "function") { - throw new InvalidArgumentError("invalid factory"); - } - if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") { - throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget"); - } - if (method === "CONNECT") { - throw new InvalidArgumentError("invalid method"); - } - if (onInfo && typeof onInfo !== "function") { - throw new InvalidArgumentError("invalid onInfo callback"); - } - super("UNDICI_STREAM"); - } catch (err) { - if (util2.isStream(body)) { - util2.destroy(body.on("error", util2.nop), err); - } - throw err; - } - this.responseHeaders = responseHeaders || null; - this.opaque = opaque || null; - this.factory = factory; - this.callback = callback; - this.res = null; - this.abort = null; - this.context = null; - this.trailers = null; - this.body = body; - this.onInfo = onInfo || null; - this.throwOnError = throwOnError || false; - if (util2.isStream(body)) { - body.on("error", (err) => { - this.onError(err); - }); - } - addSignal(this, signal); - } - onConnect(abort, context) { - if (!this.callback) { - throw new RequestAbortedError(); - } - this.abort = abort; - this.context = context; - } - onHeaders(statusCode, rawHeaders, resume, statusMessage) { - const { factory, opaque, context, callback, responseHeaders } = this; - const headers = responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - if (statusCode < 200) { - if (this.onInfo) { - this.onInfo({ statusCode, headers }); - } - return; - } - this.factory = null; - let res; - if (this.throwOnError && statusCode >= 400) { - const parsedHeaders = responseHeaders === "raw" ? util2.parseHeaders(rawHeaders) : headers; - const contentType = parsedHeaders["content-type"]; - res = new PassThrough(); - this.callback = null; - this.runInAsyncScope( - getResolveErrorBodyCallback, - null, - { callback, body: res, contentType, statusCode, statusMessage, headers } - ); - } else { - if (factory === null) { - return; - } - res = this.runInAsyncScope(factory, null, { - statusCode, - headers, - opaque, - context - }); - if (!res || typeof res.write !== "function" || typeof res.end !== "function" || typeof res.on !== "function") { - throw new InvalidReturnValueError("expected Writable"); - } - finished(res, { readable: false }, (err) => { - const { callback: callback2, res: res2, opaque: opaque2, trailers, abort } = this; - this.res = null; - if (err || !res2.readable) { - util2.destroy(res2, err); - } - this.callback = null; - this.runInAsyncScope(callback2, null, err || null, { opaque: opaque2, trailers }); - if (err) { - abort(); - } - }); - } - res.on("drain", resume); - this.res = res; - const needDrain = res.writableNeedDrain !== void 0 ? res.writableNeedDrain : res._writableState && res._writableState.needDrain; - return needDrain !== true; - } - onData(chunk) { - const { res } = this; - return res ? res.write(chunk) : true; - } - onComplete(trailers) { - const { res } = this; - removeSignal(this); - if (!res) { - return; - } - this.trailers = util2.parseHeaders(trailers); - res.end(); - } - onError(err) { - const { res, callback, opaque, body } = this; - removeSignal(this); - this.factory = null; - if (res) { - this.res = null; - util2.destroy(res, err); - } else if (callback) { - this.callback = null; - queueMicrotask(() => { - this.runInAsyncScope(callback, null, err, { opaque }); - }); - } - if (body) { - this.body = null; - util2.destroy(body, err); - } - } - }; - function stream(opts, factory, callback) { - if (callback === void 0) { - return new Promise((resolve, reject) => { - stream.call(this, opts, factory, (err, data) => { - return err ? reject(err) : resolve(data); - }); - }); - } - try { - this.dispatch(opts, new StreamHandler(opts, factory, callback)); - } catch (err) { - if (typeof callback !== "function") { - throw err; - } - const opaque = opts && opts.opaque; - queueMicrotask(() => callback(err, { opaque })); - } - } - module2.exports = stream; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/api-pipeline.js -var require_api_pipeline = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/api-pipeline.js"(exports2, module2) { - "use strict"; - var { - Readable, - Duplex, - PassThrough - } = require("stream"); - var { - InvalidArgumentError, - InvalidReturnValueError, - RequestAbortedError - } = require_errors(); - var util2 = require_util(); - var { AsyncResource } = require("async_hooks"); - var { addSignal, removeSignal } = require_abort_signal(); - var assert = require("assert"); - var kResume = Symbol("resume"); - var PipelineRequest = class extends Readable { - constructor() { - super({ autoDestroy: true }); - this[kResume] = null; - } - _read() { - const { [kResume]: resume } = this; - if (resume) { - this[kResume] = null; - resume(); - } - } - _destroy(err, callback) { - this._read(); - callback(err); - } - }; - var PipelineResponse = class extends Readable { - constructor(resume) { - super({ autoDestroy: true }); - this[kResume] = resume; - } - _read() { - this[kResume](); - } - _destroy(err, callback) { - if (!err && !this._readableState.endEmitted) { - err = new RequestAbortedError(); - } - callback(err); - } - }; - var PipelineHandler = class extends AsyncResource { - constructor(opts, handler) { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - if (typeof handler !== "function") { - throw new InvalidArgumentError("invalid handler"); - } - const { signal, method, opaque, onInfo, responseHeaders } = opts; - if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") { - throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget"); - } - if (method === "CONNECT") { - throw new InvalidArgumentError("invalid method"); - } - if (onInfo && typeof onInfo !== "function") { - throw new InvalidArgumentError("invalid onInfo callback"); - } - super("UNDICI_PIPELINE"); - this.opaque = opaque || null; - this.responseHeaders = responseHeaders || null; - this.handler = handler; - this.abort = null; - this.context = null; - this.onInfo = onInfo || null; - this.req = new PipelineRequest().on("error", util2.nop); - this.ret = new Duplex({ - readableObjectMode: opts.objectMode, - autoDestroy: true, - read: () => { - const { body } = this; - if (body && body.resume) { - body.resume(); - } - }, - write: (chunk, encoding, callback) => { - const { req } = this; - if (req.push(chunk, encoding) || req._readableState.destroyed) { - callback(); - } else { - req[kResume] = callback; - } - }, - destroy: (err, callback) => { - const { body, req, res, ret, abort } = this; - if (!err && !ret._readableState.endEmitted) { - err = new RequestAbortedError(); - } - if (abort && err) { - abort(); - } - util2.destroy(body, err); - util2.destroy(req, err); - util2.destroy(res, err); - removeSignal(this); - callback(err); - } - }).on("prefinish", () => { - const { req } = this; - req.push(null); - }); - this.res = null; - addSignal(this, signal); - } - onConnect(abort, context) { - const { ret, res } = this; - assert(!res, "pipeline cannot be retried"); - if (ret.destroyed) { - throw new RequestAbortedError(); - } - this.abort = abort; - this.context = context; - } - onHeaders(statusCode, rawHeaders, resume) { - const { opaque, handler, context } = this; - if (statusCode < 200) { - if (this.onInfo) { - const headers = this.responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - this.onInfo({ statusCode, headers }); - } - return; - } - this.res = new PipelineResponse(resume); - let body; - try { - this.handler = null; - const headers = this.responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - body = this.runInAsyncScope(handler, null, { - statusCode, - headers, - opaque, - body: this.res, - context - }); - } catch (err) { - this.res.on("error", util2.nop); - throw err; - } - if (!body || typeof body.on !== "function") { - throw new InvalidReturnValueError("expected Readable"); - } - body.on("data", (chunk) => { - const { ret, body: body2 } = this; - if (!ret.push(chunk) && body2.pause) { - body2.pause(); - } - }).on("error", (err) => { - const { ret } = this; - util2.destroy(ret, err); - }).on("end", () => { - const { ret } = this; - ret.push(null); - }).on("close", () => { - const { ret } = this; - if (!ret._readableState.ended) { - util2.destroy(ret, new RequestAbortedError()); - } - }); - this.body = body; - } - onData(chunk) { - const { res } = this; - return res.push(chunk); - } - onComplete(trailers) { - const { res } = this; - res.push(null); - } - onError(err) { - const { ret } = this; - this.handler = null; - util2.destroy(ret, err); - } - }; - function pipeline(opts, handler) { - try { - const pipelineHandler = new PipelineHandler(opts, handler); - this.dispatch({ ...opts, body: pipelineHandler.req }, pipelineHandler); - return pipelineHandler.ret; - } catch (err) { - return new PassThrough().destroy(err); - } - } - module2.exports = pipeline; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/api-upgrade.js -var require_api_upgrade = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/api-upgrade.js"(exports2, module2) { - "use strict"; - var { InvalidArgumentError, RequestAbortedError, SocketError } = require_errors(); - var { AsyncResource } = require("async_hooks"); - var util2 = require_util(); - var { addSignal, removeSignal } = require_abort_signal(); - var assert = require("assert"); - var UpgradeHandler = class extends AsyncResource { - constructor(opts, callback) { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - const { signal, opaque, responseHeaders } = opts; - if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") { - throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget"); - } - super("UNDICI_UPGRADE"); - this.responseHeaders = responseHeaders || null; - this.opaque = opaque || null; - this.callback = callback; - this.abort = null; - this.context = null; - addSignal(this, signal); - } - onConnect(abort, context) { - if (!this.callback) { - throw new RequestAbortedError(); - } - this.abort = abort; - this.context = null; - } - onHeaders() { - throw new SocketError("bad upgrade", null); - } - onUpgrade(statusCode, rawHeaders, socket) { - const { callback, opaque, context } = this; - assert.strictEqual(statusCode, 101); - removeSignal(this); - this.callback = null; - const headers = this.responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - this.runInAsyncScope(callback, null, null, { - headers, - socket, - opaque, - context - }); - } - onError(err) { - const { callback, opaque } = this; - removeSignal(this); - if (callback) { - this.callback = null; - queueMicrotask(() => { - this.runInAsyncScope(callback, null, err, { opaque }); - }); - } - } - }; - function upgrade(opts, callback) { - if (callback === void 0) { - return new Promise((resolve, reject) => { - upgrade.call(this, opts, (err, data) => { - return err ? reject(err) : resolve(data); - }); - }); - } - try { - const upgradeHandler = new UpgradeHandler(opts, callback); - this.dispatch({ - ...opts, - method: opts.method || "GET", - upgrade: opts.protocol || "Websocket" - }, upgradeHandler); - } catch (err) { - if (typeof callback !== "function") { - throw err; - } - const opaque = opts && opts.opaque; - queueMicrotask(() => callback(err, { opaque })); - } - } - module2.exports = upgrade; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/api-connect.js -var require_api_connect = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/api-connect.js"(exports2, module2) { - "use strict"; - var { AsyncResource } = require("async_hooks"); - var { InvalidArgumentError, RequestAbortedError, SocketError } = require_errors(); - var util2 = require_util(); - var { addSignal, removeSignal } = require_abort_signal(); - var ConnectHandler = class extends AsyncResource { - constructor(opts, callback) { - if (!opts || typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - if (typeof callback !== "function") { - throw new InvalidArgumentError("invalid callback"); - } - const { signal, opaque, responseHeaders } = opts; - if (signal && typeof signal.on !== "function" && typeof signal.addEventListener !== "function") { - throw new InvalidArgumentError("signal must be an EventEmitter or EventTarget"); - } - super("UNDICI_CONNECT"); - this.opaque = opaque || null; - this.responseHeaders = responseHeaders || null; - this.callback = callback; - this.abort = null; - addSignal(this, signal); - } - onConnect(abort, context) { - if (!this.callback) { - throw new RequestAbortedError(); - } - this.abort = abort; - this.context = context; - } - onHeaders() { - throw new SocketError("bad connect", null); - } - onUpgrade(statusCode, rawHeaders, socket) { - const { callback, opaque, context } = this; - removeSignal(this); - this.callback = null; - let headers = rawHeaders; - if (headers != null) { - headers = this.responseHeaders === "raw" ? util2.parseRawHeaders(rawHeaders) : util2.parseHeaders(rawHeaders); - } - this.runInAsyncScope(callback, null, null, { - statusCode, - headers, - socket, - opaque, - context - }); - } - onError(err) { - const { callback, opaque } = this; - removeSignal(this); - if (callback) { - this.callback = null; - queueMicrotask(() => { - this.runInAsyncScope(callback, null, err, { opaque }); - }); - } - } - }; - function connect(opts, callback) { - if (callback === void 0) { - return new Promise((resolve, reject) => { - connect.call(this, opts, (err, data) => { - return err ? reject(err) : resolve(data); - }); - }); - } - try { - const connectHandler = new ConnectHandler(opts, callback); - this.dispatch({ ...opts, method: "CONNECT" }, connectHandler); - } catch (err) { - if (typeof callback !== "function") { - throw err; - } - const opaque = opts && opts.opaque; - queueMicrotask(() => callback(err, { opaque })); - } - } - module2.exports = connect; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/api/index.js -var require_api = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/api/index.js"(exports2, module2) { - "use strict"; - module2.exports.request = require_api_request(); - module2.exports.stream = require_api_stream(); - module2.exports.pipeline = require_api_pipeline(); - module2.exports.upgrade = require_api_upgrade(); - module2.exports.connect = require_api_connect(); - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-errors.js -var require_mock_errors = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-errors.js"(exports2, module2) { - "use strict"; - var { UndiciError } = require_errors(); - var MockNotMatchedError = class extends UndiciError { - constructor(message) { - super(message); - Error.captureStackTrace(this, MockNotMatchedError); - this.name = "MockNotMatchedError"; - this.message = message || "The request does not match any registered mock dispatches"; - this.code = "UND_MOCK_ERR_MOCK_NOT_MATCHED"; - } - }; - module2.exports = { - MockNotMatchedError - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-symbols.js -var require_mock_symbols = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-symbols.js"(exports2, module2) { - "use strict"; - module2.exports = { - kAgent: Symbol("agent"), - kOptions: Symbol("options"), - kFactory: Symbol("factory"), - kDispatches: Symbol("dispatches"), - kDispatchKey: Symbol("dispatch key"), - kDefaultHeaders: Symbol("default headers"), - kDefaultTrailers: Symbol("default trailers"), - kContentLength: Symbol("content length"), - kMockAgent: Symbol("mock agent"), - kMockAgentSet: Symbol("mock agent set"), - kMockAgentGet: Symbol("mock agent get"), - kMockDispatch: Symbol("mock dispatch"), - kClose: Symbol("close"), - kOriginalClose: Symbol("original agent close"), - kOrigin: Symbol("origin"), - kIsMockActive: Symbol("is mock active"), - kNetConnect: Symbol("net connect"), - kGetNetConnect: Symbol("get net connect"), - kConnected: Symbol("connected") - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-utils.js -var require_mock_utils = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-utils.js"(exports2, module2) { - "use strict"; - var { MockNotMatchedError } = require_mock_errors(); - var { - kDispatches, - kMockAgent, - kOriginalDispatch, - kOrigin, - kGetNetConnect - } = require_mock_symbols(); - var { buildURL, nop } = require_util(); - var { STATUS_CODES } = require("http"); - var { - types: { - isPromise - } - } = require("util"); - function matchValue(match, value) { - if (typeof match === "string") { - return match === value; - } - if (match instanceof RegExp) { - return match.test(value); - } - if (typeof match === "function") { - return match(value) === true; - } - return false; - } - function lowerCaseEntries(headers) { - return Object.fromEntries( - Object.entries(headers).map(([headerName, headerValue]) => { - return [headerName.toLocaleLowerCase(), headerValue]; - }) - ); - } - function getHeaderByName(headers, key) { - if (Array.isArray(headers)) { - for (let i = 0; i < headers.length; i += 2) { - if (headers[i].toLocaleLowerCase() === key.toLocaleLowerCase()) { - return headers[i + 1]; - } - } - return void 0; - } else if (typeof headers.get === "function") { - return headers.get(key); - } else { - return lowerCaseEntries(headers)[key.toLocaleLowerCase()]; - } - } - function buildHeadersFromArray(headers) { - const clone = headers.slice(); - const entries = []; - for (let index = 0; index < clone.length; index += 2) { - entries.push([clone[index], clone[index + 1]]); - } - return Object.fromEntries(entries); - } - function matchHeaders(mockDispatch2, headers) { - if (typeof mockDispatch2.headers === "function") { - if (Array.isArray(headers)) { - headers = buildHeadersFromArray(headers); - } - return mockDispatch2.headers(headers ? lowerCaseEntries(headers) : {}); - } - if (typeof mockDispatch2.headers === "undefined") { - return true; - } - if (typeof headers !== "object" || typeof mockDispatch2.headers !== "object") { - return false; - } - for (const [matchHeaderName, matchHeaderValue] of Object.entries(mockDispatch2.headers)) { - const headerValue = getHeaderByName(headers, matchHeaderName); - if (!matchValue(matchHeaderValue, headerValue)) { - return false; - } - } - return true; - } - function safeUrl(path2) { - if (typeof path2 !== "string") { - return path2; - } - const pathSegments = path2.split("?"); - if (pathSegments.length !== 2) { - return path2; - } - const qp = new URLSearchParams(pathSegments.pop()); - qp.sort(); - return [...pathSegments, qp.toString()].join("?"); - } - function matchKey(mockDispatch2, { path: path2, method, body, headers }) { - const pathMatch = matchValue(mockDispatch2.path, path2); - const methodMatch = matchValue(mockDispatch2.method, method); - const bodyMatch = typeof mockDispatch2.body !== "undefined" ? matchValue(mockDispatch2.body, body) : true; - const headersMatch = matchHeaders(mockDispatch2, headers); - return pathMatch && methodMatch && bodyMatch && headersMatch; - } - function getResponseData(data) { - if (Buffer.isBuffer(data)) { - return data; - } else if (typeof data === "object") { - return JSON.stringify(data); - } else { - return data.toString(); - } - } - function getMockDispatch(mockDispatches, key) { - const basePath = key.query ? buildURL(key.path, key.query) : key.path; - const resolvedPath = typeof basePath === "string" ? safeUrl(basePath) : basePath; - let matchedMockDispatches = mockDispatches.filter(({ consumed }) => !consumed).filter(({ path: path2 }) => matchValue(safeUrl(path2), resolvedPath)); - if (matchedMockDispatches.length === 0) { - throw new MockNotMatchedError(`Mock dispatch not matched for path '${resolvedPath}'`); - } - matchedMockDispatches = matchedMockDispatches.filter(({ method }) => matchValue(method, key.method)); - if (matchedMockDispatches.length === 0) { - throw new MockNotMatchedError(`Mock dispatch not matched for method '${key.method}'`); - } - matchedMockDispatches = matchedMockDispatches.filter(({ body }) => typeof body !== "undefined" ? matchValue(body, key.body) : true); - if (matchedMockDispatches.length === 0) { - throw new MockNotMatchedError(`Mock dispatch not matched for body '${key.body}'`); - } - matchedMockDispatches = matchedMockDispatches.filter((mockDispatch2) => matchHeaders(mockDispatch2, key.headers)); - if (matchedMockDispatches.length === 0) { - throw new MockNotMatchedError(`Mock dispatch not matched for headers '${typeof key.headers === "object" ? JSON.stringify(key.headers) : key.headers}'`); - } - return matchedMockDispatches[0]; - } - function addMockDispatch(mockDispatches, key, data) { - const baseData = { timesInvoked: 0, times: 1, persist: false, consumed: false }; - const replyData = typeof data === "function" ? { callback: data } : { ...data }; - const newMockDispatch = { ...baseData, ...key, pending: true, data: { error: null, ...replyData } }; - mockDispatches.push(newMockDispatch); - return newMockDispatch; - } - function deleteMockDispatch(mockDispatches, key) { - const index = mockDispatches.findIndex((dispatch) => { - if (!dispatch.consumed) { - return false; - } - return matchKey(dispatch, key); - }); - if (index !== -1) { - mockDispatches.splice(index, 1); - } - } - function buildKey(opts) { - const { path: path2, method, body, headers, query } = opts; - return { - path: path2, - method, - body, - headers, - query - }; - } - function generateKeyValues(data) { - return Object.entries(data).reduce((keyValuePairs, [key, value]) => [ - ...keyValuePairs, - Buffer.from(`${key}`), - Array.isArray(value) ? value.map((x) => Buffer.from(`${x}`)) : Buffer.from(`${value}`) - ], []); - } - function getStatusText(statusCode) { - return STATUS_CODES[statusCode] || "unknown"; - } - async function getResponse(body) { - const buffers = []; - for await (const data of body) { - buffers.push(data); - } - return Buffer.concat(buffers).toString("utf8"); - } - function mockDispatch(opts, handler) { - const key = buildKey(opts); - const mockDispatch2 = getMockDispatch(this[kDispatches], key); - mockDispatch2.timesInvoked++; - if (mockDispatch2.data.callback) { - mockDispatch2.data = { ...mockDispatch2.data, ...mockDispatch2.data.callback(opts) }; - } - const { data: { statusCode, data, headers, trailers, error }, delay, persist } = mockDispatch2; - const { timesInvoked, times } = mockDispatch2; - mockDispatch2.consumed = !persist && timesInvoked >= times; - mockDispatch2.pending = timesInvoked < times; - if (error !== null) { - deleteMockDispatch(this[kDispatches], key); - handler.onError(error); - return true; - } - if (typeof delay === "number" && delay > 0) { - setTimeout(() => { - handleReply(this[kDispatches]); - }, delay); - } else { - handleReply(this[kDispatches]); - } - function handleReply(mockDispatches, _data = data) { - const optsHeaders = Array.isArray(opts.headers) ? buildHeadersFromArray(opts.headers) : opts.headers; - const body = typeof _data === "function" ? _data({ ...opts, headers: optsHeaders }) : _data; - if (isPromise(body)) { - body.then((newData) => handleReply(mockDispatches, newData)); - return; - } - const responseData = getResponseData(body); - const responseHeaders = generateKeyValues(headers); - const responseTrailers = generateKeyValues(trailers); - handler.abort = nop; - handler.onHeaders(statusCode, responseHeaders, resume, getStatusText(statusCode)); - handler.onData(Buffer.from(responseData)); - handler.onComplete(responseTrailers); - deleteMockDispatch(mockDispatches, key); - } - function resume() { - } - return true; - } - function buildMockDispatch() { - const agent = this[kMockAgent]; - const origin = this[kOrigin]; - const originalDispatch = this[kOriginalDispatch]; - return function dispatch(opts, handler) { - if (agent.isMockActive) { - try { - mockDispatch.call(this, opts, handler); - } catch (error) { - if (error instanceof MockNotMatchedError) { - const netConnect = agent[kGetNetConnect](); - if (netConnect === false) { - throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect disabled)`); - } - if (checkNetConnect(netConnect, origin)) { - originalDispatch.call(this, opts, handler); - } else { - throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect is not enabled for this origin)`); - } - } else { - throw error; - } - } - } else { - originalDispatch.call(this, opts, handler); - } - }; - } - function checkNetConnect(netConnect, origin) { - const url = new URL(origin); - if (netConnect === true) { - return true; - } else if (Array.isArray(netConnect) && netConnect.some((matcher) => matchValue(matcher, url.host))) { - return true; - } - return false; - } - function buildMockOptions(opts) { - if (opts) { - const { agent, ...mockOptions } = opts; - return mockOptions; - } - } - module2.exports = { - getResponseData, - getMockDispatch, - addMockDispatch, - deleteMockDispatch, - buildKey, - generateKeyValues, - matchValue, - getResponse, - getStatusText, - mockDispatch, - buildMockDispatch, - checkNetConnect, - buildMockOptions, - getHeaderByName - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-interceptor.js -var require_mock_interceptor = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-interceptor.js"(exports2, module2) { - "use strict"; - var { getResponseData, buildKey, addMockDispatch } = require_mock_utils(); - var { - kDispatches, - kDispatchKey, - kDefaultHeaders, - kDefaultTrailers, - kContentLength, - kMockDispatch - } = require_mock_symbols(); - var { InvalidArgumentError } = require_errors(); - var { buildURL } = require_util(); - var MockScope = class { - constructor(mockDispatch) { - this[kMockDispatch] = mockDispatch; - } - /** - * Delay a reply by a set amount in ms. - */ - delay(waitInMs) { - if (typeof waitInMs !== "number" || !Number.isInteger(waitInMs) || waitInMs <= 0) { - throw new InvalidArgumentError("waitInMs must be a valid integer > 0"); - } - this[kMockDispatch].delay = waitInMs; - return this; - } - /** - * For a defined reply, never mark as consumed. - */ - persist() { - this[kMockDispatch].persist = true; - return this; - } - /** - * Allow one to define a reply for a set amount of matching requests. - */ - times(repeatTimes) { - if (typeof repeatTimes !== "number" || !Number.isInteger(repeatTimes) || repeatTimes <= 0) { - throw new InvalidArgumentError("repeatTimes must be a valid integer > 0"); - } - this[kMockDispatch].times = repeatTimes; - return this; - } - }; - var MockInterceptor = class { - constructor(opts, mockDispatches) { - if (typeof opts !== "object") { - throw new InvalidArgumentError("opts must be an object"); - } - if (typeof opts.path === "undefined") { - throw new InvalidArgumentError("opts.path must be defined"); - } - if (typeof opts.method === "undefined") { - opts.method = "GET"; - } - if (typeof opts.path === "string") { - if (opts.query) { - opts.path = buildURL(opts.path, opts.query); - } else { - const parsedURL = new URL(opts.path, "data://"); - opts.path = parsedURL.pathname + parsedURL.search; - } - } - if (typeof opts.method === "string") { - opts.method = opts.method.toUpperCase(); - } - this[kDispatchKey] = buildKey(opts); - this[kDispatches] = mockDispatches; - this[kDefaultHeaders] = {}; - this[kDefaultTrailers] = {}; - this[kContentLength] = false; - } - createMockScopeDispatchData(statusCode, data, responseOptions = {}) { - const responseData = getResponseData(data); - const contentLength = this[kContentLength] ? { "content-length": responseData.length } : {}; - const headers = { ...this[kDefaultHeaders], ...contentLength, ...responseOptions.headers }; - const trailers = { ...this[kDefaultTrailers], ...responseOptions.trailers }; - return { statusCode, data, headers, trailers }; - } - validateReplyParameters(statusCode, data, responseOptions) { - if (typeof statusCode === "undefined") { - throw new InvalidArgumentError("statusCode must be defined"); - } - if (typeof data === "undefined") { - throw new InvalidArgumentError("data must be defined"); - } - if (typeof responseOptions !== "object") { - throw new InvalidArgumentError("responseOptions must be an object"); - } - } - /** - * Mock an undici request with a defined reply. - */ - reply(replyData) { - if (typeof replyData === "function") { - const wrappedDefaultsCallback = (opts) => { - const resolvedData = replyData(opts); - if (typeof resolvedData !== "object") { - throw new InvalidArgumentError("reply options callback must return an object"); - } - const { statusCode: statusCode2, data: data2 = "", responseOptions: responseOptions2 = {} } = resolvedData; - this.validateReplyParameters(statusCode2, data2, responseOptions2); - return { - ...this.createMockScopeDispatchData(statusCode2, data2, responseOptions2) - }; - }; - const newMockDispatch2 = addMockDispatch(this[kDispatches], this[kDispatchKey], wrappedDefaultsCallback); - return new MockScope(newMockDispatch2); - } - const [statusCode, data = "", responseOptions = {}] = [...arguments]; - this.validateReplyParameters(statusCode, data, responseOptions); - const dispatchData = this.createMockScopeDispatchData(statusCode, data, responseOptions); - const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], dispatchData); - return new MockScope(newMockDispatch); - } - /** - * Mock an undici request with a defined error. - */ - replyWithError(error) { - if (typeof error === "undefined") { - throw new InvalidArgumentError("error must be defined"); - } - const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], { error }); - return new MockScope(newMockDispatch); - } - /** - * Set default reply headers on the interceptor for subsequent replies - */ - defaultReplyHeaders(headers) { - if (typeof headers === "undefined") { - throw new InvalidArgumentError("headers must be defined"); - } - this[kDefaultHeaders] = headers; - return this; - } - /** - * Set default reply trailers on the interceptor for subsequent replies - */ - defaultReplyTrailers(trailers) { - if (typeof trailers === "undefined") { - throw new InvalidArgumentError("trailers must be defined"); - } - this[kDefaultTrailers] = trailers; - return this; - } - /** - * Set reply content length header for replies on the interceptor - */ - replyContentLength() { - this[kContentLength] = true; - return this; - } - }; - module2.exports.MockInterceptor = MockInterceptor; - module2.exports.MockScope = MockScope; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-client.js -var require_mock_client = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-client.js"(exports2, module2) { - "use strict"; - var { promisify } = require("util"); - var Client = require_client(); - var { buildMockDispatch } = require_mock_utils(); - var { - kDispatches, - kMockAgent, - kClose, - kOriginalClose, - kOrigin, - kOriginalDispatch, - kConnected - } = require_mock_symbols(); - var { MockInterceptor } = require_mock_interceptor(); - var Symbols = require_symbols(); - var { InvalidArgumentError } = require_errors(); - var MockClient = class extends Client { - constructor(origin, opts) { - super(origin, opts); - if (!opts || !opts.agent || typeof opts.agent.dispatch !== "function") { - throw new InvalidArgumentError("Argument opts.agent must implement Agent"); - } - this[kMockAgent] = opts.agent; - this[kOrigin] = origin; - this[kDispatches] = []; - this[kConnected] = 1; - this[kOriginalDispatch] = this.dispatch; - this[kOriginalClose] = this.close.bind(this); - this.dispatch = buildMockDispatch.call(this); - this.close = this[kClose]; - } - get [Symbols.kConnected]() { - return this[kConnected]; - } - /** - * Sets up the base interceptor for mocking replies from undici. - */ - intercept(opts) { - return new MockInterceptor(opts, this[kDispatches]); - } - async [kClose]() { - await promisify(this[kOriginalClose])(); - this[kConnected] = 0; - this[kMockAgent][Symbols.kClients].delete(this[kOrigin]); - } - }; - module2.exports = MockClient; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-pool.js -var require_mock_pool = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) { - "use strict"; - var { promisify } = require("util"); - var Pool = require_pool(); - var { buildMockDispatch } = require_mock_utils(); - var { - kDispatches, - kMockAgent, - kClose, - kOriginalClose, - kOrigin, - kOriginalDispatch, - kConnected - } = require_mock_symbols(); - var { MockInterceptor } = require_mock_interceptor(); - var Symbols = require_symbols(); - var { InvalidArgumentError } = require_errors(); - var MockPool = class extends Pool { - constructor(origin, opts) { - super(origin, opts); - if (!opts || !opts.agent || typeof opts.agent.dispatch !== "function") { - throw new InvalidArgumentError("Argument opts.agent must implement Agent"); - } - this[kMockAgent] = opts.agent; - this[kOrigin] = origin; - this[kDispatches] = []; - this[kConnected] = 1; - this[kOriginalDispatch] = this.dispatch; - this[kOriginalClose] = this.close.bind(this); - this.dispatch = buildMockDispatch.call(this); - this.close = this[kClose]; - } - get [Symbols.kConnected]() { - return this[kConnected]; - } - /** - * Sets up the base interceptor for mocking replies from undici. - */ - intercept(opts) { - return new MockInterceptor(opts, this[kDispatches]); - } - async [kClose]() { - await promisify(this[kOriginalClose])(); - this[kConnected] = 0; - this[kMockAgent][Symbols.kClients].delete(this[kOrigin]); - } - }; - module2.exports = MockPool; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/pluralizer.js -var require_pluralizer = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/pluralizer.js"(exports2, module2) { - "use strict"; - var singulars = { - pronoun: "it", - is: "is", - was: "was", - this: "this" - }; - var plurals = { - pronoun: "they", - is: "are", - was: "were", - this: "these" - }; - module2.exports = class Pluralizer { - constructor(singular, plural) { - this.singular = singular; - this.plural = plural; - } - pluralize(count) { - const one = count === 1; - const keys = one ? singulars : plurals; - const noun = one ? this.singular : this.plural; - return { ...keys, count, noun }; - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/pending-interceptors-formatter.js -var require_pending_interceptors_formatter = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/pending-interceptors-formatter.js"(exports2, module2) { - "use strict"; - var { Transform } = require("stream"); - var { Console } = require("console"); - module2.exports = class PendingInterceptorsFormatter { - constructor({ disableColors } = {}) { - this.transform = new Transform({ - transform(chunk, _enc, cb) { - cb(null, chunk); - } - }); - this.logger = new Console({ - stdout: this.transform, - inspectOptions: { - colors: !disableColors && !process.env.CI - } - }); - } - format(pendingInterceptors) { - const withPrettyHeaders = pendingInterceptors.map( - ({ method, path: path2, data: { statusCode }, persist, times, timesInvoked, origin }) => ({ - Method: method, - Origin: origin, - Path: path2, - "Status code": statusCode, - Persistent: persist ? "\u2705" : "\u274C", - Invocations: timesInvoked, - Remaining: persist ? Infinity : times - timesInvoked - }) - ); - this.logger.table(withPrettyHeaders); - return this.transform.read().toString(); - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/mock/mock-agent.js -var require_mock_agent = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/mock/mock-agent.js"(exports2, module2) { - "use strict"; - var { kClients } = require_symbols(); - var Agent = require_agent(); - var { - kAgent, - kMockAgentSet, - kMockAgentGet, - kDispatches, - kIsMockActive, - kNetConnect, - kGetNetConnect, - kOptions, - kFactory - } = require_mock_symbols(); - var MockClient = require_mock_client(); - var MockPool = require_mock_pool(); - var { matchValue, buildMockOptions } = require_mock_utils(); - var { InvalidArgumentError, UndiciError } = require_errors(); - var Dispatcher = require_dispatcher(); - var Pluralizer = require_pluralizer(); - var PendingInterceptorsFormatter = require_pending_interceptors_formatter(); - var FakeWeakRef = class { - constructor(value) { - this.value = value; - } - deref() { - return this.value; - } - }; - var MockAgent = class extends Dispatcher { - constructor(opts) { - super(opts); - this[kNetConnect] = true; - this[kIsMockActive] = true; - if (opts && opts.agent && typeof opts.agent.dispatch !== "function") { - throw new InvalidArgumentError("Argument opts.agent must implement Agent"); - } - const agent = opts && opts.agent ? opts.agent : new Agent(opts); - this[kAgent] = agent; - this[kClients] = agent[kClients]; - this[kOptions] = buildMockOptions(opts); - } - get(origin) { - let dispatcher = this[kMockAgentGet](origin); - if (!dispatcher) { - dispatcher = this[kFactory](origin); - this[kMockAgentSet](origin, dispatcher); - } - return dispatcher; - } - dispatch(opts, handler) { - this.get(opts.origin); - return this[kAgent].dispatch(opts, handler); - } - async close() { - await this[kAgent].close(); - this[kClients].clear(); - } - deactivate() { - this[kIsMockActive] = false; - } - activate() { - this[kIsMockActive] = true; - } - enableNetConnect(matcher) { - if (typeof matcher === "string" || typeof matcher === "function" || matcher instanceof RegExp) { - if (Array.isArray(this[kNetConnect])) { - this[kNetConnect].push(matcher); - } else { - this[kNetConnect] = [matcher]; - } - } else if (typeof matcher === "undefined") { - this[kNetConnect] = true; - } else { - throw new InvalidArgumentError("Unsupported matcher. Must be one of String|Function|RegExp."); - } - } - disableNetConnect() { - this[kNetConnect] = false; - } - // This is required to bypass issues caused by using global symbols - see: - // https://github.com/nodejs/undici/issues/1447 - get isMockActive() { - return this[kIsMockActive]; - } - [kMockAgentSet](origin, dispatcher) { - this[kClients].set(origin, new FakeWeakRef(dispatcher)); - } - [kFactory](origin) { - const mockOptions = Object.assign({ agent: this }, this[kOptions]); - return this[kOptions] && this[kOptions].connections === 1 ? new MockClient(origin, mockOptions) : new MockPool(origin, mockOptions); - } - [kMockAgentGet](origin) { - const ref = this[kClients].get(origin); - if (ref) { - return ref.deref(); - } - if (typeof origin !== "string") { - const dispatcher = this[kFactory]("http://localhost:9999"); - this[kMockAgentSet](origin, dispatcher); - return dispatcher; - } - for (const [keyMatcher, nonExplicitRef] of Array.from(this[kClients])) { - const nonExplicitDispatcher = nonExplicitRef.deref(); - if (nonExplicitDispatcher && typeof keyMatcher !== "string" && matchValue(keyMatcher, origin)) { - const dispatcher = this[kFactory](origin); - this[kMockAgentSet](origin, dispatcher); - dispatcher[kDispatches] = nonExplicitDispatcher[kDispatches]; - return dispatcher; - } - } - } - [kGetNetConnect]() { - return this[kNetConnect]; - } - pendingInterceptors() { - const mockAgentClients = this[kClients]; - return Array.from(mockAgentClients.entries()).flatMap(([origin, scope]) => scope.deref()[kDispatches].map((dispatch) => ({ ...dispatch, origin }))).filter(({ pending }) => pending); - } - assertNoPendingInterceptors({ pendingInterceptorsFormatter = new PendingInterceptorsFormatter() } = {}) { - const pending = this.pendingInterceptors(); - if (pending.length === 0) { - return; - } - const pluralizer = new Pluralizer("interceptor", "interceptors").pluralize(pending.length); - throw new UndiciError(` -${pluralizer.count} ${pluralizer.noun} ${pluralizer.is} pending: - -${pendingInterceptorsFormatter.format(pending)} -`.trim()); - } - }; - module2.exports = MockAgent; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/proxy-agent.js -var require_proxy_agent = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/proxy-agent.js"(exports2, module2) { - "use strict"; - var { kProxy, kClose, kDestroy, kInterceptors } = require_symbols(); - var { URL: URL2 } = require("url"); - var Agent = require_agent(); - var Pool = require_pool(); - var DispatcherBase = require_dispatcher_base(); - var { InvalidArgumentError, RequestAbortedError } = require_errors(); - var buildConnector = require_connect(); - var kAgent = Symbol("proxy agent"); - var kClient = Symbol("proxy client"); - var kProxyHeaders = Symbol("proxy headers"); - var kRequestTls = Symbol("request tls settings"); - var kProxyTls = Symbol("proxy tls settings"); - var kConnectEndpoint = Symbol("connect endpoint function"); - function defaultProtocolPort(protocol) { - return protocol === "https:" ? 443 : 80; - } - function buildProxyOptions(opts) { - if (typeof opts === "string") { - opts = { uri: opts }; - } - if (!opts || !opts.uri) { - throw new InvalidArgumentError("Proxy opts.uri is mandatory"); - } - return { - uri: opts.uri, - protocol: opts.protocol || "https" - }; - } - function defaultFactory(origin, opts) { - return new Pool(origin, opts); - } - var ProxyAgent = class extends DispatcherBase { - constructor(opts) { - super(opts); - this[kProxy] = buildProxyOptions(opts); - this[kAgent] = new Agent(opts); - this[kInterceptors] = opts.interceptors && opts.interceptors.ProxyAgent && Array.isArray(opts.interceptors.ProxyAgent) ? opts.interceptors.ProxyAgent : []; - if (typeof opts === "string") { - opts = { uri: opts }; - } - if (!opts || !opts.uri) { - throw new InvalidArgumentError("Proxy opts.uri is mandatory"); - } - const { clientFactory = defaultFactory } = opts; - if (typeof clientFactory !== "function") { - throw new InvalidArgumentError("Proxy opts.clientFactory must be a function."); - } - this[kRequestTls] = opts.requestTls; - this[kProxyTls] = opts.proxyTls; - this[kProxyHeaders] = opts.headers || {}; - const resolvedUrl = new URL2(opts.uri); - const { origin, port, host, username, password } = resolvedUrl; - if (opts.auth && opts.token) { - throw new InvalidArgumentError("opts.auth cannot be used in combination with opts.token"); - } else if (opts.auth) { - this[kProxyHeaders]["proxy-authorization"] = `Basic ${opts.auth}`; - } else if (opts.token) { - this[kProxyHeaders]["proxy-authorization"] = opts.token; - } else if (username && password) { - this[kProxyHeaders]["proxy-authorization"] = `Basic ${Buffer.from(`${decodeURIComponent(username)}:${decodeURIComponent(password)}`).toString("base64")}`; - } - const connect = buildConnector({ ...opts.proxyTls }); - this[kConnectEndpoint] = buildConnector({ ...opts.requestTls }); - this[kClient] = clientFactory(resolvedUrl, { connect }); - this[kAgent] = new Agent({ - ...opts, - connect: async (opts2, callback) => { - let requestedHost = opts2.host; - if (!opts2.port) { - requestedHost += `:${defaultProtocolPort(opts2.protocol)}`; - } - try { - const { socket, statusCode } = await this[kClient].connect({ - origin, - port, - path: requestedHost, - signal: opts2.signal, - headers: { - ...this[kProxyHeaders], - host - } - }); - if (statusCode !== 200) { - socket.on("error", () => { - }).destroy(); - callback(new RequestAbortedError(`Proxy response (${statusCode}) !== 200 when HTTP Tunneling`)); - } - if (opts2.protocol !== "https:") { - callback(null, socket); - return; - } - let servername; - if (this[kRequestTls]) { - servername = this[kRequestTls].servername; - } else { - servername = opts2.servername; - } - this[kConnectEndpoint]({ ...opts2, servername, httpSocket: socket }, callback); - } catch (err) { - callback(err); - } - } - }); - } - dispatch(opts, handler) { - const { host } = new URL2(opts.origin); - const headers = buildHeaders(opts.headers); - throwIfProxyAuthIsSent(headers); - return this[kAgent].dispatch( - { - ...opts, - headers: { - ...headers, - host - } - }, - handler - ); - } - async [kClose]() { - await this[kAgent].close(); - await this[kClient].close(); - } - async [kDestroy]() { - await this[kAgent].destroy(); - await this[kClient].destroy(); - } - }; - function buildHeaders(headers) { - if (Array.isArray(headers)) { - const headersPair = {}; - for (let i = 0; i < headers.length; i += 2) { - headersPair[headers[i]] = headers[i + 1]; - } - return headersPair; - } - return headers; - } - function throwIfProxyAuthIsSent(headers) { - const existProxyAuth = headers && Object.keys(headers).find((key) => key.toLowerCase() === "proxy-authorization"); - if (existProxyAuth) { - throw new InvalidArgumentError("Proxy-Authorization should be sent in ProxyAgent constructor"); - } - } - module2.exports = ProxyAgent; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/handler/RetryHandler.js -var require_RetryHandler = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/handler/RetryHandler.js"(exports2, module2) { - var assert = require("assert"); - var { kRetryHandlerDefaultRetry } = require_symbols(); - var { RequestRetryError } = require_errors(); - var { isDisturbed, parseHeaders, parseRangeHeader } = require_util(); - function calculateRetryAfterHeader(retryAfter) { - const current = Date.now(); - const diff = new Date(retryAfter).getTime() - current; - return diff; - } - var RetryHandler = class { - constructor(opts, handlers) { - const { retryOptions, ...dispatchOpts } = opts; - const { - // Retry scoped - retry: retryFn, - maxRetries, - maxTimeout, - minTimeout, - timeoutFactor, - // Response scoped - methods, - errorCodes, - retryAfter, - statusCodes - } = retryOptions ?? {}; - this.dispatch = handlers.dispatch; - this.handler = handlers.handler; - this.opts = dispatchOpts; - this.abort = null; - this.aborted = false; - this.retryOpts = { - retry: retryFn ?? RetryHandler[kRetryHandlerDefaultRetry], - retryAfter: retryAfter ?? true, - maxTimeout: maxTimeout ?? 30 * 1e3, - // 30s, - timeout: minTimeout ?? 500, - // .5s - timeoutFactor: timeoutFactor ?? 2, - maxRetries: maxRetries ?? 5, - // What errors we should retry - methods: methods ?? ["GET", "HEAD", "OPTIONS", "PUT", "DELETE", "TRACE"], - // Indicates which errors to retry - statusCodes: statusCodes ?? [500, 502, 503, 504, 429], - // List of errors to retry - errorCodes: errorCodes ?? [ - "ECONNRESET", - "ECONNREFUSED", - "ENOTFOUND", - "ENETDOWN", - "ENETUNREACH", - "EHOSTDOWN", - "EHOSTUNREACH", - "EPIPE" - ] - }; - this.retryCount = 0; - this.start = 0; - this.end = null; - this.etag = null; - this.resume = null; - this.handler.onConnect((reason) => { - this.aborted = true; - if (this.abort) { - this.abort(reason); - } else { - this.reason = reason; - } - }); - } - onRequestSent() { - if (this.handler.onRequestSent) { - this.handler.onRequestSent(); - } - } - onUpgrade(statusCode, headers, socket) { - if (this.handler.onUpgrade) { - this.handler.onUpgrade(statusCode, headers, socket); - } - } - onConnect(abort) { - if (this.aborted) { - abort(this.reason); - } else { - this.abort = abort; - } - } - onBodySent(chunk) { - if (this.handler.onBodySent) - return this.handler.onBodySent(chunk); - } - static [kRetryHandlerDefaultRetry](err, { state, opts }, cb) { - const { statusCode, code, headers } = err; - const { method, retryOptions } = opts; - const { - maxRetries, - timeout, - maxTimeout, - timeoutFactor, - statusCodes, - errorCodes, - methods - } = retryOptions; - let { counter, currentTimeout } = state; - currentTimeout = currentTimeout != null && currentTimeout > 0 ? currentTimeout : timeout; - if (code && code !== "UND_ERR_REQ_RETRY" && code !== "UND_ERR_SOCKET" && !errorCodes.includes(code)) { - cb(err); - return; - } - if (Array.isArray(methods) && !methods.includes(method)) { - cb(err); - return; - } - if (statusCode != null && Array.isArray(statusCodes) && !statusCodes.includes(statusCode)) { - cb(err); - return; - } - if (counter > maxRetries) { - cb(err); - return; - } - let retryAfterHeader = headers != null && headers["retry-after"]; - if (retryAfterHeader) { - retryAfterHeader = Number(retryAfterHeader); - retryAfterHeader = isNaN(retryAfterHeader) ? calculateRetryAfterHeader(retryAfterHeader) : retryAfterHeader * 1e3; - } - const retryTimeout = retryAfterHeader > 0 ? Math.min(retryAfterHeader, maxTimeout) : Math.min(currentTimeout * timeoutFactor ** counter, maxTimeout); - state.currentTimeout = retryTimeout; - setTimeout(() => cb(null), retryTimeout); - } - onHeaders(statusCode, rawHeaders, resume, statusMessage) { - const headers = parseHeaders(rawHeaders); - this.retryCount += 1; - if (statusCode >= 300) { - this.abort( - new RequestRetryError("Request failed", statusCode, { - headers, - count: this.retryCount - }) - ); - return false; - } - if (this.resume != null) { - this.resume = null; - if (statusCode !== 206) { - return true; - } - const contentRange = parseRangeHeader(headers["content-range"]); - if (!contentRange) { - this.abort( - new RequestRetryError("Content-Range mismatch", statusCode, { - headers, - count: this.retryCount - }) - ); - return false; - } - if (this.etag != null && this.etag !== headers.etag) { - this.abort( - new RequestRetryError("ETag mismatch", statusCode, { - headers, - count: this.retryCount - }) - ); - return false; - } - const { start, size, end = size } = contentRange; - assert(this.start === start, "content-range mismatch"); - assert(this.end == null || this.end === end, "content-range mismatch"); - this.resume = resume; - return true; - } - if (this.end == null) { - if (statusCode === 206) { - const range = parseRangeHeader(headers["content-range"]); - if (range == null) { - return this.handler.onHeaders( - statusCode, - rawHeaders, - resume, - statusMessage - ); - } - const { start, size, end = size } = range; - assert( - start != null && Number.isFinite(start) && this.start !== start, - "content-range mismatch" - ); - assert(Number.isFinite(start)); - assert( - end != null && Number.isFinite(end) && this.end !== end, - "invalid content-length" - ); - this.start = start; - this.end = end; - } - if (this.end == null) { - const contentLength = headers["content-length"]; - this.end = contentLength != null ? Number(contentLength) : null; - } - assert(Number.isFinite(this.start)); - assert( - this.end == null || Number.isFinite(this.end), - "invalid content-length" - ); - this.resume = resume; - this.etag = headers.etag != null ? headers.etag : null; - return this.handler.onHeaders( - statusCode, - rawHeaders, - resume, - statusMessage - ); - } - const err = new RequestRetryError("Request failed", statusCode, { - headers, - count: this.retryCount - }); - this.abort(err); - return false; - } - onData(chunk) { - this.start += chunk.length; - return this.handler.onData(chunk); - } - onComplete(rawTrailers) { - this.retryCount = 0; - return this.handler.onComplete(rawTrailers); - } - onError(err) { - if (this.aborted || isDisturbed(this.opts.body)) { - return this.handler.onError(err); - } - this.retryOpts.retry( - err, - { - state: { counter: this.retryCount++, currentTimeout: this.retryAfter }, - opts: { retryOptions: this.retryOpts, ...this.opts } - }, - onRetry.bind(this) - ); - function onRetry(err2) { - if (err2 != null || this.aborted || isDisturbed(this.opts.body)) { - return this.handler.onError(err2); - } - if (this.start !== 0) { - this.opts = { - ...this.opts, - headers: { - ...this.opts.headers, - range: `bytes=${this.start}-${this.end ?? ""}` - } - }; - } - try { - this.dispatch(this.opts, this); - } catch (err3) { - this.handler.onError(err3); - } - } - } - }; - module2.exports = RetryHandler; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/global.js -var require_global2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/global.js"(exports2, module2) { - "use strict"; - var globalDispatcher = Symbol.for("undici.globalDispatcher.1"); - var { InvalidArgumentError } = require_errors(); - var Agent = require_agent(); - if (getGlobalDispatcher() === void 0) { - setGlobalDispatcher(new Agent()); - } - function setGlobalDispatcher(agent) { - if (!agent || typeof agent.dispatch !== "function") { - throw new InvalidArgumentError("Argument agent must implement Agent"); - } - Object.defineProperty(globalThis, globalDispatcher, { - value: agent, - writable: true, - enumerable: false, - configurable: false - }); - } - function getGlobalDispatcher() { - return globalThis[globalDispatcher]; - } - module2.exports = { - setGlobalDispatcher, - getGlobalDispatcher - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/handler/DecoratorHandler.js -var require_DecoratorHandler = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/handler/DecoratorHandler.js"(exports2, module2) { - "use strict"; - module2.exports = class DecoratorHandler { - constructor(handler) { - this.handler = handler; - } - onConnect(...args) { - return this.handler.onConnect(...args); - } - onError(...args) { - return this.handler.onError(...args); - } - onUpgrade(...args) { - return this.handler.onUpgrade(...args); - } - onHeaders(...args) { - return this.handler.onHeaders(...args); - } - onData(...args) { - return this.handler.onData(...args); - } - onComplete(...args) { - return this.handler.onComplete(...args); - } - onBodySent(...args) { - return this.handler.onBodySent(...args); - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/headers.js -var require_headers = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/headers.js"(exports2, module2) { - "use strict"; - var { kHeadersList, kConstruct } = require_symbols(); - var { kGuard } = require_symbols2(); - var { kEnumerableProperty } = require_util(); - var { - makeIterator, - isValidHeaderName, - isValidHeaderValue - } = require_util2(); - var { webidl } = require_webidl(); - var assert = require("assert"); - var kHeadersMap = Symbol("headers map"); - var kHeadersSortedMap = Symbol("headers map sorted"); - function isHTTPWhiteSpaceCharCode(code) { - return code === 10 || code === 13 || code === 9 || code === 32; - } - function headerValueNormalize(potentialValue) { - let i = 0; - let j = potentialValue.length; - while (j > i && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(j - 1))) - --j; - while (j > i && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(i))) - ++i; - return i === 0 && j === potentialValue.length ? potentialValue : potentialValue.substring(i, j); - } - function fill(headers, object) { - if (Array.isArray(object)) { - for (let i = 0; i < object.length; ++i) { - const header = object[i]; - if (header.length !== 2) { - throw webidl.errors.exception({ - header: "Headers constructor", - message: `expected name/value pair to be length 2, found ${header.length}.` - }); - } - appendHeader(headers, header[0], header[1]); - } - } else if (typeof object === "object" && object !== null) { - const keys = Object.keys(object); - for (let i = 0; i < keys.length; ++i) { - appendHeader(headers, keys[i], object[keys[i]]); - } - } else { - throw webidl.errors.conversionFailed({ - prefix: "Headers constructor", - argument: "Argument 1", - types: ["sequence<sequence<ByteString>>", "record<ByteString, ByteString>"] - }); - } - } - function appendHeader(headers, name, value) { - value = headerValueNormalize(value); - if (!isValidHeaderName(name)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.append", - value: name, - type: "header name" - }); - } else if (!isValidHeaderValue(value)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.append", - value, - type: "header value" - }); - } - if (headers[kGuard] === "immutable") { - throw new TypeError("immutable"); - } else if (headers[kGuard] === "request-no-cors") { - } - return headers[kHeadersList].append(name, value); - } - var HeadersList = class { - /** @type {[string, string][]|null} */ - cookies = null; - constructor(init) { - if (init instanceof HeadersList) { - this[kHeadersMap] = new Map(init[kHeadersMap]); - this[kHeadersSortedMap] = init[kHeadersSortedMap]; - this.cookies = init.cookies === null ? null : [...init.cookies]; - } else { - this[kHeadersMap] = new Map(init); - this[kHeadersSortedMap] = null; - } - } - // https://fetch.spec.whatwg.org/#header-list-contains - contains(name) { - name = name.toLowerCase(); - return this[kHeadersMap].has(name); - } - clear() { - this[kHeadersMap].clear(); - this[kHeadersSortedMap] = null; - this.cookies = null; - } - // https://fetch.spec.whatwg.org/#concept-header-list-append - append(name, value) { - this[kHeadersSortedMap] = null; - const lowercaseName = name.toLowerCase(); - const exists = this[kHeadersMap].get(lowercaseName); - if (exists) { - const delimiter = lowercaseName === "cookie" ? "; " : ", "; - this[kHeadersMap].set(lowercaseName, { - name: exists.name, - value: `${exists.value}${delimiter}${value}` - }); - } else { - this[kHeadersMap].set(lowercaseName, { name, value }); - } - if (lowercaseName === "set-cookie") { - this.cookies ??= []; - this.cookies.push(value); - } - } - // https://fetch.spec.whatwg.org/#concept-header-list-set - set(name, value) { - this[kHeadersSortedMap] = null; - const lowercaseName = name.toLowerCase(); - if (lowercaseName === "set-cookie") { - this.cookies = [value]; - } - this[kHeadersMap].set(lowercaseName, { name, value }); - } - // https://fetch.spec.whatwg.org/#concept-header-list-delete - delete(name) { - this[kHeadersSortedMap] = null; - name = name.toLowerCase(); - if (name === "set-cookie") { - this.cookies = null; - } - this[kHeadersMap].delete(name); - } - // https://fetch.spec.whatwg.org/#concept-header-list-get - get(name) { - const value = this[kHeadersMap].get(name.toLowerCase()); - return value === void 0 ? null : value.value; - } - *[Symbol.iterator]() { - for (const [name, { value }] of this[kHeadersMap]) { - yield [name, value]; - } - } - get entries() { - const headers = {}; - if (this[kHeadersMap].size) { - for (const { name, value } of this[kHeadersMap].values()) { - headers[name] = value; - } - } - return headers; - } - }; - var Headers = class { - constructor(init = void 0) { - if (init === kConstruct) { - return; - } - this[kHeadersList] = new HeadersList(); - this[kGuard] = "none"; - if (init !== void 0) { - init = webidl.converters.HeadersInit(init); - fill(this, init); - } - } - // https://fetch.spec.whatwg.org/#dom-headers-append - append(name, value) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 2, { header: "Headers.append" }); - name = webidl.converters.ByteString(name); - value = webidl.converters.ByteString(value); - return appendHeader(this, name, value); - } - // https://fetch.spec.whatwg.org/#dom-headers-delete - delete(name) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 1, { header: "Headers.delete" }); - name = webidl.converters.ByteString(name); - if (!isValidHeaderName(name)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.delete", - value: name, - type: "header name" - }); - } - if (this[kGuard] === "immutable") { - throw new TypeError("immutable"); - } else if (this[kGuard] === "request-no-cors") { - } - if (!this[kHeadersList].contains(name)) { - return; - } - this[kHeadersList].delete(name); - } - // https://fetch.spec.whatwg.org/#dom-headers-get - get(name) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 1, { header: "Headers.get" }); - name = webidl.converters.ByteString(name); - if (!isValidHeaderName(name)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.get", - value: name, - type: "header name" - }); - } - return this[kHeadersList].get(name); - } - // https://fetch.spec.whatwg.org/#dom-headers-has - has(name) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 1, { header: "Headers.has" }); - name = webidl.converters.ByteString(name); - if (!isValidHeaderName(name)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.has", - value: name, - type: "header name" - }); - } - return this[kHeadersList].contains(name); - } - // https://fetch.spec.whatwg.org/#dom-headers-set - set(name, value) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 2, { header: "Headers.set" }); - name = webidl.converters.ByteString(name); - value = webidl.converters.ByteString(value); - value = headerValueNormalize(value); - if (!isValidHeaderName(name)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.set", - value: name, - type: "header name" - }); - } else if (!isValidHeaderValue(value)) { - throw webidl.errors.invalidArgument({ - prefix: "Headers.set", - value, - type: "header value" - }); - } - if (this[kGuard] === "immutable") { - throw new TypeError("immutable"); - } else if (this[kGuard] === "request-no-cors") { - } - this[kHeadersList].set(name, value); - } - // https://fetch.spec.whatwg.org/#dom-headers-getsetcookie - getSetCookie() { - webidl.brandCheck(this, Headers); - const list = this[kHeadersList].cookies; - if (list) { - return [...list]; - } - return []; - } - // https://fetch.spec.whatwg.org/#concept-header-list-sort-and-combine - get [kHeadersSortedMap]() { - if (this[kHeadersList][kHeadersSortedMap]) { - return this[kHeadersList][kHeadersSortedMap]; - } - const headers = []; - const names = [...this[kHeadersList]].sort((a, b) => a[0] < b[0] ? -1 : 1); - const cookies = this[kHeadersList].cookies; - for (let i = 0; i < names.length; ++i) { - const [name, value] = names[i]; - if (name === "set-cookie") { - for (let j = 0; j < cookies.length; ++j) { - headers.push([name, cookies[j]]); - } - } else { - assert(value !== null); - headers.push([name, value]); - } - } - this[kHeadersList][kHeadersSortedMap] = headers; - return headers; - } - keys() { - webidl.brandCheck(this, Headers); - if (this[kGuard] === "immutable") { - const value = this[kHeadersSortedMap]; - return makeIterator( - () => value, - "Headers", - "key" - ); - } - return makeIterator( - () => [...this[kHeadersSortedMap].values()], - "Headers", - "key" - ); - } - values() { - webidl.brandCheck(this, Headers); - if (this[kGuard] === "immutable") { - const value = this[kHeadersSortedMap]; - return makeIterator( - () => value, - "Headers", - "value" - ); - } - return makeIterator( - () => [...this[kHeadersSortedMap].values()], - "Headers", - "value" - ); - } - entries() { - webidl.brandCheck(this, Headers); - if (this[kGuard] === "immutable") { - const value = this[kHeadersSortedMap]; - return makeIterator( - () => value, - "Headers", - "key+value" - ); - } - return makeIterator( - () => [...this[kHeadersSortedMap].values()], - "Headers", - "key+value" - ); - } - /** - * @param {(value: string, key: string, self: Headers) => void} callbackFn - * @param {unknown} thisArg - */ - forEach(callbackFn, thisArg = globalThis) { - webidl.brandCheck(this, Headers); - webidl.argumentLengthCheck(arguments, 1, { header: "Headers.forEach" }); - if (typeof callbackFn !== "function") { - throw new TypeError( - "Failed to execute 'forEach' on 'Headers': parameter 1 is not of type 'Function'." - ); - } - for (const [key, value] of this) { - callbackFn.apply(thisArg, [value, key, this]); - } - } - [Symbol.for("nodejs.util.inspect.custom")]() { - webidl.brandCheck(this, Headers); - return this[kHeadersList]; - } - }; - Headers.prototype[Symbol.iterator] = Headers.prototype.entries; - Object.defineProperties(Headers.prototype, { - append: kEnumerableProperty, - delete: kEnumerableProperty, - get: kEnumerableProperty, - has: kEnumerableProperty, - set: kEnumerableProperty, - getSetCookie: kEnumerableProperty, - keys: kEnumerableProperty, - values: kEnumerableProperty, - entries: kEnumerableProperty, - forEach: kEnumerableProperty, - [Symbol.iterator]: { enumerable: false }, - [Symbol.toStringTag]: { - value: "Headers", - configurable: true - } - }); - webidl.converters.HeadersInit = function(V) { - if (webidl.util.Type(V) === "Object") { - if (V[Symbol.iterator]) { - return webidl.converters["sequence<sequence<ByteString>>"](V); - } - return webidl.converters["record<ByteString, ByteString>"](V); - } - throw webidl.errors.conversionFailed({ - prefix: "Headers constructor", - argument: "Argument 1", - types: ["sequence<sequence<ByteString>>", "record<ByteString, ByteString>"] - }); - }; - module2.exports = { - fill, - Headers, - HeadersList - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/response.js -var require_response = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/response.js"(exports2, module2) { - "use strict"; - var { Headers, HeadersList, fill } = require_headers(); - var { extractBody, cloneBody, mixinBody } = require_body(); - var util2 = require_util(); - var { kEnumerableProperty } = util2; - var { - isValidReasonPhrase, - isCancelled, - isAborted, - isBlobLike, - serializeJavascriptValueToJSONString, - isErrorLike, - isomorphicEncode - } = require_util2(); - var { - redirectStatusSet, - nullBodyStatus, - DOMException: DOMException2 - } = require_constants2(); - var { kState, kHeaders, kGuard, kRealm } = require_symbols2(); - var { webidl } = require_webidl(); - var { FormData } = require_formdata(); - var { getGlobalOrigin } = require_global(); - var { URLSerializer } = require_dataURL(); - var { kHeadersList, kConstruct } = require_symbols(); - var assert = require("assert"); - var { types } = require("util"); - var ReadableStream = globalThis.ReadableStream || require("stream/web").ReadableStream; - var textEncoder = new TextEncoder("utf-8"); - var Response = class { - // Creates network error Response. - static error() { - const relevantRealm = { settingsObject: {} }; - const responseObject = new Response(); - responseObject[kState] = makeNetworkError(); - responseObject[kRealm] = relevantRealm; - responseObject[kHeaders][kHeadersList] = responseObject[kState].headersList; - responseObject[kHeaders][kGuard] = "immutable"; - responseObject[kHeaders][kRealm] = relevantRealm; - return responseObject; - } - // https://fetch.spec.whatwg.org/#dom-response-json - static json(data, init = {}) { - webidl.argumentLengthCheck(arguments, 1, { header: "Response.json" }); - if (init !== null) { - init = webidl.converters.ResponseInit(init); - } - const bytes = textEncoder.encode( - serializeJavascriptValueToJSONString(data) - ); - const body = extractBody(bytes); - const relevantRealm = { settingsObject: {} }; - const responseObject = new Response(); - responseObject[kRealm] = relevantRealm; - responseObject[kHeaders][kGuard] = "response"; - responseObject[kHeaders][kRealm] = relevantRealm; - initializeResponse(responseObject, init, { body: body[0], type: "application/json" }); - return responseObject; - } - // Creates a redirect Response that redirects to url with status status. - static redirect(url, status = 302) { - const relevantRealm = { settingsObject: {} }; - webidl.argumentLengthCheck(arguments, 1, { header: "Response.redirect" }); - url = webidl.converters.USVString(url); - status = webidl.converters["unsigned short"](status); - let parsedURL; - try { - parsedURL = new URL(url, getGlobalOrigin()); - } catch (err) { - throw Object.assign(new TypeError("Failed to parse URL from " + url), { - cause: err - }); - } - if (!redirectStatusSet.has(status)) { - throw new RangeError("Invalid status code " + status); - } - const responseObject = new Response(); - responseObject[kRealm] = relevantRealm; - responseObject[kHeaders][kGuard] = "immutable"; - responseObject[kHeaders][kRealm] = relevantRealm; - responseObject[kState].status = status; - const value = isomorphicEncode(URLSerializer(parsedURL)); - responseObject[kState].headersList.append("location", value); - return responseObject; - } - // https://fetch.spec.whatwg.org/#dom-response - constructor(body = null, init = {}) { - if (body !== null) { - body = webidl.converters.BodyInit(body); - } - init = webidl.converters.ResponseInit(init); - this[kRealm] = { settingsObject: {} }; - this[kState] = makeResponse({}); - this[kHeaders] = new Headers(kConstruct); - this[kHeaders][kGuard] = "response"; - this[kHeaders][kHeadersList] = this[kState].headersList; - this[kHeaders][kRealm] = this[kRealm]; - let bodyWithType = null; - if (body != null) { - const [extractedBody, type] = extractBody(body); - bodyWithType = { body: extractedBody, type }; - } - initializeResponse(this, init, bodyWithType); - } - // Returns response’s type, e.g., "cors". - get type() { - webidl.brandCheck(this, Response); - return this[kState].type; - } - // Returns response’s URL, if it has one; otherwise the empty string. - get url() { - webidl.brandCheck(this, Response); - const urlList = this[kState].urlList; - const url = urlList[urlList.length - 1] ?? null; - if (url === null) { - return ""; - } - return URLSerializer(url, true); - } - // Returns whether response was obtained through a redirect. - get redirected() { - webidl.brandCheck(this, Response); - return this[kState].urlList.length > 1; - } - // Returns response’s status. - get status() { - webidl.brandCheck(this, Response); - return this[kState].status; - } - // Returns whether response’s status is an ok status. - get ok() { - webidl.brandCheck(this, Response); - return this[kState].status >= 200 && this[kState].status <= 299; - } - // Returns response’s status message. - get statusText() { - webidl.brandCheck(this, Response); - return this[kState].statusText; - } - // Returns response’s headers as Headers. - get headers() { - webidl.brandCheck(this, Response); - return this[kHeaders]; - } - get body() { - webidl.brandCheck(this, Response); - return this[kState].body ? this[kState].body.stream : null; - } - get bodyUsed() { - webidl.brandCheck(this, Response); - return !!this[kState].body && util2.isDisturbed(this[kState].body.stream); - } - // Returns a clone of response. - clone() { - webidl.brandCheck(this, Response); - if (this.bodyUsed || this.body && this.body.locked) { - throw webidl.errors.exception({ - header: "Response.clone", - message: "Body has already been consumed." - }); - } - const clonedResponse = cloneResponse(this[kState]); - const clonedResponseObject = new Response(); - clonedResponseObject[kState] = clonedResponse; - clonedResponseObject[kRealm] = this[kRealm]; - clonedResponseObject[kHeaders][kHeadersList] = clonedResponse.headersList; - clonedResponseObject[kHeaders][kGuard] = this[kHeaders][kGuard]; - clonedResponseObject[kHeaders][kRealm] = this[kHeaders][kRealm]; - return clonedResponseObject; - } - }; - mixinBody(Response); - Object.defineProperties(Response.prototype, { - type: kEnumerableProperty, - url: kEnumerableProperty, - status: kEnumerableProperty, - ok: kEnumerableProperty, - redirected: kEnumerableProperty, - statusText: kEnumerableProperty, - headers: kEnumerableProperty, - clone: kEnumerableProperty, - body: kEnumerableProperty, - bodyUsed: kEnumerableProperty, - [Symbol.toStringTag]: { - value: "Response", - configurable: true - } - }); - Object.defineProperties(Response, { - json: kEnumerableProperty, - redirect: kEnumerableProperty, - error: kEnumerableProperty - }); - function cloneResponse(response) { - if (response.internalResponse) { - return filterResponse( - cloneResponse(response.internalResponse), - response.type - ); - } - const newResponse = makeResponse({ ...response, body: null }); - if (response.body != null) { - newResponse.body = cloneBody(response.body); - } - return newResponse; - } - function makeResponse(init) { - return { - aborted: false, - rangeRequested: false, - timingAllowPassed: false, - requestIncludesCredentials: false, - type: "default", - status: 200, - timingInfo: null, - cacheState: "", - statusText: "", - ...init, - headersList: init.headersList ? new HeadersList(init.headersList) : new HeadersList(), - urlList: init.urlList ? [...init.urlList] : [] - }; - } - function makeNetworkError(reason) { - const isError = isErrorLike(reason); - return makeResponse({ - type: "error", - status: 0, - error: isError ? reason : new Error(reason ? String(reason) : reason), - aborted: reason && reason.name === "AbortError" - }); - } - function makeFilteredResponse(response, state) { - state = { - internalResponse: response, - ...state - }; - return new Proxy(response, { - get(target, p) { - return p in state ? state[p] : target[p]; - }, - set(target, p, value) { - assert(!(p in state)); - target[p] = value; - return true; - } - }); - } - function filterResponse(response, type) { - if (type === "basic") { - return makeFilteredResponse(response, { - type: "basic", - headersList: response.headersList - }); - } else if (type === "cors") { - return makeFilteredResponse(response, { - type: "cors", - headersList: response.headersList - }); - } else if (type === "opaque") { - return makeFilteredResponse(response, { - type: "opaque", - urlList: Object.freeze([]), - status: 0, - statusText: "", - body: null - }); - } else if (type === "opaqueredirect") { - return makeFilteredResponse(response, { - type: "opaqueredirect", - status: 0, - statusText: "", - headersList: [], - body: null - }); - } else { - assert(false); - } - } - function makeAppropriateNetworkError(fetchParams, err = null) { - assert(isCancelled(fetchParams)); - return isAborted(fetchParams) ? makeNetworkError(Object.assign(new DOMException2("The operation was aborted.", "AbortError"), { cause: err })) : makeNetworkError(Object.assign(new DOMException2("Request was cancelled."), { cause: err })); - } - function initializeResponse(response, init, body) { - if (init.status !== null && (init.status < 200 || init.status > 599)) { - throw new RangeError('init["status"] must be in the range of 200 to 599, inclusive.'); - } - if ("statusText" in init && init.statusText != null) { - if (!isValidReasonPhrase(String(init.statusText))) { - throw new TypeError("Invalid statusText"); - } - } - if ("status" in init && init.status != null) { - response[kState].status = init.status; - } - if ("statusText" in init && init.statusText != null) { - response[kState].statusText = init.statusText; - } - if ("headers" in init && init.headers != null) { - fill(response[kHeaders], init.headers); - } - if (body) { - if (nullBodyStatus.includes(response.status)) { - throw webidl.errors.exception({ - header: "Response constructor", - message: "Invalid response status code " + response.status - }); - } - response[kState].body = body.body; - if (body.type != null && !response[kState].headersList.contains("Content-Type")) { - response[kState].headersList.append("content-type", body.type); - } - } - } - webidl.converters.ReadableStream = webidl.interfaceConverter( - ReadableStream - ); - webidl.converters.FormData = webidl.interfaceConverter( - FormData - ); - webidl.converters.URLSearchParams = webidl.interfaceConverter( - URLSearchParams - ); - webidl.converters.XMLHttpRequestBodyInit = function(V) { - if (typeof V === "string") { - return webidl.converters.USVString(V); - } - if (isBlobLike(V)) { - return webidl.converters.Blob(V, { strict: false }); - } - if (types.isArrayBuffer(V) || types.isTypedArray(V) || types.isDataView(V)) { - return webidl.converters.BufferSource(V); - } - if (util2.isFormDataLike(V)) { - return webidl.converters.FormData(V, { strict: false }); - } - if (V instanceof URLSearchParams) { - return webidl.converters.URLSearchParams(V); - } - return webidl.converters.DOMString(V); - }; - webidl.converters.BodyInit = function(V) { - if (V instanceof ReadableStream) { - return webidl.converters.ReadableStream(V); - } - if (V?.[Symbol.asyncIterator]) { - return V; - } - return webidl.converters.XMLHttpRequestBodyInit(V); - }; - webidl.converters.ResponseInit = webidl.dictionaryConverter([ - { - key: "status", - converter: webidl.converters["unsigned short"], - defaultValue: 200 - }, - { - key: "statusText", - converter: webidl.converters.ByteString, - defaultValue: "" - }, - { - key: "headers", - converter: webidl.converters.HeadersInit - } - ]); - module2.exports = { - makeNetworkError, - makeResponse, - makeAppropriateNetworkError, - filterResponse, - Response, - cloneResponse - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/request.js -var require_request2 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/request.js"(exports2, module2) { - "use strict"; - var { extractBody, mixinBody, cloneBody } = require_body(); - var { Headers, fill: fillHeaders, HeadersList } = require_headers(); - var { FinalizationRegistry } = require_dispatcher_weakref()(); - var util2 = require_util(); - var { - isValidHTTPToken, - sameOrigin, - normalizeMethod, - makePolicyContainer, - normalizeMethodRecord - } = require_util2(); - var { - forbiddenMethodsSet, - corsSafeListedMethodsSet, - referrerPolicy, - requestRedirect, - requestMode, - requestCredentials, - requestCache, - requestDuplex - } = require_constants2(); - var { kEnumerableProperty } = util2; - var { kHeaders, kSignal, kState, kGuard, kRealm } = require_symbols2(); - var { webidl } = require_webidl(); - var { getGlobalOrigin } = require_global(); - var { URLSerializer } = require_dataURL(); - var { kHeadersList, kConstruct } = require_symbols(); - var assert = require("assert"); - var { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = require("events"); - var TransformStream = globalThis.TransformStream; - var kAbortController = Symbol("abortController"); - var requestFinalizer = new FinalizationRegistry(({ signal, abort }) => { - signal.removeEventListener("abort", abort); - }); - var Request = class { - // https://fetch.spec.whatwg.org/#dom-request - constructor(input, init = {}) { - if (input === kConstruct) { - return; - } - webidl.argumentLengthCheck(arguments, 1, { header: "Request constructor" }); - input = webidl.converters.RequestInfo(input); - init = webidl.converters.RequestInit(init); - this[kRealm] = { - settingsObject: { - baseUrl: getGlobalOrigin(), - get origin() { - return this.baseUrl?.origin; - }, - policyContainer: makePolicyContainer() - } - }; - let request = null; - let fallbackMode = null; - const baseUrl = this[kRealm].settingsObject.baseUrl; - let signal = null; - if (typeof input === "string") { - let parsedURL; - try { - parsedURL = new URL(input, baseUrl); - } catch (err) { - throw new TypeError("Failed to parse URL from " + input, { cause: err }); - } - if (parsedURL.username || parsedURL.password) { - throw new TypeError( - "Request cannot be constructed from a URL that includes credentials: " + input - ); - } - request = makeRequest({ urlList: [parsedURL] }); - fallbackMode = "cors"; - } else { - assert(input instanceof Request); - request = input[kState]; - signal = input[kSignal]; - } - const origin = this[kRealm].settingsObject.origin; - let window = "client"; - if (request.window?.constructor?.name === "EnvironmentSettingsObject" && sameOrigin(request.window, origin)) { - window = request.window; - } - if (init.window != null) { - throw new TypeError(`'window' option '${window}' must be null`); - } - if ("window" in init) { - window = "no-window"; - } - request = makeRequest({ - // URL request’s URL. - // undici implementation note: this is set as the first item in request's urlList in makeRequest - // method request’s method. - method: request.method, - // header list A copy of request’s header list. - // undici implementation note: headersList is cloned in makeRequest - headersList: request.headersList, - // unsafe-request flag Set. - unsafeRequest: request.unsafeRequest, - // client This’s relevant settings object. - client: this[kRealm].settingsObject, - // window window. - window, - // priority request’s priority. - priority: request.priority, - // origin request’s origin. The propagation of the origin is only significant for navigation requests - // being handled by a service worker. In this scenario a request can have an origin that is different - // from the current client. - origin: request.origin, - // referrer request’s referrer. - referrer: request.referrer, - // referrer policy request’s referrer policy. - referrerPolicy: request.referrerPolicy, - // mode request’s mode. - mode: request.mode, - // credentials mode request’s credentials mode. - credentials: request.credentials, - // cache mode request’s cache mode. - cache: request.cache, - // redirect mode request’s redirect mode. - redirect: request.redirect, - // integrity metadata request’s integrity metadata. - integrity: request.integrity, - // keepalive request’s keepalive. - keepalive: request.keepalive, - // reload-navigation flag request’s reload-navigation flag. - reloadNavigation: request.reloadNavigation, - // history-navigation flag request’s history-navigation flag. - historyNavigation: request.historyNavigation, - // URL list A clone of request’s URL list. - urlList: [...request.urlList] - }); - const initHasKey = Object.keys(init).length !== 0; - if (initHasKey) { - if (request.mode === "navigate") { - request.mode = "same-origin"; - } - request.reloadNavigation = false; - request.historyNavigation = false; - request.origin = "client"; - request.referrer = "client"; - request.referrerPolicy = ""; - request.url = request.urlList[request.urlList.length - 1]; - request.urlList = [request.url]; - } - if (init.referrer !== void 0) { - const referrer = init.referrer; - if (referrer === "") { - request.referrer = "no-referrer"; - } else { - let parsedReferrer; - try { - parsedReferrer = new URL(referrer, baseUrl); - } catch (err) { - throw new TypeError(`Referrer "${referrer}" is not a valid URL.`, { cause: err }); - } - if (parsedReferrer.protocol === "about:" && parsedReferrer.hostname === "client" || origin && !sameOrigin(parsedReferrer, this[kRealm].settingsObject.baseUrl)) { - request.referrer = "client"; - } else { - request.referrer = parsedReferrer; - } - } - } - if (init.referrerPolicy !== void 0) { - request.referrerPolicy = init.referrerPolicy; - } - let mode; - if (init.mode !== void 0) { - mode = init.mode; - } else { - mode = fallbackMode; - } - if (mode === "navigate") { - throw webidl.errors.exception({ - header: "Request constructor", - message: "invalid request mode navigate." - }); - } - if (mode != null) { - request.mode = mode; - } - if (init.credentials !== void 0) { - request.credentials = init.credentials; - } - if (init.cache !== void 0) { - request.cache = init.cache; - } - if (request.cache === "only-if-cached" && request.mode !== "same-origin") { - throw new TypeError( - "'only-if-cached' can be set only with 'same-origin' mode" - ); - } - if (init.redirect !== void 0) { - request.redirect = init.redirect; - } - if (init.integrity != null) { - request.integrity = String(init.integrity); - } - if (init.keepalive !== void 0) { - request.keepalive = Boolean(init.keepalive); - } - if (init.method !== void 0) { - let method = init.method; - if (!isValidHTTPToken(method)) { - throw new TypeError(`'${method}' is not a valid HTTP method.`); - } - if (forbiddenMethodsSet.has(method.toUpperCase())) { - throw new TypeError(`'${method}' HTTP method is unsupported.`); - } - method = normalizeMethodRecord[method] ?? normalizeMethod(method); - request.method = method; - } - if (init.signal !== void 0) { - signal = init.signal; - } - this[kState] = request; - const ac = new AbortController(); - this[kSignal] = ac.signal; - this[kSignal][kRealm] = this[kRealm]; - if (signal != null) { - if (!signal || typeof signal.aborted !== "boolean" || typeof signal.addEventListener !== "function") { - throw new TypeError( - "Failed to construct 'Request': member signal is not of type AbortSignal." - ); - } - if (signal.aborted) { - ac.abort(signal.reason); - } else { - this[kAbortController] = ac; - const acRef = new WeakRef(ac); - const abort = function() { - const ac2 = acRef.deref(); - if (ac2 !== void 0) { - ac2.abort(this.reason); - } - }; - try { - if (typeof getMaxListeners === "function" && getMaxListeners(signal) === defaultMaxListeners) { - setMaxListeners(100, signal); - } else if (getEventListeners(signal, "abort").length >= defaultMaxListeners) { - setMaxListeners(100, signal); - } - } catch { - } - util2.addAbortListener(signal, abort); - requestFinalizer.register(ac, { signal, abort }); - } - } - this[kHeaders] = new Headers(kConstruct); - this[kHeaders][kHeadersList] = request.headersList; - this[kHeaders][kGuard] = "request"; - this[kHeaders][kRealm] = this[kRealm]; - if (mode === "no-cors") { - if (!corsSafeListedMethodsSet.has(request.method)) { - throw new TypeError( - `'${request.method} is unsupported in no-cors mode.` - ); - } - this[kHeaders][kGuard] = "request-no-cors"; - } - if (initHasKey) { - const headersList = this[kHeaders][kHeadersList]; - const headers = init.headers !== void 0 ? init.headers : new HeadersList(headersList); - headersList.clear(); - if (headers instanceof HeadersList) { - for (const [key, val] of headers) { - headersList.append(key, val); - } - headersList.cookies = headers.cookies; - } else { - fillHeaders(this[kHeaders], headers); - } - } - const inputBody = input instanceof Request ? input[kState].body : null; - if ((init.body != null || inputBody != null) && (request.method === "GET" || request.method === "HEAD")) { - throw new TypeError("Request with GET/HEAD method cannot have body."); - } - let initBody = null; - if (init.body != null) { - const [extractedBody, contentType] = extractBody( - init.body, - request.keepalive - ); - initBody = extractedBody; - if (contentType && !this[kHeaders][kHeadersList].contains("content-type")) { - this[kHeaders].append("content-type", contentType); - } - } - const inputOrInitBody = initBody ?? inputBody; - if (inputOrInitBody != null && inputOrInitBody.source == null) { - if (initBody != null && init.duplex == null) { - throw new TypeError("RequestInit: duplex option is required when sending a body."); - } - if (request.mode !== "same-origin" && request.mode !== "cors") { - throw new TypeError( - 'If request is made from ReadableStream, mode should be "same-origin" or "cors"' - ); - } - request.useCORSPreflightFlag = true; - } - let finalBody = inputOrInitBody; - if (initBody == null && inputBody != null) { - if (util2.isDisturbed(inputBody.stream) || inputBody.stream.locked) { - throw new TypeError( - "Cannot construct a Request with a Request object that has already been used." - ); - } - if (!TransformStream) { - TransformStream = require("stream/web").TransformStream; - } - const identityTransform = new TransformStream(); - inputBody.stream.pipeThrough(identityTransform); - finalBody = { - source: inputBody.source, - length: inputBody.length, - stream: identityTransform.readable - }; - } - this[kState].body = finalBody; - } - // Returns request’s HTTP method, which is "GET" by default. - get method() { - webidl.brandCheck(this, Request); - return this[kState].method; - } - // Returns the URL of request as a string. - get url() { - webidl.brandCheck(this, Request); - return URLSerializer(this[kState].url); - } - // Returns a Headers object consisting of the headers associated with request. - // Note that headers added in the network layer by the user agent will not - // be accounted for in this object, e.g., the "Host" header. - get headers() { - webidl.brandCheck(this, Request); - return this[kHeaders]; - } - // Returns the kind of resource requested by request, e.g., "document" - // or "script". - get destination() { - webidl.brandCheck(this, Request); - return this[kState].destination; - } - // Returns the referrer of request. Its value can be a same-origin URL if - // explicitly set in init, the empty string to indicate no referrer, and - // "about:client" when defaulting to the global’s default. This is used - // during fetching to determine the value of the `Referer` header of the - // request being made. - get referrer() { - webidl.brandCheck(this, Request); - if (this[kState].referrer === "no-referrer") { - return ""; - } - if (this[kState].referrer === "client") { - return "about:client"; - } - return this[kState].referrer.toString(); - } - // Returns the referrer policy associated with request. - // This is used during fetching to compute the value of the request’s - // referrer. - get referrerPolicy() { - webidl.brandCheck(this, Request); - return this[kState].referrerPolicy; - } - // Returns the mode associated with request, which is a string indicating - // whether the request will use CORS, or will be restricted to same-origin - // URLs. - get mode() { - webidl.brandCheck(this, Request); - return this[kState].mode; - } - // Returns the credentials mode associated with request, - // which is a string indicating whether credentials will be sent with the - // request always, never, or only when sent to a same-origin URL. - get credentials() { - return this[kState].credentials; - } - // Returns the cache mode associated with request, - // which is a string indicating how the request will - // interact with the browser’s cache when fetching. - get cache() { - webidl.brandCheck(this, Request); - return this[kState].cache; - } - // Returns the redirect mode associated with request, - // which is a string indicating how redirects for the - // request will be handled during fetching. A request - // will follow redirects by default. - get redirect() { - webidl.brandCheck(this, Request); - return this[kState].redirect; - } - // Returns request’s subresource integrity metadata, which is a - // cryptographic hash of the resource being fetched. Its value - // consists of multiple hashes separated by whitespace. [SRI] - get integrity() { - webidl.brandCheck(this, Request); - return this[kState].integrity; - } - // Returns a boolean indicating whether or not request can outlive the - // global in which it was created. - get keepalive() { - webidl.brandCheck(this, Request); - return this[kState].keepalive; - } - // Returns a boolean indicating whether or not request is for a reload - // navigation. - get isReloadNavigation() { - webidl.brandCheck(this, Request); - return this[kState].reloadNavigation; - } - // Returns a boolean indicating whether or not request is for a history - // navigation (a.k.a. back-foward navigation). - get isHistoryNavigation() { - webidl.brandCheck(this, Request); - return this[kState].historyNavigation; - } - // Returns the signal associated with request, which is an AbortSignal - // object indicating whether or not request has been aborted, and its - // abort event handler. - get signal() { - webidl.brandCheck(this, Request); - return this[kSignal]; - } - get body() { - webidl.brandCheck(this, Request); - return this[kState].body ? this[kState].body.stream : null; - } - get bodyUsed() { - webidl.brandCheck(this, Request); - return !!this[kState].body && util2.isDisturbed(this[kState].body.stream); - } - get duplex() { - webidl.brandCheck(this, Request); - return "half"; - } - // Returns a clone of request. - clone() { - webidl.brandCheck(this, Request); - if (this.bodyUsed || this.body?.locked) { - throw new TypeError("unusable"); - } - const clonedRequest = cloneRequest(this[kState]); - const clonedRequestObject = new Request(kConstruct); - clonedRequestObject[kState] = clonedRequest; - clonedRequestObject[kRealm] = this[kRealm]; - clonedRequestObject[kHeaders] = new Headers(kConstruct); - clonedRequestObject[kHeaders][kHeadersList] = clonedRequest.headersList; - clonedRequestObject[kHeaders][kGuard] = this[kHeaders][kGuard]; - clonedRequestObject[kHeaders][kRealm] = this[kHeaders][kRealm]; - const ac = new AbortController(); - if (this.signal.aborted) { - ac.abort(this.signal.reason); - } else { - util2.addAbortListener( - this.signal, - () => { - ac.abort(this.signal.reason); - } - ); - } - clonedRequestObject[kSignal] = ac.signal; - return clonedRequestObject; - } - }; - mixinBody(Request); - function makeRequest(init) { - const request = { - method: "GET", - localURLsOnly: false, - unsafeRequest: false, - body: null, - client: null, - reservedClient: null, - replacesClientId: "", - window: "client", - keepalive: false, - serviceWorkers: "all", - initiator: "", - destination: "", - priority: null, - origin: "client", - policyContainer: "client", - referrer: "client", - referrerPolicy: "", - mode: "no-cors", - useCORSPreflightFlag: false, - credentials: "same-origin", - useCredentials: false, - cache: "default", - redirect: "follow", - integrity: "", - cryptoGraphicsNonceMetadata: "", - parserMetadata: "", - reloadNavigation: false, - historyNavigation: false, - userActivation: false, - taintedOrigin: false, - redirectCount: 0, - responseTainting: "basic", - preventNoCacheCacheControlHeaderModification: false, - done: false, - timingAllowFailed: false, - ...init, - headersList: init.headersList ? new HeadersList(init.headersList) : new HeadersList() - }; - request.url = request.urlList[0]; - return request; - } - function cloneRequest(request) { - const newRequest = makeRequest({ ...request, body: null }); - if (request.body != null) { - newRequest.body = cloneBody(request.body); - } - return newRequest; - } - Object.defineProperties(Request.prototype, { - method: kEnumerableProperty, - url: kEnumerableProperty, - headers: kEnumerableProperty, - redirect: kEnumerableProperty, - clone: kEnumerableProperty, - signal: kEnumerableProperty, - duplex: kEnumerableProperty, - destination: kEnumerableProperty, - body: kEnumerableProperty, - bodyUsed: kEnumerableProperty, - isHistoryNavigation: kEnumerableProperty, - isReloadNavigation: kEnumerableProperty, - keepalive: kEnumerableProperty, - integrity: kEnumerableProperty, - cache: kEnumerableProperty, - credentials: kEnumerableProperty, - attribute: kEnumerableProperty, - referrerPolicy: kEnumerableProperty, - referrer: kEnumerableProperty, - mode: kEnumerableProperty, - [Symbol.toStringTag]: { - value: "Request", - configurable: true - } - }); - webidl.converters.Request = webidl.interfaceConverter( - Request - ); - webidl.converters.RequestInfo = function(V) { - if (typeof V === "string") { - return webidl.converters.USVString(V); - } - if (V instanceof Request) { - return webidl.converters.Request(V); - } - return webidl.converters.USVString(V); - }; - webidl.converters.AbortSignal = webidl.interfaceConverter( - AbortSignal - ); - webidl.converters.RequestInit = webidl.dictionaryConverter([ - { - key: "method", - converter: webidl.converters.ByteString - }, - { - key: "headers", - converter: webidl.converters.HeadersInit - }, - { - key: "body", - converter: webidl.nullableConverter( - webidl.converters.BodyInit - ) - }, - { - key: "referrer", - converter: webidl.converters.USVString - }, - { - key: "referrerPolicy", - converter: webidl.converters.DOMString, - // https://w3c.github.io/webappsec-referrer-policy/#referrer-policy - allowedValues: referrerPolicy - }, - { - key: "mode", - converter: webidl.converters.DOMString, - // https://fetch.spec.whatwg.org/#concept-request-mode - allowedValues: requestMode - }, - { - key: "credentials", - converter: webidl.converters.DOMString, - // https://fetch.spec.whatwg.org/#requestcredentials - allowedValues: requestCredentials - }, - { - key: "cache", - converter: webidl.converters.DOMString, - // https://fetch.spec.whatwg.org/#requestcache - allowedValues: requestCache - }, - { - key: "redirect", - converter: webidl.converters.DOMString, - // https://fetch.spec.whatwg.org/#requestredirect - allowedValues: requestRedirect - }, - { - key: "integrity", - converter: webidl.converters.DOMString - }, - { - key: "keepalive", - converter: webidl.converters.boolean - }, - { - key: "signal", - converter: webidl.nullableConverter( - (signal) => webidl.converters.AbortSignal( - signal, - { strict: false } - ) - ) - }, - { - key: "window", - converter: webidl.converters.any - }, - { - key: "duplex", - converter: webidl.converters.DOMString, - allowedValues: requestDuplex - } - ]); - module2.exports = { Request, makeRequest }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fetch/index.js -var require_fetch = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fetch/index.js"(exports2, module2) { - "use strict"; - var { - Response, - makeNetworkError, - makeAppropriateNetworkError, - filterResponse, - makeResponse - } = require_response(); - var { Headers } = require_headers(); - var { Request, makeRequest } = require_request2(); - var zlib = require("zlib"); - var { - bytesMatch, - makePolicyContainer, - clonePolicyContainer, - requestBadPort, - TAOCheck, - appendRequestOriginHeader, - responseLocationURL, - requestCurrentURL, - setRequestReferrerPolicyOnRedirect, - tryUpgradeRequestToAPotentiallyTrustworthyURL, - createOpaqueTimingInfo, - appendFetchMetadata, - corsCheck, - crossOriginResourcePolicyCheck, - determineRequestsReferrer, - coarsenedSharedCurrentTime, - createDeferredPromise, - isBlobLike, - sameOrigin, - isCancelled, - isAborted, - isErrorLike, - fullyReadBody, - readableStreamClose, - isomorphicEncode, - urlIsLocal, - urlIsHttpHttpsScheme, - urlHasHttpsScheme - } = require_util2(); - var { kState, kHeaders, kGuard, kRealm } = require_symbols2(); - var assert = require("assert"); - var { safelyExtractBody } = require_body(); - var { - redirectStatusSet, - nullBodyStatus, - safeMethodsSet, - requestBodyHeader, - subresourceSet, - DOMException: DOMException2 - } = require_constants2(); - var { kHeadersList } = require_symbols(); - var EE = require("events"); - var { Readable, pipeline } = require("stream"); - var { addAbortListener, isErrored, isReadable, nodeMajor, nodeMinor } = require_util(); - var { dataURLProcessor, serializeAMimeType } = require_dataURL(); - var { TransformStream } = require("stream/web"); - var { getGlobalDispatcher } = require_global2(); - var { webidl } = require_webidl(); - var { STATUS_CODES } = require("http"); - var GET_OR_HEAD = ["GET", "HEAD"]; - var resolveObjectURL; - var ReadableStream = globalThis.ReadableStream; - var Fetch = class extends EE { - constructor(dispatcher) { - super(); - this.dispatcher = dispatcher; - this.connection = null; - this.dump = false; - this.state = "ongoing"; - this.setMaxListeners(21); - } - terminate(reason) { - if (this.state !== "ongoing") { - return; - } - this.state = "terminated"; - this.connection?.destroy(reason); - this.emit("terminated", reason); - } - // https://fetch.spec.whatwg.org/#fetch-controller-abort - abort(error) { - if (this.state !== "ongoing") { - return; - } - this.state = "aborted"; - if (!error) { - error = new DOMException2("The operation was aborted.", "AbortError"); - } - this.serializedAbortReason = error; - this.connection?.destroy(error); - this.emit("terminated", error); - } - }; - function fetch(input, init = {}) { - webidl.argumentLengthCheck(arguments, 1, { header: "globalThis.fetch" }); - const p = createDeferredPromise(); - let requestObject; - try { - requestObject = new Request(input, init); - } catch (e) { - p.reject(e); - return p.promise; - } - const request = requestObject[kState]; - if (requestObject.signal.aborted) { - abortFetch(p, request, null, requestObject.signal.reason); - return p.promise; - } - const globalObject = request.client.globalObject; - if (globalObject?.constructor?.name === "ServiceWorkerGlobalScope") { - request.serviceWorkers = "none"; - } - let responseObject = null; - const relevantRealm = null; - let locallyAborted = false; - let controller = null; - addAbortListener( - requestObject.signal, - () => { - locallyAborted = true; - assert(controller != null); - controller.abort(requestObject.signal.reason); - abortFetch(p, request, responseObject, requestObject.signal.reason); - } - ); - const handleFetchDone = (response) => finalizeAndReportTiming(response, "fetch"); - const processResponse = (response) => { - if (locallyAborted) { - return Promise.resolve(); - } - if (response.aborted) { - abortFetch(p, request, responseObject, controller.serializedAbortReason); - return Promise.resolve(); - } - if (response.type === "error") { - p.reject( - Object.assign(new TypeError("fetch failed"), { cause: response.error }) - ); - return Promise.resolve(); - } - responseObject = new Response(); - responseObject[kState] = response; - responseObject[kRealm] = relevantRealm; - responseObject[kHeaders][kHeadersList] = response.headersList; - responseObject[kHeaders][kGuard] = "immutable"; - responseObject[kHeaders][kRealm] = relevantRealm; - p.resolve(responseObject); - }; - controller = fetching({ - request, - processResponseEndOfBody: handleFetchDone, - processResponse, - dispatcher: init.dispatcher ?? getGlobalDispatcher() - // undici - }); - return p.promise; - } - function finalizeAndReportTiming(response, initiatorType = "other") { - if (response.type === "error" && response.aborted) { - return; - } - if (!response.urlList?.length) { - return; - } - const originalURL = response.urlList[0]; - let timingInfo = response.timingInfo; - let cacheState = response.cacheState; - if (!urlIsHttpHttpsScheme(originalURL)) { - return; - } - if (timingInfo === null) { - return; - } - if (!response.timingAllowPassed) { - timingInfo = createOpaqueTimingInfo({ - startTime: timingInfo.startTime - }); - cacheState = ""; - } - timingInfo.endTime = coarsenedSharedCurrentTime(); - response.timingInfo = timingInfo; - markResourceTiming( - timingInfo, - originalURL, - initiatorType, - globalThis, - cacheState - ); - } - function markResourceTiming(timingInfo, originalURL, initiatorType, globalThis2, cacheState) { - if (nodeMajor > 18 || nodeMajor === 18 && nodeMinor >= 2) { - performance.markResourceTiming(timingInfo, originalURL.href, initiatorType, globalThis2, cacheState); - } - } - function abortFetch(p, request, responseObject, error) { - if (!error) { - error = new DOMException2("The operation was aborted.", "AbortError"); - } - p.reject(error); - if (request.body != null && isReadable(request.body?.stream)) { - request.body.stream.cancel(error).catch((err) => { - if (err.code === "ERR_INVALID_STATE") { - return; - } - throw err; - }); - } - if (responseObject == null) { - return; - } - const response = responseObject[kState]; - if (response.body != null && isReadable(response.body?.stream)) { - response.body.stream.cancel(error).catch((err) => { - if (err.code === "ERR_INVALID_STATE") { - return; - } - throw err; - }); - } - } - function fetching({ - request, - processRequestBodyChunkLength, - processRequestEndOfBody, - processResponse, - processResponseEndOfBody, - processResponseConsumeBody, - useParallelQueue = false, - dispatcher - // undici - }) { - let taskDestination = null; - let crossOriginIsolatedCapability = false; - if (request.client != null) { - taskDestination = request.client.globalObject; - crossOriginIsolatedCapability = request.client.crossOriginIsolatedCapability; - } - const currenTime = coarsenedSharedCurrentTime(crossOriginIsolatedCapability); - const timingInfo = createOpaqueTimingInfo({ - startTime: currenTime - }); - const fetchParams = { - controller: new Fetch(dispatcher), - request, - timingInfo, - processRequestBodyChunkLength, - processRequestEndOfBody, - processResponse, - processResponseConsumeBody, - processResponseEndOfBody, - taskDestination, - crossOriginIsolatedCapability - }; - assert(!request.body || request.body.stream); - if (request.window === "client") { - request.window = request.client?.globalObject?.constructor?.name === "Window" ? request.client : "no-window"; - } - if (request.origin === "client") { - request.origin = request.client?.origin; - } - if (request.policyContainer === "client") { - if (request.client != null) { - request.policyContainer = clonePolicyContainer( - request.client.policyContainer - ); - } else { - request.policyContainer = makePolicyContainer(); - } - } - if (!request.headersList.contains("accept")) { - const value = "*/*"; - request.headersList.append("accept", value); - } - if (!request.headersList.contains("accept-language")) { - request.headersList.append("accept-language", "*"); - } - if (request.priority === null) { - } - if (subresourceSet.has(request.destination)) { - } - mainFetch(fetchParams).catch((err) => { - fetchParams.controller.terminate(err); - }); - return fetchParams.controller; - } - async function mainFetch(fetchParams, recursive = false) { - const request = fetchParams.request; - let response = null; - if (request.localURLsOnly && !urlIsLocal(requestCurrentURL(request))) { - response = makeNetworkError("local URLs only"); - } - tryUpgradeRequestToAPotentiallyTrustworthyURL(request); - if (requestBadPort(request) === "blocked") { - response = makeNetworkError("bad port"); - } - if (request.referrerPolicy === "") { - request.referrerPolicy = request.policyContainer.referrerPolicy; - } - if (request.referrer !== "no-referrer") { - request.referrer = determineRequestsReferrer(request); - } - if (response === null) { - response = await (async () => { - const currentURL = requestCurrentURL(request); - if ( - // - request’s current URL’s origin is same origin with request’s origin, - // and request’s response tainting is "basic" - sameOrigin(currentURL, request.url) && request.responseTainting === "basic" || // request’s current URL’s scheme is "data" - currentURL.protocol === "data:" || // - request’s mode is "navigate" or "websocket" - (request.mode === "navigate" || request.mode === "websocket") - ) { - request.responseTainting = "basic"; - return await schemeFetch(fetchParams); - } - if (request.mode === "same-origin") { - return makeNetworkError('request mode cannot be "same-origin"'); - } - if (request.mode === "no-cors") { - if (request.redirect !== "follow") { - return makeNetworkError( - 'redirect mode cannot be "follow" for "no-cors" request' - ); - } - request.responseTainting = "opaque"; - return await schemeFetch(fetchParams); - } - if (!urlIsHttpHttpsScheme(requestCurrentURL(request))) { - return makeNetworkError("URL scheme must be a HTTP(S) scheme"); - } - request.responseTainting = "cors"; - return await httpFetch(fetchParams); - })(); - } - if (recursive) { - return response; - } - if (response.status !== 0 && !response.internalResponse) { - if (request.responseTainting === "cors") { - } - if (request.responseTainting === "basic") { - response = filterResponse(response, "basic"); - } else if (request.responseTainting === "cors") { - response = filterResponse(response, "cors"); - } else if (request.responseTainting === "opaque") { - response = filterResponse(response, "opaque"); - } else { - assert(false); - } - } - let internalResponse = response.status === 0 ? response : response.internalResponse; - if (internalResponse.urlList.length === 0) { - internalResponse.urlList.push(...request.urlList); - } - if (!request.timingAllowFailed) { - response.timingAllowPassed = true; - } - if (response.type === "opaque" && internalResponse.status === 206 && internalResponse.rangeRequested && !request.headers.contains("range")) { - response = internalResponse = makeNetworkError(); - } - if (response.status !== 0 && (request.method === "HEAD" || request.method === "CONNECT" || nullBodyStatus.includes(internalResponse.status))) { - internalResponse.body = null; - fetchParams.controller.dump = true; - } - if (request.integrity) { - const processBodyError = (reason) => fetchFinale(fetchParams, makeNetworkError(reason)); - if (request.responseTainting === "opaque" || response.body == null) { - processBodyError(response.error); - return; - } - const processBody = (bytes) => { - if (!bytesMatch(bytes, request.integrity)) { - processBodyError("integrity mismatch"); - return; - } - response.body = safelyExtractBody(bytes)[0]; - fetchFinale(fetchParams, response); - }; - await fullyReadBody(response.body, processBody, processBodyError); - } else { - fetchFinale(fetchParams, response); - } - } - function schemeFetch(fetchParams) { - if (isCancelled(fetchParams) && fetchParams.request.redirectCount === 0) { - return Promise.resolve(makeAppropriateNetworkError(fetchParams)); - } - const { request } = fetchParams; - const { protocol: scheme } = requestCurrentURL(request); - switch (scheme) { - case "about:": { - return Promise.resolve(makeNetworkError("about scheme is not supported")); - } - case "blob:": { - if (!resolveObjectURL) { - resolveObjectURL = require("buffer").resolveObjectURL; - } - const blobURLEntry = requestCurrentURL(request); - if (blobURLEntry.search.length !== 0) { - return Promise.resolve(makeNetworkError("NetworkError when attempting to fetch resource.")); - } - const blobURLEntryObject = resolveObjectURL(blobURLEntry.toString()); - if (request.method !== "GET" || !isBlobLike(blobURLEntryObject)) { - return Promise.resolve(makeNetworkError("invalid method")); - } - const bodyWithType = safelyExtractBody(blobURLEntryObject); - const body = bodyWithType[0]; - const length = isomorphicEncode(`${body.length}`); - const type = bodyWithType[1] ?? ""; - const response = makeResponse({ - statusText: "OK", - headersList: [ - ["content-length", { name: "Content-Length", value: length }], - ["content-type", { name: "Content-Type", value: type }] - ] - }); - response.body = body; - return Promise.resolve(response); - } - case "data:": { - const currentURL = requestCurrentURL(request); - const dataURLStruct = dataURLProcessor(currentURL); - if (dataURLStruct === "failure") { - return Promise.resolve(makeNetworkError("failed to fetch the data URL")); - } - const mimeType = serializeAMimeType(dataURLStruct.mimeType); - return Promise.resolve(makeResponse({ - statusText: "OK", - headersList: [ - ["content-type", { name: "Content-Type", value: mimeType }] - ], - body: safelyExtractBody(dataURLStruct.body)[0] - })); - } - case "file:": { - return Promise.resolve(makeNetworkError("not implemented... yet...")); - } - case "http:": - case "https:": { - return httpFetch(fetchParams).catch((err) => makeNetworkError(err)); - } - default: { - return Promise.resolve(makeNetworkError("unknown scheme")); - } - } - } - function finalizeResponse(fetchParams, response) { - fetchParams.request.done = true; - if (fetchParams.processResponseDone != null) { - queueMicrotask(() => fetchParams.processResponseDone(response)); - } - } - function fetchFinale(fetchParams, response) { - if (response.type === "error") { - response.urlList = [fetchParams.request.urlList[0]]; - response.timingInfo = createOpaqueTimingInfo({ - startTime: fetchParams.timingInfo.startTime - }); - } - const processResponseEndOfBody = () => { - fetchParams.request.done = true; - if (fetchParams.processResponseEndOfBody != null) { - queueMicrotask(() => fetchParams.processResponseEndOfBody(response)); - } - }; - if (fetchParams.processResponse != null) { - queueMicrotask(() => fetchParams.processResponse(response)); - } - if (response.body == null) { - processResponseEndOfBody(); - } else { - const identityTransformAlgorithm = (chunk, controller) => { - controller.enqueue(chunk); - }; - const transformStream = new TransformStream({ - start() { - }, - transform: identityTransformAlgorithm, - flush: processResponseEndOfBody - }, { - size() { - return 1; - } - }, { - size() { - return 1; - } - }); - response.body = { stream: response.body.stream.pipeThrough(transformStream) }; - } - if (fetchParams.processResponseConsumeBody != null) { - const processBody = (nullOrBytes) => fetchParams.processResponseConsumeBody(response, nullOrBytes); - const processBodyError = (failure) => fetchParams.processResponseConsumeBody(response, failure); - if (response.body == null) { - queueMicrotask(() => processBody(null)); - } else { - return fullyReadBody(response.body, processBody, processBodyError); - } - return Promise.resolve(); - } - } - async function httpFetch(fetchParams) { - const request = fetchParams.request; - let response = null; - let actualResponse = null; - const timingInfo = fetchParams.timingInfo; - if (request.serviceWorkers === "all") { - } - if (response === null) { - if (request.redirect === "follow") { - request.serviceWorkers = "none"; - } - actualResponse = response = await httpNetworkOrCacheFetch(fetchParams); - if (request.responseTainting === "cors" && corsCheck(request, response) === "failure") { - return makeNetworkError("cors failure"); - } - if (TAOCheck(request, response) === "failure") { - request.timingAllowFailed = true; - } - } - if ((request.responseTainting === "opaque" || response.type === "opaque") && crossOriginResourcePolicyCheck( - request.origin, - request.client, - request.destination, - actualResponse - ) === "blocked") { - return makeNetworkError("blocked"); - } - if (redirectStatusSet.has(actualResponse.status)) { - if (request.redirect !== "manual") { - fetchParams.controller.connection.destroy(); - } - if (request.redirect === "error") { - response = makeNetworkError("unexpected redirect"); - } else if (request.redirect === "manual") { - response = actualResponse; - } else if (request.redirect === "follow") { - response = await httpRedirectFetch(fetchParams, response); - } else { - assert(false); - } - } - response.timingInfo = timingInfo; - return response; - } - function httpRedirectFetch(fetchParams, response) { - const request = fetchParams.request; - const actualResponse = response.internalResponse ? response.internalResponse : response; - let locationURL; - try { - locationURL = responseLocationURL( - actualResponse, - requestCurrentURL(request).hash - ); - if (locationURL == null) { - return response; - } - } catch (err) { - return Promise.resolve(makeNetworkError(err)); - } - if (!urlIsHttpHttpsScheme(locationURL)) { - return Promise.resolve(makeNetworkError("URL scheme must be a HTTP(S) scheme")); - } - if (request.redirectCount === 20) { - return Promise.resolve(makeNetworkError("redirect count exceeded")); - } - request.redirectCount += 1; - if (request.mode === "cors" && (locationURL.username || locationURL.password) && !sameOrigin(request, locationURL)) { - return Promise.resolve(makeNetworkError('cross origin not allowed for request mode "cors"')); - } - if (request.responseTainting === "cors" && (locationURL.username || locationURL.password)) { - return Promise.resolve(makeNetworkError( - 'URL cannot contain credentials for request mode "cors"' - )); - } - if (actualResponse.status !== 303 && request.body != null && request.body.source == null) { - return Promise.resolve(makeNetworkError()); - } - if ([301, 302].includes(actualResponse.status) && request.method === "POST" || actualResponse.status === 303 && !GET_OR_HEAD.includes(request.method)) { - request.method = "GET"; - request.body = null; - for (const headerName of requestBodyHeader) { - request.headersList.delete(headerName); - } - } - if (!sameOrigin(requestCurrentURL(request), locationURL)) { - request.headersList.delete("authorization"); - request.headersList.delete("proxy-authorization", true); - request.headersList.delete("cookie"); - request.headersList.delete("host"); - } - if (request.body != null) { - assert(request.body.source != null); - request.body = safelyExtractBody(request.body.source)[0]; - } - const timingInfo = fetchParams.timingInfo; - timingInfo.redirectEndTime = timingInfo.postRedirectStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability); - if (timingInfo.redirectStartTime === 0) { - timingInfo.redirectStartTime = timingInfo.startTime; - } - request.urlList.push(locationURL); - setRequestReferrerPolicyOnRedirect(request, actualResponse); - return mainFetch(fetchParams, true); - } - async function httpNetworkOrCacheFetch(fetchParams, isAuthenticationFetch = false, isNewConnectionFetch = false) { - const request = fetchParams.request; - let httpFetchParams = null; - let httpRequest = null; - let response = null; - const httpCache = null; - const revalidatingFlag = false; - if (request.window === "no-window" && request.redirect === "error") { - httpFetchParams = fetchParams; - httpRequest = request; - } else { - httpRequest = makeRequest(request); - httpFetchParams = { ...fetchParams }; - httpFetchParams.request = httpRequest; - } - const includeCredentials = request.credentials === "include" || request.credentials === "same-origin" && request.responseTainting === "basic"; - const contentLength = httpRequest.body ? httpRequest.body.length : null; - let contentLengthHeaderValue = null; - if (httpRequest.body == null && ["POST", "PUT"].includes(httpRequest.method)) { - contentLengthHeaderValue = "0"; - } - if (contentLength != null) { - contentLengthHeaderValue = isomorphicEncode(`${contentLength}`); - } - if (contentLengthHeaderValue != null) { - httpRequest.headersList.append("content-length", contentLengthHeaderValue); - } - if (contentLength != null && httpRequest.keepalive) { - } - if (httpRequest.referrer instanceof URL) { - httpRequest.headersList.append("referer", isomorphicEncode(httpRequest.referrer.href)); - } - appendRequestOriginHeader(httpRequest); - appendFetchMetadata(httpRequest); - if (!httpRequest.headersList.contains("user-agent")) { - httpRequest.headersList.append("user-agent", typeof esbuildDetection === "undefined" ? "undici" : "node"); - } - if (httpRequest.cache === "default" && (httpRequest.headersList.contains("if-modified-since") || httpRequest.headersList.contains("if-none-match") || httpRequest.headersList.contains("if-unmodified-since") || httpRequest.headersList.contains("if-match") || httpRequest.headersList.contains("if-range"))) { - httpRequest.cache = "no-store"; - } - if (httpRequest.cache === "no-cache" && !httpRequest.preventNoCacheCacheControlHeaderModification && !httpRequest.headersList.contains("cache-control")) { - httpRequest.headersList.append("cache-control", "max-age=0"); - } - if (httpRequest.cache === "no-store" || httpRequest.cache === "reload") { - if (!httpRequest.headersList.contains("pragma")) { - httpRequest.headersList.append("pragma", "no-cache"); - } - if (!httpRequest.headersList.contains("cache-control")) { - httpRequest.headersList.append("cache-control", "no-cache"); - } - } - if (httpRequest.headersList.contains("range")) { - httpRequest.headersList.append("accept-encoding", "identity"); - } - if (!httpRequest.headersList.contains("accept-encoding")) { - if (urlHasHttpsScheme(requestCurrentURL(httpRequest))) { - httpRequest.headersList.append("accept-encoding", "br, gzip, deflate"); - } else { - httpRequest.headersList.append("accept-encoding", "gzip, deflate"); - } - } - httpRequest.headersList.delete("host"); - if (includeCredentials) { - } - if (httpCache == null) { - httpRequest.cache = "no-store"; - } - if (httpRequest.mode !== "no-store" && httpRequest.mode !== "reload") { - } - if (response == null) { - if (httpRequest.mode === "only-if-cached") { - return makeNetworkError("only if cached"); - } - const forwardResponse = await httpNetworkFetch( - httpFetchParams, - includeCredentials, - isNewConnectionFetch - ); - if (!safeMethodsSet.has(httpRequest.method) && forwardResponse.status >= 200 && forwardResponse.status <= 399) { - } - if (revalidatingFlag && forwardResponse.status === 304) { - } - if (response == null) { - response = forwardResponse; - } - } - response.urlList = [...httpRequest.urlList]; - if (httpRequest.headersList.contains("range")) { - response.rangeRequested = true; - } - response.requestIncludesCredentials = includeCredentials; - if (response.status === 407) { - if (request.window === "no-window") { - return makeNetworkError(); - } - if (isCancelled(fetchParams)) { - return makeAppropriateNetworkError(fetchParams); - } - return makeNetworkError("proxy authentication required"); - } - if ( - // response’s status is 421 - response.status === 421 && // isNewConnectionFetch is false - !isNewConnectionFetch && // request’s body is null, or request’s body is non-null and request’s body’s source is non-null - (request.body == null || request.body.source != null) - ) { - if (isCancelled(fetchParams)) { - return makeAppropriateNetworkError(fetchParams); - } - fetchParams.controller.connection.destroy(); - response = await httpNetworkOrCacheFetch( - fetchParams, - isAuthenticationFetch, - true - ); - } - if (isAuthenticationFetch) { - } - return response; - } - async function httpNetworkFetch(fetchParams, includeCredentials = false, forceNewConnection = false) { - assert(!fetchParams.controller.connection || fetchParams.controller.connection.destroyed); - fetchParams.controller.connection = { - abort: null, - destroyed: false, - destroy(err) { - if (!this.destroyed) { - this.destroyed = true; - this.abort?.(err ?? new DOMException2("The operation was aborted.", "AbortError")); - } - } - }; - const request = fetchParams.request; - let response = null; - const timingInfo = fetchParams.timingInfo; - const httpCache = null; - if (httpCache == null) { - request.cache = "no-store"; - } - const newConnection = forceNewConnection ? "yes" : "no"; - if (request.mode === "websocket") { - } else { - } - let requestBody = null; - if (request.body == null && fetchParams.processRequestEndOfBody) { - queueMicrotask(() => fetchParams.processRequestEndOfBody()); - } else if (request.body != null) { - const processBodyChunk = async function* (bytes) { - if (isCancelled(fetchParams)) { - return; - } - yield bytes; - fetchParams.processRequestBodyChunkLength?.(bytes.byteLength); - }; - const processEndOfBody = () => { - if (isCancelled(fetchParams)) { - return; - } - if (fetchParams.processRequestEndOfBody) { - fetchParams.processRequestEndOfBody(); - } - }; - const processBodyError = (e) => { - if (isCancelled(fetchParams)) { - return; - } - if (e.name === "AbortError") { - fetchParams.controller.abort(); - } else { - fetchParams.controller.terminate(e); - } - }; - requestBody = async function* () { - try { - for await (const bytes of request.body.stream) { - yield* processBodyChunk(bytes); - } - processEndOfBody(); - } catch (err) { - processBodyError(err); - } - }(); - } - try { - const { body, status, statusText, headersList, socket } = await dispatch({ body: requestBody }); - if (socket) { - response = makeResponse({ status, statusText, headersList, socket }); - } else { - const iterator = body[Symbol.asyncIterator](); - fetchParams.controller.next = () => iterator.next(); - response = makeResponse({ status, statusText, headersList }); - } - } catch (err) { - if (err.name === "AbortError") { - fetchParams.controller.connection.destroy(); - return makeAppropriateNetworkError(fetchParams, err); - } - return makeNetworkError(err); - } - const pullAlgorithm = () => { - fetchParams.controller.resume(); - }; - const cancelAlgorithm = (reason) => { - fetchParams.controller.abort(reason); - }; - if (!ReadableStream) { - ReadableStream = require("stream/web").ReadableStream; - } - const stream = new ReadableStream( - { - async start(controller) { - fetchParams.controller.controller = controller; - }, - async pull(controller) { - await pullAlgorithm(controller); - }, - async cancel(reason) { - await cancelAlgorithm(reason); - } - }, - { - highWaterMark: 0, - size() { - return 1; - } - } - ); - response.body = { stream }; - fetchParams.controller.on("terminated", onAborted); - fetchParams.controller.resume = async () => { - while (true) { - let bytes; - let isFailure; - try { - const { done, value } = await fetchParams.controller.next(); - if (isAborted(fetchParams)) { - break; - } - bytes = done ? void 0 : value; - } catch (err) { - if (fetchParams.controller.ended && !timingInfo.encodedBodySize) { - bytes = void 0; - } else { - bytes = err; - isFailure = true; - } - } - if (bytes === void 0) { - readableStreamClose(fetchParams.controller.controller); - finalizeResponse(fetchParams, response); - return; - } - timingInfo.decodedBodySize += bytes?.byteLength ?? 0; - if (isFailure) { - fetchParams.controller.terminate(bytes); - return; - } - fetchParams.controller.controller.enqueue(new Uint8Array(bytes)); - if (isErrored(stream)) { - fetchParams.controller.terminate(); - return; - } - if (!fetchParams.controller.controller.desiredSize) { - return; - } - } - }; - function onAborted(reason) { - if (isAborted(fetchParams)) { - response.aborted = true; - if (isReadable(stream)) { - fetchParams.controller.controller.error( - fetchParams.controller.serializedAbortReason - ); - } - } else { - if (isReadable(stream)) { - fetchParams.controller.controller.error(new TypeError("terminated", { - cause: isErrorLike(reason) ? reason : void 0 - })); - } - } - fetchParams.controller.connection.destroy(); - } - return response; - async function dispatch({ body }) { - const url = requestCurrentURL(request); - const agent = fetchParams.controller.dispatcher; - return new Promise((resolve, reject) => agent.dispatch( - { - path: url.pathname + url.search, - origin: url.origin, - method: request.method, - body: fetchParams.controller.dispatcher.isMockActive ? request.body && (request.body.source || request.body.stream) : body, - headers: request.headersList.entries, - maxRedirections: 0, - upgrade: request.mode === "websocket" ? "websocket" : void 0 - }, - { - body: null, - abort: null, - onConnect(abort) { - const { connection } = fetchParams.controller; - if (connection.destroyed) { - abort(new DOMException2("The operation was aborted.", "AbortError")); - } else { - fetchParams.controller.on("terminated", abort); - this.abort = connection.abort = abort; - } - }, - onHeaders(status, headersList, resume, statusText) { - if (status < 200) { - return; - } - let codings = []; - let location = ""; - const headers = new Headers(); - if (Array.isArray(headersList)) { - for (let n = 0; n < headersList.length; n += 2) { - const key = headersList[n + 0].toString("latin1"); - const val = headersList[n + 1].toString("latin1"); - if (key.toLowerCase() === "content-encoding") { - codings = val.toLowerCase().split(",").map((x) => x.trim()); - } else if (key.toLowerCase() === "location") { - location = val; - } - headers[kHeadersList].append(key, val); - } - } else { - const keys = Object.keys(headersList); - for (const key of keys) { - const val = headersList[key]; - if (key.toLowerCase() === "content-encoding") { - codings = val.toLowerCase().split(",").map((x) => x.trim()).reverse(); - } else if (key.toLowerCase() === "location") { - location = val; - } - headers[kHeadersList].append(key, val); - } - } - this.body = new Readable({ read: resume }); - const decoders = []; - const willFollow = request.redirect === "follow" && location && redirectStatusSet.has(status); - if (request.method !== "HEAD" && request.method !== "CONNECT" && !nullBodyStatus.includes(status) && !willFollow) { - for (const coding of codings) { - if (coding === "x-gzip" || coding === "gzip") { - decoders.push(zlib.createGunzip({ - // Be less strict when decoding compressed responses, since sometimes - // servers send slightly invalid responses that are still accepted - // by common browsers. - // Always using Z_SYNC_FLUSH is what cURL does. - flush: zlib.constants.Z_SYNC_FLUSH, - finishFlush: zlib.constants.Z_SYNC_FLUSH - })); - } else if (coding === "deflate") { - decoders.push(zlib.createInflate()); - } else if (coding === "br") { - decoders.push(zlib.createBrotliDecompress()); - } else { - decoders.length = 0; - break; - } - } - } - resolve({ - status, - statusText, - headersList: headers[kHeadersList], - body: decoders.length ? pipeline(this.body, ...decoders, () => { - }) : this.body.on("error", () => { - }) - }); - return true; - }, - onData(chunk) { - if (fetchParams.controller.dump) { - return; - } - const bytes = chunk; - timingInfo.encodedBodySize += bytes.byteLength; - return this.body.push(bytes); - }, - onComplete() { - if (this.abort) { - fetchParams.controller.off("terminated", this.abort); - } - fetchParams.controller.ended = true; - this.body.push(null); - }, - onError(error) { - if (this.abort) { - fetchParams.controller.off("terminated", this.abort); - } - this.body?.destroy(error); - fetchParams.controller.terminate(error); - reject(error); - }, - onUpgrade(status, headersList, socket) { - if (status !== 101) { - return; - } - const headers = new Headers(); - for (let n = 0; n < headersList.length; n += 2) { - const key = headersList[n + 0].toString("latin1"); - const val = headersList[n + 1].toString("latin1"); - headers[kHeadersList].append(key, val); - } - resolve({ - status, - statusText: STATUS_CODES[status], - headersList: headers[kHeadersList], - socket - }); - return true; - } - } - )); - } - } - module2.exports = { - fetch, - Fetch, - fetching, - finalizeAndReportTiming - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fileapi/symbols.js -var require_symbols3 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fileapi/symbols.js"(exports2, module2) { - "use strict"; - module2.exports = { - kState: Symbol("FileReader state"), - kResult: Symbol("FileReader result"), - kError: Symbol("FileReader error"), - kLastProgressEventFired: Symbol("FileReader last progress event fired timestamp"), - kEvents: Symbol("FileReader events"), - kAborted: Symbol("FileReader aborted") - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fileapi/progressevent.js -var require_progressevent = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fileapi/progressevent.js"(exports2, module2) { - "use strict"; - var { webidl } = require_webidl(); - var kState = Symbol("ProgressEvent state"); - var ProgressEvent = class extends Event { - constructor(type, eventInitDict = {}) { - type = webidl.converters.DOMString(type); - eventInitDict = webidl.converters.ProgressEventInit(eventInitDict ?? {}); - super(type, eventInitDict); - this[kState] = { - lengthComputable: eventInitDict.lengthComputable, - loaded: eventInitDict.loaded, - total: eventInitDict.total - }; - } - get lengthComputable() { - webidl.brandCheck(this, ProgressEvent); - return this[kState].lengthComputable; - } - get loaded() { - webidl.brandCheck(this, ProgressEvent); - return this[kState].loaded; - } - get total() { - webidl.brandCheck(this, ProgressEvent); - return this[kState].total; - } - }; - webidl.converters.ProgressEventInit = webidl.dictionaryConverter([ - { - key: "lengthComputable", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "loaded", - converter: webidl.converters["unsigned long long"], - defaultValue: 0 - }, - { - key: "total", - converter: webidl.converters["unsigned long long"], - defaultValue: 0 - }, - { - key: "bubbles", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "cancelable", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "composed", - converter: webidl.converters.boolean, - defaultValue: false - } - ]); - module2.exports = { - ProgressEvent - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fileapi/encoding.js -var require_encoding = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fileapi/encoding.js"(exports2, module2) { - "use strict"; - function getEncoding(label) { - if (!label) { - return "failure"; - } - switch (label.trim().toLowerCase()) { - case "unicode-1-1-utf-8": - case "unicode11utf8": - case "unicode20utf8": - case "utf-8": - case "utf8": - case "x-unicode20utf8": - return "UTF-8"; - case "866": - case "cp866": - case "csibm866": - case "ibm866": - return "IBM866"; - case "csisolatin2": - case "iso-8859-2": - case "iso-ir-101": - case "iso8859-2": - case "iso88592": - case "iso_8859-2": - case "iso_8859-2:1987": - case "l2": - case "latin2": - return "ISO-8859-2"; - case "csisolatin3": - case "iso-8859-3": - case "iso-ir-109": - case "iso8859-3": - case "iso88593": - case "iso_8859-3": - case "iso_8859-3:1988": - case "l3": - case "latin3": - return "ISO-8859-3"; - case "csisolatin4": - case "iso-8859-4": - case "iso-ir-110": - case "iso8859-4": - case "iso88594": - case "iso_8859-4": - case "iso_8859-4:1988": - case "l4": - case "latin4": - return "ISO-8859-4"; - case "csisolatincyrillic": - case "cyrillic": - case "iso-8859-5": - case "iso-ir-144": - case "iso8859-5": - case "iso88595": - case "iso_8859-5": - case "iso_8859-5:1988": - return "ISO-8859-5"; - case "arabic": - case "asmo-708": - case "csiso88596e": - case "csiso88596i": - case "csisolatinarabic": - case "ecma-114": - case "iso-8859-6": - case "iso-8859-6-e": - case "iso-8859-6-i": - case "iso-ir-127": - case "iso8859-6": - case "iso88596": - case "iso_8859-6": - case "iso_8859-6:1987": - return "ISO-8859-6"; - case "csisolatingreek": - case "ecma-118": - case "elot_928": - case "greek": - case "greek8": - case "iso-8859-7": - case "iso-ir-126": - case "iso8859-7": - case "iso88597": - case "iso_8859-7": - case "iso_8859-7:1987": - case "sun_eu_greek": - return "ISO-8859-7"; - case "csiso88598e": - case "csisolatinhebrew": - case "hebrew": - case "iso-8859-8": - case "iso-8859-8-e": - case "iso-ir-138": - case "iso8859-8": - case "iso88598": - case "iso_8859-8": - case "iso_8859-8:1988": - case "visual": - return "ISO-8859-8"; - case "csiso88598i": - case "iso-8859-8-i": - case "logical": - return "ISO-8859-8-I"; - case "csisolatin6": - case "iso-8859-10": - case "iso-ir-157": - case "iso8859-10": - case "iso885910": - case "l6": - case "latin6": - return "ISO-8859-10"; - case "iso-8859-13": - case "iso8859-13": - case "iso885913": - return "ISO-8859-13"; - case "iso-8859-14": - case "iso8859-14": - case "iso885914": - return "ISO-8859-14"; - case "csisolatin9": - case "iso-8859-15": - case "iso8859-15": - case "iso885915": - case "iso_8859-15": - case "l9": - return "ISO-8859-15"; - case "iso-8859-16": - return "ISO-8859-16"; - case "cskoi8r": - case "koi": - case "koi8": - case "koi8-r": - case "koi8_r": - return "KOI8-R"; - case "koi8-ru": - case "koi8-u": - return "KOI8-U"; - case "csmacintosh": - case "mac": - case "macintosh": - case "x-mac-roman": - return "macintosh"; - case "iso-8859-11": - case "iso8859-11": - case "iso885911": - case "tis-620": - case "windows-874": - return "windows-874"; - case "cp1250": - case "windows-1250": - case "x-cp1250": - return "windows-1250"; - case "cp1251": - case "windows-1251": - case "x-cp1251": - return "windows-1251"; - case "ansi_x3.4-1968": - case "ascii": - case "cp1252": - case "cp819": - case "csisolatin1": - case "ibm819": - case "iso-8859-1": - case "iso-ir-100": - case "iso8859-1": - case "iso88591": - case "iso_8859-1": - case "iso_8859-1:1987": - case "l1": - case "latin1": - case "us-ascii": - case "windows-1252": - case "x-cp1252": - return "windows-1252"; - case "cp1253": - case "windows-1253": - case "x-cp1253": - return "windows-1253"; - case "cp1254": - case "csisolatin5": - case "iso-8859-9": - case "iso-ir-148": - case "iso8859-9": - case "iso88599": - case "iso_8859-9": - case "iso_8859-9:1989": - case "l5": - case "latin5": - case "windows-1254": - case "x-cp1254": - return "windows-1254"; - case "cp1255": - case "windows-1255": - case "x-cp1255": - return "windows-1255"; - case "cp1256": - case "windows-1256": - case "x-cp1256": - return "windows-1256"; - case "cp1257": - case "windows-1257": - case "x-cp1257": - return "windows-1257"; - case "cp1258": - case "windows-1258": - case "x-cp1258": - return "windows-1258"; - case "x-mac-cyrillic": - case "x-mac-ukrainian": - return "x-mac-cyrillic"; - case "chinese": - case "csgb2312": - case "csiso58gb231280": - case "gb2312": - case "gb_2312": - case "gb_2312-80": - case "gbk": - case "iso-ir-58": - case "x-gbk": - return "GBK"; - case "gb18030": - return "gb18030"; - case "big5": - case "big5-hkscs": - case "cn-big5": - case "csbig5": - case "x-x-big5": - return "Big5"; - case "cseucpkdfmtjapanese": - case "euc-jp": - case "x-euc-jp": - return "EUC-JP"; - case "csiso2022jp": - case "iso-2022-jp": - return "ISO-2022-JP"; - case "csshiftjis": - case "ms932": - case "ms_kanji": - case "shift-jis": - case "shift_jis": - case "sjis": - case "windows-31j": - case "x-sjis": - return "Shift_JIS"; - case "cseuckr": - case "csksc56011987": - case "euc-kr": - case "iso-ir-149": - case "korean": - case "ks_c_5601-1987": - case "ks_c_5601-1989": - case "ksc5601": - case "ksc_5601": - case "windows-949": - return "EUC-KR"; - case "csiso2022kr": - case "hz-gb-2312": - case "iso-2022-cn": - case "iso-2022-cn-ext": - case "iso-2022-kr": - case "replacement": - return "replacement"; - case "unicodefffe": - case "utf-16be": - return "UTF-16BE"; - case "csunicode": - case "iso-10646-ucs-2": - case "ucs-2": - case "unicode": - case "unicodefeff": - case "utf-16": - case "utf-16le": - return "UTF-16LE"; - case "x-user-defined": - return "x-user-defined"; - default: - return "failure"; - } - } - module2.exports = { - getEncoding - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fileapi/util.js -var require_util4 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fileapi/util.js"(exports2, module2) { - "use strict"; - var { - kState, - kError, - kResult, - kAborted, - kLastProgressEventFired - } = require_symbols3(); - var { ProgressEvent } = require_progressevent(); - var { getEncoding } = require_encoding(); - var { DOMException: DOMException2 } = require_constants2(); - var { serializeAMimeType, parseMIMEType } = require_dataURL(); - var { types } = require("util"); - var { StringDecoder } = require("string_decoder"); - var { btoa } = require("buffer"); - var staticPropertyDescriptors = { - enumerable: true, - writable: false, - configurable: false - }; - function readOperation(fr, blob, type, encodingName) { - if (fr[kState] === "loading") { - throw new DOMException2("Invalid state", "InvalidStateError"); - } - fr[kState] = "loading"; - fr[kResult] = null; - fr[kError] = null; - const stream = blob.stream(); - const reader = stream.getReader(); - const bytes = []; - let chunkPromise = reader.read(); - let isFirstChunk = true; - (async () => { - while (!fr[kAborted]) { - try { - const { done, value } = await chunkPromise; - if (isFirstChunk && !fr[kAborted]) { - queueMicrotask(() => { - fireAProgressEvent("loadstart", fr); - }); - } - isFirstChunk = false; - if (!done && types.isUint8Array(value)) { - bytes.push(value); - if ((fr[kLastProgressEventFired] === void 0 || Date.now() - fr[kLastProgressEventFired] >= 50) && !fr[kAborted]) { - fr[kLastProgressEventFired] = Date.now(); - queueMicrotask(() => { - fireAProgressEvent("progress", fr); - }); - } - chunkPromise = reader.read(); - } else if (done) { - queueMicrotask(() => { - fr[kState] = "done"; - try { - const result = packageData(bytes, type, blob.type, encodingName); - if (fr[kAborted]) { - return; - } - fr[kResult] = result; - fireAProgressEvent("load", fr); - } catch (error) { - fr[kError] = error; - fireAProgressEvent("error", fr); - } - if (fr[kState] !== "loading") { - fireAProgressEvent("loadend", fr); - } - }); - break; - } - } catch (error) { - if (fr[kAborted]) { - return; - } - queueMicrotask(() => { - fr[kState] = "done"; - fr[kError] = error; - fireAProgressEvent("error", fr); - if (fr[kState] !== "loading") { - fireAProgressEvent("loadend", fr); - } - }); - break; - } - } - })(); - } - function fireAProgressEvent(e, reader) { - const event = new ProgressEvent(e, { - bubbles: false, - cancelable: false - }); - reader.dispatchEvent(event); - } - function packageData(bytes, type, mimeType, encodingName) { - switch (type) { - case "DataURL": { - let dataURL = "data:"; - const parsed = parseMIMEType(mimeType || "application/octet-stream"); - if (parsed !== "failure") { - dataURL += serializeAMimeType(parsed); - } - dataURL += ";base64,"; - const decoder = new StringDecoder("latin1"); - for (const chunk of bytes) { - dataURL += btoa(decoder.write(chunk)); - } - dataURL += btoa(decoder.end()); - return dataURL; - } - case "Text": { - let encoding = "failure"; - if (encodingName) { - encoding = getEncoding(encodingName); - } - if (encoding === "failure" && mimeType) { - const type2 = parseMIMEType(mimeType); - if (type2 !== "failure") { - encoding = getEncoding(type2.parameters.get("charset")); - } - } - if (encoding === "failure") { - encoding = "UTF-8"; - } - return decode(bytes, encoding); - } - case "ArrayBuffer": { - const sequence = combineByteSequences(bytes); - return sequence.buffer; - } - case "BinaryString": { - let binaryString = ""; - const decoder = new StringDecoder("latin1"); - for (const chunk of bytes) { - binaryString += decoder.write(chunk); - } - binaryString += decoder.end(); - return binaryString; - } - } - } - function decode(ioQueue, encoding) { - const bytes = combineByteSequences(ioQueue); - const BOMEncoding = BOMSniffing(bytes); - let slice = 0; - if (BOMEncoding !== null) { - encoding = BOMEncoding; - slice = BOMEncoding === "UTF-8" ? 3 : 2; - } - const sliced = bytes.slice(slice); - return new TextDecoder(encoding).decode(sliced); - } - function BOMSniffing(ioQueue) { - const [a, b, c] = ioQueue; - if (a === 239 && b === 187 && c === 191) { - return "UTF-8"; - } else if (a === 254 && b === 255) { - return "UTF-16BE"; - } else if (a === 255 && b === 254) { - return "UTF-16LE"; - } - return null; - } - function combineByteSequences(sequences) { - const size = sequences.reduce((a, b) => { - return a + b.byteLength; - }, 0); - let offset = 0; - return sequences.reduce((a, b) => { - a.set(b, offset); - offset += b.byteLength; - return a; - }, new Uint8Array(size)); - } - module2.exports = { - staticPropertyDescriptors, - readOperation, - fireAProgressEvent - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/fileapi/filereader.js -var require_filereader = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/fileapi/filereader.js"(exports2, module2) { - "use strict"; - var { - staticPropertyDescriptors, - readOperation, - fireAProgressEvent - } = require_util4(); - var { - kState, - kError, - kResult, - kEvents, - kAborted - } = require_symbols3(); - var { webidl } = require_webidl(); - var { kEnumerableProperty } = require_util(); - var FileReader = class extends EventTarget { - constructor() { - super(); - this[kState] = "empty"; - this[kResult] = null; - this[kError] = null; - this[kEvents] = { - loadend: null, - error: null, - abort: null, - load: null, - progress: null, - loadstart: null - }; - } - /** - * @see https://w3c.github.io/FileAPI/#dfn-readAsArrayBuffer - * @param {import('buffer').Blob} blob - */ - readAsArrayBuffer(blob) { - webidl.brandCheck(this, FileReader); - webidl.argumentLengthCheck(arguments, 1, { header: "FileReader.readAsArrayBuffer" }); - blob = webidl.converters.Blob(blob, { strict: false }); - readOperation(this, blob, "ArrayBuffer"); - } - /** - * @see https://w3c.github.io/FileAPI/#readAsBinaryString - * @param {import('buffer').Blob} blob - */ - readAsBinaryString(blob) { - webidl.brandCheck(this, FileReader); - webidl.argumentLengthCheck(arguments, 1, { header: "FileReader.readAsBinaryString" }); - blob = webidl.converters.Blob(blob, { strict: false }); - readOperation(this, blob, "BinaryString"); - } - /** - * @see https://w3c.github.io/FileAPI/#readAsDataText - * @param {import('buffer').Blob} blob - * @param {string?} encoding - */ - readAsText(blob, encoding = void 0) { - webidl.brandCheck(this, FileReader); - webidl.argumentLengthCheck(arguments, 1, { header: "FileReader.readAsText" }); - blob = webidl.converters.Blob(blob, { strict: false }); - if (encoding !== void 0) { - encoding = webidl.converters.DOMString(encoding); - } - readOperation(this, blob, "Text", encoding); - } - /** - * @see https://w3c.github.io/FileAPI/#dfn-readAsDataURL - * @param {import('buffer').Blob} blob - */ - readAsDataURL(blob) { - webidl.brandCheck(this, FileReader); - webidl.argumentLengthCheck(arguments, 1, { header: "FileReader.readAsDataURL" }); - blob = webidl.converters.Blob(blob, { strict: false }); - readOperation(this, blob, "DataURL"); - } - /** - * @see https://w3c.github.io/FileAPI/#dfn-abort - */ - abort() { - if (this[kState] === "empty" || this[kState] === "done") { - this[kResult] = null; - return; - } - if (this[kState] === "loading") { - this[kState] = "done"; - this[kResult] = null; - } - this[kAborted] = true; - fireAProgressEvent("abort", this); - if (this[kState] !== "loading") { - fireAProgressEvent("loadend", this); - } - } - /** - * @see https://w3c.github.io/FileAPI/#dom-filereader-readystate - */ - get readyState() { - webidl.brandCheck(this, FileReader); - switch (this[kState]) { - case "empty": - return this.EMPTY; - case "loading": - return this.LOADING; - case "done": - return this.DONE; - } - } - /** - * @see https://w3c.github.io/FileAPI/#dom-filereader-result - */ - get result() { - webidl.brandCheck(this, FileReader); - return this[kResult]; - } - /** - * @see https://w3c.github.io/FileAPI/#dom-filereader-error - */ - get error() { - webidl.brandCheck(this, FileReader); - return this[kError]; - } - get onloadend() { - webidl.brandCheck(this, FileReader); - return this[kEvents].loadend; - } - set onloadend(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].loadend) { - this.removeEventListener("loadend", this[kEvents].loadend); - } - if (typeof fn === "function") { - this[kEvents].loadend = fn; - this.addEventListener("loadend", fn); - } else { - this[kEvents].loadend = null; - } - } - get onerror() { - webidl.brandCheck(this, FileReader); - return this[kEvents].error; - } - set onerror(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].error) { - this.removeEventListener("error", this[kEvents].error); - } - if (typeof fn === "function") { - this[kEvents].error = fn; - this.addEventListener("error", fn); - } else { - this[kEvents].error = null; - } - } - get onloadstart() { - webidl.brandCheck(this, FileReader); - return this[kEvents].loadstart; - } - set onloadstart(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].loadstart) { - this.removeEventListener("loadstart", this[kEvents].loadstart); - } - if (typeof fn === "function") { - this[kEvents].loadstart = fn; - this.addEventListener("loadstart", fn); - } else { - this[kEvents].loadstart = null; - } - } - get onprogress() { - webidl.brandCheck(this, FileReader); - return this[kEvents].progress; - } - set onprogress(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].progress) { - this.removeEventListener("progress", this[kEvents].progress); - } - if (typeof fn === "function") { - this[kEvents].progress = fn; - this.addEventListener("progress", fn); - } else { - this[kEvents].progress = null; - } - } - get onload() { - webidl.brandCheck(this, FileReader); - return this[kEvents].load; - } - set onload(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].load) { - this.removeEventListener("load", this[kEvents].load); - } - if (typeof fn === "function") { - this[kEvents].load = fn; - this.addEventListener("load", fn); - } else { - this[kEvents].load = null; - } - } - get onabort() { - webidl.brandCheck(this, FileReader); - return this[kEvents].abort; - } - set onabort(fn) { - webidl.brandCheck(this, FileReader); - if (this[kEvents].abort) { - this.removeEventListener("abort", this[kEvents].abort); - } - if (typeof fn === "function") { - this[kEvents].abort = fn; - this.addEventListener("abort", fn); - } else { - this[kEvents].abort = null; - } - } - }; - FileReader.EMPTY = FileReader.prototype.EMPTY = 0; - FileReader.LOADING = FileReader.prototype.LOADING = 1; - FileReader.DONE = FileReader.prototype.DONE = 2; - Object.defineProperties(FileReader.prototype, { - EMPTY: staticPropertyDescriptors, - LOADING: staticPropertyDescriptors, - DONE: staticPropertyDescriptors, - readAsArrayBuffer: kEnumerableProperty, - readAsBinaryString: kEnumerableProperty, - readAsText: kEnumerableProperty, - readAsDataURL: kEnumerableProperty, - abort: kEnumerableProperty, - readyState: kEnumerableProperty, - result: kEnumerableProperty, - error: kEnumerableProperty, - onloadstart: kEnumerableProperty, - onprogress: kEnumerableProperty, - onload: kEnumerableProperty, - onabort: kEnumerableProperty, - onerror: kEnumerableProperty, - onloadend: kEnumerableProperty, - [Symbol.toStringTag]: { - value: "FileReader", - writable: false, - enumerable: false, - configurable: true - } - }); - Object.defineProperties(FileReader, { - EMPTY: staticPropertyDescriptors, - LOADING: staticPropertyDescriptors, - DONE: staticPropertyDescriptors - }); - module2.exports = { - FileReader - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cache/symbols.js -var require_symbols4 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cache/symbols.js"(exports2, module2) { - "use strict"; - module2.exports = { - kConstruct: require_symbols().kConstruct - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cache/util.js -var require_util5 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cache/util.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var { URLSerializer } = require_dataURL(); - var { isValidHeaderName } = require_util2(); - function urlEquals(A, B, excludeFragment = false) { - const serializedA = URLSerializer(A, excludeFragment); - const serializedB = URLSerializer(B, excludeFragment); - return serializedA === serializedB; - } - function fieldValues(header) { - assert(header !== null); - const values = []; - for (let value of header.split(",")) { - value = value.trim(); - if (!value.length) { - continue; - } else if (!isValidHeaderName(value)) { - continue; - } - values.push(value); - } - return values; - } - module2.exports = { - urlEquals, - fieldValues - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cache/cache.js -var require_cache = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cache/cache.js"(exports2, module2) { - "use strict"; - var { kConstruct } = require_symbols4(); - var { urlEquals, fieldValues: getFieldValues } = require_util5(); - var { kEnumerableProperty, isDisturbed } = require_util(); - var { kHeadersList } = require_symbols(); - var { webidl } = require_webidl(); - var { Response, cloneResponse } = require_response(); - var { Request } = require_request2(); - var { kState, kHeaders, kGuard, kRealm } = require_symbols2(); - var { fetching } = require_fetch(); - var { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = require_util2(); - var assert = require("assert"); - var { getGlobalDispatcher } = require_global2(); - var Cache = class { - /** - * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-request-response-list - * @type {requestResponseList} - */ - #relevantRequestResponseList; - constructor() { - if (arguments[0] !== kConstruct) { - webidl.illegalConstructor(); - } - this.#relevantRequestResponseList = arguments[1]; - } - async match(request, options = {}) { - webidl.brandCheck(this, Cache); - webidl.argumentLengthCheck(arguments, 1, { header: "Cache.match" }); - request = webidl.converters.RequestInfo(request); - options = webidl.converters.CacheQueryOptions(options); - const p = await this.matchAll(request, options); - if (p.length === 0) { - return; - } - return p[0]; - } - async matchAll(request = void 0, options = {}) { - webidl.brandCheck(this, Cache); - if (request !== void 0) - request = webidl.converters.RequestInfo(request); - options = webidl.converters.CacheQueryOptions(options); - let r = null; - if (request !== void 0) { - if (request instanceof Request) { - r = request[kState]; - if (r.method !== "GET" && !options.ignoreMethod) { - return []; - } - } else if (typeof request === "string") { - r = new Request(request)[kState]; - } - } - const responses = []; - if (request === void 0) { - for (const requestResponse of this.#relevantRequestResponseList) { - responses.push(requestResponse[1]); - } - } else { - const requestResponses = this.#queryCache(r, options); - for (const requestResponse of requestResponses) { - responses.push(requestResponse[1]); - } - } - const responseList = []; - for (const response of responses) { - const responseObject = new Response(response.body?.source ?? null); - const body = responseObject[kState].body; - responseObject[kState] = response; - responseObject[kState].body = body; - responseObject[kHeaders][kHeadersList] = response.headersList; - responseObject[kHeaders][kGuard] = "immutable"; - responseList.push(responseObject); - } - return Object.freeze(responseList); - } - async add(request) { - webidl.brandCheck(this, Cache); - webidl.argumentLengthCheck(arguments, 1, { header: "Cache.add" }); - request = webidl.converters.RequestInfo(request); - const requests = [request]; - const responseArrayPromise = this.addAll(requests); - return await responseArrayPromise; - } - async addAll(requests) { - webidl.brandCheck(this, Cache); - webidl.argumentLengthCheck(arguments, 1, { header: "Cache.addAll" }); - requests = webidl.converters["sequence<RequestInfo>"](requests); - const responsePromises = []; - const requestList = []; - for (const request of requests) { - if (typeof request === "string") { - continue; - } - const r = request[kState]; - if (!urlIsHttpHttpsScheme(r.url) || r.method !== "GET") { - throw webidl.errors.exception({ - header: "Cache.addAll", - message: "Expected http/s scheme when method is not GET." - }); - } - } - const fetchControllers = []; - for (const request of requests) { - const r = new Request(request)[kState]; - if (!urlIsHttpHttpsScheme(r.url)) { - throw webidl.errors.exception({ - header: "Cache.addAll", - message: "Expected http/s scheme." - }); - } - r.initiator = "fetch"; - r.destination = "subresource"; - requestList.push(r); - const responsePromise = createDeferredPromise(); - fetchControllers.push(fetching({ - request: r, - dispatcher: getGlobalDispatcher(), - processResponse(response) { - if (response.type === "error" || response.status === 206 || response.status < 200 || response.status > 299) { - responsePromise.reject(webidl.errors.exception({ - header: "Cache.addAll", - message: "Received an invalid status code or the request failed." - })); - } else if (response.headersList.contains("vary")) { - const fieldValues = getFieldValues(response.headersList.get("vary")); - for (const fieldValue of fieldValues) { - if (fieldValue === "*") { - responsePromise.reject(webidl.errors.exception({ - header: "Cache.addAll", - message: "invalid vary field value" - })); - for (const controller of fetchControllers) { - controller.abort(); - } - return; - } - } - } - }, - processResponseEndOfBody(response) { - if (response.aborted) { - responsePromise.reject(new DOMException("aborted", "AbortError")); - return; - } - responsePromise.resolve(response); - } - })); - responsePromises.push(responsePromise.promise); - } - const p = Promise.all(responsePromises); - const responses = await p; - const operations = []; - let index = 0; - for (const response of responses) { - const operation = { - type: "put", - // 7.3.2 - request: requestList[index], - // 7.3.3 - response - // 7.3.4 - }; - operations.push(operation); - index++; - } - const cacheJobPromise = createDeferredPromise(); - let errorData = null; - try { - this.#batchCacheOperations(operations); - } catch (e) { - errorData = e; - } - queueMicrotask(() => { - if (errorData === null) { - cacheJobPromise.resolve(void 0); - } else { - cacheJobPromise.reject(errorData); - } - }); - return cacheJobPromise.promise; - } - async put(request, response) { - webidl.brandCheck(this, Cache); - webidl.argumentLengthCheck(arguments, 2, { header: "Cache.put" }); - request = webidl.converters.RequestInfo(request); - response = webidl.converters.Response(response); - let innerRequest = null; - if (request instanceof Request) { - innerRequest = request[kState]; - } else { - innerRequest = new Request(request)[kState]; - } - if (!urlIsHttpHttpsScheme(innerRequest.url) || innerRequest.method !== "GET") { - throw webidl.errors.exception({ - header: "Cache.put", - message: "Expected an http/s scheme when method is not GET" - }); - } - const innerResponse = response[kState]; - if (innerResponse.status === 206) { - throw webidl.errors.exception({ - header: "Cache.put", - message: "Got 206 status" - }); - } - if (innerResponse.headersList.contains("vary")) { - const fieldValues = getFieldValues(innerResponse.headersList.get("vary")); - for (const fieldValue of fieldValues) { - if (fieldValue === "*") { - throw webidl.errors.exception({ - header: "Cache.put", - message: "Got * vary field value" - }); - } - } - } - if (innerResponse.body && (isDisturbed(innerResponse.body.stream) || innerResponse.body.stream.locked)) { - throw webidl.errors.exception({ - header: "Cache.put", - message: "Response body is locked or disturbed" - }); - } - const clonedResponse = cloneResponse(innerResponse); - const bodyReadPromise = createDeferredPromise(); - if (innerResponse.body != null) { - const stream = innerResponse.body.stream; - const reader = stream.getReader(); - readAllBytes(reader).then(bodyReadPromise.resolve, bodyReadPromise.reject); - } else { - bodyReadPromise.resolve(void 0); - } - const operations = []; - const operation = { - type: "put", - // 14. - request: innerRequest, - // 15. - response: clonedResponse - // 16. - }; - operations.push(operation); - const bytes = await bodyReadPromise.promise; - if (clonedResponse.body != null) { - clonedResponse.body.source = bytes; - } - const cacheJobPromise = createDeferredPromise(); - let errorData = null; - try { - this.#batchCacheOperations(operations); - } catch (e) { - errorData = e; - } - queueMicrotask(() => { - if (errorData === null) { - cacheJobPromise.resolve(); - } else { - cacheJobPromise.reject(errorData); - } - }); - return cacheJobPromise.promise; - } - async delete(request, options = {}) { - webidl.brandCheck(this, Cache); - webidl.argumentLengthCheck(arguments, 1, { header: "Cache.delete" }); - request = webidl.converters.RequestInfo(request); - options = webidl.converters.CacheQueryOptions(options); - let r = null; - if (request instanceof Request) { - r = request[kState]; - if (r.method !== "GET" && !options.ignoreMethod) { - return false; - } - } else { - assert(typeof request === "string"); - r = new Request(request)[kState]; - } - const operations = []; - const operation = { - type: "delete", - request: r, - options - }; - operations.push(operation); - const cacheJobPromise = createDeferredPromise(); - let errorData = null; - let requestResponses; - try { - requestResponses = this.#batchCacheOperations(operations); - } catch (e) { - errorData = e; - } - queueMicrotask(() => { - if (errorData === null) { - cacheJobPromise.resolve(!!requestResponses?.length); - } else { - cacheJobPromise.reject(errorData); - } - }); - return cacheJobPromise.promise; - } - /** - * @see https://w3c.github.io/ServiceWorker/#dom-cache-keys - * @param {any} request - * @param {import('../../types/cache').CacheQueryOptions} options - * @returns {readonly Request[]} - */ - async keys(request = void 0, options = {}) { - webidl.brandCheck(this, Cache); - if (request !== void 0) - request = webidl.converters.RequestInfo(request); - options = webidl.converters.CacheQueryOptions(options); - let r = null; - if (request !== void 0) { - if (request instanceof Request) { - r = request[kState]; - if (r.method !== "GET" && !options.ignoreMethod) { - return []; - } - } else if (typeof request === "string") { - r = new Request(request)[kState]; - } - } - const promise = createDeferredPromise(); - const requests = []; - if (request === void 0) { - for (const requestResponse of this.#relevantRequestResponseList) { - requests.push(requestResponse[0]); - } - } else { - const requestResponses = this.#queryCache(r, options); - for (const requestResponse of requestResponses) { - requests.push(requestResponse[0]); - } - } - queueMicrotask(() => { - const requestList = []; - for (const request2 of requests) { - const requestObject = new Request("https://a"); - requestObject[kState] = request2; - requestObject[kHeaders][kHeadersList] = request2.headersList; - requestObject[kHeaders][kGuard] = "immutable"; - requestObject[kRealm] = request2.client; - requestList.push(requestObject); - } - promise.resolve(Object.freeze(requestList)); - }); - return promise.promise; - } - /** - * @see https://w3c.github.io/ServiceWorker/#batch-cache-operations-algorithm - * @param {CacheBatchOperation[]} operations - * @returns {requestResponseList} - */ - #batchCacheOperations(operations) { - const cache = this.#relevantRequestResponseList; - const backupCache = [...cache]; - const addedItems = []; - const resultList = []; - try { - for (const operation of operations) { - if (operation.type !== "delete" && operation.type !== "put") { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: 'operation type does not match "delete" or "put"' - }); - } - if (operation.type === "delete" && operation.response != null) { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: "delete operation should not have an associated response" - }); - } - if (this.#queryCache(operation.request, operation.options, addedItems).length) { - throw new DOMException("???", "InvalidStateError"); - } - let requestResponses; - if (operation.type === "delete") { - requestResponses = this.#queryCache(operation.request, operation.options); - if (requestResponses.length === 0) { - return []; - } - for (const requestResponse of requestResponses) { - const idx = cache.indexOf(requestResponse); - assert(idx !== -1); - cache.splice(idx, 1); - } - } else if (operation.type === "put") { - if (operation.response == null) { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: "put operation should have an associated response" - }); - } - const r = operation.request; - if (!urlIsHttpHttpsScheme(r.url)) { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: "expected http or https scheme" - }); - } - if (r.method !== "GET") { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: "not get method" - }); - } - if (operation.options != null) { - throw webidl.errors.exception({ - header: "Cache.#batchCacheOperations", - message: "options must not be defined" - }); - } - requestResponses = this.#queryCache(operation.request); - for (const requestResponse of requestResponses) { - const idx = cache.indexOf(requestResponse); - assert(idx !== -1); - cache.splice(idx, 1); - } - cache.push([operation.request, operation.response]); - addedItems.push([operation.request, operation.response]); - } - resultList.push([operation.request, operation.response]); - } - return resultList; - } catch (e) { - this.#relevantRequestResponseList.length = 0; - this.#relevantRequestResponseList = backupCache; - throw e; - } - } - /** - * @see https://w3c.github.io/ServiceWorker/#query-cache - * @param {any} requestQuery - * @param {import('../../types/cache').CacheQueryOptions} options - * @param {requestResponseList} targetStorage - * @returns {requestResponseList} - */ - #queryCache(requestQuery, options, targetStorage) { - const resultList = []; - const storage = targetStorage ?? this.#relevantRequestResponseList; - for (const requestResponse of storage) { - const [cachedRequest, cachedResponse] = requestResponse; - if (this.#requestMatchesCachedItem(requestQuery, cachedRequest, cachedResponse, options)) { - resultList.push(requestResponse); - } - } - return resultList; - } - /** - * @see https://w3c.github.io/ServiceWorker/#request-matches-cached-item-algorithm - * @param {any} requestQuery - * @param {any} request - * @param {any | null} response - * @param {import('../../types/cache').CacheQueryOptions | undefined} options - * @returns {boolean} - */ - #requestMatchesCachedItem(requestQuery, request, response = null, options) { - const queryURL = new URL(requestQuery.url); - const cachedURL = new URL(request.url); - if (options?.ignoreSearch) { - cachedURL.search = ""; - queryURL.search = ""; - } - if (!urlEquals(queryURL, cachedURL, true)) { - return false; - } - if (response == null || options?.ignoreVary || !response.headersList.contains("vary")) { - return true; - } - const fieldValues = getFieldValues(response.headersList.get("vary")); - for (const fieldValue of fieldValues) { - if (fieldValue === "*") { - return false; - } - const requestValue = request.headersList.get(fieldValue); - const queryValue = requestQuery.headersList.get(fieldValue); - if (requestValue !== queryValue) { - return false; - } - } - return true; - } - }; - Object.defineProperties(Cache.prototype, { - [Symbol.toStringTag]: { - value: "Cache", - configurable: true - }, - match: kEnumerableProperty, - matchAll: kEnumerableProperty, - add: kEnumerableProperty, - addAll: kEnumerableProperty, - put: kEnumerableProperty, - delete: kEnumerableProperty, - keys: kEnumerableProperty - }); - var cacheQueryOptionConverters = [ - { - key: "ignoreSearch", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "ignoreMethod", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "ignoreVary", - converter: webidl.converters.boolean, - defaultValue: false - } - ]; - webidl.converters.CacheQueryOptions = webidl.dictionaryConverter(cacheQueryOptionConverters); - webidl.converters.MultiCacheQueryOptions = webidl.dictionaryConverter([ - ...cacheQueryOptionConverters, - { - key: "cacheName", - converter: webidl.converters.DOMString - } - ]); - webidl.converters.Response = webidl.interfaceConverter(Response); - webidl.converters["sequence<RequestInfo>"] = webidl.sequenceConverter( - webidl.converters.RequestInfo - ); - module2.exports = { - Cache - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cache/cachestorage.js -var require_cachestorage = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cache/cachestorage.js"(exports2, module2) { - "use strict"; - var { kConstruct } = require_symbols4(); - var { Cache } = require_cache(); - var { webidl } = require_webidl(); - var { kEnumerableProperty } = require_util(); - var CacheStorage = class { - /** - * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-name-to-cache-map - * @type {Map<string, import('./cache').requestResponseList} - */ - #caches = /* @__PURE__ */ new Map(); - constructor() { - if (arguments[0] !== kConstruct) { - webidl.illegalConstructor(); - } - } - async match(request, options = {}) { - webidl.brandCheck(this, CacheStorage); - webidl.argumentLengthCheck(arguments, 1, { header: "CacheStorage.match" }); - request = webidl.converters.RequestInfo(request); - options = webidl.converters.MultiCacheQueryOptions(options); - if (options.cacheName != null) { - if (this.#caches.has(options.cacheName)) { - const cacheList = this.#caches.get(options.cacheName); - const cache = new Cache(kConstruct, cacheList); - return await cache.match(request, options); - } - } else { - for (const cacheList of this.#caches.values()) { - const cache = new Cache(kConstruct, cacheList); - const response = await cache.match(request, options); - if (response !== void 0) { - return response; - } - } - } - } - /** - * @see https://w3c.github.io/ServiceWorker/#cache-storage-has - * @param {string} cacheName - * @returns {Promise<boolean>} - */ - async has(cacheName) { - webidl.brandCheck(this, CacheStorage); - webidl.argumentLengthCheck(arguments, 1, { header: "CacheStorage.has" }); - cacheName = webidl.converters.DOMString(cacheName); - return this.#caches.has(cacheName); - } - /** - * @see https://w3c.github.io/ServiceWorker/#dom-cachestorage-open - * @param {string} cacheName - * @returns {Promise<Cache>} - */ - async open(cacheName) { - webidl.brandCheck(this, CacheStorage); - webidl.argumentLengthCheck(arguments, 1, { header: "CacheStorage.open" }); - cacheName = webidl.converters.DOMString(cacheName); - if (this.#caches.has(cacheName)) { - const cache2 = this.#caches.get(cacheName); - return new Cache(kConstruct, cache2); - } - const cache = []; - this.#caches.set(cacheName, cache); - return new Cache(kConstruct, cache); - } - /** - * @see https://w3c.github.io/ServiceWorker/#cache-storage-delete - * @param {string} cacheName - * @returns {Promise<boolean>} - */ - async delete(cacheName) { - webidl.brandCheck(this, CacheStorage); - webidl.argumentLengthCheck(arguments, 1, { header: "CacheStorage.delete" }); - cacheName = webidl.converters.DOMString(cacheName); - return this.#caches.delete(cacheName); - } - /** - * @see https://w3c.github.io/ServiceWorker/#cache-storage-keys - * @returns {string[]} - */ - async keys() { - webidl.brandCheck(this, CacheStorage); - const keys = this.#caches.keys(); - return [...keys]; - } - }; - Object.defineProperties(CacheStorage.prototype, { - [Symbol.toStringTag]: { - value: "CacheStorage", - configurable: true - }, - match: kEnumerableProperty, - has: kEnumerableProperty, - open: kEnumerableProperty, - delete: kEnumerableProperty, - keys: kEnumerableProperty - }); - module2.exports = { - CacheStorage - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cookies/constants.js -var require_constants4 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cookies/constants.js"(exports2, module2) { - "use strict"; - var maxAttributeValueSize = 1024; - var maxNameValuePairSize = 4096; - module2.exports = { - maxAttributeValueSize, - maxNameValuePairSize - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cookies/util.js -var require_util6 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cookies/util.js"(exports2, module2) { - "use strict"; - var assert = require("assert"); - var { kHeadersList } = require_symbols(); - function isCTLExcludingHtab(value) { - if (value.length === 0) { - return false; - } - for (const char of value) { - const code = char.charCodeAt(0); - if (code >= 0 || code <= 8 || (code >= 10 || code <= 31) || code === 127) { - return false; - } - } - } - function validateCookieName(name) { - for (const char of name) { - const code = char.charCodeAt(0); - if (code <= 32 || code > 127 || char === "(" || char === ")" || char === ">" || char === "<" || char === "@" || char === "," || char === ";" || char === ":" || char === "\\" || char === '"' || char === "/" || char === "[" || char === "]" || char === "?" || char === "=" || char === "{" || char === "}") { - throw new Error("Invalid cookie name"); - } - } - } - function validateCookieValue(value) { - for (const char of value) { - const code = char.charCodeAt(0); - if (code < 33 || // exclude CTLs (0-31) - code === 34 || code === 44 || code === 59 || code === 92 || code > 126) { - throw new Error("Invalid header value"); - } - } - } - function validateCookiePath(path2) { - for (const char of path2) { - const code = char.charCodeAt(0); - if (code < 33 || char === ";") { - throw new Error("Invalid cookie path"); - } - } - } - function validateCookieDomain(domain) { - if (domain.startsWith("-") || domain.endsWith(".") || domain.endsWith("-")) { - throw new Error("Invalid cookie domain"); - } - } - function toIMFDate(date) { - if (typeof date === "number") { - date = new Date(date); - } - const days = [ - "Sun", - "Mon", - "Tue", - "Wed", - "Thu", - "Fri", - "Sat" - ]; - const months = [ - "Jan", - "Feb", - "Mar", - "Apr", - "May", - "Jun", - "Jul", - "Aug", - "Sep", - "Oct", - "Nov", - "Dec" - ]; - const dayName = days[date.getUTCDay()]; - const day = date.getUTCDate().toString().padStart(2, "0"); - const month = months[date.getUTCMonth()]; - const year = date.getUTCFullYear(); - const hour = date.getUTCHours().toString().padStart(2, "0"); - const minute = date.getUTCMinutes().toString().padStart(2, "0"); - const second = date.getUTCSeconds().toString().padStart(2, "0"); - return `${dayName}, ${day} ${month} ${year} ${hour}:${minute}:${second} GMT`; - } - function validateCookieMaxAge(maxAge) { - if (maxAge < 0) { - throw new Error("Invalid cookie max-age"); - } - } - function stringify(cookie) { - if (cookie.name.length === 0) { - return null; - } - validateCookieName(cookie.name); - validateCookieValue(cookie.value); - const out = [`${cookie.name}=${cookie.value}`]; - if (cookie.name.startsWith("__Secure-")) { - cookie.secure = true; - } - if (cookie.name.startsWith("__Host-")) { - cookie.secure = true; - cookie.domain = null; - cookie.path = "/"; - } - if (cookie.secure) { - out.push("Secure"); - } - if (cookie.httpOnly) { - out.push("HttpOnly"); - } - if (typeof cookie.maxAge === "number") { - validateCookieMaxAge(cookie.maxAge); - out.push(`Max-Age=${cookie.maxAge}`); - } - if (cookie.domain) { - validateCookieDomain(cookie.domain); - out.push(`Domain=${cookie.domain}`); - } - if (cookie.path) { - validateCookiePath(cookie.path); - out.push(`Path=${cookie.path}`); - } - if (cookie.expires && cookie.expires.toString() !== "Invalid Date") { - out.push(`Expires=${toIMFDate(cookie.expires)}`); - } - if (cookie.sameSite) { - out.push(`SameSite=${cookie.sameSite}`); - } - for (const part of cookie.unparsed) { - if (!part.includes("=")) { - throw new Error("Invalid unparsed"); - } - const [key, ...value] = part.split("="); - out.push(`${key.trim()}=${value.join("=")}`); - } - return out.join("; "); - } - var kHeadersListNode; - function getHeadersList(headers) { - if (headers[kHeadersList]) { - return headers[kHeadersList]; - } - if (!kHeadersListNode) { - kHeadersListNode = Object.getOwnPropertySymbols(headers).find( - (symbol) => symbol.description === "headers list" - ); - assert(kHeadersListNode, "Headers cannot be parsed"); - } - const headersList = headers[kHeadersListNode]; - assert(headersList); - return headersList; - } - module2.exports = { - isCTLExcludingHtab, - stringify, - getHeadersList - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cookies/parse.js -var require_parse = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cookies/parse.js"(exports2, module2) { - "use strict"; - var { maxNameValuePairSize, maxAttributeValueSize } = require_constants4(); - var { isCTLExcludingHtab } = require_util6(); - var { collectASequenceOfCodePointsFast } = require_dataURL(); - var assert = require("assert"); - function parseSetCookie(header) { - if (isCTLExcludingHtab(header)) { - return null; - } - let nameValuePair = ""; - let unparsedAttributes = ""; - let name = ""; - let value = ""; - if (header.includes(";")) { - const position = { position: 0 }; - nameValuePair = collectASequenceOfCodePointsFast(";", header, position); - unparsedAttributes = header.slice(position.position); - } else { - nameValuePair = header; - } - if (!nameValuePair.includes("=")) { - value = nameValuePair; - } else { - const position = { position: 0 }; - name = collectASequenceOfCodePointsFast( - "=", - nameValuePair, - position - ); - value = nameValuePair.slice(position.position + 1); - } - name = name.trim(); - value = value.trim(); - if (name.length + value.length > maxNameValuePairSize) { - return null; - } - return { - name, - value, - ...parseUnparsedAttributes(unparsedAttributes) - }; - } - function parseUnparsedAttributes(unparsedAttributes, cookieAttributeList = {}) { - if (unparsedAttributes.length === 0) { - return cookieAttributeList; - } - assert(unparsedAttributes[0] === ";"); - unparsedAttributes = unparsedAttributes.slice(1); - let cookieAv = ""; - if (unparsedAttributes.includes(";")) { - cookieAv = collectASequenceOfCodePointsFast( - ";", - unparsedAttributes, - { position: 0 } - ); - unparsedAttributes = unparsedAttributes.slice(cookieAv.length); - } else { - cookieAv = unparsedAttributes; - unparsedAttributes = ""; - } - let attributeName = ""; - let attributeValue = ""; - if (cookieAv.includes("=")) { - const position = { position: 0 }; - attributeName = collectASequenceOfCodePointsFast( - "=", - cookieAv, - position - ); - attributeValue = cookieAv.slice(position.position + 1); - } else { - attributeName = cookieAv; - } - attributeName = attributeName.trim(); - attributeValue = attributeValue.trim(); - if (attributeValue.length > maxAttributeValueSize) { - return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList); - } - const attributeNameLowercase = attributeName.toLowerCase(); - if (attributeNameLowercase === "expires") { - const expiryTime = new Date(attributeValue); - cookieAttributeList.expires = expiryTime; - } else if (attributeNameLowercase === "max-age") { - const charCode = attributeValue.charCodeAt(0); - if ((charCode < 48 || charCode > 57) && attributeValue[0] !== "-") { - return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList); - } - if (!/^\d+$/.test(attributeValue)) { - return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList); - } - const deltaSeconds = Number(attributeValue); - cookieAttributeList.maxAge = deltaSeconds; - } else if (attributeNameLowercase === "domain") { - let cookieDomain = attributeValue; - if (cookieDomain[0] === ".") { - cookieDomain = cookieDomain.slice(1); - } - cookieDomain = cookieDomain.toLowerCase(); - cookieAttributeList.domain = cookieDomain; - } else if (attributeNameLowercase === "path") { - let cookiePath = ""; - if (attributeValue.length === 0 || attributeValue[0] !== "/") { - cookiePath = "/"; - } else { - cookiePath = attributeValue; - } - cookieAttributeList.path = cookiePath; - } else if (attributeNameLowercase === "secure") { - cookieAttributeList.secure = true; - } else if (attributeNameLowercase === "httponly") { - cookieAttributeList.httpOnly = true; - } else if (attributeNameLowercase === "samesite") { - let enforcement = "Default"; - const attributeValueLowercase = attributeValue.toLowerCase(); - if (attributeValueLowercase.includes("none")) { - enforcement = "None"; - } - if (attributeValueLowercase.includes("strict")) { - enforcement = "Strict"; - } - if (attributeValueLowercase.includes("lax")) { - enforcement = "Lax"; - } - cookieAttributeList.sameSite = enforcement; - } else { - cookieAttributeList.unparsed ??= []; - cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`); - } - return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList); - } - module2.exports = { - parseSetCookie, - parseUnparsedAttributes - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/cookies/index.js -var require_cookies = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/cookies/index.js"(exports2, module2) { - "use strict"; - var { parseSetCookie } = require_parse(); - var { stringify, getHeadersList } = require_util6(); - var { webidl } = require_webidl(); - var { Headers } = require_headers(); - function getCookies(headers) { - webidl.argumentLengthCheck(arguments, 1, { header: "getCookies" }); - webidl.brandCheck(headers, Headers, { strict: false }); - const cookie = headers.get("cookie"); - const out = {}; - if (!cookie) { - return out; - } - for (const piece of cookie.split(";")) { - const [name, ...value] = piece.split("="); - out[name.trim()] = value.join("="); - } - return out; - } - function deleteCookie(headers, name, attributes) { - webidl.argumentLengthCheck(arguments, 2, { header: "deleteCookie" }); - webidl.brandCheck(headers, Headers, { strict: false }); - name = webidl.converters.DOMString(name); - attributes = webidl.converters.DeleteCookieAttributes(attributes); - setCookie(headers, { - name, - value: "", - expires: /* @__PURE__ */ new Date(0), - ...attributes - }); - } - function getSetCookies(headers) { - webidl.argumentLengthCheck(arguments, 1, { header: "getSetCookies" }); - webidl.brandCheck(headers, Headers, { strict: false }); - const cookies = getHeadersList(headers).cookies; - if (!cookies) { - return []; - } - return cookies.map((pair) => parseSetCookie(Array.isArray(pair) ? pair[1] : pair)); - } - function setCookie(headers, cookie) { - webidl.argumentLengthCheck(arguments, 2, { header: "setCookie" }); - webidl.brandCheck(headers, Headers, { strict: false }); - cookie = webidl.converters.Cookie(cookie); - const str = stringify(cookie); - if (str) { - headers.append("Set-Cookie", stringify(cookie)); - } - } - webidl.converters.DeleteCookieAttributes = webidl.dictionaryConverter([ - { - converter: webidl.nullableConverter(webidl.converters.DOMString), - key: "path", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters.DOMString), - key: "domain", - defaultValue: null - } - ]); - webidl.converters.Cookie = webidl.dictionaryConverter([ - { - converter: webidl.converters.DOMString, - key: "name" - }, - { - converter: webidl.converters.DOMString, - key: "value" - }, - { - converter: webidl.nullableConverter((value) => { - if (typeof value === "number") { - return webidl.converters["unsigned long long"](value); - } - return new Date(value); - }), - key: "expires", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters["long long"]), - key: "maxAge", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters.DOMString), - key: "domain", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters.DOMString), - key: "path", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters.boolean), - key: "secure", - defaultValue: null - }, - { - converter: webidl.nullableConverter(webidl.converters.boolean), - key: "httpOnly", - defaultValue: null - }, - { - converter: webidl.converters.USVString, - key: "sameSite", - allowedValues: ["Strict", "Lax", "None"] - }, - { - converter: webidl.sequenceConverter(webidl.converters.DOMString), - key: "unparsed", - defaultValue: [] - } - ]); - module2.exports = { - getCookies, - deleteCookie, - getSetCookies, - setCookie - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/constants.js -var require_constants5 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/constants.js"(exports2, module2) { - "use strict"; - var uid = "258EAFA5-E914-47DA-95CA-C5AB0DC85B11"; - var staticPropertyDescriptors = { - enumerable: true, - writable: false, - configurable: false - }; - var states = { - CONNECTING: 0, - OPEN: 1, - CLOSING: 2, - CLOSED: 3 - }; - var opcodes = { - CONTINUATION: 0, - TEXT: 1, - BINARY: 2, - CLOSE: 8, - PING: 9, - PONG: 10 - }; - var maxUnsigned16Bit = 2 ** 16 - 1; - var parserStates = { - INFO: 0, - PAYLOADLENGTH_16: 2, - PAYLOADLENGTH_64: 3, - READ_DATA: 4 - }; - var emptyBuffer = Buffer.allocUnsafe(0); - module2.exports = { - uid, - staticPropertyDescriptors, - states, - opcodes, - maxUnsigned16Bit, - parserStates, - emptyBuffer - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/symbols.js -var require_symbols5 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/symbols.js"(exports2, module2) { - "use strict"; - module2.exports = { - kWebSocketURL: Symbol("url"), - kReadyState: Symbol("ready state"), - kController: Symbol("controller"), - kResponse: Symbol("response"), - kBinaryType: Symbol("binary type"), - kSentClose: Symbol("sent close"), - kReceivedClose: Symbol("received close"), - kByteParser: Symbol("byte parser") - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/events.js -var require_events = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/events.js"(exports2, module2) { - "use strict"; - var { webidl } = require_webidl(); - var { kEnumerableProperty } = require_util(); - var { MessagePort } = require("worker_threads"); - var MessageEvent = class extends Event { - #eventInit; - constructor(type, eventInitDict = {}) { - webidl.argumentLengthCheck(arguments, 1, { header: "MessageEvent constructor" }); - type = webidl.converters.DOMString(type); - eventInitDict = webidl.converters.MessageEventInit(eventInitDict); - super(type, eventInitDict); - this.#eventInit = eventInitDict; - } - get data() { - webidl.brandCheck(this, MessageEvent); - return this.#eventInit.data; - } - get origin() { - webidl.brandCheck(this, MessageEvent); - return this.#eventInit.origin; - } - get lastEventId() { - webidl.brandCheck(this, MessageEvent); - return this.#eventInit.lastEventId; - } - get source() { - webidl.brandCheck(this, MessageEvent); - return this.#eventInit.source; - } - get ports() { - webidl.brandCheck(this, MessageEvent); - if (!Object.isFrozen(this.#eventInit.ports)) { - Object.freeze(this.#eventInit.ports); - } - return this.#eventInit.ports; - } - initMessageEvent(type, bubbles = false, cancelable = false, data = null, origin = "", lastEventId = "", source = null, ports = []) { - webidl.brandCheck(this, MessageEvent); - webidl.argumentLengthCheck(arguments, 1, { header: "MessageEvent.initMessageEvent" }); - return new MessageEvent(type, { - bubbles, - cancelable, - data, - origin, - lastEventId, - source, - ports - }); - } - }; - var CloseEvent = class extends Event { - #eventInit; - constructor(type, eventInitDict = {}) { - webidl.argumentLengthCheck(arguments, 1, { header: "CloseEvent constructor" }); - type = webidl.converters.DOMString(type); - eventInitDict = webidl.converters.CloseEventInit(eventInitDict); - super(type, eventInitDict); - this.#eventInit = eventInitDict; - } - get wasClean() { - webidl.brandCheck(this, CloseEvent); - return this.#eventInit.wasClean; - } - get code() { - webidl.brandCheck(this, CloseEvent); - return this.#eventInit.code; - } - get reason() { - webidl.brandCheck(this, CloseEvent); - return this.#eventInit.reason; - } - }; - var ErrorEvent = class extends Event { - #eventInit; - constructor(type, eventInitDict) { - webidl.argumentLengthCheck(arguments, 1, { header: "ErrorEvent constructor" }); - super(type, eventInitDict); - type = webidl.converters.DOMString(type); - eventInitDict = webidl.converters.ErrorEventInit(eventInitDict ?? {}); - this.#eventInit = eventInitDict; - } - get message() { - webidl.brandCheck(this, ErrorEvent); - return this.#eventInit.message; - } - get filename() { - webidl.brandCheck(this, ErrorEvent); - return this.#eventInit.filename; - } - get lineno() { - webidl.brandCheck(this, ErrorEvent); - return this.#eventInit.lineno; - } - get colno() { - webidl.brandCheck(this, ErrorEvent); - return this.#eventInit.colno; - } - get error() { - webidl.brandCheck(this, ErrorEvent); - return this.#eventInit.error; - } - }; - Object.defineProperties(MessageEvent.prototype, { - [Symbol.toStringTag]: { - value: "MessageEvent", - configurable: true - }, - data: kEnumerableProperty, - origin: kEnumerableProperty, - lastEventId: kEnumerableProperty, - source: kEnumerableProperty, - ports: kEnumerableProperty, - initMessageEvent: kEnumerableProperty - }); - Object.defineProperties(CloseEvent.prototype, { - [Symbol.toStringTag]: { - value: "CloseEvent", - configurable: true - }, - reason: kEnumerableProperty, - code: kEnumerableProperty, - wasClean: kEnumerableProperty - }); - Object.defineProperties(ErrorEvent.prototype, { - [Symbol.toStringTag]: { - value: "ErrorEvent", - configurable: true - }, - message: kEnumerableProperty, - filename: kEnumerableProperty, - lineno: kEnumerableProperty, - colno: kEnumerableProperty, - error: kEnumerableProperty - }); - webidl.converters.MessagePort = webidl.interfaceConverter(MessagePort); - webidl.converters["sequence<MessagePort>"] = webidl.sequenceConverter( - webidl.converters.MessagePort - ); - var eventInit = [ - { - key: "bubbles", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "cancelable", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "composed", - converter: webidl.converters.boolean, - defaultValue: false - } - ]; - webidl.converters.MessageEventInit = webidl.dictionaryConverter([ - ...eventInit, - { - key: "data", - converter: webidl.converters.any, - defaultValue: null - }, - { - key: "origin", - converter: webidl.converters.USVString, - defaultValue: "" - }, - { - key: "lastEventId", - converter: webidl.converters.DOMString, - defaultValue: "" - }, - { - key: "source", - // Node doesn't implement WindowProxy or ServiceWorker, so the only - // valid value for source is a MessagePort. - converter: webidl.nullableConverter(webidl.converters.MessagePort), - defaultValue: null - }, - { - key: "ports", - converter: webidl.converters["sequence<MessagePort>"], - get defaultValue() { - return []; - } - } - ]); - webidl.converters.CloseEventInit = webidl.dictionaryConverter([ - ...eventInit, - { - key: "wasClean", - converter: webidl.converters.boolean, - defaultValue: false - }, - { - key: "code", - converter: webidl.converters["unsigned short"], - defaultValue: 0 - }, - { - key: "reason", - converter: webidl.converters.USVString, - defaultValue: "" - } - ]); - webidl.converters.ErrorEventInit = webidl.dictionaryConverter([ - ...eventInit, - { - key: "message", - converter: webidl.converters.DOMString, - defaultValue: "" - }, - { - key: "filename", - converter: webidl.converters.USVString, - defaultValue: "" - }, - { - key: "lineno", - converter: webidl.converters["unsigned long"], - defaultValue: 0 - }, - { - key: "colno", - converter: webidl.converters["unsigned long"], - defaultValue: 0 - }, - { - key: "error", - converter: webidl.converters.any - } - ]); - module2.exports = { - MessageEvent, - CloseEvent, - ErrorEvent - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/util.js -var require_util7 = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/util.js"(exports2, module2) { - "use strict"; - var { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = require_symbols5(); - var { states, opcodes } = require_constants5(); - var { MessageEvent, ErrorEvent } = require_events(); - function isEstablished(ws) { - return ws[kReadyState] === states.OPEN; - } - function isClosing(ws) { - return ws[kReadyState] === states.CLOSING; - } - function isClosed(ws) { - return ws[kReadyState] === states.CLOSED; - } - function fireEvent(e, target, eventConstructor = Event, eventInitDict) { - const event = new eventConstructor(e, eventInitDict); - target.dispatchEvent(event); - } - function websocketMessageReceived(ws, type, data) { - if (ws[kReadyState] !== states.OPEN) { - return; - } - let dataForEvent; - if (type === opcodes.TEXT) { - try { - dataForEvent = new TextDecoder("utf-8", { fatal: true }).decode(data); - } catch { - failWebsocketConnection(ws, "Received invalid UTF-8 in text frame."); - return; - } - } else if (type === opcodes.BINARY) { - if (ws[kBinaryType] === "blob") { - dataForEvent = new Blob([data]); - } else { - dataForEvent = new Uint8Array(data).buffer; - } - } - fireEvent("message", ws, MessageEvent, { - origin: ws[kWebSocketURL].origin, - data: dataForEvent - }); - } - function isValidSubprotocol(protocol) { - if (protocol.length === 0) { - return false; - } - for (const char of protocol) { - const code = char.charCodeAt(0); - if (code < 33 || code > 126 || char === "(" || char === ")" || char === "<" || char === ">" || char === "@" || char === "," || char === ";" || char === ":" || char === "\\" || char === '"' || char === "/" || char === "[" || char === "]" || char === "?" || char === "=" || char === "{" || char === "}" || code === 32 || // SP - code === 9) { - return false; - } - } - return true; - } - function isValidStatusCode(code) { - if (code >= 1e3 && code < 1015) { - return code !== 1004 && // reserved - code !== 1005 && // "MUST NOT be set as a status code" - code !== 1006; - } - return code >= 3e3 && code <= 4999; - } - function failWebsocketConnection(ws, reason) { - const { [kController]: controller, [kResponse]: response } = ws; - controller.abort(); - if (response?.socket && !response.socket.destroyed) { - response.socket.destroy(); - } - if (reason) { - fireEvent("error", ws, ErrorEvent, { - error: new Error(reason) - }); - } - } - module2.exports = { - isEstablished, - isClosing, - isClosed, - fireEvent, - isValidSubprotocol, - isValidStatusCode, - failWebsocketConnection, - websocketMessageReceived - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/connection.js -var require_connection = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/connection.js"(exports2, module2) { - "use strict"; - var diagnosticsChannel = require("diagnostics_channel"); - var { uid, states } = require_constants5(); - var { - kReadyState, - kSentClose, - kByteParser, - kReceivedClose - } = require_symbols5(); - var { fireEvent, failWebsocketConnection } = require_util7(); - var { CloseEvent } = require_events(); - var { makeRequest } = require_request2(); - var { fetching } = require_fetch(); - var { Headers } = require_headers(); - var { getGlobalDispatcher } = require_global2(); - var { kHeadersList } = require_symbols(); - var channels = {}; - channels.open = diagnosticsChannel.channel("undici:websocket:open"); - channels.close = diagnosticsChannel.channel("undici:websocket:close"); - channels.socketError = diagnosticsChannel.channel("undici:websocket:socket_error"); - var crypto; - try { - crypto = require("crypto"); - } catch { - } - function establishWebSocketConnection(url, protocols, ws, onEstablish, options) { - const requestURL = url; - requestURL.protocol = url.protocol === "ws:" ? "http:" : "https:"; - const request = makeRequest({ - urlList: [requestURL], - serviceWorkers: "none", - referrer: "no-referrer", - mode: "websocket", - credentials: "include", - cache: "no-store", - redirect: "error" - }); - if (options.headers) { - const headersList = new Headers(options.headers)[kHeadersList]; - request.headersList = headersList; - } - const keyValue = crypto.randomBytes(16).toString("base64"); - request.headersList.append("sec-websocket-key", keyValue); - request.headersList.append("sec-websocket-version", "13"); - for (const protocol of protocols) { - request.headersList.append("sec-websocket-protocol", protocol); - } - const permessageDeflate = ""; - const controller = fetching({ - request, - useParallelQueue: true, - dispatcher: options.dispatcher ?? getGlobalDispatcher(), - processResponse(response) { - if (response.type === "error" || response.status !== 101) { - failWebsocketConnection(ws, "Received network error or non-101 status code."); - return; - } - if (protocols.length !== 0 && !response.headersList.get("Sec-WebSocket-Protocol")) { - failWebsocketConnection(ws, "Server did not respond with sent protocols."); - return; - } - if (response.headersList.get("Upgrade")?.toLowerCase() !== "websocket") { - failWebsocketConnection(ws, 'Server did not set Upgrade header to "websocket".'); - return; - } - if (response.headersList.get("Connection")?.toLowerCase() !== "upgrade") { - failWebsocketConnection(ws, 'Server did not set Connection header to "upgrade".'); - return; - } - const secWSAccept = response.headersList.get("Sec-WebSocket-Accept"); - const digest = crypto.createHash("sha1").update(keyValue + uid).digest("base64"); - if (secWSAccept !== digest) { - failWebsocketConnection(ws, "Incorrect hash received in Sec-WebSocket-Accept header."); - return; - } - const secExtension = response.headersList.get("Sec-WebSocket-Extensions"); - if (secExtension !== null && secExtension !== permessageDeflate) { - failWebsocketConnection(ws, "Received different permessage-deflate than the one set."); - return; - } - const secProtocol = response.headersList.get("Sec-WebSocket-Protocol"); - if (secProtocol !== null && secProtocol !== request.headersList.get("Sec-WebSocket-Protocol")) { - failWebsocketConnection(ws, "Protocol was not set in the opening handshake."); - return; - } - response.socket.on("data", onSocketData); - response.socket.on("close", onSocketClose); - response.socket.on("error", onSocketError); - if (channels.open.hasSubscribers) { - channels.open.publish({ - address: response.socket.address(), - protocol: secProtocol, - extensions: secExtension - }); - } - onEstablish(response); - } - }); - return controller; - } - function onSocketData(chunk) { - if (!this.ws[kByteParser].write(chunk)) { - this.pause(); - } - } - function onSocketClose() { - const { ws } = this; - const wasClean = ws[kSentClose] && ws[kReceivedClose]; - let code = 1005; - let reason = ""; - const result = ws[kByteParser].closingInfo; - if (result) { - code = result.code ?? 1005; - reason = result.reason; - } else if (!ws[kSentClose]) { - code = 1006; - } - ws[kReadyState] = states.CLOSED; - fireEvent("close", ws, CloseEvent, { - wasClean, - code, - reason - }); - if (channels.close.hasSubscribers) { - channels.close.publish({ - websocket: ws, - code, - reason - }); - } - } - function onSocketError(error) { - const { ws } = this; - ws[kReadyState] = states.CLOSING; - if (channels.socketError.hasSubscribers) { - channels.socketError.publish(error); - } - this.destroy(); - } - module2.exports = { - establishWebSocketConnection - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/frame.js -var require_frame = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/frame.js"(exports2, module2) { - "use strict"; - var { maxUnsigned16Bit } = require_constants5(); - var crypto; - try { - crypto = require("crypto"); - } catch { - } - var WebsocketFrameSend = class { - /** - * @param {Buffer|undefined} data - */ - constructor(data) { - this.frameData = data; - this.maskKey = crypto.randomBytes(4); - } - createFrame(opcode) { - const bodyLength = this.frameData?.byteLength ?? 0; - let payloadLength = bodyLength; - let offset = 6; - if (bodyLength > maxUnsigned16Bit) { - offset += 8; - payloadLength = 127; - } else if (bodyLength > 125) { - offset += 2; - payloadLength = 126; - } - const buffer = Buffer.allocUnsafe(bodyLength + offset); - buffer[0] = buffer[1] = 0; - buffer[0] |= 128; - buffer[0] = (buffer[0] & 240) + opcode; - buffer[offset - 4] = this.maskKey[0]; - buffer[offset - 3] = this.maskKey[1]; - buffer[offset - 2] = this.maskKey[2]; - buffer[offset - 1] = this.maskKey[3]; - buffer[1] = payloadLength; - if (payloadLength === 126) { - buffer.writeUInt16BE(bodyLength, 2); - } else if (payloadLength === 127) { - buffer[2] = buffer[3] = 0; - buffer.writeUIntBE(bodyLength, 4, 6); - } - buffer[1] |= 128; - for (let i = 0; i < bodyLength; i++) { - buffer[offset + i] = this.frameData[i] ^ this.maskKey[i % 4]; - } - return buffer; - } - }; - module2.exports = { - WebsocketFrameSend - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/receiver.js -var require_receiver = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/receiver.js"(exports2, module2) { - "use strict"; - var { Writable } = require("stream"); - var diagnosticsChannel = require("diagnostics_channel"); - var { parserStates, opcodes, states, emptyBuffer } = require_constants5(); - var { kReadyState, kSentClose, kResponse, kReceivedClose } = require_symbols5(); - var { isValidStatusCode, failWebsocketConnection, websocketMessageReceived } = require_util7(); - var { WebsocketFrameSend } = require_frame(); - var channels = {}; - channels.ping = diagnosticsChannel.channel("undici:websocket:ping"); - channels.pong = diagnosticsChannel.channel("undici:websocket:pong"); - var ByteParser = class extends Writable { - #buffers = []; - #byteOffset = 0; - #state = parserStates.INFO; - #info = {}; - #fragments = []; - constructor(ws) { - super(); - this.ws = ws; - } - /** - * @param {Buffer} chunk - * @param {() => void} callback - */ - _write(chunk, _, callback) { - this.#buffers.push(chunk); - this.#byteOffset += chunk.length; - this.run(callback); - } - /** - * Runs whenever a new chunk is received. - * Callback is called whenever there are no more chunks buffering, - * or not enough bytes are buffered to parse. - */ - run(callback) { - while (true) { - if (this.#state === parserStates.INFO) { - if (this.#byteOffset < 2) { - return callback(); - } - const buffer = this.consume(2); - this.#info.fin = (buffer[0] & 128) !== 0; - this.#info.opcode = buffer[0] & 15; - this.#info.originalOpcode ??= this.#info.opcode; - this.#info.fragmented = !this.#info.fin && this.#info.opcode !== opcodes.CONTINUATION; - if (this.#info.fragmented && this.#info.opcode !== opcodes.BINARY && this.#info.opcode !== opcodes.TEXT) { - failWebsocketConnection(this.ws, "Invalid frame type was fragmented."); - return; - } - const payloadLength = buffer[1] & 127; - if (payloadLength <= 125) { - this.#info.payloadLength = payloadLength; - this.#state = parserStates.READ_DATA; - } else if (payloadLength === 126) { - this.#state = parserStates.PAYLOADLENGTH_16; - } else if (payloadLength === 127) { - this.#state = parserStates.PAYLOADLENGTH_64; - } - if (this.#info.fragmented && payloadLength > 125) { - failWebsocketConnection(this.ws, "Fragmented frame exceeded 125 bytes."); - return; - } else if ((this.#info.opcode === opcodes.PING || this.#info.opcode === opcodes.PONG || this.#info.opcode === opcodes.CLOSE) && payloadLength > 125) { - failWebsocketConnection(this.ws, "Payload length for control frame exceeded 125 bytes."); - return; - } else if (this.#info.opcode === opcodes.CLOSE) { - if (payloadLength === 1) { - failWebsocketConnection(this.ws, "Received close frame with a 1-byte body."); - return; - } - const body = this.consume(payloadLength); - this.#info.closeInfo = this.parseCloseBody(false, body); - if (!this.ws[kSentClose]) { - const body2 = Buffer.allocUnsafe(2); - body2.writeUInt16BE(this.#info.closeInfo.code, 0); - const closeFrame = new WebsocketFrameSend(body2); - this.ws[kResponse].socket.write( - closeFrame.createFrame(opcodes.CLOSE), - (err) => { - if (!err) { - this.ws[kSentClose] = true; - } - } - ); - } - this.ws[kReadyState] = states.CLOSING; - this.ws[kReceivedClose] = true; - this.end(); - return; - } else if (this.#info.opcode === opcodes.PING) { - const body = this.consume(payloadLength); - if (!this.ws[kReceivedClose]) { - const frame = new WebsocketFrameSend(body); - this.ws[kResponse].socket.write(frame.createFrame(opcodes.PONG)); - if (channels.ping.hasSubscribers) { - channels.ping.publish({ - payload: body - }); - } - } - this.#state = parserStates.INFO; - if (this.#byteOffset > 0) { - continue; - } else { - callback(); - return; - } - } else if (this.#info.opcode === opcodes.PONG) { - const body = this.consume(payloadLength); - if (channels.pong.hasSubscribers) { - channels.pong.publish({ - payload: body - }); - } - if (this.#byteOffset > 0) { - continue; - } else { - callback(); - return; - } - } - } else if (this.#state === parserStates.PAYLOADLENGTH_16) { - if (this.#byteOffset < 2) { - return callback(); - } - const buffer = this.consume(2); - this.#info.payloadLength = buffer.readUInt16BE(0); - this.#state = parserStates.READ_DATA; - } else if (this.#state === parserStates.PAYLOADLENGTH_64) { - if (this.#byteOffset < 8) { - return callback(); - } - const buffer = this.consume(8); - const upper = buffer.readUInt32BE(0); - if (upper > 2 ** 31 - 1) { - failWebsocketConnection(this.ws, "Received payload length > 2^31 bytes."); - return; - } - const lower = buffer.readUInt32BE(4); - this.#info.payloadLength = (upper << 8) + lower; - this.#state = parserStates.READ_DATA; - } else if (this.#state === parserStates.READ_DATA) { - if (this.#byteOffset < this.#info.payloadLength) { - return callback(); - } else if (this.#byteOffset >= this.#info.payloadLength) { - const body = this.consume(this.#info.payloadLength); - this.#fragments.push(body); - if (!this.#info.fragmented || this.#info.fin && this.#info.opcode === opcodes.CONTINUATION) { - const fullMessage = Buffer.concat(this.#fragments); - websocketMessageReceived(this.ws, this.#info.originalOpcode, fullMessage); - this.#info = {}; - this.#fragments.length = 0; - } - this.#state = parserStates.INFO; - } - } - if (this.#byteOffset > 0) { - continue; - } else { - callback(); - break; - } - } - } - /** - * Take n bytes from the buffered Buffers - * @param {number} n - * @returns {Buffer|null} - */ - consume(n) { - if (n > this.#byteOffset) { - return null; - } else if (n === 0) { - return emptyBuffer; - } - if (this.#buffers[0].length === n) { - this.#byteOffset -= this.#buffers[0].length; - return this.#buffers.shift(); - } - const buffer = Buffer.allocUnsafe(n); - let offset = 0; - while (offset !== n) { - const next = this.#buffers[0]; - const { length } = next; - if (length + offset === n) { - buffer.set(this.#buffers.shift(), offset); - break; - } else if (length + offset > n) { - buffer.set(next.subarray(0, n - offset), offset); - this.#buffers[0] = next.subarray(n - offset); - break; - } else { - buffer.set(this.#buffers.shift(), offset); - offset += next.length; - } - } - this.#byteOffset -= n; - return buffer; - } - parseCloseBody(onlyCode, data) { - let code; - if (data.length >= 2) { - code = data.readUInt16BE(0); - } - if (onlyCode) { - if (!isValidStatusCode(code)) { - return null; - } - return { code }; - } - let reason = data.subarray(2); - if (reason[0] === 239 && reason[1] === 187 && reason[2] === 191) { - reason = reason.subarray(3); - } - if (code !== void 0 && !isValidStatusCode(code)) { - return null; - } - try { - reason = new TextDecoder("utf-8", { fatal: true }).decode(reason); - } catch { - return null; - } - return { code, reason }; - } - get closingInfo() { - return this.#info.closeInfo; - } - }; - module2.exports = { - ByteParser - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/lib/websocket/websocket.js -var require_websocket = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/lib/websocket/websocket.js"(exports2, module2) { - "use strict"; - var { webidl } = require_webidl(); - var { DOMException: DOMException2 } = require_constants2(); - var { URLSerializer } = require_dataURL(); - var { getGlobalOrigin } = require_global(); - var { staticPropertyDescriptors, states, opcodes, emptyBuffer } = require_constants5(); - var { - kWebSocketURL, - kReadyState, - kController, - kBinaryType, - kResponse, - kSentClose, - kByteParser - } = require_symbols5(); - var { isEstablished, isClosing, isValidSubprotocol, failWebsocketConnection, fireEvent } = require_util7(); - var { establishWebSocketConnection } = require_connection(); - var { WebsocketFrameSend } = require_frame(); - var { ByteParser } = require_receiver(); - var { kEnumerableProperty, isBlobLike } = require_util(); - var { getGlobalDispatcher } = require_global2(); - var { types } = require("util"); - var experimentalWarned = false; - var WebSocket = class extends EventTarget { - #events = { - open: null, - error: null, - close: null, - message: null - }; - #bufferedAmount = 0; - #protocol = ""; - #extensions = ""; - /** - * @param {string} url - * @param {string|string[]} protocols - */ - constructor(url, protocols = []) { - super(); - webidl.argumentLengthCheck(arguments, 1, { header: "WebSocket constructor" }); - if (!experimentalWarned) { - experimentalWarned = true; - process.emitWarning("WebSockets are experimental, expect them to change at any time.", { - code: "UNDICI-WS" - }); - } - const options = webidl.converters["DOMString or sequence<DOMString> or WebSocketInit"](protocols); - url = webidl.converters.USVString(url); - protocols = options.protocols; - const baseURL = getGlobalOrigin(); - let urlRecord; - try { - urlRecord = new URL(url, baseURL); - } catch (e) { - throw new DOMException2(e, "SyntaxError"); - } - if (urlRecord.protocol === "http:") { - urlRecord.protocol = "ws:"; - } else if (urlRecord.protocol === "https:") { - urlRecord.protocol = "wss:"; - } - if (urlRecord.protocol !== "ws:" && urlRecord.protocol !== "wss:") { - throw new DOMException2( - `Expected a ws: or wss: protocol, got ${urlRecord.protocol}`, - "SyntaxError" - ); - } - if (urlRecord.hash || urlRecord.href.endsWith("#")) { - throw new DOMException2("Got fragment", "SyntaxError"); - } - if (typeof protocols === "string") { - protocols = [protocols]; - } - if (protocols.length !== new Set(protocols.map((p) => p.toLowerCase())).size) { - throw new DOMException2("Invalid Sec-WebSocket-Protocol value", "SyntaxError"); - } - if (protocols.length > 0 && !protocols.every((p) => isValidSubprotocol(p))) { - throw new DOMException2("Invalid Sec-WebSocket-Protocol value", "SyntaxError"); - } - this[kWebSocketURL] = new URL(urlRecord.href); - this[kController] = establishWebSocketConnection( - urlRecord, - protocols, - this, - (response) => this.#onConnectionEstablished(response), - options - ); - this[kReadyState] = WebSocket.CONNECTING; - this[kBinaryType] = "blob"; - } - /** - * @see https://websockets.spec.whatwg.org/#dom-websocket-close - * @param {number|undefined} code - * @param {string|undefined} reason - */ - close(code = void 0, reason = void 0) { - webidl.brandCheck(this, WebSocket); - if (code !== void 0) { - code = webidl.converters["unsigned short"](code, { clamp: true }); - } - if (reason !== void 0) { - reason = webidl.converters.USVString(reason); - } - if (code !== void 0) { - if (code !== 1e3 && (code < 3e3 || code > 4999)) { - throw new DOMException2("invalid code", "InvalidAccessError"); - } - } - let reasonByteLength = 0; - if (reason !== void 0) { - reasonByteLength = Buffer.byteLength(reason); - if (reasonByteLength > 123) { - throw new DOMException2( - `Reason must be less than 123 bytes; received ${reasonByteLength}`, - "SyntaxError" - ); - } - } - if (this[kReadyState] === WebSocket.CLOSING || this[kReadyState] === WebSocket.CLOSED) { - } else if (!isEstablished(this)) { - failWebsocketConnection(this, "Connection was closed before it was established."); - this[kReadyState] = WebSocket.CLOSING; - } else if (!isClosing(this)) { - const frame = new WebsocketFrameSend(); - if (code !== void 0 && reason === void 0) { - frame.frameData = Buffer.allocUnsafe(2); - frame.frameData.writeUInt16BE(code, 0); - } else if (code !== void 0 && reason !== void 0) { - frame.frameData = Buffer.allocUnsafe(2 + reasonByteLength); - frame.frameData.writeUInt16BE(code, 0); - frame.frameData.write(reason, 2, "utf-8"); - } else { - frame.frameData = emptyBuffer; - } - const socket = this[kResponse].socket; - socket.write(frame.createFrame(opcodes.CLOSE), (err) => { - if (!err) { - this[kSentClose] = true; - } - }); - this[kReadyState] = states.CLOSING; - } else { - this[kReadyState] = WebSocket.CLOSING; - } - } - /** - * @see https://websockets.spec.whatwg.org/#dom-websocket-send - * @param {NodeJS.TypedArray|ArrayBuffer|Blob|string} data - */ - send(data) { - webidl.brandCheck(this, WebSocket); - webidl.argumentLengthCheck(arguments, 1, { header: "WebSocket.send" }); - data = webidl.converters.WebSocketSendData(data); - if (this[kReadyState] === WebSocket.CONNECTING) { - throw new DOMException2("Sent before connected.", "InvalidStateError"); - } - if (!isEstablished(this) || isClosing(this)) { - return; - } - const socket = this[kResponse].socket; - if (typeof data === "string") { - const value = Buffer.from(data); - const frame = new WebsocketFrameSend(value); - const buffer = frame.createFrame(opcodes.TEXT); - this.#bufferedAmount += value.byteLength; - socket.write(buffer, () => { - this.#bufferedAmount -= value.byteLength; - }); - } else if (types.isArrayBuffer(data)) { - const value = Buffer.from(data); - const frame = new WebsocketFrameSend(value); - const buffer = frame.createFrame(opcodes.BINARY); - this.#bufferedAmount += value.byteLength; - socket.write(buffer, () => { - this.#bufferedAmount -= value.byteLength; - }); - } else if (ArrayBuffer.isView(data)) { - const ab = Buffer.from(data, data.byteOffset, data.byteLength); - const frame = new WebsocketFrameSend(ab); - const buffer = frame.createFrame(opcodes.BINARY); - this.#bufferedAmount += ab.byteLength; - socket.write(buffer, () => { - this.#bufferedAmount -= ab.byteLength; - }); - } else if (isBlobLike(data)) { - const frame = new WebsocketFrameSend(); - data.arrayBuffer().then((ab) => { - const value = Buffer.from(ab); - frame.frameData = value; - const buffer = frame.createFrame(opcodes.BINARY); - this.#bufferedAmount += value.byteLength; - socket.write(buffer, () => { - this.#bufferedAmount -= value.byteLength; - }); - }); - } - } - get readyState() { - webidl.brandCheck(this, WebSocket); - return this[kReadyState]; - } - get bufferedAmount() { - webidl.brandCheck(this, WebSocket); - return this.#bufferedAmount; - } - get url() { - webidl.brandCheck(this, WebSocket); - return URLSerializer(this[kWebSocketURL]); - } - get extensions() { - webidl.brandCheck(this, WebSocket); - return this.#extensions; - } - get protocol() { - webidl.brandCheck(this, WebSocket); - return this.#protocol; - } - get onopen() { - webidl.brandCheck(this, WebSocket); - return this.#events.open; - } - set onopen(fn) { - webidl.brandCheck(this, WebSocket); - if (this.#events.open) { - this.removeEventListener("open", this.#events.open); - } - if (typeof fn === "function") { - this.#events.open = fn; - this.addEventListener("open", fn); - } else { - this.#events.open = null; - } - } - get onerror() { - webidl.brandCheck(this, WebSocket); - return this.#events.error; - } - set onerror(fn) { - webidl.brandCheck(this, WebSocket); - if (this.#events.error) { - this.removeEventListener("error", this.#events.error); - } - if (typeof fn === "function") { - this.#events.error = fn; - this.addEventListener("error", fn); - } else { - this.#events.error = null; - } - } - get onclose() { - webidl.brandCheck(this, WebSocket); - return this.#events.close; - } - set onclose(fn) { - webidl.brandCheck(this, WebSocket); - if (this.#events.close) { - this.removeEventListener("close", this.#events.close); - } - if (typeof fn === "function") { - this.#events.close = fn; - this.addEventListener("close", fn); - } else { - this.#events.close = null; - } - } - get onmessage() { - webidl.brandCheck(this, WebSocket); - return this.#events.message; - } - set onmessage(fn) { - webidl.brandCheck(this, WebSocket); - if (this.#events.message) { - this.removeEventListener("message", this.#events.message); - } - if (typeof fn === "function") { - this.#events.message = fn; - this.addEventListener("message", fn); - } else { - this.#events.message = null; - } - } - get binaryType() { - webidl.brandCheck(this, WebSocket); - return this[kBinaryType]; - } - set binaryType(type) { - webidl.brandCheck(this, WebSocket); - if (type !== "blob" && type !== "arraybuffer") { - this[kBinaryType] = "blob"; - } else { - this[kBinaryType] = type; - } - } - /** - * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol - */ - #onConnectionEstablished(response) { - this[kResponse] = response; - const parser = new ByteParser(this); - parser.on("drain", function onParserDrain() { - this.ws[kResponse].socket.resume(); - }); - response.socket.ws = this; - this[kByteParser] = parser; - this[kReadyState] = states.OPEN; - const extensions = response.headersList.get("sec-websocket-extensions"); - if (extensions !== null) { - this.#extensions = extensions; - } - const protocol = response.headersList.get("sec-websocket-protocol"); - if (protocol !== null) { - this.#protocol = protocol; - } - fireEvent("open", this); - } - }; - WebSocket.CONNECTING = WebSocket.prototype.CONNECTING = states.CONNECTING; - WebSocket.OPEN = WebSocket.prototype.OPEN = states.OPEN; - WebSocket.CLOSING = WebSocket.prototype.CLOSING = states.CLOSING; - WebSocket.CLOSED = WebSocket.prototype.CLOSED = states.CLOSED; - Object.defineProperties(WebSocket.prototype, { - CONNECTING: staticPropertyDescriptors, - OPEN: staticPropertyDescriptors, - CLOSING: staticPropertyDescriptors, - CLOSED: staticPropertyDescriptors, - url: kEnumerableProperty, - readyState: kEnumerableProperty, - bufferedAmount: kEnumerableProperty, - onopen: kEnumerableProperty, - onerror: kEnumerableProperty, - onclose: kEnumerableProperty, - close: kEnumerableProperty, - onmessage: kEnumerableProperty, - binaryType: kEnumerableProperty, - send: kEnumerableProperty, - extensions: kEnumerableProperty, - protocol: kEnumerableProperty, - [Symbol.toStringTag]: { - value: "WebSocket", - writable: false, - enumerable: false, - configurable: true - } - }); - Object.defineProperties(WebSocket, { - CONNECTING: staticPropertyDescriptors, - OPEN: staticPropertyDescriptors, - CLOSING: staticPropertyDescriptors, - CLOSED: staticPropertyDescriptors - }); - webidl.converters["sequence<DOMString>"] = webidl.sequenceConverter( - webidl.converters.DOMString - ); - webidl.converters["DOMString or sequence<DOMString>"] = function(V) { - if (webidl.util.Type(V) === "Object" && Symbol.iterator in V) { - return webidl.converters["sequence<DOMString>"](V); - } - return webidl.converters.DOMString(V); - }; - webidl.converters.WebSocketInit = webidl.dictionaryConverter([ - { - key: "protocols", - converter: webidl.converters["DOMString or sequence<DOMString>"], - get defaultValue() { - return []; - } - }, - { - key: "dispatcher", - converter: (V) => V, - get defaultValue() { - return getGlobalDispatcher(); - } - }, - { - key: "headers", - converter: webidl.nullableConverter(webidl.converters.HeadersInit) - } - ]); - webidl.converters["DOMString or sequence<DOMString> or WebSocketInit"] = function(V) { - if (webidl.util.Type(V) === "Object" && !(Symbol.iterator in V)) { - return webidl.converters.WebSocketInit(V); - } - return { protocols: webidl.converters["DOMString or sequence<DOMString>"](V) }; - }; - webidl.converters.WebSocketSendData = function(V) { - if (webidl.util.Type(V) === "Object") { - if (isBlobLike(V)) { - return webidl.converters.Blob(V, { strict: false }); - } - if (ArrayBuffer.isView(V) || types.isAnyArrayBuffer(V)) { - return webidl.converters.BufferSource(V); - } - } - return webidl.converters.USVString(V); - }; - module2.exports = { - WebSocket - }; - } -}); - -// node_modules/@reporters/github/node_modules/undici/index.js -var require_undici = __commonJS({ - "node_modules/@reporters/github/node_modules/undici/index.js"(exports2, module2) { - "use strict"; - var Client = require_client(); - var Dispatcher = require_dispatcher(); - var errors = require_errors(); - var Pool = require_pool(); - var BalancedPool = require_balanced_pool(); - var Agent = require_agent(); - var util2 = require_util(); - var { InvalidArgumentError } = errors; - var api = require_api(); - var buildConnector = require_connect(); - var MockClient = require_mock_client(); - var MockAgent = require_mock_agent(); - var MockPool = require_mock_pool(); - var mockErrors = require_mock_errors(); - var ProxyAgent = require_proxy_agent(); - var RetryHandler = require_RetryHandler(); - var { getGlobalDispatcher, setGlobalDispatcher } = require_global2(); - var DecoratorHandler = require_DecoratorHandler(); - var RedirectHandler = require_RedirectHandler(); - var createRedirectInterceptor = require_redirectInterceptor(); - var hasCrypto; - try { - require("crypto"); - hasCrypto = true; - } catch { - hasCrypto = false; - } - Object.assign(Dispatcher.prototype, api); - module2.exports.Dispatcher = Dispatcher; - module2.exports.Client = Client; - module2.exports.Pool = Pool; - module2.exports.BalancedPool = BalancedPool; - module2.exports.Agent = Agent; - module2.exports.ProxyAgent = ProxyAgent; - module2.exports.RetryHandler = RetryHandler; - module2.exports.DecoratorHandler = DecoratorHandler; - module2.exports.RedirectHandler = RedirectHandler; - module2.exports.createRedirectInterceptor = createRedirectInterceptor; - module2.exports.buildConnector = buildConnector; - module2.exports.errors = errors; - function makeDispatcher(fn) { - return (url, opts, handler) => { - if (typeof opts === "function") { - handler = opts; - opts = null; - } - if (!url || typeof url !== "string" && typeof url !== "object" && !(url instanceof URL)) { - throw new InvalidArgumentError("invalid url"); - } - if (opts != null && typeof opts !== "object") { - throw new InvalidArgumentError("invalid opts"); - } - if (opts && opts.path != null) { - if (typeof opts.path !== "string") { - throw new InvalidArgumentError("invalid opts.path"); - } - let path2 = opts.path; - if (!opts.path.startsWith("/")) { - path2 = `/${path2}`; - } - url = new URL(util2.parseOrigin(url).origin + path2); - } else { - if (!opts) { - opts = typeof url === "object" ? url : {}; - } - url = util2.parseURL(url); - } - const { agent, dispatcher = getGlobalDispatcher() } = opts; - if (agent) { - throw new InvalidArgumentError("unsupported opts.agent. Did you mean opts.client?"); - } - return fn.call(dispatcher, { - ...opts, - origin: url.origin, - path: url.search ? `${url.pathname}${url.search}` : url.pathname, - method: opts.method || (opts.body ? "PUT" : "GET") - }, handler); - }; - } - module2.exports.setGlobalDispatcher = setGlobalDispatcher; - module2.exports.getGlobalDispatcher = getGlobalDispatcher; - if (util2.nodeMajor > 16 || util2.nodeMajor === 16 && util2.nodeMinor >= 8) { - let fetchImpl = null; - module2.exports.fetch = async function fetch(resource) { - if (!fetchImpl) { - fetchImpl = require_fetch().fetch; - } - try { - return await fetchImpl(...arguments); - } catch (err) { - if (typeof err === "object") { - Error.captureStackTrace(err, this); - } - throw err; - } - }; - module2.exports.Headers = require_headers().Headers; - module2.exports.Response = require_response().Response; - module2.exports.Request = require_request2().Request; - module2.exports.FormData = require_formdata().FormData; - module2.exports.File = require_file().File; - module2.exports.FileReader = require_filereader().FileReader; - const { setGlobalOrigin, getGlobalOrigin } = require_global(); - module2.exports.setGlobalOrigin = setGlobalOrigin; - module2.exports.getGlobalOrigin = getGlobalOrigin; - const { CacheStorage } = require_cachestorage(); - const { kConstruct } = require_symbols4(); - module2.exports.caches = new CacheStorage(kConstruct); - } - if (util2.nodeMajor >= 16) { - const { deleteCookie, getCookies, getSetCookies, setCookie } = require_cookies(); - module2.exports.deleteCookie = deleteCookie; - module2.exports.getCookies = getCookies; - module2.exports.getSetCookies = getSetCookies; - module2.exports.setCookie = setCookie; - const { parseMIMEType, serializeAMimeType } = require_dataURL(); - module2.exports.parseMIMEType = parseMIMEType; - module2.exports.serializeAMimeType = serializeAMimeType; - } - if (util2.nodeMajor >= 18 && hasCrypto) { - const { WebSocket } = require_websocket(); - module2.exports.WebSocket = WebSocket; - } - module2.exports.request = makeDispatcher(api.request); - module2.exports.stream = makeDispatcher(api.stream); - module2.exports.pipeline = makeDispatcher(api.pipeline); - module2.exports.connect = makeDispatcher(api.connect); - module2.exports.upgrade = makeDispatcher(api.upgrade); - module2.exports.MockClient = MockClient; - module2.exports.MockPool = MockPool; - module2.exports.MockAgent = MockAgent; - module2.exports.mockErrors = mockErrors; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/http-client/lib/index.js -var require_lib = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/http-client/lib/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HttpClient = exports2.isHttps = exports2.HttpClientResponse = exports2.HttpClientError = exports2.getProxyUrl = exports2.MediaTypes = exports2.Headers = exports2.HttpCodes = void 0; - var http = __importStar(require("http")); - var https = __importStar(require("https")); - var pm = __importStar(require_proxy()); - var tunnel = __importStar(require_tunnel2()); - var undici_1 = require_undici(); - var HttpCodes; - (function(HttpCodes2) { - HttpCodes2[HttpCodes2["OK"] = 200] = "OK"; - HttpCodes2[HttpCodes2["MultipleChoices"] = 300] = "MultipleChoices"; - HttpCodes2[HttpCodes2["MovedPermanently"] = 301] = "MovedPermanently"; - HttpCodes2[HttpCodes2["ResourceMoved"] = 302] = "ResourceMoved"; - HttpCodes2[HttpCodes2["SeeOther"] = 303] = "SeeOther"; - HttpCodes2[HttpCodes2["NotModified"] = 304] = "NotModified"; - HttpCodes2[HttpCodes2["UseProxy"] = 305] = "UseProxy"; - HttpCodes2[HttpCodes2["SwitchProxy"] = 306] = "SwitchProxy"; - HttpCodes2[HttpCodes2["TemporaryRedirect"] = 307] = "TemporaryRedirect"; - HttpCodes2[HttpCodes2["PermanentRedirect"] = 308] = "PermanentRedirect"; - HttpCodes2[HttpCodes2["BadRequest"] = 400] = "BadRequest"; - HttpCodes2[HttpCodes2["Unauthorized"] = 401] = "Unauthorized"; - HttpCodes2[HttpCodes2["PaymentRequired"] = 402] = "PaymentRequired"; - HttpCodes2[HttpCodes2["Forbidden"] = 403] = "Forbidden"; - HttpCodes2[HttpCodes2["NotFound"] = 404] = "NotFound"; - HttpCodes2[HttpCodes2["MethodNotAllowed"] = 405] = "MethodNotAllowed"; - HttpCodes2[HttpCodes2["NotAcceptable"] = 406] = "NotAcceptable"; - HttpCodes2[HttpCodes2["ProxyAuthenticationRequired"] = 407] = "ProxyAuthenticationRequired"; - HttpCodes2[HttpCodes2["RequestTimeout"] = 408] = "RequestTimeout"; - HttpCodes2[HttpCodes2["Conflict"] = 409] = "Conflict"; - HttpCodes2[HttpCodes2["Gone"] = 410] = "Gone"; - HttpCodes2[HttpCodes2["TooManyRequests"] = 429] = "TooManyRequests"; - HttpCodes2[HttpCodes2["InternalServerError"] = 500] = "InternalServerError"; - HttpCodes2[HttpCodes2["NotImplemented"] = 501] = "NotImplemented"; - HttpCodes2[HttpCodes2["BadGateway"] = 502] = "BadGateway"; - HttpCodes2[HttpCodes2["ServiceUnavailable"] = 503] = "ServiceUnavailable"; - HttpCodes2[HttpCodes2["GatewayTimeout"] = 504] = "GatewayTimeout"; - })(HttpCodes || (exports2.HttpCodes = HttpCodes = {})); - var Headers; - (function(Headers2) { - Headers2["Accept"] = "accept"; - Headers2["ContentType"] = "content-type"; - })(Headers || (exports2.Headers = Headers = {})); - var MediaTypes; - (function(MediaTypes2) { - MediaTypes2["ApplicationJson"] = "application/json"; - })(MediaTypes || (exports2.MediaTypes = MediaTypes = {})); - function getProxyUrl(serverUrl) { - const proxyUrl = pm.getProxyUrl(new URL(serverUrl)); - return proxyUrl ? proxyUrl.href : ""; - } - exports2.getProxyUrl = getProxyUrl; - var HttpRedirectCodes = [ - HttpCodes.MovedPermanently, - HttpCodes.ResourceMoved, - HttpCodes.SeeOther, - HttpCodes.TemporaryRedirect, - HttpCodes.PermanentRedirect - ]; - var HttpResponseRetryCodes = [ - HttpCodes.BadGateway, - HttpCodes.ServiceUnavailable, - HttpCodes.GatewayTimeout - ]; - var RetryableHttpVerbs = ["OPTIONS", "GET", "DELETE", "HEAD"]; - var ExponentialBackoffCeiling = 10; - var ExponentialBackoffTimeSlice = 5; - var HttpClientError = class extends Error { - constructor(message, statusCode) { - super(message); - this.name = "HttpClientError"; - this.statusCode = statusCode; - Object.setPrototypeOf(this, HttpClientError.prototype); - } - }; - exports2.HttpClientError = HttpClientError; - var HttpClientResponse = class { - constructor(message) { - this.message = message; - } - readBody() { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { - let output = Buffer.alloc(0); - this.message.on("data", (chunk) => { - output = Buffer.concat([output, chunk]); - }); - this.message.on("end", () => { - resolve(output.toString()); - }); - })); - }); - } - readBodyBuffer() { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () { - const chunks = []; - this.message.on("data", (chunk) => { - chunks.push(chunk); - }); - this.message.on("end", () => { - resolve(Buffer.concat(chunks)); - }); - })); - }); - } - }; - exports2.HttpClientResponse = HttpClientResponse; - function isHttps(requestUrl) { - const parsedUrl = new URL(requestUrl); - return parsedUrl.protocol === "https:"; - } - exports2.isHttps = isHttps; - var HttpClient = class { - constructor(userAgent, handlers, requestOptions) { - this._ignoreSslError = false; - this._allowRedirects = true; - this._allowRedirectDowngrade = false; - this._maxRedirects = 50; - this._allowRetries = false; - this._maxRetries = 1; - this._keepAlive = false; - this._disposed = false; - this.userAgent = userAgent; - this.handlers = handlers || []; - this.requestOptions = requestOptions; - if (requestOptions) { - if (requestOptions.ignoreSslError != null) { - this._ignoreSslError = requestOptions.ignoreSslError; - } - this._socketTimeout = requestOptions.socketTimeout; - if (requestOptions.allowRedirects != null) { - this._allowRedirects = requestOptions.allowRedirects; - } - if (requestOptions.allowRedirectDowngrade != null) { - this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade; - } - if (requestOptions.maxRedirects != null) { - this._maxRedirects = Math.max(requestOptions.maxRedirects, 0); - } - if (requestOptions.keepAlive != null) { - this._keepAlive = requestOptions.keepAlive; - } - if (requestOptions.allowRetries != null) { - this._allowRetries = requestOptions.allowRetries; - } - if (requestOptions.maxRetries != null) { - this._maxRetries = requestOptions.maxRetries; - } - } - } - options(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("OPTIONS", requestUrl, null, additionalHeaders || {}); - }); - } - get(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("GET", requestUrl, null, additionalHeaders || {}); - }); - } - del(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("DELETE", requestUrl, null, additionalHeaders || {}); - }); - } - post(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("POST", requestUrl, data, additionalHeaders || {}); - }); - } - patch(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("PATCH", requestUrl, data, additionalHeaders || {}); - }); - } - put(requestUrl, data, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("PUT", requestUrl, data, additionalHeaders || {}); - }); - } - head(requestUrl, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request("HEAD", requestUrl, null, additionalHeaders || {}); - }); - } - sendStream(verb, requestUrl, stream, additionalHeaders) { - return __awaiter(this, void 0, void 0, function* () { - return this.request(verb, requestUrl, stream, additionalHeaders); - }); - } - /** - * Gets a typed object from an endpoint - * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise - */ - getJson(requestUrl, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - const res = yield this.get(requestUrl, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - postJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.post(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - putJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.put(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - patchJson(requestUrl, obj, additionalHeaders = {}) { - return __awaiter(this, void 0, void 0, function* () { - const data = JSON.stringify(obj, null, 2); - additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson); - additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson); - const res = yield this.patch(requestUrl, data, additionalHeaders); - return this._processResponse(res, this.requestOptions); - }); - } - /** - * Makes a raw http request. - * All other methods such as get, post, patch, and request ultimately call this. - * Prefer get, del, post and patch - */ - request(verb, requestUrl, data, headers) { - return __awaiter(this, void 0, void 0, function* () { - if (this._disposed) { - throw new Error("Client has already been disposed."); - } - const parsedUrl = new URL(requestUrl); - let info = this._prepareRequest(verb, parsedUrl, headers); - const maxTries = this._allowRetries && RetryableHttpVerbs.includes(verb) ? this._maxRetries + 1 : 1; - let numTries = 0; - let response; - do { - response = yield this.requestRaw(info, data); - if (response && response.message && response.message.statusCode === HttpCodes.Unauthorized) { - let authenticationHandler; - for (const handler of this.handlers) { - if (handler.canHandleAuthentication(response)) { - authenticationHandler = handler; - break; - } - } - if (authenticationHandler) { - return authenticationHandler.handleAuthentication(this, info, data); - } else { - return response; - } - } - let redirectsRemaining = this._maxRedirects; - while (response.message.statusCode && HttpRedirectCodes.includes(response.message.statusCode) && this._allowRedirects && redirectsRemaining > 0) { - const redirectUrl = response.message.headers["location"]; - if (!redirectUrl) { - break; - } - const parsedRedirectUrl = new URL(redirectUrl); - if (parsedUrl.protocol === "https:" && parsedUrl.protocol !== parsedRedirectUrl.protocol && !this._allowRedirectDowngrade) { - throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true."); - } - yield response.readBody(); - if (parsedRedirectUrl.hostname !== parsedUrl.hostname) { - for (const header in headers) { - if (header.toLowerCase() === "authorization") { - delete headers[header]; - } - } - } - info = this._prepareRequest(verb, parsedRedirectUrl, headers); - response = yield this.requestRaw(info, data); - redirectsRemaining--; - } - if (!response.message.statusCode || !HttpResponseRetryCodes.includes(response.message.statusCode)) { - return response; - } - numTries += 1; - if (numTries < maxTries) { - yield response.readBody(); - yield this._performExponentialBackoff(numTries); - } - } while (numTries < maxTries); - return response; - }); - } - /** - * Needs to be called if keepAlive is set to true in request options. - */ - dispose() { - if (this._agent) { - this._agent.destroy(); - } - this._disposed = true; - } - /** - * Raw request. - * @param info - * @param data - */ - requestRaw(info, data) { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => { - function callbackForResult(err, res) { - if (err) { - reject(err); - } else if (!res) { - reject(new Error("Unknown error")); - } else { - resolve(res); - } - } - this.requestRawWithCallback(info, data, callbackForResult); - }); - }); - } - /** - * Raw request with callback. - * @param info - * @param data - * @param onResult - */ - requestRawWithCallback(info, data, onResult) { - if (typeof data === "string") { - if (!info.options.headers) { - info.options.headers = {}; - } - info.options.headers["Content-Length"] = Buffer.byteLength(data, "utf8"); - } - let callbackCalled = false; - function handleResult(err, res) { - if (!callbackCalled) { - callbackCalled = true; - onResult(err, res); - } - } - const req = info.httpModule.request(info.options, (msg) => { - const res = new HttpClientResponse(msg); - handleResult(void 0, res); - }); - let socket; - req.on("socket", (sock) => { - socket = sock; - }); - req.setTimeout(this._socketTimeout || 3 * 6e4, () => { - if (socket) { - socket.end(); - } - handleResult(new Error(`Request timeout: ${info.options.path}`)); - }); - req.on("error", function(err) { - handleResult(err); - }); - if (data && typeof data === "string") { - req.write(data, "utf8"); - } - if (data && typeof data !== "string") { - data.on("close", function() { - req.end(); - }); - data.pipe(req); - } else { - req.end(); - } - } - /** - * Gets an http agent. This function is useful when you need an http agent that handles - * routing through a proxy server - depending upon the url and proxy environment variables. - * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com - */ - getAgent(serverUrl) { - const parsedUrl = new URL(serverUrl); - return this._getAgent(parsedUrl); - } - getAgentDispatcher(serverUrl) { - const parsedUrl = new URL(serverUrl); - const proxyUrl = pm.getProxyUrl(parsedUrl); - const useProxy = proxyUrl && proxyUrl.hostname; - if (!useProxy) { - return; - } - return this._getProxyAgentDispatcher(parsedUrl, proxyUrl); - } - _prepareRequest(method, requestUrl, headers) { - const info = {}; - info.parsedUrl = requestUrl; - const usingSsl = info.parsedUrl.protocol === "https:"; - info.httpModule = usingSsl ? https : http; - const defaultPort = usingSsl ? 443 : 80; - info.options = {}; - info.options.host = info.parsedUrl.hostname; - info.options.port = info.parsedUrl.port ? parseInt(info.parsedUrl.port) : defaultPort; - info.options.path = (info.parsedUrl.pathname || "") + (info.parsedUrl.search || ""); - info.options.method = method; - info.options.headers = this._mergeHeaders(headers); - if (this.userAgent != null) { - info.options.headers["user-agent"] = this.userAgent; - } - info.options.agent = this._getAgent(info.parsedUrl); - if (this.handlers) { - for (const handler of this.handlers) { - handler.prepareRequest(info.options); - } - } - return info; - } - _mergeHeaders(headers) { - if (this.requestOptions && this.requestOptions.headers) { - return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers || {})); - } - return lowercaseKeys(headers || {}); - } - _getExistingOrDefaultHeader(additionalHeaders, header, _default) { - let clientHeader; - if (this.requestOptions && this.requestOptions.headers) { - clientHeader = lowercaseKeys(this.requestOptions.headers)[header]; - } - return additionalHeaders[header] || clientHeader || _default; - } - _getAgent(parsedUrl) { - let agent; - const proxyUrl = pm.getProxyUrl(parsedUrl); - const useProxy = proxyUrl && proxyUrl.hostname; - if (this._keepAlive && useProxy) { - agent = this._proxyAgent; - } - if (!useProxy) { - agent = this._agent; - } - if (agent) { - return agent; - } - const usingSsl = parsedUrl.protocol === "https:"; - let maxSockets = 100; - if (this.requestOptions) { - maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets; - } - if (proxyUrl && proxyUrl.hostname) { - const agentOptions = { - maxSockets, - keepAlive: this._keepAlive, - proxy: Object.assign(Object.assign({}, (proxyUrl.username || proxyUrl.password) && { - proxyAuth: `${proxyUrl.username}:${proxyUrl.password}` - }), { host: proxyUrl.hostname, port: proxyUrl.port }) - }; - let tunnelAgent; - const overHttps = proxyUrl.protocol === "https:"; - if (usingSsl) { - tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp; - } else { - tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp; - } - agent = tunnelAgent(agentOptions); - this._proxyAgent = agent; - } - if (!agent) { - const options = { keepAlive: this._keepAlive, maxSockets }; - agent = usingSsl ? new https.Agent(options) : new http.Agent(options); - this._agent = agent; - } - if (usingSsl && this._ignoreSslError) { - agent.options = Object.assign(agent.options || {}, { - rejectUnauthorized: false - }); - } - return agent; - } - _getProxyAgentDispatcher(parsedUrl, proxyUrl) { - let proxyAgent; - if (this._keepAlive) { - proxyAgent = this._proxyAgentDispatcher; - } - if (proxyAgent) { - return proxyAgent; - } - const usingSsl = parsedUrl.protocol === "https:"; - proxyAgent = new undici_1.ProxyAgent(Object.assign({ uri: proxyUrl.href, pipelining: !this._keepAlive ? 0 : 1 }, (proxyUrl.username || proxyUrl.password) && { - token: `Basic ${Buffer.from(`${proxyUrl.username}:${proxyUrl.password}`).toString("base64")}` - })); - this._proxyAgentDispatcher = proxyAgent; - if (usingSsl && this._ignoreSslError) { - proxyAgent.options = Object.assign(proxyAgent.options.requestTls || {}, { - rejectUnauthorized: false - }); - } - return proxyAgent; - } - _performExponentialBackoff(retryNumber) { - return __awaiter(this, void 0, void 0, function* () { - retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber); - const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber); - return new Promise((resolve) => setTimeout(() => resolve(), ms)); - }); - } - _processResponse(res, options) { - return __awaiter(this, void 0, void 0, function* () { - return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { - const statusCode = res.message.statusCode || 0; - const response = { - statusCode, - result: null, - headers: {} - }; - if (statusCode === HttpCodes.NotFound) { - resolve(response); - } - function dateTimeDeserializer(key, value) { - if (typeof value === "string") { - const a = new Date(value); - if (!isNaN(a.valueOf())) { - return a; - } - } - return value; - } - let obj; - let contents; - try { - contents = yield res.readBody(); - if (contents && contents.length > 0) { - if (options && options.deserializeDates) { - obj = JSON.parse(contents, dateTimeDeserializer); - } else { - obj = JSON.parse(contents); - } - response.result = obj; - } - response.headers = res.message.headers; - } catch (err) { - } - if (statusCode > 299) { - let msg; - if (obj && obj.message) { - msg = obj.message; - } else if (contents && contents.length > 0) { - msg = contents; - } else { - msg = `Failed request: (${statusCode})`; - } - const err = new HttpClientError(msg, statusCode); - err.result = response.result; - reject(err); - } else { - resolve(response); - } - })); - }); - } - }; - exports2.HttpClient = HttpClient; - var lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => (c[k.toLowerCase()] = obj[k], c), {}); - } -}); - -// node_modules/@reporters/github/node_modules/@actions/http-client/lib/auth.js -var require_auth = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/http-client/lib/auth.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PersonalAccessTokenCredentialHandler = exports2.BearerCredentialHandler = exports2.BasicCredentialHandler = void 0; - var BasicCredentialHandler = class { - constructor(username, password) { - this.username = username; - this.password = password; - } - prepareRequest(options) { - if (!options.headers) { - throw Error("The request has no headers"); - } - options.headers["Authorization"] = `Basic ${Buffer.from(`${this.username}:${this.password}`).toString("base64")}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error("not implemented"); - }); - } - }; - exports2.BasicCredentialHandler = BasicCredentialHandler; - var BearerCredentialHandler = class { - constructor(token) { - this.token = token; - } - // currently implements pre-authorization - // TODO: support preAuth = false where it hooks on 401 - prepareRequest(options) { - if (!options.headers) { - throw Error("The request has no headers"); - } - options.headers["Authorization"] = `Bearer ${this.token}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error("not implemented"); - }); - } - }; - exports2.BearerCredentialHandler = BearerCredentialHandler; - var PersonalAccessTokenCredentialHandler = class { - constructor(token) { - this.token = token; - } - // currently implements pre-authorization - // TODO: support preAuth = false where it hooks on 401 - prepareRequest(options) { - if (!options.headers) { - throw Error("The request has no headers"); - } - options.headers["Authorization"] = `Basic ${Buffer.from(`PAT:${this.token}`).toString("base64")}`; - } - // This handler cannot handle 401 - canHandleAuthentication() { - return false; - } - handleAuthentication() { - return __awaiter(this, void 0, void 0, function* () { - throw new Error("not implemented"); - }); - } - }; - exports2.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/oidc-utils.js -var require_oidc_utils = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/oidc-utils.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.OidcClient = void 0; - var http_client_1 = require_lib(); - var auth_1 = require_auth(); - var core_1 = require_core(); - var OidcClient = class { - static createHttpClient(allowRetry = true, maxRetry = 10) { - const requestOptions = { - allowRetries: allowRetry, - maxRetries: maxRetry - }; - return new http_client_1.HttpClient("actions/oidc-client", [new auth_1.BearerCredentialHandler(OidcClient.getRequestToken())], requestOptions); - } - static getRequestToken() { - const token = process.env["ACTIONS_ID_TOKEN_REQUEST_TOKEN"]; - if (!token) { - throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable"); - } - return token; - } - static getIDTokenUrl() { - const runtimeUrl = process.env["ACTIONS_ID_TOKEN_REQUEST_URL"]; - if (!runtimeUrl) { - throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable"); - } - return runtimeUrl; - } - static getCall(id_token_url) { - var _a; - return __awaiter(this, void 0, void 0, function* () { - const httpclient = OidcClient.createHttpClient(); - const res = yield httpclient.getJson(id_token_url).catch((error) => { - throw new Error(`Failed to get ID Token. - - Error Code : ${error.statusCode} - - Error Message: ${error.message}`); - }); - const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value; - if (!id_token) { - throw new Error("Response json body do not have ID Token field"); - } - return id_token; - }); - } - static getIDToken(audience) { - return __awaiter(this, void 0, void 0, function* () { - try { - let id_token_url = OidcClient.getIDTokenUrl(); - if (audience) { - const encodedAudience = encodeURIComponent(audience); - id_token_url = `${id_token_url}&audience=${encodedAudience}`; - } - (0, core_1.debug)(`ID token url is ${id_token_url}`); - const id_token = yield OidcClient.getCall(id_token_url); - (0, core_1.setSecret)(id_token); - return id_token; - } catch (error) { - throw new Error(`Error message: ${error.message}`); - } - }); - } - }; - exports2.OidcClient = OidcClient; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/summary.js -var require_summary = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/summary.js"(exports2) { - "use strict"; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0; - var os_1 = require("os"); - var fs_1 = require("fs"); - var { access, appendFile, writeFile } = fs_1.promises; - exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY"; - exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary"; - var Summary = class { - constructor() { - this._buffer = ""; - } - /** - * Finds the summary file path from the environment, rejects if env var is not found or file does not exist - * Also checks r/w permissions. - * - * @returns step summary file path - */ - filePath() { - return __awaiter(this, void 0, void 0, function* () { - if (this._filePath) { - return this._filePath; - } - const pathFromEnv = process.env[exports2.SUMMARY_ENV_VAR]; - if (!pathFromEnv) { - throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`); - } - try { - yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK); - } catch (_a) { - throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`); - } - this._filePath = pathFromEnv; - return this._filePath; - }); - } - /** - * Wraps content in an HTML tag, adding any HTML attributes - * - * @param {string} tag HTML tag to wrap - * @param {string | null} content content within the tag - * @param {[attribute: string]: string} attrs key-value list of HTML attributes to add - * - * @returns {string} content wrapped in HTML element - */ - wrap(tag, content, attrs = {}) { - const htmlAttrs = Object.entries(attrs).map(([key, value]) => ` ${key}="${value}"`).join(""); - if (!content) { - return `<${tag}${htmlAttrs}>`; - } - return `<${tag}${htmlAttrs}>${content}</${tag}>`; - } - /** - * Writes text in the buffer to the summary buffer file and empties buffer. Will append by default. - * - * @param {SummaryWriteOptions} [options] (optional) options for write operation - * - * @returns {Promise<Summary>} summary instance - */ - write(options) { - return __awaiter(this, void 0, void 0, function* () { - const overwrite = !!(options === null || options === void 0 ? void 0 : options.overwrite); - const filePath = yield this.filePath(); - const writeFunc = overwrite ? writeFile : appendFile; - yield writeFunc(filePath, this._buffer, { encoding: "utf8" }); - return this.emptyBuffer(); - }); - } - /** - * Clears the summary buffer and wipes the summary file - * - * @returns {Summary} summary instance - */ - clear() { - return __awaiter(this, void 0, void 0, function* () { - return this.emptyBuffer().write({ overwrite: true }); - }); - } - /** - * Returns the current summary buffer as a string - * - * @returns {string} string of summary buffer - */ - stringify() { - return this._buffer; - } - /** - * If the summary buffer is empty - * - * @returns {boolen} true if the buffer is empty - */ - isEmptyBuffer() { - return this._buffer.length === 0; - } - /** - * Resets the summary buffer without writing to summary file - * - * @returns {Summary} summary instance - */ - emptyBuffer() { - this._buffer = ""; - return this; - } - /** - * Adds raw text to the summary buffer - * - * @param {string} text content to add - * @param {boolean} [addEOL=false] (optional) append an EOL to the raw text (default: false) - * - * @returns {Summary} summary instance - */ - addRaw(text, addEOL = false) { - this._buffer += text; - return addEOL ? this.addEOL() : this; - } - /** - * Adds the operating system-specific end-of-line marker to the buffer - * - * @returns {Summary} summary instance - */ - addEOL() { - return this.addRaw(os_1.EOL); - } - /** - * Adds an HTML codeblock to the summary buffer - * - * @param {string} code content to render within fenced code block - * @param {string} lang (optional) language to syntax highlight code - * - * @returns {Summary} summary instance - */ - addCodeBlock(code, lang) { - const attrs = Object.assign({}, lang && { lang }); - const element = this.wrap("pre", this.wrap("code", code), attrs); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML list to the summary buffer - * - * @param {string[]} items list of items to render - * @param {boolean} [ordered=false] (optional) if the rendered list should be ordered or not (default: false) - * - * @returns {Summary} summary instance - */ - addList(items, ordered = false) { - const tag = ordered ? "ol" : "ul"; - const listItems = items.map((item) => this.wrap("li", item)).join(""); - const element = this.wrap(tag, listItems); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML table to the summary buffer - * - * @param {SummaryTableCell[]} rows table rows - * - * @returns {Summary} summary instance - */ - addTable(rows) { - const tableBody = rows.map((row) => { - const cells = row.map((cell) => { - if (typeof cell === "string") { - return this.wrap("td", cell); - } - const { header, data, colspan, rowspan } = cell; - const tag = header ? "th" : "td"; - const attrs = Object.assign(Object.assign({}, colspan && { colspan }), rowspan && { rowspan }); - return this.wrap(tag, data, attrs); - }).join(""); - return this.wrap("tr", cells); - }).join(""); - const element = this.wrap("table", tableBody); - return this.addRaw(element).addEOL(); - } - /** - * Adds a collapsable HTML details element to the summary buffer - * - * @param {string} label text for the closed state - * @param {string} content collapsable content - * - * @returns {Summary} summary instance - */ - addDetails(label, content) { - const element = this.wrap("details", this.wrap("summary", label) + content); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML image tag to the summary buffer - * - * @param {string} src path to the image you to embed - * @param {string} alt text description of the image - * @param {SummaryImageOptions} options (optional) addition image attributes - * - * @returns {Summary} summary instance - */ - addImage(src, alt, options) { - const { width, height } = options || {}; - const attrs = Object.assign(Object.assign({}, width && { width }), height && { height }); - const element = this.wrap("img", null, Object.assign({ src, alt }, attrs)); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML section heading element - * - * @param {string} text heading text - * @param {number | string} [level=1] (optional) the heading level, default: 1 - * - * @returns {Summary} summary instance - */ - addHeading(text, level) { - const tag = `h${level}`; - const allowedTag = ["h1", "h2", "h3", "h4", "h5", "h6"].includes(tag) ? tag : "h1"; - const element = this.wrap(allowedTag, text); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML thematic break (<hr>) to the summary buffer - * - * @returns {Summary} summary instance - */ - addSeparator() { - const element = this.wrap("hr", null); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML line break (<br>) to the summary buffer - * - * @returns {Summary} summary instance - */ - addBreak() { - const element = this.wrap("br", null); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML blockquote to the summary buffer - * - * @param {string} text quote text - * @param {string} cite (optional) citation url - * - * @returns {Summary} summary instance - */ - addQuote(text, cite) { - const attrs = Object.assign({}, cite && { cite }); - const element = this.wrap("blockquote", text, attrs); - return this.addRaw(element).addEOL(); - } - /** - * Adds an HTML anchor tag to the summary buffer - * - * @param {string} text link text/content - * @param {string} href hyperlink - * - * @returns {Summary} summary instance - */ - addLink(text, href) { - const element = this.wrap("a", text, { href }); - return this.addRaw(element).addEOL(); - } - }; - var _summary = new Summary(); - exports2.markdownSummary = _summary; - exports2.summary = _summary; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/path-utils.js -var require_path_utils = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/path-utils.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.toPlatformPath = exports2.toWin32Path = exports2.toPosixPath = void 0; - var path2 = __importStar(require("path")); - function toPosixPath(pth) { - return pth.replace(/[\\]/g, "/"); - } - exports2.toPosixPath = toPosixPath; - function toWin32Path(pth) { - return pth.replace(/[/]/g, "\\"); - } - exports2.toWin32Path = toWin32Path; - function toPlatformPath(pth) { - return pth.replace(/[/\\]/g, path2.sep); - } - exports2.toPlatformPath = toPlatformPath; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/io/lib/io-util.js -var require_io_util = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/io/lib/io-util.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var _a; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getCmdPath = exports2.tryGetExecutablePath = exports2.isRooted = exports2.isDirectory = exports2.exists = exports2.READONLY = exports2.UV_FS_O_EXLOCK = exports2.IS_WINDOWS = exports2.unlink = exports2.symlink = exports2.stat = exports2.rmdir = exports2.rm = exports2.rename = exports2.readlink = exports2.readdir = exports2.open = exports2.mkdir = exports2.lstat = exports2.copyFile = exports2.chmod = void 0; - var fs = __importStar(require("fs")); - var path2 = __importStar(require("path")); - _a = fs.promises, exports2.chmod = _a.chmod, exports2.copyFile = _a.copyFile, exports2.lstat = _a.lstat, exports2.mkdir = _a.mkdir, exports2.open = _a.open, exports2.readdir = _a.readdir, exports2.readlink = _a.readlink, exports2.rename = _a.rename, exports2.rm = _a.rm, exports2.rmdir = _a.rmdir, exports2.stat = _a.stat, exports2.symlink = _a.symlink, exports2.unlink = _a.unlink; - exports2.IS_WINDOWS = process.platform === "win32"; - exports2.UV_FS_O_EXLOCK = 268435456; - exports2.READONLY = fs.constants.O_RDONLY; - function exists(fsPath) { - return __awaiter(this, void 0, void 0, function* () { - try { - yield exports2.stat(fsPath); - } catch (err) { - if (err.code === "ENOENT") { - return false; - } - throw err; - } - return true; - }); - } - exports2.exists = exists; - function isDirectory(fsPath, useStat = false) { - return __awaiter(this, void 0, void 0, function* () { - const stats = useStat ? yield exports2.stat(fsPath) : yield exports2.lstat(fsPath); - return stats.isDirectory(); - }); - } - exports2.isDirectory = isDirectory; - function isRooted(p) { - p = normalizeSeparators(p); - if (!p) { - throw new Error('isRooted() parameter "p" cannot be empty'); - } - if (exports2.IS_WINDOWS) { - return p.startsWith("\\") || /^[A-Z]:/i.test(p); - } - return p.startsWith("/"); - } - exports2.isRooted = isRooted; - function tryGetExecutablePath(filePath, extensions) { - return __awaiter(this, void 0, void 0, function* () { - let stats = void 0; - try { - stats = yield exports2.stat(filePath); - } catch (err) { - if (err.code !== "ENOENT") { - console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`); - } - } - if (stats && stats.isFile()) { - if (exports2.IS_WINDOWS) { - const upperExt = path2.extname(filePath).toUpperCase(); - if (extensions.some((validExt) => validExt.toUpperCase() === upperExt)) { - return filePath; - } - } else { - if (isUnixExecutable(stats)) { - return filePath; - } - } - } - const originalFilePath = filePath; - for (const extension of extensions) { - filePath = originalFilePath + extension; - stats = void 0; - try { - stats = yield exports2.stat(filePath); - } catch (err) { - if (err.code !== "ENOENT") { - console.log(`Unexpected error attempting to determine if executable file exists '${filePath}': ${err}`); - } - } - if (stats && stats.isFile()) { - if (exports2.IS_WINDOWS) { - try { - const directory = path2.dirname(filePath); - const upperName = path2.basename(filePath).toUpperCase(); - for (const actualName of yield exports2.readdir(directory)) { - if (upperName === actualName.toUpperCase()) { - filePath = path2.join(directory, actualName); - break; - } - } - } catch (err) { - console.log(`Unexpected error attempting to determine the actual case of the file '${filePath}': ${err}`); - } - return filePath; - } else { - if (isUnixExecutable(stats)) { - return filePath; - } - } - } - } - return ""; - }); - } - exports2.tryGetExecutablePath = tryGetExecutablePath; - function normalizeSeparators(p) { - p = p || ""; - if (exports2.IS_WINDOWS) { - p = p.replace(/\//g, "\\"); - return p.replace(/\\\\+/g, "\\"); - } - return p.replace(/\/\/+/g, "/"); - } - function isUnixExecutable(stats) { - return (stats.mode & 1) > 0 || (stats.mode & 8) > 0 && stats.gid === process.getgid() || (stats.mode & 64) > 0 && stats.uid === process.getuid(); - } - function getCmdPath() { - var _a2; - return (_a2 = process.env["COMSPEC"]) !== null && _a2 !== void 0 ? _a2 : `cmd.exe`; - } - exports2.getCmdPath = getCmdPath; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/io/lib/io.js -var require_io = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/io/lib/io.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.findInPath = exports2.which = exports2.mkdirP = exports2.rmRF = exports2.mv = exports2.cp = void 0; - var assert_1 = require("assert"); - var path2 = __importStar(require("path")); - var ioUtil = __importStar(require_io_util()); - function cp(source, dest, options = {}) { - return __awaiter(this, void 0, void 0, function* () { - const { force, recursive, copySourceDirectory } = readCopyOptions(options); - const destStat = (yield ioUtil.exists(dest)) ? yield ioUtil.stat(dest) : null; - if (destStat && destStat.isFile() && !force) { - return; - } - const newDest = destStat && destStat.isDirectory() && copySourceDirectory ? path2.join(dest, path2.basename(source)) : dest; - if (!(yield ioUtil.exists(source))) { - throw new Error(`no such file or directory: ${source}`); - } - const sourceStat = yield ioUtil.stat(source); - if (sourceStat.isDirectory()) { - if (!recursive) { - throw new Error(`Failed to copy. ${source} is a directory, but tried to copy without recursive flag.`); - } else { - yield cpDirRecursive(source, newDest, 0, force); - } - } else { - if (path2.relative(source, newDest) === "") { - throw new Error(`'${newDest}' and '${source}' are the same file`); - } - yield copyFile(source, newDest, force); - } - }); - } - exports2.cp = cp; - function mv(source, dest, options = {}) { - return __awaiter(this, void 0, void 0, function* () { - if (yield ioUtil.exists(dest)) { - let destExists = true; - if (yield ioUtil.isDirectory(dest)) { - dest = path2.join(dest, path2.basename(source)); - destExists = yield ioUtil.exists(dest); - } - if (destExists) { - if (options.force == null || options.force) { - yield rmRF(dest); - } else { - throw new Error("Destination already exists"); - } - } - } - yield mkdirP(path2.dirname(dest)); - yield ioUtil.rename(source, dest); - }); - } - exports2.mv = mv; - function rmRF(inputPath) { - return __awaiter(this, void 0, void 0, function* () { - if (ioUtil.IS_WINDOWS) { - if (/[*"<>|]/.test(inputPath)) { - throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows'); - } - } - try { - yield ioUtil.rm(inputPath, { - force: true, - maxRetries: 3, - recursive: true, - retryDelay: 300 - }); - } catch (err) { - throw new Error(`File was unable to be removed ${err}`); - } - }); - } - exports2.rmRF = rmRF; - function mkdirP(fsPath) { - return __awaiter(this, void 0, void 0, function* () { - assert_1.ok(fsPath, "a path argument must be provided"); - yield ioUtil.mkdir(fsPath, { recursive: true }); - }); - } - exports2.mkdirP = mkdirP; - function which(tool, check) { - return __awaiter(this, void 0, void 0, function* () { - if (!tool) { - throw new Error("parameter 'tool' is required"); - } - if (check) { - const result = yield which(tool, false); - if (!result) { - if (ioUtil.IS_WINDOWS) { - throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`); - } else { - throw new Error(`Unable to locate executable file: ${tool}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`); - } - } - return result; - } - const matches = yield findInPath(tool); - if (matches && matches.length > 0) { - return matches[0]; - } - return ""; - }); - } - exports2.which = which; - function findInPath(tool) { - return __awaiter(this, void 0, void 0, function* () { - if (!tool) { - throw new Error("parameter 'tool' is required"); - } - const extensions = []; - if (ioUtil.IS_WINDOWS && process.env["PATHEXT"]) { - for (const extension of process.env["PATHEXT"].split(path2.delimiter)) { - if (extension) { - extensions.push(extension); - } - } - } - if (ioUtil.isRooted(tool)) { - const filePath = yield ioUtil.tryGetExecutablePath(tool, extensions); - if (filePath) { - return [filePath]; - } - return []; - } - if (tool.includes(path2.sep)) { - return []; - } - const directories = []; - if (process.env.PATH) { - for (const p of process.env.PATH.split(path2.delimiter)) { - if (p) { - directories.push(p); - } - } - } - const matches = []; - for (const directory of directories) { - const filePath = yield ioUtil.tryGetExecutablePath(path2.join(directory, tool), extensions); - if (filePath) { - matches.push(filePath); - } - } - return matches; - }); - } - exports2.findInPath = findInPath; - function readCopyOptions(options) { - const force = options.force == null ? true : options.force; - const recursive = Boolean(options.recursive); - const copySourceDirectory = options.copySourceDirectory == null ? true : Boolean(options.copySourceDirectory); - return { force, recursive, copySourceDirectory }; - } - function cpDirRecursive(sourceDir, destDir, currentDepth, force) { - return __awaiter(this, void 0, void 0, function* () { - if (currentDepth >= 255) - return; - currentDepth++; - yield mkdirP(destDir); - const files = yield ioUtil.readdir(sourceDir); - for (const fileName of files) { - const srcFile = `${sourceDir}/${fileName}`; - const destFile = `${destDir}/${fileName}`; - const srcFileStat = yield ioUtil.lstat(srcFile); - if (srcFileStat.isDirectory()) { - yield cpDirRecursive(srcFile, destFile, currentDepth, force); - } else { - yield copyFile(srcFile, destFile, force); - } - } - yield ioUtil.chmod(destDir, (yield ioUtil.stat(sourceDir)).mode); - }); - } - function copyFile(srcFile, destFile, force) { - return __awaiter(this, void 0, void 0, function* () { - if ((yield ioUtil.lstat(srcFile)).isSymbolicLink()) { - try { - yield ioUtil.lstat(destFile); - yield ioUtil.unlink(destFile); - } catch (e) { - if (e.code === "EPERM") { - yield ioUtil.chmod(destFile, "0666"); - yield ioUtil.unlink(destFile); - } - } - const symlinkFull = yield ioUtil.readlink(srcFile); - yield ioUtil.symlink(symlinkFull, destFile, ioUtil.IS_WINDOWS ? "junction" : null); - } else if (!(yield ioUtil.exists(destFile)) || force) { - yield ioUtil.copyFile(srcFile, destFile); - } - }); - } - } -}); - -// node_modules/@reporters/github/node_modules/@actions/exec/lib/toolrunner.js -var require_toolrunner = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/exec/lib/toolrunner.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.argStringToArray = exports2.ToolRunner = void 0; - var os = __importStar(require("os")); - var events = __importStar(require("events")); - var child = __importStar(require("child_process")); - var path2 = __importStar(require("path")); - var io = __importStar(require_io()); - var ioUtil = __importStar(require_io_util()); - var timers_1 = require("timers"); - var IS_WINDOWS = process.platform === "win32"; - var ToolRunner = class extends events.EventEmitter { - constructor(toolPath, args, options) { - super(); - if (!toolPath) { - throw new Error("Parameter 'toolPath' cannot be null or empty."); - } - this.toolPath = toolPath; - this.args = args || []; - this.options = options || {}; - } - _debug(message) { - if (this.options.listeners && this.options.listeners.debug) { - this.options.listeners.debug(message); - } - } - _getCommandString(options, noPrefix) { - const toolPath = this._getSpawnFileName(); - const args = this._getSpawnArgs(options); - let cmd = noPrefix ? "" : "[command]"; - if (IS_WINDOWS) { - if (this._isCmdFile()) { - cmd += toolPath; - for (const a of args) { - cmd += ` ${a}`; - } - } else if (options.windowsVerbatimArguments) { - cmd += `"${toolPath}"`; - for (const a of args) { - cmd += ` ${a}`; - } - } else { - cmd += this._windowsQuoteCmdArg(toolPath); - for (const a of args) { - cmd += ` ${this._windowsQuoteCmdArg(a)}`; - } - } - } else { - cmd += toolPath; - for (const a of args) { - cmd += ` ${a}`; - } - } - return cmd; - } - _processLineBuffer(data, strBuffer, onLine) { - try { - let s = strBuffer + data.toString(); - let n = s.indexOf(os.EOL); - while (n > -1) { - const line = s.substring(0, n); - onLine(line); - s = s.substring(n + os.EOL.length); - n = s.indexOf(os.EOL); - } - return s; - } catch (err) { - this._debug(`error processing line. Failed with error ${err}`); - return ""; - } - } - _getSpawnFileName() { - if (IS_WINDOWS) { - if (this._isCmdFile()) { - return process.env["COMSPEC"] || "cmd.exe"; - } - } - return this.toolPath; - } - _getSpawnArgs(options) { - if (IS_WINDOWS) { - if (this._isCmdFile()) { - let argline = `/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`; - for (const a of this.args) { - argline += " "; - argline += options.windowsVerbatimArguments ? a : this._windowsQuoteCmdArg(a); - } - argline += '"'; - return [argline]; - } - } - return this.args; - } - _endsWith(str, end) { - return str.endsWith(end); - } - _isCmdFile() { - const upperToolPath = this.toolPath.toUpperCase(); - return this._endsWith(upperToolPath, ".CMD") || this._endsWith(upperToolPath, ".BAT"); - } - _windowsQuoteCmdArg(arg) { - if (!this._isCmdFile()) { - return this._uvQuoteCmdArg(arg); - } - if (!arg) { - return '""'; - } - const cmdSpecialChars = [ - " ", - " ", - "&", - "(", - ")", - "[", - "]", - "{", - "}", - "^", - "=", - ";", - "!", - "'", - "+", - ",", - "`", - "~", - "|", - "<", - ">", - '"' - ]; - let needsQuotes = false; - for (const char of arg) { - if (cmdSpecialChars.some((x) => x === char)) { - needsQuotes = true; - break; - } - } - if (!needsQuotes) { - return arg; - } - let reverse = '"'; - let quoteHit = true; - for (let i = arg.length; i > 0; i--) { - reverse += arg[i - 1]; - if (quoteHit && arg[i - 1] === "\\") { - reverse += "\\"; - } else if (arg[i - 1] === '"') { - quoteHit = true; - reverse += '"'; - } else { - quoteHit = false; - } - } - reverse += '"'; - return reverse.split("").reverse().join(""); - } - _uvQuoteCmdArg(arg) { - if (!arg) { - return '""'; - } - if (!arg.includes(" ") && !arg.includes(" ") && !arg.includes('"')) { - return arg; - } - if (!arg.includes('"') && !arg.includes("\\")) { - return `"${arg}"`; - } - let reverse = '"'; - let quoteHit = true; - for (let i = arg.length; i > 0; i--) { - reverse += arg[i - 1]; - if (quoteHit && arg[i - 1] === "\\") { - reverse += "\\"; - } else if (arg[i - 1] === '"') { - quoteHit = true; - reverse += "\\"; - } else { - quoteHit = false; - } - } - reverse += '"'; - return reverse.split("").reverse().join(""); - } - _cloneExecOptions(options) { - options = options || {}; - const result = { - cwd: options.cwd || process.cwd(), - env: options.env || process.env, - silent: options.silent || false, - windowsVerbatimArguments: options.windowsVerbatimArguments || false, - failOnStdErr: options.failOnStdErr || false, - ignoreReturnCode: options.ignoreReturnCode || false, - delay: options.delay || 1e4 - }; - result.outStream = options.outStream || process.stdout; - result.errStream = options.errStream || process.stderr; - return result; - } - _getSpawnOptions(options, toolPath) { - options = options || {}; - const result = {}; - result.cwd = options.cwd; - result.env = options.env; - result["windowsVerbatimArguments"] = options.windowsVerbatimArguments || this._isCmdFile(); - if (options.windowsVerbatimArguments) { - result.argv0 = `"${toolPath}"`; - } - return result; - } - /** - * Exec a tool. - * Output will be streamed to the live console. - * Returns promise with return code - * - * @param tool path to tool to exec - * @param options optional exec options. See ExecOptions - * @returns number - */ - exec() { - return __awaiter(this, void 0, void 0, function* () { - if (!ioUtil.isRooted(this.toolPath) && (this.toolPath.includes("/") || IS_WINDOWS && this.toolPath.includes("\\"))) { - this.toolPath = path2.resolve(process.cwd(), this.options.cwd || process.cwd(), this.toolPath); - } - this.toolPath = yield io.which(this.toolPath, true); - return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () { - this._debug(`exec tool: ${this.toolPath}`); - this._debug("arguments:"); - for (const arg of this.args) { - this._debug(` ${arg}`); - } - const optionsNonNull = this._cloneExecOptions(this.options); - if (!optionsNonNull.silent && optionsNonNull.outStream) { - optionsNonNull.outStream.write(this._getCommandString(optionsNonNull) + os.EOL); - } - const state = new ExecState(optionsNonNull, this.toolPath); - state.on("debug", (message) => { - this._debug(message); - }); - if (this.options.cwd && !(yield ioUtil.exists(this.options.cwd))) { - return reject(new Error(`The cwd: ${this.options.cwd} does not exist!`)); - } - const fileName = this._getSpawnFileName(); - const cp = child.spawn(fileName, this._getSpawnArgs(optionsNonNull), this._getSpawnOptions(this.options, fileName)); - let stdbuffer = ""; - if (cp.stdout) { - cp.stdout.on("data", (data) => { - if (this.options.listeners && this.options.listeners.stdout) { - this.options.listeners.stdout(data); - } - if (!optionsNonNull.silent && optionsNonNull.outStream) { - optionsNonNull.outStream.write(data); - } - stdbuffer = this._processLineBuffer(data, stdbuffer, (line) => { - if (this.options.listeners && this.options.listeners.stdline) { - this.options.listeners.stdline(line); - } - }); - }); - } - let errbuffer = ""; - if (cp.stderr) { - cp.stderr.on("data", (data) => { - state.processStderr = true; - if (this.options.listeners && this.options.listeners.stderr) { - this.options.listeners.stderr(data); - } - if (!optionsNonNull.silent && optionsNonNull.errStream && optionsNonNull.outStream) { - const s = optionsNonNull.failOnStdErr ? optionsNonNull.errStream : optionsNonNull.outStream; - s.write(data); - } - errbuffer = this._processLineBuffer(data, errbuffer, (line) => { - if (this.options.listeners && this.options.listeners.errline) { - this.options.listeners.errline(line); - } - }); - }); - } - cp.on("error", (err) => { - state.processError = err.message; - state.processExited = true; - state.processClosed = true; - state.CheckComplete(); - }); - cp.on("exit", (code) => { - state.processExitCode = code; - state.processExited = true; - this._debug(`Exit code ${code} received from tool '${this.toolPath}'`); - state.CheckComplete(); - }); - cp.on("close", (code) => { - state.processExitCode = code; - state.processExited = true; - state.processClosed = true; - this._debug(`STDIO streams have closed for tool '${this.toolPath}'`); - state.CheckComplete(); - }); - state.on("done", (error, exitCode) => { - if (stdbuffer.length > 0) { - this.emit("stdline", stdbuffer); - } - if (errbuffer.length > 0) { - this.emit("errline", errbuffer); - } - cp.removeAllListeners(); - if (error) { - reject(error); - } else { - resolve(exitCode); - } - }); - if (this.options.input) { - if (!cp.stdin) { - throw new Error("child process missing stdin"); - } - cp.stdin.end(this.options.input); - } - })); - }); - } - }; - exports2.ToolRunner = ToolRunner; - function argStringToArray(argString) { - const args = []; - let inQuotes = false; - let escaped = false; - let arg = ""; - function append(c) { - if (escaped && c !== '"') { - arg += "\\"; - } - arg += c; - escaped = false; - } - for (let i = 0; i < argString.length; i++) { - const c = argString.charAt(i); - if (c === '"') { - if (!escaped) { - inQuotes = !inQuotes; - } else { - append(c); - } - continue; - } - if (c === "\\" && escaped) { - append(c); - continue; - } - if (c === "\\" && inQuotes) { - escaped = true; - continue; - } - if (c === " " && !inQuotes) { - if (arg.length > 0) { - args.push(arg); - arg = ""; - } - continue; - } - append(c); - } - if (arg.length > 0) { - args.push(arg.trim()); - } - return args; - } - exports2.argStringToArray = argStringToArray; - var ExecState = class extends events.EventEmitter { - constructor(options, toolPath) { - super(); - this.processClosed = false; - this.processError = ""; - this.processExitCode = 0; - this.processExited = false; - this.processStderr = false; - this.delay = 1e4; - this.done = false; - this.timeout = null; - if (!toolPath) { - throw new Error("toolPath must not be empty"); - } - this.options = options; - this.toolPath = toolPath; - if (options.delay) { - this.delay = options.delay; - } - } - CheckComplete() { - if (this.done) { - return; - } - if (this.processClosed) { - this._setResult(); - } else if (this.processExited) { - this.timeout = timers_1.setTimeout(ExecState.HandleTimeout, this.delay, this); - } - } - _debug(message) { - this.emit("debug", message); - } - _setResult() { - let error; - if (this.processExited) { - if (this.processError) { - error = new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`); - } else if (this.processExitCode !== 0 && !this.options.ignoreReturnCode) { - error = new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`); - } else if (this.processStderr && this.options.failOnStdErr) { - error = new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`); - } - } - if (this.timeout) { - clearTimeout(this.timeout); - this.timeout = null; - } - this.done = true; - this.emit("done", error, this.processExitCode); - } - static HandleTimeout(state) { - if (state.done) { - return; - } - if (!state.processClosed && state.processExited) { - const message = `The STDIO streams did not close within ${state.delay / 1e3} seconds of the exit event from process '${state.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`; - state._debug(message); - } - state._setResult(); - } - }; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/exec/lib/exec.js -var require_exec = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/exec/lib/exec.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - Object.defineProperty(o, k2, { enumerable: true, get: function() { - return m[k]; - } }); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getExecOutput = exports2.exec = void 0; - var string_decoder_1 = require("string_decoder"); - var tr = __importStar(require_toolrunner()); - function exec(commandLine, args, options) { - return __awaiter(this, void 0, void 0, function* () { - const commandArgs = tr.argStringToArray(commandLine); - if (commandArgs.length === 0) { - throw new Error(`Parameter 'commandLine' cannot be null or empty.`); - } - const toolPath = commandArgs[0]; - args = commandArgs.slice(1).concat(args || []); - const runner = new tr.ToolRunner(toolPath, args, options); - return runner.exec(); - }); - } - exports2.exec = exec; - function getExecOutput(commandLine, args, options) { - var _a, _b; - return __awaiter(this, void 0, void 0, function* () { - let stdout = ""; - let stderr = ""; - const stdoutDecoder = new string_decoder_1.StringDecoder("utf8"); - const stderrDecoder = new string_decoder_1.StringDecoder("utf8"); - const originalStdoutListener = (_a = options === null || options === void 0 ? void 0 : options.listeners) === null || _a === void 0 ? void 0 : _a.stdout; - const originalStdErrListener = (_b = options === null || options === void 0 ? void 0 : options.listeners) === null || _b === void 0 ? void 0 : _b.stderr; - const stdErrListener = (data) => { - stderr += stderrDecoder.write(data); - if (originalStdErrListener) { - originalStdErrListener(data); - } - }; - const stdOutListener = (data) => { - stdout += stdoutDecoder.write(data); - if (originalStdoutListener) { - originalStdoutListener(data); - } - }; - const listeners = Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.listeners), { stdout: stdOutListener, stderr: stdErrListener }); - const exitCode = yield exec(commandLine, args, Object.assign(Object.assign({}, options), { listeners })); - stdout += stdoutDecoder.end(); - stderr += stderrDecoder.end(); - return { - exitCode, - stdout, - stderr - }; - }); - } - exports2.getExecOutput = getExecOutput; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/platform.js -var require_platform = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/platform.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - var __importDefault = exports2 && exports2.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getDetails = exports2.isLinux = exports2.isMacOS = exports2.isWindows = exports2.arch = exports2.platform = void 0; - var os_1 = __importDefault(require("os")); - var exec = __importStar(require_exec()); - var getWindowsInfo = () => __awaiter(void 0, void 0, void 0, function* () { - const { stdout: version } = yield exec.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Version"', void 0, { - silent: true - }); - const { stdout: name } = yield exec.getExecOutput('powershell -command "(Get-CimInstance -ClassName Win32_OperatingSystem).Caption"', void 0, { - silent: true - }); - return { - name: name.trim(), - version: version.trim() - }; - }); - var getMacOsInfo = () => __awaiter(void 0, void 0, void 0, function* () { - var _a, _b, _c, _d; - const { stdout } = yield exec.getExecOutput("sw_vers", void 0, { - silent: true - }); - const version = (_b = (_a = stdout.match(/ProductVersion:\s*(.+)/)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : ""; - const name = (_d = (_c = stdout.match(/ProductName:\s*(.+)/)) === null || _c === void 0 ? void 0 : _c[1]) !== null && _d !== void 0 ? _d : ""; - return { - name, - version - }; - }); - var getLinuxInfo = () => __awaiter(void 0, void 0, void 0, function* () { - const { stdout } = yield exec.getExecOutput("lsb_release", ["-i", "-r", "-s"], { - silent: true - }); - const [name, version] = stdout.trim().split("\n"); - return { - name, - version - }; - }); - exports2.platform = os_1.default.platform(); - exports2.arch = os_1.default.arch(); - exports2.isWindows = exports2.platform === "win32"; - exports2.isMacOS = exports2.platform === "darwin"; - exports2.isLinux = exports2.platform === "linux"; - function getDetails() { - return __awaiter(this, void 0, void 0, function* () { - return Object.assign(Object.assign({}, yield exports2.isWindows ? getWindowsInfo() : exports2.isMacOS ? getMacOsInfo() : getLinuxInfo()), { - platform: exports2.platform, - arch: exports2.arch, - isWindows: exports2.isWindows, - isMacOS: exports2.isMacOS, - isLinux: exports2.isLinux - }); - }); - } - exports2.getDetails = getDetails; - } -}); - -// node_modules/@reporters/github/node_modules/@actions/core/lib/core.js -var require_core = __commonJS({ - "node_modules/@reporters/github/node_modules/@actions/core/lib/core.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || function(mod) { - if (mod && mod.__esModule) - return mod; - var result = {}; - if (mod != null) { - for (var k in mod) - if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) - __createBinding(result, mod, k); - } - __setModuleDefault(result, mod); - return result; - }; - var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { - function adopt(value) { - return value instanceof P ? value : new P(function(resolve) { - resolve(value); - }); - } - return new (P || (P = Promise))(function(resolve, reject) { - function fulfilled(value) { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - } - function rejected(value) { - try { - step(generator["throw"](value)); - } catch (e) { - reject(e); - } - } - function step(result) { - result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); - } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.platform = exports2.toPlatformPath = exports2.toWin32Path = exports2.toPosixPath = exports2.markdownSummary = exports2.summary = exports2.getIDToken = exports2.getState = exports2.saveState = exports2.group = exports2.endGroup = exports2.startGroup = exports2.info = exports2.notice = exports2.warning = exports2.error = exports2.debug = exports2.isDebug = exports2.setFailed = exports2.setCommandEcho = exports2.setOutput = exports2.getBooleanInput = exports2.getMultilineInput = exports2.getInput = exports2.addPath = exports2.setSecret = exports2.exportVariable = exports2.ExitCode = void 0; - var command_1 = require_command(); - var file_command_1 = require_file_command(); - var utils_1 = require_utils(); - var os = __importStar(require("os")); - var path2 = __importStar(require("path")); - var oidc_utils_1 = require_oidc_utils(); - var ExitCode; - (function(ExitCode2) { - ExitCode2[ExitCode2["Success"] = 0] = "Success"; - ExitCode2[ExitCode2["Failure"] = 1] = "Failure"; - })(ExitCode || (exports2.ExitCode = ExitCode = {})); - function exportVariable(name, val) { - const convertedVal = (0, utils_1.toCommandValue)(val); - process.env[name] = convertedVal; - const filePath = process.env["GITHUB_ENV"] || ""; - if (filePath) { - return (0, file_command_1.issueFileCommand)("ENV", (0, file_command_1.prepareKeyValueMessage)(name, val)); - } - (0, command_1.issueCommand)("set-env", { name }, convertedVal); - } - exports2.exportVariable = exportVariable; - function setSecret(secret) { - (0, command_1.issueCommand)("add-mask", {}, secret); - } - exports2.setSecret = setSecret; - function addPath(inputPath) { - const filePath = process.env["GITHUB_PATH"] || ""; - if (filePath) { - (0, file_command_1.issueFileCommand)("PATH", inputPath); - } else { - (0, command_1.issueCommand)("add-path", {}, inputPath); - } - process.env["PATH"] = `${inputPath}${path2.delimiter}${process.env["PATH"]}`; - } - exports2.addPath = addPath; - function getInput(name, options) { - const val = process.env[`INPUT_${name.replace(/ /g, "_").toUpperCase()}`] || ""; - if (options && options.required && !val) { - throw new Error(`Input required and not supplied: ${name}`); - } - if (options && options.trimWhitespace === false) { - return val; - } - return val.trim(); - } - exports2.getInput = getInput; - function getMultilineInput(name, options) { - const inputs = getInput(name, options).split("\n").filter((x) => x !== ""); - if (options && options.trimWhitespace === false) { - return inputs; - } - return inputs.map((input) => input.trim()); - } - exports2.getMultilineInput = getMultilineInput; - function getBooleanInput(name, options) { - const trueValue = ["true", "True", "TRUE"]; - const falseValue = ["false", "False", "FALSE"]; - const val = getInput(name, options); - if (trueValue.includes(val)) - return true; - if (falseValue.includes(val)) - return false; - throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${name} -Support boolean input list: \`true | True | TRUE | false | False | FALSE\``); - } - exports2.getBooleanInput = getBooleanInput; - function setOutput(name, value) { - const filePath = process.env["GITHUB_OUTPUT"] || ""; - if (filePath) { - return (0, file_command_1.issueFileCommand)("OUTPUT", (0, file_command_1.prepareKeyValueMessage)(name, value)); - } - process.stdout.write(os.EOL); - (0, command_1.issueCommand)("set-output", { name }, (0, utils_1.toCommandValue)(value)); - } - exports2.setOutput = setOutput; - function setCommandEcho(enabled) { - (0, command_1.issue)("echo", enabled ? "on" : "off"); - } - exports2.setCommandEcho = setCommandEcho; - function setFailed(message) { - process.exitCode = ExitCode.Failure; - error(message); - } - exports2.setFailed = setFailed; - function isDebug() { - return process.env["RUNNER_DEBUG"] === "1"; - } - exports2.isDebug = isDebug; - function debug(message) { - (0, command_1.issueCommand)("debug", {}, message); - } - exports2.debug = debug; - function error(message, properties = {}) { - (0, command_1.issueCommand)("error", (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); - } - exports2.error = error; - function warning(message, properties = {}) { - (0, command_1.issueCommand)("warning", (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); - } - exports2.warning = warning; - function notice(message, properties = {}) { - (0, command_1.issueCommand)("notice", (0, utils_1.toCommandProperties)(properties), message instanceof Error ? message.toString() : message); - } - exports2.notice = notice; - function info(message) { - process.stdout.write(message + os.EOL); - } - exports2.info = info; - function startGroup(name) { - (0, command_1.issue)("group", name); - } - exports2.startGroup = startGroup; - function endGroup() { - (0, command_1.issue)("endgroup"); - } - exports2.endGroup = endGroup; - function group(name, fn) { - return __awaiter(this, void 0, void 0, function* () { - startGroup(name); - let result; - try { - result = yield fn(); - } finally { - endGroup(); - } - return result; - }); - } - exports2.group = group; - function saveState(name, value) { - const filePath = process.env["GITHUB_STATE"] || ""; - if (filePath) { - return (0, file_command_1.issueFileCommand)("STATE", (0, file_command_1.prepareKeyValueMessage)(name, value)); - } - (0, command_1.issueCommand)("save-state", { name }, (0, utils_1.toCommandValue)(value)); - } - exports2.saveState = saveState; - function getState(name) { - return process.env[`STATE_${name}`] || ""; - } - exports2.getState = getState; - function getIDToken(aud) { - return __awaiter(this, void 0, void 0, function* () { - return yield oidc_utils_1.OidcClient.getIDToken(aud); - }); - } - exports2.getIDToken = getIDToken; - var summary_1 = require_summary(); - Object.defineProperty(exports2, "summary", { enumerable: true, get: function() { - return summary_1.summary; - } }); - var summary_2 = require_summary(); - Object.defineProperty(exports2, "markdownSummary", { enumerable: true, get: function() { - return summary_2.markdownSummary; - } }); - var path_utils_1 = require_path_utils(); - Object.defineProperty(exports2, "toPosixPath", { enumerable: true, get: function() { - return path_utils_1.toPosixPath; - } }); - Object.defineProperty(exports2, "toWin32Path", { enumerable: true, get: function() { - return path_utils_1.toWin32Path; - } }); - Object.defineProperty(exports2, "toPlatformPath", { enumerable: true, get: function() { - return path_utils_1.toPlatformPath; - } }); - exports2.platform = __importStar(require_platform()); - } -}); - -// node_modules/@reporters/github/node_modules/escape-string-regexp/index.js -var require_escape_string_regexp = __commonJS({ - "node_modules/@reporters/github/node_modules/escape-string-regexp/index.js"(exports2, module2) { - "use strict"; - var matchOperatorsRegex = /[|\\{}()[\]^$+*?.-]/g; - module2.exports = (string) => { - if (typeof string !== "string") { - throw new TypeError("Expected a string"); - } - return string.replace(matchOperatorsRegex, "\\$&"); - }; - } -}); - -// node_modules/@reporters/github/node_modules/stack-utils/index.js -var require_stack_utils = __commonJS({ - "node_modules/@reporters/github/node_modules/stack-utils/index.js"(exports2, module2) { - "use strict"; - var escapeStringRegexp = require_escape_string_regexp(); - var cwd = typeof process === "object" && process && typeof process.cwd === "function" ? process.cwd() : "."; - var natives = [].concat( - require("module").builtinModules, - "bootstrap_node", - "node" - ).map((n) => new RegExp(`(?:\\((?:node:)?${n}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${n}(?:\\.js)?:\\d+:\\d+$)`)); - natives.push( - /\((?:node:)?internal\/[^:]+:\d+:\d+\)$/, - /\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/, - /\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/ - ); - var StackUtils2 = class { - constructor(opts) { - opts = { - ignoredPackages: [], - ...opts - }; - if ("internals" in opts === false) { - opts.internals = StackUtils2.nodeInternals(); - } - if ("cwd" in opts === false) { - opts.cwd = cwd; - } - this._cwd = opts.cwd.replace(/\\/g, "/"); - this._internals = [].concat( - opts.internals, - ignoredPackagesRegExp(opts.ignoredPackages) - ); - this._wrapCallSite = opts.wrapCallSite || false; - } - static nodeInternals() { - return [...natives]; - } - clean(stack2, indent = 0) { - indent = " ".repeat(indent); - if (!Array.isArray(stack2)) { - stack2 = stack2.split("\n"); - } - if (!/^\s*at /.test(stack2[0]) && /^\s*at /.test(stack2[1])) { - stack2 = stack2.slice(1); - } - let outdent = false; - let lastNonAtLine = null; - const result = []; - stack2.forEach((st) => { - st = st.replace(/\\/g, "/"); - if (this._internals.some((internal) => internal.test(st))) { - return; - } - const isAtLine = /^\s*at /.test(st); - if (outdent) { - st = st.trimEnd().replace(/^(\s+)at /, "$1"); - } else { - st = st.trim(); - if (isAtLine) { - st = st.slice(3); - } - } - st = st.replace(`${this._cwd}/`, ""); - if (st) { - if (isAtLine) { - if (lastNonAtLine) { - result.push(lastNonAtLine); - lastNonAtLine = null; - } - result.push(st); - } else { - outdent = true; - lastNonAtLine = st; - } - } - }); - return result.map((line) => `${indent}${line} -`).join(""); - } - captureString(limit, fn = this.captureString) { - if (typeof limit === "function") { - fn = limit; - limit = Infinity; - } - const { stackTraceLimit } = Error; - if (limit) { - Error.stackTraceLimit = limit; - } - const obj = {}; - Error.captureStackTrace(obj, fn); - const { stack: stack2 } = obj; - Error.stackTraceLimit = stackTraceLimit; - return this.clean(stack2); - } - capture(limit, fn = this.capture) { - if (typeof limit === "function") { - fn = limit; - limit = Infinity; - } - const { prepareStackTrace, stackTraceLimit } = Error; - Error.prepareStackTrace = (obj2, site) => { - if (this._wrapCallSite) { - return site.map(this._wrapCallSite); - } - return site; - }; - if (limit) { - Error.stackTraceLimit = limit; - } - const obj = {}; - Error.captureStackTrace(obj, fn); - const { stack: stack2 } = obj; - Object.assign(Error, { prepareStackTrace, stackTraceLimit }); - return stack2; - } - at(fn = this.at) { - const [site] = this.capture(1, fn); - if (!site) { - return {}; - } - const res = { - line: site.getLineNumber(), - column: site.getColumnNumber() - }; - setFile(res, site.getFileName(), this._cwd); - if (site.isConstructor()) { - Object.defineProperty(res, "constructor", { - value: true, - configurable: true - }); - } - if (site.isEval()) { - res.evalOrigin = site.getEvalOrigin(); - } - if (site.isNative()) { - res.native = true; - } - let typename; - try { - typename = site.getTypeName(); - } catch (_) { - } - if (typename && typename !== "Object" && typename !== "[object Object]") { - res.type = typename; - } - const fname = site.getFunctionName(); - if (fname) { - res.function = fname; - } - const meth = site.getMethodName(); - if (meth && fname !== meth) { - res.method = meth; - } - return res; - } - parseLine(line) { - const match = line && line.match(re); - if (!match) { - return null; - } - const ctor = match[1] === "new"; - let fname = match[2]; - const evalOrigin = match[3]; - const evalFile = match[4]; - const evalLine = Number(match[5]); - const evalCol = Number(match[6]); - let file = match[7]; - const lnum = match[8]; - const col = match[9]; - const native = match[10] === "native"; - const closeParen = match[11] === ")"; - let method; - const res = {}; - if (lnum) { - res.line = Number(lnum); - } - if (col) { - res.column = Number(col); - } - if (closeParen && file) { - let closes = 0; - for (let i = file.length - 1; i > 0; i--) { - if (file.charAt(i) === ")") { - closes++; - } else if (file.charAt(i) === "(" && file.charAt(i - 1) === " ") { - closes--; - if (closes === -1 && file.charAt(i - 1) === " ") { - const before = file.slice(0, i - 1); - const after = file.slice(i + 1); - file = after; - fname += ` (${before}`; - break; - } - } - } - } - if (fname) { - const methodMatch = fname.match(methodRe); - if (methodMatch) { - fname = methodMatch[1]; - method = methodMatch[2]; - } - } - setFile(res, file, this._cwd); - if (ctor) { - Object.defineProperty(res, "constructor", { - value: true, - configurable: true - }); - } - if (evalOrigin) { - res.evalOrigin = evalOrigin; - res.evalLine = evalLine; - res.evalColumn = evalCol; - res.evalFile = evalFile && evalFile.replace(/\\/g, "/"); - } - if (native) { - res.native = true; - } - if (fname) { - res.function = fname; - } - if (method && fname !== method) { - res.method = method; - } - return res; - } - }; - function setFile(result, filename, cwd2) { - if (filename) { - filename = filename.replace(/\\/g, "/"); - if (filename.startsWith(`${cwd2}/`)) { - filename = filename.slice(cwd2.length + 1); - } - result.file = filename; - } - } - function ignoredPackagesRegExp(ignoredPackages) { - if (ignoredPackages.length === 0) { - return []; - } - const packages = ignoredPackages.map((mod) => escapeStringRegexp(mod)); - return new RegExp(`[/\\\\]node_modules[/\\\\](?:${packages.join("|")})[/\\\\][^:]+:\\d+:\\d+`); - } - var re = new RegExp( - "^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$" - ); - var methodRe = /^(.*?) \[as (.*?)\]$/; - module2.exports = StackUtils2; - } -}); - -// node_modules/@reporters/github/index.js -var path = require("node:path"); -var { fileURLToPath } = require("node:url"); -var util = require("node:util"); -var { EOL } = require("node:os"); -var core = require_core(); -var StackUtils = require_stack_utils(); -var WORKSPACE = process.env.GITHUB_WORKSPACE ?? ""; -var stack = new StackUtils({ cwd: WORKSPACE, internals: StackUtils.nodeInternals() }); -var isFile = (name) => name?.startsWith(WORKSPACE); -var getRelativeFilePath = (name) => isFile(name) ? path.relative(WORKSPACE, name) : null; -function getFilePath(fileName) { - if (fileName.startsWith("file://")) { - return getRelativeFilePath(fileURLToPath(fileName)); - } - if (!path.isAbsolute(fileName)) { - return getRelativeFilePath(path.resolve(fileName) ?? ""); - } - return getRelativeFilePath(fileName); -} -var parseStack = (error, file) => { - const err = error?.code === "ERR_TEST_FAILURE" ? error?.cause : error; - const stackLines = (err?.stack ?? "").split(/\r?\n/); - const line = stackLines.find((l) => l.includes(file)) ?? stackLines[0]; - return line ? stack.parseLine(line) : null; -}; -var DIAGNOSTIC_KEYS = { - tests: "Total Tests", - suites: "Suites \u{1F4C2}", - pass: "Passed \u2705", - fail: "Failed \u274C", - cancelled: "Canceled \u{1F6AB}", - skipped: "Skipped \u23ED\uFE0F", - todo: "Todo \u{1F4DD}", - duration_ms: "Duration \u{1F550}" -}; -var DIAGNOSTIC_VALUES = { - duration_ms: (value) => `${Number(value).toFixed(3)}ms` -}; -function extractLocation(data) { - let { line, column, file } = data; - const error = data.details?.error; - file = getFilePath(file); - if (error) { - const errorLocation = parseStack(error, file); - file = getFilePath(errorLocation?.file ?? file) ?? file; - line = errorLocation?.line ?? line; - column = errorLocation?.column ?? column; - } - return { file, startLine: line, startColumn: column }; -} -module.exports = async function githubReporter(source) { - if (!process.env.GITHUB_ACTIONS) { - for await (const _ of source) - ; - return; - } - const counter = { pass: 0, fail: 0 }; - const diagnostics = []; - for await (const event of source) { - switch (event.type) { - case "test:start": - core.debug(`starting to run ${event.data.name}`); - break; - case "test:pass": - counter.pass += 1; - core.debug(`completed running ${event.data.name}`); - break; - case "test:fail": { - const error = event.data.details?.error; - if (error?.code === "ERR_TEST_FAILURE" && error?.failureType === "subtestsFailed") { - break; - } - core.error(util.inspect(error, { colors: false, breakLength: Infinity }), { - ...extractLocation(event.data), - title: event.data.name - }); - counter.fail += 1; - break; - } - case "test:diagnostic": - if (event.data.file === void 0 || event.data.line === void 0 || event.data.column === void 0) { - diagnostics.push(event.data.message); - } else { - core.notice(event.data.message, extractLocation(event.data)); - } - break; - default: - break; - } - } - const formattedDiagnostics = diagnostics.map((d) => { - const [key, ...rest] = d.split(" "); - const value = rest.join(" "); - return [ - DIAGNOSTIC_KEYS[key] ?? key, - DIAGNOSTIC_VALUES[key] ? DIAGNOSTIC_VALUES[key](value) : value - ]; - }); - core.startGroup(`Test results (${formattedDiagnostics.find(([key]) => key === DIAGNOSTIC_KEYS.pass)?.[1] ?? counter.pass} passed, ${formattedDiagnostics.find(([key]) => key === DIAGNOSTIC_KEYS.fail)?.[1] ?? counter.fail} failed)`); - core.notice(formattedDiagnostics.map((d) => d.join(": ")).join(EOL)); - core.endGroup(); - if (process.env.GITHUB_STEP_SUMMARY) { - await core.summary.addHeading("Test Results").addTable(formattedDiagnostics).write(); - } -}; -/*! Bundled license information: - -undici/lib/fetch/body.js: - (*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *) - -undici/lib/websocket/frame.js: - (*! ws. MIT License. Einar Otto Stangvik <einaros@gmail.com> *) -*/ diff --git a/tools/github_reporter/package.json b/tools/github_reporter/package.json deleted file mode 100644 index d9e5273b7ce46e..00000000000000 --- a/tools/github_reporter/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "@reporters/github", - "version": "1.7.2", - "description": "A github actions reporter for `node:test`", - "type": "commonjs", - "keywords": [ - "github actions", - "node:test", - "test", - "reporter", - "reporters" - ], - "dependencies": { - "@actions/core": "^1.10.0", - "stack-utils": "^2.0.6" - }, - "files": [ - "./index.js" - ], - "scripts": { - "test": "node --test-reporter=spec --test-reporter-destination=stdout --test-reporter=./index.js --test-reporter-destination=stdout --test" - }, - "bugs": { - "url": "https://github.com/MoLow/reporters/issues" - }, - "main": "index.js", - "homepage": "https://github.com/MoLow/reporters/tree/main/packages/github", - "repository": "https://github.com/MoLow/reporters.git", - "author": "Moshe Atlow", - "license": "MIT" -} diff --git a/tools/inspector_protocol/.clang-format b/tools/inspector_protocol/.clang-format deleted file mode 100644 index fcbc9c321a5c61..00000000000000 --- a/tools/inspector_protocol/.clang-format +++ /dev/null @@ -1,36 +0,0 @@ -# Defines the Chromium style for automatic reformatting. -# http://clang.llvm.org/docs/ClangFormatStyleOptions.html -BasedOnStyle: Chromium -# This defaults to 'Auto'. Explicitly set it for a while, so that -# 'vector<vector<int> >' in existing files gets formatted to -# 'vector<vector<int>>'. ('Auto' means that clang-format will only use -# 'int>>' if the file already contains at least one such instance.) -Standard: Cpp11 - -# Make sure code like: -# IPC_BEGIN_MESSAGE_MAP() -# IPC_MESSAGE_HANDLER(WidgetHostViewHost_Update, OnUpdate) -# IPC_END_MESSAGE_MAP() -# gets correctly indented. -MacroBlockBegin: "^\ -BEGIN_MSG_MAP|\ -BEGIN_MSG_MAP_EX|\ -BEGIN_SAFE_MSG_MAP_EX|\ -CR_BEGIN_MSG_MAP_EX|\ -IPC_BEGIN_MESSAGE_MAP|\ -IPC_BEGIN_MESSAGE_MAP_WITH_PARAM|\ -IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN|\ -IPC_STRUCT_BEGIN|\ -IPC_STRUCT_BEGIN_WITH_PARENT|\ -IPC_STRUCT_TRAITS_BEGIN|\ -POLPARAMS_BEGIN|\ -PPAPI_BEGIN_MESSAGE_MAP$" -MacroBlockEnd: "^\ -CR_END_MSG_MAP|\ -END_MSG_MAP|\ -IPC_END_MESSAGE_MAP|\ -IPC_PROTOBUF_MESSAGE_TRAITS_END|\ -IPC_STRUCT_END|\ -IPC_STRUCT_TRAITS_END|\ -POLPARAMS_END|\ -PPAPI_END_MESSAGE_MAP$" diff --git a/tools/inspector_protocol/OWNERS b/tools/inspector_protocol/OWNERS deleted file mode 100644 index 8d0b6d90cb233b..00000000000000 --- a/tools/inspector_protocol/OWNERS +++ /dev/null @@ -1,8 +0,0 @@ -set noparent - -alph@chromium.org -caseq@chromium.org -dgozman@chromium.org -kozyatinskiy@chromium.org -pfeldman@chromium.org -yangguo@chromium.org diff --git a/tools/inspector_protocol/README.md b/tools/inspector_protocol/README.md index da3f93f3f3b49e..9b1e3263a86bc3 100644 --- a/tools/inspector_protocol/README.md +++ b/tools/inspector_protocol/README.md @@ -1,33 +1,6 @@ # Chromium inspector (devtools) protocol -This package contains code generators and templates for the Chromium -inspector protocol. +This directory contains scripts to update the [Chromium inspector protocol][] +to local at `deps/inspector_protocol`. -The canonical location of this package is at -https://chromium.googlesource.com/deps/inspector_protocol/ - -In the Chromium tree, it's rolled into -https://cs.chromium.org/chromium/src/third_party/inspector_protocol/ - -In the V8 tree, it's rolled into -https://cs.chromium.org/chromium/src/v8/third_party/inspector_protocol/ - -See also [Contributing to Chrome Devtools Protocol](https://docs.google.com/document/d/1c-COD2kaK__5iMM5SEx-PzNA7HFmgttcYfOHHX0HaOM/edit). - -We're working on enabling standalone builds for parts of this package for -testing and development, please feel free to ignore this for now. -But, if you're familiar with -[Chromium's development process](https://www.chromium.org/developers/contributing-code) -and have the depot_tools installed, you may use these commands -to fetch the package (and dependencies) and build and run the tests: - - fetch inspector_protocol - cd src - gn gen out/Release - ninja -C out/Release json_parser_test - out/Release/json_parser_test - -You'll probably also need to install g++, since Clang uses this to find the -standard C++ headers. E.g., - - sudo apt-get install g++-8 +[Chromium inspector protocol]: https://chromium.googlesource.com/deps/inspector_protocol/ diff --git a/tools/inspector_protocol/code_generator.py b/tools/inspector_protocol/code_generator.py deleted file mode 100755 index a6e163c6fe911f..00000000000000 --- a/tools/inspector_protocol/code_generator.py +++ /dev/null @@ -1,700 +0,0 @@ -#!/usr/bin/env python -# Copyright 2016 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import os.path -import sys -import argparse -import collections -import functools -import re -import copy -try: - import json -except ImportError: - import simplejson as json - -import pdl - -try: - unicode -except NameError: - # Define unicode for Py3 - def unicode(s, *_): - return s - -# Path handling for libraries and templates -# Paths have to be normalized because Jinja uses the exact template path to -# determine the hash used in the cache filename, and we need a pre-caching step -# to be concurrency-safe. Use absolute path because __file__ is absolute if -# module is imported, and relative if executed directly. -# If paths differ between pre-caching and individual file compilation, the cache -# is regenerated, which causes a race condition and breaks concurrent build, -# since some compile processes will try to read the partially written cache. -module_path, module_filename = os.path.split(os.path.realpath(__file__)) - -def read_config(): - # pylint: disable=W0703 - def json_to_object(data, output_base): - def json_object_hook(object_dict): - items = [(k, os.path.join(output_base, v) if k == "path" else v) for (k, v) in object_dict.items()] - items = [(k, os.path.join(output_base, v) if k == "output" else v) for (k, v) in items] - keys, values = list(zip(*items)) - # 'async' is a python 3.7 keyword. Don't use namedtuple(rename=True) - # because that only renames it in python 3 but not python 2. - keys = tuple('async_' if k == 'async' else k for k in keys) - return collections.namedtuple('X', keys)(*values) - return json.loads(data, object_hook=json_object_hook) - - def init_defaults(config_tuple, path, defaults): - keys = list(config_tuple._fields) # pylint: disable=E1101 - values = [getattr(config_tuple, k) for k in keys] - for i in range(len(keys)): - if hasattr(values[i], "_fields"): - values[i] = init_defaults(values[i], path + "." + keys[i], defaults) - for optional in defaults: - if optional.find(path + ".") != 0: - continue - optional_key = optional[len(path) + 1:] - if optional_key.find(".") == -1 and optional_key not in keys: - keys.append(optional_key) - values.append(defaults[optional]) - return collections.namedtuple('X', keys)(*values) - - try: - cmdline_parser = argparse.ArgumentParser() - cmdline_parser.add_argument("--output_base", type=unicode, required=True) - cmdline_parser.add_argument("--jinja_dir", type=unicode, required=True) - cmdline_parser.add_argument("--config", type=unicode, required=True) - cmdline_parser.add_argument("--config_value", default=[], action="append") - arg_options = cmdline_parser.parse_args() - jinja_dir = arg_options.jinja_dir - output_base = arg_options.output_base - config_file = arg_options.config - config_values = arg_options.config_value - except Exception: - # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html - exc = sys.exc_info()[1] - sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc) - exit(1) - - try: - config_json_file = open(config_file, "r") - config_json_string = config_json_file.read() - config_partial = json_to_object(config_json_string, output_base) - config_json_file.close() - defaults = { - ".use_snake_file_names": False, - ".use_title_case_methods": False, - ".imported": False, - ".imported.export_macro": "", - ".imported.export_header": False, - ".imported.header": False, - ".imported.package": False, - ".imported.options": False, - ".protocol.export_macro": "", - ".protocol.export_header": False, - ".protocol.options": False, - ".protocol.file_name_prefix": "", - ".exported": False, - ".exported.export_macro": "", - ".exported.export_header": False, - ".lib": False, - ".lib.export_macro": "", - ".lib.export_header": False, - # The encoding lib consists of encoding/encoding.h and - # encoding/encoding.cc in its subdirectory, which binaries - # may link / depend on, instead of relying on the - # JINJA2 templates lib/encoding_{h,cc}.template. - # In that case, |header| identifies the include file - # and |namespace| is the namespace it's using. Usually - # inspector_protocol_encoding but for v8's copy it's - # v8_inspector_protocol_encoding. - # TODO(johannes): Migrate away from lib/encoding_{h,cc}.template - # in favor of this. - ".encoding_lib": { "header": "", "namespace": []}, - } - for key_value in config_values: - parts = key_value.split("=") - if len(parts) == 2: - defaults["." + parts[0]] = parts[1] - return (jinja_dir, config_file, init_defaults(config_partial, "", defaults)) - except Exception: - # Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html - exc = sys.exc_info()[1] - sys.stderr.write("Failed to parse config file: %s\n\n" % exc) - exit(1) - - -# ---- Begin of utilities exposed to generator ---- - - -def to_title_case(name): - return name[:1].upper() + name[1:] - - -def dash_to_camelcase(word): - prefix = "" - if word[0] == "-": - prefix = "Negative" - word = word[1:] - return prefix + "".join(to_title_case(x) or "-" for x in word.split("-")) - - -def to_snake_case(name): - return re.sub(r"([a-z0-9])([A-Z])", r"\1_\2", name, sys.maxsize).lower() - - -def to_method_case(config, name): - if config.use_title_case_methods: - return to_title_case(name) - return name - - -def join_arrays(dict, keys): - result = [] - for key in keys: - if key in dict: - result += dict[key] - return result - - -def format_include(config, header, file_name=None): - if file_name is not None: - header = header + "/" + file_name + ".h" - header = "\"" + header + "\"" if header[0] not in "<\"" else header - if config.use_snake_file_names: - header = to_snake_case(header) - return header - - -def format_domain_include(config, header, file_name): - return format_include(config, header, config.protocol.file_name_prefix + file_name) - - -def to_file_name(config, file_name): - if config.use_snake_file_names: - return to_snake_case(file_name).replace(".cpp", ".cc") - return file_name - - -# ---- End of utilities exposed to generator ---- - - -def initialize_jinja_env(jinja_dir, cache_dir, config): - # pylint: disable=F0401 - sys.path.insert(1, os.path.abspath(jinja_dir)) - import jinja2 - - jinja_env = jinja2.Environment( - loader=jinja2.FileSystemLoader(module_path), - # Bytecode cache is not concurrency-safe unless pre-cached: - # if pre-cached this is read-only, but writing creates a race condition. - bytecode_cache=jinja2.FileSystemBytecodeCache(cache_dir), - keep_trailing_newline=True, # newline-terminate generated files - lstrip_blocks=True, # so can indent control flow tags - trim_blocks=True) - jinja_env.filters.update({"to_title_case": to_title_case, "dash_to_camelcase": dash_to_camelcase, "to_method_case": functools.partial(to_method_case, config)}) - jinja_env.add_extension("jinja2.ext.loopcontrols") - return jinja_env - - -def create_imported_type_definition(domain_name, type, imported_namespace): - # pylint: disable=W0622 - return { - "return_type": "std::unique_ptr<%s::%s::API::%s>" % (imported_namespace, domain_name, type["id"]), - "pass_type": "std::unique_ptr<%s::%s::API::%s>" % (imported_namespace, domain_name, type["id"]), - "to_raw_type": "%s.get()", - "to_pass_type": "std::move(%s)", - "to_rvalue": "std::move(%s)", - "type": "std::unique_ptr<%s::%s::API::%s>" % (imported_namespace, domain_name, type["id"]), - "raw_type": "%s::%s::API::%s" % (imported_namespace, domain_name, type["id"]), - "raw_pass_type": "%s::%s::API::%s*" % (imported_namespace, domain_name, type["id"]), - "raw_return_type": "%s::%s::API::%s*" % (imported_namespace, domain_name, type["id"]), - } - - -def create_user_type_definition(domain_name, type): - # pylint: disable=W0622 - return { - "return_type": "std::unique_ptr<protocol::%s::%s>" % (domain_name, type["id"]), - "pass_type": "std::unique_ptr<protocol::%s::%s>" % (domain_name, type["id"]), - "to_raw_type": "%s.get()", - "to_pass_type": "std::move(%s)", - "to_rvalue": "std::move(%s)", - "type": "std::unique_ptr<protocol::%s::%s>" % (domain_name, type["id"]), - "raw_type": "protocol::%s::%s" % (domain_name, type["id"]), - "raw_pass_type": "protocol::%s::%s*" % (domain_name, type["id"]), - "raw_return_type": "protocol::%s::%s*" % (domain_name, type["id"]), - } - - -def create_object_type_definition(): - # pylint: disable=W0622 - return { - "return_type": "std::unique_ptr<protocol::DictionaryValue>", - "pass_type": "std::unique_ptr<protocol::DictionaryValue>", - "to_raw_type": "%s.get()", - "to_pass_type": "std::move(%s)", - "to_rvalue": "std::move(%s)", - "type": "std::unique_ptr<protocol::DictionaryValue>", - "raw_type": "protocol::DictionaryValue", - "raw_pass_type": "protocol::DictionaryValue*", - "raw_return_type": "protocol::DictionaryValue*", - } - - -def create_any_type_definition(): - # pylint: disable=W0622 - return { - "return_type": "std::unique_ptr<protocol::Value>", - "pass_type": "std::unique_ptr<protocol::Value>", - "to_raw_type": "%s.get()", - "to_pass_type": "std::move(%s)", - "to_rvalue": "std::move(%s)", - "type": "std::unique_ptr<protocol::Value>", - "raw_type": "protocol::Value", - "raw_pass_type": "protocol::Value*", - "raw_return_type": "protocol::Value*", - } - - -def create_string_type_definition(): - # pylint: disable=W0622 - return { - "return_type": "String", - "pass_type": "const String&", - "to_pass_type": "%s", - "to_raw_type": "%s", - "to_rvalue": "%s", - "type": "String", - "raw_type": "String", - "raw_pass_type": "const String&", - "raw_return_type": "String", - } - - -def create_binary_type_definition(): - # pylint: disable=W0622 - return { - "return_type": "Binary", - "pass_type": "const Binary&", - "to_pass_type": "%s", - "to_raw_type": "%s", - "to_rvalue": "%s", - "type": "Binary", - "raw_type": "Binary", - "raw_pass_type": "const Binary&", - "raw_return_type": "Binary", - } - - -def create_primitive_type_definition(type): - # pylint: disable=W0622 - typedefs = { - "number": "double", - "integer": "int", - "boolean": "bool" - } - defaults = { - "number": "0", - "integer": "0", - "boolean": "false" - } - jsontypes = { - "number": "TypeDouble", - "integer": "TypeInteger", - "boolean": "TypeBoolean", - } - return { - "return_type": typedefs[type], - "pass_type": typedefs[type], - "to_pass_type": "%s", - "to_raw_type": "%s", - "to_rvalue": "%s", - "type": typedefs[type], - "raw_type": typedefs[type], - "raw_pass_type": typedefs[type], - "raw_return_type": typedefs[type], - "default_value": defaults[type] - } - - -def wrap_array_definition(type): - # pylint: disable=W0622 - return { - "return_type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], - "pass_type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], - "to_raw_type": "%s.get()", - "to_pass_type": "std::move(%s)", - "to_rvalue": "std::move(%s)", - "type": "std::unique_ptr<protocol::Array<%s>>" % type["raw_type"], - "raw_type": "protocol::Array<%s>" % type["raw_type"], - "raw_pass_type": "protocol::Array<%s>*" % type["raw_type"], - "raw_return_type": "protocol::Array<%s>*" % type["raw_type"], - "out_type": "protocol::Array<%s>&" % type["raw_type"], - } - - -class Protocol(object): - def __init__(self, config): - self.config = config - self.json_api = {"domains": []} - self.imported_domains = [] - self.exported_domains = [] - self.generate_domains = self.read_protocol_file(config.protocol.path) - - if config.protocol.options: - self.generate_domains = [rule.domain for rule in config.protocol.options] - self.exported_domains = [rule.domain for rule in config.protocol.options if hasattr(rule, "exported")] - - if config.imported: - self.imported_domains = self.read_protocol_file(config.imported.path) - if config.imported.options: - self.imported_domains = [rule.domain for rule in config.imported.options] - - self.patch_full_qualified_refs() - self.create_notification_types() - self.create_type_definitions() - self.generate_used_types() - - - def read_protocol_file(self, file_name): - input_file = open(file_name, "r") - parsed_json = pdl.loads(input_file.read(), file_name) - input_file.close() - version = parsed_json["version"]["major"] + "." + parsed_json["version"]["minor"] - domains = [] - for domain in parsed_json["domains"]: - domains.append(domain["domain"]) - domain["version"] = version - self.json_api["domains"] += parsed_json["domains"] - return domains - - - def patch_full_qualified_refs(self): - def patch_full_qualified_refs_in_domain(json, domain_name): - if isinstance(json, list): - for item in json: - patch_full_qualified_refs_in_domain(item, domain_name) - if not isinstance(json, dict): - return - for key in json: - if key == "type" and json[key] == "string": - json[key] = domain_name + ".string" - if key != "$ref": - patch_full_qualified_refs_in_domain(json[key], domain_name) - continue - if json["$ref"].find(".") == -1: - json["$ref"] = domain_name + "." + json["$ref"] - return - - for domain in self.json_api["domains"]: - patch_full_qualified_refs_in_domain(domain, domain["domain"]) - - - def all_references(self, json): - refs = set() - if isinstance(json, list): - for item in json: - refs |= self.all_references(item) - if not isinstance(json, dict): - return refs - for key in json: - if key != "$ref": - refs |= self.all_references(json[key]) - else: - refs.add(json["$ref"]) - return refs - - def generate_used_types(self): - all_refs = set() - for domain in self.json_api["domains"]: - domain_name = domain["domain"] - if "commands" in domain: - for command in domain["commands"]: - if self.generate_command(domain_name, command["name"]): - all_refs |= self.all_references(command) - if "events" in domain: - for event in domain["events"]: - if self.generate_event(domain_name, event["name"]): - all_refs |= self.all_references(event) - all_refs.add(domain_name + "." + to_title_case(event["name"]) + "Notification") - - dependencies = self.generate_type_dependencies() - queue = set(all_refs) - while len(queue): - ref = queue.pop() - if ref in dependencies: - queue |= dependencies[ref] - all_refs - all_refs |= dependencies[ref] - self.used_types = all_refs - - - def generate_type_dependencies(self): - dependencies = dict() - domains_with_types = (x for x in self.json_api["domains"] if "types" in x) - for domain in domains_with_types: - domain_name = domain["domain"] - for type in domain["types"]: - related_types = self.all_references(type) - if len(related_types): - dependencies[domain_name + "." + type["id"]] = related_types - return dependencies - - - def create_notification_types(self): - for domain in self.json_api["domains"]: - if "events" in domain: - for event in domain["events"]: - event_type = dict() - event_type["description"] = "Wrapper for notification params" - event_type["type"] = "object" - event_type["id"] = to_title_case(event["name"]) + "Notification" - if "parameters" in event: - event_type["properties"] = copy.deepcopy(event["parameters"]) - if "types" not in domain: - domain["types"] = list() - domain["types"].append(event_type) - - - def create_type_definitions(self): - imported_namespace = "::".join(self.config.imported.namespace) if self.config.imported else "" - self.type_definitions = {} - self.type_definitions["number"] = create_primitive_type_definition("number") - self.type_definitions["integer"] = create_primitive_type_definition("integer") - self.type_definitions["boolean"] = create_primitive_type_definition("boolean") - self.type_definitions["object"] = create_object_type_definition() - self.type_definitions["any"] = create_any_type_definition() - self.type_definitions["binary"] = create_binary_type_definition() - for domain in self.json_api["domains"]: - self.type_definitions[domain["domain"] + ".string"] = create_string_type_definition() - self.type_definitions[domain["domain"] + ".binary"] = create_binary_type_definition() - if not ("types" in domain): - continue - for type in domain["types"]: - type_name = domain["domain"] + "." + type["id"] - if type["type"] == "object" and domain["domain"] in self.imported_domains: - self.type_definitions[type_name] = create_imported_type_definition(domain["domain"], type, imported_namespace) - elif type["type"] == "object": - self.type_definitions[type_name] = create_user_type_definition(domain["domain"], type) - elif type["type"] == "array": - self.type_definitions[type_name] = self.resolve_type(type) - elif type["type"] == domain["domain"] + ".string": - self.type_definitions[type_name] = create_string_type_definition() - elif type["type"] == domain["domain"] + ".binary": - self.type_definitions[type_name] = create_binary_type_definition() - else: - self.type_definitions[type_name] = create_primitive_type_definition(type["type"]) - - - def check_options(self, options, domain, name, include_attr, exclude_attr, default): - for rule in options: - if rule.domain != domain: - continue - if include_attr and hasattr(rule, include_attr): - return name in getattr(rule, include_attr) - if exclude_attr and hasattr(rule, exclude_attr): - return name not in getattr(rule, exclude_attr) - return default - return False - - - # ---- Begin of methods exposed to generator - - - def type_definition(self, name): - return self.type_definitions[name] - - - def resolve_type(self, prop): - if "$ref" in prop: - return self.type_definitions[prop["$ref"]] - if prop["type"] == "array": - return wrap_array_definition(self.resolve_type(prop["items"])) - return self.type_definitions[prop["type"]] - - - def generate_command(self, domain, command): - if not self.config.protocol.options: - return domain in self.generate_domains - return self.check_options(self.config.protocol.options, domain, command, "include", "exclude", True) - - - def generate_event(self, domain, event): - if not self.config.protocol.options: - return domain in self.generate_domains - return self.check_options(self.config.protocol.options, domain, event, "include_events", "exclude_events", True) - - - def generate_type(self, domain, typename): - return domain + "." + typename in self.used_types - - - def is_async_command(self, domain, command): - if not self.config.protocol.options: - return False - return self.check_options(self.config.protocol.options, domain, command, "async_", None, False) - - - def is_exported(self, domain, name): - if not self.config.protocol.options: - return False - return self.check_options(self.config.protocol.options, domain, name, "exported", None, False) - - - def is_imported(self, domain, name): - if not self.config.imported: - return False - if not self.config.imported.options: - return domain in self.imported_domains - return self.check_options(self.config.imported.options, domain, name, "imported", None, False) - - - def is_exported_domain(self, domain): - return domain in self.exported_domains - - - def generate_disable(self, domain): - if "commands" not in domain: - return True - for command in domain["commands"]: - if command["name"] == "disable" and self.generate_command(domain["domain"], "disable"): - return False - return True - - - def is_imported_dependency(self, domain): - return domain in self.generate_domains or domain in self.imported_domains - - -def main(): - jinja_dir, config_file, config = read_config() - - protocol = Protocol(config) - - if not config.exported and len(protocol.exported_domains): - sys.stderr.write("Domains [%s] are exported, but config is missing export entry\n\n" % ", ".join(protocol.exported_domains)) - exit(1) - - if not os.path.exists(config.protocol.output): - os.mkdir(config.protocol.output) - if len(protocol.exported_domains) and not os.path.exists(config.exported.output): - os.mkdir(config.exported.output) - jinja_env = initialize_jinja_env(jinja_dir, config.protocol.output, config) - - inputs = [] - inputs.append(__file__) - inputs.append(config_file) - inputs.append(config.protocol.path) - if config.imported: - inputs.append(config.imported.path) - templates_dir = os.path.join(module_path, "templates") - inputs.append(os.path.join(templates_dir, "TypeBuilder_h.template")) - inputs.append(os.path.join(templates_dir, "TypeBuilder_cpp.template")) - inputs.append(os.path.join(templates_dir, "Exported_h.template")) - inputs.append(os.path.join(templates_dir, "Imported_h.template")) - - h_template = jinja_env.get_template("templates/TypeBuilder_h.template") - cpp_template = jinja_env.get_template("templates/TypeBuilder_cpp.template") - exported_template = jinja_env.get_template("templates/Exported_h.template") - imported_template = jinja_env.get_template("templates/Imported_h.template") - - outputs = dict() - - for domain in protocol.json_api["domains"]: - class_name = domain["domain"] - file_name = config.protocol.file_name_prefix + class_name - template_context = { - "protocol": protocol, - "config": config, - "domain": domain, - "join_arrays": join_arrays, - "format_include": functools.partial(format_include, config), - "format_domain_include": functools.partial(format_domain_include, config), - } - - if domain["domain"] in protocol.generate_domains: - outputs[os.path.join(config.protocol.output, to_file_name(config, file_name + ".h"))] = h_template.render(template_context) - outputs[os.path.join(config.protocol.output, to_file_name(config, file_name + ".cpp"))] = cpp_template.render(template_context) - if domain["domain"] in protocol.exported_domains: - outputs[os.path.join(config.exported.output, to_file_name(config, file_name + ".h"))] = exported_template.render(template_context) - if domain["domain"] in protocol.imported_domains: - outputs[os.path.join(config.protocol.output, to_file_name(config, file_name + ".h"))] = imported_template.render(template_context) - - if config.lib: - template_context = { - "config": config, - "format_include": functools.partial(format_include, config), - } - - lib_templates_dir = os.path.join(module_path, "lib") - # Note these should be sorted in the right order. - # TODO(dgozman): sort them programmatically based on commented includes. - protocol_h_templates = [ - "ErrorSupport_h.template", - "Values_h.template", - "Object_h.template", - "ValueConversions_h.template", - "Maybe_h.template", - "DispatcherBase_h.template", - "Parser_h.template", - "encoding_h.template", - ] - - protocol_cpp_templates = [ - "Protocol_cpp.template", - "ErrorSupport_cpp.template", - "Values_cpp.template", - "Object_cpp.template", - "DispatcherBase_cpp.template", - "Parser_cpp.template", - "encoding_cpp.template", - ] - - forward_h_templates = [ - "Forward_h.template", - "Allocator_h.template", - "FrontendChannel_h.template", - ] - - base_string_adapter_h_templates = [ - "base_string_adapter_h.template", - ] - - base_string_adapter_cc_templates = [ - "base_string_adapter_cc.template", - ] - - def generate_lib_file(file_name, template_files): - parts = [] - for template_file in template_files: - inputs.append(os.path.join(lib_templates_dir, template_file)) - template = jinja_env.get_template("lib/" + template_file) - parts.append(template.render(template_context)) - outputs[file_name] = "\n\n".join(parts) - - generate_lib_file(os.path.join(config.lib.output, to_file_name(config, "Forward.h")), forward_h_templates) - generate_lib_file(os.path.join(config.lib.output, to_file_name(config, "Protocol.h")), protocol_h_templates) - generate_lib_file(os.path.join(config.lib.output, to_file_name(config, "Protocol.cpp")), protocol_cpp_templates) - generate_lib_file(os.path.join(config.lib.output, to_file_name(config, "base_string_adapter.h")), base_string_adapter_h_templates) - generate_lib_file(os.path.join(config.lib.output, to_file_name(config, "base_string_adapter.cc")), base_string_adapter_cc_templates) - - # Make gyp / make generatos happy, otherwise make rebuilds world. - inputs_ts = max(map(os.path.getmtime, inputs)) - up_to_date = True - for output_file in outputs.keys(): - if not os.path.exists(output_file) or os.path.getmtime(output_file) < inputs_ts: - up_to_date = False - break - if up_to_date: - sys.exit() - - for file_name, content in outputs.items(): - out_file = open(file_name, "w") - out_file.write(content) - out_file.close() - - -main() diff --git a/tools/inspector_protocol/codereview.settings b/tools/inspector_protocol/codereview.settings deleted file mode 100644 index 6ac8580b4ccd9f..00000000000000 --- a/tools/inspector_protocol/codereview.settings +++ /dev/null @@ -1,6 +0,0 @@ -# This file is used by git-cl to get repository specific information. -CC_LIST: chromium-reviews@chromium.org -CODE_REVIEW_SERVER: codereview.chromium.org -GERRIT_HOST: True -PROJECT: inspector_protocol -VIEW_VC: https://chromium.googlesource.com/deps/inspector_protocol/+/ diff --git a/tools/inspector_protocol/concatenate_protocols.py b/tools/inspector_protocol/concatenate_protocols.py deleted file mode 100755 index e9f448efe72702..00000000000000 --- a/tools/inspector_protocol/concatenate_protocols.py +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env python -# Copyright 2016 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import os.path -import sys - -try: - import json -except ImportError: - import simplejson as json - -import pdl - -def main(argv): - if len(argv) < 1: - sys.stderr.write("Usage: %s <protocol-1> [<protocol-2> [, <protocol-3>...]] <output-file>\n" % sys.argv[0]) - return 1 - - domains = [] - version = None - for protocol in argv[:-1]: - file_name = os.path.normpath(protocol) - if not os.path.isfile(file_name): - sys.stderr.write("Cannot find %s\n" % file_name) - return 1 - input_file = open(file_name, "r") - parsed_json = pdl.loads(input_file.read(), file_name) - domains += parsed_json["domains"] - version = parsed_json["version"] - - output_file = open(argv[-1], "w") - json.dump({"version": version, "domains": domains}, output_file, indent=4, sort_keys=False, separators=(',', ': ')) - output_file.close() - - -if __name__ == '__main__': - sys.exit(main(sys.argv[1:])) diff --git a/tools/inspector_protocol/encoding/encoding.cc b/tools/inspector_protocol/encoding/encoding.cc deleted file mode 100644 index f7e933e41afac5..00000000000000 --- a/tools/inspector_protocol/encoding/encoding.cc +++ /dev/null @@ -1,2190 +0,0 @@ -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "encoding.h" - -#include <algorithm> -#include <cassert> -#include <cmath> -#include <cstring> -#include <limits> -#include <stack> - -namespace v8_inspector_protocol_encoding { -// ============================================================================= -// Status and Error codes -// ============================================================================= - -std::string Status::ToASCIIString() const { - switch (error) { - case Error::OK: - return "OK"; - case Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS: - return ToASCIIString("JSON: unprocessed input remains"); - case Error::JSON_PARSER_STACK_LIMIT_EXCEEDED: - return ToASCIIString("JSON: stack limit exceeded"); - case Error::JSON_PARSER_NO_INPUT: - return ToASCIIString("JSON: no input"); - case Error::JSON_PARSER_INVALID_TOKEN: - return ToASCIIString("JSON: invalid token"); - case Error::JSON_PARSER_INVALID_NUMBER: - return ToASCIIString("JSON: invalid number"); - case Error::JSON_PARSER_INVALID_STRING: - return ToASCIIString("JSON: invalid string"); - case Error::JSON_PARSER_UNEXPECTED_ARRAY_END: - return ToASCIIString("JSON: unexpected array end"); - case Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED: - return ToASCIIString("JSON: comma or array end expected"); - case Error::JSON_PARSER_STRING_LITERAL_EXPECTED: - return ToASCIIString("JSON: string literal expected"); - case Error::JSON_PARSER_COLON_EXPECTED: - return ToASCIIString("JSON: colon expected"); - case Error::JSON_PARSER_UNEXPECTED_MAP_END: - return ToASCIIString("JSON: unexpected map end"); - case Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED: - return ToASCIIString("JSON: comma or map end expected"); - case Error::JSON_PARSER_VALUE_EXPECTED: - return ToASCIIString("JSON: value expected"); - - case Error::CBOR_INVALID_INT32: - return ToASCIIString("CBOR: invalid int32"); - case Error::CBOR_INVALID_DOUBLE: - return ToASCIIString("CBOR: invalid double"); - case Error::CBOR_INVALID_ENVELOPE: - return ToASCIIString("CBOR: invalid envelope"); - case Error::CBOR_INVALID_STRING8: - return ToASCIIString("CBOR: invalid string8"); - case Error::CBOR_INVALID_STRING16: - return ToASCIIString("CBOR: invalid string16"); - case Error::CBOR_INVALID_BINARY: - return ToASCIIString("CBOR: invalid binary"); - case Error::CBOR_UNSUPPORTED_VALUE: - return ToASCIIString("CBOR: unsupported value"); - case Error::CBOR_NO_INPUT: - return ToASCIIString("CBOR: no input"); - case Error::CBOR_INVALID_START_BYTE: - return ToASCIIString("CBOR: invalid start byte"); - case Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE: - return ToASCIIString("CBOR: unexpected eof expected value"); - case Error::CBOR_UNEXPECTED_EOF_IN_ARRAY: - return ToASCIIString("CBOR: unexpected eof in array"); - case Error::CBOR_UNEXPECTED_EOF_IN_MAP: - return ToASCIIString("CBOR: unexpected eof in map"); - case Error::CBOR_INVALID_MAP_KEY: - return ToASCIIString("CBOR: invalid map key"); - case Error::CBOR_STACK_LIMIT_EXCEEDED: - return ToASCIIString("CBOR: stack limit exceeded"); - case Error::CBOR_TRAILING_JUNK: - return ToASCIIString("CBOR: trailing junk"); - case Error::CBOR_MAP_START_EXPECTED: - return ToASCIIString("CBOR: map start expected"); - case Error::CBOR_MAP_STOP_EXPECTED: - return ToASCIIString("CBOR: map stop expected"); - case Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED: - return ToASCIIString("CBOR: envelope size limit exceeded"); - } - // Some compilers can't figure out that we can't get here. - return "INVALID ERROR CODE"; -} - -std::string Status::ToASCIIString(const char* msg) const { - return std::string(msg) + " at position " + std::to_string(pos); -} - -namespace cbor { -namespace { -// Indicates the number of bits the "initial byte" needs to be shifted to the -// right after applying |kMajorTypeMask| to produce the major type in the -// lowermost bits. -static constexpr uint8_t kMajorTypeBitShift = 5u; -// Mask selecting the low-order 5 bits of the "initial byte", which is where -// the additional information is encoded. -static constexpr uint8_t kAdditionalInformationMask = 0x1f; -// Mask selecting the high-order 3 bits of the "initial byte", which indicates -// the major type of the encoded value. -static constexpr uint8_t kMajorTypeMask = 0xe0; -// Indicates the integer is in the following byte. -static constexpr uint8_t kAdditionalInformation1Byte = 24u; -// Indicates the integer is in the next 2 bytes. -static constexpr uint8_t kAdditionalInformation2Bytes = 25u; -// Indicates the integer is in the next 4 bytes. -static constexpr uint8_t kAdditionalInformation4Bytes = 26u; -// Indicates the integer is in the next 8 bytes. -static constexpr uint8_t kAdditionalInformation8Bytes = 27u; - -// Encodes the initial byte, consisting of the |type| in the first 3 bits -// followed by 5 bits of |additional_info|. -constexpr uint8_t EncodeInitialByte(MajorType type, uint8_t additional_info) { - return (static_cast<uint8_t>(type) << kMajorTypeBitShift) | - (additional_info & kAdditionalInformationMask); -} - -// TAG 24 indicates that what follows is a byte string which is -// encoded in CBOR format. We use this as a wrapper for -// maps and arrays, allowing us to skip them, because the -// byte string carries its size (byte length). -// https://tools.ietf.org/html/rfc7049#section-2.4.4.1 -static constexpr uint8_t kInitialByteForEnvelope = - EncodeInitialByte(MajorType::TAG, 24); -// The initial byte for a byte string with at most 2^32 bytes -// of payload. This is used for envelope encoding, even if -// the byte string is shorter. -static constexpr uint8_t kInitialByteFor32BitLengthByteString = - EncodeInitialByte(MajorType::BYTE_STRING, 26); - -// See RFC 7049 Section 2.2.1, indefinite length arrays / maps have additional -// info = 31. -static constexpr uint8_t kInitialByteIndefiniteLengthArray = - EncodeInitialByte(MajorType::ARRAY, 31); -static constexpr uint8_t kInitialByteIndefiniteLengthMap = - EncodeInitialByte(MajorType::MAP, 31); -// See RFC 7049 Section 2.3, Table 1; this is used for finishing indefinite -// length maps / arrays. -static constexpr uint8_t kStopByte = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 31); - -// See RFC 7049 Section 2.3, Table 2. -static constexpr uint8_t kEncodedTrue = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 21); -static constexpr uint8_t kEncodedFalse = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 20); -static constexpr uint8_t kEncodedNull = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 22); -static constexpr uint8_t kInitialByteForDouble = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 27); - -// See RFC 7049 Table 3 and Section 2.4.4.2. This is used as a prefix for -// arbitrary binary data encoded as BYTE_STRING. -static constexpr uint8_t kExpectedConversionToBase64Tag = - EncodeInitialByte(MajorType::TAG, 22); - -// Writes the bytes for |v| to |out|, starting with the most significant byte. -// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html -template <typename T, class C> -void WriteBytesMostSignificantByteFirst(T v, C* out) { - for (int shift_bytes = sizeof(T) - 1; shift_bytes >= 0; --shift_bytes) - out->push_back(0xff & (v >> (shift_bytes * 8))); -} - -// Extracts sizeof(T) bytes from |in| to extract a value of type T -// (e.g. uint64_t, uint32_t, ...), most significant byte first. -// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html -template <typename T> -T ReadBytesMostSignificantByteFirst(span<uint8_t> in) { - assert(in.size() >= sizeof(T)); - T result = 0; - for (size_t shift_bytes = 0; shift_bytes < sizeof(T); ++shift_bytes) - result |= T(in[sizeof(T) - 1 - shift_bytes]) << (shift_bytes * 8); - return result; -} -} // namespace - -namespace internals { -// Reads the start of a token with definitive size from |bytes|. -// |type| is the major type as specified in RFC 7049 Section 2.1. -// |value| is the payload (e.g. for MajorType::UNSIGNED) or is the size -// (e.g. for BYTE_STRING). -// If successful, returns the number of bytes read. Otherwise returns 0. -size_t ReadTokenStart(span<uint8_t> bytes, MajorType* type, uint64_t* value) { - if (bytes.empty()) - return 0; - uint8_t initial_byte = bytes[0]; - *type = MajorType((initial_byte & kMajorTypeMask) >> kMajorTypeBitShift); - - uint8_t additional_information = initial_byte & kAdditionalInformationMask; - if (additional_information < 24) { - // Values 0-23 are encoded directly into the additional info of the - // initial byte. - *value = additional_information; - return 1; - } - if (additional_information == kAdditionalInformation1Byte) { - // Values 24-255 are encoded with one initial byte, followed by the value. - if (bytes.size() < 2) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint8_t>(bytes.subspan(1)); - return 2; - } - if (additional_information == kAdditionalInformation2Bytes) { - // Values 256-65535: 1 initial byte + 2 bytes payload. - if (bytes.size() < 1 + sizeof(uint16_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint16_t>(bytes.subspan(1)); - return 3; - } - if (additional_information == kAdditionalInformation4Bytes) { - // 32 bit uint: 1 initial byte + 4 bytes payload. - if (bytes.size() < 1 + sizeof(uint32_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint32_t>(bytes.subspan(1)); - return 5; - } - if (additional_information == kAdditionalInformation8Bytes) { - // 64 bit uint: 1 initial byte + 8 bytes payload. - if (bytes.size() < 1 + sizeof(uint64_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint64_t>(bytes.subspan(1)); - return 9; - } - return 0; -} - -// Writes the start of a token with |type|. The |value| may indicate the size, -// or it may be the payload if the value is an unsigned integer. -template <typename C> -void WriteTokenStartTmpl(MajorType type, uint64_t value, C* encoded) { - if (value < 24) { - // Values 0-23 are encoded directly into the additional info of the - // initial byte. - encoded->push_back(EncodeInitialByte(type, /*additional_info=*/value)); - return; - } - if (value <= std::numeric_limits<uint8_t>::max()) { - // Values 24-255 are encoded with one initial byte, followed by the value. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation1Byte)); - encoded->push_back(value); - return; - } - if (value <= std::numeric_limits<uint16_t>::max()) { - // Values 256-65535: 1 initial byte + 2 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation2Bytes)); - WriteBytesMostSignificantByteFirst<uint16_t>(value, encoded); - return; - } - if (value <= std::numeric_limits<uint32_t>::max()) { - // 32 bit uint: 1 initial byte + 4 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation4Bytes)); - WriteBytesMostSignificantByteFirst<uint32_t>(static_cast<uint32_t>(value), - encoded); - return; - } - // 64 bit uint: 1 initial byte + 8 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation8Bytes)); - WriteBytesMostSignificantByteFirst<uint64_t>(value, encoded); -} -void WriteTokenStart(MajorType type, - uint64_t value, - std::vector<uint8_t>* encoded) { - WriteTokenStartTmpl(type, value, encoded); -} -void WriteTokenStart(MajorType type, uint64_t value, std::string* encoded) { - WriteTokenStartTmpl(type, value, encoded); -} -} // namespace internals - -// ============================================================================= -// Detecting CBOR content -// ============================================================================= - -uint8_t InitialByteForEnvelope() { - return kInitialByteForEnvelope; -} -uint8_t InitialByteFor32BitLengthByteString() { - return kInitialByteFor32BitLengthByteString; -} -bool IsCBORMessage(span<uint8_t> msg) { - return msg.size() >= 6 && msg[0] == InitialByteForEnvelope() && - msg[1] == InitialByteFor32BitLengthByteString(); -} - -// ============================================================================= -// Encoding invidiual CBOR items -// ============================================================================= - -uint8_t EncodeTrue() { - return kEncodedTrue; -} -uint8_t EncodeFalse() { - return kEncodedFalse; -} -uint8_t EncodeNull() { - return kEncodedNull; -} - -uint8_t EncodeIndefiniteLengthArrayStart() { - return kInitialByteIndefiniteLengthArray; -} - -uint8_t EncodeIndefiniteLengthMapStart() { - return kInitialByteIndefiniteLengthMap; -} - -uint8_t EncodeStop() { - return kStopByte; -} - -template <typename C> -void EncodeInt32Tmpl(int32_t value, C* out) { - if (value >= 0) { - internals::WriteTokenStart(MajorType::UNSIGNED, value, out); - } else { - uint64_t representation = static_cast<uint64_t>(-(value + 1)); - internals::WriteTokenStart(MajorType::NEGATIVE, representation, out); - } -} -void EncodeInt32(int32_t value, std::vector<uint8_t>* out) { - EncodeInt32Tmpl(value, out); -} -void EncodeInt32(int32_t value, std::string* out) { - EncodeInt32Tmpl(value, out); -} - -template <typename C> -void EncodeString16Tmpl(span<uint16_t> in, C* out) { - uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); - internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); - // When emitting UTF16 characters, we always write the least significant byte - // first; this is because it's the native representation for X86. - // TODO(johannes): Implement a more efficient thing here later, e.g. - // casting *iff* the machine has this byte order. - // The wire format for UTF16 chars will probably remain the same - // (least significant byte first) since this way we can have - // golden files, unittests, etc. that port easily and universally. - // See also: - // https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html - for (const uint16_t two_bytes : in) { - out->push_back(two_bytes); - out->push_back(two_bytes >> 8); - } -} -void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out) { - EncodeString16Tmpl(in, out); -} -void EncodeString16(span<uint16_t> in, std::string* out) { - EncodeString16Tmpl(in, out); -} - -template <typename C> -void EncodeString8Tmpl(span<uint8_t> in, C* out) { - internals::WriteTokenStart(MajorType::STRING, - static_cast<uint64_t>(in.size_bytes()), out); - out->insert(out->end(), in.begin(), in.end()); -} -void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out) { - EncodeString8Tmpl(in, out); -} -void EncodeString8(span<uint8_t> in, std::string* out) { - EncodeString8Tmpl(in, out); -} - -template <typename C> -void EncodeFromLatin1Tmpl(span<uint8_t> latin1, C* out) { - for (size_t ii = 0; ii < latin1.size(); ++ii) { - if (latin1[ii] <= 127) - continue; - // If there's at least one non-ASCII char, convert to UTF8. - std::vector<uint8_t> utf8(latin1.begin(), latin1.begin() + ii); - for (; ii < latin1.size(); ++ii) { - if (latin1[ii] <= 127) { - utf8.push_back(latin1[ii]); - } else { - // 0xC0 means it's a UTF8 sequence with 2 bytes. - utf8.push_back((latin1[ii] >> 6) | 0xc0); - utf8.push_back((latin1[ii] | 0x80) & 0xbf); - } - } - EncodeString8(SpanFrom(utf8), out); - return; - } - EncodeString8(latin1, out); -} -void EncodeFromLatin1(span<uint8_t> latin1, std::vector<uint8_t>* out) { - EncodeFromLatin1Tmpl(latin1, out); -} -void EncodeFromLatin1(span<uint8_t> latin1, std::string* out) { - EncodeFromLatin1Tmpl(latin1, out); -} - -template <typename C> -void EncodeFromUTF16Tmpl(span<uint16_t> utf16, C* out) { - // If there's at least one non-ASCII char, encode as STRING16 (UTF16). - for (uint16_t ch : utf16) { - if (ch <= 127) - continue; - EncodeString16(utf16, out); - return; - } - // It's all US-ASCII, strip out every second byte and encode as UTF8. - internals::WriteTokenStart(MajorType::STRING, - static_cast<uint64_t>(utf16.size()), out); - out->insert(out->end(), utf16.begin(), utf16.end()); -} -void EncodeFromUTF16(span<uint16_t> utf16, std::vector<uint8_t>* out) { - EncodeFromUTF16Tmpl(utf16, out); -} -void EncodeFromUTF16(span<uint16_t> utf16, std::string* out) { - EncodeFromUTF16Tmpl(utf16, out); -} - -template <typename C> -void EncodeBinaryTmpl(span<uint8_t> in, C* out) { - out->push_back(kExpectedConversionToBase64Tag); - uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); - internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); - out->insert(out->end(), in.begin(), in.end()); -} -void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out) { - EncodeBinaryTmpl(in, out); -} -void EncodeBinary(span<uint8_t> in, std::string* out) { - EncodeBinaryTmpl(in, out); -} - -// A double is encoded with a specific initial byte -// (kInitialByteForDouble) plus the 64 bits of payload for its value. -constexpr size_t kEncodedDoubleSize = 1 + sizeof(uint64_t); - -// An envelope is encoded with a specific initial byte -// (kInitialByteForEnvelope), plus the start byte for a BYTE_STRING with a 32 -// bit wide length, plus a 32 bit length for that string. -constexpr size_t kEncodedEnvelopeHeaderSize = 1 + 1 + sizeof(uint32_t); - -template <typename C> -void EncodeDoubleTmpl(double value, C* out) { - // The additional_info=27 indicates 64 bits for the double follow. - // See RFC 7049 Section 2.3, Table 1. - out->push_back(kInitialByteForDouble); - union { - double from_double; - uint64_t to_uint64; - } reinterpret; - reinterpret.from_double = value; - WriteBytesMostSignificantByteFirst<uint64_t>(reinterpret.to_uint64, out); -} -void EncodeDouble(double value, std::vector<uint8_t>* out) { - EncodeDoubleTmpl(value, out); -} -void EncodeDouble(double value, std::string* out) { - EncodeDoubleTmpl(value, out); -} - -// ============================================================================= -// cbor::EnvelopeEncoder - for wrapping submessages -// ============================================================================= - -template <typename C> -void EncodeStartTmpl(C* out, size_t* byte_size_pos) { - assert(*byte_size_pos == 0); - out->push_back(kInitialByteForEnvelope); - out->push_back(kInitialByteFor32BitLengthByteString); - *byte_size_pos = out->size(); - out->resize(out->size() + sizeof(uint32_t)); -} - -void EnvelopeEncoder::EncodeStart(std::vector<uint8_t>* out) { - EncodeStartTmpl<std::vector<uint8_t>>(out, &byte_size_pos_); -} - -void EnvelopeEncoder::EncodeStart(std::string* out) { - EncodeStartTmpl<std::string>(out, &byte_size_pos_); -} - -template <typename C> -bool EncodeStopTmpl(C* out, size_t* byte_size_pos) { - assert(*byte_size_pos != 0); - // The byte size is the size of the payload, that is, all the - // bytes that were written past the byte size position itself. - uint64_t byte_size = out->size() - (*byte_size_pos + sizeof(uint32_t)); - // We store exactly 4 bytes, so at most INT32MAX, with most significant - // byte first. - if (byte_size > std::numeric_limits<uint32_t>::max()) - return false; - for (int shift_bytes = sizeof(uint32_t) - 1; shift_bytes >= 0; - --shift_bytes) { - (*out)[(*byte_size_pos)++] = 0xff & (byte_size >> (shift_bytes * 8)); - } - return true; -} - -bool EnvelopeEncoder::EncodeStop(std::vector<uint8_t>* out) { - return EncodeStopTmpl(out, &byte_size_pos_); -} - -bool EnvelopeEncoder::EncodeStop(std::string* out) { - return EncodeStopTmpl(out, &byte_size_pos_); -} - -// ============================================================================= -// cbor::NewCBOREncoder - for encoding from a streaming parser -// ============================================================================= - -namespace { -template <typename C> -class CBOREncoder : public StreamingParserHandler { - public: - CBOREncoder(C* out, Status* status) : out_(out), status_(status) { - *status_ = Status(); - } - - void HandleMapBegin() override { - if (!status_->ok()) - return; - envelopes_.emplace_back(); - envelopes_.back().EncodeStart(out_); - out_->push_back(kInitialByteIndefiniteLengthMap); - } - - void HandleMapEnd() override { - if (!status_->ok()) - return; - out_->push_back(kStopByte); - assert(!envelopes_.empty()); - if (!envelopes_.back().EncodeStop(out_)) { - HandleError( - Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); - return; - } - envelopes_.pop_back(); - } - - void HandleArrayBegin() override { - if (!status_->ok()) - return; - envelopes_.emplace_back(); - envelopes_.back().EncodeStart(out_); - out_->push_back(kInitialByteIndefiniteLengthArray); - } - - void HandleArrayEnd() override { - if (!status_->ok()) - return; - out_->push_back(kStopByte); - assert(!envelopes_.empty()); - if (!envelopes_.back().EncodeStop(out_)) { - HandleError( - Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); - return; - } - envelopes_.pop_back(); - } - - void HandleString8(span<uint8_t> chars) override { - if (!status_->ok()) - return; - EncodeString8(chars, out_); - } - - void HandleString16(span<uint16_t> chars) override { - if (!status_->ok()) - return; - EncodeFromUTF16(chars, out_); - } - - void HandleBinary(span<uint8_t> bytes) override { - if (!status_->ok()) - return; - EncodeBinary(bytes, out_); - } - - void HandleDouble(double value) override { - if (!status_->ok()) - return; - EncodeDouble(value, out_); - } - - void HandleInt32(int32_t value) override { - if (!status_->ok()) - return; - EncodeInt32(value, out_); - } - - void HandleBool(bool value) override { - if (!status_->ok()) - return; - // See RFC 7049 Section 2.3, Table 2. - out_->push_back(value ? kEncodedTrue : kEncodedFalse); - } - - void HandleNull() override { - if (!status_->ok()) - return; - // See RFC 7049 Section 2.3, Table 2. - out_->push_back(kEncodedNull); - } - - void HandleError(Status error) override { - if (!status_->ok()) - return; - *status_ = error; - out_->clear(); - } - - private: - C* out_; - std::vector<EnvelopeEncoder> envelopes_; - Status* status_; -}; -} // namespace - -std::unique_ptr<StreamingParserHandler> NewCBOREncoder( - std::vector<uint8_t>* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new CBOREncoder<std::vector<uint8_t>>(out, status)); -} -std::unique_ptr<StreamingParserHandler> NewCBOREncoder(std::string* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new CBOREncoder<std::string>(out, status)); -} - -// ============================================================================= -// cbor::CBORTokenizer - for parsing individual CBOR items -// ============================================================================= - -CBORTokenizer::CBORTokenizer(span<uint8_t> bytes) : bytes_(bytes) { - ReadNextToken(/*enter_envelope=*/false); -} -CBORTokenizer::~CBORTokenizer() {} - -CBORTokenTag CBORTokenizer::TokenTag() const { - return token_tag_; -} - -void CBORTokenizer::Next() { - if (token_tag_ == CBORTokenTag::ERROR_VALUE || - token_tag_ == CBORTokenTag::DONE) - return; - ReadNextToken(/*enter_envelope=*/false); -} - -void CBORTokenizer::EnterEnvelope() { - assert(token_tag_ == CBORTokenTag::ENVELOPE); - ReadNextToken(/*enter_envelope=*/true); -} - -Status CBORTokenizer::Status() const { - return status_; -} - -// The following accessor functions ::GetInt32, ::GetDouble, -// ::GetString8, ::GetString16WireRep, ::GetBinary, ::GetEnvelopeContents -// assume that a particular token was recognized in ::ReadNextToken. -// That's where all the error checking is done. By design, -// the accessors (assuming the token was recognized) never produce -// an error. - -int32_t CBORTokenizer::GetInt32() const { - assert(token_tag_ == CBORTokenTag::INT32); - // The range checks happen in ::ReadNextToken(). - return static_cast<int32_t>( - token_start_type_ == MajorType::UNSIGNED - ? token_start_internal_value_ - : -static_cast<int64_t>(token_start_internal_value_) - 1); -} - -double CBORTokenizer::GetDouble() const { - assert(token_tag_ == CBORTokenTag::DOUBLE); - union { - uint64_t from_uint64; - double to_double; - } reinterpret; - reinterpret.from_uint64 = ReadBytesMostSignificantByteFirst<uint64_t>( - bytes_.subspan(status_.pos + 1)); - return reinterpret.to_double; -} - -span<uint8_t> CBORTokenizer::GetString8() const { - assert(token_tag_ == CBORTokenTag::STRING8); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetString16WireRep() const { - assert(token_tag_ == CBORTokenTag::STRING16); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetBinary() const { - assert(token_tag_ == CBORTokenTag::BINARY); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetEnvelopeContents() const { - assert(token_tag_ == CBORTokenTag::ENVELOPE); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + kEncodedEnvelopeHeaderSize, length); -} - -// All error checking happens in ::ReadNextToken, so that the accessors -// can avoid having to carry an error return value. -// -// With respect to checking the encoded lengths of strings, arrays, etc: -// On the wire, CBOR uses 1,2,4, and 8 byte unsigned integers, so -// we initially read them as uint64_t, usually into token_start_internal_value_. -// -// However, since these containers have a representation on the machine, -// we need to do corresponding size computations on the input byte array, -// output span (e.g. the payload for a string), etc., and size_t is -// machine specific (in practice either 32 bit or 64 bit). -// -// Further, we must avoid overflowing size_t. Therefore, we use this -// kMaxValidLength constant to: -// - Reject values that are larger than the architecture specific -// max size_t (differs between 32 bit and 64 bit arch). -// - Reserve at least one bit so that we can check against overflows -// when adding lengths (array / string length / etc.); we do this by -// ensuring that the inputs to an addition are <= kMaxValidLength, -// and then checking whether the sum went past it. -// -// See also -// https://chromium.googlesource.com/chromium/src/+/master/docs/security/integer-semantics.md -static const uint64_t kMaxValidLength = - std::min<uint64_t>(std::numeric_limits<uint64_t>::max() >> 2, - std::numeric_limits<size_t>::max()); - -void CBORTokenizer::ReadNextToken(bool enter_envelope) { - if (enter_envelope) { - status_.pos += kEncodedEnvelopeHeaderSize; - } else { - status_.pos = - status_.pos == Status::npos() ? 0 : status_.pos + token_byte_length_; - } - status_.error = Error::OK; - if (status_.pos >= bytes_.size()) { - token_tag_ = CBORTokenTag::DONE; - return; - } - const size_t remaining_bytes = bytes_.size() - status_.pos; - switch (bytes_[status_.pos]) { - case kStopByte: - SetToken(CBORTokenTag::STOP, 1); - return; - case kInitialByteIndefiniteLengthMap: - SetToken(CBORTokenTag::MAP_START, 1); - return; - case kInitialByteIndefiniteLengthArray: - SetToken(CBORTokenTag::ARRAY_START, 1); - return; - case kEncodedTrue: - SetToken(CBORTokenTag::TRUE_VALUE, 1); - return; - case kEncodedFalse: - SetToken(CBORTokenTag::FALSE_VALUE, 1); - return; - case kEncodedNull: - SetToken(CBORTokenTag::NULL_VALUE, 1); - return; - case kExpectedConversionToBase64Tag: { // BINARY - const size_t bytes_read = internals::ReadTokenStart( - bytes_.subspan(status_.pos + 1), &token_start_type_, - &token_start_internal_value_); - if (!bytes_read || token_start_type_ != MajorType::BYTE_STRING || - token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_BINARY); - return; - } - const uint64_t token_byte_length = token_start_internal_value_ + - /* tag before token start: */ 1 + - /* token start: */ bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_BINARY); - return; - } - SetToken(CBORTokenTag::BINARY, static_cast<size_t>(token_byte_length)); - return; - } - case kInitialByteForDouble: { // DOUBLE - if (kEncodedDoubleSize > remaining_bytes) { - SetError(Error::CBOR_INVALID_DOUBLE); - return; - } - SetToken(CBORTokenTag::DOUBLE, kEncodedDoubleSize); - return; - } - case kInitialByteForEnvelope: { // ENVELOPE - if (kEncodedEnvelopeHeaderSize > remaining_bytes) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - // The envelope must be a byte string with 32 bit length. - if (bytes_[status_.pos + 1] != kInitialByteFor32BitLengthByteString) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - // Read the length of the byte string. - token_start_internal_value_ = ReadBytesMostSignificantByteFirst<uint32_t>( - bytes_.subspan(status_.pos + 2)); - if (token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - uint64_t token_byte_length = - token_start_internal_value_ + kEncodedEnvelopeHeaderSize; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - SetToken(CBORTokenTag::ENVELOPE, static_cast<size_t>(token_byte_length)); - return; - } - default: { - const size_t bytes_read = internals::ReadTokenStart( - bytes_.subspan(status_.pos), &token_start_type_, - &token_start_internal_value_); - switch (token_start_type_) { - case MajorType::UNSIGNED: // INT32. - // INT32 is a signed int32 (int32 makes sense for the - // inspector_protocol, it's not a CBOR limitation), so we check - // against the signed max, so that the allowable values are - // 0, 1, 2, ... 2^31 - 1. - if (!bytes_read || - static_cast<int64_t>(std::numeric_limits<int32_t>::max()) < - static_cast<int64_t>(token_start_internal_value_)) { - SetError(Error::CBOR_INVALID_INT32); - return; - } - SetToken(CBORTokenTag::INT32, bytes_read); - return; - case MajorType::NEGATIVE: { // INT32. - // INT32 is a signed int32 (int32 makes sense for the - // inspector_protocol, it's not a CBOR limitation); in CBOR, the - // negative values for INT32 are represented as NEGATIVE, that is, -1 - // INT32 is represented as 1 << 5 | 0 (major type 1, additional info - // value 0). - // The represented allowed values range is -1 to -2^31. - // They are mapped into the encoded range of 0 to 2^31-1. - // We check the payload in token_start_internal_value_ against - // that range (2^31-1 is also known as - // std::numeric_limits<int32_t>::max()). - if (!bytes_read || - static_cast<int64_t>(token_start_internal_value_) > - static_cast<int64_t>(std::numeric_limits<int32_t>::max())) { - SetError(Error::CBOR_INVALID_INT32); - return; - } - SetToken(CBORTokenTag::INT32, bytes_read); - return; - } - case MajorType::STRING: { // STRING8. - if (!bytes_read || token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_STRING8); - return; - } - uint64_t token_byte_length = token_start_internal_value_ + bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_STRING8); - return; - } - SetToken(CBORTokenTag::STRING8, - static_cast<size_t>(token_byte_length)); - return; - } - case MajorType::BYTE_STRING: { // STRING16. - // Length must be divisible by 2 since UTF16 is 2 bytes per - // character, hence the &1 check. - if (!bytes_read || token_start_internal_value_ > kMaxValidLength || - token_start_internal_value_ & 1) { - SetError(Error::CBOR_INVALID_STRING16); - return; - } - uint64_t token_byte_length = token_start_internal_value_ + bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_STRING16); - return; - } - SetToken(CBORTokenTag::STRING16, - static_cast<size_t>(token_byte_length)); - return; - } - case MajorType::ARRAY: - case MajorType::MAP: - case MajorType::TAG: - case MajorType::SIMPLE_VALUE: - SetError(Error::CBOR_UNSUPPORTED_VALUE); - return; - } - } - } -} - -void CBORTokenizer::SetToken(CBORTokenTag token_tag, size_t token_byte_length) { - token_tag_ = token_tag; - token_byte_length_ = token_byte_length; -} - -void CBORTokenizer::SetError(Error error) { - token_tag_ = CBORTokenTag::ERROR_VALUE; - status_.error = error; -} - -// ============================================================================= -// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages -// ============================================================================= - -namespace { -// When parsing CBOR, we limit recursion depth for objects and arrays -// to this constant. -static constexpr int kStackLimit = 300; - -// Below are three parsing routines for CBOR, which cover enough -// to roundtrip JSON messages. -bool ParseMap(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); -bool ParseArray(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); -bool ParseValue(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); - -void ParseUTF16String(CBORTokenizer* tokenizer, StreamingParserHandler* out) { - std::vector<uint16_t> value; - span<uint8_t> rep = tokenizer->GetString16WireRep(); - for (size_t ii = 0; ii < rep.size(); ii += 2) - value.push_back((rep[ii + 1] << 8) | rep[ii]); - out->HandleString16(span<uint16_t>(value.data(), value.size())); - tokenizer->Next(); -} - -bool ParseUTF8String(CBORTokenizer* tokenizer, StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::STRING8); - out->HandleString8(tokenizer->GetString8()); - tokenizer->Next(); - return true; -} - -bool ParseValue(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - if (stack_depth > kStackLimit) { - out->HandleError( - Status{Error::CBOR_STACK_LIMIT_EXCEEDED, tokenizer->Status().pos}); - return false; - } - // Skip past the envelope to get to what's inside. - if (tokenizer->TokenTag() == CBORTokenTag::ENVELOPE) - tokenizer->EnterEnvelope(); - switch (tokenizer->TokenTag()) { - case CBORTokenTag::ERROR_VALUE: - out->HandleError(tokenizer->Status()); - return false; - case CBORTokenTag::DONE: - out->HandleError(Status{Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE, - tokenizer->Status().pos}); - return false; - case CBORTokenTag::TRUE_VALUE: - out->HandleBool(true); - tokenizer->Next(); - return true; - case CBORTokenTag::FALSE_VALUE: - out->HandleBool(false); - tokenizer->Next(); - return true; - case CBORTokenTag::NULL_VALUE: - out->HandleNull(); - tokenizer->Next(); - return true; - case CBORTokenTag::INT32: - out->HandleInt32(tokenizer->GetInt32()); - tokenizer->Next(); - return true; - case CBORTokenTag::DOUBLE: - out->HandleDouble(tokenizer->GetDouble()); - tokenizer->Next(); - return true; - case CBORTokenTag::STRING8: - return ParseUTF8String(tokenizer, out); - case CBORTokenTag::STRING16: - ParseUTF16String(tokenizer, out); - return true; - case CBORTokenTag::BINARY: { - out->HandleBinary(tokenizer->GetBinary()); - tokenizer->Next(); - return true; - } - case CBORTokenTag::MAP_START: - return ParseMap(stack_depth + 1, tokenizer, out); - case CBORTokenTag::ARRAY_START: - return ParseArray(stack_depth + 1, tokenizer, out); - default: - out->HandleError( - Status{Error::CBOR_UNSUPPORTED_VALUE, tokenizer->Status().pos}); - return false; - } -} - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -bool ParseArray(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::ARRAY_START); - tokenizer->Next(); - out->HandleArrayBegin(); - while (tokenizer->TokenTag() != CBORTokenTag::STOP) { - if (tokenizer->TokenTag() == CBORTokenTag::DONE) { - out->HandleError( - Status{Error::CBOR_UNEXPECTED_EOF_IN_ARRAY, tokenizer->Status().pos}); - return false; - } - if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer->Status()); - return false; - } - // Parse value. - if (!ParseValue(stack_depth, tokenizer, out)) - return false; - } - out->HandleArrayEnd(); - tokenizer->Next(); - return true; -} - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -bool ParseMap(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::MAP_START); - out->HandleMapBegin(); - tokenizer->Next(); - while (tokenizer->TokenTag() != CBORTokenTag::STOP) { - if (tokenizer->TokenTag() == CBORTokenTag::DONE) { - out->HandleError( - Status{Error::CBOR_UNEXPECTED_EOF_IN_MAP, tokenizer->Status().pos}); - return false; - } - if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer->Status()); - return false; - } - // Parse key. - if (tokenizer->TokenTag() == CBORTokenTag::STRING8) { - if (!ParseUTF8String(tokenizer, out)) - return false; - } else if (tokenizer->TokenTag() == CBORTokenTag::STRING16) { - ParseUTF16String(tokenizer, out); - } else { - out->HandleError( - Status{Error::CBOR_INVALID_MAP_KEY, tokenizer->Status().pos}); - return false; - } - // Parse value. - if (!ParseValue(stack_depth, tokenizer, out)) - return false; - } - out->HandleMapEnd(); - tokenizer->Next(); - return true; -} -} // namespace - -void ParseCBOR(span<uint8_t> bytes, StreamingParserHandler* out) { - if (bytes.empty()) { - out->HandleError(Status{Error::CBOR_NO_INPUT, 0}); - return; - } - if (bytes[0] != kInitialByteForEnvelope) { - out->HandleError(Status{Error::CBOR_INVALID_START_BYTE, 0}); - return; - } - CBORTokenizer tokenizer(bytes); - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer.Status()); - return; - } - // We checked for the envelope start byte above, so the tokenizer - // must agree here, since it's not an error. - assert(tokenizer.TokenTag() == CBORTokenTag::ENVELOPE); - tokenizer.EnterEnvelope(); - if (tokenizer.TokenTag() != CBORTokenTag::MAP_START) { - out->HandleError( - Status{Error::CBOR_MAP_START_EXPECTED, tokenizer.Status().pos}); - return; - } - if (!ParseMap(/*stack_depth=*/1, &tokenizer, out)) - return; - if (tokenizer.TokenTag() == CBORTokenTag::DONE) - return; - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer.Status()); - return; - } - out->HandleError(Status{Error::CBOR_TRAILING_JUNK, tokenizer.Status().pos}); -} - -// ============================================================================= -// cbor::AppendString8EntryToMap - for limited in-place editing of messages -// ============================================================================= - -template <typename C> -Status AppendString8EntryToCBORMapTmpl(span<uint8_t> string8_key, - span<uint8_t> string8_value, - C* cbor) { - // Careful below: Don't compare (*cbor)[idx] with a uint8_t, since - // it could be a char (signed!). Instead, use bytes. - span<uint8_t> bytes(reinterpret_cast<const uint8_t*>(cbor->data()), - cbor->size()); - CBORTokenizer tokenizer(bytes); - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) - return tokenizer.Status(); - if (tokenizer.TokenTag() != CBORTokenTag::ENVELOPE) - return Status(Error::CBOR_INVALID_ENVELOPE, 0); - size_t envelope_size = tokenizer.GetEnvelopeContents().size(); - size_t old_size = cbor->size(); - if (old_size != envelope_size + kEncodedEnvelopeHeaderSize) - return Status(Error::CBOR_INVALID_ENVELOPE, 0); - if (envelope_size == 0 || - (tokenizer.GetEnvelopeContents()[0] != EncodeIndefiniteLengthMapStart())) - return Status(Error::CBOR_MAP_START_EXPECTED, kEncodedEnvelopeHeaderSize); - if (bytes[bytes.size() - 1] != EncodeStop()) - return Status(Error::CBOR_MAP_STOP_EXPECTED, cbor->size() - 1); - cbor->pop_back(); - EncodeString8(string8_key, cbor); - EncodeString8(string8_value, cbor); - cbor->push_back(EncodeStop()); - size_t new_envelope_size = envelope_size + (cbor->size() - old_size); - if (new_envelope_size > std::numeric_limits<uint32_t>::max()) - return Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, 0); - size_t size_pos = cbor->size() - new_envelope_size - sizeof(uint32_t); - uint8_t* out = reinterpret_cast<uint8_t*>(&cbor->at(size_pos)); - *(out++) = (new_envelope_size >> 24) & 0xff; - *(out++) = (new_envelope_size >> 16) & 0xff; - *(out++) = (new_envelope_size >> 8) & 0xff; - *(out) = new_envelope_size & 0xff; - return Status(); -} -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::vector<uint8_t>* cbor) { - return AppendString8EntryToCBORMapTmpl(string8_key, string8_value, cbor); -} -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::string* cbor) { - return AppendString8EntryToCBORMapTmpl(string8_key, string8_value, cbor); -} -} // namespace cbor - -namespace json { - -// ============================================================================= -// json::NewJSONEncoder - for encoding streaming parser events as JSON -// ============================================================================= - -namespace { -// Prints |value| to |out| with 4 hex digits, most significant chunk first. -template <typename C> -void PrintHex(uint16_t value, C* out) { - for (int ii = 3; ii >= 0; --ii) { - int four_bits = 0xf & (value >> (4 * ii)); - out->push_back(four_bits + ((four_bits <= 9) ? '0' : ('a' - 10))); - } -} - -// In the writer below, we maintain a stack of State instances. -// It is just enough to emit the appropriate delimiters and brackets -// in JSON. -enum class Container { - // Used for the top-level, initial state. - NONE, - // Inside a JSON object. - MAP, - // Inside a JSON array. - ARRAY -}; -class State { - public: - explicit State(Container container) : container_(container) {} - void StartElement(std::vector<uint8_t>* out) { StartElementTmpl(out); } - void StartElement(std::string* out) { StartElementTmpl(out); } - Container container() const { return container_; } - - private: - template <typename C> - void StartElementTmpl(C* out) { - assert(container_ != Container::NONE || size_ == 0); - if (size_ != 0) { - char delim = (!(size_ & 1) || container_ == Container::ARRAY) ? ',' : ':'; - out->push_back(delim); - } - ++size_; - } - - Container container_ = Container::NONE; - int size_ = 0; -}; - -constexpr char kBase64Table[] = - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - "abcdefghijklmnopqrstuvwxyz0123456789+/"; - -template <typename C> -void Base64Encode(const span<uint8_t>& in, C* out) { - // The following three cases are based on the tables in the example - // section in https://en.wikipedia.org/wiki/Base64. We process three - // input bytes at a time, emitting 4 output bytes at a time. - size_t ii = 0; - - // While possible, process three input bytes. - for (; ii + 3 <= in.size(); ii += 3) { - uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8) | in[ii + 2]; - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); - out->push_back(kBase64Table[twentyfour_bits & 0x3f]); - } - if (ii + 2 <= in.size()) { // Process two input bytes. - uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8); - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); - out->push_back('='); // Emit padding. - return; - } - if (ii + 1 <= in.size()) { // Process a single input byte. - uint32_t twentyfour_bits = (in[ii] << 16); - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back('='); // Emit padding. - out->push_back('='); // Emit padding. - } -} - -// Implements a handler for JSON parser events to emit a JSON string. -template <typename C> -class JSONEncoder : public StreamingParserHandler { - public: - JSONEncoder(const Platform* platform, C* out, Status* status) - : platform_(platform), out_(out), status_(status) { - *status_ = Status(); - state_.emplace(Container::NONE); - } - - void HandleMapBegin() override { - if (!status_->ok()) - return; - assert(!state_.empty()); - state_.top().StartElement(out_); - state_.emplace(Container::MAP); - Emit('{'); - } - - void HandleMapEnd() override { - if (!status_->ok()) - return; - assert(state_.size() >= 2 && state_.top().container() == Container::MAP); - state_.pop(); - Emit('}'); - } - - void HandleArrayBegin() override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - state_.emplace(Container::ARRAY); - Emit('['); - } - - void HandleArrayEnd() override { - if (!status_->ok()) - return; - assert(state_.size() >= 2 && state_.top().container() == Container::ARRAY); - state_.pop(); - Emit(']'); - } - - void HandleString16(span<uint16_t> chars) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - for (const uint16_t ch : chars) { - if (ch == '"') { - Emit("\\\""); - } else if (ch == '\\') { - Emit("\\\\"); - } else if (ch == '\b') { - Emit("\\b"); - } else if (ch == '\f') { - Emit("\\f"); - } else if (ch == '\n') { - Emit("\\n"); - } else if (ch == '\r') { - Emit("\\r"); - } else if (ch == '\t') { - Emit("\\t"); - } else if (ch >= 32 && ch <= 126) { - Emit(ch); - } else { - Emit("\\u"); - PrintHex(ch, out_); - } - } - Emit('"'); - } - - void HandleString8(span<uint8_t> chars) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - for (size_t ii = 0; ii < chars.size(); ++ii) { - uint8_t c = chars[ii]; - if (c == '"') { - Emit("\\\""); - } else if (c == '\\') { - Emit("\\\\"); - } else if (c == '\b') { - Emit("\\b"); - } else if (c == '\f') { - Emit("\\f"); - } else if (c == '\n') { - Emit("\\n"); - } else if (c == '\r') { - Emit("\\r"); - } else if (c == '\t') { - Emit("\\t"); - } else if (c >= 32 && c <= 126) { - Emit(c); - } else if (c < 32) { - Emit("\\u"); - PrintHex(static_cast<uint16_t>(c), out_); - } else { - // Inspect the leading byte to figure out how long the utf8 - // byte sequence is; while doing this initialize |codepoint| - // with the first few bits. - // See table in: https://en.wikipedia.org/wiki/UTF-8 - // byte one is 110x xxxx -> 2 byte utf8 sequence - // byte one is 1110 xxxx -> 3 byte utf8 sequence - // byte one is 1111 0xxx -> 4 byte utf8 sequence - uint32_t codepoint; - int num_bytes_left; - if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence - num_bytes_left = 1; - codepoint = c & 0x1f; - } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence - num_bytes_left = 2; - codepoint = c & 0x0f; - } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence - codepoint = c & 0x07; - num_bytes_left = 3; - } else { - continue; // invalid leading byte - } - - // If we have enough bytes in our input, decode the remaining ones - // belonging to this Unicode character into |codepoint|. - if (ii + num_bytes_left > chars.size()) - continue; - while (num_bytes_left > 0) { - c = chars[++ii]; - --num_bytes_left; - // Check the next byte is a continuation byte, that is 10xx xxxx. - if ((c & 0xc0) != 0x80) - continue; - codepoint = (codepoint << 6) | (c & 0x3f); - } - - // Disallow overlong encodings for ascii characters, as these - // would include " and other characters significant to JSON - // string termination / control. - if (codepoint <= 0x7f) - continue; - // Invalid in UTF8, and can't be represented in UTF16 anyway. - if (codepoint > 0x10ffff) - continue; - - // So, now we transcode to UTF16, - // using the math described at https://en.wikipedia.org/wiki/UTF-16, - // for either one or two 16 bit characters. - if (codepoint < 0xffff) { - Emit("\\u"); - PrintHex(static_cast<uint16_t>(codepoint), out_); - continue; - } - codepoint -= 0x10000; - // high surrogate - Emit("\\u"); - PrintHex(static_cast<uint16_t>((codepoint >> 10) + 0xd800), out_); - // low surrogate - Emit("\\u"); - PrintHex(static_cast<uint16_t>((codepoint & 0x3ff) + 0xdc00), out_); - } - } - Emit('"'); - } - - void HandleBinary(span<uint8_t> bytes) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - Base64Encode(bytes, out_); - Emit('"'); - } - - void HandleDouble(double value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - // JSON cannot represent NaN or Infinity. So, for compatibility, - // we behave like the JSON object in web browsers: emit 'null'. - if (!std::isfinite(value)) { - Emit("null"); - return; - } - std::unique_ptr<char[]> str_value = platform_->DToStr(value); - - // DToStr may fail to emit a 0 before the decimal dot. E.g. this is - // the case in base::NumberToString in Chromium (which is based on - // dmg_fp). So, much like - // https://cs.chromium.org/chromium/src/base/json/json_writer.cc - // we probe for this and emit the leading 0 anyway if necessary. - const char* chars = str_value.get(); - if (chars[0] == '.') { - Emit('0'); - } else if (chars[0] == '-' && chars[1] == '.') { - Emit("-0"); - ++chars; - } - Emit(chars); - } - - void HandleInt32(int32_t value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit(std::to_string(value)); - } - - void HandleBool(bool value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit(value ? "true" : "false"); - } - - void HandleNull() override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit("null"); - } - - void HandleError(Status error) override { - assert(!error.ok()); - *status_ = error; - out_->clear(); - } - - private: - void Emit(char c) { out_->push_back(c); } - void Emit(const char* str) { - out_->insert(out_->end(), str, str + strlen(str)); - } - void Emit(const std::string& str) { - out_->insert(out_->end(), str.begin(), str.end()); - } - - const Platform* platform_; - C* out_; - Status* status_; - std::stack<State> state_; -}; -} // namespace - -std::unique_ptr<StreamingParserHandler> NewJSONEncoder( - const Platform* platform, - std::vector<uint8_t>* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new JSONEncoder<std::vector<uint8_t>>(platform, out, status)); -} -std::unique_ptr<StreamingParserHandler> NewJSONEncoder(const Platform* platform, - std::string* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new JSONEncoder<std::string>(platform, out, status)); -} - -// ============================================================================= -// json::ParseJSON - for receiving streaming parser events for JSON. -// ============================================================================= - -namespace { -const int kStackLimit = 300; - -enum Token { - ObjectBegin, - ObjectEnd, - ArrayBegin, - ArrayEnd, - StringLiteral, - Number, - BoolTrue, - BoolFalse, - NullToken, - ListSeparator, - ObjectPairSeparator, - InvalidToken, - NoInput -}; - -const char* const kNullString = "null"; -const char* const kTrueString = "true"; -const char* const kFalseString = "false"; - -template <typename Char> -class JsonParser { - public: - JsonParser(const Platform* platform, StreamingParserHandler* handler) - : platform_(platform), handler_(handler) {} - - void Parse(const Char* start, size_t length) { - start_pos_ = start; - const Char* end = start + length; - const Char* tokenEnd = nullptr; - ParseValue(start, end, &tokenEnd, 0); - if (error_) - return; - if (tokenEnd != end) { - HandleError(Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS, tokenEnd); - } - } - - private: - bool CharsToDouble(const uint16_t* chars, size_t length, double* result) { - std::string buffer; - buffer.reserve(length + 1); - for (size_t ii = 0; ii < length; ++ii) { - bool is_ascii = !(chars[ii] & ~0x7F); - if (!is_ascii) - return false; - buffer.push_back(static_cast<char>(chars[ii])); - } - return platform_->StrToD(buffer.c_str(), result); - } - - bool CharsToDouble(const uint8_t* chars, size_t length, double* result) { - std::string buffer(reinterpret_cast<const char*>(chars), length); - return platform_->StrToD(buffer.c_str(), result); - } - - static bool ParseConstToken(const Char* start, - const Char* end, - const Char** token_end, - const char* token) { - // |token| is \0 terminated, it's one of the constants at top of the file. - while (start < end && *token != '\0' && *start++ == *token++) { - } - if (*token != '\0') - return false; - *token_end = start; - return true; - } - - static bool ReadInt(const Char* start, - const Char* end, - const Char** token_end, - bool allow_leading_zeros) { - if (start == end) - return false; - bool has_leading_zero = '0' == *start; - int length = 0; - while (start < end && '0' <= *start && *start <= '9') { - ++start; - ++length; - } - if (!length) - return false; - if (!allow_leading_zeros && length > 1 && has_leading_zero) - return false; - *token_end = start; - return true; - } - - static bool ParseNumberToken(const Char* start, - const Char* end, - const Char** token_end) { - // We just grab the number here. We validate the size in DecodeNumber. - // According to RFC4627, a valid number is: [minus] int [frac] [exp] - if (start == end) - return false; - Char c = *start; - if ('-' == c) - ++start; - - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/false)) - return false; - if (start == end) { - *token_end = start; - return true; - } - - // Optional fraction part - c = *start; - if ('.' == c) { - ++start; - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) - return false; - if (start == end) { - *token_end = start; - return true; - } - c = *start; - } - - // Optional exponent part - if ('e' == c || 'E' == c) { - ++start; - if (start == end) - return false; - c = *start; - if ('-' == c || '+' == c) { - ++start; - if (start == end) - return false; - } - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) - return false; - } - - *token_end = start; - return true; - } - - static bool ReadHexDigits(const Char* start, - const Char* end, - const Char** token_end, - int digits) { - if (end - start < digits) - return false; - for (int i = 0; i < digits; ++i) { - Char c = *start++; - if (!(('0' <= c && c <= '9') || ('a' <= c && c <= 'f') || - ('A' <= c && c <= 'F'))) - return false; - } - *token_end = start; - return true; - } - - static bool ParseStringToken(const Char* start, - const Char* end, - const Char** token_end) { - while (start < end) { - Char c = *start++; - if ('\\' == c) { - if (start == end) - return false; - c = *start++; - // Make sure the escaped char is valid. - switch (c) { - case 'x': - if (!ReadHexDigits(start, end, &start, 2)) - return false; - break; - case 'u': - if (!ReadHexDigits(start, end, &start, 4)) - return false; - break; - case '\\': - case '/': - case 'b': - case 'f': - case 'n': - case 'r': - case 't': - case 'v': - case '"': - break; - default: - return false; - } - } else if ('"' == c) { - *token_end = start; - return true; - } - } - return false; - } - - static bool SkipComment(const Char* start, - const Char* end, - const Char** comment_end) { - if (start == end) - return false; - - if (*start != '/' || start + 1 >= end) - return false; - ++start; - - if (*start == '/') { - // Single line comment, read to newline. - for (++start; start < end; ++start) { - if (*start == '\n' || *start == '\r') { - *comment_end = start + 1; - return true; - } - } - *comment_end = end; - // Comment reaches end-of-input, which is fine. - return true; - } - - if (*start == '*') { - Char previous = '\0'; - // Block comment, read until end marker. - for (++start; start < end; previous = *start++) { - if (previous == '*' && *start == '/') { - *comment_end = start + 1; - return true; - } - } - // Block comment must close before end-of-input. - return false; - } - - return false; - } - - static bool IsSpaceOrNewLine(Char c) { - // \v = vertial tab; \f = form feed page break. - return c == ' ' || c == '\n' || c == '\v' || c == '\f' || c == '\r' || - c == '\t'; - } - - static void SkipWhitespaceAndComments(const Char* start, - const Char* end, - const Char** whitespace_end) { - while (start < end) { - if (IsSpaceOrNewLine(*start)) { - ++start; - } else if (*start == '/') { - const Char* comment_end = nullptr; - if (!SkipComment(start, end, &comment_end)) - break; - start = comment_end; - } else { - break; - } - } - *whitespace_end = start; - } - - static Token ParseToken(const Char* start, - const Char* end, - const Char** tokenStart, - const Char** token_end) { - SkipWhitespaceAndComments(start, end, tokenStart); - start = *tokenStart; - - if (start == end) - return NoInput; - - switch (*start) { - case 'n': - if (ParseConstToken(start, end, token_end, kNullString)) - return NullToken; - break; - case 't': - if (ParseConstToken(start, end, token_end, kTrueString)) - return BoolTrue; - break; - case 'f': - if (ParseConstToken(start, end, token_end, kFalseString)) - return BoolFalse; - break; - case '[': - *token_end = start + 1; - return ArrayBegin; - case ']': - *token_end = start + 1; - return ArrayEnd; - case ',': - *token_end = start + 1; - return ListSeparator; - case '{': - *token_end = start + 1; - return ObjectBegin; - case '}': - *token_end = start + 1; - return ObjectEnd; - case ':': - *token_end = start + 1; - return ObjectPairSeparator; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case '-': - if (ParseNumberToken(start, end, token_end)) - return Number; - break; - case '"': - if (ParseStringToken(start + 1, end, token_end)) - return StringLiteral; - break; - } - return InvalidToken; - } - - static int HexToInt(Char c) { - if ('0' <= c && c <= '9') - return c - '0'; - if ('A' <= c && c <= 'F') - return c - 'A' + 10; - if ('a' <= c && c <= 'f') - return c - 'a' + 10; - assert(false); // Unreachable. - return 0; - } - - static bool DecodeString(const Char* start, - const Char* end, - std::vector<uint16_t>* output) { - if (start == end) - return true; - if (start > end) - return false; - output->reserve(end - start); - while (start < end) { - uint16_t c = *start++; - // If the |Char| we're dealing with is really a byte, then - // we have utf8 here, and we need to check for multibyte characters - // and transcode them to utf16 (either one or two utf16 chars). - if (sizeof(Char) == sizeof(uint8_t) && c > 0x7f) { - // Inspect the leading byte to figure out how long the utf8 - // byte sequence is; while doing this initialize |codepoint| - // with the first few bits. - // See table in: https://en.wikipedia.org/wiki/UTF-8 - // byte one is 110x xxxx -> 2 byte utf8 sequence - // byte one is 1110 xxxx -> 3 byte utf8 sequence - // byte one is 1111 0xxx -> 4 byte utf8 sequence - uint32_t codepoint; - int num_bytes_left; - if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence - num_bytes_left = 1; - codepoint = c & 0x1f; - } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence - num_bytes_left = 2; - codepoint = c & 0x0f; - } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence - codepoint = c & 0x07; - num_bytes_left = 3; - } else { - return false; // invalid leading byte - } - - // If we have enough bytes in our inpput, decode the remaining ones - // belonging to this Unicode character into |codepoint|. - if (start + num_bytes_left > end) - return false; - while (num_bytes_left > 0) { - c = *start++; - --num_bytes_left; - // Check the next byte is a continuation byte, that is 10xx xxxx. - if ((c & 0xc0) != 0x80) - return false; - codepoint = (codepoint << 6) | (c & 0x3f); - } - - // Disallow overlong encodings for ascii characters, as these - // would include " and other characters significant to JSON - // string termination / control. - if (codepoint <= 0x7f) - return false; - // Invalid in UTF8, and can't be represented in UTF16 anyway. - if (codepoint > 0x10ffff) - return false; - - // So, now we transcode to UTF16, - // using the math described at https://en.wikipedia.org/wiki/UTF-16, - // for either one or two 16 bit characters. - if (codepoint < 0xffff) { - output->push_back(codepoint); - continue; - } - codepoint -= 0x10000; - output->push_back((codepoint >> 10) + 0xd800); // high surrogate - output->push_back((codepoint & 0x3ff) + 0xdc00); // low surrogate - continue; - } - if ('\\' != c) { - output->push_back(c); - continue; - } - if (start == end) - return false; - c = *start++; - - if (c == 'x') { - // \x is not supported. - return false; - } - - switch (c) { - case '"': - case '/': - case '\\': - break; - case 'b': - c = '\b'; - break; - case 'f': - c = '\f'; - break; - case 'n': - c = '\n'; - break; - case 'r': - c = '\r'; - break; - case 't': - c = '\t'; - break; - case 'v': - c = '\v'; - break; - case 'u': - c = (HexToInt(*start) << 12) + (HexToInt(*(start + 1)) << 8) + - (HexToInt(*(start + 2)) << 4) + HexToInt(*(start + 3)); - start += 4; - break; - default: - return false; - } - output->push_back(c); - } - return true; - } - - void ParseValue(const Char* start, - const Char* end, - const Char** value_token_end, - int depth) { - if (depth > kStackLimit) { - HandleError(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, start); - return; - } - const Char* token_start = nullptr; - const Char* token_end = nullptr; - Token token = ParseToken(start, end, &token_start, &token_end); - switch (token) { - case NoInput: - HandleError(Error::JSON_PARSER_NO_INPUT, token_start); - return; - case InvalidToken: - HandleError(Error::JSON_PARSER_INVALID_TOKEN, token_start); - return; - case NullToken: - handler_->HandleNull(); - break; - case BoolTrue: - handler_->HandleBool(true); - break; - case BoolFalse: - handler_->HandleBool(false); - break; - case Number: { - double value; - if (!CharsToDouble(token_start, token_end - token_start, &value)) { - HandleError(Error::JSON_PARSER_INVALID_NUMBER, token_start); - return; - } - if (value >= std::numeric_limits<int32_t>::min() && - value <= std::numeric_limits<int32_t>::max() && - static_cast<int32_t>(value) == value) - handler_->HandleInt32(static_cast<int32_t>(value)); - else - handler_->HandleDouble(value); - break; - } - case StringLiteral: { - std::vector<uint16_t> value; - bool ok = DecodeString(token_start + 1, token_end - 1, &value); - if (!ok) { - HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); - return; - } - handler_->HandleString16(span<uint16_t>(value.data(), value.size())); - break; - } - case ArrayBegin: { - handler_->HandleArrayBegin(); - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - while (token != ArrayEnd) { - ParseValue(start, end, &token_end, depth + 1); - if (error_) - return; - - // After a list value, we expect a comma or the end of the list. - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ListSeparator) { - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ArrayEnd) { - HandleError(Error::JSON_PARSER_UNEXPECTED_ARRAY_END, token_start); - return; - } - } else if (token != ArrayEnd) { - // Unexpected value after list value. Bail out. - HandleError(Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED, - token_start); - return; - } - } - handler_->HandleArrayEnd(); - break; - } - case ObjectBegin: { - handler_->HandleMapBegin(); - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - while (token != ObjectEnd) { - if (token != StringLiteral) { - HandleError(Error::JSON_PARSER_STRING_LITERAL_EXPECTED, - token_start); - return; - } - std::vector<uint16_t> key; - if (!DecodeString(token_start + 1, token_end - 1, &key)) { - HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); - return; - } - handler_->HandleString16(span<uint16_t>(key.data(), key.size())); - start = token_end; - - token = ParseToken(start, end, &token_start, &token_end); - if (token != ObjectPairSeparator) { - HandleError(Error::JSON_PARSER_COLON_EXPECTED, token_start); - return; - } - start = token_end; - - ParseValue(start, end, &token_end, depth + 1); - if (error_) - return; - start = token_end; - - // After a key/value pair, we expect a comma or the end of the - // object. - token = ParseToken(start, end, &token_start, &token_end); - if (token == ListSeparator) { - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ObjectEnd) { - HandleError(Error::JSON_PARSER_UNEXPECTED_MAP_END, token_start); - return; - } - } else if (token != ObjectEnd) { - // Unexpected value after last object value. Bail out. - HandleError(Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED, - token_start); - return; - } - } - handler_->HandleMapEnd(); - break; - } - - default: - // We got a token that's not a value. - HandleError(Error::JSON_PARSER_VALUE_EXPECTED, token_start); - return; - } - - SkipWhitespaceAndComments(token_end, end, value_token_end); - } - - void HandleError(Error error, const Char* pos) { - assert(error != Error::OK); - if (!error_) { - handler_->HandleError( - Status{error, static_cast<size_t>(pos - start_pos_)}); - error_ = true; - } - } - - const Char* start_pos_ = nullptr; - bool error_ = false; - const Platform* platform_; - StreamingParserHandler* handler_; -}; -} // namespace - -void ParseJSON(const Platform& platform, - span<uint8_t> chars, - StreamingParserHandler* handler) { - JsonParser<uint8_t> parser(&platform, handler); - parser.Parse(chars.data(), chars.size()); -} - -void ParseJSON(const Platform& platform, - span<uint16_t> chars, - StreamingParserHandler* handler) { - JsonParser<uint16_t> parser(&platform, handler); - parser.Parse(chars.data(), chars.size()); -} - -// ============================================================================= -// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding -// ============================================================================= -template <typename C> -Status ConvertCBORToJSONTmpl(const Platform& platform, - span<uint8_t> cbor, - C* json) { - Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&platform, json, &status); - cbor::ParseCBOR(cbor, json_writer.get()); - return status; -} - -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::vector<uint8_t>* json) { - return ConvertCBORToJSONTmpl(platform, cbor, json); -} -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::string* json) { - return ConvertCBORToJSONTmpl(platform, cbor, json); -} - -template <typename T, typename C> -Status ConvertJSONToCBORTmpl(const Platform& platform, span<T> json, C* cbor) { - Status status; - std::unique_ptr<StreamingParserHandler> encoder = - cbor::NewCBOREncoder(cbor, &status); - ParseJSON(platform, json, encoder.get()); - return status; -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::string* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::string* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::vector<uint8_t>* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::vector<uint8_t>* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -} // namespace json -} // namespace v8_inspector_protocol_encoding diff --git a/tools/inspector_protocol/encoding/encoding.h b/tools/inspector_protocol/encoding/encoding.h deleted file mode 100644 index a1bcfc4be3db4a..00000000000000 --- a/tools/inspector_protocol/encoding/encoding.h +++ /dev/null @@ -1,540 +0,0 @@ -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_H_ -#define V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_H_ - -#include <algorithm> -#include <cstddef> -#include <cstdint> -#include <cstring> -#include <limits> -#include <memory> -#include <string> -#include <vector> - -namespace v8_inspector_protocol_encoding { -// This library is designed to be portable. The only allowed dependency -// are the C/C++ standard libraries, up to C++11. We support both 32 bit -// and 64 architectures. -// -// Types used below: -// uint8_t: a byte, e.g. for raw bytes or UTF8 characters -// uint16_t: two bytes, e.g. for UTF16 characters -// For input parameters: -// span<uint8_t>: pointer to bytes and length -// span<uint16_t>: pointer to UTF16 chars and length -// For output parameters: -// std::vector<uint8_t> - Owned segment of bytes / utf8 characters and length. -// std::string - Same, for compatibility, even though char is signed. - -// ============================================================================= -// span - sequence of bytes -// ============================================================================= - -// This template is similar to std::span, which will be included in C++20. -template <typename T> -class span { - public: - using index_type = size_t; - - span() : data_(nullptr), size_(0) {} - span(const T* data, index_type size) : data_(data), size_(size) {} - - const T* data() const { return data_; } - - const T* begin() const { return data_; } - const T* end() const { return data_ + size_; } - - const T& operator[](index_type idx) const { return data_[idx]; } - - span<T> subspan(index_type offset, index_type count) const { - return span(data_ + offset, count); - } - - span<T> subspan(index_type offset) const { - return span(data_ + offset, size_ - offset); - } - - bool empty() const { return size_ == 0; } - - index_type size() const { return size_; } - index_type size_bytes() const { return size_ * sizeof(T); } - - private: - const T* data_; - index_type size_; -}; - -template <typename T> -span<T> SpanFrom(const std::vector<T>& v) { - return span<T>(v.data(), v.size()); -} - -template <size_t N> -span<uint8_t> SpanFrom(const char (&str)[N]) { - return span<uint8_t>(reinterpret_cast<const uint8_t*>(str), N - 1); -} - -inline span<uint8_t> SpanFrom(const char* str) { - return str ? span<uint8_t>(reinterpret_cast<const uint8_t*>(str), strlen(str)) - : span<uint8_t>(); -} - -inline span<uint8_t> SpanFrom(const std::string& v) { - return span<uint8_t>(reinterpret_cast<const uint8_t*>(v.data()), v.size()); -} - -// Less than / equality comparison functions for sorting / searching for byte -// spans. These are similar to absl::string_view's < and == operators. -inline bool SpanLessThan(span<uint8_t> x, span<uint8_t> y) noexcept { - auto min_size = std::min(x.size(), y.size()); - const int r = min_size == 0 ? 0 : memcmp(x.data(), y.data(), min_size); - return (r < 0) || (r == 0 && x.size() < y.size()); -} - -inline bool SpanEquals(span<uint8_t> x, span<uint8_t> y) noexcept { - auto len = x.size(); - if (len != y.size()) - return false; - return x.data() == y.data() || len == 0 || - std::memcmp(x.data(), y.data(), len) == 0; -} - -// ============================================================================= -// Status and Error codes -// ============================================================================= -enum class Error { - OK = 0, - // JSON parsing errors - json_parser.{h,cc}. - JSON_PARSER_UNPROCESSED_INPUT_REMAINS = 0x01, - JSON_PARSER_STACK_LIMIT_EXCEEDED = 0x02, - JSON_PARSER_NO_INPUT = 0x03, - JSON_PARSER_INVALID_TOKEN = 0x04, - JSON_PARSER_INVALID_NUMBER = 0x05, - JSON_PARSER_INVALID_STRING = 0x06, - JSON_PARSER_UNEXPECTED_ARRAY_END = 0x07, - JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED = 0x08, - JSON_PARSER_STRING_LITERAL_EXPECTED = 0x09, - JSON_PARSER_COLON_EXPECTED = 0x0a, - JSON_PARSER_UNEXPECTED_MAP_END = 0x0b, - JSON_PARSER_COMMA_OR_MAP_END_EXPECTED = 0x0c, - JSON_PARSER_VALUE_EXPECTED = 0x0d, - - CBOR_INVALID_INT32 = 0x0e, - CBOR_INVALID_DOUBLE = 0x0f, - CBOR_INVALID_ENVELOPE = 0x10, - CBOR_INVALID_STRING8 = 0x11, - CBOR_INVALID_STRING16 = 0x12, - CBOR_INVALID_BINARY = 0x13, - CBOR_UNSUPPORTED_VALUE = 0x14, - CBOR_NO_INPUT = 0x15, - CBOR_INVALID_START_BYTE = 0x16, - CBOR_UNEXPECTED_EOF_EXPECTED_VALUE = 0x17, - CBOR_UNEXPECTED_EOF_IN_ARRAY = 0x18, - CBOR_UNEXPECTED_EOF_IN_MAP = 0x19, - CBOR_INVALID_MAP_KEY = 0x1a, - CBOR_STACK_LIMIT_EXCEEDED = 0x1b, - CBOR_TRAILING_JUNK = 0x1c, - CBOR_MAP_START_EXPECTED = 0x1d, - CBOR_MAP_STOP_EXPECTED = 0x1e, - CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED = 0x1f, -}; - -// A status value with position that can be copied. The default status -// is OK. Usually, error status values should come with a valid position. -struct Status { - static constexpr size_t npos() { return std::numeric_limits<size_t>::max(); } - - bool ok() const { return error == Error::OK; } - - Error error = Error::OK; - size_t pos = npos(); - Status(Error error, size_t pos) : error(error), pos(pos) {} - Status() = default; - - // Returns a 7 bit US-ASCII string, either "OK" or an error message - // that includes the position. - std::string ToASCIIString() const; - - private: - std::string ToASCIIString(const char* msg) const; -}; - -// Handler interface for parser events emitted by a streaming parser. -// See cbor::NewCBOREncoder, cbor::ParseCBOR, json::NewJSONEncoder, -// json::ParseJSON. -class StreamingParserHandler { - public: - virtual ~StreamingParserHandler() = default; - virtual void HandleMapBegin() = 0; - virtual void HandleMapEnd() = 0; - virtual void HandleArrayBegin() = 0; - virtual void HandleArrayEnd() = 0; - virtual void HandleString8(span<uint8_t> chars) = 0; - virtual void HandleString16(span<uint16_t> chars) = 0; - virtual void HandleBinary(span<uint8_t> bytes) = 0; - virtual void HandleDouble(double value) = 0; - virtual void HandleInt32(int32_t value) = 0; - virtual void HandleBool(bool value) = 0; - virtual void HandleNull() = 0; - - // The parser may send one error even after other events have already - // been received. Client code is reponsible to then discard the - // already processed events. - // |error| must be an eror, as in, |error.is_ok()| can't be true. - virtual void HandleError(Status error) = 0; -}; - -namespace cbor { -// The binary encoding for the inspector protocol follows the CBOR specification -// (RFC 7049). Additional constraints: -// - Only indefinite length maps and arrays are supported. -// - Maps and arrays are wrapped with an envelope, that is, a -// CBOR tag with value 24 followed by a byte string specifying -// the byte length of the enclosed map / array. The byte string -// must use a 32 bit wide length. -// - At the top level, a message must be an indefinite length map -// wrapped by an envelope. -// - Maximal size for messages is 2^32 (4 GiB). -// - For scalars, we support only the int32_t range, encoded as -// UNSIGNED/NEGATIVE (major types 0 / 1). -// - UTF16 strings, including with unbalanced surrogate pairs, are encoded -// as CBOR BYTE_STRING (major type 2). For such strings, the number of -// bytes encoded must be even. -// - UTF8 strings (major type 3) are supported. -// - 7 bit US-ASCII strings must always be encoded as UTF8 strings, never -// as UTF16 strings. -// - Arbitrary byte arrays, in the inspector protocol called 'binary', -// are encoded as BYTE_STRING (major type 2), prefixed with a byte -// indicating base64 when rendered as JSON. - -// ============================================================================= -// Detecting CBOR content -// ============================================================================= - -// The first byte for an envelope, which we use for wrapping dictionaries -// and arrays; and the byte that indicates a byte string with 32 bit length. -// These two bytes start an envelope, and thereby also any CBOR message -// produced or consumed by this protocol. See also |EnvelopeEncoder| below. -uint8_t InitialByteForEnvelope(); -uint8_t InitialByteFor32BitLengthByteString(); - -// Checks whether |msg| is a cbor message. -bool IsCBORMessage(span<uint8_t> msg); - -// ============================================================================= -// Encoding individual CBOR items -// ============================================================================= - -// Some constants for CBOR tokens that only take a single byte on the wire. -uint8_t EncodeTrue(); -uint8_t EncodeFalse(); -uint8_t EncodeNull(); -uint8_t EncodeIndefiniteLengthArrayStart(); -uint8_t EncodeIndefiniteLengthMapStart(); -uint8_t EncodeStop(); - -// Encodes |value| as |UNSIGNED| (major type 0) iff >= 0, or |NEGATIVE| -// (major type 1) iff < 0. -void EncodeInt32(int32_t value, std::vector<uint8_t>* out); -void EncodeInt32(int32_t value, std::string* out); - -// Encodes a UTF16 string as a BYTE_STRING (major type 2). Each utf16 -// character in |in| is emitted with most significant byte first, -// appending to |out|. -void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out); -void EncodeString16(span<uint16_t> in, std::string* out); - -// Encodes a UTF8 string |in| as STRING (major type 3). -void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out); -void EncodeString8(span<uint8_t> in, std::string* out); - -// Encodes the given |latin1| string as STRING8. -// If any non-ASCII character is present, it will be represented -// as a 2 byte UTF8 sequence. -void EncodeFromLatin1(span<uint8_t> latin1, std::vector<uint8_t>* out); -void EncodeFromLatin1(span<uint8_t> latin1, std::string* out); - -// Encodes the given |utf16| string as STRING8 if it's entirely US-ASCII. -// Otherwise, encodes as STRING16. -void EncodeFromUTF16(span<uint16_t> utf16, std::vector<uint8_t>* out); -void EncodeFromUTF16(span<uint16_t> utf16, std::string* out); - -// Encodes arbitrary binary data in |in| as a BYTE_STRING (major type 2) with -// definitive length, prefixed with tag 22 indicating expected conversion to -// base64 (see RFC 7049, Table 3 and Section 2.4.4.2). -void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out); -void EncodeBinary(span<uint8_t> in, std::string* out); - -// Encodes / decodes a double as Major type 7 (SIMPLE_VALUE), -// with additional info = 27, followed by 8 bytes in big endian. -void EncodeDouble(double value, std::vector<uint8_t>* out); -void EncodeDouble(double value, std::string* out); - -// ============================================================================= -// cbor::EnvelopeEncoder - for wrapping submessages -// ============================================================================= - -// An envelope indicates the byte length of a wrapped item. -// We use this for maps and array, which allows the decoder -// to skip such (nested) values whole sale. -// It's implemented as a CBOR tag (major type 6) with additional -// info = 24, followed by a byte string with a 32 bit length value; -// so the maximal structure that we can wrap is 2^32 bits long. -// See also: https://tools.ietf.org/html/rfc7049#section-2.4.4.1 -class EnvelopeEncoder { - public: - // Emits the envelope start bytes and records the position for the - // byte size in |byte_size_pos_|. Also emits empty bytes for the - // byte sisze so that encoding can continue. - void EncodeStart(std::vector<uint8_t>* out); - void EncodeStart(std::string* out); - // This records the current size in |out| at position byte_size_pos_. - // Returns true iff successful. - bool EncodeStop(std::vector<uint8_t>* out); - bool EncodeStop(std::string* out); - - private: - size_t byte_size_pos_ = 0; -}; - -// ============================================================================= -// cbor::NewCBOREncoder - for encoding from a streaming parser -// ============================================================================= - -// This can be used to convert to CBOR, by passing the return value to a parser -// that drives it. The handler will encode into |out|, and iff an error occurs -// it will set |status| to an error and clear |out|. Otherwise, |status.ok()| -// will be |true|. -std::unique_ptr<StreamingParserHandler> NewCBOREncoder( - std::vector<uint8_t>* out, - Status* status); -std::unique_ptr<StreamingParserHandler> NewCBOREncoder(std::string* out, - Status* status); - -// ============================================================================= -// cbor::CBORTokenizer - for parsing individual CBOR items -// ============================================================================= - -// Tags for the tokens within a CBOR message that CBORTokenizer understands. -// Note that this is not the same terminology as the CBOR spec (RFC 7049), -// but rather, our adaptation. For instance, we lump unsigned and signed -// major type into INT32 here (and disallow values outside the int32_t range). -enum class CBORTokenTag { - // Encountered an error in the structure of the message. Consult - // status() for details. - ERROR_VALUE, - // Booleans and NULL. - TRUE_VALUE, - FALSE_VALUE, - NULL_VALUE, - // An int32_t (signed 32 bit integer). - INT32, - // A double (64 bit floating point). - DOUBLE, - // A UTF8 string. - STRING8, - // A UTF16 string. - STRING16, - // A binary string. - BINARY, - // Starts an indefinite length map; after the map start we expect - // alternating keys and values, followed by STOP. - MAP_START, - // Starts an indefinite length array; after the array start we - // expect values, followed by STOP. - ARRAY_START, - // Ends a map or an array. - STOP, - // An envelope indicator, wrapping a map or array. - // Internally this carries the byte length of the wrapped - // map or array. While CBORTokenizer::Next() will read / skip the entire - // envelope, CBORTokenizer::EnterEnvelope() reads the tokens - // inside of it. - ENVELOPE, - // We've reached the end there is nothing else to read. - DONE, -}; - -// The major types from RFC 7049 Section 2.1. -enum class MajorType { - UNSIGNED = 0, - NEGATIVE = 1, - BYTE_STRING = 2, - STRING = 3, - ARRAY = 4, - MAP = 5, - TAG = 6, - SIMPLE_VALUE = 7 -}; - -// CBORTokenizer segments a CBOR message, presenting the tokens therein as -// numbers, strings, etc. This is not a complete CBOR parser, but makes it much -// easier to implement one (e.g. ParseCBOR, above). It can also be used to parse -// messages partially. -class CBORTokenizer { - public: - explicit CBORTokenizer(span<uint8_t> bytes); - ~CBORTokenizer(); - - // Identifies the current token that we're looking at, - // or ERROR_VALUE (in which ase ::Status() has details) - // or DONE (if we're past the last token). - CBORTokenTag TokenTag() const; - - // Advances to the next token. - void Next(); - // Can only be called if TokenTag() == CBORTokenTag::ENVELOPE. - // While Next() would skip past the entire envelope / what it's - // wrapping, EnterEnvelope positions the cursor inside of the envelope, - // letting the client explore the nested structure. - void EnterEnvelope(); - - // If TokenTag() is CBORTokenTag::ERROR_VALUE, then Status().error describes - // the error more precisely; otherwise it'll be set to Error::OK. - // In either case, Status().pos is the current position. - struct Status Status() const; - - // The following methods retrieve the token values. They can only - // be called if TokenTag() matches. - - // To be called only if ::TokenTag() == CBORTokenTag::INT32. - int32_t GetInt32() const; - - // To be called only if ::TokenTag() == CBORTokenTag::DOUBLE. - double GetDouble() const; - - // To be called only if ::TokenTag() == CBORTokenTag::STRING8. - span<uint8_t> GetString8() const; - - // Wire representation for STRING16 is low byte first (little endian). - // To be called only if ::TokenTag() == CBORTokenTag::STRING16. - span<uint8_t> GetString16WireRep() const; - - // To be called only if ::TokenTag() == CBORTokenTag::BINARY. - span<uint8_t> GetBinary() const; - - // To be called only if ::TokenTag() == CBORTokenTag::ENVELOPE. - span<uint8_t> GetEnvelopeContents() const; - - private: - void ReadNextToken(bool enter_envelope); - void SetToken(CBORTokenTag token, size_t token_byte_length); - void SetError(Error error); - - span<uint8_t> bytes_; - CBORTokenTag token_tag_; - struct Status status_; - size_t token_byte_length_; - MajorType token_start_type_; - uint64_t token_start_internal_value_; -}; - -// ============================================================================= -// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages -// ============================================================================= - -// Parses a CBOR encoded message from |bytes|, sending events to -// |out|. If an error occurs, sends |out->HandleError|, and parsing stops. -// The client is responsible for discarding the already received information in -// that case. -void ParseCBOR(span<uint8_t> bytes, StreamingParserHandler* out); - -// ============================================================================= -// cbor::AppendString8EntryToMap - for limited in-place editing of messages -// ============================================================================= - -// Modifies the |cbor| message by appending a new key/value entry at the end -// of the map. Patches up the envelope size; Status.ok() iff successful. -// If not successful, |cbor| may be corrupted after this call. -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::vector<uint8_t>* cbor); -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::string* cbor); - -namespace internals { // Exposed only for writing tests. -size_t ReadTokenStart(span<uint8_t> bytes, - cbor::MajorType* type, - uint64_t* value); - -void WriteTokenStart(cbor::MajorType type, - uint64_t value, - std::vector<uint8_t>* encoded); -void WriteTokenStart(cbor::MajorType type, - uint64_t value, - std::string* encoded); -} // namespace internals -} // namespace cbor - -namespace json { -// Client code must provide an instance. Implementation should delegate -// to whatever is appropriate. -class Platform { - public: - virtual ~Platform() = default; - // Parses |str| into |result|. Returns false iff there are - // leftover characters or parsing errors. - virtual bool StrToD(const char* str, double* result) const = 0; - - // Prints |value| in a format suitable for JSON. - virtual std::unique_ptr<char[]> DToStr(double value) const = 0; -}; - -// ============================================================================= -// json::NewJSONEncoder - for encoding streaming parser events as JSON -// ============================================================================= - -// Returns a handler object which will write ascii characters to |out|. -// |status->ok()| will be false iff the handler routine HandleError() is called. -// In that case, we'll stop emitting output. -// Except for calling the HandleError routine at any time, the client -// code must call the Handle* methods in an order in which they'd occur -// in valid JSON; otherwise we may crash (the code uses assert). -std::unique_ptr<StreamingParserHandler> NewJSONEncoder( - const Platform* platform, - std::vector<uint8_t>* out, - Status* status); -std::unique_ptr<StreamingParserHandler> NewJSONEncoder(const Platform* platform, - std::string* out, - Status* status); - -// ============================================================================= -// json::ParseJSON - for receiving streaming parser events for JSON -// ============================================================================= - -void ParseJSON(const Platform& platform, - span<uint8_t> chars, - StreamingParserHandler* handler); -void ParseJSON(const Platform& platform, - span<uint16_t> chars, - StreamingParserHandler* handler); - -// ============================================================================= -// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding -// ============================================================================= -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::string* json); -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::vector<uint8_t>* json); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::vector<uint8_t>* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::vector<uint8_t>* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::string* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::string* cbor); -} // namespace json -} // namespace v8_inspector_protocol_encoding - -#endif // V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_H_ diff --git a/tools/inspector_protocol/encoding/encoding_test_helper.h b/tools/inspector_protocol/encoding/encoding_test_helper.h deleted file mode 100644 index 84da2e72e87f5c..00000000000000 --- a/tools/inspector_protocol/encoding/encoding_test_helper.h +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2019 The V8 Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -// This file is V8 specific, to make encoding_test.cc work. -// It is not rolled from the upstream project. - -#ifndef V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_TEST_HELPER_H_ -#define V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_TEST_HELPER_H_ - -#include <string> -#include <vector> - -#include "src/base/logging.h" -#include "src/inspector/v8-string-conversions.h" -#include "testing/gmock/include/gmock/gmock.h" -#include "testing/gtest/include/gtest/gtest.h" - -namespace v8_inspector_protocol_encoding { - -std::string UTF16ToUTF8(span<uint16_t> in) { - return v8_inspector::UTF16ToUTF8(in.data(), in.size()); -} - -std::vector<uint16_t> UTF8ToUTF16(span<uint8_t> in) { - std::basic_string<uint16_t> utf16 = v8_inspector::UTF8ToUTF16( - reinterpret_cast<const char*>(in.data()), in.size()); - return std::vector<uint16_t>(utf16.begin(), utf16.end()); -} - -} // namespace v8_inspector_protocol_encoding - -#endif // V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_TEST_HELPER_H_ diff --git a/tools/inspector_protocol/inspector_protocol.gypi b/tools/inspector_protocol/inspector_protocol.gypi deleted file mode 100644 index c11386dc05174e..00000000000000 --- a/tools/inspector_protocol/inspector_protocol.gypi +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 2016 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -{ - 'variables': { - 'inspector_protocol_files': [ - 'lib/encoding_h.template', - 'lib/encoding_cpp.template', - 'lib/Allocator_h.template', - 'lib/DispatcherBase_cpp.template', - 'lib/DispatcherBase_h.template', - 'lib/ErrorSupport_cpp.template', - 'lib/ErrorSupport_h.template', - 'lib/Forward_h.template', - 'lib/FrontendChannel_h.template', - 'lib/Maybe_h.template', - 'lib/Object_cpp.template', - 'lib/Object_h.template', - 'lib/Parser_cpp.template', - 'lib/Parser_h.template', - 'lib/Protocol_cpp.template', - 'lib/ValueConversions_h.template', - 'lib/Values_cpp.template', - 'lib/Values_h.template', - 'templates/Exported_h.template', - 'templates/Imported_h.template', - 'templates/TypeBuilder_cpp.template', - 'templates/TypeBuilder_h.template', - 'code_generator.py', - ] - } -} diff --git a/tools/inspector_protocol/lib/Allocator_h.template b/tools/inspector_protocol/lib/Allocator_h.template deleted file mode 100644 index d94c4ca5b0ae99..00000000000000 --- a/tools/inspector_protocol/lib/Allocator_h.template +++ /dev/null @@ -1,23 +0,0 @@ -// This file is generated by Allocator_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_Allocator_h -#define {{"_".join(config.protocol.namespace)}}_Allocator_h - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -#define PROTOCOL_DISALLOW_COPY(ClassName) \ - private: \ - ClassName(const ClassName&) = delete; \ - ClassName& operator=(const ClassName&) = delete - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_Allocator_h) diff --git a/tools/inspector_protocol/lib/DispatcherBase_cpp.template b/tools/inspector_protocol/lib/DispatcherBase_cpp.template deleted file mode 100644 index 11843f433007fc..00000000000000 --- a/tools/inspector_protocol/lib/DispatcherBase_cpp.template +++ /dev/null @@ -1,353 +0,0 @@ -// This file is generated by DispatcherBase_cpp.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -//#include "DispatcherBase.h" -//#include "Parser.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -// static -DispatchResponse DispatchResponse::OK() -{ - DispatchResponse result; - result.m_status = kSuccess; - result.m_errorCode = kParseError; - return result; -} - -// static -DispatchResponse DispatchResponse::Error(const String& error) -{ - DispatchResponse result; - result.m_status = kError; - result.m_errorCode = kServerError; - result.m_errorMessage = error; - return result; -} - -// static -DispatchResponse DispatchResponse::InternalError() -{ - DispatchResponse result; - result.m_status = kError; - result.m_errorCode = kInternalError; - result.m_errorMessage = "Internal error"; - return result; -} - -// static -DispatchResponse DispatchResponse::InvalidParams(const String& error) -{ - DispatchResponse result; - result.m_status = kError; - result.m_errorCode = kInvalidParams; - result.m_errorMessage = error; - return result; -} - -// static -DispatchResponse DispatchResponse::FallThrough() -{ - DispatchResponse result; - result.m_status = kFallThrough; - result.m_errorCode = kParseError; - return result; -} - -// static -const char DispatcherBase::kInvalidParamsString[] = "Invalid parameters"; - -DispatcherBase::WeakPtr::WeakPtr(DispatcherBase* dispatcher) : m_dispatcher(dispatcher) { } - -DispatcherBase::WeakPtr::~WeakPtr() -{ - if (m_dispatcher) - m_dispatcher->m_weakPtrs.erase(this); -} - -DispatcherBase::Callback::Callback(std::unique_ptr<DispatcherBase::WeakPtr> backendImpl, int callId, const String& method, const ProtocolMessage& message) - : m_backendImpl(std::move(backendImpl)) - , m_callId(callId) - , m_method(method) - , m_message(message) { } - -DispatcherBase::Callback::~Callback() = default; - -void DispatcherBase::Callback::dispose() -{ - m_backendImpl = nullptr; -} - -void DispatcherBase::Callback::sendIfActive(std::unique_ptr<protocol::DictionaryValue> partialMessage, const DispatchResponse& response) -{ - if (!m_backendImpl || !m_backendImpl->get()) - return; - m_backendImpl->get()->sendResponse(m_callId, response, std::move(partialMessage)); - m_backendImpl = nullptr; -} - -void DispatcherBase::Callback::fallThroughIfActive() -{ - if (!m_backendImpl || !m_backendImpl->get()) - return; - m_backendImpl->get()->channel()->fallThrough(m_callId, m_method, m_message); - m_backendImpl = nullptr; -} - -DispatcherBase::DispatcherBase(FrontendChannel* frontendChannel) - : m_frontendChannel(frontendChannel) { } - -DispatcherBase::~DispatcherBase() -{ - clearFrontend(); -} - -void DispatcherBase::sendResponse(int callId, const DispatchResponse& response, std::unique_ptr<protocol::DictionaryValue> result) -{ - if (!m_frontendChannel) - return; - if (response.status() == DispatchResponse::kError) { - reportProtocolError(callId, response.errorCode(), response.errorMessage(), nullptr); - return; - } - m_frontendChannel->sendProtocolResponse(callId, InternalResponse::createResponse(callId, std::move(result))); -} - -void DispatcherBase::sendResponse(int callId, const DispatchResponse& response) -{ - sendResponse(callId, response, DictionaryValue::create()); -} - -namespace { - -class ProtocolError : public Serializable { -public: - static std::unique_ptr<ProtocolError> createErrorResponse(int callId, DispatchResponse::ErrorCode code, const String& errorMessage, ErrorSupport* errors) - { - std::unique_ptr<ProtocolError> protocolError(new ProtocolError(code, errorMessage)); - protocolError->m_callId = callId; - protocolError->m_hasCallId = true; - if (errors && errors->hasErrors()) - protocolError->m_data = errors->errors(); - return protocolError; - } - - static std::unique_ptr<ProtocolError> createErrorNotification(DispatchResponse::ErrorCode code, const String& errorMessage) - { - return std::unique_ptr<ProtocolError>(new ProtocolError(code, errorMessage)); - } - - String serializeToJSON() override - { - return serialize()->serializeToJSON(); - } - - std::vector<uint8_t> serializeToBinary() override - { - return serialize()->serializeToBinary(); - } - - ~ProtocolError() override {} - -private: - ProtocolError(DispatchResponse::ErrorCode code, const String& errorMessage) - : m_code(code) - , m_errorMessage(errorMessage) - { - } - - std::unique_ptr<DictionaryValue> serialize() { - std::unique_ptr<protocol::DictionaryValue> error = DictionaryValue::create(); - error->setInteger("code", m_code); - error->setString("message", m_errorMessage); - if (m_data.length()) - error->setString("data", m_data); - std::unique_ptr<protocol::DictionaryValue> message = DictionaryValue::create(); - message->setObject("error", std::move(error)); - if (m_hasCallId) - message->setInteger("id", m_callId); - return message; - } - - DispatchResponse::ErrorCode m_code; - String m_errorMessage; - String m_data; - int m_callId = 0; - bool m_hasCallId = false; -}; - -} // namespace - -static void reportProtocolErrorTo(FrontendChannel* frontendChannel, int callId, DispatchResponse::ErrorCode code, const String& errorMessage, ErrorSupport* errors) -{ - if (frontendChannel) - frontendChannel->sendProtocolResponse(callId, ProtocolError::createErrorResponse(callId, code, errorMessage, errors)); -} - -static void reportProtocolErrorTo(FrontendChannel* frontendChannel, DispatchResponse::ErrorCode code, const String& errorMessage) -{ - if (frontendChannel) - frontendChannel->sendProtocolNotification(ProtocolError::createErrorNotification(code, errorMessage)); -} - -void DispatcherBase::reportProtocolError(int callId, DispatchResponse::ErrorCode code, const String& errorMessage, ErrorSupport* errors) -{ - reportProtocolErrorTo(m_frontendChannel, callId, code, errorMessage, errors); -} - -void DispatcherBase::clearFrontend() -{ - m_frontendChannel = nullptr; - for (auto& weak : m_weakPtrs) - weak->dispose(); - m_weakPtrs.clear(); -} - -std::unique_ptr<DispatcherBase::WeakPtr> DispatcherBase::weakPtr() -{ - std::unique_ptr<DispatcherBase::WeakPtr> weak(new DispatcherBase::WeakPtr(this)); - m_weakPtrs.insert(weak.get()); - return weak; -} - -UberDispatcher::UberDispatcher(FrontendChannel* frontendChannel) - : m_frontendChannel(frontendChannel) { } - -void UberDispatcher::registerBackend(const String& name, std::unique_ptr<protocol::DispatcherBase> dispatcher) -{ - m_dispatchers[name] = std::move(dispatcher); -} - -void UberDispatcher::setupRedirects(const std::unordered_map<String, String>& redirects) -{ - for (const auto& pair : redirects) - m_redirects[pair.first] = pair.second; -} - -bool UberDispatcher::parseCommand(Value* parsedMessage, int* outCallId, String* outMethod) { - if (!parsedMessage) { - reportProtocolErrorTo(m_frontendChannel, DispatchResponse::kParseError, "Message must be a valid JSON"); - return false; - } - protocol::DictionaryValue* messageObject = DictionaryValue::cast(parsedMessage); - if (!messageObject) { - reportProtocolErrorTo(m_frontendChannel, DispatchResponse::kInvalidRequest, "Message must be an object"); - return false; - } - - int callId = 0; - protocol::Value* callIdValue = messageObject->get("id"); - bool success = callIdValue && callIdValue->asInteger(&callId); - if (!success) { - reportProtocolErrorTo(m_frontendChannel, DispatchResponse::kInvalidRequest, "Message must have integer 'id' property"); - return false; - } - if (outCallId) - *outCallId = callId; - - protocol::Value* methodValue = messageObject->get("method"); - String method; - success = methodValue && methodValue->asString(&method); - if (!success) { - reportProtocolErrorTo(m_frontendChannel, callId, DispatchResponse::kInvalidRequest, "Message must have string 'method' property", nullptr); - return false; - } - if (outMethod) - *outMethod = method; - return true; -} - -protocol::DispatcherBase* UberDispatcher::findDispatcher(const String& method) { - size_t dotIndex = StringUtil::find(method, "."); - if (dotIndex == StringUtil::kNotFound) - return nullptr; - String domain = StringUtil::substring(method, 0, dotIndex); - auto it = m_dispatchers.find(domain); - if (it == m_dispatchers.end()) - return nullptr; - if (!it->second->canDispatch(method)) - return nullptr; - return it->second.get(); -} - -bool UberDispatcher::canDispatch(const String& in_method) -{ - String method = in_method; - auto redirectIt = m_redirects.find(method); - if (redirectIt != m_redirects.end()) - method = redirectIt->second; - return !!findDispatcher(method); -} - -void UberDispatcher::dispatch(int callId, const String& in_method, std::unique_ptr<Value> parsedMessage, const ProtocolMessage& rawMessage) -{ - String method = in_method; - auto redirectIt = m_redirects.find(method); - if (redirectIt != m_redirects.end()) - method = redirectIt->second; - protocol::DispatcherBase* dispatcher = findDispatcher(method); - if (!dispatcher) { - reportProtocolErrorTo(m_frontendChannel, callId, DispatchResponse::kMethodNotFound, "'" + method + "' wasn't found", nullptr); - return; - } - std::unique_ptr<protocol::DictionaryValue> messageObject = DictionaryValue::cast(std::move(parsedMessage)); - dispatcher->dispatch(callId, method, rawMessage, std::move(messageObject)); -} - -UberDispatcher::~UberDispatcher() = default; - -// static -std::unique_ptr<InternalResponse> InternalResponse::createResponse(int callId, std::unique_ptr<Serializable> params) -{ - return std::unique_ptr<InternalResponse>(new InternalResponse(callId, String(), std::move(params))); -} - -// static -std::unique_ptr<InternalResponse> InternalResponse::createNotification(const String& notification, std::unique_ptr<Serializable> params) -{ - return std::unique_ptr<InternalResponse>(new InternalResponse(0, notification, std::move(params))); -} - -String InternalResponse::serializeToJSON() -{ - std::unique_ptr<DictionaryValue> result = DictionaryValue::create(); - std::unique_ptr<Serializable> params(m_params ? std::move(m_params) : DictionaryValue::create()); - if (m_notification.length()) { - result->setString("method", m_notification); - result->setValue("params", SerializedValue::fromJSON(params->serializeToJSON())); - } else { - result->setInteger("id", m_callId); - result->setValue("result", SerializedValue::fromJSON(params->serializeToJSON())); - } - return result->serializeToJSON(); -} - -std::vector<uint8_t> InternalResponse::serializeToBinary() -{ - std::unique_ptr<DictionaryValue> result = DictionaryValue::create(); - std::unique_ptr<Serializable> params(m_params ? std::move(m_params) : DictionaryValue::create()); - if (m_notification.length()) { - result->setString("method", m_notification); - result->setValue("params", SerializedValue::fromBinary(params->serializeToBinary())); - } else { - result->setInteger("id", m_callId); - result->setValue("result", SerializedValue::fromBinary(params->serializeToBinary())); - } - return result->serializeToBinary(); -} - -InternalResponse::InternalResponse(int callId, const String& notification, std::unique_ptr<Serializable> params) - : m_callId(callId) - , m_notification(notification) - , m_params(params ? std::move(params) : nullptr) -{ -} - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/inspector_protocol/lib/DispatcherBase_h.template b/tools/inspector_protocol/lib/DispatcherBase_h.template deleted file mode 100644 index 4aa0688adb33fc..00000000000000 --- a/tools/inspector_protocol/lib/DispatcherBase_h.template +++ /dev/null @@ -1,185 +0,0 @@ -// This file is generated by DispatcherBase_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_DispatcherBase_h -#define {{"_".join(config.protocol.namespace)}}_DispatcherBase_h - -//#include "Forward.h" -//#include "ErrorSupport.h" -//#include "Values.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -class WeakPtr; - -class {{config.lib.export_macro}} DispatchResponse { -public: - enum Status { - kSuccess = 0, - kError = 1, - kFallThrough = 2, - }; - - // For historical reasons, these error codes correspond to commonly used - // XMLRPC codes (e.g. see METHOD_NOT_FOUND in - // https://github.com/python/cpython/blob/master/Lib/xmlrpc/client.py). - enum ErrorCode { - kParseError = -32700, - kInvalidRequest = -32600, - kMethodNotFound = -32601, - kInvalidParams = -32602, - kInternalError = -32603, - kServerError = -32000, - }; - - Status status() const { return m_status; } - const String& errorMessage() const { return m_errorMessage; } - ErrorCode errorCode() const { return m_errorCode; } - bool isSuccess() const { return m_status == kSuccess; } - - static DispatchResponse OK(); - static DispatchResponse Error(const String&); - static DispatchResponse InternalError(); - static DispatchResponse InvalidParams(const String&); - static DispatchResponse FallThrough(); - -private: - Status m_status; - String m_errorMessage; - ErrorCode m_errorCode; -}; - -class {{config.lib.export_macro}} DispatcherBase { - PROTOCOL_DISALLOW_COPY(DispatcherBase); -public: - static const char kInvalidParamsString[]; - class {{config.lib.export_macro}} WeakPtr { - public: - explicit WeakPtr(DispatcherBase*); - ~WeakPtr(); - DispatcherBase* get() { return m_dispatcher; } - void dispose() { m_dispatcher = nullptr; } - - private: - DispatcherBase* m_dispatcher; - }; - - class {{config.lib.export_macro}} Callback { - public: - Callback(std::unique_ptr<WeakPtr> backendImpl, int callId, const String& method, const ProtocolMessage& message); - virtual ~Callback(); - void dispose(); - - protected: - void sendIfActive(std::unique_ptr<protocol::DictionaryValue> partialMessage, const DispatchResponse& response); - void fallThroughIfActive(); - - private: - std::unique_ptr<WeakPtr> m_backendImpl; - int m_callId; - String m_method; - ProtocolMessage m_message; - }; - - explicit DispatcherBase(FrontendChannel*); - virtual ~DispatcherBase(); - - virtual bool canDispatch(const String& method) = 0; - virtual void dispatch(int callId, const String& method, const ProtocolMessage& rawMessage, std::unique_ptr<protocol::DictionaryValue> messageObject) = 0; - FrontendChannel* channel() { return m_frontendChannel; } - - void sendResponse(int callId, const DispatchResponse&, std::unique_ptr<protocol::DictionaryValue> result); - void sendResponse(int callId, const DispatchResponse&); - - void reportProtocolError(int callId, DispatchResponse::ErrorCode, const String& errorMessage, ErrorSupport* errors); - void clearFrontend(); - - std::unique_ptr<WeakPtr> weakPtr(); - -private: - FrontendChannel* m_frontendChannel; - std::unordered_set<WeakPtr*> m_weakPtrs; -}; - -class {{config.lib.export_macro}} UberDispatcher { - PROTOCOL_DISALLOW_COPY(UberDispatcher); -public: - explicit UberDispatcher(FrontendChannel*); - void registerBackend(const String& name, std::unique_ptr<protocol::DispatcherBase>); - void setupRedirects(const std::unordered_map<String, String>&); - bool parseCommand(Value* message, int* callId, String* method); - bool canDispatch(const String& method); - void dispatch(int callId, const String& method, std::unique_ptr<Value> message, const ProtocolMessage& rawMessage); - FrontendChannel* channel() { return m_frontendChannel; } - virtual ~UberDispatcher(); - -private: - protocol::DispatcherBase* findDispatcher(const String& method); - FrontendChannel* m_frontendChannel; - std::unordered_map<String, String> m_redirects; - std::unordered_map<String, std::unique_ptr<protocol::DispatcherBase>> m_dispatchers; -}; - -class InternalResponse : public Serializable { - PROTOCOL_DISALLOW_COPY(InternalResponse); -public: - static std::unique_ptr<InternalResponse> createResponse(int callId, std::unique_ptr<Serializable> params); - static std::unique_ptr<InternalResponse> createNotification(const String& notification, std::unique_ptr<Serializable> params = nullptr); - - String serializeToJSON() override; - std::vector<uint8_t> serializeToBinary() override; - - ~InternalResponse() override {} - -private: - InternalResponse(int callId, const String& notification, std::unique_ptr<Serializable> params); - - int m_callId; - String m_notification; - std::unique_ptr<Serializable> m_params; -}; - -class InternalRawNotification : public Serializable { -public: - static std::unique_ptr<InternalRawNotification> fromJSON(String notification) - { - return std::unique_ptr<InternalRawNotification>(new InternalRawNotification(std::move(notification))); - } - - static std::unique_ptr<InternalRawNotification> fromBinary(std::vector<uint8_t> notification) - { - return std::unique_ptr<InternalRawNotification>(new InternalRawNotification(std::move(notification))); - } - - ~InternalRawNotification() override {} - - String serializeToJSON() override - { - return std::move(m_jsonNotification); - } - - std::vector<uint8_t> serializeToBinary() override - { - return std::move(m_binaryNotification); - } - -private: - explicit InternalRawNotification(String notification) - : m_jsonNotification(std::move(notification)) { } - explicit InternalRawNotification(std::vector<uint8_t> notification) - : m_binaryNotification(std::move(notification)) { } - - String m_jsonNotification; - std::vector<uint8_t> m_binaryNotification; -}; - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_DispatcherBase_h) diff --git a/tools/inspector_protocol/lib/ErrorSupport_cpp.template b/tools/inspector_protocol/lib/ErrorSupport_cpp.template deleted file mode 100644 index a5c2a79bbd25c4..00000000000000 --- a/tools/inspector_protocol/lib/ErrorSupport_cpp.template +++ /dev/null @@ -1,73 +0,0 @@ -// This file is generated by ErrorSupport_cpp.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -//#include "ErrorSupport.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -ErrorSupport::ErrorSupport() { } -ErrorSupport::~ErrorSupport() { } - -void ErrorSupport::setName(const char* name) -{ - setName(String(name)); -} - -void ErrorSupport::setName(const String& name) -{ - DCHECK(m_path.size()); - m_path[m_path.size() - 1] = name; -} - -void ErrorSupport::push() -{ - m_path.push_back(String()); -} - -void ErrorSupport::pop() -{ - m_path.pop_back(); -} - -void ErrorSupport::addError(const char* error) -{ - addError(String(error)); -} - -void ErrorSupport::addError(const String& error) -{ - StringBuilder builder; - for (size_t i = 0; i < m_path.size(); ++i) { - if (i) - StringUtil::builderAppend(builder, '.'); - StringUtil::builderAppend(builder, m_path[i]); - } - StringUtil::builderAppend(builder, ": "); - StringUtil::builderAppend(builder, error); - m_errors.push_back(StringUtil::builderToString(builder)); -} - -bool ErrorSupport::hasErrors() -{ - return !!m_errors.size(); -} - -String ErrorSupport::errors() -{ - StringBuilder builder; - for (size_t i = 0; i < m_errors.size(); ++i) { - if (i) - StringUtil::builderAppend(builder, "; "); - StringUtil::builderAppend(builder, m_errors[i]); - } - return StringUtil::builderToString(builder); -} - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/inspector_protocol/lib/ErrorSupport_h.template b/tools/inspector_protocol/lib/ErrorSupport_h.template deleted file mode 100644 index f317a3cfb411b5..00000000000000 --- a/tools/inspector_protocol/lib/ErrorSupport_h.template +++ /dev/null @@ -1,39 +0,0 @@ -// This file is generated by ErrorSupport_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_ErrorSupport_h -#define {{"_".join(config.protocol.namespace)}}_ErrorSupport_h - -#include {{format_include(config.protocol.package, "Forward")}} - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -class {{config.lib.export_macro}} ErrorSupport { -public: - ErrorSupport(); - ~ErrorSupport(); - - void push(); - void setName(const char*); - void setName(const String&); - void pop(); - void addError(const char*); - void addError(const String&); - bool hasErrors(); - String errors(); - -private: - std::vector<String> m_path; - std::vector<String> m_errors; -}; - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_ErrorSupport_h) diff --git a/tools/inspector_protocol/lib/FrontendChannel_h.template b/tools/inspector_protocol/lib/FrontendChannel_h.template deleted file mode 100644 index df104debadbe85..00000000000000 --- a/tools/inspector_protocol/lib/FrontendChannel_h.template +++ /dev/null @@ -1,40 +0,0 @@ -// This file is generated by FrontendChannel_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_FrontendChannel_h -#define {{"_".join(config.protocol.namespace)}}_FrontendChannel_h - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -class {{config.lib.export_macro}} Serializable { -public: - ProtocolMessage serialize(bool binary) { - if (binary) - return StringUtil::binaryToMessage(serializeToBinary()); - else - return StringUtil::jsonToMessage(serializeToJSON()); - } - virtual String serializeToJSON() = 0; - virtual std::vector<uint8_t> serializeToBinary() = 0; - virtual ~Serializable() = default; -}; - -class {{config.lib.export_macro}} FrontendChannel { -public: - virtual ~FrontendChannel() { } - virtual void sendProtocolResponse(int callId, std::unique_ptr<Serializable> message) = 0; - virtual void sendProtocolNotification(std::unique_ptr<Serializable> message) = 0; - virtual void fallThrough(int callId, const String& method, const ProtocolMessage& message) = 0; - virtual void flushProtocolNotifications() = 0; -}; - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_FrontendChannel_h) diff --git a/tools/inspector_protocol/lib/Maybe_h.template b/tools/inspector_protocol/lib/Maybe_h.template deleted file mode 100644 index 8dfee7e9d5cb72..00000000000000 --- a/tools/inspector_protocol/lib/Maybe_h.template +++ /dev/null @@ -1,77 +0,0 @@ -// This file is generated by Maybe_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_Maybe_h -#define {{"_".join(config.protocol.namespace)}}_Maybe_h - -//#include "Forward.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -namespace detail { -template<typename T> -class PtrMaybe { -public: - PtrMaybe() = default; - PtrMaybe(std::unique_ptr<T> value) : m_value(std::move(value)) { } - PtrMaybe(PtrMaybe&& other) noexcept : m_value(std::move(other.m_value)) {} - void operator=(std::unique_ptr<T> value) { m_value = std::move(value); } - T* fromJust() const { DCHECK(m_value); return m_value.get(); } - T* fromMaybe(T* defaultValue) const { return m_value ? m_value.get() : defaultValue; } - bool isJust() const { return !!m_value; } - std::unique_ptr<T> takeJust() { DCHECK(m_value); return std::move(m_value); } -private: - std::unique_ptr<T> m_value; -}; - -template<typename T> -class ValueMaybe { -public: - ValueMaybe() : m_isJust(false), m_value() { } - ValueMaybe(T value) : m_isJust(true), m_value(std::move(value)) { } - ValueMaybe(ValueMaybe&& other) noexcept - : m_isJust(other.m_isJust), - m_value(std::move(other.m_value)) {} - void operator=(T value) { m_value = value; m_isJust = true; } - const T& fromJust() const { DCHECK(m_isJust); return m_value; } - const T& fromMaybe(const T& defaultValue) const { return m_isJust ? m_value : defaultValue; } - bool isJust() const { return m_isJust; } - T takeJust() { DCHECK(m_isJust); return std::move(m_value); } -private: - bool m_isJust; - T m_value; -}; - -template <typename T> -struct MaybeTypedef { typedef PtrMaybe<T> type; }; - -template <> -struct MaybeTypedef<bool> { typedef ValueMaybe<bool> type; }; - -template <> -struct MaybeTypedef<int> { typedef ValueMaybe<int> type; }; - -template <> -struct MaybeTypedef<double> { typedef ValueMaybe<double> type; }; - -template <> -struct MaybeTypedef<String> { typedef ValueMaybe<String> type; }; - -template <> -struct MaybeTypedef<Binary> { typedef ValueMaybe<Binary> type; }; - -} // namespace detail - -template <typename T> -using Maybe = typename detail::MaybeTypedef<T>::type; - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_Maybe_h) diff --git a/tools/inspector_protocol/lib/Parser_cpp.template b/tools/inspector_protocol/lib/Parser_cpp.template deleted file mode 100644 index ea7ecc5a1a4756..00000000000000 --- a/tools/inspector_protocol/lib/Parser_cpp.template +++ /dev/null @@ -1,548 +0,0 @@ -// This file is generated by Parser_cpp.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -namespace { - -const int stackLimit = 1000; - -enum Token { - ObjectBegin, - ObjectEnd, - ArrayBegin, - ArrayEnd, - StringLiteral, - Number, - BoolTrue, - BoolFalse, - NullToken, - ListSeparator, - ObjectPairSeparator, - InvalidToken, -}; - -const char* const nullString = "null"; -const char* const trueString = "true"; -const char* const falseString = "false"; - -bool isASCII(uint16_t c) -{ - return !(c & ~0x7F); -} - -bool isSpaceOrNewLine(uint16_t c) -{ - return isASCII(c) && c <= ' ' && (c == ' ' || (c <= 0xD && c >= 0x9)); -} - -double charactersToDouble(const uint16_t* characters, size_t length, bool* ok) -{ - std::vector<char> buffer; - buffer.reserve(length + 1); - for (size_t i = 0; i < length; ++i) { - if (!isASCII(characters[i])) { - *ok = false; - return 0; - } - buffer.push_back(static_cast<char>(characters[i])); - } - buffer.push_back('\0'); - return StringUtil::toDouble(buffer.data(), length, ok); -} - -double charactersToDouble(const uint8_t* characters, size_t length, bool* ok) -{ - std::string buffer(reinterpret_cast<const char*>(characters), length); - return StringUtil::toDouble(buffer.data(), length, ok); -} - -template<typename Char> -bool parseConstToken(const Char* start, const Char* end, const Char** tokenEnd, const char* token) -{ - while (start < end && *token != '\0' && *start++ == *token++) { } - if (*token != '\0') - return false; - *tokenEnd = start; - return true; -} - -template<typename Char> -bool readInt(const Char* start, const Char* end, const Char** tokenEnd, bool canHaveLeadingZeros) -{ - if (start == end) - return false; - bool haveLeadingZero = '0' == *start; - int length = 0; - while (start < end && '0' <= *start && *start <= '9') { - ++start; - ++length; - } - if (!length) - return false; - if (!canHaveLeadingZeros && length > 1 && haveLeadingZero) - return false; - *tokenEnd = start; - return true; -} - -template<typename Char> -bool parseNumberToken(const Char* start, const Char* end, const Char** tokenEnd) -{ - // We just grab the number here. We validate the size in DecodeNumber. - // According to RFC4627, a valid number is: [minus] int [frac] [exp] - if (start == end) - return false; - Char c = *start; - if ('-' == c) - ++start; - - if (!readInt(start, end, &start, false)) - return false; - if (start == end) { - *tokenEnd = start; - return true; - } - - // Optional fraction part - c = *start; - if ('.' == c) { - ++start; - if (!readInt(start, end, &start, true)) - return false; - if (start == end) { - *tokenEnd = start; - return true; - } - c = *start; - } - - // Optional exponent part - if ('e' == c || 'E' == c) { - ++start; - if (start == end) - return false; - c = *start; - if ('-' == c || '+' == c) { - ++start; - if (start == end) - return false; - } - if (!readInt(start, end, &start, true)) - return false; - } - - *tokenEnd = start; - return true; -} - -template<typename Char> -bool readHexDigits(const Char* start, const Char* end, const Char** tokenEnd, int digits) -{ - if (end - start < digits) - return false; - for (int i = 0; i < digits; ++i) { - Char c = *start++; - if (!(('0' <= c && c <= '9') || ('a' <= c && c <= 'f') || ('A' <= c && c <= 'F'))) - return false; - } - *tokenEnd = start; - return true; -} - -template<typename Char> -bool parseStringToken(const Char* start, const Char* end, const Char** tokenEnd) -{ - while (start < end) { - Char c = *start++; - if ('\\' == c) { - if (start == end) - return false; - c = *start++; - // Make sure the escaped char is valid. - switch (c) { - case 'x': - if (!readHexDigits(start, end, &start, 2)) - return false; - break; - case 'u': - if (!readHexDigits(start, end, &start, 4)) - return false; - break; - case '\\': - case '/': - case 'b': - case 'f': - case 'n': - case 'r': - case 't': - case 'v': - case '"': - break; - default: - return false; - } - } else if ('"' == c) { - *tokenEnd = start; - return true; - } - } - return false; -} - -template<typename Char> -bool skipComment(const Char* start, const Char* end, const Char** commentEnd) -{ - if (start == end) - return false; - - if (*start != '/' || start + 1 >= end) - return false; - ++start; - - if (*start == '/') { - // Single line comment, read to newline. - for (++start; start < end; ++start) { - if (*start == '\n' || *start == '\r') { - *commentEnd = start + 1; - return true; - } - } - *commentEnd = end; - // Comment reaches end-of-input, which is fine. - return true; - } - - if (*start == '*') { - Char previous = '\0'; - // Block comment, read until end marker. - for (++start; start < end; previous = *start++) { - if (previous == '*' && *start == '/') { - *commentEnd = start + 1; - return true; - } - } - // Block comment must close before end-of-input. - return false; - } - - return false; -} - -template<typename Char> -void skipWhitespaceAndComments(const Char* start, const Char* end, const Char** whitespaceEnd) -{ - while (start < end) { - if (isSpaceOrNewLine(*start)) { - ++start; - } else if (*start == '/') { - const Char* commentEnd; - if (!skipComment(start, end, &commentEnd)) - break; - start = commentEnd; - } else { - break; - } - } - *whitespaceEnd = start; -} - -template<typename Char> -Token parseToken(const Char* start, const Char* end, const Char** tokenStart, const Char** tokenEnd) -{ - skipWhitespaceAndComments(start, end, tokenStart); - start = *tokenStart; - - if (start == end) - return InvalidToken; - - switch (*start) { - case 'n': - if (parseConstToken(start, end, tokenEnd, nullString)) - return NullToken; - break; - case 't': - if (parseConstToken(start, end, tokenEnd, trueString)) - return BoolTrue; - break; - case 'f': - if (parseConstToken(start, end, tokenEnd, falseString)) - return BoolFalse; - break; - case '[': - *tokenEnd = start + 1; - return ArrayBegin; - case ']': - *tokenEnd = start + 1; - return ArrayEnd; - case ',': - *tokenEnd = start + 1; - return ListSeparator; - case '{': - *tokenEnd = start + 1; - return ObjectBegin; - case '}': - *tokenEnd = start + 1; - return ObjectEnd; - case ':': - *tokenEnd = start + 1; - return ObjectPairSeparator; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case '-': - if (parseNumberToken(start, end, tokenEnd)) - return Number; - break; - case '"': - if (parseStringToken(start + 1, end, tokenEnd)) - return StringLiteral; - break; - } - return InvalidToken; -} - -template<typename Char> -int hexToInt(Char c) -{ - if ('0' <= c && c <= '9') - return c - '0'; - if ('A' <= c && c <= 'F') - return c - 'A' + 10; - if ('a' <= c && c <= 'f') - return c - 'a' + 10; - DCHECK(false); - return 0; -} - -template<typename Char> -bool decodeString(const Char* start, const Char* end, StringBuilder* output) -{ - while (start < end) { - uint16_t c = *start++; - if ('\\' != c) { - StringUtil::builderAppend(*output, c); - continue; - } - if (start == end) - return false; - c = *start++; - - if (c == 'x') { - // \x is not supported. - return false; - } - - switch (c) { - case '"': - case '/': - case '\\': - break; - case 'b': - c = '\b'; - break; - case 'f': - c = '\f'; - break; - case 'n': - c = '\n'; - break; - case 'r': - c = '\r'; - break; - case 't': - c = '\t'; - break; - case 'v': - c = '\v'; - break; - case 'u': - c = (hexToInt(*start) << 12) + - (hexToInt(*(start + 1)) << 8) + - (hexToInt(*(start + 2)) << 4) + - hexToInt(*(start + 3)); - start += 4; - break; - default: - return false; - } - StringUtil::builderAppend(*output, c); - } - return true; -} - -template<typename Char> -bool decodeString(const Char* start, const Char* end, String* output) -{ - if (start == end) { - *output = ""; - return true; - } - if (start > end) - return false; - StringBuilder buffer; - StringUtil::builderReserve(buffer, end - start); - if (!decodeString(start, end, &buffer)) - return false; - *output = StringUtil::builderToString(buffer); - return true; -} - -template<typename Char> -std::unique_ptr<Value> buildValue(const Char* start, const Char* end, const Char** valueTokenEnd, int depth) -{ - if (depth > stackLimit) - return nullptr; - - std::unique_ptr<Value> result; - const Char* tokenStart; - const Char* tokenEnd; - Token token = parseToken(start, end, &tokenStart, &tokenEnd); - switch (token) { - case InvalidToken: - return nullptr; - case NullToken: - result = Value::null(); - break; - case BoolTrue: - result = FundamentalValue::create(true); - break; - case BoolFalse: - result = FundamentalValue::create(false); - break; - case Number: { - bool ok; - double value = charactersToDouble(tokenStart, tokenEnd - tokenStart, &ok); - if (!ok) - return nullptr; - if (value >= INT_MIN && value <= INT_MAX && static_cast<int>(value) == value) - result = FundamentalValue::create(static_cast<int>(value)); - else - result = FundamentalValue::create(value); - break; - } - case StringLiteral: { - String value; - bool ok = decodeString(tokenStart + 1, tokenEnd - 1, &value); - if (!ok) - return nullptr; - result = StringValue::create(value); - break; - } - case ArrayBegin: { - std::unique_ptr<ListValue> array = ListValue::create(); - start = tokenEnd; - token = parseToken(start, end, &tokenStart, &tokenEnd); - while (token != ArrayEnd) { - std::unique_ptr<Value> arrayNode = buildValue(start, end, &tokenEnd, depth + 1); - if (!arrayNode) - return nullptr; - array->pushValue(std::move(arrayNode)); - - // After a list value, we expect a comma or the end of the list. - start = tokenEnd; - token = parseToken(start, end, &tokenStart, &tokenEnd); - if (token == ListSeparator) { - start = tokenEnd; - token = parseToken(start, end, &tokenStart, &tokenEnd); - if (token == ArrayEnd) - return nullptr; - } else if (token != ArrayEnd) { - // Unexpected value after list value. Bail out. - return nullptr; - } - } - if (token != ArrayEnd) - return nullptr; - result = std::move(array); - break; - } - case ObjectBegin: { - std::unique_ptr<DictionaryValue> object = DictionaryValue::create(); - start = tokenEnd; - token = parseToken(start, end, &tokenStart, &tokenEnd); - while (token != ObjectEnd) { - if (token != StringLiteral) - return nullptr; - String key; - if (!decodeString(tokenStart + 1, tokenEnd - 1, &key)) - return nullptr; - start = tokenEnd; - - token = parseToken(start, end, &tokenStart, &tokenEnd); - if (token != ObjectPairSeparator) - return nullptr; - start = tokenEnd; - - std::unique_ptr<Value> value = buildValue(start, end, &tokenEnd, depth + 1); - if (!value) - return nullptr; - object->setValue(key, std::move(value)); - start = tokenEnd; - - // After a key/value pair, we expect a comma or the end of the - // object. - token = parseToken(start, end, &tokenStart, &tokenEnd); - if (token == ListSeparator) { - start = tokenEnd; - token = parseToken(start, end, &tokenStart, &tokenEnd); - if (token == ObjectEnd) - return nullptr; - } else if (token != ObjectEnd) { - // Unexpected value after last object value. Bail out. - return nullptr; - } - } - if (token != ObjectEnd) - return nullptr; - result = std::move(object); - break; - } - - default: - // We got a token that's not a value. - return nullptr; - } - - skipWhitespaceAndComments(tokenEnd, end, valueTokenEnd); - return result; -} - -template<typename Char> -std::unique_ptr<Value> parseJSONInternal(const Char* start, unsigned length) -{ - const Char* end = start + length; - const Char *tokenEnd; - std::unique_ptr<Value> value = buildValue(start, end, &tokenEnd, 0); - if (!value || tokenEnd != end) - return nullptr; - return value; -} - -} // anonymous namespace - -std::unique_ptr<Value> parseJSONCharacters(const uint16_t* characters, unsigned length) -{ - return parseJSONInternal<uint16_t>(characters, length); -} - -std::unique_ptr<Value> parseJSONCharacters(const uint8_t* characters, unsigned length) -{ - return parseJSONInternal<uint8_t>(characters, length); -} - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/inspector_protocol/lib/Parser_h.template b/tools/inspector_protocol/lib/Parser_h.template deleted file mode 100644 index 1832c2e9724b4a..00000000000000 --- a/tools/inspector_protocol/lib/Parser_h.template +++ /dev/null @@ -1,24 +0,0 @@ -// This file is generated by Parser_h.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_Parser_h -#define {{"_".join(config.protocol.namespace)}}_Parser_h - -//#include "Forward.h" -//#include "Values.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -{{config.lib.export_macro}} std::unique_ptr<Value> parseJSONCharacters(const uint8_t*, unsigned); -{{config.lib.export_macro}} std::unique_ptr<Value> parseJSONCharacters(const uint16_t*, unsigned); - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_Parser_h) diff --git a/tools/inspector_protocol/lib/Values_cpp.template b/tools/inspector_protocol/lib/Values_cpp.template deleted file mode 100644 index 8b4dfc91e3b9c9..00000000000000 --- a/tools/inspector_protocol/lib/Values_cpp.template +++ /dev/null @@ -1,715 +0,0 @@ -// This file is generated by Values_cpp.template. - -// Copyright 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -//#include "Values.h" - -{% if config.encoding_lib.header %} -#include "{{config.encoding_lib.header}}" -{% endif %} - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -namespace { - -const char* const nullValueString = "null"; -const char* const trueValueString = "true"; -const char* const falseValueString = "false"; - -inline bool escapeChar(uint16_t c, StringBuilder* dst) -{ - switch (c) { - case '\b': StringUtil::builderAppend(*dst, "\\b"); break; - case '\f': StringUtil::builderAppend(*dst, "\\f"); break; - case '\n': StringUtil::builderAppend(*dst, "\\n"); break; - case '\r': StringUtil::builderAppend(*dst, "\\r"); break; - case '\t': StringUtil::builderAppend(*dst, "\\t"); break; - case '\\': StringUtil::builderAppend(*dst, "\\\\"); break; - case '"': StringUtil::builderAppend(*dst, "\\\""); break; - default: - return false; - } - return true; -} - -const char hexDigits[17] = "0123456789ABCDEF"; - -void appendUnsignedAsHex(uint16_t number, StringBuilder* dst) -{ - StringUtil::builderAppend(*dst, "\\u"); - for (size_t i = 0; i < 4; ++i) { - uint16_t c = hexDigits[(number & 0xF000) >> 12]; - StringUtil::builderAppend(*dst, c); - number <<= 4; - } -} - -template <typename Char> -void escapeStringForJSONInternal(const Char* str, unsigned len, - StringBuilder* dst) -{ - for (unsigned i = 0; i < len; ++i) { - Char c = str[i]; - if (escapeChar(c, dst)) - continue; - if (c < 32 || c > 126) { - appendUnsignedAsHex(c, dst); - } else { - StringUtil::builderAppend(*dst, c); - } - } -} - -// When parsing CBOR, we limit recursion depth for objects and arrays -// to this constant. -static constexpr int kStackLimitValues = 1000; - -{% if config.encoding_lib.namespace %} -using {{"::".join(config.encoding_lib.namespace)}}::Error; -using {{"::".join(config.encoding_lib.namespace)}}::Status; -using {{"::".join(config.encoding_lib.namespace)}}::span; -namespace cbor { -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::CBORTokenTag; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::CBORTokenizer; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeBinary; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeDouble; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeFalse; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeFromLatin1; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeFromUTF16; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeIndefiniteLengthArrayStart; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeIndefiniteLengthMapStart; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeInt32; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeNull; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeStop; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeString8; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EncodeTrue; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::EnvelopeEncoder; -using {{"::".join(config.encoding_lib.namespace + ['cbor'])}}::InitialByteForEnvelope; -} // namespace cbor -{% endif %} - -// Below are three parsing routines for CBOR, which cover enough -// to roundtrip JSON messages. -std::unique_ptr<DictionaryValue> parseMap(int32_t stack_depth, cbor::CBORTokenizer* tokenizer); -std::unique_ptr<ListValue> parseArray(int32_t stack_depth, cbor::CBORTokenizer* tokenizer); -std::unique_ptr<Value> parseValue(int32_t stack_depth, cbor::CBORTokenizer* tokenizer); - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -std::unique_ptr<ListValue> parseArray(int32_t stack_depth, cbor::CBORTokenizer* tokenizer) { - DCHECK(tokenizer->TokenTag() == cbor::CBORTokenTag::ARRAY_START); - tokenizer->Next(); - auto list = ListValue::create(); - while (tokenizer->TokenTag() != cbor::CBORTokenTag::STOP) { - // Error::CBOR_UNEXPECTED_EOF_IN_ARRAY - if (tokenizer->TokenTag() == cbor::CBORTokenTag::DONE) return nullptr; - if (tokenizer->TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) return nullptr; - // Parse value. - auto value = parseValue(stack_depth, tokenizer); - if (!value) return nullptr; - list->pushValue(std::move(value)); - } - tokenizer->Next(); - return list; -} - -std::unique_ptr<Value> parseValue( - int32_t stack_depth, cbor::CBORTokenizer* tokenizer) { - // Error::CBOR_STACK_LIMIT_EXCEEDED - if (stack_depth > kStackLimitValues) return nullptr; - // Skip past the envelope to get to what's inside. - if (tokenizer->TokenTag() == cbor::CBORTokenTag::ENVELOPE) - tokenizer->EnterEnvelope(); - switch (tokenizer->TokenTag()) { - case cbor::CBORTokenTag::ERROR_VALUE: - return nullptr; - case cbor::CBORTokenTag::DONE: - // Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE - return nullptr; - case cbor::CBORTokenTag::TRUE_VALUE: { - std::unique_ptr<Value> value = FundamentalValue::create(true); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::FALSE_VALUE: { - std::unique_ptr<Value> value = FundamentalValue::create(false); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::NULL_VALUE: { - std::unique_ptr<Value> value = FundamentalValue::null(); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::INT32: { - std::unique_ptr<Value> value = FundamentalValue::create(tokenizer->GetInt32()); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::DOUBLE: { - std::unique_ptr<Value> value = FundamentalValue::create(tokenizer->GetDouble()); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::STRING8: { - span<uint8_t> str = tokenizer->GetString8(); - std::unique_ptr<Value> value = - StringValue::create(StringUtil::fromUTF8(str.data(), str.size())); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::STRING16: { - span<uint8_t> wire = tokenizer->GetString16WireRep(); - DCHECK_EQ(wire.size() & 1, 0u); - std::unique_ptr<Value> value = StringValue::create(StringUtil::fromUTF16( - reinterpret_cast<const uint16_t*>(wire.data()), wire.size() / 2)); - tokenizer->Next(); - return value; - } - case cbor::CBORTokenTag::BINARY: { - span<uint8_t> payload = tokenizer->GetBinary(); - tokenizer->Next(); - return BinaryValue::create(Binary::fromSpan(payload.data(), payload.size())); - } - case cbor::CBORTokenTag::MAP_START: - return parseMap(stack_depth + 1, tokenizer); - case cbor::CBORTokenTag::ARRAY_START: - return parseArray(stack_depth + 1, tokenizer); - default: - // Error::CBOR_UNSUPPORTED_VALUE - return nullptr; - } -} - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -std::unique_ptr<DictionaryValue> parseMap( - int32_t stack_depth, cbor::CBORTokenizer* tokenizer) { - auto dict = DictionaryValue::create(); - tokenizer->Next(); - while (tokenizer->TokenTag() != cbor::CBORTokenTag::STOP) { - if (tokenizer->TokenTag() == cbor::CBORTokenTag::DONE) { - // Error::CBOR_UNEXPECTED_EOF_IN_MAP - return nullptr; - } - if (tokenizer->TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) return nullptr; - // Parse key. - String key; - if (tokenizer->TokenTag() == cbor::CBORTokenTag::STRING8) { - span<uint8_t> key_span = tokenizer->GetString8(); - key = StringUtil::fromUTF8(key_span.data(), key_span.size()); - tokenizer->Next(); - } else if (tokenizer->TokenTag() == cbor::CBORTokenTag::STRING16) { - span<uint8_t> key_span = tokenizer->GetString16WireRep(); - if (key_span.size() & 1) return nullptr; // UTF16 is 2 byte multiple. - key = StringUtil::fromUTF16( - reinterpret_cast<const uint16_t*>(key_span.data()), - key_span.size() / 2); - tokenizer->Next(); - } else { - // Error::CBOR_INVALID_MAP_KEY - return nullptr; - } - // Parse value. - auto value = parseValue(stack_depth, tokenizer); - if (!value) return nullptr; - dict->setValue(key, std::move(value)); - } - tokenizer->Next(); - return dict; -} - -} // anonymous namespace - -// static -std::unique_ptr<Value> Value::parseBinary(const uint8_t* data, size_t size) { - span<uint8_t> bytes(data, size); - - // Error::CBOR_NO_INPUT - if (bytes.empty()) return nullptr; - - // Error::CBOR_INVALID_START_BYTE - if (bytes[0] != cbor::InitialByteForEnvelope()) return nullptr; - - cbor::CBORTokenizer tokenizer(bytes); - if (tokenizer.TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) return nullptr; - - // We checked for the envelope start byte above, so the tokenizer - // must agree here, since it's not an error. - DCHECK(tokenizer.TokenTag() == cbor::CBORTokenTag::ENVELOPE); - tokenizer.EnterEnvelope(); - // Error::MAP_START_EXPECTED - if (tokenizer.TokenTag() != cbor::CBORTokenTag::MAP_START) return nullptr; - std::unique_ptr<Value> result = parseMap(/*stack_depth=*/1, &tokenizer); - if (!result) return nullptr; - if (tokenizer.TokenTag() == cbor::CBORTokenTag::DONE) return result; - if (tokenizer.TokenTag() == cbor::CBORTokenTag::ERROR_VALUE) return nullptr; - // Error::CBOR_TRAILING_JUNK - return nullptr; -} - -bool Value::asBoolean(bool*) const -{ - return false; -} - -bool Value::asDouble(double*) const -{ - return false; -} - -bool Value::asInteger(int*) const -{ - return false; -} - -bool Value::asString(String*) const -{ - return false; -} - -bool Value::asBinary(Binary*) const -{ - return false; -} - -void Value::writeJSON(StringBuilder* output) const -{ - DCHECK(m_type == TypeNull); - StringUtil::builderAppend(*output, nullValueString, 4); -} - -void Value::writeBinary(std::vector<uint8_t>* bytes) const { - DCHECK(m_type == TypeNull); - bytes->push_back(cbor::EncodeNull()); -} - -std::unique_ptr<Value> Value::clone() const -{ - return Value::null(); -} - -String Value::toJSONString() const -{ - StringBuilder result; - StringUtil::builderReserve(result, 512); - writeJSON(&result); - return StringUtil::builderToString(result); -} - -String Value::serializeToJSON() { - return toJSONString(); -} - -std::vector<uint8_t> Value::serializeToBinary() { - std::vector<uint8_t> bytes; - writeBinary(&bytes); - return bytes; -} - -bool FundamentalValue::asBoolean(bool* output) const -{ - if (type() != TypeBoolean) - return false; - *output = m_boolValue; - return true; -} - -bool FundamentalValue::asDouble(double* output) const -{ - if (type() == TypeDouble) { - *output = m_doubleValue; - return true; - } - if (type() == TypeInteger) { - *output = m_integerValue; - return true; - } - return false; -} - -bool FundamentalValue::asInteger(int* output) const -{ - if (type() != TypeInteger) - return false; - *output = m_integerValue; - return true; -} - -void FundamentalValue::writeJSON(StringBuilder* output) const -{ - DCHECK(type() == TypeBoolean || type() == TypeInteger || type() == TypeDouble); - if (type() == TypeBoolean) { - if (m_boolValue) - StringUtil::builderAppend(*output, trueValueString, 4); - else - StringUtil::builderAppend(*output, falseValueString, 5); - } else if (type() == TypeDouble) { - if (!std::isfinite(m_doubleValue)) { - StringUtil::builderAppend(*output, nullValueString, 4); - return; - } - StringUtil::builderAppend(*output, StringUtil::fromDouble(m_doubleValue)); - } else if (type() == TypeInteger) { - StringUtil::builderAppend(*output, StringUtil::fromInteger(m_integerValue)); - } -} - -void FundamentalValue::writeBinary(std::vector<uint8_t>* bytes) const { - switch (type()) { - case TypeDouble: - cbor::EncodeDouble(m_doubleValue, bytes); - return; - case TypeInteger: - cbor::EncodeInt32(m_integerValue, bytes); - return; - case TypeBoolean: - bytes->push_back(m_boolValue ? cbor::EncodeTrue() : cbor::EncodeFalse()); - return; - default: - DCHECK(false); - } -} - -std::unique_ptr<Value> FundamentalValue::clone() const -{ - switch (type()) { - case TypeDouble: return FundamentalValue::create(m_doubleValue); - case TypeInteger: return FundamentalValue::create(m_integerValue); - case TypeBoolean: return FundamentalValue::create(m_boolValue); - default: - DCHECK(false); - } - return nullptr; -} - -bool StringValue::asString(String* output) const -{ - *output = m_stringValue; - return true; -} - -void StringValue::writeJSON(StringBuilder* output) const -{ - DCHECK(type() == TypeString); - StringUtil::builderAppendQuotedString(*output, m_stringValue); -} - -namespace { -// This routine distinguishes between the current encoding for a given -// string |s|, and calls encoding routines that will -// - Ensure that all ASCII strings end up being encoded as UTF8 in -// the wire format - e.g., EncodeFromUTF16 will detect ASCII and -// do the (trivial) transcode to STRING8 on the wire, but if it's -// not ASCII it'll do STRING16. -// - Select a format that's cheap to convert to. E.g., we don't -// have LATIN1 on the wire, so we call EncodeFromLatin1 which -// transcodes to UTF8 if needed. -void EncodeString(const String& s, std::vector<uint8_t>* out) { - if (StringUtil::CharacterCount(s) == 0) { - cbor::EncodeString8(span<uint8_t>(nullptr, 0), out); // Empty string. - } else if (StringUtil::CharactersLatin1(s)) { - cbor::EncodeFromLatin1(span<uint8_t>(StringUtil::CharactersLatin1(s), - StringUtil::CharacterCount(s)), - out); - } else if (StringUtil::CharactersUTF16(s)) { - cbor::EncodeFromUTF16(span<uint16_t>(StringUtil::CharactersUTF16(s), - StringUtil::CharacterCount(s)), - out); - } else if (StringUtil::CharactersUTF8(s)) { - cbor::EncodeString8(span<uint8_t>(StringUtil::CharactersUTF8(s), - StringUtil::CharacterCount(s)), - out); - } -} -} // namespace - -void StringValue::writeBinary(std::vector<uint8_t>* bytes) const { - EncodeString(m_stringValue, bytes); -} - -std::unique_ptr<Value> StringValue::clone() const -{ - return StringValue::create(m_stringValue); -} - -bool BinaryValue::asBinary(Binary* output) const -{ - *output = m_binaryValue; - return true; -} - -void BinaryValue::writeJSON(StringBuilder* output) const -{ - DCHECK(type() == TypeBinary); - StringUtil::builderAppendQuotedString(*output, m_binaryValue.toBase64()); -} - -void BinaryValue::writeBinary(std::vector<uint8_t>* bytes) const { - cbor::EncodeBinary(span<uint8_t>(m_binaryValue.data(), - m_binaryValue.size()), bytes); -} - -std::unique_ptr<Value> BinaryValue::clone() const -{ - return BinaryValue::create(m_binaryValue); -} - -void SerializedValue::writeJSON(StringBuilder* output) const -{ - DCHECK(type() == TypeSerialized); - StringUtil::builderAppend(*output, m_serializedJSON); -} - -void SerializedValue::writeBinary(std::vector<uint8_t>* output) const -{ - DCHECK(type() == TypeSerialized); - output->insert(output->end(), m_serializedBinary.begin(), m_serializedBinary.end()); -} - -std::unique_ptr<Value> SerializedValue::clone() const -{ - return std::unique_ptr<SerializedValue>(new SerializedValue(m_serializedJSON, m_serializedBinary)); -} - -DictionaryValue::~DictionaryValue() -{ -} - -void DictionaryValue::setBoolean(const String& name, bool value) -{ - setValue(name, FundamentalValue::create(value)); -} - -void DictionaryValue::setInteger(const String& name, int value) -{ - setValue(name, FundamentalValue::create(value)); -} - -void DictionaryValue::setDouble(const String& name, double value) -{ - setValue(name, FundamentalValue::create(value)); -} - -void DictionaryValue::setString(const String& name, const String& value) -{ - setValue(name, StringValue::create(value)); -} - -void DictionaryValue::setValue(const String& name, std::unique_ptr<Value> value) -{ - set(name, value); -} - -void DictionaryValue::setObject(const String& name, std::unique_ptr<DictionaryValue> value) -{ - set(name, value); -} - -void DictionaryValue::setArray(const String& name, std::unique_ptr<ListValue> value) -{ - set(name, value); -} - -bool DictionaryValue::getBoolean(const String& name, bool* output) const -{ - protocol::Value* value = get(name); - if (!value) - return false; - return value->asBoolean(output); -} - -bool DictionaryValue::getInteger(const String& name, int* output) const -{ - Value* value = get(name); - if (!value) - return false; - return value->asInteger(output); -} - -bool DictionaryValue::getDouble(const String& name, double* output) const -{ - Value* value = get(name); - if (!value) - return false; - return value->asDouble(output); -} - -bool DictionaryValue::getString(const String& name, String* output) const -{ - protocol::Value* value = get(name); - if (!value) - return false; - return value->asString(output); -} - -DictionaryValue* DictionaryValue::getObject(const String& name) const -{ - return DictionaryValue::cast(get(name)); -} - -protocol::ListValue* DictionaryValue::getArray(const String& name) const -{ - return ListValue::cast(get(name)); -} - -protocol::Value* DictionaryValue::get(const String& name) const -{ - Dictionary::const_iterator it = m_data.find(name); - if (it == m_data.end()) - return nullptr; - return it->second.get(); -} - -DictionaryValue::Entry DictionaryValue::at(size_t index) const -{ - const String key = m_order[index]; - return std::make_pair(key, m_data.find(key)->second.get()); -} - -bool DictionaryValue::booleanProperty(const String& name, bool defaultValue) const -{ - bool result = defaultValue; - getBoolean(name, &result); - return result; -} - -int DictionaryValue::integerProperty(const String& name, int defaultValue) const -{ - int result = defaultValue; - getInteger(name, &result); - return result; -} - -double DictionaryValue::doubleProperty(const String& name, double defaultValue) const -{ - double result = defaultValue; - getDouble(name, &result); - return result; -} - -void DictionaryValue::remove(const String& name) -{ - m_data.erase(name); - m_order.erase(std::remove(m_order.begin(), m_order.end(), name), m_order.end()); -} - -void DictionaryValue::writeJSON(StringBuilder* output) const -{ - StringUtil::builderAppend(*output, '{'); - for (size_t i = 0; i < m_order.size(); ++i) { - Dictionary::const_iterator it = m_data.find(m_order[i]); - CHECK(it != m_data.end()); - if (i) - StringUtil::builderAppend(*output, ','); - StringUtil::builderAppendQuotedString(*output, it->first); - StringUtil::builderAppend(*output, ':'); - it->second->writeJSON(output); - } - StringUtil::builderAppend(*output, '}'); -} - -void DictionaryValue::writeBinary(std::vector<uint8_t>* bytes) const { - cbor::EnvelopeEncoder encoder; - encoder.EncodeStart(bytes); - bytes->push_back(cbor::EncodeIndefiniteLengthMapStart()); - for (size_t i = 0; i < m_order.size(); ++i) { - const String& key = m_order[i]; - Dictionary::const_iterator value = m_data.find(key); - DCHECK(value != m_data.cend() && value->second); - EncodeString(key, bytes); - value->second->writeBinary(bytes); - } - bytes->push_back(cbor::EncodeStop()); - encoder.EncodeStop(bytes); -} - -std::unique_ptr<Value> DictionaryValue::clone() const -{ - std::unique_ptr<DictionaryValue> result = DictionaryValue::create(); - for (size_t i = 0; i < m_order.size(); ++i) { - String key = m_order[i]; - Dictionary::const_iterator value = m_data.find(key); - DCHECK(value != m_data.cend() && value->second); - result->setValue(key, value->second->clone()); - } - return result; -} - -DictionaryValue::DictionaryValue() - : Value(TypeObject) -{ -} - -ListValue::~ListValue() -{ -} - -void ListValue::writeJSON(StringBuilder* output) const -{ - StringUtil::builderAppend(*output, '['); - bool first = true; - for (const std::unique_ptr<protocol::Value>& value : m_data) { - if (!first) - StringUtil::builderAppend(*output, ','); - value->writeJSON(output); - first = false; - } - StringUtil::builderAppend(*output, ']'); -} - -void ListValue::writeBinary(std::vector<uint8_t>* bytes) const { - cbor::EnvelopeEncoder encoder; - encoder.EncodeStart(bytes); - bytes->push_back(cbor::EncodeIndefiniteLengthArrayStart()); - for (size_t i = 0; i < m_data.size(); ++i) { - m_data[i]->writeBinary(bytes); - } - bytes->push_back(cbor::EncodeStop()); - encoder.EncodeStop(bytes); -} - -std::unique_ptr<Value> ListValue::clone() const -{ - std::unique_ptr<ListValue> result = ListValue::create(); - for (const std::unique_ptr<protocol::Value>& value : m_data) - result->pushValue(value->clone()); - return result; -} - -ListValue::ListValue() - : Value(TypeArray) -{ -} - -void ListValue::pushValue(std::unique_ptr<protocol::Value> value) -{ - DCHECK(value); - m_data.push_back(std::move(value)); -} - -protocol::Value* ListValue::at(size_t index) -{ - DCHECK_LT(index, m_data.size()); - return m_data[index].get(); -} - -void escapeLatinStringForJSON(const uint8_t* str, unsigned len, StringBuilder* dst) -{ - escapeStringForJSONInternal<uint8_t>(str, len, dst); -} - -void escapeWideStringForJSON(const uint16_t* str, unsigned len, StringBuilder* dst) -{ - escapeStringForJSONInternal<uint16_t>(str, len, dst); -} - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/inspector_protocol/lib/base_string_adapter_cc.template b/tools/inspector_protocol/lib/base_string_adapter_cc.template deleted file mode 100644 index af078b8e8ae729..00000000000000 --- a/tools/inspector_protocol/lib/base_string_adapter_cc.template +++ /dev/null @@ -1,230 +0,0 @@ -// This file is generated by DispatcherBase_cpp.template. - -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include {{format_include(config.protocol.package, "base_string_adapter")}} -#include {{format_include(config.protocol.package, "Protocol")}} - -#include <utility> -#include "base/base64.h" -#include "base/json/json_reader.h" -#include "base/memory/ptr_util.h" -#include "base/strings/string16.h" -#include "base/strings/stringprintf.h" -#include "base/strings/utf_string_conversions.h" -#include "base/values.h" - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -std::unique_ptr<protocol::Value> toProtocolValue( - const base::Value* value, int depth) { - if (!value || !depth) - return nullptr; - if (value->is_none()) - return protocol::Value::null(); - if (value->is_bool()) { - bool inner; - value->GetAsBoolean(&inner); - return protocol::FundamentalValue::create(inner); - } - if (value->is_int()) { - int inner; - value->GetAsInteger(&inner); - return protocol::FundamentalValue::create(inner); - } - if (value->is_double()) { - double inner; - value->GetAsDouble(&inner); - return protocol::FundamentalValue::create(inner); - } - if (value->is_string()) { - std::string inner; - value->GetAsString(&inner); - return protocol::StringValue::create(inner); - } - if (value->is_list()) { - const base::ListValue* list = nullptr; - value->GetAsList(&list); - std::unique_ptr<protocol::ListValue> result = protocol::ListValue::create(); - for (size_t i = 0; i < list->GetSize(); i++) { - const base::Value* item = nullptr; - list->Get(i, &item); - std::unique_ptr<protocol::Value> converted = - toProtocolValue(item, depth - 1); - if (converted) - result->pushValue(std::move(converted)); - } - return std::move(result); - } - if (value->is_dict()) { - const base::DictionaryValue* dictionary = nullptr; - value->GetAsDictionary(&dictionary); - std::unique_ptr<protocol::DictionaryValue> result = - protocol::DictionaryValue::create(); - for (base::DictionaryValue::Iterator it(*dictionary); - !it.IsAtEnd(); it.Advance()) { - std::unique_ptr<protocol::Value> converted = - toProtocolValue(&it.value(), depth - 1); - if (converted) - result->setValue(it.key(), std::move(converted)); - } - return std::move(result); - } - return nullptr; -} - -std::unique_ptr<base::Value> toBaseValue(Value* value, int depth) { - if (!value || !depth) - return nullptr; - if (value->type() == Value::TypeNull) - return std::make_unique<base::Value>(); - if (value->type() == Value::TypeBoolean) { - bool inner; - value->asBoolean(&inner); - return base::WrapUnique(new base::Value(inner)); - } - if (value->type() == Value::TypeInteger) { - int inner; - value->asInteger(&inner); - return base::WrapUnique(new base::Value(inner)); - } - if (value->type() == Value::TypeDouble) { - double inner; - value->asDouble(&inner); - return base::WrapUnique(new base::Value(inner)); - } - if (value->type() == Value::TypeString) { - std::string inner; - value->asString(&inner); - return base::WrapUnique(new base::Value(inner)); - } - if (value->type() == Value::TypeArray) { - ListValue* list = ListValue::cast(value); - std::unique_ptr<base::ListValue> result(new base::ListValue()); - for (size_t i = 0; i < list->size(); i++) { - std::unique_ptr<base::Value> converted = - toBaseValue(list->at(i), depth - 1); - if (converted) - result->Append(std::move(converted)); - } - return std::move(result); - } - if (value->type() == Value::TypeObject) { - DictionaryValue* dict = DictionaryValue::cast(value); - std::unique_ptr<base::DictionaryValue> result(new base::DictionaryValue()); - for (size_t i = 0; i < dict->size(); i++) { - DictionaryValue::Entry entry = dict->at(i); - std::unique_ptr<base::Value> converted = - toBaseValue(entry.second, depth - 1); - if (converted) - result->SetWithoutPathExpansion(entry.first, std::move(converted)); - } - return std::move(result); - } - return nullptr; -} - -// static -ProtocolMessage StringUtil::jsonToMessage(String message) { - return message; -} - -// static -ProtocolMessage StringUtil::binaryToMessage(std::vector<uint8_t> message) { - // TODO(pfeldman): figure out what to do with this copy. - return std::string(reinterpret_cast<const char*>(message.data()), message.size()); -} - -StringBuilder::StringBuilder() {} - -StringBuilder::~StringBuilder() {} - -void StringBuilder::append(const std::string& s) { - string_ += s; -} - -void StringBuilder::append(char c) { - string_ += c; -} - -void StringBuilder::append(const char* characters, size_t length) { - string_.append(characters, length); -} - -// static -void StringUtil::builderAppendQuotedString(StringBuilder& builder, - const String& str) { - builder.append('"'); - base::string16 str16 = base::UTF8ToUTF16(str); - escapeWideStringForJSON(reinterpret_cast<const uint16_t*>(&str16[0]), - str16.length(), &builder); - builder.append('"'); -} - -std::string StringBuilder::toString() { - return string_; -} - -void StringBuilder::reserveCapacity(size_t capacity) { - string_.reserve(capacity); -} - -// static -String StringUtil::fromUTF16(const uint16_t* data, size_t length) { - std::string utf8; - base::UTF16ToUTF8(reinterpret_cast<const base::char16*>(data), length, &utf8); - return utf8; -} - -Binary::Binary() : bytes_(new base::RefCountedBytes) {} -Binary::Binary(const Binary& binary) : bytes_(binary.bytes_) {} -Binary::Binary(scoped_refptr<base::RefCountedMemory> bytes) : bytes_(bytes) {} -Binary::~Binary() {} - -String Binary::toBase64() const { - std::string encoded; - base::Base64Encode( - base::StringPiece(reinterpret_cast<const char*>(bytes_->front()), - bytes_->size()), - &encoded); - return encoded; -} - -// static -Binary Binary::fromBase64(const String& base64, bool* success) { - std::string decoded; - *success = base::Base64Decode(base::StringPiece(base64), &decoded); - if (*success) { - return Binary::fromString(std::move(decoded)); - } - return Binary(); -} - -// static -Binary Binary::fromRefCounted(scoped_refptr<base::RefCountedMemory> memory) { - return Binary(memory); -} - -// static -Binary Binary::fromVector(std::vector<uint8_t> data) { - return Binary(base::RefCountedBytes::TakeVector(&data)); -} - -// static -Binary Binary::fromString(std::string data) { - return Binary(base::RefCountedString::TakeString(&data)); -} - -// static -Binary Binary::fromSpan(const uint8_t* data, size_t size) { - return Binary(scoped_refptr<base::RefCountedBytes>( - new base::RefCountedBytes(data, size))); -} - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/inspector_protocol/lib/base_string_adapter_h.template b/tools/inspector_protocol/lib/base_string_adapter_h.template deleted file mode 100644 index 46f9e1778b12bb..00000000000000 --- a/tools/inspector_protocol/lib/base_string_adapter_h.template +++ /dev/null @@ -1,142 +0,0 @@ -// This file is generated by Parser_h.template. - -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef {{"_".join(config.protocol.namespace)}}_BASE_STRING_ADAPTER_H -#define {{"_".join(config.protocol.namespace)}}_BASE_STRING_ADAPTER_H - -#include <memory> -#include <string> -#include <vector> - -#include "base/logging.h" -#include "base/macros.h" -#include "base/memory/ref_counted_memory.h" -#include "base/strings/string_number_conversions.h" -{% if config.lib.export_header %} -#include "{{config.lib.export_header}}" -{% endif %} - -namespace base { -class Value; -} - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -class Value; - -using String = std::string; -using ProtocolMessage = std::string; - -class {{config.lib.export_macro}} StringBuilder { - public: - StringBuilder(); - ~StringBuilder(); - void append(const String&); - void append(char); - void append(const char*, size_t); - String toString(); - void reserveCapacity(size_t); - - private: - std::string string_; -}; - -class {{config.lib.export_macro}} StringUtil { - public: - static String substring(const String& s, unsigned pos, unsigned len) { - return s.substr(pos, len); - } - static String fromInteger(int number) { return base::NumberToString(number); } - static String fromDouble(double number) { - String s = base::NumberToString(number); - if (!s.empty()) { // .123 -> 0.123; -.123 -> -0.123 for valid JSON. - if (s[0] == '.') - s.insert(/*index=*/ 0, /*count=*/ 1, /*ch=*/ '0'); - else if (s[0] == '-' && s.size() >= 2 && s[1] == '.') - s.insert(/*index=*/ 1, /*count=*/ 1, /*ch=*/ '0'); - } - return s; - } - static double toDouble(const char* s, size_t len, bool* ok) { - double v = 0.0; - *ok = base::StringToDouble(std::string(s, len), &v); - return *ok ? v : 0.0; - } - static size_t find(const String& s, const char* needle) { - return s.find(needle); - } - static size_t find(const String& s, const String& needle) { - return s.find(needle); - } - static const size_t kNotFound = static_cast<size_t>(-1); - static void builderAppend(StringBuilder& builder, const String& s) { - builder.append(s); - } - static void builderAppend(StringBuilder& builder, char c) { - builder.append(c); - } - static void builderAppend(StringBuilder& builder, const char* s, size_t len) { - builder.append(s, len); - } - static void builderAppendQuotedString(StringBuilder& builder, - const String& str); - static void builderReserve(StringBuilder& builder, unsigned capacity) { - builder.reserveCapacity(capacity); - } - static String builderToString(StringBuilder& builder) { - return builder.toString(); - } - - static ProtocolMessage jsonToMessage(String message); - static ProtocolMessage binaryToMessage(std::vector<uint8_t> message); - - static String fromUTF8(const uint8_t* data, size_t length) { - return std::string(reinterpret_cast<const char*>(data), length); - } - - static String fromUTF16(const uint16_t* data, size_t length); - - static const uint8_t* CharactersLatin1(const String& s) { return nullptr; } - static const uint8_t* CharactersUTF8(const String& s) { - return reinterpret_cast<const uint8_t*>(s.data()); - } - static const uint16_t* CharactersUTF16(const String& s) { return nullptr; } - static size_t CharacterCount(const String& s) { return s.size(); } -}; - -// A read-only sequence of uninterpreted bytes with reference-counted storage. -class {{config.lib.export_macro}} Binary { - public: - Binary(const Binary&); - Binary(); - ~Binary(); - - const uint8_t* data() const { return bytes_->front(); } - size_t size() const { return bytes_->size(); } - scoped_refptr<base::RefCountedMemory> bytes() const { return bytes_; } - - String toBase64() const; - - static Binary fromBase64(const String& base64, bool* success); - static Binary fromRefCounted(scoped_refptr<base::RefCountedMemory> memory); - static Binary fromVector(std::vector<uint8_t> data); - static Binary fromString(std::string data); - static Binary fromSpan(const uint8_t* data, size_t size); - - private: - explicit Binary(scoped_refptr<base::RefCountedMemory> bytes); - scoped_refptr<base::RefCountedMemory> bytes_; -}; - -std::unique_ptr<Value> toProtocolValue(const base::Value* value, int depth); -std::unique_ptr<base::Value> toBaseValue(Value* value, int depth); -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -#endif // !defined({{"_".join(config.protocol.namespace)}}_BASE_STRING_ADAPTER_H) diff --git a/tools/inspector_protocol/lib/encoding_cpp.template b/tools/inspector_protocol/lib/encoding_cpp.template deleted file mode 100644 index a0377d12f7dbb1..00000000000000 --- a/tools/inspector_protocol/lib/encoding_cpp.template +++ /dev/null @@ -1,2203 +0,0 @@ -{# This template is generated by gen_cbor_templates.py. #} -// Generated by lib/encoding_cpp.template. - -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -{% if config.encoding_lib.header == "" %} - -#include <algorithm> -#include <cassert> -#include <cmath> -#include <cstring> -#include <limits> -#include <stack> - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -// ===== encoding/encoding.cc ===== - -// ============================================================================= -// Status and Error codes -// ============================================================================= - -std::string Status::ToASCIIString() const { - switch (error) { - case Error::OK: - return "OK"; - case Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS: - return ToASCIIString("JSON: unprocessed input remains"); - case Error::JSON_PARSER_STACK_LIMIT_EXCEEDED: - return ToASCIIString("JSON: stack limit exceeded"); - case Error::JSON_PARSER_NO_INPUT: - return ToASCIIString("JSON: no input"); - case Error::JSON_PARSER_INVALID_TOKEN: - return ToASCIIString("JSON: invalid token"); - case Error::JSON_PARSER_INVALID_NUMBER: - return ToASCIIString("JSON: invalid number"); - case Error::JSON_PARSER_INVALID_STRING: - return ToASCIIString("JSON: invalid string"); - case Error::JSON_PARSER_UNEXPECTED_ARRAY_END: - return ToASCIIString("JSON: unexpected array end"); - case Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED: - return ToASCIIString("JSON: comma or array end expected"); - case Error::JSON_PARSER_STRING_LITERAL_EXPECTED: - return ToASCIIString("JSON: string literal expected"); - case Error::JSON_PARSER_COLON_EXPECTED: - return ToASCIIString("JSON: colon expected"); - case Error::JSON_PARSER_UNEXPECTED_MAP_END: - return ToASCIIString("JSON: unexpected map end"); - case Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED: - return ToASCIIString("JSON: comma or map end expected"); - case Error::JSON_PARSER_VALUE_EXPECTED: - return ToASCIIString("JSON: value expected"); - - case Error::CBOR_INVALID_INT32: - return ToASCIIString("CBOR: invalid int32"); - case Error::CBOR_INVALID_DOUBLE: - return ToASCIIString("CBOR: invalid double"); - case Error::CBOR_INVALID_ENVELOPE: - return ToASCIIString("CBOR: invalid envelope"); - case Error::CBOR_INVALID_STRING8: - return ToASCIIString("CBOR: invalid string8"); - case Error::CBOR_INVALID_STRING16: - return ToASCIIString("CBOR: invalid string16"); - case Error::CBOR_INVALID_BINARY: - return ToASCIIString("CBOR: invalid binary"); - case Error::CBOR_UNSUPPORTED_VALUE: - return ToASCIIString("CBOR: unsupported value"); - case Error::CBOR_NO_INPUT: - return ToASCIIString("CBOR: no input"); - case Error::CBOR_INVALID_START_BYTE: - return ToASCIIString("CBOR: invalid start byte"); - case Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE: - return ToASCIIString("CBOR: unexpected eof expected value"); - case Error::CBOR_UNEXPECTED_EOF_IN_ARRAY: - return ToASCIIString("CBOR: unexpected eof in array"); - case Error::CBOR_UNEXPECTED_EOF_IN_MAP: - return ToASCIIString("CBOR: unexpected eof in map"); - case Error::CBOR_INVALID_MAP_KEY: - return ToASCIIString("CBOR: invalid map key"); - case Error::CBOR_STACK_LIMIT_EXCEEDED: - return ToASCIIString("CBOR: stack limit exceeded"); - case Error::CBOR_TRAILING_JUNK: - return ToASCIIString("CBOR: trailing junk"); - case Error::CBOR_MAP_START_EXPECTED: - return ToASCIIString("CBOR: map start expected"); - case Error::CBOR_MAP_STOP_EXPECTED: - return ToASCIIString("CBOR: map stop expected"); - case Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED: - return ToASCIIString("CBOR: envelope size limit exceeded"); - } - // Some compilers can't figure out that we can't get here. - return "INVALID ERROR CODE"; -} - -std::string Status::ToASCIIString(const char* msg) const { - return std::string(msg) + " at position " + std::to_string(pos); -} - -namespace cbor { -namespace { -// Indicates the number of bits the "initial byte" needs to be shifted to the -// right after applying |kMajorTypeMask| to produce the major type in the -// lowermost bits. -static constexpr uint8_t kMajorTypeBitShift = 5u; -// Mask selecting the low-order 5 bits of the "initial byte", which is where -// the additional information is encoded. -static constexpr uint8_t kAdditionalInformationMask = 0x1f; -// Mask selecting the high-order 3 bits of the "initial byte", which indicates -// the major type of the encoded value. -static constexpr uint8_t kMajorTypeMask = 0xe0; -// Indicates the integer is in the following byte. -static constexpr uint8_t kAdditionalInformation1Byte = 24u; -// Indicates the integer is in the next 2 bytes. -static constexpr uint8_t kAdditionalInformation2Bytes = 25u; -// Indicates the integer is in the next 4 bytes. -static constexpr uint8_t kAdditionalInformation4Bytes = 26u; -// Indicates the integer is in the next 8 bytes. -static constexpr uint8_t kAdditionalInformation8Bytes = 27u; - -// Encodes the initial byte, consisting of the |type| in the first 3 bits -// followed by 5 bits of |additional_info|. -constexpr uint8_t EncodeInitialByte(MajorType type, uint8_t additional_info) { - return (static_cast<uint8_t>(type) << kMajorTypeBitShift) | - (additional_info & kAdditionalInformationMask); -} - -// TAG 24 indicates that what follows is a byte string which is -// encoded in CBOR format. We use this as a wrapper for -// maps and arrays, allowing us to skip them, because the -// byte string carries its size (byte length). -// https://tools.ietf.org/html/rfc7049#section-2.4.4.1 -static constexpr uint8_t kInitialByteForEnvelope = - EncodeInitialByte(MajorType::TAG, 24); -// The initial byte for a byte string with at most 2^32 bytes -// of payload. This is used for envelope encoding, even if -// the byte string is shorter. -static constexpr uint8_t kInitialByteFor32BitLengthByteString = - EncodeInitialByte(MajorType::BYTE_STRING, 26); - -// See RFC 7049 Section 2.2.1, indefinite length arrays / maps have additional -// info = 31. -static constexpr uint8_t kInitialByteIndefiniteLengthArray = - EncodeInitialByte(MajorType::ARRAY, 31); -static constexpr uint8_t kInitialByteIndefiniteLengthMap = - EncodeInitialByte(MajorType::MAP, 31); -// See RFC 7049 Section 2.3, Table 1; this is used for finishing indefinite -// length maps / arrays. -static constexpr uint8_t kStopByte = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 31); - -// See RFC 7049 Section 2.3, Table 2. -static constexpr uint8_t kEncodedTrue = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 21); -static constexpr uint8_t kEncodedFalse = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 20); -static constexpr uint8_t kEncodedNull = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 22); -static constexpr uint8_t kInitialByteForDouble = - EncodeInitialByte(MajorType::SIMPLE_VALUE, 27); - -// See RFC 7049 Table 3 and Section 2.4.4.2. This is used as a prefix for -// arbitrary binary data encoded as BYTE_STRING. -static constexpr uint8_t kExpectedConversionToBase64Tag = - EncodeInitialByte(MajorType::TAG, 22); - -// Writes the bytes for |v| to |out|, starting with the most significant byte. -// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html -template <typename T, class C> -void WriteBytesMostSignificantByteFirst(T v, C* out) { - for (int shift_bytes = sizeof(T) - 1; shift_bytes >= 0; --shift_bytes) - out->push_back(0xff & (v >> (shift_bytes * 8))); -} - -// Extracts sizeof(T) bytes from |in| to extract a value of type T -// (e.g. uint64_t, uint32_t, ...), most significant byte first. -// See also: https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html -template <typename T> -T ReadBytesMostSignificantByteFirst(span<uint8_t> in) { - assert(in.size() >= sizeof(T)); - T result = 0; - for (size_t shift_bytes = 0; shift_bytes < sizeof(T); ++shift_bytes) - result |= T(in[sizeof(T) - 1 - shift_bytes]) << (shift_bytes * 8); - return result; -} -} // namespace - -namespace internals { -// Reads the start of a token with definitive size from |bytes|. -// |type| is the major type as specified in RFC 7049 Section 2.1. -// |value| is the payload (e.g. for MajorType::UNSIGNED) or is the size -// (e.g. for BYTE_STRING). -// If successful, returns the number of bytes read. Otherwise returns 0. -size_t ReadTokenStart(span<uint8_t> bytes, MajorType* type, uint64_t* value) { - if (bytes.empty()) - return 0; - uint8_t initial_byte = bytes[0]; - *type = MajorType((initial_byte & kMajorTypeMask) >> kMajorTypeBitShift); - - uint8_t additional_information = initial_byte & kAdditionalInformationMask; - if (additional_information < 24) { - // Values 0-23 are encoded directly into the additional info of the - // initial byte. - *value = additional_information; - return 1; - } - if (additional_information == kAdditionalInformation1Byte) { - // Values 24-255 are encoded with one initial byte, followed by the value. - if (bytes.size() < 2) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint8_t>(bytes.subspan(1)); - return 2; - } - if (additional_information == kAdditionalInformation2Bytes) { - // Values 256-65535: 1 initial byte + 2 bytes payload. - if (bytes.size() < 1 + sizeof(uint16_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint16_t>(bytes.subspan(1)); - return 3; - } - if (additional_information == kAdditionalInformation4Bytes) { - // 32 bit uint: 1 initial byte + 4 bytes payload. - if (bytes.size() < 1 + sizeof(uint32_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint32_t>(bytes.subspan(1)); - return 5; - } - if (additional_information == kAdditionalInformation8Bytes) { - // 64 bit uint: 1 initial byte + 8 bytes payload. - if (bytes.size() < 1 + sizeof(uint64_t)) - return 0; - *value = ReadBytesMostSignificantByteFirst<uint64_t>(bytes.subspan(1)); - return 9; - } - return 0; -} - -// Writes the start of a token with |type|. The |value| may indicate the size, -// or it may be the payload if the value is an unsigned integer. -template <typename C> -void WriteTokenStartTmpl(MajorType type, uint64_t value, C* encoded) { - if (value < 24) { - // Values 0-23 are encoded directly into the additional info of the - // initial byte. - encoded->push_back(EncodeInitialByte(type, /*additional_info=*/value)); - return; - } - if (value <= std::numeric_limits<uint8_t>::max()) { - // Values 24-255 are encoded with one initial byte, followed by the value. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation1Byte)); - encoded->push_back(value); - return; - } - if (value <= std::numeric_limits<uint16_t>::max()) { - // Values 256-65535: 1 initial byte + 2 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation2Bytes)); - WriteBytesMostSignificantByteFirst<uint16_t>(value, encoded); - return; - } - if (value <= std::numeric_limits<uint32_t>::max()) { - // 32 bit uint: 1 initial byte + 4 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation4Bytes)); - WriteBytesMostSignificantByteFirst<uint32_t>(static_cast<uint32_t>(value), - encoded); - return; - } - // 64 bit uint: 1 initial byte + 8 bytes payload. - encoded->push_back(EncodeInitialByte(type, kAdditionalInformation8Bytes)); - WriteBytesMostSignificantByteFirst<uint64_t>(value, encoded); -} -void WriteTokenStart(MajorType type, - uint64_t value, - std::vector<uint8_t>* encoded) { - WriteTokenStartTmpl(type, value, encoded); -} -void WriteTokenStart(MajorType type, uint64_t value, std::string* encoded) { - WriteTokenStartTmpl(type, value, encoded); -} -} // namespace internals - -// ============================================================================= -// Detecting CBOR content -// ============================================================================= - -uint8_t InitialByteForEnvelope() { - return kInitialByteForEnvelope; -} -uint8_t InitialByteFor32BitLengthByteString() { - return kInitialByteFor32BitLengthByteString; -} -bool IsCBORMessage(span<uint8_t> msg) { - return msg.size() >= 6 && msg[0] == InitialByteForEnvelope() && - msg[1] == InitialByteFor32BitLengthByteString(); -} - -// ============================================================================= -// Encoding invidiual CBOR items -// ============================================================================= - -uint8_t EncodeTrue() { - return kEncodedTrue; -} -uint8_t EncodeFalse() { - return kEncodedFalse; -} -uint8_t EncodeNull() { - return kEncodedNull; -} - -uint8_t EncodeIndefiniteLengthArrayStart() { - return kInitialByteIndefiniteLengthArray; -} - -uint8_t EncodeIndefiniteLengthMapStart() { - return kInitialByteIndefiniteLengthMap; -} - -uint8_t EncodeStop() { - return kStopByte; -} - -template <typename C> -void EncodeInt32Tmpl(int32_t value, C* out) { - if (value >= 0) { - internals::WriteTokenStart(MajorType::UNSIGNED, value, out); - } else { - uint64_t representation = static_cast<uint64_t>(-(value + 1)); - internals::WriteTokenStart(MajorType::NEGATIVE, representation, out); - } -} -void EncodeInt32(int32_t value, std::vector<uint8_t>* out) { - EncodeInt32Tmpl(value, out); -} -void EncodeInt32(int32_t value, std::string* out) { - EncodeInt32Tmpl(value, out); -} - -template <typename C> -void EncodeString16Tmpl(span<uint16_t> in, C* out) { - uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); - internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); - // When emitting UTF16 characters, we always write the least significant byte - // first; this is because it's the native representation for X86. - // TODO(johannes): Implement a more efficient thing here later, e.g. - // casting *iff* the machine has this byte order. - // The wire format for UTF16 chars will probably remain the same - // (least significant byte first) since this way we can have - // golden files, unittests, etc. that port easily and universally. - // See also: - // https://commandcenter.blogspot.com/2012/04/byte-order-fallacy.html - for (const uint16_t two_bytes : in) { - out->push_back(two_bytes); - out->push_back(two_bytes >> 8); - } -} -void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out) { - EncodeString16Tmpl(in, out); -} -void EncodeString16(span<uint16_t> in, std::string* out) { - EncodeString16Tmpl(in, out); -} - -template <typename C> -void EncodeString8Tmpl(span<uint8_t> in, C* out) { - internals::WriteTokenStart(MajorType::STRING, - static_cast<uint64_t>(in.size_bytes()), out); - out->insert(out->end(), in.begin(), in.end()); -} -void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out) { - EncodeString8Tmpl(in, out); -} -void EncodeString8(span<uint8_t> in, std::string* out) { - EncodeString8Tmpl(in, out); -} - -template <typename C> -void EncodeFromLatin1Tmpl(span<uint8_t> latin1, C* out) { - for (size_t ii = 0; ii < latin1.size(); ++ii) { - if (latin1[ii] <= 127) - continue; - // If there's at least one non-ASCII char, convert to UTF8. - std::vector<uint8_t> utf8(latin1.begin(), latin1.begin() + ii); - for (; ii < latin1.size(); ++ii) { - if (latin1[ii] <= 127) { - utf8.push_back(latin1[ii]); - } else { - // 0xC0 means it's a UTF8 sequence with 2 bytes. - utf8.push_back((latin1[ii] >> 6) | 0xc0); - utf8.push_back((latin1[ii] | 0x80) & 0xbf); - } - } - EncodeString8(SpanFrom(utf8), out); - return; - } - EncodeString8(latin1, out); -} -void EncodeFromLatin1(span<uint8_t> latin1, std::vector<uint8_t>* out) { - EncodeFromLatin1Tmpl(latin1, out); -} -void EncodeFromLatin1(span<uint8_t> latin1, std::string* out) { - EncodeFromLatin1Tmpl(latin1, out); -} - -template <typename C> -void EncodeFromUTF16Tmpl(span<uint16_t> utf16, C* out) { - // If there's at least one non-ASCII char, encode as STRING16 (UTF16). - for (uint16_t ch : utf16) { - if (ch <= 127) - continue; - EncodeString16(utf16, out); - return; - } - // It's all US-ASCII, strip out every second byte and encode as UTF8. - internals::WriteTokenStart(MajorType::STRING, - static_cast<uint64_t>(utf16.size()), out); - out->insert(out->end(), utf16.begin(), utf16.end()); -} -void EncodeFromUTF16(span<uint16_t> utf16, std::vector<uint8_t>* out) { - EncodeFromUTF16Tmpl(utf16, out); -} -void EncodeFromUTF16(span<uint16_t> utf16, std::string* out) { - EncodeFromUTF16Tmpl(utf16, out); -} - -template <typename C> -void EncodeBinaryTmpl(span<uint8_t> in, C* out) { - out->push_back(kExpectedConversionToBase64Tag); - uint64_t byte_length = static_cast<uint64_t>(in.size_bytes()); - internals::WriteTokenStart(MajorType::BYTE_STRING, byte_length, out); - out->insert(out->end(), in.begin(), in.end()); -} -void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out) { - EncodeBinaryTmpl(in, out); -} -void EncodeBinary(span<uint8_t> in, std::string* out) { - EncodeBinaryTmpl(in, out); -} - -// A double is encoded with a specific initial byte -// (kInitialByteForDouble) plus the 64 bits of payload for its value. -constexpr size_t kEncodedDoubleSize = 1 + sizeof(uint64_t); - -// An envelope is encoded with a specific initial byte -// (kInitialByteForEnvelope), plus the start byte for a BYTE_STRING with a 32 -// bit wide length, plus a 32 bit length for that string. -constexpr size_t kEncodedEnvelopeHeaderSize = 1 + 1 + sizeof(uint32_t); - -template <typename C> -void EncodeDoubleTmpl(double value, C* out) { - // The additional_info=27 indicates 64 bits for the double follow. - // See RFC 7049 Section 2.3, Table 1. - out->push_back(kInitialByteForDouble); - union { - double from_double; - uint64_t to_uint64; - } reinterpret; - reinterpret.from_double = value; - WriteBytesMostSignificantByteFirst<uint64_t>(reinterpret.to_uint64, out); -} -void EncodeDouble(double value, std::vector<uint8_t>* out) { - EncodeDoubleTmpl(value, out); -} -void EncodeDouble(double value, std::string* out) { - EncodeDoubleTmpl(value, out); -} - -// ============================================================================= -// cbor::EnvelopeEncoder - for wrapping submessages -// ============================================================================= - -template <typename C> -void EncodeStartTmpl(C* out, size_t* byte_size_pos) { - assert(*byte_size_pos == 0); - out->push_back(kInitialByteForEnvelope); - out->push_back(kInitialByteFor32BitLengthByteString); - *byte_size_pos = out->size(); - out->resize(out->size() + sizeof(uint32_t)); -} - -void EnvelopeEncoder::EncodeStart(std::vector<uint8_t>* out) { - EncodeStartTmpl<std::vector<uint8_t>>(out, &byte_size_pos_); -} - -void EnvelopeEncoder::EncodeStart(std::string* out) { - EncodeStartTmpl<std::string>(out, &byte_size_pos_); -} - -template <typename C> -bool EncodeStopTmpl(C* out, size_t* byte_size_pos) { - assert(*byte_size_pos != 0); - // The byte size is the size of the payload, that is, all the - // bytes that were written past the byte size position itself. - uint64_t byte_size = out->size() - (*byte_size_pos + sizeof(uint32_t)); - // We store exactly 4 bytes, so at most INT32MAX, with most significant - // byte first. - if (byte_size > std::numeric_limits<uint32_t>::max()) - return false; - for (int shift_bytes = sizeof(uint32_t) - 1; shift_bytes >= 0; - --shift_bytes) { - (*out)[(*byte_size_pos)++] = 0xff & (byte_size >> (shift_bytes * 8)); - } - return true; -} - -bool EnvelopeEncoder::EncodeStop(std::vector<uint8_t>* out) { - return EncodeStopTmpl(out, &byte_size_pos_); -} - -bool EnvelopeEncoder::EncodeStop(std::string* out) { - return EncodeStopTmpl(out, &byte_size_pos_); -} - -// ============================================================================= -// cbor::NewCBOREncoder - for encoding from a streaming parser -// ============================================================================= - -namespace { -template <typename C> -class CBOREncoder : public StreamingParserHandler { - public: - CBOREncoder(C* out, Status* status) : out_(out), status_(status) { - *status_ = Status(); - } - - void HandleMapBegin() override { - if (!status_->ok()) - return; - envelopes_.emplace_back(); - envelopes_.back().EncodeStart(out_); - out_->push_back(kInitialByteIndefiniteLengthMap); - } - - void HandleMapEnd() override { - if (!status_->ok()) - return; - out_->push_back(kStopByte); - assert(!envelopes_.empty()); - if (!envelopes_.back().EncodeStop(out_)) { - HandleError( - Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); - return; - } - envelopes_.pop_back(); - } - - void HandleArrayBegin() override { - if (!status_->ok()) - return; - envelopes_.emplace_back(); - envelopes_.back().EncodeStart(out_); - out_->push_back(kInitialByteIndefiniteLengthArray); - } - - void HandleArrayEnd() override { - if (!status_->ok()) - return; - out_->push_back(kStopByte); - assert(!envelopes_.empty()); - if (!envelopes_.back().EncodeStop(out_)) { - HandleError( - Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, out_->size())); - return; - } - envelopes_.pop_back(); - } - - void HandleString8(span<uint8_t> chars) override { - if (!status_->ok()) - return; - EncodeString8(chars, out_); - } - - void HandleString16(span<uint16_t> chars) override { - if (!status_->ok()) - return; - EncodeFromUTF16(chars, out_); - } - - void HandleBinary(span<uint8_t> bytes) override { - if (!status_->ok()) - return; - EncodeBinary(bytes, out_); - } - - void HandleDouble(double value) override { - if (!status_->ok()) - return; - EncodeDouble(value, out_); - } - - void HandleInt32(int32_t value) override { - if (!status_->ok()) - return; - EncodeInt32(value, out_); - } - - void HandleBool(bool value) override { - if (!status_->ok()) - return; - // See RFC 7049 Section 2.3, Table 2. - out_->push_back(value ? kEncodedTrue : kEncodedFalse); - } - - void HandleNull() override { - if (!status_->ok()) - return; - // See RFC 7049 Section 2.3, Table 2. - out_->push_back(kEncodedNull); - } - - void HandleError(Status error) override { - if (!status_->ok()) - return; - *status_ = error; - out_->clear(); - } - - private: - C* out_; - std::vector<EnvelopeEncoder> envelopes_; - Status* status_; -}; -} // namespace - -std::unique_ptr<StreamingParserHandler> NewCBOREncoder( - std::vector<uint8_t>* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new CBOREncoder<std::vector<uint8_t>>(out, status)); -} -std::unique_ptr<StreamingParserHandler> NewCBOREncoder(std::string* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new CBOREncoder<std::string>(out, status)); -} - -// ============================================================================= -// cbor::CBORTokenizer - for parsing individual CBOR items -// ============================================================================= - -CBORTokenizer::CBORTokenizer(span<uint8_t> bytes) : bytes_(bytes) { - ReadNextToken(/*enter_envelope=*/false); -} -CBORTokenizer::~CBORTokenizer() {} - -CBORTokenTag CBORTokenizer::TokenTag() const { - return token_tag_; -} - -void CBORTokenizer::Next() { - if (token_tag_ == CBORTokenTag::ERROR_VALUE || - token_tag_ == CBORTokenTag::DONE) - return; - ReadNextToken(/*enter_envelope=*/false); -} - -void CBORTokenizer::EnterEnvelope() { - assert(token_tag_ == CBORTokenTag::ENVELOPE); - ReadNextToken(/*enter_envelope=*/true); -} - -Status CBORTokenizer::Status() const { - return status_; -} - -// The following accessor functions ::GetInt32, ::GetDouble, -// ::GetString8, ::GetString16WireRep, ::GetBinary, ::GetEnvelopeContents -// assume that a particular token was recognized in ::ReadNextToken. -// That's where all the error checking is done. By design, -// the accessors (assuming the token was recognized) never produce -// an error. - -int32_t CBORTokenizer::GetInt32() const { - assert(token_tag_ == CBORTokenTag::INT32); - // The range checks happen in ::ReadNextToken(). - return static_cast<int32_t>( - token_start_type_ == MajorType::UNSIGNED - ? token_start_internal_value_ - : -static_cast<int64_t>(token_start_internal_value_) - 1); -} - -double CBORTokenizer::GetDouble() const { - assert(token_tag_ == CBORTokenTag::DOUBLE); - union { - uint64_t from_uint64; - double to_double; - } reinterpret; - reinterpret.from_uint64 = ReadBytesMostSignificantByteFirst<uint64_t>( - bytes_.subspan(status_.pos + 1)); - return reinterpret.to_double; -} - -span<uint8_t> CBORTokenizer::GetString8() const { - assert(token_tag_ == CBORTokenTag::STRING8); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetString16WireRep() const { - assert(token_tag_ == CBORTokenTag::STRING16); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetBinary() const { - assert(token_tag_ == CBORTokenTag::BINARY); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + (token_byte_length_ - length), length); -} - -span<uint8_t> CBORTokenizer::GetEnvelopeContents() const { - assert(token_tag_ == CBORTokenTag::ENVELOPE); - auto length = static_cast<size_t>(token_start_internal_value_); - return bytes_.subspan(status_.pos + kEncodedEnvelopeHeaderSize, length); -} - -// All error checking happens in ::ReadNextToken, so that the accessors -// can avoid having to carry an error return value. -// -// With respect to checking the encoded lengths of strings, arrays, etc: -// On the wire, CBOR uses 1,2,4, and 8 byte unsigned integers, so -// we initially read them as uint64_t, usually into token_start_internal_value_. -// -// However, since these containers have a representation on the machine, -// we need to do corresponding size computations on the input byte array, -// output span (e.g. the payload for a string), etc., and size_t is -// machine specific (in practice either 32 bit or 64 bit). -// -// Further, we must avoid overflowing size_t. Therefore, we use this -// kMaxValidLength constant to: -// - Reject values that are larger than the architecture specific -// max size_t (differs between 32 bit and 64 bit arch). -// - Reserve at least one bit so that we can check against overflows -// when adding lengths (array / string length / etc.); we do this by -// ensuring that the inputs to an addition are <= kMaxValidLength, -// and then checking whether the sum went past it. -// -// See also -// https://chromium.googlesource.com/chromium/src/+/HEAD/docs/security/integer-semantics.md -static const uint64_t kMaxValidLength = - std::min<uint64_t>(std::numeric_limits<uint64_t>::max() >> 2, - std::numeric_limits<size_t>::max()); - -void CBORTokenizer::ReadNextToken(bool enter_envelope) { - if (enter_envelope) { - status_.pos += kEncodedEnvelopeHeaderSize; - } else { - status_.pos = - status_.pos == Status::npos() ? 0 : status_.pos + token_byte_length_; - } - status_.error = Error::OK; - if (status_.pos >= bytes_.size()) { - token_tag_ = CBORTokenTag::DONE; - return; - } - const size_t remaining_bytes = bytes_.size() - status_.pos; - switch (bytes_[status_.pos]) { - case kStopByte: - SetToken(CBORTokenTag::STOP, 1); - return; - case kInitialByteIndefiniteLengthMap: - SetToken(CBORTokenTag::MAP_START, 1); - return; - case kInitialByteIndefiniteLengthArray: - SetToken(CBORTokenTag::ARRAY_START, 1); - return; - case kEncodedTrue: - SetToken(CBORTokenTag::TRUE_VALUE, 1); - return; - case kEncodedFalse: - SetToken(CBORTokenTag::FALSE_VALUE, 1); - return; - case kEncodedNull: - SetToken(CBORTokenTag::NULL_VALUE, 1); - return; - case kExpectedConversionToBase64Tag: { // BINARY - const size_t bytes_read = internals::ReadTokenStart( - bytes_.subspan(status_.pos + 1), &token_start_type_, - &token_start_internal_value_); - if (!bytes_read || token_start_type_ != MajorType::BYTE_STRING || - token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_BINARY); - return; - } - const uint64_t token_byte_length = token_start_internal_value_ + - /* tag before token start: */ 1 + - /* token start: */ bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_BINARY); - return; - } - SetToken(CBORTokenTag::BINARY, static_cast<size_t>(token_byte_length)); - return; - } - case kInitialByteForDouble: { // DOUBLE - if (kEncodedDoubleSize > remaining_bytes) { - SetError(Error::CBOR_INVALID_DOUBLE); - return; - } - SetToken(CBORTokenTag::DOUBLE, kEncodedDoubleSize); - return; - } - case kInitialByteForEnvelope: { // ENVELOPE - if (kEncodedEnvelopeHeaderSize > remaining_bytes) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - // The envelope must be a byte string with 32 bit length. - if (bytes_[status_.pos + 1] != kInitialByteFor32BitLengthByteString) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - // Read the length of the byte string. - token_start_internal_value_ = ReadBytesMostSignificantByteFirst<uint32_t>( - bytes_.subspan(status_.pos + 2)); - if (token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - uint64_t token_byte_length = - token_start_internal_value_ + kEncodedEnvelopeHeaderSize; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_ENVELOPE); - return; - } - SetToken(CBORTokenTag::ENVELOPE, static_cast<size_t>(token_byte_length)); - return; - } - default: { - const size_t bytes_read = internals::ReadTokenStart( - bytes_.subspan(status_.pos), &token_start_type_, - &token_start_internal_value_); - switch (token_start_type_) { - case MajorType::UNSIGNED: // INT32. - // INT32 is a signed int32 (int32 makes sense for the - // inspector_protocol, it's not a CBOR limitation), so we check - // against the signed max, so that the allowable values are - // 0, 1, 2, ... 2^31 - 1. - if (!bytes_read || - static_cast<int64_t>(std::numeric_limits<int32_t>::max()) < - static_cast<int64_t>(token_start_internal_value_)) { - SetError(Error::CBOR_INVALID_INT32); - return; - } - SetToken(CBORTokenTag::INT32, bytes_read); - return; - case MajorType::NEGATIVE: { // INT32. - // INT32 is a signed int32 (int32 makes sense for the - // inspector_protocol, it's not a CBOR limitation); in CBOR, the - // negative values for INT32 are represented as NEGATIVE, that is, -1 - // INT32 is represented as 1 << 5 | 0 (major type 1, additional info - // value 0). - // The represented allowed values range is -1 to -2^31. - // They are mapped into the encoded range of 0 to 2^31-1. - // We check the payload in token_start_internal_value_ against - // that range (2^31-1 is also known as - // std::numeric_limits<int32_t>::max()). - if (!bytes_read || - static_cast<int64_t>(token_start_internal_value_) > - static_cast<int64_t>(std::numeric_limits<int32_t>::max())) { - SetError(Error::CBOR_INVALID_INT32); - return; - } - SetToken(CBORTokenTag::INT32, bytes_read); - return; - } - case MajorType::STRING: { // STRING8. - if (!bytes_read || token_start_internal_value_ > kMaxValidLength) { - SetError(Error::CBOR_INVALID_STRING8); - return; - } - uint64_t token_byte_length = token_start_internal_value_ + bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_STRING8); - return; - } - SetToken(CBORTokenTag::STRING8, - static_cast<size_t>(token_byte_length)); - return; - } - case MajorType::BYTE_STRING: { // STRING16. - // Length must be divisible by 2 since UTF16 is 2 bytes per - // character, hence the &1 check. - if (!bytes_read || token_start_internal_value_ > kMaxValidLength || - token_start_internal_value_ & 1) { - SetError(Error::CBOR_INVALID_STRING16); - return; - } - uint64_t token_byte_length = token_start_internal_value_ + bytes_read; - if (token_byte_length > remaining_bytes) { - SetError(Error::CBOR_INVALID_STRING16); - return; - } - SetToken(CBORTokenTag::STRING16, - static_cast<size_t>(token_byte_length)); - return; - } - case MajorType::ARRAY: - case MajorType::MAP: - case MajorType::TAG: - case MajorType::SIMPLE_VALUE: - SetError(Error::CBOR_UNSUPPORTED_VALUE); - return; - } - } - } -} - -void CBORTokenizer::SetToken(CBORTokenTag token_tag, size_t token_byte_length) { - token_tag_ = token_tag; - token_byte_length_ = token_byte_length; -} - -void CBORTokenizer::SetError(Error error) { - token_tag_ = CBORTokenTag::ERROR_VALUE; - status_.error = error; -} - -// ============================================================================= -// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages -// ============================================================================= - -namespace { -// When parsing CBOR, we limit recursion depth for objects and arrays -// to this constant. -static constexpr int kStackLimit = 300; - -// Below are three parsing routines for CBOR, which cover enough -// to roundtrip JSON messages. -bool ParseMap(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); -bool ParseArray(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); -bool ParseValue(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out); - -void ParseUTF16String(CBORTokenizer* tokenizer, StreamingParserHandler* out) { - std::vector<uint16_t> value; - span<uint8_t> rep = tokenizer->GetString16WireRep(); - for (size_t ii = 0; ii < rep.size(); ii += 2) - value.push_back((rep[ii + 1] << 8) | rep[ii]); - out->HandleString16(span<uint16_t>(value.data(), value.size())); - tokenizer->Next(); -} - -bool ParseUTF8String(CBORTokenizer* tokenizer, StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::STRING8); - out->HandleString8(tokenizer->GetString8()); - tokenizer->Next(); - return true; -} - -bool ParseValue(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - if (stack_depth > kStackLimit) { - out->HandleError( - Status{Error::CBOR_STACK_LIMIT_EXCEEDED, tokenizer->Status().pos}); - return false; - } - // Skip past the envelope to get to what's inside. - if (tokenizer->TokenTag() == CBORTokenTag::ENVELOPE) - tokenizer->EnterEnvelope(); - switch (tokenizer->TokenTag()) { - case CBORTokenTag::ERROR_VALUE: - out->HandleError(tokenizer->Status()); - return false; - case CBORTokenTag::DONE: - out->HandleError(Status{Error::CBOR_UNEXPECTED_EOF_EXPECTED_VALUE, - tokenizer->Status().pos}); - return false; - case CBORTokenTag::TRUE_VALUE: - out->HandleBool(true); - tokenizer->Next(); - return true; - case CBORTokenTag::FALSE_VALUE: - out->HandleBool(false); - tokenizer->Next(); - return true; - case CBORTokenTag::NULL_VALUE: - out->HandleNull(); - tokenizer->Next(); - return true; - case CBORTokenTag::INT32: - out->HandleInt32(tokenizer->GetInt32()); - tokenizer->Next(); - return true; - case CBORTokenTag::DOUBLE: - out->HandleDouble(tokenizer->GetDouble()); - tokenizer->Next(); - return true; - case CBORTokenTag::STRING8: - return ParseUTF8String(tokenizer, out); - case CBORTokenTag::STRING16: - ParseUTF16String(tokenizer, out); - return true; - case CBORTokenTag::BINARY: { - out->HandleBinary(tokenizer->GetBinary()); - tokenizer->Next(); - return true; - } - case CBORTokenTag::MAP_START: - return ParseMap(stack_depth + 1, tokenizer, out); - case CBORTokenTag::ARRAY_START: - return ParseArray(stack_depth + 1, tokenizer, out); - default: - out->HandleError( - Status{Error::CBOR_UNSUPPORTED_VALUE, tokenizer->Status().pos}); - return false; - } -} - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -bool ParseArray(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::ARRAY_START); - tokenizer->Next(); - out->HandleArrayBegin(); - while (tokenizer->TokenTag() != CBORTokenTag::STOP) { - if (tokenizer->TokenTag() == CBORTokenTag::DONE) { - out->HandleError( - Status{Error::CBOR_UNEXPECTED_EOF_IN_ARRAY, tokenizer->Status().pos}); - return false; - } - if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer->Status()); - return false; - } - // Parse value. - if (!ParseValue(stack_depth, tokenizer, out)) - return false; - } - out->HandleArrayEnd(); - tokenizer->Next(); - return true; -} - -// |bytes| must start with the indefinite length array byte, so basically, -// ParseArray may only be called after an indefinite length array has been -// detected. -bool ParseMap(int32_t stack_depth, - CBORTokenizer* tokenizer, - StreamingParserHandler* out) { - assert(tokenizer->TokenTag() == CBORTokenTag::MAP_START); - out->HandleMapBegin(); - tokenizer->Next(); - while (tokenizer->TokenTag() != CBORTokenTag::STOP) { - if (tokenizer->TokenTag() == CBORTokenTag::DONE) { - out->HandleError( - Status{Error::CBOR_UNEXPECTED_EOF_IN_MAP, tokenizer->Status().pos}); - return false; - } - if (tokenizer->TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer->Status()); - return false; - } - // Parse key. - if (tokenizer->TokenTag() == CBORTokenTag::STRING8) { - if (!ParseUTF8String(tokenizer, out)) - return false; - } else if (tokenizer->TokenTag() == CBORTokenTag::STRING16) { - ParseUTF16String(tokenizer, out); - } else { - out->HandleError( - Status{Error::CBOR_INVALID_MAP_KEY, tokenizer->Status().pos}); - return false; - } - // Parse value. - if (!ParseValue(stack_depth, tokenizer, out)) - return false; - } - out->HandleMapEnd(); - tokenizer->Next(); - return true; -} -} // namespace - -void ParseCBOR(span<uint8_t> bytes, StreamingParserHandler* out) { - if (bytes.empty()) { - out->HandleError(Status{Error::CBOR_NO_INPUT, 0}); - return; - } - if (bytes[0] != kInitialByteForEnvelope) { - out->HandleError(Status{Error::CBOR_INVALID_START_BYTE, 0}); - return; - } - CBORTokenizer tokenizer(bytes); - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer.Status()); - return; - } - // We checked for the envelope start byte above, so the tokenizer - // must agree here, since it's not an error. - assert(tokenizer.TokenTag() == CBORTokenTag::ENVELOPE); - tokenizer.EnterEnvelope(); - if (tokenizer.TokenTag() != CBORTokenTag::MAP_START) { - out->HandleError( - Status{Error::CBOR_MAP_START_EXPECTED, tokenizer.Status().pos}); - return; - } - if (!ParseMap(/*stack_depth=*/1, &tokenizer, out)) - return; - if (tokenizer.TokenTag() == CBORTokenTag::DONE) - return; - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) { - out->HandleError(tokenizer.Status()); - return; - } - out->HandleError(Status{Error::CBOR_TRAILING_JUNK, tokenizer.Status().pos}); -} - -// ============================================================================= -// cbor::AppendString8EntryToMap - for limited in-place editing of messages -// ============================================================================= - -template <typename C> -Status AppendString8EntryToCBORMapTmpl(span<uint8_t> string8_key, - span<uint8_t> string8_value, - C* cbor) { - // Careful below: Don't compare (*cbor)[idx] with a uint8_t, since - // it could be a char (signed!). Instead, use bytes. - span<uint8_t> bytes(reinterpret_cast<const uint8_t*>(cbor->data()), - cbor->size()); - CBORTokenizer tokenizer(bytes); - if (tokenizer.TokenTag() == CBORTokenTag::ERROR_VALUE) - return tokenizer.Status(); - if (tokenizer.TokenTag() != CBORTokenTag::ENVELOPE) - return Status(Error::CBOR_INVALID_ENVELOPE, 0); - size_t envelope_size = tokenizer.GetEnvelopeContents().size(); - size_t old_size = cbor->size(); - if (old_size != envelope_size + kEncodedEnvelopeHeaderSize) - return Status(Error::CBOR_INVALID_ENVELOPE, 0); - if (envelope_size == 0 || - (tokenizer.GetEnvelopeContents()[0] != EncodeIndefiniteLengthMapStart())) - return Status(Error::CBOR_MAP_START_EXPECTED, kEncodedEnvelopeHeaderSize); - if (bytes[bytes.size() - 1] != EncodeStop()) - return Status(Error::CBOR_MAP_STOP_EXPECTED, cbor->size() - 1); - cbor->pop_back(); - EncodeString8(string8_key, cbor); - EncodeString8(string8_value, cbor); - cbor->push_back(EncodeStop()); - size_t new_envelope_size = envelope_size + (cbor->size() - old_size); - if (new_envelope_size > std::numeric_limits<uint32_t>::max()) - return Status(Error::CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED, 0); - size_t size_pos = cbor->size() - new_envelope_size - sizeof(uint32_t); - uint8_t* out = reinterpret_cast<uint8_t*>(&cbor->at(size_pos)); - *(out++) = (new_envelope_size >> 24) & 0xff; - *(out++) = (new_envelope_size >> 16) & 0xff; - *(out++) = (new_envelope_size >> 8) & 0xff; - *(out) = new_envelope_size & 0xff; - return Status(); -} -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::vector<uint8_t>* cbor) { - return AppendString8EntryToCBORMapTmpl(string8_key, string8_value, cbor); -} -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::string* cbor) { - return AppendString8EntryToCBORMapTmpl(string8_key, string8_value, cbor); -} -} // namespace cbor - -namespace json { - -// ============================================================================= -// json::NewJSONEncoder - for encoding streaming parser events as JSON -// ============================================================================= - -namespace { -// Prints |value| to |out| with 4 hex digits, most significant chunk first. -template <typename C> -void PrintHex(uint16_t value, C* out) { - for (int ii = 3; ii >= 0; --ii) { - int four_bits = 0xf & (value >> (4 * ii)); - out->push_back(four_bits + ((four_bits <= 9) ? '0' : ('a' - 10))); - } -} - -// In the writer below, we maintain a stack of State instances. -// It is just enough to emit the appropriate delimiters and brackets -// in JSON. -enum class Container { - // Used for the top-level, initial state. - NONE, - // Inside a JSON object. - MAP, - // Inside a JSON array. - ARRAY -}; -class State { - public: - explicit State(Container container) : container_(container) {} - void StartElement(std::vector<uint8_t>* out) { StartElementTmpl(out); } - void StartElement(std::string* out) { StartElementTmpl(out); } - Container container() const { return container_; } - - private: - template <typename C> - void StartElementTmpl(C* out) { - assert(container_ != Container::NONE || size_ == 0); - if (size_ != 0) { - char delim = (!(size_ & 1) || container_ == Container::ARRAY) ? ',' : ':'; - out->push_back(delim); - } - ++size_; - } - - Container container_ = Container::NONE; - int size_ = 0; -}; - -constexpr char kBase64Table[] = - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - "abcdefghijklmnopqrstuvwxyz0123456789+/"; - -template <typename C> -void Base64Encode(const span<uint8_t>& in, C* out) { - // The following three cases are based on the tables in the example - // section in https://en.wikipedia.org/wiki/Base64. We process three - // input bytes at a time, emitting 4 output bytes at a time. - size_t ii = 0; - - // While possible, process three input bytes. - for (; ii + 3 <= in.size(); ii += 3) { - uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8) | in[ii + 2]; - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); - out->push_back(kBase64Table[twentyfour_bits & 0x3f]); - } - if (ii + 2 <= in.size()) { // Process two input bytes. - uint32_t twentyfour_bits = (in[ii] << 16) | (in[ii + 1] << 8); - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back(kBase64Table[(twentyfour_bits >> 6) & 0x3f]); - out->push_back('='); // Emit padding. - return; - } - if (ii + 1 <= in.size()) { // Process a single input byte. - uint32_t twentyfour_bits = (in[ii] << 16); - out->push_back(kBase64Table[(twentyfour_bits >> 18)]); - out->push_back(kBase64Table[(twentyfour_bits >> 12) & 0x3f]); - out->push_back('='); // Emit padding. - out->push_back('='); // Emit padding. - } -} - -// Implements a handler for JSON parser events to emit a JSON string. -template <typename C> -class JSONEncoder : public StreamingParserHandler { - public: - JSONEncoder(const Platform* platform, C* out, Status* status) - : platform_(platform), out_(out), status_(status) { - *status_ = Status(); - state_.emplace(Container::NONE); - } - - void HandleMapBegin() override { - if (!status_->ok()) - return; - assert(!state_.empty()); - state_.top().StartElement(out_); - state_.emplace(Container::MAP); - Emit('{'); - } - - void HandleMapEnd() override { - if (!status_->ok()) - return; - assert(state_.size() >= 2 && state_.top().container() == Container::MAP); - state_.pop(); - Emit('}'); - } - - void HandleArrayBegin() override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - state_.emplace(Container::ARRAY); - Emit('['); - } - - void HandleArrayEnd() override { - if (!status_->ok()) - return; - assert(state_.size() >= 2 && state_.top().container() == Container::ARRAY); - state_.pop(); - Emit(']'); - } - - void HandleString16(span<uint16_t> chars) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - for (const uint16_t ch : chars) { - if (ch == '"') { - Emit("\\\""); - } else if (ch == '\\') { - Emit("\\\\"); - } else if (ch == '\b') { - Emit("\\b"); - } else if (ch == '\f') { - Emit("\\f"); - } else if (ch == '\n') { - Emit("\\n"); - } else if (ch == '\r') { - Emit("\\r"); - } else if (ch == '\t') { - Emit("\\t"); - } else if (ch >= 32 && ch <= 126) { - Emit(ch); - } else { - Emit("\\u"); - PrintHex(ch, out_); - } - } - Emit('"'); - } - - void HandleString8(span<uint8_t> chars) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - for (size_t ii = 0; ii < chars.size(); ++ii) { - uint8_t c = chars[ii]; - if (c == '"') { - Emit("\\\""); - } else if (c == '\\') { - Emit("\\\\"); - } else if (c == '\b') { - Emit("\\b"); - } else if (c == '\f') { - Emit("\\f"); - } else if (c == '\n') { - Emit("\\n"); - } else if (c == '\r') { - Emit("\\r"); - } else if (c == '\t') { - Emit("\\t"); - } else if (c >= 32 && c <= 126) { - Emit(c); - } else if (c < 32) { - Emit("\\u"); - PrintHex(static_cast<uint16_t>(c), out_); - } else { - // Inspect the leading byte to figure out how long the utf8 - // byte sequence is; while doing this initialize |codepoint| - // with the first few bits. - // See table in: https://en.wikipedia.org/wiki/UTF-8 - // byte one is 110x xxxx -> 2 byte utf8 sequence - // byte one is 1110 xxxx -> 3 byte utf8 sequence - // byte one is 1111 0xxx -> 4 byte utf8 sequence - uint32_t codepoint; - int num_bytes_left; - if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence - num_bytes_left = 1; - codepoint = c & 0x1f; - } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence - num_bytes_left = 2; - codepoint = c & 0x0f; - } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence - codepoint = c & 0x07; - num_bytes_left = 3; - } else { - continue; // invalid leading byte - } - - // If we have enough bytes in our input, decode the remaining ones - // belonging to this Unicode character into |codepoint|. - if (ii + num_bytes_left > chars.size()) - continue; - while (num_bytes_left > 0) { - c = chars[++ii]; - --num_bytes_left; - // Check the next byte is a continuation byte, that is 10xx xxxx. - if ((c & 0xc0) != 0x80) - continue; - codepoint = (codepoint << 6) | (c & 0x3f); - } - - // Disallow overlong encodings for ascii characters, as these - // would include " and other characters significant to JSON - // string termination / control. - if (codepoint <= 0x7f) - continue; - // Invalid in UTF8, and can't be represented in UTF16 anyway. - if (codepoint > 0x10ffff) - continue; - - // So, now we transcode to UTF16, - // using the math described at https://en.wikipedia.org/wiki/UTF-16, - // for either one or two 16 bit characters. - if (codepoint < 0xffff) { - Emit("\\u"); - PrintHex(static_cast<uint16_t>(codepoint), out_); - continue; - } - codepoint -= 0x10000; - // high surrogate - Emit("\\u"); - PrintHex(static_cast<uint16_t>((codepoint >> 10) + 0xd800), out_); - // low surrogate - Emit("\\u"); - PrintHex(static_cast<uint16_t>((codepoint & 0x3ff) + 0xdc00), out_); - } - } - Emit('"'); - } - - void HandleBinary(span<uint8_t> bytes) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit('"'); - Base64Encode(bytes, out_); - Emit('"'); - } - - void HandleDouble(double value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - // JSON cannot represent NaN or Infinity. So, for compatibility, - // we behave like the JSON object in web browsers: emit 'null'. - if (!std::isfinite(value)) { - Emit("null"); - return; - } - std::unique_ptr<char[]> str_value = platform_->DToStr(value); - - // DToStr may fail to emit a 0 before the decimal dot. E.g. this is - // the case in base::NumberToString in Chromium (which is based on - // dmg_fp). So, much like - // https://cs.chromium.org/chromium/src/base/json/json_writer.cc - // we probe for this and emit the leading 0 anyway if necessary. - const char* chars = str_value.get(); - if (chars[0] == '.') { - Emit('0'); - } else if (chars[0] == '-' && chars[1] == '.') { - Emit("-0"); - ++chars; - } - Emit(chars); - } - - void HandleInt32(int32_t value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit(std::to_string(value)); - } - - void HandleBool(bool value) override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit(value ? "true" : "false"); - } - - void HandleNull() override { - if (!status_->ok()) - return; - state_.top().StartElement(out_); - Emit("null"); - } - - void HandleError(Status error) override { - assert(!error.ok()); - *status_ = error; - out_->clear(); - } - - private: - void Emit(char c) { out_->push_back(c); } - void Emit(const char* str) { - out_->insert(out_->end(), str, str + strlen(str)); - } - void Emit(const std::string& str) { - out_->insert(out_->end(), str.begin(), str.end()); - } - - const Platform* platform_; - C* out_; - Status* status_; - std::stack<State> state_; -}; -} // namespace - -std::unique_ptr<StreamingParserHandler> NewJSONEncoder( - const Platform* platform, - std::vector<uint8_t>* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new JSONEncoder<std::vector<uint8_t>>(platform, out, status)); -} -std::unique_ptr<StreamingParserHandler> NewJSONEncoder(const Platform* platform, - std::string* out, - Status* status) { - return std::unique_ptr<StreamingParserHandler>( - new JSONEncoder<std::string>(platform, out, status)); -} - -// ============================================================================= -// json::ParseJSON - for receiving streaming parser events for JSON. -// ============================================================================= - -namespace { -const int kStackLimit = 300; - -enum Token { - ObjectBegin, - ObjectEnd, - ArrayBegin, - ArrayEnd, - StringLiteral, - Number, - BoolTrue, - BoolFalse, - NullToken, - ListSeparator, - ObjectPairSeparator, - InvalidToken, - NoInput -}; - -const char* const kNullString = "null"; -const char* const kTrueString = "true"; -const char* const kFalseString = "false"; - -template <typename Char> -class JsonParser { - public: - JsonParser(const Platform* platform, StreamingParserHandler* handler) - : platform_(platform), handler_(handler) {} - - void Parse(const Char* start, size_t length) { - start_pos_ = start; - const Char* end = start + length; - const Char* tokenEnd = nullptr; - ParseValue(start, end, &tokenEnd, 0); - if (error_) - return; - if (tokenEnd != end) { - HandleError(Error::JSON_PARSER_UNPROCESSED_INPUT_REMAINS, tokenEnd); - } - } - - private: - bool CharsToDouble(const uint16_t* chars, size_t length, double* result) { - std::string buffer; - buffer.reserve(length + 1); - for (size_t ii = 0; ii < length; ++ii) { - bool is_ascii = !(chars[ii] & ~0x7F); - if (!is_ascii) - return false; - buffer.push_back(static_cast<char>(chars[ii])); - } - return platform_->StrToD(buffer.c_str(), result); - } - - bool CharsToDouble(const uint8_t* chars, size_t length, double* result) { - std::string buffer(reinterpret_cast<const char*>(chars), length); - return platform_->StrToD(buffer.c_str(), result); - } - - static bool ParseConstToken(const Char* start, - const Char* end, - const Char** token_end, - const char* token) { - // |token| is \0 terminated, it's one of the constants at top of the file. - while (start < end && *token != '\0' && *start++ == *token++) { - } - if (*token != '\0') - return false; - *token_end = start; - return true; - } - - static bool ReadInt(const Char* start, - const Char* end, - const Char** token_end, - bool allow_leading_zeros) { - if (start == end) - return false; - bool has_leading_zero = '0' == *start; - int length = 0; - while (start < end && '0' <= *start && *start <= '9') { - ++start; - ++length; - } - if (!length) - return false; - if (!allow_leading_zeros && length > 1 && has_leading_zero) - return false; - *token_end = start; - return true; - } - - static bool ParseNumberToken(const Char* start, - const Char* end, - const Char** token_end) { - // We just grab the number here. We validate the size in DecodeNumber. - // According to RFC4627, a valid number is: [minus] int [frac] [exp] - if (start == end) - return false; - Char c = *start; - if ('-' == c) - ++start; - - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/false)) - return false; - if (start == end) { - *token_end = start; - return true; - } - - // Optional fraction part - c = *start; - if ('.' == c) { - ++start; - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) - return false; - if (start == end) { - *token_end = start; - return true; - } - c = *start; - } - - // Optional exponent part - if ('e' == c || 'E' == c) { - ++start; - if (start == end) - return false; - c = *start; - if ('-' == c || '+' == c) { - ++start; - if (start == end) - return false; - } - if (!ReadInt(start, end, &start, /*allow_leading_zeros=*/true)) - return false; - } - - *token_end = start; - return true; - } - - static bool ReadHexDigits(const Char* start, - const Char* end, - const Char** token_end, - int digits) { - if (end - start < digits) - return false; - for (int i = 0; i < digits; ++i) { - Char c = *start++; - if (!(('0' <= c && c <= '9') || ('a' <= c && c <= 'f') || - ('A' <= c && c <= 'F'))) - return false; - } - *token_end = start; - return true; - } - - static bool ParseStringToken(const Char* start, - const Char* end, - const Char** token_end) { - while (start < end) { - Char c = *start++; - if ('\\' == c) { - if (start == end) - return false; - c = *start++; - // Make sure the escaped char is valid. - switch (c) { - case 'x': - if (!ReadHexDigits(start, end, &start, 2)) - return false; - break; - case 'u': - if (!ReadHexDigits(start, end, &start, 4)) - return false; - break; - case '\\': - case '/': - case 'b': - case 'f': - case 'n': - case 'r': - case 't': - case 'v': - case '"': - break; - default: - return false; - } - } else if ('"' == c) { - *token_end = start; - return true; - } - } - return false; - } - - static bool SkipComment(const Char* start, - const Char* end, - const Char** comment_end) { - if (start == end) - return false; - - if (*start != '/' || start + 1 >= end) - return false; - ++start; - - if (*start == '/') { - // Single line comment, read to newline. - for (++start; start < end; ++start) { - if (*start == '\n' || *start == '\r') { - *comment_end = start + 1; - return true; - } - } - *comment_end = end; - // Comment reaches end-of-input, which is fine. - return true; - } - - if (*start == '*') { - Char previous = '\0'; - // Block comment, read until end marker. - for (++start; start < end; previous = *start++) { - if (previous == '*' && *start == '/') { - *comment_end = start + 1; - return true; - } - } - // Block comment must close before end-of-input. - return false; - } - - return false; - } - - static bool IsSpaceOrNewLine(Char c) { - // \v = vertial tab; \f = form feed page break. - return c == ' ' || c == '\n' || c == '\v' || c == '\f' || c == '\r' || - c == '\t'; - } - - static void SkipWhitespaceAndComments(const Char* start, - const Char* end, - const Char** whitespace_end) { - while (start < end) { - if (IsSpaceOrNewLine(*start)) { - ++start; - } else if (*start == '/') { - const Char* comment_end = nullptr; - if (!SkipComment(start, end, &comment_end)) - break; - start = comment_end; - } else { - break; - } - } - *whitespace_end = start; - } - - static Token ParseToken(const Char* start, - const Char* end, - const Char** tokenStart, - const Char** token_end) { - SkipWhitespaceAndComments(start, end, tokenStart); - start = *tokenStart; - - if (start == end) - return NoInput; - - switch (*start) { - case 'n': - if (ParseConstToken(start, end, token_end, kNullString)) - return NullToken; - break; - case 't': - if (ParseConstToken(start, end, token_end, kTrueString)) - return BoolTrue; - break; - case 'f': - if (ParseConstToken(start, end, token_end, kFalseString)) - return BoolFalse; - break; - case '[': - *token_end = start + 1; - return ArrayBegin; - case ']': - *token_end = start + 1; - return ArrayEnd; - case ',': - *token_end = start + 1; - return ListSeparator; - case '{': - *token_end = start + 1; - return ObjectBegin; - case '}': - *token_end = start + 1; - return ObjectEnd; - case ':': - *token_end = start + 1; - return ObjectPairSeparator; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case '-': - if (ParseNumberToken(start, end, token_end)) - return Number; - break; - case '"': - if (ParseStringToken(start + 1, end, token_end)) - return StringLiteral; - break; - } - return InvalidToken; - } - - static int HexToInt(Char c) { - if ('0' <= c && c <= '9') - return c - '0'; - if ('A' <= c && c <= 'F') - return c - 'A' + 10; - if ('a' <= c && c <= 'f') - return c - 'a' + 10; - assert(false); // Unreachable. - return 0; - } - - static bool DecodeString(const Char* start, - const Char* end, - std::vector<uint16_t>* output) { - if (start == end) - return true; - if (start > end) - return false; - output->reserve(end - start); - while (start < end) { - uint16_t c = *start++; - // If the |Char| we're dealing with is really a byte, then - // we have utf8 here, and we need to check for multibyte characters - // and transcode them to utf16 (either one or two utf16 chars). - if (sizeof(Char) == sizeof(uint8_t) && c > 0x7f) { - // Inspect the leading byte to figure out how long the utf8 - // byte sequence is; while doing this initialize |codepoint| - // with the first few bits. - // See table in: https://en.wikipedia.org/wiki/UTF-8 - // byte one is 110x xxxx -> 2 byte utf8 sequence - // byte one is 1110 xxxx -> 3 byte utf8 sequence - // byte one is 1111 0xxx -> 4 byte utf8 sequence - uint32_t codepoint; - int num_bytes_left; - if ((c & 0xe0) == 0xc0) { // 2 byte utf8 sequence - num_bytes_left = 1; - codepoint = c & 0x1f; - } else if ((c & 0xf0) == 0xe0) { // 3 byte utf8 sequence - num_bytes_left = 2; - codepoint = c & 0x0f; - } else if ((c & 0xf8) == 0xf0) { // 4 byte utf8 sequence - codepoint = c & 0x07; - num_bytes_left = 3; - } else { - return false; // invalid leading byte - } - - // If we have enough bytes in our inpput, decode the remaining ones - // belonging to this Unicode character into |codepoint|. - if (start + num_bytes_left > end) - return false; - while (num_bytes_left > 0) { - c = *start++; - --num_bytes_left; - // Check the next byte is a continuation byte, that is 10xx xxxx. - if ((c & 0xc0) != 0x80) - return false; - codepoint = (codepoint << 6) | (c & 0x3f); - } - - // Disallow overlong encodings for ascii characters, as these - // would include " and other characters significant to JSON - // string termination / control. - if (codepoint <= 0x7f) - return false; - // Invalid in UTF8, and can't be represented in UTF16 anyway. - if (codepoint > 0x10ffff) - return false; - - // So, now we transcode to UTF16, - // using the math described at https://en.wikipedia.org/wiki/UTF-16, - // for either one or two 16 bit characters. - if (codepoint < 0xffff) { - output->push_back(codepoint); - continue; - } - codepoint -= 0x10000; - output->push_back((codepoint >> 10) + 0xd800); // high surrogate - output->push_back((codepoint & 0x3ff) + 0xdc00); // low surrogate - continue; - } - if ('\\' != c) { - output->push_back(c); - continue; - } - if (start == end) - return false; - c = *start++; - - if (c == 'x') { - // \x is not supported. - return false; - } - - switch (c) { - case '"': - case '/': - case '\\': - break; - case 'b': - c = '\b'; - break; - case 'f': - c = '\f'; - break; - case 'n': - c = '\n'; - break; - case 'r': - c = '\r'; - break; - case 't': - c = '\t'; - break; - case 'v': - c = '\v'; - break; - case 'u': - c = (HexToInt(*start) << 12) + (HexToInt(*(start + 1)) << 8) + - (HexToInt(*(start + 2)) << 4) + HexToInt(*(start + 3)); - start += 4; - break; - default: - return false; - } - output->push_back(c); - } - return true; - } - - void ParseValue(const Char* start, - const Char* end, - const Char** value_token_end, - int depth) { - if (depth > kStackLimit) { - HandleError(Error::JSON_PARSER_STACK_LIMIT_EXCEEDED, start); - return; - } - const Char* token_start = nullptr; - const Char* token_end = nullptr; - Token token = ParseToken(start, end, &token_start, &token_end); - switch (token) { - case NoInput: - HandleError(Error::JSON_PARSER_NO_INPUT, token_start); - return; - case InvalidToken: - HandleError(Error::JSON_PARSER_INVALID_TOKEN, token_start); - return; - case NullToken: - handler_->HandleNull(); - break; - case BoolTrue: - handler_->HandleBool(true); - break; - case BoolFalse: - handler_->HandleBool(false); - break; - case Number: { - double value; - if (!CharsToDouble(token_start, token_end - token_start, &value)) { - HandleError(Error::JSON_PARSER_INVALID_NUMBER, token_start); - return; - } - if (value >= std::numeric_limits<int32_t>::min() && - value <= std::numeric_limits<int32_t>::max() && - static_cast<int32_t>(value) == value) - handler_->HandleInt32(static_cast<int32_t>(value)); - else - handler_->HandleDouble(value); - break; - } - case StringLiteral: { - std::vector<uint16_t> value; - bool ok = DecodeString(token_start + 1, token_end - 1, &value); - if (!ok) { - HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); - return; - } - handler_->HandleString16(span<uint16_t>(value.data(), value.size())); - break; - } - case ArrayBegin: { - handler_->HandleArrayBegin(); - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - while (token != ArrayEnd) { - ParseValue(start, end, &token_end, depth + 1); - if (error_) - return; - - // After a list value, we expect a comma or the end of the list. - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ListSeparator) { - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ArrayEnd) { - HandleError(Error::JSON_PARSER_UNEXPECTED_ARRAY_END, token_start); - return; - } - } else if (token != ArrayEnd) { - // Unexpected value after list value. Bail out. - HandleError(Error::JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED, - token_start); - return; - } - } - handler_->HandleArrayEnd(); - break; - } - case ObjectBegin: { - handler_->HandleMapBegin(); - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - while (token != ObjectEnd) { - if (token != StringLiteral) { - HandleError(Error::JSON_PARSER_STRING_LITERAL_EXPECTED, - token_start); - return; - } - std::vector<uint16_t> key; - if (!DecodeString(token_start + 1, token_end - 1, &key)) { - HandleError(Error::JSON_PARSER_INVALID_STRING, token_start); - return; - } - handler_->HandleString16(span<uint16_t>(key.data(), key.size())); - start = token_end; - - token = ParseToken(start, end, &token_start, &token_end); - if (token != ObjectPairSeparator) { - HandleError(Error::JSON_PARSER_COLON_EXPECTED, token_start); - return; - } - start = token_end; - - ParseValue(start, end, &token_end, depth + 1); - if (error_) - return; - start = token_end; - - // After a key/value pair, we expect a comma or the end of the - // object. - token = ParseToken(start, end, &token_start, &token_end); - if (token == ListSeparator) { - start = token_end; - token = ParseToken(start, end, &token_start, &token_end); - if (token == ObjectEnd) { - HandleError(Error::JSON_PARSER_UNEXPECTED_MAP_END, token_start); - return; - } - } else if (token != ObjectEnd) { - // Unexpected value after last object value. Bail out. - HandleError(Error::JSON_PARSER_COMMA_OR_MAP_END_EXPECTED, - token_start); - return; - } - } - handler_->HandleMapEnd(); - break; - } - - default: - // We got a token that's not a value. - HandleError(Error::JSON_PARSER_VALUE_EXPECTED, token_start); - return; - } - - SkipWhitespaceAndComments(token_end, end, value_token_end); - } - - void HandleError(Error error, const Char* pos) { - assert(error != Error::OK); - if (!error_) { - handler_->HandleError( - Status{error, static_cast<size_t>(pos - start_pos_)}); - error_ = true; - } - } - - const Char* start_pos_ = nullptr; - bool error_ = false; - const Platform* platform_; - StreamingParserHandler* handler_; -}; -} // namespace - -void ParseJSON(const Platform& platform, - span<uint8_t> chars, - StreamingParserHandler* handler) { - JsonParser<uint8_t> parser(&platform, handler); - parser.Parse(chars.data(), chars.size()); -} - -void ParseJSON(const Platform& platform, - span<uint16_t> chars, - StreamingParserHandler* handler) { - JsonParser<uint16_t> parser(&platform, handler); - parser.Parse(chars.data(), chars.size()); -} - -// ============================================================================= -// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding -// ============================================================================= -template <typename C> -Status ConvertCBORToJSONTmpl(const Platform& platform, - span<uint8_t> cbor, - C* json) { - Status status; - std::unique_ptr<StreamingParserHandler> json_writer = - NewJSONEncoder(&platform, json, &status); - cbor::ParseCBOR(cbor, json_writer.get()); - return status; -} - -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::vector<uint8_t>* json) { - return ConvertCBORToJSONTmpl(platform, cbor, json); -} -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::string* json) { - return ConvertCBORToJSONTmpl(platform, cbor, json); -} - -template <typename T, typename C> -Status ConvertJSONToCBORTmpl(const Platform& platform, span<T> json, C* cbor) { - Status status; - std::unique_ptr<StreamingParserHandler> encoder = - cbor::NewCBOREncoder(cbor, &status); - ParseJSON(platform, json, encoder.get()); - return status; -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::string* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::string* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::vector<uint8_t>* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::vector<uint8_t>* cbor) { - return ConvertJSONToCBORTmpl(platform, json, cbor); -} -} // namespace json - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} - -{% endif %} diff --git a/tools/inspector_protocol/lib/encoding_h.template b/tools/inspector_protocol/lib/encoding_h.template deleted file mode 100644 index 2601192e160543..00000000000000 --- a/tools/inspector_protocol/lib/encoding_h.template +++ /dev/null @@ -1,552 +0,0 @@ -{# This template is generated by gen_cbor_templates.py. #} -// Generated by lib/encoding_h.template. - -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -{% if config.encoding_lib.header == "" %} -#ifndef {{"_".join(config.protocol.namespace)}}_encoding_h -#define {{"_".join(config.protocol.namespace)}}_encoding_h - -#include <algorithm> -#include <cstddef> -#include <cstdint> -#include <cstring> -#include <limits> -#include <memory> -#include <string> -#include <vector> - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} - -// ===== encoding/encoding.h ===== - -// This library is designed to be portable. The only allowed dependency -// are the C/C++ standard libraries, up to C++11. We support both 32 bit -// and 64 architectures. -// -// Types used below: -// uint8_t: a byte, e.g. for raw bytes or UTF8 characters -// uint16_t: two bytes, e.g. for UTF16 characters -// For input parameters: -// span<uint8_t>: pointer to bytes and length -// span<uint16_t>: pointer to UTF16 chars and length -// For output parameters: -// std::vector<uint8_t> - Owned segment of bytes / utf8 characters and length. -// std::string - Same, for compatibility, even though char is signed. - -// ============================================================================= -// span - sequence of bytes -// ============================================================================= - -// This template is similar to std::span, which will be included in C++20. -template <typename T> -class span { - public: - using index_type = size_t; - - span() : data_(nullptr), size_(0) {} - span(const T* data, index_type size) : data_(data), size_(size) {} - - const T* data() const { return data_; } - - const T* begin() const { return data_; } - const T* end() const { return data_ + size_; } - - const T& operator[](index_type idx) const { return data_[idx]; } - - span<T> subspan(index_type offset, index_type count) const { - return span(data_ + offset, count); - } - - span<T> subspan(index_type offset) const { - return span(data_ + offset, size_ - offset); - } - - bool empty() const { return size_ == 0; } - - index_type size() const { return size_; } - index_type size_bytes() const { return size_ * sizeof(T); } - - private: - const T* data_; - index_type size_; -}; - -template <typename T> -span<T> SpanFrom(const std::vector<T>& v) { - return span<T>(v.data(), v.size()); -} - -template <size_t N> -span<uint8_t> SpanFrom(const char (&str)[N]) { - return span<uint8_t>(reinterpret_cast<const uint8_t*>(str), N - 1); -} - -inline span<uint8_t> SpanFrom(const char* str) { - return str ? span<uint8_t>(reinterpret_cast<const uint8_t*>(str), strlen(str)) - : span<uint8_t>(); -} - -inline span<uint8_t> SpanFrom(const std::string& v) { - return span<uint8_t>(reinterpret_cast<const uint8_t*>(v.data()), v.size()); -} - -// Less than / equality comparison functions for sorting / searching for byte -// spans. These are similar to absl::string_view's < and == operators. -inline bool SpanLessThan(span<uint8_t> x, span<uint8_t> y) noexcept { - auto min_size = std::min(x.size(), y.size()); - const int r = min_size == 0 ? 0 : memcmp(x.data(), y.data(), min_size); - return (r < 0) || (r == 0 && x.size() < y.size()); -} - -inline bool SpanEquals(span<uint8_t> x, span<uint8_t> y) noexcept { - auto len = x.size(); - if (len != y.size()) - return false; - return x.data() == y.data() || len == 0 || - std::memcmp(x.data(), y.data(), len) == 0; -} - -// ============================================================================= -// Status and Error codes -// ============================================================================= -enum class Error { - OK = 0, - // JSON parsing errors - json_parser.{h,cc}. - JSON_PARSER_UNPROCESSED_INPUT_REMAINS = 0x01, - JSON_PARSER_STACK_LIMIT_EXCEEDED = 0x02, - JSON_PARSER_NO_INPUT = 0x03, - JSON_PARSER_INVALID_TOKEN = 0x04, - JSON_PARSER_INVALID_NUMBER = 0x05, - JSON_PARSER_INVALID_STRING = 0x06, - JSON_PARSER_UNEXPECTED_ARRAY_END = 0x07, - JSON_PARSER_COMMA_OR_ARRAY_END_EXPECTED = 0x08, - JSON_PARSER_STRING_LITERAL_EXPECTED = 0x09, - JSON_PARSER_COLON_EXPECTED = 0x0a, - JSON_PARSER_UNEXPECTED_MAP_END = 0x0b, - JSON_PARSER_COMMA_OR_MAP_END_EXPECTED = 0x0c, - JSON_PARSER_VALUE_EXPECTED = 0x0d, - - CBOR_INVALID_INT32 = 0x0e, - CBOR_INVALID_DOUBLE = 0x0f, - CBOR_INVALID_ENVELOPE = 0x10, - CBOR_INVALID_STRING8 = 0x11, - CBOR_INVALID_STRING16 = 0x12, - CBOR_INVALID_BINARY = 0x13, - CBOR_UNSUPPORTED_VALUE = 0x14, - CBOR_NO_INPUT = 0x15, - CBOR_INVALID_START_BYTE = 0x16, - CBOR_UNEXPECTED_EOF_EXPECTED_VALUE = 0x17, - CBOR_UNEXPECTED_EOF_IN_ARRAY = 0x18, - CBOR_UNEXPECTED_EOF_IN_MAP = 0x19, - CBOR_INVALID_MAP_KEY = 0x1a, - CBOR_STACK_LIMIT_EXCEEDED = 0x1b, - CBOR_TRAILING_JUNK = 0x1c, - CBOR_MAP_START_EXPECTED = 0x1d, - CBOR_MAP_STOP_EXPECTED = 0x1e, - CBOR_ENVELOPE_SIZE_LIMIT_EXCEEDED = 0x1f, -}; - -// A status value with position that can be copied. The default status -// is OK. Usually, error status values should come with a valid position. -struct Status { - static constexpr size_t npos() { return std::numeric_limits<size_t>::max(); } - - bool ok() const { return error == Error::OK; } - - Error error = Error::OK; - size_t pos = npos(); - Status(Error error, size_t pos) : error(error), pos(pos) {} - Status() = default; - - // Returns a 7 bit US-ASCII string, either "OK" or an error message - // that includes the position. - std::string ToASCIIString() const; - - private: - std::string ToASCIIString(const char* msg) const; -}; - -// Handler interface for parser events emitted by a streaming parser. -// See cbor::NewCBOREncoder, cbor::ParseCBOR, json::NewJSONEncoder, -// json::ParseJSON. -class StreamingParserHandler { - public: - virtual ~StreamingParserHandler() = default; - virtual void HandleMapBegin() = 0; - virtual void HandleMapEnd() = 0; - virtual void HandleArrayBegin() = 0; - virtual void HandleArrayEnd() = 0; - virtual void HandleString8(span<uint8_t> chars) = 0; - virtual void HandleString16(span<uint16_t> chars) = 0; - virtual void HandleBinary(span<uint8_t> bytes) = 0; - virtual void HandleDouble(double value) = 0; - virtual void HandleInt32(int32_t value) = 0; - virtual void HandleBool(bool value) = 0; - virtual void HandleNull() = 0; - - // The parser may send one error even after other events have already - // been received. Client code is reponsible to then discard the - // already processed events. - // |error| must be an eror, as in, |error.is_ok()| can't be true. - virtual void HandleError(Status error) = 0; -}; - -namespace cbor { -// The binary encoding for the inspector protocol follows the CBOR specification -// (RFC 7049). Additional constraints: -// - Only indefinite length maps and arrays are supported. -// - Maps and arrays are wrapped with an envelope, that is, a -// CBOR tag with value 24 followed by a byte string specifying -// the byte length of the enclosed map / array. The byte string -// must use a 32 bit wide length. -// - At the top level, a message must be an indefinite length map -// wrapped by an envelope. -// - Maximal size for messages is 2^32 (4 GiB). -// - For scalars, we support only the int32_t range, encoded as -// UNSIGNED/NEGATIVE (major types 0 / 1). -// - UTF16 strings, including with unbalanced surrogate pairs, are encoded -// as CBOR BYTE_STRING (major type 2). For such strings, the number of -// bytes encoded must be even. -// - UTF8 strings (major type 3) are supported. -// - 7 bit US-ASCII strings must always be encoded as UTF8 strings, never -// as UTF16 strings. -// - Arbitrary byte arrays, in the inspector protocol called 'binary', -// are encoded as BYTE_STRING (major type 2), prefixed with a byte -// indicating base64 when rendered as JSON. - -// ============================================================================= -// Detecting CBOR content -// ============================================================================= - -// The first byte for an envelope, which we use for wrapping dictionaries -// and arrays; and the byte that indicates a byte string with 32 bit length. -// These two bytes start an envelope, and thereby also any CBOR message -// produced or consumed by this protocol. See also |EnvelopeEncoder| below. -uint8_t InitialByteForEnvelope(); -uint8_t InitialByteFor32BitLengthByteString(); - -// Checks whether |msg| is a cbor message. -bool IsCBORMessage(span<uint8_t> msg); - -// ============================================================================= -// Encoding individual CBOR items -// ============================================================================= - -// Some constants for CBOR tokens that only take a single byte on the wire. -uint8_t EncodeTrue(); -uint8_t EncodeFalse(); -uint8_t EncodeNull(); -uint8_t EncodeIndefiniteLengthArrayStart(); -uint8_t EncodeIndefiniteLengthMapStart(); -uint8_t EncodeStop(); - -// Encodes |value| as |UNSIGNED| (major type 0) iff >= 0, or |NEGATIVE| -// (major type 1) iff < 0. -void EncodeInt32(int32_t value, std::vector<uint8_t>* out); -void EncodeInt32(int32_t value, std::string* out); - -// Encodes a UTF16 string as a BYTE_STRING (major type 2). Each utf16 -// character in |in| is emitted with most significant byte first, -// appending to |out|. -void EncodeString16(span<uint16_t> in, std::vector<uint8_t>* out); -void EncodeString16(span<uint16_t> in, std::string* out); - -// Encodes a UTF8 string |in| as STRING (major type 3). -void EncodeString8(span<uint8_t> in, std::vector<uint8_t>* out); -void EncodeString8(span<uint8_t> in, std::string* out); - -// Encodes the given |latin1| string as STRING8. -// If any non-ASCII character is present, it will be represented -// as a 2 byte UTF8 sequence. -void EncodeFromLatin1(span<uint8_t> latin1, std::vector<uint8_t>* out); -void EncodeFromLatin1(span<uint8_t> latin1, std::string* out); - -// Encodes the given |utf16| string as STRING8 if it's entirely US-ASCII. -// Otherwise, encodes as STRING16. -void EncodeFromUTF16(span<uint16_t> utf16, std::vector<uint8_t>* out); -void EncodeFromUTF16(span<uint16_t> utf16, std::string* out); - -// Encodes arbitrary binary data in |in| as a BYTE_STRING (major type 2) with -// definitive length, prefixed with tag 22 indicating expected conversion to -// base64 (see RFC 7049, Table 3 and Section 2.4.4.2). -void EncodeBinary(span<uint8_t> in, std::vector<uint8_t>* out); -void EncodeBinary(span<uint8_t> in, std::string* out); - -// Encodes / decodes a double as Major type 7 (SIMPLE_VALUE), -// with additional info = 27, followed by 8 bytes in big endian. -void EncodeDouble(double value, std::vector<uint8_t>* out); -void EncodeDouble(double value, std::string* out); - -// ============================================================================= -// cbor::EnvelopeEncoder - for wrapping submessages -// ============================================================================= - -// An envelope indicates the byte length of a wrapped item. -// We use this for maps and array, which allows the decoder -// to skip such (nested) values whole sale. -// It's implemented as a CBOR tag (major type 6) with additional -// info = 24, followed by a byte string with a 32 bit length value; -// so the maximal structure that we can wrap is 2^32 bits long. -// See also: https://tools.ietf.org/html/rfc7049#section-2.4.4.1 -class EnvelopeEncoder { - public: - // Emits the envelope start bytes and records the position for the - // byte size in |byte_size_pos_|. Also emits empty bytes for the - // byte sisze so that encoding can continue. - void EncodeStart(std::vector<uint8_t>* out); - void EncodeStart(std::string* out); - // This records the current size in |out| at position byte_size_pos_. - // Returns true iff successful. - bool EncodeStop(std::vector<uint8_t>* out); - bool EncodeStop(std::string* out); - - private: - size_t byte_size_pos_ = 0; -}; - -// ============================================================================= -// cbor::NewCBOREncoder - for encoding from a streaming parser -// ============================================================================= - -// This can be used to convert to CBOR, by passing the return value to a parser -// that drives it. The handler will encode into |out|, and iff an error occurs -// it will set |status| to an error and clear |out|. Otherwise, |status.ok()| -// will be |true|. -std::unique_ptr<StreamingParserHandler> NewCBOREncoder( - std::vector<uint8_t>* out, - Status* status); -std::unique_ptr<StreamingParserHandler> NewCBOREncoder(std::string* out, - Status* status); - -// ============================================================================= -// cbor::CBORTokenizer - for parsing individual CBOR items -// ============================================================================= - -// Tags for the tokens within a CBOR message that CBORTokenizer understands. -// Note that this is not the same terminology as the CBOR spec (RFC 7049), -// but rather, our adaptation. For instance, we lump unsigned and signed -// major type into INT32 here (and disallow values outside the int32_t range). -enum class CBORTokenTag { - // Encountered an error in the structure of the message. Consult - // status() for details. - ERROR_VALUE, - // Booleans and NULL. - TRUE_VALUE, - FALSE_VALUE, - NULL_VALUE, - // An int32_t (signed 32 bit integer). - INT32, - // A double (64 bit floating point). - DOUBLE, - // A UTF8 string. - STRING8, - // A UTF16 string. - STRING16, - // A binary string. - BINARY, - // Starts an indefinite length map; after the map start we expect - // alternating keys and values, followed by STOP. - MAP_START, - // Starts an indefinite length array; after the array start we - // expect values, followed by STOP. - ARRAY_START, - // Ends a map or an array. - STOP, - // An envelope indicator, wrapping a map or array. - // Internally this carries the byte length of the wrapped - // map or array. While CBORTokenizer::Next() will read / skip the entire - // envelope, CBORTokenizer::EnterEnvelope() reads the tokens - // inside of it. - ENVELOPE, - // We've reached the end there is nothing else to read. - DONE, -}; - -// The major types from RFC 7049 Section 2.1. -enum class MajorType { - UNSIGNED = 0, - NEGATIVE = 1, - BYTE_STRING = 2, - STRING = 3, - ARRAY = 4, - MAP = 5, - TAG = 6, - SIMPLE_VALUE = 7 -}; - -// CBORTokenizer segments a CBOR message, presenting the tokens therein as -// numbers, strings, etc. This is not a complete CBOR parser, but makes it much -// easier to implement one (e.g. ParseCBOR, above). It can also be used to parse -// messages partially. -class CBORTokenizer { - public: - explicit CBORTokenizer(span<uint8_t> bytes); - ~CBORTokenizer(); - - // Identifies the current token that we're looking at, - // or ERROR_VALUE (in which ase ::Status() has details) - // or DONE (if we're past the last token). - CBORTokenTag TokenTag() const; - - // Advances to the next token. - void Next(); - // Can only be called if TokenTag() == CBORTokenTag::ENVELOPE. - // While Next() would skip past the entire envelope / what it's - // wrapping, EnterEnvelope positions the cursor inside of the envelope, - // letting the client explore the nested structure. - void EnterEnvelope(); - - // If TokenTag() is CBORTokenTag::ERROR_VALUE, then Status().error describes - // the error more precisely; otherwise it'll be set to Error::OK. - // In either case, Status().pos is the current position. - struct Status Status() const; - - // The following methods retrieve the token values. They can only - // be called if TokenTag() matches. - - // To be called only if ::TokenTag() == CBORTokenTag::INT32. - int32_t GetInt32() const; - - // To be called only if ::TokenTag() == CBORTokenTag::DOUBLE. - double GetDouble() const; - - // To be called only if ::TokenTag() == CBORTokenTag::STRING8. - span<uint8_t> GetString8() const; - - // Wire representation for STRING16 is low byte first (little endian). - // To be called only if ::TokenTag() == CBORTokenTag::STRING16. - span<uint8_t> GetString16WireRep() const; - - // To be called only if ::TokenTag() == CBORTokenTag::BINARY. - span<uint8_t> GetBinary() const; - - // To be called only if ::TokenTag() == CBORTokenTag::ENVELOPE. - span<uint8_t> GetEnvelopeContents() const; - - private: - void ReadNextToken(bool enter_envelope); - void SetToken(CBORTokenTag token, size_t token_byte_length); - void SetError(Error error); - - span<uint8_t> bytes_; - CBORTokenTag token_tag_; - struct Status status_; - size_t token_byte_length_; - MajorType token_start_type_; - uint64_t token_start_internal_value_; -}; - -// ============================================================================= -// cbor::ParseCBOR - for receiving streaming parser events for CBOR messages -// ============================================================================= - -// Parses a CBOR encoded message from |bytes|, sending events to -// |out|. If an error occurs, sends |out->HandleError|, and parsing stops. -// The client is responsible for discarding the already received information in -// that case. -void ParseCBOR(span<uint8_t> bytes, StreamingParserHandler* out); - -// ============================================================================= -// cbor::AppendString8EntryToMap - for limited in-place editing of messages -// ============================================================================= - -// Modifies the |cbor| message by appending a new key/value entry at the end -// of the map. Patches up the envelope size; Status.ok() iff successful. -// If not successful, |cbor| may be corrupted after this call. -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::vector<uint8_t>* cbor); -Status AppendString8EntryToCBORMap(span<uint8_t> string8_key, - span<uint8_t> string8_value, - std::string* cbor); - -namespace internals { // Exposed only for writing tests. -size_t ReadTokenStart(span<uint8_t> bytes, - cbor::MajorType* type, - uint64_t* value); - -void WriteTokenStart(cbor::MajorType type, - uint64_t value, - std::vector<uint8_t>* encoded); -void WriteTokenStart(cbor::MajorType type, - uint64_t value, - std::string* encoded); -} // namespace internals -} // namespace cbor - -namespace json { -// Client code must provide an instance. Implementation should delegate -// to whatever is appropriate. -class Platform { - public: - virtual ~Platform() = default; - // Parses |str| into |result|. Returns false iff there are - // leftover characters or parsing errors. - virtual bool StrToD(const char* str, double* result) const = 0; - - // Prints |value| in a format suitable for JSON. - virtual std::unique_ptr<char[]> DToStr(double value) const = 0; -}; - -// ============================================================================= -// json::NewJSONEncoder - for encoding streaming parser events as JSON -// ============================================================================= - -// Returns a handler object which will write ascii characters to |out|. -// |status->ok()| will be false iff the handler routine HandleError() is called. -// In that case, we'll stop emitting output. -// Except for calling the HandleError routine at any time, the client -// code must call the Handle* methods in an order in which they'd occur -// in valid JSON; otherwise we may crash (the code uses assert). -std::unique_ptr<StreamingParserHandler> NewJSONEncoder( - const Platform* platform, - std::vector<uint8_t>* out, - Status* status); -std::unique_ptr<StreamingParserHandler> NewJSONEncoder(const Platform* platform, - std::string* out, - Status* status); - -// ============================================================================= -// json::ParseJSON - for receiving streaming parser events for JSON -// ============================================================================= - -void ParseJSON(const Platform& platform, - span<uint8_t> chars, - StreamingParserHandler* handler); -void ParseJSON(const Platform& platform, - span<uint16_t> chars, - StreamingParserHandler* handler); - -// ============================================================================= -// json::ConvertCBORToJSON, json::ConvertJSONToCBOR - for transcoding -// ============================================================================= -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::string* json); -Status ConvertCBORToJSON(const Platform& platform, - span<uint8_t> cbor, - std::vector<uint8_t>* json); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::vector<uint8_t>* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::vector<uint8_t>* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint8_t> json, - std::string* cbor); -Status ConvertJSONToCBOR(const Platform& platform, - span<uint16_t> json, - std::string* cbor); -} // namespace json - -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} -#endif // !defined({{"_".join(config.protocol.namespace)}}_encoding_h) -{% endif %} diff --git a/tools/inspector_protocol/pdl.py b/tools/inspector_protocol/pdl.py deleted file mode 100644 index 03d11b39d636df..00000000000000 --- a/tools/inspector_protocol/pdl.py +++ /dev/null @@ -1,171 +0,0 @@ -# Copyright 2018 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -from __future__ import print_function -import collections -import json -import os.path -import re -import sys - -description = '' - - -primitiveTypes = ['integer', 'number', 'boolean', 'string', 'object', 'any', 'array', 'binary'] - - -def assignType(item, type, is_array=False, map_binary_to_string=False): - if is_array: - item['type'] = 'array' - item['items'] = collections.OrderedDict() - assignType(item['items'], type, False, map_binary_to_string) - return - - if type == 'enum': - type = 'string' - if map_binary_to_string and type == 'binary': - type = 'string' - if type in primitiveTypes: - item['type'] = type - else: - item['$ref'] = type - - -def createItem(d, experimental, deprecated, name=None): - result = collections.OrderedDict(d) - if name: - result['name'] = name - global description - if description: - result['description'] = description.strip() - if experimental: - result['experimental'] = True - if deprecated: - result['deprecated'] = True - return result - - -def parse(data, file_name, map_binary_to_string=False): - protocol = collections.OrderedDict() - protocol['version'] = collections.OrderedDict() - protocol['domains'] = [] - domain = None - item = None - subitems = None - nukeDescription = False - global description - lines = data.split('\n') - for i in range(0, len(lines)): - if nukeDescription: - description = '' - nukeDescription = False - line = lines[i] - trimLine = line.strip() - - if trimLine.startswith('#'): - if len(description): - description += '\n' - description += trimLine[2:] - continue - else: - nukeDescription = True - - if len(trimLine) == 0: - continue - - match = re.compile(r'^(experimental )?(deprecated )?domain (.*)').match(line) - if match: - domain = createItem({'domain' : match.group(3)}, match.group(1), match.group(2)) - protocol['domains'].append(domain) - continue - - match = re.compile(r'^ depends on ([^\s]+)').match(line) - if match: - if 'dependencies' not in domain: - domain['dependencies'] = [] - domain['dependencies'].append(match.group(1)) - continue - - match = re.compile(r'^ (experimental )?(deprecated )?type (.*) extends (array of )?([^\s]+)').match(line) - if match: - if 'types' not in domain: - domain['types'] = [] - item = createItem({'id': match.group(3)}, match.group(1), match.group(2)) - assignType(item, match.group(5), match.group(4), map_binary_to_string) - domain['types'].append(item) - continue - - match = re.compile(r'^ (experimental )?(deprecated )?(command|event) (.*)').match(line) - if match: - list = [] - if match.group(3) == 'command': - if 'commands' in domain: - list = domain['commands'] - else: - list = domain['commands'] = [] - else: - if 'events' in domain: - list = domain['events'] - else: - list = domain['events'] = [] - - item = createItem({}, match.group(1), match.group(2), match.group(4)) - list.append(item) - continue - - match = re.compile(r'^ (experimental )?(deprecated )?(optional )?(array of )?([^\s]+) ([^\s]+)').match(line) - if match: - param = createItem({}, match.group(1), match.group(2), match.group(6)) - if match.group(3): - param['optional'] = True - assignType(param, match.group(5), match.group(4), map_binary_to_string) - if match.group(5) == 'enum': - enumliterals = param['enum'] = [] - subitems.append(param) - continue - - match = re.compile(r'^ (parameters|returns|properties)').match(line) - if match: - subitems = item[match.group(1)] = [] - continue - - match = re.compile(r'^ enum').match(line) - if match: - enumliterals = item['enum'] = [] - continue - - match = re.compile(r'^version').match(line) - if match: - continue - - match = re.compile(r'^ major (\d+)').match(line) - if match: - protocol['version']['major'] = match.group(1) - continue - - match = re.compile(r'^ minor (\d+)').match(line) - if match: - protocol['version']['minor'] = match.group(1) - continue - - match = re.compile(r'^ redirect ([^\s]+)').match(line) - if match: - item['redirect'] = match.group(1) - continue - - match = re.compile(r'^ ( )?[^\s]+$').match(line) - if match: - # enum literal - enumliterals.append(trimLine) - continue - - print('Error in %s:%s, illegal token: \t%s' % (file_name, i, line)) - sys.exit(1) - return protocol - - -def loads(data, file_name, map_binary_to_string=False): - if file_name.endswith(".pdl"): - return parse(data, file_name, map_binary_to_string) - return json.loads(data) diff --git a/tools/inspector_protocol/roll.py b/tools/inspector_protocol/roll.py index abe636e270b7cf..474d163c30a123 100644 --- a/tools/inspector_protocol/roll.py +++ b/tools/inspector_protocol/roll.py @@ -13,28 +13,29 @@ FILES_TO_SYNC = [ - 'README.md', + 'crdtp/*', + 'lib/*', + 'templates/*', + + 'BUILD.gn', 'check_protocol_compatibility.py', 'code_generator.py', 'concatenate_protocols.py', 'convert_protocol_to_json.py', - 'encoding/encoding.h', - 'encoding/encoding.cc', - 'encoding/encoding_test.cc', 'inspector_protocol.gni', - 'inspector_protocol.gypi', - 'lib/*', + 'README.md', + 'LICENSE', 'pdl.py', - 'templates/*', ] +REVISION_LINE_PREFIX = 'Revision: ' def RunCmd(cmd): p = subprocess.Popen(cmd, stdout=subprocess.PIPE) (stdoutdata, stderrdata) = p.communicate() if p.returncode != 0: raise Exception('%s: exit status %d', str(cmd), p.returncode) - return stdoutdata + return stdoutdata.decode('utf-8') def CheckRepoIsClean(path, suffix): @@ -48,25 +49,18 @@ def CheckRepoIsClean(path, suffix): raise Exception('%s does not end with /%s' % (path, suffix)) -def CheckRepoIsNotAtMasterBranch(path): +def CheckRepoIsNotAtMainBranch(path): os.chdir(path) stdout = RunCmd(['git', 'rev-parse', '--abbrev-ref', 'HEAD']).strip() - if stdout == 'master': - raise Exception('%s is at master branch - refusing to copy there.' % path) - - -def CheckRepoIsV8Checkout(path): - os.chdir(path) - if (RunCmd(['git', 'config', '--get', 'remote.origin.url']).strip() != - 'https://chromium.googlesource.com/v8/v8.git'): - raise Exception('%s is not a proper V8 checkout.' % path) + if stdout == 'main': + raise Exception('%s is at main branch - refusing to copy there.' % path) def CheckRepoIsInspectorProtocolCheckout(path): os.chdir(path) - if (RunCmd(['git', 'config', '--get', 'remote.origin.url']).strip() != - 'https://chromium.googlesource.com/deps/inspector_protocol.git'): - raise Exception('%s is not a proper inspector_protocol checkout.' % path) + revision = RunCmd(['git', 'config', '--get', 'remote.origin.url']).strip() + if (revision != 'https://chromium.googlesource.com/deps/inspector_protocol.git'): + raise Exception('%s is not a proper inspector_protocol checkout: %s' % (path, revision)) def FindFilesToSyncIn(path): @@ -83,6 +77,19 @@ def FilesAreEqual(path1, path2): open(path1).read() == open(path2).read()) +def ReadV8IPRevision(node_src_path): + lines = open(os.path.join(node_src_path, 'deps/v8/third_party/inspector_protocol/README.v8')).readlines() + for line in lines: + line = line.strip() + if line.startswith(REVISION_LINE_PREFIX): + return line[len(REVISION_LINE_PREFIX):] + raise Exception('No V8 inspector protocol revision found') + +def CheckoutRevision(path, revision): + os.chdir(path) + return RunCmd(['git', 'checkout', revision]) + + def GetHeadRevision(path): os.chdir(path) return RunCmd(['git', 'rev-parse', 'HEAD']) @@ -90,14 +97,14 @@ def GetHeadRevision(path): def main(argv): parser = argparse.ArgumentParser(description=( - "Rolls the inspector_protocol project (upstream) into V8's " - "third_party (downstream).")) + "Rolls the inspector_protocol project (upstream) into node's " + "deps/inspector_protocol (downstream).")) parser.add_argument("--ip_src_upstream", help="The inspector_protocol (upstream) tree.", default="~/ip/src") - parser.add_argument("--v8_src_downstream", - help="The V8 src tree.", - default="~/v8/v8") + parser.add_argument("--node_src_downstream", + help="The nodejs/node src tree.", + default="~/nodejs/node") parser.add_argument('--force', dest='force', action='store_true', help=("Whether to carry out the modifications " "in the destination tree.")) @@ -106,17 +113,22 @@ def main(argv): args = parser.parse_args(argv) upstream = os.path.normpath(os.path.expanduser(args.ip_src_upstream)) downstream = os.path.normpath(os.path.expanduser( - args.v8_src_downstream)) + args.node_src_downstream)) CheckRepoIsClean(upstream, '/src') - CheckRepoIsClean(downstream, '/v8') + CheckRepoIsClean(downstream, '/node') CheckRepoIsInspectorProtocolCheckout(upstream) - CheckRepoIsV8Checkout(downstream) - # Check that the destination Git repo isn't at the master branch - it's - # generally a bad idea to check into the master branch, so we catch this + # Check that the destination Git repo isn't at the main branch - it's + # generally a bad idea to check into the main branch, so we catch this # common pilot error here early. - CheckRepoIsNotAtMasterBranch(downstream) + CheckRepoIsNotAtMainBranch(downstream) + + # Read V8's inspector_protocol revision + v8_ip_revision = ReadV8IPRevision(downstream) + print('Checking out %s into %s ...' % (upstream, v8_ip_revision)) + CheckoutRevision(upstream, v8_ip_revision) + src_dir = upstream - dest_dir = os.path.join(downstream, 'third_party/inspector_protocol') + dest_dir = os.path.join(downstream, 'deps/inspector_protocol') print('Rolling %s into %s ...' % (src_dir, dest_dir)) src_files = set(FindFilesToSyncIn(src_dir)) dest_files = set(FindFilesToSyncIn(dest_dir)) @@ -137,22 +149,16 @@ def main(argv): print('You said --force ... as you wish, modifying the destination.') for f in to_add + to_copy: contents = open(os.path.join(src_dir, f)).read() - contents = contents.replace( - 'INSPECTOR_PROTOCOL_ENCODING_ENCODING_H_', - 'V8_INSPECTOR_PROTOCOL_ENCODING_ENCODING_H_') - contents = contents.replace( - 'namespace inspector_protocol_encoding', - 'namespace v8_inspector_protocol_encoding') open(os.path.join(dest_dir, f), 'w').write(contents) shutil.copymode(os.path.join(src_dir, f), os.path.join(dest_dir, f)) for f in to_delete: os.unlink(os.path.join(dest_dir, f)) head_revision = GetHeadRevision(upstream) - lines = open(os.path.join(dest_dir, 'README.v8')).readlines() - f = open(os.path.join(dest_dir, 'README.v8'), 'w') + lines = open(os.path.join(dest_dir, 'README.node')).readlines() + f = open(os.path.join(dest_dir, 'README.node'), 'w') for line in lines: - if line.startswith('Revision: '): - f.write('Revision: %s' % head_revision) + if line.startswith(REVISION_LINE_PREFIX): + f.write(f'{REVISION_LINE_PREFIX}{head_revision}') else: f.write(line) f.close() diff --git a/tools/inspector_protocol/templates/TypeBuilder_cpp.template b/tools/inspector_protocol/templates/TypeBuilder_cpp.template deleted file mode 100644 index 982e2c61b8e916..00000000000000 --- a/tools/inspector_protocol/templates/TypeBuilder_cpp.template +++ /dev/null @@ -1,417 +0,0 @@ -// This file is generated by TypeBuilder_cpp.template. - -// Copyright (c) 2016 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include {{format_domain_include(config.protocol.package, domain.domain)}} - -#include {{format_include(config.protocol.package, "Protocol")}} - -{% for namespace in config.protocol.namespace %} -namespace {{namespace}} { -{% endfor %} -namespace {{domain.domain}} { - -// ------------- Enum values from types. - -const char Metainfo::domainName[] = "{{domain.domain}}"; -const char Metainfo::commandPrefix[] = "{{domain.domain}}."; -const char Metainfo::version[] = "{{domain.version}}"; - {% for type in domain.types %} - {% if not protocol.generate_type(domain.domain, type.id) %}{% continue %} {% endif %} - {% if "enum" in type %} - -namespace {{type.id}}Enum { - {% for literal in type.enum %} -const char {{ literal | dash_to_camelcase}}[] = "{{literal}}"; - {% endfor %} -} // namespace {{type.id}}Enum - {% if protocol.is_exported(domain.domain, type.id) %} - -namespace API { -namespace {{type.id}}Enum { - {% for literal in type.enum %} -const char* {{ literal | dash_to_camelcase}} = "{{literal}}"; - {% endfor %} -} // namespace {{type.id}}Enum -} // namespace API - {% endif %} - {% endif %} - {% for property in type.properties %} - {% if "enum" in property %} - - {% for literal in property.enum %} -const char* {{type.id}}::{{property.name | to_title_case}}Enum::{{literal | dash_to_camelcase}} = "{{literal}}"; - {% endfor %} - {% endif %} - {% endfor %} - {% if not (type.type == "object") or not ("properties" in type) %}{% continue %}{% endif %} - -std::unique_ptr<{{type.id}}> {{type.id}}::fromValue(protocol::Value* value, ErrorSupport* errors) -{ - if (!value || value->type() != protocol::Value::TypeObject) { - errors->addError("object expected"); - return nullptr; - } - - std::unique_ptr<{{type.id}}> result(new {{type.id}}()); - protocol::DictionaryValue* object = DictionaryValue::cast(value); - errors->push(); - {% for property in type.properties %} - protocol::Value* {{property.name}}Value = object->get("{{property.name}}"); - {% if property.optional %} - if ({{property.name}}Value) { - errors->setName("{{property.name}}"); - result->m_{{property.name}} = ValueConversions<{{protocol.resolve_type(property).raw_type}}>::fromValue({{property.name}}Value, errors); - } - {% else %} - errors->setName("{{property.name}}"); - result->m_{{property.name}} = ValueConversions<{{protocol.resolve_type(property).raw_type}}>::fromValue({{property.name}}Value, errors); - {% endif %} - {% endfor %} - errors->pop(); - if (errors->hasErrors()) - return nullptr; - return result; -} - -std::unique_ptr<protocol::DictionaryValue> {{type.id}}::toValue() const -{ - std::unique_ptr<protocol::DictionaryValue> result = DictionaryValue::create(); - {% for property in type.properties %} - {% set property_type = protocol.resolve_type(property) %} - {% set property_field = "m_" + property.name %} - {% if property.optional %} - if ({{property_field}}.isJust()) - result->setValue("{{property.name}}", ValueConversions<{{property_type.raw_type}}>::toValue({{property_field}}.fromJust())); - {% else %} - result->setValue("{{property.name}}", ValueConversions<{{property_type.raw_type}}>::toValue({{property_type.to_raw_type % property_field}})); - {% endif %} - {% endfor %} - return result; -} - -std::unique_ptr<{{type.id}}> {{type.id}}::clone() const -{ - ErrorSupport errors; - return fromValue(toValue().get(), &errors); -} - {% if protocol.is_exported(domain.domain, type.id) %} - -{{config.exported.string_out}} {{type.id}}::toJSONString() const -{ - String json = toValue()->serializeToJSON(); - return {{config.exported.to_string_out % "json"}}; -} - -void {{type.id}}::writeBinary(std::vector<uint8_t>* out) const -{ - toValue()->writeBinary(out); -} - -// static -std::unique_ptr<API::{{type.id}}> API::{{type.id}}::fromJSONString(const {{config.exported.string_in}}& json) -{ - ErrorSupport errors; - std::unique_ptr<Value> value = StringUtil::parseJSON(json); - if (!value) - return nullptr; - return protocol::{{domain.domain}}::{{type.id}}::fromValue(value.get(), &errors); -} - -// static -std::unique_ptr<API::{{type.id}}> API::{{type.id}}::fromBinary(const uint8_t* data, size_t length) -{ - ErrorSupport errors; - std::unique_ptr<Value> value = Value::parseBinary(data, length); - if (!value) - return nullptr; - return protocol::{{domain.domain}}::{{type.id}}::fromValue(value.get(), &errors); -} - - {% endif %} - {% endfor %} - -// ------------- Enum values from params. - - {% for command in join_arrays(domain, ["commands", "events"]) %} - {% for param in join_arrays(command, ["parameters", "returns"]) %} - {% if "enum" in param %} - -namespace {{command.name | to_title_case}} { -namespace {{param.name | to_title_case}}Enum { - {% for literal in param.enum %} -const char* {{ literal | to_title_case}} = "{{literal}}"; - {% endfor %} -} // namespace {{param.name | to_title_case}}Enum -} // namespace {{command.name | to_title_case }} - {% if protocol.is_exported(domain.domain, command.name + "." + param.name) %} - -namespace API { -namespace {{command.name | to_title_case}} { -namespace {{param.name | to_title_case}}Enum { - {% for literal in param.enum %} -const char* {{ literal | to_title_case}} = "{{literal}}"; - {% endfor %} -} // namespace {{param.name | to_title_case}}Enum -} // namespace {{command.name | to_title_case }} -} // namespace API - {% endif %} - {% endif %} - {% endfor %} - {% endfor %} - -// ------------- Frontend notifications. - {% for event in domain.events %} - {% if not protocol.generate_event(domain.domain, event.name) %}{% continue %}{% endif %} - -void Frontend::{{event.name | to_method_case}}( - {%- for parameter in event.parameters %} - {% if "optional" in parameter -%} - Maybe<{{protocol.resolve_type(parameter).raw_type}}> - {%- else -%} - {{protocol.resolve_type(parameter).pass_type}} - {%- endif %} {{parameter.name}}{%- if not loop.last -%}, {% endif -%} - {% endfor -%}) -{ - if (!m_frontendChannel) - return; - {% if event.parameters %} - std::unique_ptr<{{event.name | to_title_case}}Notification> messageData = {{event.name | to_title_case}}Notification::{{"create" | to_method_case}}() - {% for parameter in event.parameters %} - {% if not "optional" in parameter %} - .{{"set" | to_method_case}}{{parameter.name | to_title_case}}({{protocol.resolve_type(parameter).to_pass_type % parameter.name}}) - {% endif %} - {% endfor %} - .{{ "build" | to_method_case }}(); - {% for parameter in event.parameters %} - {% if "optional" in parameter %} - if ({{parameter.name}}.isJust()) - messageData->{{"set" | to_method_case}}{{parameter.name | to_title_case}}(std::move({{parameter.name}}).takeJust()); - {% endif %} - {% endfor %} - m_frontendChannel->sendProtocolNotification(InternalResponse::createNotification("{{domain.domain}}.{{event.name}}", std::move(messageData))); - {% else %} - m_frontendChannel->sendProtocolNotification(InternalResponse::createNotification("{{domain.domain}}.{{event.name}}")); - {% endif %} -} - {% endfor %} - -void Frontend::flush() -{ - m_frontendChannel->flushProtocolNotifications(); -} - -void Frontend::sendRawJSONNotification(String notification) -{ - m_frontendChannel->sendProtocolNotification(InternalRawNotification::fromJSON(std::move(notification))); -} - -void Frontend::sendRawCBORNotification(std::vector<uint8_t> notification) -{ - m_frontendChannel->sendProtocolNotification(InternalRawNotification::fromBinary(std::move(notification))); -} - -// --------------------- Dispatcher. - -class DispatcherImpl : public protocol::DispatcherBase { -public: - DispatcherImpl(FrontendChannel* frontendChannel, Backend* backend) - : DispatcherBase(frontendChannel) - , m_backend(backend) { - {% for command in domain.commands %} - {% if "redirect" in command %} - m_redirects["{{domain.domain}}.{{command.name}}"] = "{{command.redirect}}.{{command.name}}"; - {% continue %} - {% endif %} - {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} - m_dispatchMap["{{domain.domain}}.{{command.name}}"] = &DispatcherImpl::{{command.name}}; - {% endfor %} - } - ~DispatcherImpl() override { } - bool canDispatch(const String& method) override; - void dispatch(int callId, const String& method, const ProtocolMessage& message, std::unique_ptr<protocol::DictionaryValue> messageObject) override; - std::unordered_map<String, String>& redirects() { return m_redirects; } - -protected: - using CallHandler = void (DispatcherImpl::*)(int callId, const String& method, const ProtocolMessage& message, std::unique_ptr<DictionaryValue> messageObject, ErrorSupport* errors); - using DispatchMap = std::unordered_map<String, CallHandler>; - DispatchMap m_dispatchMap; - std::unordered_map<String, String> m_redirects; - - {% for command in domain.commands %} - {% if "redirect" in command %}{% continue %}{% endif %} - {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} - void {{command.name}}(int callId, const String& method, const ProtocolMessage& message, std::unique_ptr<DictionaryValue> requestMessageObject, ErrorSupport*); - {% endfor %} - - Backend* m_backend; -}; - -bool DispatcherImpl::canDispatch(const String& method) { - return m_dispatchMap.find(method) != m_dispatchMap.end(); -} - -void DispatcherImpl::dispatch(int callId, const String& method, const ProtocolMessage& message, std::unique_ptr<protocol::DictionaryValue> messageObject) -{ - std::unordered_map<String, CallHandler>::iterator it = m_dispatchMap.find(method); - DCHECK(it != m_dispatchMap.end()); - protocol::ErrorSupport errors; - (this->*(it->second))(callId, method, message, std::move(messageObject), &errors); -} - - {% for command in domain.commands %} - {% set command_name_title = command.name | to_title_case %} - {% if "redirect" in command %}{% continue %}{% endif %} - {% if not protocol.generate_command(domain.domain, command.name) %}{% continue %}{% endif %} - {% if protocol.is_async_command(domain.domain, command.name) %} - -class {{command_name_title}}CallbackImpl : public Backend::{{command_name_title}}Callback, public DispatcherBase::Callback { -public: - {{command_name_title}}CallbackImpl(std::unique_ptr<DispatcherBase::WeakPtr> backendImpl, int callId, const String& method, const ProtocolMessage& message) - : DispatcherBase::Callback(std::move(backendImpl), callId, method, message) { } - - void sendSuccess( - {%- for parameter in command.returns -%} - {%- if "optional" in parameter -%} - Maybe<{{protocol.resolve_type(parameter).raw_type}}> {{parameter.name}} - {%- else -%} - {{protocol.resolve_type(parameter).pass_type}} {{parameter.name}} - {%- endif -%} - {%- if not loop.last -%}, {% endif -%} - {%- endfor -%}) override - { - std::unique_ptr<protocol::DictionaryValue> resultObject = DictionaryValue::create(); - {% for parameter in command.returns %} - {% if "optional" in parameter %} - if ({{parameter.name}}.isJust()) - resultObject->setValue("{{parameter.name}}", ValueConversions<{{protocol.resolve_type(parameter).raw_type}}>::toValue({{parameter.name}}.fromJust())); - {% else %} - resultObject->setValue("{{parameter.name}}", ValueConversions<{{protocol.resolve_type(parameter).raw_type}}>::toValue({{protocol.resolve_type(parameter).to_raw_type % parameter.name}})); - {% endif %} - {% endfor %} - sendIfActive(std::move(resultObject), DispatchResponse::OK()); - } - - void fallThrough() override - { - fallThroughIfActive(); - } - - void sendFailure(const DispatchResponse& response) override - { - DCHECK(response.status() == DispatchResponse::kError); - sendIfActive(nullptr, response); - } -}; - {% endif %} - -void DispatcherImpl::{{command.name}}(int callId, const String& method, const ProtocolMessage& message, std::unique_ptr<DictionaryValue> requestMessageObject, ErrorSupport* errors) -{ - {% if "parameters" in command %} - // Prepare input parameters. - protocol::DictionaryValue* object = DictionaryValue::cast(requestMessageObject->get("params")); - errors->push(); - {% for parameter in command.parameters %} - {% set parameter_type = protocol.resolve_type(parameter) %} - protocol::Value* {{parameter.name}}Value = object ? object->get("{{parameter.name}}") : nullptr; - {% if parameter.optional %} - Maybe<{{parameter_type.raw_type}}> in_{{parameter.name}}; - if ({{parameter.name}}Value) { - errors->setName("{{parameter.name}}"); - in_{{parameter.name}} = ValueConversions<{{parameter_type.raw_type}}>::fromValue({{parameter.name}}Value, errors); - } - {% else %} - errors->setName("{{parameter.name}}"); - {{parameter_type.type}} in_{{parameter.name}} = ValueConversions<{{parameter_type.raw_type}}>::fromValue({{parameter.name}}Value, errors); - {% endif %} - {% endfor %} - errors->pop(); - if (errors->hasErrors()) { - reportProtocolError(callId, DispatchResponse::kInvalidParams, kInvalidParamsString, errors); - return; - } - {% endif %} - {% if "returns" in command and not protocol.is_async_command(domain.domain, command.name) %} - // Declare output parameters. - {% for parameter in command.returns %} - {% if "optional" in parameter %} - Maybe<{{protocol.resolve_type(parameter).raw_type}}> out_{{parameter.name}}; - {% else %} - {{protocol.resolve_type(parameter).type}} out_{{parameter.name}}; - {% endif %} - {% endfor %} - {% endif %} - - {% if not protocol.is_async_command(domain.domain, command.name) %} - std::unique_ptr<DispatcherBase::WeakPtr> weak = weakPtr(); - DispatchResponse response = m_backend->{{command.name | to_method_case}}( - {%- for parameter in command.parameters -%} - {%- if not loop.first -%}, {% endif -%} - {%- if "optional" in parameter -%} - std::move(in_{{parameter.name}}) - {%- else -%} - {{protocol.resolve_type(parameter).to_pass_type % ("in_" + parameter.name)}} - {%- endif -%} - {%- endfor %} - {%- if "returns" in command %} - {%- for parameter in command.returns -%} - {%- if not loop.first or command.parameters -%}, {% endif -%} - &out_{{parameter.name}} - {%- endfor %} - {% endif %}); - if (response.status() == DispatchResponse::kFallThrough) { - channel()->fallThrough(callId, method, message); - return; - } - {% if "returns" in command %} - std::unique_ptr<protocol::DictionaryValue> result = DictionaryValue::create(); - if (response.status() == DispatchResponse::kSuccess) { - {% for parameter in command.returns %} - {% if "optional" in parameter %} - if (out_{{parameter.name}}.isJust()) - result->setValue("{{parameter.name}}", ValueConversions<{{protocol.resolve_type(parameter).raw_type}}>::toValue(out_{{parameter.name}}.fromJust())); - {% else %} - result->setValue("{{parameter.name}}", ValueConversions<{{protocol.resolve_type(parameter).raw_type}}>::toValue({{protocol.resolve_type(parameter).to_raw_type % ("out_" + parameter.name)}})); - {% endif %} - {% endfor %} - } - if (weak->get()) - weak->get()->sendResponse(callId, response, std::move(result)); - {% else %} - if (weak->get()) - weak->get()->sendResponse(callId, response); - {% endif %} - return; - {% else %} - std::unique_ptr<DispatcherBase::WeakPtr> weak = weakPtr(); - std::unique_ptr<{{command_name_title}}CallbackImpl> callback(new {{command.name | to_title_case}}CallbackImpl(weakPtr(), callId, method, message)); - m_backend->{{command.name | to_method_case}}( - {%- for property in command.parameters -%} - {%- if not loop.first -%}, {% endif -%} - {%- if "optional" in property -%} - std::move(in_{{property.name}}) - {%- else -%} - {{protocol.resolve_type(property).to_pass_type % ("in_" + property.name)}} - {%- endif -%} - {%- endfor -%} - {%- if command.parameters -%}, {% endif -%} - std::move(callback)); - return; - {% endif %} -} - {% endfor %} - -// static -void Dispatcher::wire(UberDispatcher* uber, Backend* backend) -{ - std::unique_ptr<DispatcherImpl> dispatcher(new DispatcherImpl(uber->channel(), backend)); - uber->setupRedirects(dispatcher->redirects()); - uber->registerBackend("{{domain.domain}}", std::move(dispatcher)); -} - -} // {{domain.domain}} -{% for namespace in config.protocol.namespace %} -} // namespace {{namespace}} -{% endfor %} diff --git a/tools/snapshot/README.md b/tools/snapshot/README.md index 3ae6547a0a2a2d..d61c2306e3516f 100644 --- a/tools/snapshot/README.md +++ b/tools/snapshot/README.md @@ -8,9 +8,46 @@ instead of executing code to bootstrap, it can deserialize the context from an embedded snapshot, which readily contains the result of the bootstrap, so that Node.js can start up faster. -Currently only the main context of the main Node.js instance supports snapshot -deserialization, and the snapshot does not yet cover the entire bootstrap -process. Work is being done to expand the support. +The built-in snapshot consists of the following snapshots: + +## Isolate snapshot + +Which is used whenever a `v8::Isolate` is created using the data returned by +`node::SnapshotBuilder::GetEmbeddedSnapshotData`. + +## Context snapshots + +Which are used when a `v8::Context` is created from a `v8::Isolate` deserialized +from the snapshot. There are four context snapshots in the snapshot blob. + +1. The default context snapshot, used for contexts created by + `v8::Context::New()`, it only contains V8 built-ins, matching the + layout of the isolate snapshot. +1. The vm context snapshot, which can be deserialized using + `v8::Context::FromSnapshot(isolate, node::SnapshotData::kNodeVMContextIndex, ...)`. + It captures initializations specific to vm contexts done by + `node::contextify::ContextifyContext::CreateV8Context()`. +1. The base context snapshot, which can be deserialized using + `v8::Context::FromSnapshot(isolate, node::SnapshotData::kNodeBaseContextIndex, ...)`. + It currently captures initializations done by `node::NewContext()` + but is intended to include more as a basis for worker thread + contexts. +1. The main context snapshot, which can be deserialized using + `v8::Context::FromSnapshot(isolate, node::SnapshotData::kNodeMainContextIndex, ...)`. + This is the snapshot for the main context on the main thread, and + captures initializations done by `node::CommonEnvironmentSetup::CreateForSnapshotting()`, + most notably `node::CreateEnvironment()`, which runs the following scripts via + `node::Realm::RunBootstrapping()` for the main context as a principal realm, + so that at runtime, these scripts do not need to be run. Instead only the context + initialized by them is deserialized at runtime. + 1. `internal/bootstrap/realm` + 2. `internal/bootstrap/node` + 3. `internal/bootstrap/web/exposed-wildcard` + 4. `internal/bootstrap/web/exposed-window-or-worker` + 5. `internal/bootstrap/switches/is_main_thread` + 6. `internal/bootstrap/switches/does_own_process_state` + +For more information about these contexts, see the comment in `src/node_context_data.h`. ## How it's built and used @@ -39,3 +76,22 @@ For debugging, Node.js can be built without Node.js's own snapshot if `--without-node-snapshot` is passed to `configure`. A Node.js executable with Node.js snapshot embedded can also be launched without deserializing from it if the command line argument `--no-node-snapshot` is passed. + +### When `node_mksnapshot` crashes.. + +Due to this two-phase building process, sometimes when there is an issue +in the code, the build may crash early at executing `node_mksnapshot` instead of crashing +at executing the final executable `node`. If the crash can be reproduced when running +the `node` executable built with `--without-node-snapshot`, it means the crash likely +has nothing to do with snapshots, and only shows up in `node_mksnapshot` because it's +the first Node.js executable being run. + +If the crash comes from a `mksnapshot` executable (notice that it doesn't have the `node_` +prefix), that comes from V8's own snapshot building process, not the one in Node.js, and the +fix likely needs to be in V8 or the build configurations of V8. + +If it `node_mksnapshot` crashes with an error message containing +something like `Unknown external reference 0x107769200`, see +[Registering binding functions used in bootstrap][] on how to fix it. + +[Registering binding functions used in bootstrap]: ../../src/README.md#registering-binding-functions-used-in-bootstrap diff --git a/tools/test.py b/tools/test.py index a6037608d52459..fb9ba3c73e9960 100755 --- a/tools/test.py +++ b/tools/test.py @@ -317,7 +317,7 @@ def HasRun(self, output): class ActionsAnnotationProgressIndicator(DotsProgressIndicator): def AboutToRun(self, case): case.additional_flags = case.additional_flags.copy() if hasattr(case, 'additional_flags') else [] - case.additional_flags.append('--test-reporter=./tools/github_reporter/index.js') + case.additional_flags.append('--test-reporter=./test/common/test-error-reporter.js') case.additional_flags.append('--test-reporter-destination=stdout') def GetAnnotationInfo(self, test, output): diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp index 6906479ec48269..c4548c124df559 100644 --- a/tools/v8_gypfiles/v8.gyp +++ b/tools/v8_gypfiles/v8.gyp @@ -41,6 +41,19 @@ 'AdditionalOptions': ['/utf-8'] } }, + 'conditions': [ + ['OS=="mac"', { + # Hide symbols that are not explicitly exported with V8_EXPORT. + # TODO(joyeecheung): enable it on other platforms. Currently gcc times out + # or run out of memory with -fvisibility=hidden on some machines in the CI. + 'xcode_settings': { + 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden + }, + 'defines': [ + 'BUILDING_V8_SHARED', # Make V8_EXPORT visible. + ], + }], + ], }, 'targets': [ { @@ -1209,6 +1222,11 @@ '<(V8_ROOT)/src/trap-handler/handler-outside-posix.cc', ], }], + ['(_toolset=="host" and host_arch=="x64" or _toolset=="target" and target_arch=="x64") and (OS=="linux")', { + 'sources': [ + '<(V8_ROOT)/src/trap-handler/handler-outside-simulator.cc', + ], + }], ], }], ], diff --git a/typings/internalBinding/modules.d.ts b/typings/internalBinding/modules.d.ts index 8142874edfde88..7d35b864dae356 100644 --- a/typings/internalBinding/modules.d.ts +++ b/typings/internalBinding/modules.d.ts @@ -1,27 +1,30 @@ export type PackageType = 'commonjs' | 'module' | 'none' export type PackageConfig = { - pjsonPath: string - exists: boolean name?: string main?: any type: PackageType exports?: string | string[] | Record<string, unknown> imports?: string | string[] | Record<string, unknown> } +export type DeserializedPackageConfig = { + data: PackageConfig, + exists: boolean, + path: URL['pathname'], +} export type SerializedPackageConfig = [ PackageConfig['name'], PackageConfig['main'], PackageConfig['type'], string | undefined, // exports string | undefined, // imports - string | undefined, // raw json available for experimental policy + DeserializedPackageConfig['path'], // pjson file path ] export interface ModulesBinding { readPackageJSON(path: string): SerializedPackageConfig | undefined; - getNearestParentPackageJSON(path: string): PackageConfig | undefined + getNearestParentPackageJSON(path: string): SerializedPackageConfig | undefined + getNearestRawParentPackageJSON(origin: URL['pathname']): [ReturnType<JSON['stringify']>, DeserializedPackageConfig['path']] | undefined getNearestParentPackageJSONType(path: string): PackageConfig['type'] getPackageScopeConfig(path: string): SerializedPackageConfig | undefined getPackageJSONScripts(): string | undefined - flushCompileCache(keepDeserializedCache?: boolean): void }