From 5fd62dec978bff3035c137af3c9dc08ed18596ff Mon Sep 17 00:00:00 2001 From: Kelvin Schoofs Date: Sat, 30 Oct 2021 16:45:28 +0200 Subject: [PATCH] Switch to Yarn Berry --- .github/workflows/build.yml | 18 +- .pnp.cjs | 19432 +++++++++++++++++++++++++++ .pnp.loader.mjs | 249 + .vscode/extensions.json | 10 +- .vscode/settings.json | 25 +- .yarn/install-state.gz | Bin 0 -> 669873 bytes .yarn/releases/yarn-3.1.0.cjs | 768 ++ .yarn/sdks/eslint/bin/eslint.js | 20 + .yarn/sdks/eslint/package.json | 6 + .yarn/sdks/integrations.yml | 5 + .yarn/sdks/typescript/bin/tsc | 20 + .yarn/sdks/typescript/bin/tsserver | 20 + .yarn/sdks/typescript/package.json | 6 + .yarnrc.yml | 7 + package.json | 4 +- yarn.lock | 12016 ++++++++++------- 16 files changed, 27716 insertions(+), 4890 deletions(-) create mode 100644 .pnp.cjs create mode 100644 .pnp.loader.mjs create mode 100644 .yarn/install-state.gz create mode 100644 .yarn/releases/yarn-3.1.0.cjs create mode 100644 .yarn/sdks/eslint/bin/eslint.js create mode 100644 .yarn/sdks/eslint/package.json create mode 100644 .yarn/sdks/integrations.yml create mode 100644 .yarn/sdks/typescript/bin/tsc create mode 100644 .yarn/sdks/typescript/bin/tsserver create mode 100644 .yarn/sdks/typescript/package.json create mode 100644 .yarnrc.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8973c6f..aa4a2e7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -29,14 +29,24 @@ jobs: with: artifact_prefix: "ip-matching" artifact_extension: "tgz" - - name: Use Node.js 10.x + - name: Use Node.js 12.x uses: actions/setup-node@v1 with: - node-version: 10.x + node-version: 12.x + - name: Get Yarn cache directory + id: yarn-cache + run: echo "::set-output name=dir::$(yarn config get cacheFolder)" + - name: Yarn cache + uses: actions/cache@v2.1.4 + with: + path: ${{ steps.yarn-cache.outputs.dir }} + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- - name: Install dependencies - run: yarn --frozen-lockfile + run: yarn --immutable - name: Pack tarball - run: yarn pack -f ${{ steps.utils.outputs.artifact_name }} + run: yarn pack -o ${{ steps.utils.outputs.artifact_name }} - name: Add commit check status uses: Sibz/github-status-action@v1 if: ${{ always() }} diff --git a/.pnp.cjs b/.pnp.cjs new file mode 100644 index 0000000..9bf8a78 --- /dev/null +++ b/.pnp.cjs @@ -0,0 +1,19432 @@ +#!/usr/bin/env node +/* eslint-disable */ + +try { + Object.freeze({}).detectStrictMode = true; +} catch (error) { + throw new Error(`The whole PnP file got strict-mode-ified, which is known to break (Emscripten libraries aren't strict mode). This usually happens when the file goes through Babel.`); +} + +var __non_webpack_module__ = module; + +function $$SETUP_STATE(hydrateRuntimeState, basePath) { + return hydrateRuntimeState({ + "__info": [ + "This file is automatically generated. Do not touch it, or risk", + "your modifications being lost. We also recommend you not to read", + "it either without using the @yarnpkg/pnp package, as the data layout", + "is entirely unspecified and WILL change from a version to another." + ], + "dependencyTreeRoots": [ + { + "name": "ip-matching", + "reference": "workspace:." + } + ], + "enableTopLevelFallback": true, + "ignorePatternData": "(^(?:\\.yarn\\/sdks(?:\\/(?!\\.{1,2}(?:\\/|$))(?:(?:(?!(?:^|\\/)\\.{1,2}(?:\\/|$)).)*?)|$))$)", + "fallbackExclusionList": [ + ["ip-matching", ["workspace:."]] + ], + "fallbackPool": [ + ], + "packageRegistryData": [ + [null, [ + [null, { + "packageLocation": "./", + "packageDependencies": [ + ["@microsoft/api-extractor", "npm:7.18.1"], + ["@types/jest", "npm:26.0.20"], + ["@types/node", "npm:10.17.39"], + ["@typescript-eslint/eslint-plugin", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["@typescript-eslint/parser", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["eslint", "npm:7.30.0"], + ["jest", "npm:26.6.3"], + ["nodemon", "npm:2.0.6"], + ["rimraf", "npm:3.0.2"], + ["source-map-support", "npm:0.5.19"], + ["ts-jest", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:26.5.0"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "linkType": "SOFT", + }] + ]], + ["@babel/code-frame", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-code-frame-npm-7.12.11-1a9a1b277f-8.zip/node_modules/@babel/code-frame/", + "packageDependencies": [ + ["@babel/code-frame", "npm:7.12.11"], + ["@babel/highlight", "npm:7.10.4"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/core", [ + ["npm:7.12.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-core-npm-7.12.10-b02df7217e-8.zip/node_modules/@babel/core/", + "packageDependencies": [ + ["@babel/core", "npm:7.12.10"], + ["@babel/code-frame", "npm:7.12.11"], + ["@babel/generator", "npm:7.12.11"], + ["@babel/helper-module-transforms", "npm:7.12.1"], + ["@babel/helpers", "npm:7.12.5"], + ["@babel/parser", "npm:7.12.11"], + ["@babel/template", "npm:7.12.7"], + ["@babel/traverse", "npm:7.12.12"], + ["@babel/types", "npm:7.12.12"], + ["convert-source-map", "npm:1.7.0"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["gensync", "npm:1.0.0-beta.2"], + ["json5", "npm:2.1.3"], + ["lodash", "npm:4.17.20"], + ["semver", "npm:5.7.1"], + ["source-map", "npm:0.5.7"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/generator", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-generator-npm-7.12.11-76629b27f8-8.zip/node_modules/@babel/generator/", + "packageDependencies": [ + ["@babel/generator", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"], + ["jsesc", "npm:2.5.2"], + ["source-map", "npm:0.5.7"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-function-name", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-function-name-npm-7.12.11-53931a5dc0-8.zip/node_modules/@babel/helper-function-name/", + "packageDependencies": [ + ["@babel/helper-function-name", "npm:7.12.11"], + ["@babel/helper-get-function-arity", "npm:7.12.10"], + ["@babel/template", "npm:7.12.7"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-get-function-arity", [ + ["npm:7.12.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-get-function-arity-npm-7.12.10-cb02cbb9f3-8.zip/node_modules/@babel/helper-get-function-arity/", + "packageDependencies": [ + ["@babel/helper-get-function-arity", "npm:7.12.10"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-member-expression-to-functions", [ + ["npm:7.12.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-member-expression-to-functions-npm-7.12.7-174834b465-8.zip/node_modules/@babel/helper-member-expression-to-functions/", + "packageDependencies": [ + ["@babel/helper-member-expression-to-functions", "npm:7.12.7"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-module-imports", [ + ["npm:7.12.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-module-imports-npm-7.12.5-76d7bcabe9-8.zip/node_modules/@babel/helper-module-imports/", + "packageDependencies": [ + ["@babel/helper-module-imports", "npm:7.12.5"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-module-transforms", [ + ["npm:7.12.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-module-transforms-npm-7.12.1-c42d2455d3-8.zip/node_modules/@babel/helper-module-transforms/", + "packageDependencies": [ + ["@babel/helper-module-transforms", "npm:7.12.1"], + ["@babel/helper-module-imports", "npm:7.12.5"], + ["@babel/helper-replace-supers", "npm:7.12.11"], + ["@babel/helper-simple-access", "npm:7.12.1"], + ["@babel/helper-split-export-declaration", "npm:7.12.11"], + ["@babel/helper-validator-identifier", "npm:7.12.11"], + ["@babel/template", "npm:7.12.7"], + ["@babel/traverse", "npm:7.12.12"], + ["@babel/types", "npm:7.12.12"], + ["lodash", "npm:4.17.20"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-optimise-call-expression", [ + ["npm:7.12.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-optimise-call-expression-npm-7.12.10-1735a7949f-8.zip/node_modules/@babel/helper-optimise-call-expression/", + "packageDependencies": [ + ["@babel/helper-optimise-call-expression", "npm:7.12.10"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-plugin-utils", [ + ["npm:7.10.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-plugin-utils-npm-7.10.4-af87df4f11-8.zip/node_modules/@babel/helper-plugin-utils/", + "packageDependencies": [ + ["@babel/helper-plugin-utils", "npm:7.10.4"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-replace-supers", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-replace-supers-npm-7.12.11-db1c1661de-8.zip/node_modules/@babel/helper-replace-supers/", + "packageDependencies": [ + ["@babel/helper-replace-supers", "npm:7.12.11"], + ["@babel/helper-member-expression-to-functions", "npm:7.12.7"], + ["@babel/helper-optimise-call-expression", "npm:7.12.10"], + ["@babel/traverse", "npm:7.12.12"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-simple-access", [ + ["npm:7.12.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-simple-access-npm-7.12.1-18caff947e-8.zip/node_modules/@babel/helper-simple-access/", + "packageDependencies": [ + ["@babel/helper-simple-access", "npm:7.12.1"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-split-export-declaration", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-split-export-declaration-npm-7.12.11-c2789c09f5-8.zip/node_modules/@babel/helper-split-export-declaration/", + "packageDependencies": [ + ["@babel/helper-split-export-declaration", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helper-validator-identifier", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-validator-identifier-npm-7.12.11-e33455648e-8.zip/node_modules/@babel/helper-validator-identifier/", + "packageDependencies": [ + ["@babel/helper-validator-identifier", "npm:7.12.11"] + ], + "linkType": "HARD", + }], + ["npm:7.15.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helper-validator-identifier-npm-7.15.7-a8f354e738-8.zip/node_modules/@babel/helper-validator-identifier/", + "packageDependencies": [ + ["@babel/helper-validator-identifier", "npm:7.15.7"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/helpers", [ + ["npm:7.12.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-helpers-npm-7.12.5-3a2d6abe18-8.zip/node_modules/@babel/helpers/", + "packageDependencies": [ + ["@babel/helpers", "npm:7.12.5"], + ["@babel/template", "npm:7.12.7"], + ["@babel/traverse", "npm:7.12.12"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/highlight", [ + ["npm:7.10.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-highlight-npm-7.10.4-c7ff18fbba-8.zip/node_modules/@babel/highlight/", + "packageDependencies": [ + ["@babel/highlight", "npm:7.10.4"], + ["@babel/helper-validator-identifier", "npm:7.12.11"], + ["chalk", "npm:2.4.2"], + ["js-tokens", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/parser", [ + ["npm:7.12.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-parser-npm-7.12.11-04b8b0bd42-8.zip/node_modules/@babel/parser/", + "packageDependencies": [ + ["@babel/parser", "npm:7.12.11"], + ["@babel/types", "npm:7.16.0"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-async-generators", [ + ["npm:7.8.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-8.zip/node_modules/@babel/plugin-syntax-async-generators/", + "packageDependencies": [ + ["@babel/plugin-syntax-async-generators", "npm:7.8.4"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.4", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-async-generators-virtual-cbb3e63953/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-8.zip/node_modules/@babel/plugin-syntax-async-generators/", + "packageDependencies": [ + ["@babel/plugin-syntax-async-generators", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.4"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-bigint", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-8.zip/node_modules/@babel/plugin-syntax-bigint/", + "packageDependencies": [ + ["@babel/plugin-syntax-bigint", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-bigint-virtual-4e2aa33028/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-8.zip/node_modules/@babel/plugin-syntax-bigint/", + "packageDependencies": [ + ["@babel/plugin-syntax-bigint", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-class-properties", [ + ["npm:7.12.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-class-properties-npm-7.12.1-4ba7624aa7-8.zip/node_modules/@babel/plugin-syntax-class-properties/", + "packageDependencies": [ + ["@babel/plugin-syntax-class-properties", "npm:7.12.1"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-class-properties-virtual-9fae8dacf4/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-class-properties-npm-7.12.1-4ba7624aa7-8.zip/node_modules/@babel/plugin-syntax-class-properties/", + "packageDependencies": [ + ["@babel/plugin-syntax-class-properties", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-import-meta", [ + ["npm:7.10.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-8.zip/node_modules/@babel/plugin-syntax-import-meta/", + "packageDependencies": [ + ["@babel/plugin-syntax-import-meta", "npm:7.10.4"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-import-meta-virtual-f07913a9b0/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-import-meta-npm-7.10.4-4a0a0158bc-8.zip/node_modules/@babel/plugin-syntax-import-meta/", + "packageDependencies": [ + ["@babel/plugin-syntax-import-meta", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-json-strings", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-8.zip/node_modules/@babel/plugin-syntax-json-strings/", + "packageDependencies": [ + ["@babel/plugin-syntax-json-strings", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-json-strings-virtual-a1c4de6447/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-8.zip/node_modules/@babel/plugin-syntax-json-strings/", + "packageDependencies": [ + ["@babel/plugin-syntax-json-strings", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-logical-assignment-operators", [ + ["npm:7.10.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-8.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/", + "packageDependencies": [ + ["@babel/plugin-syntax-logical-assignment-operators", "npm:7.10.4"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-logical-assignment-operators-virtual-a2e5b619ef/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-8.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/", + "packageDependencies": [ + ["@babel/plugin-syntax-logical-assignment-operators", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-nullish-coalescing-operator", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-8.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/", + "packageDependencies": [ + ["@babel/plugin-syntax-nullish-coalescing-operator", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-nullish-coalescing-operator-virtual-c02562a7c4/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-8.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/", + "packageDependencies": [ + ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-numeric-separator", [ + ["npm:7.10.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-8.zip/node_modules/@babel/plugin-syntax-numeric-separator/", + "packageDependencies": [ + ["@babel/plugin-syntax-numeric-separator", "npm:7.10.4"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-numeric-separator-virtual-d9526469fa/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-8.zip/node_modules/@babel/plugin-syntax-numeric-separator/", + "packageDependencies": [ + ["@babel/plugin-syntax-numeric-separator", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-object-rest-spread", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-8.zip/node_modules/@babel/plugin-syntax-object-rest-spread/", + "packageDependencies": [ + ["@babel/plugin-syntax-object-rest-spread", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-object-rest-spread-virtual-60dbe747e0/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-8.zip/node_modules/@babel/plugin-syntax-object-rest-spread/", + "packageDependencies": [ + ["@babel/plugin-syntax-object-rest-spread", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-optional-catch-binding", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-8.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/", + "packageDependencies": [ + ["@babel/plugin-syntax-optional-catch-binding", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-catch-binding-virtual-9add8a6c5e/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-8.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/", + "packageDependencies": [ + ["@babel/plugin-syntax-optional-catch-binding", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-optional-chaining", [ + ["npm:7.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-8.zip/node_modules/@babel/plugin-syntax-optional-chaining/", + "packageDependencies": [ + ["@babel/plugin-syntax-optional-chaining", "npm:7.8.3"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-optional-chaining-virtual-a49181bfc9/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-8.zip/node_modules/@babel/plugin-syntax-optional-chaining/", + "packageDependencies": [ + ["@babel/plugin-syntax-optional-chaining", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/plugin-syntax-top-level-await", [ + ["npm:7.12.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-top-level-await-npm-7.12.1-d8555be35e-8.zip/node_modules/@babel/plugin-syntax-top-level-await/", + "packageDependencies": [ + ["@babel/plugin-syntax-top-level-await", "npm:7.12.1"] + ], + "linkType": "SOFT", + }], + ["virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1", { + "packageLocation": "./.yarn/__virtual__/@babel-plugin-syntax-top-level-await-virtual-bfd328ea31/5/AppData/Local/Yarn/Berry/cache/@babel-plugin-syntax-top-level-await-npm-7.12.1-d8555be35e-8.zip/node_modules/@babel/plugin-syntax-top-level-await/", + "packageDependencies": [ + ["@babel/plugin-syntax-top-level-await", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1"], + ["@babel/core", "npm:7.12.10"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["@babel/template", [ + ["npm:7.12.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-template-npm-7.12.7-ea87424ec4-8.zip/node_modules/@babel/template/", + "packageDependencies": [ + ["@babel/template", "npm:7.12.7"], + ["@babel/code-frame", "npm:7.12.11"], + ["@babel/parser", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/traverse", [ + ["npm:7.12.12", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-traverse-npm-7.12.12-624e94788e-8.zip/node_modules/@babel/traverse/", + "packageDependencies": [ + ["@babel/traverse", "npm:7.12.12"], + ["@babel/code-frame", "npm:7.12.11"], + ["@babel/generator", "npm:7.12.11"], + ["@babel/helper-function-name", "npm:7.12.11"], + ["@babel/helper-split-export-declaration", "npm:7.12.11"], + ["@babel/parser", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["globals", "npm:11.12.0"], + ["lodash", "npm:4.17.20"] + ], + "linkType": "HARD", + }] + ]], + ["@babel/types", [ + ["npm:7.12.12", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-types-npm-7.12.12-091a83fdd2-8.zip/node_modules/@babel/types/", + "packageDependencies": [ + ["@babel/types", "npm:7.12.12"], + ["@babel/helper-validator-identifier", "npm:7.12.11"], + ["lodash", "npm:4.17.20"], + ["to-fast-properties", "npm:2.0.0"] + ], + "linkType": "HARD", + }], + ["npm:7.16.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@babel-types-npm-7.16.0-e111c97393-8.zip/node_modules/@babel/types/", + "packageDependencies": [ + ["@babel/types", "npm:7.16.0"], + ["@babel/helper-validator-identifier", "npm:7.15.7"], + ["to-fast-properties", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@bcoe/v8-coverage", [ + ["npm:0.2.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@bcoe-v8-coverage-npm-0.2.3-9e27b3c57e-8.zip/node_modules/@bcoe/v8-coverage/", + "packageDependencies": [ + ["@bcoe/v8-coverage", "npm:0.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["@cnakazawa/watch", [ + ["npm:1.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@cnakazawa-watch-npm-1.0.4-ee43493884-8.zip/node_modules/@cnakazawa/watch/", + "packageDependencies": [ + ["@cnakazawa/watch", "npm:1.0.4"], + ["exec-sh", "npm:0.3.4"], + ["minimist", "npm:1.2.5"] + ], + "linkType": "HARD", + }] + ]], + ["@eslint/eslintrc", [ + ["npm:0.4.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@eslint-eslintrc-npm-0.4.2-f8b688e654-8.zip/node_modules/@eslint/eslintrc/", + "packageDependencies": [ + ["@eslint/eslintrc", "npm:0.4.2"], + ["ajv", "npm:6.12.6"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["espree", "npm:7.3.1"], + ["globals", "npm:13.10.0"], + ["ignore", "npm:4.0.6"], + ["import-fresh", "npm:3.3.0"], + ["js-yaml", "npm:3.14.1"], + ["minimatch", "npm:3.0.4"], + ["strip-json-comments", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["@gar/promisify", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@gar-promisify-npm-1.1.2-2343f94380-8.zip/node_modules/@gar/promisify/", + "packageDependencies": [ + ["@gar/promisify", "npm:1.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["@humanwhocodes/config-array", [ + ["npm:0.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@humanwhocodes-config-array-npm-0.5.0-5ded120470-8.zip/node_modules/@humanwhocodes/config-array/", + "packageDependencies": [ + ["@humanwhocodes/config-array", "npm:0.5.0"], + ["@humanwhocodes/object-schema", "npm:1.2.0"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["minimatch", "npm:3.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["@humanwhocodes/object-schema", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@humanwhocodes-object-schema-npm-1.2.0-6bc0ff9fda-8.zip/node_modules/@humanwhocodes/object-schema/", + "packageDependencies": [ + ["@humanwhocodes/object-schema", "npm:1.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["@istanbuljs/load-nyc-config", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@istanbuljs-load-nyc-config-npm-1.1.0-42d17c9cb1-8.zip/node_modules/@istanbuljs/load-nyc-config/", + "packageDependencies": [ + ["@istanbuljs/load-nyc-config", "npm:1.1.0"], + ["camelcase", "npm:5.3.1"], + ["find-up", "npm:4.1.0"], + ["get-package-type", "npm:0.1.0"], + ["js-yaml", "npm:3.14.1"], + ["resolve-from", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@istanbuljs/schema", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@istanbuljs-schema-npm-0.1.2-cec4e49c8d-8.zip/node_modules/@istanbuljs/schema/", + "packageDependencies": [ + ["@istanbuljs/schema", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/console", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-console-npm-26.6.2-bfe95527e4-8.zip/node_modules/@jest/console/", + "packageDependencies": [ + ["@jest/console", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["chalk", "npm:4.1.0"], + ["jest-message-util", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["slash", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/core", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-core-npm-26.6.3-9bb6c92d6b-8.zip/node_modules/@jest/core/", + "packageDependencies": [ + ["@jest/core", "npm:26.6.3"], + ["@jest/console", "npm:26.6.2"], + ["@jest/reporters", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/transform", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["ansi-escapes", "npm:4.3.1"], + ["chalk", "npm:4.1.0"], + ["exit", "npm:0.1.2"], + ["graceful-fs", "npm:4.2.4"], + ["jest-changed-files", "npm:26.6.2"], + ["jest-config", "virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-resolve", "npm:26.6.2"], + ["jest-resolve-dependencies", "npm:26.6.3"], + ["jest-runner", "npm:26.6.3"], + ["jest-runtime", "npm:26.6.3"], + ["jest-snapshot", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jest-validate", "npm:26.6.2"], + ["jest-watcher", "npm:26.6.2"], + ["micromatch", "npm:4.0.2"], + ["p-each-series", "npm:2.2.0"], + ["rimraf", "npm:3.0.2"], + ["slash", "npm:3.0.0"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/environment", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-environment-npm-26.6.2-bc869bb23e-8.zip/node_modules/@jest/environment/", + "packageDependencies": [ + ["@jest/environment", "npm:26.6.2"], + ["@jest/fake-timers", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["jest-mock", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/fake-timers", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-fake-timers-npm-26.6.2-511850bedc-8.zip/node_modules/@jest/fake-timers/", + "packageDependencies": [ + ["@jest/fake-timers", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@sinonjs/fake-timers", "npm:6.0.1"], + ["@types/node", "npm:14.14.22"], + ["jest-message-util", "npm:26.6.2"], + ["jest-mock", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/globals", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-globals-npm-26.6.2-8ad9bc1dd5-8.zip/node_modules/@jest/globals/", + "packageDependencies": [ + ["@jest/globals", "npm:26.6.2"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["expect", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/reporters", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-reporters-npm-26.6.2-d75b358f51-8.zip/node_modules/@jest/reporters/", + "packageDependencies": [ + ["@jest/reporters", "npm:26.6.2"], + ["@bcoe/v8-coverage", "npm:0.2.3"], + ["@jest/console", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/transform", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["collect-v8-coverage", "npm:1.0.1"], + ["exit", "npm:0.1.2"], + ["glob", "npm:7.1.6"], + ["graceful-fs", "npm:4.2.4"], + ["istanbul-lib-coverage", "npm:3.0.0"], + ["istanbul-lib-instrument", "npm:4.0.3"], + ["istanbul-lib-report", "npm:3.0.0"], + ["istanbul-lib-source-maps", "npm:4.0.0"], + ["istanbul-reports", "npm:3.0.2"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-resolve", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jest-worker", "npm:26.6.2"], + ["node-notifier", "npm:8.0.1"], + ["slash", "npm:3.0.0"], + ["source-map", "npm:0.6.1"], + ["string-length", "npm:4.0.1"], + ["terminal-link", "npm:2.1.1"], + ["v8-to-istanbul", "npm:7.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/source-map", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-source-map-npm-26.6.2-a3b9d7d3b0-8.zip/node_modules/@jest/source-map/", + "packageDependencies": [ + ["@jest/source-map", "npm:26.6.2"], + ["callsites", "npm:3.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["source-map", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/test-result", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-test-result-npm-26.6.2-7ffd75a97e-8.zip/node_modules/@jest/test-result/", + "packageDependencies": [ + ["@jest/test-result", "npm:26.6.2"], + ["@jest/console", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/istanbul-lib-coverage", "npm:2.0.3"], + ["collect-v8-coverage", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/test-sequencer", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-test-sequencer-npm-26.6.3-04c59ff624-8.zip/node_modules/@jest/test-sequencer/", + "packageDependencies": [ + ["@jest/test-sequencer", "npm:26.6.3"], + ["@jest/test-result", "npm:26.6.2"], + ["graceful-fs", "npm:4.2.4"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-runner", "npm:26.6.3"], + ["jest-runtime", "npm:26.6.3"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/transform", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-transform-npm-26.6.2-151c44db49-8.zip/node_modules/@jest/transform/", + "packageDependencies": [ + ["@jest/transform", "npm:26.6.2"], + ["@babel/core", "npm:7.12.10"], + ["@jest/types", "npm:26.6.2"], + ["babel-plugin-istanbul", "npm:6.0.0"], + ["chalk", "npm:4.1.0"], + ["convert-source-map", "npm:1.7.0"], + ["fast-json-stable-stringify", "npm:2.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-util", "npm:26.6.2"], + ["micromatch", "npm:4.0.2"], + ["pirates", "npm:4.0.1"], + ["slash", "npm:3.0.0"], + ["source-map", "npm:0.6.1"], + ["write-file-atomic", "npm:3.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["@jest/types", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@jest-types-npm-26.6.2-fca9877d98-8.zip/node_modules/@jest/types/", + "packageDependencies": [ + ["@jest/types", "npm:26.6.2"], + ["@types/istanbul-lib-coverage", "npm:2.0.3"], + ["@types/istanbul-reports", "npm:3.0.0"], + ["@types/node", "npm:14.14.22"], + ["@types/yargs", "npm:15.0.13"], + ["chalk", "npm:4.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["@microsoft/api-extractor", [ + ["npm:7.18.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@microsoft-api-extractor-npm-7.18.1-fe6689de7d-8.zip/node_modules/@microsoft/api-extractor/", + "packageDependencies": [ + ["@microsoft/api-extractor", "npm:7.18.1"], + ["@microsoft/api-extractor-model", "npm:7.13.3"], + ["@microsoft/tsdoc", "npm:0.13.2"], + ["@microsoft/tsdoc-config", "npm:0.15.2"], + ["@rushstack/node-core-library", "npm:3.39.0"], + ["@rushstack/rig-package", "npm:0.2.12"], + ["@rushstack/ts-command-line", "npm:4.8.0"], + ["colors", "npm:1.2.5"], + ["lodash", "npm:4.17.20"], + ["resolve", "patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b"], + ["semver", "npm:7.3.4"], + ["source-map", "npm:0.6.1"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "linkType": "HARD", + }] + ]], + ["@microsoft/api-extractor-model", [ + ["npm:7.13.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@microsoft-api-extractor-model-npm-7.13.3-965e4796ee-8.zip/node_modules/@microsoft/api-extractor-model/", + "packageDependencies": [ + ["@microsoft/api-extractor-model", "npm:7.13.3"], + ["@microsoft/tsdoc", "npm:0.13.2"], + ["@microsoft/tsdoc-config", "npm:0.15.2"], + ["@rushstack/node-core-library", "npm:3.39.0"] + ], + "linkType": "HARD", + }] + ]], + ["@microsoft/tsdoc", [ + ["npm:0.13.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@microsoft-tsdoc-npm-0.13.2-95e83e8f8c-8.zip/node_modules/@microsoft/tsdoc/", + "packageDependencies": [ + ["@microsoft/tsdoc", "npm:0.13.2"] + ], + "linkType": "HARD", + }] + ]], + ["@microsoft/tsdoc-config", [ + ["npm:0.15.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@microsoft-tsdoc-config-npm-0.15.2-d35beefc94-8.zip/node_modules/@microsoft/tsdoc-config/", + "packageDependencies": [ + ["@microsoft/tsdoc-config", "npm:0.15.2"], + ["@microsoft/tsdoc", "npm:0.13.2"], + ["ajv", "npm:6.12.6"], + ["jju", "npm:1.4.0"], + ["resolve", "patch:resolve@npm%3A1.19.0#~builtin::version=1.19.0&hash=07638b"] + ], + "linkType": "HARD", + }] + ]], + ["@nodelib/fs.scandir", [ + ["npm:2.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@nodelib-fs.scandir-npm-2.1.5-89c67370dd-8.zip/node_modules/@nodelib/fs.scandir/", + "packageDependencies": [ + ["@nodelib/fs.scandir", "npm:2.1.5"], + ["@nodelib/fs.stat", "npm:2.0.5"], + ["run-parallel", "npm:1.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["@nodelib/fs.stat", [ + ["npm:2.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@nodelib-fs.stat-npm-2.0.5-01f4dd3030-8.zip/node_modules/@nodelib/fs.stat/", + "packageDependencies": [ + ["@nodelib/fs.stat", "npm:2.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["@nodelib/fs.walk", [ + ["npm:1.2.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@nodelib-fs.walk-npm-1.2.8-b4a89da548-8.zip/node_modules/@nodelib/fs.walk/", + "packageDependencies": [ + ["@nodelib/fs.walk", "npm:1.2.8"], + ["@nodelib/fs.scandir", "npm:2.1.5"], + ["fastq", "npm:1.11.1"] + ], + "linkType": "HARD", + }] + ]], + ["@npmcli/fs", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@npmcli-fs-npm-1.0.0-92194475f3-8.zip/node_modules/@npmcli/fs/", + "packageDependencies": [ + ["@npmcli/fs", "npm:1.0.0"], + ["@gar/promisify", "npm:1.1.2"], + ["semver", "npm:7.3.5"] + ], + "linkType": "HARD", + }] + ]], + ["@npmcli/move-file", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@npmcli-move-file-npm-1.1.2-4f6c7b3354-8.zip/node_modules/@npmcli/move-file/", + "packageDependencies": [ + ["@npmcli/move-file", "npm:1.1.2"], + ["mkdirp", "npm:1.0.4"], + ["rimraf", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["@rushstack/node-core-library", [ + ["npm:3.39.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@rushstack-node-core-library-npm-3.39.0-dccf914178-8.zip/node_modules/@rushstack/node-core-library/", + "packageDependencies": [ + ["@rushstack/node-core-library", "npm:3.39.0"], + ["@types/node", "npm:10.17.13"], + ["colors", "npm:1.2.5"], + ["fs-extra", "npm:7.0.1"], + ["import-lazy", "npm:4.0.0"], + ["jju", "npm:1.4.0"], + ["resolve", "patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b"], + ["semver", "npm:7.3.4"], + ["timsort", "npm:0.3.0"], + ["z-schema", "npm:3.18.4"] + ], + "linkType": "HARD", + }] + ]], + ["@rushstack/rig-package", [ + ["npm:0.2.12", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@rushstack-rig-package-npm-0.2.12-d3d84df5a7-8.zip/node_modules/@rushstack/rig-package/", + "packageDependencies": [ + ["@rushstack/rig-package", "npm:0.2.12"], + ["resolve", "patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b"], + ["strip-json-comments", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["@rushstack/ts-command-line", [ + ["npm:4.8.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@rushstack-ts-command-line-npm-4.8.0-e5ae604703-8.zip/node_modules/@rushstack/ts-command-line/", + "packageDependencies": [ + ["@rushstack/ts-command-line", "npm:4.8.0"], + ["@types/argparse", "npm:1.0.38"], + ["argparse", "npm:1.0.10"], + ["colors", "npm:1.2.5"], + ["string-argv", "npm:0.3.1"] + ], + "linkType": "HARD", + }] + ]], + ["@sindresorhus/is", [ + ["npm:0.14.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@sindresorhus-is-npm-0.14.0-9f906ea34b-8.zip/node_modules/@sindresorhus/is/", + "packageDependencies": [ + ["@sindresorhus/is", "npm:0.14.0"] + ], + "linkType": "HARD", + }] + ]], + ["@sinonjs/commons", [ + ["npm:1.8.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@sinonjs-commons-npm-1.8.2-36d9339683-8.zip/node_modules/@sinonjs/commons/", + "packageDependencies": [ + ["@sinonjs/commons", "npm:1.8.2"], + ["type-detect", "npm:4.0.8"] + ], + "linkType": "HARD", + }] + ]], + ["@sinonjs/fake-timers", [ + ["npm:6.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@sinonjs-fake-timers-npm-6.0.1-cebf4d0bfb-8.zip/node_modules/@sinonjs/fake-timers/", + "packageDependencies": [ + ["@sinonjs/fake-timers", "npm:6.0.1"], + ["@sinonjs/commons", "npm:1.8.2"] + ], + "linkType": "HARD", + }] + ]], + ["@szmarczak/http-timer", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@szmarczak-http-timer-npm-1.1.2-ea82ca2d55-8.zip/node_modules/@szmarczak/http-timer/", + "packageDependencies": [ + ["@szmarczak/http-timer", "npm:1.1.2"], + ["defer-to-connect", "npm:1.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["@tootallnate/once", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@tootallnate-once-npm-1.1.2-0517220057-8.zip/node_modules/@tootallnate/once/", + "packageDependencies": [ + ["@tootallnate/once", "npm:1.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["@types/argparse", [ + ["npm:1.0.38", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-argparse-npm-1.0.38-657c15204c-8.zip/node_modules/@types/argparse/", + "packageDependencies": [ + ["@types/argparse", "npm:1.0.38"] + ], + "linkType": "HARD", + }] + ]], + ["@types/babel__core", [ + ["npm:7.1.12", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-babel__core-npm-7.1.12-0093691d63-8.zip/node_modules/@types/babel__core/", + "packageDependencies": [ + ["@types/babel__core", "npm:7.1.12"], + ["@babel/parser", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"], + ["@types/babel__generator", "npm:7.6.2"], + ["@types/babel__template", "npm:7.4.0"], + ["@types/babel__traverse", "npm:7.11.0"] + ], + "linkType": "HARD", + }] + ]], + ["@types/babel__generator", [ + ["npm:7.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-babel__generator-npm-7.6.2-13c77730f7-8.zip/node_modules/@types/babel__generator/", + "packageDependencies": [ + ["@types/babel__generator", "npm:7.6.2"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@types/babel__template", [ + ["npm:7.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-babel__template-npm-7.4.0-e906ff43dc-8.zip/node_modules/@types/babel__template/", + "packageDependencies": [ + ["@types/babel__template", "npm:7.4.0"], + ["@babel/parser", "npm:7.12.11"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@types/babel__traverse", [ + ["npm:7.11.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-babel__traverse-npm-7.11.0-b03ec93f29-8.zip/node_modules/@types/babel__traverse/", + "packageDependencies": [ + ["@types/babel__traverse", "npm:7.11.0"], + ["@babel/types", "npm:7.12.12"] + ], + "linkType": "HARD", + }] + ]], + ["@types/graceful-fs", [ + ["npm:4.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-graceful-fs-npm-4.1.4-6e2b33ed9f-8.zip/node_modules/@types/graceful-fs/", + "packageDependencies": [ + ["@types/graceful-fs", "npm:4.1.4"], + ["@types/node", "npm:14.14.22"] + ], + "linkType": "HARD", + }] + ]], + ["@types/istanbul-lib-coverage", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-istanbul-lib-coverage-npm-2.0.3-67a37eb00a-8.zip/node_modules/@types/istanbul-lib-coverage/", + "packageDependencies": [ + ["@types/istanbul-lib-coverage", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["@types/istanbul-lib-report", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-istanbul-lib-report-npm-3.0.0-50de3e6b3b-8.zip/node_modules/@types/istanbul-lib-report/", + "packageDependencies": [ + ["@types/istanbul-lib-report", "npm:3.0.0"], + ["@types/istanbul-lib-coverage", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["@types/istanbul-reports", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-istanbul-reports-npm-3.0.0-e6fb7a309c-8.zip/node_modules/@types/istanbul-reports/", + "packageDependencies": [ + ["@types/istanbul-reports", "npm:3.0.0"], + ["@types/istanbul-lib-report", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@types/jest", [ + ["npm:26.0.20", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-jest-npm-26.0.20-e4c9c054bf-8.zip/node_modules/@types/jest/", + "packageDependencies": [ + ["@types/jest", "npm:26.0.20"], + ["jest-diff", "npm:26.6.2"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["@types/json-schema", [ + ["npm:7.0.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-json-schema-npm-7.0.8-39e64e8908-8.zip/node_modules/@types/json-schema/", + "packageDependencies": [ + ["@types/json-schema", "npm:7.0.8"] + ], + "linkType": "HARD", + }] + ]], + ["@types/keyv", [ + ["npm:3.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-keyv-npm-3.1.3-8864e3cbf3-8.zip/node_modules/@types/keyv/", + "packageDependencies": [ + ["@types/keyv", "npm:3.1.3"], + ["@types/node", "npm:14.14.22"] + ], + "linkType": "HARD", + }] + ]], + ["@types/node", [ + ["npm:10.17.13", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-node-npm-10.17.13-1336f79ddd-8.zip/node_modules/@types/node/", + "packageDependencies": [ + ["@types/node", "npm:10.17.13"] + ], + "linkType": "HARD", + }], + ["npm:10.17.39", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-node-npm-10.17.39-bbf2bedf04-8.zip/node_modules/@types/node/", + "packageDependencies": [ + ["@types/node", "npm:10.17.39"] + ], + "linkType": "HARD", + }], + ["npm:14.14.22", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-node-npm-14.14.22-fe4ed4ddc2-8.zip/node_modules/@types/node/", + "packageDependencies": [ + ["@types/node", "npm:14.14.22"] + ], + "linkType": "HARD", + }] + ]], + ["@types/normalize-package-data", [ + ["npm:2.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-normalize-package-data-npm-2.4.0-ed928aaaa8-8.zip/node_modules/@types/normalize-package-data/", + "packageDependencies": [ + ["@types/normalize-package-data", "npm:2.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["@types/prettier", [ + ["npm:2.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-prettier-npm-2.1.6-fd945b1b6e-8.zip/node_modules/@types/prettier/", + "packageDependencies": [ + ["@types/prettier", "npm:2.1.6"] + ], + "linkType": "HARD", + }] + ]], + ["@types/responselike", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-responselike-npm-1.0.0-85dd08af42-8.zip/node_modules/@types/responselike/", + "packageDependencies": [ + ["@types/responselike", "npm:1.0.0"], + ["@types/node", "npm:14.14.22"] + ], + "linkType": "HARD", + }] + ]], + ["@types/stack-utils", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-stack-utils-npm-2.0.0-8ded8461bc-8.zip/node_modules/@types/stack-utils/", + "packageDependencies": [ + ["@types/stack-utils", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["@types/yargs", [ + ["npm:15.0.13", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-yargs-npm-15.0.13-d1172b1fcd-8.zip/node_modules/@types/yargs/", + "packageDependencies": [ + ["@types/yargs", "npm:15.0.13"], + ["@types/yargs-parser", "npm:20.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["@types/yargs-parser", [ + ["npm:20.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@types-yargs-parser-npm-20.2.0-4ca5b35c4e-8.zip/node_modules/@types/yargs-parser/", + "packageDependencies": [ + ["@types/yargs-parser", "npm:20.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/eslint-plugin", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-eslint-plugin-npm-4.28.2-01070735da-8.zip/node_modules/@typescript-eslint/eslint-plugin/", + "packageDependencies": [ + ["@typescript-eslint/eslint-plugin", "npm:4.28.2"] + ], + "linkType": "SOFT", + }], + ["virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2", { + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-96faad7dc5/5/AppData/Local/Yarn/Berry/cache/@typescript-eslint-eslint-plugin-npm-4.28.2-01070735da-8.zip/node_modules/@typescript-eslint/eslint-plugin/", + "packageDependencies": [ + ["@typescript-eslint/eslint-plugin", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["@types/eslint", null], + ["@types/typescript", null], + ["@types/typescript-eslint__parser", null], + ["@typescript-eslint/experimental-utils", "virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:4.28.2"], + ["@typescript-eslint/parser", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["@typescript-eslint/scope-manager", "npm:4.28.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["eslint", "npm:7.30.0"], + ["functional-red-black-tree", "npm:1.0.1"], + ["regexpp", "npm:3.2.0"], + ["semver", "npm:7.3.5"], + ["tsutils", "virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:3.21.0"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "packagePeers": [ + "@types/eslint", + "@types/typescript-eslint__parser", + "@types/typescript", + "@typescript-eslint/parser", + "eslint", + "typescript" + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/experimental-utils", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-experimental-utils-npm-4.28.2-149fee615c-8.zip/node_modules/@typescript-eslint/experimental-utils/", + "packageDependencies": [ + ["@typescript-eslint/experimental-utils", "npm:4.28.2"] + ], + "linkType": "SOFT", + }], + ["virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:4.28.2", { + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-experimental-utils-virtual-13e5df8401/5/AppData/Local/Yarn/Berry/cache/@typescript-eslint-experimental-utils-npm-4.28.2-149fee615c-8.zip/node_modules/@typescript-eslint/experimental-utils/", + "packageDependencies": [ + ["@typescript-eslint/experimental-utils", "virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:4.28.2"], + ["@types/eslint", null], + ["@types/json-schema", "npm:7.0.8"], + ["@typescript-eslint/scope-manager", "npm:4.28.2"], + ["@typescript-eslint/types", "npm:4.28.2"], + ["@typescript-eslint/typescript-estree", "virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:4.28.2"], + ["eslint", "npm:7.30.0"], + ["eslint-scope", "npm:5.1.1"], + ["eslint-utils", "virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:3.0.0"] + ], + "packagePeers": [ + "@types/eslint", + "eslint" + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/parser", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-parser-npm-4.28.2-99735c8028-8.zip/node_modules/@typescript-eslint/parser/", + "packageDependencies": [ + ["@typescript-eslint/parser", "npm:4.28.2"] + ], + "linkType": "SOFT", + }], + ["virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2", { + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-186071025c/5/AppData/Local/Yarn/Berry/cache/@typescript-eslint-parser-npm-4.28.2-99735c8028-8.zip/node_modules/@typescript-eslint/parser/", + "packageDependencies": [ + ["@typescript-eslint/parser", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["@types/eslint", null], + ["@types/typescript", null], + ["@typescript-eslint/scope-manager", "npm:4.28.2"], + ["@typescript-eslint/types", "npm:4.28.2"], + ["@typescript-eslint/typescript-estree", "virtual:186071025c3a712e29adbdc89ee6fa361456511836c0ef98c4ea6c274d280e9c6d1d98005b772e12366f145859c081be64a8f9dd8ff670ee3fd5844369149c0d#npm:4.28.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["eslint", "npm:7.30.0"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "packagePeers": [ + "@types/eslint", + "@types/typescript", + "eslint", + "typescript" + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/scope-manager", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-scope-manager-npm-4.28.2-b8c2d69e5c-8.zip/node_modules/@typescript-eslint/scope-manager/", + "packageDependencies": [ + ["@typescript-eslint/scope-manager", "npm:4.28.2"], + ["@typescript-eslint/types", "npm:4.28.2"], + ["@typescript-eslint/visitor-keys", "npm:4.28.2"] + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/types", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-types-npm-4.28.2-158ea53d4a-8.zip/node_modules/@typescript-eslint/types/", + "packageDependencies": [ + ["@typescript-eslint/types", "npm:4.28.2"] + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/typescript-estree", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-typescript-estree-npm-4.28.2-9689f71c15-8.zip/node_modules/@typescript-eslint/typescript-estree/", + "packageDependencies": [ + ["@typescript-eslint/typescript-estree", "npm:4.28.2"] + ], + "linkType": "SOFT", + }], + ["virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:4.28.2", { + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-f102585102/5/AppData/Local/Yarn/Berry/cache/@typescript-eslint-typescript-estree-npm-4.28.2-9689f71c15-8.zip/node_modules/@typescript-eslint/typescript-estree/", + "packageDependencies": [ + ["@typescript-eslint/typescript-estree", "virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:4.28.2"], + ["@types/typescript", null], + ["@typescript-eslint/types", "npm:4.28.2"], + ["@typescript-eslint/visitor-keys", "npm:4.28.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["globby", "npm:11.0.4"], + ["is-glob", "npm:4.0.1"], + ["semver", "npm:7.3.5"], + ["tsutils", "virtual:f1025851027eaec591c2910cbd55f271e486d519b630f0fa56690d650eb184985743511e7849d63d0708aafac377e5caeb7708f07ac93493491835654a9d7cc0#npm:3.21.0"], + ["typescript", null] + ], + "packagePeers": [ + "@types/typescript", + "typescript" + ], + "linkType": "HARD", + }], + ["virtual:186071025c3a712e29adbdc89ee6fa361456511836c0ef98c4ea6c274d280e9c6d1d98005b772e12366f145859c081be64a8f9dd8ff670ee3fd5844369149c0d#npm:4.28.2", { + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-97abd97580/5/AppData/Local/Yarn/Berry/cache/@typescript-eslint-typescript-estree-npm-4.28.2-9689f71c15-8.zip/node_modules/@typescript-eslint/typescript-estree/", + "packageDependencies": [ + ["@typescript-eslint/typescript-estree", "virtual:186071025c3a712e29adbdc89ee6fa361456511836c0ef98c4ea6c274d280e9c6d1d98005b772e12366f145859c081be64a8f9dd8ff670ee3fd5844369149c0d#npm:4.28.2"], + ["@types/typescript", null], + ["@typescript-eslint/types", "npm:4.28.2"], + ["@typescript-eslint/visitor-keys", "npm:4.28.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["globby", "npm:11.0.4"], + ["is-glob", "npm:4.0.1"], + ["semver", "npm:7.3.5"], + ["tsutils", "virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:3.21.0"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "packagePeers": [ + "@types/typescript", + "typescript" + ], + "linkType": "HARD", + }] + ]], + ["@typescript-eslint/visitor-keys", [ + ["npm:4.28.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/@typescript-eslint-visitor-keys-npm-4.28.2-60bbc629d9-8.zip/node_modules/@typescript-eslint/visitor-keys/", + "packageDependencies": [ + ["@typescript-eslint/visitor-keys", "npm:4.28.2"], + ["@typescript-eslint/types", "npm:4.28.2"], + ["eslint-visitor-keys", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["abab", [ + ["npm:2.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/abab-npm-2.0.5-ae8d5b629e-8.zip/node_modules/abab/", + "packageDependencies": [ + ["abab", "npm:2.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["abbrev", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/abbrev-npm-1.1.1-3659247eab-8.zip/node_modules/abbrev/", + "packageDependencies": [ + ["abbrev", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["acorn", [ + ["npm:7.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/acorn-npm-7.4.1-f450b4646c-8.zip/node_modules/acorn/", + "packageDependencies": [ + ["acorn", "npm:7.4.1"] + ], + "linkType": "HARD", + }] + ]], + ["acorn-globals", [ + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/acorn-globals-npm-6.0.0-acbec28ad5-8.zip/node_modules/acorn-globals/", + "packageDependencies": [ + ["acorn-globals", "npm:6.0.0"], + ["acorn", "npm:7.4.1"], + ["acorn-walk", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["acorn-jsx", [ + ["npm:5.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/acorn-jsx-npm-5.3.2-d7594599ea-8.zip/node_modules/acorn-jsx/", + "packageDependencies": [ + ["acorn-jsx", "npm:5.3.2"] + ], + "linkType": "SOFT", + }], + ["virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2", { + "packageLocation": "./.yarn/__virtual__/acorn-jsx-virtual-6934646a20/5/AppData/Local/Yarn/Berry/cache/acorn-jsx-npm-5.3.2-d7594599ea-8.zip/node_modules/acorn-jsx/", + "packageDependencies": [ + ["acorn-jsx", "virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2"], + ["@types/acorn", null], + ["acorn", "npm:7.4.1"] + ], + "packagePeers": [ + "@types/acorn", + "acorn" + ], + "linkType": "HARD", + }] + ]], + ["acorn-walk", [ + ["npm:7.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/acorn-walk-npm-7.2.0-5f8b515308-8.zip/node_modules/acorn-walk/", + "packageDependencies": [ + ["acorn-walk", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["agent-base", [ + ["npm:6.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/agent-base-npm-6.0.2-428f325a93-8.zip/node_modules/agent-base/", + "packageDependencies": [ + ["agent-base", "npm:6.0.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["agentkeepalive", [ + ["npm:4.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/agentkeepalive-npm-4.1.4-4d5b41b4c1-8.zip/node_modules/agentkeepalive/", + "packageDependencies": [ + ["agentkeepalive", "npm:4.1.4"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["depd", "npm:1.1.2"], + ["humanize-ms", "npm:1.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["aggregate-error", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/aggregate-error-npm-3.1.0-415a406f4e-8.zip/node_modules/aggregate-error/", + "packageDependencies": [ + ["aggregate-error", "npm:3.1.0"], + ["clean-stack", "npm:2.2.0"], + ["indent-string", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["ajv", [ + ["npm:6.12.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ajv-npm-6.12.6-4b5105e2b2-8.zip/node_modules/ajv/", + "packageDependencies": [ + ["ajv", "npm:6.12.6"], + ["fast-deep-equal", "npm:3.1.3"], + ["fast-json-stable-stringify", "npm:2.1.0"], + ["json-schema-traverse", "npm:0.4.1"], + ["uri-js", "npm:4.4.1"] + ], + "linkType": "HARD", + }], + ["npm:8.6.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ajv-npm-8.6.1-cc38a5d5d7-8.zip/node_modules/ajv/", + "packageDependencies": [ + ["ajv", "npm:8.6.1"], + ["fast-deep-equal", "npm:3.1.3"], + ["json-schema-traverse", "npm:1.0.0"], + ["require-from-string", "npm:2.0.2"], + ["uri-js", "npm:4.4.1"] + ], + "linkType": "HARD", + }] + ]], + ["ansi-align", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-align-npm-3.0.0-2f770647c2-8.zip/node_modules/ansi-align/", + "packageDependencies": [ + ["ansi-align", "npm:3.0.0"], + ["string-width", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["ansi-colors", [ + ["npm:4.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-colors-npm-4.1.1-97ad42f223-8.zip/node_modules/ansi-colors/", + "packageDependencies": [ + ["ansi-colors", "npm:4.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["ansi-escapes", [ + ["npm:4.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-escapes-npm-4.3.1-f4aad61b5b-8.zip/node_modules/ansi-escapes/", + "packageDependencies": [ + ["ansi-escapes", "npm:4.3.1"], + ["type-fest", "npm:0.11.0"] + ], + "linkType": "HARD", + }] + ]], + ["ansi-regex", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-regex-npm-2.1.1-ddd24d102b-8.zip/node_modules/ansi-regex/", + "packageDependencies": [ + ["ansi-regex", "npm:2.1.1"] + ], + "linkType": "HARD", + }], + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-regex-npm-4.1.0-4a7d8413fe-8.zip/node_modules/ansi-regex/", + "packageDependencies": [ + ["ansi-regex", "npm:4.1.0"] + ], + "linkType": "HARD", + }], + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-regex-npm-5.0.0-9c076068d9-8.zip/node_modules/ansi-regex/", + "packageDependencies": [ + ["ansi-regex", "npm:5.0.0"] + ], + "linkType": "HARD", + }], + ["npm:5.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-regex-npm-5.0.1-c963a48615-8.zip/node_modules/ansi-regex/", + "packageDependencies": [ + ["ansi-regex", "npm:5.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["ansi-styles", [ + ["npm:3.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-styles-npm-3.2.1-8cb8107983-8.zip/node_modules/ansi-styles/", + "packageDependencies": [ + ["ansi-styles", "npm:3.2.1"], + ["color-convert", "npm:1.9.3"] + ], + "linkType": "HARD", + }], + ["npm:4.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ansi-styles-npm-4.3.0-245c7d42c7-8.zip/node_modules/ansi-styles/", + "packageDependencies": [ + ["ansi-styles", "npm:4.3.0"], + ["color-convert", "npm:2.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["anymatch", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/anymatch-npm-2.0.0-f2fcb92f28-8.zip/node_modules/anymatch/", + "packageDependencies": [ + ["anymatch", "npm:2.0.0"], + ["micromatch", "npm:3.1.10"], + ["normalize-path", "npm:2.1.1"] + ], + "linkType": "HARD", + }], + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/anymatch-npm-3.1.1-7dcfa6178a-8.zip/node_modules/anymatch/", + "packageDependencies": [ + ["anymatch", "npm:3.1.1"], + ["normalize-path", "npm:3.0.0"], + ["picomatch", "npm:2.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["aproba", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/aproba-npm-1.2.0-34129f0778-8.zip/node_modules/aproba/", + "packageDependencies": [ + ["aproba", "npm:1.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["are-we-there-yet", [ + ["npm:1.1.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/are-we-there-yet-npm-1.1.7-db9f39924e-8.zip/node_modules/are-we-there-yet/", + "packageDependencies": [ + ["are-we-there-yet", "npm:1.1.7"], + ["delegates", "npm:1.0.0"], + ["readable-stream", "npm:2.3.7"] + ], + "linkType": "HARD", + }] + ]], + ["argparse", [ + ["npm:1.0.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/argparse-npm-1.0.10-528934e59d-8.zip/node_modules/argparse/", + "packageDependencies": [ + ["argparse", "npm:1.0.10"], + ["sprintf-js", "npm:1.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["arr-diff", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/arr-diff-npm-4.0.0-cec86ae312-8.zip/node_modules/arr-diff/", + "packageDependencies": [ + ["arr-diff", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["arr-flatten", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/arr-flatten-npm-1.1.0-0c12b693e4-8.zip/node_modules/arr-flatten/", + "packageDependencies": [ + ["arr-flatten", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["arr-union", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/arr-union-npm-3.1.0-853ada9729-8.zip/node_modules/arr-union/", + "packageDependencies": [ + ["arr-union", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["array-union", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/array-union-npm-2.1.0-4e4852b221-8.zip/node_modules/array-union/", + "packageDependencies": [ + ["array-union", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["array-unique", [ + ["npm:0.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/array-unique-npm-0.3.2-9f62c6ac93-8.zip/node_modules/array-unique/", + "packageDependencies": [ + ["array-unique", "npm:0.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["asn1", [ + ["npm:0.2.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/asn1-npm-0.2.4-219dd49411-8.zip/node_modules/asn1/", + "packageDependencies": [ + ["asn1", "npm:0.2.4"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["assert-plus", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/assert-plus-npm-1.0.0-cac95ef098-8.zip/node_modules/assert-plus/", + "packageDependencies": [ + ["assert-plus", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["assign-symbols", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/assign-symbols-npm-1.0.0-fd803ccdf1-8.zip/node_modules/assign-symbols/", + "packageDependencies": [ + ["assign-symbols", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["astral-regex", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/astral-regex-npm-2.0.0-f30d866aab-8.zip/node_modules/astral-regex/", + "packageDependencies": [ + ["astral-regex", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["asynckit", [ + ["npm:0.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/asynckit-npm-0.4.0-c718858525-8.zip/node_modules/asynckit/", + "packageDependencies": [ + ["asynckit", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["atob", [ + ["npm:2.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/atob-npm-2.1.2-bcb583261e-8.zip/node_modules/atob/", + "packageDependencies": [ + ["atob", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["aws-sign2", [ + ["npm:0.7.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/aws-sign2-npm-0.7.0-656c6cb84d-8.zip/node_modules/aws-sign2/", + "packageDependencies": [ + ["aws-sign2", "npm:0.7.0"] + ], + "linkType": "HARD", + }] + ]], + ["aws4", [ + ["npm:1.11.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/aws4-npm-1.11.0-283476ad94-8.zip/node_modules/aws4/", + "packageDependencies": [ + ["aws4", "npm:1.11.0"] + ], + "linkType": "HARD", + }] + ]], + ["babel-jest", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/babel-jest-npm-26.6.3-5630fee2b8-8.zip/node_modules/babel-jest/", + "packageDependencies": [ + ["babel-jest", "npm:26.6.3"] + ], + "linkType": "SOFT", + }], + ["virtual:caddf51df4928b33a437ca87b8f5ddfb6205ebd6d8231f74d4ee7223f3866e6f815b221aa1e2bd33e98915f701e95bae72a93d2288b49a34a6246bdbc2a4a132#npm:26.6.3", { + "packageLocation": "./.yarn/__virtual__/babel-jest-virtual-9f33f3a3f1/5/AppData/Local/Yarn/Berry/cache/babel-jest-npm-26.6.3-5630fee2b8-8.zip/node_modules/babel-jest/", + "packageDependencies": [ + ["babel-jest", "virtual:caddf51df4928b33a437ca87b8f5ddfb6205ebd6d8231f74d4ee7223f3866e6f815b221aa1e2bd33e98915f701e95bae72a93d2288b49a34a6246bdbc2a4a132#npm:26.6.3"], + ["@babel/core", "npm:7.12.10"], + ["@jest/transform", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/babel__core", "npm:7.1.12"], + ["babel-plugin-istanbul", "npm:6.0.0"], + ["babel-preset-jest", "virtual:9f33f3a3f1029c851d4fc6512707159198b8a9185a8bf2a04087a9e7410eb7514881ea8169195fe0d559191ceae65b7d1a505a59d1ebb3a00c8619a55d48aa40#npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["slash", "npm:3.0.0"] + ], + "packagePeers": [ + "@babel/core" + ], + "linkType": "HARD", + }] + ]], + ["babel-plugin-istanbul", [ + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/babel-plugin-istanbul-npm-6.0.0-2c177ffcc3-8.zip/node_modules/babel-plugin-istanbul/", + "packageDependencies": [ + ["babel-plugin-istanbul", "npm:6.0.0"], + ["@babel/helper-plugin-utils", "npm:7.10.4"], + ["@istanbuljs/load-nyc-config", "npm:1.1.0"], + ["@istanbuljs/schema", "npm:0.1.2"], + ["istanbul-lib-instrument", "npm:4.0.3"], + ["test-exclude", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["babel-plugin-jest-hoist", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/babel-plugin-jest-hoist-npm-26.6.2-1a51633e87-8.zip/node_modules/babel-plugin-jest-hoist/", + "packageDependencies": [ + ["babel-plugin-jest-hoist", "npm:26.6.2"], + ["@babel/template", "npm:7.12.7"], + ["@babel/types", "npm:7.12.12"], + ["@types/babel__core", "npm:7.1.12"], + ["@types/babel__traverse", "npm:7.11.0"] + ], + "linkType": "HARD", + }] + ]], + ["babel-preset-current-node-syntax", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/babel-preset-current-node-syntax-npm-1.0.1-849ec71e32-8.zip/node_modules/babel-preset-current-node-syntax/", + "packageDependencies": [ + ["babel-preset-current-node-syntax", "npm:1.0.1"] + ], + "linkType": "SOFT", + }], + ["virtual:953f19a93f1fd76e03de2418470b56b6b69d974bef4780f65029f0a9afcdf2f0130bfb897370a8fe1bd125d7f8113ee186caf42ece0a92789a64117e47028619#npm:1.0.1", { + "packageLocation": "./.yarn/__virtual__/babel-preset-current-node-syntax-virtual-8f974720c8/5/AppData/Local/Yarn/Berry/cache/babel-preset-current-node-syntax-npm-1.0.1-849ec71e32-8.zip/node_modules/babel-preset-current-node-syntax/", + "packageDependencies": [ + ["babel-preset-current-node-syntax", "virtual:953f19a93f1fd76e03de2418470b56b6b69d974bef4780f65029f0a9afcdf2f0130bfb897370a8fe1bd125d7f8113ee186caf42ece0a92789a64117e47028619#npm:1.0.1"], + ["@babel/core", "npm:7.12.10"], + ["@babel/plugin-syntax-async-generators", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.4"], + ["@babel/plugin-syntax-bigint", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-class-properties", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1"], + ["@babel/plugin-syntax-import-meta", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/plugin-syntax-json-strings", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-logical-assignment-operators", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-numeric-separator", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.10.4"], + ["@babel/plugin-syntax-object-rest-spread", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-optional-catch-binding", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-optional-chaining", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.8.3"], + ["@babel/plugin-syntax-top-level-await", "virtual:8f974720c8a9b4f406c1db7289a59d677ba2dd045b77299345a92de141b4ac7e66b8ed54a33591ce2e62d069308b508e7fafa6082df6a96611654b7d157524cd#npm:7.12.1"], + ["@types/babel__core", "npm:7.1.12"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["babel-preset-jest", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/babel-preset-jest-npm-26.6.2-456ec36f85-8.zip/node_modules/babel-preset-jest/", + "packageDependencies": [ + ["babel-preset-jest", "npm:26.6.2"] + ], + "linkType": "SOFT", + }], + ["virtual:9f33f3a3f1029c851d4fc6512707159198b8a9185a8bf2a04087a9e7410eb7514881ea8169195fe0d559191ceae65b7d1a505a59d1ebb3a00c8619a55d48aa40#npm:26.6.2", { + "packageLocation": "./.yarn/__virtual__/babel-preset-jest-virtual-953f19a93f/5/AppData/Local/Yarn/Berry/cache/babel-preset-jest-npm-26.6.2-456ec36f85-8.zip/node_modules/babel-preset-jest/", + "packageDependencies": [ + ["babel-preset-jest", "virtual:9f33f3a3f1029c851d4fc6512707159198b8a9185a8bf2a04087a9e7410eb7514881ea8169195fe0d559191ceae65b7d1a505a59d1ebb3a00c8619a55d48aa40#npm:26.6.2"], + ["@babel/core", "npm:7.12.10"], + ["@types/babel__core", "npm:7.1.12"], + ["babel-plugin-jest-hoist", "npm:26.6.2"], + ["babel-preset-current-node-syntax", "virtual:953f19a93f1fd76e03de2418470b56b6b69d974bef4780f65029f0a9afcdf2f0130bfb897370a8fe1bd125d7f8113ee186caf42ece0a92789a64117e47028619#npm:1.0.1"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel__core" + ], + "linkType": "HARD", + }] + ]], + ["balanced-match", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/balanced-match-npm-1.0.0-951a2ad706-8.zip/node_modules/balanced-match/", + "packageDependencies": [ + ["balanced-match", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["base", [ + ["npm:0.11.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/base-npm-0.11.2-a9bde462d6-8.zip/node_modules/base/", + "packageDependencies": [ + ["base", "npm:0.11.2"], + ["cache-base", "npm:1.0.1"], + ["class-utils", "npm:0.3.6"], + ["component-emitter", "npm:1.3.0"], + ["define-property", "npm:1.0.0"], + ["isobject", "npm:3.0.1"], + ["mixin-deep", "npm:1.3.2"], + ["pascalcase", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["bcrypt-pbkdf", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/bcrypt-pbkdf-npm-1.0.2-80db8b16ed-8.zip/node_modules/bcrypt-pbkdf/", + "packageDependencies": [ + ["bcrypt-pbkdf", "npm:1.0.2"], + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], + ["binary-extensions", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/binary-extensions-npm-2.1.0-0681d7e2ce-8.zip/node_modules/binary-extensions/", + "packageDependencies": [ + ["binary-extensions", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["boxen", [ + ["npm:4.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/boxen-npm-4.2.0-471e88ddba-8.zip/node_modules/boxen/", + "packageDependencies": [ + ["boxen", "npm:4.2.0"], + ["ansi-align", "npm:3.0.0"], + ["camelcase", "npm:5.3.1"], + ["chalk", "npm:3.0.0"], + ["cli-boxes", "npm:2.2.1"], + ["string-width", "npm:4.2.0"], + ["term-size", "npm:2.2.1"], + ["type-fest", "npm:0.8.1"], + ["widest-line", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["brace-expansion", [ + ["npm:1.1.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/brace-expansion-npm-1.1.11-fb95eb05ad-8.zip/node_modules/brace-expansion/", + "packageDependencies": [ + ["brace-expansion", "npm:1.1.11"], + ["balanced-match", "npm:1.0.0"], + ["concat-map", "npm:0.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["braces", [ + ["npm:2.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/braces-npm-2.3.2-19cadb3384-8.zip/node_modules/braces/", + "packageDependencies": [ + ["braces", "npm:2.3.2"], + ["arr-flatten", "npm:1.1.0"], + ["array-unique", "npm:0.3.2"], + ["extend-shallow", "npm:2.0.1"], + ["fill-range", "npm:4.0.0"], + ["isobject", "npm:3.0.1"], + ["repeat-element", "npm:1.1.3"], + ["snapdragon", "npm:0.8.2"], + ["snapdragon-node", "npm:2.1.1"], + ["split-string", "npm:3.1.0"], + ["to-regex", "npm:3.0.2"] + ], + "linkType": "HARD", + }], + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/braces-npm-3.0.2-782240b28a-8.zip/node_modules/braces/", + "packageDependencies": [ + ["braces", "npm:3.0.2"], + ["fill-range", "npm:7.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["browser-process-hrtime", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/browser-process-hrtime-npm-1.0.0-db700805c2-8.zip/node_modules/browser-process-hrtime/", + "packageDependencies": [ + ["browser-process-hrtime", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["bs-logger", [ + ["npm:0.2.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/bs-logger-npm-0.2.6-7670f88b66-8.zip/node_modules/bs-logger/", + "packageDependencies": [ + ["bs-logger", "npm:0.2.6"], + ["fast-json-stable-stringify", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["bser", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/bser-npm-2.1.1-cc902055ce-8.zip/node_modules/bser/", + "packageDependencies": [ + ["bser", "npm:2.1.1"], + ["node-int64", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["buffer-from", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/buffer-from-npm-1.1.1-22917b8ed8-8.zip/node_modules/buffer-from/", + "packageDependencies": [ + ["buffer-from", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["cacache", [ + ["npm:15.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cacache-npm-15.3.0-a7e5239c6a-8.zip/node_modules/cacache/", + "packageDependencies": [ + ["cacache", "npm:15.3.0"], + ["@npmcli/fs", "npm:1.0.0"], + ["@npmcli/move-file", "npm:1.1.2"], + ["chownr", "npm:2.0.0"], + ["fs-minipass", "npm:2.1.0"], + ["glob", "npm:7.1.6"], + ["infer-owner", "npm:1.0.4"], + ["lru-cache", "npm:6.0.0"], + ["minipass", "npm:3.1.5"], + ["minipass-collect", "npm:1.0.2"], + ["minipass-flush", "npm:1.0.5"], + ["minipass-pipeline", "npm:1.2.4"], + ["mkdirp", "npm:1.0.4"], + ["p-map", "npm:4.0.0"], + ["promise-inflight", "virtual:a7e5239c6ae68bf6359adfd3598326db000e94dbb349bc00a3852ed53a31712a0e2e787228c6e859d3e5cf2fbb872aba1ea4abe4995cef8086a77ef619ae1be6#npm:1.0.1"], + ["rimraf", "npm:3.0.2"], + ["ssri", "npm:8.0.1"], + ["tar", "npm:6.1.11"], + ["unique-filename", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["cache-base", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cache-base-npm-1.0.1-1538417cb9-8.zip/node_modules/cache-base/", + "packageDependencies": [ + ["cache-base", "npm:1.0.1"], + ["collection-visit", "npm:1.0.0"], + ["component-emitter", "npm:1.3.0"], + ["get-value", "npm:2.0.6"], + ["has-value", "npm:1.0.0"], + ["isobject", "npm:3.0.1"], + ["set-value", "npm:2.0.1"], + ["to-object-path", "npm:0.3.0"], + ["union-value", "npm:1.0.1"], + ["unset-value", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["cacheable-request", [ + ["npm:6.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cacheable-request-npm-6.1.0-684b834873-8.zip/node_modules/cacheable-request/", + "packageDependencies": [ + ["cacheable-request", "npm:6.1.0"], + ["clone-response", "npm:1.0.2"], + ["get-stream", "npm:5.2.0"], + ["http-cache-semantics", "npm:4.1.0"], + ["keyv", "npm:3.1.0"], + ["lowercase-keys", "npm:2.0.0"], + ["normalize-url", "npm:4.5.0"], + ["responselike", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["callsites", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/callsites-npm-3.1.0-268f989910-8.zip/node_modules/callsites/", + "packageDependencies": [ + ["callsites", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["camelcase", [ + ["npm:5.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/camelcase-npm-5.3.1-5db8af62c5-8.zip/node_modules/camelcase/", + "packageDependencies": [ + ["camelcase", "npm:5.3.1"] + ], + "linkType": "HARD", + }], + ["npm:6.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/camelcase-npm-6.2.0-69f8c130ac-8.zip/node_modules/camelcase/", + "packageDependencies": [ + ["camelcase", "npm:6.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["capture-exit", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/capture-exit-npm-2.0.0-564874b447-8.zip/node_modules/capture-exit/", + "packageDependencies": [ + ["capture-exit", "npm:2.0.0"], + ["rsvp", "npm:4.8.5"] + ], + "linkType": "HARD", + }] + ]], + ["caseless", [ + ["npm:0.12.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/caseless-npm-0.12.0-e83bc5df83-8.zip/node_modules/caseless/", + "packageDependencies": [ + ["caseless", "npm:0.12.0"] + ], + "linkType": "HARD", + }] + ]], + ["chalk", [ + ["npm:2.4.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/chalk-npm-2.4.2-3ea16dd91e-8.zip/node_modules/chalk/", + "packageDependencies": [ + ["chalk", "npm:2.4.2"], + ["ansi-styles", "npm:3.2.1"], + ["escape-string-regexp", "npm:1.0.5"], + ["supports-color", "npm:5.5.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/chalk-npm-3.0.0-e813208025-8.zip/node_modules/chalk/", + "packageDependencies": [ + ["chalk", "npm:3.0.0"], + ["ansi-styles", "npm:4.3.0"], + ["supports-color", "npm:7.2.0"] + ], + "linkType": "HARD", + }], + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/chalk-npm-4.1.0-c746e252ba-8.zip/node_modules/chalk/", + "packageDependencies": [ + ["chalk", "npm:4.1.0"], + ["ansi-styles", "npm:4.3.0"], + ["supports-color", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["char-regex", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/char-regex-npm-1.0.2-ecade5f97f-8.zip/node_modules/char-regex/", + "packageDependencies": [ + ["char-regex", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["chokidar", [ + ["npm:3.4.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/chokidar-npm-3.4.3-58f7548978-8.zip/node_modules/chokidar/", + "packageDependencies": [ + ["chokidar", "npm:3.4.3"], + ["anymatch", "npm:3.1.1"], + ["braces", "npm:3.0.2"], + ["fsevents", "patch:fsevents@npm%3A2.1.3#~builtin::version=2.1.3&hash=18f3a7"], + ["glob-parent", "npm:5.1.1"], + ["is-binary-path", "npm:2.1.0"], + ["is-glob", "npm:4.0.1"], + ["normalize-path", "npm:3.0.0"], + ["readdirp", "npm:3.5.0"] + ], + "linkType": "HARD", + }] + ]], + ["chownr", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/chownr-npm-2.0.0-638f1c9c61-8.zip/node_modules/chownr/", + "packageDependencies": [ + ["chownr", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["ci-info", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ci-info-npm-2.0.0-78012236a1-8.zip/node_modules/ci-info/", + "packageDependencies": [ + ["ci-info", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["cjs-module-lexer", [ + ["npm:0.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cjs-module-lexer-npm-0.6.0-e80f3766d3-8.zip/node_modules/cjs-module-lexer/", + "packageDependencies": [ + ["cjs-module-lexer", "npm:0.6.0"] + ], + "linkType": "HARD", + }] + ]], + ["class-utils", [ + ["npm:0.3.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/class-utils-npm-0.3.6-2c691ad006-8.zip/node_modules/class-utils/", + "packageDependencies": [ + ["class-utils", "npm:0.3.6"], + ["arr-union", "npm:3.1.0"], + ["define-property", "npm:0.2.5"], + ["isobject", "npm:3.0.1"], + ["static-extend", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["clean-stack", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/clean-stack-npm-2.2.0-a8ce435a5c-8.zip/node_modules/clean-stack/", + "packageDependencies": [ + ["clean-stack", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["cli-boxes", [ + ["npm:2.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cli-boxes-npm-2.2.1-7125a5ba44-8.zip/node_modules/cli-boxes/", + "packageDependencies": [ + ["cli-boxes", "npm:2.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["cliui", [ + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cliui-npm-6.0.0-488b2414c6-8.zip/node_modules/cliui/", + "packageDependencies": [ + ["cliui", "npm:6.0.0"], + ["string-width", "npm:4.2.0"], + ["strip-ansi", "npm:6.0.0"], + ["wrap-ansi", "npm:6.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["clone-response", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/clone-response-npm-1.0.2-135ae8239d-8.zip/node_modules/clone-response/", + "packageDependencies": [ + ["clone-response", "npm:1.0.2"], + ["mimic-response", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["co", [ + ["npm:4.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/co-npm-4.6.0-03f2d1feb6-8.zip/node_modules/co/", + "packageDependencies": [ + ["co", "npm:4.6.0"] + ], + "linkType": "HARD", + }] + ]], + ["code-point-at", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/code-point-at-npm-1.1.0-37de5fe566-8.zip/node_modules/code-point-at/", + "packageDependencies": [ + ["code-point-at", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["collect-v8-coverage", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/collect-v8-coverage-npm-1.0.1-39dec86bad-8.zip/node_modules/collect-v8-coverage/", + "packageDependencies": [ + ["collect-v8-coverage", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["collection-visit", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/collection-visit-npm-1.0.0-aba2d5defc-8.zip/node_modules/collection-visit/", + "packageDependencies": [ + ["collection-visit", "npm:1.0.0"], + ["map-visit", "npm:1.0.0"], + ["object-visit", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["color-convert", [ + ["npm:1.9.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/color-convert-npm-1.9.3-1fe690075e-8.zip/node_modules/color-convert/", + "packageDependencies": [ + ["color-convert", "npm:1.9.3"], + ["color-name", "npm:1.1.3"] + ], + "linkType": "HARD", + }], + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/color-convert-npm-2.0.1-79730e935b-8.zip/node_modules/color-convert/", + "packageDependencies": [ + ["color-convert", "npm:2.0.1"], + ["color-name", "npm:1.1.4"] + ], + "linkType": "HARD", + }] + ]], + ["color-name", [ + ["npm:1.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/color-name-npm-1.1.3-728b7b5d39-8.zip/node_modules/color-name/", + "packageDependencies": [ + ["color-name", "npm:1.1.3"] + ], + "linkType": "HARD", + }], + ["npm:1.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/color-name-npm-1.1.4-025792b0ea-8.zip/node_modules/color-name/", + "packageDependencies": [ + ["color-name", "npm:1.1.4"] + ], + "linkType": "HARD", + }] + ]], + ["colors", [ + ["npm:1.2.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/colors-npm-1.2.5-891bb7682f-8.zip/node_modules/colors/", + "packageDependencies": [ + ["colors", "npm:1.2.5"] + ], + "linkType": "HARD", + }] + ]], + ["combined-stream", [ + ["npm:1.0.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/combined-stream-npm-1.0.8-dc14d4a63a-8.zip/node_modules/combined-stream/", + "packageDependencies": [ + ["combined-stream", "npm:1.0.8"], + ["delayed-stream", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["commander", [ + ["npm:2.20.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/commander-npm-2.20.3-d8dcbaa39b-8.zip/node_modules/commander/", + "packageDependencies": [ + ["commander", "npm:2.20.3"] + ], + "linkType": "HARD", + }] + ]], + ["component-emitter", [ + ["npm:1.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/component-emitter-npm-1.3.0-4b848565b9-8.zip/node_modules/component-emitter/", + "packageDependencies": [ + ["component-emitter", "npm:1.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["concat-map", [ + ["npm:0.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/concat-map-npm-0.0.1-85a921b7ee-8.zip/node_modules/concat-map/", + "packageDependencies": [ + ["concat-map", "npm:0.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["configstore", [ + ["npm:5.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/configstore-npm-5.0.1-739433cdc5-8.zip/node_modules/configstore/", + "packageDependencies": [ + ["configstore", "npm:5.0.1"], + ["dot-prop", "npm:5.3.0"], + ["graceful-fs", "npm:4.2.4"], + ["make-dir", "npm:3.1.0"], + ["unique-string", "npm:2.0.0"], + ["write-file-atomic", "npm:3.0.3"], + ["xdg-basedir", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["console-control-strings", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/console-control-strings-npm-1.1.0-e3160e5275-8.zip/node_modules/console-control-strings/", + "packageDependencies": [ + ["console-control-strings", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["convert-source-map", [ + ["npm:1.7.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/convert-source-map-npm-1.7.0-f9727424f7-8.zip/node_modules/convert-source-map/", + "packageDependencies": [ + ["convert-source-map", "npm:1.7.0"], + ["safe-buffer", "npm:5.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["copy-descriptor", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/copy-descriptor-npm-0.1.1-864db4ab66-8.zip/node_modules/copy-descriptor/", + "packageDependencies": [ + ["copy-descriptor", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["core-util-is", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/core-util-is-npm-1.0.2-9fc2b94dc3-8.zip/node_modules/core-util-is/", + "packageDependencies": [ + ["core-util-is", "npm:1.0.2"] + ], + "linkType": "HARD", + }], + ["npm:1.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/core-util-is-npm-1.0.3-ca74b76c90-8.zip/node_modules/core-util-is/", + "packageDependencies": [ + ["core-util-is", "npm:1.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["cross-spawn", [ + ["npm:6.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cross-spawn-npm-6.0.5-2deab6c280-8.zip/node_modules/cross-spawn/", + "packageDependencies": [ + ["cross-spawn", "npm:6.0.5"], + ["nice-try", "npm:1.0.5"], + ["path-key", "npm:2.0.1"], + ["semver", "npm:5.7.1"], + ["shebang-command", "npm:1.2.0"], + ["which", "npm:1.3.1"] + ], + "linkType": "HARD", + }], + ["npm:7.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cross-spawn-npm-7.0.3-e4ff3e65b3-8.zip/node_modules/cross-spawn/", + "packageDependencies": [ + ["cross-spawn", "npm:7.0.3"], + ["path-key", "npm:3.1.1"], + ["shebang-command", "npm:2.0.0"], + ["which", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["crypto-random-string", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/crypto-random-string-npm-2.0.0-8ab47992ef-8.zip/node_modules/crypto-random-string/", + "packageDependencies": [ + ["crypto-random-string", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["cssom", [ + ["npm:0.3.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cssom-npm-0.3.8-a9291d36ff-8.zip/node_modules/cssom/", + "packageDependencies": [ + ["cssom", "npm:0.3.8"] + ], + "linkType": "HARD", + }], + ["npm:0.4.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cssom-npm-0.4.4-818f01a6e3-8.zip/node_modules/cssom/", + "packageDependencies": [ + ["cssom", "npm:0.4.4"] + ], + "linkType": "HARD", + }] + ]], + ["cssstyle", [ + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/cssstyle-npm-2.3.0-b5d112c450-8.zip/node_modules/cssstyle/", + "packageDependencies": [ + ["cssstyle", "npm:2.3.0"], + ["cssom", "npm:0.3.8"] + ], + "linkType": "HARD", + }] + ]], + ["dashdash", [ + ["npm:1.14.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/dashdash-npm-1.14.1-be8f10a286-8.zip/node_modules/dashdash/", + "packageDependencies": [ + ["dashdash", "npm:1.14.1"], + ["assert-plus", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["data-urls", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/data-urls-npm-2.0.0-2b80c32b82-8.zip/node_modules/data-urls/", + "packageDependencies": [ + ["data-urls", "npm:2.0.0"], + ["abab", "npm:2.0.5"], + ["whatwg-mimetype", "npm:2.3.0"], + ["whatwg-url", "npm:8.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["debug", [ + ["npm:2.6.9", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/debug-npm-2.6.9-7d4cb597dc-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "npm:2.6.9"] + ], + "linkType": "SOFT", + }], + ["npm:3.2.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/debug-npm-3.2.6-6214e40f12-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "npm:3.2.6"] + ], + "linkType": "SOFT", + }], + ["npm:4.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/debug-npm-4.3.1-22e08d605e-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "npm:4.3.1"] + ], + "linkType": "SOFT", + }], + ["npm:4.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/debug-npm-4.3.2-f0148b6afe-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "npm:4.3.2"] + ], + "linkType": "SOFT", + }], + ["virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-6cfa7ae8cd/5/AppData/Local/Yarn/Berry/cache/debug-npm-2.6.9-7d4cb597dc-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9"], + ["@types/supports-color", null], + ["ms", "npm:2.0.0"], + ["supports-color", null] + ], + "packagePeers": [ + "@types/supports-color", + "supports-color" + ], + "linkType": "HARD", + }], + ["virtual:533efccfd94682ecd466a58a5f392b34e0de4de31de9a671dc1fdefb92cdeea2750e4cdb6545c5f712ce24980c3d89f1ed4a11fbbcb3f8d8c94c44ea70d21f60#npm:3.2.6", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-42b8af1966/5/AppData/Local/Yarn/Berry/cache/debug-npm-3.2.6-6214e40f12-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "virtual:533efccfd94682ecd466a58a5f392b34e0de4de31de9a671dc1fdefb92cdeea2750e4cdb6545c5f712ce24980c3d89f1ed4a11fbbcb3f8d8c94c44ea70d21f60#npm:3.2.6"], + ["@types/supports-color", null], + ["ms", "npm:2.1.2"], + ["supports-color", "npm:5.5.0"] + ], + "packagePeers": [ + "@types/supports-color", + "supports-color" + ], + "linkType": "HARD", + }], + ["virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-bc9554ff75/5/AppData/Local/Yarn/Berry/cache/debug-npm-4.3.2-f0148b6afe-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["@types/supports-color", null], + ["ms", "npm:2.1.2"], + ["supports-color", null] + ], + "packagePeers": [ + "@types/supports-color", + "supports-color" + ], + "linkType": "HARD", + }], + ["virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1", { + "packageLocation": "./.yarn/__virtual__/debug-virtual-752c3f4e6d/5/AppData/Local/Yarn/Berry/cache/debug-npm-4.3.1-22e08d605e-8.zip/node_modules/debug/", + "packageDependencies": [ + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["@types/supports-color", null], + ["ms", "npm:2.1.2"], + ["supports-color", null] + ], + "packagePeers": [ + "@types/supports-color", + "supports-color" + ], + "linkType": "HARD", + }] + ]], + ["decamelize", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/decamelize-npm-1.2.0-c5a2fdc622-8.zip/node_modules/decamelize/", + "packageDependencies": [ + ["decamelize", "npm:1.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["decimal.js", [ + ["npm:10.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/decimal.js-npm-10.2.1-6eff4c0574-8.zip/node_modules/decimal.js/", + "packageDependencies": [ + ["decimal.js", "npm:10.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["decode-uri-component", [ + ["npm:0.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/decode-uri-component-npm-0.2.0-5bcc0f3597-8.zip/node_modules/decode-uri-component/", + "packageDependencies": [ + ["decode-uri-component", "npm:0.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["decompress-response", [ + ["npm:3.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/decompress-response-npm-3.3.0-6e7b6375c3-8.zip/node_modules/decompress-response/", + "packageDependencies": [ + ["decompress-response", "npm:3.3.0"], + ["mimic-response", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["deep-extend", [ + ["npm:0.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/deep-extend-npm-0.6.0-e182924219-8.zip/node_modules/deep-extend/", + "packageDependencies": [ + ["deep-extend", "npm:0.6.0"] + ], + "linkType": "HARD", + }] + ]], + ["deep-is", [ + ["npm:0.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/deep-is-npm-0.1.3-0941784645-8.zip/node_modules/deep-is/", + "packageDependencies": [ + ["deep-is", "npm:0.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["deepmerge", [ + ["npm:4.2.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/deepmerge-npm-4.2.2-112165ced2-8.zip/node_modules/deepmerge/", + "packageDependencies": [ + ["deepmerge", "npm:4.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["defer-to-connect", [ + ["npm:1.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/defer-to-connect-npm-1.1.3-5887885147-8.zip/node_modules/defer-to-connect/", + "packageDependencies": [ + ["defer-to-connect", "npm:1.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["define-property", [ + ["npm:0.2.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/define-property-npm-0.2.5-44a0da3575-8.zip/node_modules/define-property/", + "packageDependencies": [ + ["define-property", "npm:0.2.5"], + ["is-descriptor", "npm:0.1.6"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/define-property-npm-1.0.0-e2fb9f44c6-8.zip/node_modules/define-property/", + "packageDependencies": [ + ["define-property", "npm:1.0.0"], + ["is-descriptor", "npm:1.0.2"] + ], + "linkType": "HARD", + }], + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/define-property-npm-2.0.2-4a2067c3ba-8.zip/node_modules/define-property/", + "packageDependencies": [ + ["define-property", "npm:2.0.2"], + ["is-descriptor", "npm:1.0.2"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["delayed-stream", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/delayed-stream-npm-1.0.0-c5a4c4cc02-8.zip/node_modules/delayed-stream/", + "packageDependencies": [ + ["delayed-stream", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["delegates", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/delegates-npm-1.0.0-9b1942d75f-8.zip/node_modules/delegates/", + "packageDependencies": [ + ["delegates", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["depd", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/depd-npm-1.1.2-b0c8414da7-8.zip/node_modules/depd/", + "packageDependencies": [ + ["depd", "npm:1.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["detect-newline", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/detect-newline-npm-3.1.0-6d33fa8d37-8.zip/node_modules/detect-newline/", + "packageDependencies": [ + ["detect-newline", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["diff-sequences", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/diff-sequences-npm-26.6.2-fbf1967570-8.zip/node_modules/diff-sequences/", + "packageDependencies": [ + ["diff-sequences", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["dir-glob", [ + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/dir-glob-npm-3.0.1-1aea628b1b-8.zip/node_modules/dir-glob/", + "packageDependencies": [ + ["dir-glob", "npm:3.0.1"], + ["path-type", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["doctrine", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/doctrine-npm-3.0.0-c6f1615f04-8.zip/node_modules/doctrine/", + "packageDependencies": [ + ["doctrine", "npm:3.0.0"], + ["esutils", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["domexception", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/domexception-npm-2.0.1-81b20626ae-8.zip/node_modules/domexception/", + "packageDependencies": [ + ["domexception", "npm:2.0.1"], + ["webidl-conversions", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["dot-prop", [ + ["npm:5.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/dot-prop-npm-5.3.0-7bf6ee1eb8-8.zip/node_modules/dot-prop/", + "packageDependencies": [ + ["dot-prop", "npm:5.3.0"], + ["is-obj", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["duplexer3", [ + ["npm:0.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/duplexer3-npm-0.1.4-361a33d994-8.zip/node_modules/duplexer3/", + "packageDependencies": [ + ["duplexer3", "npm:0.1.4"] + ], + "linkType": "HARD", + }] + ]], + ["ecc-jsbn", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ecc-jsbn-npm-0.1.2-85b7a7be89-8.zip/node_modules/ecc-jsbn/", + "packageDependencies": [ + ["ecc-jsbn", "npm:0.1.2"], + ["jsbn", "npm:0.1.1"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["emittery", [ + ["npm:0.7.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/emittery-npm-0.7.2-4a6f20265e-8.zip/node_modules/emittery/", + "packageDependencies": [ + ["emittery", "npm:0.7.2"] + ], + "linkType": "HARD", + }] + ]], + ["emoji-regex", [ + ["npm:7.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/emoji-regex-npm-7.0.3-cfe9479bb3-8.zip/node_modules/emoji-regex/", + "packageDependencies": [ + ["emoji-regex", "npm:7.0.3"] + ], + "linkType": "HARD", + }], + ["npm:8.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/emoji-regex-npm-8.0.0-213764015c-8.zip/node_modules/emoji-regex/", + "packageDependencies": [ + ["emoji-regex", "npm:8.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["encoding", [ + ["npm:0.1.13", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/encoding-npm-0.1.13-82a1837d30-8.zip/node_modules/encoding/", + "packageDependencies": [ + ["encoding", "npm:0.1.13"], + ["iconv-lite", "npm:0.6.3"] + ], + "linkType": "HARD", + }] + ]], + ["end-of-stream", [ + ["npm:1.4.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/end-of-stream-npm-1.4.4-497fc6dee1-8.zip/node_modules/end-of-stream/", + "packageDependencies": [ + ["end-of-stream", "npm:1.4.4"], + ["once", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["enquirer", [ + ["npm:2.3.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/enquirer-npm-2.3.6-7899175762-8.zip/node_modules/enquirer/", + "packageDependencies": [ + ["enquirer", "npm:2.3.6"], + ["ansi-colors", "npm:4.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["env-paths", [ + ["npm:2.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/env-paths-npm-2.2.1-7c7577428c-8.zip/node_modules/env-paths/", + "packageDependencies": [ + ["env-paths", "npm:2.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["err-code", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/err-code-npm-2.0.3-082e0ff9a7-8.zip/node_modules/err-code/", + "packageDependencies": [ + ["err-code", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["error-ex", [ + ["npm:1.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/error-ex-npm-1.3.2-5654f80c0f-8.zip/node_modules/error-ex/", + "packageDependencies": [ + ["error-ex", "npm:1.3.2"], + ["is-arrayish", "npm:0.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["escape-goat", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/escape-goat-npm-2.1.1-2e437cf3fe-8.zip/node_modules/escape-goat/", + "packageDependencies": [ + ["escape-goat", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["escape-string-regexp", [ + ["npm:1.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/escape-string-regexp-npm-1.0.5-3284de402f-8.zip/node_modules/escape-string-regexp/", + "packageDependencies": [ + ["escape-string-regexp", "npm:1.0.5"] + ], + "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/escape-string-regexp-npm-2.0.0-aef69d2a25-8.zip/node_modules/escape-string-regexp/", + "packageDependencies": [ + ["escape-string-regexp", "npm:2.0.0"] + ], + "linkType": "HARD", + }], + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/escape-string-regexp-npm-4.0.0-4b531d8d59-8.zip/node_modules/escape-string-regexp/", + "packageDependencies": [ + ["escape-string-regexp", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["escodegen", [ + ["npm:1.14.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/escodegen-npm-1.14.3-a4dedc6eeb-8.zip/node_modules/escodegen/", + "packageDependencies": [ + ["escodegen", "npm:1.14.3"], + ["esprima", "npm:4.0.1"], + ["estraverse", "npm:4.3.0"], + ["esutils", "npm:2.0.3"], + ["optionator", "npm:0.8.3"], + ["source-map", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["eslint", [ + ["npm:7.30.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-npm-7.30.0-8a8a06f9b4-8.zip/node_modules/eslint/", + "packageDependencies": [ + ["eslint", "npm:7.30.0"], + ["@babel/code-frame", "npm:7.12.11"], + ["@eslint/eslintrc", "npm:0.4.2"], + ["@humanwhocodes/config-array", "npm:0.5.0"], + ["ajv", "npm:6.12.6"], + ["chalk", "npm:4.1.0"], + ["cross-spawn", "npm:7.0.3"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["doctrine", "npm:3.0.0"], + ["enquirer", "npm:2.3.6"], + ["escape-string-regexp", "npm:4.0.0"], + ["eslint-scope", "npm:5.1.1"], + ["eslint-utils", "npm:2.1.0"], + ["eslint-visitor-keys", "npm:2.1.0"], + ["espree", "npm:7.3.1"], + ["esquery", "npm:1.4.0"], + ["esutils", "npm:2.0.3"], + ["fast-deep-equal", "npm:3.1.3"], + ["file-entry-cache", "npm:6.0.1"], + ["functional-red-black-tree", "npm:1.0.1"], + ["glob-parent", "npm:5.1.2"], + ["globals", "npm:13.10.0"], + ["ignore", "npm:4.0.6"], + ["import-fresh", "npm:3.3.0"], + ["imurmurhash", "npm:0.1.4"], + ["is-glob", "npm:4.0.1"], + ["js-yaml", "npm:3.14.1"], + ["json-stable-stringify-without-jsonify", "npm:1.0.1"], + ["levn", "npm:0.4.1"], + ["lodash.merge", "npm:4.6.2"], + ["minimatch", "npm:3.0.4"], + ["natural-compare", "npm:1.4.0"], + ["optionator", "npm:0.9.1"], + ["progress", "npm:2.0.3"], + ["regexpp", "npm:3.2.0"], + ["semver", "npm:7.3.5"], + ["strip-ansi", "npm:6.0.0"], + ["strip-json-comments", "npm:3.1.1"], + ["table", "npm:6.7.1"], + ["text-table", "npm:0.2.0"], + ["v8-compile-cache", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["eslint-scope", [ + ["npm:5.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-scope-npm-5.1.1-71fe59b18a-8.zip/node_modules/eslint-scope/", + "packageDependencies": [ + ["eslint-scope", "npm:5.1.1"], + ["esrecurse", "npm:4.3.0"], + ["estraverse", "npm:4.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["eslint-utils", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-utils-npm-2.1.0-a3a7ebf4fa-8.zip/node_modules/eslint-utils/", + "packageDependencies": [ + ["eslint-utils", "npm:2.1.0"], + ["eslint-visitor-keys", "npm:1.3.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-utils-npm-3.0.0-630b3a4013-8.zip/node_modules/eslint-utils/", + "packageDependencies": [ + ["eslint-utils", "npm:3.0.0"] + ], + "linkType": "SOFT", + }], + ["virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:3.0.0", { + "packageLocation": "./.yarn/__virtual__/eslint-utils-virtual-4ab94b28fc/5/AppData/Local/Yarn/Berry/cache/eslint-utils-npm-3.0.0-630b3a4013-8.zip/node_modules/eslint-utils/", + "packageDependencies": [ + ["eslint-utils", "virtual:13e5df8401f1b09ec59f3d5347eed512ff050bb5e85429a517194e3d878c7c2bfa7827ad36ab00f47622901382895d7e4ba89372a9517236634f059dae6cf557#npm:3.0.0"], + ["@types/eslint", null], + ["eslint", "npm:7.30.0"], + ["eslint-visitor-keys", "npm:2.1.0"] + ], + "packagePeers": [ + "@types/eslint", + "eslint" + ], + "linkType": "HARD", + }] + ]], + ["eslint-visitor-keys", [ + ["npm:1.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-visitor-keys-npm-1.3.0-c07780a0fb-8.zip/node_modules/eslint-visitor-keys/", + "packageDependencies": [ + ["eslint-visitor-keys", "npm:1.3.0"] + ], + "linkType": "HARD", + }], + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/eslint-visitor-keys-npm-2.1.0-c31806b6b9-8.zip/node_modules/eslint-visitor-keys/", + "packageDependencies": [ + ["eslint-visitor-keys", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["espree", [ + ["npm:7.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/espree-npm-7.3.1-8d8ea5d1e3-8.zip/node_modules/espree/", + "packageDependencies": [ + ["espree", "npm:7.3.1"], + ["acorn", "npm:7.4.1"], + ["acorn-jsx", "virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2"], + ["eslint-visitor-keys", "npm:1.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["esprima", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/esprima-npm-4.0.1-1084e98778-8.zip/node_modules/esprima/", + "packageDependencies": [ + ["esprima", "npm:4.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["esquery", [ + ["npm:1.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/esquery-npm-1.4.0-f39408b1a7-8.zip/node_modules/esquery/", + "packageDependencies": [ + ["esquery", "npm:1.4.0"], + ["estraverse", "npm:5.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["esrecurse", [ + ["npm:4.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/esrecurse-npm-4.3.0-10b86a887a-8.zip/node_modules/esrecurse/", + "packageDependencies": [ + ["esrecurse", "npm:4.3.0"], + ["estraverse", "npm:5.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["estraverse", [ + ["npm:4.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/estraverse-npm-4.3.0-920a32f3c6-8.zip/node_modules/estraverse/", + "packageDependencies": [ + ["estraverse", "npm:4.3.0"] + ], + "linkType": "HARD", + }], + ["npm:5.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/estraverse-npm-5.2.0-b2e8e36350-8.zip/node_modules/estraverse/", + "packageDependencies": [ + ["estraverse", "npm:5.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["esutils", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/esutils-npm-2.0.3-f865beafd5-8.zip/node_modules/esutils/", + "packageDependencies": [ + ["esutils", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["exec-sh", [ + ["npm:0.3.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/exec-sh-npm-0.3.4-424de349f3-8.zip/node_modules/exec-sh/", + "packageDependencies": [ + ["exec-sh", "npm:0.3.4"] + ], + "linkType": "HARD", + }] + ]], + ["execa", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/execa-npm-1.0.0-7028e37029-8.zip/node_modules/execa/", + "packageDependencies": [ + ["execa", "npm:1.0.0"], + ["cross-spawn", "npm:6.0.5"], + ["get-stream", "npm:4.1.0"], + ["is-stream", "npm:1.1.0"], + ["npm-run-path", "npm:2.0.2"], + ["p-finally", "npm:1.0.0"], + ["signal-exit", "npm:3.0.3"], + ["strip-eof", "npm:1.0.0"] + ], + "linkType": "HARD", + }], + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/execa-npm-4.1.0-cc675b4189-8.zip/node_modules/execa/", + "packageDependencies": [ + ["execa", "npm:4.1.0"], + ["cross-spawn", "npm:7.0.3"], + ["get-stream", "npm:5.2.0"], + ["human-signals", "npm:1.1.1"], + ["is-stream", "npm:2.0.0"], + ["merge-stream", "npm:2.0.0"], + ["npm-run-path", "npm:4.0.1"], + ["onetime", "npm:5.1.2"], + ["signal-exit", "npm:3.0.3"], + ["strip-final-newline", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["exit", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/exit-npm-0.1.2-ef3761a67d-8.zip/node_modules/exit/", + "packageDependencies": [ + ["exit", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["expand-brackets", [ + ["npm:2.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/expand-brackets-npm-2.1.4-392c703c48-8.zip/node_modules/expand-brackets/", + "packageDependencies": [ + ["expand-brackets", "npm:2.1.4"], + ["debug", "virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9"], + ["define-property", "npm:0.2.5"], + ["extend-shallow", "npm:2.0.1"], + ["posix-character-classes", "npm:0.1.1"], + ["regex-not", "npm:1.0.2"], + ["snapdragon", "npm:0.8.2"], + ["to-regex", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["expect", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/expect-npm-26.6.2-256ea90344-8.zip/node_modules/expect/", + "packageDependencies": [ + ["expect", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["ansi-styles", "npm:4.3.0"], + ["jest-get-type", "npm:26.3.0"], + ["jest-matcher-utils", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-regex-util", "npm:26.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["extend", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extend-npm-3.0.2-e1ca07ac54-8.zip/node_modules/extend/", + "packageDependencies": [ + ["extend", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["extend-shallow", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extend-shallow-npm-2.0.1-e6ef52b29c-8.zip/node_modules/extend-shallow/", + "packageDependencies": [ + ["extend-shallow", "npm:2.0.1"], + ["is-extendable", "npm:0.1.1"] + ], + "linkType": "HARD", + }], + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extend-shallow-npm-3.0.2-77bbe1bbf5-8.zip/node_modules/extend-shallow/", + "packageDependencies": [ + ["extend-shallow", "npm:3.0.2"], + ["assign-symbols", "npm:1.0.0"], + ["is-extendable", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["extglob", [ + ["npm:2.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extglob-npm-2.0.4-0f39bc9899-8.zip/node_modules/extglob/", + "packageDependencies": [ + ["extglob", "npm:2.0.4"], + ["array-unique", "npm:0.3.2"], + ["define-property", "npm:1.0.0"], + ["expand-brackets", "npm:2.1.4"], + ["extend-shallow", "npm:2.0.1"], + ["fragment-cache", "npm:0.2.1"], + ["regex-not", "npm:1.0.2"], + ["snapdragon", "npm:0.8.2"], + ["to-regex", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["extsprintf", [ + ["npm:1.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extsprintf-npm-1.3.0-61a92b324c-8.zip/node_modules/extsprintf/", + "packageDependencies": [ + ["extsprintf", "npm:1.3.0"] + ], + "linkType": "HARD", + }], + ["npm:1.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/extsprintf-npm-1.4.0-2b015bcaab-8.zip/node_modules/extsprintf/", + "packageDependencies": [ + ["extsprintf", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["fast-deep-equal", [ + ["npm:3.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fast-deep-equal-npm-3.1.3-790edcfcf5-8.zip/node_modules/fast-deep-equal/", + "packageDependencies": [ + ["fast-deep-equal", "npm:3.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["fast-glob", [ + ["npm:3.2.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fast-glob-npm-3.2.7-a2f0a45f5b-8.zip/node_modules/fast-glob/", + "packageDependencies": [ + ["fast-glob", "npm:3.2.7"], + ["@nodelib/fs.stat", "npm:2.0.5"], + ["@nodelib/fs.walk", "npm:1.2.8"], + ["glob-parent", "npm:5.1.2"], + ["merge2", "npm:1.4.1"], + ["micromatch", "npm:4.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["fast-json-stable-stringify", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fast-json-stable-stringify-npm-2.1.0-02e8905fda-8.zip/node_modules/fast-json-stable-stringify/", + "packageDependencies": [ + ["fast-json-stable-stringify", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["fast-levenshtein", [ + ["npm:2.0.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fast-levenshtein-npm-2.0.6-fcd74b8df5-8.zip/node_modules/fast-levenshtein/", + "packageDependencies": [ + ["fast-levenshtein", "npm:2.0.6"] + ], + "linkType": "HARD", + }] + ]], + ["fastq", [ + ["npm:1.11.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fastq-npm-1.11.1-ed420613b5-8.zip/node_modules/fastq/", + "packageDependencies": [ + ["fastq", "npm:1.11.1"], + ["reusify", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["fb-watchman", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fb-watchman-npm-2.0.1-30005d50fe-8.zip/node_modules/fb-watchman/", + "packageDependencies": [ + ["fb-watchman", "npm:2.0.1"], + ["bser", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["file-entry-cache", [ + ["npm:6.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/file-entry-cache-npm-6.0.1-31965cf0af-8.zip/node_modules/file-entry-cache/", + "packageDependencies": [ + ["file-entry-cache", "npm:6.0.1"], + ["flat-cache", "npm:3.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["fill-range", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fill-range-npm-4.0.0-95a6e45784-8.zip/node_modules/fill-range/", + "packageDependencies": [ + ["fill-range", "npm:4.0.0"], + ["extend-shallow", "npm:2.0.1"], + ["is-number", "npm:3.0.0"], + ["repeat-string", "npm:1.6.1"], + ["to-regex-range", "npm:2.1.1"] + ], + "linkType": "HARD", + }], + ["npm:7.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fill-range-npm-7.0.1-b8b1817caa-8.zip/node_modules/fill-range/", + "packageDependencies": [ + ["fill-range", "npm:7.0.1"], + ["to-regex-range", "npm:5.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["find-up", [ + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/find-up-npm-4.1.0-c3ccf8d855-8.zip/node_modules/find-up/", + "packageDependencies": [ + ["find-up", "npm:4.1.0"], + ["locate-path", "npm:5.0.0"], + ["path-exists", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["flat-cache", [ + ["npm:3.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/flat-cache-npm-3.0.4-ee77e5911e-8.zip/node_modules/flat-cache/", + "packageDependencies": [ + ["flat-cache", "npm:3.0.4"], + ["flatted", "npm:3.2.1"], + ["rimraf", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["flatted", [ + ["npm:3.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/flatted-npm-3.2.1-6f773b4b8e-8.zip/node_modules/flatted/", + "packageDependencies": [ + ["flatted", "npm:3.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["for-in", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/for-in-npm-1.0.2-37e3d7aae5-8.zip/node_modules/for-in/", + "packageDependencies": [ + ["for-in", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["forever-agent", [ + ["npm:0.6.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/forever-agent-npm-0.6.1-01dae53bf9-8.zip/node_modules/forever-agent/", + "packageDependencies": [ + ["forever-agent", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["form-data", [ + ["npm:2.3.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/form-data-npm-2.3.3-c016cc11c0-8.zip/node_modules/form-data/", + "packageDependencies": [ + ["form-data", "npm:2.3.3"], + ["asynckit", "npm:0.4.0"], + ["combined-stream", "npm:1.0.8"], + ["mime-types", "npm:2.1.28"] + ], + "linkType": "HARD", + }] + ]], + ["fragment-cache", [ + ["npm:0.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fragment-cache-npm-0.2.1-407fe74319-8.zip/node_modules/fragment-cache/", + "packageDependencies": [ + ["fragment-cache", "npm:0.2.1"], + ["map-cache", "npm:0.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["fs-extra", [ + ["npm:7.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fs-extra-npm-7.0.1-b33a5e53e9-8.zip/node_modules/fs-extra/", + "packageDependencies": [ + ["fs-extra", "npm:7.0.1"], + ["graceful-fs", "npm:4.2.4"], + ["jsonfile", "npm:4.0.0"], + ["universalify", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["fs-minipass", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fs-minipass-npm-2.1.0-501ef87306-8.zip/node_modules/fs-minipass/", + "packageDependencies": [ + ["fs-minipass", "npm:2.1.0"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["fs.realpath", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/fs.realpath-npm-1.0.0-c8f05d8126-8.zip/node_modules/fs.realpath/", + "packageDependencies": [ + ["fs.realpath", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["fsevents", [ + ["patch:fsevents@npm%3A2.1.3#~builtin::version=2.1.3&hash=18f3a7", { + "packageLocation": "./.yarn/unplugged/fsevents-patch-7450bc5e91/node_modules/fsevents/", + "packageDependencies": [ + ["fsevents", "patch:fsevents@npm%3A2.1.3#~builtin::version=2.1.3&hash=18f3a7"], + ["node-gyp", "npm:8.3.0"] + ], + "linkType": "HARD", + }], + ["patch:fsevents@npm%3A2.3.1#~builtin::version=2.3.1&hash=18f3a7", { + "packageLocation": "./.yarn/unplugged/fsevents-patch-70b66b0e68/node_modules/fsevents/", + "packageDependencies": [ + ["fsevents", "patch:fsevents@npm%3A2.3.1#~builtin::version=2.3.1&hash=18f3a7"], + ["node-gyp", "npm:8.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["function-bind", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/function-bind-npm-1.1.1-b56b322ae9-8.zip/node_modules/function-bind/", + "packageDependencies": [ + ["function-bind", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["functional-red-black-tree", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/functional-red-black-tree-npm-1.0.1-ccfe924dcd-8.zip/node_modules/functional-red-black-tree/", + "packageDependencies": [ + ["functional-red-black-tree", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["gauge", [ + ["npm:2.7.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/gauge-npm-2.7.4-2189a73529-8.zip/node_modules/gauge/", + "packageDependencies": [ + ["gauge", "npm:2.7.4"], + ["aproba", "npm:1.2.0"], + ["console-control-strings", "npm:1.1.0"], + ["has-unicode", "npm:2.0.1"], + ["object-assign", "npm:4.1.1"], + ["signal-exit", "npm:3.0.3"], + ["string-width", "npm:1.0.2"], + ["strip-ansi", "npm:3.0.1"], + ["wide-align", "npm:1.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["gensync", [ + ["npm:1.0.0-beta.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/gensync-npm-1.0.0-beta.2-224666d72f-8.zip/node_modules/gensync/", + "packageDependencies": [ + ["gensync", "npm:1.0.0-beta.2"] + ], + "linkType": "HARD", + }] + ]], + ["get-caller-file", [ + ["npm:2.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/get-caller-file-npm-2.0.5-80e8a86305-8.zip/node_modules/get-caller-file/", + "packageDependencies": [ + ["get-caller-file", "npm:2.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["get-package-type", [ + ["npm:0.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/get-package-type-npm-0.1.0-6c70cdc8ab-8.zip/node_modules/get-package-type/", + "packageDependencies": [ + ["get-package-type", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["get-stream", [ + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/get-stream-npm-4.1.0-314d430a5d-8.zip/node_modules/get-stream/", + "packageDependencies": [ + ["get-stream", "npm:4.1.0"], + ["pump", "npm:3.0.0"] + ], + "linkType": "HARD", + }], + ["npm:5.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/get-stream-npm-5.2.0-2cfd3b452b-8.zip/node_modules/get-stream/", + "packageDependencies": [ + ["get-stream", "npm:5.2.0"], + ["pump", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["get-value", [ + ["npm:2.0.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/get-value-npm-2.0.6-03cd422e0a-8.zip/node_modules/get-value/", + "packageDependencies": [ + ["get-value", "npm:2.0.6"] + ], + "linkType": "HARD", + }] + ]], + ["getpass", [ + ["npm:0.1.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/getpass-npm-0.1.7-519164a3be-8.zip/node_modules/getpass/", + "packageDependencies": [ + ["getpass", "npm:0.1.7"], + ["assert-plus", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["glob", [ + ["npm:7.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/glob-npm-7.1.6-1ce3a5189a-8.zip/node_modules/glob/", + "packageDependencies": [ + ["glob", "npm:7.1.6"], + ["fs.realpath", "npm:1.0.0"], + ["inflight", "npm:1.0.6"], + ["inherits", "npm:2.0.4"], + ["minimatch", "npm:3.0.4"], + ["once", "npm:1.4.0"], + ["path-is-absolute", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["glob-parent", [ + ["npm:5.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/glob-parent-npm-5.1.1-57b061cd88-8.zip/node_modules/glob-parent/", + "packageDependencies": [ + ["glob-parent", "npm:5.1.1"], + ["is-glob", "npm:4.0.1"] + ], + "linkType": "HARD", + }], + ["npm:5.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/glob-parent-npm-5.1.2-021ab32634-8.zip/node_modules/glob-parent/", + "packageDependencies": [ + ["glob-parent", "npm:5.1.2"], + ["is-glob", "npm:4.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["global-dirs", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/global-dirs-npm-2.0.1-db647d4aca-8.zip/node_modules/global-dirs/", + "packageDependencies": [ + ["global-dirs", "npm:2.0.1"], + ["ini", "npm:1.3.8"] + ], + "linkType": "HARD", + }] + ]], + ["globals", [ + ["npm:11.12.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/globals-npm-11.12.0-1fa7f41a6c-8.zip/node_modules/globals/", + "packageDependencies": [ + ["globals", "npm:11.12.0"] + ], + "linkType": "HARD", + }], + ["npm:13.10.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/globals-npm-13.10.0-48742e93b3-8.zip/node_modules/globals/", + "packageDependencies": [ + ["globals", "npm:13.10.0"], + ["type-fest", "npm:0.20.2"] + ], + "linkType": "HARD", + }] + ]], + ["globby", [ + ["npm:11.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/globby-npm-11.0.4-592ce71cca-8.zip/node_modules/globby/", + "packageDependencies": [ + ["globby", "npm:11.0.4"], + ["array-union", "npm:2.1.0"], + ["dir-glob", "npm:3.0.1"], + ["fast-glob", "npm:3.2.7"], + ["ignore", "npm:5.1.8"], + ["merge2", "npm:1.4.1"], + ["slash", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["got", [ + ["npm:9.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/got-npm-9.6.0-80edc15fd0-8.zip/node_modules/got/", + "packageDependencies": [ + ["got", "npm:9.6.0"], + ["@sindresorhus/is", "npm:0.14.0"], + ["@szmarczak/http-timer", "npm:1.1.2"], + ["@types/keyv", "npm:3.1.3"], + ["@types/responselike", "npm:1.0.0"], + ["cacheable-request", "npm:6.1.0"], + ["decompress-response", "npm:3.3.0"], + ["duplexer3", "npm:0.1.4"], + ["get-stream", "npm:4.1.0"], + ["lowercase-keys", "npm:1.0.1"], + ["mimic-response", "npm:1.0.1"], + ["p-cancelable", "npm:1.1.0"], + ["to-readable-stream", "npm:1.0.0"], + ["url-parse-lax", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["graceful-fs", [ + ["npm:4.2.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/graceful-fs-npm-4.2.4-734467635f-8.zip/node_modules/graceful-fs/", + "packageDependencies": [ + ["graceful-fs", "npm:4.2.4"] + ], + "linkType": "HARD", + }], + ["npm:4.2.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/graceful-fs-npm-4.2.8-37c16fc3d3-8.zip/node_modules/graceful-fs/", + "packageDependencies": [ + ["graceful-fs", "npm:4.2.8"] + ], + "linkType": "HARD", + }] + ]], + ["growly", [ + ["npm:1.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/growly-npm-1.3.0-b3a02d4d2a-8.zip/node_modules/growly/", + "packageDependencies": [ + ["growly", "npm:1.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["har-schema", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/har-schema-npm-2.0.0-3a318c0ca5-8.zip/node_modules/har-schema/", + "packageDependencies": [ + ["har-schema", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["har-validator", [ + ["npm:5.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/har-validator-npm-5.1.5-bd9ac162f5-8.zip/node_modules/har-validator/", + "packageDependencies": [ + ["har-validator", "npm:5.1.5"], + ["ajv", "npm:6.12.6"], + ["har-schema", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["has", [ + ["npm:1.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-npm-1.0.3-b7f00631c1-8.zip/node_modules/has/", + "packageDependencies": [ + ["has", "npm:1.0.3"], + ["function-bind", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["has-flag", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-flag-npm-3.0.0-16ac11fe05-8.zip/node_modules/has-flag/", + "packageDependencies": [ + ["has-flag", "npm:3.0.0"] + ], + "linkType": "HARD", + }], + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-flag-npm-4.0.0-32af9f0536-8.zip/node_modules/has-flag/", + "packageDependencies": [ + ["has-flag", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["has-unicode", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-unicode-npm-2.0.1-893adb4747-8.zip/node_modules/has-unicode/", + "packageDependencies": [ + ["has-unicode", "npm:2.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["has-value", [ + ["npm:0.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-value-npm-0.3.1-4a15b6c29f-8.zip/node_modules/has-value/", + "packageDependencies": [ + ["has-value", "npm:0.3.1"], + ["get-value", "npm:2.0.6"], + ["has-values", "npm:0.1.4"], + ["isobject", "npm:2.1.0"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-value-npm-1.0.0-19d82fd04b-8.zip/node_modules/has-value/", + "packageDependencies": [ + ["has-value", "npm:1.0.0"], + ["get-value", "npm:2.0.6"], + ["has-values", "npm:1.0.0"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["has-values", [ + ["npm:0.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-values-npm-0.1.4-6b4397786d-8.zip/node_modules/has-values/", + "packageDependencies": [ + ["has-values", "npm:0.1.4"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-values-npm-1.0.0-890c077bbd-8.zip/node_modules/has-values/", + "packageDependencies": [ + ["has-values", "npm:1.0.0"], + ["is-number", "npm:3.0.0"], + ["kind-of", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["has-yarn", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/has-yarn-npm-2.1.0-b73f6750d9-8.zip/node_modules/has-yarn/", + "packageDependencies": [ + ["has-yarn", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["hosted-git-info", [ + ["npm:2.8.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/hosted-git-info-npm-2.8.8-94a3928c03-8.zip/node_modules/hosted-git-info/", + "packageDependencies": [ + ["hosted-git-info", "npm:2.8.8"] + ], + "linkType": "HARD", + }] + ]], + ["html-encoding-sniffer", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/html-encoding-sniffer-npm-2.0.1-381bf15a76-8.zip/node_modules/html-encoding-sniffer/", + "packageDependencies": [ + ["html-encoding-sniffer", "npm:2.0.1"], + ["whatwg-encoding", "npm:1.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["html-escaper", [ + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/html-escaper-npm-2.0.2-38e51ef294-8.zip/node_modules/html-escaper/", + "packageDependencies": [ + ["html-escaper", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["http-cache-semantics", [ + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/http-cache-semantics-npm-4.1.0-860520a31f-8.zip/node_modules/http-cache-semantics/", + "packageDependencies": [ + ["http-cache-semantics", "npm:4.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["http-proxy-agent", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/http-proxy-agent-npm-4.0.1-ce9ef61788-8.zip/node_modules/http-proxy-agent/", + "packageDependencies": [ + ["http-proxy-agent", "npm:4.0.1"], + ["@tootallnate/once", "npm:1.1.2"], + ["agent-base", "npm:6.0.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["http-signature", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/http-signature-npm-1.2.0-ee92426f34-8.zip/node_modules/http-signature/", + "packageDependencies": [ + ["http-signature", "npm:1.2.0"], + ["assert-plus", "npm:1.0.0"], + ["jsprim", "npm:1.4.1"], + ["sshpk", "npm:1.16.1"] + ], + "linkType": "HARD", + }] + ]], + ["https-proxy-agent", [ + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/https-proxy-agent-npm-5.0.0-bb777903c3-8.zip/node_modules/https-proxy-agent/", + "packageDependencies": [ + ["https-proxy-agent", "npm:5.0.0"], + ["agent-base", "npm:6.0.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["human-signals", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/human-signals-npm-1.1.1-616b2586c2-8.zip/node_modules/human-signals/", + "packageDependencies": [ + ["human-signals", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["humanize-ms", [ + ["npm:1.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/humanize-ms-npm-1.2.1-e942bd7329-8.zip/node_modules/humanize-ms/", + "packageDependencies": [ + ["humanize-ms", "npm:1.2.1"], + ["ms", "npm:2.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["iconv-lite", [ + ["npm:0.4.24", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/iconv-lite-npm-0.4.24-c5c4ac6695-8.zip/node_modules/iconv-lite/", + "packageDependencies": [ + ["iconv-lite", "npm:0.4.24"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }], + ["npm:0.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/iconv-lite-npm-0.6.3-24b8aae27e-8.zip/node_modules/iconv-lite/", + "packageDependencies": [ + ["iconv-lite", "npm:0.6.3"], + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["ignore", [ + ["npm:4.0.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ignore-npm-4.0.6-66c0d6543e-8.zip/node_modules/ignore/", + "packageDependencies": [ + ["ignore", "npm:4.0.6"] + ], + "linkType": "HARD", + }], + ["npm:5.1.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ignore-npm-5.1.8-aa9a49ada4-8.zip/node_modules/ignore/", + "packageDependencies": [ + ["ignore", "npm:5.1.8"] + ], + "linkType": "HARD", + }] + ]], + ["ignore-by-default", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ignore-by-default-npm-1.0.1-78ea10bc54-8.zip/node_modules/ignore-by-default/", + "packageDependencies": [ + ["ignore-by-default", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["import-fresh", [ + ["npm:3.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/import-fresh-npm-3.3.0-3e34265ca9-8.zip/node_modules/import-fresh/", + "packageDependencies": [ + ["import-fresh", "npm:3.3.0"], + ["parent-module", "npm:1.0.1"], + ["resolve-from", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["import-lazy", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/import-lazy-npm-2.1.0-b128ce6959-8.zip/node_modules/import-lazy/", + "packageDependencies": [ + ["import-lazy", "npm:2.1.0"] + ], + "linkType": "HARD", + }], + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/import-lazy-npm-4.0.0-3215653869-8.zip/node_modules/import-lazy/", + "packageDependencies": [ + ["import-lazy", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["import-local", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/import-local-npm-3.0.2-c8afc1fd5f-8.zip/node_modules/import-local/", + "packageDependencies": [ + ["import-local", "npm:3.0.2"], + ["pkg-dir", "npm:4.2.0"], + ["resolve-cwd", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["imurmurhash", [ + ["npm:0.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/imurmurhash-npm-0.1.4-610c5068a0-8.zip/node_modules/imurmurhash/", + "packageDependencies": [ + ["imurmurhash", "npm:0.1.4"] + ], + "linkType": "HARD", + }] + ]], + ["indent-string", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/indent-string-npm-4.0.0-7b717435b2-8.zip/node_modules/indent-string/", + "packageDependencies": [ + ["indent-string", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["infer-owner", [ + ["npm:1.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/infer-owner-npm-1.0.4-685ac3d2af-8.zip/node_modules/infer-owner/", + "packageDependencies": [ + ["infer-owner", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["inflight", [ + ["npm:1.0.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/inflight-npm-1.0.6-ccedb4b908-8.zip/node_modules/inflight/", + "packageDependencies": [ + ["inflight", "npm:1.0.6"], + ["once", "npm:1.4.0"], + ["wrappy", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["inherits", [ + ["npm:2.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/inherits-npm-2.0.4-c66b3957a0-8.zip/node_modules/inherits/", + "packageDependencies": [ + ["inherits", "npm:2.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["ini", [ + ["npm:1.3.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ini-npm-1.3.8-fb5040b4c0-8.zip/node_modules/ini/", + "packageDependencies": [ + ["ini", "npm:1.3.8"] + ], + "linkType": "HARD", + }] + ]], + ["ip", [ + ["npm:1.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ip-npm-1.1.5-af36318aa6-8.zip/node_modules/ip/", + "packageDependencies": [ + ["ip", "npm:1.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["ip-matching", [ + ["workspace:.", { + "packageLocation": "./", + "packageDependencies": [ + ["ip-matching", "workspace:."], + ["@microsoft/api-extractor", "npm:7.18.1"], + ["@types/jest", "npm:26.0.20"], + ["@types/node", "npm:10.17.39"], + ["@typescript-eslint/eslint-plugin", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["@typescript-eslint/parser", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:4.28.2"], + ["eslint", "npm:7.30.0"], + ["jest", "npm:26.6.3"], + ["nodemon", "npm:2.0.6"], + ["rimraf", "npm:3.0.2"], + ["source-map-support", "npm:0.5.19"], + ["ts-jest", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:26.5.0"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "linkType": "SOFT", + }] + ]], + ["ip-regex", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ip-regex-npm-2.1.0-7eb0f6c4ab-8.zip/node_modules/ip-regex/", + "packageDependencies": [ + ["ip-regex", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-accessor-descriptor", [ + ["npm:0.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-accessor-descriptor-npm-0.1.6-41c495d517-8.zip/node_modules/is-accessor-descriptor/", + "packageDependencies": [ + ["is-accessor-descriptor", "npm:0.1.6"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-accessor-descriptor-npm-1.0.0-d8ce016e98-8.zip/node_modules/is-accessor-descriptor/", + "packageDependencies": [ + ["is-accessor-descriptor", "npm:1.0.0"], + ["kind-of", "npm:6.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["is-arrayish", [ + ["npm:0.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-arrayish-npm-0.2.1-23927dfb15-8.zip/node_modules/is-arrayish/", + "packageDependencies": [ + ["is-arrayish", "npm:0.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-binary-path", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-binary-path-npm-2.1.0-e61d46f557-8.zip/node_modules/is-binary-path/", + "packageDependencies": [ + ["is-binary-path", "npm:2.1.0"], + ["binary-extensions", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-buffer", [ + ["npm:1.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-buffer-npm-1.1.6-08199d9ccc-8.zip/node_modules/is-buffer/", + "packageDependencies": [ + ["is-buffer", "npm:1.1.6"] + ], + "linkType": "HARD", + }] + ]], + ["is-ci", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-ci-npm-2.0.0-8662a0f445-8.zip/node_modules/is-ci/", + "packageDependencies": [ + ["is-ci", "npm:2.0.0"], + ["ci-info", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-core-module", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-core-module-npm-2.2.0-497065e3b0-8.zip/node_modules/is-core-module/", + "packageDependencies": [ + ["is-core-module", "npm:2.2.0"], + ["has", "npm:1.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["is-data-descriptor", [ + ["npm:0.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-data-descriptor-npm-0.1.4-6f53f71c67-8.zip/node_modules/is-data-descriptor/", + "packageDependencies": [ + ["is-data-descriptor", "npm:0.1.4"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-data-descriptor-npm-1.0.0-f7d2e852ca-8.zip/node_modules/is-data-descriptor/", + "packageDependencies": [ + ["is-data-descriptor", "npm:1.0.0"], + ["kind-of", "npm:6.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["is-descriptor", [ + ["npm:0.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-descriptor-npm-0.1.6-15c7346839-8.zip/node_modules/is-descriptor/", + "packageDependencies": [ + ["is-descriptor", "npm:0.1.6"], + ["is-accessor-descriptor", "npm:0.1.6"], + ["is-data-descriptor", "npm:0.1.4"], + ["kind-of", "npm:5.1.0"] + ], + "linkType": "HARD", + }], + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-descriptor-npm-1.0.2-5cfc02c444-8.zip/node_modules/is-descriptor/", + "packageDependencies": [ + ["is-descriptor", "npm:1.0.2"], + ["is-accessor-descriptor", "npm:1.0.0"], + ["is-data-descriptor", "npm:1.0.0"], + ["kind-of", "npm:6.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["is-docker", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-docker-npm-2.1.1-f58143f915-8.zip/node_modules/is-docker/", + "packageDependencies": [ + ["is-docker", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-extendable", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-extendable-npm-0.1.1-322b4649ec-8.zip/node_modules/is-extendable/", + "packageDependencies": [ + ["is-extendable", "npm:0.1.1"] + ], + "linkType": "HARD", + }], + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-extendable-npm-1.0.1-7095ad8b16-8.zip/node_modules/is-extendable/", + "packageDependencies": [ + ["is-extendable", "npm:1.0.1"], + ["is-plain-object", "npm:2.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["is-extglob", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-extglob-npm-2.1.1-0870ea68b5-8.zip/node_modules/is-extglob/", + "packageDependencies": [ + ["is-extglob", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-fullwidth-code-point", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-8.zip/node_modules/is-fullwidth-code-point/", + "packageDependencies": [ + ["is-fullwidth-code-point", "npm:1.0.0"], + ["number-is-nan", "npm:1.0.1"] + ], + "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-fullwidth-code-point-npm-2.0.0-507f56ec71-8.zip/node_modules/is-fullwidth-code-point/", + "packageDependencies": [ + ["is-fullwidth-code-point", "npm:2.0.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-fullwidth-code-point-npm-3.0.0-1ecf4ebee5-8.zip/node_modules/is-fullwidth-code-point/", + "packageDependencies": [ + ["is-fullwidth-code-point", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-generator-fn", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-generator-fn-npm-2.1.0-37895c2d2b-8.zip/node_modules/is-generator-fn/", + "packageDependencies": [ + ["is-generator-fn", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-glob", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-glob-npm-4.0.1-341760116f-8.zip/node_modules/is-glob/", + "packageDependencies": [ + ["is-glob", "npm:4.0.1"], + ["is-extglob", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-installed-globally", [ + ["npm:0.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-installed-globally-npm-0.3.2-a593acf078-8.zip/node_modules/is-installed-globally/", + "packageDependencies": [ + ["is-installed-globally", "npm:0.3.2"], + ["global-dirs", "npm:2.0.1"], + ["is-path-inside", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["is-lambda", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-lambda-npm-1.0.1-7ab55bc8a8-8.zip/node_modules/is-lambda/", + "packageDependencies": [ + ["is-lambda", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-npm", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-npm-npm-4.0.0-86d312340b-8.zip/node_modules/is-npm/", + "packageDependencies": [ + ["is-npm", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-number", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-number-npm-3.0.0-9088035ade-8.zip/node_modules/is-number/", + "packageDependencies": [ + ["is-number", "npm:3.0.0"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }], + ["npm:7.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-number-npm-7.0.0-060086935c-8.zip/node_modules/is-number/", + "packageDependencies": [ + ["is-number", "npm:7.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-obj", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-obj-npm-2.0.0-3d95e053f4-8.zip/node_modules/is-obj/", + "packageDependencies": [ + ["is-obj", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-path-inside", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-path-inside-npm-3.0.2-e675e113cb-8.zip/node_modules/is-path-inside/", + "packageDependencies": [ + ["is-path-inside", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["is-plain-object", [ + ["npm:2.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-plain-object-npm-2.0.4-da3265d804-8.zip/node_modules/is-plain-object/", + "packageDependencies": [ + ["is-plain-object", "npm:2.0.4"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-potential-custom-element-name", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-potential-custom-element-name-npm-1.0.0-0000641861-8.zip/node_modules/is-potential-custom-element-name/", + "packageDependencies": [ + ["is-potential-custom-element-name", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-stream", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-stream-npm-1.1.0-818ecbf6bb-8.zip/node_modules/is-stream/", + "packageDependencies": [ + ["is-stream", "npm:1.1.0"] + ], + "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-stream-npm-2.0.0-1401f82ad7-8.zip/node_modules/is-stream/", + "packageDependencies": [ + ["is-stream", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-typedarray", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-typedarray-npm-1.0.0-bbd99de5b6-8.zip/node_modules/is-typedarray/", + "packageDependencies": [ + ["is-typedarray", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["is-windows", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-windows-npm-1.0.2-898cd6f3d7-8.zip/node_modules/is-windows/", + "packageDependencies": [ + ["is-windows", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["is-wsl", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-wsl-npm-2.2.0-2ba10d6393-8.zip/node_modules/is-wsl/", + "packageDependencies": [ + ["is-wsl", "npm:2.2.0"], + ["is-docker", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["is-yarn-global", [ + ["npm:0.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/is-yarn-global-npm-0.3.0-18cad00879-8.zip/node_modules/is-yarn-global/", + "packageDependencies": [ + ["is-yarn-global", "npm:0.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["isarray", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/isarray-npm-1.0.0-db4f547720-8.zip/node_modules/isarray/", + "packageDependencies": [ + ["isarray", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["isexe", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/isexe-npm-2.0.0-b58870bd2e-8.zip/node_modules/isexe/", + "packageDependencies": [ + ["isexe", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["isobject", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/isobject-npm-2.1.0-2798cf0d94-8.zip/node_modules/isobject/", + "packageDependencies": [ + ["isobject", "npm:2.1.0"], + ["isarray", "npm:1.0.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/isobject-npm-3.0.1-8145901fd2-8.zip/node_modules/isobject/", + "packageDependencies": [ + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["isstream", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/isstream-npm-0.1.2-8581c75385-8.zip/node_modules/isstream/", + "packageDependencies": [ + ["isstream", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["istanbul-lib-coverage", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/istanbul-lib-coverage-npm-3.0.0-654bb0146d-8.zip/node_modules/istanbul-lib-coverage/", + "packageDependencies": [ + ["istanbul-lib-coverage", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["istanbul-lib-instrument", [ + ["npm:4.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/istanbul-lib-instrument-npm-4.0.3-4d4c2263f8-8.zip/node_modules/istanbul-lib-instrument/", + "packageDependencies": [ + ["istanbul-lib-instrument", "npm:4.0.3"], + ["@babel/core", "npm:7.12.10"], + ["@istanbuljs/schema", "npm:0.1.2"], + ["istanbul-lib-coverage", "npm:3.0.0"], + ["semver", "npm:6.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["istanbul-lib-report", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/istanbul-lib-report-npm-3.0.0-660f97340a-8.zip/node_modules/istanbul-lib-report/", + "packageDependencies": [ + ["istanbul-lib-report", "npm:3.0.0"], + ["istanbul-lib-coverage", "npm:3.0.0"], + ["make-dir", "npm:3.1.0"], + ["supports-color", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["istanbul-lib-source-maps", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/istanbul-lib-source-maps-npm-4.0.0-def3895674-8.zip/node_modules/istanbul-lib-source-maps/", + "packageDependencies": [ + ["istanbul-lib-source-maps", "npm:4.0.0"], + ["debug", "virtual:f8b688e6542ef635eefae684748f7db5410cd1803b0f43b02ae3ebd860a79349e9ae07146ce05bdfb5fca9536ad9dbe230ed7f4c2f2ffe26893f1f1b0b8700e7#npm:4.3.1"], + ["istanbul-lib-coverage", "npm:3.0.0"], + ["source-map", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["istanbul-reports", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/istanbul-reports-npm-3.0.2-6ccd67e17e-8.zip/node_modules/istanbul-reports/", + "packageDependencies": [ + ["istanbul-reports", "npm:3.0.2"], + ["html-escaper", "npm:2.0.2"], + ["istanbul-lib-report", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-npm-26.6.3-dafe93d52f-8.zip/node_modules/jest/", + "packageDependencies": [ + ["jest", "npm:26.6.3"], + ["@jest/core", "npm:26.6.3"], + ["import-local", "npm:3.0.2"], + ["jest-cli", "npm:26.6.3"] + ], + "linkType": "HARD", + }] + ]], + ["jest-changed-files", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-changed-files-npm-26.6.2-f511617ef2-8.zip/node_modules/jest-changed-files/", + "packageDependencies": [ + ["jest-changed-files", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["execa", "npm:4.1.0"], + ["throat", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-cli", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-cli-npm-26.6.3-983e1fcf7f-8.zip/node_modules/jest-cli/", + "packageDependencies": [ + ["jest-cli", "npm:26.6.3"], + ["@jest/core", "npm:26.6.3"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["exit", "npm:0.1.2"], + ["graceful-fs", "npm:4.2.4"], + ["import-local", "npm:3.0.2"], + ["is-ci", "npm:2.0.0"], + ["jest-config", "virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3"], + ["jest-util", "npm:26.6.2"], + ["jest-validate", "npm:26.6.2"], + ["prompts", "npm:2.4.0"], + ["yargs", "npm:15.4.1"] + ], + "linkType": "HARD", + }] + ]], + ["jest-config", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-config-npm-26.6.3-ac5d27f4ad-8.zip/node_modules/jest-config/", + "packageDependencies": [ + ["jest-config", "npm:26.6.3"] + ], + "linkType": "SOFT", + }], + ["virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3", { + "packageLocation": "./.yarn/__virtual__/jest-config-virtual-caddf51df4/5/AppData/Local/Yarn/Berry/cache/jest-config-npm-26.6.3-ac5d27f4ad-8.zip/node_modules/jest-config/", + "packageDependencies": [ + ["jest-config", "virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3"], + ["@babel/core", "npm:7.12.10"], + ["@jest/test-sequencer", "npm:26.6.3"], + ["@jest/types", "npm:26.6.2"], + ["@types/ts-node", null], + ["babel-jest", "virtual:caddf51df4928b33a437ca87b8f5ddfb6205ebd6d8231f74d4ee7223f3866e6f815b221aa1e2bd33e98915f701e95bae72a93d2288b49a34a6246bdbc2a4a132#npm:26.6.3"], + ["chalk", "npm:4.1.0"], + ["deepmerge", "npm:4.2.2"], + ["glob", "npm:7.1.6"], + ["graceful-fs", "npm:4.2.4"], + ["jest-environment-jsdom", "npm:26.6.2"], + ["jest-environment-node", "npm:26.6.2"], + ["jest-get-type", "npm:26.3.0"], + ["jest-jasmine2", "npm:26.6.3"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-resolve", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jest-validate", "npm:26.6.2"], + ["micromatch", "npm:4.0.2"], + ["pretty-format", "npm:26.6.2"], + ["ts-node", null] + ], + "packagePeers": [ + "@types/ts-node", + "ts-node" + ], + "linkType": "HARD", + }] + ]], + ["jest-diff", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-diff-npm-26.6.2-06ca2a96ca-8.zip/node_modules/jest-diff/", + "packageDependencies": [ + ["jest-diff", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["diff-sequences", "npm:26.6.2"], + ["jest-get-type", "npm:26.3.0"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-docblock", [ + ["npm:26.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-docblock-npm-26.0.0-7d0129b0be-8.zip/node_modules/jest-docblock/", + "packageDependencies": [ + ["jest-docblock", "npm:26.0.0"], + ["detect-newline", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-each", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-each-npm-26.6.2-651078df67-8.zip/node_modules/jest-each/", + "packageDependencies": [ + ["jest-each", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["jest-get-type", "npm:26.3.0"], + ["jest-util", "npm:26.6.2"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-environment-jsdom", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-environment-jsdom-npm-26.6.2-defa486869-8.zip/node_modules/jest-environment-jsdom/", + "packageDependencies": [ + ["jest-environment-jsdom", "npm:26.6.2"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/fake-timers", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["jest-mock", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jsdom", "virtual:defa486869c88441047200a53b3aa18d79743b272095f3ee31b5b7b80b2c93d87f722added867470dcb94104504489a1a89040ea8fd89dffb9cfb1864d4bf54e#npm:16.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-environment-node", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-environment-node-npm-26.6.2-9030128a2f-8.zip/node_modules/jest-environment-node/", + "packageDependencies": [ + ["jest-environment-node", "npm:26.6.2"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/fake-timers", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["jest-mock", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-get-type", [ + ["npm:26.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-get-type-npm-26.3.0-a481f14d96-8.zip/node_modules/jest-get-type/", + "packageDependencies": [ + ["jest-get-type", "npm:26.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-haste-map", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-haste-map-npm-26.6.2-16ea967617-8.zip/node_modules/jest-haste-map/", + "packageDependencies": [ + ["jest-haste-map", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/graceful-fs", "npm:4.1.4"], + ["@types/node", "npm:14.14.22"], + ["anymatch", "npm:3.1.1"], + ["fb-watchman", "npm:2.0.1"], + ["fsevents", "patch:fsevents@npm%3A2.3.1#~builtin::version=2.3.1&hash=18f3a7"], + ["graceful-fs", "npm:4.2.4"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-serializer", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jest-worker", "npm:26.6.2"], + ["micromatch", "npm:4.0.2"], + ["sane", "npm:4.1.0"], + ["walker", "npm:1.0.7"] + ], + "linkType": "HARD", + }] + ]], + ["jest-jasmine2", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-jasmine2-npm-26.6.3-aba0c11c28-8.zip/node_modules/jest-jasmine2/", + "packageDependencies": [ + ["jest-jasmine2", "npm:26.6.3"], + ["@babel/traverse", "npm:7.12.12"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/source-map", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["chalk", "npm:4.1.0"], + ["co", "npm:4.6.0"], + ["expect", "npm:26.6.2"], + ["is-generator-fn", "npm:2.1.0"], + ["jest-each", "npm:26.6.2"], + ["jest-matcher-utils", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-runtime", "npm:26.6.3"], + ["jest-snapshot", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["pretty-format", "npm:26.6.2"], + ["throat", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-leak-detector", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-leak-detector-npm-26.6.2-3b253a4eef-8.zip/node_modules/jest-leak-detector/", + "packageDependencies": [ + ["jest-leak-detector", "npm:26.6.2"], + ["jest-get-type", "npm:26.3.0"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-matcher-utils", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-matcher-utils-npm-26.6.2-90bcfd468b-8.zip/node_modules/jest-matcher-utils/", + "packageDependencies": [ + ["jest-matcher-utils", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["jest-diff", "npm:26.6.2"], + ["jest-get-type", "npm:26.3.0"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-message-util", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-message-util-npm-26.6.2-2dd6f71234-8.zip/node_modules/jest-message-util/", + "packageDependencies": [ + ["jest-message-util", "npm:26.6.2"], + ["@babel/code-frame", "npm:7.12.11"], + ["@jest/types", "npm:26.6.2"], + ["@types/stack-utils", "npm:2.0.0"], + ["chalk", "npm:4.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["micromatch", "npm:4.0.2"], + ["pretty-format", "npm:26.6.2"], + ["slash", "npm:3.0.0"], + ["stack-utils", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["jest-mock", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-mock-npm-26.6.2-87f47530a8-8.zip/node_modules/jest-mock/", + "packageDependencies": [ + ["jest-mock", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"] + ], + "linkType": "HARD", + }] + ]], + ["jest-pnp-resolver", [ + ["npm:1.2.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-pnp-resolver-npm-1.2.2-da20f8bdfe-8.zip/node_modules/jest-pnp-resolver/", + "packageDependencies": [ + ["jest-pnp-resolver", "npm:1.2.2"] + ], + "linkType": "SOFT", + }], + ["virtual:6ad3c87f852a744f0ca052ddcf60cfb1d20f148e44c4d3bc933aed1297626798d738b65c746a40d5eb58079971d680449b7c0894918212fabb0b9f5575e9f921#npm:1.2.2", { + "packageLocation": "./.yarn/__virtual__/jest-pnp-resolver-virtual-c95d0051b1/5/AppData/Local/Yarn/Berry/cache/jest-pnp-resolver-npm-1.2.2-da20f8bdfe-8.zip/node_modules/jest-pnp-resolver/", + "packageDependencies": [ + ["jest-pnp-resolver", "virtual:6ad3c87f852a744f0ca052ddcf60cfb1d20f148e44c4d3bc933aed1297626798d738b65c746a40d5eb58079971d680449b7c0894918212fabb0b9f5575e9f921#npm:1.2.2"], + ["@types/jest-resolve", null], + ["jest-resolve", "npm:26.6.2"] + ], + "packagePeers": [ + "@types/jest-resolve", + "jest-resolve" + ], + "linkType": "HARD", + }] + ]], + ["jest-regex-util", [ + ["npm:26.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-regex-util-npm-26.0.0-310f72dd82-8.zip/node_modules/jest-regex-util/", + "packageDependencies": [ + ["jest-regex-util", "npm:26.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-resolve", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-resolve-npm-26.6.2-6ad3c87f85-8.zip/node_modules/jest-resolve/", + "packageDependencies": [ + ["jest-resolve", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["chalk", "npm:4.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["jest-pnp-resolver", "virtual:6ad3c87f852a744f0ca052ddcf60cfb1d20f148e44c4d3bc933aed1297626798d738b65c746a40d5eb58079971d680449b7c0894918212fabb0b9f5575e9f921#npm:1.2.2"], + ["jest-util", "npm:26.6.2"], + ["read-pkg-up", "npm:7.0.1"], + ["resolve", "patch:resolve@npm%3A1.19.0#~builtin::version=1.19.0&hash=07638b"], + ["slash", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-resolve-dependencies", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-resolve-dependencies-npm-26.6.3-e36bbb2abc-8.zip/node_modules/jest-resolve-dependencies/", + "packageDependencies": [ + ["jest-resolve-dependencies", "npm:26.6.3"], + ["@jest/types", "npm:26.6.2"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-snapshot", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-runner", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-runner-npm-26.6.3-4a4a361df8-8.zip/node_modules/jest-runner/", + "packageDependencies": [ + ["jest-runner", "npm:26.6.3"], + ["@jest/console", "npm:26.6.2"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["chalk", "npm:4.1.0"], + ["emittery", "npm:0.7.2"], + ["exit", "npm:0.1.2"], + ["graceful-fs", "npm:4.2.4"], + ["jest-config", "virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3"], + ["jest-docblock", "npm:26.0.0"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-leak-detector", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-resolve", "npm:26.6.2"], + ["jest-runtime", "npm:26.6.3"], + ["jest-util", "npm:26.6.2"], + ["jest-worker", "npm:26.6.2"], + ["source-map-support", "npm:0.5.19"], + ["throat", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["jest-runtime", [ + ["npm:26.6.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-runtime-npm-26.6.3-bf7a869586-8.zip/node_modules/jest-runtime/", + "packageDependencies": [ + ["jest-runtime", "npm:26.6.3"], + ["@jest/console", "npm:26.6.2"], + ["@jest/environment", "npm:26.6.2"], + ["@jest/fake-timers", "npm:26.6.2"], + ["@jest/globals", "npm:26.6.2"], + ["@jest/source-map", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/transform", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/yargs", "npm:15.0.13"], + ["chalk", "npm:4.1.0"], + ["cjs-module-lexer", "npm:0.6.0"], + ["collect-v8-coverage", "npm:1.0.1"], + ["exit", "npm:0.1.2"], + ["glob", "npm:7.1.6"], + ["graceful-fs", "npm:4.2.4"], + ["jest-config", "virtual:bf7a8695861ccc96c7503a95daba2b038c9b3eca0fc65dc5ea7e5ae0e56354c6c3e3ee05f1c8d4420e3a01abf48ad9e2dea477db48ad56147605b32adf33b489#npm:26.6.3"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-mock", "npm:26.6.2"], + ["jest-regex-util", "npm:26.0.0"], + ["jest-resolve", "npm:26.6.2"], + ["jest-snapshot", "npm:26.6.2"], + ["jest-util", "npm:26.6.2"], + ["jest-validate", "npm:26.6.2"], + ["slash", "npm:3.0.0"], + ["strip-bom", "npm:4.0.0"], + ["yargs", "npm:15.4.1"] + ], + "linkType": "HARD", + }] + ]], + ["jest-serializer", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-serializer-npm-26.6.2-0907990487-8.zip/node_modules/jest-serializer/", + "packageDependencies": [ + ["jest-serializer", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["graceful-fs", "npm:4.2.4"] + ], + "linkType": "HARD", + }] + ]], + ["jest-snapshot", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-snapshot-npm-26.6.2-b91f41a0f2-8.zip/node_modules/jest-snapshot/", + "packageDependencies": [ + ["jest-snapshot", "npm:26.6.2"], + ["@babel/types", "npm:7.12.12"], + ["@jest/types", "npm:26.6.2"], + ["@types/babel__traverse", "npm:7.11.0"], + ["@types/prettier", "npm:2.1.6"], + ["chalk", "npm:4.1.0"], + ["expect", "npm:26.6.2"], + ["graceful-fs", "npm:4.2.4"], + ["jest-diff", "npm:26.6.2"], + ["jest-get-type", "npm:26.3.0"], + ["jest-haste-map", "npm:26.6.2"], + ["jest-matcher-utils", "npm:26.6.2"], + ["jest-message-util", "npm:26.6.2"], + ["jest-resolve", "npm:26.6.2"], + ["natural-compare", "npm:1.4.0"], + ["pretty-format", "npm:26.6.2"], + ["semver", "npm:7.3.4"] + ], + "linkType": "HARD", + }] + ]], + ["jest-util", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-util-npm-26.6.2-28a10c2acf-8.zip/node_modules/jest-util/", + "packageDependencies": [ + ["jest-util", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["chalk", "npm:4.1.0"], + ["graceful-fs", "npm:4.2.4"], + ["is-ci", "npm:2.0.0"], + ["micromatch", "npm:4.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-validate", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-validate-npm-26.6.2-26ab48a006-8.zip/node_modules/jest-validate/", + "packageDependencies": [ + ["jest-validate", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["camelcase", "npm:6.2.0"], + ["chalk", "npm:4.1.0"], + ["jest-get-type", "npm:26.3.0"], + ["leven", "npm:3.1.0"], + ["pretty-format", "npm:26.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["jest-watcher", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-watcher-npm-26.6.2-d4afa66ea5-8.zip/node_modules/jest-watcher/", + "packageDependencies": [ + ["jest-watcher", "npm:26.6.2"], + ["@jest/test-result", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["ansi-escapes", "npm:4.3.1"], + ["chalk", "npm:4.1.0"], + ["jest-util", "npm:26.6.2"], + ["string-length", "npm:4.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["jest-worker", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jest-worker-npm-26.6.2-46cbcd449f-8.zip/node_modules/jest-worker/", + "packageDependencies": [ + ["jest-worker", "npm:26.6.2"], + ["@types/node", "npm:14.14.22"], + ["merge-stream", "npm:2.0.0"], + ["supports-color", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["jju", [ + ["npm:1.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jju-npm-1.4.0-670678eaa3-8.zip/node_modules/jju/", + "packageDependencies": [ + ["jju", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["js-tokens", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/js-tokens-npm-4.0.0-0ac852e9e2-8.zip/node_modules/js-tokens/", + "packageDependencies": [ + ["js-tokens", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["js-yaml", [ + ["npm:3.14.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/js-yaml-npm-3.14.1-b968c6095e-8.zip/node_modules/js-yaml/", + "packageDependencies": [ + ["js-yaml", "npm:3.14.1"], + ["argparse", "npm:1.0.10"], + ["esprima", "npm:4.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["jsbn", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jsbn-npm-0.1.1-0eb7132404-8.zip/node_modules/jsbn/", + "packageDependencies": [ + ["jsbn", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["jsdom", [ + ["npm:16.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jsdom-npm-16.4.0-2745a1cb43-8.zip/node_modules/jsdom/", + "packageDependencies": [ + ["jsdom", "npm:16.4.0"] + ], + "linkType": "SOFT", + }], + ["virtual:defa486869c88441047200a53b3aa18d79743b272095f3ee31b5b7b80b2c93d87f722added867470dcb94104504489a1a89040ea8fd89dffb9cfb1864d4bf54e#npm:16.4.0", { + "packageLocation": "./.yarn/__virtual__/jsdom-virtual-0029c64ced/5/AppData/Local/Yarn/Berry/cache/jsdom-npm-16.4.0-2745a1cb43-8.zip/node_modules/jsdom/", + "packageDependencies": [ + ["jsdom", "virtual:defa486869c88441047200a53b3aa18d79743b272095f3ee31b5b7b80b2c93d87f722added867470dcb94104504489a1a89040ea8fd89dffb9cfb1864d4bf54e#npm:16.4.0"], + ["@types/canvas", null], + ["abab", "npm:2.0.5"], + ["acorn", "npm:7.4.1"], + ["acorn-globals", "npm:6.0.0"], + ["canvas", null], + ["cssom", "npm:0.4.4"], + ["cssstyle", "npm:2.3.0"], + ["data-urls", "npm:2.0.0"], + ["decimal.js", "npm:10.2.1"], + ["domexception", "npm:2.0.1"], + ["escodegen", "npm:1.14.3"], + ["html-encoding-sniffer", "npm:2.0.1"], + ["is-potential-custom-element-name", "npm:1.0.0"], + ["nwsapi", "npm:2.2.0"], + ["parse5", "npm:5.1.1"], + ["request", "npm:2.88.2"], + ["request-promise-native", "virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:1.0.9"], + ["saxes", "npm:5.0.1"], + ["symbol-tree", "npm:3.2.4"], + ["tough-cookie", "npm:3.0.1"], + ["w3c-hr-time", "npm:1.0.2"], + ["w3c-xmlserializer", "npm:2.0.0"], + ["webidl-conversions", "npm:6.1.0"], + ["whatwg-encoding", "npm:1.0.5"], + ["whatwg-mimetype", "npm:2.3.0"], + ["whatwg-url", "npm:8.4.0"], + ["ws", "virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:7.4.2"], + ["xml-name-validator", "npm:3.0.0"] + ], + "packagePeers": [ + "@types/canvas", + "canvas" + ], + "linkType": "HARD", + }] + ]], + ["jsesc", [ + ["npm:2.5.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jsesc-npm-2.5.2-c5acb78804-8.zip/node_modules/jsesc/", + "packageDependencies": [ + ["jsesc", "npm:2.5.2"] + ], + "linkType": "HARD", + }] + ]], + ["json-buffer", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-buffer-npm-3.0.0-21c267a314-8.zip/node_modules/json-buffer/", + "packageDependencies": [ + ["json-buffer", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["json-parse-even-better-errors", [ + ["npm:2.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-parse-even-better-errors-npm-2.3.1-144d62256e-8.zip/node_modules/json-parse-even-better-errors/", + "packageDependencies": [ + ["json-parse-even-better-errors", "npm:2.3.1"] + ], + "linkType": "HARD", + }] + ]], + ["json-schema", [ + ["npm:0.2.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-schema-npm-0.2.3-018ee3dfc9-8.zip/node_modules/json-schema/", + "packageDependencies": [ + ["json-schema", "npm:0.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["json-schema-traverse", [ + ["npm:0.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-schema-traverse-npm-0.4.1-4759091693-8.zip/node_modules/json-schema-traverse/", + "packageDependencies": [ + ["json-schema-traverse", "npm:0.4.1"] + ], + "linkType": "HARD", + }], + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-schema-traverse-npm-1.0.0-fb3684f4f0-8.zip/node_modules/json-schema-traverse/", + "packageDependencies": [ + ["json-schema-traverse", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["json-stable-stringify-without-jsonify", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-stable-stringify-without-jsonify-npm-1.0.1-b65772b28b-8.zip/node_modules/json-stable-stringify-without-jsonify/", + "packageDependencies": [ + ["json-stable-stringify-without-jsonify", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["json-stringify-safe", [ + ["npm:5.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json-stringify-safe-npm-5.0.1-064ddd6ab4-8.zip/node_modules/json-stringify-safe/", + "packageDependencies": [ + ["json-stringify-safe", "npm:5.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["json5", [ + ["npm:2.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/json5-npm-2.1.3-b71ec6bcca-8.zip/node_modules/json5/", + "packageDependencies": [ + ["json5", "npm:2.1.3"], + ["minimist", "npm:1.2.5"] + ], + "linkType": "HARD", + }] + ]], + ["jsonfile", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jsonfile-npm-4.0.0-10ce3aea15-8.zip/node_modules/jsonfile/", + "packageDependencies": [ + ["jsonfile", "npm:4.0.0"], + ["graceful-fs", "npm:4.2.4"] + ], + "linkType": "HARD", + }] + ]], + ["jsprim", [ + ["npm:1.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/jsprim-npm-1.4.1-948d2c9ec3-8.zip/node_modules/jsprim/", + "packageDependencies": [ + ["jsprim", "npm:1.4.1"], + ["assert-plus", "npm:1.0.0"], + ["extsprintf", "npm:1.3.0"], + ["json-schema", "npm:0.2.3"], + ["verror", "npm:1.10.0"] + ], + "linkType": "HARD", + }] + ]], + ["keyv", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/keyv-npm-3.1.0-81c9ff4454-8.zip/node_modules/keyv/", + "packageDependencies": [ + ["keyv", "npm:3.1.0"], + ["json-buffer", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["kind-of", [ + ["npm:3.2.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/kind-of-npm-3.2.2-7deaffa5f9-8.zip/node_modules/kind-of/", + "packageDependencies": [ + ["kind-of", "npm:3.2.2"], + ["is-buffer", "npm:1.1.6"] + ], + "linkType": "HARD", + }], + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/kind-of-npm-4.0.0-69fd153375-8.zip/node_modules/kind-of/", + "packageDependencies": [ + ["kind-of", "npm:4.0.0"], + ["is-buffer", "npm:1.1.6"] + ], + "linkType": "HARD", + }], + ["npm:5.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/kind-of-npm-5.1.0-ce82f43eaa-8.zip/node_modules/kind-of/", + "packageDependencies": [ + ["kind-of", "npm:5.1.0"] + ], + "linkType": "HARD", + }], + ["npm:6.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/kind-of-npm-6.0.3-ab15f36220-8.zip/node_modules/kind-of/", + "packageDependencies": [ + ["kind-of", "npm:6.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["kleur", [ + ["npm:3.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/kleur-npm-3.0.3-f6f53649a4-8.zip/node_modules/kleur/", + "packageDependencies": [ + ["kleur", "npm:3.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["latest-version", [ + ["npm:5.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/latest-version-npm-5.1.0-ddb9b0eb39-8.zip/node_modules/latest-version/", + "packageDependencies": [ + ["latest-version", "npm:5.1.0"], + ["package-json", "npm:6.5.0"] + ], + "linkType": "HARD", + }] + ]], + ["leven", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/leven-npm-3.1.0-b7697736a3-8.zip/node_modules/leven/", + "packageDependencies": [ + ["leven", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["levn", [ + ["npm:0.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/levn-npm-0.3.0-48d774b1c2-8.zip/node_modules/levn/", + "packageDependencies": [ + ["levn", "npm:0.3.0"], + ["prelude-ls", "npm:1.1.2"], + ["type-check", "npm:0.3.2"] + ], + "linkType": "HARD", + }], + ["npm:0.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/levn-npm-0.4.1-d183b2d7bb-8.zip/node_modules/levn/", + "packageDependencies": [ + ["levn", "npm:0.4.1"], + ["prelude-ls", "npm:1.2.1"], + ["type-check", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["lines-and-columns", [ + ["npm:1.1.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lines-and-columns-npm-1.1.6-23e74fab67-8.zip/node_modules/lines-and-columns/", + "packageDependencies": [ + ["lines-and-columns", "npm:1.1.6"] + ], + "linkType": "HARD", + }] + ]], + ["locate-path", [ + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/locate-path-npm-5.0.0-46580c43e4-8.zip/node_modules/locate-path/", + "packageDependencies": [ + ["locate-path", "npm:5.0.0"], + ["p-locate", "npm:4.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["lodash", [ + ["npm:4.17.20", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash-npm-4.17.20-c0db62021c-8.zip/node_modules/lodash/", + "packageDependencies": [ + ["lodash", "npm:4.17.20"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.clonedeep", [ + ["npm:4.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.clonedeep-npm-4.5.0-fbc3cda4e5-8.zip/node_modules/lodash.clonedeep/", + "packageDependencies": [ + ["lodash.clonedeep", "npm:4.5.0"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.get", [ + ["npm:4.4.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.get-npm-4.4.2-7bda64ed87-8.zip/node_modules/lodash.get/", + "packageDependencies": [ + ["lodash.get", "npm:4.4.2"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.isequal", [ + ["npm:4.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.isequal-npm-4.5.0-f8b0f64d63-8.zip/node_modules/lodash.isequal/", + "packageDependencies": [ + ["lodash.isequal", "npm:4.5.0"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.merge", [ + ["npm:4.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.merge-npm-4.6.2-77cb4416bf-8.zip/node_modules/lodash.merge/", + "packageDependencies": [ + ["lodash.merge", "npm:4.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.sortby", [ + ["npm:4.7.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.sortby-npm-4.7.0-fda8ab950d-8.zip/node_modules/lodash.sortby/", + "packageDependencies": [ + ["lodash.sortby", "npm:4.7.0"] + ], + "linkType": "HARD", + }] + ]], + ["lodash.truncate", [ + ["npm:4.4.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lodash.truncate-npm-4.4.2-bc50fe1663-8.zip/node_modules/lodash.truncate/", + "packageDependencies": [ + ["lodash.truncate", "npm:4.4.2"] + ], + "linkType": "HARD", + }] + ]], + ["lowercase-keys", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lowercase-keys-npm-1.0.1-0979e653b8-8.zip/node_modules/lowercase-keys/", + "packageDependencies": [ + ["lowercase-keys", "npm:1.0.1"] + ], + "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lowercase-keys-npm-2.0.0-1876065a32-8.zip/node_modules/lowercase-keys/", + "packageDependencies": [ + ["lowercase-keys", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["lru-cache", [ + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/lru-cache-npm-6.0.0-b4c8668fe1-8.zip/node_modules/lru-cache/", + "packageDependencies": [ + ["lru-cache", "npm:6.0.0"], + ["yallist", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["make-dir", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/make-dir-npm-3.1.0-d1d7505142-8.zip/node_modules/make-dir/", + "packageDependencies": [ + ["make-dir", "npm:3.1.0"], + ["semver", "npm:6.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["make-error", [ + ["npm:1.3.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/make-error-npm-1.3.6-ccb85d9458-8.zip/node_modules/make-error/", + "packageDependencies": [ + ["make-error", "npm:1.3.6"] + ], + "linkType": "HARD", + }] + ]], + ["make-fetch-happen", [ + ["npm:9.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/make-fetch-happen-npm-9.1.0-23184ad7f6-8.zip/node_modules/make-fetch-happen/", + "packageDependencies": [ + ["make-fetch-happen", "npm:9.1.0"], + ["agentkeepalive", "npm:4.1.4"], + ["cacache", "npm:15.3.0"], + ["http-cache-semantics", "npm:4.1.0"], + ["http-proxy-agent", "npm:4.0.1"], + ["https-proxy-agent", "npm:5.0.0"], + ["is-lambda", "npm:1.0.1"], + ["lru-cache", "npm:6.0.0"], + ["minipass", "npm:3.1.5"], + ["minipass-collect", "npm:1.0.2"], + ["minipass-fetch", "npm:1.4.1"], + ["minipass-flush", "npm:1.0.5"], + ["minipass-pipeline", "npm:1.2.4"], + ["negotiator", "npm:0.6.2"], + ["promise-retry", "npm:2.0.1"], + ["socks-proxy-agent", "npm:6.1.0"], + ["ssri", "npm:8.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["makeerror", [ + ["npm:1.0.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/makeerror-npm-1.0.11-f7d070b73c-8.zip/node_modules/makeerror/", + "packageDependencies": [ + ["makeerror", "npm:1.0.11"], + ["tmpl", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["map-cache", [ + ["npm:0.2.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/map-cache-npm-0.2.2-1620199b05-8.zip/node_modules/map-cache/", + "packageDependencies": [ + ["map-cache", "npm:0.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["map-visit", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/map-visit-npm-1.0.0-33a7988a9d-8.zip/node_modules/map-visit/", + "packageDependencies": [ + ["map-visit", "npm:1.0.0"], + ["object-visit", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["merge-stream", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/merge-stream-npm-2.0.0-2ac83efea5-8.zip/node_modules/merge-stream/", + "packageDependencies": [ + ["merge-stream", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["merge2", [ + ["npm:1.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/merge2-npm-1.4.1-a2507bd06c-8.zip/node_modules/merge2/", + "packageDependencies": [ + ["merge2", "npm:1.4.1"] + ], + "linkType": "HARD", + }] + ]], + ["micromatch", [ + ["npm:3.1.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/micromatch-npm-3.1.10-016e80c79d-8.zip/node_modules/micromatch/", + "packageDependencies": [ + ["micromatch", "npm:3.1.10"], + ["arr-diff", "npm:4.0.0"], + ["array-unique", "npm:0.3.2"], + ["braces", "npm:2.3.2"], + ["define-property", "npm:2.0.2"], + ["extend-shallow", "npm:3.0.2"], + ["extglob", "npm:2.0.4"], + ["fragment-cache", "npm:0.2.1"], + ["kind-of", "npm:6.0.3"], + ["nanomatch", "npm:1.2.13"], + ["object.pick", "npm:1.3.0"], + ["regex-not", "npm:1.0.2"], + ["snapdragon", "npm:0.8.2"], + ["to-regex", "npm:3.0.2"] + ], + "linkType": "HARD", + }], + ["npm:4.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/micromatch-npm-4.0.2-f059c00e51-8.zip/node_modules/micromatch/", + "packageDependencies": [ + ["micromatch", "npm:4.0.2"], + ["braces", "npm:3.0.2"], + ["picomatch", "npm:2.2.2"] + ], + "linkType": "HARD", + }], + ["npm:4.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/micromatch-npm-4.0.4-9fdcbb7a0e-8.zip/node_modules/micromatch/", + "packageDependencies": [ + ["micromatch", "npm:4.0.4"], + ["braces", "npm:3.0.2"], + ["picomatch", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["mime-db", [ + ["npm:1.45.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mime-db-npm-1.45.0-f3709f033e-8.zip/node_modules/mime-db/", + "packageDependencies": [ + ["mime-db", "npm:1.45.0"] + ], + "linkType": "HARD", + }] + ]], + ["mime-types", [ + ["npm:2.1.28", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mime-types-npm-2.1.28-1181d51bb6-8.zip/node_modules/mime-types/", + "packageDependencies": [ + ["mime-types", "npm:2.1.28"], + ["mime-db", "npm:1.45.0"] + ], + "linkType": "HARD", + }] + ]], + ["mimic-fn", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mimic-fn-npm-2.1.0-4fbeb3abb4-8.zip/node_modules/mimic-fn/", + "packageDependencies": [ + ["mimic-fn", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["mimic-response", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mimic-response-npm-1.0.1-f6f85dde84-8.zip/node_modules/mimic-response/", + "packageDependencies": [ + ["mimic-response", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["minimatch", [ + ["npm:3.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minimatch-npm-3.0.4-6e76f51c23-8.zip/node_modules/minimatch/", + "packageDependencies": [ + ["minimatch", "npm:3.0.4"], + ["brace-expansion", "npm:1.1.11"] + ], + "linkType": "HARD", + }] + ]], + ["minimist", [ + ["npm:1.2.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minimist-npm-1.2.5-ced0e1f617-8.zip/node_modules/minimist/", + "packageDependencies": [ + ["minimist", "npm:1.2.5"] + ], + "linkType": "HARD", + }] + ]], + ["minipass", [ + ["npm:3.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-npm-3.1.5-63d27aa1b8-8.zip/node_modules/minipass/", + "packageDependencies": [ + ["minipass", "npm:3.1.5"], + ["yallist", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["minipass-collect", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-collect-npm-1.0.2-3b4676eab5-8.zip/node_modules/minipass-collect/", + "packageDependencies": [ + ["minipass-collect", "npm:1.0.2"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["minipass-fetch", [ + ["npm:1.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-fetch-npm-1.4.1-2d67357feb-8.zip/node_modules/minipass-fetch/", + "packageDependencies": [ + ["minipass-fetch", "npm:1.4.1"], + ["encoding", "npm:0.1.13"], + ["minipass", "npm:3.1.5"], + ["minipass-sized", "npm:1.0.3"], + ["minizlib", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["minipass-flush", [ + ["npm:1.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-flush-npm-1.0.5-efe79d9826-8.zip/node_modules/minipass-flush/", + "packageDependencies": [ + ["minipass-flush", "npm:1.0.5"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["minipass-pipeline", [ + ["npm:1.2.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-pipeline-npm-1.2.4-5924cb077f-8.zip/node_modules/minipass-pipeline/", + "packageDependencies": [ + ["minipass-pipeline", "npm:1.2.4"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["minipass-sized", [ + ["npm:1.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minipass-sized-npm-1.0.3-306d86f432-8.zip/node_modules/minipass-sized/", + "packageDependencies": [ + ["minipass-sized", "npm:1.0.3"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["minizlib", [ + ["npm:2.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/minizlib-npm-2.1.2-ea89cd0cfb-8.zip/node_modules/minizlib/", + "packageDependencies": [ + ["minizlib", "npm:2.1.2"], + ["minipass", "npm:3.1.5"], + ["yallist", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["mixin-deep", [ + ["npm:1.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mixin-deep-npm-1.3.2-29b528e571-8.zip/node_modules/mixin-deep/", + "packageDependencies": [ + ["mixin-deep", "npm:1.3.2"], + ["for-in", "npm:1.0.2"], + ["is-extendable", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["mkdirp", [ + ["npm:1.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/mkdirp-npm-1.0.4-37f6ef56b9-8.zip/node_modules/mkdirp/", + "packageDependencies": [ + ["mkdirp", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["ms", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ms-npm-2.0.0-9e1101a471-8.zip/node_modules/ms/", + "packageDependencies": [ + ["ms", "npm:2.0.0"] + ], + "linkType": "HARD", + }], + ["npm:2.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ms-npm-2.1.2-ec0c1512ff-8.zip/node_modules/ms/", + "packageDependencies": [ + ["ms", "npm:2.1.2"] + ], + "linkType": "HARD", + }], + ["npm:2.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ms-npm-2.1.3-81ff3cfac1-8.zip/node_modules/ms/", + "packageDependencies": [ + ["ms", "npm:2.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["nanomatch", [ + ["npm:1.2.13", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/nanomatch-npm-1.2.13-bc9173dbe7-8.zip/node_modules/nanomatch/", + "packageDependencies": [ + ["nanomatch", "npm:1.2.13"], + ["arr-diff", "npm:4.0.0"], + ["array-unique", "npm:0.3.2"], + ["define-property", "npm:2.0.2"], + ["extend-shallow", "npm:3.0.2"], + ["fragment-cache", "npm:0.2.1"], + ["is-windows", "npm:1.0.2"], + ["kind-of", "npm:6.0.3"], + ["object.pick", "npm:1.3.0"], + ["regex-not", "npm:1.0.2"], + ["snapdragon", "npm:0.8.2"], + ["to-regex", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["natural-compare", [ + ["npm:1.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/natural-compare-npm-1.4.0-97b75b362d-8.zip/node_modules/natural-compare/", + "packageDependencies": [ + ["natural-compare", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["negotiator", [ + ["npm:0.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/negotiator-npm-0.6.2-ba538e167a-8.zip/node_modules/negotiator/", + "packageDependencies": [ + ["negotiator", "npm:0.6.2"] + ], + "linkType": "HARD", + }] + ]], + ["nice-try", [ + ["npm:1.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/nice-try-npm-1.0.5-963856b16f-8.zip/node_modules/nice-try/", + "packageDependencies": [ + ["nice-try", "npm:1.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["node-gyp", [ + ["npm:8.3.0", { + "packageLocation": "./.yarn/unplugged/node-gyp-npm-8.3.0-11e93b166f/node_modules/node-gyp/", + "packageDependencies": [ + ["node-gyp", "npm:8.3.0"], + ["env-paths", "npm:2.2.1"], + ["glob", "npm:7.1.6"], + ["graceful-fs", "npm:4.2.8"], + ["make-fetch-happen", "npm:9.1.0"], + ["nopt", "npm:5.0.0"], + ["npmlog", "npm:4.1.2"], + ["rimraf", "npm:3.0.2"], + ["semver", "npm:7.3.5"], + ["tar", "npm:6.1.11"], + ["which", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["node-int64", [ + ["npm:0.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/node-int64-npm-0.4.0-0dc04ec3b2-8.zip/node_modules/node-int64/", + "packageDependencies": [ + ["node-int64", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["node-modules-regexp", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/node-modules-regexp-npm-1.0.0-2f5f5ba9c6-8.zip/node_modules/node-modules-regexp/", + "packageDependencies": [ + ["node-modules-regexp", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["node-notifier", [ + ["npm:8.0.1", { + "packageLocation": "./.yarn/unplugged/node-notifier-npm-8.0.1-73aeb2995e/node_modules/node-notifier/", + "packageDependencies": [ + ["node-notifier", "npm:8.0.1"], + ["growly", "npm:1.3.0"], + ["is-wsl", "npm:2.2.0"], + ["semver", "npm:7.3.4"], + ["shellwords", "npm:0.1.1"], + ["uuid", "npm:8.3.2"], + ["which", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["nodemon", [ + ["npm:2.0.6", { + "packageLocation": "./.yarn/unplugged/nodemon-npm-2.0.6-533efccfd9/node_modules/nodemon/", + "packageDependencies": [ + ["nodemon", "npm:2.0.6"], + ["chokidar", "npm:3.4.3"], + ["debug", "virtual:533efccfd94682ecd466a58a5f392b34e0de4de31de9a671dc1fdefb92cdeea2750e4cdb6545c5f712ce24980c3d89f1ed4a11fbbcb3f8d8c94c44ea70d21f60#npm:3.2.6"], + ["ignore-by-default", "npm:1.0.1"], + ["minimatch", "npm:3.0.4"], + ["pstree.remy", "npm:1.1.8"], + ["semver", "npm:5.7.1"], + ["supports-color", "npm:5.5.0"], + ["touch", "npm:3.1.0"], + ["undefsafe", "npm:2.0.3"], + ["update-notifier", "npm:4.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["nopt", [ + ["npm:1.0.10", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/nopt-npm-1.0.10-f3db192976-8.zip/node_modules/nopt/", + "packageDependencies": [ + ["nopt", "npm:1.0.10"], + ["abbrev", "npm:1.1.1"] + ], + "linkType": "HARD", + }], + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/nopt-npm-5.0.0-304b40fbfe-8.zip/node_modules/nopt/", + "packageDependencies": [ + ["nopt", "npm:5.0.0"], + ["abbrev", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["normalize-package-data", [ + ["npm:2.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/normalize-package-data-npm-2.5.0-af0345deed-8.zip/node_modules/normalize-package-data/", + "packageDependencies": [ + ["normalize-package-data", "npm:2.5.0"], + ["hosted-git-info", "npm:2.8.8"], + ["resolve", "patch:resolve@npm%3A1.19.0#~builtin::version=1.19.0&hash=07638b"], + ["semver", "npm:5.7.1"], + ["validate-npm-package-license", "npm:3.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["normalize-path", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/normalize-path-npm-2.1.1-65c4766716-8.zip/node_modules/normalize-path/", + "packageDependencies": [ + ["normalize-path", "npm:2.1.1"], + ["remove-trailing-separator", "npm:1.1.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/normalize-path-npm-3.0.0-658ba7d77f-8.zip/node_modules/normalize-path/", + "packageDependencies": [ + ["normalize-path", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["normalize-url", [ + ["npm:4.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/normalize-url-npm-4.5.0-14a0c5430f-8.zip/node_modules/normalize-url/", + "packageDependencies": [ + ["normalize-url", "npm:4.5.0"] + ], + "linkType": "HARD", + }] + ]], + ["npm-run-path", [ + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/npm-run-path-npm-2.0.2-96c8b48857-8.zip/node_modules/npm-run-path/", + "packageDependencies": [ + ["npm-run-path", "npm:2.0.2"], + ["path-key", "npm:2.0.1"] + ], + "linkType": "HARD", + }], + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/npm-run-path-npm-4.0.1-7aebd8bab3-8.zip/node_modules/npm-run-path/", + "packageDependencies": [ + ["npm-run-path", "npm:4.0.1"], + ["path-key", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["npmlog", [ + ["npm:4.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/npmlog-npm-4.1.2-cfb32957b5-8.zip/node_modules/npmlog/", + "packageDependencies": [ + ["npmlog", "npm:4.1.2"], + ["are-we-there-yet", "npm:1.1.7"], + ["console-control-strings", "npm:1.1.0"], + ["gauge", "npm:2.7.4"], + ["set-blocking", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["number-is-nan", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/number-is-nan-npm-1.0.1-845325a0fe-8.zip/node_modules/number-is-nan/", + "packageDependencies": [ + ["number-is-nan", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["nwsapi", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/nwsapi-npm-2.2.0-8f05590043-8.zip/node_modules/nwsapi/", + "packageDependencies": [ + ["nwsapi", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["oauth-sign", [ + ["npm:0.9.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/oauth-sign-npm-0.9.0-7aa9422221-8.zip/node_modules/oauth-sign/", + "packageDependencies": [ + ["oauth-sign", "npm:0.9.0"] + ], + "linkType": "HARD", + }] + ]], + ["object-assign", [ + ["npm:4.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/object-assign-npm-4.1.1-1004ad6dec-8.zip/node_modules/object-assign/", + "packageDependencies": [ + ["object-assign", "npm:4.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["object-copy", [ + ["npm:0.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/object-copy-npm-0.1.0-e229d02f2b-8.zip/node_modules/object-copy/", + "packageDependencies": [ + ["object-copy", "npm:0.1.0"], + ["copy-descriptor", "npm:0.1.1"], + ["define-property", "npm:0.2.5"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["object-visit", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/object-visit-npm-1.0.1-c5c9057c24-8.zip/node_modules/object-visit/", + "packageDependencies": [ + ["object-visit", "npm:1.0.1"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["object.pick", [ + ["npm:1.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/object.pick-npm-1.3.0-dad8eae8fb-8.zip/node_modules/object.pick/", + "packageDependencies": [ + ["object.pick", "npm:1.3.0"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["once", [ + ["npm:1.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/once-npm-1.4.0-ccf03ef07a-8.zip/node_modules/once/", + "packageDependencies": [ + ["once", "npm:1.4.0"], + ["wrappy", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["onetime", [ + ["npm:5.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/onetime-npm-5.1.2-3ed148fa42-8.zip/node_modules/onetime/", + "packageDependencies": [ + ["onetime", "npm:5.1.2"], + ["mimic-fn", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["optionator", [ + ["npm:0.8.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/optionator-npm-0.8.3-bc555bc5b7-8.zip/node_modules/optionator/", + "packageDependencies": [ + ["optionator", "npm:0.8.3"], + ["deep-is", "npm:0.1.3"], + ["fast-levenshtein", "npm:2.0.6"], + ["levn", "npm:0.3.0"], + ["prelude-ls", "npm:1.1.2"], + ["type-check", "npm:0.3.2"], + ["word-wrap", "npm:1.2.3"] + ], + "linkType": "HARD", + }], + ["npm:0.9.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/optionator-npm-0.9.1-577e397aae-8.zip/node_modules/optionator/", + "packageDependencies": [ + ["optionator", "npm:0.9.1"], + ["deep-is", "npm:0.1.3"], + ["fast-levenshtein", "npm:2.0.6"], + ["levn", "npm:0.4.1"], + ["prelude-ls", "npm:1.2.1"], + ["type-check", "npm:0.4.0"], + ["word-wrap", "npm:1.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["p-cancelable", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-cancelable-npm-1.1.0-d147d5996f-8.zip/node_modules/p-cancelable/", + "packageDependencies": [ + ["p-cancelable", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-each-series", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-each-series-npm-2.2.0-b9907a1ae6-8.zip/node_modules/p-each-series/", + "packageDependencies": [ + ["p-each-series", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-finally", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-finally-npm-1.0.0-35fbaa57c6-8.zip/node_modules/p-finally/", + "packageDependencies": [ + ["p-finally", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-limit", [ + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-limit-npm-2.3.0-94a0310039-8.zip/node_modules/p-limit/", + "packageDependencies": [ + ["p-limit", "npm:2.3.0"], + ["p-try", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-locate", [ + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-locate-npm-4.1.0-eec6872537-8.zip/node_modules/p-locate/", + "packageDependencies": [ + ["p-locate", "npm:4.1.0"], + ["p-limit", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-map", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-map-npm-4.0.0-4677ae07c7-8.zip/node_modules/p-map/", + "packageDependencies": [ + ["p-map", "npm:4.0.0"], + ["aggregate-error", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["p-try", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/p-try-npm-2.2.0-e0390dbaf8-8.zip/node_modules/p-try/", + "packageDependencies": [ + ["p-try", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["package-json", [ + ["npm:6.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/package-json-npm-6.5.0-30e58237bb-8.zip/node_modules/package-json/", + "packageDependencies": [ + ["package-json", "npm:6.5.0"], + ["got", "npm:9.6.0"], + ["registry-auth-token", "npm:4.2.1"], + ["registry-url", "npm:5.1.0"], + ["semver", "npm:6.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["parent-module", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/parent-module-npm-1.0.1-1fae11b095-8.zip/node_modules/parent-module/", + "packageDependencies": [ + ["parent-module", "npm:1.0.1"], + ["callsites", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["parse-json", [ + ["npm:5.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/parse-json-npm-5.2.0-00a63b1199-8.zip/node_modules/parse-json/", + "packageDependencies": [ + ["parse-json", "npm:5.2.0"], + ["@babel/code-frame", "npm:7.12.11"], + ["error-ex", "npm:1.3.2"], + ["json-parse-even-better-errors", "npm:2.3.1"], + ["lines-and-columns", "npm:1.1.6"] + ], + "linkType": "HARD", + }] + ]], + ["parse5", [ + ["npm:5.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/parse5-npm-5.1.1-8e63d82cff-8.zip/node_modules/parse5/", + "packageDependencies": [ + ["parse5", "npm:5.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["pascalcase", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pascalcase-npm-0.1.1-d04964fcda-8.zip/node_modules/pascalcase/", + "packageDependencies": [ + ["pascalcase", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["path-exists", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-exists-npm-4.0.0-e9e4f63eb0-8.zip/node_modules/path-exists/", + "packageDependencies": [ + ["path-exists", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["path-is-absolute", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-is-absolute-npm-1.0.1-31bc695ffd-8.zip/node_modules/path-is-absolute/", + "packageDependencies": [ + ["path-is-absolute", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["path-key", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-key-npm-2.0.1-b1a971833d-8.zip/node_modules/path-key/", + "packageDependencies": [ + ["path-key", "npm:2.0.1"] + ], + "linkType": "HARD", + }], + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-key-npm-3.1.1-0e66ea8321-8.zip/node_modules/path-key/", + "packageDependencies": [ + ["path-key", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["path-parse", [ + ["npm:1.0.6", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-parse-npm-1.0.6-4a4c90546c-8.zip/node_modules/path-parse/", + "packageDependencies": [ + ["path-parse", "npm:1.0.6"] + ], + "linkType": "HARD", + }] + ]], + ["path-type", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/path-type-npm-4.0.0-10d47fc86a-8.zip/node_modules/path-type/", + "packageDependencies": [ + ["path-type", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["performance-now", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/performance-now-npm-2.1.0-45e3ce7e49-8.zip/node_modules/performance-now/", + "packageDependencies": [ + ["performance-now", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["picomatch", [ + ["npm:2.2.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/picomatch-npm-2.2.2-1ce736a913-8.zip/node_modules/picomatch/", + "packageDependencies": [ + ["picomatch", "npm:2.2.2"] + ], + "linkType": "HARD", + }], + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/picomatch-npm-2.3.0-5e60e6c82d-8.zip/node_modules/picomatch/", + "packageDependencies": [ + ["picomatch", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["pirates", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pirates-npm-4.0.1-377058e8fc-8.zip/node_modules/pirates/", + "packageDependencies": [ + ["pirates", "npm:4.0.1"], + ["node-modules-regexp", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["pkg-dir", [ + ["npm:4.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pkg-dir-npm-4.2.0-2b5d0a8d32-8.zip/node_modules/pkg-dir/", + "packageDependencies": [ + ["pkg-dir", "npm:4.2.0"], + ["find-up", "npm:4.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["posix-character-classes", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/posix-character-classes-npm-0.1.1-3e228a6e15-8.zip/node_modules/posix-character-classes/", + "packageDependencies": [ + ["posix-character-classes", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["prelude-ls", [ + ["npm:1.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/prelude-ls-npm-1.1.2-a0daac0886-8.zip/node_modules/prelude-ls/", + "packageDependencies": [ + ["prelude-ls", "npm:1.1.2"] + ], + "linkType": "HARD", + }], + ["npm:1.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/prelude-ls-npm-1.2.1-3e4d272a55-8.zip/node_modules/prelude-ls/", + "packageDependencies": [ + ["prelude-ls", "npm:1.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["prepend-http", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/prepend-http-npm-2.0.0-e1fc4332f2-8.zip/node_modules/prepend-http/", + "packageDependencies": [ + ["prepend-http", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["pretty-format", [ + ["npm:26.6.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pretty-format-npm-26.6.2-6edfcf7149-8.zip/node_modules/pretty-format/", + "packageDependencies": [ + ["pretty-format", "npm:26.6.2"], + ["@jest/types", "npm:26.6.2"], + ["ansi-regex", "npm:5.0.0"], + ["ansi-styles", "npm:4.3.0"], + ["react-is", "npm:17.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["process-nextick-args", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/process-nextick-args-npm-2.0.1-b8d7971609-8.zip/node_modules/process-nextick-args/", + "packageDependencies": [ + ["process-nextick-args", "npm:2.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["progress", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/progress-npm-2.0.3-d1f87e2ac6-8.zip/node_modules/progress/", + "packageDependencies": [ + ["progress", "npm:2.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["promise-inflight", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/promise-inflight-npm-1.0.1-5bb925afac-8.zip/node_modules/promise-inflight/", + "packageDependencies": [ + ["promise-inflight", "npm:1.0.1"] + ], + "linkType": "SOFT", + }], + ["virtual:a7e5239c6ae68bf6359adfd3598326db000e94dbb349bc00a3852ed53a31712a0e2e787228c6e859d3e5cf2fbb872aba1ea4abe4995cef8086a77ef619ae1be6#npm:1.0.1", { + "packageLocation": "./.yarn/__virtual__/promise-inflight-virtual-b427a57c8f/5/AppData/Local/Yarn/Berry/cache/promise-inflight-npm-1.0.1-5bb925afac-8.zip/node_modules/promise-inflight/", + "packageDependencies": [ + ["promise-inflight", "virtual:a7e5239c6ae68bf6359adfd3598326db000e94dbb349bc00a3852ed53a31712a0e2e787228c6e859d3e5cf2fbb872aba1ea4abe4995cef8086a77ef619ae1be6#npm:1.0.1"], + ["@types/bluebird", null], + ["bluebird", null] + ], + "packagePeers": [ + "@types/bluebird", + "bluebird" + ], + "linkType": "HARD", + }] + ]], + ["promise-retry", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/promise-retry-npm-2.0.1-871f0b01b7-8.zip/node_modules/promise-retry/", + "packageDependencies": [ + ["promise-retry", "npm:2.0.1"], + ["err-code", "npm:2.0.3"], + ["retry", "npm:0.12.0"] + ], + "linkType": "HARD", + }] + ]], + ["prompts", [ + ["npm:2.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/prompts-npm-2.4.0-44f1e10a9a-8.zip/node_modules/prompts/", + "packageDependencies": [ + ["prompts", "npm:2.4.0"], + ["kleur", "npm:3.0.3"], + ["sisteransi", "npm:1.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["psl", [ + ["npm:1.8.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/psl-npm-1.8.0-226099d70e-8.zip/node_modules/psl/", + "packageDependencies": [ + ["psl", "npm:1.8.0"] + ], + "linkType": "HARD", + }] + ]], + ["pstree.remy", [ + ["npm:1.1.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pstree.remy-npm-1.1.8-2dd5d55de2-8.zip/node_modules/pstree.remy/", + "packageDependencies": [ + ["pstree.remy", "npm:1.1.8"] + ], + "linkType": "HARD", + }] + ]], + ["pump", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pump-npm-3.0.0-0080bf6a7a-8.zip/node_modules/pump/", + "packageDependencies": [ + ["pump", "npm:3.0.0"], + ["end-of-stream", "npm:1.4.4"], + ["once", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["punycode", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/punycode-npm-2.1.1-26eb3e15cf-8.zip/node_modules/punycode/", + "packageDependencies": [ + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["pupa", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/pupa-npm-2.1.1-fb256825ba-8.zip/node_modules/pupa/", + "packageDependencies": [ + ["pupa", "npm:2.1.1"], + ["escape-goat", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["qs", [ + ["npm:6.5.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/qs-npm-6.5.2-dbf9d8386b-8.zip/node_modules/qs/", + "packageDependencies": [ + ["qs", "npm:6.5.2"] + ], + "linkType": "HARD", + }] + ]], + ["queue-microtask", [ + ["npm:1.2.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/queue-microtask-npm-1.2.3-fcc98e4e2d-8.zip/node_modules/queue-microtask/", + "packageDependencies": [ + ["queue-microtask", "npm:1.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["rc", [ + ["npm:1.2.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/rc-npm-1.2.8-d6768ac936-8.zip/node_modules/rc/", + "packageDependencies": [ + ["rc", "npm:1.2.8"], + ["deep-extend", "npm:0.6.0"], + ["ini", "npm:1.3.8"], + ["minimist", "npm:1.2.5"], + ["strip-json-comments", "npm:2.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["react-is", [ + ["npm:17.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/react-is-npm-17.0.1-876b80f7e5-8.zip/node_modules/react-is/", + "packageDependencies": [ + ["react-is", "npm:17.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["read-pkg", [ + ["npm:5.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/read-pkg-npm-5.2.0-50426bd8dc-8.zip/node_modules/read-pkg/", + "packageDependencies": [ + ["read-pkg", "npm:5.2.0"], + ["@types/normalize-package-data", "npm:2.4.0"], + ["normalize-package-data", "npm:2.5.0"], + ["parse-json", "npm:5.2.0"], + ["type-fest", "npm:0.6.0"] + ], + "linkType": "HARD", + }] + ]], + ["read-pkg-up", [ + ["npm:7.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/read-pkg-up-npm-7.0.1-11895bed9a-8.zip/node_modules/read-pkg-up/", + "packageDependencies": [ + ["read-pkg-up", "npm:7.0.1"], + ["find-up", "npm:4.1.0"], + ["read-pkg", "npm:5.2.0"], + ["type-fest", "npm:0.8.1"] + ], + "linkType": "HARD", + }] + ]], + ["readable-stream", [ + ["npm:2.3.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/readable-stream-npm-2.3.7-77b22a9818-8.zip/node_modules/readable-stream/", + "packageDependencies": [ + ["readable-stream", "npm:2.3.7"], + ["core-util-is", "npm:1.0.3"], + ["inherits", "npm:2.0.4"], + ["isarray", "npm:1.0.0"], + ["process-nextick-args", "npm:2.0.1"], + ["safe-buffer", "npm:5.1.2"], + ["string_decoder", "npm:1.1.1"], + ["util-deprecate", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["readdirp", [ + ["npm:3.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/readdirp-npm-3.5.0-a1b1568d32-8.zip/node_modules/readdirp/", + "packageDependencies": [ + ["readdirp", "npm:3.5.0"], + ["picomatch", "npm:2.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["regex-not", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/regex-not-npm-1.0.2-06a03c9206-8.zip/node_modules/regex-not/", + "packageDependencies": [ + ["regex-not", "npm:1.0.2"], + ["extend-shallow", "npm:3.0.2"], + ["safe-regex", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["regexpp", [ + ["npm:3.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/regexpp-npm-3.2.0-2513f32cfc-8.zip/node_modules/regexpp/", + "packageDependencies": [ + ["regexpp", "npm:3.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["registry-auth-token", [ + ["npm:4.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/registry-auth-token-npm-4.2.1-200e2be697-8.zip/node_modules/registry-auth-token/", + "packageDependencies": [ + ["registry-auth-token", "npm:4.2.1"], + ["rc", "npm:1.2.8"] + ], + "linkType": "HARD", + }] + ]], + ["registry-url", [ + ["npm:5.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/registry-url-npm-5.1.0-f58d0ca7ff-8.zip/node_modules/registry-url/", + "packageDependencies": [ + ["registry-url", "npm:5.1.0"], + ["rc", "npm:1.2.8"] + ], + "linkType": "HARD", + }] + ]], + ["remove-trailing-separator", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/remove-trailing-separator-npm-1.1.0-16d7231316-8.zip/node_modules/remove-trailing-separator/", + "packageDependencies": [ + ["remove-trailing-separator", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["repeat-element", [ + ["npm:1.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/repeat-element-npm-1.1.3-a9dee226b4-8.zip/node_modules/repeat-element/", + "packageDependencies": [ + ["repeat-element", "npm:1.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["repeat-string", [ + ["npm:1.6.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/repeat-string-npm-1.6.1-bc8e388655-8.zip/node_modules/repeat-string/", + "packageDependencies": [ + ["repeat-string", "npm:1.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["request", [ + ["npm:2.88.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/request-npm-2.88.2-f4a57c72c4-8.zip/node_modules/request/", + "packageDependencies": [ + ["request", "npm:2.88.2"], + ["aws-sign2", "npm:0.7.0"], + ["aws4", "npm:1.11.0"], + ["caseless", "npm:0.12.0"], + ["combined-stream", "npm:1.0.8"], + ["extend", "npm:3.0.2"], + ["forever-agent", "npm:0.6.1"], + ["form-data", "npm:2.3.3"], + ["har-validator", "npm:5.1.5"], + ["http-signature", "npm:1.2.0"], + ["is-typedarray", "npm:1.0.0"], + ["isstream", "npm:0.1.2"], + ["json-stringify-safe", "npm:5.0.1"], + ["mime-types", "npm:2.1.28"], + ["oauth-sign", "npm:0.9.0"], + ["performance-now", "npm:2.1.0"], + ["qs", "npm:6.5.2"], + ["safe-buffer", "npm:5.2.1"], + ["tough-cookie", "npm:2.5.0"], + ["tunnel-agent", "npm:0.6.0"], + ["uuid", "npm:3.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["request-promise-core", [ + ["npm:1.1.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/request-promise-core-npm-1.1.4-cb9fff6c90-8.zip/node_modules/request-promise-core/", + "packageDependencies": [ + ["request-promise-core", "npm:1.1.4"] + ], + "linkType": "SOFT", + }], + ["virtual:48c169dfbc5a20d482f6f53981d833171684cd2526b8af843d2d7920648dd2b6d6a5b397ca0d4752f7a67ecf52b6f6a45eeb4cdd147c8c5ff574670fde8eb1b8#npm:1.1.4", { + "packageLocation": "./.yarn/__virtual__/request-promise-core-virtual-c4061191c8/5/AppData/Local/Yarn/Berry/cache/request-promise-core-npm-1.1.4-cb9fff6c90-8.zip/node_modules/request-promise-core/", + "packageDependencies": [ + ["request-promise-core", "virtual:48c169dfbc5a20d482f6f53981d833171684cd2526b8af843d2d7920648dd2b6d6a5b397ca0d4752f7a67ecf52b6f6a45eeb4cdd147c8c5ff574670fde8eb1b8#npm:1.1.4"], + ["@types/request", null], + ["lodash", "npm:4.17.20"], + ["request", "npm:2.88.2"] + ], + "packagePeers": [ + "@types/request", + "request" + ], + "linkType": "HARD", + }] + ]], + ["request-promise-native", [ + ["npm:1.0.9", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/request-promise-native-npm-1.0.9-6ae8e592e8-8.zip/node_modules/request-promise-native/", + "packageDependencies": [ + ["request-promise-native", "npm:1.0.9"] + ], + "linkType": "SOFT", + }], + ["virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:1.0.9", { + "packageLocation": "./.yarn/__virtual__/request-promise-native-virtual-48c169dfbc/5/AppData/Local/Yarn/Berry/cache/request-promise-native-npm-1.0.9-6ae8e592e8-8.zip/node_modules/request-promise-native/", + "packageDependencies": [ + ["request-promise-native", "virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:1.0.9"], + ["@types/request", null], + ["request", "npm:2.88.2"], + ["request-promise-core", "virtual:48c169dfbc5a20d482f6f53981d833171684cd2526b8af843d2d7920648dd2b6d6a5b397ca0d4752f7a67ecf52b6f6a45eeb4cdd147c8c5ff574670fde8eb1b8#npm:1.1.4"], + ["stealthy-require", "npm:1.1.1"], + ["tough-cookie", "npm:2.5.0"] + ], + "packagePeers": [ + "@types/request", + "request" + ], + "linkType": "HARD", + }] + ]], + ["require-directory", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/require-directory-npm-2.1.1-8608aee50b-8.zip/node_modules/require-directory/", + "packageDependencies": [ + ["require-directory", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["require-from-string", [ + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/require-from-string-npm-2.0.2-8557e0db12-8.zip/node_modules/require-from-string/", + "packageDependencies": [ + ["require-from-string", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["require-main-filename", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/require-main-filename-npm-2.0.0-03eef65c84-8.zip/node_modules/require-main-filename/", + "packageDependencies": [ + ["require-main-filename", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["resolve", [ + ["patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-patch-3775f38cdc-8.zip/node_modules/resolve/", + "packageDependencies": [ + ["resolve", "patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b"], + ["path-parse", "npm:1.0.6"] + ], + "linkType": "HARD", + }], + ["patch:resolve@npm%3A1.19.0#~builtin::version=1.19.0&hash=07638b", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-patch-b5bfe46717-8.zip/node_modules/resolve/", + "packageDependencies": [ + ["resolve", "patch:resolve@npm%3A1.19.0#~builtin::version=1.19.0&hash=07638b"], + ["is-core-module", "npm:2.2.0"], + ["path-parse", "npm:1.0.6"] + ], + "linkType": "HARD", + }] + ]], + ["resolve-cwd", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-cwd-npm-3.0.0-e6f4e296bf-8.zip/node_modules/resolve-cwd/", + "packageDependencies": [ + ["resolve-cwd", "npm:3.0.0"], + ["resolve-from", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["resolve-from", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-from-npm-4.0.0-f758ec21bf-8.zip/node_modules/resolve-from/", + "packageDependencies": [ + ["resolve-from", "npm:4.0.0"] + ], + "linkType": "HARD", + }], + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-from-npm-5.0.0-15c9db4d33-8.zip/node_modules/resolve-from/", + "packageDependencies": [ + ["resolve-from", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["resolve-url", [ + ["npm:0.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/resolve-url-npm-0.2.1-39edb8f908-8.zip/node_modules/resolve-url/", + "packageDependencies": [ + ["resolve-url", "npm:0.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["responselike", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/responselike-npm-1.0.2-d0bf50cde4-8.zip/node_modules/responselike/", + "packageDependencies": [ + ["responselike", "npm:1.0.2"], + ["lowercase-keys", "npm:1.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["ret", [ + ["npm:0.1.15", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ret-npm-0.1.15-0d3c19de76-8.zip/node_modules/ret/", + "packageDependencies": [ + ["ret", "npm:0.1.15"] + ], + "linkType": "HARD", + }] + ]], + ["retry", [ + ["npm:0.12.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/retry-npm-0.12.0-72ac7fb4cc-8.zip/node_modules/retry/", + "packageDependencies": [ + ["retry", "npm:0.12.0"] + ], + "linkType": "HARD", + }] + ]], + ["reusify", [ + ["npm:1.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/reusify-npm-1.0.4-95ac4aec11-8.zip/node_modules/reusify/", + "packageDependencies": [ + ["reusify", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["rimraf", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/rimraf-npm-3.0.2-2cb7dac69a-8.zip/node_modules/rimraf/", + "packageDependencies": [ + ["rimraf", "npm:3.0.2"], + ["glob", "npm:7.1.6"] + ], + "linkType": "HARD", + }] + ]], + ["rsvp", [ + ["npm:4.8.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/rsvp-npm-4.8.5-09f3c6ed40-8.zip/node_modules/rsvp/", + "packageDependencies": [ + ["rsvp", "npm:4.8.5"] + ], + "linkType": "HARD", + }] + ]], + ["run-parallel", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/run-parallel-npm-1.2.0-3f47ff2034-8.zip/node_modules/run-parallel/", + "packageDependencies": [ + ["run-parallel", "npm:1.2.0"], + ["queue-microtask", "npm:1.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["safe-buffer", [ + ["npm:5.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/safe-buffer-npm-5.1.2-c27fedf6c4-8.zip/node_modules/safe-buffer/", + "packageDependencies": [ + ["safe-buffer", "npm:5.1.2"] + ], + "linkType": "HARD", + }], + ["npm:5.2.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/safe-buffer-npm-5.2.1-3481c8aa9b-8.zip/node_modules/safe-buffer/", + "packageDependencies": [ + ["safe-buffer", "npm:5.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["safe-regex", [ + ["npm:1.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/safe-regex-npm-1.1.0-a908e8515c-8.zip/node_modules/safe-regex/", + "packageDependencies": [ + ["safe-regex", "npm:1.1.0"], + ["ret", "npm:0.1.15"] + ], + "linkType": "HARD", + }] + ]], + ["safer-buffer", [ + ["npm:2.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/safer-buffer-npm-2.1.2-8d5c0b705e-8.zip/node_modules/safer-buffer/", + "packageDependencies": [ + ["safer-buffer", "npm:2.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["sane", [ + ["npm:4.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/sane-npm-4.1.0-8ab7d6a963-8.zip/node_modules/sane/", + "packageDependencies": [ + ["sane", "npm:4.1.0"], + ["@cnakazawa/watch", "npm:1.0.4"], + ["anymatch", "npm:2.0.0"], + ["capture-exit", "npm:2.0.0"], + ["exec-sh", "npm:0.3.4"], + ["execa", "npm:1.0.0"], + ["fb-watchman", "npm:2.0.1"], + ["micromatch", "npm:3.1.10"], + ["minimist", "npm:1.2.5"], + ["walker", "npm:1.0.7"] + ], + "linkType": "HARD", + }] + ]], + ["saxes", [ + ["npm:5.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/saxes-npm-5.0.1-57abf031ae-8.zip/node_modules/saxes/", + "packageDependencies": [ + ["saxes", "npm:5.0.1"], + ["xmlchars", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["semver", [ + ["npm:5.7.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/semver-npm-5.7.1-40bcea106b-8.zip/node_modules/semver/", + "packageDependencies": [ + ["semver", "npm:5.7.1"] + ], + "linkType": "HARD", + }], + ["npm:6.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/semver-npm-6.3.0-b3eace8bfd-8.zip/node_modules/semver/", + "packageDependencies": [ + ["semver", "npm:6.3.0"] + ], + "linkType": "HARD", + }], + ["npm:7.3.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/semver-npm-7.3.4-4c3baf0ead-8.zip/node_modules/semver/", + "packageDependencies": [ + ["semver", "npm:7.3.4"], + ["lru-cache", "npm:6.0.0"] + ], + "linkType": "HARD", + }], + ["npm:7.3.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/semver-npm-7.3.5-618cf5db6a-8.zip/node_modules/semver/", + "packageDependencies": [ + ["semver", "npm:7.3.5"], + ["lru-cache", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["semver-diff", [ + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/semver-diff-npm-3.1.1-1207a795e9-8.zip/node_modules/semver-diff/", + "packageDependencies": [ + ["semver-diff", "npm:3.1.1"], + ["semver", "npm:6.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["set-blocking", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/set-blocking-npm-2.0.0-49e2cffa24-8.zip/node_modules/set-blocking/", + "packageDependencies": [ + ["set-blocking", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["set-value", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/set-value-npm-2.0.1-35da5f8180-8.zip/node_modules/set-value/", + "packageDependencies": [ + ["set-value", "npm:2.0.1"], + ["extend-shallow", "npm:2.0.1"], + ["is-extendable", "npm:0.1.1"], + ["is-plain-object", "npm:2.0.4"], + ["split-string", "npm:3.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["shebang-command", [ + ["npm:1.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/shebang-command-npm-1.2.0-8990ba5d1d-8.zip/node_modules/shebang-command/", + "packageDependencies": [ + ["shebang-command", "npm:1.2.0"], + ["shebang-regex", "npm:1.0.0"] + ], + "linkType": "HARD", + }], + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/shebang-command-npm-2.0.0-eb2b01921d-8.zip/node_modules/shebang-command/", + "packageDependencies": [ + ["shebang-command", "npm:2.0.0"], + ["shebang-regex", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["shebang-regex", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/shebang-regex-npm-1.0.0-c3612b74e9-8.zip/node_modules/shebang-regex/", + "packageDependencies": [ + ["shebang-regex", "npm:1.0.0"] + ], + "linkType": "HARD", + }], + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/shebang-regex-npm-3.0.0-899a0cd65e-8.zip/node_modules/shebang-regex/", + "packageDependencies": [ + ["shebang-regex", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["shellwords", [ + ["npm:0.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/shellwords-npm-0.1.1-a091a78197-8.zip/node_modules/shellwords/", + "packageDependencies": [ + ["shellwords", "npm:0.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["signal-exit", [ + ["npm:3.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/signal-exit-npm-3.0.3-5a2d797648-8.zip/node_modules/signal-exit/", + "packageDependencies": [ + ["signal-exit", "npm:3.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["sisteransi", [ + ["npm:1.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/sisteransi-npm-1.0.5-af60cc0cfa-8.zip/node_modules/sisteransi/", + "packageDependencies": [ + ["sisteransi", "npm:1.0.5"] + ], + "linkType": "HARD", + }] + ]], + ["slash", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/slash-npm-3.0.0-b87de2279a-8.zip/node_modules/slash/", + "packageDependencies": [ + ["slash", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["slice-ansi", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/slice-ansi-npm-4.0.0-6eeca1d10e-8.zip/node_modules/slice-ansi/", + "packageDependencies": [ + ["slice-ansi", "npm:4.0.0"], + ["ansi-styles", "npm:4.3.0"], + ["astral-regex", "npm:2.0.0"], + ["is-fullwidth-code-point", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["smart-buffer", [ + ["npm:4.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/smart-buffer-npm-4.2.0-5ac3f668bb-8.zip/node_modules/smart-buffer/", + "packageDependencies": [ + ["smart-buffer", "npm:4.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["snapdragon", [ + ["npm:0.8.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/snapdragon-npm-0.8.2-2bcc47d217-8.zip/node_modules/snapdragon/", + "packageDependencies": [ + ["snapdragon", "npm:0.8.2"], + ["base", "npm:0.11.2"], + ["debug", "virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9"], + ["define-property", "npm:0.2.5"], + ["extend-shallow", "npm:2.0.1"], + ["map-cache", "npm:0.2.2"], + ["source-map", "npm:0.5.7"], + ["source-map-resolve", "npm:0.5.3"], + ["use", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["snapdragon-node", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/snapdragon-node-npm-2.1.1-78bc70e8e2-8.zip/node_modules/snapdragon-node/", + "packageDependencies": [ + ["snapdragon-node", "npm:2.1.1"], + ["define-property", "npm:1.0.0"], + ["isobject", "npm:3.0.1"], + ["snapdragon-util", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["snapdragon-util", [ + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/snapdragon-util-npm-3.0.1-36b5a7829d-8.zip/node_modules/snapdragon-util/", + "packageDependencies": [ + ["snapdragon-util", "npm:3.0.1"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["socks", [ + ["npm:2.6.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/socks-npm-2.6.1-09133d0d22-8.zip/node_modules/socks/", + "packageDependencies": [ + ["socks", "npm:2.6.1"], + ["ip", "npm:1.1.5"], + ["smart-buffer", "npm:4.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["socks-proxy-agent", [ + ["npm:6.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/socks-proxy-agent-npm-6.1.0-b9990e465a-8.zip/node_modules/socks-proxy-agent/", + "packageDependencies": [ + ["socks-proxy-agent", "npm:6.1.0"], + ["agent-base", "npm:6.0.2"], + ["debug", "virtual:8a8a06f9b4353781253433550165222bf3a5967fc66b293059c3096884f6064b869234e05e945b89a685854a1dab72e5f0b140d2684583987fc9217f8e77a65d#npm:4.3.2"], + ["socks", "npm:2.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["source-map", [ + ["npm:0.5.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-npm-0.5.7-7c3f035429-8.zip/node_modules/source-map/", + "packageDependencies": [ + ["source-map", "npm:0.5.7"] + ], + "linkType": "HARD", + }], + ["npm:0.6.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-npm-0.6.1-1a3621db16-8.zip/node_modules/source-map/", + "packageDependencies": [ + ["source-map", "npm:0.6.1"] + ], + "linkType": "HARD", + }], + ["npm:0.7.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-npm-0.7.3-e3b4f7982a-8.zip/node_modules/source-map/", + "packageDependencies": [ + ["source-map", "npm:0.7.3"] + ], + "linkType": "HARD", + }] + ]], + ["source-map-resolve", [ + ["npm:0.5.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-resolve-npm-0.5.3-6502ae65ba-8.zip/node_modules/source-map-resolve/", + "packageDependencies": [ + ["source-map-resolve", "npm:0.5.3"], + ["atob", "npm:2.1.2"], + ["decode-uri-component", "npm:0.2.0"], + ["resolve-url", "npm:0.2.1"], + ["source-map-url", "npm:0.4.0"], + ["urix", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["source-map-support", [ + ["npm:0.5.19", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-support-npm-0.5.19-65b33ae61e-8.zip/node_modules/source-map-support/", + "packageDependencies": [ + ["source-map-support", "npm:0.5.19"], + ["buffer-from", "npm:1.1.1"], + ["source-map", "npm:0.6.1"] + ], + "linkType": "HARD", + }] + ]], + ["source-map-url", [ + ["npm:0.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/source-map-url-npm-0.4.0-011efde48b-8.zip/node_modules/source-map-url/", + "packageDependencies": [ + ["source-map-url", "npm:0.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["spdx-correct", [ + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/spdx-correct-npm-3.1.1-47f574c27a-8.zip/node_modules/spdx-correct/", + "packageDependencies": [ + ["spdx-correct", "npm:3.1.1"], + ["spdx-expression-parse", "npm:3.0.1"], + ["spdx-license-ids", "npm:3.0.7"] + ], + "linkType": "HARD", + }] + ]], + ["spdx-exceptions", [ + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/spdx-exceptions-npm-2.3.0-2b68dad75a-8.zip/node_modules/spdx-exceptions/", + "packageDependencies": [ + ["spdx-exceptions", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["spdx-expression-parse", [ + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/spdx-expression-parse-npm-3.0.1-b718cbb35a-8.zip/node_modules/spdx-expression-parse/", + "packageDependencies": [ + ["spdx-expression-parse", "npm:3.0.1"], + ["spdx-exceptions", "npm:2.3.0"], + ["spdx-license-ids", "npm:3.0.7"] + ], + "linkType": "HARD", + }] + ]], + ["spdx-license-ids", [ + ["npm:3.0.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/spdx-license-ids-npm-3.0.7-f2c686cec2-8.zip/node_modules/spdx-license-ids/", + "packageDependencies": [ + ["spdx-license-ids", "npm:3.0.7"] + ], + "linkType": "HARD", + }] + ]], + ["split-string", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/split-string-npm-3.1.0-df5d83450e-8.zip/node_modules/split-string/", + "packageDependencies": [ + ["split-string", "npm:3.1.0"], + ["extend-shallow", "npm:3.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["sprintf-js", [ + ["npm:1.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/sprintf-js-npm-1.0.3-73f0a322fa-8.zip/node_modules/sprintf-js/", + "packageDependencies": [ + ["sprintf-js", "npm:1.0.3"] + ], + "linkType": "HARD", + }] + ]], + ["sshpk", [ + ["npm:1.16.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/sshpk-npm-1.16.1-feb759e7e0-8.zip/node_modules/sshpk/", + "packageDependencies": [ + ["sshpk", "npm:1.16.1"], + ["asn1", "npm:0.2.4"], + ["assert-plus", "npm:1.0.0"], + ["bcrypt-pbkdf", "npm:1.0.2"], + ["dashdash", "npm:1.14.1"], + ["ecc-jsbn", "npm:0.1.2"], + ["getpass", "npm:0.1.7"], + ["jsbn", "npm:0.1.1"], + ["safer-buffer", "npm:2.1.2"], + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], + ["ssri", [ + ["npm:8.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ssri-npm-8.0.1-a369e72ce2-8.zip/node_modules/ssri/", + "packageDependencies": [ + ["ssri", "npm:8.0.1"], + ["minipass", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["stack-utils", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/stack-utils-npm-2.0.3-e255395afd-8.zip/node_modules/stack-utils/", + "packageDependencies": [ + ["stack-utils", "npm:2.0.3"], + ["escape-string-regexp", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["static-extend", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/static-extend-npm-0.1.2-2720ee6882-8.zip/node_modules/static-extend/", + "packageDependencies": [ + ["static-extend", "npm:0.1.2"], + ["define-property", "npm:0.2.5"], + ["object-copy", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["stealthy-require", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/stealthy-require-npm-1.1.1-0105ec8207-8.zip/node_modules/stealthy-require/", + "packageDependencies": [ + ["stealthy-require", "npm:1.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["string-argv", [ + ["npm:0.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-argv-npm-0.3.1-b4f6cd3d7b-8.zip/node_modules/string-argv/", + "packageDependencies": [ + ["string-argv", "npm:0.3.1"] + ], + "linkType": "HARD", + }] + ]], + ["string-length", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-length-npm-4.0.1-f4a493417a-8.zip/node_modules/string-length/", + "packageDependencies": [ + ["string-length", "npm:4.0.1"], + ["char-regex", "npm:1.0.2"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["string-width", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-width-npm-1.0.2-01031f9add-8.zip/node_modules/string-width/", + "packageDependencies": [ + ["string-width", "npm:1.0.2"], + ["code-point-at", "npm:1.1.0"], + ["is-fullwidth-code-point", "npm:1.0.0"], + ["strip-ansi", "npm:3.0.1"] + ], + "linkType": "HARD", + }], + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-width-npm-3.1.0-e031bfa4e0-8.zip/node_modules/string-width/", + "packageDependencies": [ + ["string-width", "npm:3.1.0"], + ["emoji-regex", "npm:7.0.3"], + ["is-fullwidth-code-point", "npm:2.0.0"], + ["strip-ansi", "npm:5.2.0"] + ], + "linkType": "HARD", + }], + ["npm:4.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-width-npm-4.2.0-c4a2a66200-8.zip/node_modules/string-width/", + "packageDependencies": [ + ["string-width", "npm:4.2.0"], + ["emoji-regex", "npm:8.0.0"], + ["is-fullwidth-code-point", "npm:3.0.0"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }], + ["npm:4.2.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string-width-npm-4.2.3-2c27177bae-8.zip/node_modules/string-width/", + "packageDependencies": [ + ["string-width", "npm:4.2.3"], + ["emoji-regex", "npm:8.0.0"], + ["is-fullwidth-code-point", "npm:3.0.0"], + ["strip-ansi", "npm:6.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["string_decoder", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/string_decoder-npm-1.1.1-e46a6c1353-8.zip/node_modules/string_decoder/", + "packageDependencies": [ + ["string_decoder", "npm:1.1.1"], + ["safe-buffer", "npm:5.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["strip-ansi", [ + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-ansi-npm-3.0.1-6aec1365b9-8.zip/node_modules/strip-ansi/", + "packageDependencies": [ + ["strip-ansi", "npm:3.0.1"], + ["ansi-regex", "npm:2.1.1"] + ], + "linkType": "HARD", + }], + ["npm:5.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-ansi-npm-5.2.0-275214c316-8.zip/node_modules/strip-ansi/", + "packageDependencies": [ + ["strip-ansi", "npm:5.2.0"], + ["ansi-regex", "npm:4.1.0"] + ], + "linkType": "HARD", + }], + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-ansi-npm-6.0.0-904613e9eb-8.zip/node_modules/strip-ansi/", + "packageDependencies": [ + ["strip-ansi", "npm:6.0.0"], + ["ansi-regex", "npm:5.0.0"] + ], + "linkType": "HARD", + }], + ["npm:6.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-ansi-npm-6.0.1-caddc7cb40-8.zip/node_modules/strip-ansi/", + "packageDependencies": [ + ["strip-ansi", "npm:6.0.1"], + ["ansi-regex", "npm:5.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["strip-bom", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-bom-npm-4.0.0-97d367a64d-8.zip/node_modules/strip-bom/", + "packageDependencies": [ + ["strip-bom", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["strip-eof", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-eof-npm-1.0.0-d82eaf947c-8.zip/node_modules/strip-eof/", + "packageDependencies": [ + ["strip-eof", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["strip-final-newline", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-final-newline-npm-2.0.0-340c4f7c66-8.zip/node_modules/strip-final-newline/", + "packageDependencies": [ + ["strip-final-newline", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["strip-json-comments", [ + ["npm:2.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-json-comments-npm-2.0.1-e7883b2d04-8.zip/node_modules/strip-json-comments/", + "packageDependencies": [ + ["strip-json-comments", "npm:2.0.1"] + ], + "linkType": "HARD", + }], + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/strip-json-comments-npm-3.1.1-dcb2324823-8.zip/node_modules/strip-json-comments/", + "packageDependencies": [ + ["strip-json-comments", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["supports-color", [ + ["npm:5.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/supports-color-npm-5.5.0-183ac537bc-8.zip/node_modules/supports-color/", + "packageDependencies": [ + ["supports-color", "npm:5.5.0"], + ["has-flag", "npm:3.0.0"] + ], + "linkType": "HARD", + }], + ["npm:7.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/supports-color-npm-7.2.0-606bfcf7da-8.zip/node_modules/supports-color/", + "packageDependencies": [ + ["supports-color", "npm:7.2.0"], + ["has-flag", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["supports-hyperlinks", [ + ["npm:2.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/supports-hyperlinks-npm-2.1.0-8e86724a40-8.zip/node_modules/supports-hyperlinks/", + "packageDependencies": [ + ["supports-hyperlinks", "npm:2.1.0"], + ["has-flag", "npm:4.0.0"], + ["supports-color", "npm:7.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["symbol-tree", [ + ["npm:3.2.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/symbol-tree-npm-3.2.4-fe70cdb75b-8.zip/node_modules/symbol-tree/", + "packageDependencies": [ + ["symbol-tree", "npm:3.2.4"] + ], + "linkType": "HARD", + }] + ]], + ["table", [ + ["npm:6.7.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/table-npm-6.7.1-7d70e55c6d-8.zip/node_modules/table/", + "packageDependencies": [ + ["table", "npm:6.7.1"], + ["ajv", "npm:8.6.1"], + ["lodash.clonedeep", "npm:4.5.0"], + ["lodash.truncate", "npm:4.4.2"], + ["slice-ansi", "npm:4.0.0"], + ["string-width", "npm:4.2.0"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["tar", [ + ["npm:6.1.11", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tar-npm-6.1.11-e6ac3cba9c-8.zip/node_modules/tar/", + "packageDependencies": [ + ["tar", "npm:6.1.11"], + ["chownr", "npm:2.0.0"], + ["fs-minipass", "npm:2.1.0"], + ["minipass", "npm:3.1.5"], + ["minizlib", "npm:2.1.2"], + ["mkdirp", "npm:1.0.4"], + ["yallist", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["term-size", [ + ["npm:2.2.1", { + "packageLocation": "./.yarn/unplugged/term-size-npm-2.2.1-77ce7141d0/node_modules/term-size/", + "packageDependencies": [ + ["term-size", "npm:2.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["terminal-link", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/terminal-link-npm-2.1.1-de80341758-8.zip/node_modules/terminal-link/", + "packageDependencies": [ + ["terminal-link", "npm:2.1.1"], + ["ansi-escapes", "npm:4.3.1"], + ["supports-hyperlinks", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["test-exclude", [ + ["npm:6.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/test-exclude-npm-6.0.0-3fb03d69df-8.zip/node_modules/test-exclude/", + "packageDependencies": [ + ["test-exclude", "npm:6.0.0"], + ["@istanbuljs/schema", "npm:0.1.2"], + ["glob", "npm:7.1.6"], + ["minimatch", "npm:3.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["text-table", [ + ["npm:0.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/text-table-npm-0.2.0-d92a778b59-8.zip/node_modules/text-table/", + "packageDependencies": [ + ["text-table", "npm:0.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["throat", [ + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/throat-npm-5.0.0-288ce6540a-8.zip/node_modules/throat/", + "packageDependencies": [ + ["throat", "npm:5.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["timsort", [ + ["npm:0.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/timsort-npm-0.3.0-868a28166c-8.zip/node_modules/timsort/", + "packageDependencies": [ + ["timsort", "npm:0.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["tmpl", [ + ["npm:1.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tmpl-npm-1.0.4-35b37c2875-8.zip/node_modules/tmpl/", + "packageDependencies": [ + ["tmpl", "npm:1.0.4"] + ], + "linkType": "HARD", + }] + ]], + ["to-fast-properties", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-fast-properties-npm-2.0.0-0dc60cc481-8.zip/node_modules/to-fast-properties/", + "packageDependencies": [ + ["to-fast-properties", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["to-object-path", [ + ["npm:0.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-object-path-npm-0.3.0-241b5ffa9c-8.zip/node_modules/to-object-path/", + "packageDependencies": [ + ["to-object-path", "npm:0.3.0"], + ["kind-of", "npm:3.2.2"] + ], + "linkType": "HARD", + }] + ]], + ["to-readable-stream", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-readable-stream-npm-1.0.0-4fa4da8130-8.zip/node_modules/to-readable-stream/", + "packageDependencies": [ + ["to-readable-stream", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["to-regex", [ + ["npm:3.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-regex-npm-3.0.2-3af893c972-8.zip/node_modules/to-regex/", + "packageDependencies": [ + ["to-regex", "npm:3.0.2"], + ["define-property", "npm:2.0.2"], + ["extend-shallow", "npm:3.0.2"], + ["regex-not", "npm:1.0.2"], + ["safe-regex", "npm:1.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["to-regex-range", [ + ["npm:2.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-regex-range-npm-2.1.1-60af4c593e-8.zip/node_modules/to-regex-range/", + "packageDependencies": [ + ["to-regex-range", "npm:2.1.1"], + ["is-number", "npm:3.0.0"], + ["repeat-string", "npm:1.6.1"] + ], + "linkType": "HARD", + }], + ["npm:5.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/to-regex-range-npm-5.0.1-f1e8263b00-8.zip/node_modules/to-regex-range/", + "packageDependencies": [ + ["to-regex-range", "npm:5.0.1"], + ["is-number", "npm:7.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["touch", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/touch-npm-3.1.0-e2eacebbda-8.zip/node_modules/touch/", + "packageDependencies": [ + ["touch", "npm:3.1.0"], + ["nopt", "npm:1.0.10"] + ], + "linkType": "HARD", + }] + ]], + ["tough-cookie", [ + ["npm:2.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tough-cookie-npm-2.5.0-79a2fe43fe-8.zip/node_modules/tough-cookie/", + "packageDependencies": [ + ["tough-cookie", "npm:2.5.0"], + ["psl", "npm:1.8.0"], + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }], + ["npm:3.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tough-cookie-npm-3.0.1-09a21f6bd7-8.zip/node_modules/tough-cookie/", + "packageDependencies": [ + ["tough-cookie", "npm:3.0.1"], + ["ip-regex", "npm:2.1.0"], + ["psl", "npm:1.8.0"], + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["tr46", [ + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tr46-npm-2.0.2-9a9c502938-8.zip/node_modules/tr46/", + "packageDependencies": [ + ["tr46", "npm:2.0.2"], + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["ts-jest", [ + ["npm:26.5.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ts-jest-npm-26.5.0-ff25325abe-8.zip/node_modules/ts-jest/", + "packageDependencies": [ + ["ts-jest", "npm:26.5.0"] + ], + "linkType": "SOFT", + }], + ["virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:26.5.0", { + "packageLocation": "./.yarn/__virtual__/ts-jest-virtual-35b00ff457/5/AppData/Local/Yarn/Berry/cache/ts-jest-npm-26.5.0-ff25325abe-8.zip/node_modules/ts-jest/", + "packageDependencies": [ + ["ts-jest", "virtual:51de29073e235a8d8074fd5d021a12777bc39617fc42c6abc0505758f9c902d274ea1575ba5585f60e60681cb4b6572fa779db19f49c827f1cf90b697cd36e0c#npm:26.5.0"], + ["@types/jest", "npm:26.0.20"], + ["@types/typescript", null], + ["bs-logger", "npm:0.2.6"], + ["buffer-from", "npm:1.1.1"], + ["fast-json-stable-stringify", "npm:2.1.0"], + ["jest", "npm:26.6.3"], + ["jest-util", "npm:26.6.2"], + ["json5", "npm:2.1.3"], + ["lodash", "npm:4.17.20"], + ["make-error", "npm:1.3.6"], + ["mkdirp", "npm:1.0.4"], + ["semver", "npm:7.3.4"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"], + ["yargs-parser", "npm:20.2.4"] + ], + "packagePeers": [ + "@types/jest", + "@types/typescript", + "jest", + "typescript" + ], + "linkType": "HARD", + }] + ]], + ["tslib", [ + ["npm:1.14.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tslib-npm-1.14.1-102499115e-8.zip/node_modules/tslib/", + "packageDependencies": [ + ["tslib", "npm:1.14.1"] + ], + "linkType": "HARD", + }] + ]], + ["tsutils", [ + ["npm:3.21.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tsutils-npm-3.21.0-347e6636c5-8.zip/node_modules/tsutils/", + "packageDependencies": [ + ["tsutils", "npm:3.21.0"] + ], + "linkType": "SOFT", + }], + ["virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:3.21.0", { + "packageLocation": "./.yarn/__virtual__/tsutils-virtual-8a862a554b/5/AppData/Local/Yarn/Berry/cache/tsutils-npm-3.21.0-347e6636c5-8.zip/node_modules/tsutils/", + "packageDependencies": [ + ["tsutils", "virtual:96faad7dc57514744eeed4ae47d14b6c4ebce98d669d9aefa9b42faf67404e1c8f77718a8cb41beeee0f540fe4a9d43c0a66088860b1c53598305b162529323d#npm:3.21.0"], + ["@types/typescript", null], + ["tslib", "npm:1.14.1"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "packagePeers": [ + "@types/typescript", + "typescript" + ], + "linkType": "HARD", + }], + ["virtual:f1025851027eaec591c2910cbd55f271e486d519b630f0fa56690d650eb184985743511e7849d63d0708aafac377e5caeb7708f07ac93493491835654a9d7cc0#npm:3.21.0", { + "packageLocation": "./.yarn/__virtual__/tsutils-virtual-c9d06054e4/5/AppData/Local/Yarn/Berry/cache/tsutils-npm-3.21.0-347e6636c5-8.zip/node_modules/tsutils/", + "packageDependencies": [ + ["tsutils", "virtual:f1025851027eaec591c2910cbd55f271e486d519b630f0fa56690d650eb184985743511e7849d63d0708aafac377e5caeb7708f07ac93493491835654a9d7cc0#npm:3.21.0"], + ["@types/typescript", null], + ["tslib", "npm:1.14.1"], + ["typescript", null] + ], + "packagePeers": [ + "@types/typescript", + "typescript" + ], + "linkType": "HARD", + }] + ]], + ["tunnel-agent", [ + ["npm:0.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tunnel-agent-npm-0.6.0-64345ab7eb-8.zip/node_modules/tunnel-agent/", + "packageDependencies": [ + ["tunnel-agent", "npm:0.6.0"], + ["safe-buffer", "npm:5.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["tweetnacl", [ + ["npm:0.14.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/tweetnacl-npm-0.14.5-a3f766c0d1-8.zip/node_modules/tweetnacl/", + "packageDependencies": [ + ["tweetnacl", "npm:0.14.5"] + ], + "linkType": "HARD", + }] + ]], + ["type-check", [ + ["npm:0.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-check-npm-0.3.2-a4a38bb0b6-8.zip/node_modules/type-check/", + "packageDependencies": [ + ["type-check", "npm:0.3.2"], + ["prelude-ls", "npm:1.1.2"] + ], + "linkType": "HARD", + }], + ["npm:0.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-check-npm-0.4.0-60565800ce-8.zip/node_modules/type-check/", + "packageDependencies": [ + ["type-check", "npm:0.4.0"], + ["prelude-ls", "npm:1.2.1"] + ], + "linkType": "HARD", + }] + ]], + ["type-detect", [ + ["npm:4.0.8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-detect-npm-4.0.8-8d8127b901-8.zip/node_modules/type-detect/", + "packageDependencies": [ + ["type-detect", "npm:4.0.8"] + ], + "linkType": "HARD", + }] + ]], + ["type-fest", [ + ["npm:0.11.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-fest-npm-0.11.0-81410fe889-8.zip/node_modules/type-fest/", + "packageDependencies": [ + ["type-fest", "npm:0.11.0"] + ], + "linkType": "HARD", + }], + ["npm:0.20.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-fest-npm-0.20.2-b36432617f-8.zip/node_modules/type-fest/", + "packageDependencies": [ + ["type-fest", "npm:0.20.2"] + ], + "linkType": "HARD", + }], + ["npm:0.6.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-fest-npm-0.6.0-76b229965b-8.zip/node_modules/type-fest/", + "packageDependencies": [ + ["type-fest", "npm:0.6.0"] + ], + "linkType": "HARD", + }], + ["npm:0.8.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/type-fest-npm-0.8.1-351ad028fe-8.zip/node_modules/type-fest/", + "packageDependencies": [ + ["type-fest", "npm:0.8.1"] + ], + "linkType": "HARD", + }] + ]], + ["typedarray-to-buffer", [ + ["npm:3.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/typedarray-to-buffer-npm-3.1.5-aadc11995e-8.zip/node_modules/typedarray-to-buffer/", + "packageDependencies": [ + ["typedarray-to-buffer", "npm:3.1.5"], + ["is-typedarray", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["typescript", [ + ["patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/typescript-patch-e9a14bf896-8.zip/node_modules/typescript/", + "packageDependencies": [ + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=ddd1e8"] + ], + "linkType": "HARD", + }] + ]], + ["undefsafe", [ + ["npm:2.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/undefsafe-npm-2.0.3-ce5f7e2bb1-8.zip/node_modules/undefsafe/", + "packageDependencies": [ + ["undefsafe", "npm:2.0.3"], + ["debug", "virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9"] + ], + "linkType": "HARD", + }] + ]], + ["union-value", [ + ["npm:1.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/union-value-npm-1.0.1-76c6e8a88f-8.zip/node_modules/union-value/", + "packageDependencies": [ + ["union-value", "npm:1.0.1"], + ["arr-union", "npm:3.1.0"], + ["get-value", "npm:2.0.6"], + ["is-extendable", "npm:0.1.1"], + ["set-value", "npm:2.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["unique-filename", [ + ["npm:1.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/unique-filename-npm-1.1.1-c885c5095b-8.zip/node_modules/unique-filename/", + "packageDependencies": [ + ["unique-filename", "npm:1.1.1"], + ["unique-slug", "npm:2.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["unique-slug", [ + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/unique-slug-npm-2.0.2-f6ba1ddeb7-8.zip/node_modules/unique-slug/", + "packageDependencies": [ + ["unique-slug", "npm:2.0.2"], + ["imurmurhash", "npm:0.1.4"] + ], + "linkType": "HARD", + }] + ]], + ["unique-string", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/unique-string-npm-2.0.0-3153c97e47-8.zip/node_modules/unique-string/", + "packageDependencies": [ + ["unique-string", "npm:2.0.0"], + ["crypto-random-string", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["universalify", [ + ["npm:0.1.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/universalify-npm-0.1.2-9b22d31d2d-8.zip/node_modules/universalify/", + "packageDependencies": [ + ["universalify", "npm:0.1.2"] + ], + "linkType": "HARD", + }] + ]], + ["unset-value", [ + ["npm:1.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/unset-value-npm-1.0.0-2af803b920-8.zip/node_modules/unset-value/", + "packageDependencies": [ + ["unset-value", "npm:1.0.0"], + ["has-value", "npm:0.3.1"], + ["isobject", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["update-notifier", [ + ["npm:4.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/update-notifier-npm-4.1.3-837e724aca-8.zip/node_modules/update-notifier/", + "packageDependencies": [ + ["update-notifier", "npm:4.1.3"], + ["boxen", "npm:4.2.0"], + ["chalk", "npm:3.0.0"], + ["configstore", "npm:5.0.1"], + ["has-yarn", "npm:2.1.0"], + ["import-lazy", "npm:2.1.0"], + ["is-ci", "npm:2.0.0"], + ["is-installed-globally", "npm:0.3.2"], + ["is-npm", "npm:4.0.0"], + ["is-yarn-global", "npm:0.3.0"], + ["latest-version", "npm:5.1.0"], + ["pupa", "npm:2.1.1"], + ["semver-diff", "npm:3.1.1"], + ["xdg-basedir", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["uri-js", [ + ["npm:4.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/uri-js-npm-4.4.1-66d11cbcaf-8.zip/node_modules/uri-js/", + "packageDependencies": [ + ["uri-js", "npm:4.4.1"], + ["punycode", "npm:2.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["urix", [ + ["npm:0.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/urix-npm-0.1.0-bd5e55a13a-8.zip/node_modules/urix/", + "packageDependencies": [ + ["urix", "npm:0.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["url-parse-lax", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/url-parse-lax-npm-3.0.0-92aa8effa0-8.zip/node_modules/url-parse-lax/", + "packageDependencies": [ + ["url-parse-lax", "npm:3.0.0"], + ["prepend-http", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["use", [ + ["npm:3.1.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/use-npm-3.1.1-7ba643714c-8.zip/node_modules/use/", + "packageDependencies": [ + ["use", "npm:3.1.1"] + ], + "linkType": "HARD", + }] + ]], + ["util-deprecate", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/util-deprecate-npm-1.0.2-e3fe1a219c-8.zip/node_modules/util-deprecate/", + "packageDependencies": [ + ["util-deprecate", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["uuid", [ + ["npm:3.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/uuid-npm-3.4.0-4fd8ef88ad-8.zip/node_modules/uuid/", + "packageDependencies": [ + ["uuid", "npm:3.4.0"] + ], + "linkType": "HARD", + }], + ["npm:8.3.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/uuid-npm-8.3.2-eca0baba53-8.zip/node_modules/uuid/", + "packageDependencies": [ + ["uuid", "npm:8.3.2"] + ], + "linkType": "HARD", + }] + ]], + ["v8-compile-cache", [ + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/v8-compile-cache-npm-2.3.0-961375f150-8.zip/node_modules/v8-compile-cache/", + "packageDependencies": [ + ["v8-compile-cache", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["v8-to-istanbul", [ + ["npm:7.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/v8-to-istanbul-npm-7.1.0-4d4761f35a-8.zip/node_modules/v8-to-istanbul/", + "packageDependencies": [ + ["v8-to-istanbul", "npm:7.1.0"], + ["@types/istanbul-lib-coverage", "npm:2.0.3"], + ["convert-source-map", "npm:1.7.0"], + ["source-map", "npm:0.7.3"] + ], + "linkType": "HARD", + }] + ]], + ["validate-npm-package-license", [ + ["npm:3.0.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/validate-npm-package-license-npm-3.0.4-7af8adc7a8-8.zip/node_modules/validate-npm-package-license/", + "packageDependencies": [ + ["validate-npm-package-license", "npm:3.0.4"], + ["spdx-correct", "npm:3.1.1"], + ["spdx-expression-parse", "npm:3.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["validator", [ + ["npm:8.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/validator-npm-8.2.0-c73e292d14-8.zip/node_modules/validator/", + "packageDependencies": [ + ["validator", "npm:8.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["verror", [ + ["npm:1.10.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/verror-npm-1.10.0-c3f839c579-8.zip/node_modules/verror/", + "packageDependencies": [ + ["verror", "npm:1.10.0"], + ["assert-plus", "npm:1.0.0"], + ["core-util-is", "npm:1.0.2"], + ["extsprintf", "npm:1.4.0"] + ], + "linkType": "HARD", + }] + ]], + ["w3c-hr-time", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/w3c-hr-time-npm-1.0.2-87f88e51d9-8.zip/node_modules/w3c-hr-time/", + "packageDependencies": [ + ["w3c-hr-time", "npm:1.0.2"], + ["browser-process-hrtime", "npm:1.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["w3c-xmlserializer", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/w3c-xmlserializer-npm-2.0.0-f8f7bc8b42-8.zip/node_modules/w3c-xmlserializer/", + "packageDependencies": [ + ["w3c-xmlserializer", "npm:2.0.0"], + ["xml-name-validator", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["walker", [ + ["npm:1.0.7", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/walker-npm-1.0.7-a97443bd99-8.zip/node_modules/walker/", + "packageDependencies": [ + ["walker", "npm:1.0.7"], + ["makeerror", "npm:1.0.11"] + ], + "linkType": "HARD", + }] + ]], + ["webidl-conversions", [ + ["npm:5.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/webidl-conversions-npm-5.0.0-9649787484-8.zip/node_modules/webidl-conversions/", + "packageDependencies": [ + ["webidl-conversions", "npm:5.0.0"] + ], + "linkType": "HARD", + }], + ["npm:6.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/webidl-conversions-npm-6.1.0-0594fd577c-8.zip/node_modules/webidl-conversions/", + "packageDependencies": [ + ["webidl-conversions", "npm:6.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["whatwg-encoding", [ + ["npm:1.0.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/whatwg-encoding-npm-1.0.5-85e0fb7d7d-8.zip/node_modules/whatwg-encoding/", + "packageDependencies": [ + ["whatwg-encoding", "npm:1.0.5"], + ["iconv-lite", "npm:0.4.24"] + ], + "linkType": "HARD", + }] + ]], + ["whatwg-mimetype", [ + ["npm:2.3.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/whatwg-mimetype-npm-2.3.0-52eaa1d941-8.zip/node_modules/whatwg-mimetype/", + "packageDependencies": [ + ["whatwg-mimetype", "npm:2.3.0"] + ], + "linkType": "HARD", + }] + ]], + ["whatwg-url", [ + ["npm:8.4.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/whatwg-url-npm-8.4.0-19b71f606c-8.zip/node_modules/whatwg-url/", + "packageDependencies": [ + ["whatwg-url", "npm:8.4.0"], + ["lodash.sortby", "npm:4.7.0"], + ["tr46", "npm:2.0.2"], + ["webidl-conversions", "npm:6.1.0"] + ], + "linkType": "HARD", + }] + ]], + ["which", [ + ["npm:1.3.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/which-npm-1.3.1-f0ebb8bdd8-8.zip/node_modules/which/", + "packageDependencies": [ + ["which", "npm:1.3.1"], + ["isexe", "npm:2.0.0"] + ], + "linkType": "HARD", + }], + ["npm:2.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/which-npm-2.0.2-320ddf72f7-8.zip/node_modules/which/", + "packageDependencies": [ + ["which", "npm:2.0.2"], + ["isexe", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["which-module", [ + ["npm:2.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/which-module-npm-2.0.0-daf3daa08d-8.zip/node_modules/which-module/", + "packageDependencies": [ + ["which-module", "npm:2.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["wide-align", [ + ["npm:1.1.5", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/wide-align-npm-1.1.5-889d77e592-8.zip/node_modules/wide-align/", + "packageDependencies": [ + ["wide-align", "npm:1.1.5"], + ["string-width", "npm:4.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["widest-line", [ + ["npm:3.1.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/widest-line-npm-3.1.0-717bf2680b-8.zip/node_modules/widest-line/", + "packageDependencies": [ + ["widest-line", "npm:3.1.0"], + ["string-width", "npm:4.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["word-wrap", [ + ["npm:1.2.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/word-wrap-npm-1.2.3-7fb15ab002-8.zip/node_modules/word-wrap/", + "packageDependencies": [ + ["word-wrap", "npm:1.2.3"] + ], + "linkType": "HARD", + }] + ]], + ["wrap-ansi", [ + ["npm:6.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/wrap-ansi-npm-6.2.0-439a7246d8-8.zip/node_modules/wrap-ansi/", + "packageDependencies": [ + ["wrap-ansi", "npm:6.2.0"], + ["ansi-styles", "npm:4.3.0"], + ["string-width", "npm:4.2.0"], + ["strip-ansi", "npm:6.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["wrappy", [ + ["npm:1.0.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/wrappy-npm-1.0.2-916de4d4b3-8.zip/node_modules/wrappy/", + "packageDependencies": [ + ["wrappy", "npm:1.0.2"] + ], + "linkType": "HARD", + }] + ]], + ["write-file-atomic", [ + ["npm:3.0.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/write-file-atomic-npm-3.0.3-d948a237da-8.zip/node_modules/write-file-atomic/", + "packageDependencies": [ + ["write-file-atomic", "npm:3.0.3"], + ["imurmurhash", "npm:0.1.4"], + ["is-typedarray", "npm:1.0.0"], + ["signal-exit", "npm:3.0.3"], + ["typedarray-to-buffer", "npm:3.1.5"] + ], + "linkType": "HARD", + }] + ]], + ["ws", [ + ["npm:7.4.2", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/ws-npm-7.4.2-4485e6ad6c-8.zip/node_modules/ws/", + "packageDependencies": [ + ["ws", "npm:7.4.2"] + ], + "linkType": "SOFT", + }], + ["virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:7.4.2", { + "packageLocation": "./.yarn/__virtual__/ws-virtual-79e3c1f755/5/AppData/Local/Yarn/Berry/cache/ws-npm-7.4.2-4485e6ad6c-8.zip/node_modules/ws/", + "packageDependencies": [ + ["ws", "virtual:0029c64cedb03afb3e8f955289eb8fb53c28afb692fc03c927d60b43257499232baab01f458ec4d93b5d0c987193b1cd454e1b6033d004694545f8cc7e80dd50#npm:7.4.2"], + ["@types/bufferutil", null], + ["@types/utf-8-validate", null], + ["bufferutil", null], + ["utf-8-validate", null] + ], + "packagePeers": [ + "@types/bufferutil", + "@types/utf-8-validate", + "bufferutil", + "utf-8-validate" + ], + "linkType": "HARD", + }] + ]], + ["xdg-basedir", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/xdg-basedir-npm-4.0.0-ed08d380e2-8.zip/node_modules/xdg-basedir/", + "packageDependencies": [ + ["xdg-basedir", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["xml-name-validator", [ + ["npm:3.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/xml-name-validator-npm-3.0.0-10e74a38ea-8.zip/node_modules/xml-name-validator/", + "packageDependencies": [ + ["xml-name-validator", "npm:3.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["xmlchars", [ + ["npm:2.2.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/xmlchars-npm-2.2.0-8b78f0f5e4-8.zip/node_modules/xmlchars/", + "packageDependencies": [ + ["xmlchars", "npm:2.2.0"] + ], + "linkType": "HARD", + }] + ]], + ["y18n", [ + ["npm:4.0.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/y18n-npm-4.0.1-b22ff0d5e0-8.zip/node_modules/y18n/", + "packageDependencies": [ + ["y18n", "npm:4.0.1"] + ], + "linkType": "HARD", + }] + ]], + ["yallist", [ + ["npm:4.0.0", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/yallist-npm-4.0.0-b493d9e907-8.zip/node_modules/yallist/", + "packageDependencies": [ + ["yallist", "npm:4.0.0"] + ], + "linkType": "HARD", + }] + ]], + ["yargs", [ + ["npm:15.4.1", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/yargs-npm-15.4.1-ca1c444de1-8.zip/node_modules/yargs/", + "packageDependencies": [ + ["yargs", "npm:15.4.1"], + ["cliui", "npm:6.0.0"], + ["decamelize", "npm:1.2.0"], + ["find-up", "npm:4.1.0"], + ["get-caller-file", "npm:2.0.5"], + ["require-directory", "npm:2.1.1"], + ["require-main-filename", "npm:2.0.0"], + ["set-blocking", "npm:2.0.0"], + ["string-width", "npm:4.2.0"], + ["which-module", "npm:2.0.0"], + ["y18n", "npm:4.0.1"], + ["yargs-parser", "npm:18.1.3"] + ], + "linkType": "HARD", + }] + ]], + ["yargs-parser", [ + ["npm:18.1.3", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/yargs-parser-npm-18.1.3-0ba9c4f088-8.zip/node_modules/yargs-parser/", + "packageDependencies": [ + ["yargs-parser", "npm:18.1.3"], + ["camelcase", "npm:5.3.1"], + ["decamelize", "npm:1.2.0"] + ], + "linkType": "HARD", + }], + ["npm:20.2.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/yargs-parser-npm-20.2.4-1de20916a6-8.zip/node_modules/yargs-parser/", + "packageDependencies": [ + ["yargs-parser", "npm:20.2.4"] + ], + "linkType": "HARD", + }] + ]], + ["z-schema", [ + ["npm:3.18.4", { + "packageLocation": "../../../../AppData/Local/Yarn/Berry/cache/z-schema-npm-3.18.4-cb322de053-8.zip/node_modules/z-schema/", + "packageDependencies": [ + ["z-schema", "npm:3.18.4"], + ["commander", "npm:2.20.3"], + ["lodash.get", "npm:4.4.2"], + ["lodash.isequal", "npm:4.5.0"], + ["validator", "npm:8.2.0"] + ], + "linkType": "HARD", + }] + ]] + ] + }, {basePath: basePath || __dirname}); + } + +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else if(typeof exports === 'object') + exports["pnpHook"] = factory(); + else + root["pnpHook"] = factory(); +})(global, function() { +return /******/ (() => { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ 368: +/***/ ((module, __unused_webpack_exports, __webpack_require__) => { + +var frozenFs = Object.assign({}, __webpack_require__(747)); +var Module = typeof Module !== "undefined" ? Module : {}; +var moduleOverrides = {}; +var key; +for (key in Module) { + if (Module.hasOwnProperty(key)) { + moduleOverrides[key] = Module[key]; + } +} +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = function(status, toThrow) { + throw toThrow; +}; +var ENVIRONMENT_IS_WORKER = false; +var ENVIRONMENT_IS_NODE = true; +var scriptDirectory = ""; +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory); + } + return scriptDirectory + path; +} +var read_, readBinary; +var nodeFS; +var nodePath; +if (ENVIRONMENT_IS_NODE) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = __webpack_require__(622).dirname(scriptDirectory) + "/"; + } else { + scriptDirectory = __dirname + "/"; + } + read_ = function shell_read(filename, binary) { + var ret = tryParseAsDataURI(filename); + if (ret) { + return binary ? ret : ret.toString(); + } + if (!nodeFS) nodeFS = frozenFs; + if (!nodePath) nodePath = __webpack_require__(622); + filename = nodePath["normalize"](filename); + return nodeFS["readFileSync"](filename, binary ? null : "utf8"); + }; + readBinary = function readBinary(filename) { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret); + } + assert(ret.buffer); + return ret; + }; + if (process["argv"].length > 1) { + thisProgram = process["argv"][1].replace(/\\/g, "/"); + } + arguments_ = process["argv"].slice(2); + if (true) { + module["exports"] = Module; + } + quit_ = function(status) { + process["exit"](status); + }; + Module["inspect"] = function() { + return "[Emscripten Module object]"; + }; +} else { +} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.warn.bind(console); +for (key in moduleOverrides) { + if (moduleOverrides.hasOwnProperty(key)) { + Module[key] = moduleOverrides[key]; + } +} +moduleOverrides = null; +if (Module["arguments"]) arguments_ = Module["arguments"]; +if (Module["thisProgram"]) thisProgram = Module["thisProgram"]; +if (Module["quit"]) quit_ = Module["quit"]; +var STACK_ALIGN = 16; +function alignMemory(size, factor) { + if (!factor) factor = STACK_ALIGN; + return Math.ceil(size / factor) * factor; +} +var tempRet0 = 0; +var setTempRet0 = function(value) { + tempRet0 = value; +}; +var wasmBinary; +if (Module["wasmBinary"]) wasmBinary = Module["wasmBinary"]; +var noExitRuntime = Module["noExitRuntime"] || true; +if (typeof WebAssembly !== "object") { + abort("no native wasm support detected"); +} +function getValue(ptr, type, noSafe) { + type = type || "i8"; + if (type.charAt(type.length - 1) === "*") type = "i32"; + switch (type) { + case "i1": + return HEAP8[ptr >> 0]; + case "i8": + return HEAP8[ptr >> 0]; + case "i16": + return HEAP16[ptr >> 1]; + case "i32": + return HEAP32[ptr >> 2]; + case "i64": + return HEAP32[ptr >> 2]; + case "float": + return HEAPF32[ptr >> 2]; + case "double": + return HEAPF64[ptr >> 3]; + default: + abort("invalid type for getValue: " + type); + } + return null; +} +var wasmMemory; +var ABORT = false; +var EXITSTATUS; +function assert(condition, text) { + if (!condition) { + abort("Assertion failed: " + text); + } +} +function getCFunc(ident) { + var func = Module["_" + ident]; + assert( + func, + "Cannot call unknown function " + ident + ", make sure it is exported" + ); + return func; +} +function ccall(ident, returnType, argTypes, args, opts) { + var toC = { + string: function(str) { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + var len = (str.length << 2) + 1; + ret = stackAlloc(len); + stringToUTF8(str, ret, len); + } + return ret; + }, + array: function(arr) { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret; + } + }; + function convertReturnValue(ret) { + if (returnType === "string") return UTF8ToString(ret); + if (returnType === "boolean") return Boolean(ret); + return ret; + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) stack = stackSave(); + cArgs[i] = converter(args[i]); + } else { + cArgs[i] = args[i]; + } + } + } + var ret = func.apply(null, cArgs); + ret = convertReturnValue(ret); + if (stack !== 0) stackRestore(stack); + return ret; +} +function cwrap(ident, returnType, argTypes, opts) { + argTypes = argTypes || []; + var numericArgs = argTypes.every(function(type) { + return type === "number"; + }); + var numericRet = returnType !== "string"; + if (numericRet && numericArgs && !opts) { + return getCFunc(ident); + } + return function() { + return ccall(ident, returnType, argTypes, arguments, opts); + }; +} +var UTF8Decoder = + typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; +function UTF8ArrayToString(heap, idx, maxBytesToRead) { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (heap[endPtr] && !(endPtr >= endIdx)) ++endPtr; + if (endPtr - idx > 16 && heap.subarray && UTF8Decoder) { + return UTF8Decoder.decode(heap.subarray(idx, endPtr)); + } else { + var str = ""; + while (idx < endPtr) { + var u0 = heap[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue; + } + var u1 = heap[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode(((u0 & 31) << 6) | u1); + continue; + } + var u2 = heap[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = ((u0 & 15) << 12) | (u1 << 6) | u2; + } else { + u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heap[idx++] & 63); + } + if (u0 < 65536) { + str += String.fromCharCode(u0); + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | (ch >> 10), 56320 | (ch & 1023)); + } + } + } + return str; +} +function UTF8ToString(ptr, maxBytesToRead) { + return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : ""; +} +function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) { + if (!(maxBytesToWrite > 0)) return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = (65536 + ((u & 1023) << 10)) | (u1 & 1023); + } + if (u <= 127) { + if (outIdx >= endIdx) break; + heap[outIdx++] = u; + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) break; + heap[outIdx++] = 192 | (u >> 6); + heap[outIdx++] = 128 | (u & 63); + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) break; + heap[outIdx++] = 224 | (u >> 12); + heap[outIdx++] = 128 | ((u >> 6) & 63); + heap[outIdx++] = 128 | (u & 63); + } else { + if (outIdx + 3 >= endIdx) break; + heap[outIdx++] = 240 | (u >> 18); + heap[outIdx++] = 128 | ((u >> 12) & 63); + heap[outIdx++] = 128 | ((u >> 6) & 63); + heap[outIdx++] = 128 | (u & 63); + } + } + heap[outIdx] = 0; + return outIdx - startIdx; +} +function stringToUTF8(str, outPtr, maxBytesToWrite) { + return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite); +} +function lengthBytesUTF8(str) { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) + u = (65536 + ((u & 1023) << 10)) | (str.charCodeAt(++i) & 1023); + if (u <= 127) ++len; + else if (u <= 2047) len += 2; + else if (u <= 65535) len += 3; + else len += 4; + } + return len; +} +function allocateUTF8(str) { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) stringToUTF8Array(str, HEAP8, ret, size); + return ret; +} +function writeArrayToMemory(array, buffer) { + HEAP8.set(array, buffer); +} +function alignUp(x, multiple) { + if (x % multiple > 0) { + x += multiple - (x % multiple); + } + return x; +} +var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; +function updateGlobalBufferAndViews(buf) { + buffer = buf; + Module["HEAP8"] = HEAP8 = new Int8Array(buf); + Module["HEAP16"] = HEAP16 = new Int16Array(buf); + Module["HEAP32"] = HEAP32 = new Int32Array(buf); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); + Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); + Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); +} +var INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216; +var wasmTable; +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") + Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()); + } + } + callRuntimeCallbacks(__ATPRERUN__); +} +function initRuntime() { + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) FS.init(); + TTY.init(); + callRuntimeCallbacks(__ATINIT__); +} +function postRun() { + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") + Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()); + } + } + callRuntimeCallbacks(__ATPOSTRUN__); +} +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb); +} +function addOnInit(cb) { + __ATINIT__.unshift(cb); +} +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb); +} +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +function getUniqueRunDependency(id) { + return id; +} +function addRunDependency(id) { + runDependencies++; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } +} +function removeRunDependency(id) { + runDependencies--; + if (Module["monitorRunDependencies"]) { + Module["monitorRunDependencies"](runDependencies); + } + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null; + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback(); + } + } +} +Module["preloadedImages"] = {}; +Module["preloadedAudios"] = {}; +function abort(what) { + if (Module["onAbort"]) { + Module["onAbort"](what); + } + what += ""; + err(what); + ABORT = true; + EXITSTATUS = 1; + what = "abort(" + what + "). Build with -s ASSERTIONS=1 for more info."; + var e = new WebAssembly.RuntimeError(what); + throw e; +} +var dataURIPrefix = "data:application/octet-stream;base64,"; +function isDataURI(filename) { + return filename.startsWith(dataURIPrefix); +} +var wasmBinaryFile = + "data:application/octet-stream;base64,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AkEEaiEBIAIoAgAiA0F/cyADQYGChAhrcUGAgYKEeHFFDQALIANB/wFxRQRAIAIgAGsPCwNAIAItAAEhAyACQQFqIgEhAiADDQALCyABIABrC2EBAX8jAEEQayICIAA2AgggAiABNwMAAkAgAikDACACKAIIKQMIVgRAIAIoAghBADoAACACQX82AgwMAQsgAigCCEEBOgAAIAIoAgggAikDADcDECACQQA2AgwLIAIoAgwL7wEBAX8jAEEgayICJAAgAiAANgIYIAIgATcDECACIAIoAhhCCBAeNgIMAkAgAigCDEUEQCACQX82AhwMAQsgAigCDCACKQMQQv8BgzwAACACKAIMIAIpAxBCCIhC/wGDPAABIAIoAgwgAikDEEIQiEL/AYM8AAIgAigCDCACKQMQQhiIQv8BgzwAAyACKAIMIAIpAxBCIIhC/wGDPAAEIAIoAgwgAikDEEIoiEL/AYM8AAUgAigCDCACKQMQQjCIQv8BgzwABiACKAIMIAIpAxBCOIhC/wGDPAAHIAJBADYCHAsgAigCHBogAkEgaiQAC4cDAQF/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNwMYAkAgAygCJC0AKEEBcQRAIANCfzcDKAwBCwJAAkAgAygCJCgCIEUNACADKQMYQv///////////wBWDQAgAykDGFANASADKAIgDQELIAMoAiRBDGpBEkEAEBQgA0J/NwMoDAELIAMoAiQtADVBAXEEQCADQn83AygMAQsCfyMAQRBrIgAgAygCJDYCDCAAKAIMLQA0QQFxCwRAIANCADcDKAwBCyADKQMYUARAIANCADcDKAwBCyADQgA3AxADQCADKQMQIAMpAxhUBEAgAyADKAIkIAMoAiAgAykDEKdqIAMpAxggAykDEH1BARAhIgI3AwggAkIAUwRAIAMoAiRBAToANSADKQMQUARAIANCfzcDKAwECyADIAMpAxA3AygMAwsgAykDCFAEQCADKAIkQQE6ADQFIAMgAykDCCADKQMQfDcDEAwCCwsLIAMgAykDEDcDKAsgAykDKCECIANBMGokACACCzYBAX8jAEEQayIBIAA2AgwCfiABKAIMLQAAQQFxBEAgASgCDCkDCCABKAIMKQMQfQwBC0IACwuyAQIBfwF+IwBBEGsiASQAIAEgADYCBCABIAEoAgRC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AkEBNgIQIAJBADYCCANAAkAgAigCCCACKAIYLwEETw0AAkAgAigCDCACKAIIai0AAEEfSwRAIAIoAgwgAigCCGotAABBgAFJDQELIAIoAgwgAigCCGotAABBDUYNACACKAIMIAIoAghqLQAAQQpGDQAgAigCDCACKAIIai0AAEEJRgRADAELIAJBAzYCEAJAIAIoAgwgAigCCGotAABB4AFxQcABRgRAIAJBATYCAAwBCwJAIAIoAgwgAigCCGotAABB8AFxQeABRgRAIAJBAjYCAAwBCwJAIAIoAgwgAigCCGotAABB+AFxQfABRgRAIAJBAzYCAAwBCyACQQQ2AhAMBAsLCyACKAIYLwEEIAIoAgggAigCAGpNBEAgAkEENgIQDAILIAJBATYCBANAIAIoAgQgAigCAE0EQCACKAIMIAIoAgggAigCBGpqLQAAQcABcUGAAUcEQCACQQQ2AhAMBgUgAiACKAIEQQFqNgIEDAILAAsLIAIgAigCACACKAIIajYCCAsgAiACKAIIQQFqNgIIDAELCwsgAigCGCACKAIQNgIIIAIoAhQEQAJAIAIoAhRBAkcNACACKAIQQQNHDQAgAkECNgIQIAIoAhhBAjYCCAsCQCACKAIUIAIoAhBGDQAgAigCEEEBRg0AIAJBBTYCHAwCCwsgAiACKAIQNgIcCyACKAIcC2oBAX8jAEEQayIBIAA2AgwgASgCDEIANwMAIAEoAgxBADYCCCABKAIMQn83AxAgASgCDEEANgIsIAEoAgxBfzYCKCABKAIMQgA3AxggASgCDEIANwMgIAEoAgxBADsBMCABKAIMQQA7ATILUgECf0GQlwEoAgAiASAAQQNqQXxxIgJqIQACQCACQQAgACABTRsNACAAPwBBEHRLBEAgABATRQ0BC0GQlwEgADYCACABDwtBtJsBQTA2AgBBfwuNBQEDfyMAQRBrIgEkACABIAA2AgwgASgCDARAIAEoAgwoAgAEQCABKAIMKAIAEDEaIAEoAgwoAgAQGwsgASgCDCgCHBAVIAEoAgwoAiAQJSABKAIMKAIkECUgASgCDCgCUCECIwBBEGsiACQAIAAgAjYCDCAAKAIMBEAgACgCDCgCEARAIABBADYCCANAIAAoAgggACgCDCgCAEkEQCAAKAIMKAIQIAAoAghBAnRqKAIABEAgACgCDCgC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A3EQHwsgAygCpAEoAhQgA0GeAWogA0GcAWoQgQEgAygCTCADLwGeARAfIAMoAkwgAy8BnAEQHwJAAkAgAy0AhQFBAXFFDQAgAygCpAEpAyhCFFoNACADKAJMQQAQIAwBCyADKAJMIAMoAqQBKAIYECALAkACQCADKAKgAUGAAnFBgAJHDQAgAygCpAEpAyBC/////w9UBEAgAygCpAEpAyhC/////w9UDQELIAMoAkxBfxAgIAMoAkxBfxAgDAELAkAgAygCpAEpAyBC/////w9UBEAgAygCTCADKAKkASkDIKcQIAwBCyADKAJMQX8QIAsCQCADKAKkASkDKEL/////D1QEQCADKAJMIAMoAqQBKQMopxAgDAELIAMoAkxBfxAgCwsgAygCTCADKAKkASgCMBBTQf//A3EQHyADIAMoAqQBKAI0IAMoAqABEIYBQf//A3EgAygCkAFBgAYQhgFB//8DcWo2AogBIAMoAkwgAygCiAFB//8DcRAfIAMoAqABQYACcUUEQCADKAJMIAMoAqQBKAI4EFNB//8DcRAfIAMoAkwgAygCpAEoAjxB//8DcRAfIAMoAkwgAygCpAEvAUAQHyADKAJMIAMoAqQBKAJEECACQCADKAKkASkDSEL/////D1QEQCADKAJMIAMoAqQBKQNIpxAgDAELIAMoAkxBfxAgCwsCfyMAQRBrIgAgAygCTDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFCADKAJMEBYgAygCkAEQIyADQX82AqwBDAELIAMoAqgBIANB0ABqAn4jAEEQayIAIAMoAkw2AgwCfiAAKAIMLQAAQQFxBEAgACgCDCkDEAwBC0IACwsQNUEASARAIAMoAkwQFiADKAKQARAjIANBfzYCrAEMAQsgAygCTBAWIAMoAqQBKAIwBEAgAygCqAEgAygCpAEoAjAQigFBAEgEQCADKAKQARAjIANBfzYCrAEMAgsLIAMoApABBEAgAygCqAEgAygCkAFBgAYQhQFBAEgEQCADKAKQARAjIANBfzYCrAEMAgsLIAMoApABECMgAygCpAEoAjQEQCADKAKoASADKAKkASgCNCADKAKgARCFAUEASARAIANBfzYCrAEMAgsLIAMoAqABQYACcUUEQCADKAKkASgCOARAIAMoAqgBIAMoAqQBKAI4EIoB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HCAAIAAoAhRBAWo2AhQMAQsLIAAoAggQR0EBcUUEQCAAKAIgQRRBABAUIAAoAggQFiAAQX82AiwMAQsgACgCCBAWIAAgACgCHDYCLAsgACgCLCECIABBMGokACADIAIiADYCBCAAQQBIBEAgA0IANwMoDAELIAMpAwggAygCBK18Qv///////////wBWBEAgAygCFEEEQRYQFCADQgA3AygMAQsgAyADKQMIIAMoAgStfDcDKAsgAykDKCEBIANBMGokACABC20BAX8jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMAkAgBCgCGEUEQCAEQQA2AhwMAQsgBCAEKAIUIAQoAhAgBCgCDCAEKAIYQQhqEJIBNgIcCyAEKAIcIQAgBEEgaiQAIAALVQEBfyMAQRBrIgEkACABIAA2AgwCQAJAIAEoAgwoAiRBAUYNACABKAIMKAIkQQJGDQAMAQsgASgCDEEAQgBBChAhGiABKAIMQQA2AiQLIAFBEGokAAumAQEBfyMAQRBrIgIkACACIAA2AgggAiABNgIEAkAgAigCCC0AKEEBcQRAIAJBfzYCDAwBCyACKAIIKAIABEAgAigCCCgCACACKAIEEGhBAEgEQCACKAIIQQxqIAIoAggoAgAQFyACQX82AgwMAgsLIAIoAgggAkEEakIEQRMQIUIAUwRAIAJBfzYCDAwBCyACQQA2AgwLIAIoAgwhACACQRBqJAAgAAuNCAIBfwF+IwBBkAFrIgMkACADIAA2AoQBIAMgATYCgAEgAyACNgJ8IAMQTwJAIAMoAoABKQMIQgBSBEAgAyADKAKAASgCACgCACkDSDcDYCADIAMoAoABKAIAKAIAKQNINwNoDAELIANCADcDYCADQgA3A2gLIANCADcDcAJAA0AgAykDcCADKAKAASkDCFQEQCADKAKAASgCACADKQNwp0EEdGooAgApA0ggAykDaFQEQCADIAMoAoABKAIAIAMpA3CnQQR0aigCACkDSDcDaAsgAykDaCADKAKAASkDIFYEQCADKAJ8QRNBABAUIANCfzcDiAEMAwsgAyADKAKAASgCACADKQNwp0EEdGooAgApA0ggAygCgAEoAgAgAykDcKdBBHRqKAIAKQMgfCADKAKAASgCACADKQNwp0EEdGooAgAoAjAQU0H//wNxrXxC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DEECdGooAgBBAnRqLwEASA0AAkAgAygCGCADKAIQQQJ0ai8BACADKAIYIAMoAhxB3BZqIAMoAgxBAnRqKAIAQQJ0ai8BAEcNACADKAIQIAMoAhxB2Chqai0AACADKAIcQdwWaiADKAIMQQJ0aigCACADKAIcQdgoamotAABKDQAMAQsgAygCHEHcFmogAygCFEECdGogAygCHEHcFmogAygCDEECdGooAgA2AgAgAyADKAIMNgIUIAMgAygCDEEBdDYCDAwBCwsgAygCHEHcFmogAygCFEECdGogAygCEDYCAAvXEwEDfyMAQTBrIgIkACACIAA2AiwgAiABNgIoIAIgAigCKCgCADYCJCACIAIoAigoAggoAgA2AiAgAiACKAIoKAIIKAIMNgIcIAJBfzYCECACKAIsQQA2AtAoIAIoAixBvQQ2AtQoIAJBADYCGANAIAIoAhggAigCHEgEQAJAIAIoAiQgAigCGEECdGovAQAEQCACIAIoAhgiATYCECACKAIsQdwWaiEDIAIoAiwiBCgC0ChBAWohACAEIAA2AtAoIABBAnQgA2ogATYCACACKAIYIAIoAixB2ChqakEAOgAADAELIAIoAiQgAigCGEECdGpBADsBAgsgAiACKAIYQQFqNgIYDAELCwNAIAIoAiwoAtAoQQJIBEACQCACKAIQQQJIBEAgAiACKAIQQQFqIgA2AhAMAQtBACEACyACKAIsQdwWaiEDIAIoAiwiBCgC0ChBAWohASAEIAE2AtAoIAFBAnQgA2ogADYCACACIAA2AgwgAigCJCACKAIMQQJ0akEBOwEAIAIoAgwgAigCLEHYKGpqQQA6AAAgAigCLCIAIAAoAqgtQQFrNgKoLSACKAIgBEAgAigCLCIAIAAoAqwtIAIoAiAgAigCDEECdGovAQJrNgKsLQsMAQsLIAIoAiggAigCEDYCBCACIAIoAiwoAtAoQQJtNgIYA0AgAigCGEEBTgRAIAIoAiwgAigCJCACKAIYEHogAiACKAIYQQFrNgIYDAELCyACIAIoAhw2AgwDQCACIAIoAiwoAuAWNgIYIAIoAixB3BZqIQEgAigCLCIDKALQKCEAIAMgAEEBazYC0CggAigCLCAAQQJ0IAFqKAIANgLgFiACKAIsIAIoAiRBARB6IAIgAigCLCgC4BY2AhQgAigCGCEBIAIoAixB3BZqIQMgAigCLCIEKALUKEEBayEAIAQgADYC1CggAEECdCADaiABNgIAIAIoAhQhASACKAIsQdwWaiEDIAIoAiwiBCgC1ChBAWshACAEIAA2AtQoIABBAnQgA2ogATYCACACKAIkIAIoAgxBAnRqIAIoAiQgAigCGEECdGovAQAgAigCJCACKAIUQQJ0ai8BAGo7AQAgAigCDCACKAIsQdgoamoCfyACKAIYIAIoAixB2Chqai0AACACKAIUIAIoAixB2Chqai0AAE4EQCACKAIYIAIoAixB2Chqai0AAAwBCyACKAIUIAIoAixB2Chqai0AAAtBAWo6AAAgAigCJCACKAIUQQJ0aiACKAIMIgA7AQIgAigCJCACKAIYQQJ0aiAAOwECIAIgAigCDCIAQQFqNgIMIAIoAiwgADYC4BYgAigCLCACKAIkQQEQeiACKAIsKALQKEECTg0ACyACKAIsKALgFiEBIAIoAixB3BZqIQMgAigCLCIEKALUKEEBayEAIAQgADYC1CggAEECdCADaiABNgIAIAIoAighASMAQUBqIgAgAigCLDYCPCAAIAE2AjggACAAKAI4KAIANgI0IAAgACgCOCgCBDYCMCAAIAAoAjgoAggoAgA2AiwgACAAKAI4KAIIKAIENgIoIAAgACgCOCgCCCgCCDYCJCAAIAAoAjgoAggoAhA2AiAgAEEANgIEIABBADYCEANAIAAoAhBBD0wEQCAAKAI8QbwWaiAAKAIQQQF0akEAOwEAIAAgACgCEEEBajYCEAwBCwsgACgCNCAAKAI8QdwWaiAAKAI8KALUKEECdGooAgBBAnRqQQA7AQIgACAAKAI8KALUKEEBajYCHANAIAAoAhxBvQRIBEAgACAAKAI8QdwWaiAAKAIcQQJ0aigCADYCGCAAIAAoAjQgACgCNCAAKAIYQQJ0ai8BAkECdGovAQJBAWo2AhAgACgCECAAKAIgSgRAIAAgACgCIDYCECAAIAAoAgRBAWo2AgQLIAAoAjQgACgCGEECdGogACgCEDsBAiAAKAIYIAAoAjBMBEAgACgCPCAAKAIQQQF0akG8FmoiASABLwEAQQFqOwEAIABBADYCDCAAKAIYIAAoAiROBEAgACAAKAIoIAAoAhggACgCJGtBAnRqKAIANgIMCyAAIAAoAjQgACgCGEECdGovAQA7AQogACgCPCIBIAEoAqgtIAAvAQogACgCECAAKAIMamxqNgKoLSAAKAIsBEAgACgCPCIBIAEoAqwtIAAvAQogACgCLCAAKAIYQQJ0ai8BAiAAKAIMamxqNgKsLQsLIAAgACgCHEEBajYCHAwBCwsCQCAAKAIERQ0AA0AgACAAKAIgQQFrNgIQA0AgACgCPEG8FmogACgCEEEBdGovAQBFBEAgACAAKAIQQQFrNgIQDAELCyAAKAI8IAAoAhBBAXRqQbwWaiIBIAEvAQBBAWs7AQAgACgCPCAAKAIQQQF0akG+FmoiASABLwEAQQJqOwEAIAAoAjwgACgCIEEBdGpBvBZqIgEgAS8BAEEBazsBACAAIAAoAgRBAms2AgQgACgCBEEASg0ACyAAIAAoAiA2AhADQCAAKAIQRQ0BIAAgACgCPEG8FmogACgCEEEBdGovAQA2AhgDQCAAKAIYBEAgACgCPEHcFmohASAAIAAoAhxBAWsiAzYCHCAAIANBAnQgAWooAgA2AhQgACgCFCAAKAIwSg0BIAAoAjQgACgCFEECdGovAQIgACgCEEcEQCAAKAI8IgEgASgCqC0gACgCNCAAKAIUQQJ0ai8BACAAKAIQIAAoAjQgACgCFEECdGovAQJrbGo2AqgtIAAoAjQgACgCFEECdGogACgCEDsBAgsgACAAKAIYQQFrNgIYDAELCyAAIAAoAhBBAWs2AhAMAAsACyACKAIkIQEgAigCECEDIAIoAixBvBZqIQQjAEFAaiIAJAAgACABNgI8IAAgAzYCOCAAIAQ2AjQgAEEANgIMIABBATYCCANAIAAoAghBD0wEQCAAIAAoAgwgACgCNCAAKAIIQQFrQQF0ai8BAGpBAXQ2AgwgAEEQaiAAKAIIQQF0aiAAKAIMOwEAIAAgACgCCEEBajYCCAwBCwsgAEEANgIEA0AgACgCBCAAKAI4TARAIAAgACgCPCAAKAIEQQJ0ai8BAjYCACAAKAIABEAgAEEQaiAAKAIAQQF0aiIBLwEAIQMgASADQQFqOwEAIAAoAgAhBCMAQRBrIgEgAzYCDCABIAQ2AgggAUEANgIEA0AgASABKAIEIAEoAgxBAXFyNgIEIAEgASgCDEEBdjYCDCABIAEoAgRBAXQ2AgQgASABKAIIQQFrIgM2AgggA0EASg0ACyABKAIEQQF2IQEgACgCPCAAKAIEQQJ0aiABOwEACyAAIAAoAgRBAWo2AgQMAQsLIABBQGskACACQTBqJAALTgEBfyMAQRBrIgIgADsBCiACIAE2AgQCQCACLwEKQQFGBEAgAigCBEEBRgRAIAJBADYCDAwCCyACQQQ2AgwMAQsgAkEANgIMCyACKAIMC84CAQF/IwBBMGsiBSQAIAUgADYCLCAFIAE2AiggBSACNgIkIAUgAzcDGCAFIAQ2AhQgBUIANwMIA0AgBSkDCCAFKQMYVARAIAUgBSgCJCAFKQMIp2otAAA6AAcgBSgCFEUEQCAFIAUoAiwoAhRBAnI7ARIgBSAFLwESIAUvARJBAXNsQQh2OwESIAUgBS0AByAFLwESQf8BcXM6AAcLIAUoAigEQCAFKAIoIAUpAwinaiAFLQAHOgAACyAFKAIsKAIMQX9zIAVBB2pBARAaQX9zIQAgBSgCLCAANgIMIAUoAiwgBSgCLCgCECAFKAIsKAIMQf8BcWpBhYiiwABsQQFqNgIQIAUgBSgCLCgCEEEYdjoAByAFKAIsKAIUQX9zIAVBB2pBARAaQX9zIQAgBSgCLCAANgIUIAUgBSkDCEIBfDcDCAwBCwsgBUEwaiQAC20BAX8jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI3AwggBCADNgIEAkAgBCgCGEUEQCAEQQA2AhwMAQsgBCAEKAIUIAQpAwggBCgCBCAEKAIYQQhqEMMBNgIcCyAEKAIcIQAgBEEgaiQAIAALpwMBAX8jAEEgayIEJAAgBCAANgIYIAQgATcDECAEIAI2AgwgBCADNgIIIAQgBCgCGCAEKQMQIAQoAgxBABBFIgA2AgACQCAARQRAIARBfzYCHAwBCyAEIAQoAhggBCkDECAEKAIMEMQBIgA2AgQgAEUEQCAEQX82AhwMAQsCQAJAIAQoAgxBCHENACAEKAIYKAJAIAQpAxCnQQR0aigCCEUNACAEKAIYKAJAIAQpAxCnQQR0aigCCCAEKAIIEDhBAEgEQCAEKAIYQQhqQQ9BABAUIARBfzYCHAwDCwwBCyAEKAIIEDsgBCgCCCAEKAIAKAIYNgIsIAQoAgggBCgCACkDKDcDGCAEKAIIIAQoAgAoAhQ2AiggBCgCCCAEKAIAKQMgNwMgIAQoAgggBCgCACgCEDsBMCAEKAIIIAQoAgAvAVI7ATIgBCgCCEEgQQAgBCgCAC0ABkEBcRtB3AFyrTcDAAsgBCgCCCAEKQMQNwMQIAQoAgggBCgCBDYCCCAEKAIIIgAgACkDAEIDhDcDACAEQQA2AhwLIAQoAhwhACAEQSBqJAAgAAsDAAELzQEBAX8jAEEQayIDJAAgAyAANgIMIAMgATYCCCADIAI2AgQgAyADQQxqQaifARALNgIAAkAgAygCAEUEQCADKAIEQSE7AQAgAygCCEEAOwEADAELIAMoAgAoAhRB0ABIBEAgAygCAEHQADYCFAsgAygCBCADKAIAKAIMIAMoAgAoAhRBCXQgAygCACgCEEEFdGpB4L8Ca2o7AQAgAygCCCADKAIAKAIIQQt0IAMoAgAoAgRBBXRqIAMoAgAoAgBBAXVqOwEACyADQRBqJAALgwMBAX8jAEEgayIDJAAgAyAAOwEaIAMgATYCFCADIAI2AhAgAyADKAIUIANBCGpBwABBABBGIgA2AgwCQCAARQRAIANBADYCHAwBCyADKAIIQQVqQf//A0sEQCADKAIQQRJBABAUIANBADYCHAwBCyADQQAgAygCCEEFaq0QKSIANgIEIABFBEAgAygCEEEOQQAQFCADQQA2AhwMAQsgAygCBEEBEI4BIAMoAgQgAygCFBCMARAgIAMoAgQgAygCDCADKAIIEEACfyMAQRBrIgAgAygCBDYCDCAAKAIMLQAAQQFxRQsEQCADKAIQQRRBABAUIAMoAgQQFiADQQA2AhwMAQsgAyADLwEaAn8jAEEQayIAIAMoAgQ2AgwCfiAAKAIMLQAAQQFxBEAgACgCDCkDEAwBC0IAC6dB//8DcQsCfyMAQRBrIgAgAygCBDYCDCAAKAIMKAIEC0GABhBRNgIAIAMoAgQQFiADIAMoAgA2AhwLIAMoAhwhACADQSBqJAAgAAu0AgEBfyMAQTBrIgMkACADIAA2AiggAyABNwMgIAMgAjYCHAJAIAMpAyBQBEAgA0EBOgAvDAELIAMgAygCKCkDECADKQMgfDcDCAJAIAMpAwggAykDIFoEQCADKQMIQv////8AWA0BCyADKAIcQQ5BABAUIANBADoALwwBCyADIAMoAigoAgAgAykDCKdBBHQQSCIANgIEIABFBEAgAygCHEEOQQAQFCADQQA6AC8MAQsgAygCKCADKAIENgIAIAMgAygCKCkDCDcDEANAIAMpAxAgAykDCFpFBEAgAygCKCgCACADKQMQp0EEdGoQkAEgAyADKQMQQgF8NwMQDAELCyADKAIoIAMpAwgiATcDECADKAIoIAE3AwggA0EBOgAvCyADLQAvQQFxIQAgA0EwaiQAIAALzAEBAX8jAEEgayICJAAgAiAANwMQIAIgATYCDCACQTAQGCIBNgIIAkAgAUUEQCACKAIMQQ5BABAUIAJBADYCHAwBCyACKAIIQQA2AgAgAigCCEIANwMQIAIoAghCADcDCCACKAIIQgA3AyAgAigCCEIANwMYIAIoAghBADYCKCACKAIIQQA6ACwgAigCCCACKQMQIAIoAgwQgwFBAXFFBEAgAigCCBAkIAJBADYCHAwBCyACIAIoAgg2AhwLIAIoAhwhASACQSBqJAAgAQvWAgEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjYCECADIANBDGpCBBApNgIIAkAgAygCCEUEQCADQX82AhwMAQsDQCADKAIUBEAgAygCFCgCBCADKAIQcUGABnEEQCADKAIIQgAQLBogAygCCCADKAIULwEIEB8gAygCCCADKAIULwEKEB8CfyMAQRBrIgAgAygCCDYCDCAAKAIMLQAAQQFxRQsEQCADKAIYQQhqQRRBABAUIAMoAggQFiADQX82AhwMBAsgAygCGCADQQxqQgQQNUEASARAIAMoAggQFiADQX82AhwMBAsgAygCFC8BCgRAIAMoAhggAygCFCgCDCADKAIULwEKrRA1QQBIBEAgAygCCBAWIANBfzYCHAwFCwsLIAMgAygCFCgCADYCFAwBCwsgAygCCBAWIANBADYCHAsgAygCHCEAIANBIGokACAAC2gBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADsBBgNAIAIoAgwEQCACKAIMKAIEIAIoAghxQYAGcQRAIAIgAigCDC8BCiACLwEGQQRqajsBBgsgAiACKAIMKAIANgIMDAELCyACLwEGC/ABAQF/IwBBEGsiASQAIAEgADYCDCABIAEoAgw2AgggAUEANgIEA0AgASgCDARAAkACQCABKAIMLwEIQfXGAUYNACABKAIMLwEIQfXgAUYNACABKAIMLwEIQYGyAkYNACABKAIMLwEIQQFHDQELIAEgASgCDCgCADYCACABKAIIIAEoAgxGBEAgASABKAIANgIICyABKAIMQQA2AgAgASgCDBAjIAEoAgQEQCABKAIEIAEoAgA2AgALIAEgASgCADYCDAwCCyABIAEoAgw2AgQgASABKAIMKAIANgIMDAELCyABKAIIIQAgAUEQaiQAIAALswQBAX8jAEFAaiIFJAAgBSAANgI4IAUgATsBNiAFIAI2AjAgBSADNgIsIAUgBDYCKCAFIAUoAjggBS8BNq0QKSIANgIkAkAgAEUEQCAFKAIoQQ5BABAUIAVBADoAPwwBCyAFQQA2AiAgBUEANgIYA0ACfyMAQRBrIgAgBSgCJDYCDCAAKAIMLQAAQQFxCwR/IAUoAiQQL0IEWgVBAAtBAXEEQCAFIAUoAiQQHTsBFiAFIAUoAiQQHTsBFCAFIAUoAiQgBS8BFK0QHjYCECAFKAIQRQRAIAUoAihBFUEAEBQgBSgCJBAWIAUoAhgQIyAFQQA6AD8MAwsgBSAFLwEWIAUvARQgBSgCECAFKAIwEFEiADYCHCAARQRAIAUoAihBDkEAEBQgBSgCJBAWIAUoAhgQIyAFQQA6AD8MAwsCQCAFKAIYBEAgBSgCICAFKAIcNgIAIAUgBSgCHDYCIAwBCyAFIAUoAhwiADYCICAFIAA2AhgLDAELCyAFKAIkEEdBAXFFBEAgBSAFKAIkEC8+AgwgBSAFKAIkIAUoAgytEB42AggCQAJAIAUoAgxBBE8NACAFKAIIRQ0AIAUoAghBktkAIAUoAgwQVEUNAQsgBSgCKEEVQQAQFCAFKAIkEBYgBSgCGBAjIAVBADoAPwwCCwsgBSgCJBAWAkAgBSgCLARAIAUoAiwgBSgCGDYCAAwBCyAFKAIYECMLIAVBAToAPwsgBS0AP0EBcSEAIAVBQGskACAAC+8CAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQCQCACKAIYRQRAIAIgAigCFDYCHAwBCyACIAIoAhg2AggDQCACKAIIKAIABEAgAiACKAIIKAIANgIIDAELCwNAIAIoAhQEQCACIAIoAhQoAgA2AhAgAkEANgIEIAIgAigCGDYCDANAAkAgAigCDEUNAAJAIAIoAgwvAQggAigCFC8BCEcNACACKAIMLwEKIAIoAhQvAQpHDQAgAigCDC8BCgRAIAIoAgwoAgwgAigCFCgCDCACKAIMLwEKEFQNAQsgAigCDCIAIAAoAgQgAigCFCgCBEGABnFyNgIEIAJBATYCBAwBCyACIAIoAgwoAgA2AgwMAQsLIAIoAhRBADYCAAJAIAIoAgQEQCACKAIUECMMAQsgAigCCCACKAIUIgA2AgAgAiAANgIICyACIAIoAhA2AhQMAQsLIAIgAigCGDYCHAsgAigCHCEAIAJBIGokACAAC10BAX8jAEEQayICJAAgAiAANgIIIAIgATYCBAJAIAIoAgRFBEAgAkEANgIMDAELIAIgAigCCCACKAIEKAIAIAIoAgQvAQStEDU2AgwLIAIoAgwhACACQRBqJAAgAAuPAQEBfyMAQRBrIgIkACACIAA2AgggAiABNgIEAkACQCACKAIIBEAgAigCBA0BCyACIAIoAgggAigCBEY2AgwMAQsgAigCCC8BBCACKAIELwEERwRAIAJBADYCDAwBCyACIAIoAggoAgAgAigCBCgCACACKAIILwEEEFRFNgIMCyACKAIMIQAgAkEQaiQAIAALVQEBfyMAQRBrIgEkACABIAA2AgwgAUEAQQBBABAaNgIIIAEoAgwEQCABIAEoAgggASgCDCgCACABKAIMLwEEEBo2AggLIAEoAgghACABQRBqJAAgAAugAQEBfyMAQSBrIgUkACAFIAA2AhggBSABNgIUIAUgAjsBEiAFIAM6ABEgBSAENgIMIAUgBSgCGCAFKAIUIAUvARIgBS0AEUEBcSAFKAIMEGAiADYCCAJAIABFBEAgBUEANgIcDAELIAUgBSgCCCAFLwESQQAgBSgCDBBSNgIEIAUoAggQFSAFIAUoAgQ2AhwLIAUoAhwhACAFQSBqJAAgAAtfAQF/IwBBEGsiAiQAIAIgADYCCCACIAE6AAcgAiACKAIIQgEQHjYCAAJAIAIoAgBFBEAgAkF/NgIMDAELIAIoAgAgAi0ABzoAACACQQA2AgwLIAIoAgwaIAJBEGokAAtUAQF/IwBBEGsiASQAIAEgADYCCCABIAEoAghCARAeNgIEAkAgASgCBEUEQCABQQA6AA8MAQsgASABKAIELQAAOgAPCyABLQAPIQAgAUEQaiQAIAALOAEBfyMAQRBrIgEgADYCDCABKAIMQQA2AgAgASgCDEEANgIEIAEoAgxBADYCCCABKAIMQQA6AAwLnwIBAX8jAEFAaiIFJAAgBSAANwMwIAUgATcDKCAFIAI2AiQgBSADNwMYIAUgBDYCFCAFAn8gBSkDGEIQVARAIAUoAhRBEkEAEBRBAAwBCyAFKAIkCzYCBAJAIAUoAgRFBEAgBUJ/NwM4DAELAkACQAJAAkACQCAFKAIEKAIIDgMCAAEDCyAFIAUpAzAgBSgCBCkDAHw3AwgMAwsgBSAFKQMoIAUoAgQpAwB8NwMIDAILIAUgBSgCBCkDADcDCAwBCyAFKAIUQRJBABAUIAVCfzcDOAwBCwJAIAUpAwhCAFkEQCAFKQMIIAUpAyhYDQELIAUoAhRBEkEAEBQgBUJ/NwM4DAELIAUgBSkDCDcDOAsgBSkDOCEAIAVBQGskACAAC+oBAgF/AX4jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMIAQgBCgCDBCTASIANgIIAkAgAEUEQCAEQQA2AhwMAQsjAEEQayIAIAQoAhg2AgwgACgCDCIAIAAoAjBBAWo2AjAgBCgCCCAEKAIYNgIAIAQoAgggBCgCFDYCBCAEKAIIIAQoAhA2AgggBCgCGCAEKAIQQQBCAEEOIAQoAhQRCgAhBSAEKAIIIAU3AxggBCgCCCkDGEIAUwRAIAQoAghCPzcDGAsgBCAEKAIINgIcCyAEKAIcIQAgBEEgaiQAIAAL6gEBAX8jAEEQayIBJAAgASAANgIIIAFBOBAYIgA2AgQCQCAARQRAIAEoAghBDkEAEBQgAUEANgIMDAELIAEoAgRBADYCACABKAIEQQA2AgQgASgCBEEANgIIIAEoAgRBADYCICABKAIEQQA2AiQgASgCBEEAOgAoIAEoAgRBADYCLCABKAIEQQE2AjAjAEEQayIAIAEoAgRBDGo2AgwgACgCDEEANgIAIAAoAgxBADYCBCAAKAIMQQA2AgggASgCBEEAOgA0IAEoAgRBADoANSABIAEoAgQ2AgwLIAEoAgwhACABQRBqJAAgAAuwAQIBfwF+IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgAygCEBCTASIANgIMAkAgAEUEQCADQQA2AhwMAQsgAygCDCADKAIYNgIEIAMoAgwgAygCFDYCCCADKAIUQQBCAEEOIAMoAhgRDgAhBCADKAIMIAQ3AxggAygCDCkDGEIAUwRAIAMoAgxCPzcDGAsgAyADKAIMNgIcCyADKAIcIQAgA0EgaiQAIAALwwIBAX8jAEEQayIDIAA2AgwgAyABNgIIIAMgAjYCBCADKAIIKQMAQgKDQgBSBEAgAygCDCADKAIIKQMQNwMQCyADKAIIKQMAQgSDQgBSBEAgAygCDCADKAIIKQMYNwMYCyADKAIIKQMAQgiDQgBSBEAgAygCDCADKAIIKQMgNwMgCyADKAIIKQMAQhCDQgBSBEAgAygCDCADKAIIKAIoNgIoCyADKAIIKQMAQiCDQgBSBEAgAygCDCADKAIIKAIsNgIsCyADKAIIKQMAQsAAg0IAUgRAIAMoAgwgAygCCC8BMDsBMAsgAygCCCkDAEKAAYNCAFIEQCADKAIMIAMoAggvATI7ATILIAMoAggpAwBCgAKDQgBSBEAgAygCDCADKAIIKAI0NgI0CyADKAIMIgAgAygCCCkDACAAKQMAhDcDAEEAC1oBAX8jAEEQayIBIAA2AggCQAJAIAEoAggoAgBBAE4EQCABKAIIKAIAQYAUKAIASA0BCyABQQA2AgwMAQsgASABKAIIKAIAQQJ0QZAUaigCADYCDAsgASgCDAumAQEBfyMAQSBrIgUkACAFIAA2AhggBSABNwMQIAUgAjYCDCAFIAM2AgggBSAENgIEIAUgBSgCGCAFKQMQIAUoAgxBABBFIgA2AgACQCAARQRAIAVBfzYCHAwBCyAFKAIIBEAgBSgCCCAFKAIALwEIQQh2OgAACyAFKAIEBEAgBSgCBCAFKAIAKAJENgIACyAFQQA2AhwLIAUoAhwhACAFQSBqJAAgAAucBgECfyMAQSBrIgIkACACIAA2AhggAiABNwMQAkAgAikDECACKAIYKQMwWgRAIAIoAhhBCGpBEkEAEBQgAkF/NgIcDAELIAIoAhgoAhhBAnEEQCACKAIYQQhqQRlBABAUIAJBfzYCHAwBCyACIAIoAhggAikDEEEAIAIoAhhBCGoQTiIANgIMIABFBEAgAkF/NgIcDAELIAIoAhgoAlAgAigCDCACKAIYQQhqEFhBAXFFBEAgAkF/NgIcDAELAn8gAigCGCEDIAIpAxAhASMAQTBrIgAkACAAIAM2AiggACABNwMgIABBATYCHAJAIAApAyAgACgCKCkDMFoEQCAAKAIoQQhqQRJBABAUIABBfzYCLAwBCwJAIAAoAhwNACAAKAIoKAJAIAApAyCnQQR0aigCBEUNACAAKAIoKAJAIAApAyCnQQR0aigCBCgCAEECcUUNAAJAIAAoAigoAkAgACkDIKdBBHRqKAIABEAgACAAKAIoIAApAyBBCCAAKAIoQQhqEE4iAzYCDCADRQRAIABBfzYCLAwECyAAIAAoAiggACgCDEEAQQAQVzcDEAJAIAApAxBCAFMNACAAKQMQIAApAyBRDQAgACgCKEEIakEKQQAQFCAAQX82AiwMBAsMAQsgAEEANgIMCyAAIAAoAiggACkDIEEAIAAoAihBCGoQTiIDNgIIIANFBEAgAEF/NgIsDAILIAAoAgwEQCAAKAIoKAJQIAAoAgwgACkDIEEAIAAoAihBCGoQdUEBcUUEQCAAQX82AiwMAwsLIAAoAigoAlAgACgCCCAAKAIoQQhqEFhBAXFFBEAgACgCKCgCUCAAKAIMQQAQWBogAEF/NgIsDAILCyAAKAIoKAJAIAApAyCnQQR0aigCBBA5IAAoAigoAkAgACkDIKdBBHRqQQA2AgQgACgCKCgCQCAAKQMgp0EEdGoQYyAAQQA2AiwLIAAoAiwhAyAAQTBqJAAgAwsEQCACQX82AhwMAQsgAigCGCgCQCACKQMQp0EEdGpBAToADCACQQA2AhwLIAIoAhwhACACQSBqJAAgAAulBAEBfyMAQTBrIgUkACAFIAA2AiggBSABNwMgIAUgAjYCHCAFIAM6ABsgBSAENgIUAkAgBSgCKCAFKQMgQQBBABBFRQRAIAVBfzYCLAwBCyAFKAIoKAIYQQJxBEAgBSgCKEEIakEZQQAQFCAFQX82AiwMAQsgBSAFKAIoKAJAIAUpAyCnQQR0ajYCECAFAn8gBSgCECgCAARAIAUoAhAoAgAvAQhBCHYMAQtBAws6AAsgBQJ/IAUoAhAoAgAEQCAFKAIQKAIAKAJEDAELQYCA2I14CzYCBEEBIQAgBSAFLQAbIAUtAAtGBH8gBSgCFCAFKAIERwVBAQtBAXE2AgwCQCAFKAIMBEAgBSgCECgCBEUEQCAFKAIQKAIAED8hACAFKAIQIAA2AgQgAEUEQCAFKAIoQQhqQQ5BABAUIAVBfzYCLAwECwsgBSgCECgCBCAFKAIQKAIELwEIQf8BcSAFLQAbQQh0cjsBCCAFKAIQKAIEIAUoAhQ2AkQgBSgCECgCBCIAIAAoAgBBEHI2AgAMAQsgBSgCECgCBARAIAUoAhAoAgQiACAAKAIAQW9xNgIAAkAgBSgCECgCBCgCAEUEQCAFKAIQKAIEEDkgBSgCEEEANgIEDAELIAUoAhAoAgQgBSgCECgCBC8BCEH/AXEgBS0AC0EIdHI7AQggBSgCECgCBCAFKAIENgJECwsLIAVBADYCLAsgBSgCLCEAIAVBMGokACAAC90PAgF/AX4jAEFAaiIEJAAgBCAANgI0IARCfzcDKCAEIAE2AiQgBCACNgIgIAQgAzYCHAJAIAQoAjQoAhhBAnEEQCAEKAI0QQhqQRlBABAUIARCfzcDOAwBCyAEIAQoAjQpAzA3AxAgBCkDKEJ/UQRAIARCfzcDCCAEKAIcQYDAAHEEQCAEIAQoAjQgBCgCJCAEKAIcQQAQVzcDCAsgBCkDCEJ/UQRAIAQoAjQhASMAQUBqIgAkACAAIAE2AjQCQCAAKAI0KQM4IAAoAjQpAzBCAXxYBEAgACAAKAI0KQM4NwMYIAAgACkDGEIBhjcDEAJAIAApAxBCEFQEQCAAQhA3AxAMAQsgACkDEEKACFYEQCAAQoAINwMQCwsgACAAKQMQIAApAxh8NwMYIAAgACkDGKdBBHStNwMIIAApAwggACgCNCkDOKdBBHStVARAIAAoAjRBCGpBDkEAEBQgAEJ/NwM4DAILIAAgACgCNCgCQCAAKQMYp0EEdBBINgIkIAAoAiRFBEAgACgCNEEIakEOQQAQFCAAQn83AzgMAgsgACgCNCAAKAIkNgJAIAAoAjQgACkDGDcDOAsgACgCNCIBKQMwIQUgASAFQgF8NwMwIAAgBTcDKCAAKAI0KAJAIAApAyinQQR0ahCQASAAIAApAyg3AzgLIAApAzghBSAAQUBrJAAgBCAFNwMIIAVCAFMEQCAEQn83AzgMAwsLIAQgBCkDCDcDKAsCQCAEKAIkRQ0AIAQoAjQhASAEKQMoIQUgBCgCJCECIAQoAhwhAyMAQUBqIgAkACAAIAE2AjggACAFNwMwIAAgAjYCLCAAIAM2AigCQCAAKQMwIAAoAjgpAzBaBEAgACgCOEEIakESQQAQFCAAQX82AjwMAQsgACgCOCgCGEECcQRAIAAoAjhBCGpBGUEAEBQgAEF/NgI8DAELAkACQCAAKAIsRQ0AIAAoAiwsAABFDQAgACAAKAIsIAAoAiwQK0H//wNxIAAoAiggACgCOEEIahBSIgE2AiAgAUUEQCAAQX82AjwMAwsCQCAAKAIoQYAwcQ0AIAAoAiBBABA6QQNHDQAgACgCIEECNgIICwwBCyAAQQA2AiALIAAgACgCOCAAKAIsQQBBABBXIgU3AxACQCAFQgBTDQAgACkDECAAKQMwUQ0AIAAoAiAQJSAAKAI4QQhqQQpBABAUIABBfzYCPAwBCwJAIAApAxBCAFMNACAAKQMQIAApAzBSDQAgACgCIBAlIABBADYCPAwBCyAAIAAoAjgoAkAgACkDMKdBBHRqNgIkAkAgACgCJCgCAARAIAAgACgCJCgCACgCMCAAKAIgEIsBQQBHOgAfDAELIABBADoAHwsCQCAALQAfQQFxDQAgACgCJCgCBA0AIAAoAiQoAgAQPyEBIAAoAiQgATYCBCABRQRAIAAoAjhBCGpBDkEAEBQgACgCIBAlIABBfzYCPAwCCwsgAAJ/IAAtAB9BAXEEQCAAKAIkKAIAKAIwDAELIAAoAiALQQBBACAAKAI4QQhqEEYiATYCCCABRQRAIAAoAiAQJSAAQX82AjwMAQsCQCAAKAIkKAIEBEAgACAAKAIkKAIEKAIwNgIEDAELAkAgACgCJCgCAARAIAAgACgCJCgCACgCMDYCBAwBCyAAQQA2AgQLCwJAIAAoAgQEQCAAIAAoAgRBAEEAIAAoAjhBCGoQRiIBNgIMIAFFBEAgACgCIBAlIABBfzYCPAwDCwwBCyAAQQA2AgwLIAAoAjgoAlAgACgCCCAAKQMwQQAgACgCOEEIahB1QQFxRQRAIAAoAiAQJSAAQX82AjwMAQsgACgCDARAIAAoAjgoAlAgACgCDEEAEFgaCwJAIAAtAB9BAXEEQCAAKAIkKAIEBEAgACgCJCgCBCgCAEECcQRAIAAoAiQoAgQoAjAQJSAAKAIkKAIEIgEgASgCAEF9cTYCAAJAIAAoAiQoAgQoAgBFBEAgACgCJCgCBBA5IAAoAiRBADYCBAwBCyAAKAIkKAIEIAAoAiQoAgAoAjA2AjALCwsgACgCIBAlDAELIAAoAiQoAgQoAgBBAnEEQCAAKAIkKAIEKAIwECULIAAoAiQoAgQiASABKAIAQQJyNgIAIAAoAiQoAgQgACgCIDYCMAsgAEEANgI8CyAAKAI8IQEgAEFAayQAIAFFDQAgBCgCNCkDMCAEKQMQUgRAIAQoAjQoAkAgBCkDKKdBBHRqEGIgBCgCNCAEKQMQNwMwCyAEQn83AzgMAQsgBCgCNCgCQCAEKQMop0EEdGoQYwJAIAQoAjQoAkAgBCkDKKdBBHRqKAIARQ0AIAQoAjQoAkAgBCkDKKdBBHRqKAIEBEAgBCgCNCgCQCAEKQMop0EEdGooAgQoAgBBAXENAQsgBCgCNCgCQCAEKQMop0EEdGooAgRFBEAgBCgCNCgCQCAEKQMop0EEdGooAgAQPyEAIAQoAjQoAkAgBCkDKKdBBHRqIAA2AgQgAEUEQCAEKAI0QQhqQQ5BABAUIARCfzcDOAwDCwsgBCgCNCgCQCAEKQMop0EEdGooAgRBfjYCECAEKAI0KAJAIAQpAyinQQR0aigCBCIAIAAoAgBBAXI2AgALIAQoAjQoAkAgBCkDKKdBBHRqIAQoAiA2AgggBCAEKQMoNwM4CyAEKQM4IQUgBEFAayQAIAULqgEBAX8jAEEwayICJAAgAiAANgIoIAIgATcDICACQQA2AhwCQAJAIAIoAigoAiRBAUYEQCACKAIcRQ0BIAIoAhxBAUYNASACKAIcQQJGDQELIAIoAihBDGpBEkEAEBQgAkF/NgIsDAELIAIgAikDIDcDCCACIAIoAhw2AhAgAkF/QQAgAigCKCACQQhqQhBBDBAhQgBTGzYCLAsgAigCLCEAIAJBMGokACAAC6UyAwZ/AX4BfCMAQeAAayIEJAAgBCAANgJYIAQgATYCVCAEIAI2AlACQAJAIAQoAlRBAE4EQCAEKAJYDQELIAQoAlBBEkEAEBQgBEEANgJcDAELIAQgBCgCVDYCTCMAQRBrIgAgBCgCWDYCDCAEIAAoAgwpAxg3A0BB4JoBKQMAQn9RBEAgBEF/NgIUIARBAzYCECAEQQc2AgwgBEEGNgIIIARBAjYCBCAEQQE2AgBB4JoBQQAgBBA2NwMAIARBfzYCNCAEQQ82AjAgBEENNgIsIARBDDYCKCAEQQo2AiQgBEEJNgIgQeiaAUEIIARBIGoQNjcDAAtB4JoBKQMAIAQpA0BB4JoBKQMAg1IEQCAEKAJQQRxBABAUIARBADYCXAwBC0HomgEpAwAgBCkDQEHomgEpAwCDUgRAIAQgBCgCTEEQcjYCTAsgBCgCTEEYcUEYRgRAIAQoAlBBGUEAEBQgBEEANgJcDAELIAQoAlghASAEKAJQIQIjAEHQAGsiACQAIAAgATYCSCAAIAI2AkQgAEEIahA7AkAgACgCSCAAQQhqEDgEQCMAQRBrIgEgACgCSDYCDCAAIAEoAgxBDGo2AgQjAEEQayIBIAAoAgQ2AgwCQCABKAIMKAIAQQVHDQAjAEEQayIBIAAoAgQ2AgwgASgCDCgCBEEsRw0AIABBADYCTAwCCyAAKAJEIAAoAgQQQyAAQX82AkwMAQsgAEEBNgJMCyAAKAJMIQEgAEHQAGokACAEIAE2AjwCQAJAAkAgBCgCPEEBag4CAAECCyAEQQA2AlwMAgsgBCgCTEEBcUUEQCAEKAJQQQlBABAUIARBADYCXAwCCyAEIAQoAlggBCgCTCAEKAJQEGo2AlwMAQsgBCgCTEECcQRAIAQoAlBBCkEAEBQgBEEANgJcDAELIAQoAlgQSUEASARAIAQoAlAgBCgCWBAXIARBADYCXAwBCwJAIAQoAkxBCHEEQCAEIAQoAlggBCgCTCAEKAJQEGo2AjgMAQsgBCgCWCEAIAQoAkwhASAEKAJQIQIjAEHwAGsiAyQAIAMgADYCaCADIAE2AmQgAyACNgJgIANBIGoQOwJAIAMoAmggA0EgahA4QQBIBEAgAygCYCADKAJoEBcgA0EANgJsDAELIAMpAyBCBINQBEAgAygCYEEEQYoBEBQgA0EANgJsDAELIAMgAykDODcDGCADIAMoAmggAygCZCADKAJgEGoiADYCXCAARQRAIANBADYCbAwBCwJAIAMpAxhQRQ0AIAMoAmgQngFBAXFFDQAgAyADKAJcNgJsDAELIAMoAlwhACADKQMYIQkjAEHgAGsiAiQAIAIgADYCWCACIAk3A1ACQCACKQNQQhZUBEAgAigCWEEIakETQQAQFCACQQA2AlwMAQsgAgJ+IAIpA1BCqoAEVARAIAIpA1AMAQtCqoAECzcDMCACKAJYKAIAQgAgAikDMH1BAhAnQQBIBEAjAEEQayIAIAIoAlgoAgA2AgwgAiAAKAIMQQxqNgIIAkACfyMAQRBrIgAgAigCCDYCDCAAKAIMKAIAQQRGCwRAIwBBEGsiACACKAIINgIMIAAoAgwoAgRBFkYNAQsgAigCWEEIaiACKAIIEEMgAkEANgJcDAILCyACIAIoAlgoAgAQSiIJNwM4IAlCAFMEQCACKAJYQQhqIAIoAlgoAgAQFyACQQA2AlwMAQsgAiACKAJYKAIAIAIpAzBBACACKAJYQQhqEEEiADYCDCAARQRAIAJBADYCXAwBCyACQn83AyAgAkEANgJMIAIpAzBCqoAEWgRAIAIoAgxCFBAsGgsgAkEQakETQQAQFCACIAIoAgxCABAeNgJEA0ACQCACKAJEIQEgAigCDBAvQhJ9pyEFIwBBIGsiACQAIAAgATYCGCAAIAU2AhQgAEHsEjYCECAAQQQ2AgwCQAJAIAAoAhQgACgCDE8EQCAAKAIMDQELIABBADYCHAwBCyAAIAAoAhhBAWs2AggDQAJAIAAgACgCCEEBaiAAKAIQLQAAIAAoAhggACgCCGsgACgCFCAAKAIMa2oQqwEiATYCCCABRQ0AIAAoAghBAWogACgCEEEBaiAAKAIMQQFrEFQNASAAIAAoAgg2AhwMAgsLIABBADYCHAsgACgCHCEBIABBIGokACACIAE2AkQgAUUNACACKAIMIAIoAkQCfyMAQRBrIgAgAigCDDYCDCAAKAIMKAIEC2usECwaIAIoAlghASACKAIMIQUgAikDOCEJIwBB8ABrIgAkACAAIAE2AmggACAFNgJkIAAgCTcDWCAAIAJBEGo2AlQjAEEQayIBIAAoAmQ2AgwgAAJ+IAEoAgwtAABBAXEEQCABKAIMKQMQDAELQgALNwMwAkAgACgCZBAvQhZUBEAgACgCVEETQQAQFCAAQQA2AmwMAQsgACgCZEIEEB4oAABB0JaVMEcEQCAAKAJUQRNBABAUIABBADYCbAwBCwJAAkAgACkDMEIUVA0AIwBBEGsiASAAKAJkNgIMIAEoAgwoAgQgACkDMKdqQRRrKAAAQdCWmThHDQAgACgCZCAAKQMwQhR9ECwaIAAoAmgoAgAhBSAAKAJkIQYgACkDWCEJIAAoAmgoAhQhByAAKAJUIQgjAEGwAWsiASQAIAEgBTYCqAEgASAGNgKkASABIAk3A5gBIAEgBzYClAEgASAINgKQASMAQRBrIgUgASgCpAE2AgwgAQJ+IAUoAgwtAABBAXEEQCAFKAIMKQMQDAELQgALNwMYIAEoAqQBQgQQHhogASABKAKkARAdQf//A3E2AhAgASABKAKkARAdQf//A3E2AgggASABKAKkARAwNwM4AkAgASkDOEL///////////8AVgRAIAEoApABQQRBFhAUIAFBADYCrAEMAQsgASkDOEI4fCABKQMYIAEpA5gBfFYEQCABKAKQAUEVQQAQFCABQQA2AqwBDAELAkACQCABKQM4IAEpA5gBVA0AIAEpAzhCOHwgASkDmAECfiMAQRBrIgUgASgCpAE2AgwgBSgCDCkDCAt8Vg0AIAEoAqQBIAEpAzggASkDmAF9ECwaIAFBADoAFwwBCyABKAKoASABKQM4QQAQJ0EASARAIAEoApABIAEoAqgBEBcgAUEANgKsAQwCCyABIAEoAqgBQjggAUFAayABKAKQARBBIgU2AqQBIAVFBEAgAUEANgKsAQwCCyABQQE6ABcLIAEoAqQBQgQQHigAAEHQlpkwRwRAIAEoApABQRVBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELIAEgASgCpAEQMDcDMAJAIAEoApQBQQRxRQ0AIAEpAzAgASkDOHxCDHwgASkDmAEgASkDGHxRDQAgASgCkAFBFUEAEBQgAS0AF0EBcQRAIAEoAqQBEBYLIAFBADYCrAEMAQsgASgCpAFCBBAeGiABIAEoAqQBECo2AgwgASABKAKkARAqNgIEIAEoAhBB//8DRgRAIAEgASgCDDYCEAsgASgCCEH//wNGBEAgASABKAIENgIICwJAIAEoApQBQQRxRQ0AIAEoAgggASgCBEYEQCABKAIQIAEoAgxGDQELIAEoApABQRVBABAUIAEtABdBAXEEQCABKAKkARAWCyABQQA2AqwBDAELAkAgASgCEEUEQCABKAIIRQ0BCyABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDA3AyggASABKAKkARAwNwMgIAEpAyggASkDIFIEQCABKAKQAUEBQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABIAEoAqQBEDA3AzAgASABKAKkARAwNwOAAQJ/IwBBEGsiBSABKAKkATYCDCAFKAIMLQAAQQFxRQsEQCABKAKQAUEUQQAQFCABLQAXQQFxBEAgASgCpAEQFgsgAUEANgKsAQwBCyABLQAXQQFxBEAgASgCpAEQFgsCQCABKQOAAUL///////////8AWARAIAEpA4ABIAEpA4ABIAEpAzB8WA0BCyABKAKQAUEEQRYQFCABQQA2AqwBDAELIAEpA4ABIAEpAzB8IAEpA5gBIAEpAzh8VgRAIAEoApABQRVBABAUIAFBADYCrAEMAQsCQCABKAKUAUEEcUUNACABKQOAASABKQMwfCABKQOYASABKQM4fFENACABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEpAyggASkDMEIugFYEQCABKAKQAUEVQQAQFCABQQA2AqwBDAELIAEgASkDKCABKAKQARCEASIFNgKMASAFRQRAIAFBADYCrAEMAQsgASgCjAFBAToALCABKAKMASABKQMwNwMYIAEoAowBIAEpA4ABNwMgIAEgASgCjAE2AqwBCyABKAKsASEFIAFBsAFqJAAgACAFNgJQDAELIAAoAmQgACkDMBAsGiAAKAJkIQUgACkDWCEJIAAoAmgoAhQhBiAAKAJUIQcjAEHQAGsiASQAIAEgBTYCSCABIAk3A0AgASAGNgI8IAEgBzYCOAJAIAEoAkgQL0IWVARAIAEoAjhBFUEAEBQgAUEANgJMDAELIwBBEGsiBSABKAJINgIMIAECfiAFKAIMLQAAQQFxBEAgBSgCDCkDEAwBC0IACzcDCCABKAJIQgQQHhogASgCSBAqBEAgASgCOEEBQQAQFCABQQA2AkwMAQsgASABKAJIEB1B//8Dca03AyggASABKAJIEB1B//8Dca03AyAgASkDICABKQMoUgRAIAEoAjhBE0EAEBQgAUEANgJMDAELIAEgASgCSBAqrTcDGCABIAEoAkgQKq03AxAgASkDECABKQMQIAEpAxh8VgRAIAEoAjhBBEEWEBQgAUEANgJMDAELIAEpAxAgASkDGHwgASkDQCABKQMIfFYEQCABKAI4QRVBABAUIAFBADYCTAwBCwJAIAEoAjxBBHFFDQAgASkDECABKQMYfCABKQNAIAEpAwh8UQ0AIAEoAjhBFUEAEBQgAUEANgJMDAELIAEgASkDICABKAI4EIQBIgU2AjQgBUUEQCABQQA2AkwMAQsgASgCNEEAOgAsIAEoAjQgASkDGDcDGCABKAI0IAEpAxA3AyAgASABKAI0NgJMCyABKAJMIQUgAUHQAGokACAAIAU2AlALIAAoAlBFBEAgAEEANgJsDAELIAAoAmQgACkDMEIUfBAsGiAAIAAoAmQQHTsBTiAAKAJQKQMgIAAoAlApAxh8IAApA1ggACkDMHxWBEAg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IAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACKAIsIAIoAgxJC0EBcQ0ACyACQYICIAIoAgwgAigCLGtrNgIkIAIgAigCDEGCAms2AiwgAigCJCACKAIgSgRAIAIoAjggAigCNDYCcCACIAIoAiQ2AiAgAigCJCACKAIcTg0CIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAoLCyACIAIoAhQgAigCNCACKAIQcUEBdGovAQAiATYCNEEAIQAgASACKAIYSwR/IAIgAigCMEEBayIANgIwIABBAEcFQQALQQFxDQELCwJAIAIoAiAgAigCOCgCdE0EQCACIAIoAiA2AjwMAQsgAiACKAI4KAJ0NgI8CyACKAI8C5IQAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAgJ/IAIoAigoAiwgAigCKCgCDEEFa0kEQCACKAIoKAIsDAELIAIoAigoAgxBBWsLNgIgIAJBADYCECACIAIoAigoAgAoAgQ2AgwDQAJAIAJB//8DNgIcIAIgAigCKCgCvC1BKmpBA3U2AhQgAigCKCgCACgCECACKAIUSQ0AIAIgAigCKCgCACgCECACKAIUazYCFCACIAIoAigoAmwgAigCKCgCXGs2AhggAigCHCACKAIYIAIoAigoAgAoAgRqSwRAIAIgAigCGCACKAIoKAIAKAIEajYCHAsgAigCHCACKAIUSwRAIAIgAigCFDYCHAsCQCACKAIcIAIoAiBPDQACQCACKAIcRQRAIAIoAiRBBEcNAQsgAigCJEUNACACKAIcIAIoAhggAigCKCgCACgCBGpGDQELDAELQQAhACACIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcTYCECACKAIoQQBBACACKAIQEFwgAigCKCgCCCACKAIoKAIUQQRraiACKAIcOgAAIAIoAigoAgggAigCKCgCFEEDa2ogAigCHEEIdjoAACACKAIoKAIIIAIoAigoAhRBAmtqIAIoAhxBf3M6AAAgAigCKCgCCCACKAIoKAIUQQFraiACKAIcQX9zQQh2OgAAIAIoAigoAgAQHCACKAIYBEAgAigCGCACKAIcSwRAIAIgAigCHDYCGAsgAigCKCgCACgCDCACKAIoKAI4IAIoAigoAlxqIAIoAhgQGRogAigCKCgCACIAIAIoAhggACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCGGs2AhAgAigCKCgCACIAIAIoAhggACgCFGo2AhQgAigCKCIAIAIoAhggACgCXGo2AlwgAiACKAIcIAIoAhhrNgIcCyACKAIcBEAgAigCKCgCACACKAIoKAIAKAIMIAIoAhwQeBogAigCKCgCACIAIAIoAhwgACgCDGo2AgwgAigCKCgCACIAIAAoAhAgAigCHGs2AhAgAigCKCgCACIAIAIoAhwgACgCFGo2AhQLIAIoAhBFDQELCyACIAIoAgwgAigCKCgCACgCBGs2AgwgAigCDARAAkAgAigCDCACKAIoKAIsTwRAIAIoAihBAjYCsC0gAigCKCgCOCACKAIoKAIAKAIAIAIoAigoAixrIAIoAigoAiwQGRogAigCKCACKAIoKAIsNgJsDAELIAIoAgwgAigCKCgCPCACKAIoKAJsa08EQCACKAIoIgAgACgCbCACKAIoKAIsazYCbCACKAIoKAI4IAIoAigoAjggAigCKCgCLGogAigCKCgCbBAZGiACKAIoKAKwLUECSQRAIAIoAigiACAAKAKwLUEBajYCsC0LCyACKAIoKAI4IAIoAigoAmxqIAIoAigoAgAoAgAgAigCDGsgAigCDBAZGiACKAIoIgAgAigCDCAAKAJsajYCbAsgAigCKCACKAIoKAJsNgJcIAIoAigiAQJ/IAIoAgwgAigCKCgCLCACKAIoKAK0LWtLBEAgAigCKCgCLCACKAIoKAK0LWsMAQsgAigCDAsgASgCtC1qNgK0LQsgAigCKCgCwC0gAigCKCgCbEkEQCACKAIoIAIoAigoAmw2AsAtCwJAIAIoAhAEQCACQQM2AiwMAQsCQCACKAIkRQ0AIAIoAiRBBEYNACACKAIoKAIAKAIEDQAgAigCKCgCbCACKAIoKAJcRw0AIAJBATYCLAwBCyACIAIoAigoAjwgAigCKCgCbGtBAWs2AhQCQCACKAIoKAIAKAIEIAIoAhRNDQAgAigCKCgCXCACKAIoKAIsSA0AIAIoAigiACAAKAJcIAIoAigoAixrNgJcIAIoAigiACAAKAJsIAIoAigoAixrNgJsIAIoAigoAjggAigCKCgCOCACKAIoKAIsaiACKAIoKAJsEBkaIAIoAigoArAtQQJJBEAgAigCKCIAIAAoArAtQQFqNgKwLQsgAiACKAIoKAIsIAIoAhRqNgIUCyACKAIUIAIoAigoAgAoAgRLBEAgAiACKAIoKAIAKAIENgIUCyACKAIUBEAgAigCKCgCACACKAIoKAI4IAIoAigoAmxqIAIoAhQQeBogAigCKCIAIAIoAhQgACgCbGo2AmwLIAIoAigoAsAtIAIoAigoAmxJBEAgAigCKCACKAIoKAJsNgLALQsgAiACKAIoKAK8LUEqakEDdTYCFCACIAIoAigoAgwgAigCFGtB//8DSwR/Qf//AwUgAigCKCgCDCACKAIUaws2AhQgAgJ/IAIoAhQgAigCKCgCLEsEQCACKAIoKAIsDAELIAIoAhQLNgIgIAIgAigCKCgCbCACKAIoKAJcazYCGAJAIAIoAhggAigCIEkEQCACKAIYRQRAIAIoAiRBBEcNAgsgAigCJEUNASACKAIoKAIAKAIEDQEgAigCGCACKAIUSw0BCyACAn8gAigCGCACKAIUSwRAIAIoAhQMAQsgAigCGAs2AhwgAgJ/QQAgAigCJEEERw0AGkEAIAIoAigoAgAoAgQNABogAigCHCACKAIYRgtBAXE2AhAgAigCKCACKAIoKAI4IAIoAigoAlxqIAIoAhwgAigCEBBcIAIoAigiACACKAIcIAAoAlxqNgJcIAIoAigoAgAQHAsgAkECQQAgAigCEBs2AiwLIAIoAiwhACACQTBqJAAgAAuyAgEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIEHkEQCABQX42AgwMAQsgASABKAIIKAIcKAIENgIEIAEoAggoAhwoAggEQCABKAIIKAIoIAEoAggoAhwoAgggASgCCCgCJBEEAAsgASgCCCgCHCgCRARAIAEoAggoAiggASgCCCgCHCgCRCABKAIIKAIkEQQACyABKAIIKAIcKAJABEAgASgCCCgCKCABKAIIKAIcKAJAIAEoAggoAiQRBAALIAEoAggoAhwoAjgEQCABKAIIKAIoIAEoAggoAhwoAjggASgCCCgCJBEEAAsgASgCCCgCKCABKAIIKAIcIAEoAggoAiQRBAAgASgCCEEANgIcIAFBfUEAIAEoAgRB8QBGGzYCDAsgASgCDCEAIAFBEGokACAAC+sXAQJ/IwBB8ABrIgMgADYCbCADIAE2AmggAyACNgJkIANBfzYCXCADIAMoAmgvAQI2AlQgA0EANgJQIANBBzYCTCADQQQ2AkggAygCVEUEQCADQYoBNgJMIANBAzYCSAsgA0EANgJgA0AgAygCYCADKAJkSkUEQCADIAMoAlQ2AlggAyADKAJoIAMoAmBBAWpBAnRqLwECNgJUIAMgAygCUEEBaiIANgJQAkACQCADKAJMIABMDQAgAygCWCADKAJURw0ADAELAkAgAygCUCADKAJISARAA0AgAyADKAJsQfwUaiADKAJYQQJ0ai8BAjYCRAJAIAMoAmwoArwtQRAgAygCRGtKBEAgAyADKAJsQfwUaiADKAJYQQJ0ai8BADYCQCADKAJsIgAgAC8BuC0gAygCQEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAJAQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCREEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJsQfwUaiADKAJYQQJ0ai8BACADKAJsKAK8LXRyOwG4LSADKAJsIgAgAygCRCAAKAK8LWo2ArwtCyADIAMoAlBBAWsiADYCUCAADQALDAELAkAgAygCWARAIAMoAlggAygCXEcEQCADIAMoAmxB/BRqIAMoAlhBAnRqLwECNgI8AkAgAygCbCgCvC1BECADKAI8a0oEQCADIAMoAmxB/BRqIAMoAlhBAnRqLwEANgI4IAMoAmwiACAALwG4LSADKAI4Qf//A3EgAygCbCgCvC10cjsBuC0gAygCbC8BuC1B/wFxIQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbC8BuC1BCHYhASADKAJsKAIIIQIgAygCbCIEKAIUIQAgBCAAQQFqNgIUIAAgAmogAToAACADKAJsIAMoAjhB//8DcUEQIAMoAmwoArwta3U7AbgtIAMoAmwiACAAKAK8LSADKAI8QRBrajYCvC0MAQsgAygCbCIAIAAvAbgtIAMoAmxB/BRqIAMoAlhBAnRqLwEAIAMoAmwoArwtdHI7AbgtIAMoAmwiACADKAI8IAAoArwtajYCvC0LIAMgAygCUEEBazYCUAsgAyADKAJsLwG+FTYCNAJAIAMoAmwoArwtQRAgAygCNGtKBEAgAyADKAJsLwG8FTYCMCADKAJsIgAgAC8BuC0gAygCMEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIwQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCNEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJsLwG8FSADKAJsKAK8LXRyOwG4LSADKAJsIgAgAygCNCAAKAK8LWo2ArwtCyADQQI2AiwCQCADKAJsKAK8LUEQIAMoAixrSgRAIAMgAygCUEEDazYCKCADKAJsIgAgAC8BuC0gAygCKEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIoQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCLEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJQQQNrQf//A3EgAygCbCgCvC10cjsBuC0gAygCbCIAIAMoAiwgACgCvC1qNgK8LQsMAQsCQCADKAJQQQpMBEAgAyADKAJsLwHCFTYCJAJAIAMoAmwoArwtQRAgAygCJGtKBEAgAyADKAJsLwHAFTYCICADKAJsIgAgAC8BuC0gAygCIEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIgQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCJEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJsLwHAFSADKAJsKAK8LXRyOwG4LSADKAJsIgAgAygCJCAAKAK8LWo2ArwtCyADQQM2AhwCQCADKAJsKAK8LUEQIAMoAhxrSgRAIAMgAygCUEEDazYCGCADKAJsIgAgAC8BuC0gAygCGEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIYQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCHEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJQQQNrQf//A3EgAygCbCgCvC10cjsBuC0gAygCbCIAIAMoAhwgACgCvC1qNgK8LQsMAQsgAyADKAJsLwHGFTYCFAJAIAMoAmwoArwtQRAgAygCFGtKBEAgAyADKAJsLwHEFTYCECADKAJsIgAgAC8BuC0gAygCEEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIQQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCFEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJsLwHEFSADKAJsKAK8LXRyOwG4LSADKAJsIgAgAygCFCAAKAK8LWo2ArwtCyADQQc2AgwCQCADKAJsKAK8LUEQIAMoAgxrSgRAIAMgAygCUEELazYCCCADKAJsIgAgAC8BuC0gAygCCEH//wNxIAMoAmwoArwtdHI7AbgtIAMoAmwvAbgtQf8BcSEBIAMoAmwoAgghAiADKAJsIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAmwvAbgtQQh2IQEgAygCbCgCCCECIAMoAmwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCbCADKAIIQf//A3FBECADKAJsKAK8LWt1OwG4LSADKAJsIgAgACgCvC0gAygCDEEQa2o2ArwtDAELIAMoAmwiACAALwG4LSADKAJQQQtrQf//A3EgAygCbCgCvC10cjsBuC0gAygCbCIAIAMoAgwgACgCvC1qNgK8LQsLCwsgA0EANgJQIAMgAygCWDYCXAJAIAMoAlRFBEAgA0GKATYCTCADQQM2AkgMAQsCQCADKAJYIAMoAlRGBEAgA0EGNgJMIANBAzYCSAwBCyADQQc2AkwgA0EENgJICwsLIAMgAygCYEEBajYCYAwBCwsLkQQBAX8jAEEwayIDIAA2AiwgAyABNgIoIAMgAjYCJCADQX82AhwgAyADKAIoLwECNgIUIANBADYCECADQQc2AgwgA0EENgIIIAMoAhRFBEAgA0GKATYCDCADQQM2AggLIAMoAiggAygCJEEBakECdGpB//8DOwECIANBADYCIANAIAMoAiAgAygCJEpFBEAgAyADKAIUNgIYIAMgAygCKCADKAIgQQFqQQJ0ai8BAjYCFCADIAMoAhBBAWoiADYCEAJAAkAgAygCDCAATA0AIAMoAhggAygCFEcNAAwBCwJAIAMoAhAgAygCCEgEQCADKAIsQfwUaiADKAIYQQJ0aiIAIAMoAhAgAC8BAGo7AQAMAQsCQCADKAIYBEAgAygCGCADKAIcRwRAIAMoAiwgAygCGEECdGpB/BRqIgAgAC8BAEEBajsBAAsgAygCLCIAIABBvBVqLwEAQQFqOwG8FQwBCwJAIAMoAhBBCkwEQCADKAIsIgAgAEHAFWovAQBBAWo7AcAVDAELIAMoAiwiACAAQcQVai8BAEEBajsBxBULCwsgA0EANgIQIAMgAygCGDYCHAJAIAMoAhRFBEAgA0GKATYCDCADQQM2AggMAQsCQCADKAIYIAMoAhRGBEAgA0EGNgIMIANBAzYCCAwBCyADQQc2AgwgA0EENgIICwsLIAMgAygCIEEBajYCIAwBCwsLpxIBAn8jAEHQAGsiAyAANgJMIAMgATYCSCADIAI2AkQgA0EANgI4IAMoAkwoAqAtBEADQCADIAMoAkwoAqQtIAMoAjhBAXRqLwEANgJAIAMoAkwoApgtIQAgAyADKAI4IgFBAWo2AjggAyAAIAFqLQAANgI8AkAgAygCQEUEQCADIAMoAkggAygCPEECdGovAQI2AiwCQCADKAJMKAK8LUEQIAMoAixrSgRAIAMgAygCSCADKAI8QQJ0ai8BADYCKCADKAJMIgAgAC8BuC0gAygCKEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwvAbgtQf8BcSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwvAbgtQQh2IQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTCADKAIoQf//A3FBECADKAJMKAK8LWt1OwG4LSADKAJMIgAgACgCvC0gAygCLEEQa2o2ArwtDAELIAMoAkwiACAALwG4LSADKAJIIAMoAjxBAnRqLwEAIAMoAkwoArwtdHI7AbgtIAMoAkwiACADKAIsIAAoArwtajYCvC0LDAELIAMgAygCPC0A0F02AjQgAyADKAJIIAMoAjRBgQJqQQJ0ai8BAjYCJAJAIAMoAkwoArwtQRAgAygCJGtKBEAgAyADKAJIIAMoAjRBgQJqQQJ0ai8BADYCICADKAJMIgAgAC8BuC0gAygCIEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwvAbgtQf8BcSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwvAbgtQQh2IQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTCADKAIgQf//A3FBECADKAJMKAK8LWt1OwG4LSADKAJMIgAgACgCvC0gAygCJEEQa2o2ArwtDAELIAMoAkwiACAALwG4LSADKAJIIAMoAjRBgQJqQQJ0ai8BACADKAJMKAK8LXRyOwG4LSADKAJMIgAgAygCJCAAKAK8LWo2ArwtCyADIAMoAjRBAnRBkOoAaigCADYCMCADKAIwBEAgAyADKAI8IAMoAjRBAnRBgO0AaigCAGs2AjwgAyADKAIwNgIcAkAgAygCTCgCvC1BECADKAIca0oEQCADIAMoAjw2AhggAygCTCIAIAAvAbgtIAMoAhhB//8DcSADKAJMKAK8LXRyOwG4LSADKAJMLwG4LUH/AXEhASADKAJMKAIIIQIgAygCTCIEKAIUIQAgBCAAQQFqNgIUIAAgAmogAToAACADKAJMLwG4LUEIdiEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwgAygCGEH//wNxQRAgAygCTCgCvC1rdTsBuC0gAygCTCIAIAAoArwtIAMoAhxBEGtqNgK8LQwBCyADKAJMIgAgAC8BuC0gAygCPEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwiACADKAIcIAAoArwtajYCvC0LCyADIAMoAkBBAWs2AkAgAwJ/IAMoAkBBgAJJBEAgAygCQC0A0FkMAQsgAygCQEEHdkGAAmotANBZCzYCNCADIAMoAkQgAygCNEECdGovAQI2AhQCQCADKAJMKAK8LUEQIAMoAhRrSgRAIAMgAygCRCADKAI0QQJ0ai8BADYCECADKAJMIgAgAC8BuC0gAygCEEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwvAbgtQf8BcSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwvAbgtQQh2IQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTCADKAIQQf//A3FBECADKAJMKAK8LWt1OwG4LSADKAJMIgAgACgCvC0gAygCFEEQa2o2ArwtDAELIAMoAkwiACAALwG4LSADKAJEIAMoAjRBAnRqLwEAIAMoAkwoArwtdHI7AbgtIAMoAkwiACADKAIUIAAoArwtajYCvC0LIAMgAygCNEECdEGQ6wBqKAIANgIwIAMoAjAEQCADIAMoAkAgAygCNEECdEGA7gBqKAIAazYCQCADIAMoAjA2AgwCQCADKAJMKAK8LUEQIAMoAgxrSgRAIAMgAygCQDYCCCADKAJMIgAgAC8BuC0gAygCCEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwvAbgtQf8BcSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwvAbgtQQh2IQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTCADKAIIQf//A3FBECADKAJMKAK8LWt1OwG4LSADKAJMIgAgACgCvC0gAygCDEEQa2o2ArwtDAELIAMoAkwiACAALwG4LSADKAJAQf//A3EgAygCTCgCvC10cjsBuC0gAygCTCIAIAMoAgwgACgCvC1qNgK8LQsLCyADKAI4IAMoAkwoAqAtSQ0ACwsgAyADKAJILwGCCDYCBAJAIAMoAkwoArwtQRAgAygCBGtKBEAgAyADKAJILwGACDYCACADKAJMIgAgAC8BuC0gAygCAEH//wNxIAMoAkwoArwtdHI7AbgtIAMoAkwvAbgtQf8BcSEBIAMoAkwoAgghAiADKAJMIgQoAhQhACAEIABBAWo2AhQgACACaiABOgAAIAMoAkwvAbgtQQh2IQEgAygCTCgCCCECIAMoAkwiBCgCFCEAIAQgAEEBajYCFCAAIAJqIAE6AAAgAygCTCADKAIAQf//A3FBECADKAJMKAK8LWt1OwG4LSADKAJMIgAgACgCvC0gAygCBEEQa2o2ArwtDAELIAMoAkwiACAALwG4LSADKAJILwGACCADKAJMKAK8LXRyOwG4LSADKAJMIgAgAygCBCAAKAK8LWo2ArwtCwuXAgEEfyMAQRBrIgEgADYCDAJAIAEoAgwoArwtQRBGBEAgASgCDC8BuC1B/wFxIQIgASgCDCgCCCEDIAEoAgwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAI6AAAgASgCDC8BuC1BCHYhAiABKAIMKAIIIQMgASgCDCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAjoAACABKAIMQQA7AbgtIAEoAgxBADYCvC0MAQsgASgCDCgCvC1BCE4EQCABKAIMLwG4LSECIAEoAgwoAgghAyABKAIMIgQoAhQhACAEIABBAWo2AhQgACADaiACOgAAIAEoAgwiACAALwG4LUEIdjsBuC0gASgCDCIAIAAoArwtQQhrNgK8LQsLC+8BAQR/IwBBEGsiASAANgIMAkAgASgCDCgCvC1BCEoEQCABKAIMLwG4LUH/AXEhAiABKAIMKAIIIQMgASgCDCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAjoAACABKAIMLwG4LUEIdiECIAEoAgwoAgghAyABKAIMIgQoAhQhACAEIABBAWo2AhQgACADaiACOgAADAELIAEoAgwoArwtQQBKBEAgASgCDC8BuC0hAiABKAIMKAIIIQMgASgCDCIEKAIUIQAgBCAAQQFqNgIUIAAgA2ogAjoAAAsLIAEoAgxBADsBuC0gASgCDEEANgK8LQv8AQEBfyMAQRBrIgEgADYCDCABQQA2AggDQCABKAIIQZ4CTkUEQCABKAIMQZQBaiABKAIIQQJ0akEAOwEAIAEgASgCCEEBajYCCAwBCwsgAUEANgIIA0AgASgCCEEeTkUEQCABKAIMQYgTaiABKAIIQQJ0akEAOwEAIAEgASgCCEEBajYCCAwBCwsgAUEANgIIA0AgASgCCEETTkUEQCABKAIMQfwUaiABKAIIQQJ0akEAOwEAIAEgASgCCEEBajYCCAwBCwsgASgCDEEBOwGUCSABKAIMQQA2AqwtIAEoAgxBADYCqC0gASgCDEEANgKwLSABKAIMQQA2AqAtCyIBAX8jAEEQayIBJAAgASAANgIMIAEoAgwQFSABQRBqJAAL6QEBAX8jAEEwayICIAA2AiQgAiABNwMYIAJCADcDECACIAIoAiQpAwhCAX03AwgCQANAIAIpAxAgAikDCFQEQCACIAIpAxAgAikDCCACKQMQfUIBiHw3AwACQCACKAIkKAIEIAIpAwCnQQN0aikDACACKQMYVgRAIAIgAikDAEIBfTcDCAwBCwJAIAIpAwAgAigCJCkDCFIEQCACKAIkKAIEIAIpAwBCAXynQQN0aikDACACKQMYWA0BCyACIAIpAwA3AygMBAsgAiACKQMAQgF8NwMQCwwBCwsgAiACKQMQNwMoCyACKQMoC6cBAQF/IwBBMGsiBCQAIAQgADYCKCAEIAE2AiQgBCACNwMYIAQgAzYCFCAEIAQoAigpAzggBCgCKCkDMCAEKAIkIAQpAxggBCgCFBCRATcDCAJAIAQpAwhCAFMEQCAEQX82AiwMAQsgBCgCKCAEKQMINwM4IAQoAiggBCgCKCkDOBC/ASECIAQoAiggAjcDQCAEQQA2AiwLIAQoAiwhACAEQTBqJAAgAAvrAQEBfyMAQSBrIgMkACADIAA2AhggAyABNwMQIAMgAjYCDAJAIAMpAxAgAygCGCkDEFQEQCADQQE6AB8MAQsgAyADKAIYKAIAIAMpAxBCBIanEEgiADYCCCAARQRAIAMoAgxBDkEAEBQgA0EAOgAfDAELIAMoAhggAygCCDYCACADIAMoAhgoAgQgAykDEEIBfEIDhqcQSCIANgIEIABFBEAgAygCDEEOQQAQFCADQQA6AB8MAQsgAygCGCADKAIENgIEIAMoAhggAykDEDcDECADQQE6AB8LIAMtAB9BAXEhACADQSBqJAAgAAvOAgEBfyMAQTBrIgQkACAEIAA2AiggBCABNwMgIAQgAjYCHCAEIAM2AhgCQAJAIAQoAigNACAEKQMgUA0AIAQoAhhBEkEAEBQgBEEANgIsDAELIAQgBCgCKCAEKQMgIAQoAhwgBCgCGBBNIgA2AgwgAEUEQCAEQQA2AiwMAQsgBEEYEBgiADYCFCAARQRAIAQoAhhBDkEAEBQgBCgCDBAzIARBADYCLAwBCyAEKAIUIAQoAgw2AhAgBCgCFEEANgIUQQAQASEAIAQoAhQgADYCDCMAQRBrIgAgBCgCFDYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCAEQQIgBCgCFCAEKAIYEJQBIgA2AhAgAEUEQCAEKAIUKAIQEDMgBCgCFBAVIARBADYCLAwBCyAEIAQoAhA2AiwLIAQoAiwhACAEQTBqJAAgAAupAQEBfyMAQTBrIgQkACAEIAA2AiggBCABNwMgIAQgAjYCHCAEIAM2AhgCQCAEKAIoRQRAIAQpAyBCAFIEQCAEKAIYQRJBABAUIARBADYCLAwCCyAEQQBCACAEKAIcIAQoAhgQwgE2AiwMAQsgBCAEKAIoNgIIIAQgBCkDIDcDECAEIARBCGpCASAEKAIcIAQoAhgQwgE2AiwLIAQoAiwhACAEQTBqJAAgAAtGAQF/IwBBIGsiAyQAIAMgADYCHCADIAE3AxAgAyACNgIMIAMoAhwgAykDECADKAIMIAMoAhxBCGoQTiEAIANBIGokACAAC40CAQF/IwBBMGsiAyQAIAMgADYCKCADIAE7ASYgAyACNgIgIAMgAygCKCgCNCADQR5qIAMvASZBgAZBABBfNgIQAkAgAygCEEUNACADLwEeQQVJDQACQCADKAIQLQAAQQFGDQAMAQsgAyADKAIQIAMvAR6tECkiADYCFCAARQRADAELIAMoAhQQjwEaIAMgAygCFBAqNgIYIAMoAiAQjAEgAygCGEYEQCADIAMoAhQQLz0BDiADIAMoAhQgAy8BDq0QHiADLwEOQYAQQQAQUjYCCCADKAIIBEAgAygCIBAlIAMgAygCCDYCIAsLIAMoAhQQFgsgAyADKAIgNgIsIAMoAiwhACADQTBqJAAgAAvaFwIBfwF+IwBBgAFrIgUkACAFIAA2AnQgBSABNgJwIAUgAjYCbCAFIAM6AGsgBSAENgJkIAUgBSgCbEEARzoAHSAFQR5BLiAFLQBrQQFxGzYCKAJAAkAgBSgCbARAIAUoAmwQLyAFKAIorVQEQCAFKAJkQRNBABAUIAVCfzcDeAwDCwwBCyAFIAUoAnAgBSgCKK0gBUEwaiAFKAJkEEEiADYCbCAARQRAIAVCfzcDeAwCCwsgBSgCbEIEEB4hAEHxEkH2EiAFLQBrQQFxGygAACAAKAAARwRAIAUoAmRBE0EAEBQgBS0AHUEBcUUEQCAFKAJsEBYLIAVCfzcDeAwBCyAFKAJ0EE8CQCAFLQBrQQFxRQRAIAUoAmwQHSEAIAUoAnQgADsBCAwBCyAFKAJ0QQA7AQgLIAUoAmwQHSEAIAUoAnQgADsBCiAFKAJsEB0hACAFKAJ0IAA7AQwgBSgCbBAdQf//A3EhACAFKAJ0IAA2AhAgBSAFKAJsEB07AS4gBSAFKAJsEB07ASwgBS8BLiEBIAUvASwhAiMAQTBrIgAkACAAIAE7AS4gACACOwEsIABCADcCACAAQQA2AiggAEIANwIgIABCADcCGCAAQgA3AhAgAEIANwIIIABBADYCICAAIAAvASxBCXZB0ABqNgIUIAAgAC8BLEEFdkEPcUEBazYCECAAIAAvASxBH3E2AgwgACAALwEuQQt2NgIIIAAgAC8BLkEFdkE/cTYCBCAAIAAvAS5BAXRBPnE2AgAgABAMIQEgAEEwaiQAIAEhACAFKAJ0IAA2AhQgBSgCbBAqIQAgBSgCdCAANgIYIAUoAmwQKq0hBiAFKAJ0IAY3AyAgBSgCbBAqrSEGIAUoAnQgBjcDKCAFIAUoAmwQHTsBIiAFIAUoAmwQHTsBHgJAIAUtAGtBAXEEQCAFQQA7ASAgBSgCdEEANgI8IAUoAnRBADsBQCAFKAJ0QQA2AkQgBSgCdEIANwNIDAELIAUgBSgCbBAdOwEgIAUoAmwQHUH//wNxIQAgBSgCdCAANgI8IAUoAmwQHSEAIAUoAnQgADsBQCAFKAJsECohACAFKAJ0IAA2AkQgBSgCbBAqrSEGIAUoAnQgBjcDSAsCfyMAQRBrIgAgBSgCbDYCDCAAKAIMLQAAQQFxRQsEQCAFKAJkQRRBABAUIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAQsCQCAFKAJ0LwEMQQFxBEAgBSgCdC8BDEHAAHEEQCAFKAJ0Qf//AzsBUgwCCyAFKAJ0QQE7AVIMAQsgBSgCdEEAOwFSCyAFKAJ0QQA2AjAgBSgCdEEANgI0IAUoAnRBADYCOCAFIAUvASAgBS8BIiAFLwEeamo2AiQCQCAFLQAdQQFxBEAgBSgCbBAvIAUoAiStVARAIAUoAmRBFUEAEBQgBUJ/NwN4DAMLDAELIAUoAmwQFiAFIAUoAnAgBSgCJK1BACAFKAJkEEEiADYCbCAARQRAIAVCfzcDeAwCCwsgBS8BIgRAIAUoAmwgBSgCcCAFLwEiQQEgBSgCZBCNASEAIAUoAnQgADYCMCAFKAJ0KAIwRQRAAn8jAEEQayIAIAUoAmQ2AgwgACgCDCgCAEERRgsEQCAFKAJkQRVBABAUCyAFLQAdQQFxRQRAIAUoAmwQFgsgBUJ/NwN4DAILIAUoAnQvAQxBgBBxBEAgBSgCdCgCMEECEDpBBUYEQCAFKAJkQRVBABAUIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAwsLCyAFLwEeBEAgBSAFKAJsIAUoAnAgBS8BHkEAIAUoAmQQYDYCGCAFKAIYRQRAIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAgsgBSgCGCAFLwEeQYACQYAEIAUtAGtBAXEbIAUoAnRBNGogBSgCZBCIAUEBcUUEQCAFKAIYEBUgBS0AHUEBcUUEQCAFKAJsEBYLIAVCfzcDeAwCCyAFKAIYEBUgBS0Aa0EBcQRAIAUoAnRBAToABAsLIAUvASAEQCAFKAJsIAUoAnAgBS8BIEEAIAUoAmQQjQEhACAFKAJ0IAA2AjggBSgCdCgCOEUEQCAFLQAdQQFxRQRAIAUoAmwQFgsgBUJ/NwN4DAILIAUoAnQvAQxBgBBxBEAgBSgCdCgCOEECEDpBBUYEQCAFKAJkQRVBABAUIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAwsLCyAFKAJ0QfXgASAFKAJ0KAIwEMUBIQAgBSgCdCAANgIwIAUoAnRB9cYBIAUoAnQoAjgQxQEhACAFKAJ0IAA2AjgCQAJAIAUoAnQpAyhC/////w9RDQAgBSgCdCkDIEL/////D1ENACAFKAJ0KQNIQv////8PUg0BCyAFIAUoAnQoAjQgBUEWakEBQYACQYAEIAUtAGtBAXEbIAUoAmQQXzYCDCAFKAIMRQRAIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAgsgBSAFKAIMIAUvARatECkiADYCECAARQRAIAUoAmRBDkEAEBQgBS0AHUEBcUUEQCAFKAJsEBYLIAVCfzcDeAwCCwJAIAUoAnQpAyhC/////w9RBEAgBSgCEBAwIQYgBSgCdCAGNwMoDAELIAUtAGtBAXEEQCAFKAIQIQEjAEEgayIAJAAgACABNgIYIABCCDcDECAAIAAoAhgpAxAgACkDEHw3AwgCQCAAKQMIIAAoAhgpAxBUBEAgACgCGEEAOgAAIABBfzYCHAwBCyAAIAAoAhggACkDCBAsNgIcCyAAKAIcGiAAQSBqJAALCyAFKAJ0KQMgQv////8PUQRAIAUoAhAQMCEGIAUoAnQgBjcDIAsgBS0Aa0EBcUUEQCAFKAJ0KQNIQv////8PUQRAIAUoAhAQMCEGIAUoAnQgBjcDSAsgBSgCdCgCPEH//wNGBEAgBSgCEBAqIQAgBSgCdCAANgI8CwsgBSgCEBBHQQFxRQRAIAUoAmRBFUEAEBQgBSgCEBAWIAUtAB1BAXFFBEAgBSgCbBAWCyAFQn83A3gMAgsgBSgCEBAWCwJ/IwBBEGsiACAFKAJsNgIMIAAoAgwtAABBAXFFCwRAIAUoAmRBFEEAEBQgBS0AHUEBcUUEQCAFKAJsEBYLIAVCfzcDeAwBCyAFLQAdQQFxRQRAIAUoAmwQFgsgBSgCdCkDSEL///////////8AVgRAIAUoAmRBBEEWEBQgBUJ/NwN4DAELAn8gBSgCdCEBIAUoAmQhAiMAQSBrIgAkACAAIAE2AhggACACNgIUAkAgACgCGCgCEEHjAEcEQCAAQQE6AB8MAQsgACAAKAIYKAI0IABBEmpBgbICQYAGQQAQXzYCCAJAIAAoAggEQCAALwESQQdPDQELIAAoAhRBFUEAEBQgAEEAOgAfDAELIAAgACgCCCAALwESrRApIgE2AgwgAUUEQCAAKAIUQRRBABAUIABBADoAHwwBCyAAQQE6AAcCQAJAAkAgACgCDBAdQQFrDgICAAELIAAoAhgpAyhCFFQEQCAAQQA6AAcLDAELIAAoAhRBGEEAEBQgACgCDBAWIABBADoAHwwBCyAAKAIMQgIQHi8AAEHBigFHBEAgACgCFEEYQQAQFCAAKAIMEBYgAEEAOgAfDAELAkACQAJAAkACQCAAKAIMEI8BQQFrDgMAAQIDCyAAQYECOwEEDAMLIABBggI7AQQMAgsgAEGDAjsBBAwBCyAAKAIUQRhBABAUIAAoAgwQFiAAQQA6AB8MAQsgAC8BEkEHRwRAIAAoAhRBFUEAEBQgACgCDBAWIABBADoAHwwBCyAAKAIYIAAtAAdBAXE6AAYgACgCGCAALwEEOwFSIAAoAgwQHUH//wNxIQEgACgCGCABNgIQIAAoAgwQFiAAQQE6AB8LIAAtAB9BAXEhASAAQSBqJAAgAUEBcUULBEAgBUJ/NwN4DAELIAUoAnQoAjQQhwEhACAFKAJ0IAA2AjQgBSAFKAIoIAUoAiRqrTcDeAsgBSkDeCEGIAVBgAFqJAAgBgsYAEGomwFCADcCAEGwmwFBADYCAEGomwELCABBAUEMEHYLBwAgACgCLAsHACAAKAIoCwcAIAAoAhgLtQkBAX8jAEHgwABrIgUkACAFIAA2AtRAIAUgATYC0EAgBSACNgLMQCAFIAM3A8BAIAUgBDYCvEAgBSAFKALQQDYCuEACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBSgCvEAOEQMEAAYBAgUJCgoKCgoKCAoHCgsgBUIANwPYQAwKCyAFIAUoArhAQeQAaiAFKALMQCAFKQPAQBBCNwPYQAwJCyAFKAK4QBAVIAVCADcD2EAMCAsgBSgCuEAoAhAEQCAFIAUoArhAKAIQIAUoArhAKQMYIAUoArhAQeQAahBlIgM3A5hAIANQBEAgBUJ/NwPYQAwJCyAFKAK4QCkDCCAFKAK4QCkDCCAFKQOYQHxWBEAgBSgCuEBB5ABqQRVBABAUIAVCfzcD2EAMCQsgBSgCuEAiACAFKQOYQCAAKQMAfDcDACAFKAK4QCIAIAUpA5hAIAApAwh8NwMIIAUoArhAQQA2AhALIAUoArhALQB4QQFxRQRAIAVCADcDqEADQCAFKQOoQCAFKAK4QCkDAFQEQCAFIAUoArhAKQMAIAUpA6hAfUKAwABWBH5CgMAABSAFKAK4QCkDACAFKQOoQH0LNwOgQCAFIAUoAtRAIAVBEGogBSkDoEAQLiIDNwOwQCADQgBTBEAgBSgCuEBB5ABqIAUoAtRAEBcgBUJ/NwPYQAwLCyAFKQOwQFAEQCAFKAK4QEHkAGpBEUEAEBQgBUJ/NwPYQAwLBSAFIAUpA7BAIAUpA6hAfDcDqEAMAgsACwsLIAUoArhAIAUoArhAKQMANwMgIAVCADcD2EAMBwsgBSkDwEAgBSgCuEApAwggBSgCuEApAyB9VgRAIAUgBSgCuEApAwggBSgCuEApAyB9NwPAQAsgBSkDwEBQBEAgBUIANwPYQAwHCyAFKAK4QC0AeEEBcQRAIAUoAtRAIAUoArhAKQMgQQAQJ0EASARAIAUoArhAQeQAaiAFKALUQBAXIAVCfzcD2EAMCAsLIAUgBSgC1EAgBSgCzEAgBSkDwEAQLiIDNwOwQCADQgBTBEAgBSgCuEBB5ABqQRFBABAUIAVCfzcD2EAMBwsgBSgCuEAiACAFKQOwQCAAKQMgfDcDICAFKQOwQFAEQCAFKAK4QCkDICAFKAK4QCkDCFQEQCAFKAK4QEHkAGpBEUEAEBQgBUJ/NwPYQAwICwsgBSAFKQOwQDcD2EAMBgsgBSAFKAK4QCkDICAFKAK4QCkDAH0gBSgCuEApAwggBSgCuEApAwB9IAUoAsxAIAUpA8BAIAUoArhAQeQAahCRATcDCCAFKQMIQgBTBEAgBUJ/NwPYQAwGCyAFKAK4QCAFKQMIIAUoArhAKQMAfDcDICAFQgA3A9hADAULIAUgBSgCzEA2AgQgBSgCBCAFKAK4QEEoaiAFKAK4QEHkAGoQlQFBAEgEQCAFQn83A9hADAULIAVCADcD2EAMBAsgBSAFKAK4QCwAYKw3A9hADAMLIAUgBSgCuEApA3A3A9hADAILIAUgBSgCuEApAyAgBSgCuEApAwB9NwPYQAwBCyAFKAK4QEHkAGpBHEEAEBQgBUJ/NwPYQAsgBSkD2EAhAyAFQeDAAGokACADCwcAIAAoAhALIgEBfyMAQRBrIgEgADYCDCABKAIMIgAgACgCMEEBajYCMAsHACAAKAIICxQAIAAgAa0gAq1CIIaEIAMgBBB/CxMBAX4gABBKIgFCIIinEAAgAacLEgAgACABrSACrUIghoQgAxAnCx8BAX4gACABIAKtIAOtQiCGhBAuIgRCIIinEAAgBKcLFQAgACABrSACrUIghoQgAyAEEMMBCxQAIAAgASACrSADrUIghoQgBBB+C60EAQF/IwBBIGsiBSQAIAUgADYCGCAFIAGtIAKtQiCGhDcDECAFIAM2AgwgBSAENgIIAkACQCAFKQMQIAUoAhgpAzBUBEAgBSgCCEEJTQ0BCyAFKAIYQQhqQRJBABAUIAVBfzYCHAwBCyAFKAIYKAIYQQJxBEAgBSgCGEEIakEZQQAQFCAFQX82AhwMAQsCfyAFKAIMIQEjAEEQayIAJAAgACABNgIIIABBAToABwJAIAAoAghFBEAgAEEBOgAPDAELIAAgACgCCCAALQAHQQFxELMBQQBHOgAPCyAALQAPQQFxIQEgAEEQaiQAIAFFCwRAIAUoAhhBCGpBEEEAEBQgBUF/NgIcDAELIAUgBSgCGCgCQCAFKQMQp0EEdGo2AgQgBSAFKAIEKAIABH8gBSgCBCgCACgCEAVBfws2AgACQCAFKAIMIAUoAgBGBEAgBSgCBCgCBARAIAUoAgQoAgQiACAAKAIAQX5xNgIAIAUoAgQoAgRBADsBUCAFKAIEKAIEKAIARQRAIAUoAgQoAgQQOSAFKAIEQQA2AgQLCwwBCyAFKAIEKAIERQRAIAUoAgQoAgAQPyEAIAUoAgQgADYCBCAARQRAIAUoAhhBCGpBDkEAEBQgBUF/NgIcDAMLCyAFKAIEKAIEIAUoAgw2AhAgBSgCBCgCBCAFKAIIOwFQIAUoAgQoAgQiACAAKAIAQQFyNgIACyAFQQA2AhwLIAUoAhwhACAFQSBqJAAgAAsXAQF+IAAgASACEHMiA0IgiKcQACADpwuuAQIBfwF+An8jAEEgayICIAA2AhQgAiABNgIQAkAgAigCFEUEQCACQn83AxgMAQsgAigCEEEIcQRAIAIgAigCFCkDMDcDCANAIAIpAwhCAFIEfyACKAIUKAJAIAIpAwhCAX2nQQR0aigCAAVBAQtFBEAgAiACKQMIQgF9NwMIDAELCyACIAIpAwg3AxgMAQsgAiACKAIUKQMwNwMYCyACKQMYIgNCIIinCxAAIAOnCxMAIAAgAa0gAq1CIIaEIAMQxAELiAICAX8BfgJ/IwBBIGsiBCQAIAQgADYCFCAEIAE2AhAgBCACrSADrUIghoQ3AwgCQCAEKAIURQRAIARCfzcDGAwBCyAEKAIUKAIEBEAgBEJ/NwMYDAELIAQpAwhC////////////AFYEQCAEKAIUQQRqQRJBABAUIARCfzcDGAwBCwJAIAQoAhQtABBBAXFFBEAgBCkDCFBFDQELIARCADcDGAwBCyAEIAQoAhQoAhQgBCgCECAEKQMIEC4iBTcDACAFQgBTBEAgBCgCFEEEaiAEKAIUKAIUEBcgBEJ/NwMYDAELIAQgBCkDADcDGAsgBCkDGCEFIARBIGokACAFQiCIpwsQACAFpwtPAQF/IwBBIGsiBCQAIAQgADYCHCAEIAGtIAKtQiCGhDcDECAEIAM2AgwgBCgCHCAEKQMQIAQoAgwgBCgCHCgCHBCtASEAIARBIGokACAAC9kDAQF/IwBBIGsiBSQAIAUgADYCGCAFIAGtIAKtQiCGhDcDECAFIAM2AgwgBSAENgIIAkAgBSgCGCAFKQMQQQBBABBFRQRAIAVBfzYCHAwBCyAFKAIYKAIYQQJxBEAgBSgCGEEIakEZQQAQFCAFQX82AhwMAQsgBSgCGCgCQCAFKQMQp0EEdGooAggEQCAFKAIYKAJAIAUpAxCnQQR0aigCCCAFKAIMEGhBAEgEQCAFKAIYQQhqQQ9BABAUIAVBfzYCHAwCCyAFQQA2AhwMAQsgBSAFKAIYKAJAIAUpAxCnQQR0ajYCBCAFIAUoAgQoAgAEfyAFKAIMIAUoAgQoAgAoAhRHBUEBC0EBcTYCAAJAIAUoAgAEQCAFKAIEKAIERQRAIAUoAgQoAgAQPyEAIAUoAgQgADYCBCAARQRAIAUoAhhBCGpBDkEAEBQgBUF/NgIcDAQLCyAFKAIEKAIEIAUoAgw2AhQgBSgCBCgCBCIAIAAoAgBBIHI2AgAMAQsgBSgCBCgCBARAIAUoAgQoAgQiACAAKAIAQV9xNgIAIAUoAgQoAgQoAgBFBEAgBSgCBCgCBBA5IAUoAgRBADYCBAsLCyAFQQA2AhwLIAUoAhwhACAFQSBqJAAgAAsXACAAIAGtIAKtQiCGhCADIAQgBRCZAQsXACAAIAGtIAKtQiCGhCADIAQgBRCXAQuPAQIBfwF+An8jAEEgayIEJAAgBCAANgIUIAQgATYCECAEIAI2AgwgBCADNgIIAkACQCAEKAIQBEAgBCgCDA0BCyAEKAIUQQhqQRJBABAUIARCfzcDGAwBCyAEIAQoAhQgBCgCECAEKAIMIAQoAggQmgE3AxgLIAQpAxghBSAEQSBqJAAgBUIgiKcLEAAgBacLiAEBAX8jAEEQayICJAAgAiAANgIMIAIgATYCCCMAQRBrIgAgAigCDDYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCACKAIMIAIoAgg2AgACQCACKAIMEJYBQQFGBEAgAigCDEG0mwEoAgA2AgQMAQsgAigCDEEANgIECyACQRBqJAALhQUCAX8BfgJ/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNgIcAkAgAygCJCgCGEECcQRAIAMoAiRBCGpBGUEAEBQgA0J/NwMoDAELIAMoAiBFBEAgAygCJEEIakESQQAQFCADQn83AygMAQsgA0EANgIMIAMgAygCIBArNgIYIAMoAiAgAygCGEEBa2osAABBL0cEQCADIAMoAhhBAmoQGCIANgIMIABFBEAgAygCJEEIakEOQQAQFCADQn83AygMAgsCQAJAIAMoAgwiASADKAIgIgBzQQNxDQAgAEEDcQRAA0AgASAALQAAIgI6AAAgAkUNAyABQQFqIQEgAEEBaiIAQQNxDQALCyAAKAIAIgJBf3MgAkGBgoQIa3FBgIGChHhxDQADQCABIAI2AgAgACgCBCECIAFBBGohASAAQQRqIQAgAkGBgoQIayACQX9zcUGAgYKEeHFFDQALCyABIAAtAAAiAjoAACACRQ0AA0AgASAALQABIgI6AAEgAUEBaiEBIABBAWohACACDQALCyADKAIMIAMoAhhqQS86AAAgAygCDCADKAIYQQFqakEAOgAACyADIAMoAiRBAEIAQQAQfiIANgIIIABFBEAgAygCDBAVIANCfzcDKAwBCyADIAMoAiQCfyADKAIMBEAgAygCDAwBCyADKAIgCyADKAIIIAMoAhwQmgE3AxAgAygCDBAVAkAgAykDEEIAUwRAIAMoAggQGwwBCyADKAIkIAMpAxBBAEEDQYCA/I8EEJkBQQBIBEAgAygCJCADKQMQEJgBGiADQn83AygMAgsLIAMgAykDEDcDKAsgAykDKCEEIANBMGokACAEQiCIpwsQACAEpwsRACAAIAGtIAKtQiCGhBCYAQt/AgF/AX4jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhAgAyADKAIYIAMoAhQgAygCEBBzIgQ3AwgCQCAEQgBTBEAgA0EANgIcDAELIAMgAygCGCADKQMIIAMoAhAgAygCGCgCHBCtATYCHAsgAygCHCEAIANBIGokACAAC8QBAQF/IwBBMGsiASQAIAEgADYCKCABQQA2AiQgAUIANwMYAkADQCABKQMYIAEoAigpAzBUBEAgASABKAIoIAEpAxhBACABQRdqIAFBEGoQlwE2AgwgASgCDEF/RgRAIAFBfzYCLAwDBQJAIAEtABdBA0cNACABKAIQQRB2QYDgA3FBgMACRw0AIAEgASgCJEEBajYCJAsgASABKQMYQgF8NwMYDAILAAsLIAEgASgCJDYCLAsgASgCLCEAIAFBMGokACAACxAAIwAgAGtBcHEiACQAIAALBgAgACQACwQAIwALggECAX8BfiMAQSBrIgQkACAEIAA2AhggBCABNgIUIAQgAjYCECAEIAM2AgwgBCAEKAIYIAQoAhQgBCgCEBBzIgU3AwACQCAFQgBTBEAgBEF/NgIcDAELIAQgBCgCGCAEKQMAIAQoAhAgBCgCDBB/NgIcCyAEKAIcIQAgBEEgaiQAIAAL0EUDBn8BfgJ8IwBB4ABrIgEkACABIAA2AlgCQCABKAJYRQRAIAFBfzYCXAwBCyMAQSBrIgAgASgCWDYCHCAAIAFBQGs2AhggAEEANgIUIABCADcDAAJAIAAoAhwtAChBAXFFBEAgACgCHCgCGCAAKAIcKAIURg0BCyAAQQE2AhQLIABCADcDCANAIAApAwggACgCHCkDMFQEQAJAAkAgACgCHCgCQCAAKQMIp0EEdGooAggNACAAKAIcKAJAIAApAwinQQR0ai0ADEEBcQ0AIAAoAhwoAkAgACkDCKdBBHRqKAIERQ0BIAAoAhwoAkAgACkDCKdBBHRqKAIEKAIARQ0BCyAAQQE2AhQLIAAoAhwoAkAgACkDCKdBBHRqLQAMQQFxRQRAIAAgACkDAEIBfDcDAAsgACAAKQMIQgF8NwMIDAELCyAAKAIYBEAgACgCGCAAKQMANwMACyABIAAoAhQ2AiQgASkDQFAEQAJAIAEoAlgoAgRBCHFFBEAgASgCJEUNAQsCfyABKAJYKAIAIQIjAEEQayIAJAAgACACNgIIAkAgACgCCCgCJEEDRgRAIABBADYCDAwBCyAAKAIIKAIgBEAgACgCCBAxQQBIBEAgAEF/NgIMDAILCyAAKAIIKAIkBEAgACgCCBBnCyAAKAIIQQBCAEEPECFCAFMEQCAAQX82AgwMAQsgACgCCEEDNgIkIABBADYCDAsgACgCDCECIABBEGokACACQQBICwRAAkACfyMAQRBrIgAgASgCWCgCADYCDCMAQRBrIgIgACgCDEEMajYCDCACKAIMKAIAQRZGCwRAIwBBEGsiACABKAJYKAIANgIMIwBBEGsiAiAAKAIMQQxqNgIMIAIoAgwoAgRBLEYNAQsgASgCWEEIaiABKAJYKAIAEBcgAUF/NgJcDAQLCwsgASgCWBA9IAFBADYCXAwBCyABKAIkRQRAIAEoAlgQPSABQQA2AlwMAQsgASkDQCABKAJYKQMwVgRAIAEoAlhBCGpBFEEAEBQgAUF/NgJcDAELIAEgASkDQKdBA3QQGCIANgIoIABFBEAgAUF/NgJcDAELIAFCfzcDOCABQgA3A0ggAUIANwNQA0AgASkDUCABKAJYKQMwVARAAkAgASgCWCgCQCABKQNQp0EEdGooAgBFDQACQCABKAJYKAJAIAEpA1CnQQR0aigCCA0AIAEoAlgoAkAgASkDUKdBBHRqLQAMQQFxDQAgASgCWCgCQCABKQNQp0EEdGooAgRFDQEgASgCWCgCQCABKQNQp0EEdGooAgQoAgBFDQELIAECfiABKQM4IAEoAlgoAkAgASkDUKdBBHRqKAIAKQNIVARAIAEpAzgMAQsgASgCWCgCQCABKQNQp0EEdGooAgApA0gLNwM4CyABKAJYKAJAIAEpA1CnQQR0ai0ADEEBcUUEQCABKQNIIAEpA0BaBEAgASgCKBAVIAEoAlhBCGpBFEEAEBQgAUF/NgJcDAQLIAEoAiggASkDSKdBA3RqIAEpA1A3AwAgASABKQNIQgF8NwNICyABIAEpA1BCAXw3A1AMAQsLIAEpA0ggASkDQFQEQCABKAIoEBUgASgCWEEIakEUQQAQFCABQX82AlwMAQsCQAJ/IwBBEGsiACABKAJYKAIANgIMIAAoAgwpAxhCgIAIg1ALBEAgAUIANwM4DAELIAEpAzhCf1EEQCABQn83AxggAUIANwM4IAFCADcDUANAIAEpA1AgASgCWCkDMFQEQCABKAJYKAJAIAEpA1CnQQR0aigCAARAIAEoAlgoAkAgASkDUKdBBHRqKAIAKQNIIAEpAzhaBEAgASABKAJYKAJAIAEpA1CnQQR0aigCACkDSDcDOCABIAEpA1A3AxgLCyABIAEpA1BCAXw3A1AMAQsLIAEpAxhCf1IEQCABKAJYIQIgASkDGCEHIAEoAlhBCGohAyMAQTBrIgAkACAAIAI2AiQgACAHNwMYIAAgAzYCFCAAIAAoAiQgACkDGCAAKAIUEGUiBzcDCAJAIAdQBEAgAEIANwMoDAELIAAgACgCJCgCQCAAKQMYp0EEdGooAgA2AgQCQCAAKQMIIAApAwggACgCBCkDIHxYBEAgACkDCCAAKAIEKQMgfEL///////////8AWA0BCyAAKAIUQQRBFhAUIABCADcDKAwBCyAAIAAoAgQpAyAgACkDCHw3AwggACgCBC8BDEEIcQRAIAAoAiQoAgAgACkDCEEAECdBAEgEQCAAKAIUIAAoAiQoAgAQFyAAQgA3AygMAgsgACgCJCgCACAAQgQQLkIEUgRAIAAoAhQgACgCJCgCABAXIABCADcDKAwCCyAAKAAAQdCWncAARgRAIAAgACkDCEIEfDcDCAsgACAAKQMIQgx8NwMIIAAoAgRBABBeQQFxBEAgACAAKQMIQgh8NwMICyAAKQMIQv///////////wBWBEAgACgCFEEEQRYQFCAAQgA3AygMAgsLIAAgACkDCDcDKAsgACkDKCEHIABBMGokACABIAc3AzggB1AEQCABKAIoEBUgAUF/NgJcDAQLCwsgASkDOEIAUgRAAn8gASgCWCgCACECIAEpAzghByMAQRBrIgAkACAAIAI2AgggACAHNwMAAkAgACgCCCgCJEEBRgRAIAAoAghBDGpBEkEAEBQgAEF/NgIMDAELIAAoAghBACAAKQMAQREQIUIAUwRAIABBfzYCDAwBCyAAKAIIQQE2AiQgAEEANgIMCyAAKAIMIQIgAEEQaiQAIAJBAEgLBEAgAUIANwM4CwsLIAEpAzhQBEACfyABKAJYKAIAIQIjAEEQayIAJAAgACACNgIIAkAgACgCCCgCJEEBRgRAIAAoAghBDGpBEkEAEBQgAEF/NgIMDAELIAAoAghBAEIAQQgQIUIAUwRAIABBfzYCDAwBCyAAKAIIQQE2AiQgAEEANgIMCyAAKAIMIQIgAEEQaiQAIAJBAEgLBEAgASgCWEEIaiABKAJYKAIAEBcgASgCKBAVIAFBfzYCXAwCCwsgASgCWCgCVCECIwBBEGsiACQAIAAgAjYCDCAAKAIMBEAgACgCDEQAAAAAAAAAADkDGCAAKAIMKAIARAAAAAAAAAAAIAAoAgwoAgwgACgCDCgCBBEWAAsgAEEQaiQAIAFBADYCLCABQgA3A0gDQAJAIAEpA0ggASkDQFoNACABKAJYKAJUIQIgASkDSCIHuiABKQNAuiIIoyEJIwBBIGsiACQAIAAgAjYCHCAAIAk5AxAgACAHQgF8uiAIozkDCCAAKAIcBEAgACgCHCAAKwMQOQMgIAAoAhwgACsDCDkDKCAAKAIcRAAAAAAAAAAAEFYLIABBIGokACABIAEoAiggASkDSKdBA3RqKQMANwNQIAEgASgCWCgCQCABKQNQp0EEdGo2AhACQAJAIAEoAhAoAgBFDQAgASgCECgCACkDSCABKQM4Wg0ADAELIAECf0EBIAEoAhAoAggNABogASgCECgCBARAQQEgASgCECgCBCgCAEEBcQ0BGgsgASgCECgCBAR/IAEoAhAoAgQoAgBBwABxQQBHBUEACwtBAXE2AhQgASgCECgCBEUEQCABKAIQKAIAED8hACABKAIQIAA2AgQgAEUEQCABKAJYQQhqQQ5BABAUIAFBATYCLAwDCwsgASABKAIQKAIENgIMAn8gASgCWCECIAEpA1AhByMAQTBrIgAkACAAIAI2AiggACAHNwMgAkAgACkDICAAKAIoKQMwWgRAIAAoAihBCGpBEkEAEBQgAEF/NgIsDAELIAAgACgCKCgCQCAAKQMgp0EEdGo2AhwCQCAAKAIcKAIABEAgACgCHCgCAC0ABEEBcUUNAQsgAEEANgIsDAELIAAoAhwoAgApA0hCGnxC////////////AFYEQCAAKAIoQQhqQQRBFhAUIABBfzYCLAwBCyAAKAIoKAIAIAAoAhwoAgApA0hCGnxBABAnQQBIBEAgACgCKEEIaiAAKAIoKAIAEBcgAEF/NgIsDAELIAAgACgCKCgCAEIEIABBGGogACgCKEEIahBBIgI2AhQgAkUEQCAAQX82AiwMAQsgACAAKAIUEB07ARIgACAAKAIUEB07ARAgACgCFBBHQQFxRQRAIAAoAhQQFiAAKAIoQQhqQRRBABAUIABBfzYCLAwBCyAAKAIUEBYgAC8BEARAIAAoAigoAgAgAC8BEq1BARAnQQBIBEAgACgCKEEIakEEQbSbASgCABAUIABBfzYCLAwCCyAAQQAgACgCKCgCACAALwEQQQAgACgCKEEIahBgNgIIIAAoAghFBEAgAEF/NgIsDAILIAAoAgggAC8BEEGAAiAAQQxqIAAoAihBCGoQiAFBAXFFBEAgACgCCBAVIABBfzYCLAwCCyAAKAIIEBUgACgCDARAIAAgACgCDBCHATYCDCAAKAIcKAIAKAI0IAAoAgwQiQEhAiAAKAIcKAIAIAI2AjQLCyAAKAIcKAIAQQE6AAQCQCAAKAIcKAIERQ0AIAAoAhwoAgQtAARBAXENACAAKAIcKAIEIAAoAhwoAgAoAjQ2AjQgACgCHCgCBEEBOgAECyAAQQA2AiwLIAAoAiwhAiAAQTBqJAAgAkEASAsEQCABQQE2AiwMAgsgASABKAJYKAIAEDQiBzcDMCAHQgBTBEAgAUEBNgIsDAILIAEoAgwgASkDMDcDSAJAIAEoAhQEQCABQQA2AgggASgCECgCCEUEQCABIAEoAlggASgCWCABKQNQQQhBABCuASIANgIIIABFBEAgAUEBNgIsDAULCwJ/IAEoAlghAgJ/IAEoAggEQCABKAIIDAELIAEoAhAoAggLIQMgASgCDCEEIwBBoAFrIgAkACAAIAI2ApgBIAAgAzYClAEgACAENgKQAQJAIAAoApQBIABBOGoQOEEASARAIAAoApgBQQhqIAAoApQBEBcgAEF/NgKcAQwBCyAAKQM4QsAAg1AEQCAAIAApAzhCwACENwM4IABBADsBaAsCQAJAIAAoApABKAIQQX9HBEAgACgCkAEoAhBBfkcNAQsgAC8BaEUNACAAKAKQASAALwFoNgIQDAELAkACQCAAKAKQASgCEA0AIAApAzhCBINQDQAgACAAKQM4QgiENwM4IAAgACkDUDcDWAwBCyAAIAApAzhC9////w+DNwM4CwsgACkDOEKAAYNQBEAgACAAKQM4QoABhDcDOCAAQQA7AWoLIABBgAI2AiQCQCAAKQM4QgSDUARAIAAgACgCJEGACHI2AiQgAEJ/NwNwDAELIAAoApABIAApA1A3AyggACAAKQNQNwNwAkAgACkDOEIIg1AEQAJAAkACQAJAAkACfwJAIAAoApABKAIQQX9HBEAgACgCkAEoAhBBfkcNAQtBCAwBCyAAKAKQASgCEAtB//8DcQ4NAgMDAwMDAwMBAwMDAAMLIABClMLk8w83AxAMAwsgAEKDg7D/DzcDEAwCCyAAQv////8PNwMQDAELIABCADcDEAsgACkDUCAAKQMQVgRAIAAgACgCJEGACHI2AiQLDAELIAAoApABIAApA1g3AyALCyAAIAAoApgBKAIAEDQiBzcDiAEgB0IAUwRAIAAoApgBQQhqIAAoApgBKAIAEBcgAEF/NgKcAQwBCyAAKAKQASICIAIvAQxB9/8DcTsBDCAAIAAoApgBIAAoApABIAAoAiQQUCICNgIoIAJBAEgEQCAAQX82ApwBDAELIAAgAC8BaAJ/AkAgACgCkAEoAhBBf0cEQCAAKAKQASgCEEF+Rw0BC0EIDAELIAAoApABKAIQC0H//wNxRzoAIiAAIAAtACJBAXEEfyAALwFoQQBHBUEAC0EBcToAISAAIAAvAWgEfyAALQAhBUEBC0EBcToAICAAIAAtACJBAXEEfyAAKAKQASgCEEEARwVBAAtBAXE6AB8gAAJ/QQEgAC0AIkEBcQ0AGkEBIAAoApABKAIAQYABcQ0AGiAAKAKQAS8BUiAALwFqRwtBAXE6AB4gACAALQAeQQFxBH8gAC8BakEARwVBAAtBAXE6AB0gACAALQAeQQFxBH8gACgCkAEvAVJBAEcFQQALQQFxOgAcIAAgACgClAE2AjQjAEEQayICIAAoAjQ2AgwgAigCDCICIAIoAjBBAWo2AjAgAC0AHUEBcQRAIAAgAC8BakEAEHwiAjYCDCACRQRAIAAoApgBQQhqQRhBABAUIAAoAjQQGyAAQX82ApwBDAILIAAgACgCmAEgACgCNCAALwFqQQAgACgCmAEoAhwgACgCDBEFACICNgIwIAJFBEAgACgCNBAbIABBfzYCnAEMAgsgACgCNBAbIAAgACgCMDYCNAsgAC0AIUEBcQRAIAAgACgCmAEgACgCNCAALwFoELABIgI2AjAgAkUEQCAAKAI0EBsgAEF/NgKcAQwCCyAAKAI0EBsgACAAKAIwNgI0CyAALQAgQQFxBEAgACAAKAKYASAAKAI0QQAQrwEiAjYCMCACRQRAIAAoAjQQGyAAQX82ApwBDAILIAAoAjQQGyAAIAAoAjA2AjQLIAAtAB9BAXEEQCAAKAKYASEDIAAoAjQhBCAAKAKQASgCECEFIAAoApABLwFQIQYjAEEQayICJAAgAiADNgIMIAIgBDYCCCACIAU2AgQgAiAGNgIAIAIoAgwgAigCCCACKAIEQQEgAigCABCyASEDIAJBEGokACAAIAMiAjYCMCACRQRAIAAoAjQQGyAAQX82ApwBDAILIAAoAjQQGyAAIAAoAjA2AjQLIAAtABxBAXEEQCAAQQA2AgQCQCAAKAKQASgCVARAIAAgACgCkAEoAlQ2AgQMAQsgACgCmAEoAhwEQCAAIAAoApgBKAIcNgIECwsgACAAKAKQAS8BUkEBEHwiAjYCCCACRQRAIAAoApgBQQhqQRhBABAUIAAoAjQQGyAAQX82ApwBDAILIAAgACgCmAEgACgCNCAAKAKQAS8BUkEBIAAoAgQgACgCCBEFACICNgIwIAJFBEAgACgCNBAbIABBfzYCnAEMAgsgACgCNBAbIAAgACgCMDYCNAsgACAAKAKYASgCABA0Igc3A4ABIAdCAFMEQCAAKAKYAUEIaiAAKAKYASgCABAXIABBfzYCnAEMAQsgACgCmAEhAyAAKAI0IQQgACkDcCEHIwBBwMAAayICJAAgAiADNgK4QCACIAQ2ArRAIAIgBzcDqEACQCACKAK0QBBJQQBIBEAgAigCuEBBCGogAigCtEAQFyACQX82ArxADAELIAJBADYCDCACQgA3AxADQAJAIAIgAigCtEAgAkEgakKAwAAQLiIHNwMYIAdCAFcNACACKAK4QCACQSBqIAIpAxgQNUEASARAIAJBfzYCDAUgAikDGEKAwABSDQIgAigCuEAoAlRFDQIgAikDqEBCAFcNAiACIAIpAxggAikDEHw3AxAgAigCuEAoAlQgAikDELkgAikDqEC5oxBWDAILCwsgAikDGEIAUwRAIAIoArhAQQhqIAIoArRAEBcgAkF/NgIMCyACKAK0QBAxGiACIAIoAgw2ArxACyACKAK8QCEDIAJBwMAAaiQAIAAgAzYCLCAAKAI0IABBOGoQOEEASARAIAAoApgBQQhqIAAoAjQQFyAAQX82AiwLIAAoAjQhAyMAQRBrIgIkACACIAM2AggCQANAIAIoAggEQCACKAIIKQMYQoCABINCAFIEQCACIAIoAghBAEIAQRAQITcDACACKQMAQgBTBEAgAkH/AToADwwECyACKQMAQgNVBEAgAigCCEEMakEUQQAQFCACQf8BOgAPDAQLIAIgAikDADwADwwDBSACIAIoAggoAgA2AggMAgsACwsgAkEAOgAPCyACLAAPIQMgAkEQaiQAIAAgAyICOgAjIAJBGHRBGHVBAEgEQCAAKAKYAUEIaiAAKAI0EBcgAEF/NgIsCyAAKAI0EBsgACgCLEEASARAIABBfzYCnAEMAQsgACAAKAKYASgCABA0Igc3A3ggB0IAUwRAIAAoApgBQQhqIAAoApgBKAIAEBcgAEF/NgKcAQwBCyAAKAKYASgCACAAKQOIARCbAUEASARAIAAoApgBQQhqIAAoApgBKAIAEBcgAEF/NgKcAQwBCyAAKQM4QuQAg0LkAFIEQCAAKAKYAUEIakEUQQAQFCAAQX82ApwBDAELIAAoApABKAIAQSBxRQRAAkAgACkDOEIQg0IAUgRAIAAoApABIAAoAmA2AhQMAQsgACgCkAFBFGoQARoLCyAAKAKQASAALwFoNgIQIAAoApABIAAoAmQ2AhggACgCkAEgACkDUDcDKCAAKAKQASAAKQN4IAApA4ABfTcDICAAKAKQASAAKAKQAS8BDEH5/wNxIAAtACNBAXRyOwEMIAAoApABIQMgACgCJEGACHFBAEchBCMAQRBrIgIkACACIAM2AgwgAiAEOgALAkAgAigCDCgCEEEORgRAIAIoAgxBPzsBCgwBCyACKAIMKAIQQQxGBEAgAigCDEEuOwEKDAELAkAgAi0AC0EBcUUEQCACKAIMQQAQXkEBcUUNAQsgAigCDEEtOwEKDAELAkAgAigCDCgCEEEIRwRAIAIoAgwvAVJBAUcNAQsgAigCDEEUOwEKDAELIAIgAigCDCgCMBBTIgM7AQggA0H//wNxBEAgAigCDCgCMCgCACACLwEIQQFrai0AAEEvRgRAIAIoAgxBFDsBCgwCCwsgAigCDEEKOwEKCyACQRBqJAAgACAAKAKYASAAKAKQASAAKAIkEFAiAjYCLCACQQBIBEAgAEF/NgKcAQwBCyAAKAIoIAAoAixHBEAgACgCmAFBCGpBFEEAEBQgAEF/NgKcAQwBCyAAKAKYASgCACAAKQN4EJsBQQBIBEAgACgCmAFBCGogACgCmAEoAgAQFyAAQX82ApwBDAELIABBADYCnAELIAAoApwBIQIgAEGgAWokACACQQBICwRAIAFBATYCLCABKAIIBEAgASgCCBAbCwwECyABKAIIBEAgASgCCBAbCwwBCyABKAIMIgAgAC8BDEH3/wNxOwEMIAEoAlggASgCDEGAAhBQQQBIBEAgAUEBNgIsDAMLIAEgASgCWCABKQNQIAEoAlhBCGoQZSIHNwMAIAdQBEAgAUEBNgIsDAMLIAEoAlgoAgAgASkDAEEAECdBAEgEQCABKAJYQQhqIAEoAlgoAgAQFyABQQE2AiwMAwsCfyABKAJYIQIgASgCDCkDICEHIwBBoMAAayIAJAAgACACNgKYQCAAIAc3A5BAIAAgACkDkEC6OQMAAkADQCAAKQOQQFBFBEAgACAAKQOQQEKAwABWBH5CgMAABSAAKQOQQAs+AgwgACgCmEAoAgAgAEEQaiAAKAIMrSAAKAKYQEEIahBhQQBIBEAgAEF/NgKcQAwDCyAAKAKYQCAAQRBqIAAoAgytEDVBAEgEQCAAQX82ApxADAMFIAAgACkDkEAgADUCDH03A5BAIAAoAphAKAJUIAArAwAgACkDkEC6oSAAKwMAoxBWDAILAAsLIABBADYCnEALIAAoApxAIQIgAEGgwABqJAAgAkEASAsEQCABQQE2AiwMAwsLCyABIAEpA0hCAXw3A0gMAQsLIAEoAixFBEACfyABKAJYIQAgASgCKCEDIAEpA0AhByMAQTBrIgIkACACIAA2AiggAiADNgIkIAIgBzcDGCACIAIoAigoAgAQNCIHNwMQAkAgB0IAUwRAIAJBfzYCLAwBCyACKAIoIQMgAigCJCEEIAIpAxghByMAQcABayIAJAAgACADNgK0ASAAIAQ2ArABIAAgBzcDqAEgACAAKAK0ASgCABA0Igc3AyACQCAHQgBTBEAgACgCtAFBCGogACgCtAEoAgAQFyAAQn83A7gBDAELIAAgACkDIDcDoAEgAEEAOgAXIABCADcDGANAIAApAxggACkDqAFUBEAgACAAKAK0ASgCQCAAKAKwASAAKQMYp0EDdGopAwCnQQR0ajYCDCAAIAAoArQBAn8gACgCDCgCBARAIAAoAgwoAgQMAQsgACgCDCgCAAtBgAQQUCIDNgIQIANBAEgEQCAAQn83A7gBDAMLIAAoAhAEQCAAQQE6ABcLIAAgACkDGEIBfDcDGAwBCwsgACAAKAK0ASgCABA0Igc3AyAgB0IAUwRAIAAoArQBQQhqIAAoArQBKAIAEBcgAEJ/NwO4AQwBCyAAIAApAyAgACkDoAF9NwOYAQJAIAApA6ABQv////8PWARAIAApA6gBQv//A1gNAQsgAEEBOgAXCyAAIABBMGpC4gAQKSIDNgIsIANFBEAgACgCtAFBCGpBDkEAEBQgAEJ/NwO4AQwBCyAALQAXQQFxBEAgACgCLEHnEkEEEEAgACgCLEIsEC0gACgCLEEtEB8gACgCLEEtEB8gACgCLEEAECAgACgCLEEAECAgACgCLCAAKQOoARAtIAAoAiwgACkDqAEQLSAAKAIsIAApA5gBEC0gACgCLCAAKQOgARAtIAAoAixB4hJBBBBAIAAoAixBABAgIAAoAiwgACkDoAEgACkDmAF8EC0gACgCLEEBECALIAAoAixB7BJBBBBAIAAoAixBABAgIAAoAiwgACkDqAFC//8DWgR+Qv//AwUgACkDqAELp0H//wNxEB8gACgCLCAAKQOoAUL//wNaBH5C//8DBSAAKQOoAQunQf//A3EQHyAAKAIsIAApA5gBQv////8PWgR/QX8FIAApA5gBpwsQICAAKAIsIAApA6ABQv////8PWgR/QX8FIAApA6ABpwsQICAAAn8gACgCtAEtAChBAXEEQCAAKAK0ASgCJAwBCyAAKAK0ASgCIAs2ApQBIAAoAiwCfyAAKAKUAQRAIAAoApQBLwEEDAELQQALQf//A3EQHwJ/IwBBEGsiAyAAKAIsNgIMIAMoAgwtAABBAXFFCwRAIAAoArQBQQhqQRRBABAUIAAoAiwQFiAAQn83A7gBDAELIAAoArQBAn8jAEEQayIDIAAoAiw2AgwgAygCDCgCBAsCfiMAQRBrIgMgACgCLDYCDAJ+IAMoAgwtAABBAXEEQCADKAIMKQMQDAELQgALCxA1QQBIBEAgACgCLBAWIABCfzcDuAEMAQsgACgCLBAWIAAoApQBBEAgACgCtAEgACgClAEoAgAgACgClAEvAQStEDVBAEgEQCAAQn83A7gBDAILCyAAIAApA5gBNwO4AQsgACkDuAEhByAAQcABaiQAIAIgBzcDACAHQgBTBEAgAkF/NgIsDAELIAIgAigCKCgCABA0Igc3AwggB0IAUwRAIAJBfzYCLAwBCyACQQA2AiwLIAIoAiwhACACQTBqJAAgAEEASAsEQCABQQE2AiwLCyABKAIoEBUgASgCLEUEQAJ/IAEoAlgoAgAhAiMAQRBrIgAkACAAIAI2AggCQCAAKAIIKAIkQQFHBEAgACgCCEEMakESQQAQFCAAQX82AgwMAQsgACgCCCgCIEEBSwRAIAAoAghBDGpBHUEAEBQgAEF/NgIMDAELIAAoAggoAiAEQCAAKAIIEDFBAEgEQCAAQX82AgwMAgsLIAAoAghBAEIAQQkQIUIAUwRAIAAoAghBAjYCJCAAQX82AgwMAQsgACgCCEEANgIkIABBADYCDAsgACgCDCECIABBEGokACACCwRAIAEoAlhBCGogASgCWCgCABAXIAFBATYCLAsLIAEoAlgoAlQhAiMAQRBrIgAkACAAIAI2AgwgACgCDEQAAAAAAADwPxBWIABBEGokACABKAIsBEAgASgCWCgCABBnIAFBfzYCXAwBCyABKAJYED0gAUEANgJcCyABKAJcIQAgAUHgAGokACAAC9IOAgd/An4jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI2AiAjAEEQayIAIANBCGo2AgwgACgCDEEANgIAIAAoAgxBADYCBCAAKAIMQQA2AgggAygCKCEAIwBBIGsiBCQAIAQgADYCGCAEQgA3AxAgBEJ/NwMIIAQgA0EIajYCBAJAAkAgBCgCGARAIAQpAwhCf1kNAQsgBCgCBEESQQAQFCAEQQA2AhwMAQsgBCgCGCEAIAQpAxAhCiAEKQMIIQsgBCgCBCEBIwBBoAFrIgIkACACIAA2ApgBIAJBADYClAEgAiAKNwOIASACIAs3A4ABIAJBADYCfCACIAE2AngCQAJAIAIoApQBDQAgAigCmAENACACKAJ4QRJBABAUIAJBADYCnAEMAQsgAikDgAFCAFMEQCACQgA3A4ABCwJAIAIpA4gBQv///////////wBYBEAgAikDiAEgAikDiAEgAikDgAF8WA0BCyACKAJ4QRJBABAUIAJBADYCnAEMAQsgAkGIARAYIgA2AnQgAEUEQCACKAJ4QQ5BABAUIAJBADYCnAEMAQsgAigCdEEANgIYIAIoApgBBEAgAigCmAEiABArQQFqIgEQGCIFBH8gBSAAIAEQGQVBAAshACACKAJ0IAA2AhggAEUEQCACKAJ4QQ5BABAUIAIoAnQQFSACQQA2ApwBDAILCyACKAJ0IAIoApQBNgIcIAIoAnQgAikDiAE3A2ggAigCdCACKQOAATcDcAJAIAIoAnwEQCACKAJ0IgAgAigCfCIBKQMANwMgIAAgASkDMDcDUCAAIAEpAyg3A0ggACABKQMgNwNAIAAgASkDGDcDOCAAIAEpAxA3AzAgACABKQMINwMoIAIoAnRBADYCKCACKAJ0IgAgACkDIEL+////D4M3AyAMAQsgAigCdEEgahA7CyACKAJ0KQNwQgBSBEAgAigCdCACKAJ0KQNwNwM4IAIoAnQiACAAKQMgQgSENwMgCyMAQRBrIgAgAigCdEHYAGo2AgwgACgCDEEANgIAIAAoAgxBADYCBCAAKAIMQQA2AgggAigCdEEANgKAASACKAJ0QQA2AoQBIwBBEGsiACACKAJ0NgIMIAAoAgxBADYCACAAKAIMQQA2AgQgACgCDEEANgIIIAJBfzYCBCACQQc2AgBBDiACEDZCP4QhCiACKAJ0IAo3AxACQCACKAJ0KAIYBEAgAiACKAJ0KAIYIAJBGGoQpgFBAE46ABcgAi0AF0EBcUUEQAJAIAIoAnQpA2hQRQ0AIAIoAnQpA3BQRQ0AIAIoAnRC//8DNwMQCwsMAQsCQCACKAJ0KAIcIgAoAkxBAEgNAAsgACgCPCEAQQAhBSMAQSBrIgYkAAJ/AkAgACACQRhqIgkQCiIBQXhGBEAjAEEgayIHJAAgACAHQQhqEAkiCAR/QbSbASAINgIAQQAFQQELIQggB0EgaiQAIAgNAQsgAUGBYE8Ef0G0mwFBACABazYCAEF/BSABCwwBCwNAIAUgBmoiASAFQccSai0AADoAACAFQQ5HIQcgBUEBaiEFIAcNAAsCQCAABEBBDyEFIAAhAQNAIAFBCk8EQCAFQQFqIQUgAUEKbiEBDAELCyAFIAZqQQA6AAADQCAGIAVBAWsiBWogACAAQQpuIgFBCmxrQTByOgAAIABBCUshByABIQAgBw0ACwwBCyABQTA6AAAgBkEAOgAPCyAGIAkQAiIAQYFgTwR/QbSbAUEAIABrNgIAQX8FIAALCyEAIAZBIGokACACIABBAE46ABcLAkAgAi0AF0EBcUUEQCACKAJ0QdgAakEFQbSbASgCABAUDAELIAIoAnQpAyBCEINQBEAgAigCdCACKAJYNgJIIAIoAnQiACAAKQMgQhCENwMgCyACKAIkQYDgA3FBgIACRgRAIAIoAnRC/4EBNwMQIAIpA0AgAigCdCkDaCACKAJ0KQNwfFQEQCACKAJ4QRJBABAUIAIoAnQoAhgQFSACKAJ0EBUgAkEANgKcAQwDCyACKAJ0KQNwUARAIAIoAnQgAikDQCACKAJ0KQNofTcDOCACKAJ0IgAgACkDIEIEhDcDIAJAIAIoAnQoAhhFDQAgAikDiAFQRQ0AIAIoAnRC//8DNwMQCwsLCyACKAJ0IgAgACkDEEKAgBCENwMQIAJBHiACKAJ0IAIoAngQlAEiADYCcCAARQRAIAIoAnQoAhgQFSACKAJ0EBUgAkEANgKcAQwBCyACIAIoAnA2ApwBCyACKAKcASEAIAJBoAFqJAAgBCAANgIcCyAEKAIcIQAgBEEgaiQAIAMgADYCGAJAIABFBEAgAygCICADQQhqEJ0BIANBCGoQNyADQQA2AiwMAQsgAyADKAIYIAMoAiQgA0EIahCcASIANgIcIABFBEAgAygCGBAbIAMoAiAgA0EIahCdASADQQhqEDcgA0EANgIsDAELIANBCGoQNyADIAMoAhw2AiwLIAMoAiwhACADQTBqJAAgAAsYAQF/IwBBEGsiASAANgIMIAEoAgxBDGoLkh8BBn8jAEHgAGsiBCQAIAQgADYCVCAEIAE2AlAgBCACNwNIIAQgAzYCRCAEIAQoAlQ2AkAgBCAEKAJQNgI8AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgBCgCRA4TBgcCDAQFCg4BAwkQCw8NCBERABELIARCADcDWAwRCyAEKAJAKAIYRQRAIAQoAkBBHEEAEBQgBEJ/NwNYDBELIAQoAkAhACMAQYABayIBJAAgASAANgJ4IAEgASgCeCgCGBArQQhqEBgiADYCdAJAIABFBEAgASgCeEEOQQAQFCABQX82AnwMAQsCQCABKAJ4KAIYIAFBEGoQpgFFBEAgASABKAIcNgJsDAELIAFBfzYCbAsgASgCdCEAIAEgASgCeCgCGDYCACAAQasSIAEQcCABKAJ0IQMgASgCbCEHIwBBMGsiACQAIAAgAzYCKCAAIAc2AiQgAEEANgIQIAAgACgCKCAAKAIoECtqNgIYIAAgACgCGEEBazYCHANAIAAoAhwgACgCKE8EfyAAKAIcLAAAQdgARgVBAAtBAXEEQCAAIAAoAhBBAWo2AhAgACAAKAIcQQFrNgIcDAELCwJAIAAoAhBFBEBBtJsBQRw2AgAgAEF/NgIsDAELIAAgACgCHEEBajYCHANAIwBBEGsiByQAAkACfyMAQRBrIgMkACADIAdBCGo2AgggA0EEOwEGIANB6AtBAEEAEG0iBTYCAAJAIAVBAEgEQCADQQA6AA8MAQsCfyADKAIAIQYgAygCCCEIIAMvAQYhCSMAQRBrIgUkACAFIAk2AgwgBSAINgIIIAYgBUEIakEBIAVBBGoQBiIGBH9BtJsBIAY2AgBBfwVBAAshBiAFKAIEIQggBUEQaiQAIAMvAQZBfyAIIAYbRwsEQCADKAIAEGwgA0EAOgAPDAELIAMoAgAQbCADQQE6AA8LIAMtAA9BAXEhBSADQRBqJAAgBQsEQCAHIAcoAgg2AgwMAQtBwKABLQAAQQFxRQRAQQAQASEGAkBByJkBKAIAIgNFBEBBzJkBKAIAIAY2AgAMAQtB0JkBQQNBA0EBIANBB0YbIANBH0YbNgIAQbygAUEANgIAQcyZASgCACEFIANBAU4EQCAGrSECQQAhBgNAIAUgBkECdGogAkKt/tXk1IX9qNgAfkIBfCICQiCIPgIAIAZBAWoiBiADRw0ACwsgBSAFKAIAQQFyNgIACwtBzJkBKAIAIQMCQEHImQEoAgAiBUUEQCADIAMoAgBB7ZyZjgRsQbngAGpB/////wdxIgM2AgAMAQsgA0HQmQEoAgAiBkECdGoiCCAIKAIAIANBvKABKAIAIghBAnRqKAIAaiIDNgIAQbygAUEAIAhBAWoiCCAFIAhGGzYCAEHQmQFBACAGQQFqIgYgBSAGRhs2AgAgA0EBdiEDCyAHIAM2AgwLIAcoAgwhAyAHQRBqJAAgACADNgIMIAAgACgCHDYCFANAIAAoAhQgACgCGEkEQCAAIAAoAgxBJHA6AAsCfyAALAALQQpIBEAgACwAC0EwagwBCyAALAALQdcAagshAyAAIAAoAhQiB0EBajYCFCAHIAM6AAAgACAAKAIMQSRuNgIMDAELCyAAKAIoIQMgACAAKAIkQX9GBH9BtgMFIAAoAiQLNgIAIAAgA0HCgSAgABBtIgM2AiAgA0EATgRAIAAoAiRBf0cEQCAAKAIoIAAoAiQQDyIDQYFgTwR/QbSbAUEAIANrNgIAQQAFIAMLGgsgACAAKAIgNgIsDAILQbSbASgCAEEURg0ACyAAQX82AiwLIAAoAiwhAyAAQTBqJAAgASADIgA2AnAgAEF/RgRAIAEoAnhBDEG0mwEoAgAQFCABKAJ0EBUgAUF/NgJ8DAELIAEgASgCcEGjEhChASIANgJoIABFBEAgASgCeEEMQbSbASgCABAUIAEoAnAQbCABKAJ0EG4aIAEoAnQQFSABQX82AnwMAQsgASgCeCABKAJoNgKEASABKAJ4IAEoAnQ2AoABIAFBADYCfAsgASgCfCEAIAFBgAFqJAAgBCAArDcDWAwQCyAEKAJAKAIYBEAgBCgCQCgCHBBVGiAEKAJAQQA2AhwLIARCADcDWAwPCyAEKAJAKAKEARBVQQBIBEAgBCgCQEEANgKEASAEKAJAQQZBtJsBKAIAEBQLIAQoAkBBADYChAEgBCgCQCgCgAEgBCgCQCgCGBAIIgBBgWBPBH9BtJsBQQAgAGs2AgBBfwUgAAtBAEgEQCAEKAJAQQJBtJsBKAIAEBQgBEJ/NwNYDA8LIAQoAkAoAoABEBUgBCgCQEEANgKAASAEQgA3A1gMDgsgBCAEKAJAIAQoAlAgBCkDSBBCNwNYDA0LIAQoAkAoAhgQFSAEKAJAKAKAARAVIAQoAkAoAhwEQCAEKAJAKAIcEFUaCyAEKAJAEBUgBEIANwNYDAwLIAQoAkAoAhgEQCAEKAJAKAIYIQEjAEEgayIAJAAgACABNgIYIABBADoAFyAAQYCAIDYCDAJAIAAtABdBAXEEQCAAIAAoAgxBAnI2AgwMAQsgACAAKAIMNgIMCyAAKAIYIQEgACgCDCEDIABBtgM2AgAgACABIAMgABBtIgE2AhACQCABQQBIBEAgAEEANgIcDAELIAAgACgCEEGjEkGgEiAALQAXQQFxGxChASIBNgIIIAFFBEAgAEEANgIcDAELIAAgACgCCDYCHAsgACgCHCEBIABBIGokACAEKAJAIAE2AhwgAUUEQCAEKAJAQQtBtJsBKAIAEBQgBEJ/NwNYDA0LCyAEKAJAKQNoQgBSBEAgBCgCQCgCHCAEKAJAKQNoIAQoAkAQnwFBAEgEQCAEQn83A1gMDQsLIAQoAkBCADcDeCAEQgA3A1gMCwsCQCAEKAJAKQNwQgBSBEAgBCAEKAJAKQNwIAQoAkApA3h9NwMwIAQpAzAgBCkDSFYEQCAEIAQpA0g3AzALDAELIAQgBCkDSDcDMAsgBCkDMEL/////D1YEQCAEQv////8PNwMwCyAEAn8gBCgCPCEHIAQpAzCnIQAgBCgCQCgCHCIDKAJMGiADIAMtAEoiAUEBayABcjoASiADKAIIIAMoAgQiBWsiAUEBSAR/IAAFIAcgBSABIAAgACABSxsiARAZGiADIAMoAgQgAWo2AgQgASAHaiEHIAAgAWsLIgEEQANAAkACfyADIAMtAEoiBUEBayAFcjoASiADKAIUIAMoAhxLBEAgA0EAQQAgAygCJBEBABoLIANBADYCHCADQgA3AxAgAygCACIFQQRxBEAgAyAFQSByNgIAQX8MAQsgAyADKAIsIAMoAjBqIgY2AgggAyAGNgIEIAVBG3RBH3ULRQRAIAMgByABIAMoAiARAQAiBUEBakEBSw0BCyAAIAFrDAMLIAUgB2ohByABIAVrIgENAAsLIAALIgA2AiwgAEUEQAJ/IAQoAkAoAhwiACgCTEF/TARAIAAoAgAMAQsgACgCAAtBBXZBAXEEQCAEKAJAQQVBtJsBKAIAEBQgBEJ/NwNYDAwLCyAEKAJAIgAgACkDeCAEKAIsrXw3A3ggBCAEKAIsrTcDWAwKCyAEKAJAKAIYEG5BAEgEQCAEKAJAQRZBtJsBKAIAEBQgBEJ/NwNYDAoLIARCADcDWAwJCyAEKAJAKAKEAQRAIAQoAkAoAoQBEFUaIAQoAkBBADYChAELIAQoAkAoAoABEG4aIAQoAkAoAoABEBUgBCgCQEEANgKAASAEQgA3A1gMCAsgBAJ/IAQpA0hCEFQEQCAEKAJAQRJBABAUQQAMAQsgBCgCUAs2AhggBCgCGEUEQCAEQn83A1gMCAsgBEEBNgIcAkACQAJAAkACQCAEKAIYKAIIDgMAAgEDCyAEIAQoAhgpAwA3AyAMAwsCQCAEKAJAKQNwUARAIAQoAkAoAhwgBCgCGCkDAEECIAQoAkAQa0EASARAIARCfzcDWAwNCyAEIAQoAkAoAhwQowEiAjcDICACQgBTBEAgBCgCQEEEQbSbASgCABAUIARCfzcDWAwNCyAEIAQpAyAgBCgCQCkDaH03AyAgBEEANgIcDAELIAQgBCgCQCkDcCAEKAIYKQMAfDcDIAsMAgsgBCAEKAJAKQN4IAQoAhgpAwB8NwMgDAELIAQoAkBBEkEAEBQgBEJ/NwNYDAgLAkACQCAEKQMgQgBTDQAgBCgCQCkDcEIAUgRAIAQpAyAgBCgCQCkDcFYNAQsgBCgCQCkDaCAEKQMgIAQoAkApA2h8WA0BCyAEKAJAQRJBABAUIARCfzcDWAwICyAEKAJAIAQpAyA3A3ggBCgCHARAIAQoAkAoAhwgBCgCQCkDeCAEKAJAKQNofCAEKAJAEJ8BQQBIBEAgBEJ/NwNYDAkLCyAEQgA3A1gMBwsgBAJ/IAQpA0hCEFQEQCAEKAJAQRJBABAUQQAMAQsgBCgCUAs2AhQgBCgCFEUEQCAEQn83A1gMBwsgBCgCQCgChAEgBCgCFCkDACAEKAIUKAIIIAQoAkAQa0EASARAIARCfzcDWAwHCyAEQgA3A1gMBgsgBCkDSEI4VARAIARCfzcDWAwGCwJ/IwBBEGsiACAEKAJAQdgAajYCDCAAKAIMKAIACwRAIAQoAkACfyMAQRBrIgAgBCgCQEHYAGo2AgwgACgCDCgCAAsCfyMAQRBrIgAgBCgCQEHYAGo2AgwgACgCDCgCBAsQFCAEQn83A1gMBgsgBCgCUCIAIAQoAkAiASkAIDcAACAAIAEpAFA3ADAgACABKQBINwAoIAAgASkAQDcAICAAIAEpADg3ABggACABKQAwNwAQIAAgASkAKDcACCAEQjg3A1gMBQsgBCAEKAJAKQMQNwNYDAQLIAQgBCgCQCkDeDcDWAwDCyAEIAQoAkAoAoQBEKMBNwMIIAQpAwhCAFMEQCAEKAJAQR5BtJsBKAIAEBQgBEJ/NwNYDAMLIAQgBCkDCDcDWAwCCyAEKAJAKAKEASIAKAJMQQBOGiAAIAAoAgBBT3E2AgAgBAJ/IAQoAlAhASAEKQNIpyIAIAACfyAEKAJAKAKEASIDKAJMQX9MBEAgASAAIAMQcgwBCyABIAAgAxByCyIBRg0AGiABCzYCBAJAIAQpA0ggBCgCBK1RBEACfyAEKAJAKAKEASIAKAJMQX9MBEAgACgCAAwBCyAAKAIAC0EFdkEBcUUNAQsgBCgCQEEGQbSbASgCABAUIARCfzcDWAwCCyAEIAQoAgStNwNYDAELIAQoAkBBHEEAEBQgBEJ/NwNYCyAEKQNYIQIgBEHgAGokACACCwkAIAAoAjwQBQvkAQEEfyMAQSBrIgMkACADIAE2AhAgAyACIAAoAjAiBEEAR2s2AhQgACgCLCEFIAMgBDYCHCADIAU2AhhBfyEEAkACQCAAKAI8IANBEGpBAiADQQxqEAYiBQR/QbSbASAFNgIAQX8FQQALRQRAIAMoAgwiBEEASg0BCyAAIAAoAgAgBEEwcUEQc3I2AgAMAQsgBCADKAIUIgZNDQAgACAAKAIsIgU2AgQgACAFIAQgBmtqNgIIIAAoAjAEQCAAIAVBAWo2AgQgASACakEBayAFLQAAOgAACyACIQQLIANBIGokACAEC/QCAQd/IwBBIGsiAyQAIAMgACgCHCIFNgIQIAAoAhQhBCADIAI2AhwgAyABNgIYIAMgBCAFayIBNgIUIAEgAmohBUECIQcgA0EQaiEBAn8CQAJAIAAoAjwgA0EQakECIANBDGoQAyIEBH9BtJsBIAQ2AgBBfwVBAAtFBEADQCAFIAMoAgwiBEYNAiAEQX9MDQMgASAEIAEoAgQiCEsiBkEDdGoiCSAEIAhBACAGG2siCCAJKAIAajYCACABQQxBBCAGG2oiCSAJKAIAIAhrNgIAIAUgBGshBSAAKAI8IAFBCGogASAGGyIBIAcgBmsiByADQQxqEAMiBAR/QbSbASAENgIAQX8FQQALRQ0ACwsgBUF/Rw0BCyAAIAAoAiwiATYCHCAAIAE2AhQgACABIAAoAjBqNgIQIAIMAQsgAEEANgIcIABCADcDECAAIAAoAgBBIHI2AgBBACAHQQJGDQAaIAIgASgCBGsLIQAgA0EgaiQAIAALUgEBfyMAQRBrIgMkACAAKAI8IAGnIAFCIIinIAJB/wFxIANBCGoQDSIABH9BtJsBIAA2AgBBfwVBAAshACADKQMIIQEgA0EQaiQAQn8gASAAGwtFAEGgmwFCADcDAEGYmwFCADcDAEGQmwFCADcDAEGImwFCADcDAEGAmwFCADcDAEH4mgFCADcDAEHwmgFCADcDAEHwmgEL1QQBBX8jAEGwAWsiASQAIAEgADYCqAEgASgCqAEQNwJAAkAgASgCqAEoAgBBAE4EQCABKAKoASgCAEGAFCgCAEgNAQsgASABKAKoASgCADYCECABQSBqQY8SIAFBEGoQcCABQQA2AqQBIAEgAUEgajYCoAEMAQsgASABKAKoASgCAEECdEGAE2ooAgA2AqQBAkACQAJAAkAgASgCqAEoAgBBAnRBkBRqKAIAQQFrDgIAAQILIAEoAqgBKAIEIQJBkJkBKAIAIQRBACEAAkACQANAIAIgAEGgiAFqLQAARwRAQdcAIQMgAEEBaiIAQdcARw0BDAILCyAAIgMNAEGAiQEhAgwBC0GAiQEhAANAIAAtAAAhBSAAQQFqIgIhACAFDQAgAiEAIANBAWsiAw0ACwsgBCgCFBogASACNgKgAQwCCyMAQRBrIgAgASgCqAEoAgQ2AgwgAUEAIAAoAgxrQQJ0QajZAGooAgA2AqABDAELIAFBADYCoAELCwJAIAEoAqABRQRAIAEgASgCpAE2AqwBDAELIAEgASgCoAEQKwJ/IAEoAqQBBEAgASgCpAEQK0ECagwBC0EAC2pBAWoQGCIANgIcIABFBEAgAUG4EygCADYCrAEMAQsgASgCHCEAAn8gASgCpAEEQCABKAKkAQwBC0H6EgshA0HfEkH6EiABKAKkARshAiABIAEoAqABNgIIIAEgAjYCBCABIAM2AgAgAEG+CiABEHAgASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQGRogACAAKAIUIAFqNgIUIAILjwUCBn4BfyABIAEoAgBBD2pBcHEiAUEQajYCACAAAnwgASkDACEDIAEpAwghBiMAQSBrIggkAAJAIAZC////////////AIMiBEKAgICAgIDAgDx9IARCgICAgICAwP/DAH1UBEAgBkIEhiADQjyIhCEEIANC//////////8PgyIDQoGAgICAgICACFoEQCAEQoGAgICAgICAwAB8IQIMAgsgBEKAgICAgICAgEB9IQIgA0KAgICAgICAgAiFQgBSDQEgAiAEQgGDfCECDAELIANQIARCgICAgICAwP//AFQgBEKAgICAgIDA//8AURtFBEAgBkIEhiADQjyIhEL/////////A4NCgICAgICAgPz/AIQhAgwBC0KAgICAgICA+P8AIQIgBEL///////+//8MAVg0AQgAhAiAEQjCIpyIAQZH3AEkNACADIQIgBkL///////8/g0KAgICAgIDAAIQiBSEHAkAgAEGB9wBrIgFBwABxBEAgAiABQUBqrYYhB0IAIQIMAQsgAUUNACAHIAGtIgSGIAJBwAAgAWutiIQhByACIASGIQILIAggAjcDECAIIAc3AxgCQEGB+AAgAGsiAEHAAHEEQCAFIABBQGqtiCEDQgAhBQwBCyAARQ0AIAVBwAAgAGuthiADIACtIgKIhCEDIAUgAoghBQsgCCADNwMAIAggBTcDCCAIKQMIQgSGIAgpAwAiA0I8iIQhAiAIKQMQIAgpAxiEQgBSrSADQv//////////D4OEIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACIVCAFINACACQgGDIAJ8IQILIAhBIGokACACIAZCgICAgICAgICAf4OEvws5AwALrRcDEn8CfgF8IwBBsARrIgkkACAJQQA2AiwCQCABvSIYQn9XBEBBASESQa4IIRMgAZoiAb0hGAwBCyAEQYAQcQRAQQEhEkGxCCETDAELQbQIQa8IIARBAXEiEhshEyASRSEXCwJAIBhCgICAgICAgPj/AINCgICAgICAgPj/AFEEQCAAQSAgAiASQQNqIg0gBEH//3txECYgACATIBIQIiAAQeQLQbUSIAVBIHEiAxtBjw1BuRIgAxsgASABYhtBAxAiDAELIAlBEGohEAJAAn8CQCABIAlBLGoQqQEiASABoCIBRAAAAAAAAAAAYgRAIAkgCSgCLCIGQQFrNgIsIAVBIHIiFEHhAEcNAQwDCyAFQSByIhRB4QBGDQIgCSgCLCELQQYgAyADQQBIGwwBCyAJIAZBHWsiCzYCLCABRAAAAAAAALBBoiEBQQYgAyADQQBIGwshCiAJQTBqIAlB0AJqIAtBAEgbIg4hBwNAIAcCfyABRAAAAAAAAPBBYyABRAAAAAAAAAAAZnEEQCABqwwBC0EACyIDNgIAIAdBBGohByABIAO4oUQA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HCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCHCECIAEgASgCGCIDQQFqNgIYQQAgAy0AASACRw0AGiABKAIcIQIgASABKAIYIgNBAWo2AhhBACADLQABIAJHDQAaIAEoAhwhAiABIAEoAhgiA0EBajYCGEEAIAMtAAEgAkcNABogASgCGCABKAIUSQtBAXENAAsgASgCKEGCAiABKAIUIAEoAhhrazYCYCABKAIoKAJgIAEoAigoAnRLBEAgASgCKCABKAIoKAJ0NgJgCwsLAkAgASgCKCgCYEEDTwRAIAEgASgCKCgCYEEDazoAEyABQQE7ARAgASgCKCICKAKkLSACKAKgLUEBdGogAS8BEDsBACABLQATIQMgASgCKCICKAKYLSEEIAIgAigCoC0iAkEBajYCoC0gAiAEaiADOgAAIAEgAS8BEEEBazsBECABKAIoIAEtABNB0N0Aai0AAEECdGpBmAlqIgIgAi8BAEEBajsBACABKAIoQYgTagJ/IAEvARBBgAJJBEAgAS8BEC0A0FkMAQsgAS8BEEEHdkGAAmotANBZC0ECdGoiAiACLwEAQQFqOwEAIAEgASgCKCgCoC0gASgCKCgCnC1BAWtGNgIgIAEoAigiAiACKAJ0IAEoAigoAmBrNgJ0IAEoAigiAiABKAIoKAJgIAIoAmxqNgJsIAEoAihBADYCYAwBCyABIAEoAigiAigCOCACKAJsai0AADoADyABKAIoIgIoAqQtIAIoAqAtQQF0akEAOwEAIAEtAA8hAyABKAIoIgIoApgtIQQgAiACKAKgLSICQQFqNgKgLSACIARqIAM6AAAgASgCKCABLQAPQQJ0aiICIAIvAZQBQQFqOwGUASABIAEoAigoAqAtIAEoAigoApwtQQFrRjYCICABKAIoIgIgAigCdEEBazYCdCABKAIoIgIgAigCbEEBajYCbAsgASgCIARAIAEoAigCfyABKAIoKAJcQQBOBEAgASgCKCgCOCABKAIoKAJcagwBC0EACyABKAIoKAJsIAEoAigoAlxrQQAQKCABKAIoIAEoAigoAmw2AlwgASgCKCgCABAcIAEoAigo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QCABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiQgASgCLCABKAIccUECdGooAQA2ARACQAJAA0AgASABLQARNgIMIAEgASgCLCABKAIMdjYCLCABIAEoAiggASgCDGs2AiggASABLQAQNgIMIAEoAgxFBEAgAS8BEiECIAEgASgCSCIDQQFqNgJIIAMgAjoAAAwCCyABKAIMQRBxBEAgASABLwESNgIIIAEgASgCDEEPcTYCDCABKAIMBEAgASgCKCABKAIMSQRAIAEgASgCUCICQQFqNgJQIAEgASgCLCACLQAAIAEoAih0ajYCLCABIAEoAihBCGo2AigLIAEgASgCCCABKAIsQQEgASgCDHRBAWtxajYCCCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoCyABKAIoQQ9JBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABIAEoAlAiAkEBajYCUCABIAEoAiwgAi0AACABKAIodGo2AiwgASABKAIoQQhqNgIoCyABIAEoAiAgASgCLCABKAIYcUECdGooAQA2ARACQANAIAEgAS0AETYCDCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgAS0AEDYCDCABKAIMQRBxBEAgASABLwESNgIEIAEgASgCDEEPcTYCDCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKCABKAIoIAEoAgxJBEAgASABKAJQIgJBAWo2AlAgASABKAIsIAItAAAgASgCKHRqNgIsIAEgASgCKEEIajYCKAsLIAEgASgCBCABKAIsQQEgASgCDHRBAWtxajYCBCABIAEoAiwgASgCDHY2AiwgASABKAIoIAEoAgxrNgIoIAEgASgCSCABKAJEazYCDAJAIAEoAgQgASgCDEsEQCABIAEoAgQgASgCDGs2AgwgASgCDCABKAI4SwRAIAEoAlQoAsQ3BEAgASgCXEHdDDYCGCABKAJUQdH+ADYCBAwKCwsgASABKAIwNgIAAkAgASgCNEUEQCABIAEoAgAgASgCPCABKAIMa2o2AgAgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAkggASgCBGs2AgALDAELAkAgASgCNCABKAIMSQRAIAEgASgCACABKAI8IAEoAjRqIAEoAgxrajYCACABIAEoAgwgASgCNGs2AgwgASgCDCABKAIISQRAIAEgASgCCCABKAIMazYCCANAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIMQQFrIgI2AgwgAg0ACyABIAEoAjA2AgAgASgCNCABKAIISQRAIAEgASgCNDYCDCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsMAQsgASABKAIAIAEoAjQgASgCDGtqNgIAIAEoAgwgASgCCEkEQCABIAEoAgggASgCDGs2AggDQCABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCDEEBayICNgIMIAINAAsgASABKAJIIAEoAgRrNgIACwsLA0AgASgCCEECSwRAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgiA0EBajYCSCADIAI6AAAgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCCEEDazYCCAwBCwsMAQsgASABKAJIIAEoAgRrNgIAA0AgASABKAIAIgJBAWo2AgAgAi0AACECIAEgASgCSCIDQQFqNgJIIAMgAjoAACABIAEoAgAiAkEBajYCACACLQAAIQIgASABKAJIIgNBAWo2AkggAyACOgAAIAEgASgCACICQQFqNgIAIAItAAAhAiABIAEoAkgi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ZWFkIGVycm9yAFpsaWIgZXJyb3IAZGF0YSBlcnJvcgBDUkMgZXJyb3IAaW5jb21wYXRpYmxlIHZlcnNpb24AbmFuAC9kZXYvdXJhbmRvbQBpbnZhbGlkIGNvZGUgLS0gbWlzc2luZyBlbmQtb2YtYmxvY2sAaW5jb3JyZWN0IGhlYWRlciBjaGVjawBpbmNvcnJlY3QgbGVuZ3RoIGNoZWNrAGluY29ycmVjdCBkYXRhIGNoZWNrAGludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrAGhlYWRlciBjcmMgbWlzbWF0Y2gAaW5mAGludmFsaWQgd2luZG93IHNpemUAUmVhZC1vbmx5IGFyY2hpdmUATm90IGEgemlwIGFyY2hpdmUAUmVzb3VyY2Ugc3RpbGwgaW4gdXNlAE1hbGxvYyBmYWlsdXJlAGludmFsaWQgYmxvY2sgdHlwZQBGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQBDYW4ndCBvcGVuIGZpbGUATm8gc3VjaCBmaWxlAFByZW1hdHVyZSBlbmQgb2YgZmlsZQBDYW4ndCByZW1vdmUgZmlsZQBpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUAaW52YWxpZCBkaXN0YW5jZSBjb2RlAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAHN0cmVhbSBlbmQAQ29tcHJlc3NlZCBkYXRhIGludmFsaWQATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAENsb3NpbmcgemlwIGFyY2hpdmUgZmFpbGVkAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZABFbnRyeSBoYXMgYmVlbiBjaGFuZ2VkAE5vIHBhc3N3b3JkIHByb3ZpZGVkAFdyb25nIHBhc3N3b3JkIHByb3ZpZGVkAFVua25vd24gZXJyb3IgJWQAcmIAcitiAHJ3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CADcAAgAPAAIALwACAB8AAgA/AAIAAIACACCAAgAQgAIAMIACAAiAAgAogAIAGIACADiAAgAEgAIAJIACABSAAgA0gAIADIACACyAAgAcgAIAPIACAAKAAgAigAIAEoACADKAAgAKgAIAKoACABqAAgA6gAIABoACACaAAgAWgAIANoACAA6AAgAugAIAHoACAD6AAgABgAIAIYACABGAAgAxgAIACYACACmAAgAZgAIAOYACAAWAAgAlgAIAFYACADWAAgANgAIALYACAB2AAgA9gAIAA4ACACOAAgATgAIAM4ACAAuAAgArgAIAG4ACADuAAgAHgAIAJ4ACABeAAgA3gAIAD4ACAC+AAgAfgAIAP4ACAABAAgAgQAIAEEACADBAAgAIQAIAKEACABhAAgA4QAIABEACACRAAgAUQAIANEACAAxAAgAsQAIAHEACADxAAgACQAIAIkACABJAAgAyQAIACkACACpAAgAaQAIAOkACAAZAAgAmQAIAFkACADZAAgAOQAIALkACAB5AAgA+QAIAAUACACFAAgARQAIAMUACAAlAAgApQAIAGUACADlAAgAFQAIAJUACABVAAgA1QAIADUACAC1AAgAdQAIAPUACAANAAgAjQAIAE0ACADNAAgALQAIAK0ACABtAAgA7QAIAB0ACACdAAgAXQAIAN0ACAA9AAgAvQAIAH0ACAD9AAgAEwAJABMBCQCTAAkAkwEJAFMACQBTAQkA0wAJANMBCQAzAAkAMwEJALMACQCzAQkAcwAJAHMBCQDzAAkA8wEJAAsACQALAQkAiwAJAIsBCQBLAAkASwEJAMsACQDLAQkAKwAJACsBCQCrAAkAqwEJAGsACQBrAQkA6wAJAOsBCQAbAAkAGwEJAJsACQCbAQkAWwAJAFsBCQDbAAkA2wEJADsACQA7AQkAuwAJALsBCQB7AAkAewEJAPsACQD7AQkABwAJAAcBCQCHAAkAhwEJAEcACQBHAQkAxwAJAMcBCQAnAAkAJwEJAKcACQCnAQkAZwAJAGcBCQDnAAkA5wEJABcACQAXAQkAlwAJAJcBCQBXAAkAVwEJANcACQDXAQkANwAJADcBCQC3AAkAtwEJAHcACQB3AQkA9wAJAPcBCQAPAAkADwEJAI8ACQCPAQkATwAJAE8BCQDPAAkAzwEJAC8ACQAvAQkArwAJAK8BCQBvAAkAbwEJAO8ACQDvAQkAHwAJAB8BCQCfAAkAnwEJAF8ACQBfAQkA3wAJAN8BCQA/AAkAPwEJAL8ACQC/AQkAfwAJAH8BCQD/AAkA/wEJAAAABwBAAAcAIAAHAGAABwAQAAcAUAAHADAABwBwAAcACAAHAEgABwAoAAcAaAAHABgABwBYAAcAOAAHAHgABwAEAAcARAAHACQABwBkAAcAFAAHAFQABwA0AAcAdAAHAAMACACDAAgAQwAIAMMACAAjAAgAowAIAGMACADjAAgAAAAFABAABQAIAAUAGAAFAAQABQAUAAUADAAFABwABQACAAUAEgAFAAoABQAaAAUABgAFABYABQAOAAUAHgAFAAEABQARAAUACQAFABkABQAFAAUAFQAFAA0ABQAdAAUAAwAFABMABQALAAUAGwAFAAcABQAXAAUAQbDqAAtNAQAAAAEAAAABAAAAAQAAAAIAAAACAAAAAgAAAAIAAAADAAAAAwAAAAMAAAADAAAABAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAQaDrAAtlAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AQdDsAAsjAgAAAAMAAAAHAAAAAAAAABAREgAIBwkGCgULBAwDDQIOAQ8AQYTtAAtpAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAKAAAADAAAAA4AAAAQAAAAFAAAABgAAAAcAAAAIAAAACgAAAAwAAAAOAAAAEAAAABQAAAAYAAAAHAAAACAAAAAoAAAAMAAAADgAEGE7gALegEAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAQAAAAGAAAACAAAAAwAAAAAABAACAAQAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAAIAAAADAAAABAAAAAYAAAMS4yLjExAEGI7wALbQcAAAAEAAQACAAEAAgAAAAEAAUAEAAIAAgAAAAEAAYAIAAgAAgAAAAEAAQAEAAQAAkAAAAIABAAIAAgAAkAAAAIABAAgACAAAkAAAAIACAAgAAAAQkAAAAgAIAAAgEABAkAAAAgAAIBAgEAEAkAQYDwAAulAgMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAAAAQABAAEAAQABAAEAAQABAAEQARABEAEQASABIAEgASABMAEwATABMAFAAUABQAFAAVABUAFQAVABAATQDKAAAAAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAABAAEAAQABAAEQARABIAEgATABMAFAAUABUAFQAWABYAFwAXABgAGAAZABkAGgAaABsAGwAcABwAHQAdAEAAQAAQABEAEgAAAAgABwAJAAYACgAFAAsABAAMAAMADQACAA4AAQAPAEGw8gALwRFgBwAAAAhQAAAIEAAUCHMAEgcfAAAIcAAACDAAAAnAABAHCgAACGAAAAggAAAJoAAACAAAAAiAAAAIQAAACeAAEAcGAAAIWAAACBgAAAmQABMHOwAACHgAAAg4AAAJ0AARBxEAAAhoAAAIKAAACbAAAAgIAAAIiAAACEgAAAnwABAHBAAACFQAAAgUABUI4wATBysAAAh0AAAINAAACcgAEQcNAAAIZAAACCQAAAmoAAAIBAAACIQAAAhEAAAJ6AAQBwgAAAhcAAAIHAAACZgAFAdTAAAIfAAACDwAAAnYABIHFwAACGwAAAgsAAAJuAAACAwAAAiMAAAITAAACfgAEAcDAAAIUgAACBIAFQijABMHIwAACHIAAAgyAAAJxAARBwsAAAhiAAAIIgAACaQAAAgCAAAIggAACEIAAAnkABAHBwAACFoAAAgaAAAJlAAUB0MAAAh6AAAIOgAACdQAEgcTAAAIagAACCoAAAm0AAAICgAACIoAAAhKAAAJ9AAQBwUAAAhWAAAIFgBACAAAEwczAAAIdgAACDYAAAnMABEHDwAACGYAAAgmAAAJrAAACAYAAAiGAAAIRgAACewAEAcJAAAIXgAACB4AAAmcABQHYwAACH4AAAg+AAAJ3AASBxsAAAhuAAAILgAACbwAAAgOAAAIjgAACE4AAAn8AGAHAAAACFEAAAgRABUIgwASBx8AAAhxAAAIMQAACcIAEAcKAAAIYQAACCEAAAmiAAAIAQAACIEAAAhBAAAJ4gAQBwYAAAhZAAAIGQAACZIAEwc7AAAIeQAACDkAAAnSABEHEQAACGkAAAgpAAAJsgAACAkAAAiJAAAISQAACfIAEAcEAAAIVQAACBUAEAgCARMHKwAACHUAAAg1AAAJygARBw0AAAhlAAAIJQAACaoAAAgFAAAIhQAACEUAAAnqABAHCAAACF0AAAgdAAAJmgAUB1MAAAh9AAAIPQAACdoAEgcXAAAIbQAACC0AAAm6AAAIDQAACI0AAAhNAAAJ+gAQBwMAAAhTAAAIEwAVCMMAEwcjAAAIcwAACDMAAAnGABEHCwAACGMAAAgjAAAJpgAACAMAAAiDAAAIQwAACeYAEAcHAAAIWwAACBsAAAmWABQHQwAACHsAAAg7AAAJ1gASBxMAAAhrAAAIKwAACbYAAAgLAAAIiwAACEsAAAn2ABAHBQAACFcAAAgXAEAIAAATBzMAAAh3AAAINwAACc4AEQcPAAAIZwAACCcAAAmuAAAIBwAACIcAAAhHAAAJ7gAQBwkAAAhfAAAIHwAACZ4AFAdjAAAIfwAACD8AAAneABIHGwAACG8AAAgvAAAJvgAACA8AAAiPAAAITwAACf4AYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwQAQBwoAAAhgAAAIIAAACaEAAAgAAAAIgAAACEAAAAnhABAHBgAACFgAAAgYAAAJkQATBzsAAAh4AAAIOAAACdEAEQcRAAAIaAAACCgAAAmxAAAICAAACIgAAAhIAAAJ8QAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnJABEHDQAACGQAAAgkAAAJqQAACAQAAAiEAAAIRAAACekAEAcIAAAIXAAACBwAAAmZABQHUwAACHwAAAg8AAAJ2QASBxcAAAhsAAAILAAACbkAAAgMAAAIjAAACEwAAAn5ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcUAEQcLAAAIYgAACCIAAAmlAAAIAgAACIIAAAhCAAAJ5QAQBwcAAAhaAAAIGgAACZUAFAdDAAAIegAACDoAAAnVABIHEwAACGoAAAgqAAAJtQAACAoAAAiKAAAISgAACfUAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzQARBw8AAAhmAAAIJgAACa0AAAgGAAAIhgAACEYAAAntABAHCQAACF4AAAgeAAAJnQAUB2MAAAh+AAAIPgAACd0AEgcbAAAIbgAACC4AAAm9AAAIDgAACI4AAAhOAAAJ/QBgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnDABAHCgAACGEAAAghAAAJowAACAEAAAiBAAAIQQAACeMAEAcGAAAIWQAACBkAAAmTABMHOwAACHkAAAg5AAAJ0wARBxEAAAhpAAAIKQAACbMAAAgJAAAIiQAACEkAAAnzABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcsAEQcNAAAIZQAACCUAAAmrAAAIBQAACIUAAAhFAAAJ6wAQBwgAAAhdAAAIHQAACZsAFAdTAAAIfQAACD0AAAnbABIHFwAACG0AAAgtAAAJuwAACA0AAAiNAAAITQAACfsAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxwARBwsAAAhjAAAIIwAACacAAAgDAAAIgwAACEMAAAnnABAHBwAACFsAAAgbAAAJlwAUB0MAAAh7AAAIOwAACdcAEgcTAAAIawAACCsAAAm3AAAICwAACIsAAAhLAAAJ9wAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnPABEHDwAACGcAAAgnAAAJrwAACAcAAAiHAAAIRwAACe8AEAcJAAAIXwAACB8AAAmfABQHYwAACH8AAAg/AAAJ3wASBxsAAAhvAAAILwAACb8AAAgPAAAIjwAACE8AAAn/ABAFAQAXBQEBEwURABsFARARBQUAGQUBBBUFQQAdBQFAEAUDABgFAQIUBSEAHAUBIBIFCQAaBQEIFgWBAEAFAAAQBQIAFwWBARMFGQAbBQEYEQUHABkFAQYVBWEAHQUBYBAFBAAYBQEDFAUxABwFATASBQ0AGgUBDBYFwQBABQAAEQAKABEREQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAARAA8KERERAwoHAAEACQsLAAAJBgsAAAsABhEAAAAREREAQYGEAQshCwAAAAAAAAAAEQAKChEREQAKAAACAAkLAAAACQALAAALAEG7hAELAQwAQceEAQsVDAAAAAAMAAAAAAkMAAAAAAAMAAAMAEH1hAELAQ4AQYGFAQsVDQAAAAQNAAAAAAkOAAAAAAAOAAAOAEGvhQELARAAQbuFAQseDwAAAAAPAAAAAAkQAAAAAAAQAAAQAAASAAAAEhISAEHyhQELDhIAAAASEhIAAAAAAAAJAEGjhgELAQsAQa+GAQsVCgAAAAAKAAAAAAkLAAAAAAALAAALAEHdhgELAQwAQemGAQsnDAAAAAAMAAAAAAkMAAAAAAAMAAAMAAAwMTIzNDU2Nzg5QUJDREVGAEG0hwELARkAQduHAQsF//////8AQaCIAQtXGRJEOwI/LEcUPTMwChsGRktFNw9JDo4XA0AdPGkrNh9KLRwBICUpIQgMFRYiLhA4Pgs0MRhkdHV2L0EJfzkRI0MyQomKiwUEJignDSoeNYwHGkiTE5SVAEGAiQELig5JbGxlZ2FsIGJ5dGUgc2VxdWVuY2UARG9tYWluIGVycm9yAFJlc3VsdCBub3QgcmVwcmVzZW50YWJsZQBOb3QgYSB0dHkAUGVybWlzc2lvbiBkZW5pZWQAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQATm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQBObyBzdWNoIHByb2Nlc3MARmlsZSBleGlzdHMAVmFsdWUgdG9vIGxhcmdlIGZvciBkYXRhIHR5cGUATm8gc3BhY2UgbGVmdCBvbiBkZXZpY2UAT3V0IG9mIG1lbW9yeQBSZXNvdXJjZSBidXN5AEludGVycnVwdGVkIHN5c3RlbSBjYWxsAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAEludmFsaWQgc2VlawBDcm9zcy1kZXZpY2UgbGluawBSZWFkLW9ubHkgZmlsZSBzeXN0ZW0ARGlyZWN0b3J5IG5vdCBlbXB0eQBDb25uZWN0aW9uIHJlc2V0IGJ5IHBlZXIAT3BlcmF0aW9uIHRpbWVkIG91dABDb25uZWN0aW9uIHJlZnVzZWQASG9zdCBpcyBkb3duAEhvc3QgaXMgdW5yZWFjaGFibGUAQWRkcmVzcyBpbiB1c2UAQnJva2VuIHBpcGUASS9PIGVycm9yAE5vIHN1Y2ggZGV2aWNlIG9yIGFkZHJlc3MAQmxvY2sgZGV2aWNlIHJlcXVpcmVkAE5vIHN1Y2ggZGV2aWNlAE5vdCBhIGRpcmVjdG9yeQBJcyBhIGRpcmVjdG9yeQBUZXh0IGZpbGUgYnVzeQBFeGVjIGZvcm1hdCBlcnJvcgBJbnZhbGlkIGFyZ3VtZW50AEFyZ3VtZW50IGxpc3QgdG9vIGxvbmcAU3ltYm9saWMgbGluayBsb29wAEZpbGVuYW1lIHRvbyBsb25nAFRvbyBtYW55IG9wZW4gZmlsZXMgaW4gc3lzdGVtAE5vIGZpbGUgZGVzY3JpcHRvcnMgYXZhaWxhYmxlAEJhZCBmaWxlIGRlc2NyaXB0b3IATm8gY2hpbGQgcHJvY2VzcwBCYWQgYWRkcmVzcwBGaWxlIHRvbyBsYXJnZQBUb28gbWFueSBsaW5rcwBObyBsb2NrcyBhdmFpbGFibGUAUmVzb3VyY2UgZGVhZGxvY2sgd291bGQgb2NjdXIAU3RhdGUgbm90IHJlY292ZXJhYmxlAFByZXZpb3VzIG93bmVyIGRpZWQAT3BlcmF0aW9uIGNhbmNlbGVkAEZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZABObyBtZXNzYWdlIG9mIGRlc2lyZWQgdHlwZQBJZGVudGlmaWVyIHJlbW92ZWQARGV2aWNlIG5vdCBhIHN0cmVhbQBObyBkYXRhIGF2YWlsYWJsZQBEZXZpY2UgdGltZW91dABPdXQgb2Ygc3RyZWFtcyByZXNvdXJjZXMATGluayBoYXMgYmVlbiBzZXZlcmVkAFByb3RvY29sIGVycm9yAEJhZCBtZXNzYWdlAEZpbGUgZGVzY3JpcHRvciBpbiBiYWQgc3RhdGUATm90IGEgc29ja2V0AERlc3RpbmF0aW9uIGFkZHJlc3MgcmVxdWlyZWQATWVzc2FnZSB0b28gbGFyZ2UAUHJvdG9jb2wgd3JvbmcgdHlwZSBmb3Igc29ja2V0AFByb3RvY29sIG5vdCBhdmFpbGFibGUAUHJvdG9jb2wgbm90IHN1cHBvcnRlZABTb2NrZXQgdHlwZSBub3Qgc3VwcG9ydGVkAE5vdCBzdXBwb3J0ZWQAUHJvdG9jb2wgZmFtaWx5IG5vdCBzdXBwb3J0ZWQAQWRkcmVzcyBmYW1pbHkgbm90IHN1cHBvcnRlZCBieSBwcm90b2NvbABBZGRyZXNzIG5vdCBhdmFpbGFibGUATmV0d29yayBpcyBkb3duAE5ldHdvcmsgdW5yZWFjaGFibGUAQ29ubmVjdGlvbiByZXNldCBieSBuZXR3b3JrAENvbm5lY3Rpb24gYWJvcnRlZABObyBidWZmZXIgc3BhY2UgYXZhaWxhYmxlAFNvY2tldCBpcyBjb25uZWN0ZWQAU29ja2V0IG5vdCBjb25uZWN0ZWQAQ2Fubm90IHNlbmQgYWZ0ZXIgc29ja2V0IHNodXRkb3duAE9wZXJhdGlvbiBhbHJlYWR5IGluIHByb2dyZXNzAE9wZXJhdGlvbiBpbiBwcm9ncmVzcwBTdGFsZSBmaWxlIGhhbmRsZQBSZW1vdGUgSS9PIGVycm9yAFF1b3RhIGV4Y2VlZGVkAE5vIG1lZGl1bSBmb3VuZABXcm9uZyBtZWRpdW0gdHlwZQBObyBlcnJvciBpbmZvcm1hdGlvbgBBkJcBC1JQUFAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAAAEAAAAIAAAAlEsAALRLAEGQmQELAgxQAEHImQELCR8AAADkTAAAAwBB5JkBC4wBLfRRWM+MscBG9rXLKTEDxwRbcDC0Xf0geH+LmthZKVBoSImrp1YDbP+3zYg/1He0K6WjcPG65Kj8QYP92W/hinovLXSWBx8NCV4Ddixw90ClLKdvV0GoqnTfoFhkA0rHxDxTrq9fGAQVseNtKIarDKS/Q/DpUIE5VxZSN/////////////////////8="; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile); +} +function getBinary(file) { + try { + if (file == wasmBinaryFile && wasmBinary) { + return new Uint8Array(wasmBinary); + } + var binary = tryParseAsDataURI(file); + if (binary) { + return binary; + } + if (readBinary) { + return readBinary(file); + } else { + throw "sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)"; + } + } catch (err) { + abort(err); + } +} +function instantiateSync(file, info) { + var instance; + var module; + var binary; + try { + binary = getBinary(file); + module = new WebAssembly.Module(binary); + instance = new WebAssembly.Instance(module, info); + } catch (e) { + var str = e.toString(); + err("failed to compile wasm module: " + str); + if (str.includes("imported Memory") || str.includes("memory import")) { + err( + "Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time)." + ); + } + throw e; + } + return [instance, module]; +} +function createWasm() { + var info = { a: asmLibraryArg }; + function receiveInstance(instance, module) { + var exports = instance.exports; + Module["asm"] = exports; + wasmMemory = Module["asm"]["u"]; + updateGlobalBufferAndViews(wasmMemory.buffer); + wasmTable = Module["asm"]["za"]; + addOnInit(Module["asm"]["v"]); + removeRunDependency("wasm-instantiate"); + } + addRunDependency("wasm-instantiate"); + if (Module["instantiateWasm"]) { + try { + var exports = Module["instantiateWasm"](info, receiveInstance); + return exports; + } catch (e) { + err("Module.instantiateWasm callback failed with error: " + e); + return false; + } + } + var result = instantiateSync(wasmBinaryFile, info); + receiveInstance(result[0]); + return Module["asm"]; +} +var tempDouble; +var tempI64; +function callRuntimeCallbacks(callbacks) { + while (callbacks.length > 0) { + var callback = callbacks.shift(); + if (typeof callback == "function") { + callback(Module); + continue; + } + var func = callback.func; + if (typeof func === "number") { + if (callback.arg === undefined) { + wasmTable.get(func)(); + } else { + wasmTable.get(func)(callback.arg); + } + } else { + func(callback.arg === undefined ? null : callback.arg); + } + } +} +function _gmtime_r(time, tmPtr) { + var date = new Date(HEAP32[time >> 2] * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[(tmPtr + 4) >> 2] = date.getUTCMinutes(); + HEAP32[(tmPtr + 8) >> 2] = date.getUTCHours(); + HEAP32[(tmPtr + 12) >> 2] = date.getUTCDate(); + HEAP32[(tmPtr + 16) >> 2] = date.getUTCMonth(); + HEAP32[(tmPtr + 20) >> 2] = date.getUTCFullYear() - 1900; + HEAP32[(tmPtr + 24) >> 2] = date.getUTCDay(); + HEAP32[(tmPtr + 36) >> 2] = 0; + HEAP32[(tmPtr + 32) >> 2] = 0; + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = ((date.getTime() - start) / (1e3 * 60 * 60 * 24)) | 0; + HEAP32[(tmPtr + 28) >> 2] = yday; + if (!_gmtime_r.GMTString) _gmtime_r.GMTString = allocateUTF8("GMT"); + HEAP32[(tmPtr + 40) >> 2] = _gmtime_r.GMTString; + return tmPtr; +} +function ___gmtime_r(a0, a1) { + return _gmtime_r(a0, a1); +} +var PATH = { + splitPath: function(filename) { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1); + }, + normalizeArray: function(parts, allowAboveRoot) { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1); + } else if (last === "..") { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift(".."); + } + } + return parts; + }, + normalize: function(path) { + var isAbsolute = path.charAt(0) === "/", + trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray( + path.split("/").filter(function(p) { + return !!p; + }), + !isAbsolute + ).join("/"); + if (!path && !isAbsolute) { + path = "."; + } + if (path && trailingSlash) { + path += "/"; + } + return (isAbsolute ? "/" : "") + path; + }, + dirname: function(path) { + var result = PATH.splitPath(path), + root = result[0], + dir = result[1]; + if (!root && !dir) { + return "."; + } + if (dir) { + dir = dir.substr(0, dir.length - 1); + } + return root + dir; + }, + basename: function(path) { + if (path === "/") return "/"; + path = PATH.normalize(path); + path = path.replace(/\/$/, ""); + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) return path; + return path.substr(lastSlash + 1); + }, + extname: function(path) { + return PATH.splitPath(path)[3]; + }, + join: function() { + var paths = Array.prototype.slice.call(arguments, 0); + return PATH.normalize(paths.join("/")); + }, + join2: function(l, r) { + return PATH.normalize(l + "/" + r); + } +}; +function getRandomDevice() { + if ( + typeof crypto === "object" && + typeof crypto["getRandomValues"] === "function" + ) { + var randomBuffer = new Uint8Array(1); + return function() { + crypto.getRandomValues(randomBuffer); + return randomBuffer[0]; + }; + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = __webpack_require__(417); + return function() { + return crypto_module["randomBytes"](1)[0]; + }; + } catch (e) {} + } + return function() { + abort("randomDevice"); + }; +} +var PATH_FS = { + resolve: function() { + var resolvedPath = "", + resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path !== "string") { + throw new TypeError("Arguments to path.resolve must be strings"); + } else if (!path) { + return ""; + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = path.charAt(0) === "/"; + } + resolvedPath = PATH.normalizeArray( + resolvedPath.split("/").filter(function(p) { + return !!p; + }), + !resolvedAbsolute + ).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "."; + }, + relative: function(from, to) { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") break; + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") break; + } + if (start > end) return []; + return arr.slice(start, end - start + 1); + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push(".."); + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/"); + } +}; +var TTY = { + ttys: [], + init: function() {}, + shutdown: function() {}, + register: function(dev, ops) { + TTY.ttys[dev] = { input: [], output: [], ops: ops }; + FS.registerDevice(dev, TTY.stream_ops); + }, + stream_ops: { + open: function(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43); + } + stream.tty = tty; + stream.seekable = false; + }, + close: function(stream) { + stream.tty.ops.flush(stream.tty); + }, + flush: function(stream) { + stream.tty.ops.flush(stream.tty); + }, + read: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60); + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6); + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }, + write: function(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60); + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]); + } + } catch (e) { + throw new FS.ErrnoError(29); + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }, + default_tty_ops: { + get_char: function(tty) { + if (!tty.input.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc ? Buffer.alloc(BUFSIZE) : new Buffer(BUFSIZE); + var bytesRead = 0; + try { + bytesRead = nodeFS.readSync( + process.stdin.fd, + buf, + 0, + BUFSIZE, + null + ); + } catch (e) { + if (e.toString().includes("EOF")) bytesRead = 0; + else throw e; + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8"); + } else { + result = null; + } + } else if ( + typeof window != "undefined" && + typeof window.prompt == "function" + ) { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n"; + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n"; + } + } + if (!result) { + return null; + } + tty.input = intArrayFromString(result, true); + } + return tty.input.shift(); + }, + put_char: function(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + } + }, + default_tty1_ops: { + put_char: function(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } else { + if (val != 0) tty.output.push(val); + } + }, + flush: function(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = []; + } + } + } +}; +function mmapAlloc(size) { + var alignedSize = alignMemory(size, 65536); + var ptr = _malloc(alignedSize); + while (size < alignedSize) HEAP8[ptr + size++] = 0; + return ptr; +} +var MEMFS = { + ops_table: null, + mount: function(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0); + }, + createNode: function(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63); + } + if (!MEMFS.ops_table) { + MEMFS.ops_table = { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { llseek: MEMFS.stream_ops.llseek } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + }; + } + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {}; + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null; + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream; + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream; + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node; + parent.timestamp = node.timestamp; + } + return node; + }, + getFileDataAsTypedArray: function(node) { + if (!node.contents) return new Uint8Array(0); + if (node.contents.subarray) + return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents); + }, + expandFileStorage: function(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max( + newCapacity, + (prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125)) >>> 0 + ); + if (prevCapacity != 0) newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) + node.contents.set(oldContents.subarray(0, node.usedBytes), 0); + }, + resizeFileStorage: function(node, newSize) { + if (node.usedBytes == newSize) return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0; + } else { + var oldContents = node.contents; + node.contents = new Uint8Array(newSize); + if (oldContents) { + node.contents.set( + oldContents.subarray(0, Math.min(newSize, node.usedBytes)) + ); + } + node.usedBytes = newSize; + } + }, + node_ops: { + getattr: function(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096; + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes; + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length; + } else { + attr.size = 0; + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr; + }, + setattr: function(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp; + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size); + } + }, + lookup: function(parent, name) { + throw FS.genericErrors[44]; + }, + mknod: function(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev); + }, + rename: function(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55); + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.parent.timestamp = Date.now(); + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + new_dir.timestamp = old_node.parent.timestamp; + old_node.parent = new_dir; + }, + unlink: function(parent, name) { + delete parent.contents[name]; + parent.timestamp = Date.now(); + }, + rmdir: function(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55); + } + delete parent.contents[name]; + parent.timestamp = Date.now(); + }, + readdir: function(node) { + var entries = [".", ".."]; + for (var key in node.contents) { + if (!node.contents.hasOwnProperty(key)) { + continue; + } + entries.push(key); + } + return entries; + }, + symlink: function(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node; + }, + readlink: function(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28); + } + return node.link; + } + }, + stream_ops: { + read: function(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) return 0; + var size = Math.min(stream.node.usedBytes - position, length); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset); + } else { + for (var i = 0; i < size; i++) + buffer[offset + i] = contents[position + i]; + } + return size; + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (buffer.buffer === HEAP8.buffer) { + canOwn = false; + } + if (!length) return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length; + } else if (node.usedBytes === 0 && position === 0) { + node.contents = buffer.slice(offset, offset + length); + node.usedBytes = length; + return length; + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length; + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) { + node.contents.set(buffer.subarray(offset, offset + length), position); + } else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i]; + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length; + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes; + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }, + allocate: function(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length); + }, + mmap: function(stream, address, length, position, prot, flags) { + if (address !== 0) { + throw new FS.ErrnoError(28); + } + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && contents.buffer === buffer) { + allocated = false; + ptr = contents.byteOffset; + } else { + if (position > 0 || position + length < contents.length) { + if (contents.subarray) { + contents = contents.subarray(position, position + length); + } else { + contents = Array.prototype.slice.call( + contents, + position, + position + length + ); + } + } + allocated = true; + ptr = mmapAlloc(length); + if (!ptr) { + throw new FS.ErrnoError(48); + } + HEAP8.set(contents, ptr); + } + return { ptr: ptr, allocated: allocated }; + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (mmapFlags & 2) { + return 0; + } + var bytesWritten = MEMFS.stream_ops.write( + stream, + buffer, + 0, + length, + offset, + false + ); + return 0; + } + } +}; +var ERRNO_CODES = { + EPERM: 63, + ENOENT: 44, + ESRCH: 71, + EINTR: 27, + EIO: 29, + ENXIO: 60, + E2BIG: 1, + ENOEXEC: 45, + EBADF: 8, + ECHILD: 12, + EAGAIN: 6, + EWOULDBLOCK: 6, + ENOMEM: 48, + EACCES: 2, + EFAULT: 21, + ENOTBLK: 105, + EBUSY: 10, + EEXIST: 20, + EXDEV: 75, + ENODEV: 43, + ENOTDIR: 54, + EISDIR: 31, + EINVAL: 28, + ENFILE: 41, + EMFILE: 33, + ENOTTY: 59, + ETXTBSY: 74, + EFBIG: 22, + ENOSPC: 51, + ESPIPE: 70, + EROFS: 69, + EMLINK: 34, + EPIPE: 64, + EDOM: 18, + ERANGE: 68, + ENOMSG: 49, + EIDRM: 24, + ECHRNG: 106, + EL2NSYNC: 156, + EL3HLT: 107, + EL3RST: 108, + ELNRNG: 109, + EUNATCH: 110, + ENOCSI: 111, + EL2HLT: 112, + EDEADLK: 16, + ENOLCK: 46, + EBADE: 113, + EBADR: 114, + EXFULL: 115, + ENOANO: 104, + EBADRQC: 103, + EBADSLT: 102, + EDEADLOCK: 16, + EBFONT: 101, + ENOSTR: 100, + ENODATA: 116, + ETIME: 117, + ENOSR: 118, + ENONET: 119, + ENOPKG: 120, + EREMOTE: 121, + ENOLINK: 47, + EADV: 122, + ESRMNT: 123, + ECOMM: 124, + EPROTO: 65, + EMULTIHOP: 36, + EDOTDOT: 125, + EBADMSG: 9, + ENOTUNIQ: 126, + EBADFD: 127, + EREMCHG: 128, + ELIBACC: 129, + ELIBBAD: 130, + ELIBSCN: 131, + ELIBMAX: 132, + ELIBEXEC: 133, + ENOSYS: 52, + ENOTEMPTY: 55, + ENAMETOOLONG: 37, + ELOOP: 32, + EOPNOTSUPP: 138, + EPFNOSUPPORT: 139, + ECONNRESET: 15, + ENOBUFS: 42, + EAFNOSUPPORT: 5, + EPROTOTYPE: 67, + ENOTSOCK: 57, + ENOPROTOOPT: 50, + ESHUTDOWN: 140, + ECONNREFUSED: 14, + EADDRINUSE: 3, + ECONNABORTED: 13, + ENETUNREACH: 40, + ENETDOWN: 38, + ETIMEDOUT: 73, + EHOSTDOWN: 142, + EHOSTUNREACH: 23, + EINPROGRESS: 26, + EALREADY: 7, + EDESTADDRREQ: 17, + EMSGSIZE: 35, + EPROTONOSUPPORT: 66, + ESOCKTNOSUPPORT: 137, + EADDRNOTAVAIL: 4, + ENETRESET: 39, + EISCONN: 30, + ENOTCONN: 53, + ETOOMANYREFS: 141, + EUSERS: 136, + EDQUOT: 19, + ESTALE: 72, + ENOTSUP: 138, + ENOMEDIUM: 148, + EILSEQ: 25, + EOVERFLOW: 61, + ECANCELED: 11, + ENOTRECOVERABLE: 56, + EOWNERDEAD: 62, + ESTRPIPE: 135 +}; +var NODEFS = { + isWindows: false, + staticInit: function() { + NODEFS.isWindows = !!process.platform.match(/^win/); + var flags = { fs: fs.constants }; + if (flags["fs"]) { + flags = flags["fs"]; + } + NODEFS.flagsForNodeMap = { + 1024: flags["O_APPEND"], + 64: flags["O_CREAT"], + 128: flags["O_EXCL"], + 256: flags["O_NOCTTY"], + 0: flags["O_RDONLY"], + 2: flags["O_RDWR"], + 4096: flags["O_SYNC"], + 512: flags["O_TRUNC"], + 1: flags["O_WRONLY"] + }; + }, + bufferFrom: function(arrayBuffer) { + return Buffer["alloc"] ? Buffer.from(arrayBuffer) : new Buffer(arrayBuffer); + }, + convertNodeCode: function(e) { + var code = e.code; + return ERRNO_CODES[code]; + }, + mount: function(mount) { + return NODEFS.createNode(null, "/", NODEFS.getMode(mount.opts.root), 0); + }, + createNode: function(parent, name, mode, dev) { + if (!FS.isDir(mode) && !FS.isFile(mode) && !FS.isLink(mode)) { + throw new FS.ErrnoError(28); + } + var node = FS.createNode(parent, name, mode); + node.node_ops = NODEFS.node_ops; + node.stream_ops = NODEFS.stream_ops; + return node; + }, + getMode: function(path) { + var stat; + try { + stat = fs.lstatSync(path); + if (NODEFS.isWindows) { + stat.mode = stat.mode | ((stat.mode & 292) >> 2); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return stat.mode; + }, + realPath: function(node) { + var parts = []; + while (node.parent !== node) { + parts.push(node.name); + node = node.parent; + } + parts.push(node.mount.opts.root); + parts.reverse(); + return PATH.join.apply(null, parts); + }, + flagsForNode: function(flags) { + flags &= ~2097152; + flags &= ~2048; + flags &= ~32768; + flags &= ~524288; + var newFlags = 0; + for (var k in NODEFS.flagsForNodeMap) { + if (flags & k) { + newFlags |= NODEFS.flagsForNodeMap[k]; + flags ^= k; + } + } + if (!flags) { + return newFlags; + } else { + throw new FS.ErrnoError(28); + } + }, + node_ops: { + getattr: function(node) { + var path = NODEFS.realPath(node); + var stat; + try { + stat = fs.lstatSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + if (NODEFS.isWindows && !stat.blksize) { + stat.blksize = 4096; + } + if (NODEFS.isWindows && !stat.blocks) { + stat.blocks = ((stat.size + stat.blksize - 1) / stat.blksize) | 0; + } + return { + dev: stat.dev, + ino: stat.ino, + mode: stat.mode, + nlink: stat.nlink, + uid: stat.uid, + gid: stat.gid, + rdev: stat.rdev, + size: stat.size, + atime: stat.atime, + mtime: stat.mtime, + ctime: stat.ctime, + blksize: stat.blksize, + blocks: stat.blocks + }; + }, + setattr: function(node, attr) { + var path = NODEFS.realPath(node); + try { + if (attr.mode !== undefined) { + fs.chmodSync(path, attr.mode); + node.mode = attr.mode; + } + if (attr.timestamp !== undefined) { + var date = new Date(attr.timestamp); + fs.utimesSync(path, date, date); + } + if (attr.size !== undefined) { + fs.truncateSync(path, attr.size); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + lookup: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + var mode = NODEFS.getMode(path); + return NODEFS.createNode(parent, name, mode); + }, + mknod: function(parent, name, mode, dev) { + var node = NODEFS.createNode(parent, name, mode, dev); + var path = NODEFS.realPath(node); + try { + if (FS.isDir(node.mode)) { + fs.mkdirSync(path, node.mode); + } else { + fs.writeFileSync(path, "", { mode: node.mode }); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + return node; + }, + rename: function(oldNode, newDir, newName) { + var oldPath = NODEFS.realPath(oldNode); + var newPath = PATH.join2(NODEFS.realPath(newDir), newName); + try { + fs.renameSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + oldNode.name = newName; + }, + unlink: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.unlinkSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + rmdir: function(parent, name) { + var path = PATH.join2(NODEFS.realPath(parent), name); + try { + fs.rmdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + readdir: function(node) { + var path = NODEFS.realPath(node); + try { + return fs.readdirSync(path); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + symlink: function(parent, newName, oldPath) { + var newPath = PATH.join2(NODEFS.realPath(parent), newName); + try { + fs.symlinkSync(oldPath, newPath); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + readlink: function(node) { + var path = NODEFS.realPath(node); + try { + path = fs.readlinkSync(path); + path = NODEJS_PATH.relative( + NODEJS_PATH.resolve(node.mount.opts.root), + path + ); + return path; + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + } + }, + stream_ops: { + open: function(stream) { + var path = NODEFS.realPath(stream.node); + try { + if (FS.isFile(stream.node.mode)) { + stream.nfd = fs.openSync(path, NODEFS.flagsForNode(stream.flags)); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + close: function(stream) { + try { + if (FS.isFile(stream.node.mode) && stream.nfd) { + fs.closeSync(stream.nfd); + } + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + read: function(stream, buffer, offset, length, position) { + if (length === 0) return 0; + try { + return fs.readSync( + stream.nfd, + NODEFS.bufferFrom(buffer.buffer), + offset, + length, + position + ); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + write: function(stream, buffer, offset, length, position) { + try { + return fs.writeSync( + stream.nfd, + NODEFS.bufferFrom(buffer.buffer), + offset, + length, + position + ); + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + }, + llseek: function(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + try { + var stat = fs.fstatSync(stream.nfd); + position += stat.size; + } catch (e) { + throw new FS.ErrnoError(NODEFS.convertNodeCode(e)); + } + } + } + if (position < 0) { + throw new FS.ErrnoError(28); + } + return position; + }, + mmap: function(stream, address, length, position, prot, flags) { + if (address !== 0) { + throw new FS.ErrnoError(28); + } + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + var ptr = mmapAlloc(length); + NODEFS.stream_ops.read(stream, HEAP8, ptr, length, position); + return { ptr: ptr, allocated: true }; + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (mmapFlags & 2) { + return 0; + } + var bytesWritten = NODEFS.stream_ops.write( + stream, + buffer, + 0, + length, + offset, + false + ); + return 0; + } + } +}; +var NODERAWFS = { + lookupPath: function(path) { + return { path: path, node: { mode: NODEFS.getMode(path) } }; + }, + createStandardStreams: function() { + FS.streams[0] = { + fd: 0, + nfd: 0, + position: 0, + path: "", + flags: 0, + tty: true, + seekable: false + }; + for (var i = 1; i < 3; i++) { + FS.streams[i] = { + fd: i, + nfd: i, + position: 0, + path: "", + flags: 577, + tty: true, + seekable: false + }; + } + }, + cwd: function() { + return process.cwd(); + }, + chdir: function() { + process.chdir.apply(void 0, arguments); + }, + mknod: function(path, mode) { + if (FS.isDir(path)) { + fs.mkdirSync(path, mode); + } else { + fs.writeFileSync(path, "", { mode: mode }); + } + }, + mkdir: function() { + fs.mkdirSync.apply(void 0, arguments); + }, + symlink: function() { + fs.symlinkSync.apply(void 0, arguments); + }, + rename: function() { + fs.renameSync.apply(void 0, arguments); + }, + rmdir: function() { + fs.rmdirSync.apply(void 0, arguments); + }, + readdir: function() { + fs.readdirSync.apply(void 0, arguments); + }, + unlink: function() { + fs.unlinkSync.apply(void 0, arguments); + }, + readlink: function() { + return fs.readlinkSync.apply(void 0, arguments); + }, + stat: function() { + return fs.statSync.apply(void 0, arguments); + }, + lstat: function() { + return fs.lstatSync.apply(void 0, arguments); + }, + chmod: function() { + fs.chmodSync.apply(void 0, arguments); + }, + fchmod: function() { + fs.fchmodSync.apply(void 0, arguments); + }, + chown: function() { + fs.chownSync.apply(void 0, arguments); + }, + fchown: function() { + fs.fchownSync.apply(void 0, arguments); + }, + truncate: function() { + fs.truncateSync.apply(void 0, arguments); + }, + ftruncate: function(fd, len) { + if (len < 0) { + throw new FS.ErrnoError(28); + } + fs.ftruncateSync.apply(void 0, arguments); + }, + utime: function() { + fs.utimesSync.apply(void 0, arguments); + }, + open: function(path, flags, mode, suggestFD) { + if (typeof flags === "string") { + flags = VFS.modeStringToFlags(flags); + } + var nfd = fs.openSync(path, NODEFS.flagsForNode(flags), mode); + var fd = suggestFD != null ? suggestFD : FS.nextfd(nfd); + var stream = { + fd: fd, + nfd: nfd, + position: 0, + path: path, + flags: flags, + seekable: true + }; + FS.streams[fd] = stream; + return stream; + }, + close: function(stream) { + if (!stream.stream_ops) { + fs.closeSync(stream.nfd); + } + FS.closeStream(stream.fd); + }, + llseek: function(stream, offset, whence) { + if (stream.stream_ops) { + return VFS.llseek(stream, offset, whence); + } + var position = offset; + if (whence === 1) { + position += stream.position; + } else if (whence === 2) { + position += fs.fstatSync(stream.nfd).size; + } else if (whence !== 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + if (position < 0) { + throw new FS.ErrnoError(ERRNO_CODES.EINVAL); + } + stream.position = position; + return position; + }, + read: function(stream, buffer, offset, length, position) { + if (stream.stream_ops) { + return VFS.read(stream, buffer, offset, length, position); + } + var seeking = typeof position !== "undefined"; + if (!seeking && stream.seekable) position = stream.position; + var bytesRead = fs.readSync( + stream.nfd, + NODEFS.bufferFrom(buffer.buffer), + offset, + length, + position + ); + if (!seeking) stream.position += bytesRead; + return bytesRead; + }, + write: function(stream, buffer, offset, length, position) { + if (stream.stream_ops) { + return VFS.write(stream, buffer, offset, length, position); + } + if (stream.flags & +"1024") { + FS.llseek(stream, 0, +"2"); + } + var seeking = typeof position !== "undefined"; + if (!seeking && stream.seekable) position = stream.position; + var bytesWritten = fs.writeSync( + stream.nfd, + NODEFS.bufferFrom(buffer.buffer), + offset, + length, + position + ); + if (!seeking) stream.position += bytesWritten; + return bytesWritten; + }, + allocate: function() { + throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP); + }, + mmap: function(stream, address, length, position, prot, flags) { + if (stream.stream_ops) { + return VFS.mmap(stream, address, length, position, prot, flags); + } + if (address !== 0) { + throw new FS.ErrnoError(28); + } + var ptr = mmapAlloc(length); + FS.read(stream, HEAP8, ptr, length, position); + return { ptr: ptr, allocated: true }; + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (stream.stream_ops) { + return VFS.msync(stream, buffer, offset, length, mmapFlags); + } + if (mmapFlags & 2) { + return 0; + } + FS.write(stream, buffer, 0, length, offset); + return 0; + }, + munmap: function() { + return 0; + }, + ioctl: function() { + throw new FS.ErrnoError(ERRNO_CODES.ENOTTY); + } +}; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + trackingDelegate: {}, + tracking: { openFlags: { READ: 1, WRITE: 2 } }, + ErrnoError: null, + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + lookupPath: function(path, opts) { + path = PATH_FS.resolve(FS.cwd(), path); + opts = opts || {}; + if (!path) return { path: "", node: null }; + var defaults = { follow_mount: true, recurse_count: 0 }; + for (var key in defaults) { + if (opts[key] === undefined) { + opts[key] = defaults[key]; + } + } + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32); + } + var parts = PATH.normalizeArray( + path.split("/").filter(function(p) { + return !!p; + }), + false + ); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break; + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || (islast && opts.follow_mount)) { + current = current.mounted.root; + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32); + } + } + } + } + return { path: current_path, node: current }; + }, + getPath: function(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) return mount; + return mount[mount.length - 1] !== "/" + ? mount + "/" + path + : mount + path; + } + path = path ? node.name + "/" + path : node.name; + node = node.parent; + } + }, + hashName: function(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = ((hash << 5) - hash + name.charCodeAt(i)) | 0; + } + return ((parentid + hash) >>> 0) % FS.nameTable.length; + }, + hashAddNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node; + }, + hashRemoveNode: function(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next; + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break; + } + current = current.name_next; + } + } + }, + lookupNode: function(parent, name) { + var errCode = FS.mayLookup(parent); + if (errCode) { + throw new FS.ErrnoError(errCode, parent); + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node; + } + } + return FS.lookup(parent, name); + }, + createNode: function(parent, name, mode, rdev) { + var node = new FS.FSNode(parent, name, mode, rdev); + FS.hashAddNode(node); + return node; + }, + destroyNode: function(node) { + FS.hashRemoveNode(node); + }, + isRoot: function(node) { + return node === node.parent; + }, + isMountpoint: function(node) { + return !!node.mounted; + }, + isFile: function(mode) { + return (mode & 61440) === 32768; + }, + isDir: function(mode) { + return (mode & 61440) === 16384; + }, + isLink: function(mode) { + return (mode & 61440) === 40960; + }, + isChrdev: function(mode) { + return (mode & 61440) === 8192; + }, + isBlkdev: function(mode) { + return (mode & 61440) === 24576; + }, + isFIFO: function(mode) { + return (mode & 61440) === 4096; + }, + isSocket: function(mode) { + return (mode & 49152) === 49152; + }, + flagModes: { r: 0, "r+": 2, w: 577, "w+": 578, a: 1089, "a+": 1090 }, + modeStringToFlags: function(str) { + var flags = FS.flagModes[str]; + if (typeof flags === "undefined") { + throw new Error("Unknown file open mode: " + str); + } + return flags; + }, + flagsToPermissionString: function(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w"; + } + return perms; + }, + nodePermissions: function(node, perms) { + if (FS.ignorePermissions) { + return 0; + } + if (perms.includes("r") && !(node.mode & 292)) { + return 2; + } else if (perms.includes("w") && !(node.mode & 146)) { + return 2; + } else if (perms.includes("x") && !(node.mode & 73)) { + return 2; + } + return 0; + }, + mayLookup: function(dir) { + var errCode = FS.nodePermissions(dir, "x"); + if (errCode) return errCode; + if (!dir.node_ops.lookup) return 2; + return 0; + }, + mayCreate: function(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20; + } catch (e) {} + return FS.nodePermissions(dir, "wx"); + }, + mayDelete: function(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name); + } catch (e) { + return e.errno; + } + var errCode = FS.nodePermissions(dir, "wx"); + if (errCode) { + return errCode; + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54; + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10; + } + } else { + if (FS.isDir(node.mode)) { + return 31; + } + } + return 0; + }, + mayOpen: function(node, flags) { + if (!node) { + return 44; + } + if (FS.isLink(node.mode)) { + return 32; + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31; + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)); + }, + MAX_OPEN_FDS: 4096, + nextfd: function(fd_start, fd_end) { + fd_start = fd_start || 0; + fd_end = fd_end || FS.MAX_OPEN_FDS; + for (var fd = fd_start; fd <= fd_end; fd++) { + if (!FS.streams[fd]) { + return fd; + } + } + throw new FS.ErrnoError(33); + }, + getStream: function(fd) { + return FS.streams[fd]; + }, + createStream: function(stream, fd_start, fd_end) { + if (!FS.FSStream) { + FS.FSStream = function() {}; + FS.FSStream.prototype = { + object: { + get: function() { + return this.node; + }, + set: function(val) { + this.node = val; + } + }, + isRead: { + get: function() { + return (this.flags & 2097155) !== 1; + } + }, + isWrite: { + get: function() { + return (this.flags & 2097155) !== 0; + } + }, + isAppend: { + get: function() { + return this.flags & 1024; + } + } + }; + } + var newStream = new FS.FSStream(); + for (var p in stream) { + newStream[p] = stream[p]; + } + stream = newStream; + var fd = FS.nextfd(fd_start, fd_end); + stream.fd = fd; + FS.streams[fd] = stream; + return stream; + }, + closeStream: function(fd) { + FS.streams[fd] = null; + }, + chrdev_stream_ops: { + open: function(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + }, + llseek: function() { + throw new FS.ErrnoError(70); + } + }, + major: function(dev) { + return dev >> 8; + }, + minor: function(dev) { + return dev & 255; + }, + makedev: function(ma, mi) { + return (ma << 8) | mi; + }, + registerDevice: function(dev, ops) { + FS.devices[dev] = { stream_ops: ops }; + }, + getDevice: function(dev) { + return FS.devices[dev]; + }, + getMounts: function(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts); + } + return mounts; + }, + syncfs: function(populate, callback) { + if (typeof populate === "function") { + callback = populate; + populate = false; + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + err( + "warning: " + + FS.syncFSRequests + + " FS.syncfs operations in flight at once, probably just doing extra work" + ); + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + function doCallback(errCode) { + FS.syncFSRequests--; + return callback(errCode); + } + function done(errCode) { + if (errCode) { + if (!done.errored) { + done.errored = true; + return doCallback(errCode); + } + return; + } + if (++completed >= mounts.length) { + doCallback(null); + } + } + mounts.forEach(function(mount) { + if (!mount.type.syncfs) { + return done(null); + } + mount.type.syncfs(mount, populate, done); + }); + }, + mount: function(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10); + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + } + var mount = { type: type, opts: opts, mountpoint: mountpoint, mounts: [] }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot; + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount); + } + } + return mountRoot; + }, + unmount: function(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { follow_mount: false }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28); + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(function(hash) { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.includes(current.mount)) { + FS.destroyNode(current); + } + current = next; + } + }); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + node.mount.mounts.splice(idx, 1); + }, + lookup: function(parent, name) { + return parent.node_ops.lookup(parent, name); + }, + mknod: function(path, mode, dev) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28); + } + var errCode = FS.mayCreate(parent, name); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.mknod(parent, name, mode, dev); + }, + create: function(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0); + }, + mkdir: function(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0); + }, + mkdirTree: function(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode); + } catch (e) { + if (e.errno != 20) throw e; + } + } + }, + mkdev: function(path, mode, dev) { + if (typeof dev === "undefined") { + dev = mode; + mode = 438; + } + mode |= 8192; + return FS.mknod(path, mode, dev); + }, + symlink: function(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44); + } + var lookup = FS.lookupPath(newpath, { parent: true }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44); + } + var newname = PATH.basename(newpath); + var errCode = FS.mayCreate(parent, newname); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63); + } + return parent.node_ops.symlink(parent, newname, oldpath); + }, + rename: function(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + lookup = FS.lookupPath(old_path, { parent: true }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { parent: true }); + new_dir = lookup.node; + if (!old_dir || !new_dir) throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75); + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28); + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55); + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name); + } catch (e) {} + if (old_node === new_node) { + return; + } + var isdir = FS.isDir(old_node.mode); + var errCode = FS.mayDelete(old_dir, old_name, isdir); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + errCode = new_node + ? FS.mayDelete(new_dir, new_name, isdir) + : FS.mayCreate(new_dir, new_name); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(old_node) || (new_node && FS.isMountpoint(new_node))) { + throw new FS.ErrnoError(10); + } + if (new_dir !== old_dir) { + errCode = FS.nodePermissions(old_dir, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + } + try { + if (FS.trackingDelegate["willMovePath"]) { + FS.trackingDelegate["willMovePath"](old_path, new_path); + } + } catch (e) { + err( + "FS.trackingDelegate['willMovePath']('" + + old_path + + "', '" + + new_path + + "') threw an exception: " + + e.message + ); + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name); + } catch (e) { + throw e; + } finally { + FS.hashAddNode(old_node); + } + try { + if (FS.trackingDelegate["onMovePath"]) + FS.trackingDelegate["onMovePath"](old_path, new_path); + } catch (e) { + err( + "FS.trackingDelegate['onMovePath']('" + + old_path + + "', '" + + new_path + + "') threw an exception: " + + e.message + ); + } + }, + rmdir: function(path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, true); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path); + } + } catch (e) { + err( + "FS.trackingDelegate['willDeletePath']('" + + path + + "') threw an exception: " + + e.message + ); + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) + FS.trackingDelegate["onDeletePath"](path); + } catch (e) { + err( + "FS.trackingDelegate['onDeletePath']('" + + path + + "') threw an exception: " + + e.message + ); + } + }, + readdir: function(path) { + var lookup = FS.lookupPath(path, { follow: true }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54); + } + return node.node_ops.readdir(node); + }, + unlink: function(path) { + var lookup = FS.lookupPath(path, { parent: true }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, false); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63); + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10); + } + try { + if (FS.trackingDelegate["willDeletePath"]) { + FS.trackingDelegate["willDeletePath"](path); + } + } catch (e) { + err( + "FS.trackingDelegate['willDeletePath']('" + + path + + "') threw an exception: " + + e.message + ); + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node); + try { + if (FS.trackingDelegate["onDeletePath"]) + FS.trackingDelegate["onDeletePath"](path); + } catch (e) { + err( + "FS.trackingDelegate['onDeletePath']('" + + path + + "') threw an exception: " + + e.message + ); + } + }, + readlink: function(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44); + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28); + } + return PATH_FS.resolve( + FS.getPath(link.parent), + link.node_ops.readlink(link) + ); + }, + stat: function(path, dontFollow) { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44); + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63); + } + return node.node_ops.getattr(node); + }, + lstat: function(path) { + return FS.stat(path, true); + }, + chmod: function(path, mode, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + node.node_ops.setattr(node, { + mode: (mode & 4095) | (node.mode & ~4095), + timestamp: Date.now() + }); + }, + lchmod: function(path, mode) { + FS.chmod(path, mode, true); + }, + fchmod: function(fd, mode) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chmod(stream.node, mode); + }, + chown: function(path, uid, gid, dontFollow) { + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { follow: !dontFollow }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + node.node_ops.setattr(node, { timestamp: Date.now() }); + }, + lchown: function(path, uid, gid) { + FS.chown(path, uid, gid, true); + }, + fchown: function(fd, uid, gid) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + FS.chown(stream.node, uid, gid); + }, + truncate: function(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28); + } + var node; + if (typeof path === "string") { + var lookup = FS.lookupPath(path, { follow: true }); + node = lookup.node; + } else { + node = path; + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63); + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31); + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28); + } + var errCode = FS.nodePermissions(node, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + node.node_ops.setattr(node, { size: len, timestamp: Date.now() }); + }, + ftruncate: function(fd, len) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28); + } + FS.truncate(stream.node, len); + }, + utime: function(path, atime, mtime) { + var lookup = FS.lookupPath(path, { follow: true }); + var node = lookup.node; + node.node_ops.setattr(node, { timestamp: Math.max(atime, mtime) }); + }, + open: function(path, flags, mode, fd_start, fd_end) { + if (path === "") { + throw new FS.ErrnoError(44); + } + flags = typeof flags === "string" ? FS.modeStringToFlags(flags) : flags; + mode = typeof mode === "undefined" ? 438 : mode; + if (flags & 64) { + mode = (mode & 4095) | 32768; + } else { + mode = 0; + } + var node; + if (typeof path === "object") { + node = path; + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { follow: !(flags & 131072) }); + node = lookup.node; + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20); + } + } else { + node = FS.mknod(path, mode, 0); + created = true; + } + } + if (!node) { + throw new FS.ErrnoError(44); + } + if (FS.isChrdev(node.mode)) { + flags &= ~512; + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54); + } + if (!created) { + var errCode = FS.mayOpen(node, flags); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + } + if (flags & 512) { + FS.truncate(node, 0); + } + flags &= ~(128 | 512 | 131072); + var stream = FS.createStream( + { + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }, + fd_start, + fd_end + ); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream); + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1; + err("FS.trackingDelegate error on read file: " + path); + } + } + try { + if (FS.trackingDelegate["onOpenFile"]) { + var trackingFlags = 0; + if ((flags & 2097155) !== 1) { + trackingFlags |= FS.tracking.openFlags.READ; + } + if ((flags & 2097155) !== 0) { + trackingFlags |= FS.tracking.openFlags.WRITE; + } + FS.trackingDelegate["onOpenFile"](path, trackingFlags); + } + } catch (e) { + err( + "FS.trackingDelegate['onOpenFile']('" + + path + + "', flags) threw an exception: " + + e.message + ); + } + return stream; + }, + close: function(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (stream.getdents) stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream); + } + } catch (e) { + throw e; + } finally { + FS.closeStream(stream.fd); + } + stream.fd = null; + }, + isClosed: function(stream) { + return stream.fd === null; + }, + llseek: function(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70); + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28); + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position; + }, + read: function(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesRead = stream.stream_ops.read( + stream, + buffer, + offset, + length, + position + ); + if (!seeking) stream.position += bytesRead; + return bytesRead; + }, + write: function(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28); + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31); + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28); + } + if (stream.seekable && stream.flags & 1024) { + FS.llseek(stream, 0, 2); + } + var seeking = typeof position !== "undefined"; + if (!seeking) { + position = stream.position; + } else if (!stream.seekable) { + throw new FS.ErrnoError(70); + } + var bytesWritten = stream.stream_ops.write( + stream, + buffer, + offset, + length, + position, + canOwn + ); + if (!seeking) stream.position += bytesWritten; + try { + if (stream.path && FS.trackingDelegate["onWriteToFile"]) + FS.trackingDelegate["onWriteToFile"](stream.path); + } catch (e) { + err( + "FS.trackingDelegate['onWriteToFile']('" + + stream.path + + "') threw an exception: " + + e.message + ); + } + return bytesWritten; + }, + allocate: function(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8); + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28); + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8); + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43); + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138); + } + stream.stream_ops.allocate(stream, offset, length); + }, + mmap: function(stream, address, length, position, prot, flags) { + if ( + (prot & 2) !== 0 && + (flags & 2) === 0 && + (stream.flags & 2097155) !== 2 + ) { + throw new FS.ErrnoError(2); + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2); + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43); + } + return stream.stream_ops.mmap( + stream, + address, + length, + position, + prot, + flags + ); + }, + msync: function(stream, buffer, offset, length, mmapFlags) { + if (!stream || !stream.stream_ops.msync) { + return 0; + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags); + }, + munmap: function(stream) { + return 0; + }, + ioctl: function(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59); + } + return stream.stream_ops.ioctl(stream, cmd, arg); + }, + readFile: function(path, opts) { + opts = opts || {}; + opts.flags = opts.flags || 0; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error('Invalid encoding type "' + opts.encoding + '"'); + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0); + } else if (opts.encoding === "binary") { + ret = buf; + } + FS.close(stream); + return ret; + }, + writeFile: function(path, data, opts) { + opts = opts || {}; + opts.flags = opts.flags || 577; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data === "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn); + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn); + } else { + throw new Error("Unsupported data type"); + } + FS.close(stream); + }, + cwd: function() { + return FS.currentPath; + }, + chdir: function(path) { + var lookup = FS.lookupPath(path, { follow: true }); + if (lookup.node === null) { + throw new FS.ErrnoError(44); + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54); + } + var errCode = FS.nodePermissions(lookup.node, "x"); + if (errCode) { + throw new FS.ErrnoError(errCode); + } + FS.currentPath = lookup.path; + }, + createDefaultDirectories: function() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user"); + }, + createDefaultDevices: function() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: function() { + return 0; + }, + write: function(stream, buffer, offset, length, pos) { + return length; + } + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var random_device = getRandomDevice(); + FS.createDevice("/dev", "random", random_device); + FS.createDevice("/dev", "urandom", random_device); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp"); + }, + createSpecialDirectories: function() { + FS.mkdir("/proc"); + var proc_self = FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount( + { + mount: function() { + var node = FS.createNode(proc_self, "fd", 16384 | 511, 73); + node.node_ops = { + lookup: function(parent, name) { + var fd = +name; + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + var ret = { + parent: null, + mount: { mountpoint: "fake" }, + node_ops: { + readlink: function() { + return stream.path; + } + } + }; + ret.parent = ret; + return ret; + } + }; + return node; + } + }, + {}, + "/proc/self/fd" + ); + }, + createStandardStreams: function() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]); + } else { + FS.symlink("/dev/tty", "/dev/stdin"); + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]); + } else { + FS.symlink("/dev/tty", "/dev/stdout"); + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]); + } else { + FS.symlink("/dev/tty1", "/dev/stderr"); + } + var stdin = FS.open("/dev/stdin", 0); + var stdout = FS.open("/dev/stdout", 1); + var stderr = FS.open("/dev/stderr", 1); + }, + ensureErrnoError: function() { + if (FS.ErrnoError) return; + FS.ErrnoError = function ErrnoError(errno, node) { + this.node = node; + this.setErrno = function(errno) { + this.errno = errno; + }; + this.setErrno(errno); + this.message = "FS error"; + }; + FS.ErrnoError.prototype = new Error(); + FS.ErrnoError.prototype.constructor = FS.ErrnoError; + [44].forEach(function(code) { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = ""; + }); + }, + staticInit: function() { + FS.ensureErrnoError(); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { MEMFS: MEMFS, NODEFS: NODEFS }; + }, + init: function(input, output, error) { + FS.init.initialized = true; + FS.ensureErrnoError(); + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams(); + }, + quit: function() { + FS.init.initialized = false; + var fflush = Module["_fflush"]; + if (fflush) fflush(0); + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue; + } + FS.close(stream); + } + }, + getMode: function(canRead, canWrite) { + var mode = 0; + if (canRead) mode |= 292 | 73; + if (canWrite) mode |= 146; + return mode; + }, + findObject: function(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (ret.exists) { + return ret.object; + } else { + return null; + } + }, + analyzePath: function(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); + path = lookup.path; + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { parent: true }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { follow: !dontResolveLastLink }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/"; + } catch (e) { + ret.error = e.errno; + } + return ret; + }, + createPath: function(parent, path, canRead, canWrite) { + parent = typeof parent === "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current); + } catch (e) {} + parent = current; + } + return current; + }, + createFile: function(parent, name, properties, canRead, canWrite) { + var path = PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ); + var mode = FS.getMode(canRead, canWrite); + return FS.create(path, mode); + }, + createDataFile: function(parent, name, data, canRead, canWrite, canOwn) { + var path = name + ? PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ) + : parent; + var mode = FS.getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data === "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) + arr[i] = data.charCodeAt(i); + data = arr; + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, 577); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode); + } + return node; + }, + createDevice: function(parent, name, input, output) { + var path = PATH.join2( + typeof parent === "string" ? parent : FS.getPath(parent), + name + ); + var mode = FS.getMode(!!input, !!output); + if (!FS.createDevice.major) FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open: function(stream) { + stream.seekable = false; + }, + close: function(stream) { + if (output && output.buffer && output.buffer.length) { + output(10); + } + }, + read: function(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input(); + } catch (e) { + throw new FS.ErrnoError(29); + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6); + } + if (result === null || result === undefined) break; + bytesRead++; + buffer[offset + i] = result; + } + if (bytesRead) { + stream.node.timestamp = Date.now(); + } + return bytesRead; + }, + write: function(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]); + } catch (e) { + throw new FS.ErrnoError(29); + } + } + if (length) { + stream.node.timestamp = Date.now(); + } + return i; + } + }); + return FS.mkdev(path, mode, dev); + }, + forceLoadFile: function(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; + if (typeof XMLHttpRequest !== "undefined") { + throw new Error( + "Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread." + ); + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length; + } catch (e) { + throw new FS.ErrnoError(29); + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest."); + } + }, + createLazyFile: function(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = []; + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined; + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = (idx / this.chunkSize) | 0; + return this.getter(chunkNum)[chunkOffset]; + }; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter( + getter + ) { + this.getter = getter; + }; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest(); + xhr.open("HEAD", url, false); + xhr.send(null); + if (!((xhr.status >= 200 && xhr.status < 300) || xhr.status === 304)) + throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = + (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = + (header = xhr.getResponseHeader("Content-Encoding")) && + header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) chunkSize = datalength; + var doXHR = function(from, to) { + if (from > to) + throw new Error( + "invalid range (" + from + ", " + to + ") or no bytes requested!" + ); + if (to > datalength - 1) + throw new Error( + "only " + datalength + " bytes available! programmer error!" + ); + var xhr = new XMLHttpRequest(); + xhr.open("GET", url, false); + if (datalength !== chunkSize) + xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + if (typeof Uint8Array != "undefined") xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined"); + } + xhr.send(null); + if (!((xhr.status >= 200 && xhr.status < 300) || xhr.status === 304)) + throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []); + } else { + return intArrayFromString(xhr.responseText || "", true); + } + }; + var lazyArray = this; + lazyArray.setDataGetter(function(chunkNum) { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] === "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end); + } + if (typeof lazyArray.chunks[chunkNum] === "undefined") + throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum]; + }); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + out( + "LazyFiles on gzip forces download of the whole file when length is accessed" + ); + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true; + }; + if (typeof XMLHttpRequest !== "undefined") { + if (!ENVIRONMENT_IS_WORKER) + throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array(); + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength(); + } + return this._length; + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength(); + } + return this._chunkSize; + } + } + }); + var properties = { isDevice: false, contents: lazyArray }; + } else { + var properties = { isDevice: false, url: url }; + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents; + } else if (properties.url) { + node.contents = null; + node.url = properties.url; + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length; + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(function(key) { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + FS.forceLoadFile(node); + return fn.apply(null, arguments); + }; + }); + stream_ops.read = function stream_ops_read( + stream, + buffer, + offset, + length, + position + ) { + FS.forceLoadFile(node); + var contents = stream.node.contents; + if (position >= contents.length) return 0; + var size = Math.min(contents.length - position, length); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i]; + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i); + } + } + return size; + }; + node.stream_ops = stream_ops; + return node; + }, + createPreloadedFile: function( + parent, + name, + url, + canRead, + canWrite, + onload, + onerror, + dontCreateFile, + canOwn, + preFinish + ) { + Browser.init(); + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency("cp " + fullname); + function processData(byteArray) { + function finish(byteArray) { + if (preFinish) preFinish(); + if (!dontCreateFile) { + FS.createDataFile(parent, name, byteArray, canRead, canWrite, canOwn); + } + if (onload) onload(); + removeRunDependency(dep); + } + var handled = false; + Module["preloadPlugins"].forEach(function(plugin) { + if (handled) return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, function() { + if (onerror) onerror(); + removeRunDependency(dep); + }); + handled = true; + } + }); + if (!handled) finish(byteArray); + } + addRunDependency(dep); + if (typeof url == "string") { + Browser.asyncLoad( + url, + function(byteArray) { + processData(byteArray); + }, + onerror + ); + } else { + processData(url); + } + }, + indexedDB: function() { + return ( + window.indexedDB || + window.mozIndexedDB || + window.webkitIndexedDB || + window.msIndexedDB + ); + }, + DB_NAME: function() { + return "EM_FS_" + window.location.pathname; + }, + DB_VERSION: 20, + DB_STORE_NAME: "FILE_DATA", + saveFilesToDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = function openRequest_onupgradeneeded() { + out("creating db"); + var db = openRequest.result; + db.createObjectStore(FS.DB_STORE_NAME); + }; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + var transaction = db.transaction([FS.DB_STORE_NAME], "readwrite"); + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + function finish() { + if (fail == 0) onload(); + else onerror(); + } + paths.forEach(function(path) { + var putRequest = files.put(FS.analyzePath(path).object.contents, path); + putRequest.onsuccess = function putRequest_onsuccess() { + ok++; + if (ok + fail == total) finish(); + }; + putRequest.onerror = function putRequest_onerror() { + fail++; + if (ok + fail == total) finish(); + }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + }, + loadFilesFromDB: function(paths, onload, onerror) { + onload = onload || function() {}; + onerror = onerror || function() {}; + var indexedDB = FS.indexedDB(); + try { + var openRequest = indexedDB.open(FS.DB_NAME(), FS.DB_VERSION); + } catch (e) { + return onerror(e); + } + openRequest.onupgradeneeded = onerror; + openRequest.onsuccess = function openRequest_onsuccess() { + var db = openRequest.result; + try { + var transaction = db.transaction([FS.DB_STORE_NAME], "readonly"); + } catch (e) { + onerror(e); + return; + } + var files = transaction.objectStore(FS.DB_STORE_NAME); + var ok = 0, + fail = 0, + total = paths.length; + function finish() { + if (fail == 0) onload(); + else onerror(); + } + paths.forEach(function(path) { + var getRequest = files.get(path); + getRequest.onsuccess = function getRequest_onsuccess() { + if (FS.analyzePath(path).exists) { + FS.unlink(path); + } + FS.createDataFile( + PATH.dirname(path), + PATH.basename(path), + getRequest.result, + true, + true, + true + ); + ok++; + if (ok + fail == total) finish(); + }; + getRequest.onerror = function getRequest_onerror() { + fail++; + if (ok + fail == total) finish(); + }; + }); + transaction.onerror = onerror; + }; + openRequest.onerror = onerror; + } +}; +var SYSCALLS = { + mappings: {}, + DEFAULT_POLLMASK: 5, + umask: 511, + calculateAt: function(dirfd, path, allowEmpty) { + if (path[0] === "/") { + return path; + } + var dir; + if (dirfd === -100) { + dir = FS.cwd(); + } else { + var dirstream = FS.getStream(dirfd); + if (!dirstream) throw new FS.ErrnoError(8); + dir = dirstream.path; + } + if (path.length == 0) { + if (!allowEmpty) { + throw new FS.ErrnoError(44); + } + return dir; + } + return PATH.join2(dir, path); + }, + doStat: function(func, path, buf) { + try { + var stat = func(path); + } catch (e) { + if ( + e && + e.node && + PATH.normalize(path) !== PATH.normalize(FS.getPath(e.node)) + ) { + return -54; + } + throw e; + } + HEAP32[buf >> 2] = stat.dev; + HEAP32[(buf + 4) >> 2] = 0; + HEAP32[(buf + 8) >> 2] = stat.ino; + HEAP32[(buf + 12) >> 2] = stat.mode; + HEAP32[(buf + 16) >> 2] = stat.nlink; + HEAP32[(buf + 20) >> 2] = stat.uid; + HEAP32[(buf + 24) >> 2] = stat.gid; + HEAP32[(buf + 28) >> 2] = stat.rdev; + HEAP32[(buf + 32) >> 2] = 0; + (tempI64 = [ + stat.size >>> 0, + ((tempDouble = stat.size), + +Math.abs(tempDouble) >= 1 + ? tempDouble > 0 + ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> + 0 + : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> + 0 + : 0) + ]), + (HEAP32[(buf + 40) >> 2] = tempI64[0]), + (HEAP32[(buf + 44) >> 2] = tempI64[1]); + HEAP32[(buf + 48) >> 2] = 4096; + HEAP32[(buf + 52) >> 2] = stat.blocks; + HEAP32[(buf + 56) >> 2] = (stat.atime.getTime() / 1e3) | 0; + HEAP32[(buf + 60) >> 2] = 0; + HEAP32[(buf + 64) >> 2] = (stat.mtime.getTime() / 1e3) | 0; + HEAP32[(buf + 68) >> 2] = 0; + HEAP32[(buf + 72) >> 2] = (stat.ctime.getTime() / 1e3) | 0; + HEAP32[(buf + 76) >> 2] = 0; + (tempI64 = [ + stat.ino >>> 0, + ((tempDouble = stat.ino), + +Math.abs(tempDouble) >= 1 + ? tempDouble > 0 + ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> + 0 + : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> + 0 + : 0) + ]), + (HEAP32[(buf + 80) >> 2] = tempI64[0]), + (HEAP32[(buf + 84) >> 2] = tempI64[1]); + return 0; + }, + doMsync: function(addr, stream, len, flags, offset) { + var buffer = HEAPU8.slice(addr, addr + len); + FS.msync(stream, buffer, offset, len, flags); + }, + doMkdir: function(path, mode) { + path = PATH.normalize(path); + if (path[path.length - 1] === "/") path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0; + }, + doMknod: function(path, mode, dev) { + switch (mode & 61440) { + case 32768: + case 8192: + case 24576: + case 4096: + case 49152: + break; + default: + return -28; + } + FS.mknod(path, mode, dev); + return 0; + }, + doReadlink: function(path, buf, bufsize) { + if (bufsize <= 0) return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len; + }, + doAccess: function(path, amode) { + if (amode & ~7) { + return -28; + } + var node; + var lookup = FS.lookupPath(path, { follow: true }); + node = lookup.node; + if (!node) { + return -44; + } + var perms = ""; + if (amode & 4) perms += "r"; + if (amode & 2) perms += "w"; + if (amode & 1) perms += "x"; + if (perms && FS.nodePermissions(node, perms)) { + return -2; + } + return 0; + }, + doDup: function(path, flags, suggestFD) { + var suggest = FS.getStream(suggestFD); + if (suggest) FS.close(suggest); + return FS.open(path, flags, 0, suggestFD, suggestFD).fd; + }, + doReadv: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(iov + i * 8) >> 2]; + var len = HEAP32[(iov + (i * 8 + 4)) >> 2]; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + if (curr < len) break; + } + return ret; + }, + doWritev: function(stream, iov, iovcnt, offset) { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAP32[(iov + i * 8) >> 2]; + var len = HEAP32[(iov + (i * 8 + 4)) >> 2]; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) return -1; + ret += curr; + } + return ret; + }, + varargs: undefined, + get: function() { + SYSCALLS.varargs += 4; + var ret = HEAP32[(SYSCALLS.varargs - 4) >> 2]; + return ret; + }, + getStr: function(ptr) { + var ret = UTF8ToString(ptr); + return ret; + }, + getStreamFromFD: function(fd) { + var stream = FS.getStream(fd); + if (!stream) throw new FS.ErrnoError(8); + return stream; + }, + get64: function(low, high) { + return low; + } +}; +function ___sys_chmod(path, mode) { + try { + path = SYSCALLS.getStr(path); + FS.chmod(path, mode); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function setErrNo(value) { + HEAP32[___errno_location() >> 2] = value; + return value; +} +function ___sys_fcntl64(fd, cmd, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (cmd) { + case 0: { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28; + } + var newStream; + newStream = FS.open(stream.path, stream.flags, 0, arg); + return newStream.fd; + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0; + } + case 12: { + var arg = SYSCALLS.get(); + var offset = 0; + HEAP16[(arg + offset) >> 1] = 2; + return 0; + } + case 13: + case 14: + return 0; + case 16: + case 8: + return -28; + case 9: + setErrNo(28); + return -1; + default: { + return -28; + } + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_fstat64(fd, buf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + return SYSCALLS.doStat(FS.stat, stream.path, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_ioctl(fd, op, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (op) { + case 21509: + case 21505: { + if (!stream.tty) return -59; + return 0; + } + case 21510: + case 21511: + case 21512: + case 21506: + case 21507: + case 21508: { + if (!stream.tty) return -59; + return 0; + } + case 21519: { + if (!stream.tty) return -59; + var argp = SYSCALLS.get(); + HEAP32[argp >> 2] = 0; + return 0; + } + case 21520: { + if (!stream.tty) return -59; + return -28; + } + case 21531: { + var argp = SYSCALLS.get(); + return FS.ioctl(stream, op, argp); + } + case 21523: { + if (!stream.tty) return -59; + return 0; + } + case 21524: { + if (!stream.tty) return -59; + return 0; + } + default: + abort("bad ioctl syscall " + op); + } + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_open(path, flags, varargs) { + SYSCALLS.varargs = varargs; + try { + var pathname = SYSCALLS.getStr(path); + var mode = varargs ? SYSCALLS.get() : 0; + var stream = FS.open(pathname, flags, mode); + return stream.fd; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_rename(old_path, new_path) { + try { + old_path = SYSCALLS.getStr(old_path); + new_path = SYSCALLS.getStr(new_path); + FS.rename(old_path, new_path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_rmdir(path) { + try { + path = SYSCALLS.getStr(path); + FS.rmdir(path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_stat64(path, buf) { + try { + path = SYSCALLS.getStr(path); + return SYSCALLS.doStat(FS.stat, path, buf); + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function ___sys_unlink(path) { + try { + path = SYSCALLS.getStr(path); + FS.unlink(path); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return -e.errno; + } +} +function _emscripten_memcpy_big(dest, src, num) { + HEAPU8.copyWithin(dest, src, src + num); +} +function emscripten_realloc_buffer(size) { + try { + wasmMemory.grow((size - buffer.byteLength + 65535) >>> 16); + updateGlobalBufferAndViews(wasmMemory.buffer); + return 1; + } catch (e) {} +} +function _emscripten_resize_heap(requestedSize) { + var oldSize = HEAPU8.length; + requestedSize = requestedSize >>> 0; + var maxHeapSize = 2147483648; + if (requestedSize > maxHeapSize) { + return false; + } + for (var cutDown = 1; cutDown <= 4; cutDown *= 2) { + var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); + overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296); + var newSize = Math.min( + maxHeapSize, + alignUp(Math.max(requestedSize, overGrownHeapSize), 65536) + ); + var replacement = emscripten_realloc_buffer(newSize); + if (replacement) { + return true; + } + } + return false; +} +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +function _fd_fdstat_get(fd, pbuf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var type = stream.tty + ? 2 + : FS.isDir(stream.mode) + ? 3 + : FS.isLink(stream.mode) + ? 7 + : 4; + HEAP8[pbuf >> 0] = type; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +function _fd_read(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doReadv(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var HIGH_OFFSET = 4294967296; + var offset = offset_high * HIGH_OFFSET + (offset_low >>> 0); + var DOUBLE_LIMIT = 9007199254740992; + if (offset <= -DOUBLE_LIMIT || offset >= DOUBLE_LIMIT) { + return -61; + } + FS.llseek(stream, offset, whence); + (tempI64 = [ + stream.position >>> 0, + ((tempDouble = stream.position), + +Math.abs(tempDouble) >= 1 + ? tempDouble > 0 + ? (Math.min(+Math.floor(tempDouble / 4294967296), 4294967295) | 0) >>> + 0 + : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> + 0 + : 0) + ]), + (HEAP32[newOffset >> 2] = tempI64[0]), + (HEAP32[(newOffset + 4) >> 2] = tempI64[1]); + if (stream.getdents && offset === 0 && whence === 0) stream.getdents = null; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = SYSCALLS.doWritev(stream, iov, iovcnt); + HEAP32[pnum >> 2] = num; + return 0; + } catch (e) { + if (typeof FS === "undefined" || !(e instanceof FS.ErrnoError)) abort(e); + return e.errno; + } +} +function _setTempRet0(val) { + setTempRet0(val); +} +function _time(ptr) { + var ret = (Date.now() / 1e3) | 0; + if (ptr) { + HEAP32[ptr >> 2] = ret; + } + return ret; +} +function _tzset() { + if (_tzset.called) return; + _tzset.called = true; + var currentYear = new Date().getFullYear(); + var winter = new Date(currentYear, 0, 1); + var summer = new Date(currentYear, 6, 1); + var winterOffset = winter.getTimezoneOffset(); + var summerOffset = summer.getTimezoneOffset(); + var stdTimezoneOffset = Math.max(winterOffset, summerOffset); + HEAP32[__get_timezone() >> 2] = stdTimezoneOffset * 60; + HEAP32[__get_daylight() >> 2] = Number(winterOffset != summerOffset); + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT"; + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = allocateUTF8(winterName); + var summerNamePtr = allocateUTF8(summerName); + if (summerOffset < winterOffset) { + HEAP32[__get_tzname() >> 2] = winterNamePtr; + HEAP32[(__get_tzname() + 4) >> 2] = summerNamePtr; + } else { + HEAP32[__get_tzname() >> 2] = summerNamePtr; + HEAP32[(__get_tzname() + 4) >> 2] = winterNamePtr; + } +} +function _timegm(tmPtr) { + _tzset(); + var time = Date.UTC( + HEAP32[(tmPtr + 20) >> 2] + 1900, + HEAP32[(tmPtr + 16) >> 2], + HEAP32[(tmPtr + 12) >> 2], + HEAP32[(tmPtr + 8) >> 2], + HEAP32[(tmPtr + 4) >> 2], + HEAP32[tmPtr >> 2], + 0 + ); + var date = new Date(time); + HEAP32[(tmPtr + 24) >> 2] = date.getUTCDay(); + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = ((date.getTime() - start) / (1e3 * 60 * 60 * 24)) | 0; + HEAP32[(tmPtr + 28) >> 2] = yday; + return (date.getTime() / 1e3) | 0; +} +var FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this; + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev; +}; +var readMode = 292 | 73; +var writeMode = 146; +Object.defineProperties(FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode; + }, + set: function(val) { + val ? (this.mode |= readMode) : (this.mode &= ~readMode); + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode; + }, + set: function(val) { + val ? (this.mode |= writeMode) : (this.mode &= ~writeMode); + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode); + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode); + } + } +}); +FS.FSNode = FSNode; +FS.staticInit(); +if (ENVIRONMENT_IS_NODE) { + var fs = frozenFs; + var NODEJS_PATH = __webpack_require__(622); + NODEFS.staticInit(); +} +if (ENVIRONMENT_IS_NODE) { + var _wrapNodeError = function(func) { + return function() { + try { + return func.apply(this, arguments); + } catch (e) { + if (!e.code) throw e; + throw new FS.ErrnoError(ERRNO_CODES[e.code]); + } + }; + }; + var VFS = Object.assign({}, FS); + for (var _key in NODERAWFS) FS[_key] = _wrapNodeError(NODERAWFS[_key]); +} else { + throw new Error( + "NODERAWFS is currently only supported on Node.js environment." + ); +} +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) u8array.length = numBytesWritten; + return u8array; +} +var decodeBase64 = + typeof atob === "function" + ? atob + : function(input) { + var keyStr = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + var output = ""; + var chr1, chr2, chr3; + var enc1, enc2, enc3, enc4; + var i = 0; + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + do { + enc1 = keyStr.indexOf(input.charAt(i++)); + enc2 = keyStr.indexOf(input.charAt(i++)); + enc3 = keyStr.indexOf(input.charAt(i++)); + enc4 = keyStr.indexOf(input.charAt(i++)); + chr1 = (enc1 << 2) | (enc2 >> 4); + chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); + chr3 = ((enc3 & 3) << 6) | enc4; + output = output + String.fromCharCode(chr1); + if (enc3 !== 64) { + output = output + String.fromCharCode(chr2); + } + if (enc4 !== 64) { + output = output + String.fromCharCode(chr3); + } + } while (i < input.length); + return output; + }; +function intArrayFromBase64(s) { + if (typeof ENVIRONMENT_IS_NODE === "boolean" && ENVIRONMENT_IS_NODE) { + var buf; + try { + buf = Buffer.from(s, "base64"); + } catch (_) { + buf = new Buffer(s, "base64"); + } + return new Uint8Array(buf["buffer"], buf["byteOffset"], buf["byteLength"]); + } + try { + var decoded = decodeBase64(s); + var bytes = new Uint8Array(decoded.length); + for (var i = 0; i < decoded.length; ++i) { + bytes[i] = decoded.charCodeAt(i); + } + return bytes; + } catch (_) { + throw new Error("Converting base64 string to bytes failed."); + } +} +function tryParseAsDataURI(filename) { + if (!isDataURI(filename)) { + return; + } + return intArrayFromBase64(filename.slice(dataURIPrefix.length)); +} +var asmLibraryArg = { + l: ___gmtime_r, + p: ___sys_chmod, + e: ___sys_fcntl64, + k: ___sys_fstat64, + o: ___sys_ioctl, + q: ___sys_open, + i: ___sys_rename, + r: ___sys_rmdir, + c: ___sys_stat64, + h: ___sys_unlink, + s: _emscripten_memcpy_big, + t: _emscripten_resize_heap, + f: _fd_close, + j: _fd_fdstat_get, + g: _fd_read, + n: _fd_seek, + d: _fd_write, + a: _setTempRet0, + b: _time, + m: _timegm +}; +var asm = createWasm(); +var ___wasm_call_ctors = (Module["___wasm_call_ctors"] = asm["v"]); +var _zipstruct_stat = (Module["_zipstruct_stat"] = asm["w"]); +var _zipstruct_statS = (Module["_zipstruct_statS"] = asm["x"]); +var _zipstruct_stat_name = (Module["_zipstruct_stat_name"] = asm["y"]); +var _zipstruct_stat_index = (Module["_zipstruct_stat_index"] = asm["z"]); +var _zipstruct_stat_size = (Module["_zipstruct_stat_size"] = asm["A"]); +var _zipstruct_stat_mtime = (Module["_zipstruct_stat_mtime"] = asm["B"]); +var _zipstruct_stat_crc = (Module["_zipstruct_stat_crc"] = asm["C"]); +var _zipstruct_error = (Module["_zipstruct_error"] = asm["D"]); +var _zipstruct_errorS = (Module["_zipstruct_errorS"] = asm["E"]); +var _zipstruct_error_code_zip = (Module["_zipstruct_error_code_zip"] = + asm["F"]); +var _zipstruct_stat_comp_size = (Module["_zipstruct_stat_comp_size"] = + asm["G"]); +var _zipstruct_stat_comp_method = (Module["_zipstruct_stat_comp_method"] = + asm["H"]); +var _zip_close = (Module["_zip_close"] = asm["I"]); +var _zip_delete = (Module["_zip_delete"] = asm["J"]); +var _zip_dir_add = (Module["_zip_dir_add"] = asm["K"]); +var _zip_discard = (Module["_zip_discard"] = asm["L"]); +var _zip_error_init_with_code = (Module["_zip_error_init_with_code"] = + asm["M"]); +var _zip_get_error = (Module["_zip_get_error"] = asm["N"]); +var _zip_file_get_error = (Module["_zip_file_get_error"] = asm["O"]); +var _zip_error_strerror = (Module["_zip_error_strerror"] = asm["P"]); +var _zip_fclose = (Module["_zip_fclose"] = asm["Q"]); +var _zip_file_add = (Module["_zip_file_add"] = asm["R"]); +var _zip_file_get_external_attributes = (Module[ + "_zip_file_get_external_attributes" +] = asm["S"]); +var _zip_file_set_external_attributes = (Module[ + "_zip_file_set_external_attributes" +] = asm["T"]); +var _zip_file_set_mtime = (Module["_zip_file_set_mtime"] = asm["U"]); +var _zip_fopen = (Module["_zip_fopen"] = asm["V"]); +var _zip_fopen_index = (Module["_zip_fopen_index"] = asm["W"]); +var _zip_fread = (Module["_zip_fread"] = asm["X"]); +var _zip_get_name = (Module["_zip_get_name"] = asm["Y"]); +var _zip_get_num_entries = (Module["_zip_get_num_entries"] = asm["Z"]); +var _zip_name_locate = (Module["_zip_name_locate"] = asm["_"]); +var _zip_open = (Module["_zip_open"] = asm["$"]); +var _zip_open_from_source = (Module["_zip_open_from_source"] = asm["aa"]); +var _zip_set_file_compression = (Module["_zip_set_file_compression"] = + asm["ba"]); +var _zip_source_buffer = (Module["_zip_source_buffer"] = asm["ca"]); +var _zip_source_buffer_create = (Module["_zip_source_buffer_create"] = + asm["da"]); +var _zip_source_close = (Module["_zip_source_close"] = asm["ea"]); +var _zip_source_error = (Module["_zip_source_error"] = asm["fa"]); +var _zip_source_free = (Module["_zip_source_free"] = asm["ga"]); +var _zip_source_keep = (Module["_zip_source_keep"] = asm["ha"]); +var _zip_source_open = (Module["_zip_source_open"] = asm["ia"]); +var _zip_source_read = (Module["_zip_source_read"] = asm["ja"]); +var _zip_source_seek = (Module["_zip_source_seek"] = asm["ka"]); +var _zip_source_set_mtime = (Module["_zip_source_set_mtime"] = asm["la"]); +var _zip_source_tell = (Module["_zip_source_tell"] = asm["ma"]); +var _zip_stat = (Module["_zip_stat"] = asm["na"]); +var _zip_stat_index = (Module["_zip_stat_index"] = asm["oa"]); +var _zip_ext_count_symlinks = (Module["_zip_ext_count_symlinks"] = asm["pa"]); +var ___errno_location = (Module["___errno_location"] = asm["qa"]); +var __get_tzname = (Module["__get_tzname"] = asm["ra"]); +var __get_daylight = (Module["__get_daylight"] = asm["sa"]); +var __get_timezone = (Module["__get_timezone"] = asm["ta"]); +var stackSave = (Module["stackSave"] = asm["ua"]); +var stackRestore = (Module["stackRestore"] = asm["va"]); +var stackAlloc = (Module["stackAlloc"] = asm["wa"]); +var _malloc = (Module["_malloc"] = asm["xa"]); +var _free = (Module["_free"] = asm["ya"]); +Module["cwrap"] = cwrap; +Module["getValue"] = getValue; +var calledRun; +dependenciesFulfilled = function runCaller() { + if (!calledRun) run(); + if (!calledRun) dependenciesFulfilled = runCaller; +}; +function run(args) { + args = args || arguments_; + if (runDependencies > 0) { + return; + } + preRun(); + if (runDependencies > 0) { + return; + } + function doRun() { + if (calledRun) return; + calledRun = true; + Module["calledRun"] = true; + if (ABORT) return; + initRuntime(); + if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); + postRun(); + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"](""); + }, 1); + doRun(); + }, 1); + } else { + doRun(); + } +} +Module["run"] = run; +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") + Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()(); + } +} +run(); + + +/***/ }), + +/***/ 417: +/***/ ((module) => { + +"use strict"; +module.exports = require("crypto");; + +/***/ }), + +/***/ 747: +/***/ ((module) => { + +"use strict"; +module.exports = require("fs");; + +/***/ }), + +/***/ 282: +/***/ ((module) => { + +"use strict"; +module.exports = require("module");; + +/***/ }), + +/***/ 622: +/***/ ((module) => { + +"use strict"; +module.exports = require("path");; + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ var cachedModule = __webpack_module_cache__[moduleId]; +/******/ if (cachedModule !== undefined) { +/******/ return cachedModule.exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/compat get default export */ +/******/ (() => { +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = (module) => { +/******/ var getter = module && module.__esModule ? +/******/ () => (module['default']) : +/******/ () => (module); +/******/ __webpack_require__.d(getter, { a: getter }); +/******/ return getter; +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/define property getters */ +/******/ (() => { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = (exports, definition) => { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ })(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ (() => { +/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) +/******/ })(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be in strict mode. +(() => { +"use strict"; + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "default": () => (/* binding */ _entryPoint) +}); + +// EXTERNAL MODULE: external "fs" +var external_fs_ = __webpack_require__(747); +var external_fs_default = /*#__PURE__*/__webpack_require__.n(external_fs_); +;// CONCATENATED MODULE: external "os" +const external_os_namespaceObject = require("os");; +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/constants.ts +const constants_S_IFMT = 0o170000; +const constants_S_IFDIR = 0o040000; +const constants_S_IFREG = 0o100000; +const constants_S_IFLNK = 0o120000; +/** + * Unix timestamp for `1984-06-22T21:50:00.000Z` + * + * It needs to be after 1980-01-01 because that's what Zip supports, and it + * needs to have a slight offset to account for different timezones (because + * zip assumes that all times are local to whoever writes the file, which is + * really silly). + */ + +const SAFE_TIME = 456789000; +// EXTERNAL MODULE: external "path" +var external_path_ = __webpack_require__(622); +var external_path_default = /*#__PURE__*/__webpack_require__.n(external_path_); +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/path.ts + +var PathType; + +(function (PathType) { + PathType[PathType["File"] = 0] = "File"; + PathType[PathType["Portable"] = 1] = "Portable"; + PathType[PathType["Native"] = 2] = "Native"; +})(PathType || (PathType = {})); + +const PortablePath = { + root: `/`, + dot: `.` +}; +const Filename = { + nodeModules: `node_modules`, + manifest: `package.json`, + lockfile: `yarn.lock`, + virtual: `__virtual__`, + + /** + * @deprecated + */ + pnpJs: `.pnp.js`, + pnpCjs: `.pnp.cjs`, + rc: `.yarnrc.yml` +}; +const npath = Object.create((external_path_default())); +const ppath = Object.create((external_path_default()).posix); + +npath.cwd = () => process.cwd(); + +ppath.cwd = () => toPortablePath(process.cwd()); + +ppath.resolve = (...segments) => { + if (segments.length > 0 && ppath.isAbsolute(segments[0])) { + return external_path_default().posix.resolve(...segments); + } else { + return external_path_default().posix.resolve(ppath.cwd(), ...segments); + } +}; + +const contains = function (pathUtils, from, to) { + from = pathUtils.normalize(from); + to = pathUtils.normalize(to); + if (from === to) return `.`; + if (!from.endsWith(pathUtils.sep)) from = from + pathUtils.sep; + + if (to.startsWith(from)) { + return to.slice(from.length); + } else { + return null; + } +}; + +npath.fromPortablePath = fromPortablePath; +npath.toPortablePath = toPortablePath; + +npath.contains = (from, to) => contains(npath, from, to); + +ppath.contains = (from, to) => contains(ppath, from, to); + +const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; +const UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/; +const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; +const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; // Path should look like "/N:/berry/scripts/plugin-pack.js" +// And transform to "N:\berry\scripts\plugin-pack.js" + +function fromPortablePath(p) { + if (process.platform !== `win32`) return p; + let portablePathMatch, uncPortablePathMatch; + if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP)) p = portablePathMatch[1];else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP)) p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`;else return p; + return p.replace(/\//g, `\\`); +} // Path should look like "N:/berry/scripts/plugin-pack.js" +// And transform to "/N:/berry/scripts/plugin-pack.js" + + +function toPortablePath(p) { + if (process.platform !== `win32`) return p; + let windowsPathMatch, uncWindowsPathMatch; + if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP)) p = `/${windowsPathMatch[1]}`;else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP)) p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; + return p.replace(/\\/g, `/`); +} + +function convertPath(targetPathUtils, sourcePath) { + return targetPathUtils === npath ? fromPortablePath(sourcePath) : toPortablePath(sourcePath); +} +function toFilename(filename) { + if (npath.parse(filename).dir !== `` || ppath.parse(filename).dir !== ``) throw new Error(`Invalid filename: "${filename}"`); + return filename; +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/algorithms/copyPromise.ts + + + +const defaultTime = new Date(SAFE_TIME * 1000); +var LinkStrategy; + +(function (LinkStrategy) { + LinkStrategy["Allow"] = "allow"; + LinkStrategy["ReadOnly"] = "readOnly"; +})(LinkStrategy || (LinkStrategy = {})); + +async function copyPromise(destinationFs, destination, sourceFs, source, opts) { + const normalizedDestination = destinationFs.pathUtils.normalize(destination); + const normalizedSource = sourceFs.pathUtils.normalize(source); + const prelayout = []; + const postlayout = []; + const referenceTime = opts.stableTime ? { + mtime: defaultTime, + atime: defaultTime + } : await sourceFs.lstatPromise(normalizedSource); + await destinationFs.mkdirpPromise(destinationFs.pathUtils.dirname(destination), { + utimes: [referenceTime.atime, referenceTime.mtime] + }); + const updateTime = typeof destinationFs.lutimesPromise === `function` ? destinationFs.lutimesPromise.bind(destinationFs) : destinationFs.utimesPromise.bind(destinationFs); + await copyImpl(prelayout, postlayout, updateTime, destinationFs, normalizedDestination, sourceFs, normalizedSource, opts); + + for (const operation of prelayout) await operation(); + + await Promise.all(postlayout.map(operation => { + return operation(); + })); +} + +async function copyImpl(prelayout, postlayout, updateTime, destinationFs, destination, sourceFs, source, opts) { + var _a, _b; + + const destinationStat = await maybeLStat(destinationFs, destination); + const sourceStat = await sourceFs.lstatPromise(source); + const referenceTime = opts.stableTime ? { + mtime: defaultTime, + atime: defaultTime + } : sourceStat; + let updated; + + switch (true) { + case sourceStat.isDirectory(): + { + updated = await copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + + case sourceStat.isFile(): + { + updated = await copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + + case sourceStat.isSymbolicLink(): + { + updated = await copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts); + } + break; + + default: + { + throw new Error(`Unsupported file type (${sourceStat.mode})`); + } + break; + } + + if (updated || ((_a = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.mtime) === null || _a === void 0 ? void 0 : _a.getTime()) !== referenceTime.mtime.getTime() || ((_b = destinationStat === null || destinationStat === void 0 ? void 0 : destinationStat.atime) === null || _b === void 0 ? void 0 : _b.getTime()) !== referenceTime.atime.getTime()) { + postlayout.push(() => updateTime(destination, referenceTime.atime, referenceTime.mtime)); + updated = true; + } + + if (destinationStat === null || (destinationStat.mode & 0o777) !== (sourceStat.mode & 0o777)) { + postlayout.push(() => destinationFs.chmodPromise(destination, sourceStat.mode & 0o777)); + updated = true; + } + + return updated; +} + +async function maybeLStat(baseFs, p) { + try { + return await baseFs.lstatPromise(p); + } catch (e) { + return null; + } +} + +async function copyFolder(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null && !destinationStat.isDirectory()) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + + let updated = false; + + if (destinationStat === null) { + prelayout.push(async () => { + try { + await destinationFs.mkdirPromise(destination, { + mode: sourceStat.mode + }); + } catch (err) { + if (err.code !== `EEXIST`) { + throw err; + } + } + }); + updated = true; + } + + const entries = await sourceFs.readdirPromise(source); + + if (opts.stableSort) { + for (const entry of entries.sort()) { + if (await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts)) { + updated = true; + } + } + } else { + const entriesUpdateStatus = await Promise.all(entries.map(async entry => { + await copyImpl(prelayout, postlayout, updateTime, destinationFs, destinationFs.pathUtils.join(destination, entry), sourceFs, sourceFs.pathUtils.join(source, entry), opts); + })); + + if (entriesUpdateStatus.some(status => status)) { + updated = true; + } + } + + return updated; +} + +const isCloneSupportedCache = new WeakMap(); + +function makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy) { + return async () => { + await opFs.linkPromise(source, destination); + + if (linkStrategy === LinkStrategy.ReadOnly) { + // We mutate the stat, otherwise it'll be reset by copyImpl + sourceStat.mode &= ~0o222; + await opFs.chmodPromise(destination, sourceStat.mode); + } + }; +} + +function makeCloneLinkOperation(opFs, destination, source, sourceStat, linkStrategy) { + const isCloneSupported = isCloneSupportedCache.get(opFs); + + if (typeof isCloneSupported === `undefined`) { + return async () => { + try { + await opFs.copyFilePromise(source, destination, (external_fs_default()).constants.COPYFILE_FICLONE_FORCE); + isCloneSupportedCache.set(opFs, true); + } catch (err) { + if (err.code === `ENOSYS` || err.code === `ENOTSUP`) { + isCloneSupportedCache.set(opFs, false); + await makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy)(); + } else { + throw err; + } + } + }; + } else { + if (isCloneSupported) { + return async () => opFs.copyFilePromise(source, destination, (external_fs_default()).constants.COPYFILE_FICLONE_FORCE); + } else { + return makeLinkOperation(opFs, destination, source, sourceStat, linkStrategy); + } + } +} + +async function copyFile(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + var _a; + + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + + const linkStrategy = (_a = opts.linkStrategy) !== null && _a !== void 0 ? _a : null; + const op = destinationFs === sourceFs ? linkStrategy !== null ? makeCloneLinkOperation(destinationFs, destination, source, sourceStat, linkStrategy) : async () => destinationFs.copyFilePromise(source, destination, (external_fs_default()).constants.COPYFILE_FICLONE) : linkStrategy !== null ? makeLinkOperation(destinationFs, destination, source, sourceStat, linkStrategy) : async () => destinationFs.writeFilePromise(destination, await sourceFs.readFilePromise(source)); + prelayout.push(async () => op()); + return true; +} + +async function copySymlink(prelayout, postlayout, updateTime, destinationFs, destination, destinationStat, sourceFs, source, sourceStat, opts) { + if (destinationStat !== null) { + if (opts.overwrite) { + prelayout.push(async () => destinationFs.removePromise(destination)); + destinationStat = null; + } else { + return false; + } + } + + prelayout.push(async () => { + await destinationFs.symlinkPromise(convertPath(destinationFs.pathUtils, await sourceFs.readlinkPromise(source)), destination); + }); + return true; +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/FakeFS.ts + + + +class FakeFS { + constructor(pathUtils) { + this.pathUtils = pathUtils; + } + + async *genTraversePromise(init, { + stableSort = false + } = {}) { + const stack = [init]; + + while (stack.length > 0) { + const p = stack.shift(); + const entry = await this.lstatPromise(p); + + if (entry.isDirectory()) { + const entries = await this.readdirPromise(p); + + if (stableSort) { + for (const entry of entries.sort()) { + stack.push(this.pathUtils.join(p, entry)); + } + } else { + throw new Error(`Not supported`); + } + } else { + yield p; + } + } + } + + async removePromise(p, { + recursive = true, + maxRetries = 5 + } = {}) { + let stat; + + try { + stat = await this.lstatPromise(p); + } catch (error) { + if (error.code === `ENOENT`) { + return; + } else { + throw error; + } + } + + if (stat.isDirectory()) { + if (recursive) { + const entries = await this.readdirPromise(p); + await Promise.all(entries.map(entry => { + return this.removePromise(this.pathUtils.resolve(p, entry)); + })); + } // 5 gives 1s worth of retries at worst + + + let t = 0; + + do { + try { + await this.rmdirPromise(p); + break; + } catch (error) { + if (error.code === `EBUSY` || error.code === `ENOTEMPTY`) { + if (maxRetries === 0) { + break; + } else { + await new Promise(resolve => setTimeout(resolve, t * 100)); + continue; + } + } else { + throw error; + } + } + } while (t++ < maxRetries); + } else { + await this.unlinkPromise(p); + } + } + + removeSync(p, { + recursive = true + } = {}) { + let stat; + + try { + stat = this.lstatSync(p); + } catch (error) { + if (error.code === `ENOENT`) { + return; + } else { + throw error; + } + } + + if (stat.isDirectory()) { + if (recursive) for (const entry of this.readdirSync(p)) this.removeSync(this.pathUtils.resolve(p, entry)); + this.rmdirSync(p); + } else { + this.unlinkSync(p); + } + } + + async mkdirpPromise(p, { + chmod, + utimes + } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) return; + const parts = p.split(this.pathUtils.sep); + + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + + if (!this.existsSync(subPath)) { + try { + await this.mkdirPromise(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + + if (chmod != null) await this.chmodPromise(subPath, chmod); + + if (utimes != null) { + await this.utimesPromise(subPath, utimes[0], utimes[1]); + } else { + const parentStat = await this.statPromise(this.pathUtils.dirname(subPath)); + await this.utimesPromise(subPath, parentStat.atime, parentStat.mtime); + } + } + } + } + + mkdirpSync(p, { + chmod, + utimes + } = {}) { + p = this.resolve(p); + if (p === this.pathUtils.dirname(p)) return; + const parts = p.split(this.pathUtils.sep); + + for (let u = 2; u <= parts.length; ++u) { + const subPath = parts.slice(0, u).join(this.pathUtils.sep); + + if (!this.existsSync(subPath)) { + try { + this.mkdirSync(subPath); + } catch (error) { + if (error.code === `EEXIST`) { + continue; + } else { + throw error; + } + } + + if (chmod != null) this.chmodSync(subPath, chmod); + + if (utimes != null) { + this.utimesSync(subPath, utimes[0], utimes[1]); + } else { + const parentStat = this.statSync(this.pathUtils.dirname(subPath)); + this.utimesSync(subPath, parentStat.atime, parentStat.mtime); + } + } + } + } + + async copyPromise(destination, source, { + baseFs = this, + overwrite = true, + stableSort = false, + stableTime = false, + linkStrategy = null + } = {}) { + return await copyPromise(this, destination, baseFs, source, { + overwrite, + stableSort, + stableTime, + linkStrategy + }); + } + + copySync(destination, source, { + baseFs = this, + overwrite = true + } = {}) { + const stat = baseFs.lstatSync(source); + const exists = this.existsSync(destination); + + if (stat.isDirectory()) { + this.mkdirpSync(destination); + const directoryListing = baseFs.readdirSync(source); + + for (const entry of directoryListing) { + this.copySync(this.pathUtils.join(destination, entry), baseFs.pathUtils.join(source, entry), { + baseFs, + overwrite + }); + } + } else if (stat.isFile()) { + if (!exists || overwrite) { + if (exists) this.removeSync(destination); + const content = baseFs.readFileSync(source); + this.writeFileSync(destination, content); + } + } else if (stat.isSymbolicLink()) { + if (!exists || overwrite) { + if (exists) this.removeSync(destination); + const target = baseFs.readlinkSync(source); + this.symlinkSync(convertPath(this.pathUtils, target), destination); + } + } else { + throw new Error(`Unsupported file type (file: ${source}, mode: 0o${stat.mode.toString(8).padStart(6, `0`)})`); + } + + const mode = stat.mode & 0o777; + this.chmodSync(destination, mode); + } + + async changeFilePromise(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferPromise(p, content, opts); + } else { + return this.changeFileTextPromise(p, content, opts); + } + } + + async changeFileBufferPromise(p, content, { + mode + } = {}) { + let current = Buffer.alloc(0); + + try { + current = await this.readFilePromise(p); + } catch (error) {// ignore errors, no big deal + } + + if (Buffer.compare(current, content) === 0) return; + await this.writeFilePromise(p, content, { + mode + }); + } + + async changeFileTextPromise(p, content, { + automaticNewlines, + mode + } = {}) { + let current = ``; + + try { + current = await this.readFilePromise(p, `utf8`); + } catch (error) {// ignore errors, no big deal + } + + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) return; + await this.writeFilePromise(p, normalizedContent, { + mode + }); + } + + changeFileSync(p, content, opts = {}) { + if (Buffer.isBuffer(content)) { + return this.changeFileBufferSync(p, content, opts); + } else { + return this.changeFileTextSync(p, content, opts); + } + } + + changeFileBufferSync(p, content, { + mode + } = {}) { + let current = Buffer.alloc(0); + + try { + current = this.readFileSync(p); + } catch (error) {// ignore errors, no big deal + } + + if (Buffer.compare(current, content) === 0) return; + this.writeFileSync(p, content, { + mode + }); + } + + changeFileTextSync(p, content, { + automaticNewlines = false, + mode + } = {}) { + let current = ``; + + try { + current = this.readFileSync(p, `utf8`); + } catch (error) {// ignore errors, no big deal + } + + const normalizedContent = automaticNewlines ? normalizeLineEndings(current, content) : content; + if (current === normalizedContent) return; + this.writeFileSync(p, normalizedContent, { + mode + }); + } + + async movePromise(fromP, toP) { + try { + await this.renamePromise(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + await this.copyPromise(toP, fromP); + await this.removePromise(fromP); + } else { + throw error; + } + } + } + + moveSync(fromP, toP) { + try { + this.renameSync(fromP, toP); + } catch (error) { + if (error.code === `EXDEV`) { + this.copySync(toP, fromP); + this.removeSync(fromP); + } else { + throw error; + } + } + } + + async lockPromise(affectedPath, callback) { + const lockPath = `${affectedPath}.flock`; + const interval = 1000 / 60; + const startTime = Date.now(); + let fd = null; // Even when we detect that a lock file exists, we still look inside to see + // whether the pid that created it is still alive. It's not foolproof + // (there are false positive), but there are no false negative and that's + // all that matters in 99% of the cases. + + const isAlive = async () => { + let pid; + + try { + [pid] = await this.readJsonPromise(lockPath); + } catch (error) { + // If we can't read the file repeatedly, we assume the process was + // aborted before even writing finishing writing the payload. + return Date.now() - startTime < 500; + } + + try { + // "As a special case, a signal of 0 can be used to test for the + // existence of a process" - so we check whether it's alive. + process.kill(pid, 0); + return true; + } catch (error) { + return false; + } + }; + + while (fd === null) { + try { + fd = await this.openPromise(lockPath, `wx`); + } catch (error) { + if (error.code === `EEXIST`) { + if (!(await isAlive())) { + try { + await this.unlinkPromise(lockPath); + continue; + } catch (error) {// No big deal if we can't remove it. Just fallback to wait for + // it to be eventually released by its owner. + } + } + + if (Date.now() - startTime < 60 * 1000) { + await new Promise(resolve => setTimeout(resolve, interval)); + } else { + throw new Error(`Couldn't acquire a lock in a reasonable time (via ${lockPath})`); + } + } else { + throw error; + } + } + } + + await this.writePromise(fd, JSON.stringify([process.pid])); + + try { + return await callback(); + } finally { + try { + // closePromise needs to come before unlinkPromise otherwise another process can attempt + // to get the file handle after the unlink but before close resuling in + // EPERM: operation not permitted, open + await this.closePromise(fd); + await this.unlinkPromise(lockPath); + } catch (error) {// noop + } + } + } + + async readJsonPromise(p) { + const content = await this.readFilePromise(p, `utf8`); + + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + + readJsonSync(p) { + const content = this.readFileSync(p, `utf8`); + + try { + return JSON.parse(content); + } catch (error) { + error.message += ` (in ${p})`; + throw error; + } + } + + async writeJsonPromise(p, data) { + return await this.writeFilePromise(p, `${JSON.stringify(data, null, 2)}\n`); + } + + writeJsonSync(p, data) { + return this.writeFileSync(p, `${JSON.stringify(data, null, 2)}\n`); + } + + async preserveTimePromise(p, cb) { + const stat = await this.lstatPromise(p); + const result = await cb(); + if (typeof result !== `undefined`) p = result; + + if (this.lutimesPromise) { + await this.lutimesPromise(p, stat.atime, stat.mtime); + } else if (!stat.isSymbolicLink()) { + await this.utimesPromise(p, stat.atime, stat.mtime); + } + } + + async preserveTimeSync(p, cb) { + const stat = this.lstatSync(p); + const result = cb(); + if (typeof result !== `undefined`) p = result; + + if (this.lutimesSync) { + this.lutimesSync(p, stat.atime, stat.mtime); + } else if (!stat.isSymbolicLink()) { + this.utimesSync(p, stat.atime, stat.mtime); + } + } + +} +class BasePortableFakeFS extends FakeFS { + constructor() { + super(ppath); + } + +} + +function getEndOfLine(content) { + const matches = content.match(/\r?\n/g); + if (matches === null) return external_os_namespaceObject.EOL; + const crlf = matches.filter(nl => nl === `\r\n`).length; + const lf = matches.length - crlf; + return crlf > lf ? `\r\n` : `\n`; +} + +function normalizeLineEndings(originalContent, newContent) { + return newContent.replace(/\r?\n/g, getEndOfLine(originalContent)); +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/errors.ts +function makeError(code, message) { + return Object.assign(new Error(`${code}: ${message}`), { + code + }); +} + +function EBUSY(message) { + return makeError(`EBUSY`, message); +} +function ENOSYS(message, reason) { + return makeError(`ENOSYS`, `${message}, ${reason}`); +} +function EINVAL(reason) { + return makeError(`EINVAL`, `invalid argument, ${reason}`); +} +function EBADF(reason) { + return makeError(`EBADF`, `bad file descriptor, ${reason}`); +} +function ENOENT(reason) { + return makeError(`ENOENT`, `no such file or directory, ${reason}`); +} +function ENOTDIR(reason) { + return makeError(`ENOTDIR`, `not a directory, ${reason}`); +} +function EISDIR(reason) { + return makeError(`EISDIR`, `illegal operation on a directory, ${reason}`); +} +function EEXIST(reason) { + return makeError(`EEXIST`, `file already exists, ${reason}`); +} +function EROFS(reason) { + return makeError(`EROFS`, `read-only filesystem, ${reason}`); +} +function ENOTEMPTY(reason) { + return makeError(`ENOTEMPTY`, `directory not empty, ${reason}`); +} +function EOPNOTSUPP(reason) { + return makeError(`EOPNOTSUPP`, `operation not supported, ${reason}`); +} // ------------------------------------------------------------------------ + +function ERR_DIR_CLOSED() { + return makeError(`ERR_DIR_CLOSED`, `Directory handle was closed`); +} // ------------------------------------------------------------------------ + +class LibzipError extends Error { + constructor(message, code) { + super(message); + this.name = `Libzip Error`; + this.code = code; + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/NodeFS.ts + + + + +class NodeFS extends BasePortableFakeFS { + constructor(realFs = (external_fs_default())) { + super(); + this.realFs = realFs; // @ts-expect-error + + if (typeof this.realFs.lutimes !== `undefined`) { + this.lutimesPromise = this.lutimesPromiseImpl; + this.lutimesSync = this.lutimesSyncImpl; + } + } + + getExtractHint() { + return false; + } + + getRealPath() { + return PortablePath.root; + } + + resolve(p) { + return ppath.resolve(p); + } + + async openPromise(p, flags, mode) { + return await new Promise((resolve, reject) => { + this.realFs.open(npath.fromPortablePath(p), flags, mode, this.makeCallback(resolve, reject)); + }); + } + + openSync(p, flags, mode) { + return this.realFs.openSync(npath.fromPortablePath(p), flags, mode); + } + + async opendirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (typeof opts !== `undefined`) { + this.realFs.opendir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.opendir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }).then(dir => { + return Object.defineProperty(dir, `path`, { + value: p, + configurable: true, + writable: true + }); + }); + } + + opendirSync(p, opts) { + const dir = typeof opts !== `undefined` ? this.realFs.opendirSync(npath.fromPortablePath(p), opts) : this.realFs.opendirSync(npath.fromPortablePath(p)); + return Object.defineProperty(dir, `path`, { + value: p, + configurable: true, + writable: true + }); + } + + async readPromise(fd, buffer, offset = 0, length = 0, position = -1) { + return await new Promise((resolve, reject) => { + this.realFs.read(fd, buffer, offset, length, position, (error, bytesRead) => { + if (error) { + reject(error); + } else { + resolve(bytesRead); + } + }); + }); + } + + readSync(fd, buffer, offset, length, position) { + return this.realFs.readSync(fd, buffer, offset, length, position); + } + + async writePromise(fd, buffer, offset, length, position) { + return await new Promise((resolve, reject) => { + if (typeof buffer === `string`) { + return this.realFs.write(fd, buffer, offset, this.makeCallback(resolve, reject)); + } else { + return this.realFs.write(fd, buffer, offset, length, position, this.makeCallback(resolve, reject)); + } + }); + } + + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.realFs.writeSync(fd, buffer, offset); + } else { + return this.realFs.writeSync(fd, buffer, offset, length, position); + } + } + + async closePromise(fd) { + await new Promise((resolve, reject) => { + this.realFs.close(fd, this.makeCallback(resolve, reject)); + }); + } + + closeSync(fd) { + this.realFs.closeSync(fd); + } + + createReadStream(p, opts) { + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createReadStream(realPath, opts); + } + + createWriteStream(p, opts) { + const realPath = p !== null ? npath.fromPortablePath(p) : p; + return this.realFs.createWriteStream(realPath, opts); + } + + async realpathPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.realpath(npath.fromPortablePath(p), {}, this.makeCallback(resolve, reject)); + }).then(path => { + return npath.toPortablePath(path); + }); + } + + realpathSync(p) { + return npath.toPortablePath(this.realFs.realpathSync(npath.fromPortablePath(p), {})); + } + + async existsPromise(p) { + return await new Promise(resolve => { + this.realFs.exists(npath.fromPortablePath(p), resolve); + }); + } + + accessSync(p, mode) { + return this.realFs.accessSync(npath.fromPortablePath(p), mode); + } + + async accessPromise(p, mode) { + return await new Promise((resolve, reject) => { + this.realFs.access(npath.fromPortablePath(p), mode, this.makeCallback(resolve, reject)); + }); + } + + existsSync(p) { + return this.realFs.existsSync(npath.fromPortablePath(p)); + } + + async statPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + this.realFs.stat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + + statSync(p, opts) { + if (opts) { + return this.realFs.statSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.statSync(npath.fromPortablePath(p)); + } + } + + async fstatPromise(fd, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + // @ts-expect-error - The node typings doesn't know about the options + this.realFs.fstat(fd, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.fstat(fd, this.makeCallback(resolve, reject)); + } + }); + } + + fstatSync(fd, opts) { + if (opts) { + // @ts-expect-error - The node typings doesn't know about the options + return this.realFs.fstatSync(fd, opts); + } else { + return this.realFs.fstatSync(fd); + } + } + + async lstatPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts) { + // @ts-expect-error - TS does not know this takes options + this.realFs.lstat(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + + lstatSync(p, opts) { + if (opts) { + // @ts-expect-error - TS does not know this takes options + return this.realFs.lstatSync(npath.fromPortablePath(p), opts); + } else { + return this.realFs.lstatSync(npath.fromPortablePath(p)); + } + } + + async chmodPromise(p, mask) { + return await new Promise((resolve, reject) => { + this.realFs.chmod(npath.fromPortablePath(p), mask, this.makeCallback(resolve, reject)); + }); + } + + chmodSync(p, mask) { + return this.realFs.chmodSync(npath.fromPortablePath(p), mask); + } + + async chownPromise(p, uid, gid) { + return await new Promise((resolve, reject) => { + this.realFs.chown(npath.fromPortablePath(p), uid, gid, this.makeCallback(resolve, reject)); + }); + } + + chownSync(p, uid, gid) { + return this.realFs.chownSync(npath.fromPortablePath(p), uid, gid); + } + + async renamePromise(oldP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.rename(npath.fromPortablePath(oldP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + + renameSync(oldP, newP) { + return this.realFs.renameSync(npath.fromPortablePath(oldP), npath.fromPortablePath(newP)); + } + + async copyFilePromise(sourceP, destP, flags = 0) { + return await new Promise((resolve, reject) => { + this.realFs.copyFile(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags, this.makeCallback(resolve, reject)); + }); + } + + copyFileSync(sourceP, destP, flags = 0) { + return this.realFs.copyFileSync(npath.fromPortablePath(sourceP), npath.fromPortablePath(destP), flags); + } + + async appendFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + + if (opts) { + this.realFs.appendFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.appendFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + + appendFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + + if (opts) { + this.realFs.appendFileSync(fsNativePath, content, opts); + } else { + this.realFs.appendFileSync(fsNativePath, content); + } + } + + async writeFilePromise(p, content, opts) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + + if (opts) { + this.realFs.writeFile(fsNativePath, content, opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.writeFile(fsNativePath, content, this.makeCallback(resolve, reject)); + } + }); + } + + writeFileSync(p, content, opts) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + + if (opts) { + this.realFs.writeFileSync(fsNativePath, content, opts); + } else { + this.realFs.writeFileSync(fsNativePath, content); + } + } + + async unlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.unlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }); + } + + unlinkSync(p) { + return this.realFs.unlinkSync(npath.fromPortablePath(p)); + } + + async utimesPromise(p, atime, mtime) { + return await new Promise((resolve, reject) => { + this.realFs.utimes(npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + + utimesSync(p, atime, mtime) { + this.realFs.utimesSync(npath.fromPortablePath(p), atime, mtime); + } + + async lutimesPromiseImpl(p, atime, mtime) { + // @ts-expect-error: Not yet in DefinitelyTyped + const lutimes = this.realFs.lutimes; + if (typeof lutimes === `undefined`) throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); + return await new Promise((resolve, reject) => { + lutimes.call(this.realFs, npath.fromPortablePath(p), atime, mtime, this.makeCallback(resolve, reject)); + }); + } + + lutimesSyncImpl(p, atime, mtime) { + // @ts-expect-error: Not yet in DefinitelyTyped + const lutimesSync = this.realFs.lutimesSync; + if (typeof lutimesSync === `undefined`) throw ENOSYS(`unavailable Node binding`, `lutimes '${p}'`); + lutimesSync.call(this.realFs, npath.fromPortablePath(p), atime, mtime); + } + + async mkdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + this.realFs.mkdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + }); + } + + mkdirSync(p, opts) { + return this.realFs.mkdirSync(npath.fromPortablePath(p), opts); + } + + async rmdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + // TODO: always pass opts when min node version is 12.10+ + if (opts) { + this.realFs.rmdir(npath.fromPortablePath(p), opts, this.makeCallback(resolve, reject)); + } else { + this.realFs.rmdir(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + } + }); + } + + rmdirSync(p, opts) { + return this.realFs.rmdirSync(npath.fromPortablePath(p), opts); + } + + async linkPromise(existingP, newP) { + return await new Promise((resolve, reject) => { + this.realFs.link(npath.fromPortablePath(existingP), npath.fromPortablePath(newP), this.makeCallback(resolve, reject)); + }); + } + + linkSync(existingP, newP) { + return this.realFs.linkSync(npath.fromPortablePath(existingP), npath.fromPortablePath(newP)); + } + + async symlinkPromise(target, p, type) { + return await new Promise((resolve, reject) => { + this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type, this.makeCallback(resolve, reject)); + }); + } + + symlinkSync(target, p, type) { + return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), type); + } + + async readFilePromise(p, encoding) { + return await new Promise((resolve, reject) => { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + this.realFs.readFile(fsNativePath, encoding, this.makeCallback(resolve, reject)); + }); + } + + readFileSync(p, encoding) { + const fsNativePath = typeof p === `string` ? npath.fromPortablePath(p) : p; + return this.realFs.readFileSync(fsNativePath, encoding); + } + + async readdirPromise(p, opts) { + return await new Promise((resolve, reject) => { + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + this.realFs.readdir(npath.fromPortablePath(p), { + withFileTypes: true + }, this.makeCallback(resolve, reject)); + } else { + this.realFs.readdir(npath.fromPortablePath(p), this.makeCallback(value => resolve(value), reject)); + } + }); + } + + readdirSync(p, opts) { + if (opts === null || opts === void 0 ? void 0 : opts.withFileTypes) { + return this.realFs.readdirSync(npath.fromPortablePath(p), { + withFileTypes: true + }); + } else { + return this.realFs.readdirSync(npath.fromPortablePath(p)); + } + } + + async readlinkPromise(p) { + return await new Promise((resolve, reject) => { + this.realFs.readlink(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); + }).then(path => { + return npath.toPortablePath(path); + }); + } + + readlinkSync(p) { + return npath.toPortablePath(this.realFs.readlinkSync(npath.fromPortablePath(p))); + } + + async truncatePromise(p, len) { + return await new Promise((resolve, reject) => { + this.realFs.truncate(npath.fromPortablePath(p), len, this.makeCallback(resolve, reject)); + }); + } + + truncateSync(p, len) { + return this.realFs.truncateSync(npath.fromPortablePath(p), len); + } + + watch(p, a, b) { + return this.realFs.watch(npath.fromPortablePath(p), // @ts-expect-error + a, b); + } + + watchFile(p, a, b) { + return this.realFs.watchFile(npath.fromPortablePath(p), // @ts-expect-error + a, b); + } + + unwatchFile(p, cb) { + return this.realFs.unwatchFile(npath.fromPortablePath(p), cb); + } + + makeCallback(resolve, reject) { + return (err, result) => { + if (err) { + reject(err); + } else { + resolve(result); + } + }; + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/ProxiedFS.ts + +class ProxiedFS extends FakeFS { + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + + resolve(path) { + return this.mapFromBase(this.baseFs.resolve(this.mapToBase(path))); + } + + getRealPath() { + return this.mapFromBase(this.baseFs.getRealPath()); + } + + async openPromise(p, flags, mode) { + return this.baseFs.openPromise(this.mapToBase(p), flags, mode); + } + + openSync(p, flags, mode) { + return this.baseFs.openSync(this.mapToBase(p), flags, mode); + } + + async opendirPromise(p, opts) { + return Object.assign(await this.baseFs.opendirPromise(this.mapToBase(p), opts), { + path: p + }); + } + + opendirSync(p, opts) { + return Object.assign(this.baseFs.opendirSync(this.mapToBase(p), opts), { + path: p + }); + } + + async readPromise(fd, buffer, offset, length, position) { + return await this.baseFs.readPromise(fd, buffer, offset, length, position); + } + + readSync(fd, buffer, offset, length, position) { + return this.baseFs.readSync(fd, buffer, offset, length, position); + } + + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } + } + + writeSync(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + + async closePromise(fd) { + return this.baseFs.closePromise(fd); + } + + closeSync(fd) { + this.baseFs.closeSync(fd); + } + + createReadStream(p, opts) { + return this.baseFs.createReadStream(p !== null ? this.mapToBase(p) : p, opts); + } + + createWriteStream(p, opts) { + return this.baseFs.createWriteStream(p !== null ? this.mapToBase(p) : p, opts); + } + + async realpathPromise(p) { + return this.mapFromBase(await this.baseFs.realpathPromise(this.mapToBase(p))); + } + + realpathSync(p) { + return this.mapFromBase(this.baseFs.realpathSync(this.mapToBase(p))); + } + + async existsPromise(p) { + return this.baseFs.existsPromise(this.mapToBase(p)); + } + + existsSync(p) { + return this.baseFs.existsSync(this.mapToBase(p)); + } + + accessSync(p, mode) { + return this.baseFs.accessSync(this.mapToBase(p), mode); + } + + async accessPromise(p, mode) { + return this.baseFs.accessPromise(this.mapToBase(p), mode); + } + + async statPromise(p, opts) { + return this.baseFs.statPromise(this.mapToBase(p), opts); + } + + statSync(p, opts) { + return this.baseFs.statSync(this.mapToBase(p), opts); + } + + async fstatPromise(fd, opts) { + return this.baseFs.fstatPromise(fd, opts); + } + + fstatSync(fd, opts) { + return this.baseFs.fstatSync(fd, opts); + } + + async lstatPromise(p, opts) { + return this.baseFs.lstatPromise(this.mapToBase(p), opts); + } + + lstatSync(p, opts) { + return this.baseFs.lstatSync(this.mapToBase(p), opts); + } + + async chmodPromise(p, mask) { + return this.baseFs.chmodPromise(this.mapToBase(p), mask); + } + + chmodSync(p, mask) { + return this.baseFs.chmodSync(this.mapToBase(p), mask); + } + + async chownPromise(p, uid, gid) { + return this.baseFs.chownPromise(this.mapToBase(p), uid, gid); + } + + chownSync(p, uid, gid) { + return this.baseFs.chownSync(this.mapToBase(p), uid, gid); + } + + async renamePromise(oldP, newP) { + return this.baseFs.renamePromise(this.mapToBase(oldP), this.mapToBase(newP)); + } + + renameSync(oldP, newP) { + return this.baseFs.renameSync(this.mapToBase(oldP), this.mapToBase(newP)); + } + + async copyFilePromise(sourceP, destP, flags = 0) { + return this.baseFs.copyFilePromise(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + + copyFileSync(sourceP, destP, flags = 0) { + return this.baseFs.copyFileSync(this.mapToBase(sourceP), this.mapToBase(destP), flags); + } + + async appendFilePromise(p, content, opts) { + return this.baseFs.appendFilePromise(this.fsMapToBase(p), content, opts); + } + + appendFileSync(p, content, opts) { + return this.baseFs.appendFileSync(this.fsMapToBase(p), content, opts); + } + + async writeFilePromise(p, content, opts) { + return this.baseFs.writeFilePromise(this.fsMapToBase(p), content, opts); + } + + writeFileSync(p, content, opts) { + return this.baseFs.writeFileSync(this.fsMapToBase(p), content, opts); + } + + async unlinkPromise(p) { + return this.baseFs.unlinkPromise(this.mapToBase(p)); + } + + unlinkSync(p) { + return this.baseFs.unlinkSync(this.mapToBase(p)); + } + + async utimesPromise(p, atime, mtime) { + return this.baseFs.utimesPromise(this.mapToBase(p), atime, mtime); + } + + utimesSync(p, atime, mtime) { + return this.baseFs.utimesSync(this.mapToBase(p), atime, mtime); + } + + async mkdirPromise(p, opts) { + return this.baseFs.mkdirPromise(this.mapToBase(p), opts); + } + + mkdirSync(p, opts) { + return this.baseFs.mkdirSync(this.mapToBase(p), opts); + } + + async rmdirPromise(p, opts) { + return this.baseFs.rmdirPromise(this.mapToBase(p), opts); + } + + rmdirSync(p, opts) { + return this.baseFs.rmdirSync(this.mapToBase(p), opts); + } + + async linkPromise(existingP, newP) { + return this.baseFs.linkPromise(this.mapToBase(existingP), this.mapToBase(newP)); + } + + linkSync(existingP, newP) { + return this.baseFs.linkSync(this.mapToBase(existingP), this.mapToBase(newP)); + } + + async symlinkPromise(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) return this.baseFs.symlinkPromise(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkPromise(mappedTarget, mappedP, type); + } + + symlinkSync(target, p, type) { + const mappedP = this.mapToBase(p); + if (this.pathUtils.isAbsolute(target)) return this.baseFs.symlinkSync(this.mapToBase(target), mappedP, type); + const mappedAbsoluteTarget = this.mapToBase(this.pathUtils.join(this.pathUtils.dirname(p), target)); + const mappedTarget = this.baseFs.pathUtils.relative(this.baseFs.pathUtils.dirname(mappedP), mappedAbsoluteTarget); + return this.baseFs.symlinkSync(mappedTarget, mappedP, type); + } + + async readFilePromise(p, encoding) { + // This weird condition is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + if (encoding === `utf8`) { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } else { + return this.baseFs.readFilePromise(this.fsMapToBase(p), encoding); + } + } + + readFileSync(p, encoding) { + // This weird condition is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + if (encoding === `utf8`) { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } else { + return this.baseFs.readFileSync(this.fsMapToBase(p), encoding); + } + } + + async readdirPromise(p, opts) { + return this.baseFs.readdirPromise(this.mapToBase(p), opts); + } + + readdirSync(p, opts) { + return this.baseFs.readdirSync(this.mapToBase(p), opts); + } + + async readlinkPromise(p) { + return this.mapFromBase(await this.baseFs.readlinkPromise(this.mapToBase(p))); + } + + readlinkSync(p) { + return this.mapFromBase(this.baseFs.readlinkSync(this.mapToBase(p))); + } + + async truncatePromise(p, len) { + return this.baseFs.truncatePromise(this.mapToBase(p), len); + } + + truncateSync(p, len) { + return this.baseFs.truncateSync(this.mapToBase(p), len); + } + + watch(p, a, b) { + return this.baseFs.watch(this.mapToBase(p), // @ts-expect-error + a, b); + } + + watchFile(p, a, b) { + return this.baseFs.watchFile(this.mapToBase(p), // @ts-expect-error + a, b); + } + + unwatchFile(p, cb) { + return this.baseFs.unwatchFile(this.mapToBase(p), cb); + } + + fsMapToBase(p) { + if (typeof p === `number`) { + return p; + } else { + return this.mapToBase(p); + } + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/VirtualFS.ts + + + +const NUMBER_REGEXP = /^[0-9]+$/; // $0: full path +// $1: virtual folder +// $2: virtual segment +// $3: hash +// $4: depth +// $5: subpath + +const VIRTUAL_REGEXP = /^(\/(?:[^/]+\/)*?(?:\$\$virtual|__virtual__))((?:\/((?:[^/]+-)?[a-f0-9]+)(?:\/([^/]+))?)?((?:\/.*)?))$/; +const VALID_COMPONENT = /^([^/]+-)?[a-f0-9]+$/; +class VirtualFS extends ProxiedFS { + constructor({ + baseFs = new NodeFS() + } = {}) { + super(ppath); + this.baseFs = baseFs; + } + + static makeVirtualPath(base, component, to) { + if (ppath.basename(base) !== `__virtual__`) throw new Error(`Assertion failed: Virtual folders must be named "__virtual__"`); + if (!ppath.basename(component).match(VALID_COMPONENT)) throw new Error(`Assertion failed: Virtual components must be ended by an hexadecimal hash`); // Obtains the relative distance between the virtual path and its actual target + + const target = ppath.relative(ppath.dirname(base), to); + const segments = target.split(`/`); // Counts how many levels we need to go back to start applying the rest of the path + + let depth = 0; + + while (depth < segments.length && segments[depth] === `..`) depth += 1; + + const finalSegments = segments.slice(depth); + const fullVirtualPath = ppath.join(base, component, String(depth), ...finalSegments); + return fullVirtualPath; + } + + static resolveVirtual(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match || !match[3] && match[5]) return p; + const target = ppath.dirname(match[1]); + if (!match[3] || !match[4]) return target; + const isnum = NUMBER_REGEXP.test(match[4]); + if (!isnum) return p; + const depth = Number(match[4]); + const backstep = `../`.repeat(depth); + const subpath = match[5] || `.`; + return VirtualFS.resolveVirtual(ppath.join(target, backstep, subpath)); + } + + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + + getRealPath() { + return this.baseFs.getRealPath(); + } + + realpathSync(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) return this.baseFs.realpathSync(p); + if (!match[5]) return p; + const realpath = this.baseFs.realpathSync(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + + async realpathPromise(p) { + const match = p.match(VIRTUAL_REGEXP); + if (!match) return await this.baseFs.realpathPromise(p); + if (!match[5]) return p; + const realpath = await this.baseFs.realpathPromise(this.mapToBase(p)); + return VirtualFS.makeVirtualPath(match[1], match[3], realpath); + } + + mapToBase(p) { + if (p === ``) return p; + if (this.pathUtils.isAbsolute(p)) return VirtualFS.resolveVirtual(p); + const resolvedRoot = VirtualFS.resolveVirtual(this.baseFs.resolve(PortablePath.dot)); + const resolvedP = VirtualFS.resolveVirtual(this.baseFs.resolve(p)); + return ppath.relative(resolvedRoot, resolvedP) || PortablePath.dot; + } + + mapFromBase(p) { + return p; + } + +} +;// CONCATENATED MODULE: external "stream" +const external_stream_namespaceObject = require("stream");; +;// CONCATENATED MODULE: external "util" +const external_util_namespaceObject = require("util");; +;// CONCATENATED MODULE: external "zlib" +const external_zlib_namespaceObject = require("zlib");; +var external_zlib_default = /*#__PURE__*/__webpack_require__.n(external_zlib_namespaceObject); +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/algorithms/opendir.ts + +class CustomDir { + constructor(path, nextDirent, opts = {}) { + this.path = path; + this.nextDirent = nextDirent; + this.opts = opts; + this.closed = false; + } + + throwIfClosed() { + if (this.closed) { + throw ERR_DIR_CLOSED(); + } + } + + async *[Symbol.asyncIterator]() { + try { + let dirent; // eslint-disable-next-line no-cond-assign + + while ((dirent = await this.read()) !== null) { + yield dirent; + } + } finally { + await this.close(); + } + } + + read(cb) { + const dirent = this.readSync(); + if (typeof cb !== `undefined`) return cb(null, dirent); + return Promise.resolve(dirent); + } + + readSync() { + this.throwIfClosed(); + return this.nextDirent(); + } + + close(cb) { + this.closeSync(); + if (typeof cb !== `undefined`) return cb(null); + return Promise.resolve(); + } + + closeSync() { + var _a, _b; + + this.throwIfClosed(); + (_b = (_a = this.opts).onClose) === null || _b === void 0 ? void 0 : _b.call(_a); + this.closed = true; + } + +} +function opendir(fakeFs, path, entries, opts) { + const nextDirent = () => { + const filename = entries.shift(); + if (typeof filename === `undefined`) return null; + return Object.assign(fakeFs.statSync(fakeFs.pathUtils.join(path, filename)), { + name: filename + }); + }; + + return new CustomDir(path, nextDirent, opts); +} +;// CONCATENATED MODULE: external "events" +const external_events_namespaceObject = require("events");; +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/statUtils.ts + + +const DEFAULT_MODE = constants_S_IFREG | 0o644; +class DirEntry { + constructor() { + this.name = ``; + this.mode = 0; + } + + isBlockDevice() { + return false; + } + + isCharacterDevice() { + return false; + } + + isDirectory() { + return (this.mode & S_IFMT) === S_IFDIR; + } + + isFIFO() { + return false; + } + + isFile() { + return (this.mode & S_IFMT) === S_IFREG; + } + + isSocket() { + return false; + } + + isSymbolicLink() { + return (this.mode & S_IFMT) === S_IFLNK; + } + +} +class StatEntry { + constructor() { + this.uid = 0; + this.gid = 0; + this.size = 0; + this.blksize = 0; + this.atimeMs = 0; + this.mtimeMs = 0; + this.ctimeMs = 0; + this.birthtimeMs = 0; + this.atime = new Date(0); + this.mtime = new Date(0); + this.ctime = new Date(0); + this.birthtime = new Date(0); + this.dev = 0; + this.ino = 0; + this.mode = DEFAULT_MODE; + this.nlink = 1; + this.rdev = 0; + this.blocks = 1; + } + + isBlockDevice() { + return false; + } + + isCharacterDevice() { + return false; + } + + isDirectory() { + return (this.mode & constants_S_IFMT) === constants_S_IFDIR; + } + + isFIFO() { + return false; + } + + isFile() { + return (this.mode & constants_S_IFMT) === constants_S_IFREG; + } + + isSocket() { + return false; + } + + isSymbolicLink() { + return (this.mode & constants_S_IFMT) === constants_S_IFLNK; + } + +} +class BigIntStatsEntry { + constructor() { + this.uid = BigInt(0); + this.gid = BigInt(0); + this.size = BigInt(0); + this.blksize = BigInt(0); + this.atimeMs = BigInt(0); + this.mtimeMs = BigInt(0); + this.ctimeMs = BigInt(0); + this.birthtimeMs = BigInt(0); + this.atimeNs = BigInt(0); + this.mtimeNs = BigInt(0); + this.ctimeNs = BigInt(0); + this.birthtimeNs = BigInt(0); + this.atime = new Date(0); + this.mtime = new Date(0); + this.ctime = new Date(0); + this.birthtime = new Date(0); + this.dev = BigInt(0); + this.ino = BigInt(0); + this.mode = BigInt(DEFAULT_MODE); + this.nlink = BigInt(1); + this.rdev = BigInt(0); + this.blocks = BigInt(1); + } + + isBlockDevice() { + return false; + } + + isCharacterDevice() { + return false; + } + + isDirectory() { + return (this.mode & BigInt(constants_S_IFMT)) === BigInt(constants_S_IFDIR); + } + + isFIFO() { + return false; + } + + isFile() { + return (this.mode & BigInt(constants_S_IFMT)) === BigInt(constants_S_IFREG); + } + + isSocket() { + return false; + } + + isSymbolicLink() { + return (this.mode & BigInt(constants_S_IFMT)) === BigInt(constants_S_IFLNK); + } + +} +function makeDefaultStats() { + return new StatEntry(); +} +function makeEmptyStats() { + return clearStats(makeDefaultStats()); +} +/** + * Mutates the provided stats object to zero it out then returns it for convenience + */ + +function clearStats(stats) { + for (const key in stats) { + if (Object.prototype.hasOwnProperty.call(stats, key)) { + const element = stats[key]; + + if (typeof element === `number`) { + // @ts-expect-error Typescript can't tell that stats[key] is a number + stats[key] = 0; + } else if (typeof element === `bigint`) { + // @ts-expect-error Typescript can't tell that stats[key] is a bigint + stats[key] = BigInt(0); + } else if (external_util_namespaceObject.types.isDate(element)) { + // @ts-expect-error Typescript can't tell that stats[key] is a bigint + stats[key] = new Date(0); + } + } + } + + return stats; +} +function convertToBigIntStats(stats) { + const bigintStats = new BigIntStatsEntry(); + + for (const key in stats) { + if (Object.prototype.hasOwnProperty.call(stats, key)) { + const element = stats[key]; + + if (typeof element === `number`) { + // @ts-expect-error Typescript isn't able to tell this is valid + bigintStats[key] = BigInt(element); + } else if (external_util_namespaceObject.types.isDate(element)) { + // @ts-expect-error Typescript isn't able to tell this is valid + bigintStats[key] = new Date(element); + } + } + } + + bigintStats.atimeNs = bigintStats.atimeMs * BigInt(1e6); + bigintStats.mtimeNs = bigintStats.mtimeMs * BigInt(1e6); + bigintStats.ctimeNs = bigintStats.ctimeMs * BigInt(1e6); + bigintStats.birthtimeNs = bigintStats.birthtimeMs * BigInt(1e6); + return bigintStats; +} +function areStatsEqual(a, b) { + if (a.atimeMs !== b.atimeMs) return false; + if (a.birthtimeMs !== b.birthtimeMs) return false; + if (a.blksize !== b.blksize) return false; + if (a.blocks !== b.blocks) return false; + if (a.ctimeMs !== b.ctimeMs) return false; + if (a.dev !== b.dev) return false; + if (a.gid !== b.gid) return false; + if (a.ino !== b.ino) return false; + if (a.isBlockDevice() !== b.isBlockDevice()) return false; + if (a.isCharacterDevice() !== b.isCharacterDevice()) return false; + if (a.isDirectory() !== b.isDirectory()) return false; + if (a.isFIFO() !== b.isFIFO()) return false; + if (a.isFile() !== b.isFile()) return false; + if (a.isSocket() !== b.isSocket()) return false; + if (a.isSymbolicLink() !== b.isSymbolicLink()) return false; + if (a.mode !== b.mode) return false; + if (a.mtimeMs !== b.mtimeMs) return false; + if (a.nlink !== b.nlink) return false; + if (a.rdev !== b.rdev) return false; + if (a.size !== b.size) return false; + if (a.uid !== b.uid) return false; + const aN = a; + const bN = b; + if (aN.atimeNs !== bN.atimeNs) return false; + if (aN.mtimeNs !== bN.mtimeNs) return false; + if (aN.ctimeNs !== bN.ctimeNs) return false; + if (aN.birthtimeNs !== bN.birthtimeNs) return false; + return true; +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/algorithms/watchFile/CustomStatWatcher.ts + + +var Event; + +(function (Event) { + Event["Change"] = "change"; + Event["Stop"] = "stop"; +})(Event || (Event = {})); + +var Status; + +(function (Status) { + Status["Ready"] = "ready"; + Status["Running"] = "running"; + Status["Stopped"] = "stopped"; +})(Status || (Status = {})); + +function assertStatus(current, expected) { + if (current !== expected) { + throw new Error(`Invalid StatWatcher status: expected '${expected}', got '${current}'`); + } +} +class CustomStatWatcher extends external_events_namespaceObject.EventEmitter { + constructor(fakeFs, path, { + bigint = false + } = {}) { + super(); + this.status = Status.Ready; + this.changeListeners = new Map(); + this.startTimeout = null; + this.fakeFs = fakeFs; + this.path = path; + this.bigint = bigint; + this.lastStats = this.stat(); + } + + static create(fakeFs, path, opts) { + const statWatcher = new CustomStatWatcher(fakeFs, path, opts); + statWatcher.start(); + return statWatcher; + } + + start() { + assertStatus(this.status, Status.Ready); + this.status = Status.Running; // Node allows other listeners to be registered up to 3 milliseconds + // after the watcher has been started, so that's what we're doing too + + this.startTimeout = setTimeout(() => { + this.startTimeout = null; // Per the Node FS docs: + // "When an fs.watchFile operation results in an ENOENT error, + // it will invoke the listener once, with all the fields zeroed + // (or, for dates, the Unix Epoch)." + + if (!this.fakeFs.existsSync(this.path)) { + this.emit(Event.Change, this.lastStats, this.lastStats); + } + }, 3); + } + + stop() { + assertStatus(this.status, Status.Running); + this.status = Status.Stopped; + + if (this.startTimeout !== null) { + clearTimeout(this.startTimeout); + this.startTimeout = null; + } + + this.emit(Event.Stop); + } + + stat() { + try { + return this.fakeFs.statSync(this.path, { + bigint: this.bigint + }); + } catch (error) { + // From observation, all errors seem to be mostly ignored by Node. + // Checked with ENOENT, ENOTDIR, EPERM + const statInstance = this.bigint ? new BigIntStatsEntry() : new StatEntry(); + return clearStats(statInstance); + } + } + /** + * Creates an interval whose callback compares the current stats with the previous stats and notifies all listeners in case of changes. + * + * @param opts.persistent Decides whether the interval should be immediately unref-ed. + */ + + + makeInterval(opts) { + const interval = setInterval(() => { + const currentStats = this.stat(); + const previousStats = this.lastStats; + if (areStatsEqual(currentStats, previousStats)) return; + this.lastStats = currentStats; + this.emit(Event.Change, currentStats, previousStats); + }, opts.interval); + return opts.persistent ? interval : interval.unref(); + } + /** + * Registers a listener and assigns it an interval. + */ + + + registerChangeListener(listener, opts) { + this.addListener(Event.Change, listener); + this.changeListeners.set(listener, this.makeInterval(opts)); + } + /** + * Unregisters the listener and clears the assigned interval. + */ + + + unregisterChangeListener(listener) { + this.removeListener(Event.Change, listener); + const interval = this.changeListeners.get(listener); + if (typeof interval !== `undefined`) clearInterval(interval); + this.changeListeners.delete(listener); + } + /** + * Unregisters all listeners and clears all assigned intervals. + */ + + + unregisterAllChangeListeners() { + for (const listener of this.changeListeners.keys()) { + this.unregisterChangeListener(listener); + } + } + + hasChangeListeners() { + return this.changeListeners.size > 0; + } + /** + * Refs all stored intervals. + */ + + + ref() { + for (const interval of this.changeListeners.values()) interval.ref(); + + return this; + } + /** + * Unrefs all stored intervals. + */ + + + unref() { + for (const interval of this.changeListeners.values()) interval.unref(); + + return this; + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/algorithms/watchFile.ts + +const statWatchersByFakeFS = new WeakMap(); +function watchFile(fakeFs, path, a, b) { + let bigint; + let persistent; + let interval; + let listener; + + switch (typeof a) { + case `function`: + { + bigint = false; + persistent = true; + interval = 5007; + listener = a; + } + break; + + default: + { + ({ + bigint = false, + persistent = true, + interval = 5007 + } = a); + listener = b; + } + break; + } + + let statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) statWatchersByFakeFS.set(fakeFs, statWatchers = new Map()); + let statWatcher = statWatchers.get(path); + + if (typeof statWatcher === `undefined`) { + statWatcher = CustomStatWatcher.create(fakeFs, path, { + bigint + }); + statWatchers.set(path, statWatcher); + } + + statWatcher.registerChangeListener(listener, { + persistent, + interval + }); + return statWatcher; +} +function unwatchFile(fakeFs, path, cb) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) return; + const statWatcher = statWatchers.get(path); + if (typeof statWatcher === `undefined`) return; + if (typeof cb === `undefined`) statWatcher.unregisterAllChangeListeners();else statWatcher.unregisterChangeListener(cb); + + if (!statWatcher.hasChangeListeners()) { + statWatcher.stop(); + statWatchers.delete(path); + } +} +function unwatchAllFiles(fakeFs) { + const statWatchers = statWatchersByFakeFS.get(fakeFs); + if (typeof statWatchers === `undefined`) return; + + for (const path of statWatchers.keys()) { + unwatchFile(fakeFs, path); + } +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/ZipFS.ts + + + + + + + + + + + + +const DEFAULT_COMPRESSION_LEVEL = `mixed`; + +function toUnixTimestamp(time) { + if (typeof time === `string` && String(+time) === time) return +time; + + if (Number.isFinite(time)) { + if (time < 0) { + return Date.now() / 1000; + } else { + return time; + } + } // convert to 123.456 UNIX timestamp + + + if ((0,external_util_namespaceObject.isDate)(time)) return time.getTime() / 1000; + throw new Error(`Invalid time`); +} + +function makeEmptyArchive() { + return Buffer.from([0x50, 0x4B, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]); +} +class ZipFS extends BasePortableFakeFS { + constructor(source, opts) { + super(); + this.lzSource = null; + this.listings = new Map(); + this.entries = new Map(); + /** + * A cache of indices mapped to file sources. + * Populated by `setFileSource` calls. + * Required for supporting read after write. + */ + + this.fileSources = new Map(); + this.fds = new Map(); + this.nextFd = 0; + this.ready = false; + this.readOnly = false; + this.libzip = opts.libzip; + const pathOptions = opts; + this.level = typeof pathOptions.level !== `undefined` ? pathOptions.level : DEFAULT_COMPRESSION_LEVEL; + source !== null && source !== void 0 ? source : source = makeEmptyArchive(); + + if (typeof source === `string`) { + const { + baseFs = new NodeFS() + } = pathOptions; + this.baseFs = baseFs; + this.path = source; + } else { + this.path = null; + this.baseFs = null; + } + + if (opts.stats) { + this.stats = opts.stats; + } else { + if (typeof source === `string`) { + try { + this.stats = this.baseFs.statSync(source); + } catch (error) { + if (error.code === `ENOENT` && pathOptions.create) { + this.stats = makeDefaultStats(); + } else { + throw error; + } + } + } else { + this.stats = makeDefaultStats(); + } + } + + const errPtr = this.libzip.malloc(4); + + try { + let flags = 0; + if (typeof source === `string` && pathOptions.create) flags |= this.libzip.ZIP_CREATE | this.libzip.ZIP_TRUNCATE; + + if (opts.readOnly) { + flags |= this.libzip.ZIP_RDONLY; + this.readOnly = true; + } + + if (typeof source === `string`) { + this.zip = this.libzip.open(npath.fromPortablePath(source), flags, errPtr); + } else { + const lzSource = this.allocateUnattachedSource(source); + + try { + this.zip = this.libzip.openFromSource(lzSource, flags, errPtr); + this.lzSource = lzSource; + } catch (error) { + this.libzip.source.free(lzSource); + throw error; + } + } + + if (this.zip === 0) { + const error = this.libzip.struct.errorS(); + this.libzip.error.initWithCode(error, this.libzip.getValue(errPtr, `i32`)); + throw this.makeLibzipError(error); + } + } finally { + this.libzip.free(errPtr); + } + + this.listings.set(PortablePath.root, new Set()); + const entryCount = this.libzip.getNumEntries(this.zip, 0); + + for (let t = 0; t < entryCount; ++t) { + const raw = this.libzip.getName(this.zip, t, 0); + if (ppath.isAbsolute(raw)) continue; + const p = ppath.resolve(PortablePath.root, raw); + this.registerEntry(p, t); // If the raw path is a directory, register it + // to prevent empty folder being skipped + + if (raw.endsWith(`/`)) { + this.registerListing(p); + } + } + + this.symlinkCount = this.libzip.ext.countSymlinks(this.zip); + if (this.symlinkCount === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.ready = true; + } + + makeLibzipError(error) { + const errorCode = this.libzip.struct.errorCodeZip(error); + const strerror = this.libzip.error.strerror(error); + const libzipError = new LibzipError(strerror, this.libzip.errors[errorCode]); // This error should never come up because of the file source cache + + if (errorCode === this.libzip.errors.ZIP_ER_CHANGED) throw new Error(`Assertion failed: Unexpected libzip error: ${libzipError.message}`); + return libzipError; + } + + getExtractHint(hints) { + for (const fileName of this.entries.keys()) { + const ext = this.pathUtils.extname(fileName); + + if (hints.relevantExtensions.has(ext)) { + return true; + } + } + + return false; + } + + getAllFiles() { + return Array.from(this.entries.keys()); + } + + getRealPath() { + if (!this.path) throw new Error(`ZipFS don't have real paths when loaded from a buffer`); + return this.path; + } + + getBufferAndClose() { + this.prepareClose(); + if (!this.lzSource) throw new Error(`ZipFS was not created from a Buffer`); + + try { + // Prevent close from cleaning up the source + this.libzip.source.keep(this.lzSource); // Close the zip archive + + if (this.libzip.close(this.zip) === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); // Open the source for reading + + if (this.libzip.source.open(this.lzSource) === -1) throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); // Move to the end of source + + if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_END) === -1) throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); // Get the size of source + + const size = this.libzip.source.tell(this.lzSource); + if (size === -1) throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); // Move to the start of source + + if (this.libzip.source.seek(this.lzSource, 0, 0, this.libzip.SEEK_SET) === -1) throw this.makeLibzipError(this.libzip.source.error(this.lzSource)); + const buffer = this.libzip.malloc(size); + if (!buffer) throw new Error(`Couldn't allocate enough memory`); + + try { + const rc = this.libzip.source.read(this.lzSource, buffer, size); + if (rc === -1) throw this.makeLibzipError(this.libzip.source.error(this.lzSource));else if (rc < size) throw new Error(`Incomplete read`);else if (rc > size) throw new Error(`Overread`); + const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); + return Buffer.from(memory); + } finally { + this.libzip.free(buffer); + } + } finally { + this.libzip.source.close(this.lzSource); + this.libzip.source.free(this.lzSource); + this.ready = false; + } + } + + prepareClose() { + if (!this.ready) throw EBUSY(`archive closed, close`); + unwatchAllFiles(this); + } + + saveAndClose() { + if (!this.path || !this.baseFs) throw new Error(`ZipFS cannot be saved and must be discarded when loaded from a buffer`); + this.prepareClose(); + + if (this.readOnly) { + this.discardAndClose(); + return; + } + + const newMode = this.baseFs.existsSync(this.path) || this.stats.mode === DEFAULT_MODE ? undefined : this.stats.mode; // zip_close doesn't persist empty archives + + if (this.entries.size === 0) { + this.discardAndClose(); + this.baseFs.writeFileSync(this.path, makeEmptyArchive(), { + mode: newMode + }); + } else { + const rc = this.libzip.close(this.zip); + if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + + if (typeof newMode !== `undefined`) { + this.baseFs.chmodSync(this.path, newMode); + } + } + + this.ready = false; + } + + discardAndClose() { + this.prepareClose(); + this.libzip.discard(this.zip); + this.ready = false; + } + + resolve(p) { + return ppath.resolve(PortablePath.root, p); + } + + async openPromise(p, flags, mode) { + return this.openSync(p, flags, mode); + } + + openSync(p, flags, mode) { + const fd = this.nextFd++; + this.fds.set(fd, { + cursor: 0, + p + }); + return fd; + } + + hasOpenFileHandles() { + return !!this.fds.size; + } + + async opendirPromise(p, opts) { + return this.opendirSync(p, opts); + } + + opendirSync(p, opts = {}) { + const resolvedP = this.resolveFilename(`opendir '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`opendir '${p}'`); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) throw ENOTDIR(`opendir '${p}'`); + const entries = [...directoryListing]; + const fd = this.openSync(resolvedP, `r`); + + const onClose = () => { + this.closeSync(fd); + }; + + return opendir(this, resolvedP, entries, { + onClose + }); + } + + async readPromise(fd, buffer, offset, length, position) { + return this.readSync(fd, buffer, offset, length, position); + } + + readSync(fd, buffer, offset = 0, length = buffer.byteLength, position = -1) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) throw EBADF(`read`); + let realPosition; + if (position === -1 || position === null) realPosition = entry.cursor;else realPosition = position; + const source = this.readFileSync(entry.p); + source.copy(buffer, offset, realPosition, realPosition + length); + const bytesRead = Math.max(0, Math.min(source.length - realPosition, length)); + if (position === -1 || position === null) entry.cursor += bytesRead; + return bytesRead; + } + + async writePromise(fd, buffer, offset, length, position) { + if (typeof buffer === `string`) { + return this.writeSync(fd, buffer, position); + } else { + return this.writeSync(fd, buffer, offset, length, position); + } + } + + writeSync(fd, buffer, offset, length, position) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) throw EBADF(`read`); + throw new Error(`Unimplemented`); + } + + async closePromise(fd) { + return this.closeSync(fd); + } + + closeSync(fd) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) throw EBADF(`read`); + this.fds.delete(fd); + } + + createReadStream(p, { + encoding + } = {}) { + if (p === null) throw new Error(`Unimplemented`); + const fd = this.openSync(p, `r`); + const stream = Object.assign(new external_stream_namespaceObject.PassThrough({ + emitClose: true, + autoDestroy: true, + destroy: (error, callback) => { + clearImmediate(immediate); + this.closeSync(fd); + callback(error); + } + }), { + close() { + stream.destroy(); + }, + + bytesRead: 0, + path: p + }); + const immediate = setImmediate(async () => { + try { + const data = await this.readFilePromise(p, encoding); + stream.bytesRead = data.length; + stream.end(data); + } catch (error) { + stream.destroy(error); + } + }); + return stream; + } + + createWriteStream(p, { + encoding + } = {}) { + if (this.readOnly) throw EROFS(`open '${p}'`); + if (p === null) throw new Error(`Unimplemented`); + const chunks = []; + const fd = this.openSync(p, `w`); + const stream = Object.assign(new external_stream_namespaceObject.PassThrough({ + autoDestroy: true, + emitClose: true, + destroy: (error, callback) => { + try { + if (error) { + callback(error); + } else { + this.writeFileSync(p, Buffer.concat(chunks), encoding); + callback(null); + } + } catch (err) { + callback(err); + } finally { + this.closeSync(fd); + } + } + }), { + bytesWritten: 0, + path: p, + + close() { + stream.destroy(); + } + + }); + stream.on(`data`, chunk => { + const chunkBuffer = Buffer.from(chunk); + stream.bytesWritten += chunkBuffer.length; + chunks.push(chunkBuffer); + }); + return stream; + } + + async realpathPromise(p) { + return this.realpathSync(p); + } + + realpathSync(p) { + const resolvedP = this.resolveFilename(`lstat '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`lstat '${p}'`); + return resolvedP; + } + + async existsPromise(p) { + return this.existsSync(p); + } + + existsSync(p) { + if (!this.ready) throw EBUSY(`archive closed, existsSync '${p}'`); + + if (this.symlinkCount === 0) { + const resolvedP = ppath.resolve(PortablePath.root, p); + return this.entries.has(resolvedP) || this.listings.has(resolvedP); + } + + let resolvedP; + + try { + resolvedP = this.resolveFilename(`stat '${p}'`, p); + } catch (error) { + return false; + } + + return this.entries.has(resolvedP) || this.listings.has(resolvedP); + } + + async accessPromise(p, mode) { + return this.accessSync(p, mode); + } + + accessSync(p, mode = external_fs_.constants.F_OK) { + const resolvedP = this.resolveFilename(`access '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`access '${p}'`); + + if (this.readOnly && mode & external_fs_.constants.W_OK) { + throw EROFS(`access '${p}'`); + } + } + + async statPromise(p, opts) { + return this.statSync(p, opts); + } + + statSync(p, opts) { + const resolvedP = this.resolveFilename(`stat '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`stat '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) throw ENOTDIR(`stat '${p}'`); + return this.statImpl(`stat '${p}'`, resolvedP, opts); + } + + async fstatPromise(fd, opts) { + return this.fstatSync(fd, opts); + } + + fstatSync(fd, opts) { + const entry = this.fds.get(fd); + if (typeof entry === `undefined`) throw EBADF(`fstatSync`); + const { + p + } = entry; + const resolvedP = this.resolveFilename(`stat '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`stat '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) throw ENOTDIR(`stat '${p}'`); + return this.statImpl(`fstat '${p}'`, resolvedP, opts); + } + + async lstatPromise(p, opts) { + return this.lstatSync(p, opts); + } + + lstatSync(p, opts) { + const resolvedP = this.resolveFilename(`lstat '${p}'`, p, false); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`lstat '${p}'`); + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) throw ENOTDIR(`lstat '${p}'`); + return this.statImpl(`lstat '${p}'`, resolvedP, opts); + } + + statImpl(reason, p, opts = {}) { + const entry = this.entries.get(p); // File, or explicit directory + + if (typeof entry !== `undefined`) { + const stat = this.libzip.struct.statS(); + const rc = this.libzip.statIndex(this.zip, entry, 0, 0, stat); + if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + const uid = this.stats.uid; + const gid = this.stats.gid; + const size = this.libzip.struct.statSize(stat) >>> 0; + const blksize = 512; + const blocks = Math.ceil(size / blksize); + const mtimeMs = (this.libzip.struct.statMtime(stat) >>> 0) * 1000; + const atimeMs = mtimeMs; + const birthtimeMs = mtimeMs; + const ctimeMs = mtimeMs; + const atime = new Date(atimeMs); + const birthtime = new Date(birthtimeMs); + const ctime = new Date(ctimeMs); + const mtime = new Date(mtimeMs); + const type = this.listings.has(p) ? constants_S_IFDIR : this.isSymbolicLink(entry) ? constants_S_IFLNK : constants_S_IFREG; + const defaultMode = type === constants_S_IFDIR ? 0o755 : 0o644; + const mode = type | this.getUnixMode(entry, defaultMode) & 0o777; + const crc = this.libzip.struct.statCrc(stat); + const statInstance = Object.assign(new StatEntry(), { + uid, + gid, + size, + blksize, + blocks, + atime, + birthtime, + ctime, + mtime, + atimeMs, + birthtimeMs, + ctimeMs, + mtimeMs, + mode, + crc + }); + return opts.bigint === true ? convertToBigIntStats(statInstance) : statInstance; + } // Implicit directory + + + if (this.listings.has(p)) { + const uid = this.stats.uid; + const gid = this.stats.gid; + const size = 0; + const blksize = 512; + const blocks = 0; + const atimeMs = this.stats.mtimeMs; + const birthtimeMs = this.stats.mtimeMs; + const ctimeMs = this.stats.mtimeMs; + const mtimeMs = this.stats.mtimeMs; + const atime = new Date(atimeMs); + const birthtime = new Date(birthtimeMs); + const ctime = new Date(ctimeMs); + const mtime = new Date(mtimeMs); + const mode = constants_S_IFDIR | 0o755; + const crc = 0; + const statInstance = Object.assign(new StatEntry(), { + uid, + gid, + size, + blksize, + blocks, + atime, + birthtime, + ctime, + mtime, + atimeMs, + birthtimeMs, + ctimeMs, + mtimeMs, + mode, + crc + }); + return opts.bigint === true ? convertToBigIntStats(statInstance) : statInstance; + } + + throw new Error(`Unreachable`); + } + + getUnixMode(index, defaultMode) { + const rc = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); + if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; + if (opsys !== this.libzip.ZIP_OPSYS_UNIX) return defaultMode; + return this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; + } + + registerListing(p) { + let listing = this.listings.get(p); + if (listing) return listing; + const parentListing = this.registerListing(ppath.dirname(p)); + listing = new Set(); + parentListing.add(ppath.basename(p)); + this.listings.set(p, listing); + return listing; + } + + registerEntry(p, index) { + const parentListing = this.registerListing(ppath.dirname(p)); + parentListing.add(ppath.basename(p)); + this.entries.set(p, index); + } + + unregisterListing(p) { + this.listings.delete(p); + const parentListing = this.listings.get(ppath.dirname(p)); + parentListing === null || parentListing === void 0 ? void 0 : parentListing.delete(ppath.basename(p)); + } + + unregisterEntry(p) { + this.unregisterListing(p); + const entry = this.entries.get(p); + this.entries.delete(p); + if (typeof entry === `undefined`) return; + this.fileSources.delete(entry); + + if (this.isSymbolicLink(entry)) { + this.symlinkCount--; + } + } + + deleteEntry(p, index) { + this.unregisterEntry(p); + const rc = this.libzip.delete(this.zip, index); + + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + } + + resolveFilename(reason, p, resolveLastComponent = true) { + if (!this.ready) throw EBUSY(`archive closed, ${reason}`); + let resolvedP = ppath.resolve(PortablePath.root, p); + if (resolvedP === `/`) return PortablePath.root; + const fileIndex = this.entries.get(resolvedP); + + if (resolveLastComponent && fileIndex !== undefined) { + if (this.symlinkCount !== 0 && this.isSymbolicLink(fileIndex)) { + const target = this.getFileSource(fileIndex).toString(); + return this.resolveFilename(reason, ppath.resolve(ppath.dirname(resolvedP), target), true); + } else { + return resolvedP; + } + } + + while (true) { + const parentP = this.resolveFilename(reason, ppath.dirname(resolvedP), true); + const isDir = this.listings.has(parentP); + const doesExist = this.entries.has(parentP); + if (!isDir && !doesExist) throw ENOENT(reason); + if (!isDir) throw ENOTDIR(reason); + resolvedP = ppath.resolve(parentP, ppath.basename(resolvedP)); + if (!resolveLastComponent || this.symlinkCount === 0) break; + const index = this.libzip.name.locate(this.zip, resolvedP.slice(1)); + if (index === -1) break; + + if (this.isSymbolicLink(index)) { + const target = this.getFileSource(index).toString(); + resolvedP = ppath.resolve(ppath.dirname(resolvedP), target); + } else { + break; + } + } + + return resolvedP; + } + + allocateBuffer(content) { + if (!Buffer.isBuffer(content)) content = Buffer.from(content); + const buffer = this.libzip.malloc(content.byteLength); + if (!buffer) throw new Error(`Couldn't allocate enough memory`); // Copy the file into the Emscripten heap + + const heap = new Uint8Array(this.libzip.HEAPU8.buffer, buffer, content.byteLength); + heap.set(content); + return { + buffer, + byteLength: content.byteLength + }; + } + + allocateUnattachedSource(content) { + const error = this.libzip.struct.errorS(); + const { + buffer, + byteLength + } = this.allocateBuffer(content); + const source = this.libzip.source.fromUnattachedBuffer(buffer, byteLength, 0, true, error); + + if (source === 0) { + this.libzip.free(error); + throw this.makeLibzipError(error); + } + + return source; + } + + allocateSource(content) { + const { + buffer, + byteLength + } = this.allocateBuffer(content); + const source = this.libzip.source.fromBuffer(this.zip, buffer, byteLength, 0, true); + + if (source === 0) { + this.libzip.free(buffer); + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + + return source; + } + + setFileSource(p, content) { + const buffer = Buffer.isBuffer(content) ? content : Buffer.from(content); + const target = ppath.relative(PortablePath.root, p); + const lzSource = this.allocateSource(content); + + try { + const newIndex = this.libzip.file.add(this.zip, target, lzSource, this.libzip.ZIP_FL_OVERWRITE); + if (newIndex === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + + if (this.level !== `mixed`) { + // Use store for level 0, and deflate for 1..9 + let method; + if (this.level === 0) method = this.libzip.ZIP_CM_STORE;else method = this.libzip.ZIP_CM_DEFLATE; + const rc = this.libzip.file.setCompression(this.zip, newIndex, 0, method, this.level); + + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + } + + this.fileSources.set(newIndex, buffer); + return newIndex; + } catch (error) { + this.libzip.source.free(lzSource); + throw error; + } + } + + isSymbolicLink(index) { + if (this.symlinkCount === 0) return false; + const attrs = this.libzip.file.getExternalAttributes(this.zip, index, 0, 0, this.libzip.uint08S, this.libzip.uint32S); + if (attrs === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + const opsys = this.libzip.getValue(this.libzip.uint08S, `i8`) >>> 0; + if (opsys !== this.libzip.ZIP_OPSYS_UNIX) return false; + const attributes = this.libzip.getValue(this.libzip.uint32S, `i32`) >>> 16; + return (attributes & constants_S_IFMT) === constants_S_IFLNK; + } + + getFileSource(index, opts = { + asyncDecompress: false + }) { + const cachedFileSource = this.fileSources.get(index); + if (typeof cachedFileSource !== `undefined`) return cachedFileSource; + const stat = this.libzip.struct.statS(); + const rc = this.libzip.statIndex(this.zip, index, 0, 0, stat); + if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + const size = this.libzip.struct.statCompSize(stat); + const compressionMethod = this.libzip.struct.statCompMethod(stat); + const buffer = this.libzip.malloc(size); + + try { + const file = this.libzip.fopenIndex(this.zip, index, 0, this.libzip.ZIP_FL_COMPRESSED); + if (file === 0) throw this.makeLibzipError(this.libzip.getError(this.zip)); + + try { + const rc = this.libzip.fread(file, buffer, size, 0); + if (rc === -1) throw this.makeLibzipError(this.libzip.file.getError(file));else if (rc < size) throw new Error(`Incomplete read`);else if (rc > size) throw new Error(`Overread`); + const memory = this.libzip.HEAPU8.subarray(buffer, buffer + size); + const data = Buffer.from(memory); + + if (compressionMethod === 0) { + this.fileSources.set(index, data); + return data; + } else if (opts.asyncDecompress) { + return new Promise((resolve, reject) => { + external_zlib_default().inflateRaw(data, (error, result) => { + if (error) { + reject(error); + } else { + this.fileSources.set(index, result); + resolve(result); + } + }); + }); + } else { + const decompressedData = external_zlib_default().inflateRawSync(data); + this.fileSources.set(index, decompressedData); + return decompressedData; + } + } finally { + this.libzip.fclose(file); + } + } finally { + this.libzip.free(buffer); + } + } + + async chmodPromise(p, mask) { + return this.chmodSync(p, mask); + } + + chmodSync(p, mask) { + if (this.readOnly) throw EROFS(`chmod '${p}'`); // We don't allow to make the extracted entries group-writable + + mask &= 0o755; + const resolvedP = this.resolveFilename(`chmod '${p}'`, p, false); + const entry = this.entries.get(resolvedP); + if (typeof entry === `undefined`) throw new Error(`Assertion failed: The entry should have been registered (${resolvedP})`); + const oldMod = this.getUnixMode(entry, constants_S_IFREG | 0o000); + const newMod = oldMod & ~0o777 | mask; + const rc = this.libzip.file.setExternalAttributes(this.zip, entry, 0, 0, this.libzip.ZIP_OPSYS_UNIX, newMod << 16); + + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + } + + async chownPromise(p, uid, gid) { + return this.chownSync(p, uid, gid); + } + + chownSync(p, uid, gid) { + throw new Error(`Unimplemented`); + } + + async renamePromise(oldP, newP) { + return this.renameSync(oldP, newP); + } + + renameSync(oldP, newP) { + throw new Error(`Unimplemented`); + } + + async copyFilePromise(sourceP, destP, flags) { + const { + indexSource, + indexDest, + resolvedDestP + } = this.prepareCopyFile(sourceP, destP, flags); + const source = await this.getFileSource(indexSource, { + asyncDecompress: true + }); + const newIndex = this.setFileSource(resolvedDestP, source); + + if (newIndex !== indexDest) { + this.registerEntry(resolvedDestP, newIndex); + } + } + + copyFileSync(sourceP, destP, flags = 0) { + const { + indexSource, + indexDest, + resolvedDestP + } = this.prepareCopyFile(sourceP, destP, flags); + const source = this.getFileSource(indexSource); + const newIndex = this.setFileSource(resolvedDestP, source); + + if (newIndex !== indexDest) { + this.registerEntry(resolvedDestP, newIndex); + } + } + + prepareCopyFile(sourceP, destP, flags = 0) { + if (this.readOnly) throw EROFS(`copyfile '${sourceP} -> '${destP}'`); + if ((flags & external_fs_.constants.COPYFILE_FICLONE_FORCE) !== 0) throw ENOSYS(`unsupported clone operation`, `copyfile '${sourceP}' -> ${destP}'`); + const resolvedSourceP = this.resolveFilename(`copyfile '${sourceP} -> ${destP}'`, sourceP); + const indexSource = this.entries.get(resolvedSourceP); + if (typeof indexSource === `undefined`) throw EINVAL(`copyfile '${sourceP}' -> '${destP}'`); + const resolvedDestP = this.resolveFilename(`copyfile '${sourceP}' -> ${destP}'`, destP); + const indexDest = this.entries.get(resolvedDestP); + if ((flags & (external_fs_.constants.COPYFILE_EXCL | external_fs_.constants.COPYFILE_FICLONE_FORCE)) !== 0 && typeof indexDest !== `undefined`) throw EEXIST(`copyfile '${sourceP}' -> '${destP}'`); + return { + indexSource, + resolvedDestP, + indexDest + }; + } + + async appendFilePromise(p, content, opts) { + if (this.readOnly) throw EROFS(`open '${p}'`); + if (typeof opts === `undefined`) opts = { + flag: `a` + };else if (typeof opts === `string`) opts = { + flag: `a`, + encoding: opts + };else if (typeof opts.flag === `undefined`) opts = { + flag: `a`, + ...opts + }; + return this.writeFilePromise(p, content, opts); + } + + appendFileSync(p, content, opts = {}) { + if (this.readOnly) throw EROFS(`open '${p}'`); + if (typeof opts === `undefined`) opts = { + flag: `a` + };else if (typeof opts === `string`) opts = { + flag: `a`, + encoding: opts + };else if (typeof opts.flag === `undefined`) opts = { + flag: `a`, + ...opts + }; + return this.writeFileSync(p, content, opts); + } + + fdToPath(fd, reason) { + var _a; + + const path = (_a = this.fds.get(fd)) === null || _a === void 0 ? void 0 : _a.p; + if (typeof path === `undefined`) throw EBADF(reason); + return path; + } + + async writeFilePromise(p, content, opts) { + const { + encoding, + mode, + index, + resolvedP + } = this.prepareWriteFile(p, opts); + if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) content = Buffer.concat([await this.getFileSource(index, { + asyncDecompress: true + }), Buffer.from(content)]); + if (encoding !== null) content = content.toString(encoding); + const newIndex = this.setFileSource(resolvedP, content); + if (newIndex !== index) this.registerEntry(resolvedP, newIndex); + + if (mode !== null) { + await this.chmodPromise(resolvedP, mode); + } + } + + writeFileSync(p, content, opts) { + const { + encoding, + mode, + index, + resolvedP + } = this.prepareWriteFile(p, opts); + if (index !== undefined && typeof opts === `object` && opts.flag && opts.flag.includes(`a`)) content = Buffer.concat([this.getFileSource(index), Buffer.from(content)]); + if (encoding !== null) content = content.toString(encoding); + const newIndex = this.setFileSource(resolvedP, content); + if (newIndex !== index) this.registerEntry(resolvedP, newIndex); + + if (mode !== null) { + this.chmodSync(resolvedP, mode); + } + } + + prepareWriteFile(p, opts) { + if (typeof p === `number`) p = this.fdToPath(p, `read`); + if (this.readOnly) throw EROFS(`open '${p}'`); + const resolvedP = this.resolveFilename(`open '${p}'`, p); + if (this.listings.has(resolvedP)) throw EISDIR(`open '${p}'`); + let encoding = null, + mode = null; + + if (typeof opts === `string`) { + encoding = opts; + } else if (typeof opts === `object`) { + ({ + encoding = null, + mode = null + } = opts); + } + + const index = this.entries.get(resolvedP); + return { + encoding, + mode, + resolvedP, + index + }; + } + + async unlinkPromise(p) { + return this.unlinkSync(p); + } + + unlinkSync(p) { + if (this.readOnly) throw EROFS(`unlink '${p}'`); + const resolvedP = this.resolveFilename(`unlink '${p}'`, p); + if (this.listings.has(resolvedP)) throw EISDIR(`unlink '${p}'`); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) throw EINVAL(`unlink '${p}'`); + this.deleteEntry(resolvedP, index); + } + + async utimesPromise(p, atime, mtime) { + return this.utimesSync(p, atime, mtime); + } + + utimesSync(p, atime, mtime) { + if (this.readOnly) throw EROFS(`utimes '${p}'`); + const resolvedP = this.resolveFilename(`utimes '${p}'`, p); + this.utimesImpl(resolvedP, mtime); + } + + async lutimesPromise(p, atime, mtime) { + return this.lutimesSync(p, atime, mtime); + } + + lutimesSync(p, atime, mtime) { + if (this.readOnly) throw EROFS(`lutimes '${p}'`); + const resolvedP = this.resolveFilename(`utimes '${p}'`, p, false); + this.utimesImpl(resolvedP, mtime); + } + + utimesImpl(resolvedP, mtime) { + if (this.listings.has(resolvedP)) if (!this.entries.has(resolvedP)) this.hydrateDirectory(resolvedP); + const entry = this.entries.get(resolvedP); + if (entry === undefined) throw new Error(`Unreachable`); + const rc = this.libzip.file.setMtime(this.zip, entry, 0, toUnixTimestamp(mtime), 0); + + if (rc === -1) { + throw this.makeLibzipError(this.libzip.getError(this.zip)); + } + } + + async mkdirPromise(p, opts) { + return this.mkdirSync(p, opts); + } + + mkdirSync(p, { + mode = 0o755, + recursive = false + } = {}) { + if (recursive) { + this.mkdirpSync(p, { + chmod: mode + }); + return; + } + + if (this.readOnly) throw EROFS(`mkdir '${p}'`); + const resolvedP = this.resolveFilename(`mkdir '${p}'`, p); + if (this.entries.has(resolvedP) || this.listings.has(resolvedP)) throw EEXIST(`mkdir '${p}'`); + this.hydrateDirectory(resolvedP); + this.chmodSync(resolvedP, mode); + } + + async rmdirPromise(p, opts) { + return this.rmdirSync(p, opts); + } + + rmdirSync(p, { + recursive = false + } = {}) { + if (this.readOnly) throw EROFS(`rmdir '${p}'`); + + if (recursive) { + this.removeSync(p); + return; + } + + const resolvedP = this.resolveFilename(`rmdir '${p}'`, p); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) throw ENOTDIR(`rmdir '${p}'`); + if (directoryListing.size > 0) throw ENOTEMPTY(`rmdir '${p}'`); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) throw EINVAL(`rmdir '${p}'`); + this.deleteEntry(p, index); + } + + hydrateDirectory(resolvedP) { + const index = this.libzip.dir.add(this.zip, ppath.relative(PortablePath.root, resolvedP)); + if (index === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.registerListing(resolvedP); + this.registerEntry(resolvedP, index); + return index; + } + + async linkPromise(existingP, newP) { + return this.linkSync(existingP, newP); + } + + linkSync(existingP, newP) { + // Zip archives don't support hard links: + // https://stackoverflow.com/questions/8859616/are-hard-links-possible-within-a-zip-archive + throw EOPNOTSUPP(`link '${existingP}' -> '${newP}'`); + } + + async symlinkPromise(target, p) { + return this.symlinkSync(target, p); + } + + symlinkSync(target, p) { + if (this.readOnly) throw EROFS(`symlink '${target}' -> '${p}'`); + const resolvedP = this.resolveFilename(`symlink '${target}' -> '${p}'`, p); + if (this.listings.has(resolvedP)) throw EISDIR(`symlink '${target}' -> '${p}'`); + if (this.entries.has(resolvedP)) throw EEXIST(`symlink '${target}' -> '${p}'`); + const index = this.setFileSource(resolvedP, target); + this.registerEntry(resolvedP, index); + const rc = this.libzip.file.setExternalAttributes(this.zip, index, 0, 0, this.libzip.ZIP_OPSYS_UNIX, (constants_S_IFLNK | 0o777) << 16); + if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); + this.symlinkCount += 1; + } + + async readFilePromise(p, encoding) { + // This is messed up regarding the TS signatures + if (typeof encoding === `object`) // @ts-expect-error + encoding = encoding ? encoding.encoding : undefined; + const data = await this.readFileBuffer(p, { + asyncDecompress: true + }); + return encoding ? data.toString(encoding) : data; + } + + readFileSync(p, encoding) { + // This is messed up regarding the TS signatures + if (typeof encoding === `object`) // @ts-expect-error + encoding = encoding ? encoding.encoding : undefined; + const data = this.readFileBuffer(p); + return encoding ? data.toString(encoding) : data; + } + + readFileBuffer(p, opts = { + asyncDecompress: false + }) { + if (typeof p === `number`) p = this.fdToPath(p, `read`); + const resolvedP = this.resolveFilename(`open '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`open '${p}'`); // Ensures that the last component is a directory, if the user said so (even if it is we'll throw right after with EISDIR anyway) + + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) throw ENOTDIR(`open '${p}'`); + if (this.listings.has(resolvedP)) throw EISDIR(`read`); + const entry = this.entries.get(resolvedP); + if (entry === undefined) throw new Error(`Unreachable`); + return this.getFileSource(entry, opts); + } + + async readdirPromise(p, opts) { + return this.readdirSync(p, opts); + } + + readdirSync(p, opts) { + const resolvedP = this.resolveFilename(`scandir '${p}'`, p); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`scandir '${p}'`); + const directoryListing = this.listings.get(resolvedP); + if (!directoryListing) throw ENOTDIR(`scandir '${p}'`); + const entries = [...directoryListing]; + if (!(opts === null || opts === void 0 ? void 0 : opts.withFileTypes)) return entries; + return entries.map(name => { + return Object.assign(this.statImpl(`lstat`, ppath.join(p, name)), { + name + }); + }); + } + + async readlinkPromise(p) { + const entry = this.prepareReadlink(p); + return (await this.getFileSource(entry, { + asyncDecompress: true + })).toString(); + } + + readlinkSync(p) { + const entry = this.prepareReadlink(p); + return this.getFileSource(entry).toString(); + } + + prepareReadlink(p) { + const resolvedP = this.resolveFilename(`readlink '${p}'`, p, false); + if (!this.entries.has(resolvedP) && !this.listings.has(resolvedP)) throw ENOENT(`readlink '${p}'`); // Ensure that the last component is a directory (if it is we'll throw right after with EISDIR anyway) + + if (p[p.length - 1] === `/` && !this.listings.has(resolvedP)) throw ENOTDIR(`open '${p}'`); + if (this.listings.has(resolvedP)) throw EINVAL(`readlink '${p}'`); + const entry = this.entries.get(resolvedP); + if (entry === undefined) throw new Error(`Unreachable`); + if (!this.isSymbolicLink(entry)) throw EINVAL(`readlink '${p}'`); + return entry; + } + + async truncatePromise(p, len = 0) { + const resolvedP = this.resolveFilename(`open '${p}'`, p); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) throw EINVAL(`open '${p}'`); + const source = await this.getFileSource(index, { + asyncDecompress: true + }); + const truncated = Buffer.alloc(len, 0x00); + source.copy(truncated); + return await this.writeFilePromise(p, truncated); + } + + truncateSync(p, len = 0) { + const resolvedP = this.resolveFilename(`open '${p}'`, p); + const index = this.entries.get(resolvedP); + if (typeof index === `undefined`) throw EINVAL(`open '${p}'`); + const source = this.getFileSource(index); + const truncated = Buffer.alloc(len, 0x00); + source.copy(truncated); + return this.writeFileSync(p, truncated); + } + + watch(p, a, b) { + let persistent; + + switch (typeof a) { + case `function`: + case `string`: + case `undefined`: + { + persistent = true; + } + break; + + default: + { + ({ + persistent = true + } = a); + } + break; + } + + if (!persistent) return { + on: () => {}, + close: () => {} + }; + const interval = setInterval(() => {}, 24 * 60 * 60 * 1000); + return { + on: () => {}, + close: () => { + clearInterval(interval); + } + }; + } + + watchFile(p, a, b) { + const resolvedP = ppath.resolve(PortablePath.root, p); + return watchFile(this, resolvedP, a, b); + } + + unwatchFile(p, cb) { + const resolvedP = ppath.resolve(PortablePath.root, p); + return unwatchFile(this, resolvedP, cb); + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/ZipOpenFS.ts + + + + + + + +const ZIP_FD = 0x80000000; +/** + * Extracts the archive part (ending in the first instance of `extension`) from a path. + * + * The indexOf-based implementation is ~3.7x faster than a RegExp-based implementation. + */ + +const getArchivePart = (path, extension) => { + let idx = path.indexOf(extension); + if (idx <= 0) return null; + let nextCharIdx = idx; + + while (idx >= 0) { + nextCharIdx = idx + extension.length; + if (path[nextCharIdx] === ppath.sep) break; // Disallow files named ".zip" + + if (path[idx - 1] === ppath.sep) return null; + idx = path.indexOf(extension, nextCharIdx); + } // The path either has to end in ".zip" or contain an archive subpath (".zip/...") + + + if (path.length > nextCharIdx && path[nextCharIdx] !== ppath.sep) return null; + return path.slice(0, nextCharIdx); +}; +class ZipOpenFS extends BasePortableFakeFS { + constructor({ + libzip, + baseFs = new NodeFS(), + filter = null, + maxOpenFiles = Infinity, + readOnlyArchives = false, + useCache = true, + maxAge = 5000, + fileExtensions = null + }) { + super(); + this.fdMap = new Map(); + this.nextFd = 3; + this.isZip = new Set(); + this.notZip = new Set(); + this.realPaths = new Map(); + this.limitOpenFilesTimeout = null; + this.libzipFactory = typeof libzip !== `function` ? () => libzip : libzip; + this.baseFs = baseFs; + this.zipInstances = useCache ? new Map() : null; + this.filter = filter; + this.maxOpenFiles = maxOpenFiles; + this.readOnlyArchives = readOnlyArchives; + this.maxAge = maxAge; + this.fileExtensions = fileExtensions; + } + + static async openPromise(fn, opts) { + const zipOpenFs = new ZipOpenFS(opts); + + try { + return await fn(zipOpenFs); + } finally { + zipOpenFs.saveAndClose(); + } + } + + get libzip() { + if (typeof this.libzipInstance === `undefined`) this.libzipInstance = this.libzipFactory(); + return this.libzipInstance; + } + + getExtractHint(hints) { + return this.baseFs.getExtractHint(hints); + } + + getRealPath() { + return this.baseFs.getRealPath(); + } + + saveAndClose() { + unwatchAllFiles(this); + + if (this.zipInstances) { + for (const [path, { + zipFs + }] of this.zipInstances.entries()) { + zipFs.saveAndClose(); + this.zipInstances.delete(path); + } + } + } + + discardAndClose() { + unwatchAllFiles(this); + + if (this.zipInstances) { + for (const [path, { + zipFs + }] of this.zipInstances.entries()) { + zipFs.discardAndClose(); + this.zipInstances.delete(path); + } + } + } + + resolve(p) { + return this.baseFs.resolve(p); + } + + remapFd(zipFs, fd) { + const remappedFd = this.nextFd++ | ZIP_FD; + this.fdMap.set(remappedFd, [zipFs, fd]); + return remappedFd; + } + + async openPromise(p, flags, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.openPromise(p, flags, mode); + }, async (zipFs, { + subPath + }) => { + return this.remapFd(zipFs, await zipFs.openPromise(subPath, flags, mode)); + }); + } + + openSync(p, flags, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.openSync(p, flags, mode); + }, (zipFs, { + subPath + }) => { + return this.remapFd(zipFs, zipFs.openSync(subPath, flags, mode)); + }); + } + + async opendirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.opendirPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.opendirPromise(subPath, opts); + }, { + requireSubpath: false + }); + } + + opendirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.opendirSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.opendirSync(subPath, opts); + }, { + requireSubpath: false + }); + } + + async readPromise(fd, buffer, offset, length, position) { + if ((fd & ZIP_FD) === 0) return await this.baseFs.readPromise(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`read`); + const [zipFs, realFd] = entry; + return await zipFs.readPromise(realFd, buffer, offset, length, position); + } + + readSync(fd, buffer, offset, length, position) { + if ((fd & ZIP_FD) === 0) return this.baseFs.readSync(fd, buffer, offset, length, position); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`readSync`); + const [zipFs, realFd] = entry; + return zipFs.readSync(realFd, buffer, offset, length, position); + } + + async writePromise(fd, buffer, offset, length, position) { + if ((fd & ZIP_FD) === 0) { + if (typeof buffer === `string`) { + return await this.baseFs.writePromise(fd, buffer, offset); + } else { + return await this.baseFs.writePromise(fd, buffer, offset, length, position); + } + } + + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`write`); + const [zipFs, realFd] = entry; + + if (typeof buffer === `string`) { + return await zipFs.writePromise(realFd, buffer, offset); + } else { + return await zipFs.writePromise(realFd, buffer, offset, length, position); + } + } + + writeSync(fd, buffer, offset, length, position) { + if ((fd & ZIP_FD) === 0) { + if (typeof buffer === `string`) { + return this.baseFs.writeSync(fd, buffer, offset); + } else { + return this.baseFs.writeSync(fd, buffer, offset, length, position); + } + } + + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`writeSync`); + const [zipFs, realFd] = entry; + + if (typeof buffer === `string`) { + return zipFs.writeSync(realFd, buffer, offset); + } else { + return zipFs.writeSync(realFd, buffer, offset, length, position); + } + } + + async closePromise(fd) { + if ((fd & ZIP_FD) === 0) return await this.baseFs.closePromise(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`close`); + this.fdMap.delete(fd); + const [zipFs, realFd] = entry; + return await zipFs.closePromise(realFd); + } + + closeSync(fd) { + if ((fd & ZIP_FD) === 0) return this.baseFs.closeSync(fd); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`closeSync`); + this.fdMap.delete(fd); + const [zipFs, realFd] = entry; + return zipFs.closeSync(realFd); + } + + createReadStream(p, opts) { + if (p === null) return this.baseFs.createReadStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createReadStream(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.createReadStream(subPath, opts); + }); + } + + createWriteStream(p, opts) { + if (p === null) return this.baseFs.createWriteStream(p, opts); + return this.makeCallSync(p, () => { + return this.baseFs.createWriteStream(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.createWriteStream(subPath, opts); + }); + } + + async realpathPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.realpathPromise(p); + }, async (zipFs, { + archivePath, + subPath + }) => { + let realArchivePath = this.realPaths.get(archivePath); + + if (typeof realArchivePath === `undefined`) { + realArchivePath = await this.baseFs.realpathPromise(archivePath); + this.realPaths.set(archivePath, realArchivePath); + } + + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(PortablePath.root, await zipFs.realpathPromise(subPath))); + }); + } + + realpathSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.realpathSync(p); + }, (zipFs, { + archivePath, + subPath + }) => { + let realArchivePath = this.realPaths.get(archivePath); + + if (typeof realArchivePath === `undefined`) { + realArchivePath = this.baseFs.realpathSync(archivePath); + this.realPaths.set(archivePath, realArchivePath); + } + + return this.pathUtils.join(realArchivePath, this.pathUtils.relative(PortablePath.root, zipFs.realpathSync(subPath))); + }); + } + + async existsPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.existsPromise(p); + }, async (zipFs, { + subPath + }) => { + return await zipFs.existsPromise(subPath); + }); + } + + existsSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.existsSync(p); + }, (zipFs, { + subPath + }) => { + return zipFs.existsSync(subPath); + }); + } + + async accessPromise(p, mode) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.accessPromise(p, mode); + }, async (zipFs, { + subPath + }) => { + return await zipFs.accessPromise(subPath, mode); + }); + } + + accessSync(p, mode) { + return this.makeCallSync(p, () => { + return this.baseFs.accessSync(p, mode); + }, (zipFs, { + subPath + }) => { + return zipFs.accessSync(subPath, mode); + }); + } + + async statPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.statPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.statPromise(subPath, opts); + }); + } + + statSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.statSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.statSync(subPath, opts); + }); + } + + async fstatPromise(fd, opts) { + if ((fd & ZIP_FD) === 0) return this.baseFs.fstatPromise(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`fstat`); + const [zipFs, realFd] = entry; + return zipFs.fstatPromise(realFd, opts); + } + + fstatSync(fd, opts) { + if ((fd & ZIP_FD) === 0) return this.baseFs.fstatSync(fd, opts); + const entry = this.fdMap.get(fd); + if (typeof entry === `undefined`) throw EBADF(`fstatSync`); + const [zipFs, realFd] = entry; + return zipFs.fstatSync(realFd, opts); + } + + async lstatPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.lstatPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.lstatPromise(subPath, opts); + }); + } + + lstatSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.lstatSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.lstatSync(subPath, opts); + }); + } + + async chmodPromise(p, mask) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chmodPromise(p, mask); + }, async (zipFs, { + subPath + }) => { + return await zipFs.chmodPromise(subPath, mask); + }); + } + + chmodSync(p, mask) { + return this.makeCallSync(p, () => { + return this.baseFs.chmodSync(p, mask); + }, (zipFs, { + subPath + }) => { + return zipFs.chmodSync(subPath, mask); + }); + } + + async chownPromise(p, uid, gid) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.chownPromise(p, uid, gid); + }, async (zipFs, { + subPath + }) => { + return await zipFs.chownPromise(subPath, uid, gid); + }); + } + + chownSync(p, uid, gid) { + return this.makeCallSync(p, () => { + return this.baseFs.chownSync(p, uid, gid); + }, (zipFs, { + subPath + }) => { + return zipFs.chownSync(subPath, uid, gid); + }); + } + + async renamePromise(oldP, newP) { + return await this.makeCallPromise(oldP, async () => { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.renamePromise(oldP, newP); + }, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + }); + }, async (zipFsO, { + subPath: subPathO + }) => { + return await this.makeCallPromise(newP, async () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + }, async (zipFsN, { + subPath: subPathN + }) => { + if (zipFsO !== zipFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + } else { + return await zipFsO.renamePromise(subPathO, subPathN); + } + }); + }); + } + + renameSync(oldP, newP) { + return this.makeCallSync(oldP, () => { + return this.makeCallSync(newP, () => { + return this.baseFs.renameSync(oldP, newP); + }, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + }); + }, (zipFsO, { + subPath: subPathO + }) => { + return this.makeCallSync(newP, () => { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + }, (zipFsN, { + subPath: subPathN + }) => { + if (zipFsO !== zipFsN) { + throw Object.assign(new Error(`EEXDEV: cross-device link not permitted`), { + code: `EEXDEV` + }); + } else { + return zipFsO.renameSync(subPathO, subPathN); + } + }); + }); + } + + async copyFilePromise(sourceP, destP, flags = 0) { + const fallback = async (sourceFs, sourceP, destFs, destP) => { + if ((flags & external_fs_.constants.COPYFILE_FICLONE_FORCE) !== 0) throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { + code: `EXDEV` + }); + if (flags & external_fs_.constants.COPYFILE_EXCL && (await this.existsPromise(sourceP))) throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { + code: `EEXIST` + }); + let content; + + try { + content = await sourceFs.readFilePromise(sourceP); + } catch (error) { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { + code: `EINVAL` + }); + } + + await destFs.writeFilePromise(destP, content); + }; + + return await this.makeCallPromise(sourceP, async () => { + return await this.makeCallPromise(destP, async () => { + return await this.baseFs.copyFilePromise(sourceP, destP, flags); + }, async (zipFsD, { + subPath: subPathD + }) => { + return await fallback(this.baseFs, sourceP, zipFsD, subPathD); + }); + }, async (zipFsS, { + subPath: subPathS + }) => { + return await this.makeCallPromise(destP, async () => { + return await fallback(zipFsS, subPathS, this.baseFs, destP); + }, async (zipFsD, { + subPath: subPathD + }) => { + if (zipFsS !== zipFsD) { + return await fallback(zipFsS, subPathS, zipFsD, subPathD); + } else { + return await zipFsS.copyFilePromise(subPathS, subPathD, flags); + } + }); + }); + } + + copyFileSync(sourceP, destP, flags = 0) { + const fallback = (sourceFs, sourceP, destFs, destP) => { + if ((flags & external_fs_.constants.COPYFILE_FICLONE_FORCE) !== 0) throw Object.assign(new Error(`EXDEV: cross-device clone not permitted, copyfile '${sourceP}' -> ${destP}'`), { + code: `EXDEV` + }); + if (flags & external_fs_.constants.COPYFILE_EXCL && this.existsSync(sourceP)) throw Object.assign(new Error(`EEXIST: file already exists, copyfile '${sourceP}' -> '${destP}'`), { + code: `EEXIST` + }); + let content; + + try { + content = sourceFs.readFileSync(sourceP); + } catch (error) { + throw Object.assign(new Error(`EINVAL: invalid argument, copyfile '${sourceP}' -> '${destP}'`), { + code: `EINVAL` + }); + } + + destFs.writeFileSync(destP, content); + }; + + return this.makeCallSync(sourceP, () => { + return this.makeCallSync(destP, () => { + return this.baseFs.copyFileSync(sourceP, destP, flags); + }, (zipFsD, { + subPath: subPathD + }) => { + return fallback(this.baseFs, sourceP, zipFsD, subPathD); + }); + }, (zipFsS, { + subPath: subPathS + }) => { + return this.makeCallSync(destP, () => { + return fallback(zipFsS, subPathS, this.baseFs, destP); + }, (zipFsD, { + subPath: subPathD + }) => { + if (zipFsS !== zipFsD) { + return fallback(zipFsS, subPathS, zipFsD, subPathD); + } else { + return zipFsS.copyFileSync(subPathS, subPathD, flags); + } + }); + }); + } + + async appendFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.appendFilePromise(p, content, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.appendFilePromise(subPath, content, opts); + }); + } + + appendFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.appendFileSync(p, content, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.appendFileSync(subPath, content, opts); + }); + } + + async writeFilePromise(p, content, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.writeFilePromise(p, content, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.writeFilePromise(subPath, content, opts); + }); + } + + writeFileSync(p, content, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.writeFileSync(p, content, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.writeFileSync(subPath, content, opts); + }); + } + + async unlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.unlinkPromise(p); + }, async (zipFs, { + subPath + }) => { + return await zipFs.unlinkPromise(subPath); + }); + } + + unlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.unlinkSync(p); + }, (zipFs, { + subPath + }) => { + return zipFs.unlinkSync(subPath); + }); + } + + async utimesPromise(p, atime, mtime) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.utimesPromise(p, atime, mtime); + }, async (zipFs, { + subPath + }) => { + return await zipFs.utimesPromise(subPath, atime, mtime); + }); + } + + utimesSync(p, atime, mtime) { + return this.makeCallSync(p, () => { + return this.baseFs.utimesSync(p, atime, mtime); + }, (zipFs, { + subPath + }) => { + return zipFs.utimesSync(subPath, atime, mtime); + }); + } + + async mkdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.mkdirPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.mkdirPromise(subPath, opts); + }); + } + + mkdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.mkdirSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.mkdirSync(subPath, opts); + }); + } + + async rmdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.rmdirPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.rmdirPromise(subPath, opts); + }); + } + + rmdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.rmdirSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.rmdirSync(subPath, opts); + }); + } + + async linkPromise(existingP, newP) { + return await this.makeCallPromise(newP, async () => { + return await this.baseFs.linkPromise(existingP, newP); + }, async (zipFs, { + subPath + }) => { + return await zipFs.linkPromise(existingP, subPath); + }); + } + + linkSync(existingP, newP) { + return this.makeCallSync(newP, () => { + return this.baseFs.linkSync(existingP, newP); + }, (zipFs, { + subPath + }) => { + return zipFs.linkSync(existingP, subPath); + }); + } + + async symlinkPromise(target, p, type) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.symlinkPromise(target, p, type); + }, async (zipFs, { + subPath + }) => { + return await zipFs.symlinkPromise(target, subPath); + }); + } + + symlinkSync(target, p, type) { + return this.makeCallSync(p, () => { + return this.baseFs.symlinkSync(target, p, type); + }, (zipFs, { + subPath + }) => { + return zipFs.symlinkSync(target, subPath); + }); + } + + async readFilePromise(p, encoding) { + return this.makeCallPromise(p, async () => { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return await this.baseFs.readFilePromise(p, encoding); + + default: + return await this.baseFs.readFilePromise(p, encoding); + } + }, async (zipFs, { + subPath + }) => { + return await zipFs.readFilePromise(subPath, encoding); + }); + } + + readFileSync(p, encoding) { + return this.makeCallSync(p, () => { + // This weird switch is required to tell TypeScript that the signatures are proper (otherwise it thinks that only the generic one is covered) + switch (encoding) { + case `utf8`: + return this.baseFs.readFileSync(p, encoding); + + default: + return this.baseFs.readFileSync(p, encoding); + } + }, (zipFs, { + subPath + }) => { + return zipFs.readFileSync(subPath, encoding); + }); + } + + async readdirPromise(p, opts) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readdirPromise(p, opts); + }, async (zipFs, { + subPath + }) => { + return await zipFs.readdirPromise(subPath, opts); + }, { + requireSubpath: false + }); + } + + readdirSync(p, opts) { + return this.makeCallSync(p, () => { + return this.baseFs.readdirSync(p, opts); + }, (zipFs, { + subPath + }) => { + return zipFs.readdirSync(subPath, opts); + }, { + requireSubpath: false + }); + } + + async readlinkPromise(p) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.readlinkPromise(p); + }, async (zipFs, { + subPath + }) => { + return await zipFs.readlinkPromise(subPath); + }); + } + + readlinkSync(p) { + return this.makeCallSync(p, () => { + return this.baseFs.readlinkSync(p); + }, (zipFs, { + subPath + }) => { + return zipFs.readlinkSync(subPath); + }); + } + + async truncatePromise(p, len) { + return await this.makeCallPromise(p, async () => { + return await this.baseFs.truncatePromise(p, len); + }, async (zipFs, { + subPath + }) => { + return await zipFs.truncatePromise(subPath, len); + }); + } + + truncateSync(p, len) { + return this.makeCallSync(p, () => { + return this.baseFs.truncateSync(p, len); + }, (zipFs, { + subPath + }) => { + return zipFs.truncateSync(subPath, len); + }); + } + + watch(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watch(p, // @ts-expect-error + a, b); + }, (zipFs, { + subPath + }) => { + return zipFs.watch(subPath, // @ts-expect-error + a, b); + }); + } + + watchFile(p, a, b) { + return this.makeCallSync(p, () => { + return this.baseFs.watchFile(p, // @ts-expect-error + a, b); + }, () => { + return watchFile(this, p, a, b); + }); + } + + unwatchFile(p, cb) { + return this.makeCallSync(p, () => { + return this.baseFs.unwatchFile(p, cb); + }, () => { + return unwatchFile(this, p, cb); + }); + } + + async makeCallPromise(p, discard, accept, { + requireSubpath = true + } = {}) { + if (typeof p !== `string`) return await discard(); + const normalizedP = this.resolve(p); + const zipInfo = this.findZip(normalizedP); + if (!zipInfo) return await discard(); + if (requireSubpath && zipInfo.subPath === `/`) return await discard(); + return await this.getZipPromise(zipInfo.archivePath, async zipFs => await accept(zipFs, zipInfo)); + } + + makeCallSync(p, discard, accept, { + requireSubpath = true + } = {}) { + if (typeof p !== `string`) return discard(); + const normalizedP = this.resolve(p); + const zipInfo = this.findZip(normalizedP); + if (!zipInfo) return discard(); + if (requireSubpath && zipInfo.subPath === `/`) return discard(); + return this.getZipSync(zipInfo.archivePath, zipFs => accept(zipFs, zipInfo)); + } + + findZip(p) { + if (this.filter && !this.filter.test(p)) return null; + let filePath = ``; + + while (true) { + const pathPartWithArchive = p.substr(filePath.length); + let archivePart; + + if (!this.fileExtensions) { + archivePart = getArchivePart(pathPartWithArchive, `.zip`); + } else { + for (const ext of this.fileExtensions) { + archivePart = getArchivePart(pathPartWithArchive, ext); + + if (archivePart) { + break; + } + } + } + + if (!archivePart) return null; + filePath = this.pathUtils.join(filePath, archivePart); + + if (this.isZip.has(filePath) === false) { + if (this.notZip.has(filePath)) continue; + + try { + if (!this.baseFs.lstatSync(filePath).isFile()) { + this.notZip.add(filePath); + continue; + } + } catch { + return null; + } + + this.isZip.add(filePath); + } + + return { + archivePath: filePath, + subPath: this.pathUtils.join(PortablePath.root, p.substr(filePath.length)) + }; + } + } + + limitOpenFiles(max) { + if (this.zipInstances === null) return; + const now = Date.now(); + let nextExpiresAt = now + this.maxAge; + let closeCount = max === null ? 0 : this.zipInstances.size - max; + + for (const [path, { + zipFs, + expiresAt, + refCount + }] of this.zipInstances.entries()) { + if (refCount !== 0 || zipFs.hasOpenFileHandles()) { + continue; + } else if (now >= expiresAt) { + zipFs.saveAndClose(); + this.zipInstances.delete(path); + closeCount -= 1; + continue; + } else if (max === null || closeCount <= 0) { + nextExpiresAt = expiresAt; + break; + } + + zipFs.saveAndClose(); + this.zipInstances.delete(path); + closeCount -= 1; + } + + if (this.limitOpenFilesTimeout === null && (max === null && this.zipInstances.size > 0 || max !== null)) { + this.limitOpenFilesTimeout = setTimeout(() => { + this.limitOpenFilesTimeout = null; + this.limitOpenFiles(null); + }, nextExpiresAt - now).unref(); + } + } + + async getZipPromise(p, accept) { + const getZipOptions = async () => ({ + baseFs: this.baseFs, + libzip: this.libzip, + readOnly: this.readOnlyArchives, + stats: await this.baseFs.statPromise(p) + }); + + if (this.zipInstances) { + let cachedZipFs = this.zipInstances.get(p); + + if (!cachedZipFs) { + const zipOptions = await getZipOptions(); // We need to recheck because concurrent getZipPromise calls may + // have instantiated the zip archive while we were waiting + + cachedZipFs = this.zipInstances.get(p); + + if (!cachedZipFs) { + cachedZipFs = { + zipFs: new ZipFS(p, zipOptions), + expiresAt: 0, + refCount: 0 + }; + } + } // Removing then re-adding the field allows us to easily implement + // a basic LRU garbage collection strategy + + + this.zipInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.zipInstances.set(p, cachedZipFs); + cachedZipFs.expiresAt = Date.now() + this.maxAge; + cachedZipFs.refCount += 1; + + try { + return await accept(cachedZipFs.zipFs); + } finally { + cachedZipFs.refCount -= 1; + } + } else { + const zipFs = new ZipFS(p, await getZipOptions()); + + try { + return await accept(zipFs); + } finally { + zipFs.saveAndClose(); + } + } + } + + getZipSync(p, accept) { + const getZipOptions = () => ({ + baseFs: this.baseFs, + libzip: this.libzip, + readOnly: this.readOnlyArchives, + stats: this.baseFs.statSync(p) + }); + + if (this.zipInstances) { + let cachedZipFs = this.zipInstances.get(p); + + if (!cachedZipFs) { + cachedZipFs = { + zipFs: new ZipFS(p, getZipOptions()), + expiresAt: 0, + refCount: 0 + }; + } // Removing then re-adding the field allows us to easily implement + // a basic LRU garbage collection strategy + + + this.zipInstances.delete(p); + this.limitOpenFiles(this.maxOpenFiles - 1); + this.zipInstances.set(p, cachedZipFs); + cachedZipFs.expiresAt = Date.now() + this.maxAge; + return accept(cachedZipFs.zipFs); + } else { + const zipFs = new ZipFS(p, getZipOptions()); + + try { + return accept(zipFs); + } finally { + zipFs.saveAndClose(); + } + } + } + +} +;// CONCATENATED MODULE: ../yarnpkg-libzip/sources/makeInterface.ts +const number64 = [`number`, `number` // high +]; +var Errors; + +(function (Errors) { + Errors[Errors["ZIP_ER_OK"] = 0] = "ZIP_ER_OK"; + Errors[Errors["ZIP_ER_MULTIDISK"] = 1] = "ZIP_ER_MULTIDISK"; + Errors[Errors["ZIP_ER_RENAME"] = 2] = "ZIP_ER_RENAME"; + Errors[Errors["ZIP_ER_CLOSE"] = 3] = "ZIP_ER_CLOSE"; + Errors[Errors["ZIP_ER_SEEK"] = 4] = "ZIP_ER_SEEK"; + Errors[Errors["ZIP_ER_READ"] = 5] = "ZIP_ER_READ"; + Errors[Errors["ZIP_ER_WRITE"] = 6] = "ZIP_ER_WRITE"; + Errors[Errors["ZIP_ER_CRC"] = 7] = "ZIP_ER_CRC"; + Errors[Errors["ZIP_ER_ZIPCLOSED"] = 8] = "ZIP_ER_ZIPCLOSED"; + Errors[Errors["ZIP_ER_NOENT"] = 9] = "ZIP_ER_NOENT"; + Errors[Errors["ZIP_ER_EXISTS"] = 10] = "ZIP_ER_EXISTS"; + Errors[Errors["ZIP_ER_OPEN"] = 11] = "ZIP_ER_OPEN"; + Errors[Errors["ZIP_ER_TMPOPEN"] = 12] = "ZIP_ER_TMPOPEN"; + Errors[Errors["ZIP_ER_ZLIB"] = 13] = "ZIP_ER_ZLIB"; + Errors[Errors["ZIP_ER_MEMORY"] = 14] = "ZIP_ER_MEMORY"; + Errors[Errors["ZIP_ER_CHANGED"] = 15] = "ZIP_ER_CHANGED"; + Errors[Errors["ZIP_ER_COMPNOTSUPP"] = 16] = "ZIP_ER_COMPNOTSUPP"; + Errors[Errors["ZIP_ER_EOF"] = 17] = "ZIP_ER_EOF"; + Errors[Errors["ZIP_ER_INVAL"] = 18] = "ZIP_ER_INVAL"; + Errors[Errors["ZIP_ER_NOZIP"] = 19] = "ZIP_ER_NOZIP"; + Errors[Errors["ZIP_ER_INTERNAL"] = 20] = "ZIP_ER_INTERNAL"; + Errors[Errors["ZIP_ER_INCONS"] = 21] = "ZIP_ER_INCONS"; + Errors[Errors["ZIP_ER_REMOVE"] = 22] = "ZIP_ER_REMOVE"; + Errors[Errors["ZIP_ER_DELETED"] = 23] = "ZIP_ER_DELETED"; + Errors[Errors["ZIP_ER_ENCRNOTSUPP"] = 24] = "ZIP_ER_ENCRNOTSUPP"; + Errors[Errors["ZIP_ER_RDONLY"] = 25] = "ZIP_ER_RDONLY"; + Errors[Errors["ZIP_ER_NOPASSWD"] = 26] = "ZIP_ER_NOPASSWD"; + Errors[Errors["ZIP_ER_WRONGPASSWD"] = 27] = "ZIP_ER_WRONGPASSWD"; + Errors[Errors["ZIP_ER_OPNOTSUPP"] = 28] = "ZIP_ER_OPNOTSUPP"; + Errors[Errors["ZIP_ER_INUSE"] = 29] = "ZIP_ER_INUSE"; + Errors[Errors["ZIP_ER_TELL"] = 30] = "ZIP_ER_TELL"; + Errors[Errors["ZIP_ER_COMPRESSED_DATA"] = 31] = "ZIP_ER_COMPRESSED_DATA"; +})(Errors || (Errors = {})); + +const makeInterface = libzip => ({ + // Those are getters because they can change after memory growth + get HEAP8() { + return libzip.HEAP8; + }, + + get HEAPU8() { + return libzip.HEAPU8; + }, + + errors: Errors, + SEEK_SET: 0, + SEEK_CUR: 1, + SEEK_END: 2, + ZIP_CHECKCONS: 4, + ZIP_CREATE: 1, + ZIP_EXCL: 2, + ZIP_TRUNCATE: 8, + ZIP_RDONLY: 16, + ZIP_FL_OVERWRITE: 8192, + ZIP_FL_COMPRESSED: 4, + ZIP_OPSYS_DOS: 0x00, + ZIP_OPSYS_AMIGA: 0x01, + ZIP_OPSYS_OPENVMS: 0x02, + ZIP_OPSYS_UNIX: 0x03, + ZIP_OPSYS_VM_CMS: 0x04, + ZIP_OPSYS_ATARI_ST: 0x05, + ZIP_OPSYS_OS_2: 0x06, + ZIP_OPSYS_MACINTOSH: 0x07, + ZIP_OPSYS_Z_SYSTEM: 0x08, + ZIP_OPSYS_CPM: 0x09, + ZIP_OPSYS_WINDOWS_NTFS: 0x0a, + ZIP_OPSYS_MVS: 0x0b, + ZIP_OPSYS_VSE: 0x0c, + ZIP_OPSYS_ACORN_RISC: 0x0d, + ZIP_OPSYS_VFAT: 0x0e, + ZIP_OPSYS_ALTERNATE_MVS: 0x0f, + ZIP_OPSYS_BEOS: 0x10, + ZIP_OPSYS_TANDEM: 0x11, + ZIP_OPSYS_OS_400: 0x12, + ZIP_OPSYS_OS_X: 0x13, + ZIP_CM_DEFAULT: -1, + ZIP_CM_STORE: 0, + ZIP_CM_DEFLATE: 8, + uint08S: libzip._malloc(1), + uint16S: libzip._malloc(2), + uint32S: libzip._malloc(4), + uint64S: libzip._malloc(8), + malloc: libzip._malloc, + free: libzip._free, + getValue: libzip.getValue, + open: libzip.cwrap(`zip_open`, `number`, [`string`, `number`, `number`]), + openFromSource: libzip.cwrap(`zip_open_from_source`, `number`, [`number`, `number`, `number`]), + close: libzip.cwrap(`zip_close`, `number`, [`number`]), + discard: libzip.cwrap(`zip_discard`, null, [`number`]), + getError: libzip.cwrap(`zip_get_error`, `number`, [`number`]), + getName: libzip.cwrap(`zip_get_name`, `string`, [`number`, `number`, `number`]), + getNumEntries: libzip.cwrap(`zip_get_num_entries`, `number`, [`number`, `number`]), + delete: libzip.cwrap(`zip_delete`, `number`, [`number`, `number`]), + stat: libzip.cwrap(`zip_stat`, `number`, [`number`, `string`, `number`, `number`]), + statIndex: libzip.cwrap(`zip_stat_index`, `number`, [`number`, ...number64, `number`, `number`]), + fopen: libzip.cwrap(`zip_fopen`, `number`, [`number`, `string`, `number`]), + fopenIndex: libzip.cwrap(`zip_fopen_index`, `number`, [`number`, ...number64, `number`]), + fread: libzip.cwrap(`zip_fread`, `number`, [`number`, `number`, `number`, `number`]), + fclose: libzip.cwrap(`zip_fclose`, `number`, [`number`]), + dir: { + add: libzip.cwrap(`zip_dir_add`, `number`, [`number`, `string`]) + }, + file: { + add: libzip.cwrap(`zip_file_add`, `number`, [`number`, `string`, `number`, `number`]), + getError: libzip.cwrap(`zip_file_get_error`, `number`, [`number`]), + getExternalAttributes: libzip.cwrap(`zip_file_get_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]), + setExternalAttributes: libzip.cwrap(`zip_file_set_external_attributes`, `number`, [`number`, ...number64, `number`, `number`, `number`]), + setMtime: libzip.cwrap(`zip_file_set_mtime`, `number`, [`number`, ...number64, `number`, `number`]), + setCompression: libzip.cwrap(`zip_set_file_compression`, `number`, [`number`, ...number64, `number`, `number`]) + }, + ext: { + countSymlinks: libzip.cwrap(`zip_ext_count_symlinks`, `number`, [`number`]) + }, + error: { + initWithCode: libzip.cwrap(`zip_error_init_with_code`, null, [`number`, `number`]), + strerror: libzip.cwrap(`zip_error_strerror`, `string`, [`number`]) + }, + name: { + locate: libzip.cwrap(`zip_name_locate`, `number`, [`number`, `string`, `number`]) + }, + source: { + fromUnattachedBuffer: libzip.cwrap(`zip_source_buffer_create`, `number`, [`number`, `number`, `number`, `number`]), + fromBuffer: libzip.cwrap(`zip_source_buffer`, `number`, [`number`, `number`, ...number64, `number`]), + free: libzip.cwrap(`zip_source_free`, null, [`number`]), + keep: libzip.cwrap(`zip_source_keep`, null, [`number`]), + open: libzip.cwrap(`zip_source_open`, `number`, [`number`]), + close: libzip.cwrap(`zip_source_close`, `number`, [`number`]), + seek: libzip.cwrap(`zip_source_seek`, `number`, [`number`, ...number64, `number`]), + tell: libzip.cwrap(`zip_source_tell`, `number`, [`number`]), + read: libzip.cwrap(`zip_source_read`, `number`, [`number`, `number`, `number`]), + error: libzip.cwrap(`zip_source_error`, `number`, [`number`]), + setMtime: libzip.cwrap(`zip_source_set_mtime`, `number`, [`number`, `number`]) + }, + struct: { + stat: libzip.cwrap(`zipstruct_stat`, `number`, []), + statS: libzip.cwrap(`zipstruct_statS`, `number`, []), + statName: libzip.cwrap(`zipstruct_stat_name`, `string`, [`number`]), + statIndex: libzip.cwrap(`zipstruct_stat_index`, `number`, [`number`]), + statSize: libzip.cwrap(`zipstruct_stat_size`, `number`, [`number`]), + statCompSize: libzip.cwrap(`zipstruct_stat_comp_size`, `number`, [`number`]), + statCompMethod: libzip.cwrap(`zipstruct_stat_comp_method`, `number`, [`number`]), + statMtime: libzip.cwrap(`zipstruct_stat_mtime`, `number`, [`number`]), + statCrc: libzip.cwrap(`zipstruct_stat_crc`, `number`, [`number`]), + error: libzip.cwrap(`zipstruct_error`, `number`, []), + errorS: libzip.cwrap(`zipstruct_errorS`, `number`, []), + errorCodeZip: libzip.cwrap(`zipstruct_error_code_zip`, `number`, [`number`]) + } +}); +;// CONCATENATED MODULE: ../yarnpkg-libzip/sources/sync.ts + +let mod = null; +function getLibzipSync() { + if (mod === null) mod = makeInterface(__webpack_require__(368)); + return mod; +} +async function getLibzipPromise() { + return getLibzipSync(); +} +// EXTERNAL MODULE: external "module" +var external_module_ = __webpack_require__(282); +var external_module_default = /*#__PURE__*/__webpack_require__.n(external_module_); +;// CONCATENATED MODULE: external "string_decoder" +const external_string_decoder_namespaceObject = require("string_decoder");; +var external_string_decoder_default = /*#__PURE__*/__webpack_require__.n(external_string_decoder_namespaceObject); +;// CONCATENATED MODULE: external "url" +const external_url_namespaceObject = require("url");; +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/URLFS.ts + + + +/** + * Adds support for file URLs to the wrapped `baseFs`, but *not* inside the typings. + * + * Only exists for compatibility with Node's behavior. + * + * Automatically wraps all FS instances passed to `patchFs` & `extendFs`. + * + * Don't use it! + */ + +class URLFS extends ProxiedFS { + constructor(baseFs) { + super(npath); + this.baseFs = baseFs; + } + + mapFromBase(path) { + return path; + } + + mapToBase(path) { + if (path instanceof external_url_namespaceObject.URL) return (0,external_url_namespaceObject.fileURLToPath)(path); + return path; + } + +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/patchFs.ts + + +const SYNC_IMPLEMENTATIONS = new Set([`accessSync`, `appendFileSync`, `createReadStream`, `createWriteStream`, `chmodSync`, `chownSync`, `closeSync`, `copyFileSync`, `linkSync`, `lstatSync`, `fstatSync`, `lutimesSync`, `mkdirSync`, `openSync`, `opendirSync`, `readSync`, `readlinkSync`, `readFileSync`, `readdirSync`, `readlinkSync`, `realpathSync`, `renameSync`, `rmdirSync`, `statSync`, `symlinkSync`, `truncateSync`, `unlinkSync`, `unwatchFile`, `utimesSync`, `watch`, `watchFile`, `writeFileSync`, `writeSync`]); +const ASYNC_IMPLEMENTATIONS = new Set([`accessPromise`, `appendFilePromise`, `chmodPromise`, `chownPromise`, `closePromise`, `copyFilePromise`, `linkPromise`, `fstatPromise`, `lstatPromise`, `lutimesPromise`, `mkdirPromise`, `openPromise`, `opendirPromise`, `readdirPromise`, `realpathPromise`, `readFilePromise`, `readdirPromise`, `readlinkPromise`, `renamePromise`, `rmdirPromise`, `statPromise`, `symlinkPromise`, `truncatePromise`, `unlinkPromise`, `utimesPromise`, `writeFilePromise`, `writeSync`]); +const FILEHANDLE_IMPLEMENTATIONS = new Set([`appendFilePromise`, `chmodPromise`, `chownPromise`, `closePromise`, `readPromise`, `readFilePromise`, `statPromise`, `truncatePromise`, `utimesPromise`, `writePromise`, `writeFilePromise`]); +function patchFs(patchedFs, fakeFs) { + // We wrap the `fakeFs` with a `URLFS` to add support for URL instances + fakeFs = new URLFS(fakeFs); + + const setupFn = (target, name, replacement) => { + const orig = target[name]; + target[name] = replacement; // Preserve any util.promisify implementations + + if (typeof (orig === null || orig === void 0 ? void 0 : orig[external_util_namespaceObject.promisify.custom]) !== `undefined`) { + replacement[external_util_namespaceObject.promisify.custom] = orig[external_util_namespaceObject.promisify.custom]; + } + }; + /** Callback implementations */ + + + { + setupFn(patchedFs, `exists`, (p, ...args) => { + const hasCallback = typeof args[args.length - 1] === `function`; + const callback = hasCallback ? args.pop() : () => {}; + process.nextTick(() => { + fakeFs.existsPromise(p).then(exists => { + callback(exists); + }, () => { + callback(false); + }); + }); + }); + setupFn(patchedFs, `read`, (p, buffer, ...args) => { + const hasCallback = typeof args[args.length - 1] === `function`; + const callback = hasCallback ? args.pop() : () => {}; + process.nextTick(() => { + fakeFs.readPromise(p, buffer, ...args).then(bytesRead => { + callback(null, bytesRead, buffer); + }, error => { + // https://github.com/nodejs/node/blob/1317252dfe8824fd9cfee125d2aaa94004db2f3b/lib/fs.js#L655-L658 + // Known issue: bytesRead could theoretically be > than 0, but we currently always return 0 + callback(error, 0, buffer); + }); + }); + }); + + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFs[origName] === `undefined`) continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) continue; + + const wrapper = (...args) => { + const hasCallback = typeof args[args.length - 1] === `function`; + const callback = hasCallback ? args.pop() : () => {}; + process.nextTick(() => { + fakeImpl.apply(fakeFs, args).then(result => { + callback(null, result); + }, error => { + callback(error); + }); + }); + }; + + setupFn(patchedFs, origName, wrapper); + } + + patchedFs.realpath.native = patchedFs.realpath; + } + /** Sync implementations */ + + { + setupFn(patchedFs, `existsSync`, p => { + try { + return fakeFs.existsSync(p); + } catch (error) { + return false; + } + }); + + for (const fnName of SYNC_IMPLEMENTATIONS) { + const origName = fnName; + if (typeof patchedFs[origName] === `undefined`) continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) continue; + setupFn(patchedFs, origName, fakeImpl.bind(fakeFs)); + } + + patchedFs.realpathSync.native = patchedFs.realpathSync; + } + /** Promise implementations */ + + { + // `fs.promises` is a getter that returns a reference to require(`fs/promises`), + // so we can just patch `fs.promises` and both will be updated + const origEmitWarning = process.emitWarning; + + process.emitWarning = () => {}; + + let patchedFsPromises; + + try { + patchedFsPromises = patchedFs.promises; + } finally { + process.emitWarning = origEmitWarning; + } + + if (typeof patchedFsPromises !== `undefined`) { + // `fs.promises.exists` doesn't exist + for (const fnName of ASYNC_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + if (typeof patchedFsPromises[origName] === `undefined`) continue; + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) continue; // Open is a bit particular with fs.promises: it returns a file handle + // instance instead of the traditional file descriptor number + + if (fnName === `open`) continue; + setupFn(patchedFsPromises, origName, fakeImpl.bind(fakeFs)); + } + + class FileHandle { + constructor(fd) { + this.fd = fd; + } + + } + + for (const fnName of FILEHANDLE_IMPLEMENTATIONS) { + const origName = fnName.replace(/Promise$/, ``); + const fakeImpl = fakeFs[fnName]; + if (typeof fakeImpl === `undefined`) continue; + setupFn(FileHandle.prototype, origName, function (...args) { + return fakeImpl.call(fakeFs, this.fd, ...args); + }); + } + + setupFn(patchedFsPromises, `open`, async (...args) => { + // @ts-expect-error + const fd = await fakeFs.openPromise(...args); + return new FileHandle(fd); + }); // `fs.promises.realpath` doesn't have a `native` property + } + } + /** util.promisify implementations */ + + { + // Override the promisified version of `fs.read` to return an object as per + // https://github.com/nodejs/node/blob/dc79f3f37caf6f25b8efee4623bec31e2c20f595/lib/fs.js#L559-L560 + // and + // https://github.com/nodejs/node/blob/ba684805b6c0eded76e5cd89ee00328ac7a59365/lib/internal/util.js#L293 + // @ts-expect-error + patchedFs.read[external_util_namespaceObject.promisify.custom] = async (p, buffer, ...args) => { + const res = fakeFs.readPromise(p, buffer, ...args); + return { + bytesRead: await res, + buffer + }; + }; + } +} +function extendFs(realFs, fakeFs) { + const patchedFs = Object.create(realFs); + patchFs(patchedFs, fakeFs); + return patchedFs; +} +;// CONCATENATED MODULE: ../yarnpkg-fslib/sources/PosixFS.ts + + +class PosixFS extends ProxiedFS { + constructor(baseFs) { + super(npath); + this.baseFs = baseFs; + } + + mapFromBase(path) { + return npath.fromPortablePath(path); + } + + mapToBase(path) { + return npath.toPortablePath(path); + } + +} +;// CONCATENATED MODULE: ./sources/loader/internalTools.ts + +var ErrorCode; + +(function (ErrorCode) { + ErrorCode["API_ERROR"] = "API_ERROR"; + ErrorCode["BUILTIN_NODE_RESOLUTION_FAILED"] = "BUILTIN_NODE_RESOLUTION_FAILED"; + ErrorCode["MISSING_DEPENDENCY"] = "MISSING_DEPENDENCY"; + ErrorCode["MISSING_PEER_DEPENDENCY"] = "MISSING_PEER_DEPENDENCY"; + ErrorCode["QUALIFIED_PATH_RESOLUTION_FAILED"] = "QUALIFIED_PATH_RESOLUTION_FAILED"; + ErrorCode["INTERNAL"] = "INTERNAL"; + ErrorCode["UNDECLARED_DEPENDENCY"] = "UNDECLARED_DEPENDENCY"; + ErrorCode["UNSUPPORTED"] = "UNSUPPORTED"; +})(ErrorCode || (ErrorCode = {})); // Some errors are exposed as MODULE_NOT_FOUND for compatibility with packages +// that expect this umbrella error when the resolution fails + + +const MODULE_NOT_FOUND_ERRORS = new Set([ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, ErrorCode.MISSING_DEPENDENCY, ErrorCode.MISSING_PEER_DEPENDENCY, ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, ErrorCode.UNDECLARED_DEPENDENCY]); +/** + * Simple helper function that assign an error code to an error, so that it can more easily be caught and used + * by third-parties. + */ + +function internalTools_makeError(pnpCode, message, data = {}) { + const code = MODULE_NOT_FOUND_ERRORS.has(pnpCode) ? `MODULE_NOT_FOUND` : pnpCode; + const propertySpec = { + configurable: true, + writable: true, + enumerable: false + }; + return Object.defineProperties(new Error(message), { + code: { ...propertySpec, + value: code + }, + pnpCode: { ...propertySpec, + value: pnpCode + }, + data: { ...propertySpec, + value: data + } + }); +} +/** + * Returns the module that should be used to resolve require calls. It's usually the direct parent, except if we're + * inside an eval expression. + */ + +function getIssuerModule(parent) { + let issuer = parent; + + while (issuer && (issuer.id === `[eval]` || issuer.id === `` || !issuer.filename)) issuer = issuer.parent; + + return issuer || null; +} +function getPathForDisplay(p) { + return npath.normalize(npath.fromPortablePath(p)); +} +;// CONCATENATED MODULE: ./sources/loader/nodeUtils.ts + + + // @ts-expect-error + +const builtinModules = new Set(external_module_.Module.builtinModules || Object.keys(process.binding(`natives`))); +const isBuiltinModule = request => request.startsWith(`node:`) || builtinModules.has(request); // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/run_main.js#L11-L24 + +function resolveMainPath(main) { + let mainPath = external_module_.Module._findPath(npath.resolve(main), null, true); + + if (!mainPath) return false; // const preserveSymlinksMain = getOptionValue(`--preserve-symlinks-main`); + // if (!preserveSymlinksMain) + + mainPath = external_fs_default().realpathSync(mainPath); + return mainPath; +} // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/run_main.js#L26-L41 + +function shouldUseESMLoader(mainPath) { + // const userLoader = getOptionValue(`--experimental-loader`); + // if (userLoader) + // return true; + // const esModuleSpecifierResolution = + // getOptionValue(`--experimental-specifier-resolution`); + // if (esModuleSpecifierResolution === `node`) + // return true; + // Determine the module format of the main + if (mainPath && mainPath.endsWith(`.mjs`)) return true; + if (!mainPath || mainPath.endsWith(`.cjs`)) return false; + const pkg = readPackageScope(mainPath); + return pkg && pkg.data.type === `module`; +} // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/cjs/loader.js#L315-L330 + +function readPackageScope(checkPath) { + const rootSeparatorIndex = checkPath.indexOf(npath.sep); + let separatorIndex; + + do { + separatorIndex = checkPath.lastIndexOf(npath.sep); + checkPath = checkPath.slice(0, separatorIndex); + if (checkPath.endsWith(`${npath.sep}node_modules`)) return false; + const pjson = readPackage(checkPath + npath.sep); + + if (pjson) { + return { + data: pjson, + path: checkPath + }; + } + } while (separatorIndex > rootSeparatorIndex); + + return false; +} // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/cjs/loader.js#L284-L313 + +function readPackage(requestPath) { + const jsonPath = npath.resolve(requestPath, `package.json`); + if (!external_fs_default().existsSync(jsonPath)) return null; + return JSON.parse(external_fs_default().readFileSync(jsonPath, `utf8`)); +} +;// CONCATENATED MODULE: ./sources/loader/applyPatch.ts + + + + + + +function applyPatch(pnpapi, opts) { + /** + * The cache that will be used for all accesses occurring outside of a PnP context. + */ + const defaultCache = {}; + /** + * Used to disable the resolution hooks (for when we want to fallback to the previous resolution - we then need + * a way to "reset" the environment temporarily) + */ + + let enableNativeHooks = true; // @ts-expect-error + + process.versions.pnp = String(pnpapi.VERSIONS.std); + + const moduleExports = __webpack_require__(282); + + moduleExports.findPnpApi = lookupSource => { + const lookupPath = lookupSource instanceof external_url_namespaceObject.URL ? (0,external_url_namespaceObject.fileURLToPath)(lookupSource) : lookupSource; + const apiPath = opts.manager.findApiPathFor(lookupPath); + if (apiPath === null) return null; + const apiEntry = opts.manager.getApiEntry(apiPath, true); // Check if the path is ignored + + return apiEntry.instance.findPackageLocator(lookupPath) ? apiEntry.instance : null; + }; + + function getRequireStack(parent) { + const requireStack = []; + + for (let cursor = parent; cursor; cursor = cursor.parent) requireStack.push(cursor.filename || cursor.id); + + return requireStack; + } // A small note: we don't replace the cache here (and instead use the native one). This is an effort to not + // break code similar to "delete require.cache[require.resolve(FOO)]", where FOO is a package located outside + // of the Yarn dependency tree. In this case, we defer the load to the native loader. If we were to replace the + // cache by our own, the native loader would populate its own cache, which wouldn't be exposed anymore, so the + // delete call would be broken. + + + const originalModuleLoad = external_module_.Module._load; + + external_module_.Module._load = function (request, parent, isMain) { + if (!enableNativeHooks) return originalModuleLoad.call(external_module_.Module, request, parent, isMain); // Builtins are managed by the regular Node loader + + if (isBuiltinModule(request)) { + try { + enableNativeHooks = false; + return originalModuleLoad.call(external_module_.Module, request, parent, isMain); + } finally { + enableNativeHooks = true; + } + } + + const parentApiPath = opts.manager.getApiPathFromParent(parent); + const parentApi = parentApiPath !== null ? opts.manager.getApiEntry(parentApiPath, true).instance : null; // Requests that aren't covered by the PnP runtime goes through the + // parent `_load` implementation. This is required for VSCode, for example, + // which override `_load` to provide additional builtins to its extensions. + + if (parentApi === null) return originalModuleLoad(request, parent, isMain); // The 'pnpapi' name is reserved to return the PnP api currently in use + // by the program + + if (request === `pnpapi`) return parentApi; // Request `Module._resolveFilename` (ie. `resolveRequest`) to tell us + // which file we should load + + const modulePath = external_module_.Module._resolveFilename(request, parent, isMain); // We check whether the module is owned by the dependency tree of the + // module that required it. If it isn't, then we need to create a new + // store and possibly load its sandboxed PnP runtime. + + + const isOwnedByRuntime = parentApi !== null ? parentApi.findPackageLocator(modulePath) !== null : false; + const moduleApiPath = isOwnedByRuntime ? parentApiPath : opts.manager.findApiPathFor(npath.dirname(modulePath)); + const entry = moduleApiPath !== null ? opts.manager.getApiEntry(moduleApiPath) : { + instance: null, + cache: defaultCache + }; // Check if the module has already been created for the given file + + const cacheEntry = entry.cache[modulePath]; + + if (cacheEntry) { + // When a dynamic import is used in CJS files Node adds the module + // to the cache but doesn't load it so we do it here. + // + // Keep track of and check if the module is already loading to + // handle circular requires. + // + // The explicit checks are required since `@babel/register` et al. + // create modules without the `loaded` and `load` properties + if (cacheEntry.loaded === false && cacheEntry.isLoading !== true) { + try { + cacheEntry.isLoading = true; + cacheEntry.load(modulePath); + } finally { + cacheEntry.isLoading = false; + } + } + + return cacheEntry.exports; + } // Create a new module and store it into the cache + + + const module = new external_module_.Module(modulePath, parent !== null && parent !== void 0 ? parent : undefined); + module.pnpApiPath = moduleApiPath; + entry.cache[modulePath] = module; // The main module is exposed as global variable + + if (isMain) { + process.mainModule = module; + module.id = `.`; + } // Try to load the module, and remove it from the cache if it fails + + + let hasThrown = true; + + try { + module.isLoading = true; + module.load(modulePath); + hasThrown = false; + } finally { + module.isLoading = false; + + if (hasThrown) { + delete external_module_.Module._cache[modulePath]; + } + } + + return module.exports; + }; + + function getIssuerSpecsFromPaths(paths) { + return paths.map(path => ({ + apiPath: opts.manager.findApiPathFor(path), + path, + module: null + })); + } + + function getIssuerSpecsFromModule(module) { + var _a; + + if (module && module.id !== `` && module.id !== `internal/preload` && !module.parent && !module.filename && module.paths.length > 0) { + return [{ + apiPath: opts.manager.findApiPathFor(module.paths[0]), + path: module.paths[0], + module + }]; + } + + const issuer = getIssuerModule(module); + + if (issuer !== null) { + const path = npath.dirname(issuer.filename); + const apiPath = opts.manager.getApiPathFromParent(issuer); + return [{ + apiPath, + path, + module + }]; + } else { + const path = process.cwd(); + const apiPath = (_a = opts.manager.findApiPathFor(npath.join(path, `[file]`))) !== null && _a !== void 0 ? _a : opts.manager.getApiPathFromParent(null); + return [{ + apiPath, + path, + module + }]; + } + } + + function makeFakeParent(path) { + const fakeParent = new external_module_.Module(``); + const fakeFilePath = npath.join(path, `[file]`); + fakeParent.paths = external_module_.Module._nodeModulePaths(fakeFilePath); + return fakeParent; + } // Splits a require request into its components, or return null if the request is a file path + + + const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/; + const originalModuleResolveFilename = external_module_.Module._resolveFilename; + + external_module_.Module._resolveFilename = function (request, parent, isMain, options) { + if (isBuiltinModule(request)) return request; + if (!enableNativeHooks) return originalModuleResolveFilename.call(external_module_.Module, request, parent, isMain, options); + + if (options && options.plugnplay === false) { + const { + plugnplay, + ...rest + } = options; // Workaround a bug present in some version of Node (now fixed) + // https://github.com/nodejs/node/pull/28078 + + const forwardedOptions = Object.keys(rest).length > 0 ? rest : undefined; + + try { + enableNativeHooks = false; + return originalModuleResolveFilename.call(external_module_.Module, request, parent, isMain, forwardedOptions); + } finally { + enableNativeHooks = true; + } + } // We check that all the options present here are supported; better + // to fail fast than to introduce subtle bugs in the runtime. + + + if (options) { + const optionNames = new Set(Object.keys(options)); + optionNames.delete(`paths`); + optionNames.delete(`plugnplay`); + + if (optionNames.size > 0) { + throw internalTools_makeError(ErrorCode.UNSUPPORTED, `Some options passed to require() aren't supported by PnP yet (${Array.from(optionNames).join(`, `)})`); + } + } + + const issuerSpecs = options && options.paths ? getIssuerSpecsFromPaths(options.paths) : getIssuerSpecsFromModule(parent); + + if (request.match(pathRegExp) === null) { + const parentDirectory = (parent === null || parent === void 0 ? void 0 : parent.filename) != null ? npath.dirname(parent.filename) : null; + const absoluteRequest = npath.isAbsolute(request) ? request : parentDirectory !== null ? npath.resolve(parentDirectory, request) : null; + + if (absoluteRequest !== null) { + const apiPath = parentDirectory === npath.dirname(absoluteRequest) && (parent === null || parent === void 0 ? void 0 : parent.pnpApiPath) ? parent.pnpApiPath : opts.manager.findApiPathFor(absoluteRequest); + + if (apiPath !== null) { + issuerSpecs.unshift({ + apiPath, + path: parentDirectory, + module: null + }); + } + } + } + + let firstError; + + for (const { + apiPath, + path, + module + } of issuerSpecs) { + let resolution; + const issuerApi = apiPath !== null ? opts.manager.getApiEntry(apiPath, true).instance : null; + + try { + if (issuerApi !== null) { + resolution = issuerApi.resolveRequest(request, path !== null ? `${path}/` : null); + } else { + if (path === null) throw new Error(`Assertion failed: Expected the path to be set`); + resolution = originalModuleResolveFilename.call(external_module_.Module, request, module || makeFakeParent(path), isMain); + } + } catch (error) { + firstError = firstError || error; + continue; + } + + if (resolution !== null) { + return resolution; + } + } + + const requireStack = getRequireStack(parent); + Object.defineProperty(firstError, `requireStack`, { + configurable: true, + writable: true, + enumerable: false, + value: requireStack + }); + if (requireStack.length > 0) firstError.message += `\nRequire stack:\n- ${requireStack.join(`\n- `)}`; + if (typeof firstError.pnpCode === `string`) Error.captureStackTrace(firstError); + throw firstError; + }; + + const originalFindPath = external_module_.Module._findPath; + + external_module_.Module._findPath = function (request, paths, isMain) { + if (request === `pnpapi`) return false; + if (!enableNativeHooks) return originalFindPath.call(external_module_.Module, request, paths, isMain); // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/cjs/loader.js#L490-L494 + + const isAbsolute = npath.isAbsolute(request); + if (isAbsolute) paths = [``];else if (!paths || paths.length === 0) return false; + + for (const path of paths) { + let resolution; + + try { + const pnpApiPath = opts.manager.findApiPathFor(isAbsolute ? request : path); + + if (pnpApiPath !== null) { + const api = opts.manager.getApiEntry(pnpApiPath, true).instance; + resolution = api.resolveRequest(request, path) || false; + } else { + resolution = originalFindPath.call(external_module_.Module, request, [path], isMain); + } + } catch (error) { + continue; + } + + if (resolution) { + return resolution; + } + } + + return false; + }; // Specifying the `--experimental-loader` flag makes Node enter ESM mode so we change it to not do that + // https://github.com/nodejs/node/blob/e817ba70f56c4bfd5d4a68dce8b165142312e7b6/lib/internal/modules/run_main.js#L72-L81 + // Tested by https://github.com/yarnpkg/berry/blob/d80ee2dc5298d31eb864288d77671a2264713371/packages/acceptance-tests/pkg-tests-specs/sources/pnp-esm.test.ts#L226-L244 + // Upstream issue https://github.com/nodejs/node/issues/33226 + + + const originalRunMain = moduleExports.runMain; + + moduleExports.runMain = function (main = process.argv[1]) { + const resolvedMain = resolveMainPath(main); + const useESMLoader = resolvedMain ? shouldUseESMLoader(resolvedMain) : false; + + if (useESMLoader) { + originalRunMain(main); + } else { + external_module_.Module._load(main, null, true); + } + }; + + patchFs((external_fs_default()), new PosixFS(opts.fakeFs)); +} +;// CONCATENATED MODULE: ./sources/loader/hydrateRuntimeState.ts + +function hydrateRuntimeState(data, { + basePath +}) { + const portablePath = npath.toPortablePath(basePath); + const absolutePortablePath = ppath.resolve(portablePath); + const ignorePattern = data.ignorePatternData !== null ? new RegExp(data.ignorePatternData) : null; + const packageLocatorsByLocations = new Map(); + const packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { + return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { + var _a; + + if (packageName === null !== (packageReference === null)) throw new Error(`Assertion failed: The name and reference should be null, or neither should`); + const discardFromLookup = (_a = packageInformationData.discardFromLookup) !== null && _a !== void 0 ? _a : false; // @ts-expect-error: TypeScript isn't smart enough to understand the type assertion + + const packageLocator = { + name: packageName, + reference: packageReference + }; + const entry = packageLocatorsByLocations.get(packageInformationData.packageLocation); + + if (!entry) { + packageLocatorsByLocations.set(packageInformationData.packageLocation, { + locator: packageLocator, + discardFromLookup + }); + } else { + entry.discardFromLookup = entry.discardFromLookup && discardFromLookup; + + if (!discardFromLookup) { + entry.locator = packageLocator; + } + } + + let resolvedPackageLocation = null; + return [packageReference, { + packageDependencies: new Map(packageInformationData.packageDependencies), + packagePeers: new Set(packageInformationData.packagePeers), + linkType: packageInformationData.linkType, + discardFromLookup, + + // we only need this for packages that are used by the currently running script + // this is a lazy getter because `ppath.join` has some overhead + get packageLocation() { + // We use ppath.join instead of ppath.resolve because: + // 1) packageInformationData.packageLocation is a relative path when part of the SerializedState + // 2) ppath.join preserves trailing slashes + return resolvedPackageLocation || (resolvedPackageLocation = ppath.join(absolutePortablePath, packageInformationData.packageLocation)); + } + + }]; + }))]; + })); + const fallbackExclusionList = new Map(data.fallbackExclusionList.map(([packageName, packageReferences]) => { + return [packageName, new Set(packageReferences)]; + })); + const fallbackPool = new Map(data.fallbackPool); + const dependencyTreeRoots = data.dependencyTreeRoots; + const enableTopLevelFallback = data.enableTopLevelFallback; + return { + basePath: portablePath, + dependencyTreeRoots, + enableTopLevelFallback, + fallbackExclusionList, + fallbackPool, + ignorePattern, + packageLocatorsByLocations, + packageRegistry + }; +} +;// CONCATENATED MODULE: ../../.yarn/cache/resolve.exports-npm-1.1.0-81756e03ba-52865af8ed.zip/node_modules/resolve.exports/dist/index.mjs +/** + * @param {object} exports + * @param {Set} keys + */ +function loop(exports, keys) { + if (typeof exports === 'string') { + return exports; + } + + if (exports) { + let idx, tmp; + if (Array.isArray(exports)) { + for (idx=0; idx < exports.length; idx++) { + if (tmp = loop(exports[idx], keys)) return tmp; + } + } else { + for (idx in exports) { + if (keys.has(idx)) { + return loop(exports[idx], keys); + } + } + } + } +} + +/** + * @param {string} name The package name + * @param {string} entry The target entry, eg "." + * @param {number} [condition] Unmatched condition? + */ +function bail(name, entry, condition) { + throw new Error( + condition + ? `No known conditions for "${entry}" entry in "${name}" package` + : `Missing "${entry}" export in "${name}" package` + ); +} + +/** + * @param {string} name the package name + * @param {string} entry the target path/import + */ +function toName(name, entry) { + return entry === name ? '.' + : entry[0] === '.' ? entry + : entry.replace(new RegExp('^' + name + '\/'), './'); +} + +/** + * @param {object} pkg package.json contents + * @param {string} [entry] entry name or import path + * @param {object} [options] + * @param {boolean} [options.browser] + * @param {boolean} [options.require] + * @param {string[]} [options.conditions] + * @param {boolean} [options.unsafe] + */ +function resolve(pkg, entry='.', options={}) { + let { name, exports } = pkg; + + if (exports) { + let { browser, require, unsafe, conditions=[] } = options; + + let target = toName(name, entry); + if (target[0] !== '.') target = './' + target; + + if (typeof exports === 'string') { + return target === '.' ? exports : bail(name, target); + } + + let allows = new Set(['default', ...conditions]); + unsafe || allows.add(require ? 'require' : 'import'); + unsafe || allows.add(browser ? 'browser' : 'node'); + + let key, tmp, isSingle=false; + + for (key in exports) { + isSingle = key[0] !== '.'; + break; + } + + if (isSingle) { + return target === '.' + ? loop(exports, allows) || bail(name, target, 1) + : bail(name, target); + } + + if (tmp = exports[target]) { + return loop(tmp, allows) || bail(name, target, 1); + } + + for (key in exports) { + tmp = key[key.length - 1]; + if (tmp === '/' && target.startsWith(key)) { + return (tmp = loop(exports[key], allows)) + ? (tmp + target.substring(key.length)) + : bail(name, target, 1); + } + if (tmp === '*' && target.startsWith(key.slice(0, -1))) { + // do not trigger if no *content* to inject + if (target.substring(key.length - 1).length > 0) { + return (tmp = loop(exports[key], allows)) + ? tmp.replace('*', target.substring(key.length - 1)) + : bail(name, target, 1); + } + } + } + + return bail(name, target); + } +} + +/** + * @param {object} pkg + * @param {object} [options] + * @param {string|boolean} [options.browser] + * @param {string[]} [options.fields] + */ +function legacy(pkg, options={}) { + let i=0, value, + browser = options.browser, + fields = options.fields || ['module', 'main']; + + if (browser && !fields.includes('browser')) { + fields.unshift('browser'); + } + + for (; i < fields.length; i++) { + if (value = pkg[fields[i]]) { + if (typeof value == 'string') { + // + } else if (typeof value == 'object' && fields[i] == 'browser') { + if (typeof browser == 'string') { + value = value[browser=toName(pkg.name, browser)]; + if (value == null) return browser; + } + } else { + continue; + } + + return typeof value == 'string' + ? ('./' + value.replace(/^\.?\//, '')) + : value; + } + } +} + +;// CONCATENATED MODULE: ./sources/loader/makeApi.ts + + + + + + +function makeApi(runtimeState, opts) { + const alwaysWarnOnFallback = Number(process.env.PNP_ALWAYS_WARN_ON_FALLBACK) > 0; + const debugLevel = Number(process.env.PNP_DEBUG_LEVEL); // @ts-expect-error + + const builtinModules = new Set(external_module_.Module.builtinModules || Object.keys(process.binding(`natives`))); + + const isBuiltinModule = request => builtinModules.has(request) || request.startsWith(`node:`); // Splits a require request into its components, or return null if the request is a file path + + + const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/; // Matches if the path starts with a valid path qualifier (./, ../, /) + // eslint-disable-next-line no-unused-vars + + const isStrictRegExp = /^(\/|\.{1,2}(\/|$))/; // Matches if the path must point to a directory (ie ends with /) + + const isDirRegExp = /\/$/; // Matches if the path starts with a relative path qualifier (./, ../) + + const isRelativeRegexp = /^\.{0,2}\//; // We only instantiate one of those so that we can use strict-equal comparisons + + const topLevelLocator = { + name: null, + reference: null + }; // Used for compatibility purposes - cf setupCompatibilityLayer + + const fallbackLocators = []; // To avoid emitting the same warning multiple times + + const emittedWarnings = new Set(); + if (runtimeState.enableTopLevelFallback === true) fallbackLocators.push(topLevelLocator); + + if (opts.compatibilityMode !== false) { + // ESLint currently doesn't have any portable way for shared configs to + // specify their own plugins that should be used (cf issue #10125). This + // will likely get fixed at some point but it'll take time, so in the + // meantime we'll just add additional fallback entries for common shared + // configs. + // Similarly, Gatsby generates files within the `public` folder located + // within the project, but doesn't pre-resolve the `require` calls to use + // its own dependencies. Meaning that when PnP see a file from the `public` + // folder making a require, it thinks that your project forgot to list one + // of your dependencies. + for (const name of [`react-scripts`, `gatsby`]) { + const packageStore = runtimeState.packageRegistry.get(name); + + if (packageStore) { + for (const reference of packageStore.keys()) { + if (reference === null) { + throw new Error(`Assertion failed: This reference shouldn't be null`); + } else { + fallbackLocators.push({ + name, + reference + }); + } + } + } + } + } + /** + * The setup code will be injected here. The tables listed below are guaranteed to be filled after the call to + * the $$DYNAMICALLY_GENERATED_CODE function. + */ + + + const { + ignorePattern, + packageRegistry, + packageLocatorsByLocations + } = runtimeState; + /** + * Allows to print useful logs just be setting a value in the environment + */ + + function makeLogEntry(name, args) { + return { + fn: name, + args, + error: null, + result: null + }; + } + + function trace(entry) { + var _a, _b, _c, _d, _e, _f; + + const colors = (_c = (_b = (_a = process.stderr) === null || _a === void 0 ? void 0 : _a.hasColors) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : process.stdout.isTTY; + + const c = (n, str) => `\u001b[${n}m${str}\u001b[0m`; + + const error = entry.error; + if (error) console.error(c(`31;1`, `✖ ${(_d = entry.error) === null || _d === void 0 ? void 0 : _d.message.replace(/\n.*/s, ``)}`));else console.error(c(`33;1`, `‼ Resolution`)); + if (entry.args.length > 0) console.error(); + + for (const arg of entry.args) console.error(` ${c(`37;1`, `In ←`)} ${(0,external_util_namespaceObject.inspect)(arg, { + colors, + compact: true + })}`); + + if (entry.result) { + console.error(); + console.error(` ${c(`37;1`, `Out →`)} ${(0,external_util_namespaceObject.inspect)(entry.result, { + colors, + compact: true + })}`); + } + + const stack = (_f = (_e = new Error().stack.match(/(?<=^ +)at.*/gm)) === null || _e === void 0 ? void 0 : _e.slice(2)) !== null && _f !== void 0 ? _f : []; + + if (stack.length > 0) { + console.error(); + + for (const line of stack) { + console.error(` ${c(`38;5;244`, line)}`); + } + } + + console.error(); + } + + function maybeLog(name, fn) { + if (opts.allowDebug === false) return fn; + + if (Number.isFinite(debugLevel)) { + if (debugLevel >= 2) { + return (...args) => { + const logEntry = makeLogEntry(name, args); + + try { + return logEntry.result = fn(...args); + } catch (error) { + throw logEntry.error = error; + } finally { + trace(logEntry); + } + }; + } else if (debugLevel >= 1) { + return (...args) => { + try { + return fn(...args); + } catch (error) { + const logEntry = makeLogEntry(name, args); + logEntry.error = error; + trace(logEntry); + throw error; + } + }; + } + } + + return fn; + } + /** + * Returns information about a package in a safe way (will throw if they cannot be retrieved) + */ + + + function getPackageInformationSafe(packageLocator) { + const packageInformation = getPackageInformation(packageLocator); + + if (!packageInformation) { + throw internalTools_makeError(ErrorCode.INTERNAL, `Couldn't find a matching entry in the dependency tree for the specified parent (this is probably an internal error)`); + } + + return packageInformation; + } + /** + * Returns whether the specified locator is a dependency tree root (in which case it's part of the project) or not + */ + + + function isDependencyTreeRoot(packageLocator) { + if (packageLocator.name === null) return true; + + for (const dependencyTreeRoot of runtimeState.dependencyTreeRoots) if (dependencyTreeRoot.name === packageLocator.name && dependencyTreeRoot.reference === packageLocator.reference) return true; + + return false; + } + + const defaultExportsConditions = new Set([`default`, `node`, `require`]); + /** + * Implements the node resolution for the "exports" field + * + * @returns The remapped path or `null` if the package doesn't have a package.json or an "exports" field + */ + + function applyNodeExportsResolution(unqualifiedPath, conditions = defaultExportsConditions) { + const locator = findPackageLocator(ppath.join(unqualifiedPath, `internal.js`), { + resolveIgnored: true, + includeDiscardFromLookup: true + }); + + if (locator === null) { + throw internalTools_makeError(ErrorCode.INTERNAL, `The locator that owns the "${unqualifiedPath}" path can't be found inside the dependency tree (this is probably an internal error)`); + } + + const { + packageLocation + } = getPackageInformationSafe(locator); + const manifestPath = ppath.join(packageLocation, Filename.manifest); + if (!opts.fakeFs.existsSync(manifestPath)) return null; + const pkgJson = JSON.parse(opts.fakeFs.readFileSync(manifestPath, `utf8`)); + let subpath = ppath.contains(packageLocation, unqualifiedPath); + + if (subpath === null) { + throw internalTools_makeError(ErrorCode.INTERNAL, `unqualifiedPath doesn't contain the packageLocation (this is probably an internal error)`); + } + + if (!isRelativeRegexp.test(subpath)) subpath = `./${subpath}`; + const resolvedExport = resolve(pkgJson, ppath.normalize(subpath), { + // TODO: implement support for the --conditions flag + // Waiting on https://github.com/nodejs/node/issues/36935 + // @ts-expect-error - Type should be Iterable + conditions, + unsafe: true + }); + if (typeof resolvedExport === `string`) return ppath.join(packageLocation, resolvedExport); + return null; + } + /** + * Implements the node resolution for folder access and extension selection + */ + + + function applyNodeExtensionResolution(unqualifiedPath, candidates, { + extensions + }) { + let stat; + + try { + candidates.push(unqualifiedPath); + stat = opts.fakeFs.statSync(unqualifiedPath); + } catch (error) {} // If the file exists and is a file, we can stop right there + + + if (stat && !stat.isDirectory()) return opts.fakeFs.realpathSync(unqualifiedPath); // If the file is a directory, we must check if it contains a package.json with a "main" entry + + if (stat && stat.isDirectory()) { + let pkgJson; + + try { + pkgJson = JSON.parse(opts.fakeFs.readFileSync(ppath.join(unqualifiedPath, Filename.manifest), `utf8`)); + } catch (error) {} + + let nextUnqualifiedPath; + if (pkgJson && pkgJson.main) nextUnqualifiedPath = ppath.resolve(unqualifiedPath, pkgJson.main); // If the "main" field changed the path, we start again from this new location + + if (nextUnqualifiedPath && nextUnqualifiedPath !== unqualifiedPath) { + const resolution = applyNodeExtensionResolution(nextUnqualifiedPath, candidates, { + extensions + }); + + if (resolution !== null) { + return resolution; + } + } + } // Otherwise we check if we find a file that match one of the supported extensions + + + for (let i = 0, length = extensions.length; i < length; i++) { + const candidateFile = `${unqualifiedPath}${extensions[i]}`; + candidates.push(candidateFile); + + if (opts.fakeFs.existsSync(candidateFile)) { + return candidateFile; + } + } // Otherwise, we check if the path is a folder - in such a case, we try to use its index + + + if (stat && stat.isDirectory()) { + for (let i = 0, length = extensions.length; i < length; i++) { + const candidateFile = ppath.format({ + dir: unqualifiedPath, + name: `index`, + ext: extensions[i] + }); + candidates.push(candidateFile); + + if (opts.fakeFs.existsSync(candidateFile)) { + return candidateFile; + } + } + } // Otherwise there's nothing else we can do :( + + + return null; + } + /** + * This function creates fake modules that can be used with the _resolveFilename function. + * Ideally it would be nice to be able to avoid this, since it causes useless allocations + * and cannot be cached efficiently (we recompute the nodeModulePaths every time). + * + * Fortunately, this should only affect the fallback, and there hopefully shouldn't have a + * lot of them. + */ + + + function makeFakeModule(path) { + // @ts-expect-error + const fakeModule = new external_module_.Module(path, null); + fakeModule.filename = path; + fakeModule.paths = external_module_.Module._nodeModulePaths(path); + return fakeModule; + } + /** + * Forward the resolution to the next resolver (usually the native one) + */ + + + function callNativeResolution(request, issuer) { + if (issuer.endsWith(`/`)) issuer = ppath.join(issuer, `internal.js`); // Since we would need to create a fake module anyway (to call _resolveLookupPath that + // would give us the paths to give to _resolveFilename), we can as well not use + // the {paths} option at all, since it internally makes _resolveFilename create another + // fake module anyway. + + return external_module_.Module._resolveFilename(npath.fromPortablePath(request), makeFakeModule(npath.fromPortablePath(issuer)), false, { + plugnplay: false + }); + } + /** + * + */ + + + function isPathIgnored(path) { + if (ignorePattern === null) return false; + const subPath = ppath.contains(runtimeState.basePath, path); + if (subPath === null) return false; + + if (ignorePattern.test(subPath.replace(/\/$/, ``))) { + return true; + } else { + return false; + } + } + /** + * This key indicates which version of the standard is implemented by this resolver. The `std` key is the + * Plug'n'Play standard, and any other key are third-party extensions. Third-party extensions are not allowed + * to override the standard, and can only offer new methods. + * + * If a new version of the Plug'n'Play standard is released and some extensions conflict with newly added + * functions, they'll just have to fix the conflicts and bump their own version number. + */ + + + const VERSIONS = { + std: 3, + resolveVirtual: 1, + getAllLocators: 1 + }; + /** + * We export a special symbol for easy access to the top level locator. + */ + + const topLevel = topLevelLocator; + /** + * Gets the package information for a given locator. Returns null if they cannot be retrieved. + */ + + function getPackageInformation({ + name, + reference + }) { + const packageInformationStore = packageRegistry.get(name); + if (!packageInformationStore) return null; + const packageInformation = packageInformationStore.get(reference); + if (!packageInformation) return null; + return packageInformation; + } + /** + * Find all packages that depend on the specified one. + * + * Note: This is a private function; we expect consumers to implement it + * themselves. We keep it that way because this implementation isn't + * optimized at all, since we only need it when printing errors. + */ + + + function findPackageDependents({ + name, + reference + }) { + const dependents = []; + + for (const [dependentName, packageInformationStore] of packageRegistry) { + if (dependentName === null) continue; + + for (const [dependentReference, packageInformation] of packageInformationStore) { + if (dependentReference === null) continue; + const dependencyReference = packageInformation.packageDependencies.get(name); + if (dependencyReference !== reference) continue; // Don't forget that all packages depend on themselves + + if (dependentName === name && dependentReference === reference) continue; + dependents.push({ + name: dependentName, + reference: dependentReference + }); + } + } + + return dependents; + } + /** + * Find all packages that broke the peer dependency on X, starting from Y. + * + * Note: This is a private function; we expect consumers to implement it + * themselves. We keep it that way because this implementation isn't + * optimized at all, since we only need it when printing errors. + */ + + + function findBrokenPeerDependencies(dependency, initialPackage) { + const brokenPackages = new Map(); + const alreadyVisited = new Set(); + + const traversal = currentPackage => { + const identifier = JSON.stringify(currentPackage.name); + if (alreadyVisited.has(identifier)) return; + alreadyVisited.add(identifier); + const dependents = findPackageDependents(currentPackage); + + for (const dependent of dependents) { + const dependentInformation = getPackageInformationSafe(dependent); + + if (dependentInformation.packagePeers.has(dependency)) { + traversal(dependent); + } else { + let brokenSet = brokenPackages.get(dependent.name); + if (typeof brokenSet === `undefined`) brokenPackages.set(dependent.name, brokenSet = new Set()); + brokenSet.add(dependent.reference); + } + } + }; + + traversal(initialPackage); + const brokenList = []; + + for (const name of [...brokenPackages.keys()].sort()) for (const reference of [...brokenPackages.get(name)].sort()) brokenList.push({ + name, + reference + }); + + return brokenList; + } + /** + * Finds the package locator that owns the specified path. If none is found, returns null instead. + */ + + + function findPackageLocator(location, { + resolveIgnored = false, + includeDiscardFromLookup = false + } = {}) { + if (isPathIgnored(location) && !resolveIgnored) return null; + let relativeLocation = ppath.relative(runtimeState.basePath, location); + if (!relativeLocation.match(isStrictRegExp)) relativeLocation = `./${relativeLocation}`; + if (!relativeLocation.endsWith(`/`)) relativeLocation = `${relativeLocation}/`; + + do { + const entry = packageLocatorsByLocations.get(relativeLocation); + + if (typeof entry === `undefined` || entry.discardFromLookup && !includeDiscardFromLookup) { + relativeLocation = relativeLocation.substring(0, relativeLocation.lastIndexOf(`/`, relativeLocation.length - 2) + 1); + continue; + } + + return entry.locator; + } while (relativeLocation !== ``); + + return null; + } + /** + * Transforms a request (what's typically passed as argument to the require function) into an unqualified path. + * This path is called "unqualified" because it only changes the package name to the package location on the disk, + * which means that the end result still cannot be directly accessed (for example, it doesn't try to resolve the + * file extension, or to resolve directories to their "index.js" content). Use the "resolveUnqualified" function + * to convert them to fully-qualified paths, or just use "resolveRequest" that do both operations in one go. + * + * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be + * treated as a folder (ie. "/tmp/foo/" rather than "/tmp/foo" if "foo" is a directory). Otherwise relative + * imports won't be computed correctly (they'll get resolved relative to "/tmp/" instead of "/tmp/foo/"). + */ + + + function resolveToUnqualified(request, issuer, { + considerBuiltins = true + } = {}) { + // The 'pnpapi' request is reserved and will always return the path to the PnP file, from everywhere + if (request === `pnpapi`) return npath.toPortablePath(opts.pnpapiResolution); // Bailout if the request is a native module + + if (considerBuiltins && isBuiltinModule(request)) return null; + const requestForDisplay = getPathForDisplay(request); + const issuerForDisplay = issuer && getPathForDisplay(issuer); // We allow disabling the pnp resolution for some subpaths. + // This is because some projects, often legacy, contain multiple + // levels of dependencies (ie. a yarn.lock inside a subfolder of + // a yarn.lock). This is typically solved using workspaces, but + // not all of them have been converted already. + + if (issuer && isPathIgnored(issuer)) { + // Absolute paths that seem to belong to a PnP tree are still + // handled by our runtime even if the issuer isn't. This is + // because the native Node resolution uses a special version + // of the `stat` syscall which would otherwise bypass the + // filesystem layer we require to access the files. + if (!ppath.isAbsolute(request) || findPackageLocator(request) === null) { + const result = callNativeResolution(request, issuer); + + if (result === false) { + throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer was explicitely ignored by the regexp)\n\nRequire request: "${requestForDisplay}"\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + + return npath.toPortablePath(result); + } + } + + let unqualifiedPath; // If the request is a relative or absolute path, we just return it normalized + + const dependencyNameMatch = request.match(pathRegExp); + + if (!dependencyNameMatch) { + if (ppath.isAbsolute(request)) { + unqualifiedPath = ppath.normalize(request); + } else { + if (!issuer) { + throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } // We use ppath.join instead of ppath.resolve because: + // 1) The request is a relative path in this branch + // 2) ppath.join preserves trailing slashes + + + const absoluteIssuer = ppath.resolve(issuer); + + if (issuer.match(isDirRegExp)) { + unqualifiedPath = ppath.normalize(ppath.join(absoluteIssuer, request)); + } else { + unqualifiedPath = ppath.normalize(ppath.join(ppath.dirname(absoluteIssuer), request)); + } + } + } else { + // Things are more hairy if it's a package require - we then need to figure out which package is needed, and in + // particular the exact version for the given location on the dependency tree + if (!issuer) { + throw internalTools_makeError(ErrorCode.API_ERROR, `The resolveToUnqualified function must be called with a valid issuer when the path isn't a builtin nor absolute`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + + const [, dependencyName, subPath] = dependencyNameMatch; + const issuerLocator = findPackageLocator(issuer); // If the issuer file doesn't seem to be owned by a package managed through pnp, then we resort to using the next + // resolution algorithm in the chain, usually the native Node resolution one + + if (!issuerLocator) { + const result = callNativeResolution(request, issuer); + + if (result === false) { + throw internalTools_makeError(ErrorCode.BUILTIN_NODE_RESOLUTION_FAILED, `The builtin node resolution algorithm was unable to resolve the requested module (it didn't go through the pnp resolver because the issuer doesn't seem to be part of the Yarn-managed dependency tree).\n\nRequire path: "${requestForDisplay}"\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay + }); + } + + return npath.toPortablePath(result); + } + + const issuerInformation = getPackageInformationSafe(issuerLocator); // We obtain the dependency reference in regard to the package that request it + + let dependencyReference = issuerInformation.packageDependencies.get(dependencyName); + let fallbackReference = null; // If we can't find it, we check if we can potentially load it from the packages that have been defined as potential fallbacks. + // It's a bit of a hack, but it improves compatibility with the existing Node ecosystem. Hopefully we should eventually be able + // to kill this logic and become stricter once pnp gets enough traction and the affected packages fix themselves. + + if (dependencyReference == null) { + if (issuerLocator.name !== null) { + // To allow programs to become gradually stricter, starting from the v2 we enforce that workspaces cannot depend on fallbacks. + // This works by having a list containing all their locators, and checking when a fallback is required whether it's one of them. + const exclusionEntry = runtimeState.fallbackExclusionList.get(issuerLocator.name); + const canUseFallbacks = !exclusionEntry || !exclusionEntry.has(issuerLocator.reference); + + if (canUseFallbacks) { + for (let t = 0, T = fallbackLocators.length; t < T; ++t) { + const fallbackInformation = getPackageInformationSafe(fallbackLocators[t]); + const reference = fallbackInformation.packageDependencies.get(dependencyName); + if (reference == null) continue; + if (alwaysWarnOnFallback) fallbackReference = reference;else dependencyReference = reference; + break; + } + + if (runtimeState.enableTopLevelFallback) { + if (dependencyReference == null && fallbackReference === null) { + const reference = runtimeState.fallbackPool.get(dependencyName); + + if (reference != null) { + fallbackReference = reference; + } + } + } + } + } + } // If we can't find the path, and if the package making the request is the top-level, we can offer nicer error messages + + + let error = null; + + if (dependencyReference === null) { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `Your application tried to access ${dependencyName} (a peer dependency); this isn't allowed as there is no ancestor to satisfy the requirement. Use a devDependency if needed.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + const brokenAncestors = findBrokenPeerDependencies(dependencyName, issuerLocator); + + if (brokenAncestors.every(ancestor => isDependencyTreeRoot(ancestor))) { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by your application; this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})\n${brokenAncestors.map(ancestorLocator => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference}\n`).join(``)}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName, + brokenAncestors + }); + } else { + error = internalTools_makeError(ErrorCode.MISSING_PEER_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName} (a peer dependency) but it isn't provided by its ancestors; this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})\n\n${brokenAncestors.map(ancestorLocator => `Ancestor breaking the chain: ${ancestorLocator.name}@${ancestorLocator.reference}\n`).join(``)}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName, + brokenAncestors + }); + } + } + } else if (dependencyReference === undefined) { + if (!considerBuiltins && isBuiltinModule(request)) { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in your dependencies, this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}. While this module is usually interpreted as a Node builtin, your resolver is running inside a non-Node resolution context where such builtins are ignored. Since ${dependencyName} isn't otherwise declared in ${issuerLocator.name}'s dependencies, this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName + }); + } + } else { + if (isDependencyTreeRoot(issuerLocator)) { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `Your application tried to access ${dependencyName}, but it isn't declared in your dependencies; this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerForDisplay}\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyName + }); + } else { + error = internalTools_makeError(ErrorCode.UNDECLARED_DEPENDENCY, `${issuerLocator.name} tried to access ${dependencyName}, but it isn't declared in its dependencies; this makes the require call ambiguous and unsound.\n\nRequired package: ${dependencyName}${dependencyName !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + issuerLocator: Object.assign({}, issuerLocator), + dependencyName + }); + } + } + } + + if (dependencyReference == null) { + if (fallbackReference === null || error === null) throw error || new Error(`Assertion failed: Expected an error to have been set`); + dependencyReference = fallbackReference; + const message = error.message.replace(/\n.*/g, ``); + error.message = message; + + if (!emittedWarnings.has(message) && debugLevel !== 0) { + emittedWarnings.add(message); + process.emitWarning(error); + } + } // We need to check that the package exists on the filesystem, because it might not have been installed + + + const dependencyLocator = Array.isArray(dependencyReference) ? { + name: dependencyReference[0], + reference: dependencyReference[1] + } : { + name: dependencyName, + reference: dependencyReference + }; + const dependencyInformation = getPackageInformationSafe(dependencyLocator); + + if (!dependencyInformation.packageLocation) { + throw internalTools_makeError(ErrorCode.MISSING_DEPENDENCY, `A dependency seems valid but didn't get installed for some reason. This might be caused by a partial install, such as dev vs prod.\n\nRequired package: ${dependencyLocator.name}@${dependencyLocator.reference}${dependencyLocator.name !== requestForDisplay ? ` (via "${requestForDisplay}")` : ``}\nRequired by: ${issuerLocator.name}@${issuerLocator.reference} (via ${issuerForDisplay})\n`, { + request: requestForDisplay, + issuer: issuerForDisplay, + dependencyLocator: Object.assign({}, dependencyLocator) + }); + } // Now that we know which package we should resolve to, we only have to find out the file location + // packageLocation is always absolute as it's returned by getPackageInformationSafe + + + const dependencyLocation = dependencyInformation.packageLocation; + + if (subPath) { + // We use ppath.join instead of ppath.resolve because: + // 1) subPath is always a relative path + // 2) ppath.join preserves trailing slashes + unqualifiedPath = ppath.join(dependencyLocation, subPath); + } else { + unqualifiedPath = dependencyLocation; + } + } + + return ppath.normalize(unqualifiedPath); + } + + function resolveUnqualifiedExport(request, unqualifiedPath, conditions = defaultExportsConditions) { + // "exports" only apply when requiring a package, not when requiring via an absolute / relative path + if (isStrictRegExp.test(request)) return unqualifiedPath; + const unqualifiedExportPath = applyNodeExportsResolution(unqualifiedPath, conditions); + + if (unqualifiedExportPath) { + return ppath.normalize(unqualifiedExportPath); + } else { + return unqualifiedPath; + } + } + /** + * Transforms an unqualified path into a qualified path by using the Node resolution algorithm (which automatically + * appends ".js" / ".json", and transforms directory accesses into "index.js"). + */ + + + function resolveUnqualified(unqualifiedPath, { + extensions = Object.keys(external_module_.Module._extensions) + } = {}) { + const candidates = []; + const qualifiedPath = applyNodeExtensionResolution(unqualifiedPath, candidates, { + extensions + }); + + if (qualifiedPath) { + return ppath.normalize(qualifiedPath); + } else { + const unqualifiedPathForDisplay = getPathForDisplay(unqualifiedPath); + const containingPackage = findPackageLocator(unqualifiedPath); + + if (containingPackage) { + const { + packageLocation + } = getPackageInformationSafe(containingPackage); + + if (!opts.fakeFs.existsSync(packageLocation)) { + const errorMessage = packageLocation.includes(`/unplugged/`) ? `Required unplugged package missing from disk. This may happen when switching branches without running installs (unplugged packages must be fully materialized on disk to work).` : `Required package missing from disk. If you keep your packages inside your repository then restarting the Node process may be enough. Otherwise, try to run an install first.`; + throw internalTools_makeError(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `${errorMessage}\n\nMissing package: ${containingPackage.name}@${containingPackage.reference}\nExpected package location: ${getPathForDisplay(packageLocation)}\n`, { + unqualifiedPath: unqualifiedPathForDisplay + }); + } + } + + throw internalTools_makeError(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `Qualified path resolution failed - none of those files can be found on the disk.\n\nSource path: ${unqualifiedPathForDisplay}\n${candidates.map(candidate => `Not found: ${getPathForDisplay(candidate)}\n`).join(``)}`, { + unqualifiedPath: unqualifiedPathForDisplay + }); + } + } + /** + * Transforms a request into a fully qualified path. + * + * Note that it is extremely important that the `issuer` path ends with a forward slash if the issuer is to be + * treated as a folder (ie. "/tmp/foo/" rather than "/tmp/foo" if "foo" is a directory). Otherwise relative + * imports won't be computed correctly (they'll get resolved relative to "/tmp/" instead of "/tmp/foo/"). + */ + + + function resolveRequest(request, issuer, { + considerBuiltins, + extensions, + conditions + } = {}) { + const unqualifiedPath = resolveToUnqualified(request, issuer, { + considerBuiltins + }); // If the request is the pnpapi, we can just return the unqualifiedPath + // without having to apply the exports resolution or the extension resolution + // (opts.pnpapiResolution is always a full path - makeManager enforces this by stat-ing it) + + if (request === `pnpapi`) return unqualifiedPath; + if (unqualifiedPath === null) return null; + + const isIssuerIgnored = () => issuer !== null ? isPathIgnored(issuer) : false; + + const remappedPath = (!considerBuiltins || !isBuiltinModule(request)) && !isIssuerIgnored() ? resolveUnqualifiedExport(request, unqualifiedPath, conditions) : unqualifiedPath; + + try { + return resolveUnqualified(remappedPath, { + extensions + }); + } catch (resolutionError) { + if (resolutionError.pnpCode === `QUALIFIED_PATH_RESOLUTION_FAILED`) Object.assign(resolutionError.data, { + request: getPathForDisplay(request), + issuer: issuer && getPathForDisplay(issuer) + }); + throw resolutionError; + } + } + + function resolveVirtual(request) { + const normalized = ppath.normalize(request); + const resolved = VirtualFS.resolveVirtual(normalized); + return resolved !== normalized ? resolved : null; + } + + return { + VERSIONS, + topLevel, + getLocator: (name, referencish) => { + if (Array.isArray(referencish)) { + return { + name: referencish[0], + reference: referencish[1] + }; + } else { + return { + name, + reference: referencish + }; + } + }, + getDependencyTreeRoots: () => { + return [...runtimeState.dependencyTreeRoots]; + }, + + getAllLocators() { + const locators = []; + + for (const [name, entry] of packageRegistry) for (const reference of entry.keys()) if (name !== null && reference !== null) locators.push({ + name, + reference + }); + + return locators; + }, + + getPackageInformation: locator => { + const info = getPackageInformation(locator); + if (info === null) return null; + const packageLocation = npath.fromPortablePath(info.packageLocation); + const nativeInfo = { ...info, + packageLocation + }; + return nativeInfo; + }, + findPackageLocator: path => { + return findPackageLocator(npath.toPortablePath(path)); + }, + resolveToUnqualified: maybeLog(`resolveToUnqualified`, (request, issuer, opts) => { + const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; + const resolution = resolveToUnqualified(npath.toPortablePath(request), portableIssuer, opts); + if (resolution === null) return null; + return npath.fromPortablePath(resolution); + }), + resolveUnqualified: maybeLog(`resolveUnqualified`, (unqualifiedPath, opts) => { + return npath.fromPortablePath(resolveUnqualified(npath.toPortablePath(unqualifiedPath), opts)); + }), + resolveRequest: maybeLog(`resolveRequest`, (request, issuer, opts) => { + const portableIssuer = issuer !== null ? npath.toPortablePath(issuer) : null; + const resolution = resolveRequest(npath.toPortablePath(request), portableIssuer, opts); + if (resolution === null) return null; + return npath.fromPortablePath(resolution); + }), + resolveVirtual: maybeLog(`resolveVirtual`, path => { + const result = resolveVirtual(npath.toPortablePath(path)); + + if (result !== null) { + return npath.fromPortablePath(result); + } else { + return null; + } + }) + }; +} +;// CONCATENATED MODULE: ./sources/loader/makeManager.ts + + +function makeManager(pnpapi, opts) { + const initialApiPath = npath.toPortablePath(pnpapi.resolveToUnqualified(`pnpapi`, null)); + const initialApiStats = opts.fakeFs.statSync(npath.toPortablePath(initialApiPath)); + const apiMetadata = new Map([[initialApiPath, { + cache: external_module_.Module._cache, + instance: pnpapi, + stats: initialApiStats, + lastRefreshCheck: Date.now() + }]]); + + function loadApiInstance(pnpApiPath) { + const nativePath = npath.fromPortablePath(pnpApiPath); // @ts-expect-error + + const module = new external_module_.Module(nativePath, null); // @ts-expect-error + + module.load(nativePath); + return module.exports; + } + + function refreshApiEntry(pnpApiPath, apiEntry) { + const timeNow = Date.now(); + if (timeNow - apiEntry.lastRefreshCheck < 500) return; + apiEntry.lastRefreshCheck = timeNow; + const stats = opts.fakeFs.statSync(pnpApiPath); + + if (stats.mtime > apiEntry.stats.mtime) { + process.emitWarning(`[Warning] The runtime detected new informations in a PnP file; reloading the API instance (${npath.fromPortablePath(pnpApiPath)})`); + apiEntry.stats = stats; + apiEntry.instance = loadApiInstance(pnpApiPath); + } + } + + function getApiEntry(pnpApiPath, refresh = false) { + let apiEntry = apiMetadata.get(pnpApiPath); + + if (typeof apiEntry !== `undefined`) { + if (refresh) { + refreshApiEntry(pnpApiPath, apiEntry); + } + } else { + apiMetadata.set(pnpApiPath, apiEntry = { + cache: {}, + instance: loadApiInstance(pnpApiPath), + stats: opts.fakeFs.statSync(pnpApiPath), + lastRefreshCheck: Date.now() + }); + } + + return apiEntry; + } + + const findApiPathCache = new Map(); + + function addToCacheAndReturn(start, end, target) { + if (target !== null) target = VirtualFS.resolveVirtual(target); + let curr; + let next = start; + + do { + curr = next; + findApiPathCache.set(curr, target); + next = ppath.dirname(curr); + } while (curr !== end); + + return target; + } + + function findApiPathFor(modulePath) { + let bestCandidate = null; + + for (const [apiPath, apiEntry] of apiMetadata) { + const locator = apiEntry.instance.findPackageLocator(modulePath); + if (!locator) continue; // No need to go the slow way when there's a single API + + if (apiMetadata.size === 1) return apiPath; + const packageInformation = apiEntry.instance.getPackageInformation(locator); + if (!packageInformation) throw new Error(`Assertion failed: Couldn't get package information for '${modulePath}'`); + if (!bestCandidate) bestCandidate = { + packageLocation: packageInformation.packageLocation, + apiPaths: [] + }; + + if (packageInformation.packageLocation === bestCandidate.packageLocation) { + bestCandidate.apiPaths.push(apiPath); + } else if (packageInformation.packageLocation.length > bestCandidate.packageLocation.length) { + bestCandidate = { + packageLocation: packageInformation.packageLocation, + apiPaths: [apiPath] + }; + } + } + + if (bestCandidate) { + if (bestCandidate.apiPaths.length === 1) return bestCandidate.apiPaths[0]; + const controlSegment = bestCandidate.apiPaths.map(apiPath => ` ${npath.fromPortablePath(apiPath)}`).join(`\n`); + throw new Error(`Unable to locate pnpapi, the module '${modulePath}' is controlled by multiple pnpapi instances.\nThis is usually caused by using the global cache (enableGlobalCache: true)\n\nControlled by:\n${controlSegment}\n`); + } + + const start = ppath.resolve(npath.toPortablePath(modulePath)); + let curr; + let next = start; + + do { + curr = next; + const cached = findApiPathCache.get(curr); + if (cached !== undefined) return addToCacheAndReturn(start, curr, cached); + const cjsCandidate = ppath.join(curr, Filename.pnpCjs); + if (opts.fakeFs.existsSync(cjsCandidate) && opts.fakeFs.statSync(cjsCandidate).isFile()) return addToCacheAndReturn(start, curr, cjsCandidate); // We still support .pnp.js files to improve multi-project compatibility. + // TODO: Remove support for .pnp.js files after they stop being used. + + const legacyCjsCandidate = ppath.join(curr, Filename.pnpJs); + if (opts.fakeFs.existsSync(legacyCjsCandidate) && opts.fakeFs.statSync(legacyCjsCandidate).isFile()) return addToCacheAndReturn(start, curr, legacyCjsCandidate); + next = ppath.dirname(curr); + } while (curr !== PortablePath.root); + + return addToCacheAndReturn(start, curr, null); + } + + function getApiPathFromParent(parent) { + if (parent == null) return initialApiPath; + + if (typeof parent.pnpApiPath === `undefined`) { + if (parent.filename !== null) { + return parent.pnpApiPath = findApiPathFor(parent.filename); + } else { + return initialApiPath; + } + } + + if (parent.pnpApiPath !== null) return parent.pnpApiPath; + return null; + } + + return { + getApiPathFromParent, + findApiPathFor, + getApiEntry + }; +} +;// CONCATENATED MODULE: ./sources/loader/_entryPoint.ts + + + + + + + + + // We must copy the fs into a local, because otherwise +// 1. we would make the NodeFS instance use the function that we patched (infinite loop) +// 2. Object.create(fs) isn't enough, since it won't prevent the proto from being modified + +const localFs = { ...(external_fs_default()) +}; +const nodeFs = new NodeFS(localFs); +const defaultRuntimeState = $$SETUP_STATE(hydrateRuntimeState); +const defaultPnpapiResolution = __filename; // We create a virtual filesystem that will do three things: +// 1. all requests inside a folder named "__virtual___" will be remapped according the virtual folder rules +// 2. all requests going inside a Zip archive will be handled by the Zip fs implementation +// 3. any remaining request will be forwarded to Node as-is + +const defaultFsLayer = new VirtualFS({ + baseFs: new ZipOpenFS({ + baseFs: nodeFs, + libzip: () => getLibzipSync(), + maxOpenFiles: 80, + readOnlyArchives: true + }) +}); + +class DynamicFS extends ProxiedFS { + constructor() { + super(ppath); + this.baseFs = defaultFsLayer; + } + + mapToBase(p) { + return p; + } + + mapFromBase(p) { + return p; + } + +} + +const dynamicFsLayer = new DynamicFS(); +let manager; +const defaultApi = Object.assign(makeApi(defaultRuntimeState, { + fakeFs: dynamicFsLayer, + pnpapiResolution: defaultPnpapiResolution +}), { + /** + * Can be used to generate a different API than the default one (for example + * to map it on `/` rather than the local directory path, or to use a + * different FS layer than the default one). + */ + makeApi: ({ + basePath = undefined, + fakeFs = dynamicFsLayer, + pnpapiResolution = defaultPnpapiResolution, + ...rest + }) => { + const apiRuntimeState = typeof basePath !== `undefined` ? $$SETUP_STATE(hydrateRuntimeState, basePath) : defaultRuntimeState; + return makeApi(apiRuntimeState, { + fakeFs, + pnpapiResolution, + ...rest + }); + }, + + /** + * Will inject the specified API into the environment, monkey-patching FS. Is + * automatically called when the hook is loaded through `--require`. + */ + setup: api => { + applyPatch(api || defaultApi, { + fakeFs: defaultFsLayer, + manager + }); // Now that the `fs` module is patched we can swap the `baseFs` to + // a NodeFS with a live `fs` binding to pick up changes to the `fs` + // module allowing users to patch it + + dynamicFsLayer.baseFs = new NodeFS((external_fs_default())); + } +}); +manager = makeManager(defaultApi, { + fakeFs: dynamicFsLayer +}); // eslint-disable-next-line arca/no-default-export + +/* harmony default export */ const _entryPoint = (defaultApi); + +if (__non_webpack_module__.parent && __non_webpack_module__.parent.id === `internal/preload`) { + defaultApi.setup(); + + if (__non_webpack_module__.filename) { + // We delete it from the cache in order to support the case where the CLI resolver is invoked from "yarn run" + // It's annoying because it might cause some issues when the file is multiple times in NODE_OPTIONS, but it shouldn't happen anyway. + delete (external_module_default())._cache[__non_webpack_module__.filename]; + } +} + +if (process.mainModule === __non_webpack_module__) { + const reportError = (code, message, data) => { + process.stdout.write(`${JSON.stringify([{ + code, + message, + data + }, null])}\n`); + }; + + const reportSuccess = resolution => { + process.stdout.write(`${JSON.stringify([null, resolution])}\n`); + }; + + const processResolution = (request, issuer) => { + try { + reportSuccess(defaultApi.resolveRequest(request, issuer)); + } catch (error) { + reportError(error.code, error.message, error.data); + } + }; + + const processRequest = data => { + try { + const [request, issuer] = JSON.parse(data); + processResolution(request, issuer); + } catch (error) { + reportError(`INVALID_JSON`, error.message, error.data); + } + }; + + if (process.argv.length > 2) { + if (process.argv.length !== 4) { + process.stderr.write(`Usage: ${process.argv[0]} ${process.argv[1]} \n`); + process.exitCode = 64; + /* EX_USAGE */ + } else { + processResolution(process.argv[2], process.argv[3]); + } + } else { + let buffer = ``; + const decoder = new (external_string_decoder_default()).StringDecoder(); + process.stdin.on(`data`, chunk => { + buffer += decoder.write(chunk); + + do { + const index = buffer.indexOf(`\n`); + if (index === -1) break; + const line = buffer.slice(0, index); + buffer = buffer.slice(index + 1); + processRequest(line); + } while (true); + }); + } +} +})(); + +__webpack_exports__ = __webpack_exports__.default; +/******/ return __webpack_exports__; +/******/ })() +; +}); \ No newline at end of file diff --git a/.pnp.loader.mjs b/.pnp.loader.mjs new file mode 100644 index 0000000..9cb52bf --- /dev/null +++ b/.pnp.loader.mjs @@ -0,0 +1,249 @@ +import { URL, fileURLToPath, pathToFileURL } from 'url'; +import fs from 'fs'; +import path from 'path'; +import moduleExports, { Module } from 'module'; + +var PathType; +(function(PathType2) { + PathType2[PathType2["File"] = 0] = "File"; + PathType2[PathType2["Portable"] = 1] = "Portable"; + PathType2[PathType2["Native"] = 2] = "Native"; +})(PathType || (PathType = {})); +const npath = Object.create(path); +const ppath = Object.create(path.posix); +npath.cwd = () => process.cwd(); +ppath.cwd = () => toPortablePath(process.cwd()); +ppath.resolve = (...segments) => { + if (segments.length > 0 && ppath.isAbsolute(segments[0])) { + return path.posix.resolve(...segments); + } else { + return path.posix.resolve(ppath.cwd(), ...segments); + } +}; +const contains = function(pathUtils, from, to) { + from = pathUtils.normalize(from); + to = pathUtils.normalize(to); + if (from === to) + return `.`; + if (!from.endsWith(pathUtils.sep)) + from = from + pathUtils.sep; + if (to.startsWith(from)) { + return to.slice(from.length); + } else { + return null; + } +}; +npath.fromPortablePath = fromPortablePath; +npath.toPortablePath = toPortablePath; +npath.contains = (from, to) => contains(npath, from, to); +ppath.contains = (from, to) => contains(ppath, from, to); +const WINDOWS_PATH_REGEXP = /^([a-zA-Z]:.*)$/; +const UNC_WINDOWS_PATH_REGEXP = /^\\\\(\.\\)?(.*)$/; +const PORTABLE_PATH_REGEXP = /^\/([a-zA-Z]:.*)$/; +const UNC_PORTABLE_PATH_REGEXP = /^\/unc\/(\.dot\/)?(.*)$/; +function fromPortablePath(p) { + if (process.platform !== `win32`) + return p; + let portablePathMatch, uncPortablePathMatch; + if (portablePathMatch = p.match(PORTABLE_PATH_REGEXP)) + p = portablePathMatch[1]; + else if (uncPortablePathMatch = p.match(UNC_PORTABLE_PATH_REGEXP)) + p = `\\\\${uncPortablePathMatch[1] ? `.\\` : ``}${uncPortablePathMatch[2]}`; + else + return p; + return p.replace(/\//g, `\\`); +} +function toPortablePath(p) { + if (process.platform !== `win32`) + return p; + let windowsPathMatch, uncWindowsPathMatch; + if (windowsPathMatch = p.match(WINDOWS_PATH_REGEXP)) + p = `/${windowsPathMatch[1]}`; + else if (uncWindowsPathMatch = p.match(UNC_WINDOWS_PATH_REGEXP)) + p = `/unc/${uncWindowsPathMatch[1] ? `.dot/` : ``}${uncWindowsPathMatch[2]}`; + return p.replace(/\\/g, `/`); +} + +const builtinModules = new Set(Module.builtinModules || Object.keys(process.binding(`natives`))); +const isBuiltinModule = (request) => request.startsWith(`node:`) || builtinModules.has(request); +function readPackageScope(checkPath) { + const rootSeparatorIndex = checkPath.indexOf(npath.sep); + let separatorIndex; + do { + separatorIndex = checkPath.lastIndexOf(npath.sep); + checkPath = checkPath.slice(0, separatorIndex); + if (checkPath.endsWith(`${npath.sep}node_modules`)) + return false; + const pjson = readPackage(checkPath + npath.sep); + if (pjson) { + return { + data: pjson, + path: checkPath + }; + } + } while (separatorIndex > rootSeparatorIndex); + return false; +} +function readPackage(requestPath) { + const jsonPath = npath.resolve(requestPath, `package.json`); + if (!fs.existsSync(jsonPath)) + return null; + return JSON.parse(fs.readFileSync(jsonPath, `utf8`)); +} + +async function tryReadFile(path2) { + try { + return await fs.promises.readFile(path2, `utf8`); + } catch (error) { + if (error.code === `ENOENT`) + return null; + throw error; + } +} +function tryParseURL(str) { + try { + return new URL(str); + } catch { + return null; + } +} +function getFileFormat(filepath) { + var _a; + const ext = path.extname(filepath); + switch (ext) { + case `.mjs`: { + return `module`; + } + case `.cjs`: { + return `commonjs`; + } + case `.wasm`: { + throw new Error(`Unknown file extension ".wasm" for ${filepath}`); + } + case `.json`: { + throw new Error(`Unknown file extension ".json" for ${filepath}`); + } + case `.js`: { + const pkg = readPackageScope(filepath); + if (pkg) { + return (_a = pkg.data.type) != null ? _a : `commonjs`; + } + } + } + return null; +} + +async function getFormat$1(resolved, context, defaultGetFormat) { + const url = tryParseURL(resolved); + if ((url == null ? void 0 : url.protocol) !== `file:`) + return defaultGetFormat(resolved, context, defaultGetFormat); + const format = getFileFormat(fileURLToPath(url)); + if (format) { + return { + format + }; + } + return defaultGetFormat(resolved, context, defaultGetFormat); +} + +async function getSource$1(urlString, context, defaultGetSource) { + const url = tryParseURL(urlString); + if ((url == null ? void 0 : url.protocol) !== `file:`) + return defaultGetSource(urlString, context, defaultGetSource); + return { + source: await fs.promises.readFile(fileURLToPath(url), `utf8`) + }; +} + +async function load$1(urlString, context, defaultLoad) { + const url = tryParseURL(urlString); + if ((url == null ? void 0 : url.protocol) !== `file:`) + return defaultLoad(urlString, context, defaultLoad); + const filePath = fileURLToPath(url); + const format = getFileFormat(filePath); + if (!format) + return defaultLoad(urlString, context, defaultLoad); + return { + format, + source: await fs.promises.readFile(filePath, `utf8`) + }; +} + +const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:node:)?(?:@[^/]+\/)?[^/]+)\/*(.*|)$/; +async function resolve$1(originalSpecifier, context, defaultResolver) { + var _a; + const {findPnpApi} = moduleExports; + if (!findPnpApi || isBuiltinModule(originalSpecifier)) + return defaultResolver(originalSpecifier, context, defaultResolver); + let specifier = originalSpecifier; + const url = tryParseURL(specifier); + if (url) { + if (url.protocol !== `file:`) + return defaultResolver(originalSpecifier, context, defaultResolver); + specifier = fileURLToPath(specifier); + } + const {parentURL, conditions = []} = context; + const issuer = parentURL ? fileURLToPath(parentURL) : process.cwd(); + const pnpapi = (_a = findPnpApi(issuer)) != null ? _a : url ? findPnpApi(specifier) : null; + if (!pnpapi) + return defaultResolver(originalSpecifier, context, defaultResolver); + const dependencyNameMatch = specifier.match(pathRegExp); + let allowLegacyResolve = false; + if (dependencyNameMatch) { + const [, dependencyName, subPath] = dependencyNameMatch; + if (subPath === ``) { + const resolved = pnpapi.resolveToUnqualified(`${dependencyName}/package.json`, issuer); + if (resolved) { + const content = await tryReadFile(resolved); + if (content) { + const pkg = JSON.parse(content); + allowLegacyResolve = pkg.exports == null; + } + } + } + } + const result = pnpapi.resolveRequest(specifier, issuer, { + conditions: new Set(conditions), + extensions: allowLegacyResolve ? void 0 : [] + }); + if (!result) + throw new Error(`Resolving '${specifier}' from '${issuer}' failed`); + return { + url: pathToFileURL(result).href + }; +} + +const binding = process.binding(`fs`); +const originalfstat = binding.fstat; +const ZIP_FD = 2147483648; +binding.fstat = function(...args) { + const [fd, useBigint, req] = args; + if ((fd & ZIP_FD) !== 0 && useBigint === false && req === void 0) { + try { + const stats = fs.fstatSync(fd); + return new Float64Array([ + stats.dev, + stats.mode, + stats.nlink, + stats.uid, + stats.gid, + stats.rdev, + stats.blksize, + stats.ino, + stats.size, + stats.blocks + ]); + } catch { + } + } + return originalfstat.apply(this, args); +}; + +const [major, minor] = process.versions.node.split(`.`).map((value) => parseInt(value, 10)); +const hasConsolidatedHooks = major > 16 || major === 16 && minor >= 12; +const resolve = resolve$1; +const getFormat = hasConsolidatedHooks ? void 0 : getFormat$1; +const getSource = hasConsolidatedHooks ? void 0 : getSource$1; +const load = hasConsolidatedHooks ? load$1 : void 0; + +export { getFormat, getSource, load, resolve }; diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 382494c..40db1fe 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,5 +1,7 @@ { - "recommendations": [ - "orta.vscode-jest" - ], -} \ No newline at end of file + "recommendations": [ + "orta.vscode-jest", + "arcanis.vscode-zipfs", + "dbaeumer.vscode-eslint" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json index d614293..d400135 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,9 +1,26 @@ { - "typescript.tsdk": "node_modules\\typescript\\lib", + "eslint.nodePath": ".yarn/sdks", + "typescript.tsdk": ".yarn/sdks/typescript/lib", + "typescript.enablePromptUseWorkspaceTsdk": true, "files.exclude": { - "*.lock": true, "lib/": true, "node_modules/": true, - "temp/": true - } + "temp/": true, + ".github/": true, + ".yarn/": true, + ".yarnrc.yml": true, + "*.lock": true, + ".pnp.*": true, + ".npmignore": true, + ".gitignore": true, + ".eslint*": true, + "api-extractor.json": true, + "jest.config.js": true, + "tsconfig.json": true + }, + "search.exclude": { + "**/.yarn": true, + "**/.pnp.*": true + }, + "jest.jestCommandLine": "yarn test" } \ No newline at end of file diff --git a/.yarn/install-state.gz b/.yarn/install-state.gz new file mode 100644 index 0000000000000000000000000000000000000000..9bffcd42af3a4226892ff2544d6ab70dc8bc6f22 GIT binary patch literal 669873 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

cIa}wVmM@jCXw5%TV-eS*NS|s^O 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

o$_xoK+e`Usn;Mh@|f zs{(K_JA7+Jj-$9q#H%8)KTg~x7k;R~qol61=cNifePiy;prFn=cD3q9z39p=OmaG==dCl1Yuu8K%*X5Ex~w}61$WA}vo zz&3FyHAKRGoxA^7z`xt1g~wY9XfjB*ChJ;vN`B@ z(I5GRPr_QgC^kY@5q#znr{UE;?V=3Lo-I`*v4?3!N9MJhZ%+0ML87)&|CIUKf5URS6pdGiH8ralR)@wA`SgbKE7g ziRrthtX)o>8#8b-i{$q&kR&yhZ8_mTFr^_Z2ID1jq|{H4!R<#*pbDeS{i5m9BTO}; zCeys_3=lgZ<>jOdOL9Aj{OOnMUK_@GgpOAJFkwiY&I={DCYdNVeANfVU{5(sD6!|L z1f1?uuth7^k)&tNz5D?a`OJaYP+~?g3mYE}e@>V6!FxV$QqHip3OuQ`$cDY;LJWJ^ z%B%y6_(4{seR+;V(f;xtZY`nRyfVP;8Ky}OhE$&NeBi8EPG*`wk!TM-d-75DHI@AF zmEY@Wvjb!GNt$ISiw#mT#4iD&V+(?Pa`bAN+BI8oP^p9LWCcxWrxfKhB2ChEYh`AL zFNGw7Q5JJss?W(P(AnRB^mo?cv*R>v zpW#*h=tz)Ewqe#l7bIT=|KrHFwAg@NH(+i9pQRIJ4UlF69GHLcUZ2i`D-(_23 z$seU28f)i_a$$&1sm>82yH2U~pOorpD-~SjrP)XvSn`86D05w=(xxqst}U5 zmYf!;`S~c`J*9cJm+`11t*W~?C+W^!aPH-fa7<(xV4pGMkU z<|i08iKQnIszAhtHg`h*`PRlz5NZ%CWA81=X0L;M1)`uEZ^&A~yC83ws zt20qqZJqn(f@=@%*>bUiaPvoPM-HUOo1}fG)J*h!QoWQvWy-6DD{OITp#py`w)C3~ z1PTa<+$ku}t2Q|)Q*1m>^2gg*>sQ_A;kw?Q#ISIHM+!{JeFyHBa(t#G{~h|<-(KlQ zZJA*H6VA#}1K5(^1Lk*Lcc=CpxxktEqT$CuC-_i_E&0wC^sbGN&x}WMm)V}#%LQdA zvI$h_E*Z|A3E+8)ouNoapjTSzZU!?4VY-z0h0j`3@{LAkhWhxH(wPc&f>#i)AJSBvt%#>w zHS_!S$M`vse{g!-FDNQ#mu6kAg^O`xlkEl@IrRxOY#)y5v#derIU{c6&5kO`^vF3} zT5XhLBbiWhsyf!{n=-ZDir!pe%%h?oE_9A`u44+yWnors6Q2Ru#%r@Djg?m-W9|hT z(+=K=7?!`7|9-b1_F1#u%Gc}B+uG5=CxZI9EKd#aNhTz`5aTH`%!-bA|Lhb7yVV!p zAQ|^a5}5WQ_~5oIYih`C?0IeUqckL~egUD1JM!AAWlX+WXP$sXreTsxUzq(l(FlB; z1w$2ecgZuvkN7P)8;S3^3%ti}Ye^)wQYLNBn3>Ix5UK2%P?U3&=xHyPb$6x6_M}$G z!Cy7IlWy1&*iJgHi9q>K0A zI@upQ9ZP>U@{8Uc4EDSet;$wv?8HzNNkz*~{x!0|eA-w*+_t*Nya!N=%!15tGwhs6)WCw-rr772w5&g09N};&u<+2jE{n>SS}h2+8_I) z;`-gc+cYP~Fo9#{Nqo#uGDYA#DrBe>dT%Nldjl!Y7IU%2jnRE)&~`q!KianPm-ogx;fj9o(myCzPwjpX*a~rgHE(btzI+hXEo?btr5tabDaN8y>rpM z-L8eCRf1>m0>OZLSp#*0SnZ!CZI@-ZL&$I@py)=`yr3!KSudf4B%{a5^>0aHtF5Zd zU>w1B-M`;*0{P!};DuUUi7f?>P!DakKfQ<~+IQXO9jqOR!7sEcgY^2)8I5nN#d zG)6*WsxJ1xNgOnc3rnY*+UJ0;;^mD5?t#&+xDR+u6__d`pFqPkHTSh8)6pM0^U3lY zbK>(=Qcz$~PbxtJ9;!#PQ%_&;M)A1q@N}iX$w@X3F_lfHkk@i7*0I!VfR&CYMH%p^ z9`uptlB)Spx|iIi4ZrpsQ%eDsYB<3%A-P#-wiuc?ol0b7LMf9p4pMKqjH4jVHs!&b zoj=Plaa6!f|E>)YH?MC+TbO%$3HRm)+&{`?9yyQW#pa&E|Amer?M22{|lqFCic$gn>;ijX`rBS##u`PC8&${iejD@>CpvJx5pfHKj{Z zKDfFNUo_C;JrD$+oOY+MzB&`vvlpjrx#cpp#6e}3_&{P~4KO(#wX50gh0>+^SM3e% zLxJokJ}<{F8uxeVeq*FmP^C_jjGUif-8#XPh~s@Gj9`(j6b4V5Fvok4Bb!&6y9>3{ zk9t-9=B>AF(Z#@2Lw&NqWL*!C<>#axxi;ztWvNA)a1iXg6G?KwYb27Bw7$t>zsX(x z-gVn^@@?o1t|=we`1C|g88*GIK=*t+OQ!69u!M=a$!ojKfs|@rr_5JjG{xu*oSk+M zoB051`ki{iPk-SdNrEU@B9~9GzO?=WOkO+;rV@7!SKIq#XhkyLUMqpgo52}R)d?0! zasF^S2|CR|OYO3q4#Rn1C}ZnVxyU6*dP|v1=IAP0#AgMmfB`g}hw~N9Ne-zuRTS3X z)?uNEqs)Ft?&Rv*EzM`)e{CCgmAi1tgQQ<8Ej-88o3Qqzebo#bA6M27DX5 zz=@)aAOc+|yiGz@;$h?4k!&~Hs|{|Mv1H1i-bNO!O1+pTSzy*04eHwcekQUx$Vqyb zAP>1}%Hm0|v@fP$`YVr+@^Wf>4ws@MWz%)enWc|6Ka}x^58PQl+Ia(XK%UE1%>dF&XTBwE47|#!+%m%}n_27C06YG%sRmJi1B~ z{s1>X$iE8=V^IC!KcUCa=r~-T#pwzDUd%vogU;dDFSE^;eF%?q=@8% zEmB%08l4?)FhaBR-rsVgNrh6S3^UBb=FCcljYjZx27j6SVeFKNheiG6QRNa#3GCWv zPJURyB)o^D-e#4E{Hd>8DbS|P|ieb^8$C7f(NsTOKi z;wt%c-LjWdU~%FD2N(lx&8eAqHfe zWk2T~8)f@NRK;~>OPhC+D!(;trNKV;b{9St1bK5WVKf`)_D2SHiJDk6O+)f0DY_PY zEx^ry@|l>~&!?qwQ{Gg}y;@Df`W6+hT*E$>+vfe-jr+)teMH$;K`?lkWobvWtj+46 zC2w~Ll-u*(%)4`{xD}0>ng)8_(_S36F>-qHNQvSnAm)4RS`-K2_JI5a#y;wvRvkzJU-qih{kTrLvr4hvjXk9f%N?f+G+HyYI6Tvga8t- zj-EJ@M4Mw7Fml_?zs{UDES$iye8SO*(7#qu@UBrD6Fg@sj~o7ABH&A`DNzMmw^@&v zRoWfhk)L1VRxcr&JCo9{$u+FvEvbB10F=ZwCIky^hH8HK&;Hk`s$LAC0%o=Y7 z>=_^j6y)Ex_e&X7;WURb$DilQWsh%qm}KV3Sv#JX8hyz?h`q^`L^zIn!;C-80;!JtpTZcU^j!(a&peMK1iDdrm~aSO0f4qk8eoU z#hJaze;ySxASiEuL<3RYp2Ltle2UY;>p5$f1+j08wzgcn#pdOG_Q!C|TyW7gOZhun z2g2lY7Cy`DxSUHJgwCES&wPAkeb*SysTt6yQ`!Vp-Sb*bhYS=Sy4bdvAHqDz+7IBc z>>Or^catE_BmOF-e=`M-mWO%Vv%Ol7qgtN{*Z^NJ8dLK-2R-=iWv-@ioD`qiokA-m zPC{^M=%YL;0h)z>rJ zL$pk6u~v_YN2~3bDY0dtL~`3NSVgoe#dHEb+9VPi>5jaBSRo4710?&7W_~cAu0Gbo?;t${xS+Di6t@j52_P*rGKfPO_ z=vKY<#<+tShDH(Y-L7q!>oktUGyWiG3w=J%8Fir{>gPXYN}nmm<U;k&J$hz`#qNFv!_=h z_EX*6PMe@VD?IIlpM*)@YJiaEdz0zE2qtO|*&j)1)PlRa)&c>NHFs#I{#kqldMb(1 za|);0+Bgv|6Jv<1pZ#)_6?z|EB0Db3XU=M9ISUg9q}ex2!8oCfCZy@zgQbq{X?-MR zjfMW|9KS@(rhEXC?w;8C*`Q10G7dd)O2eP zHVu;29o~{NQv_bP2P+-n{r-rQkHoZk5!7>d6;tS%IgH|-TskQp;_P{IeEsq^lYnXo zY)vu6@^v+|N~Fono+f0sWKlMDuxmFgNs-*SKWp&#L`=X>4dhxe2}qD5==XxCqNIZ*5Ys(d^YimVEDGK6nZ1?^Cb;%OqjlCyi_(&{fzt9X!p5n$)Sh&AL`e=7PJ1%(Wl&swL*@2a*alP%#EB| z(D2S&A_du(kN194(}tnbI2+%OSKo6@(H0=f;kcHTavTFLa^7YRrKX+4!EmdCVlS?Hx5xX(l0NsM;3|IX4RZv z?i@gB+<8hnVXOS6yn}K%YPG7v(lj-h;{IIkD(-U=9usqcDX1+`)>!orq7%cE6?|w2 z;x0CUn_Z~=!#0A6DE_?UBcGHNnq{suv3bqv+52JaUbY^2T7(r+;-M`E*=WEOwF+nE zlT+>cB(JVCVeWetMEXtCIH7G;BLuzKIi?_%U(G;h%jvQOp7TL5@MdiU`tAnWZOvt4 zZ*R?-(@#FEWNKL~k?`a!^xKaZIYL0a1+zr@B0n8p$q_f7-)2KkhIV%oFv-W>CR6vZ zfzA2$Usun4!ZqKa=Kehlbq-DM^J2JwE_`iUZp++D#_~C90{{FLRoM6>tWUhG$#nOF z9bzCs=OFxa)4ag>6(rj%_E0w4Sqm7pzcipWy5737&&}cfE3cUVZcH0S?Rl$&-gdU& z+o12X>cM<(i7VbT>?d;g%eD}U`&2B+4{yriug2ccD0CO365WuQ2h>bxzQIqQ$JbSzI z#dj=|SZ-_=-mk4sz$g%4lPd@VA0;*!>`EUg&o|}85dib_SqCeZ{0@`|hzPvn4G}cc zX~wQo-84aD#xclMrXOw7_BnJ-^<9p_3xOx8?Sd}WfGd489m{;dN?4{K`S&EUH$t=| zkULwsfUScIJVPC#HG8VH)*M9%2 z7ml&8j*WetnQN{Z_ZU>vh+cHiF<nE9}FvDG+zEOtl+9zv>((>WoO zMPr`NGNwY%CySCEn3S(}^DJ)p35}|V{$*0}6#S(U>VaO!9H3@H0cJ!}O@ai+ zW}oLeEr@7Y6OrkL_Om9eu2hamAXFug=O9s+#}=5@5sR>H?H-IAZd?y!w$w?K%em7D$fxD$y|(q=Vak>N7oTR# zS3i!SQR3P(>~hTe)P5WwcE@%X!Bv6@?uq`^=6ATf{+8Xy+nMcveCNM(C)iggu6DL_qKKRbA*=9JCI`P&lp zrpdeAZvp@tg@8cyvTW4SN$eVm5<5zf$t*iJ|1QeqAs6i;Izf$u zakedYz#A74x&qjW{A%t!(fL$*5wGQ?vsnDi?LC5Y7tI0}q30v85t(VmO-H%b29hVx zsga6(63eB$=Ru$;4JnM97Q9M~2{M6)H1wWgW427$r>NvM<4 zLwNJ1)|B&aA=WKvlsd>-G(+P=%)DG;>KjhS@$N?s{w09qpX@AUI)%jIu;;kG$XFOT zPr`iJB4UXo%6+IsCyX6{A2=dni z0Tt63sIRw@w(I3HV2@ zm)a2Q$upYxisv~zCApAldCm9xaxIbcytsrj={EIk4#-uf)#_a!ql1wMdPO__+!klbqn*xQf;zkxwUiMacFKZMV$Y)JV@-cEW z0?6p|2ST$fXswoC*TkHQqT6x)V)y&)7DQ6NXjyy&xi@3gEB{SlNBUH(jTT~jbP<;c zlcMc6Z>0RHhIu;@)E5%~4T@fD>^m7{vSs|dsan=ojd=jtX1O^@i3*(QTRYhHyh|HA zswiy-+&{V=)__%0=gOHLyMhoI;V{4@=~SfH7Bq)K*x~!Fee3wj!Il2|I);TV4Wb9WgnA;yiy=OPylADQ?tuV zCTLYI=WyGk%0tNGX81&z{xvWj%<5*0K^|@?J*Z;jUA$IstSUeb?Hr zFFBC&()QjSU9Q|q?ikD6c*Eq#7&zPkNHaCPJWTZB-GryzWzO1Cj+RPLONqH(^k-Y0 z(8*NjWi|+c-ep9e`UQsKF?QMc;iGp7e#UXztSwIDt#`d4tKK(*^wS2Z?Vh<5lT{1! zb8@P#J1{DtgP>1t2i1_kl=2K%EzXUt*~I6)xB1yj%P!NreC4TE1(r~f0^aAyEBTHp zZ`5Xa1GFYmem?6;HZjNJGZp`6;0J>z9p#qfF&;T6gWA10vJo-A*=l{}kx6#E!1MkW zE1>~PfyXQerbMeP*}UcWvI1(N1fke*YWpt1_9^;iLmpc6)VZuI`voVjxXqY#vBs3} zz2-yOh6)BKia$9)mvWIzQ|hk_0|NYC4v70)5NQ8QB~y4T)EJ3*kl#5kE6n+_QwqsE z*jFLH&FH$ME?+D(DlWkl#{PL7K|uDQd$3osFPVEzo24z`ESzWRV1y{#Qx=tOevT$p zzKhFig4y)p5nf0~4N%TenE4jY`@k_dl4J9ucLqJIDVrYIS`OF;Rd0-ql)-H!kc+;W zB8=c>zI0KmjzF+x878M1)QwF{@N-axzDdtr=Oo zB-Tf08Z5OEBwSAG)~b`sYG+a;*{_8`ai<{=$jUkAwblDD?G84ib)9lz-(Ky6k8W$yyYogYk4;f`LU6-dr6$sWneznZo}X$Fzl*Eq(ZiqSX)5-^W_M2W-1H6+L3pe{}{o6 zfS?IMd#VYWbbGTdPoZY(_$zJjYHqP^S%k926ny7+isbar3M(ALz%m)g7fDpYyGazfcx=agHUG4la69C)P7a`|QRAFWNjB)IKb#0StmvsxQ_)opEDr#z;(lx7 z8`gF2()To+i{}nRSaT>CNe*KD8-4E1Lv)?dNnh_V5GV!4eCBXV9(*)EQuikGt6Gp# zAeH4Sw`ue0XZ-2l^n*d4lN_|H^y6OKzlCK(zjSA7%7mT?Y!f;hWiwq#?!ZzRFU|e z$C`A|5~mmAp^b(S&2}jEP3Y+>eUX4#Yuv+*J2|`$VqHPW#SxnXeBsXORRE(lp5sVy z!1cd23xQ{`Bj-YCf#V4+!@vZw>5*&_1h~61FGPN|?Z4+_lVBq$N+CJv=VZA#;HMm` zMxg&0L-Dm~LZ}*RZ~6^VDH8H~JE7pz7QAW9pE{Ce+d>FvvXhi*J~uj{=U`Tl9Qdr( zW0u6U!*nV!ej`~$nd)FppP>^k-?-@e0tpi& zxVYwmjTc>{)^&pa2y;Ki*qX@adw$1&+7&?s+4(x07!5okQwKbQ`Cc`2xO%m6bG zPjSICO&%S$elN|;_h3yN$OG&o70-qj3+CpW9Q~BIVtz)#C;h!tvO9yS;>07mQulw( zV8a}Gond3eCzmnrItg;jr~rwPDIo*dn7!2&zCBz1VTD|H_@H~#+>5kIjx+iNOS5L(2in*rxZ^`c_k_5taB8lO!SqW$%mLpN0DGw zqLH3t0E>#6YerCbKn-oc%hF}AyQ>FnmatJ_$6vHgwz=BZjm^pd^K#Bp7c&-i90_ag zXAU?f6!%@YWMAw=pHBZp(5_p{3id{L=^~z<>QGd04le=49RzI1pT6W~g9DwkaNpp}%&i=iX46#8^YAasf zAI=8VZhEe2F|9HUQ<5VI%sqhqZ0l;Ooin)6nGmYGRdvo{xz_i!y;!GKbe|la(!0;G zNR&TpsbQTk?|cjpTbax+9KB2pM)LAu`c)=3AEompAB-sa`qi!w@&kkASriBkdaVHnW6?+^Ul8%6-l0<#aNrWb#*XUJ}vgmIz(j z{DEK2jZMP0_N>`~<(84BO-g%t&}b8o^+-}$7+~bHHFq*6FW7!0%}mnf#>e405DV5- z!4`CDK$PdxRs~+t(xclN)IRdiZR07xy51|Q zWun@~1Tq)FHr~OKJs?viOY9zmfQE&u{iC+H1hEFJYd1bm-oMqviMw(#RKAPxT`k8> z)BAf0I||8BRJeu#ln*)=$CTb&BJF(GUSFAv?%062*PJw#dOW}KbEhemd;FHiki$9$km=HVmuzX5E|08?()U?SXv5|}@XzPq zbe)WbLskN;_Xabj8d_P#iGAp9ugtQjh2?GJ8<9eqf*qN6q*hO!&k26%n>|=$ ziNjntgQyrPmX6z1cJ?VY7>7XTq^se+5MuYP_j;z~+7h0nvNP zHxIH;aK`EG*beMdjsu^xoZc*9*h1O@PGAqCYrJo<1aF*sy2=5?WV!R!OXn6nBY-c5>}2z|Bu)#(T?;5t z^RC^TnbiEO>E0}Trv73Py;_06fj1mGOR4B)od&p`o5zsXNVy-WyJJ`6WHS?hmv=T13e7_utX7|`h6<u(ClT^SO#(#x~0bOk%ms3#PK{yaRHQa%GeYd|!v(L|rRI9Sg+8 zmelnX@s@)hTEjG^fU>-glWp5jhVOMrJUiwYKaZp(7)9~115+D|xi4!#$nb7S*MdM=18yIqyI%)T0N z4iaZMne;+d2I>j7IT%x5*7;C4VRd~6aO8i*r?R)Y(EK`o#$Sh2?(yIHH}A3$@jLA? z^U$0qc(0Ua6U18*4ic2%cjD8xtQLK8{cMrT_?&{ifP!V$f8%Pxf^1;~#0@g#Eep%M zTL!(0TB_;@Sey{qZmEjD;>mpu_dnI|m$;&hbTNp_k$GweP1L8lp2+Bn;ZQB&kCu8w z!^;{PCZ^kCD?ByijT&?DT@1QOM7zFR#H7U{A?LiLa2yyRL=&vHCA!ZHGgD2ixba%I zR~`Yo?LH9z(3B4%qV0u1Z}+~J;W3@Rc?%Fo(xwbG0<{wGKKeHvXTIX~B$uO>p+MEZ znC^KF@6J@PFPf968?)(iiPS!8z#rguY6B%Vt?Nw`2tSv&&c~uD*9-SQPa=^sC6qPY zl4J=2qe6J;+9%?FHPt`FPuUo6zGE*20vvUXkrduwu^qHJ7z zp&kwm7xnzhG)Cv{bEt{~kExS;>~9c<*2l}$e(fN7vbRs%d(gSUjEXkdGwhBW+o8-R z4|ZbF)zpXT<$M2(zcdpQH);4CHzVhMCUB-&HAKia3((n)GLEz}wJQzIaZT0n@c=0<&?T_&A)#z91`|h@I*3iAVX~o1y3ERo0pv;k^!~u z<9$}!W62%l?4-*&v7AT|xLe&8qh2izeL3v?JlJ-rwRrEYSVpY|eW@_VWuG8tHicr| zU<&UfWL)Qw$X$Z{2P=jIrksF;Z;aShrU5~!DOh)lMQkrpawR0swyrE{Bsn}5|JQS* znz@o_gGaa@(qUVfxXyS?seYHkzHLHT?nGX-ne)Q3d(q~uU72Lh#B;o#RQ-)JPJ*}Y z9{QJ~li0tQ;Pqe>#XOGv&BoAv)65~2!zPmFlUT@!CB+%(*#!7RQ&!emk2wgNVd#n- zo(qvb3W~UDY<{HX0ov!Md@E7W7)%`-r)-tF@mVwRPk4J;v1wA&7<2Rez^bu+dnG?| z^JX%`kb0i+-jBRdi?H8u^U4Xbn`-ytwpexN6aNTixn~Is2}?W0tKK-BZkB#0Kw=MS zB4nC~|55yVDDCXd{caI~D)_!1CBMqF*9yjR81S6LUIGg4=|ny#$(y!N3ug0fTO#5A z+<#LU?;?rxF#Y8}sA$AfP$})XJe}B)wYOZ5{wPtX;HMG|u%%&%I&jqXxx(jZoWp}` zQyJu=BsCON^k9+!`EPUz+ygdUYSlXh3LX>P3f`T#bsrU|(`qF5c&zFbu_K2l(dh_= z+L1$uq~z^TG<&oj5JLu}Vg@*!uKs=VuXk zQfkw>LY}E1dLu)JC-~KftD){4%n6ZdQK;;=J%4WG0*d_1)aHMJZb-I|#yRPd{SoiGQ48&2?l%NwzP&g%dbgd^V5QP>8zuU()1 zOpMBnX^GhvU4^o)2zoa`=`;zKT(=|u^NQ!^4aEmI@770P!mt|VPCUYg{mx|PZ$kvK zL~uPEu-G#MN{ZsSu&b7R`C}j?#E8Y zo|mi@LZrS44Zl}4y|}*2%{tg9OTeG6^+?pqn`pJAT1uaG#PpqZ4tLWA`CcSe?OG)A z-CmQNUirrc$>+k&Iq3Kg5C6W}xj*+aKYYIPVR^>eR9E(_EP7Jt1{jlBnCaAC_9(ua z1TL*;tH-&ksm;Gq*-0?Zs}G#|<~CD#GFrAzMRQ$idCCoIR@%|e7Jb(8B-{uGr8*2; zOzD$sxS&fVLZF+ZQsE;?R%6vsPms5iHovJ6?|roV#FmocfbN2C*Pt>kyIN}f&I?+v z{lqR>?`OlF&GXxTp01roV?Jn=wVOiVJ*y>_I_}Bg_z*A+ukyF~Ps_4juJKNzWUyS_ zZeH;Vf7{@}+u}RX!xV{$KkLiF?W=w(t9O36F9+YXro1VRm`fV~%d?D5YHT^e=gf-N$|`VRgQs zT-;I^qUL@~-t&}ef$dsQEL?t>roMHR<^0Hp2n@>E3zEsRBJ-+53*&%&QQTMHS zkwZh`EDOIxs1cy^u@2=6bLBNGHZ*P2ww{W2CBJw>Xg_W6REuh0lCCeixGx0=A@x+C ztPT=qy%3yWBAzLwgL_%YcSBBeY66%JG!KkFgXms1b_wQ97fp}EW`c-K?4y{fyb=Ow-9@qGF+0mlSpxA|;`}+6Fnjx28c}EU^JH$kYqk_&_gEG49JPIB_PCCnV#z43XZx{}z*z&58O`CIFPx&X^SwxTL<@iw0{64nb>T0*LkEK{^CKDa|-l_a^J>EGR4Q6GN)G&)l@6gRmb9AnbolT8fM5A z!`X1wz}QwVTae+tYavtA+squkAj&#E-~VSErmO*Aw;&6VYA zJQCBvNCN24aUg5uJAm=OmK zPm@KIi>JcS%kwvh`LkBRy1J+dCb8%}vdkqdEZCdc^9nyGX{W$AO9(7quGefTkTF#R zkiVKo%nn2KOM9Rry%d6k^SLG0C3N5KPH~Z8%ZDYIs3M}Rfj7irD4yi(z89hT&Fb~a zHf~CO-`pXJHUvd`X^n04`330ICJD{23aW8A4GMf0nj&v44=lV+rE7Z(YLOwcP!%Enq&7{pY+c)1#Mk!qfQUr_7D8=AsK=`bbxvh;_eZ-f)O*uIr zAGya@;=s%BoQ!+X*+1T{#ggVAd7SK_7RJK?1u1CBC?|#3S7K(YKhJEEEJxsoW#CS_ zc1kM39?E&ynl#mNfV}~>t3)c`D)8=NE$aX=$VqINu+p^jmub?sOsqF3)<(G$0tXBg zFpcf;CHOxQO6oXsHf@vFzFJBIYzYP&oI+YqO!1)ayk@pQ1GFTs_OT)NoDb_jWVTx2 zs8iP}h^cFg${kE{=5?c5uqrtY4cSr4^tsT%s40pJ_-JL&OjKo&mb7}2f6b70s)CNq zD|Gy+y#_alIaiJO<-77AAqjP_DE0j$3q}B)WrE2;zrRZczHF)Atb20*D4L{X#H}*t zr8LjTBL9?5F-AJc$3c6uG9|+IGE(OTiqHHAOmg!#tnU3HH4k;(gydr1*{(-E^I4i8 zmqstmkY=Z0&r3->%8mR=_FL+FZ(QW991qL$;N)^`MsSx$M%9#UN-?}z;3ExT-zD&G z3M4X>WsqQxIiV2YeELi!g8FnZOrne8N^52?#bml>es^7;VfD_1Auu=p%||@(oEQJo zQUY(Q3$s79Rhp{El#mkAyirZezX?!IJkbpNwr&e@xpN#*CmCzAb4hWC1%2V4T>{8w zp<2(O47%-9=( zrlv#QVw4|gzSJozmYFmsk~bw>D!4o`HQ8YphIW?Vibu$X>*F?X9{hbxEf|&>3m7>D z-%)_ONJ<9@;L|UmL#vaWWY6zqCFq#%$GT= zkfzYegZ_vi*pB2mg>apE^0c#&s;wst6}W%Kc9<0J_G_0XMPT3uqovKxL{k5-3`R=D zmzo${Fw)WJIdyC-=C?fQOEHoXTeVJpYhziPu*e-X59>6i3aq-TXT5ApNO%sUb`mv@ zWi3R1F(XOwtE--ntfjN3a<||~$Cgp{&Oau#E(AS)#4Lg{^3Ol}7RS!&E=7l_>0++C z!?gMJrpLs28MCjOSz6$Spx0SG zbQo5(UzNmcb{~}RqSUrgvI5UDPxgjS&(HqsVwPateM`ljx17Jm`6q>4pjYaG+L}7a z$L5h9>%{)s7T7WI!*(*t#wX~28Cy9g1fO(n815p8+F;qU6TF@)w zsZhCU%<1TF5E=5~_^VTVq@mxRi())SX-7gC_;lFo2+Pk^{v- zKFL~@%ZSN%e)H2^r&N)aTN*^2vVWa0?nUI@(5%$g9*v1u&o?+PeluvoNmq%| zisn7P!5w3$hZtbWPKsdJ@saI|;=U(YaAJ4~Xy??iP0tg2^0t|kkYCZZ#O4MzV_L5$wd1WwusJ_0I_?n>jV^g)4Z<8&3YIhO8$W^d2U${T?I5giODktm%6Nyd z*LT%eVPif{(nU{_#K0C*wd4^`D4!|xiEz{^_|Os90<~5w`RPbp*cPOoq@KJ(5jU42 zmHk5PV98%m(BjZ@4>?Q9>Vn#5d zR&(U`Y{|tzhaZQheE8XZbaBIiFpTM;PckoWg4oH`EERllzMn5I6XBbm;Qo?)-1*-b z&>4y4P>y_kI=`1`Hp1IJ7rQ)9Ra|%+yOWKa=a!II>y9b)2j`^eAz_%Co%e~?`<2wR zoe>i4x$0Ji^AR>hQwrF`YjS^m;PJGi+1akh%x5BZn2*K4R-$`NC}@|g+nZ;Vi$`2E z;Aw7UKZc}_E1EQ%^h}sadRsPY9w&{B;O&LOwO#z3|RLEjFOKDcB%_23O<)ycVfRgmTsF&wV90ZLd(0 z0QK@=m~VUM0lIA&sqx>(g6V4G;e+3Ev3tt868SmLeYWD&j{{-&LgvYzX*W+isW1>G zIwDDAR{q7;{M_lX0Wcr$%m{nrMiU4a%hXH7`hddUq$70urrD6{{@b;6xpI1m%X;VS z0-rQJ2YuZjC?7jWFV8OzdJ@22s`T$nn&JLP5HHJb^Lz~2jK_w6uygO3KM#;}@jV@6 zIVs(5{WW)mX7Zwf-oEy5v$)yMKLJC_PsXApE+P~)Mst9f-YlsbYeBUvo6v`Qbg)h! z*~Y}}Eur~9*mj1tTr_SsTNE!?yRD_mevF^9 z6SRbTMAE0^8&n4iOUaGO8jjT5O{kLTFd05VBrj*Z-Lace2L$LXout-Pz0-GJt)$yP z+0ZQWQ(uMyq!|uoLn{VNj^VLU&jsITjm>MWeObM7$RjFnXszTpfBA;b1ODuRX4=-I z87E|*y#5@x&SM$84`Qiozv>1O$>3;rf)=?OW;wVB7stGD;bGCfpHs(EuCOtA=WcvU zK4U7B#EhWlgEsM|QXze~Z5$c!O^IXUrldd<2#&KD0tqOAV7-uEQ~ow~St~kh>VqX` z=WzS-FWJFZ*9p4pyvd&}fv*V+`<6p;GHic2EaJcJHa4vFGIX@-?9Cq9>fkd`)~=6T<_uyz!KSb1mm8I9>YB%9zQY^>hmteMSWC zAJ^DfZKGddUq^|SqhX}PF3_65G06@=AzC{59Y*Hh+RQngiEysq;7goxcux(TbNHwe zrn`jZ^LvlCEQ}>Cer*XScdGC0xgXy36I^TSiIBb$h1$1fKfTxl!?K2dOunz(0G55b zscwFRH9le^Gm#T5gQ@3dzpQnpJiz-$l6x@UKrk{10e`oxnjE3PcGh)owdPWu-Q}oZ zq?x~NXYejw^hPR^BL1v;$ho|ml`De_SK?xbV^Vdtw-M1O3P1FQ@LxP^Ma{9x#c)bMD{D(lxeGFTYJfP|f&F0rlKOn#U zX$MV-62D9~3__ml7WN+vWOb%S4%JRa_k?QSrT8m7zxFeXz33z75X) zqOOyzvWO=~u-96VOiS%&zHO@|%j2FG)jcJvfqbYYLS63;e5gDxHa3xwjYbb3&Tb_wut6(sHp` z9va>vz@$=NY%0%R3J;LMA0$lbbZ?m3iTHS+=Ug$8M|5ueL;tAd1}81>Ip&;nI&?)R zpR}>&RMS0?o0|=>h38kz?cxiH_*tS+c2cHP-iaD#J}3D+{YA!H6aEZi$;25RW{L4_ zyu5qHPMhgrgO&hBw52hgoD#&|ny&?N9eFLeUc}pSnGE99`P1?)=S<=BP~`+keRCO# zSzAWi8kQhVeu!vex0Q^fibDXZ$)8Pcwlo( z+j6p!NO9bh^{AZFpcPWngvsDBAtyg^&CLs#2@XyLyRD!QIl}LvnD+=5UrutrI@9LH zQ(-{>(g6e2CyK6#e#vtqp?vUM>C6M&eAD`#@I)7}tQ)_Hv8K>8+x0a<;hRQmFHifa zESMVo_8uO(dci+s9M?EO5VuO`#@=Sua3pKo$r2jnx|Y+>4Gn@$eb3O1uz7L-fg3$9 zve#!YR`O2i3~h6+>l5JEME0H+(J-Hl$v7~R>VK_f;_ls4tCPWPCQ~iqX+gwl90}q} zN2ohWR4}DQss)z3`G)hrQt zN?bgc^nBilU7|hk;9Y8YA2}ml$b7~-TeW#;Tj!vs&Pq8^cjz!14`TnitK2myE?(NE zAh#(ja@CGzbTlkC;pW8)nyp<vdFu6(*H!mno``A)U-2|Uu+X??|yV0GVgXY&1Ttsl-ItCs&3nfAuJi>g0%_L!_ z@c+tii|JmzVcE7=MzyGn{GIEW;Cq!`T~IWF^~1;R=HeNMdg%=5xt@AAuO>6MiP;ue zN-jn)Xai>gJ?28*2nJkD6L71V-DIm`8@N#TWTDgw+y2;B{!Nzg+nQRPYN`#B)IBb7n{Znaz?p{ad2NZ7%T}VeDY$FX<%OE5uy-?Ejz+X0 za+)bX1XGL51kh3`+oeCIgdu+jCK8-s5M=@w5HO{7`gC14>@>b+cjt!r_L2$VLSP7j zf|ch8=+{%=MW54|c*Yo3^UUCMrcqAKBCvPoZH_DV(c#H2eNqhOu`D%QKuu@ky>Y94 zu+oB869Vj8cUsXCFE1Uv~3vq@$idS7|^kpo_> z^W>Rcr3hi?YH9^>?X+n{Uj*6qavX?L4-PAaEd}GM6Q9VF z_@3j$z0pi2$wK?Fe`TtfGh%b>v9b)ZN^vAN&AT~$jATgIoeukOaHIi zPeA-2+Qkw!4?QKqL*qX0=9sU=&Zh&)xAmZImuHbvk@$Y+EWTiLLI@*_TxIp%JLd(Y zIJ}bS58^2c6|mAzNhPr2kmmYZUE4_b-FvIG)LZ>AA$=!WB^GbI8rW4m^qQYU(bar- zSQ(=AmJo-S+Md*8T}?w1H34f7Ye`AAi%QB5f(b9I9pHWUn!x4u1q|XrH$Ju8G5%6o zbZ0JR`4Y-$`9%o|2>@k4n!h|V4*jb@R<+9Jxw$hE?Y9`nK3i(^Z)&b;ZvL**sQhFY@WF}T~${DV1cDD}3H<9Es^)P-isTZuoI z56sKALw#g9j_BDvsE+wFB=pC|3bTUzuEeZnAdbDnYj+v!4gzd8JDr5-iVQPNi*<}3 zpTPRuIKn~wpiLhP@>wZ(w??jYm&fxo5)Hwk`(r2spyg%fj?Kjw12OZcUt5d$DRbEo z1wyP3S=;>MD>1EXTNy}hW$oDQ2qxB65xo#K(7))Z{Ev^8ldV;PE^GDU^Ck8ic^$$W ztG3v<{SJF6A2Gq1y@zPtlXQ=h1Vt*)hxk9=JT8T~e)HYF{lL=5d#l~Azydap$<4vk z&BnMX*mF^NWFT>}lQ?at5mvdqf{}o*6%8hVGu6xtRp^V&YqN8De!JX#*s#W05p`d3 z`auiZ#m{TYxlAglv(O)^a{HaAzB7jX3fA!*elF`-sdMty16ot#UL2phO}t~J6!4sR z9o9Hg7OaGBuM`|3S235H*kzz>PZ?dPmW;dUapfKZD8cS#xQ;~{^$5nOI?S=+&Mo&`8X$+qXTu>-d< zM*0gIHn?LLy&|<8$o?{Gs?0~UnUY{tMCXf`KOP$vIk{{mPGRd}IoeZ-4DaRGkiYZ( zid26ERv$@TR=|z-EK%Vv-v*qGwBc#uo2oU{c}}6G@|}}SIPJTNg`P4acxIzDN7*6x z#dcm0Y+h6Fx)EF+TcUL<&HJ{S{pb0eKPQl6pbdfS=E`!VjPREeamknFFi@Y?$6u3& zXF^4jogNin4s=e=nh4YsNQ3XpDhlN)SRZ&x;wmtE;SZv$O-YUWhJrn%5=AO}i`V~g z#XXPC?kI&->X!+0!j0{O2o|2gn`KBA3QotHQe?5Kb8qu#rPoiaAQw6XQZn+nrhq9E zhVJ<#f;YoZP-H8DS~cS6LFh?*#(jGzVtw?v*ZgT;YAK=GcsVzL+Bbb7@-S9R%cHay?fKf@#Aa(}B%d63J9V?c zgeLc#)4@)%;;#6Zv;Ds<4^{muO zsCqnSzm>HMsv+J@OLRnNdT34tz42=`EYUik@{{7ff0kwvdx)brVu|5w5>pVS?wBxy zF3g^mG;%X`$!!_%F{W+sB0H9pnpQoEOmsb^MVH|F84}u#G(@`8>xpd1DkJB+qm5SU zgRa4Ma?Sc4d)CuL*Ju!{CQ#^vocES%#~CIM3htW%o7a6H=P@=6D(0P%l&BViW3S?D zo|XfNk)Yg^Y?>z$$UqqfA2_frbz&ajo-6H`TDouYZqm)}O{0GjhX|_K{ZDYaYIhOI zHR%rYqWQxx37TSfodU=<_FEr8@AbI@Uo;n6{=#f?aIs`D*OJj#)ngjUg#7OW-jf|+ z5@zWj071aeGg>Fs0r&i$UCmS>a7xiox2uBIgej{WWRlD+3CxEr%q)GYPd? z&M#y7pxBfEeZ>Xi?u>4t7|8WwVzJRhPMH`8J+oTtmoyh>eakY z{`^kMCMfc$x9+6wUSt^=wWi%wxnc~+R9+zv*NwdV0&sRgFgA}uyL*n7c-&;%$@eq zm!=Db?=gYojJX7j~l5dm(vGjuOKk+OA+FtJDe2C8D` zVK#m(jst8Xa-Tc4&G>y7YbqcU+hn+zf9HJcNM%V_2{F52+qCf|%9|jmGg1~JHhux9 zL;KkaI0?ubs1@*&DYa>~l;<`}nPxo!uyz#^S&mM8`O-y56%aVJ zrTz(u>qt4~Bq)~ou7kJHPD%G-S+H%jGIqf*Q;@Tzd|HW@jR0z?Y{Qc=N^he+LgOxi z+MR0qqNGmk@uU#{jqN0#nj(`e3^D42+9lU&9l7TBXVaR%I~sN{0-gBVO5*m-B>3ozN$%p})?a=n=B`^_WGo#=zmEL!& z{g$T>J9YW>MdLOn8yw+Nay%v!CbxKxyq|aJ{HC*h;~ZKZHTkZx7BN2==CngY6q0cr zCQ>;hl9&s?yPio#rCa+kOfFIi{?WHD}Onym!3I)GQ?L?{&8dz70SBJs_&1w(OLB!vQYwRW5S3HvB zu1mzSQ4m<3BSI7EG2BdPds#qP4jP_szDnMZ?o1G#NowNX8(f+b%;4Md^xOg;KNf`W zT=Y<&weyyu zXooFHE**{Bpnd;yAy2^I0!R?ysq-B`U-Ep3Z=4#F zXOx>$zC-F_+8Hzh*Mpcq*~d`Yy{#0{i)7J8c9 zlP9sHjAST(e4IeYsO28+N#%*)`;+IKw4FN|xRftFa>SBn@1(@srY{Fmt)ycc5OsY_ zcgbndiZXIiN22NstUQY=dA$`E2&7T14U}h(aPo)Y*%izl?l5gt>I zF)Lj+B$Ko3w*zQwR+O)9dCL$LBut!bOF2A-LI^}#X zq;CViO9W{TYFLUw{N`xg*G2cV<196gaWl&zE~9B&t@mIFTg9*9Zl?qNoKKoIm_<9j1LDyvc^)r9S8GyJF(5ENq zD8~VXq&VWNjgrcUsU>X$V_4D5skb3Bj3H_01rSi^$TejTzFWs>okS1!ZVg}d4Id-U zm6*X(sw&B07NAl{2MgN3%T3C=PB@u>$AHkpp?oFnjW-c_zj6RmKWm=0E5Nub#}=@P zltAJqHKa>R0;hEaVS+DnWrqc?mtpO7CZr^lrY71-H^2f=(Aq*QD_7+shC#OdVc9EE zHtZ8l0r|@OwUnDVHqRjO^vw1-r$J%wJ%W#q#2%Cr>Qy=SIqBDv`{F>@JTM^d-zTPi z-%`c>#iF(_XL=!H$NH(#8&4c}h!;^kTV1-BVehAi6*rU#{Yv4|*rFK8V?sn2mvTTT(0M zlz|bK%`y~r6Oeqg?V}(Q;KONeN?I5f|2HO5iD z7g-At?@f7z7dP2>y&sCdRMyU9IQwYRIq3S3Tfg|npUbW(&hc)tb2lG#R011L+YzaP zxtj)wrYIZb2dz~{R%j1e_ac}d)dqnf$(4_iL}zY0=M7utSUdabLY4vkI*ti3w31%( zs{u`8#$iveWfa$#JDT~_suJT=HaAJ(uQj>g2<}cfG@OH>;y<0kP74EU>6PO_7xsj6 z!}7q^9i)4i8rY~TvlQVipKL;L%N5Jx8rT{q|Eq0aR$V-V*p~$^jU1H(umpSrK>|YD zymAZonLzSUFCy^xvqrsIq24KAj2zhwC)+TRe2;^c%AbzVp?f|*yEXOI7B=_5K@D~x zb(R|FMpix!UKQGnMBV1QERT=K6fqZ88SHuE_7yo=N^bOSCJ;iVu7X zxOtVeft{CWf<1-g)w84g9arGzK3UN=u1~CDCwLQmN+n=BPNV;(#}FJg<=1Z-{`RNd zly6B9%cS5v`F01d&l`{X{wa?FJFbLQ;`^zrTuObcgzNl4l3c!R5WV5pWgbW0FI6fn zri7$Nb9P#D=W@b=PMBKPF6V2lR}ys!MbryzzT$U zmyu}58e!7we%O-1pb`(;djm9}!FpHVSoshnn5|oXwcLpxq{ipgY|B1Roe9r@SqEPx zMdsd730re-n_)r%ZDGgM$A`s}KA#FvC+YiY_fuTYJ-_K0nW&{AdUc_53f|xcYRtlR zx!mQZeJm03&_Df&H+i?QR#`Dqk}q?)6I)T0Ph#9#*%{|~cnbY8Ja{?d&}-VPwfBqq zz)!01%h^~{u5`TBoS7WG<4MlJ9PKBolIhD=N_5sW%zsQsX~x~RRL{1raSSJH`jP9i zvVAdIXw>(0UuTk!G*#t$xBr_WI&HxGxEhzAY2^X?AY<9`gEoV}gqhZ&%WMAX2a?Yr_*2r%n(Rsz(K!1iZ+97M+`J$^m z=LWZ}`Zz(Z4`m9=>ND}Fx)E=VWzHP=t}7^LPnohbvAThCxeKoU>@cl?VKW`rCov=V zfzeSCZo+$_kh*#``(Lpy5Lr9@C5vmska|8-A&KiMC9NzT`GBC+Hp z5q~B?l*_%k7#Ei#GTNU72fVNIX?}5S#uAt2);P-*E*v&{9^{vYu=pK8ZGAPSxPv#x zV(Y~13f3IC?w##zN~*l#WTNfjuy>F#PsSTKLir7QfY352tb>UWPW1bb>52ioCEwT; z&MBRiAOpIu-LV%RIKIqxzEaZYnWBKRUa|?@!`ZTc6T+b}>CBT(#Y=RanMVr#RCkMj z(KNxXJHIx?OoI#qO!AE0EBX7EtoeToi_$z^M+tDeHi-6ZB>7U2y+6aT#rz}jlAw{2 zcS{PCSaLu+6_F!1W_y`o=9o|vF&Y|qhW|<3oAg+gWJj8dW@a)6lEq?ex|Uh!U7MHA z1G_+Q(Tn~S4d@tQOrL1(o&y@-Z*Te3%p>8~o>wg&B9W7ao4t3h4(Eudo+IMVSvyV zV+enVaBy(>9H2#2g+)Z#viP7zs2mfBa9pYoro-=7Tt;9}u|c#v9%lpXKF#OC4bdUt z$L|`$kx;NWeR5yOeCc1P`t5V+(_=(Aaidp6i@~|G7TUli)GN1YH7i+SnyfWDs0!vx zG6#x6tbwg+29igN;xcJlBqfJWL3d`oe(U8%o>g60daWv2> ze^I=CBvX|x6f+&&bK*}3#szc>l;EgeKs2oqy^hL{W+Gz9nM4^ALUcpJ>W+*Y>qmTI zYyO2+>A6T8#v3hQnh-EubTp;okFFO*gvN1SahemXvX8-Hva#4p$|RV`1zqXrTO(gt ziU0;CF`EY#`UsA?c9Ae;p+M=oSR9H`T(&pt4l8$=3KLjYSI&i#R`T&JutL-Zw=cX@ z0?~0(Z#mKa+~G;PB=5`7Y=sR7;YwBzdQ9STQi64il>{uVL{?5=IT`EVCG<{ zYgQb=Mo7ViGwm*DWKCrs*wfx^qoUB}KtyXCap=XP$3uwq%SAy~>^o8fLyp+7aHU!~ zYZQmZHko!gg=CKcgEEXF@x)lO5vj#t%Hn=e)6u)80!s)5BXq0+4!%bgR#eKC6Yo8R zU8f#%qHHZtiZ_BNBBfI9+0G9!6!g0~^$8j~I;2pw3FSBxZ~(Xm_OJ`tHf~t7(b6f? z_SnA|PQ%5Lh-oN3qw0hD6+Xt;1}Iy0ilG#2+tH%mQFBKR>hViCN1sK(!y_&LeDn14 z(Nm;Ilql@(kjm05ZNaq2<7+w$UGZ8s2}=c~W3(9+z${9kW;Sgu;@Q#wYT*bAdg832 z3w3A{og;W|iQqAfp~hz?1m^-$PUVTQYQQ6!vZ5pKc2afnN@;)k+s{pCj8K^q9(RnSlt@Y?zJzxXsh zd|c-DfAhY*TfhJ9BG|>K7DLs z{qvju?-vj@+Up!WCIV|dqMS@|9tn;E@F+U2)W1$)7zI%{KgUR86pqxaVBuOVSR}<2 zmW1Cio>GVwK;Xm@VO}cYYyw{iT$+_Bl+{ZQLDzPfRkB2+MxbewI?X>*G`SQES(Sq6 zsHZ)Wqe$&9Btxla5`sH!*dBQrZnpYrf=TPS3sM^oZ81e3g(I;)p=wci1q*7}^#5r* zR#c~`w!X~j?|=R7aXfwa^kIK~ncu%_A0HpqpFcmfp;^5#!}lJ@pJw>|$9Mny|K>Ng zys>A7DWp9DZ1keW%t0q2sAvYUcTz@xY6!#O6bbT$_$bgI57$xev9u{1HEe}crQbOa zG($=NXU~c(+&q%rO^^)pxt@>aiDEuC+?N?n71df{8Rhhb2PK8~N;DcR%($^h#Nm}O zRPgRNNPy#z3eZ~wTvaJEZ3X=xanGPB-E=W*w1%KCMyVfvOmukkGZ+_$Ku~d`xBF>^ zfARS*AJ?as+5MY;Tc1APnACfZ-PcL|-I-LE-k3MeoLMa#2-0vhhv-Q^icHSZN;wu0 z0UeuuZjF$nZ>x&t7jg#tK%8G0rvZg%+1GAE(N>THgIfXL5a|1G)NcyAtkCc_Z*EmA zR5L{>{W7Zy_{?9jn~Te%@*+Co*PFU1r<=?YS%!F1r-C4sc-b+^?L{ITG4K*_-%7!A{4kNFydM< z9qnL8gtcfYC<6(`a5_V6muG{DT?Foi8jcKHA-kmf7VI&xr%H$(Vd{&AEng?}AJ2rI z`FmKO-afwnDIh=p>EYwsFF!oKzm;0bPR4)AMZRILsAo zjKw`S8oWw#N?2&^c61U2u!Y`Q2ob%3jcb;{K=YUYS8O2YXs>8$znQ8jz8(lOMbz(o$8-;{a_Y0BCWpI?%KU4l1_=zs3#5^cyq(uzRO+ghg z{B{bPXQXwU48@7Uh@5JGL<~jj6&23TjSB>!aJtm&|8k~(`LR8HTDNlUy+`u9Q#?4t zK00k&!HW3PvjHE`0!vK*Cl};`@oA?9z|oO`G?*|>A;SpRz=$b_cF0!H(aHUjz)zT* zVUS>uyWwnn~Zhp`lAOxQh00g@?g30U{l<#YNdU-Phfmnmif+vIvoqT;(qGf|Y;yGQF=S z^xork1ySC-d5+Fi%Ri5RUm{fted_n?5jCTBhr0?fRT@2&^SSt12t|AJ3_Z<Bx;M2WF?c3=Td`fTpa|n*;2zHy#5rkrhUO&WgJQGr*fK9JF;M!xt zt*Iu_))Bg~B4?b)3$aruhhcR=RF?y1JW^1>@(JN4rNPt1h{9(gKG7}dqURFyGM&Rv ziKqRw6fe=)^GFiV`qwIcB-*>jR7k*z8n_mmrN>m;6u0li-I$|9|6F{a`hu)!u!u5w zT9$j~6k#9J>o7Udpd8p#oJPI1?J}Le0yn+;a4V_ad*Hs#=x?59RCqW&2VBmDH+qB` z87n$JTcT9FSY%BCH}ER zieQ9SkCGPB=d*F^q;U}MJB}vk;ZpI06dhi{=sivDLX$G+pniFwIjmTQVOrfwKnq@L z19|{G_RDPWK1;S&9+t6Yh4hR?A&N2jm@B0j_;AwHzwuPltCnh=lAdPNYx&YemofA) zV<>aE!HF-$4K%u710S%9Q5190;oqicUW`E2g0&=Hp0y$J=}Ga4Dnc3sDXfJ=rhS>w z-~5%?+yY5=9=orT>OXRP{m*}W)_)bF@o(aP`;Y$R@$Kiw_y1#jc&DHF?|=P?e|esK zC6PvjQbAp%BH0%su;f$^TFA!)x44u}??v5-vrOX5ktp>FetYpZ^+$n5Qh-iFZMhq3Wm5P;XMUbnbgZCaf%&Jj~>liqMZe> zBpA|SxgIYn_TUCFIa|kE*CUpJZjBw=Axv8Gpu)*%u0|XUk$WK$#42`mjVg?;iN#)A zM38dzu5HEjBr=`&)wh*u+L4Y$OdON`ln1g&G=rxr-}&L~hkj!=?>%bY&SrjNU+B&V zsB4slg>4FyGa50e(r6Adiy9`u4rIW4MwVDa0r!GFu*8T79k`%hMxDeWpHdrrOn9`# zs+1#~8|`srMZ^X_&52tWc}^g5dwWf|`LJ*&@#zS!|PU@@_3D>csrC6An-P-9H zLJXkeibB;6Tp!VcBplYTp_*f1aH~*--XeRy~COya(S_wA(GH$NRon1tTUn9&GG)2MC`LBuvnu;r9z8&@piMKe)<74Y}O zvjGS`E#=#EMbyqxoC#=yIhM$$pC~NC3^N%K{(f^){#X-wnH6_DjSN?rb|a{STk@U@haZKTF62NfE){wEbc|=MPk+d!+muq% zteup0>h+F&*h1;!LXI3Yazj$2W*}745*FE|o=!dGT>8>%cKQ}{H;Y|b-NMWo(n$jt z`h0mIP+*mlgLVN~m}d0j@MS41{mbQta23bSp#SZjTY1Oc3wX_js2gItK5x~drs0#HPghDWn zLV(dJfF22rNW1)q)<5lqVhE$B>tuQpkrBe246`Fw1&%y^M9~%+mpD%?8-cRk{5Y~XYj#?UO0mfVG&49f z)Bq#Dks@7P2%jc%tc#CyS)WnZ3pKjI^|=|xde$p6UncX{?;hVjp2DUZvw82KdwqKN zyg#*$(RuTO0`4qm+#TZhQ*T-*phC@L($slKqTm^2pGmL|Pg<;eQ^1)WlZKr#ofiS# z%t;r`Xh|8Rd7ml0KQahv6;uyw}5TPdpvRJaY?vw5A+`*^k~VRDC}3 zBLb~F2_kC6jIDGdl5%(UoYqa%WLD3#4lUV_Ou?CGB6(T5r9hWcskI=5dE3EY+NFP`vJR|-{ zXbQDmt!tF{mk}ze;Rq(5^lzIJ895XUdn~H2V`)Nf(;*U!HqMp3=o7YJ4FP1_6F~5ysY%vPVW%K zAC|zTmg4o4zZ`qzY;Y>e#IF2o6DOW2l(!NZt>OkKPL*J=2Gt^H9qq8wke=u(>_;;`Q z&!7MDus=L0sot2^dk^1t=T)3Q*qLTPBv@iIrx_T_I0ZF@{Hj>rP=DcGqfmo`JR6d6 z0;E}+!E5zkajkKJ|8*w_LQioGwTtH?EGY!TX|3s5kbrh)N`=s4TCZ{{9>E)%kjQct zFKdE3THq)lY;lGx7~*jN4%qGq2tx=pAZcb0Qp$;PTogahQBb6#i!)+qqAkP3PB9iu z!aDk&dfrU$k+@UDLb&`?aQIyM@RC@^ho@WN_ufPI-7<*WI7Af3qPGQcfkyK}TPU?t zEals20^w+~PaG^Otl{HWtl|y^!2&hiWCZG`SUaT3a`9Wcak~>Px_G7IFw1F% zGQt-)M~2IsE+Sf_^+>UZo40kmojV1fUSvTNOuH8M(&9QmqSGyl*cn1k6~Ij2NTjPp zTNPIYWb2)%9fHNPXU@q5iK)y+ekhwG@Uo9^-}U7FcaQJ5S$%l>VYIim@Y0<}@4I*B z*ghEA|G4=;lnZTO97&YQ1VFVT#M_nPu%{S{(nEsP1jZuXV|Rq-qOwZ{Mye-}^_g7He1s3WAQO{UP?x?=NX3^QocptPgriBW0p zX%svNy@pHcR-hMgal>siF-xSxQy+vP!1A;RDAgBl!4)1MAhAq}QCvcUL6BD5rVJVj=P@>p^sx!=ix3WB zO`NA`$PjXj`cIEmjHe=+Mkj?Kmm;sNn24~siPzov5B;f)^|1c@vAzHFc(VlU-UE0g zGxkk>21wQxEQojR96V~Q1j+}7gQ81H`b}Zp9pOfC2ipUM8|SP<;L9mep&@(D$WF*j>agyDV!$`lF-5$)F$xjnR!*Zbkn)&g zk6=+4RVuOO*k@yw=244A@HrZhh*ywz3-mN+5KPiAL<+Cd0^RQFAm7G2Gr6>Aw7O|- z^fVZ}PsLIV2>BTP)ZIMQf3h=WoJwwVHJoI zt#sU$GL6v|=^IRCh3XJiw@WBMIe;2$QAfqY^z0>P=|!LqsNg^1(X>Os{P;|8ppcAc zo2L}v+DM~RCwAU(DQX$lXNTr|w`lTvdg$FbU`6I%(bQE89W=L_5-cH&rp-}`6A{F{ z#ybQwmv5*jI7ZYp6#Zyb5up*c=`&mGQvDGl@mGfWd_wr;^W!agdheloMP}^FNfI`| z7>8~Jl7b^9hb;K0ArGa%;FHE>D_tipcSD(*yRfNeTr1n1SE&zNA-w8;Tg3{zQ%KUba67I8n5>}PAgZl7v1k)w#y2%T z+S>yg?y2FU9@q7Wc!-cxwixDOEF$o$buN&L*tQ77}O%iFAR%b14Sv+ zYtm31s32+!0Y_1Jp&|4@@H`(F(yWNDJ&K^AikIe$YIy7lrBVKWR-QXC^W z+(2-Pz^Loh-OMlFewaMijmf<8xP3F3;bk&~4~w8fwISJhbl3Igf}l_%|DZLE8iNpI zP(pSH0cr=B42RrF;D47vxzrN%*I19*Y@<7~Y=r3)0;xZ+$9^PMpGTp{UL1NJ`W&uh z4f^hoBO+B!Z%-9_)cSObdKD~3uubSlC@9q`GwWE+7kY z;H=&AIAzXlXw`c~KE(J@kZyG$OoX8!;7uUX3xtc$2{w9^W|wjW)(=9VNqGTlOXtSm z3L7H{@q2MX#lMWMd2p4=^vi?>P;13$gu`8s&ID9uepbW`M?rCTuUS<%LkDn)mLp@W zKd&`B$Md2AMo?(AD*B^{rT}M1w}(^c4J&HteF0dMnvsU?iU$oFyKDCR<-0%3$ERE6 zf%hJ_o0BQjf#b@g64lTqhyzpPmO$B951c#7Q4K$>q9JnV;joG#?k|W0>mhgbN=XV6 z9vg=s2(m)Q$Q}2wUCN+?P{5@q!10J$cUoYfASHJ_II11msdza$4#I*ftx#u$wL%dc zaJaQ5g|%&$hzjkS=+_q^q^W-*-b2GVw^Qh~we8|wN|v}Qr9K8UdvUaK5OX;F(vBU9V(*BbKTsw zc7=XL^e$yHwwA}xPC-vtkTNOzCL_3Xy?Oadd-~zi!*~1s?>&0o9v6K*UeLlo97<_7 zc~pRvlUl=yTc3j4U+=gkP#?2Br&X5n*VL7E93Asj$pF!GROp1aR@Cmo%7BN)EhZ={ z;0vB+wZkh<%$SajotCv0X1yNL3+qKrha76d%W)7cLc#{q%0)@kh;nQzzAc1n@gou% zJYv47@2(Yo1nY!LxT=adqx7aX61c)dvz}TYKO2U+CXA#=m<9ZCs?ocw^s3Ht{P^Jy zkF(vH&wG#D^(M`|+@vXuP_>rkG*knl4lk^YdrLn$*-Z!=V_EpHNoPea_(7IHJNTxd%dkkf9@OlK^yT~CcWt1KL#cLkkzZIOixwJ^Q{`^cQrQ9iRU=eGKrM705Oet6j$(E&Xv4(!Tsy96z@ z5$U+UcKw&oHMS1V&gwIi4cJwnL zG^1~?=sK9^u3Wu{cC@w(+5%k(4yhxTu(wjo)(BtEbN})2hxZ?z)IioLSlt08nR#2axG*iemD z&#{2t0} zH9kIL2|h;;*6lu&qfn`uN13SO2Bk4exhyk@DzPf9;OnQKX^KT$@f$HUO-sj%*-a#x zf3Ar4-sAS|e8xBVWs~OZ%2Bl}s9qqWBn%?XhktqEE~M6&umiD}M2UG(2Nm1Gb3!SF zj)bg;Gc%V{_dja3UWm5n$EI?q}7T=~6lRl7Q@N^Wc z-B=&%Rj&7>oU__ZWssJsV%PKuV-{SX24+^MLj}zCsMGEaq3wobBQ@f6#UpRBzq(l`dS)~9@ z*j^D(`Qu!OY5mosP+oAsi$bYYeB|1MScUfrlp?n5s}?)*%=pi8{7rqM{@aoCM7D*H z6rA)8%0Q8BiNd`jmlT-B;Zv>XJC$tp=vcv*g0CZz?z5vlS9%T z?*)%OwSBA7^WH=ES{~`80elD~DBcR&I5SWY53_bP3T*&UXYBF z)Jk(gKCUbX@HdNTz{1OHXwfwqr>R-ZG*Z*@(LE)5boEwxlqhG^UdUQ+5!Gl6c+t=o zl<&cH7NM&(tr^7>v6UNFN+ZraroNX}cyyH!LZ!|MI^)xB+MPV5zOoK61%absM=U}R z9Zxt)c=WrX>rQwD$6Kc%Gnn|Cn{lj6HS-B2lV-6EALx1t-W<=KK7J}Xq8;+>*Ms}< zVXlY$bdv1ro0vO~;5XN#LQ3w9wJ+5wLLYj`i7&3Vds3^Yq=ufZcD|pq*cfaOkqg%M zOsb*s6kxY&TkQsm?;T|#RY+SwP>gb57-_khTotj>LBTCYIaJ1ra1M^cv{SsfPVK@J zs^U-Vn^$DRWxAq6BbYmbW?j#s-DNdD*h(q0X@6rnX>b~HM^1?jCXv)cfk=wwtN?BO zz=)u9M)ixLF-?jBz7>R>G~`Y^;_GqJPvVg;r%KO%dKxz?R_;51*Czk)a;k*$n07-o zLqMapk+X_ZnH!gj^8s%F7hlec)uTicxX>g?G|;t_gG%%_$wqnZRvACo2SPP6MfpI_>LUu z4&q=UdcAqi0lGrSI-cm;AHW(M5O33%O+ji#H>Qep6oo!+HI+IW>YkBn#uc$a*s#RrP&3Ya#Wm6LRJZhvw1r92fgqD7KT>cuukJ@ zFTMk*hB=i@;;VZ*>oR62%DjTz-RQ-*$n$$@w*`&yaF>MpzqNn+`Sv69}{ zuf0!gH(WOy2jq0Y33g~8php5_qI*1op6zc zC?B<7m_cFZrY&LgR~hT)ff{7a1taK+Uivi@SG_&56Ip4|7yQ5)*D*p7+G&EFN{1Yt z;ilbid=1oMAEN|{h{PKxGSVv<#VdSHr?!wHc|!Ylb5Elg=E$KhJxxMTIboTYL1ATF z5%Dj^kL~RrZZ-SgdDyO?>8G~SguBmH*fIh2_+)U;R2C1$;?&8(bD+QaU=YP90nF{j zCbQR-4MyIL+S8gbVx!f8s#_bUNU|~*F=Fb4MK;Wl&lcm{N(poHQtmqp^ec zwr~}`0|rT&GP#@58hSd>TB1N$J-SR#%j2{8+j;( zCp@}wOe$TUAdZA^hzk>|j%6KkF7cSCrDF9q4d)Rt#EvE4Qs5D@N+`VnX05gOC@SrZ z6o%#2Wdx49eM7M6XL?t2?_qnrN1xGeJe_)8l)r_Nkbg!sZRUc9;g8f@$a15jiPJ0;4MT**wR-wuT!# zlVD`ZixgziC6jlVqI0O_C}m+uhG~|Dr)>(aQ<=()WBAhCwi&0MtY9Z=qw_#qaE)zaJ~e0VK+sCf5|zSqu*y`nbde2rIJr6pIu0V9Lu5voWb_B9LsdWu-M zBI-#Zee$^eD7UGM+>%j45+ zn}a)#-1SuHt4QSO=M7K6VY{#(rt4%93otj zy8@cUOglRv8zZ3U7iED92VCtyAmQS`Ccr=a3hOQ+EN9c8r~4O zO^b7kiSww@d^4l}Mbp?meyzEGcv?TKKi?`gyZ0!54<(6`^9>!lErWOkmXJdByP?gL zarxFj(UL1RR7OT)zD!)jH5_50T@W$K6=Za14V2i7{)vL+r1y8|6DLjh$oL&^*s0yo zLZ36^t#d_5gL|?%af(%-9fCdpfk1x0`f42RiDFw(OnBdVd;*o33WxQYS}RiToZv2g zvCg@228{+4r7&S9;lx0R^zzv4ZR&d%NA53CYZnx4G^qG#uc!LId$FH+=B_ttAnrVR z*Si|~HLng%SF>V8Ey#MK3DFw9i@|BnEbc~dvQ^$so)To-7nk=Nwc*4fxH>{V$XGZifxxrbkGuNB)e|nkKKR$kX)LcINVg2RS=-EQ|1R8D@n%EhDf7HQWWph+!=l^OT-eOy6q4!AY+mu>IOh=;PD6 z6@u?QZda!2UqZ0iB;$m{DIRDjFbc07lTjpUkTuz->_Sf$aQDR`P20ukiF%(rEkzun zfn{*GK4|`QT53p_DuQ||;1V*8_f#Vbq1TDCyn-mkSl81e>siVvZggfc*OA=AbqYf; zk`G(JApj?0Qdk!2q4dr!#4ij2>lHy31jmaA%d8Pwddg`{z~>j?LQaFn5(89*rH@9t zTe%!-IOVoi<}>TlzkgXzw+?&nJ#g1LrSMgt&KRWvY+dzlXM%=Jq#={y;~`bb8p>-S zYsY9kCnr>=;i}mg!Aqx=DDV+BCheG?H@vTm!e$kC$C!meWQc|^XnkkSmqJaGnjT;!x6R<`Wwn68(8_xPr78iNd$9o0mQEC4R zbA(P~ROl!fS4A$Nq+C%t*+P*kPpmK%^ttp(ek|R(2)%10*y|#%!z2~Lh)MFIYh^eYZhFfM?nv$p&Zn>b7ZRL z1MO}qW8*oo;FMlT*5i{l5gkWP$_SOf;(eT!Bf?5;i!F#TrKZWfLf?NlZN+n~j}PnL zzuc5Yy7vISE^T?PgHU2_WbnSxb`zk``uBLJRfJ|m8U;hl$<`olJd7CI3O!6&t4Vkr zErZdPr|>3HY7%gT*+S*|`Gl#2*5Gbg_-83?3{KLU61@V_e3eQC3mvev5Zm*MCl5( z=IBP!GEj`H;xhv~>Z_FGetf$g^mtEydC)Zdcq^&idj!9o+4R$SA=d=!G*$s1kDxr4 zc)M1i5-TJTTx&{n*=e<>K#?(h%k+2&jUbh=snMM1Byjhor$G>g!#Lk;;rJ3QOThun zh%n5m=a{u~#WA9L)l_UwVjN3c#ZWOKnxc1Ter*ax@E;$JqQDxf$A~1Bwi2a*dd&!$ z#E)FG76l!nuZl{fqJfz^0CHd8Y#^a8Du#*>IR|h8Ggj!-&g)sk|GvMxADE1*6y&CVH8kKi6;SMDwSa*14?qkY8le^&=uoJ{x7GW(A^Vi5d)1 zp0qKh#cp(Kt86X?W^rCK|LREiw|J7!GPQ0xYu_OGja3wwu`L-UIjTWx4e~ zd0053lw2Z3J?K&EBO|>7$(3^kqOmGFSN&tH_u+)!(ux#^ZJfWo-INV9y1r9OEA7>U zRI~u=3^rLydc@J!G?5HtPpZYXp1x67WmBxzNZg)poLUtt*)dtwhYm_*p zUsrnb%jYheTdg&B9=F%$z%N}>4ug-0yXf>0^(AFAaXoXC7sb9fC57hi9t%|i0@%t@ zmF~b=OxywklkOJe9vd3wR2C?oWSUtD1@{|P*E11SL_>IS21QJdTkI>5=8mHF5!_6b zPKI%?KCSj#n~B0{YKM0UsOES9U=Abx5*oGnu}@=ZY)#5q95hj~HpFXdMD+QHPmz`5 zIT`Q8w9YmBNDow)=i;@dyn4tZsP!rD5ME`piGG+AeUL<6=?MLD6S_E zQqiC{sfq|X{VQpKHjTBySel5$3)fTgDDcs?L2%ftBNn}hXF?BDt1rD?O3EtqkC;9< z$Z^-}@>St%9&v_9vo4yAdz>!RrFROHk3=EOjbd}M%7vQrZn@ReKuyfo0woS&8G#l+ z&0`h9X=e&WYiRGdvXBaWnG_Wutw6jJX((KIU~mui7PGcl-&*jS z+g+fhY6nnrLMxm0$==A==iZW?^(b0htt^oF!hsJT0)5R8$&buK*Ebi8RPmihVLdvH zlJ+ZIp&B!k=j0+v#%(kOh1v=?wSeh+7V_qOAKs@emkN3b)8T}Pi-xJOBrx^ z{M1)o;&X!*sD|8yKZWvQGTdjhq6DZl+pWHXTW6zrBkzn%H(A#UVYw(?r+B{6w{d9I ziwz5@w$?aHq|ZAKM1f!FzW(apK0W-Uy}Nk;ap!^i79IIF_Uqv<9UUQ8Au7RnvNhG> zy&bVpt@Vx5aGv_xNYkv=Srb*>-2EnMNDSsmk;0HwIG`S6GWsqJ^(U|kDlyV}C{OR%Yj~~7~ zOWEBPue{W6?!Ro_u7JLj^e4W{T0c=MM&IAIIKxzW!W|vE zIK{3lL_!yD^akl&CvxZ&D>v%cS-VPz9$AZ$0^cZ-8KaL%3raP+D(^Xgo{jQ_h`SOZ z>-5z%YosYf4>UC)DV2!Zwo)k+(P^#D=oe5j1H&cdSjG%2BHPCsy5Fam2JVA4+ zO|2o!s0IgA8I`uY&71?HPf8JtHkQT~F@BNOu8n+!!p~}FZ{Dq^A8t0s-Fft`NjAM4 zK{&zZpsYPO&g^k0XHOOxcOz!%36!Y?F+xOxXc9*b6eDN_UPV_k)>I(ZlC~YAq9#_WygE5`h{2p>cPxbjx2aeNqPjtW zY}hMm`iJ-J^OvXg_Tjic-)63N9>DM2%YnJHc<^@=b)a6g&nB2@Je?jNh6-9elfl|6Qabp` z25bXAypKIopRzZy9w66>X&;W0Rbews)6ksPCecbS$xvV#tyTlle*?!-cl>8HdRAXg zQS^Bk#^yAZqAD-5y zTL*^s9=Y$8w-{w=A7Th|m}AdGMITaOL7|NMs540X<1(T9snaW+L3RNydKpL6O_W9c-G6lI)iMVi8xi>(fWIH({8lylJe#Xq=ijGwQcmw-p5&-(95` znxL{c1+#efXu)j_ux~Tb$J46T(@^Zfv{mtqd$TUcj(aI?zS**NM($YFDLY2YT#?6t|fugr{+t}(9SF|)jM83jJp)qH)(w7h# z!pJiy!f6Kb(2f%5TV89QpQ0pgDr-b4fed0{RCy}l=zF+-skXc_rS2GLYAGw#iN)ZF zm1+(hgO|yURP0I_+MuwMqQ*ezZ|K9h%}E*UR81?AaoX6_Y@)R-KHmhkq5-rd@t0l1 zKokl&O=_qf`FNB>U%5p62AcZu0lSi0Y4pxx_xig0d5? z)o2jZW9cerkp&+YEI4M<#0ExQ)9U+5D&V1 zd5dBg!2|QkrB5_c$bzbZnwMf%)(Z*tX#J0{M>}S}+M3Fn9dBS?xlIkoX=@0F(~2&f zBMC(XN5d4CFv>;&-w0|dI911;ba|e~Woj(CsBG>E>gJk8|LJ*7&tZgM?>jx{t&Do_ zLHu3-u7PfQEpMgpBWyDZn&C56D$-38z)%oNRjgC za4;*3=K|V{*n%o?99wPBlj%0>lkgK5}{nza|Tr&Uww(QOcyXdKU< zl2pO2{i#kXs8E6+-4HTeq`QLYf%%}V?`+#O+u)a&~FBM$cgGUTp>7k6Gfx|C?{iZ8x7*nV#U}( zPI0F01j4(~GV63>wv2WTN4CQ|0UfRCfQ79Fx^{NdP*QByGeQN|7OVi0qgbbqKm>!T zLaWxZQer(vE4kwprF|J)U(~>4WB`q}o3VJ2mrVbss79ho&NR`>T(C_~Btb-h#jP9=PlA;Mc7xfKS1lwnD7TykNRWKSqL>cqgs= zoU*CT3u|hOc2$m>8cL_&q3yCF@n_OwEvzP7wi*o)uHZOIzw|~|AsjhABnIg=E1_Tq zNgYGI!e0%r^5@bk8m_>bI43dy3lknqwmwhcE9ie9^jhVSLM0sE1V=_PDn39%(;X^RuLZ;YdBNm~a$JpB4Nuh9=3ABk5t+|8&G@&UF&EPG-c|y>_XytbN_{@g$77)zQK{@A#UsjS;BI>VT3eY?DZeUS!lLWW zFZz`fdFT!a#ZzMLl$5aIaN>pr&om9PsB^Iaw8E*6png`cQ5Z=@%*$tL8ajSEuk3HF z;;j{D%VzJ<1J;vP5l;U=$*?AxR%k{P?N@G6^jhLON~~gUVhu$b7|o(CAgOdLDk!?+ zwe<6*RYIGgog&iEczUlKEPQF{!dSS`3s>4(Q~Tn{c%vcX&SUr8Ni9bUyVj-zg}tc2 zSE4(ldWEb}aF3mM3%dr7R3^gDU~|?}1?6mw9i_;~Nq{n#5*IMEQl)AY{R3xY$h{Sh z+hC>kmP#b5UJJzs*GWat92%1gj+OW^hq1K_&b`diF4iVnN~#v3X%Rh{A_~4`yj!T= z6D_oKxJ9oa#-Yb3UMVtKv3~4~hofthKuj{FCr+Vqws@+W+_g;fZ`Pk5Z|%{0kJ{@x zrI#)0g2*qYj3Mi>v}6#tF?u)@w<^+mG!u2fHvO;BT2`D#I-AE8M#GJQnrOjv5<^2D z4q`oL=B6KO89klSoN%h8SxlJ1Dc1*Ria0DgkqB6FnXsQ(+3|(<| zx`G`W!+L>WDF0ioS%?ZIn|zm28vW8a*&Ch2DdI( zv!NWZNEL98EehELtSCj~%2GUbN+9}xV;yTKevey>d?_gk*6!r!N3BGvu&TJH$i+~Q z4tf}ElqFh$KN{ZFM|yy>$C)M|Cv((TON-Z1hhIE?dKkA(2=6^?-@BG^1b^JFh0j9A zKwyXm<#cX+s_4Cll7g3BnF8X~>8ez0qbi6l1!o1#5v(^N7&J6t!_qUp1GaRBh5O9S z*ac@p??xyEv3mjY>Jcly?osL@lQ>*STIIgluGhv|K*^|Tts@nsJcwguj1H-qjufod z#^a(`DaP(5KvKDp-knBcg;Rt6iFls13;TH`zN(N}F-K8YMm{SCEu#EN+~c>;F7ij5 z@Yap^od@r`M)F=XKKUHAEigD2h?~mvLW#Z5VuhYeRJ;=GTzX0nxS1H3+FjCceMX7 z0a8@c%4!;aAK4`-Za46t6&h*Rrp6>bfQ>Yws70?RvZpO3dVn+|7m`p-0ZmH*SySAd zRA~taWlt5zDoQ@i9W%qB1SP<%C~iZy&AAzn9T>RClsH#(6eL*qc1GQI_`XkM79yK-3epR2M1I552)$ho!*D%_j3*Y9rWAZ4g}iNFD2NNf zA^pDGTq$8F+D=!$(hcpI8pt*W zW)T|BzFyTMiLONIv|?%)Stz?|P*76uq!S$4j1j}rMxfagnKUeaY9n>+V~toeYIx0O zZE9~qp_4gp4Ua`MdOKU6iE!?(p#gkQ^BKXkUtVSHZIb~<1|43(a)gtFInu1~)oslo9V%vhM7+;#G z$D<;lBTL(}$cZx6x!WCD(IINn84)*aw99;Y3QmlWsq1Mur1*dysAyZtJ&qxf=w+m; zN8CV3U|a52{$mQ$LqY_xD|Qkv$h*25z)m-Do)d_8IS z^}9zTL_h4W#|{6~K0ZFIKYtdjL4N1mhq-Pg*n1D>H`_K-vj2>klxp-uMnJP<0kSDx z7pJ1c06V7alR>Su1VQX*@xjwqi$;sSTji4DOQGKNOVX*B)f85yh*m%&frg1;A(w!_|rsxiAtk3w?!XY2j^D4q2LmJQbbP zQ)__f<>`IZP^_E14H;jNTJhif>r z%Z;dih6~9wBTwP%oBB zuZHVC4XhuPY#n2qnwCn|>5J67chU$eda+}7Y7&rCM%5FitL79+-C3MhRDkCFD zSy~cwikSwEL0Q=pDZ!nW)nsri7O(AQes_|8`}Fw3!$|>6AiEY78Q^Dn0{Q{AjBQ1jh@*I&y41vWu1daq=iort7QRr3TQU5Ij7+<$5PY0s2$)VuoYgJWy~hirhN|1?`0OX+}$Lgzr!9 zKOEz@ckkN!sZD%S8T#Hs`E`na%@l_>|7OhH24#G~-mt z@)|Y)#I4Yw#F9Ci7gpcd9^Dzt*eKRA4KuCUl=B2y^mdC&j4h6?ohJ&ult&AUP9y?P zlUGfyiZ-jd6qYuaLzQ2#O_Zp$?4tskf-9#>RCZxzIWPx8qgNTwc{H}Q2*z?qF|Si< ztRXB|IwAI52U-FObBGZu3^dF&w2W$ScvVq*el1t~<#7YN#f$DeZr|+K|FA#R3oDt6 z9cw{#5;Q89QMAx_hsIS`(u=sm7*Q>+2k^rb%BDwgrU{fF%_k60`-m^qyH-oh;atf@ zRHZVva;~f77!4~0GG|$V}D5*`uJx!)|n;!nPv7cIs zd5WlIplqY(uzp3P?-Ya`Dk=ksT4%)>T6bs}9z`8mB!+QHih3Q+72I@+okeW3zM9YH zF1edFtoI$auk-o4GoK>4;z04`EoZ#28piu zQ0Q`?JwofB?{vZeHlZIXI9J0Q^eXCu1>511Ll1VWyzDsC0FRd)l}4`ykDRMvv8TX; ziAY59SQ&8Rm4{RdHucdesN%oY6>@3*jZ^%iQvih9y8>FONZ6y2O;KBjoDwH1blvsf zwDlw-3PG<#)!Veq>vINgUez?cl)&7)2e|LReVx)bAKT~g<3GPV=)Y>SYI4ng`;Y$R z@$Kiw_y6Pc_I>{EFMt0p&vj3fzZ-qL=z&A$6}3;a=#0Yzs~{gwYra^T9z4v|H=Y!} z4veW4DD+Yq#|>K-GSw0;N^wdie&tir;)V7%H&Wh*S zN(hvBCP>9A3@MIk(N1)j`#LH#A|yy$Ev&z+5uP+hsptx%9M%K?VVxk1U!46)Fj#5pLkw^2zk5!nN#eKk=A zp+7xuWFeMUZ5$uIJdO46uH9<2y7$<9JE!JN`l@=Un4saJ{Y+^Jt6_r{^+I!jYhjJ3 z61||A-2vH1A)04b%wnnJ>;eCzC^Dg3R$Rsot0`SZ3iG-V?%zl}|nY`6LcjvMDI;Z|QHvjcm z|5dryzj3dk^Iw1BU%qNf>_!Jz9Qt&s^69Up0ZPG;tHkKW)*5YiI(Kcg#hukT{mo$@ z#~EuyWWVH7hSr)@b~HKWExI-e&cc>!9<6G6dP)ZY@VimPwxwdiHdqY_sw$upMZ+CP}X3!qOTN=I{ z6GQAZYS@-I8p8vE_UM!c#1*1FO}tH^@n^lA?>u(jhUl|{pKs@tqo;yL6u>Cm=y$bX z74~u2L`f!KN!jDj!cnT{N7@dii1j~9u?Je->W&!0M4HBM`5Q|VUi_@#l5iY*FmgBI z=Xm;1l2~Kl9>`w1VMX?)Pb;-!V-CuUxhza^s?kovi~>EadK3syN8-dUo4S>u(;DX3 zye9TxC>h=`O=B}`{2s%MJ#u!}W`a6)HfRW9m#sJ2J$@>S`u#utbuu5madiE=^Y_Zb z@7oVI@zuQt^qYweZ(MnqXdBByu_`nlV=xJuO1tJUAX3awtcetHS(N{j@~1}F4DjCG z!Y4vIM|Nq5uZ505r!q-Gx&uW8&eS*c+A%89*v;wjeD$d(DUgl)~Xejov}pLI5Y$ZaVYRP zPpu*jzS71T#L&&C42As+x8#)PBL|D`8@1Ba6!bba74YIBE{}LF;JrPPCy_F~IrH_L z%H=-K0dN#<#4NpvC(s++pp~MG0+=}KRK2ZYxQ0n=W@sq8Vzm+%-bRCt#8vcX-^C;Z zOtdLDZ0_8SBc?d9Gv;KOGZ3YCO?AP_)0zL}1b_P%-w~U>_n>}nvMJ40aPJB!v}$tl zG18^HH-R^F?y%1 zDu@JBAxbXPZBizsb@ZBwe=c^C_a3%uaq>^HdqrW)A0ec)DmrwtC{rnDlyRcm%t{{^ zgLrCrBZ3KwPZmFImA-5N9_360x$ea!OF(6ew4tZ2YsWR<^a7&EETL8uJS)YRDGExs zEBRFvO~wX6$8&>=qU9)P9#z~l#)!pWr(ya?DZ_T%LepP6zEDHDMQ|HpFpdgp z5?ggBPA(8OatV1UfY9-{+ZOXu4k-dVlX9ely?I8b4sB3>b&?_l7a8e*k-TO?qhY3drN~y6QMOFzIw>m0Q`dmVeN9MSWj!rIGW&R# zP1?Tuah>x*Mq9JSV9vZzPtrDwEhCZSsBQ&~_DPYfBE8Ku?J72+U)Fx}_~vpyer?YC z&G_(sw9nr;)VTN9eRCaTeyWnA7&G8XYxVPvLvE4EZiT-oeAc>S=h$sf7gQkB5>%Sv z$v57etIi&{snIS0ehQ*%by6!H6J1PeSZyCezm!W+TW%nVpERV-&|Ub-%S>@nlqLuv zB{L1`42P%`aYDa4ow81;r6u7_@>HYuLO2PjwHj!l&0OlNoKW4@Mos5D*G}JNX=v0H zy2f`G!$ikLZ#D+am)0xO)p$L3{QLR1_rs_4?_ZWS?9FSTJCEOY>sfh2jg+3|_?EQV zPKisUlM|QW+!XQkARPY9p^UbQ%Sl7odPYJ8&e5vbRMvVfE&SR_7jx?WQ!hbq$wqL& zj<`fOj5dv!H>6XzrC(#PxA9c^t$^QCrRD++JC5bJCW8>r;vd9Z;uKHy+NXNi+K16j z-lCW3xr7iwoq}Yr!BS_5>tbVvy1IrRt*;Qq@cOD%HgZhb0{YCWkJ)pb@(=6t1F-4l zsl|PV@728epL%J(G7x+W_^R7I6ga?#IKUS%euS&raN8&(zmvSl|7&%zVSB8t0;^;3Dw zdSUTh$Z@G&WANX7d|IDB|K(wScv5n`*+_fe;rs4>^)%H`+g{iQ_!ny}i7xLsDmpdZ z2Nb7fD75}7jJP_Hdajs=VN7I_o>i$ZYUOM2lm@raPQ!t!xfrM*8Up`_287*0L-U0K zT?Cf5f29%REN($s;DSKO3&0D@iyCf4o=$h7;_1%#LUoJ4yE!H4zBo*>b`y3sC=&W{ z;xZZn%6tnK#x8PTI0VSF!w=$KM`*JmUdVZVMdSC{0fgey!>7-Gd3!So-+S<`K=`XR zkn%S5CnLFhgjcorxB=UpGrUE$WST1pmX5@c4psXT|D`@>qO=(4j6re0@YSTQRY?#M zLZv*3)*ai^T_b`$n;stKpy~6N8YtwXB*gE8E)us} zT<>vQjAac9n>0jsX`p1M}GU%Lf#rr(g-v z`8Dk0Yp`QN6kPl;;v^RIsUoQrRl6ll|Rh-O-6#fetru!40o zy3VQH!Fjzff)LO23TR8~lZsH$aBZf9XqI_C?`jd>^V3gJtAb~dV{O_E%H<8Jh1xq zDV*%}5=k(shu)`_MlDaGZuL*XDL1;f(mbb9lG+&+` zwSjNV=bgvxwa~%Wqv6ICw^BHlyqn&O;)TFG?(Iq-z6w501w8>44Arbb+m5o3r7#kO z3jioa&|bi2?TLh(o=LPbtakczme9-USS$#ODk}0yn}MweeqIY{nnEnC0EwJ~euHU> z&Ng4x|!BLD5j_W4IF)^DB;-*@D`Czz>Rqh$~y4mL&WYl{qeeEH7x@8w>E;8 zmEN#LVG8a$Q?na5N9>4`hjIcLj~}TKUZ)iQTk!PhM-A!wAHJ5C-#i|^?*M);v8LE_ z<6NyO+2o>?SH-rr#$sGJK(JKgeRO82g5}= zE9?ju+GVvhJXM9;%uQ}+M?L*VSLk_LtZTaMJhSKOG|t^Cx1E@z53!YNV*SOR zetf)n+JEn1`(6Vz-Y#3ftfJUcH?=y&3x`zi)^Q)l6W(r(pmJJN+OgvlzNaSWj@(DV z9aG^@m`r#CEp~E#uWr|h9p(rXQPy;VA)+E#IZz>GfN|}$7epy3ciiH&L7l0T{nQ;Z zlvLZ!a%Iwl46I@k?j2lP0z8ZOJo$EV#$VSuMXZG@NhM&#V`>ZanEyX_@78QtZe3?a z*phX#WINRAe(y&|q#BoX0p9wr09XK-RI-xFs-jFk^l$I)TbW5k?R}2>aYr>HNLFQ@ zv-euK%sB=y=NO=i-41r5_|#;mzEGTb61QIbTgSpL9=k^a*gs?6 z?b4%$Cs}2mp=%MB7N4bU-_)S%AjKzm0eNaj78b-BbTM>RV?1?A4A%5tu``mO`33|% zbGe-xRZu%*UfwA+VB9uzSmvupaAPlz7p=dpQ>IrB-g~}v=b_O9``XpV!Ce!)~V%Hg(e&wMQMW~%H8EuL<%V9|rtJl2C4=|^V1O{r|pb#V7 zO*0L0Q_faB6b4(YeFIgo7y8m5NtcCU*B8&ZZ*1q?F2Acji3k1l7jV!|A3nY{qpu#h z2eE_m&#_mbhvuP;CHQcLu8i0SdoAU1InAt^a9-jKEi>VsOWbB4Szaq3G- z_jZ+fEdd{}wv(L+$e(BMejO?*R04PqrgZmP*J*dt1YogcYu=9i*!ES(!WYwC0KD#r zs$%!b4Egu!mv2=}-*ouwqkRkazIg1uPwHPfssH`!Wn8uCZ?ml47?f6m=ywRS_k+Q# zU8)t46|}KR?RpH5jjElis@v@gczxWLg_ok|ho1!h>x%%m6>GSRO;-#o#ubR4^(Gc} zs|3E{@iH!``^f@SHS%O6Y$c6j*ziIeYO1~yaR<=S^4mtNh1%y4n>E#u?6i66#x7-U zHN8+)&7RuC?p6p!`!Y8V^da&lMO(ji@Y-bog&)K2-`=h7?-fJ5dhDK~?pI=J|AGF& zl@%NKkfMwU34kv<*bhrLn)4>R-WR2G3k&383-M6_X;3hhS&2nHz>lcC*|JkZDl*;(%Gs{#Snk^GC%!% z%@1$dslR&c9t&K)H&YVLtM&(1KD{~SbFN}r>e&;i#Xf{GJIvfNc;FXVzb}t08J$J^ zANuwwc+TLE`hj)u;LR(Od1T%gT3kK)YAX@cIvXhg`pywO)RulfQq#aMMIg^G|74x4 zPaPIPe~EmW2Q+-t?t=?btnb?R@v8n@g6SA`3{*m$lovSu*7C zN?LobjZrDL%W=$J8Qn_~lDFBZ%kXw~Q9A%?v3N~Lh}c+*kOcC0W0`6&#oC33Xah&y z&w8kAgCUM}Jr+U$9a+r;qvSo@B=?=X4gu}t1=V8SVknECYjf3Z1sCbk)^KC>-c?|) zhfDrq7k9mDM%-G9O{wCc?jnG48#Z%=Y(v0aLxmV#?G}uFEQI)5YenBZT&5*P3R$9dz1_$ygY6#8B+CC4)99XHHaPL zk6a^UFRG_T%PoCjd8jdGsM&SO#k zY0%_#EMQ?-s~)m>vpPKZfx%}l#OJvut;1|VjZ*@6TH0$#J@8U*P^EX^4VqxU3+ky@ zs)uVNVxFPJs?q3$Ki^u1r*{16rQ7QTA>UF_qlqjumDP)9x3z3#Fa}9C zdkQ%E8Efw+*^FFub$elfQSrR2yjH7^x2~t&?MY3U&C-I4g!QPb_}A^rZ`iMIhTm6@ z-19y?zm`8-UfS|*TePxfYT_6>=&_|s?K;Sl)nEM}N>mLruSvqUw-y*jI602h8Y5+A zA56ZR2w{l!d-5njvl)`R`of!ZlBh(oOt7rOPPg`W(7UT42@smjxJIVjrGo-qq@A_UC~}f>oN6 z$!B-p#$u1Xkn_hseEInM_Ey=$iwEw#ElNZXcfbLx<=b=t|2i!p0bz-NY3)UNWt#6hHLt$6SJC?fI~KYV_(3G&sW_So4P{yBb!M=X-FMnPF|UD zWE;}7lktM(h*f7JFva6^YAxTB>#yv$g8rq0@?fm8TEyF~^wOc^*6wM-aJ{ksZ06?) z@~If*LAWDGGde)W!^0yTamh*yy~|$>m!VJ&pcFpQXT1pNbw5gfoX)@f_@nxmzxnjJ zzln`rJ9dw^G2bhbqD6F_AFb?wIe5z88P{ba!0x$AQ_SG3>JH`Rg}hE(mnt-x!cC>o znifrbM)uOm;@hn$wHrp7`>~?#*XQ0z_*+sB@618XrEQ)(`O|GoJ9&xBmVuvJK&Q^6 zCSS*CE2A|YaPqwOV-b(9Od#4^`OLjCOh@p3%7WWM*fl4GyR<2e4SeYxouz2}lj>N< z>^zotbM=Vu%03=r?tg5*`{P^9jV~UwUruKE^YJbe-9?Zsm`?jtZIU#gPy3f}`^vm=#3-?)4n$@{Y2R zk1`p9EET6JBr^j?$WND+VvM^dy79r{iD``#e`|OY_YWT7EkLFdp|)!{LG__)D!U2)*Y}L6usM zC<1fWL8mbs$8ND!hTjr|?}BfAHl751K7AbXJzwTmkKKE)moH~8FVesqidZ$^;iaD@ z$S^G*Fhv6T1yoV@s;YKuPS7tG(pc3F+iua3y{3IBfv$f@WW|MDvjU#_Qlx&|*{62W z8)#!vIsh_dtOE(JMeusy&E0Q5KWY}5hWsRnea0vHN8Zd&)7}XT)n}$^#JOn=( zaK9OK&6paku$3blc4OkzWLkXp(gF_RVy0XC&m_CeNcej?Z}?i=`{Ca{UO&BcG4txt zd(T4BGw^ejwR@c&+Lg1)Gly;OI&V&W4k2+D`$R_{ouk&Y_$GkJ(-k*Q(4mW$syReW z0+F%@EZjOnU~BCsPr0k*L6SQ)P+9ACw^8_dKC;taYklvFNAbNgLYO=(5Eu^5(m&W+ zKX2p9rY-wSjHq&RR-MD%2?n~ITsHZh^Oh!Sx4a+Q2!NpA@ANF^2nSIvLo~7*%^QaW z*SF2=sFJR@2vyLE$I~Pb{dQ^U<}KBLp(b0wQ!4gZgC}4NO8AVClsGBdWKMK%P@qWn zH~U*ayGj2*fYx2f-lpMjk#&ze$xG9EO>GJ-nAfKs7{>Q7vioC#{l_o!Uw{7i+C*0U4Hj*; zv|CsGsdB1qyzLtS?rw&)6xF^h?b6_tIcMz<`(;la(8be9xK}T_%ym|v3E>!|h(&xU z8-cXPi|CnMvw?7^XB!_~ANwwLfaSSBOSdxq!Q}9*tSFpcrgrVkHoEiZdy2a=T z<8Fi4#tQE?CMZ?pzt?JgH@P+JSK5byTZPoM-_>gnUuC{wyVV@OX;Aj)hBbfuGRMzv z2jf={-Lufg*D1}rZ>Ze8?b|~?Q<71MOQV}@9j$xf=GDGVa+kUOGI5clG=79LtgQJo zyDI_?_}39~ym~0QC*;xhOXuWybof{uo>hkd(6CWV{gq$y-Ri5y?zw06>)8a)z`_PT z6kv;;JA^QeX)?<$qy~K|W!tr_g(TE!+KLAl6t)Jg&;1Jer||@7BjD(S%2o>P?woHq z?H;S=aOUKF36vo6;slXg6<-1PJvLmBTCOPD1R2ffk=csO2Z0IRuid><*Mg!`m(}mv zo;q9Q(9UWRq1l?+tGB8Dcms5fpi~u*jFbksO>00%#&v2RSI0gGkUPA%SJ3B^aKPWL zPwl4OKH2-#D}67Nu99MgQeukCBN{BF;pU_POz${)T5SoY7#r{_M|Px-0wmJ z=>1~bf{>Kf;}vTs#AAkJt&S~(g2kx1av+KY9WxXe%z&*tTA1lW?9!% zYr`8w(EW7){RoGT2Z)<;JNi{DYpymutrffKfCZ+7B(q;@KSB3!`RLvVfD;}-FH!HT zz*1nVr0+FDS3Ro=+QkK;ZAr~GxD7t6Zc059WMV6x?I@COwtCE^pT7M3?jC*h(EV~s zkAD|elCF8`O)_FFFSS0;;2Ku)ZzIdIe8|_5#OZW}qXdIH$Z~28q-^al_k%ogJ%vORh53z2sZG9ZcyPE7i(I}8C z_SiksKmU*U!<$#CuN}7cP9anSYpIN_St)Q9Puaj&!}c5P;RxA>cLtyorRf3w(Wp;w z+Z2z>lVH#OV0E6!3&U%H0IozrOY1H_-*%6;PAv>rpAA-GuZy1AP|)$1MrRetZqeG@ z9nh<3pUFfy&OR*fT(y>Z^~NG)@D~3CElTLLZe2PJ4r`UdmIm3f67uX0wOwJilwdIP z7J&5$tz}$67-CSuf>nEucW{3>e%n61RYmyfVSCP?--=jrWT6IDsjf>q8AkKtEvDkb z>|4IJUIK#y%i{AC<4V_JEFgaHD9t-lzb?Vr5k?p)?cH6Nu@g4Q^^&WtrcsxMkJEgp zm1obPdPDlSJ9jMy6YmlACEsX z08z3x&s?8r$bwmzUVbIBt(@xz6>7ivI4a4c(8- z8ziXIGbAb+I!m^o3yi`pv!yoG!1`>DjWgj!xZua=7tW)#HO@iwA~~KgyXAf8nJ#!5 zd_{dag5-WMk{i*pihcjX^!C0O^R`(|@h$EFDU>CI+lxx7ceWLg3o1Kz!8n z{_EeiA3yx5eR(VDzIx=IZ^^%%4(>qu0HnYCau!Zo3d`@}sog4>#F({npOEAc4|N6X zN+6K80tCOspvtk&X$$_=70Nys=yZWc*jHza=Y(b_2D9ASGvnN?Qjaw@WptmEC-);B zTI=>>G&Kji_N}vCUWbJJEXRG%MaoP{n=Gp;wT#bF*_|neRRS>CC2HU$OZxW6{GZlq zS{pQN69sQpWzz0meLGZYP@DBhaOdwn{$9PE51-oqe5+yn)r0rmqnW_ zQ1Xm2oN7>~tmt2{RJQAa6*U(*((<0SkT<&gOOxqsRPFh^6=at*0YcVkEmwkK0E&!u z3g|aB-Dzv|b$Pz>bfB+UQy}cH$^&qsDUSmI8_EHA3thK;_tsnszC$({<3Tt+uPa{1 z%`7D~*>bf_Q;Qwc3FIvW#&fFXt(KS@d#{&LEXhNsVBLQ`=6OC$>Oa9=KK}6IPwmsE zdEGpQe|l?rUp#kGPX}NRM|LH+kjEyH|(H&i;*@2%>pJN+MQY6M5;Qq@MVN2VUXCI_-z zzf@mW?+o}<@|>%;;w2Ul?UsPQeSMb)yiiEH9v|oPA3lCfs^50%Tg_1~9>3>(`tAIl zAkS(lykI_hQf6(BWO=qnYe!z5YqMM|uIwqZ#*&7FS1-H)ssPf=@ zALsQ``$Lbe1kh{5<9|pqNLr(-Ehs8d$nMrb@!7Tm4nEWtZg7}t z=XcHRWD|8|e5R&ZIT9}CzW2t`x4iil+hf430Aq9Q!;8><4wlYVWCb3@}IqQj+I4as!VBWYBVl z*Nuu=fY*Abo`p+KKUTEhcRh5BN;yfRsq@RX+g%MQqCx5N2x+I39T zjTdHL1v{DmGLHjbc)F$A(R3Iu?dy3=-YoarzlzqAOuMbvB-^Bk&VE~|WR}I_+2G&( zkLx!ddi!x+AKwxYef8kIhm)4B4b^&zVo!;upxO&o4?SYEp~%3HRD=$FTabA*!&W=5 z%)hp3O;`0nE#o^_Y>S0oRg?j&?6$MCynFmcG=ULbhL@^b?EzhbnLg%Id!0tq%y0O^ zn@-Cxv~A4VRd<~Y7Jn2?6axI;<0qbm?j=s$cC`y zpDliy$R79o0-J%rx4gaN|M;71%h9Tiqiy!5GOR^wED(NFYc*RIw0qo2It23B4?QfW z-W1lhh%zf(kjrB(Rgpyhj-D(4I1T_~h&st{7uzf{Pcz!S*frX-M%$8(QTVo7`cJiv zKKrPt+2xx-Asz#taEx%B+Q{|fZF;mjJ0`E3J-3^q*#f)fqZG^EwDB3_`@0|Cl1zH_ z&^^MV@AOoK=nDb?KffQSEkehx$sD;nD|IMWn1`xBJU4tVbsY+|VYd{H;IFROwk=O^ zfMp6Og3tkj(l2scYd&!4EMNHZf|bo#7d)f@_a2KxdE~izBEU?UhPV0S#?{F z+HD$rJjlPN^i8p(*ACmGbn|yP0M&1=D8&cogD-CZ`*9qRMPi2v80+TrHR`_xRVLzt z!Odgf3=fn+)Ed?vHV$YhYv-(h(o%EO$d8aqK_nIfvws<5XPUlt3x{?sp<>>EmAgDsT3#!~LrV@4bQ~jiEb$AzZLM@=)nEhYcOs*fRu(OFpes0SiPUwZd0e zkgM?SVvX;>5Mv-;o|PNdj~!mcGw+O*n9_5)yu%4^qfzg>gnIUH)#swnK1em*4(qi< z+%-}i9<=PbKY)d{q18ud(-^y1hi6Fy^S;}A?6qZOisl9Qgg+h!_-Nmfbp6t}_^t}F zQfTDK8(ZzgI7bk7Q|kArfBc6(y(gXY>XG}UB+I|k8Feu>O<%$a8!LdYuV@XBF;C?y zm-Ym9vy%xRM#=N$0=6)7lg`2Jt0lE<+lcDc@}5PvawY?oKz3n)ZBnXe9GOCNlAexS zy33TOlxjiF2^|<-QYCh+%8WzpQ+{*a=c-^tLiKFwSFCZDF?5pf@P;d7f2t|C#CqNw zw;G3){>xtUn(a5*ZZmQAMX^3{z$>~!<{;C@ZTg@3m-e>V(5uJoaX!DJ-Uy6h^Dhn2 zZHcb%;5THVju=_MD?@x{MEek$mdSZxsIksNVICeTF^~L5VCMq{9$e<2)o%ro}cbf*N^j$ zJl&h_n=c-@?=$*;eYM5@{-po+|Ksi3vnlrXzyE59-Bs^mT`@#^W*tG_t2dop732w! zY{dg=!ruYmCbX=$*-3UmHDdMwtd}AS?lq7p!qzm>vI8tIS#S)v8z{wkhO)&1-;>yR zd&;I`mp&5MD`lp3j@`S`sW|R_E2=}~LJb3U0YUZ9E$h0w5ww|Cg*?c}fw?2$+PY{V zMFf_a?(Ts=E{#S2&)o&;QN?{tsWJc;33bdGX-=axee8 zw30fEO6?tLUhg%NbvDm=h>>b#Os@-*-hr;B%Wi(YYTgOjpQ+kzP6bCt7#FGK*vbLz*~ylL4ciNDXhdw_w1B@c_Q)-_MN?Wd(& zr`pGW5-855i(iJ$X#KINg#x|N5n`VcsAQShBnuyez$=l7%Nd4pMygwG_Oy>n9p|h) z?UQ%o#~(lRk3Y08fBK;E`dhUwFCM>N&g;KlqNf#lsELIR4mqcn2a>V6k6_jFc~}A# zVO){)9aXfpJfZH2`)F&t_!?H5K>WTFsVWO8e%k@CUT`;MQM8L`8hA89YMl&Z%gR5T zkI?wnQv&?zfqS$%|Fc9aW0M1GRjLrrsP6DV(mL+@f*Z73>aItgw+UAISjl)OHAZHs z5h|thRBNN>0bZ&0Q>$SfXFe|be%e_8{8qwmknu$ZypMOmH7PvxUQ`v)L6VTbcmYMO zwN$79+In%O41PZLG)Q;1*-ut@-p;UG5B1O{B=}mhv8cUQ&4b4bc6=6HY&pfg+*$VI$6>@(edDttjI32C;i777H(!dWWz< zvl(ec(TA5)k4F-&(j7=Rc7+_wm@ZHaExh|$eOnAifNXBeS)Y{w8Ksc2V0_0B@7`lD zE&(eAhF4)U?@`rPx#FR0EAYeGy_oh~Mmd{48tsA@$K&dcvG+gx{!R7#7mwL{!b-po zO(0k+p!ju{UyjPsm_(A(CWvy~%^;BnELywPQQpWe-`Wr3hAA`Fw0k{Z-86tHKi2vWkG{+g7q7R-GSN4Z;k4D$OEfCS^_q zOYVMnA`h@{tS61E9{E|qXjV3mm1CVcbCsD`_$qp0}<*QS%>nhmFEV92CvAH?b{hPUB~SEliOxu4PSstDj zA-Ihoks*ONtm~Ri$Y$ADWglx80QDSRpPX9FHv(18dK(rHKZtjC8%GER7#SGDhjpmU zu?JO0$9TL{{j1w(^G$n;R}b7{C1L#M{8gWDDPTw>V$qx|xl=pH7;S?Et5wUWk7Epi zz@2)4X9Y)2r9SPjvE`U2z2HW8gn+?jZW=@qBmsE;Rzz!P3@)^_U^D z0#t#ED_%SsAczGZj;I-uU8vYpxbj-9YWkO1^m z%dM2M+I-V+2cY8wNQ?~p-jy2Li6c+7+`lFP{a26Ov!muWk%wc`fiMH$!E6>Lvy9YI zEB8T*NWf21t;oB|728RqKZ`U@RqMmvkx)F-VkEEqP-gWSyKP!o8>F4hX2m88GNsc& zIINWPikOx6SoaI%w-mSDDFpxnFKJA2P5IjRvReydc3!!A-Fy*|1C$f!&(B{TqldZ2 zTago-AC`h0n)B>iyNF~YrmJU!64A-RKi64ngf8iptE6siU`@QMXeZfFWcrW=u6oMAcseFRwx~+v~)?q zux4Rbx%|2DZGCEQDJQ*pb*JEeiW5{JX<71G{sz8&G|fopkuS| zPrbdYe&T&RN?_x?Y!06FWW@o)!L7Bs%K(~H`3iNbw%vPg9urJsiZj}LrYV%R8iGm=2FY06r_{WW}*h4u6(F+VP?HFrq>BA5`!8-H?^tzr= zjlEX=Rj$~SASS}-ux8yVD@-jf;DJq@;pvjR?o4Q&%53(rN?f;3_ZYFxt4EeBC}UMy z?3d25`AE)X1N5-k$6-55so54b>q`zt>fm?CaswFj)k@w5;dNZEo3-umE(-p{l3QPbT`cTK0P*onQeq)*NNtXNCVDX1? zlktL2p5r{#QDAuL)oi&3HL!QBp=7!aWNK8`px%+NABZEAoj1;#~-c_KfjerUp;W|w!3*&+7(z5K(c5-VngeYtucn{ zU@`CJb?a8u-2ytcvqz(ioszBIU9vViM?DTTk!wIoo2y~W319%%ZXs!ylQxCry1?pqbBQ+@pQ^^y9~$-mYhP@zA}uNB8+v zJ(v)G@HMFx;1-K}PHV^Ees&9mjs4FE6A2e1a8Bb*Qx8)Qfkl>Qg{7={TJ1znZ=T`R zaVteF#}t)~;ls0$^Ompz?lX|^lgH3&B`=UKOoHgx`30Q~JCi$gw2f}8k-8Rq7Ec3q zuaiVMn|0F=x9dooZ3%X^c^beTT>RW69cXbc+hNvyujV zU*=nK>#rWSUpOy*Jv%yeXusm_RmHkp@4{)ic46=Bj$dutSUq|d5$j{qS^FG3i?Zbv zL{W%>+M?LntYu|9CbVB?hR{mm9r`?m<&b)J0BbfodygY$(EH<50_!4~B6&TvS}Dmh zzC%G@vT7gpg7>?&5YCZdb)>=x9%RSXp>}!IR{r1tnaYFM+&61m)W;1<1ZMVlD`aG7 zgGGtC@ApA!P+E4b`6vkRmmhze|Km*+?iUZ+dluuM8g`^!!<-vI3v{izH;%f>zZ5LS0_Dbt#Sh9WE z0s@nMJPL$5mpv-O4W+Y6z4n)CM$&gaQ*4i!U z>tMG zKh7`hH*cy+zIZU-n`H9NYAXFeoS{Lw$OcgONh)(6umICuHGm=Ivoe<-7_K!vYKy6@ zX>~#IsxPTHp?}H=NFW2=zNFEb+`%|+JrSBf=ylA?4mH@e+VW2w7u#KLU8V$_1a!bS zNQUgjo{3{@N_%-pvC%%1kcK;07}%yFpoCyBh$l^6?d(&_jH0^$2~V}=oph86kcyyQ zuL~f&MYV&sRLFO!ygAAL_0N<1Wvc1%R(gH)IKG!&gT^h&2yDlt|9NJ?GY~~`qz=lg zJMo9H(=d(9e(na4lmL$BmK!Xh94iJ=i`OeteM zaBe#w;&FaY&AiE6?AY_1&`RKBAvmdWV)lvrv2L=__D=rlt`deH{wp3UBKkLWd^LhIlq7Tr}pJHZ(FCncJLl7tN*=? zJg%@9D%N*wmiXJ*5WSOXnseAh7I#BIXAM>F+|$D|5XJPs2lXttAm8t&sprE;lID0vDn(f<_>U*~r zKmYKj@wQ?0t4HoV-5nj5+IFM_CO^`O2V=%Y*rIK*+RCxYRI5L&%4B3}Nqi+)uoX$h zV((LFmsK|z!eDLWre9Mk0a(vQD0eP2CxkKK&l zWeKkot`XPKi>+3Wx03ZgSC5=<;L#bxsq4SAk}<>S=)J8nvj z01WmV2qAF6QMXn^;8?&mdXFCL(r(1OeRut%|nXeIgu7a{s6?9hOj(goc~t2!%n z6+K}Ax|V`Q@Ney&Dp=4-P9-zxUDK}1k~{vlFwG3oQpG#xy@jq8T!aXX3>}ngMu4Zg9(LGR zJ5XZ9FkxfyXuXyO(b|agAh-r-Pu`6*uql;Ep^Ou5mCo=p1#L* z5p5aygSYG!3siy}z{70FX1-R9x!9bap40*U>QC*{r;l&8k-vK2-aAr?F!(Ez&eg-) zATldeyoT-7}m9&1fn@rEj4SdFKs8Ei< z!w?MNS{u)@(wWaODgh^@r-H#LrrTjGx<5c;+QlOrSF~E*Y7s?rprfo&{xvZ5salwS z7NcI@FGx}bI2SoVVa`3**&|#)v3>Rl+jVC;haxSO)7|*hqxVaMl#YKszE=&dYc9wVm^yXq-5boWs`13Pl?dP8HE8l~kaV-| zetYu3?rm}ePsWYJt`h-(EZkk|Q!}QLW763)t2~#^9&P+cQ1J7JDz2P1wZYRL%N{QE zJ#$z#m@FIkHNa*4wl2c(=)8xc^ka#8*v*#A=9G)Zv%~Uzb>tPk@|x00kYm(!2C_61 zCot6f(TwWLYH4{6@4Vo%I~%<;_|9YN@%a4d(;Pp2_+$BBk=9oa;(NX{tKP+Fye$dd z0)cG+#@#Om^kSU+ftCw#RK*>q*x(9Tbt79W>uB+q@N6+@-Pu;4xP8l;o$#H6xE&3k z2flRBp`Xz8buB<{+iWlik3~wgN6F`20&8`iEm+GElJp?6xFw|)r~{7D9-IG|8noPN zjb)v5gx%L$tG+9x3NIz*EoeJrw&ft%XOt!ziyZ5*;>ZAzLob{H+^LUVQcbY*>D}9! zSC8I%M-i}wv73IYB|aWo$sxR?>JT~tUAnA)ygiVte&lg-Ab+R;LvWi@kL;eJcf@(A zpHcMhh~5Jyy%Af}0F8AyJk&X$&W|%vh**ow zCf7())<7O7_^Xm~XhBAl8PQ=cdQ0;+Mb5wHI$>qn)G@4AgpvXG+6+X&64+l1ek1jZ zbrf?L9;`mb9wNXxY_Uvt~xIdXjeR8JGbu$8LKJ$p{PI{ zj|~_9`44UU3(56^PH=Bh*Vm5Tqd~%VaSsc;R&?G;3p^Zv+7g88lp)ptNVRW&=#8Y% z-v)OC?c&K;_vBNGNGhVQD;w<6%~F z8d}Ot8T)z7ec z#-eZC^0g2k0jvhS1H(v~T(MeQB5K8vx{ql?W#0C<_!|2FbvF`&AIhTR;-LZ+}qoexINY_T_sdid)Y&9xTptSC!_(SNP$~m zb}PUq+H>5l;BgXwDBqZvFRxX-=F5g%3wsxI_8RssD6Eq8pk_;DT?ejfZbyL=UKQZX z|3E(>Kaa)TfBpORFZ08DLWQp#x%V*AF&fL5@c~Z41%noj1pBGKt{P6~ovAW-TV6

`Go=omg2n?~iR>(Sz2X$b1VdU8BKsv>Od& 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%0A983EB}R3fV|;u3zqOem$>${nPyZ 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≻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 z zgGS zW%nK_ycEYh6e7B!^QbCfjpYFcgpbV|2`|;lu3?+bDulBrWwujy3OtPiIHU^N#&+Y; z(ksD}lj92Yx#`1^1x+M#V6s6(a@T0{ z(!U*Ot&J(qj#pdV%AWcPT0!67koh`Ziyb)>$Uo|k@m_$ywq`796-gq)CU$c?xF+dtLQ*=Up;p2OCsVv zF6>Oca!5fFyg2Q)7_v#eDwt9ZH`tRM2aZB`JQZ%HT%Dfn&jH+%ZgeD*Lzfr+NFo%e z+_}zFl7;^Vm`jCm4shoiY#A<{>Ukym?zh5o_KD?}&$ByalaNv* zNC7_NWWP<*XUY6-Q1M^D73HS4<8eTQ@>=>I>W!{)N<^Jj6 z#6~q;uT9z&X3U2hu142$@Q@$tsYAm~@-T0eLq4>M*$So_9Z6+euGcLDRbQ7rr6Dlr z4iQ)9)#cC=f2yJ>37u5Fy2>ib)$jxdg`1O-#gTU-gs?bOY5?JPX|_TJ8A~Szs%3A9 zn%7SQo0gzrUzSc&;p)YjN*{{0vQYY7L2(*KsN1rnUlsF%81( zx%(lDt7X;I!4KT&Epe%81w)P6c|}A0=poGCw)L}m$=NP~ES6WBaSEeX-?v8*RPexh z$g7?OTYRU#S9NuQ)9w7X51}Af?KTqcFb$l}09U%*Tq~KH=T@w+iN!s1iMxhg zDJ1q>2066Zw1J}RE7zYC;Z>FODJ77PUyGDKLSoYdWkm8J90Z+4?-dZOl{guJXXk8L z(v-_OuL2RbdM$Ex6?t<@fwLc;s80QKT<0D&S4bW=GeF#B4(kVKXW<^zch|+otXK35eoHxCdIuX|0A* z>vO6eto4IrauOc#22|Rs4wWRlBF{dnt*pA0@-jr}Skbs|cPBXT(Z6;H+M&081$(@) zGj@kJ1TlF)A4(sg}DANa0$ZDkn8n z%K&5_+Fd}zS67(xQ6O@hm!|Wz&J)FLQD_gO-g-rK6w7x(mJopa~_nLLrs>*q0x zit7`a)<<`@wHdCpnI@Xs^tx3&)eBY;6opfL3a+WHms_UpmDF|0$xJGZtuSu!>kw*? zJgfFM-HkW}La00lgGAlQL~ggjy;O^L z7y^C)A3@iFVS>A%VR(RO@@$xIR`neQ}7}PM2 zmOt*`XL|$yC!0PMyflUu)1k}@t{xr;+}D|h3`eWoc} zp0_NH^U=!KmX&VMbF5oRn36VREh+|q8DQcjMx|A5#o4$y97h)@WSLq8NPN-t0MwQp z&(BU_#oy6}XbLp4*dT`!O_Z+V1c`=SPf4|Qm&D>Jz9@bGqJ2%f?H5brnNsQb zhAmb8mE`s6($QRxTVeJzq@!tbYwg?{pPQm>nik93(PF&Tfs;DYb507ipVXKxq?YmU9D*@35w}FI)A(+X;%5=ofjvjk4X%_eSK{<>h4olWZT?g z&l+OP5=Hf>CbB&Mp6Ah6O&+unm1oQ87B#CZba&%XNIuh;(O=YO|<|3{X+j-DJ+ z&lW@SBGEBDx1t}n)>>zGFHq8ccjDBX+O;d>NltATw-fBHo4d=x0C)95t1C*0=c