#!/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": "packwatch", "reference": "workspace:." } ], "enableTopLevelFallback": true, "ignorePatternData": "(^(?:\\.yarn\\/sdks(?:\\/(?!\\.)(?:(?:(?!(?:^|\\/)\\.).)*?)|$))$)", "fallbackExclusionList": [ ["packwatch", ["workspace:."]] ], "fallbackPool": [ ], "locationBlacklistData": [ ], "packageRegistryData": [ [null, [ [null, { "packageLocation": "./", "packageDependencies": [ ["@babel/cli", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.10"], ["@babel/core", "npm:7.12.10"], ["@babel/preset-env", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.11.0"], ["@babel/preset-typescript", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.7"], ["@tophat/eslint-config", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:0.7.0"], ["@types/jest", "npm:26.0.19"], ["@types/node", "npm:14.14.13"], ["@typescript-eslint/eslint-plugin", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["@typescript-eslint/parser", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["eslint", "npm:7.6.0"], ["eslint-config-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:6.11.0"], ["eslint-import-resolver-node", "npm:0.3.4"], ["eslint-plugin-import", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:2.22.1"], ["eslint-plugin-jest", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:23.20.0"], ["eslint-plugin-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:3.1.4"], ["jest", "npm:26.2.2"], ["mock-fs", "npm:4.12.0"], ["prettier", "npm:2.0.5"], ["rimraf", "npm:3.0.2"], ["semantic-release", "npm:17.1.1"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "linkType": "SOFT", }] ]], ["@babel/cli", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-cli-npm-7.12.10-8d0f52542e-8ebcd111c5.zip/node_modules/@babel/cli/", "packageDependencies": [ ["@babel/cli", "npm:7.12.10"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.10", { "packageLocation": "./.yarn/$$virtual/@babel-cli-virtual-b07f453815/0/cache/@babel-cli-npm-7.12.10-8d0f52542e-8ebcd111c5.zip/node_modules/@babel/cli/", "packageDependencies": [ ["@babel/cli", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.10"], ["@babel/core", "npm:7.12.10"], ["@nicolo-ribaudo/chokidar-2", "npm:2.1.8-no-fsevents"], ["@types/babel__core", null], ["chokidar", "npm:3.4.3"], ["commander", "npm:4.1.1"], ["convert-source-map", "npm:1.7.0"], ["fs-readdir-recursive", "npm:1.1.0"], ["glob", "npm:7.1.6"], ["lodash", "npm:4.17.19"], ["make-dir", "npm:2.1.0"], ["slash", "npm:2.0.0"], ["source-map", "npm:0.5.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/code-frame", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.10.4-ab1ee3c93e-05245d3b22.zip/node_modules/@babel/code-frame/", "packageDependencies": [ ["@babel/code-frame", "npm:7.10.4"], ["@babel/highlight", "npm:7.10.4"] ], "linkType": "HARD", }] ]], ["@babel/compat-data", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-compat-data-npm-7.11.0-798b48b81a-6c3b394654.zip/node_modules/@babel/compat-data/", "packageDependencies": [ ["@babel/compat-data", "npm:7.11.0"], ["browserslist", "npm:4.12.0"], ["invariant", "npm:2.2.4"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }] ]], ["@babel/core", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-core-npm-7.12.10-b02df7217e-4d7b892764.zip/node_modules/@babel/core/", "packageDependencies": [ ["@babel/core", "npm:7.12.10"], ["@babel/code-frame", "npm:7.10.4"], ["@babel/generator", "npm:7.12.10"], ["@babel/helper-module-transforms", "npm:7.12.1"], ["@babel/helpers", "npm:7.12.5"], ["@babel/parser", "npm:7.12.10"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["convert-source-map", "npm:1.7.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["gensync", "npm:1.0.0-beta.1"], ["json5", "npm:2.1.3"], ["lodash", "npm:4.17.19"], ["semver", "npm:5.7.1"], ["source-map", "npm:0.5.7"] ], "linkType": "HARD", }] ]], ["@babel/generator", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-generator-npm-7.12.10-b4f90b65bc-ddd59efc33.zip/node_modules/@babel/generator/", "packageDependencies": [ ["@babel/generator", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["jsesc", "npm:2.5.2"], ["source-map", "npm:0.5.7"] ], "linkType": "HARD", }] ]], ["@babel/helper-annotate-as-pure", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-annotate-as-pure-npm-7.10.4-61cb45f47d-535cdf631e.zip/node_modules/@babel/helper-annotate-as-pure/", "packageDependencies": [ ["@babel/helper-annotate-as-pure", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-builder-binary-assignment-operator-visitor", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-builder-binary-assignment-operator-visitor-npm-7.10.4-84f16304b7-369530a197.zip/node_modules/@babel/helper-builder-binary-assignment-operator-visitor/", "packageDependencies": [ ["@babel/helper-builder-binary-assignment-operator-visitor", "npm:7.10.4"], ["@babel/helper-explode-assignable-expression", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-compilation-targets", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-compilation-targets-npm-7.10.4-26147fe36f-7603388e45.zip/node_modules/@babel/helper-compilation-targets/", "packageDependencies": [ ["@babel/helper-compilation-targets", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-helper-compilation-targets-virtual-be606654fc/0/cache/@babel-helper-compilation-targets-npm-7.10.4-26147fe36f-7603388e45.zip/node_modules/@babel/helper-compilation-targets/", "packageDependencies": [ ["@babel/helper-compilation-targets", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/compat-data", "npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@types/babel__core", null], ["browserslist", "npm:4.12.0"], ["invariant", "npm:2.2.4"], ["levenary", "npm:1.1.1"], ["semver", "npm:5.7.1"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/helper-create-class-features-plugin", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-create-class-features-plugin-npm-7.10.4-76a00bb044-6e80fdcec8.zip/node_modules/@babel/helper-create-class-features-plugin/", "packageDependencies": [ ["@babel/helper-create-class-features-plugin", "npm:7.10.4"] ], "linkType": "SOFT", }], ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-helper-create-class-features-plugin-npm-7.12.1-fc3d37998d-d686eae70d.zip/node_modules/@babel/helper-create-class-features-plugin/", "packageDependencies": [ ["@babel/helper-create-class-features-plugin", "npm:7.12.1"] ], "linkType": "SOFT", }], ["virtual:ae06a63f6aa1e988b88d3d10b28cb17e6ff74e8073a43bb7e7944fc99d399833c27faff5c819960552ba2813209b65617c2387250ddfdef98398e000d3163b72#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-helper-create-class-features-plugin-virtual-111e2abf20/0/cache/@babel-helper-create-class-features-plugin-npm-7.10.4-76a00bb044-6e80fdcec8.zip/node_modules/@babel/helper-create-class-features-plugin/", "packageDependencies": [ ["@babel/helper-create-class-features-plugin", "virtual:ae06a63f6aa1e988b88d3d10b28cb17e6ff74e8073a43bb7e7944fc99d399833c27faff5c819960552ba2813209b65617c2387250ddfdef98398e000d3163b72#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-member-expression-to-functions", "npm:7.10.4"], ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-replace-supers", "npm:7.10.4"], ["@babel/helper-split-export-declaration", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1", { "packageLocation": "./.yarn/$$virtual/@babel-helper-create-class-features-plugin-virtual-7ebb568b63/0/cache/@babel-helper-create-class-features-plugin-npm-7.12.1-fc3d37998d-d686eae70d.zip/node_modules/@babel/helper-create-class-features-plugin/", "packageDependencies": [ ["@babel/helper-create-class-features-plugin", "virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-member-expression-to-functions", "npm:7.12.7"], ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/helper-replace-supers", "npm:7.12.5"], ["@babel/helper-split-export-declaration", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/helper-create-regexp-features-plugin", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-create-regexp-features-plugin-npm-7.10.4-5d1b7c5ca4-6d1728b614.zip/node_modules/@babel/helper-create-regexp-features-plugin/", "packageDependencies": [ ["@babel/helper-create-regexp-features-plugin", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-helper-create-regexp-features-plugin-virtual-5c7dcc9b82/0/cache/@babel-helper-create-regexp-features-plugin-npm-7.10.4-5d1b7c5ca4-6d1728b614.zip/node_modules/@babel/helper-create-regexp-features-plugin/", "packageDependencies": [ ["@babel/helper-create-regexp-features-plugin", "virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-annotate-as-pure", "npm:7.10.4"], ["@babel/helper-regex", "npm:7.10.4"], ["@types/babel__core", null], ["regexpu-core", "npm:4.7.0"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/helper-define-map", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-define-map-npm-7.10.4-bd375f0744-8290982821.zip/node_modules/@babel/helper-define-map/", "packageDependencies": [ ["@babel/helper-define-map", "npm:7.10.4"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"], ["lodash", "npm:4.17.19"] ], "linkType": "HARD", }] ]], ["@babel/helper-explode-assignable-expression", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-explode-assignable-expression-npm-7.10.4-50e5a819c3-3348549a83.zip/node_modules/@babel/helper-explode-assignable-expression/", "packageDependencies": [ ["@babel/helper-explode-assignable-expression", "npm:7.10.4"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-function-name", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-function-name-npm-7.10.4-153d80f559-41ab8f48bb.zip/node_modules/@babel/helper-function-name/", "packageDependencies": [ ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-get-function-arity", "npm:7.10.4"], ["@babel/template", "npm:7.12.7"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-get-function-arity", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-get-function-arity-npm-7.10.4-29a99c32bb-4f0ddd4340.zip/node_modules/@babel/helper-get-function-arity/", "packageDependencies": [ ["@babel/helper-get-function-arity", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-hoist-variables", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-hoist-variables-npm-7.10.4-ba6140a324-0bc1976366.zip/node_modules/@babel/helper-hoist-variables/", "packageDependencies": [ ["@babel/helper-hoist-variables", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-member-expression-to-functions", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-member-expression-to-functions-npm-7.10.4-f37252d84b-512a2008f6.zip/node_modules/@babel/helper-member-expression-to-functions/", "packageDependencies": [ ["@babel/helper-member-expression-to-functions", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }], ["npm:7.12.7", { "packageLocation": "./.yarn/cache/@babel-helper-member-expression-to-functions-npm-7.12.7-174834b465-313e78a217.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.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-module-imports", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-module-imports-npm-7.10.4-f55d85af2c-84d03b58e7.zip/node_modules/@babel/helper-module-imports/", "packageDependencies": [ ["@babel/helper-module-imports", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }], ["npm:7.12.5", { "packageLocation": "./.yarn/cache/@babel-helper-module-imports-npm-7.12.5-76d7bcabe9-7f63b03496.zip/node_modules/@babel/helper-module-imports/", "packageDependencies": [ ["@babel/helper-module-imports", "npm:7.12.5"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-module-transforms", [ ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-helper-module-transforms-npm-7.12.1-c42d2455d3-902ed2b8e9.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.5"], ["@babel/helper-simple-access", "npm:7.12.1"], ["@babel/helper-split-export-declaration", "npm:7.11.0"], ["@babel/helper-validator-identifier", "npm:7.10.4"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["lodash", "npm:4.17.19"] ], "linkType": "HARD", }] ]], ["@babel/helper-optimise-call-expression", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-optimise-call-expression-npm-7.10.4-135301e242-70dd5a6daf.zip/node_modules/@babel/helper-optimise-call-expression/", "packageDependencies": [ ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-plugin-utils", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-plugin-utils-npm-7.10.4-af87df4f11-9f617e619a.zip/node_modules/@babel/helper-plugin-utils/", "packageDependencies": [ ["@babel/helper-plugin-utils", "npm:7.10.4"] ], "linkType": "HARD", }] ]], ["@babel/helper-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-regex-npm-7.10.4-40778da5aa-4f8883dca4.zip/node_modules/@babel/helper-regex/", "packageDependencies": [ ["@babel/helper-regex", "npm:7.10.4"], ["lodash", "npm:4.17.19"] ], "linkType": "HARD", }] ]], ["@babel/helper-remap-async-to-generator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-remap-async-to-generator-npm-7.10.4-1bf07cfa56-258395dbab.zip/node_modules/@babel/helper-remap-async-to-generator/", "packageDependencies": [ ["@babel/helper-remap-async-to-generator", "npm:7.10.4"], ["@babel/helper-annotate-as-pure", "npm:7.10.4"], ["@babel/helper-wrap-function", "npm:7.10.4"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-replace-supers", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-replace-supers-npm-7.10.4-8bf69fb844-2d7e0627cd.zip/node_modules/@babel/helper-replace-supers/", "packageDependencies": [ ["@babel/helper-replace-supers", "npm:7.10.4"], ["@babel/helper-member-expression-to-functions", "npm:7.10.4"], ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }], ["npm:7.12.5", { "packageLocation": "./.yarn/cache/@babel-helper-replace-supers-npm-7.12.5-d419f2f51e-5a9ac871de.zip/node_modules/@babel/helper-replace-supers/", "packageDependencies": [ ["@babel/helper-replace-supers", "npm:7.12.5"], ["@babel/helper-member-expression-to-functions", "npm:7.12.7"], ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-simple-access", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-simple-access-npm-7.10.4-0a4bf355e6-a7ce52a229.zip/node_modules/@babel/helper-simple-access/", "packageDependencies": [ ["@babel/helper-simple-access", "npm:7.10.4"], ["@babel/template", "npm:7.12.7"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }], ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-helper-simple-access-npm-7.12.1-18caff947e-ca44e3f694.zip/node_modules/@babel/helper-simple-access/", "packageDependencies": [ ["@babel/helper-simple-access", "npm:7.12.1"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-skip-transparent-expression-wrappers", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-helper-skip-transparent-expression-wrappers-npm-7.11.0-16af6a3b22-c5995c834f.zip/node_modules/@babel/helper-skip-transparent-expression-wrappers/", "packageDependencies": [ ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.11.0"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-split-export-declaration", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-split-export-declaration-npm-7.10.4-834d026d0a-d8536faa40.zip/node_modules/@babel/helper-split-export-declaration/", "packageDependencies": [ ["@babel/helper-split-export-declaration", "npm:7.10.4"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }], ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-helper-split-export-declaration-npm-7.11.0-d39c69702f-ddfc44d0cf.zip/node_modules/@babel/helper-split-export-declaration/", "packageDependencies": [ ["@babel/helper-split-export-declaration", "npm:7.11.0"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helper-validator-identifier", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-validator-identifier-npm-7.10.4-0689d787fa-25098ef842.zip/node_modules/@babel/helper-validator-identifier/", "packageDependencies": [ ["@babel/helper-validator-identifier", "npm:7.10.4"] ], "linkType": "HARD", }], ["npm:7.12.11", { "packageLocation": "./.yarn/cache/@babel-helper-validator-identifier-npm-7.12.11-e33455648e-18de432203.zip/node_modules/@babel/helper-validator-identifier/", "packageDependencies": [ ["@babel/helper-validator-identifier", "npm:7.12.11"] ], "linkType": "HARD", }] ]], ["@babel/helper-validator-option", [ ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-helper-validator-option-npm-7.12.1-617a30f6da-5d9a8f6750.zip/node_modules/@babel/helper-validator-option/", "packageDependencies": [ ["@babel/helper-validator-option", "npm:7.12.1"] ], "linkType": "HARD", }] ]], ["@babel/helper-wrap-function", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-helper-wrap-function-npm-7.10.4-03676069ea-4d5fe2db33.zip/node_modules/@babel/helper-wrap-function/", "packageDependencies": [ ["@babel/helper-wrap-function", "npm:7.10.4"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/helpers", [ ["npm:7.12.5", { "packageLocation": "./.yarn/cache/@babel-helpers-npm-7.12.5-3a2d6abe18-5cc171461d.zip/node_modules/@babel/helpers/", "packageDependencies": [ ["@babel/helpers", "npm:7.12.5"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/highlight", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-highlight-npm-7.10.4-c7ff18fbba-c167b938af.zip/node_modules/@babel/highlight/", "packageDependencies": [ ["@babel/highlight", "npm:7.10.4"], ["@babel/helper-validator-identifier", "npm:7.10.4"], ["chalk", "npm:2.4.2"], ["js-tokens", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["@babel/parser", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-parser-npm-7.12.10-b5a43522c0-b21b51c2c5.zip/node_modules/@babel/parser/", "packageDependencies": [ ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.13"] ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-async-generator-functions", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-async-generator-functions-npm-7.10.4-375c4fa8fd-273afe524d.zip/node_modules/@babel/plugin-proposal-async-generator-functions/", "packageDependencies": [ ["@babel/plugin-proposal-async-generator-functions", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-async-generator-functions-virtual-7d7627c342/0/cache/@babel-plugin-proposal-async-generator-functions-npm-7.10.4-375c4fa8fd-273afe524d.zip/node_modules/@babel/plugin-proposal-async-generator-functions/", "packageDependencies": [ ["@babel/plugin-proposal-async-generator-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-remap-async-to-generator", "npm:7.10.4"], ["@babel/plugin-syntax-async-generators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-class-properties", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-class-properties-npm-7.10.4-03607813f3-32cf34c077.zip/node_modules/@babel/plugin-proposal-class-properties/", "packageDependencies": [ ["@babel/plugin-proposal-class-properties", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-class-properties-virtual-ae06a63f6a/0/cache/@babel-plugin-proposal-class-properties-npm-7.10.4-03607813f3-32cf34c077.zip/node_modules/@babel/plugin-proposal-class-properties/", "packageDependencies": [ ["@babel/plugin-proposal-class-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-class-features-plugin", "virtual:ae06a63f6aa1e988b88d3d10b28cb17e6ff74e8073a43bb7e7944fc99d399833c27faff5c819960552ba2813209b65617c2387250ddfdef98398e000d3163b72#npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-dynamic-import", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-dynamic-import-npm-7.10.4-62a4ddfd86-0ded8305a7.zip/node_modules/@babel/plugin-proposal-dynamic-import/", "packageDependencies": [ ["@babel/plugin-proposal-dynamic-import", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-dynamic-import-virtual-dc3c955489/0/cache/@babel-plugin-proposal-dynamic-import-npm-7.10.4-62a4ddfd86-0ded8305a7.zip/node_modules/@babel/plugin-proposal-dynamic-import/", "packageDependencies": [ ["@babel/plugin-proposal-dynamic-import", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-dynamic-import", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-export-namespace-from", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-export-namespace-from-npm-7.10.4-fc25531474-b17727e66f.zip/node_modules/@babel/plugin-proposal-export-namespace-from/", "packageDependencies": [ ["@babel/plugin-proposal-export-namespace-from", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-export-namespace-from-virtual-973b816cd0/0/cache/@babel-plugin-proposal-export-namespace-from-npm-7.10.4-fc25531474-b17727e66f.zip/node_modules/@babel/plugin-proposal-export-namespace-from/", "packageDependencies": [ ["@babel/plugin-proposal-export-namespace-from", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-export-namespace-from", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-json-strings", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-json-strings-npm-7.10.4-5f32c74b60-3403971661.zip/node_modules/@babel/plugin-proposal-json-strings/", "packageDependencies": [ ["@babel/plugin-proposal-json-strings", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-json-strings-virtual-82633a17ea/0/cache/@babel-plugin-proposal-json-strings-npm-7.10.4-5f32c74b60-3403971661.zip/node_modules/@babel/plugin-proposal-json-strings/", "packageDependencies": [ ["@babel/plugin-proposal-json-strings", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-json-strings", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-logical-assignment-operators", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-logical-assignment-operators-npm-7.11.0-eb0c30a9a7-a87e80bcfd.zip/node_modules/@babel/plugin-proposal-logical-assignment-operators/", "packageDependencies": [ ["@babel/plugin-proposal-logical-assignment-operators", "npm:7.11.0"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-logical-assignment-operators-virtual-f72aaef91c/0/cache/@babel-plugin-proposal-logical-assignment-operators-npm-7.11.0-eb0c30a9a7-a87e80bcfd.zip/node_modules/@babel/plugin-proposal-logical-assignment-operators/", "packageDependencies": [ ["@babel/plugin-proposal-logical-assignment-operators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-logical-assignment-operators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-nullish-coalescing-operator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-nullish-coalescing-operator-npm-7.10.4-dd7a5fdb9c-5a20d8bcbf.zip/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/", "packageDependencies": [ ["@babel/plugin-proposal-nullish-coalescing-operator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-nullish-coalescing-operator-virtual-22b315f851/0/cache/@babel-plugin-proposal-nullish-coalescing-operator-npm-7.10.4-dd7a5fdb9c-5a20d8bcbf.zip/node_modules/@babel/plugin-proposal-nullish-coalescing-operator/", "packageDependencies": [ ["@babel/plugin-proposal-nullish-coalescing-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-numeric-separator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-numeric-separator-npm-7.10.4-189a95ec65-344eff491f.zip/node_modules/@babel/plugin-proposal-numeric-separator/", "packageDependencies": [ ["@babel/plugin-proposal-numeric-separator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-numeric-separator-virtual-8053bc5f01/0/cache/@babel-plugin-proposal-numeric-separator-npm-7.10.4-189a95ec65-344eff491f.zip/node_modules/@babel/plugin-proposal-numeric-separator/", "packageDependencies": [ ["@babel/plugin-proposal-numeric-separator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-numeric-separator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-object-rest-spread", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-object-rest-spread-npm-7.11.0-8eab3aee91-5071094245.zip/node_modules/@babel/plugin-proposal-object-rest-spread/", "packageDependencies": [ ["@babel/plugin-proposal-object-rest-spread", "npm:7.11.0"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-object-rest-spread-virtual-d21559b9ef/0/cache/@babel-plugin-proposal-object-rest-spread-npm-7.11.0-8eab3aee91-5071094245.zip/node_modules/@babel/plugin-proposal-object-rest-spread/", "packageDependencies": [ ["@babel/plugin-proposal-object-rest-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-object-rest-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-transform-parameters", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-optional-catch-binding", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-optional-catch-binding-npm-7.10.4-d1e446a91c-56a3a62131.zip/node_modules/@babel/plugin-proposal-optional-catch-binding/", "packageDependencies": [ ["@babel/plugin-proposal-optional-catch-binding", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-optional-catch-binding-virtual-8c3511bccd/0/cache/@babel-plugin-proposal-optional-catch-binding-npm-7.10.4-d1e446a91c-56a3a62131.zip/node_modules/@babel/plugin-proposal-optional-catch-binding/", "packageDependencies": [ ["@babel/plugin-proposal-optional-catch-binding", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-optional-catch-binding", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-optional-chaining", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-optional-chaining-npm-7.11.0-fa74492382-fb59410944.zip/node_modules/@babel/plugin-proposal-optional-chaining/", "packageDependencies": [ ["@babel/plugin-proposal-optional-chaining", "npm:7.11.0"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-optional-chaining-virtual-8437738972/0/cache/@babel-plugin-proposal-optional-chaining-npm-7.11.0-fa74492382-fb59410944.zip/node_modules/@babel/plugin-proposal-optional-chaining/", "packageDependencies": [ ["@babel/plugin-proposal-optional-chaining", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.11.0"], ["@babel/plugin-syntax-optional-chaining", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-private-methods", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-private-methods-npm-7.10.4-6defcf9c18-7a29e63aaf.zip/node_modules/@babel/plugin-proposal-private-methods/", "packageDependencies": [ ["@babel/plugin-proposal-private-methods", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-private-methods-virtual-ddb8d82fc7/0/cache/@babel-plugin-proposal-private-methods-npm-7.10.4-6defcf9c18-7a29e63aaf.zip/node_modules/@babel/plugin-proposal-private-methods/", "packageDependencies": [ ["@babel/plugin-proposal-private-methods", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-class-features-plugin", "virtual:ae06a63f6aa1e988b88d3d10b28cb17e6ff74e8073a43bb7e7944fc99d399833c27faff5c819960552ba2813209b65617c2387250ddfdef98398e000d3163b72#npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-proposal-unicode-property-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-proposal-unicode-property-regex-npm-7.10.4-901dc02c10-41e271cf08.zip/node_modules/@babel/plugin-proposal-unicode-property-regex/", "packageDependencies": [ ["@babel/plugin-proposal-unicode-property-regex", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-proposal-unicode-property-regex-virtual-7315fbecfb/0/cache/@babel-plugin-proposal-unicode-property-regex-npm-7.10.4-901dc02c10-41e271cf08.zip/node_modules/@babel/plugin-proposal-unicode-property-regex/", "packageDependencies": [ ["@babel/plugin-proposal-unicode-property-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-regexp-features-plugin", "virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-async-generators", [ ["npm:7.8.4", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-39685944ff.zip/node_modules/@babel/plugin-syntax-async-generators/", "packageDependencies": [ ["@babel/plugin-syntax-async-generators", "npm:7.8.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-async-generators-virtual-a4bb85c3cb/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-39685944ff.zip/node_modules/@babel/plugin-syntax-async-generators/", "packageDependencies": [ ["@babel/plugin-syntax-async-generators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-async-generators-virtual-b09584cb2c/0/cache/@babel-plugin-syntax-async-generators-npm-7.8.4-d10cf993c9-39685944ff.zip/node_modules/@babel/plugin-syntax-async-generators/", "packageDependencies": [ ["@babel/plugin-syntax-async-generators", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-bigint", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-8c9b610377.zip/node_modules/@babel/plugin-syntax-bigint/", "packageDependencies": [ ["@babel/plugin-syntax-bigint", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-bigint-virtual-4390a4d5ad/0/cache/@babel-plugin-syntax-bigint-npm-7.8.3-b05d971e6c-8c9b610377.zip/node_modules/@babel/plugin-syntax-bigint/", "packageDependencies": [ ["@babel/plugin-syntax-bigint", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-class-properties", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-class-properties-npm-7.10.4-cb3da4e874-8d0c1a3f5a.zip/node_modules/@babel/plugin-syntax-class-properties/", "packageDependencies": [ ["@babel/plugin-syntax-class-properties", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-class-properties-virtual-4ea09a4e3a/0/cache/@babel-plugin-syntax-class-properties-npm-7.10.4-cb3da4e874-8d0c1a3f5a.zip/node_modules/@babel/plugin-syntax-class-properties/", "packageDependencies": [ ["@babel/plugin-syntax-class-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-class-properties-virtual-dee1775b17/0/cache/@babel-plugin-syntax-class-properties-npm-7.10.4-cb3da4e874-8d0c1a3f5a.zip/node_modules/@babel/plugin-syntax-class-properties/", "packageDependencies": [ ["@babel/plugin-syntax-class-properties", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-dynamic-import", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-dynamic-import-npm-7.8.3-fb9ff5634a-134a6f37fe.zip/node_modules/@babel/plugin-syntax-dynamic-import/", "packageDependencies": [ ["@babel/plugin-syntax-dynamic-import", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-dynamic-import-virtual-7c679d228a/0/cache/@babel-plugin-syntax-dynamic-import-npm-7.8.3-fb9ff5634a-134a6f37fe.zip/node_modules/@babel/plugin-syntax-dynamic-import/", "packageDependencies": [ ["@babel/plugin-syntax-dynamic-import", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-export-namespace-from", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-export-namespace-from-npm-7.8.3-1747201aa9-832e007319.zip/node_modules/@babel/plugin-syntax-export-namespace-from/", "packageDependencies": [ ["@babel/plugin-syntax-export-namespace-from", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-export-namespace-from-virtual-da43e08668/0/cache/@babel-plugin-syntax-export-namespace-from-npm-7.8.3-1747201aa9-832e007319.zip/node_modules/@babel/plugin-syntax-export-namespace-from/", "packageDependencies": [ ["@babel/plugin-syntax-export-namespace-from", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-json-strings", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-1a7dabf0a4.zip/node_modules/@babel/plugin-syntax-json-strings/", "packageDependencies": [ ["@babel/plugin-syntax-json-strings", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-json-strings-virtual-1d9730348b/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-1a7dabf0a4.zip/node_modules/@babel/plugin-syntax-json-strings/", "packageDependencies": [ ["@babel/plugin-syntax-json-strings", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-json-strings-virtual-3c3e7e84f1/0/cache/@babel-plugin-syntax-json-strings-npm-7.8.3-6dc7848179-1a7dabf0a4.zip/node_modules/@babel/plugin-syntax-json-strings/", "packageDependencies": [ ["@babel/plugin-syntax-json-strings", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-logical-assignment-operators", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-5b82f71770.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/", "packageDependencies": [ ["@babel/plugin-syntax-logical-assignment-operators", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-logical-assignment-operators-virtual-a112c07b91/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-5b82f71770.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/", "packageDependencies": [ ["@babel/plugin-syntax-logical-assignment-operators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-logical-assignment-operators-virtual-bb85ddcdef/0/cache/@babel-plugin-syntax-logical-assignment-operators-npm-7.10.4-72ae00fdf6-5b82f71770.zip/node_modules/@babel/plugin-syntax-logical-assignment-operators/", "packageDependencies": [ ["@babel/plugin-syntax-logical-assignment-operators", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-nullish-coalescing-operator", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-4ba0375375.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/", "packageDependencies": [ ["@babel/plugin-syntax-nullish-coalescing-operator", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-nullish-coalescing-operator-virtual-ca5d7b0029/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-4ba0375375.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/", "packageDependencies": [ ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-nullish-coalescing-operator-virtual-03267aa006/0/cache/@babel-plugin-syntax-nullish-coalescing-operator-npm-7.8.3-8a723173b5-4ba0375375.zip/node_modules/@babel/plugin-syntax-nullish-coalescing-operator/", "packageDependencies": [ ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-numeric-separator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-47ae878293.zip/node_modules/@babel/plugin-syntax-numeric-separator/", "packageDependencies": [ ["@babel/plugin-syntax-numeric-separator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-numeric-separator-virtual-12defdf357/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-47ae878293.zip/node_modules/@babel/plugin-syntax-numeric-separator/", "packageDependencies": [ ["@babel/plugin-syntax-numeric-separator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-numeric-separator-virtual-6b1c2f2509/0/cache/@babel-plugin-syntax-numeric-separator-npm-7.10.4-81444be605-47ae878293.zip/node_modules/@babel/plugin-syntax-numeric-separator/", "packageDependencies": [ ["@babel/plugin-syntax-numeric-separator", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-object-rest-spread", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-db5dfb39fa.zip/node_modules/@babel/plugin-syntax-object-rest-spread/", "packageDependencies": [ ["@babel/plugin-syntax-object-rest-spread", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-object-rest-spread-virtual-a8832b4e1c/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-db5dfb39fa.zip/node_modules/@babel/plugin-syntax-object-rest-spread/", "packageDependencies": [ ["@babel/plugin-syntax-object-rest-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-object-rest-spread-virtual-fdd6fe5a44/0/cache/@babel-plugin-syntax-object-rest-spread-npm-7.8.3-60bd05b6ae-db5dfb39fa.zip/node_modules/@babel/plugin-syntax-object-rest-spread/", "packageDependencies": [ ["@babel/plugin-syntax-object-rest-spread", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-optional-catch-binding", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-f03d075266.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/", "packageDependencies": [ ["@babel/plugin-syntax-optional-catch-binding", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-optional-catch-binding-virtual-0fcb85b7f4/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-f03d075266.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/", "packageDependencies": [ ["@babel/plugin-syntax-optional-catch-binding", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-optional-catch-binding-virtual-6901d6d08d/0/cache/@babel-plugin-syntax-optional-catch-binding-npm-7.8.3-ce337427d8-f03d075266.zip/node_modules/@babel/plugin-syntax-optional-catch-binding/", "packageDependencies": [ ["@babel/plugin-syntax-optional-catch-binding", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-optional-chaining", [ ["npm:7.8.3", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-2a50685d02.zip/node_modules/@babel/plugin-syntax-optional-chaining/", "packageDependencies": [ ["@babel/plugin-syntax-optional-chaining", "npm:7.8.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-optional-chaining-virtual-78eed562d6/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-2a50685d02.zip/node_modules/@babel/plugin-syntax-optional-chaining/", "packageDependencies": [ ["@babel/plugin-syntax-optional-chaining", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }], ["virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-optional-chaining-virtual-74205b5726/0/cache/@babel-plugin-syntax-optional-chaining-npm-7.8.3-f3f3c79579-2a50685d02.zip/node_modules/@babel/plugin-syntax-optional-chaining/", "packageDependencies": [ ["@babel/plugin-syntax-optional-chaining", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-top-level-await", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-top-level-await-npm-7.10.4-e23708493c-998d87fbd3.zip/node_modules/@babel/plugin-syntax-top-level-await/", "packageDependencies": [ ["@babel/plugin-syntax-top-level-await", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-top-level-await-virtual-fb2b513fd3/0/cache/@babel-plugin-syntax-top-level-await-npm-7.10.4-e23708493c-998d87fbd3.zip/node_modules/@babel/plugin-syntax-top-level-await/", "packageDependencies": [ ["@babel/plugin-syntax-top-level-await", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-syntax-typescript", [ ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-plugin-syntax-typescript-npm-7.12.1-5cfe86494a-37bdb82891.zip/node_modules/@babel/plugin-syntax-typescript/", "packageDependencies": [ ["@babel/plugin-syntax-typescript", "npm:7.12.1"] ], "linkType": "SOFT", }], ["virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-syntax-typescript-virtual-a8c582dfd1/0/cache/@babel-plugin-syntax-typescript-npm-7.12.1-5cfe86494a-37bdb82891.zip/node_modules/@babel/plugin-syntax-typescript/", "packageDependencies": [ ["@babel/plugin-syntax-typescript", "virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-arrow-functions", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-arrow-functions-npm-7.10.4-f9a02d405f-ec5b1d6ec6.zip/node_modules/@babel/plugin-transform-arrow-functions/", "packageDependencies": [ ["@babel/plugin-transform-arrow-functions", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-arrow-functions-virtual-c3c70d994f/0/cache/@babel-plugin-transform-arrow-functions-npm-7.10.4-f9a02d405f-ec5b1d6ec6.zip/node_modules/@babel/plugin-transform-arrow-functions/", "packageDependencies": [ ["@babel/plugin-transform-arrow-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-async-to-generator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-async-to-generator-npm-7.10.4-a65c63df25-c4cddae691.zip/node_modules/@babel/plugin-transform-async-to-generator/", "packageDependencies": [ ["@babel/plugin-transform-async-to-generator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-async-to-generator-virtual-c07eb287af/0/cache/@babel-plugin-transform-async-to-generator-npm-7.10.4-a65c63df25-c4cddae691.zip/node_modules/@babel/plugin-transform-async-to-generator/", "packageDependencies": [ ["@babel/plugin-transform-async-to-generator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-module-imports", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-remap-async-to-generator", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-block-scoped-functions", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-block-scoped-functions-npm-7.10.4-59719e889e-d608f55104.zip/node_modules/@babel/plugin-transform-block-scoped-functions/", "packageDependencies": [ ["@babel/plugin-transform-block-scoped-functions", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-block-scoped-functions-virtual-8dbe4701c5/0/cache/@babel-plugin-transform-block-scoped-functions-npm-7.10.4-59719e889e-d608f55104.zip/node_modules/@babel/plugin-transform-block-scoped-functions/", "packageDependencies": [ ["@babel/plugin-transform-block-scoped-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-block-scoping", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-block-scoping-npm-7.10.4-195131e53a-55283d5f2e.zip/node_modules/@babel/plugin-transform-block-scoping/", "packageDependencies": [ ["@babel/plugin-transform-block-scoping", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-block-scoping-virtual-0ffe383ed8/0/cache/@babel-plugin-transform-block-scoping-npm-7.10.4-195131e53a-55283d5f2e.zip/node_modules/@babel/plugin-transform-block-scoping/", "packageDependencies": [ ["@babel/plugin-transform-block-scoping", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null], ["lodash", "npm:4.17.19"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-classes", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-classes-npm-7.10.4-d75651ff9a-c5ba85f736.zip/node_modules/@babel/plugin-transform-classes/", "packageDependencies": [ ["@babel/plugin-transform-classes", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-classes-virtual-335a71ce42/0/cache/@babel-plugin-transform-classes-npm-7.10.4-d75651ff9a-c5ba85f736.zip/node_modules/@babel/plugin-transform-classes/", "packageDependencies": [ ["@babel/plugin-transform-classes", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-annotate-as-pure", "npm:7.10.4"], ["@babel/helper-define-map", "npm:7.10.4"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-optimise-call-expression", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-replace-supers", "npm:7.10.4"], ["@babel/helper-split-export-declaration", "npm:7.10.4"], ["@types/babel__core", null], ["globals", "npm:11.12.0"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-computed-properties", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-computed-properties-npm-7.10.4-54cce6ebca-c69c53881d.zip/node_modules/@babel/plugin-transform-computed-properties/", "packageDependencies": [ ["@babel/plugin-transform-computed-properties", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-computed-properties-virtual-be034cb13f/0/cache/@babel-plugin-transform-computed-properties-npm-7.10.4-54cce6ebca-c69c53881d.zip/node_modules/@babel/plugin-transform-computed-properties/", "packageDependencies": [ ["@babel/plugin-transform-computed-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-destructuring", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-destructuring-npm-7.10.4-271caa461b-2ea7148346.zip/node_modules/@babel/plugin-transform-destructuring/", "packageDependencies": [ ["@babel/plugin-transform-destructuring", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-destructuring-virtual-2b31ae0797/0/cache/@babel-plugin-transform-destructuring-npm-7.10.4-271caa461b-2ea7148346.zip/node_modules/@babel/plugin-transform-destructuring/", "packageDependencies": [ ["@babel/plugin-transform-destructuring", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-dotall-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-dotall-regex-npm-7.10.4-ee83ecae9b-284cce72df.zip/node_modules/@babel/plugin-transform-dotall-regex/", "packageDependencies": [ ["@babel/plugin-transform-dotall-regex", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-dotall-regex-virtual-932e37d201/0/cache/@babel-plugin-transform-dotall-regex-npm-7.10.4-ee83ecae9b-284cce72df.zip/node_modules/@babel/plugin-transform-dotall-regex/", "packageDependencies": [ ["@babel/plugin-transform-dotall-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-regexp-features-plugin", "virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-duplicate-keys", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-duplicate-keys-npm-7.10.4-af32ee9099-60897c7c2f.zip/node_modules/@babel/plugin-transform-duplicate-keys/", "packageDependencies": [ ["@babel/plugin-transform-duplicate-keys", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-duplicate-keys-virtual-fc6820596e/0/cache/@babel-plugin-transform-duplicate-keys-npm-7.10.4-af32ee9099-60897c7c2f.zip/node_modules/@babel/plugin-transform-duplicate-keys/", "packageDependencies": [ ["@babel/plugin-transform-duplicate-keys", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-exponentiation-operator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-exponentiation-operator-npm-7.10.4-8c454e155f-fb086b4482.zip/node_modules/@babel/plugin-transform-exponentiation-operator/", "packageDependencies": [ ["@babel/plugin-transform-exponentiation-operator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-exponentiation-operator-virtual-c5d81ab1e9/0/cache/@babel-plugin-transform-exponentiation-operator-npm-7.10.4-8c454e155f-fb086b4482.zip/node_modules/@babel/plugin-transform-exponentiation-operator/", "packageDependencies": [ ["@babel/plugin-transform-exponentiation-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-builder-binary-assignment-operator-visitor", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-for-of", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-for-of-npm-7.10.4-bab0cb22ae-86c02bbf98.zip/node_modules/@babel/plugin-transform-for-of/", "packageDependencies": [ ["@babel/plugin-transform-for-of", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-for-of-virtual-af2aed4504/0/cache/@babel-plugin-transform-for-of-npm-7.10.4-bab0cb22ae-86c02bbf98.zip/node_modules/@babel/plugin-transform-for-of/", "packageDependencies": [ ["@babel/plugin-transform-for-of", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-function-name", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-function-name-npm-7.10.4-ae534cd3c4-64d8bf2de2.zip/node_modules/@babel/plugin-transform-function-name/", "packageDependencies": [ ["@babel/plugin-transform-function-name", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-function-name-virtual-4a7cad07dd/0/cache/@babel-plugin-transform-function-name-npm-7.10.4-ae534cd3c4-64d8bf2de2.zip/node_modules/@babel/plugin-transform-function-name/", "packageDependencies": [ ["@babel/plugin-transform-function-name", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-literals", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-literals-npm-7.10.4-06720c861e-53cd3f4367.zip/node_modules/@babel/plugin-transform-literals/", "packageDependencies": [ ["@babel/plugin-transform-literals", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-literals-virtual-40b944cf9d/0/cache/@babel-plugin-transform-literals-npm-7.10.4-06720c861e-53cd3f4367.zip/node_modules/@babel/plugin-transform-literals/", "packageDependencies": [ ["@babel/plugin-transform-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-member-expression-literals", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-member-expression-literals-npm-7.10.4-dd7b9e700e-e6a1844cb5.zip/node_modules/@babel/plugin-transform-member-expression-literals/", "packageDependencies": [ ["@babel/plugin-transform-member-expression-literals", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-member-expression-literals-virtual-01384a4ba2/0/cache/@babel-plugin-transform-member-expression-literals-npm-7.10.4-dd7b9e700e-e6a1844cb5.zip/node_modules/@babel/plugin-transform-member-expression-literals/", "packageDependencies": [ ["@babel/plugin-transform-member-expression-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-modules-amd", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-modules-amd-npm-7.10.4-58429f9cd5-71ff939170.zip/node_modules/@babel/plugin-transform-modules-amd/", "packageDependencies": [ ["@babel/plugin-transform-modules-amd", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-modules-amd-virtual-64de8aa221/0/cache/@babel-plugin-transform-modules-amd-npm-7.10.4-58429f9cd5-71ff939170.zip/node_modules/@babel/plugin-transform-modules-amd/", "packageDependencies": [ ["@babel/plugin-transform-modules-amd", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-module-transforms", "npm:7.12.1"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null], ["babel-plugin-dynamic-import-node", "npm:2.3.3"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-modules-commonjs", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-modules-commonjs-npm-7.10.4-8ee8f30025-4217686508.zip/node_modules/@babel/plugin-transform-modules-commonjs/", "packageDependencies": [ ["@babel/plugin-transform-modules-commonjs", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-modules-commonjs-virtual-951966616f/0/cache/@babel-plugin-transform-modules-commonjs-npm-7.10.4-8ee8f30025-4217686508.zip/node_modules/@babel/plugin-transform-modules-commonjs/", "packageDependencies": [ ["@babel/plugin-transform-modules-commonjs", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-module-transforms", "npm:7.12.1"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-simple-access", "npm:7.10.4"], ["@types/babel__core", null], ["babel-plugin-dynamic-import-node", "npm:2.3.3"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-modules-systemjs", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-modules-systemjs-npm-7.10.4-f7ee30febd-6dea9c6b46.zip/node_modules/@babel/plugin-transform-modules-systemjs/", "packageDependencies": [ ["@babel/plugin-transform-modules-systemjs", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-modules-systemjs-virtual-5605b002dd/0/cache/@babel-plugin-transform-modules-systemjs-npm-7.10.4-f7ee30febd-6dea9c6b46.zip/node_modules/@babel/plugin-transform-modules-systemjs/", "packageDependencies": [ ["@babel/plugin-transform-modules-systemjs", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-hoist-variables", "npm:7.10.4"], ["@babel/helper-module-transforms", "npm:7.12.1"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null], ["babel-plugin-dynamic-import-node", "npm:2.3.3"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-modules-umd", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-modules-umd-npm-7.10.4-642c66c043-b0c3f47b9e.zip/node_modules/@babel/plugin-transform-modules-umd/", "packageDependencies": [ ["@babel/plugin-transform-modules-umd", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-modules-umd-virtual-131b4b49a5/0/cache/@babel-plugin-transform-modules-umd-npm-7.10.4-642c66c043-b0c3f47b9e.zip/node_modules/@babel/plugin-transform-modules-umd/", "packageDependencies": [ ["@babel/plugin-transform-modules-umd", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-module-transforms", "npm:7.12.1"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-named-capturing-groups-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-named-capturing-groups-regex-npm-7.10.4-b34a270ea0-6b868806fd.zip/node_modules/@babel/plugin-transform-named-capturing-groups-regex/", "packageDependencies": [ ["@babel/plugin-transform-named-capturing-groups-regex", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-named-capturing-groups-regex-virtual-31609929bf/0/cache/@babel-plugin-transform-named-capturing-groups-regex-npm-7.10.4-b34a270ea0-6b868806fd.zip/node_modules/@babel/plugin-transform-named-capturing-groups-regex/", "packageDependencies": [ ["@babel/plugin-transform-named-capturing-groups-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-regexp-features-plugin", "virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-new-target", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-new-target-npm-7.10.4-cf31f63f69-a4742428d2.zip/node_modules/@babel/plugin-transform-new-target/", "packageDependencies": [ ["@babel/plugin-transform-new-target", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-new-target-virtual-3b505901fa/0/cache/@babel-plugin-transform-new-target-npm-7.10.4-cf31f63f69-a4742428d2.zip/node_modules/@babel/plugin-transform-new-target/", "packageDependencies": [ ["@babel/plugin-transform-new-target", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-object-super", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-object-super-npm-7.10.4-58b77a18e2-30485dd88b.zip/node_modules/@babel/plugin-transform-object-super/", "packageDependencies": [ ["@babel/plugin-transform-object-super", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-object-super-virtual-2c45d53f3a/0/cache/@babel-plugin-transform-object-super-npm-7.10.4-58b77a18e2-30485dd88b.zip/node_modules/@babel/plugin-transform-object-super/", "packageDependencies": [ ["@babel/plugin-transform-object-super", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-replace-supers", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-parameters", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-parameters-npm-7.10.4-bff4da3b6d-a46ebb4146.zip/node_modules/@babel/plugin-transform-parameters/", "packageDependencies": [ ["@babel/plugin-transform-parameters", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-parameters-virtual-a790e06403/0/cache/@babel-plugin-transform-parameters-npm-7.10.4-bff4da3b6d-a46ebb4146.zip/node_modules/@babel/plugin-transform-parameters/", "packageDependencies": [ ["@babel/plugin-transform-parameters", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-get-function-arity", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-property-literals", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-property-literals-npm-7.10.4-2e0a4d5fb9-06ced62af4.zip/node_modules/@babel/plugin-transform-property-literals/", "packageDependencies": [ ["@babel/plugin-transform-property-literals", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-property-literals-virtual-7b54d1d637/0/cache/@babel-plugin-transform-property-literals-npm-7.10.4-2e0a4d5fb9-06ced62af4.zip/node_modules/@babel/plugin-transform-property-literals/", "packageDependencies": [ ["@babel/plugin-transform-property-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-regenerator", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-regenerator-npm-7.10.4-7f18fbe1a1-932b35c5ed.zip/node_modules/@babel/plugin-transform-regenerator/", "packageDependencies": [ ["@babel/plugin-transform-regenerator", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-regenerator-virtual-27262a07f7/0/cache/@babel-plugin-transform-regenerator-npm-7.10.4-7f18fbe1a1-932b35c5ed.zip/node_modules/@babel/plugin-transform-regenerator/", "packageDependencies": [ ["@babel/plugin-transform-regenerator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@types/babel__core", null], ["regenerator-transform", "npm:0.14.2"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-reserved-words", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-reserved-words-npm-7.10.4-e14d8e8460-457433e66e.zip/node_modules/@babel/plugin-transform-reserved-words/", "packageDependencies": [ ["@babel/plugin-transform-reserved-words", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-reserved-words-virtual-59428f542c/0/cache/@babel-plugin-transform-reserved-words-npm-7.10.4-e14d8e8460-457433e66e.zip/node_modules/@babel/plugin-transform-reserved-words/", "packageDependencies": [ ["@babel/plugin-transform-reserved-words", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-shorthand-properties", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-shorthand-properties-npm-7.10.4-2e051c68b9-91ba5aa099.zip/node_modules/@babel/plugin-transform-shorthand-properties/", "packageDependencies": [ ["@babel/plugin-transform-shorthand-properties", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-shorthand-properties-virtual-2312a2ec13/0/cache/@babel-plugin-transform-shorthand-properties-npm-7.10.4-2e051c68b9-91ba5aa099.zip/node_modules/@babel/plugin-transform-shorthand-properties/", "packageDependencies": [ ["@babel/plugin-transform-shorthand-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-spread", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-spread-npm-7.11.0-4fca29bf4c-b10b0608d9.zip/node_modules/@babel/plugin-transform-spread/", "packageDependencies": [ ["@babel/plugin-transform-spread", "npm:7.11.0"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-spread-virtual-59e3f03dc2/0/cache/@babel-plugin-transform-spread-npm-7.11.0-4fca29bf4c-b10b0608d9.zip/node_modules/@babel/plugin-transform-spread/", "packageDependencies": [ ["@babel/plugin-transform-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.11.0"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-sticky-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-sticky-regex-npm-7.10.4-7690d92b96-56eed04e48.zip/node_modules/@babel/plugin-transform-sticky-regex/", "packageDependencies": [ ["@babel/plugin-transform-sticky-regex", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-sticky-regex-virtual-853ce45717/0/cache/@babel-plugin-transform-sticky-regex-npm-7.10.4-7690d92b96-56eed04e48.zip/node_modules/@babel/plugin-transform-sticky-regex/", "packageDependencies": [ ["@babel/plugin-transform-sticky-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-regex", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-template-literals", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-template-literals-npm-7.10.4-cfd422f0f9-d2aab6e33b.zip/node_modules/@babel/plugin-transform-template-literals/", "packageDependencies": [ ["@babel/plugin-transform-template-literals", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-template-literals-virtual-7b61cbeacf/0/cache/@babel-plugin-transform-template-literals-npm-7.10.4-cfd422f0f9-d2aab6e33b.zip/node_modules/@babel/plugin-transform-template-literals/", "packageDependencies": [ ["@babel/plugin-transform-template-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-annotate-as-pure", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-typeof-symbol", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-typeof-symbol-npm-7.10.4-bb7b796978-13f3e75372.zip/node_modules/@babel/plugin-transform-typeof-symbol/", "packageDependencies": [ ["@babel/plugin-transform-typeof-symbol", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-typeof-symbol-virtual-ea4bf01d0e/0/cache/@babel-plugin-transform-typeof-symbol-npm-7.10.4-bb7b796978-13f3e75372.zip/node_modules/@babel/plugin-transform-typeof-symbol/", "packageDependencies": [ ["@babel/plugin-transform-typeof-symbol", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-typescript", [ ["npm:7.12.1", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-typescript-npm-7.12.1-65fd903ac4-d93737e235.zip/node_modules/@babel/plugin-transform-typescript/", "packageDependencies": [ ["@babel/plugin-transform-typescript", "npm:7.12.1"] ], "linkType": "SOFT", }], ["virtual:e6f1deffaf1df87d138b66eae14fff1a96aca654dec8e953f3c115ef19235acdad728f53d0e68ba1872522c5e9e4afd14a5ad36960cdc41872ab3250eb8a0286#npm:7.12.1", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-typescript-virtual-ee29fb224f/0/cache/@babel-plugin-transform-typescript-npm-7.12.1-65fd903ac4-d93737e235.zip/node_modules/@babel/plugin-transform-typescript/", "packageDependencies": [ ["@babel/plugin-transform-typescript", "virtual:e6f1deffaf1df87d138b66eae14fff1a96aca654dec8e953f3c115ef19235acdad728f53d0e68ba1872522c5e9e4afd14a5ad36960cdc41872ab3250eb8a0286#npm:7.12.1"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-class-features-plugin", "virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-syntax-typescript", "virtual:ee29fb224f7f1f17cff2c35caabc3f806f451e80fe5cab3b96f1b101fa83ae14e9dc4fbec908d628d41d68cb75c355218677486ce2c936c1efd1e34280dfcb6f#npm:7.12.1"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-unicode-escapes", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-unicode-escapes-npm-7.10.4-9cc0452556-c7467a508f.zip/node_modules/@babel/plugin-transform-unicode-escapes/", "packageDependencies": [ ["@babel/plugin-transform-unicode-escapes", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-unicode-escapes-virtual-06d01ddfe4/0/cache/@babel-plugin-transform-unicode-escapes-npm-7.10.4-9cc0452556-c7467a508f.zip/node_modules/@babel/plugin-transform-unicode-escapes/", "packageDependencies": [ ["@babel/plugin-transform-unicode-escapes", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/plugin-transform-unicode-regex", [ ["npm:7.10.4", { "packageLocation": "./.yarn/cache/@babel-plugin-transform-unicode-regex-npm-7.10.4-ef2e9c1e21-2e0762e7fa.zip/node_modules/@babel/plugin-transform-unicode-regex/", "packageDependencies": [ ["@babel/plugin-transform-unicode-regex", "npm:7.10.4"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4", { "packageLocation": "./.yarn/$$virtual/@babel-plugin-transform-unicode-regex-virtual-7549e70baf/0/cache/@babel-plugin-transform-unicode-regex-npm-7.10.4-ef2e9c1e21-2e0762e7fa.zip/node_modules/@babel/plugin-transform-unicode-regex/", "packageDependencies": [ ["@babel/plugin-transform-unicode-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-create-regexp-features-plugin", "virtual:7315fbecfb2a2e7bf744db589bd893467b254e06a0390f6a8160c724a86826465d434fbdf23d7ef5d50036914834c1b32a6aa01a32eaa3fefd51fd14475830ec#npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/preset-env", [ ["npm:7.11.0", { "packageLocation": "./.yarn/cache/@babel-preset-env-npm-7.11.0-9202d7d84e-5ce0e1d188.zip/node_modules/@babel/preset-env/", "packageDependencies": [ ["@babel/preset-env", "npm:7.11.0"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.11.0", { "packageLocation": "./.yarn/$$virtual/@babel-preset-env-virtual-9f043cf50b/0/cache/@babel-preset-env-npm-7.11.0-9202d7d84e-5ce0e1d188.zip/node_modules/@babel/preset-env/", "packageDependencies": [ ["@babel/preset-env", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.11.0"], ["@babel/compat-data", "npm:7.11.0"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-compilation-targets", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/helper-module-imports", "npm:7.10.4"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-proposal-async-generator-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-class-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-dynamic-import", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-export-namespace-from", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-json-strings", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-logical-assignment-operators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/plugin-proposal-nullish-coalescing-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-numeric-separator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-object-rest-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/plugin-proposal-optional-catch-binding", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-optional-chaining", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/plugin-proposal-private-methods", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-proposal-unicode-property-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-syntax-async-generators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.4"], ["@babel/plugin-syntax-class-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-syntax-dynamic-import", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-export-namespace-from", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-json-strings", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-logical-assignment-operators", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-numeric-separator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-syntax-object-rest-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-optional-catch-binding", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-optional-chaining", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.8.3"], ["@babel/plugin-syntax-top-level-await", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-arrow-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-async-to-generator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-block-scoped-functions", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-block-scoping", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-classes", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-computed-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-destructuring", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-dotall-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-duplicate-keys", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-exponentiation-operator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-for-of", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-function-name", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-member-expression-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-modules-amd", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-modules-commonjs", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-modules-systemjs", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-modules-umd", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-named-capturing-groups-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-new-target", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-object-super", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-parameters", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-property-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-regenerator", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-reserved-words", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-shorthand-properties", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-spread", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.11.0"], ["@babel/plugin-transform-sticky-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-template-literals", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-typeof-symbol", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-unicode-escapes", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-unicode-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/preset-modules", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:0.1.3"], ["@babel/types", "npm:7.12.10"], ["@types/babel__core", null], ["browserslist", "npm:4.12.0"], ["core-js-compat", "npm:3.6.4"], ["invariant", "npm:2.2.4"], ["levenary", "npm:1.1.1"], ["semver", "npm:5.7.1"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/preset-modules", [ ["npm:0.1.3", { "packageLocation": "./.yarn/cache/@babel-preset-modules-npm-0.1.3-d63a86113f-341c13de18.zip/node_modules/@babel/preset-modules/", "packageDependencies": [ ["@babel/preset-modules", "npm:0.1.3"] ], "linkType": "SOFT", }], ["virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:0.1.3", { "packageLocation": "./.yarn/$$virtual/@babel-preset-modules-virtual-17cbd5d1ed/0/cache/@babel-preset-modules-npm-0.1.3-d63a86113f-341c13de18.zip/node_modules/@babel/preset-modules/", "packageDependencies": [ ["@babel/preset-modules", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:0.1.3"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/plugin-proposal-unicode-property-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/plugin-transform-dotall-regex", "virtual:9f043cf50bd7cfdf01b73a071d1170f456f58a48ba905bdfe6ef415b7a922f89c3b4fef0da739e41a46df93f868a66dabf4ee01845768169cc1abbe4bb490ff5#npm:7.10.4"], ["@babel/types", "npm:7.12.10"], ["@types/babel__core", null], ["esutils", "npm:2.0.3"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/preset-typescript", [ ["npm:7.12.7", { "packageLocation": "./.yarn/cache/@babel-preset-typescript-npm-7.12.7-bf089358e6-9a808f4798.zip/node_modules/@babel/preset-typescript/", "packageDependencies": [ ["@babel/preset-typescript", "npm:7.12.7"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.7", { "packageLocation": "./.yarn/$$virtual/@babel-preset-typescript-virtual-e6f1deffaf/0/cache/@babel-preset-typescript-npm-7.12.7-bf089358e6-9a808f4798.zip/node_modules/@babel/preset-typescript/", "packageDependencies": [ ["@babel/preset-typescript", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.7"], ["@babel/core", "npm:7.12.10"], ["@babel/helper-plugin-utils", "npm:7.10.4"], ["@babel/helper-validator-option", "npm:7.12.1"], ["@babel/plugin-transform-typescript", "virtual:e6f1deffaf1df87d138b66eae14fff1a96aca654dec8e953f3c115ef19235acdad728f53d0e68ba1872522c5e9e4afd14a5ad36960cdc41872ab3250eb8a0286#npm:7.12.1"], ["@types/babel__core", null] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["@babel/runtime", [ ["npm:7.8.4", { "packageLocation": "./.yarn/cache/@babel-runtime-npm-7.8.4-e3028a5d42-e81c601fd2.zip/node_modules/@babel/runtime/", "packageDependencies": [ ["@babel/runtime", "npm:7.8.4"], ["regenerator-runtime", "npm:0.13.3"] ], "linkType": "HARD", }], ["npm:7.8.7", { "packageLocation": "./.yarn/cache/@babel-runtime-npm-7.8.7-1172cbe3dd-f7990173bf.zip/node_modules/@babel/runtime/", "packageDependencies": [ ["@babel/runtime", "npm:7.8.7"], ["regenerator-runtime", "npm:0.13.4"] ], "linkType": "HARD", }] ]], ["@babel/template", [ ["npm:7.12.7", { "packageLocation": "./.yarn/cache/@babel-template-npm-7.12.7-ea87424ec4-6e0a050be7.zip/node_modules/@babel/template/", "packageDependencies": [ ["@babel/template", "npm:7.12.7"], ["@babel/code-frame", "npm:7.10.4"], ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@babel/traverse", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-traverse-npm-7.12.10-4c5f7cc299-63e8500aed.zip/node_modules/@babel/traverse/", "packageDependencies": [ ["@babel/traverse", "npm:7.12.10"], ["@babel/code-frame", "npm:7.10.4"], ["@babel/generator", "npm:7.12.10"], ["@babel/helper-function-name", "npm:7.10.4"], ["@babel/helper-split-export-declaration", "npm:7.11.0"], ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["globals", "npm:11.12.0"], ["lodash", "npm:4.17.19"] ], "linkType": "HARD", }] ]], ["@babel/types", [ ["npm:7.12.10", { "packageLocation": "./.yarn/cache/@babel-types-npm-7.12.10-becdb90a5e-4f791b6788.zip/node_modules/@babel/types/", "packageDependencies": [ ["@babel/types", "npm:7.12.10"], ["@babel/helper-validator-identifier", "npm:7.10.4"], ["lodash", "npm:4.17.19"], ["to-fast-properties", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:7.12.13", { "packageLocation": "./.yarn/cache/@babel-types-npm-7.12.13-5917a8d71f-b6bb1356a7.zip/node_modules/@babel/types/", "packageDependencies": [ ["@babel/types", "npm:7.12.13"], ["@babel/helper-validator-identifier", "npm:7.12.11"], ["lodash", "npm:4.17.19"], ["to-fast-properties", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["@bcoe/v8-coverage", [ ["npm:0.2.3", { "packageLocation": "./.yarn/cache/@bcoe-v8-coverage-npm-0.2.3-9e27b3c57e-4fc6fb784b.zip/node_modules/@bcoe/v8-coverage/", "packageDependencies": [ ["@bcoe/v8-coverage", "npm:0.2.3"] ], "linkType": "HARD", }] ]], ["@cnakazawa/watch", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/@cnakazawa-watch-npm-1.0.4-ee43493884-7909f89bbe.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", }] ]], ["@iarna/cli", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/@iarna-cli-npm-1.2.0-ad41a21ea6-a515f68166.zip/node_modules/@iarna/cli/", "packageDependencies": [ ["@iarna/cli", "npm:1.2.0"], ["signal-exit", "npm:3.0.3"], ["update-notifier", "npm:2.5.0"], ["yargs", "npm:8.0.2"] ], "linkType": "HARD", }] ]], ["@istanbuljs/load-nyc-config", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/@istanbuljs-load-nyc-config-npm-1.0.0-b3fc180ee9-ef4e27e6fd.zip/node_modules/@istanbuljs/load-nyc-config/", "packageDependencies": [ ["@istanbuljs/load-nyc-config", "npm:1.0.0"], ["camelcase", "npm:5.3.1"], ["find-up", "npm:4.1.0"], ["js-yaml", "npm:3.13.1"], ["resolve-from", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["@istanbuljs/schema", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/@istanbuljs-schema-npm-0.1.2-cec4e49c8d-ebc6bd5f14.zip/node_modules/@istanbuljs/schema/", "packageDependencies": [ ["@istanbuljs/schema", "npm:0.1.2"] ], "linkType": "HARD", }] ]], ["@jest/console", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/@jest-console-npm-26.2.0-5b6fd9526e-e3823e2358.zip/node_modules/@jest/console/", "packageDependencies": [ ["@jest/console", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["chalk", "npm:4.0.0"], ["jest-message-util", "npm:26.2.0"], ["jest-util", "npm:26.2.0"], ["slash", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["@jest/core", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/@jest-core-npm-26.2.2-acbcec89a8-fbad6ea72b.zip/node_modules/@jest/core/", "packageDependencies": [ ["@jest/core", "npm:26.2.2"], ["@jest/console", "npm:26.2.0"], ["@jest/reporters", "npm:26.2.2"], ["@jest/test-result", "npm:26.2.0"], ["@jest/transform", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["ansi-escapes", "npm:4.3.0"], ["chalk", "npm:4.0.0"], ["exit", "npm:0.1.2"], ["graceful-fs", "npm:4.2.4"], ["jest-changed-files", "npm:26.2.0"], ["jest-config", "npm:26.2.2"], ["jest-haste-map", "npm:26.2.2"], ["jest-message-util", "npm:26.2.0"], ["jest-regex-util", "npm:26.0.0"], ["jest-resolve", "npm:26.2.2"], ["jest-resolve-dependencies", "npm:26.2.2"], ["jest-runner", "npm:26.2.2"], ["jest-runtime", "npm:26.2.2"], ["jest-snapshot", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-validate", "npm:26.2.0"], ["jest-watcher", "npm:26.2.0"], ["micromatch", "npm:4.0.2"], ["p-each-series", "npm:2.1.0"], ["rimraf", "npm:3.0.2"], ["slash", "npm:3.0.0"], ["strip-ansi", "npm:6.0.0"] ], "linkType": "HARD", }] ]], ["@jest/environment", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/@jest-environment-npm-26.2.0-b6484a2290-f9974385bd.zip/node_modules/@jest/environment/", "packageDependencies": [ ["@jest/environment", "npm:26.2.0"], ["@jest/fake-timers", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["jest-mock", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["@jest/fake-timers", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/@jest-fake-timers-npm-26.2.0-aebf1e894e-b917001dfa.zip/node_modules/@jest/fake-timers/", "packageDependencies": [ ["@jest/fake-timers", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@sinonjs/fake-timers", "npm:6.0.1"], ["@types/node", "npm:13.13.4"], ["jest-message-util", "npm:26.2.0"], ["jest-mock", "npm:26.2.0"], ["jest-util", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["@jest/globals", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/@jest-globals-npm-26.2.0-8bed3b8cd0-627008bda5.zip/node_modules/@jest/globals/", "packageDependencies": [ ["@jest/globals", "npm:26.2.0"], ["@jest/environment", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["expect", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["@jest/reporters", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/@jest-reporters-npm-26.2.2-5e94c2bc53-69be9eea52.zip/node_modules/@jest/reporters/", "packageDependencies": [ ["@jest/reporters", "npm:26.2.2"], ["@bcoe/v8-coverage", "npm:0.2.3"], ["@jest/console", "npm:26.2.0"], ["@jest/test-result", "npm:26.2.0"], ["@jest/transform", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["chalk", "npm:4.0.0"], ["collect-v8-coverage", "npm:1.0.0"], ["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.2.2"], ["jest-resolve", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-worker", "npm:26.2.1"], ["node-notifier", "npm:7.0.0"], ["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:4.1.3"] ], "linkType": "HARD", }] ]], ["@jest/source-map", [ ["npm:26.1.0", { "packageLocation": "./.yarn/cache/@jest-source-map-npm-26.1.0-7c05504c9d-f2d1d8cee4.zip/node_modules/@jest/source-map/", "packageDependencies": [ ["@jest/source-map", "npm:26.1.0"], ["callsites", "npm:3.1.0"], ["graceful-fs", "npm:4.2.4"], ["source-map", "npm:0.6.1"] ], "linkType": "HARD", }] ]], ["@jest/test-result", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/@jest-test-result-npm-26.2.0-243bdd7540-64fb226ecb.zip/node_modules/@jest/test-result/", "packageDependencies": [ ["@jest/test-result", "npm:26.2.0"], ["@jest/console", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/istanbul-lib-coverage", "npm:2.0.1"], ["collect-v8-coverage", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["@jest/test-sequencer", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/@jest-test-sequencer-npm-26.2.2-fa92b61324-13b8e3da50.zip/node_modules/@jest/test-sequencer/", "packageDependencies": [ ["@jest/test-sequencer", "npm:26.2.2"], ["@jest/test-result", "npm:26.2.0"], ["graceful-fs", "npm:4.2.4"], ["jest-haste-map", "npm:26.2.2"], ["jest-runner", "npm:26.2.2"], ["jest-runtime", "npm:26.2.2"] ], "linkType": "HARD", }] ]], ["@jest/transform", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/@jest-transform-npm-26.2.2-6ec7866d27-ac84cc720d.zip/node_modules/@jest/transform/", "packageDependencies": [ ["@jest/transform", "npm:26.2.2"], ["@babel/core", "npm:7.12.10"], ["@jest/types", "npm:26.2.0"], ["babel-plugin-istanbul", "npm:6.0.0"], ["chalk", "npm:4.0.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.2.2"], ["jest-regex-util", "npm:26.0.0"], ["jest-util", "npm:26.2.0"], ["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.2.0", { "packageLocation": "./.yarn/cache/@jest-types-npm-26.2.0-4643ecb17b-369e0123c9.zip/node_modules/@jest/types/", "packageDependencies": [ ["@jest/types", "npm:26.2.0"], ["@types/istanbul-lib-coverage", "npm:2.0.1"], ["@types/istanbul-reports", "npm:1.1.1"], ["@types/node", "npm:13.13.4"], ["@types/yargs", "npm:15.0.4"], ["chalk", "npm:4.0.0"] ], "linkType": "HARD", }], ["npm:26.6.2", { "packageLocation": "./.yarn/cache/@jest-types-npm-26.6.2-fca9877d98-5c511d7807.zip/node_modules/@jest/types/", "packageDependencies": [ ["@jest/types", "npm:26.6.2"], ["@types/istanbul-lib-coverage", "npm:2.0.1"], ["@types/istanbul-reports", "npm:3.0.0"], ["@types/node", "npm:13.13.4"], ["@types/yargs", "npm:15.0.4"], ["chalk", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["@nicolo-ribaudo/chokidar-2", [ ["npm:2.1.8-no-fsevents", { "packageLocation": "./.yarn/cache/@nicolo-ribaudo-chokidar-2-npm-2.1.8-no-fsevents-a21a333eb4-0efeea3b7d.zip/node_modules/@nicolo-ribaudo/chokidar-2/", "packageDependencies": [ ["@nicolo-ribaudo/chokidar-2", "npm:2.1.8-no-fsevents"], ["anymatch", "npm:2.0.0"], ["async-each", "npm:1.0.3"], ["braces", "npm:2.3.2"], ["glob-parent", "npm:3.1.0"], ["inherits", "npm:2.0.4"], ["is-binary-path", "npm:1.0.1"], ["is-glob", "npm:4.0.1"], ["normalize-path", "npm:3.0.0"], ["path-is-absolute", "npm:1.0.1"], ["readdirp", "npm:2.2.1"], ["upath", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["@nodelib/fs.scandir", [ ["npm:2.1.3", { "packageLocation": "./.yarn/cache/@nodelib-fs.scandir-npm-2.1.3-92e0b8f0d5-1f100655dd.zip/node_modules/@nodelib/fs.scandir/", "packageDependencies": [ ["@nodelib/fs.scandir", "npm:2.1.3"], ["@nodelib/fs.stat", "npm:2.0.3"], ["run-parallel", "npm:1.1.9"] ], "linkType": "HARD", }] ]], ["@nodelib/fs.stat", [ ["npm:2.0.3", { "packageLocation": "./.yarn/cache/@nodelib-fs.stat-npm-2.0.3-be9eaa5ef7-1bfdb2f419.zip/node_modules/@nodelib/fs.stat/", "packageDependencies": [ ["@nodelib/fs.stat", "npm:2.0.3"] ], "linkType": "HARD", }] ]], ["@nodelib/fs.walk", [ ["npm:1.2.4", { "packageLocation": "./.yarn/cache/@nodelib-fs.walk-npm-1.2.4-1ae6c97d00-f4bffba16c.zip/node_modules/@nodelib/fs.walk/", "packageDependencies": [ ["@nodelib/fs.walk", "npm:1.2.4"], ["@nodelib/fs.scandir", "npm:2.1.3"], ["fastq", "npm:1.6.1"] ], "linkType": "HARD", }] ]], ["@octokit/auth-token", [ ["npm:2.4.0", { "packageLocation": "./.yarn/cache/@octokit-auth-token-npm-2.4.0-6817ec03e3-481cfe972a.zip/node_modules/@octokit/auth-token/", "packageDependencies": [ ["@octokit/auth-token", "npm:2.4.0"], ["@octokit/types", "npm:2.3.1"] ], "linkType": "HARD", }] ]], ["@octokit/core", [ ["npm:2.4.2", { "packageLocation": "./.yarn/cache/@octokit-core-npm-2.4.2-0698f42579-339d2de4f2.zip/node_modules/@octokit/core/", "packageDependencies": [ ["@octokit/core", "npm:2.4.2"], ["@octokit/auth-token", "npm:2.4.0"], ["@octokit/graphql", "npm:4.3.1"], ["@octokit/request", "npm:5.3.2"], ["@octokit/types", "npm:2.3.1"], ["before-after-hook", "npm:2.1.0"], ["universal-user-agent", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["@octokit/endpoint", [ ["npm:5.5.3", { "packageLocation": "./.yarn/cache/@octokit-endpoint-npm-5.5.3-16863647d7-7ef3576978.zip/node_modules/@octokit/endpoint/", "packageDependencies": [ ["@octokit/endpoint", "npm:5.5.3"], ["@octokit/types", "npm:2.3.1"], ["is-plain-object", "npm:3.0.0"], ["universal-user-agent", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["@octokit/graphql", [ ["npm:4.3.1", { "packageLocation": "./.yarn/cache/@octokit-graphql-npm-4.3.1-46d4a65992-278a2af06a.zip/node_modules/@octokit/graphql/", "packageDependencies": [ ["@octokit/graphql", "npm:4.3.1"], ["@octokit/request", "npm:5.3.2"], ["@octokit/types", "npm:2.3.1"], ["universal-user-agent", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["@octokit/plugin-paginate-rest", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/@octokit-plugin-paginate-rest-npm-2.0.1-cb0aaf8b86-07c6dea83f.zip/node_modules/@octokit/plugin-paginate-rest/", "packageDependencies": [ ["@octokit/plugin-paginate-rest", "npm:2.0.1"], ["@octokit/types", "npm:2.3.1"] ], "linkType": "HARD", }] ]], ["@octokit/plugin-request-log", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/@octokit-plugin-request-log-npm-1.0.0-b6c4a34e91-fa9e3bd25f.zip/node_modules/@octokit/plugin-request-log/", "packageDependencies": [ ["@octokit/plugin-request-log", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["@octokit/plugin-rest-endpoint-methods", [ ["npm:3.2.0", { "packageLocation": "./.yarn/cache/@octokit-plugin-rest-endpoint-methods-npm-3.2.0-67e4279511-eee2418811.zip/node_modules/@octokit/plugin-rest-endpoint-methods/", "packageDependencies": [ ["@octokit/plugin-rest-endpoint-methods", "npm:3.2.0"], ["@octokit/types", "npm:2.3.1"], ["deprecation", "npm:2.3.1"] ], "linkType": "HARD", }] ]], ["@octokit/request", [ ["npm:5.3.2", { "packageLocation": "./.yarn/cache/@octokit-request-npm-5.3.2-968f9d2faf-aa09ec48a1.zip/node_modules/@octokit/request/", "packageDependencies": [ ["@octokit/request", "npm:5.3.2"], ["@octokit/endpoint", "npm:5.5.3"], ["@octokit/request-error", "npm:1.2.1"], ["@octokit/types", "npm:2.3.1"], ["deprecation", "npm:2.3.1"], ["is-plain-object", "npm:3.0.0"], ["node-fetch", "npm:2.6.0"], ["once", "npm:1.4.0"], ["universal-user-agent", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["@octokit/request-error", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/@octokit-request-error-npm-1.2.1-0af51a468f-8612f7a037.zip/node_modules/@octokit/request-error/", "packageDependencies": [ ["@octokit/request-error", "npm:1.2.1"], ["@octokit/types", "npm:2.3.1"], ["deprecation", "npm:2.3.1"], ["once", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["@octokit/rest", [ ["npm:17.0.0", { "packageLocation": "./.yarn/cache/@octokit-rest-npm-17.0.0-3261e5e6c7-426578e55f.zip/node_modules/@octokit/rest/", "packageDependencies": [ ["@octokit/rest", "npm:17.0.0"], ["@octokit/core", "npm:2.4.2"], ["@octokit/plugin-paginate-rest", "npm:2.0.1"], ["@octokit/plugin-request-log", "npm:1.0.0"], ["@octokit/plugin-rest-endpoint-methods", "npm:3.2.0"] ], "linkType": "HARD", }] ]], ["@octokit/types", [ ["npm:2.3.1", { "packageLocation": "./.yarn/cache/@octokit-types-npm-2.3.1-20b21627e0-7661abbc6d.zip/node_modules/@octokit/types/", "packageDependencies": [ ["@octokit/types", "npm:2.3.1"], ["@types/node", "npm:13.7.7"] ], "linkType": "HARD", }] ]], ["@semantic-release/commit-analyzer", [ ["npm:8.0.1", { "packageLocation": "./.yarn/cache/@semantic-release-commit-analyzer-npm-8.0.1-b02805c6af-d4ba07479c.zip/node_modules/@semantic-release/commit-analyzer/", "packageDependencies": [ ["@semantic-release/commit-analyzer", "npm:8.0.1"] ], "linkType": "SOFT", }], ["virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:8.0.1", { "packageLocation": "./.yarn/$$virtual/@semantic-release-commit-analyzer-virtual-ae424ec4ac/0/cache/@semantic-release-commit-analyzer-npm-8.0.1-b02805c6af-d4ba07479c.zip/node_modules/@semantic-release/commit-analyzer/", "packageDependencies": [ ["@semantic-release/commit-analyzer", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:8.0.1"], ["@types/semantic-release", null], ["conventional-changelog-angular", "npm:5.0.6"], ["conventional-commits-filter", "npm:2.0.2"], ["conventional-commits-parser", "npm:3.0.8"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["import-from", "npm:3.0.0"], ["lodash", "npm:4.17.19"], ["micromatch", "npm:4.0.2"], ["semantic-release", "npm:17.1.1"] ], "packagePeers": [ "@types/semantic-release", "semantic-release" ], "linkType": "HARD", }] ]], ["@semantic-release/error", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/@semantic-release-error-npm-2.2.0-284fed197a-96502012d8.zip/node_modules/@semantic-release/error/", "packageDependencies": [ ["@semantic-release/error", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["@semantic-release/github", [ ["npm:7.0.4", { "packageLocation": "./.yarn/cache/@semantic-release-github-npm-7.0.4-b764f6ded5-80503e3d25.zip/node_modules/@semantic-release/github/", "packageDependencies": [ ["@semantic-release/github", "npm:7.0.4"] ], "linkType": "SOFT", }], ["virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.4", { "packageLocation": "./.yarn/$$virtual/@semantic-release-github-virtual-d2d6327977/0/cache/@semantic-release-github-npm-7.0.4-b764f6ded5-80503e3d25.zip/node_modules/@semantic-release/github/", "packageDependencies": [ ["@semantic-release/github", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.4"], ["@octokit/rest", "npm:17.0.0"], ["@semantic-release/error", "npm:2.2.0"], ["@types/semantic-release", null], ["aggregate-error", "npm:3.0.1"], ["bottleneck", "npm:2.19.5"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["dir-glob", "npm:3.0.1"], ["fs-extra", "npm:8.1.0"], ["globby", "npm:11.0.0"], ["http-proxy-agent", "npm:4.0.1"], ["https-proxy-agent", "npm:5.0.0"], ["issue-parser", "npm:6.0.0"], ["lodash", "npm:4.17.19"], ["mime", "npm:2.4.4"], ["p-filter", "npm:2.1.0"], ["p-retry", "npm:4.2.0"], ["semantic-release", "npm:17.1.1"], ["url-join", "npm:4.0.1"] ], "packagePeers": [ "@types/semantic-release", "semantic-release" ], "linkType": "HARD", }] ]], ["@semantic-release/npm", [ ["npm:7.0.3", { "packageLocation": "./.yarn/cache/@semantic-release-npm-npm-7.0.3-c95f073d8b-c81814cdce.zip/node_modules/@semantic-release/npm/", "packageDependencies": [ ["@semantic-release/npm", "npm:7.0.3"] ], "linkType": "SOFT", }], ["virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.3", { "packageLocation": "./.yarn/$$virtual/@semantic-release-npm-virtual-2e680d2a4a/0/cache/@semantic-release-npm-npm-7.0.3-c95f073d8b-c81814cdce.zip/node_modules/@semantic-release/npm/", "packageDependencies": [ ["@semantic-release/npm", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.3"], ["@semantic-release/error", "npm:2.2.0"], ["@types/semantic-release", null], ["aggregate-error", "npm:3.0.1"], ["execa", "npm:4.0.0"], ["fs-extra", "npm:8.1.0"], ["lodash", "npm:4.17.19"], ["nerf-dart", "npm:1.0.0"], ["normalize-url", "npm:5.0.0"], ["npm", "npm:6.14.6"], ["rc", "npm:1.2.8"], ["read-pkg", "npm:5.2.0"], ["registry-auth-token", "npm:4.1.1"], ["semantic-release", "npm:17.1.1"], ["semver", "npm:7.3.2"], ["tempy", "npm:0.4.0"] ], "packagePeers": [ "@types/semantic-release", "semantic-release" ], "linkType": "HARD", }] ]], ["@semantic-release/release-notes-generator", [ ["npm:9.0.1", { "packageLocation": "./.yarn/cache/@semantic-release-release-notes-generator-npm-9.0.1-da42402a6b-0bc0933f31.zip/node_modules/@semantic-release/release-notes-generator/", "packageDependencies": [ ["@semantic-release/release-notes-generator", "npm:9.0.1"] ], "linkType": "SOFT", }], ["virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:9.0.1", { "packageLocation": "./.yarn/$$virtual/@semantic-release-release-notes-generator-virtual-1aa2bb7cb4/0/cache/@semantic-release-release-notes-generator-npm-9.0.1-da42402a6b-0bc0933f31.zip/node_modules/@semantic-release/release-notes-generator/", "packageDependencies": [ ["@semantic-release/release-notes-generator", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:9.0.1"], ["@types/semantic-release", null], ["conventional-changelog-angular", "npm:5.0.6"], ["conventional-changelog-writer", "npm:4.0.11"], ["conventional-commits-filter", "npm:2.0.2"], ["conventional-commits-parser", "npm:3.0.8"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["get-stream", "npm:5.1.0"], ["import-from", "npm:3.0.0"], ["into-stream", "npm:5.1.1"], ["lodash", "npm:4.17.19"], ["read-pkg-up", "npm:7.0.1"], ["semantic-release", "npm:17.1.1"] ], "packagePeers": [ "@types/semantic-release", "semantic-release" ], "linkType": "HARD", }] ]], ["@sinonjs/commons", [ ["npm:1.7.1", { "packageLocation": "./.yarn/cache/@sinonjs-commons-npm-1.7.1-76665b5d83-bfe39ad591.zip/node_modules/@sinonjs/commons/", "packageDependencies": [ ["@sinonjs/commons", "npm:1.7.1"], ["type-detect", "npm:4.0.8"] ], "linkType": "HARD", }] ]], ["@sinonjs/fake-timers", [ ["npm:6.0.1", { "packageLocation": "./.yarn/cache/@sinonjs-fake-timers-npm-6.0.1-cebf4d0bfb-64458b9087.zip/node_modules/@sinonjs/fake-timers/", "packageDependencies": [ ["@sinonjs/fake-timers", "npm:6.0.1"], ["@sinonjs/commons", "npm:1.7.1"] ], "linkType": "HARD", }] ]], ["@tootallnate/once", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/@tootallnate-once-npm-1.0.0-db128aa653-6ce56c28c8.zip/node_modules/@tootallnate/once/", "packageDependencies": [ ["@tootallnate/once", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["@tophat/eslint-config", [ ["npm:0.7.0", { "packageLocation": "./.yarn/cache/@tophat-eslint-config-npm-0.7.0-8b8d1b365d-24adccd9f6.zip/node_modules/@tophat/eslint-config/", "packageDependencies": [ ["@tophat/eslint-config", "npm:0.7.0"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:0.7.0", { "packageLocation": "./.yarn/$$virtual/@tophat-eslint-config-virtual-0c477d1ef6/0/cache/@tophat-eslint-config-npm-0.7.0-8b8d1b365d-24adccd9f6.zip/node_modules/@tophat/eslint-config/", "packageDependencies": [ ["@tophat/eslint-config", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:0.7.0"], ["@types/eslint", null], ["@types/eslint-config-prettier", null], ["@types/eslint-plugin-import", null], ["@types/eslint-plugin-jest", null], ["@types/eslint-plugin-jsx-a11y", null], ["@types/eslint-plugin-prettier", null], ["@types/eslint-plugin-react", null], ["@types/eslint-plugin-react-hooks", null], ["@types/prettier", null], ["eslint", "npm:7.6.0"], ["eslint-config-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:6.11.0"], ["eslint-plugin-import", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:2.22.1"], ["eslint-plugin-jest", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:23.20.0"], ["eslint-plugin-jsx-a11y", null], ["eslint-plugin-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:3.1.4"], ["eslint-plugin-react", null], ["eslint-plugin-react-hooks", null], ["prettier", "npm:2.0.5"] ], "packagePeers": [ "@types/eslint-config-prettier", "@types/eslint-plugin-import", "@types/eslint-plugin-jest", "@types/eslint-plugin-jsx-a11y", "@types/eslint-plugin-prettier", "@types/eslint-plugin-react-hooks", "@types/eslint-plugin-react", "@types/eslint", "@types/prettier", "eslint-config-prettier", "eslint-plugin-import", "eslint-plugin-jest", "eslint-plugin-jsx-a11y", "eslint-plugin-prettier", "eslint-plugin-react-hooks", "eslint-plugin-react", "eslint", "prettier" ], "linkType": "HARD", }] ]], ["@types/babel__core", [ ["npm:7.1.7", { "packageLocation": "./.yarn/cache/@types-babel__core-npm-7.1.7-f2ee4098a7-f440303059.zip/node_modules/@types/babel__core/", "packageDependencies": [ ["@types/babel__core", "npm:7.1.7"], ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["@types/babel__generator", "npm:7.6.1"], ["@types/babel__template", "npm:7.0.2"], ["@types/babel__traverse", "npm:7.0.9"] ], "linkType": "HARD", }], ["npm:7.1.9", { "packageLocation": "./.yarn/cache/@types-babel__core-npm-7.1.9-23e959fd72-251c4d3c2a.zip/node_modules/@types/babel__core/", "packageDependencies": [ ["@types/babel__core", "npm:7.1.9"], ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"], ["@types/babel__generator", "npm:7.6.1"], ["@types/babel__template", "npm:7.0.2"], ["@types/babel__traverse", "npm:7.0.9"] ], "linkType": "HARD", }] ]], ["@types/babel__generator", [ ["npm:7.6.1", { "packageLocation": "./.yarn/cache/@types-babel__generator-npm-7.6.1-1afd3e1fa9-d9f19e0e47.zip/node_modules/@types/babel__generator/", "packageDependencies": [ ["@types/babel__generator", "npm:7.6.1"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@types/babel__template", [ ["npm:7.0.2", { "packageLocation": "./.yarn/cache/@types-babel__template-npm-7.0.2-32d369837a-dd13bcf6f0.zip/node_modules/@types/babel__template/", "packageDependencies": [ ["@types/babel__template", "npm:7.0.2"], ["@babel/parser", "npm:7.12.10"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@types/babel__traverse", [ ["npm:7.0.9", { "packageLocation": "./.yarn/cache/@types-babel__traverse-npm-7.0.9-265a28aea9-1cd4d51284.zip/node_modules/@types/babel__traverse/", "packageDependencies": [ ["@types/babel__traverse", "npm:7.0.9"], ["@babel/types", "npm:7.12.10"] ], "linkType": "HARD", }] ]], ["@types/color-name", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/@types-color-name-npm-1.1.1-00b0925070-8311db94a9.zip/node_modules/@types/color-name/", "packageDependencies": [ ["@types/color-name", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["@types/graceful-fs", [ ["npm:4.1.3", { "packageLocation": "./.yarn/cache/@types-graceful-fs-npm-4.1.3-fa91c32dd0-5e2ec610a9.zip/node_modules/@types/graceful-fs/", "packageDependencies": [ ["@types/graceful-fs", "npm:4.1.3"], ["@types/node", "npm:13.13.4"] ], "linkType": "HARD", }] ]], ["@types/istanbul-lib-coverage", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/@types-istanbul-lib-coverage-npm-2.0.1-c8b87e4b03-9779f90523.zip/node_modules/@types/istanbul-lib-coverage/", "packageDependencies": [ ["@types/istanbul-lib-coverage", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["@types/istanbul-lib-report", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/@types-istanbul-lib-report-npm-3.0.0-50de3e6b3b-78aa9f859b.zip/node_modules/@types/istanbul-lib-report/", "packageDependencies": [ ["@types/istanbul-lib-report", "npm:3.0.0"], ["@types/istanbul-lib-coverage", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["@types/istanbul-reports", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/@types-istanbul-reports-npm-1.1.1-380bb9d636-30445a3b32.zip/node_modules/@types/istanbul-reports/", "packageDependencies": [ ["@types/istanbul-reports", "npm:1.1.1"], ["@types/istanbul-lib-coverage", "npm:2.0.1"], ["@types/istanbul-lib-report", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/@types-istanbul-reports-npm-3.0.0-e6fb7a309c-8aee794ea2.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.19", { "packageLocation": "./.yarn/cache/@types-jest-npm-26.0.19-add5d117dd-98c8daaf89.zip/node_modules/@types/jest/", "packageDependencies": [ ["@types/jest", "npm:26.0.19"], ["jest-diff", "npm:26.6.2"], ["pretty-format", "npm:26.6.2"] ], "linkType": "HARD", }] ]], ["@types/json-schema", [ ["npm:7.0.4", { "packageLocation": "./.yarn/cache/@types-json-schema-npm-7.0.4-e9c65098ca-5094037431.zip/node_modules/@types/json-schema/", "packageDependencies": [ ["@types/json-schema", "npm:7.0.4"] ], "linkType": "HARD", }] ]], ["@types/json5", [ ["npm:0.0.29", { "packageLocation": "./.yarn/cache/@types-json5-npm-0.0.29-f63a7916bd-66e9ac0143.zip/node_modules/@types/json5/", "packageDependencies": [ ["@types/json5", "npm:0.0.29"] ], "linkType": "HARD", }] ]], ["@types/keyv", [ ["npm:3.1.1", { "packageLocation": "./.yarn/cache/@types-keyv-npm-3.1.1-779a80f2c7-3aaf557d5b.zip/node_modules/@types/keyv/", "packageDependencies": [ ["@types/keyv", "npm:3.1.1"], ["@types/node", "npm:13.13.4"] ], "linkType": "HARD", }] ]], ["@types/node", [ ["npm:13.13.4", { "packageLocation": "./.yarn/cache/@types-node-npm-13.13.4-1e30c2a062-dc52acb5f3.zip/node_modules/@types/node/", "packageDependencies": [ ["@types/node", "npm:13.13.4"] ], "linkType": "HARD", }], ["npm:13.7.7", { "packageLocation": "./.yarn/cache/@types-node-npm-13.7.7-c8720ca4bc-7a4a7c5060.zip/node_modules/@types/node/", "packageDependencies": [ ["@types/node", "npm:13.7.7"] ], "linkType": "HARD", }], ["npm:14.14.13", { "packageLocation": "./.yarn/cache/@types-node-npm-14.14.13-9e58dadb81-a879dae2e0.zip/node_modules/@types/node/", "packageDependencies": [ ["@types/node", "npm:14.14.13"] ], "linkType": "HARD", }] ]], ["@types/normalize-package-data", [ ["npm:2.4.0", { "packageLocation": "./.yarn/cache/@types-normalize-package-data-npm-2.4.0-ed928aaaa8-6d077e73be.zip/node_modules/@types/normalize-package-data/", "packageDependencies": [ ["@types/normalize-package-data", "npm:2.4.0"] ], "linkType": "HARD", }] ]], ["@types/parse-json", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/@types-parse-json-npm-4.0.0-298522afa6-4a8f720afa.zip/node_modules/@types/parse-json/", "packageDependencies": [ ["@types/parse-json", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["@types/prettier", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/@types-prettier-npm-2.0.0-b15418cea6-aee539015e.zip/node_modules/@types/prettier/", "packageDependencies": [ ["@types/prettier", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["@types/responselike", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/@types-responselike-npm-1.0.0-85dd08af42-e6e6613c80.zip/node_modules/@types/responselike/", "packageDependencies": [ ["@types/responselike", "npm:1.0.0"], ["@types/node", "npm:13.13.4"] ], "linkType": "HARD", }] ]], ["@types/retry", [ ["npm:0.12.0", { "packageLocation": "./.yarn/cache/@types-retry-npm-0.12.0-e4e6294a2c-0755164f2c.zip/node_modules/@types/retry/", "packageDependencies": [ ["@types/retry", "npm:0.12.0"] ], "linkType": "HARD", }] ]], ["@types/stack-utils", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/@types-stack-utils-npm-1.0.1-e2f2f7a882-59738e4b71.zip/node_modules/@types/stack-utils/", "packageDependencies": [ ["@types/stack-utils", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["@types/yargs", [ ["npm:15.0.4", { "packageLocation": "./.yarn/cache/@types-yargs-npm-15.0.4-4311b7c654-03117288be.zip/node_modules/@types/yargs/", "packageDependencies": [ ["@types/yargs", "npm:15.0.4"], ["@types/yargs-parser", "npm:15.0.0"] ], "linkType": "HARD", }] ]], ["@types/yargs-parser", [ ["npm:15.0.0", { "packageLocation": "./.yarn/cache/@types-yargs-parser-npm-15.0.0-db1d59832c-74bfaefde9.zip/node_modules/@types/yargs-parser/", "packageDependencies": [ ["@types/yargs-parser", "npm:15.0.0"] ], "linkType": "HARD", }] ]], ["@typescript-eslint/eslint-plugin", [ ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-eslint-plugin-npm-4.9.1-d00b90b2b7-8de2705aaf.zip/node_modules/@typescript-eslint/eslint-plugin/", "packageDependencies": [ ["@typescript-eslint/eslint-plugin", "npm:4.9.1"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-eslint-plugin-virtual-7a97ffa684/0/cache/@typescript-eslint-eslint-plugin-npm-4.9.1-d00b90b2b7-8de2705aaf.zip/node_modules/@typescript-eslint/eslint-plugin/", "packageDependencies": [ ["@typescript-eslint/eslint-plugin", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["@types/eslint", null], ["@types/typescript-eslint__parser", null], ["@typescript-eslint/experimental-utils", "virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:4.9.1"], ["@typescript-eslint/parser", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["@typescript-eslint/scope-manager", "npm:4.9.1"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["eslint", "npm:7.6.0"], ["functional-red-black-tree", "npm:1.0.1"], ["regexpp", "npm:3.1.0"], ["semver", "npm:7.3.2"], ["tsutils", "virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:3.17.1"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "packagePeers": [ "@types/eslint", "@types/typescript-eslint__parser", "@typescript-eslint/parser", "eslint", "typescript" ], "linkType": "HARD", }] ]], ["@typescript-eslint/experimental-utils", [ ["npm:2.21.0", { "packageLocation": "./.yarn/cache/@typescript-eslint-experimental-utils-npm-2.21.0-2a5c78b0d6-bcc5fb5957.zip/node_modules/@typescript-eslint/experimental-utils/", "packageDependencies": [ ["@typescript-eslint/experimental-utils", "npm:2.21.0"] ], "linkType": "SOFT", }], ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-experimental-utils-npm-4.9.1-04a625dee8-fee1f272ad.zip/node_modules/@typescript-eslint/experimental-utils/", "packageDependencies": [ ["@typescript-eslint/experimental-utils", "npm:4.9.1"] ], "linkType": "SOFT", }], ["virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:4.9.1", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-experimental-utils-virtual-bc6b078bc4/0/cache/@typescript-eslint-experimental-utils-npm-4.9.1-04a625dee8-fee1f272ad.zip/node_modules/@typescript-eslint/experimental-utils/", "packageDependencies": [ ["@typescript-eslint/experimental-utils", "virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:4.9.1"], ["@types/eslint", null], ["@types/json-schema", "npm:7.0.4"], ["@typescript-eslint/scope-manager", "npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["@typescript-eslint/typescript-estree", "virtual:bc6b078bc4f1ff8058da31434a52261c140f5580ce25bc39f1e36db06b689422fcacdba495c177edeacc34a3a71ec1749dd32dc6d9737ef228a981c5a619ede8#npm:4.9.1"], ["eslint", "npm:7.6.0"], ["eslint-scope", "npm:5.1.0"], ["eslint-utils", "npm:2.1.0"] ], "packagePeers": [ "@types/eslint", "eslint" ], "linkType": "HARD", }], ["virtual:daf9735715d874eeca74378564abf3b75c35eb577ab112bf0b353d1c71764e582d5ff6ec92094b18d241db4f54d07f54771e252e74cd69490cccc761ed300d46#npm:2.21.0", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-experimental-utils-virtual-8eefeb5df7/0/cache/@typescript-eslint-experimental-utils-npm-2.21.0-2a5c78b0d6-bcc5fb5957.zip/node_modules/@typescript-eslint/experimental-utils/", "packageDependencies": [ ["@typescript-eslint/experimental-utils", "virtual:daf9735715d874eeca74378564abf3b75c35eb577ab112bf0b353d1c71764e582d5ff6ec92094b18d241db4f54d07f54771e252e74cd69490cccc761ed300d46#npm:2.21.0"], ["@types/eslint", null], ["@types/json-schema", "npm:7.0.4"], ["@typescript-eslint/typescript-estree", "virtual:8eefeb5df73f3dd3ed794b6fa790410471ffa7ccd3f74b72339e61da1c43ccfa05f6ec5b543872d2d66ba6e50fadc57c346225cf2dc0ab1260718f1a4bd4dedc#npm:2.21.0"], ["eslint", "npm:7.6.0"], ["eslint-scope", "npm:5.1.0"] ], "packagePeers": [ "@types/eslint", "eslint" ], "linkType": "HARD", }] ]], ["@typescript-eslint/parser", [ ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-parser-npm-4.9.1-7a320a185e-61fc1b3e9b.zip/node_modules/@typescript-eslint/parser/", "packageDependencies": [ ["@typescript-eslint/parser", "npm:4.9.1"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-parser-virtual-161aa9592e/0/cache/@typescript-eslint-parser-npm-4.9.1-7a320a185e-61fc1b3e9b.zip/node_modules/@typescript-eslint/parser/", "packageDependencies": [ ["@typescript-eslint/parser", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["@types/eslint", null], ["@typescript-eslint/scope-manager", "npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["@typescript-eslint/typescript-estree", "virtual:161aa9592ee45e2acb5106284ba18121b4334021eb40fcf3c49c325c8ae9574d33dbcdd79694aa8944823442d9c01b2346dd79189006412430ad83713470c50b#npm:4.9.1"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["eslint", "npm:7.6.0"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "packagePeers": [ "@types/eslint", "eslint", "typescript" ], "linkType": "HARD", }] ]], ["@typescript-eslint/scope-manager", [ ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-scope-manager-npm-4.9.1-dbeac10a27-352c9c2dd8.zip/node_modules/@typescript-eslint/scope-manager/", "packageDependencies": [ ["@typescript-eslint/scope-manager", "npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["@typescript-eslint/visitor-keys", "npm:4.9.1"] ], "linkType": "HARD", }] ]], ["@typescript-eslint/types", [ ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-types-npm-4.9.1-c050a817b8-e7c5094ce0.zip/node_modules/@typescript-eslint/types/", "packageDependencies": [ ["@typescript-eslint/types", "npm:4.9.1"] ], "linkType": "HARD", }] ]], ["@typescript-eslint/typescript-estree", [ ["npm:2.21.0", { "packageLocation": "./.yarn/cache/@typescript-eslint-typescript-estree-npm-2.21.0-814bc8ace5-e6724eea96.zip/node_modules/@typescript-eslint/typescript-estree/", "packageDependencies": [ ["@typescript-eslint/typescript-estree", "npm:2.21.0"] ], "linkType": "SOFT", }], ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-typescript-estree-npm-4.9.1-c7bb79d518-cb5ce82696.zip/node_modules/@typescript-eslint/typescript-estree/", "packageDependencies": [ ["@typescript-eslint/typescript-estree", "npm:4.9.1"] ], "linkType": "SOFT", }], ["virtual:161aa9592ee45e2acb5106284ba18121b4334021eb40fcf3c49c325c8ae9574d33dbcdd79694aa8944823442d9c01b2346dd79189006412430ad83713470c50b#npm:4.9.1", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-typescript-estree-virtual-4b4ac1cc41/0/cache/@typescript-eslint-typescript-estree-npm-4.9.1-c7bb79d518-cb5ce82696.zip/node_modules/@typescript-eslint/typescript-estree/", "packageDependencies": [ ["@typescript-eslint/typescript-estree", "virtual:161aa9592ee45e2acb5106284ba18121b4334021eb40fcf3c49c325c8ae9574d33dbcdd79694aa8944823442d9c01b2346dd79189006412430ad83713470c50b#npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["@typescript-eslint/visitor-keys", "npm:4.9.1"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["globby", "npm:11.0.1"], ["is-glob", "npm:4.0.1"], ["lodash", "npm:4.17.19"], ["semver", "npm:7.3.2"], ["tsutils", "virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:3.17.1"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "packagePeers": [ "typescript" ], "linkType": "HARD", }], ["virtual:8eefeb5df73f3dd3ed794b6fa790410471ffa7ccd3f74b72339e61da1c43ccfa05f6ec5b543872d2d66ba6e50fadc57c346225cf2dc0ab1260718f1a4bd4dedc#npm:2.21.0", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-typescript-estree-virtual-7097cd900a/0/cache/@typescript-eslint-typescript-estree-npm-2.21.0-814bc8ace5-e6724eea96.zip/node_modules/@typescript-eslint/typescript-estree/", "packageDependencies": [ ["@typescript-eslint/typescript-estree", "virtual:8eefeb5df73f3dd3ed794b6fa790410471ffa7ccd3f74b72339e61da1c43ccfa05f6ec5b543872d2d66ba6e50fadc57c346225cf2dc0ab1260718f1a4bd4dedc#npm:2.21.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["eslint-visitor-keys", "npm:1.3.0"], ["glob", "npm:7.1.6"], ["is-glob", "npm:4.0.1"], ["lodash", "npm:4.17.19"], ["semver", "npm:6.3.0"], ["tsutils", "virtual:baa569a4f8f2bd57e837cd236314a36ac6f422a5d41c02ae772f53257d5dc19ec9bd224a945297e568be9a5d08ee7b0cecb7a7029ec386399817b2c37c319f33#npm:3.17.1"], ["typescript", null] ], "packagePeers": [ "typescript" ], "linkType": "HARD", }], ["virtual:bc6b078bc4f1ff8058da31434a52261c140f5580ce25bc39f1e36db06b689422fcacdba495c177edeacc34a3a71ec1749dd32dc6d9737ef228a981c5a619ede8#npm:4.9.1", { "packageLocation": "./.yarn/$$virtual/@typescript-eslint-typescript-estree-virtual-baa569a4f8/0/cache/@typescript-eslint-typescript-estree-npm-4.9.1-c7bb79d518-cb5ce82696.zip/node_modules/@typescript-eslint/typescript-estree/", "packageDependencies": [ ["@typescript-eslint/typescript-estree", "virtual:bc6b078bc4f1ff8058da31434a52261c140f5580ce25bc39f1e36db06b689422fcacdba495c177edeacc34a3a71ec1749dd32dc6d9737ef228a981c5a619ede8#npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["@typescript-eslint/visitor-keys", "npm:4.9.1"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["globby", "npm:11.0.1"], ["is-glob", "npm:4.0.1"], ["lodash", "npm:4.17.19"], ["semver", "npm:7.3.2"], ["tsutils", "virtual:baa569a4f8f2bd57e837cd236314a36ac6f422a5d41c02ae772f53257d5dc19ec9bd224a945297e568be9a5d08ee7b0cecb7a7029ec386399817b2c37c319f33#npm:3.17.1"], ["typescript", null] ], "packagePeers": [ "typescript" ], "linkType": "HARD", }] ]], ["@typescript-eslint/visitor-keys", [ ["npm:4.9.1", { "packageLocation": "./.yarn/cache/@typescript-eslint-visitor-keys-npm-4.9.1-44f66a3a23-1b059e2ffd.zip/node_modules/@typescript-eslint/visitor-keys/", "packageDependencies": [ ["@typescript-eslint/visitor-keys", "npm:4.9.1"], ["@typescript-eslint/types", "npm:4.9.1"], ["eslint-visitor-keys", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["JSONStream", [ ["npm:1.3.5", { "packageLocation": "./.yarn/cache/JSONStream-npm-1.3.5-1987f2e6dd-e9849f8a52.zip/node_modules/JSONStream/", "packageDependencies": [ ["JSONStream", "npm:1.3.5"], ["jsonparse", "npm:1.3.1"], ["through", "npm:2.3.8"] ], "linkType": "HARD", }] ]], ["abab", [ ["npm:2.0.3", { "packageLocation": "./.yarn/cache/abab-npm-2.0.3-278ae51229-07bd561e87.zip/node_modules/abab/", "packageDependencies": [ ["abab", "npm:2.0.3"] ], "linkType": "HARD", }] ]], ["abbrev", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/abbrev-npm-1.1.1-3659247eab-9f9236a3cc.zip/node_modules/abbrev/", "packageDependencies": [ ["abbrev", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["acorn", [ ["npm:7.1.1", { "packageLocation": "./.yarn/cache/acorn-npm-7.1.1-e64b885cf8-241b797baf.zip/node_modules/acorn/", "packageDependencies": [ ["acorn", "npm:7.1.1"] ], "linkType": "HARD", }], ["npm:7.3.1", { "packageLocation": "./.yarn/cache/acorn-npm-7.3.1-422605b2d6-3fa7039384.zip/node_modules/acorn/", "packageDependencies": [ ["acorn", "npm:7.3.1"] ], "linkType": "HARD", }] ]], ["acorn-globals", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/acorn-globals-npm-6.0.0-acbec28ad5-078ed9bc35.zip/node_modules/acorn-globals/", "packageDependencies": [ ["acorn-globals", "npm:6.0.0"], ["acorn", "npm:7.1.1"], ["acorn-walk", "npm:7.1.1"] ], "linkType": "HARD", }] ]], ["acorn-jsx", [ ["npm:5.2.0", { "packageLocation": "./.yarn/cache/acorn-jsx-npm-5.2.0-4c0af33483-1247cc4b32.zip/node_modules/acorn-jsx/", "packageDependencies": [ ["acorn-jsx", "npm:5.2.0"] ], "linkType": "SOFT", }], ["virtual:3949be975e41e78f8fbf3cb27e0aea224a077a8cf411b3631e8e82cd95a9b956368cc09eefe48169f481b5be207016292a71650a7478bb088f72c278446a9d3a#npm:5.2.0", { "packageLocation": "./.yarn/$$virtual/acorn-jsx-virtual-33b01495b0/0/cache/acorn-jsx-npm-5.2.0-4c0af33483-1247cc4b32.zip/node_modules/acorn-jsx/", "packageDependencies": [ ["acorn-jsx", "virtual:3949be975e41e78f8fbf3cb27e0aea224a077a8cf411b3631e8e82cd95a9b956368cc09eefe48169f481b5be207016292a71650a7478bb088f72c278446a9d3a#npm:5.2.0"], ["@types/acorn", null], ["acorn", "npm:7.3.1"] ], "packagePeers": [ "@types/acorn", "acorn" ], "linkType": "HARD", }] ]], ["acorn-walk", [ ["npm:7.1.1", { "packageLocation": "./.yarn/cache/acorn-walk-npm-7.1.1-492300a130-7d465101e6.zip/node_modules/acorn-walk/", "packageDependencies": [ ["acorn-walk", "npm:7.1.1"] ], "linkType": "HARD", }] ]], ["agent-base", [ ["npm:4.2.1", { "packageLocation": "./.yarn/cache/agent-base-npm-4.2.1-c1c118b5fa-17a3d8a707.zip/node_modules/agent-base/", "packageDependencies": [ ["agent-base", "npm:4.2.1"], ["es6-promisify", "npm:5.0.0"] ], "linkType": "HARD", }], ["npm:4.3.0", { "packageLocation": "./.yarn/cache/agent-base-npm-4.3.0-48c7e81d60-b40b7d9675.zip/node_modules/agent-base/", "packageDependencies": [ ["agent-base", "npm:4.3.0"], ["es6-promisify", "npm:5.0.0"] ], "linkType": "HARD", }], ["npm:6.0.0", { "packageLocation": "./.yarn/cache/agent-base-npm-6.0.0-3a4dedf3f7-dc79f5912f.zip/node_modules/agent-base/", "packageDependencies": [ ["agent-base", "npm:6.0.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"] ], "linkType": "HARD", }] ]], ["agentkeepalive", [ ["npm:3.5.2", { "packageLocation": "./.yarn/cache/agentkeepalive-npm-3.5.2-6736720002-099d65d0b8.zip/node_modules/agentkeepalive/", "packageDependencies": [ ["agentkeepalive", "npm:3.5.2"], ["humanize-ms", "npm:1.2.1"] ], "linkType": "HARD", }] ]], ["aggregate-error", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/aggregate-error-npm-3.0.1-46f220b212-aee96f00c2.zip/node_modules/aggregate-error/", "packageDependencies": [ ["aggregate-error", "npm:3.0.1"], ["clean-stack", "npm:2.2.0"], ["indent-string", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["ajv", [ ["npm:6.12.3", { "packageLocation": "./.yarn/cache/ajv-npm-6.12.3-aaadf00f0f-b20a171bf3.zip/node_modules/ajv/", "packageDependencies": [ ["ajv", "npm:6.12.3"], ["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.2.2"] ], "linkType": "HARD", }] ]], ["ansi-align", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/ansi-align-npm-2.0.0-d2b1b30146-acd73a693a.zip/node_modules/ansi-align/", "packageDependencies": [ ["ansi-align", "npm:2.0.0"], ["string-width", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["ansi-colors", [ ["npm:4.1.1", { "packageLocation": "./.yarn/cache/ansi-colors-npm-4.1.1-97ad42f223-50d8dfbce2.zip/node_modules/ansi-colors/", "packageDependencies": [ ["ansi-colors", "npm:4.1.1"] ], "linkType": "HARD", }] ]], ["ansi-escapes", [ ["npm:4.3.0", { "packageLocation": "./.yarn/cache/ansi-escapes-npm-4.3.0-d4160cc8d6-bb58fe0e26.zip/node_modules/ansi-escapes/", "packageDependencies": [ ["ansi-escapes", "npm:4.3.0"], ["type-fest", "npm:0.8.1"] ], "linkType": "HARD", }] ]], ["ansi-regex", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/ansi-regex-npm-2.1.1-ddd24d102b-93a53c923f.zip/node_modules/ansi-regex/", "packageDependencies": [ ["ansi-regex", "npm:2.1.1"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/ansi-regex-npm-3.0.0-be0b845911-2e3c40d429.zip/node_modules/ansi-regex/", "packageDependencies": [ ["ansi-regex", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.1.0", { "packageLocation": "./.yarn/cache/ansi-regex-npm-4.1.0-4a7d8413fe-53b6fe447c.zip/node_modules/ansi-regex/", "packageDependencies": [ ["ansi-regex", "npm:4.1.0"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/ansi-regex-npm-5.0.0-9c076068d9-cbd9b5c9db.zip/node_modules/ansi-regex/", "packageDependencies": [ ["ansi-regex", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["ansi-styles", [ ["npm:3.2.1", { "packageLocation": "./.yarn/cache/ansi-styles-npm-3.2.1-8cb8107983-456e1c23d9.zip/node_modules/ansi-styles/", "packageDependencies": [ ["ansi-styles", "npm:3.2.1"], ["color-convert", "npm:1.9.3"] ], "linkType": "HARD", }], ["npm:4.2.1", { "packageLocation": "./.yarn/cache/ansi-styles-npm-4.2.1-de50ec308d-c8c007d5da.zip/node_modules/ansi-styles/", "packageDependencies": [ ["ansi-styles", "npm:4.2.1"], ["@types/color-name", "npm:1.1.1"], ["color-convert", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["ansicolors", [ ["npm:0.3.2", { "packageLocation": "./.yarn/cache/ansicolors-npm-0.3.2-cc35882814-0da3223f0a.zip/node_modules/ansicolors/", "packageDependencies": [ ["ansicolors", "npm:0.3.2"] ], "linkType": "HARD", }] ]], ["ansistyles", [ ["npm:0.1.3", { "packageLocation": "./.yarn/cache/ansistyles-npm-0.1.3-112dc5352d-8538825496.zip/node_modules/ansistyles/", "packageDependencies": [ ["ansistyles", "npm:0.1.3"] ], "linkType": "HARD", }] ]], ["anymatch", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/anymatch-npm-2.0.0-f2fcb92f28-9e495910cc.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": "./.yarn/cache/anymatch-npm-3.1.1-7dcfa6178a-cf61bbaf7f.zip/node_modules/anymatch/", "packageDependencies": [ ["anymatch", "npm:3.1.1"], ["normalize-path", "npm:3.0.0"], ["picomatch", "npm:2.2.1"] ], "linkType": "HARD", }] ]], ["aproba", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/aproba-npm-1.2.0-34129f0778-d4bac3e640.zip/node_modules/aproba/", "packageDependencies": [ ["aproba", "npm:1.2.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/aproba-npm-2.0.0-8716bcfde6-84a54bad44.zip/node_modules/aproba/", "packageDependencies": [ ["aproba", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["archy", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/archy-npm-1.0.0-7db8bfdc3b-fed06a0487.zip/node_modules/archy/", "packageDependencies": [ ["archy", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["are-we-there-yet", [ ["npm:1.1.5", { "packageLocation": "./.yarn/cache/are-we-there-yet-npm-1.1.5-b8418908b0-2d6fdb0ddd.zip/node_modules/are-we-there-yet/", "packageDependencies": [ ["are-we-there-yet", "npm:1.1.5"], ["delegates", "npm:1.0.0"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["argparse", [ ["npm:1.0.10", { "packageLocation": "./.yarn/cache/argparse-npm-1.0.10-528934e59d-435adaef5f.zip/node_modules/argparse/", "packageDependencies": [ ["argparse", "npm:1.0.10"], ["sprintf-js", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["argv-formatter", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/argv-formatter-npm-1.0.0-6601482fc9-8795584fb7.zip/node_modules/argv-formatter/", "packageDependencies": [ ["argv-formatter", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["arr-diff", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/arr-diff-npm-4.0.0-cec86ae312-cbdff67cf5.zip/node_modules/arr-diff/", "packageDependencies": [ ["arr-diff", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["arr-flatten", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/arr-flatten-npm-1.1.0-0c12b693e4-564dc9c32c.zip/node_modules/arr-flatten/", "packageDependencies": [ ["arr-flatten", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["arr-union", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/arr-union-npm-3.1.0-853ada9729-78f0f75c47.zip/node_modules/arr-union/", "packageDependencies": [ ["arr-union", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["array-find-index", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/array-find-index-npm-1.0.2-a7d5fbff35-5320b3bd46.zip/node_modules/array-find-index/", "packageDependencies": [ ["array-find-index", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["array-ify", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/array-ify-npm-1.0.0-e09a371977-1ba3a81a15.zip/node_modules/array-ify/", "packageDependencies": [ ["array-ify", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["array-includes", [ ["npm:3.1.2", { "packageLocation": "./.yarn/cache/array-includes-npm-3.1.2-2210d62bda-219971a123.zip/node_modules/array-includes/", "packageDependencies": [ ["array-includes", "npm:3.1.2"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.18.0-next.2"], ["get-intrinsic", "npm:1.1.1"], ["is-string", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["array-union", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/array-union-npm-2.1.0-4e4852b221-93af542eb8.zip/node_modules/array-union/", "packageDependencies": [ ["array-union", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["array-unique", [ ["npm:0.3.2", { "packageLocation": "./.yarn/cache/array-unique-npm-0.3.2-9f62c6ac93-7139dbbcaf.zip/node_modules/array-unique/", "packageDependencies": [ ["array-unique", "npm:0.3.2"] ], "linkType": "HARD", }] ]], ["array.prototype.flat", [ ["npm:1.2.4", { "packageLocation": "./.yarn/cache/array.prototype.flat-npm-1.2.4-7b3397fc11-b4936e68f8.zip/node_modules/array.prototype.flat/", "packageDependencies": [ ["array.prototype.flat", "npm:1.2.4"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.18.0-next.2"] ], "linkType": "HARD", }] ]], ["arrify", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/arrify-npm-1.0.1-affafba9fe-f1d3bae819.zip/node_modules/arrify/", "packageDependencies": [ ["arrify", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["asap", [ ["npm:2.0.6", { "packageLocation": "./.yarn/cache/asap-npm-2.0.6-36714d439d-3d314f8c59.zip/node_modules/asap/", "packageDependencies": [ ["asap", "npm:2.0.6"] ], "linkType": "HARD", }] ]], ["asn1", [ ["npm:0.2.4", { "packageLocation": "./.yarn/cache/asn1-npm-0.2.4-219dd49411-5743ace942.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": "./.yarn/cache/assert-plus-npm-1.0.0-cac95ef098-1bda24f673.zip/node_modules/assert-plus/", "packageDependencies": [ ["assert-plus", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["assign-symbols", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/assign-symbols-npm-1.0.0-fd803ccdf1-893e9389a5.zip/node_modules/assign-symbols/", "packageDependencies": [ ["assign-symbols", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["astral-regex", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/astral-regex-npm-1.0.0-2df7c41332-08e37f5996.zip/node_modules/astral-regex/", "packageDependencies": [ ["astral-regex", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["async-each", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/async-each-npm-1.0.3-464af5d2f3-0cf01982ae.zip/node_modules/async-each/", "packageDependencies": [ ["async-each", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["asynckit", [ ["npm:0.4.0", { "packageLocation": "./.yarn/cache/asynckit-npm-0.4.0-c718858525-a024000b9d.zip/node_modules/asynckit/", "packageDependencies": [ ["asynckit", "npm:0.4.0"] ], "linkType": "HARD", }] ]], ["atob", [ ["npm:2.1.2", { "packageLocation": "./.yarn/cache/atob-npm-2.1.2-bcb583261e-597c0d1a74.zip/node_modules/atob/", "packageDependencies": [ ["atob", "npm:2.1.2"] ], "linkType": "HARD", }] ]], ["aws-sign2", [ ["npm:0.7.0", { "packageLocation": "./.yarn/cache/aws-sign2-npm-0.7.0-656c6cb84d-7162b9b8fb.zip/node_modules/aws-sign2/", "packageDependencies": [ ["aws-sign2", "npm:0.7.0"] ], "linkType": "HARD", }] ]], ["aws4", [ ["npm:1.10.0", { "packageLocation": "./.yarn/cache/aws4-npm-1.10.0-74d09999c1-f8c20a0031.zip/node_modules/aws4/", "packageDependencies": [ ["aws4", "npm:1.10.0"] ], "linkType": "HARD", }] ]], ["babel-jest", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/babel-jest-npm-26.2.2-0fec968b27-3f6abe4322.zip/node_modules/babel-jest/", "packageDependencies": [ ["babel-jest", "npm:26.2.2"] ], "linkType": "SOFT", }], ["virtual:3a4d1369f3b4e454736247ad15b9ec8d0ca358a1adbfacd4f6ee1b71ea868281c7cc6abe14573afc62674d685f44143ff9537be0d07726afb4d1b7c7244c76ac#npm:26.2.2", { "packageLocation": "./.yarn/$$virtual/babel-jest-virtual-8cc538d0bb/0/cache/babel-jest-npm-26.2.2-0fec968b27-3f6abe4322.zip/node_modules/babel-jest/", "packageDependencies": [ ["babel-jest", "virtual:3a4d1369f3b4e454736247ad15b9ec8d0ca358a1adbfacd4f6ee1b71ea868281c7cc6abe14573afc62674d685f44143ff9537be0d07726afb4d1b7c7244c76ac#npm:26.2.2"], ["@babel/core", "npm:7.12.10"], ["@jest/transform", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["@types/babel__core", "npm:7.1.7"], ["babel-plugin-istanbul", "npm:6.0.0"], ["babel-preset-jest", "virtual:8cc538d0bb4e63826a26c6c8cebff8525f9e56835c25d811b1f70a5076ae211f6c8b6cf75d15ba9290255058c527d8ba1e10a84cd4e8b2665539d318c8c4460e#npm:26.2.0"], ["chalk", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"], ["slash", "npm:3.0.0"] ], "packagePeers": [ "@babel/core" ], "linkType": "HARD", }] ]], ["babel-plugin-dynamic-import-node", [ ["npm:2.3.3", { "packageLocation": "./.yarn/cache/babel-plugin-dynamic-import-node-npm-2.3.3-be081936a9-6745b8edca.zip/node_modules/babel-plugin-dynamic-import-node/", "packageDependencies": [ ["babel-plugin-dynamic-import-node", "npm:2.3.3"], ["object.assign", "npm:4.1.0"] ], "linkType": "HARD", }] ]], ["babel-plugin-istanbul", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/babel-plugin-istanbul-npm-6.0.0-2c177ffcc3-0a185405d8.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.0.0"], ["@istanbuljs/schema", "npm:0.1.2"], ["istanbul-lib-instrument", "npm:4.0.1"], ["test-exclude", "npm:6.0.0"] ], "linkType": "HARD", }] ]], ["babel-plugin-jest-hoist", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/babel-plugin-jest-hoist-npm-26.2.0-431baf66a9-02f3e1b9c4.zip/node_modules/babel-plugin-jest-hoist/", "packageDependencies": [ ["babel-plugin-jest-hoist", "npm:26.2.0"], ["@babel/template", "npm:7.12.7"], ["@babel/types", "npm:7.12.10"], ["@types/babel__core", "npm:7.1.9"], ["@types/babel__traverse", "npm:7.0.9"] ], "linkType": "HARD", }] ]], ["babel-preset-current-node-syntax", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/babel-preset-current-node-syntax-npm-0.1.2-5be7835a65-f31cbcbf7a.zip/node_modules/babel-preset-current-node-syntax/", "packageDependencies": [ ["babel-preset-current-node-syntax", "npm:0.1.2"] ], "linkType": "SOFT", }], ["virtual:be2efd1a5804434618e18b0c2917cc5ed83eef6ecc46027dac1c8c2cc4d4ef03f87914c1b3473028df36e4fb7a67b745b5ab02d5a80bc84e36784b92249331ea#npm:0.1.2", { "packageLocation": "./.yarn/$$virtual/babel-preset-current-node-syntax-virtual-c0e9139f0c/0/cache/babel-preset-current-node-syntax-npm-0.1.2-5be7835a65-f31cbcbf7a.zip/node_modules/babel-preset-current-node-syntax/", "packageDependencies": [ ["babel-preset-current-node-syntax", "virtual:be2efd1a5804434618e18b0c2917cc5ed83eef6ecc46027dac1c8c2cc4d4ef03f87914c1b3473028df36e4fb7a67b745b5ab02d5a80bc84e36784b92249331ea#npm:0.1.2"], ["@babel/core", "npm:7.12.10"], ["@babel/plugin-syntax-async-generators", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.4"], ["@babel/plugin-syntax-bigint", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/plugin-syntax-class-properties", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/plugin-syntax-json-strings", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/plugin-syntax-logical-assignment-operators", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/plugin-syntax-nullish-coalescing-operator", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/plugin-syntax-numeric-separator", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.10.4"], ["@babel/plugin-syntax-object-rest-spread", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/plugin-syntax-optional-catch-binding", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@babel/plugin-syntax-optional-chaining", "virtual:c0e9139f0c961692f6c663238b65dc2e8f3349a25315aff090e16cde9fdd1208ffb33405a8a3eff8f0600c5a0c024c0959c7ce60357f36af75c67228a8d331fd#npm:7.8.3"], ["@types/babel__core", "npm:7.1.7"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["babel-preset-jest", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/babel-preset-jest-npm-26.2.0-928afc27c6-c0a4347c78.zip/node_modules/babel-preset-jest/", "packageDependencies": [ ["babel-preset-jest", "npm:26.2.0"] ], "linkType": "SOFT", }], ["virtual:8cc538d0bb4e63826a26c6c8cebff8525f9e56835c25d811b1f70a5076ae211f6c8b6cf75d15ba9290255058c527d8ba1e10a84cd4e8b2665539d318c8c4460e#npm:26.2.0", { "packageLocation": "./.yarn/$$virtual/babel-preset-jest-virtual-be2efd1a58/0/cache/babel-preset-jest-npm-26.2.0-928afc27c6-c0a4347c78.zip/node_modules/babel-preset-jest/", "packageDependencies": [ ["babel-preset-jest", "virtual:8cc538d0bb4e63826a26c6c8cebff8525f9e56835c25d811b1f70a5076ae211f6c8b6cf75d15ba9290255058c527d8ba1e10a84cd4e8b2665539d318c8c4460e#npm:26.2.0"], ["@babel/core", "npm:7.12.10"], ["@types/babel__core", "npm:7.1.7"], ["babel-plugin-jest-hoist", "npm:26.2.0"], ["babel-preset-current-node-syntax", "virtual:be2efd1a5804434618e18b0c2917cc5ed83eef6ecc46027dac1c8c2cc4d4ef03f87914c1b3473028df36e4fb7a67b745b5ab02d5a80bc84e36784b92249331ea#npm:0.1.2"] ], "packagePeers": [ "@babel/core", "@types/babel__core" ], "linkType": "HARD", }] ]], ["balanced-match", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/balanced-match-npm-1.0.0-951a2ad706-f515a605fe.zip/node_modules/balanced-match/", "packageDependencies": [ ["balanced-match", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["base", [ ["npm:0.11.2", { "packageLocation": "./.yarn/cache/base-npm-0.11.2-a9bde462d6-84e30392fd.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": "./.yarn/cache/bcrypt-pbkdf-npm-1.0.2-80db8b16ed-3f57eb99bb.zip/node_modules/bcrypt-pbkdf/", "packageDependencies": [ ["bcrypt-pbkdf", "npm:1.0.2"], ["tweetnacl", "npm:0.14.5"] ], "linkType": "HARD", }] ]], ["before-after-hook", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/before-after-hook-npm-2.1.0-68b62dea36-4df7ef0992.zip/node_modules/before-after-hook/", "packageDependencies": [ ["before-after-hook", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["bin-links", [ ["npm:1.1.8", { "packageLocation": "./.yarn/cache/bin-links-npm-1.1.8-94abbc8c7c-2ab49e2af1.zip/node_modules/bin-links/", "packageDependencies": [ ["bin-links", "npm:1.1.8"], ["bluebird", "npm:3.7.2"], ["cmd-shim", "npm:3.0.3"], ["gentle-fs", "npm:2.3.1"], ["graceful-fs", "npm:4.2.4"], ["npm-normalize-package-bin", "npm:1.0.1"], ["write-file-atomic", "npm:2.4.3"] ], "linkType": "HARD", }] ]], ["binary-extensions", [ ["npm:1.13.1", { "packageLocation": "./.yarn/cache/binary-extensions-npm-1.13.1-fb81dec2b0-7cdacc6dad.zip/node_modules/binary-extensions/", "packageDependencies": [ ["binary-extensions", "npm:1.13.1"] ], "linkType": "HARD", }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/binary-extensions-npm-2.1.0-0681d7e2ce-12bee28179.zip/node_modules/binary-extensions/", "packageDependencies": [ ["binary-extensions", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["bluebird", [ ["npm:3.7.2", { "packageLocation": "./.yarn/cache/bluebird-npm-3.7.2-6a54136ee3-4f2288662f.zip/node_modules/bluebird/", "packageDependencies": [ ["bluebird", "npm:3.7.2"] ], "linkType": "HARD", }] ]], ["bottleneck", [ ["npm:2.19.5", { "packageLocation": "./.yarn/cache/bottleneck-npm-2.19.5-2c6092aa17-712d8cf9ed.zip/node_modules/bottleneck/", "packageDependencies": [ ["bottleneck", "npm:2.19.5"] ], "linkType": "HARD", }] ]], ["boxen", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/boxen-npm-1.3.0-516a1c78f9-1e402785f9.zip/node_modules/boxen/", "packageDependencies": [ ["boxen", "npm:1.3.0"], ["ansi-align", "npm:2.0.0"], ["camelcase", "npm:4.1.0"], ["chalk", "npm:2.4.2"], ["cli-boxes", "npm:1.0.0"], ["string-width", "npm:2.1.1"], ["term-size", "npm:1.2.0"], ["widest-line", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["brace-expansion", [ ["npm:1.1.11", { "packageLocation": "./.yarn/cache/brace-expansion-npm-1.1.11-fb95eb05ad-4c878e25e4.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": "./.yarn/cache/braces-npm-2.3.2-19cadb3384-5f2d5ae262.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": "./.yarn/cache/braces-npm-3.0.2-782240b28a-f3493181c3.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": "./.yarn/cache/browser-process-hrtime-npm-1.0.0-db700805c2-565847e5b0.zip/node_modules/browser-process-hrtime/", "packageDependencies": [ ["browser-process-hrtime", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["browserslist", [ ["npm:4.12.0", { "packageLocation": "./.yarn/cache/browserslist-npm-4.12.0-4a2e4780c6-564af87b33.zip/node_modules/browserslist/", "packageDependencies": [ ["browserslist", "npm:4.12.0"], ["caniuse-lite", "npm:1.0.30001048"], ["electron-to-chromium", "npm:1.3.426"], ["node-releases", "npm:1.1.53"], ["pkg-up", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["bser", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/bser-npm-2.1.1-cc902055ce-302af19567.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": "./.yarn/cache/buffer-from-npm-1.1.1-22917b8ed8-540ceb79c4.zip/node_modules/buffer-from/", "packageDependencies": [ ["buffer-from", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["builtins", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/builtins-npm-1.0.3-f09d2d57f2-36aa0f11ef.zip/node_modules/builtins/", "packageDependencies": [ ["builtins", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["byline", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/byline-npm-5.0.0-dde6edb7d9-84aec9f9db.zip/node_modules/byline/", "packageDependencies": [ ["byline", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["byte-size", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/byte-size-npm-5.0.1-890bc8dda4-915e1367eb.zip/node_modules/byte-size/", "packageDependencies": [ ["byte-size", "npm:5.0.1"] ], "linkType": "HARD", }] ]], ["cacache", [ ["npm:12.0.4", { "packageLocation": "./.yarn/cache/cacache-npm-12.0.4-0a601d06b9-fd70ecfddb.zip/node_modules/cacache/", "packageDependencies": [ ["cacache", "npm:12.0.4"], ["bluebird", "npm:3.7.2"], ["chownr", "npm:1.1.4"], ["figgy-pudding", "npm:3.5.2"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["infer-owner", "npm:1.0.4"], ["lru-cache", "npm:5.1.1"], ["mississippi", "npm:3.0.0"], ["mkdirp", "npm:0.5.5"], ["move-concurrently", "npm:1.0.1"], ["promise-inflight", "virtual:0a601d06b9bb877e28dc3c2bf132b715e8c8db39518cb037053d3e960e698b842f18c4ad29c4dbd116bd79f31c565cbbc9741fa4573e2713fab36fd780658f57#npm:1.0.1"], ["rimraf", "npm:2.7.1"], ["ssri", "npm:6.0.1"], ["unique-filename", "npm:1.1.1"], ["y18n", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["cache-base", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/cache-base-npm-1.0.1-1538417cb9-3f362ba824.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", }] ]], ["call-bind", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/call-bind-npm-1.0.2-c957124861-18cc6107a1.zip/node_modules/call-bind/", "packageDependencies": [ ["call-bind", "npm:1.0.2"], ["function-bind", "npm:1.1.1"], ["get-intrinsic", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["call-limit", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/call-limit-npm-1.1.1-76df9a97b2-1780f5ab71.zip/node_modules/call-limit/", "packageDependencies": [ ["call-limit", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["callsites", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/callsites-npm-3.1.0-268f989910-f726bf10d7.zip/node_modules/callsites/", "packageDependencies": [ ["callsites", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["camelcase", [ ["npm:4.1.0", { "packageLocation": "./.yarn/cache/camelcase-npm-4.1.0-6903b265cd-6ca41b5114.zip/node_modules/camelcase/", "packageDependencies": [ ["camelcase", "npm:4.1.0"] ], "linkType": "HARD", }], ["npm:5.3.1", { "packageLocation": "./.yarn/cache/camelcase-npm-5.3.1-5db8af62c5-6a3350c4ea.zip/node_modules/camelcase/", "packageDependencies": [ ["camelcase", "npm:5.3.1"] ], "linkType": "HARD", }], ["npm:6.0.0", { "packageLocation": "./.yarn/cache/camelcase-npm-6.0.0-9f3e9c28c5-d92305180b.zip/node_modules/camelcase/", "packageDependencies": [ ["camelcase", "npm:6.0.0"] ], "linkType": "HARD", }] ]], ["camelcase-keys", [ ["npm:4.2.0", { "packageLocation": "./.yarn/cache/camelcase-keys-npm-4.2.0-200a79b023-9a90a1847d.zip/node_modules/camelcase-keys/", "packageDependencies": [ ["camelcase-keys", "npm:4.2.0"], ["camelcase", "npm:4.1.0"], ["map-obj", "npm:2.0.0"], ["quick-lru", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["caniuse-lite", [ ["npm:1.0.30001048", { "packageLocation": "./.yarn/cache/caniuse-lite-npm-1.0.30001048-024819d105-cead4afd6c.zip/node_modules/caniuse-lite/", "packageDependencies": [ ["caniuse-lite", "npm:1.0.30001048"] ], "linkType": "HARD", }] ]], ["capture-exit", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/capture-exit-npm-2.0.0-564874b447-9dd81108a0.zip/node_modules/capture-exit/", "packageDependencies": [ ["capture-exit", "npm:2.0.0"], ["rsvp", "npm:4.8.5"] ], "linkType": "HARD", }] ]], ["capture-stack-trace", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/capture-stack-trace-npm-1.0.1-0ffa4b6380-c857f977ca.zip/node_modules/capture-stack-trace/", "packageDependencies": [ ["capture-stack-trace", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["cardinal", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/cardinal-npm-2.1.1-b77e7b28a7-7dafc23b73.zip/node_modules/cardinal/", "packageDependencies": [ ["cardinal", "npm:2.1.1"], ["ansicolors", "npm:0.3.2"], ["redeyed", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["caseless", [ ["npm:0.12.0", { "packageLocation": "./.yarn/cache/caseless-npm-0.12.0-e83bc5df83-147f48bff9.zip/node_modules/caseless/", "packageDependencies": [ ["caseless", "npm:0.12.0"] ], "linkType": "HARD", }] ]], ["chalk", [ ["npm:2.4.2", { "packageLocation": "./.yarn/cache/chalk-npm-2.4.2-3ea16dd91e-22c7b7b5bc.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": "./.yarn/cache/chalk-npm-3.0.0-e813208025-4018b0c812.zip/node_modules/chalk/", "packageDependencies": [ ["chalk", "npm:3.0.0"], ["ansi-styles", "npm:4.2.1"], ["supports-color", "npm:7.1.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/chalk-npm-4.0.0-50e5418ea0-12b01a228b.zip/node_modules/chalk/", "packageDependencies": [ ["chalk", "npm:4.0.0"], ["ansi-styles", "npm:4.2.1"], ["supports-color", "npm:7.1.0"] ], "linkType": "HARD", }] ]], ["char-regex", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/char-regex-npm-1.0.2-ecade5f97f-7db46ed45d.zip/node_modules/char-regex/", "packageDependencies": [ ["char-regex", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["chokidar", [ ["npm:3.4.3", { "packageLocation": "./.yarn/cache/chokidar-npm-3.4.3-58f7548978-b5a566b312.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=11e9ea"], ["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:1.1.4", { "packageLocation": "./.yarn/cache/chownr-npm-1.1.4-5bd400ab08-4a7f1a0b26.zip/node_modules/chownr/", "packageDependencies": [ ["chownr", "npm:1.1.4"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/chownr-npm-2.0.0-638f1c9c61-b06ba0bf42.zip/node_modules/chownr/", "packageDependencies": [ ["chownr", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["ci-info", [ ["npm:1.6.0", { "packageLocation": "./.yarn/cache/ci-info-npm-1.6.0-2d91706840-c53d8ead84.zip/node_modules/ci-info/", "packageDependencies": [ ["ci-info", "npm:1.6.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/ci-info-npm-2.0.0-78012236a1-553fe83c08.zip/node_modules/ci-info/", "packageDependencies": [ ["ci-info", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["cidr-regex", [ ["npm:2.0.10", { "packageLocation": "./.yarn/cache/cidr-regex-npm-2.0.10-5f1a202198-1c662440f8.zip/node_modules/cidr-regex/", "packageDependencies": [ ["cidr-regex", "npm:2.0.10"], ["ip-regex", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["class-utils", [ ["npm:0.3.6", { "packageLocation": "./.yarn/cache/class-utils-npm-0.3.6-2c691ad006-6411679ad4.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": "./.yarn/cache/clean-stack-npm-2.2.0-a8ce435a5c-e291ce2b8c.zip/node_modules/clean-stack/", "packageDependencies": [ ["clean-stack", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["cli-boxes", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/cli-boxes-npm-1.0.0-fdd89bc01b-1227f15d82.zip/node_modules/cli-boxes/", "packageDependencies": [ ["cli-boxes", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["cli-columns", [ ["npm:3.1.2", { "packageLocation": "./.yarn/cache/cli-columns-npm-3.1.2-6ae5c75451-94e019176f.zip/node_modules/cli-columns/", "packageDependencies": [ ["cli-columns", "npm:3.1.2"], ["string-width", "npm:2.1.1"], ["strip-ansi", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["cli-table", [ ["npm:0.3.1", { "packageLocation": "./.yarn/cache/cli-table-npm-0.3.1-3a7d522e25-887b0cf31b.zip/node_modules/cli-table/", "packageDependencies": [ ["cli-table", "npm:0.3.1"], ["colors", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["cli-table3", [ ["npm:0.5.1", { "packageLocation": "./.yarn/cache/cli-table3-npm-0.5.1-570cb07b69-6a2eed1fd2.zip/node_modules/cli-table3/", "packageDependencies": [ ["cli-table3", "npm:0.5.1"], ["colors", "npm:1.4.0"], ["object-assign", "npm:4.1.1"], ["string-width", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["cliui", [ ["npm:3.2.0", { "packageLocation": "./.yarn/cache/cliui-npm-3.2.0-b68c4dcdcb-369a15d480.zip/node_modules/cliui/", "packageDependencies": [ ["cliui", "npm:3.2.0"], ["string-width", "npm:1.0.2"], ["strip-ansi", "npm:3.0.1"], ["wrap-ansi", "npm:2.1.0"] ], "linkType": "HARD", }], ["npm:4.1.0", { "packageLocation": "./.yarn/cache/cliui-npm-4.1.0-4dad363d19-401b0719e7.zip/node_modules/cliui/", "packageDependencies": [ ["cliui", "npm:4.1.0"], ["string-width", "npm:2.1.1"], ["strip-ansi", "npm:4.0.0"], ["wrap-ansi", "npm:2.1.0"] ], "linkType": "HARD", }], ["npm:6.0.0", { "packageLocation": "./.yarn/cache/cliui-npm-6.0.0-488b2414c6-e59d064294.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", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/clone-npm-1.0.4-a610fcbcf9-aaaa58f990.zip/node_modules/clone/", "packageDependencies": [ ["clone", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["cmd-shim", [ ["npm:3.0.3", { "packageLocation": "./.yarn/cache/cmd-shim-npm-3.0.3-af43d19764-7c89050249.zip/node_modules/cmd-shim/", "packageDependencies": [ ["cmd-shim", "npm:3.0.3"], ["graceful-fs", "npm:4.2.4"], ["mkdirp", "npm:0.5.5"] ], "linkType": "HARD", }] ]], ["co", [ ["npm:4.6.0", { "packageLocation": "./.yarn/cache/co-npm-4.6.0-03f2d1feb6-3f22dbbe0f.zip/node_modules/co/", "packageDependencies": [ ["co", "npm:4.6.0"] ], "linkType": "HARD", }] ]], ["code-point-at", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/code-point-at-npm-1.1.0-37de5fe566-7d9837296e.zip/node_modules/code-point-at/", "packageDependencies": [ ["code-point-at", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["collect-v8-coverage", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/collect-v8-coverage-npm-1.0.0-5992a7b0f8-b1bb768b37.zip/node_modules/collect-v8-coverage/", "packageDependencies": [ ["collect-v8-coverage", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["collection-visit", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/collection-visit-npm-1.0.0-aba2d5defc-c73cb1316c.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": "./.yarn/cache/color-convert-npm-1.9.3-1fe690075e-5f244daa3d.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": "./.yarn/cache/color-convert-npm-2.0.1-79730e935b-3d5d8a011a.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": "./.yarn/cache/color-name-npm-1.1.3-728b7b5d39-d8b91bb90a.zip/node_modules/color-name/", "packageDependencies": [ ["color-name", "npm:1.1.3"] ], "linkType": "HARD", }], ["npm:1.1.4", { "packageLocation": "./.yarn/cache/color-name-npm-1.1.4-025792b0ea-3e1c9a4dee.zip/node_modules/color-name/", "packageDependencies": [ ["color-name", "npm:1.1.4"] ], "linkType": "HARD", }] ]], ["colors", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/colors-npm-1.0.3-6c5d583ab3-d5b1f35612.zip/node_modules/colors/", "packageDependencies": [ ["colors", "npm:1.0.3"] ], "linkType": "HARD", }], ["npm:1.4.0", { "packageLocation": "./.yarn/cache/colors-npm-1.4.0-7e2cf12234-a0f266ac04.zip/node_modules/colors/", "packageDependencies": [ ["colors", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["columnify", [ ["npm:1.5.4", { "packageLocation": "./.yarn/cache/columnify-npm-1.5.4-e5035327bd-fbba883d43.zip/node_modules/columnify/", "packageDependencies": [ ["columnify", "npm:1.5.4"], ["strip-ansi", "npm:3.0.1"], ["wcwidth", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["combined-stream", [ ["npm:1.0.8", { "packageLocation": "./.yarn/cache/combined-stream-npm-1.0.8-dc14d4a63a-5791ce7944.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": "./.yarn/cache/commander-npm-2.20.3-d8dcbaa39b-b73428e97d.zip/node_modules/commander/", "packageDependencies": [ ["commander", "npm:2.20.3"] ], "linkType": "HARD", }], ["npm:4.1.1", { "packageLocation": "./.yarn/cache/commander-npm-4.1.1-22a0fe921b-448585071b.zip/node_modules/commander/", "packageDependencies": [ ["commander", "npm:4.1.1"] ], "linkType": "HARD", }] ]], ["compare-func", [ ["npm:1.3.2", { "packageLocation": "./.yarn/cache/compare-func-npm-1.3.2-3aa0ea6af2-d92412b3bb.zip/node_modules/compare-func/", "packageDependencies": [ ["compare-func", "npm:1.3.2"], ["array-ify", "npm:1.0.0"], ["dot-prop", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["component-emitter", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/component-emitter-npm-1.3.0-4b848565b9-fc4edbf101.zip/node_modules/component-emitter/", "packageDependencies": [ ["component-emitter", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["concat-map", [ ["npm:0.0.1", { "packageLocation": "./.yarn/cache/concat-map-npm-0.0.1-85a921b7ee-554e28d9ee.zip/node_modules/concat-map/", "packageDependencies": [ ["concat-map", "npm:0.0.1"] ], "linkType": "HARD", }] ]], ["concat-stream", [ ["npm:1.6.2", { "packageLocation": "./.yarn/cache/concat-stream-npm-1.6.2-2bee337060-7a97b7a7d0.zip/node_modules/concat-stream/", "packageDependencies": [ ["concat-stream", "npm:1.6.2"], ["buffer-from", "npm:1.1.1"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:2.3.7"], ["typedarray", "npm:0.0.6"] ], "linkType": "HARD", }] ]], ["config-chain", [ ["npm:1.1.12", { "packageLocation": "./.yarn/cache/config-chain-npm-1.1.12-9791350b34-caf4b96491.zip/node_modules/config-chain/", "packageDependencies": [ ["config-chain", "npm:1.1.12"], ["ini", "npm:1.3.7"], ["proto-list", "npm:1.2.4"] ], "linkType": "HARD", }] ]], ["configstore", [ ["npm:3.1.2", { "packageLocation": "./.yarn/cache/configstore-npm-3.1.2-bd3a1d9154-3b7185bc3d.zip/node_modules/configstore/", "packageDependencies": [ ["configstore", "npm:3.1.2"], ["dot-prop", "npm:4.2.0"], ["graceful-fs", "npm:4.2.4"], ["make-dir", "npm:1.3.0"], ["unique-string", "npm:1.0.0"], ["write-file-atomic", "npm:2.4.3"], ["xdg-basedir", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["console-control-strings", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/console-control-strings-npm-1.1.0-e3160e5275-58a404d951.zip/node_modules/console-control-strings/", "packageDependencies": [ ["console-control-strings", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["contains-path", [ ["npm:0.1.0", { "packageLocation": "./.yarn/cache/contains-path-npm-0.1.0-3b9a1b340e-59920a59a0.zip/node_modules/contains-path/", "packageDependencies": [ ["contains-path", "npm:0.1.0"] ], "linkType": "HARD", }] ]], ["conventional-changelog-angular", [ ["npm:5.0.6", { "packageLocation": "./.yarn/cache/conventional-changelog-angular-npm-5.0.6-ef988a7601-ebcc9806da.zip/node_modules/conventional-changelog-angular/", "packageDependencies": [ ["conventional-changelog-angular", "npm:5.0.6"], ["compare-func", "npm:1.3.2"], ["q", "npm:1.5.1"] ], "linkType": "HARD", }] ]], ["conventional-changelog-writer", [ ["npm:4.0.11", { "packageLocation": "./.yarn/cache/conventional-changelog-writer-npm-4.0.11-016b9bb1ea-c6102a22f8.zip/node_modules/conventional-changelog-writer/", "packageDependencies": [ ["conventional-changelog-writer", "npm:4.0.11"], ["compare-func", "npm:1.3.2"], ["conventional-commits-filter", "npm:2.0.2"], ["dateformat", "npm:3.0.3"], ["handlebars", "npm:4.7.3"], ["json-stringify-safe", "npm:5.0.1"], ["lodash", "npm:4.17.19"], ["meow", "npm:5.0.0"], ["semver", "npm:6.3.0"], ["split", "npm:1.0.1"], ["through2", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["conventional-commits-filter", [ ["npm:2.0.2", { "packageLocation": "./.yarn/cache/conventional-commits-filter-npm-2.0.2-af4c47d762-bea63643b7.zip/node_modules/conventional-commits-filter/", "packageDependencies": [ ["conventional-commits-filter", "npm:2.0.2"], ["lodash.ismatch", "npm:4.4.0"], ["modify-values", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["conventional-commits-parser", [ ["npm:3.0.8", { "packageLocation": "./.yarn/cache/conventional-commits-parser-npm-3.0.8-db4f6acec8-8c8e6b928a.zip/node_modules/conventional-commits-parser/", "packageDependencies": [ ["conventional-commits-parser", "npm:3.0.8"], ["JSONStream", "npm:1.3.5"], ["is-text-path", "npm:1.0.1"], ["lodash", "npm:4.17.19"], ["meow", "npm:5.0.0"], ["split2", "npm:2.2.0"], ["through2", "npm:3.0.1"], ["trim-off-newlines", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["convert-source-map", [ ["npm:1.7.0", { "packageLocation": "./.yarn/cache/convert-source-map-npm-1.7.0-f9727424f7-b10fbf041e.zip/node_modules/convert-source-map/", "packageDependencies": [ ["convert-source-map", "npm:1.7.0"], ["safe-buffer", "npm:5.1.2"] ], "linkType": "HARD", }] ]], ["copy-concurrently", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/copy-concurrently-npm-1.0.5-a20f3c4b55-62ad9de2dc.zip/node_modules/copy-concurrently/", "packageDependencies": [ ["copy-concurrently", "npm:1.0.5"], ["aproba", "npm:1.2.0"], ["fs-write-stream-atomic", "npm:1.0.10"], ["iferr", "npm:0.1.5"], ["mkdirp", "npm:0.5.5"], ["rimraf", "npm:2.7.1"], ["run-queue", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["copy-descriptor", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/copy-descriptor-npm-0.1.1-864db4ab66-c052cf571f.zip/node_modules/copy-descriptor/", "packageDependencies": [ ["copy-descriptor", "npm:0.1.1"] ], "linkType": "HARD", }] ]], ["core-js-compat", [ ["npm:3.6.4", { "packageLocation": "./.yarn/cache/core-js-compat-npm-3.6.4-88a6940c13-a8146d119a.zip/node_modules/core-js-compat/", "packageDependencies": [ ["core-js-compat", "npm:3.6.4"], ["browserslist", "npm:4.12.0"], ["semver", "npm:7.0.0"] ], "linkType": "HARD", }] ]], ["core-util-is", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/core-util-is-npm-1.0.2-9fc2b94dc3-089015ee3c.zip/node_modules/core-util-is/", "packageDependencies": [ ["core-util-is", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["cosmiconfig", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/cosmiconfig-npm-6.0.0-cb7d64a2b9-bbd6bbaefe.zip/node_modules/cosmiconfig/", "packageDependencies": [ ["cosmiconfig", "npm:6.0.0"], ["@types/parse-json", "npm:4.0.0"], ["import-fresh", "npm:3.2.1"], ["parse-json", "npm:5.0.0"], ["path-type", "npm:4.0.0"], ["yaml", "npm:1.7.2"] ], "linkType": "HARD", }] ]], ["create-error-class", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/create-error-class-npm-3.0.2-b6f6443221-cbd6512694.zip/node_modules/create-error-class/", "packageDependencies": [ ["create-error-class", "npm:3.0.2"], ["capture-stack-trace", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["cross-spawn", [ ["npm:5.1.0", { "packageLocation": "./.yarn/cache/cross-spawn-npm-5.1.0-a3e220603e-96018c42a9.zip/node_modules/cross-spawn/", "packageDependencies": [ ["cross-spawn", "npm:5.1.0"], ["lru-cache", "npm:4.1.5"], ["shebang-command", "npm:1.2.0"], ["which", "npm:1.3.1"] ], "linkType": "HARD", }], ["npm:6.0.5", { "packageLocation": "./.yarn/cache/cross-spawn-npm-6.0.5-2deab6c280-05fbbf957d.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.2", { "packageLocation": "./.yarn/cache/cross-spawn-npm-7.0.2-fef0e84eed-31ad173414.zip/node_modules/cross-spawn/", "packageDependencies": [ ["cross-spawn", "npm:7.0.2"], ["path-key", "npm:3.1.1"], ["shebang-command", "npm:2.0.0"], ["which", "npm:2.0.2"] ], "linkType": "HARD", }] ]], ["crypto-random-string", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/crypto-random-string-npm-1.0.0-e708c14263-0876b316cc.zip/node_modules/crypto-random-string/", "packageDependencies": [ ["crypto-random-string", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/crypto-random-string-npm-2.0.0-8ab47992ef-7bc19f6caf.zip/node_modules/crypto-random-string/", "packageDependencies": [ ["crypto-random-string", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["cssom", [ ["npm:0.3.8", { "packageLocation": "./.yarn/cache/cssom-npm-0.3.8-a9291d36ff-b7fb8b13aa.zip/node_modules/cssom/", "packageDependencies": [ ["cssom", "npm:0.3.8"] ], "linkType": "HARD", }], ["npm:0.4.4", { "packageLocation": "./.yarn/cache/cssom-npm-0.4.4-818f01a6e3-db81cac442.zip/node_modules/cssom/", "packageDependencies": [ ["cssom", "npm:0.4.4"] ], "linkType": "HARD", }] ]], ["cssstyle", [ ["npm:2.3.0", { "packageLocation": "./.yarn/cache/cssstyle-npm-2.3.0-b5d112c450-a778180d2f.zip/node_modules/cssstyle/", "packageDependencies": [ ["cssstyle", "npm:2.3.0"], ["cssom", "npm:0.3.8"] ], "linkType": "HARD", }] ]], ["currently-unhandled", [ ["npm:0.4.1", { "packageLocation": "./.yarn/cache/currently-unhandled-npm-0.4.1-38eddab665-1968b4b576.zip/node_modules/currently-unhandled/", "packageDependencies": [ ["currently-unhandled", "npm:0.4.1"], ["array-find-index", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["cyclist", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/cyclist-npm-1.0.1-e4eaffe3c5-74bc0a48c3.zip/node_modules/cyclist/", "packageDependencies": [ ["cyclist", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["dashdash", [ ["npm:1.14.1", { "packageLocation": "./.yarn/cache/dashdash-npm-1.14.1-be8f10a286-5959409ee4.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": "./.yarn/cache/data-urls-npm-2.0.0-2b80c32b82-42239927c6.zip/node_modules/data-urls/", "packageDependencies": [ ["data-urls", "npm:2.0.0"], ["abab", "npm:2.0.3"], ["whatwg-mimetype", "npm:2.3.0"], ["whatwg-url", "npm:8.0.0"] ], "linkType": "HARD", }] ]], ["dateformat", [ ["npm:3.0.3", { "packageLocation": "./.yarn/cache/dateformat-npm-3.0.3-ed02e5ddbd-8e6b36c4d3.zip/node_modules/dateformat/", "packageDependencies": [ ["dateformat", "npm:3.0.3"] ], "linkType": "HARD", }] ]], ["debug", [ ["npm:2.6.9", { "packageLocation": "./.yarn/cache/debug-npm-2.6.9-7d4cb597dc-559f44f98c.zip/node_modules/debug/", "packageDependencies": [ ["debug", "npm:2.6.9"] ], "linkType": "SOFT", }], ["npm:3.1.0", { "packageLocation": "./.yarn/cache/debug-npm-3.1.0-9f0accb99b-1295acd5e0.zip/node_modules/debug/", "packageDependencies": [ ["debug", "npm:3.1.0"] ], "linkType": "SOFT", }], ["npm:3.2.6", { "packageLocation": "./.yarn/cache/debug-npm-3.2.6-6214e40f12-619feb53b1.zip/node_modules/debug/", "packageDependencies": [ ["debug", "npm:3.2.6"] ], "linkType": "SOFT", }], ["npm:4.1.1", { "packageLocation": "./.yarn/cache/debug-npm-4.1.1-540248b3aa-3601a6ce96.zip/node_modules/debug/", "packageDependencies": [ ["debug", "npm:4.1.1"] ], "linkType": "SOFT", }], ["virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1", { "packageLocation": "./.yarn/$$virtual/debug-virtual-76ab55cc28/0/cache/debug-npm-4.1.1-540248b3aa-3601a6ce96.zip/node_modules/debug/", "packageDependencies": [ ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["ms", "npm:2.1.2"], ["supports-color", null] ], "packagePeers": [ "supports-color" ], "linkType": "HARD", }], ["virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0", { "packageLocation": "./.yarn/$$virtual/debug-virtual-77b911398e/0/cache/debug-npm-3.1.0-9f0accb99b-1295acd5e0.zip/node_modules/debug/", "packageDependencies": [ ["debug", "virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0"], ["ms", "npm:2.0.0"], ["supports-color", null] ], "packagePeers": [ "supports-color" ], "linkType": "HARD", }], ["virtual:8bb97bed484f021974a05538f31c077871d2363ce26ebed59b11577446762350604c9011c0660ae55b141dd86d888615a377ccccd7a87c5e54ae38233a22d5a9#npm:3.2.6", { "packageLocation": "./.yarn/$$virtual/debug-virtual-b857c1e678/0/cache/debug-npm-3.2.6-6214e40f12-619feb53b1.zip/node_modules/debug/", "packageDependencies": [ ["debug", "virtual:8bb97bed484f021974a05538f31c077871d2363ce26ebed59b11577446762350604c9011c0660ae55b141dd86d888615a377ccccd7a87c5e54ae38233a22d5a9#npm:3.2.6"], ["ms", "npm:2.1.2"], ["supports-color", null] ], "packagePeers": [ "supports-color" ], "linkType": "HARD", }], ["virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#npm:2.6.9", { "packageLocation": "./.yarn/$$virtual/debug-virtual-d08cd93353/0/cache/debug-npm-2.6.9-7d4cb597dc-559f44f98c.zip/node_modules/debug/", "packageDependencies": [ ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#npm:2.6.9"], ["ms", "npm:2.0.0"], ["supports-color", null] ], "packagePeers": [ "supports-color" ], "linkType": "HARD", }] ]], ["debuglog", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/debuglog-npm-1.0.1-c553c84ea5-570fab098e.zip/node_modules/debuglog/", "packageDependencies": [ ["debuglog", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["decamelize", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/decamelize-npm-1.2.0-c5a2fdc622-8ca9d03ea8.zip/node_modules/decamelize/", "packageDependencies": [ ["decamelize", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["decamelize-keys", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/decamelize-keys-npm-1.1.0-75168ffadd-dbfe6d5948.zip/node_modules/decamelize-keys/", "packageDependencies": [ ["decamelize-keys", "npm:1.1.0"], ["decamelize", "npm:1.2.0"], ["map-obj", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["decimal.js", [ ["npm:10.2.0", { "packageLocation": "./.yarn/cache/decimal.js-npm-10.2.0-9960ab19c0-f60df1cce5.zip/node_modules/decimal.js/", "packageDependencies": [ ["decimal.js", "npm:10.2.0"] ], "linkType": "HARD", }] ]], ["decode-uri-component", [ ["npm:0.2.0", { "packageLocation": "./.yarn/cache/decode-uri-component-npm-0.2.0-5bcc0f3597-d8cb28c33f.zip/node_modules/decode-uri-component/", "packageDependencies": [ ["decode-uri-component", "npm:0.2.0"] ], "linkType": "HARD", }] ]], ["deep-extend", [ ["npm:0.6.0", { "packageLocation": "./.yarn/cache/deep-extend-npm-0.6.0-e182924219-856d7f52db.zip/node_modules/deep-extend/", "packageDependencies": [ ["deep-extend", "npm:0.6.0"] ], "linkType": "HARD", }] ]], ["deep-is", [ ["npm:0.1.3", { "packageLocation": "./.yarn/cache/deep-is-npm-0.1.3-0941784645-3de58f86af.zip/node_modules/deep-is/", "packageDependencies": [ ["deep-is", "npm:0.1.3"] ], "linkType": "HARD", }] ]], ["deepmerge", [ ["npm:4.2.2", { "packageLocation": "./.yarn/cache/deepmerge-npm-4.2.2-112165ced2-85abf8e004.zip/node_modules/deepmerge/", "packageDependencies": [ ["deepmerge", "npm:4.2.2"] ], "linkType": "HARD", }] ]], ["defaults", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/defaults-npm-1.0.3-e829107b9e-974f63dd0a.zip/node_modules/defaults/", "packageDependencies": [ ["defaults", "npm:1.0.3"], ["clone", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["define-properties", [ ["npm:1.1.3", { "packageLocation": "./.yarn/cache/define-properties-npm-1.1.3-0f3115e2b9-b69c48c1b1.zip/node_modules/define-properties/", "packageDependencies": [ ["define-properties", "npm:1.1.3"], ["object-keys", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["define-property", [ ["npm:0.2.5", { "packageLocation": "./.yarn/cache/define-property-npm-0.2.5-44a0da3575-6fed054072.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": "./.yarn/cache/define-property-npm-1.0.0-e2fb9f44c6-9034f8f6f3.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": "./.yarn/cache/define-property-npm-2.0.2-4a2067c3ba-00c7ec53b5.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": "./.yarn/cache/delayed-stream-npm-1.0.0-c5a4c4cc02-d9dfb0a7c7.zip/node_modules/delayed-stream/", "packageDependencies": [ ["delayed-stream", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["delegates", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/delegates-npm-1.0.0-9b1942d75f-7459e34d29.zip/node_modules/delegates/", "packageDependencies": [ ["delegates", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["deprecation", [ ["npm:2.3.1", { "packageLocation": "./.yarn/cache/deprecation-npm-2.3.1-e19c92d6e7-59343a0b92.zip/node_modules/deprecation/", "packageDependencies": [ ["deprecation", "npm:2.3.1"] ], "linkType": "HARD", }] ]], ["detect-indent", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/detect-indent-npm-5.0.0-123fa3fd0b-1b6a22f23b.zip/node_modules/detect-indent/", "packageDependencies": [ ["detect-indent", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["detect-newline", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/detect-newline-npm-2.1.0-31d9d239e0-634e4a2540.zip/node_modules/detect-newline/", "packageDependencies": [ ["detect-newline", "npm:2.1.0"] ], "linkType": "HARD", }], ["npm:3.1.0", { "packageLocation": "./.yarn/cache/detect-newline-npm-3.1.0-6d33fa8d37-6d3f67971d.zip/node_modules/detect-newline/", "packageDependencies": [ ["detect-newline", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["dezalgo", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/dezalgo-npm-1.0.3-e2bc978ebd-05bfff5425.zip/node_modules/dezalgo/", "packageDependencies": [ ["dezalgo", "npm:1.0.3"], ["asap", "npm:2.0.6"], ["wrappy", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["diff-sequences", [ ["npm:26.0.0", { "packageLocation": "./.yarn/cache/diff-sequences-npm-26.0.0-4b8f552043-0b5fdd1803.zip/node_modules/diff-sequences/", "packageDependencies": [ ["diff-sequences", "npm:26.0.0"] ], "linkType": "HARD", }], ["npm:26.6.2", { "packageLocation": "./.yarn/cache/diff-sequences-npm-26.6.2-fbf1967570-dd1eb6e52f.zip/node_modules/diff-sequences/", "packageDependencies": [ ["diff-sequences", "npm:26.6.2"] ], "linkType": "HARD", }] ]], ["dir-glob", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/dir-glob-npm-3.0.1-1aea628b1b-687fa3bd60.zip/node_modules/dir-glob/", "packageDependencies": [ ["dir-glob", "npm:3.0.1"], ["path-type", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["doctrine", [ ["npm:1.5.0", { "packageLocation": "./.yarn/cache/doctrine-npm-1.5.0-7395afc15e-aaffea02f9.zip/node_modules/doctrine/", "packageDependencies": [ ["doctrine", "npm:1.5.0"], ["esutils", "npm:2.0.3"], ["isarray", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/doctrine-npm-3.0.0-c6f1615f04-2eae469bd2.zip/node_modules/doctrine/", "packageDependencies": [ ["doctrine", "npm:3.0.0"], ["esutils", "npm:2.0.3"] ], "linkType": "HARD", }] ]], ["domexception", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/domexception-npm-2.0.1-81b20626ae-bde9f50cb5.zip/node_modules/domexception/", "packageDependencies": [ ["domexception", "npm:2.0.1"], ["webidl-conversions", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["dot-prop", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/dot-prop-npm-3.0.0-f184efdeeb-4f10126783.zip/node_modules/dot-prop/", "packageDependencies": [ ["dot-prop", "npm:3.0.0"], ["is-obj", "npm:1.0.1"] ], "linkType": "HARD", }], ["npm:4.2.0", { "packageLocation": "./.yarn/cache/dot-prop-npm-4.2.0-f61418cdac-6dadca2215.zip/node_modules/dot-prop/", "packageDependencies": [ ["dot-prop", "npm:4.2.0"], ["is-obj", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["dotenv", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/dotenv-npm-5.0.1-9cab850c63-6e5990d203.zip/node_modules/dotenv/", "packageDependencies": [ ["dotenv", "npm:5.0.1"] ], "linkType": "HARD", }] ]], ["duplexer2", [ ["npm:0.1.4", { "packageLocation": "./.yarn/cache/duplexer2-npm-0.1.4-6bca6bef12-8edf412d8a.zip/node_modules/duplexer2/", "packageDependencies": [ ["duplexer2", "npm:0.1.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["duplexer3", [ ["npm:0.1.4", { "packageLocation": "./.yarn/cache/duplexer3-npm-0.1.4-361a33d994-2a4ae463aa.zip/node_modules/duplexer3/", "packageDependencies": [ ["duplexer3", "npm:0.1.4"] ], "linkType": "HARD", }] ]], ["duplexify", [ ["npm:3.7.1", { "packageLocation": "./.yarn/cache/duplexify-npm-3.7.1-8f4f1e821f-9581cdb8f6.zip/node_modules/duplexify/", "packageDependencies": [ ["duplexify", "npm:3.7.1"], ["end-of-stream", "npm:1.4.4"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:2.3.7"], ["stream-shift", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["ecc-jsbn", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/ecc-jsbn-npm-0.1.2-85b7a7be89-5b4dd05f24.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", }] ]], ["editor", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/editor-npm-1.0.0-ef3bc973f4-6e2aa202a1.zip/node_modules/editor/", "packageDependencies": [ ["editor", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["electron-to-chromium", [ ["npm:1.3.426", { "packageLocation": "./.yarn/cache/electron-to-chromium-npm-1.3.426-98a4165785-9f4ea0e879.zip/node_modules/electron-to-chromium/", "packageDependencies": [ ["electron-to-chromium", "npm:1.3.426"] ], "linkType": "HARD", }] ]], ["emittery", [ ["npm:0.7.1", { "packageLocation": "./.yarn/cache/emittery-npm-0.7.1-2e5216986e-917b099512.zip/node_modules/emittery/", "packageDependencies": [ ["emittery", "npm:0.7.1"] ], "linkType": "HARD", }] ]], ["emoji-regex", [ ["npm:7.0.3", { "packageLocation": "./.yarn/cache/emoji-regex-npm-7.0.3-cfe9479bb3-e3a504cf52.zip/node_modules/emoji-regex/", "packageDependencies": [ ["emoji-regex", "npm:7.0.3"] ], "linkType": "HARD", }], ["npm:8.0.0", { "packageLocation": "./.yarn/cache/emoji-regex-npm-8.0.0-213764015c-87cf3f89ef.zip/node_modules/emoji-regex/", "packageDependencies": [ ["emoji-regex", "npm:8.0.0"] ], "linkType": "HARD", }] ]], ["encoding", [ ["npm:0.1.13", { "packageLocation": "./.yarn/cache/encoding-npm-0.1.13-82a1837d30-282d5696a4.zip/node_modules/encoding/", "packageDependencies": [ ["encoding", "npm:0.1.13"], ["iconv-lite", "npm:0.6.2"] ], "linkType": "HARD", }] ]], ["end-of-stream", [ ["npm:1.4.4", { "packageLocation": "./.yarn/cache/end-of-stream-npm-1.4.4-497fc6dee1-7da60e458b.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": "./.yarn/cache/enquirer-npm-2.3.6-7899175762-e249bb97bf.zip/node_modules/enquirer/", "packageDependencies": [ ["enquirer", "npm:2.3.6"], ["ansi-colors", "npm:4.1.1"] ], "linkType": "HARD", }] ]], ["env-ci", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/env-ci-npm-5.0.1-84c35dbd56-f6986aa75a.zip/node_modules/env-ci/", "packageDependencies": [ ["env-ci", "npm:5.0.1"], ["execa", "npm:4.0.0"], ["java-properties", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["env-paths", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/env-paths-npm-2.2.0-ac4ed99068-09de4fd1c0.zip/node_modules/env-paths/", "packageDependencies": [ ["env-paths", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["err-code", [ ["npm:1.1.2", { "packageLocation": "./.yarn/cache/err-code-npm-1.1.2-76c4ec5eff-9e6bcdc90d.zip/node_modules/err-code/", "packageDependencies": [ ["err-code", "npm:1.1.2"] ], "linkType": "HARD", }] ]], ["errno", [ ["npm:0.1.7", { "packageLocation": "./.yarn/cache/errno-npm-0.1.7-b0a31dcb3a-3d2da6fa1e.zip/node_modules/errno/", "packageDependencies": [ ["errno", "npm:0.1.7"], ["prr", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["error-ex", [ ["npm:1.3.2", { "packageLocation": "./.yarn/cache/error-ex-npm-1.3.2-5654f80c0f-6c6c918742.zip/node_modules/error-ex/", "packageDependencies": [ ["error-ex", "npm:1.3.2"], ["is-arrayish", "npm:0.2.1"] ], "linkType": "HARD", }] ]], ["es-abstract", [ ["npm:1.17.6", { "packageLocation": "./.yarn/cache/es-abstract-npm-1.17.6-265c04b6de-637ad488bd.zip/node_modules/es-abstract/", "packageDependencies": [ ["es-abstract", "npm:1.17.6"], ["es-to-primitive", "npm:1.2.1"], ["function-bind", "npm:1.1.1"], ["has", "npm:1.0.3"], ["has-symbols", "npm:1.0.1"], ["is-callable", "npm:1.2.0"], ["is-regex", "npm:1.1.0"], ["object-inspect", "npm:1.8.0"], ["object-keys", "npm:1.1.1"], ["object.assign", "npm:4.1.0"], ["string.prototype.trimend", "npm:1.0.1"], ["string.prototype.trimstart", "npm:1.0.1"] ], "linkType": "HARD", }], ["npm:1.18.0-next.2", { "packageLocation": "./.yarn/cache/es-abstract-npm-1.18.0-next.2-c03e363ed5-bcfcb7a19a.zip/node_modules/es-abstract/", "packageDependencies": [ ["es-abstract", "npm:1.18.0-next.2"], ["call-bind", "npm:1.0.2"], ["es-to-primitive", "npm:1.2.1"], ["function-bind", "npm:1.1.1"], ["get-intrinsic", "npm:1.1.1"], ["has", "npm:1.0.3"], ["has-symbols", "npm:1.0.1"], ["is-callable", "npm:1.2.3"], ["is-negative-zero", "npm:2.0.1"], ["is-regex", "npm:1.1.2"], ["object-inspect", "npm:1.9.0"], ["object-keys", "npm:1.1.1"], ["object.assign", "npm:4.1.2"], ["string.prototype.trimend", "npm:1.0.3"], ["string.prototype.trimstart", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["es-to-primitive", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/es-to-primitive-npm-1.2.1-b7a7eac6c5-d20b7be268.zip/node_modules/es-to-primitive/", "packageDependencies": [ ["es-to-primitive", "npm:1.2.1"], ["is-callable", "npm:1.2.0"], ["is-date-object", "npm:1.0.2"], ["is-symbol", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["es6-promise", [ ["npm:4.2.8", { "packageLocation": "./.yarn/cache/es6-promise-npm-4.2.8-c9f5b11f66-b85e5faab1.zip/node_modules/es6-promise/", "packageDependencies": [ ["es6-promise", "npm:4.2.8"] ], "linkType": "HARD", }] ]], ["es6-promisify", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/es6-promisify-npm-5.0.0-3726550934-657d2f0623.zip/node_modules/es6-promisify/", "packageDependencies": [ ["es6-promisify", "npm:5.0.0"], ["es6-promise", "npm:4.2.8"] ], "linkType": "HARD", }] ]], ["escape-string-regexp", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/escape-string-regexp-npm-1.0.5-3284de402f-f9484b8b4c.zip/node_modules/escape-string-regexp/", "packageDependencies": [ ["escape-string-regexp", "npm:1.0.5"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/escape-string-regexp-npm-2.0.0-aef69d2a25-f3500f264e.zip/node_modules/escape-string-regexp/", "packageDependencies": [ ["escape-string-regexp", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["escodegen", [ ["npm:1.14.1", { "packageLocation": "./.yarn/cache/escodegen-npm-1.14.1-046fc6e91f-97e0500474.zip/node_modules/escodegen/", "packageDependencies": [ ["escodegen", "npm:1.14.1"], ["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.6.0", { "packageLocation": "./.yarn/cache/eslint-npm-7.6.0-5cb6d399f2-1b73da2423.zip/node_modules/eslint/", "packageDependencies": [ ["eslint", "npm:7.6.0"], ["@babel/code-frame", "npm:7.10.4"], ["ajv", "npm:6.12.3"], ["chalk", "npm:4.0.0"], ["cross-spawn", "npm:7.0.2"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["doctrine", "npm:3.0.0"], ["enquirer", "npm:2.3.6"], ["eslint-scope", "npm:5.1.0"], ["eslint-utils", "npm:2.1.0"], ["eslint-visitor-keys", "npm:1.3.0"], ["espree", "npm:7.2.0"], ["esquery", "npm:1.3.1"], ["esutils", "npm:2.0.3"], ["file-entry-cache", "npm:5.0.1"], ["functional-red-black-tree", "npm:1.0.1"], ["glob-parent", "npm:5.1.0"], ["globals", "npm:12.3.0"], ["ignore", "npm:4.0.6"], ["import-fresh", "npm:3.2.1"], ["imurmurhash", "npm:0.1.4"], ["is-glob", "npm:4.0.1"], ["js-yaml", "npm:3.13.1"], ["json-stable-stringify-without-jsonify", "npm:1.0.1"], ["levn", "npm:0.4.1"], ["lodash", "npm:4.17.19"], ["minimatch", "npm:3.0.4"], ["natural-compare", "npm:1.4.0"], ["optionator", "npm:0.9.1"], ["progress", "npm:2.0.3"], ["regexpp", "npm:3.1.0"], ["semver", "npm:7.3.2"], ["strip-ansi", "npm:6.0.0"], ["strip-json-comments", "npm:3.1.0"], ["table", "npm:5.4.6"], ["text-table", "npm:0.2.0"], ["v8-compile-cache", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["eslint-config-prettier", [ ["npm:6.11.0", { "packageLocation": "./.yarn/cache/eslint-config-prettier-npm-6.11.0-cf0b83022d-59efd906c7.zip/node_modules/eslint-config-prettier/", "packageDependencies": [ ["eslint-config-prettier", "npm:6.11.0"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:6.11.0", { "packageLocation": "./.yarn/$$virtual/eslint-config-prettier-virtual-c57377a962/0/cache/eslint-config-prettier-npm-6.11.0-cf0b83022d-59efd906c7.zip/node_modules/eslint-config-prettier/", "packageDependencies": [ ["eslint-config-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:6.11.0"], ["@types/eslint", null], ["eslint", "npm:7.6.0"], ["get-stdin", "npm:6.0.0"] ], "packagePeers": [ "@types/eslint", "eslint" ], "linkType": "HARD", }] ]], ["eslint-import-resolver-node", [ ["npm:0.3.4", { "packageLocation": "./.yarn/cache/eslint-import-resolver-node-npm-0.3.4-fa0173d267-825e34e662.zip/node_modules/eslint-import-resolver-node/", "packageDependencies": [ ["eslint-import-resolver-node", "npm:0.3.4"], ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#npm:2.6.9"], ["resolve", "patch:resolve@npm%3A1.20.0#builtin::version=1.20.0&hash=3388aa"] ], "linkType": "HARD", }] ]], ["eslint-module-utils", [ ["npm:2.6.0", { "packageLocation": "./.yarn/cache/eslint-module-utils-npm-2.6.0-5126b2ea8a-f584af1764.zip/node_modules/eslint-module-utils/", "packageDependencies": [ ["eslint-module-utils", "npm:2.6.0"], ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#npm:2.6.9"], ["pkg-dir", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["eslint-plugin-import", [ ["npm:2.22.1", { "packageLocation": "./.yarn/cache/eslint-plugin-import-npm-2.22.1-93ff619870-35ae09ceae.zip/node_modules/eslint-plugin-import/", "packageDependencies": [ ["eslint-plugin-import", "npm:2.22.1"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:2.22.1", { "packageLocation": "./.yarn/$$virtual/eslint-plugin-import-virtual-062ce5a042/0/cache/eslint-plugin-import-npm-2.22.1-93ff619870-35ae09ceae.zip/node_modules/eslint-plugin-import/", "packageDependencies": [ ["eslint-plugin-import", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:2.22.1"], ["@types/eslint", null], ["array-includes", "npm:3.1.2"], ["array.prototype.flat", "npm:1.2.4"], ["contains-path", "npm:0.1.0"], ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#npm:2.6.9"], ["doctrine", "npm:1.5.0"], ["eslint", "npm:7.6.0"], ["eslint-import-resolver-node", "npm:0.3.4"], ["eslint-module-utils", "npm:2.6.0"], ["has", "npm:1.0.3"], ["minimatch", "npm:3.0.4"], ["object.values", "npm:1.1.2"], ["read-pkg-up", "npm:2.0.0"], ["resolve", "patch:resolve@npm%3A1.17.0#builtin::version=1.17.0&hash=3388aa"], ["tsconfig-paths", "npm:3.9.0"] ], "packagePeers": [ "@types/eslint", "eslint" ], "linkType": "HARD", }] ]], ["eslint-plugin-jest", [ ["npm:23.20.0", { "packageLocation": "./.yarn/cache/eslint-plugin-jest-npm-23.20.0-0fd386bae5-2f3b875346.zip/node_modules/eslint-plugin-jest/", "packageDependencies": [ ["eslint-plugin-jest", "npm:23.20.0"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:23.20.0", { "packageLocation": "./.yarn/$$virtual/eslint-plugin-jest-virtual-daf9735715/0/cache/eslint-plugin-jest-npm-23.20.0-0fd386bae5-2f3b875346.zip/node_modules/eslint-plugin-jest/", "packageDependencies": [ ["eslint-plugin-jest", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:23.20.0"], ["@types/eslint", null], ["@typescript-eslint/experimental-utils", "virtual:daf9735715d874eeca74378564abf3b75c35eb577ab112bf0b353d1c71764e582d5ff6ec92094b18d241db4f54d07f54771e252e74cd69490cccc761ed300d46#npm:2.21.0"], ["eslint", "npm:7.6.0"] ], "packagePeers": [ "@types/eslint", "eslint" ], "linkType": "HARD", }] ]], ["eslint-plugin-prettier", [ ["npm:3.1.4", { "packageLocation": "./.yarn/cache/eslint-plugin-prettier-npm-3.1.4-eba11cd45a-4e4df15579.zip/node_modules/eslint-plugin-prettier/", "packageDependencies": [ ["eslint-plugin-prettier", "npm:3.1.4"] ], "linkType": "SOFT", }], ["virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:3.1.4", { "packageLocation": "./.yarn/$$virtual/eslint-plugin-prettier-virtual-cf557342bf/0/cache/eslint-plugin-prettier-npm-3.1.4-eba11cd45a-4e4df15579.zip/node_modules/eslint-plugin-prettier/", "packageDependencies": [ ["eslint-plugin-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:3.1.4"], ["@types/eslint", null], ["@types/prettier", null], ["eslint", "npm:7.6.0"], ["prettier", "npm:2.0.5"], ["prettier-linter-helpers", "npm:1.0.0"] ], "packagePeers": [ "@types/eslint", "@types/prettier", "eslint", "prettier" ], "linkType": "HARD", }] ]], ["eslint-scope", [ ["npm:5.1.0", { "packageLocation": "./.yarn/cache/eslint-scope-npm-5.1.0-2f7f4b93bb-4a0e97979a.zip/node_modules/eslint-scope/", "packageDependencies": [ ["eslint-scope", "npm:5.1.0"], ["esrecurse", "npm:4.2.1"], ["estraverse", "npm:4.3.0"] ], "linkType": "HARD", }] ]], ["eslint-utils", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/eslint-utils-npm-2.1.0-a3a7ebf4fa-a43892372a.zip/node_modules/eslint-utils/", "packageDependencies": [ ["eslint-utils", "npm:2.1.0"], ["eslint-visitor-keys", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["eslint-visitor-keys", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-1.3.0-c07780a0fb-58ab7a0107.zip/node_modules/eslint-visitor-keys/", "packageDependencies": [ ["eslint-visitor-keys", "npm:1.3.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-2.0.0-5c9523822c-429dabdcab.zip/node_modules/eslint-visitor-keys/", "packageDependencies": [ ["eslint-visitor-keys", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["espree", [ ["npm:7.2.0", { "packageLocation": "./.yarn/cache/espree-npm-7.2.0-3949be975e-51bdb836f4.zip/node_modules/espree/", "packageDependencies": [ ["espree", "npm:7.2.0"], ["acorn", "npm:7.3.1"], ["acorn-jsx", "virtual:3949be975e41e78f8fbf3cb27e0aea224a077a8cf411b3631e8e82cd95a9b956368cc09eefe48169f481b5be207016292a71650a7478bb088f72c278446a9d3a#npm:5.2.0"], ["eslint-visitor-keys", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["esprima", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/esprima-npm-4.0.1-1084e98778-5df45a3d9c.zip/node_modules/esprima/", "packageDependencies": [ ["esprima", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["esquery", [ ["npm:1.3.1", { "packageLocation": "./.yarn/cache/esquery-npm-1.3.1-2ba3c93f30-0aac7572bc.zip/node_modules/esquery/", "packageDependencies": [ ["esquery", "npm:1.3.1"], ["estraverse", "npm:5.1.0"] ], "linkType": "HARD", }] ]], ["esrecurse", [ ["npm:4.2.1", { "packageLocation": "./.yarn/cache/esrecurse-npm-4.2.1-9ebee4c3b1-9acfa28772.zip/node_modules/esrecurse/", "packageDependencies": [ ["esrecurse", "npm:4.2.1"], ["estraverse", "npm:4.3.0"] ], "linkType": "HARD", }] ]], ["estraverse", [ ["npm:4.3.0", { "packageLocation": "./.yarn/cache/estraverse-npm-4.3.0-920a32f3c6-1e4c627da9.zip/node_modules/estraverse/", "packageDependencies": [ ["estraverse", "npm:4.3.0"] ], "linkType": "HARD", }], ["npm:5.1.0", { "packageLocation": "./.yarn/cache/estraverse-npm-5.1.0-ab0ea20456-1b8a47cf7c.zip/node_modules/estraverse/", "packageDependencies": [ ["estraverse", "npm:5.1.0"] ], "linkType": "HARD", }] ]], ["esutils", [ ["npm:2.0.3", { "packageLocation": "./.yarn/cache/esutils-npm-2.0.3-f865beafd5-590b045331.zip/node_modules/esutils/", "packageDependencies": [ ["esutils", "npm:2.0.3"] ], "linkType": "HARD", }] ]], ["exec-sh", [ ["npm:0.3.4", { "packageLocation": "./.yarn/cache/exec-sh-npm-0.3.4-424de349f3-cfdd8cbfde.zip/node_modules/exec-sh/", "packageDependencies": [ ["exec-sh", "npm:0.3.4"] ], "linkType": "HARD", }] ]], ["execa", [ ["npm:0.7.0", { "packageLocation": "./.yarn/cache/execa-npm-0.7.0-3f4e53d884-7210f5334e.zip/node_modules/execa/", "packageDependencies": [ ["execa", "npm:0.7.0"], ["cross-spawn", "npm:5.1.0"], ["get-stream", "npm:3.0.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:1.0.0", { "packageLocation": "./.yarn/cache/execa-npm-1.0.0-7028e37029-39714ea24e.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.0.0", { "packageLocation": "./.yarn/cache/execa-npm-4.0.0-fa9a81eac2-0abdf9aa79.zip/node_modules/execa/", "packageDependencies": [ ["execa", "npm:4.0.0"], ["cross-spawn", "npm:7.0.2"], ["get-stream", "npm:5.1.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.0"], ["signal-exit", "npm:3.0.3"], ["strip-final-newline", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["exit", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/exit-npm-0.1.2-ef3761a67d-64022f65df.zip/node_modules/exit/", "packageDependencies": [ ["exit", "npm:0.1.2"] ], "linkType": "HARD", }] ]], ["expand-brackets", [ ["npm:2.1.4", { "packageLocation": "./.yarn/cache/expand-brackets-npm-2.1.4-392c703c48-9aadab00ff.zip/node_modules/expand-brackets/", "packageDependencies": [ ["expand-brackets", "npm:2.1.4"], ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#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.2.0", { "packageLocation": "./.yarn/cache/expect-npm-26.2.0-740eae5a79-fc0f842ee0.zip/node_modules/expect/", "packageDependencies": [ ["expect", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["ansi-styles", "npm:4.2.1"], ["jest-get-type", "npm:26.0.0"], ["jest-matcher-utils", "npm:26.2.0"], ["jest-message-util", "npm:26.2.0"], ["jest-regex-util", "npm:26.0.0"] ], "linkType": "HARD", }] ]], ["extend", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/extend-npm-3.0.2-e1ca07ac54-1406da1f0c.zip/node_modules/extend/", "packageDependencies": [ ["extend", "npm:3.0.2"] ], "linkType": "HARD", }] ]], ["extend-shallow", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/extend-shallow-npm-2.0.1-e6ef52b29c-03dbbba8b9.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": "./.yarn/cache/extend-shallow-npm-3.0.2-77bbe1bbf5-5301c5070b.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": "./.yarn/cache/extglob-npm-2.0.4-0f39bc9899-ce23be772f.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": "./.yarn/cache/extsprintf-npm-1.3.0-61a92b324c-892efd56aa.zip/node_modules/extsprintf/", "packageDependencies": [ ["extsprintf", "npm:1.3.0"] ], "linkType": "HARD", }], ["npm:1.4.0", { "packageLocation": "./.yarn/cache/extsprintf-npm-1.4.0-2b015bcaab-092e011574.zip/node_modules/extsprintf/", "packageDependencies": [ ["extsprintf", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["fast-deep-equal", [ ["npm:3.1.3", { "packageLocation": "./.yarn/cache/fast-deep-equal-npm-3.1.3-790edcfcf5-451526766b.zip/node_modules/fast-deep-equal/", "packageDependencies": [ ["fast-deep-equal", "npm:3.1.3"] ], "linkType": "HARD", }] ]], ["fast-diff", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/fast-diff-npm-1.2.0-5ba4171bb6-9c5407d9c4.zip/node_modules/fast-diff/", "packageDependencies": [ ["fast-diff", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["fast-glob", [ ["npm:3.2.2", { "packageLocation": "./.yarn/cache/fast-glob-npm-3.2.2-5f42de738e-be3e486275.zip/node_modules/fast-glob/", "packageDependencies": [ ["fast-glob", "npm:3.2.2"], ["@nodelib/fs.stat", "npm:2.0.3"], ["@nodelib/fs.walk", "npm:1.2.4"], ["glob-parent", "npm:5.1.0"], ["merge2", "npm:1.3.0"], ["micromatch", "npm:4.0.2"], ["picomatch", "npm:2.2.1"] ], "linkType": "HARD", }] ]], ["fast-json-stable-stringify", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/fast-json-stable-stringify-npm-2.1.0-02e8905fda-7df3fabfe4.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": "./.yarn/cache/fast-levenshtein-npm-2.0.6-fcd74b8df5-a2d03af308.zip/node_modules/fast-levenshtein/", "packageDependencies": [ ["fast-levenshtein", "npm:2.0.6"] ], "linkType": "HARD", }] ]], ["fastq", [ ["npm:1.6.1", { "packageLocation": "./.yarn/cache/fastq-npm-1.6.1-f5a708fd54-cd409a4df6.zip/node_modules/fastq/", "packageDependencies": [ ["fastq", "npm:1.6.1"], ["reusify", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["fb-watchman", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/fb-watchman-npm-2.0.1-30005d50fe-f9ec24592a.zip/node_modules/fb-watchman/", "packageDependencies": [ ["fb-watchman", "npm:2.0.1"], ["bser", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["figgy-pudding", [ ["npm:3.5.2", { "packageLocation": "./.yarn/cache/figgy-pudding-npm-3.5.2-2f4e3e1305-737645f602.zip/node_modules/figgy-pudding/", "packageDependencies": [ ["figgy-pudding", "npm:3.5.2"] ], "linkType": "HARD", }] ]], ["figures", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/figures-npm-2.0.0-f2db814eec-de11459037.zip/node_modules/figures/", "packageDependencies": [ ["figures", "npm:2.0.0"], ["escape-string-regexp", "npm:1.0.5"] ], "linkType": "HARD", }], ["npm:3.2.0", { "packageLocation": "./.yarn/cache/figures-npm-3.2.0-85d357e955-6c8acb1c17.zip/node_modules/figures/", "packageDependencies": [ ["figures", "npm:3.2.0"], ["escape-string-regexp", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["file-entry-cache", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/file-entry-cache-npm-5.0.1-7212af17f3-7140588bec.zip/node_modules/file-entry-cache/", "packageDependencies": [ ["file-entry-cache", "npm:5.0.1"], ["flat-cache", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["fill-range", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/fill-range-npm-4.0.0-95a6e45784-4a1491ee29.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": "./.yarn/cache/fill-range-npm-7.0.1-b8b1817caa-efca43d59b.zip/node_modules/fill-range/", "packageDependencies": [ ["fill-range", "npm:7.0.1"], ["to-regex-range", "npm:5.0.1"] ], "linkType": "HARD", }] ]], ["find-npm-prefix", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/find-npm-prefix-npm-1.0.2-87eb69f4ac-2f8f25460b.zip/node_modules/find-npm-prefix/", "packageDependencies": [ ["find-npm-prefix", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["find-up", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/find-up-npm-2.1.0-9f6cb1765c-9dedb89f93.zip/node_modules/find-up/", "packageDependencies": [ ["find-up", "npm:2.1.0"], ["locate-path", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/find-up-npm-3.0.0-a2d4b1b317-c5422fc723.zip/node_modules/find-up/", "packageDependencies": [ ["find-up", "npm:3.0.0"], ["locate-path", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.1.0", { "packageLocation": "./.yarn/cache/find-up-npm-4.1.0-c3ccf8d855-d612d28e02.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", }] ]], ["find-versions", [ ["npm:3.2.0", { "packageLocation": "./.yarn/cache/find-versions-npm-3.2.0-2a87d094e9-2ddc16b426.zip/node_modules/find-versions/", "packageDependencies": [ ["find-versions", "npm:3.2.0"], ["semver-regex", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["flat-cache", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/flat-cache-npm-2.0.1-abf037b0b9-a36ba40755.zip/node_modules/flat-cache/", "packageDependencies": [ ["flat-cache", "npm:2.0.1"], ["flatted", "npm:2.0.1"], ["rimraf", "npm:2.6.3"], ["write", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["flatted", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/flatted-npm-2.0.1-a100b7c783-dd5140cc40.zip/node_modules/flatted/", "packageDependencies": [ ["flatted", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["flush-write-stream", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/flush-write-stream-npm-1.1.1-54f7360c04-b8fa1fbfad.zip/node_modules/flush-write-stream/", "packageDependencies": [ ["flush-write-stream", "npm:1.1.1"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["for-in", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/for-in-npm-1.0.2-37e3d7aae5-e8d7280a65.zip/node_modules/for-in/", "packageDependencies": [ ["for-in", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["forever-agent", [ ["npm:0.6.1", { "packageLocation": "./.yarn/cache/forever-agent-npm-0.6.1-01dae53bf9-9cc0054dd4.zip/node_modules/forever-agent/", "packageDependencies": [ ["forever-agent", "npm:0.6.1"] ], "linkType": "HARD", }] ]], ["form-data", [ ["npm:2.3.3", { "packageLocation": "./.yarn/cache/form-data-npm-2.3.3-c016cc11c0-862e686b10.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.27"] ], "linkType": "HARD", }] ]], ["fragment-cache", [ ["npm:0.2.1", { "packageLocation": "./.yarn/cache/fragment-cache-npm-0.2.1-407fe74319-f88983f4bf.zip/node_modules/fragment-cache/", "packageDependencies": [ ["fragment-cache", "npm:0.2.1"], ["map-cache", "npm:0.2.2"] ], "linkType": "HARD", }] ]], ["from2", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/from2-npm-1.3.0-c0a7be40c4-1e08a0a94c.zip/node_modules/from2/", "packageDependencies": [ ["from2", "npm:1.3.0"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:1.1.14"] ], "linkType": "HARD", }], ["npm:2.3.0", { "packageLocation": "./.yarn/cache/from2-npm-2.3.0-bd16dc410b-5f1a9bbff0.zip/node_modules/from2/", "packageDependencies": [ ["from2", "npm:2.3.0"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["fs-extra", [ ["npm:8.1.0", { "packageLocation": "./.yarn/cache/fs-extra-npm-8.1.0-197473387f-056a96d4f5.zip/node_modules/fs-extra/", "packageDependencies": [ ["fs-extra", "npm:8.1.0"], ["graceful-fs", "npm:4.2.4"], ["jsonfile", "npm:4.0.0"], ["universalify", "npm:0.1.2"] ], "linkType": "HARD", }] ]], ["fs-minipass", [ ["npm:1.2.7", { "packageLocation": "./.yarn/cache/fs-minipass-npm-1.2.7-0e18342ce1-eb59a93065.zip/node_modules/fs-minipass/", "packageDependencies": [ ["fs-minipass", "npm:1.2.7"], ["minipass", "npm:2.9.0"] ], "linkType": "HARD", }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/fs-minipass-npm-2.1.0-501ef87306-e14a490658.zip/node_modules/fs-minipass/", "packageDependencies": [ ["fs-minipass", "npm:2.1.0"], ["minipass", "npm:3.1.3"] ], "linkType": "HARD", }] ]], ["fs-readdir-recursive", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/fs-readdir-recursive-npm-1.1.0-258e230a4b-dec853d741.zip/node_modules/fs-readdir-recursive/", "packageDependencies": [ ["fs-readdir-recursive", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["fs-vacuum", [ ["npm:1.2.10", { "packageLocation": "./.yarn/cache/fs-vacuum-npm-1.2.10-ab4f71a30c-a14a734c07.zip/node_modules/fs-vacuum/", "packageDependencies": [ ["fs-vacuum", "npm:1.2.10"], ["graceful-fs", "npm:4.2.4"], ["path-is-inside", "npm:1.0.2"], ["rimraf", "npm:2.7.1"] ], "linkType": "HARD", }] ]], ["fs-write-stream-atomic", [ ["npm:1.0.10", { "packageLocation": "./.yarn/cache/fs-write-stream-atomic-npm-1.0.10-d6efbd9866-1e35e18bdd.zip/node_modules/fs-write-stream-atomic/", "packageDependencies": [ ["fs-write-stream-atomic", "npm:1.0.10"], ["graceful-fs", "npm:4.2.4"], ["iferr", "npm:0.1.5"], ["imurmurhash", "npm:0.1.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["fs.realpath", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/fs.realpath-npm-1.0.0-c8f05d8126-698a91b169.zip/node_modules/fs.realpath/", "packageDependencies": [ ["fs.realpath", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["fsevents", [ ["patch:fsevents@npm%3A2.1.2#builtin::version=2.1.2&hash=11e9ea", { "packageLocation": "./.yarn/unplugged/fsevents-patch-06bd254f51/node_modules/fsevents/", "packageDependencies": [ ["fsevents", "patch:fsevents@npm%3A2.1.2#builtin::version=2.1.2&hash=11e9ea"], ["node-gyp", "npm:7.1.2"] ], "linkType": "HARD", }], ["patch:fsevents@npm%3A2.1.3#builtin::version=2.1.3&hash=11e9ea", { "packageLocation": "./.yarn/unplugged/fsevents-patch-5794df231e/node_modules/fsevents/", "packageDependencies": [ ["fsevents", "patch:fsevents@npm%3A2.1.3#builtin::version=2.1.3&hash=11e9ea"], ["node-gyp", "npm:7.1.2"] ], "linkType": "HARD", }] ]], ["function-bind", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/function-bind-npm-1.1.1-b56b322ae9-ffad86e7d2.zip/node_modules/function-bind/", "packageDependencies": [ ["function-bind", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["functional-red-black-tree", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/functional-red-black-tree-npm-1.0.1-ccfe924dcd-477ecaf62d.zip/node_modules/functional-red-black-tree/", "packageDependencies": [ ["functional-red-black-tree", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["gauge", [ ["npm:2.7.4", { "packageLocation": "./.yarn/cache/gauge-npm-2.7.4-2189a73529-b136dbeb8e.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.3"] ], "linkType": "HARD", }] ]], ["genfun", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/genfun-npm-5.0.0-4ef81f33fb-b127fa4244.zip/node_modules/genfun/", "packageDependencies": [ ["genfun", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["gensync", [ ["npm:1.0.0-beta.1", { "packageLocation": "./.yarn/cache/gensync-npm-1.0.0-beta.1-0bc9838d39-3d14f7c34f.zip/node_modules/gensync/", "packageDependencies": [ ["gensync", "npm:1.0.0-beta.1"] ], "linkType": "HARD", }] ]], ["gentle-fs", [ ["npm:2.3.1", { "packageLocation": "./.yarn/cache/gentle-fs-npm-2.3.1-01bcd4fb83-2955e3ca3b.zip/node_modules/gentle-fs/", "packageDependencies": [ ["gentle-fs", "npm:2.3.1"], ["aproba", "npm:1.2.0"], ["chownr", "npm:1.1.4"], ["cmd-shim", "npm:3.0.3"], ["fs-vacuum", "npm:1.2.10"], ["graceful-fs", "npm:4.2.4"], ["iferr", "npm:0.1.5"], ["infer-owner", "npm:1.0.4"], ["mkdirp", "npm:0.5.5"], ["path-is-inside", "npm:1.0.2"], ["read-cmd-shim", "npm:1.0.5"], ["slide", "npm:1.1.6"] ], "linkType": "HARD", }] ]], ["get-caller-file", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/get-caller-file-npm-1.0.3-df430e7075-282a3d15e7.zip/node_modules/get-caller-file/", "packageDependencies": [ ["get-caller-file", "npm:1.0.3"] ], "linkType": "HARD", }], ["npm:2.0.5", { "packageLocation": "./.yarn/cache/get-caller-file-npm-2.0.5-80e8a86305-9dd9e1e259.zip/node_modules/get-caller-file/", "packageDependencies": [ ["get-caller-file", "npm:2.0.5"] ], "linkType": "HARD", }] ]], ["get-intrinsic", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/get-intrinsic-npm-1.1.1-7e868745da-acf1506f25.zip/node_modules/get-intrinsic/", "packageDependencies": [ ["get-intrinsic", "npm:1.1.1"], ["function-bind", "npm:1.1.1"], ["has", "npm:1.0.3"], ["has-symbols", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["get-stdin", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/get-stdin-npm-6.0.0-22ebabe125-b51d664838.zip/node_modules/get-stdin/", "packageDependencies": [ ["get-stdin", "npm:6.0.0"] ], "linkType": "HARD", }] ]], ["get-stream", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/get-stream-npm-3.0.0-ca0b13ddbe-83ed722c1b.zip/node_modules/get-stream/", "packageDependencies": [ ["get-stream", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.1.0", { "packageLocation": "./.yarn/cache/get-stream-npm-4.1.0-314d430a5d-f41bb3c74d.zip/node_modules/get-stream/", "packageDependencies": [ ["get-stream", "npm:4.1.0"], ["pump", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:5.1.0", { "packageLocation": "./.yarn/cache/get-stream-npm-5.1.0-29a3aa3558-599dad0b6b.zip/node_modules/get-stream/", "packageDependencies": [ ["get-stream", "npm:5.1.0"], ["pump", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["get-value", [ ["npm:2.0.6", { "packageLocation": "./.yarn/cache/get-value-npm-2.0.6-03cd422e0a-f08da32627.zip/node_modules/get-value/", "packageDependencies": [ ["get-value", "npm:2.0.6"] ], "linkType": "HARD", }] ]], ["getpass", [ ["npm:0.1.7", { "packageLocation": "./.yarn/cache/getpass-npm-0.1.7-519164a3be-2650725bc6.zip/node_modules/getpass/", "packageDependencies": [ ["getpass", "npm:0.1.7"], ["assert-plus", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["git-log-parser", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/git-log-parser-npm-1.2.0-04639ce6bf-7436d09980.zip/node_modules/git-log-parser/", "packageDependencies": [ ["git-log-parser", "npm:1.2.0"], ["argv-formatter", "npm:1.0.0"], ["spawn-error-forwarder", "npm:1.0.0"], ["split2", "npm:1.0.0"], ["stream-combiner2", "npm:1.1.1"], ["through2", "npm:2.0.5"], ["traverse", "npm:0.6.6"] ], "linkType": "HARD", }] ]], ["glob", [ ["npm:7.1.6", { "packageLocation": "./.yarn/cache/glob-npm-7.1.6-1ce3a5189a-789977b524.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:3.1.0", { "packageLocation": "./.yarn/cache/glob-parent-npm-3.1.0-31416ad085-2827ec4405.zip/node_modules/glob-parent/", "packageDependencies": [ ["glob-parent", "npm:3.1.0"], ["is-glob", "npm:3.1.0"], ["path-dirname", "npm:1.0.2"] ], "linkType": "HARD", }], ["npm:5.1.0", { "packageLocation": "./.yarn/cache/glob-parent-npm-5.1.0-8e781a1aff-da8fb21548.zip/node_modules/glob-parent/", "packageDependencies": [ ["glob-parent", "npm:5.1.0"], ["is-glob", "npm:4.0.1"] ], "linkType": "HARD", }], ["npm:5.1.1", { "packageLocation": "./.yarn/cache/glob-parent-npm-5.1.1-57b061cd88-2af6e196fb.zip/node_modules/glob-parent/", "packageDependencies": [ ["glob-parent", "npm:5.1.1"], ["is-glob", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["global-dirs", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/global-dirs-npm-0.1.1-87c167e806-0d46e90b45.zip/node_modules/global-dirs/", "packageDependencies": [ ["global-dirs", "npm:0.1.1"], ["ini", "npm:1.3.7"] ], "linkType": "HARD", }] ]], ["globals", [ ["npm:11.12.0", { "packageLocation": "./.yarn/cache/globals-npm-11.12.0-1fa7f41a6c-2563d3306a.zip/node_modules/globals/", "packageDependencies": [ ["globals", "npm:11.12.0"] ], "linkType": "HARD", }], ["npm:12.3.0", { "packageLocation": "./.yarn/cache/globals-npm-12.3.0-b784106451-9df75e1f0e.zip/node_modules/globals/", "packageDependencies": [ ["globals", "npm:12.3.0"], ["type-fest", "npm:0.8.1"] ], "linkType": "HARD", }] ]], ["globby", [ ["npm:11.0.0", { "packageLocation": "./.yarn/cache/globby-npm-11.0.0-a1c72451a6-623a19a411.zip/node_modules/globby/", "packageDependencies": [ ["globby", "npm:11.0.0"], ["array-union", "npm:2.1.0"], ["dir-glob", "npm:3.0.1"], ["fast-glob", "npm:3.2.2"], ["ignore", "npm:5.1.4"], ["merge2", "npm:1.3.0"], ["slash", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:11.0.1", { "packageLocation": "./.yarn/cache/globby-npm-11.0.1-b32c0f1cff-e7239e9e46.zip/node_modules/globby/", "packageDependencies": [ ["globby", "npm:11.0.1"], ["array-union", "npm:2.1.0"], ["dir-glob", "npm:3.0.1"], ["fast-glob", "npm:3.2.2"], ["ignore", "npm:5.1.4"], ["merge2", "npm:1.3.0"], ["slash", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["got", [ ["npm:6.7.1", { "packageLocation": "./.yarn/cache/got-npm-6.7.1-f61570d59b-bf19ee1cbb.zip/node_modules/got/", "packageDependencies": [ ["got", "npm:6.7.1"], ["@types/keyv", "npm:3.1.1"], ["@types/responselike", "npm:1.0.0"], ["create-error-class", "npm:3.0.2"], ["duplexer3", "npm:0.1.4"], ["get-stream", "npm:3.0.0"], ["is-redirect", "npm:1.0.0"], ["is-retry-allowed", "npm:1.2.0"], ["is-stream", "npm:1.1.0"], ["lowercase-keys", "npm:1.0.1"], ["safe-buffer", "npm:5.2.1"], ["timed-out", "npm:4.0.1"], ["unzip-response", "npm:2.0.1"], ["url-parse-lax", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["graceful-fs", [ ["npm:4.2.4", { "packageLocation": "./.yarn/cache/graceful-fs-npm-4.2.4-734467635f-d095ee4dc6.zip/node_modules/graceful-fs/", "packageDependencies": [ ["graceful-fs", "npm:4.2.4"] ], "linkType": "HARD", }], ["npm:4.2.6", { "packageLocation": "./.yarn/cache/graceful-fs-npm-4.2.6-535b2234f1-84d39c7756.zip/node_modules/graceful-fs/", "packageDependencies": [ ["graceful-fs", "npm:4.2.6"] ], "linkType": "HARD", }] ]], ["growly", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/growly-npm-1.3.0-b3a02d4d2a-c87f7e8c78.zip/node_modules/growly/", "packageDependencies": [ ["growly", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["handlebars", [ ["npm:4.7.3", { "packageLocation": "./.yarn/cache/handlebars-npm-4.7.3-b8cac58784-8c9a87146a.zip/node_modules/handlebars/", "packageDependencies": [ ["handlebars", "npm:4.7.3"], ["neo-async", "npm:2.6.1"], ["optimist", "npm:0.6.1"], ["source-map", "npm:0.6.1"], ["uglify-js", "npm:3.8.0"] ], "linkType": "HARD", }] ]], ["har-schema", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/har-schema-npm-2.0.0-3a318c0ca5-e27ac33a96.zip/node_modules/har-schema/", "packageDependencies": [ ["har-schema", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["har-validator", [ ["npm:5.1.3", { "packageLocation": "./.yarn/cache/har-validator-npm-5.1.3-f192d43c41-64cb2294c1.zip/node_modules/har-validator/", "packageDependencies": [ ["har-validator", "npm:5.1.3"], ["ajv", "npm:6.12.3"], ["har-schema", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["has", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/has-npm-1.0.3-b7f00631c1-c686e15300.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": "./.yarn/cache/has-flag-npm-3.0.0-16ac11fe05-63aade480d.zip/node_modules/has-flag/", "packageDependencies": [ ["has-flag", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/has-flag-npm-4.0.0-32af9f0536-2e5391139d.zip/node_modules/has-flag/", "packageDependencies": [ ["has-flag", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["has-symbols", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/has-symbols-npm-1.0.1-b783bc25ec-84e2a03ada.zip/node_modules/has-symbols/", "packageDependencies": [ ["has-symbols", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["has-unicode", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/has-unicode-npm-2.0.1-893adb4747-ed3719f95c.zip/node_modules/has-unicode/", "packageDependencies": [ ["has-unicode", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["has-value", [ ["npm:0.3.1", { "packageLocation": "./.yarn/cache/has-value-npm-0.3.1-4a15b6c29f-d78fab4523.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": "./.yarn/cache/has-value-npm-1.0.0-19d82fd04b-e05422bce9.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": "./.yarn/cache/has-values-npm-0.1.4-6b4397786d-df7ac830e4.zip/node_modules/has-values/", "packageDependencies": [ ["has-values", "npm:0.1.4"] ], "linkType": "HARD", }], ["npm:1.0.0", { "packageLocation": "./.yarn/cache/has-values-npm-1.0.0-890c077bbd-b69c45d513.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", }] ]], ["hook-std", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/hook-std-npm-2.0.0-26f4bcefd5-5d01bd1768.zip/node_modules/hook-std/", "packageDependencies": [ ["hook-std", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["hosted-git-info", [ ["npm:2.8.8", { "packageLocation": "./.yarn/cache/hosted-git-info-npm-2.8.8-94a3928c03-3ecc389dc6.zip/node_modules/hosted-git-info/", "packageDependencies": [ ["hosted-git-info", "npm:2.8.8"] ], "linkType": "HARD", }], ["npm:3.0.4", { "packageLocation": "./.yarn/cache/hosted-git-info-npm-3.0.4-d8c39f6cf2-6e73d11e85.zip/node_modules/hosted-git-info/", "packageDependencies": [ ["hosted-git-info", "npm:3.0.4"], ["lru-cache", "npm:5.1.1"] ], "linkType": "HARD", }] ]], ["html-encoding-sniffer", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/html-encoding-sniffer-npm-2.0.1-381bf15a76-6f49e83a2e.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.0", { "packageLocation": "./.yarn/cache/html-escaper-npm-2.0.0-f1eee1667f-8b76c852f3.zip/node_modules/html-escaper/", "packageDependencies": [ ["html-escaper", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["http-cache-semantics", [ ["npm:3.8.1", { "packageLocation": "./.yarn/cache/http-cache-semantics-npm-3.8.1-9d037f563e-715784dc20.zip/node_modules/http-cache-semantics/", "packageDependencies": [ ["http-cache-semantics", "npm:3.8.1"] ], "linkType": "HARD", }] ]], ["http-proxy-agent", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/http-proxy-agent-npm-2.1.0-6618ab6046-627c6a7437.zip/node_modules/http-proxy-agent/", "packageDependencies": [ ["http-proxy-agent", "npm:2.1.0"], ["agent-base", "npm:4.3.0"], ["debug", "virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0"] ], "linkType": "HARD", }], ["npm:4.0.1", { "packageLocation": "./.yarn/cache/http-proxy-agent-npm-4.0.1-ce9ef61788-6703aeb5c5.zip/node_modules/http-proxy-agent/", "packageDependencies": [ ["http-proxy-agent", "npm:4.0.1"], ["@tootallnate/once", "npm:1.0.0"], ["agent-base", "npm:6.0.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"] ], "linkType": "HARD", }] ]], ["http-signature", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/http-signature-npm-1.2.0-ee92426f34-d28227eed3.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:2.2.4", { "packageLocation": "./.yarn/cache/https-proxy-agent-npm-2.2.4-8bb97bed48-4e42bed005.zip/node_modules/https-proxy-agent/", "packageDependencies": [ ["https-proxy-agent", "npm:2.2.4"], ["agent-base", "npm:4.3.0"], ["debug", "virtual:8bb97bed484f021974a05538f31c077871d2363ce26ebed59b11577446762350604c9011c0660ae55b141dd86d888615a377ccccd7a87c5e54ae38233a22d5a9#npm:3.2.6"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/https-proxy-agent-npm-5.0.0-bb777903c3-18aa04ea08.zip/node_modules/https-proxy-agent/", "packageDependencies": [ ["https-proxy-agent", "npm:5.0.0"], ["agent-base", "npm:6.0.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"] ], "linkType": "HARD", }] ]], ["human-signals", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/human-signals-npm-1.1.1-616b2586c2-cac115f635.zip/node_modules/human-signals/", "packageDependencies": [ ["human-signals", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["humanize-ms", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/humanize-ms-npm-1.2.1-e942bd7329-4a08769434.zip/node_modules/humanize-ms/", "packageDependencies": [ ["humanize-ms", "npm:1.2.1"], ["ms", "npm:2.1.2"] ], "linkType": "HARD", }] ]], ["iconv-lite", [ ["npm:0.4.24", { "packageLocation": "./.yarn/cache/iconv-lite-npm-0.4.24-c5c4ac6695-a9b9521066.zip/node_modules/iconv-lite/", "packageDependencies": [ ["iconv-lite", "npm:0.4.24"], ["safer-buffer", "npm:2.1.2"] ], "linkType": "HARD", }], ["npm:0.6.2", { "packageLocation": "./.yarn/cache/iconv-lite-npm-0.6.2-13e85ec7dc-0785670120.zip/node_modules/iconv-lite/", "packageDependencies": [ ["iconv-lite", "npm:0.6.2"], ["safer-buffer", "npm:2.1.2"] ], "linkType": "HARD", }] ]], ["iferr", [ ["npm:0.1.5", { "packageLocation": "./.yarn/cache/iferr-npm-0.1.5-c49f4a3fbc-9d366dcc63.zip/node_modules/iferr/", "packageDependencies": [ ["iferr", "npm:0.1.5"] ], "linkType": "HARD", }], ["npm:1.0.2", { "packageLocation": "./.yarn/cache/iferr-npm-1.0.2-d48a189880-6f7764128d.zip/node_modules/iferr/", "packageDependencies": [ ["iferr", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["ignore", [ ["npm:4.0.6", { "packageLocation": "./.yarn/cache/ignore-npm-4.0.6-66c0d6543e-8f7b7f7c26.zip/node_modules/ignore/", "packageDependencies": [ ["ignore", "npm:4.0.6"] ], "linkType": "HARD", }], ["npm:5.1.4", { "packageLocation": "./.yarn/cache/ignore-npm-5.1.4-fd6cc2dff0-215721af97.zip/node_modules/ignore/", "packageDependencies": [ ["ignore", "npm:5.1.4"] ], "linkType": "HARD", }] ]], ["ignore-walk", [ ["npm:3.0.3", { "packageLocation": "./.yarn/cache/ignore-walk-npm-3.0.3-7d7a6bd656-08394ce8c4.zip/node_modules/ignore-walk/", "packageDependencies": [ ["ignore-walk", "npm:3.0.3"], ["minimatch", "npm:3.0.4"] ], "linkType": "HARD", }] ]], ["import-fresh", [ ["npm:3.2.1", { "packageLocation": "./.yarn/cache/import-fresh-npm-3.2.1-b4f6711244-5ace950631.zip/node_modules/import-fresh/", "packageDependencies": [ ["import-fresh", "npm:3.2.1"], ["parent-module", "npm:1.0.1"], ["resolve-from", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["import-from", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/import-from-npm-3.0.0-8656bfd330-ba66d42da5.zip/node_modules/import-from/", "packageDependencies": [ ["import-from", "npm:3.0.0"], ["resolve-from", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["import-lazy", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/import-lazy-npm-2.1.0-b128ce6959-4907a2ddbe.zip/node_modules/import-lazy/", "packageDependencies": [ ["import-lazy", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["import-local", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/import-local-npm-3.0.2-c8afc1fd5f-9ba5f1697b.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": "./.yarn/cache/imurmurhash-npm-0.1.4-610c5068a0-34d414d789.zip/node_modules/imurmurhash/", "packageDependencies": [ ["imurmurhash", "npm:0.1.4"] ], "linkType": "HARD", }] ]], ["indent-string", [ ["npm:3.2.0", { "packageLocation": "./.yarn/cache/indent-string-npm-3.2.0-9930503310-00d5200e3a.zip/node_modules/indent-string/", "packageDependencies": [ ["indent-string", "npm:3.2.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/indent-string-npm-4.0.0-7b717435b2-3e54996c6e.zip/node_modules/indent-string/", "packageDependencies": [ ["indent-string", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["infer-owner", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/infer-owner-npm-1.0.4-685ac3d2af-56aa1d87b0.zip/node_modules/infer-owner/", "packageDependencies": [ ["infer-owner", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["inflight", [ ["npm:1.0.6", { "packageLocation": "./.yarn/cache/inflight-npm-1.0.6-ccedb4b908-17c53fc42c.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": "./.yarn/cache/inherits-npm-2.0.4-c66b3957a0-98426da247.zip/node_modules/inherits/", "packageDependencies": [ ["inherits", "npm:2.0.4"] ], "linkType": "HARD", }] ]], ["ini", [ ["npm:1.3.7", { "packageLocation": "./.yarn/cache/ini-npm-1.3.7-188ee858c0-cf00289cb4.zip/node_modules/ini/", "packageDependencies": [ ["ini", "npm:1.3.7"] ], "linkType": "HARD", }] ]], ["init-package-json", [ ["npm:1.10.3", { "packageLocation": "./.yarn/cache/init-package-json-npm-1.10.3-83a0bc1ff1-b6288a1b4f.zip/node_modules/init-package-json/", "packageDependencies": [ ["init-package-json", "npm:1.10.3"], ["glob", "npm:7.1.6"], ["npm-package-arg", "npm:6.1.1"], ["promzard", "npm:0.3.0"], ["read", "npm:1.0.7"], ["read-package-json", "npm:2.1.1"], ["semver", "npm:5.7.1"], ["validate-npm-package-license", "npm:3.0.4"], ["validate-npm-package-name", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["into-stream", [ ["npm:5.1.1", { "packageLocation": "./.yarn/cache/into-stream-npm-5.1.1-648b152399-8734b2451c.zip/node_modules/into-stream/", "packageDependencies": [ ["into-stream", "npm:5.1.1"], ["from2", "npm:2.3.0"], ["p-is-promise", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["invariant", [ ["npm:2.2.4", { "packageLocation": "./.yarn/cache/invariant-npm-2.2.4-717fbdb119-96d8a2a4f0.zip/node_modules/invariant/", "packageDependencies": [ ["invariant", "npm:2.2.4"], ["loose-envify", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["invert-kv", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/invert-kv-npm-1.0.0-114e48e289-fccd6ea4ee.zip/node_modules/invert-kv/", "packageDependencies": [ ["invert-kv", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/invert-kv-npm-2.0.0-67c5b7ac27-10b0fa3fd4.zip/node_modules/invert-kv/", "packageDependencies": [ ["invert-kv", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["ip", [ ["npm:1.1.5", { "packageLocation": "./.yarn/cache/ip-npm-1.1.5-af36318aa6-3ad007368c.zip/node_modules/ip/", "packageDependencies": [ ["ip", "npm:1.1.5"] ], "linkType": "HARD", }] ]], ["ip-regex", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/ip-regex-npm-2.1.0-7eb0f6c4ab-2fd2190ada.zip/node_modules/ip-regex/", "packageDependencies": [ ["ip-regex", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["is-accessor-descriptor", [ ["npm:0.1.6", { "packageLocation": "./.yarn/cache/is-accessor-descriptor-npm-0.1.6-41c495d517-7a7fca2185.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": "./.yarn/cache/is-accessor-descriptor-npm-1.0.0-d8ce016e98-3973215c2e.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": "./.yarn/cache/is-arrayish-npm-0.2.1-23927dfb15-fc2bbe14db.zip/node_modules/is-arrayish/", "packageDependencies": [ ["is-arrayish", "npm:0.2.1"] ], "linkType": "HARD", }] ]], ["is-binary-path", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/is-binary-path-npm-1.0.1-9af74a6099-25a2cda1e5.zip/node_modules/is-binary-path/", "packageDependencies": [ ["is-binary-path", "npm:1.0.1"], ["binary-extensions", "npm:1.13.1"] ], "linkType": "HARD", }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/is-binary-path-npm-2.1.0-e61d46f557-49a1446a3c.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": "./.yarn/cache/is-buffer-npm-1.1.6-08199d9ccc-336ec78f00.zip/node_modules/is-buffer/", "packageDependencies": [ ["is-buffer", "npm:1.1.6"] ], "linkType": "HARD", }] ]], ["is-callable", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/is-callable-npm-1.2.0-65cf88fe60-8a5e68b7c3.zip/node_modules/is-callable/", "packageDependencies": [ ["is-callable", "npm:1.2.0"] ], "linkType": "HARD", }], ["npm:1.2.3", { "packageLocation": "./.yarn/cache/is-callable-npm-1.2.3-2a68c9d549-8180a1c4e2.zip/node_modules/is-callable/", "packageDependencies": [ ["is-callable", "npm:1.2.3"] ], "linkType": "HARD", }] ]], ["is-ci", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/is-ci-npm-1.2.1-6a67118112-cdcdeba942.zip/node_modules/is-ci/", "packageDependencies": [ ["is-ci", "npm:1.2.1"], ["ci-info", "npm:1.6.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/is-ci-npm-2.0.0-8662a0f445-09083018ed.zip/node_modules/is-ci/", "packageDependencies": [ ["is-ci", "npm:2.0.0"], ["ci-info", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["is-cidr", [ ["npm:3.1.1", { "packageLocation": "./.yarn/cache/is-cidr-npm-3.1.1-2cd3bde45a-6869baf5e9.zip/node_modules/is-cidr/", "packageDependencies": [ ["is-cidr", "npm:3.1.1"], ["cidr-regex", "npm:2.0.10"] ], "linkType": "HARD", }] ]], ["is-core-module", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/is-core-module-npm-2.2.0-497065e3b0-2344744de9.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": "./.yarn/cache/is-data-descriptor-npm-0.1.4-6f53f71c67-51db89bb46.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": "./.yarn/cache/is-data-descriptor-npm-1.0.0-f7d2e852ca-0297518899.zip/node_modules/is-data-descriptor/", "packageDependencies": [ ["is-data-descriptor", "npm:1.0.0"], ["kind-of", "npm:6.0.3"] ], "linkType": "HARD", }] ]], ["is-date-object", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/is-date-object-npm-1.0.2-461fbe93c0-0e32269946.zip/node_modules/is-date-object/", "packageDependencies": [ ["is-date-object", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["is-descriptor", [ ["npm:0.1.6", { "packageLocation": "./.yarn/cache/is-descriptor-npm-0.1.6-15c7346839-cab6979fb6.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": "./.yarn/cache/is-descriptor-npm-1.0.2-5cfc02c444-be8004010e.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-extendable", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/is-extendable-npm-0.1.1-322b4649ec-9d051e68c3.zip/node_modules/is-extendable/", "packageDependencies": [ ["is-extendable", "npm:0.1.1"] ], "linkType": "HARD", }], ["npm:1.0.1", { "packageLocation": "./.yarn/cache/is-extendable-npm-1.0.1-7095ad8b16-2bf711afe6.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": "./.yarn/cache/is-extglob-npm-2.1.1-0870ea68b5-ca623e2c56.zip/node_modules/is-extglob/", "packageDependencies": [ ["is-extglob", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["is-fullwidth-code-point", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/is-fullwidth-code-point-npm-1.0.0-0e436ba1ef-fc3d51ef08.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": "./.yarn/cache/is-fullwidth-code-point-npm-2.0.0-507f56ec71-e1e5284f84.zip/node_modules/is-fullwidth-code-point/", "packageDependencies": [ ["is-fullwidth-code-point", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/is-fullwidth-code-point-npm-3.0.0-1ecf4ebee5-a01a19ecac.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": "./.yarn/cache/is-generator-fn-npm-2.1.0-37895c2d2b-9639f81679.zip/node_modules/is-generator-fn/", "packageDependencies": [ ["is-generator-fn", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["is-glob", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/is-glob-npm-3.1.0-ea0bd3271e-9911e04e28.zip/node_modules/is-glob/", "packageDependencies": [ ["is-glob", "npm:3.1.0"], ["is-extglob", "npm:2.1.1"] ], "linkType": "HARD", }], ["npm:4.0.1", { "packageLocation": "./.yarn/cache/is-glob-npm-4.0.1-341760116f-98cd4f715f.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.1.0", { "packageLocation": "./.yarn/cache/is-installed-globally-npm-0.1.0-c4b41928c9-99de529fc6.zip/node_modules/is-installed-globally/", "packageDependencies": [ ["is-installed-globally", "npm:0.1.0"], ["global-dirs", "npm:0.1.1"], ["is-path-inside", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["is-negative-zero", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/is-negative-zero-npm-2.0.1-d8f3dbcfe1-e2160af9a6.zip/node_modules/is-negative-zero/", "packageDependencies": [ ["is-negative-zero", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["is-npm", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/is-npm-npm-1.0.0-3797354863-b562218ef0.zip/node_modules/is-npm/", "packageDependencies": [ ["is-npm", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["is-number", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/is-number-npm-3.0.0-9088035ade-ae03986ded.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": "./.yarn/cache/is-number-npm-7.0.0-060086935c-eec6e506c6.zip/node_modules/is-number/", "packageDependencies": [ ["is-number", "npm:7.0.0"] ], "linkType": "HARD", }] ]], ["is-obj", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/is-obj-npm-1.0.1-7d391539d7-0913a3bb64.zip/node_modules/is-obj/", "packageDependencies": [ ["is-obj", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["is-path-inside", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/is-path-inside-npm-1.0.1-cd0d417091-7ccbc0bedf.zip/node_modules/is-path-inside/", "packageDependencies": [ ["is-path-inside", "npm:1.0.1"], ["path-is-inside", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["is-plain-obj", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/is-plain-obj-npm-1.1.0-1046f64c0b-d2eb5a32ea.zip/node_modules/is-plain-obj/", "packageDependencies": [ ["is-plain-obj", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["is-plain-object", [ ["npm:2.0.4", { "packageLocation": "./.yarn/cache/is-plain-object-npm-2.0.4-da3265d804-2f32322673.zip/node_modules/is-plain-object/", "packageDependencies": [ ["is-plain-object", "npm:2.0.4"], ["isobject", "npm:3.0.1"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/is-plain-object-npm-3.0.0-c59a1b626c-907951d69b.zip/node_modules/is-plain-object/", "packageDependencies": [ ["is-plain-object", "npm:3.0.0"], ["isobject", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["is-potential-custom-element-name", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/is-potential-custom-element-name-npm-1.0.0-0000641861-55b1ae44cf.zip/node_modules/is-potential-custom-element-name/", "packageDependencies": [ ["is-potential-custom-element-name", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["is-redirect", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/is-redirect-npm-1.0.0-0ff2c21753-24c2aef7db.zip/node_modules/is-redirect/", "packageDependencies": [ ["is-redirect", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["is-regex", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/is-regex-npm-1.1.0-3c0bd70230-8fe7ae8c06.zip/node_modules/is-regex/", "packageDependencies": [ ["is-regex", "npm:1.1.0"], ["has-symbols", "npm:1.0.1"] ], "linkType": "HARD", }], ["npm:1.1.2", { "packageLocation": "./.yarn/cache/is-regex-npm-1.1.2-0aaa524607-5e2f80f495.zip/node_modules/is-regex/", "packageDependencies": [ ["is-regex", "npm:1.1.2"], ["call-bind", "npm:1.0.2"], ["has-symbols", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["is-retry-allowed", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/is-retry-allowed-npm-1.2.0-730be11f6c-739384d266.zip/node_modules/is-retry-allowed/", "packageDependencies": [ ["is-retry-allowed", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["is-stream", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/is-stream-npm-1.1.0-818ecbf6bb-39843ee9ff.zip/node_modules/is-stream/", "packageDependencies": [ ["is-stream", "npm:1.1.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/is-stream-npm-2.0.0-1401f82ad7-f92ba04a8b.zip/node_modules/is-stream/", "packageDependencies": [ ["is-stream", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["is-string", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/is-string-npm-1.0.5-782e9359f5-c64c791eb7.zip/node_modules/is-string/", "packageDependencies": [ ["is-string", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["is-symbol", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/is-symbol-npm-1.0.3-6bebca15dc-753aa0cf95.zip/node_modules/is-symbol/", "packageDependencies": [ ["is-symbol", "npm:1.0.3"], ["has-symbols", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["is-text-path", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/is-text-path-npm-1.0.1-92c78fe58d-7c46df2e80.zip/node_modules/is-text-path/", "packageDependencies": [ ["is-text-path", "npm:1.0.1"], ["text-extensions", "npm:1.9.0"] ], "linkType": "HARD", }] ]], ["is-typedarray", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/is-typedarray-npm-1.0.0-bbd99de5b6-4e21156e73.zip/node_modules/is-typedarray/", "packageDependencies": [ ["is-typedarray", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["is-windows", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/is-windows-npm-1.0.2-898cd6f3d7-dd1ed8339a.zip/node_modules/is-windows/", "packageDependencies": [ ["is-windows", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["is-wsl", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/is-wsl-npm-2.1.1-5882a515d5-76711be70c.zip/node_modules/is-wsl/", "packageDependencies": [ ["is-wsl", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["isarray", [ ["npm:0.0.1", { "packageLocation": "./.yarn/cache/isarray-npm-0.0.1-92e37e0a70-daeda3c236.zip/node_modules/isarray/", "packageDependencies": [ ["isarray", "npm:0.0.1"] ], "linkType": "HARD", }], ["npm:1.0.0", { "packageLocation": "./.yarn/cache/isarray-npm-1.0.0-db4f547720-b0ff31a290.zip/node_modules/isarray/", "packageDependencies": [ ["isarray", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["isexe", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/isexe-npm-2.0.0-b58870bd2e-7b437980bb.zip/node_modules/isexe/", "packageDependencies": [ ["isexe", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["isobject", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/isobject-npm-2.1.0-2798cf0d94-2e7d7dd8d5.zip/node_modules/isobject/", "packageDependencies": [ ["isobject", "npm:2.1.0"], ["isarray", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:3.0.1", { "packageLocation": "./.yarn/cache/isobject-npm-3.0.1-8145901fd2-b537a9ccdd.zip/node_modules/isobject/", "packageDependencies": [ ["isobject", "npm:3.0.1"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/isobject-npm-4.0.0-9c5174125b-bfc8e8f6e2.zip/node_modules/isobject/", "packageDependencies": [ ["isobject", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["isstream", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/isstream-npm-0.1.2-8581c75385-8e6e5c4cf1.zip/node_modules/isstream/", "packageDependencies": [ ["isstream", "npm:0.1.2"] ], "linkType": "HARD", }] ]], ["issue-parser", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/issue-parser-npm-6.0.0-ef081f1601-8632e2da46.zip/node_modules/issue-parser/", "packageDependencies": [ ["issue-parser", "npm:6.0.0"], ["lodash.capitalize", "npm:4.2.1"], ["lodash.escaperegexp", "npm:4.1.2"], ["lodash.isplainobject", "npm:4.0.6"], ["lodash.isstring", "npm:4.0.1"], ["lodash.uniqby", "npm:4.7.0"] ], "linkType": "HARD", }] ]], ["istanbul-lib-coverage", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/istanbul-lib-coverage-npm-3.0.0-654bb0146d-c8effc09ae.zip/node_modules/istanbul-lib-coverage/", "packageDependencies": [ ["istanbul-lib-coverage", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["istanbul-lib-instrument", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/istanbul-lib-instrument-npm-4.0.1-26509cad23-f4b47fd393.zip/node_modules/istanbul-lib-instrument/", "packageDependencies": [ ["istanbul-lib-instrument", "npm:4.0.1"], ["@babel/core", "npm:7.12.10"], ["@babel/parser", "npm:7.12.10"], ["@babel/template", "npm:7.12.7"], ["@babel/traverse", "npm:7.12.10"], ["@istanbuljs/schema", "npm:0.1.2"], ["istanbul-lib-coverage", "npm:3.0.0"], ["semver", "npm:6.3.0"] ], "linkType": "HARD", }], ["npm:4.0.3", { "packageLocation": "./.yarn/cache/istanbul-lib-instrument-npm-4.0.3-4d4c2263f8-478e43e75d.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": "./.yarn/cache/istanbul-lib-report-npm-3.0.0-660f97340a-aada59dfce.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.0.2"], ["supports-color", "npm:7.1.0"] ], "linkType": "HARD", }] ]], ["istanbul-lib-source-maps", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/istanbul-lib-source-maps-npm-4.0.0-def3895674-018b5feeb4.zip/node_modules/istanbul-lib-source-maps/", "packageDependencies": [ ["istanbul-lib-source-maps", "npm:4.0.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["istanbul-lib-coverage", "npm:3.0.0"], ["source-map", "npm:0.6.1"] ], "linkType": "HARD", }] ]], ["istanbul-reports", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/istanbul-reports-npm-3.0.2-6ccd67e17e-d4ed416e13.zip/node_modules/istanbul-reports/", "packageDependencies": [ ["istanbul-reports", "npm:3.0.2"], ["html-escaper", "npm:2.0.0"], ["istanbul-lib-report", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["java-properties", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/java-properties-npm-1.0.2-5b04acc097-6712ee3e5d.zip/node_modules/java-properties/", "packageDependencies": [ ["java-properties", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["jest", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-npm-26.2.2-372e259e0e-e4d79bfeff.zip/node_modules/jest/", "packageDependencies": [ ["jest", "npm:26.2.2"], ["@jest/core", "npm:26.2.2"], ["import-local", "npm:3.0.2"], ["jest-cli", "npm:26.2.2"] ], "linkType": "HARD", }] ]], ["jest-changed-files", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-changed-files-npm-26.2.0-912d24b971-d38d62d2ad.zip/node_modules/jest-changed-files/", "packageDependencies": [ ["jest-changed-files", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["execa", "npm:4.0.0"], ["throat", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["jest-cli", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-cli-npm-26.2.2-b423f168b7-2367a776e5.zip/node_modules/jest-cli/", "packageDependencies": [ ["jest-cli", "npm:26.2.2"], ["@jest/core", "npm:26.2.2"], ["@jest/test-result", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["chalk", "npm:4.0.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", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-validate", "npm:26.2.0"], ["prompts", "npm:2.3.1"], ["yargs", "npm:15.3.1"] ], "linkType": "HARD", }] ]], ["jest-config", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-config-npm-26.2.2-3a4d1369f3-8b0920927a.zip/node_modules/jest-config/", "packageDependencies": [ ["jest-config", "npm:26.2.2"], ["@babel/core", "npm:7.12.10"], ["@jest/test-sequencer", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["babel-jest", "virtual:3a4d1369f3b4e454736247ad15b9ec8d0ca358a1adbfacd4f6ee1b71ea868281c7cc6abe14573afc62674d685f44143ff9537be0d07726afb4d1b7c7244c76ac#npm:26.2.2"], ["chalk", "npm:4.0.0"], ["deepmerge", "npm:4.2.2"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["jest-environment-jsdom", "npm:26.2.0"], ["jest-environment-node", "npm:26.2.0"], ["jest-get-type", "npm:26.0.0"], ["jest-jasmine2", "npm:26.2.2"], ["jest-regex-util", "npm:26.0.0"], ["jest-resolve", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-validate", "npm:26.2.0"], ["micromatch", "npm:4.0.2"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-diff", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-diff-npm-26.2.0-53558e0750-30942bce9a.zip/node_modules/jest-diff/", "packageDependencies": [ ["jest-diff", "npm:26.2.0"], ["chalk", "npm:4.0.0"], ["diff-sequences", "npm:26.0.0"], ["jest-get-type", "npm:26.0.0"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }], ["npm:26.6.2", { "packageLocation": "./.yarn/cache/jest-diff-npm-26.6.2-06ca2a96ca-05d0f1bdba.zip/node_modules/jest-diff/", "packageDependencies": [ ["jest-diff", "npm:26.6.2"], ["chalk", "npm:4.0.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": "./.yarn/cache/jest-docblock-npm-26.0.0-7d0129b0be-54b8ea1c84.zip/node_modules/jest-docblock/", "packageDependencies": [ ["jest-docblock", "npm:26.0.0"], ["detect-newline", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["jest-each", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-each-npm-26.2.0-78e70f3e5c-99487076e6.zip/node_modules/jest-each/", "packageDependencies": [ ["jest-each", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["chalk", "npm:4.0.0"], ["jest-get-type", "npm:26.0.0"], ["jest-util", "npm:26.2.0"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-environment-jsdom", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-environment-jsdom-npm-26.2.0-493360024e-65198f8bc5.zip/node_modules/jest-environment-jsdom/", "packageDependencies": [ ["jest-environment-jsdom", "npm:26.2.0"], ["@jest/environment", "npm:26.2.0"], ["@jest/fake-timers", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["jest-mock", "npm:26.2.0"], ["jest-util", "npm:26.2.0"], ["jsdom", "virtual:493360024e37886e01ced03b14a947cab5656275a1bd19e25178aa6b8535b1975363cf29a3ff8d4fdda34e5c1e95180f77793ccd7aaf5fc88833d564fb2448b2#npm:16.2.2"] ], "linkType": "HARD", }] ]], ["jest-environment-node", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-environment-node-npm-26.2.0-c553e5d122-1d2dad5ff9.zip/node_modules/jest-environment-node/", "packageDependencies": [ ["jest-environment-node", "npm:26.2.0"], ["@jest/environment", "npm:26.2.0"], ["@jest/fake-timers", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["jest-mock", "npm:26.2.0"], ["jest-util", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-get-type", [ ["npm:26.0.0", { "packageLocation": "./.yarn/cache/jest-get-type-npm-26.0.0-32f433dd67-df81e05d3e.zip/node_modules/jest-get-type/", "packageDependencies": [ ["jest-get-type", "npm:26.0.0"] ], "linkType": "HARD", }], ["npm:26.3.0", { "packageLocation": "./.yarn/cache/jest-get-type-npm-26.3.0-a481f14d96-fc3e2d2b90.zip/node_modules/jest-get-type/", "packageDependencies": [ ["jest-get-type", "npm:26.3.0"] ], "linkType": "HARD", }] ]], ["jest-haste-map", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-haste-map-npm-26.2.2-c6543e1b2b-af1cfc77f9.zip/node_modules/jest-haste-map/", "packageDependencies": [ ["jest-haste-map", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["@types/graceful-fs", "npm:4.1.3"], ["@types/node", "npm:13.13.4"], ["anymatch", "npm:3.1.1"], ["fb-watchman", "npm:2.0.1"], ["fsevents", "patch:fsevents@npm%3A2.1.2#builtin::version=2.1.2&hash=11e9ea"], ["graceful-fs", "npm:4.2.4"], ["jest-regex-util", "npm:26.0.0"], ["jest-serializer", "npm:26.2.0"], ["jest-util", "npm:26.2.0"], ["jest-worker", "npm:26.2.1"], ["micromatch", "npm:4.0.2"], ["sane", "npm:4.1.0"], ["walker", "npm:1.0.7"] ], "linkType": "HARD", }] ]], ["jest-jasmine2", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-jasmine2-npm-26.2.2-13dab4f95f-b4aa2bee7c.zip/node_modules/jest-jasmine2/", "packageDependencies": [ ["jest-jasmine2", "npm:26.2.2"], ["@babel/traverse", "npm:7.12.10"], ["@jest/environment", "npm:26.2.0"], ["@jest/source-map", "npm:26.1.0"], ["@jest/test-result", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["chalk", "npm:4.0.0"], ["co", "npm:4.6.0"], ["expect", "npm:26.2.0"], ["is-generator-fn", "npm:2.1.0"], ["jest-each", "npm:26.2.0"], ["jest-matcher-utils", "npm:26.2.0"], ["jest-message-util", "npm:26.2.0"], ["jest-runtime", "npm:26.2.2"], ["jest-snapshot", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["pretty-format", "npm:26.2.0"], ["throat", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["jest-leak-detector", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-leak-detector-npm-26.2.0-ab51e96692-ffccb99b6b.zip/node_modules/jest-leak-detector/", "packageDependencies": [ ["jest-leak-detector", "npm:26.2.0"], ["jest-get-type", "npm:26.0.0"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-matcher-utils", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-matcher-utils-npm-26.2.0-7a9b71ce93-3df11cb202.zip/node_modules/jest-matcher-utils/", "packageDependencies": [ ["jest-matcher-utils", "npm:26.2.0"], ["chalk", "npm:4.0.0"], ["jest-diff", "npm:26.2.0"], ["jest-get-type", "npm:26.0.0"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-message-util", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-message-util-npm-26.2.0-32e0be3974-56d71adf1c.zip/node_modules/jest-message-util/", "packageDependencies": [ ["jest-message-util", "npm:26.2.0"], ["@babel/code-frame", "npm:7.10.4"], ["@jest/types", "npm:26.2.0"], ["@types/stack-utils", "npm:1.0.1"], ["chalk", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"], ["micromatch", "npm:4.0.2"], ["slash", "npm:3.0.0"], ["stack-utils", "npm:2.0.2"] ], "linkType": "HARD", }] ]], ["jest-mock", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-mock-npm-26.2.0-8a2ac380b3-a69f52d63e.zip/node_modules/jest-mock/", "packageDependencies": [ ["jest-mock", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"] ], "linkType": "HARD", }] ]], ["jest-pnp-resolver", [ ["npm:1.2.2", { "packageLocation": "./.yarn/cache/jest-pnp-resolver-npm-1.2.2-da20f8bdfe-d91c86e389.zip/node_modules/jest-pnp-resolver/", "packageDependencies": [ ["jest-pnp-resolver", "npm:1.2.2"] ], "linkType": "SOFT", }], ["virtual:9fea4d59502ab72c22210cfd6f850cf1e11ae703ef6ed3494bd7bf3ac7cfc612e84744f0879b66fd70bc1eb67cfd8761766db00e599fa209d947c78df8ec7d1a#npm:1.2.2", { "packageLocation": "./.yarn/$$virtual/jest-pnp-resolver-virtual-6c143820a3/0/cache/jest-pnp-resolver-npm-1.2.2-da20f8bdfe-d91c86e389.zip/node_modules/jest-pnp-resolver/", "packageDependencies": [ ["jest-pnp-resolver", "virtual:9fea4d59502ab72c22210cfd6f850cf1e11ae703ef6ed3494bd7bf3ac7cfc612e84744f0879b66fd70bc1eb67cfd8761766db00e599fa209d947c78df8ec7d1a#npm:1.2.2"], ["@types/jest-resolve", null], ["jest-resolve", "npm:26.2.2"] ], "packagePeers": [ "@types/jest-resolve", "jest-resolve" ], "linkType": "HARD", }] ]], ["jest-regex-util", [ ["npm:26.0.0", { "packageLocation": "./.yarn/cache/jest-regex-util-npm-26.0.0-310f72dd82-a3d08a852a.zip/node_modules/jest-regex-util/", "packageDependencies": [ ["jest-regex-util", "npm:26.0.0"] ], "linkType": "HARD", }] ]], ["jest-resolve", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-resolve-npm-26.2.2-9fea4d5950-80665c1650.zip/node_modules/jest-resolve/", "packageDependencies": [ ["jest-resolve", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["chalk", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"], ["jest-pnp-resolver", "virtual:9fea4d59502ab72c22210cfd6f850cf1e11ae703ef6ed3494bd7bf3ac7cfc612e84744f0879b66fd70bc1eb67cfd8761766db00e599fa209d947c78df8ec7d1a#npm:1.2.2"], ["jest-util", "npm:26.2.0"], ["read-pkg-up", "npm:7.0.1"], ["resolve", "patch:resolve@npm%3A1.17.0#builtin::version=1.17.0&hash=3388aa"], ["slash", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["jest-resolve-dependencies", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-resolve-dependencies-npm-26.2.2-df5ca9e9d9-55f6a75181.zip/node_modules/jest-resolve-dependencies/", "packageDependencies": [ ["jest-resolve-dependencies", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["jest-regex-util", "npm:26.0.0"], ["jest-snapshot", "npm:26.2.2"] ], "linkType": "HARD", }] ]], ["jest-runner", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-runner-npm-26.2.2-ab9e640cf5-732732b3f8.zip/node_modules/jest-runner/", "packageDependencies": [ ["jest-runner", "npm:26.2.2"], ["@jest/console", "npm:26.2.0"], ["@jest/environment", "npm:26.2.0"], ["@jest/test-result", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["chalk", "npm:4.0.0"], ["emittery", "npm:0.7.1"], ["exit", "npm:0.1.2"], ["graceful-fs", "npm:4.2.4"], ["jest-config", "npm:26.2.2"], ["jest-docblock", "npm:26.0.0"], ["jest-haste-map", "npm:26.2.2"], ["jest-leak-detector", "npm:26.2.0"], ["jest-message-util", "npm:26.2.0"], ["jest-resolve", "npm:26.2.2"], ["jest-runtime", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-worker", "npm:26.2.1"], ["source-map-support", "npm:0.5.16"], ["throat", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["jest-runtime", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-runtime-npm-26.2.2-f4d5ffde42-8956e3a15e.zip/node_modules/jest-runtime/", "packageDependencies": [ ["jest-runtime", "npm:26.2.2"], ["@jest/console", "npm:26.2.0"], ["@jest/environment", "npm:26.2.0"], ["@jest/fake-timers", "npm:26.2.0"], ["@jest/globals", "npm:26.2.0"], ["@jest/source-map", "npm:26.1.0"], ["@jest/test-result", "npm:26.2.0"], ["@jest/transform", "npm:26.2.2"], ["@jest/types", "npm:26.2.0"], ["@types/yargs", "npm:15.0.4"], ["chalk", "npm:4.0.0"], ["collect-v8-coverage", "npm:1.0.0"], ["exit", "npm:0.1.2"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["jest-config", "npm:26.2.2"], ["jest-haste-map", "npm:26.2.2"], ["jest-message-util", "npm:26.2.0"], ["jest-mock", "npm:26.2.0"], ["jest-regex-util", "npm:26.0.0"], ["jest-resolve", "npm:26.2.2"], ["jest-snapshot", "npm:26.2.2"], ["jest-util", "npm:26.2.0"], ["jest-validate", "npm:26.2.0"], ["slash", "npm:3.0.0"], ["strip-bom", "npm:4.0.0"], ["yargs", "npm:15.3.1"] ], "linkType": "HARD", }] ]], ["jest-serializer", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-serializer-npm-26.2.0-cb917afc02-7ce0ef906d.zip/node_modules/jest-serializer/", "packageDependencies": [ ["jest-serializer", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["graceful-fs", "npm:4.2.4"] ], "linkType": "HARD", }] ]], ["jest-snapshot", [ ["npm:26.2.2", { "packageLocation": "./.yarn/cache/jest-snapshot-npm-26.2.2-2508403e51-87367f25a9.zip/node_modules/jest-snapshot/", "packageDependencies": [ ["jest-snapshot", "npm:26.2.2"], ["@babel/types", "npm:7.12.10"], ["@jest/types", "npm:26.2.0"], ["@types/prettier", "npm:2.0.0"], ["chalk", "npm:4.0.0"], ["expect", "npm:26.2.0"], ["graceful-fs", "npm:4.2.4"], ["jest-diff", "npm:26.2.0"], ["jest-get-type", "npm:26.0.0"], ["jest-haste-map", "npm:26.2.2"], ["jest-matcher-utils", "npm:26.2.0"], ["jest-message-util", "npm:26.2.0"], ["jest-resolve", "npm:26.2.2"], ["natural-compare", "npm:1.4.0"], ["pretty-format", "npm:26.2.0"], ["semver", "npm:7.3.2"] ], "linkType": "HARD", }] ]], ["jest-util", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-util-npm-26.2.0-b3974bbc16-5989debfaf.zip/node_modules/jest-util/", "packageDependencies": [ ["jest-util", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["chalk", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"], ["is-ci", "npm:2.0.0"], ["micromatch", "npm:4.0.2"] ], "linkType": "HARD", }] ]], ["jest-validate", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-validate-npm-26.2.0-bfe6ea5ac5-8059509fc1.zip/node_modules/jest-validate/", "packageDependencies": [ ["jest-validate", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["camelcase", "npm:6.0.0"], ["chalk", "npm:4.0.0"], ["jest-get-type", "npm:26.0.0"], ["leven", "npm:3.1.0"], ["pretty-format", "npm:26.2.0"] ], "linkType": "HARD", }] ]], ["jest-watcher", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/jest-watcher-npm-26.2.0-286e50b6ea-9afc2405d6.zip/node_modules/jest-watcher/", "packageDependencies": [ ["jest-watcher", "npm:26.2.0"], ["@jest/test-result", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["@types/node", "npm:13.13.4"], ["ansi-escapes", "npm:4.3.0"], ["chalk", "npm:4.0.0"], ["jest-util", "npm:26.2.0"], ["string-length", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["jest-worker", [ ["npm:26.2.1", { "packageLocation": "./.yarn/cache/jest-worker-npm-26.2.1-aa43c8862f-ec735534aa.zip/node_modules/jest-worker/", "packageDependencies": [ ["jest-worker", "npm:26.2.1"], ["@types/node", "npm:13.13.4"], ["merge-stream", "npm:2.0.0"], ["supports-color", "npm:7.1.0"] ], "linkType": "HARD", }] ]], ["js-tokens", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/js-tokens-npm-4.0.0-0ac852e9e2-1fc4e4667a.zip/node_modules/js-tokens/", "packageDependencies": [ ["js-tokens", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["js-yaml", [ ["npm:3.13.1", { "packageLocation": "./.yarn/cache/js-yaml-npm-3.13.1-3a28ff3b75-277157fdf2.zip/node_modules/js-yaml/", "packageDependencies": [ ["js-yaml", "npm:3.13.1"], ["argparse", "npm:1.0.10"], ["esprima", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["jsbn", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/jsbn-npm-0.1.1-0eb7132404-b530d48a64.zip/node_modules/jsbn/", "packageDependencies": [ ["jsbn", "npm:0.1.1"] ], "linkType": "HARD", }] ]], ["jsdom", [ ["npm:16.2.2", { "packageLocation": "./.yarn/cache/jsdom-npm-16.2.2-a08c488cbe-a03c244490.zip/node_modules/jsdom/", "packageDependencies": [ ["jsdom", "npm:16.2.2"] ], "linkType": "SOFT", }], ["virtual:493360024e37886e01ced03b14a947cab5656275a1bd19e25178aa6b8535b1975363cf29a3ff8d4fdda34e5c1e95180f77793ccd7aaf5fc88833d564fb2448b2#npm:16.2.2", { "packageLocation": "./.yarn/$$virtual/jsdom-virtual-742a132ed2/0/cache/jsdom-npm-16.2.2-a08c488cbe-a03c244490.zip/node_modules/jsdom/", "packageDependencies": [ ["jsdom", "virtual:493360024e37886e01ced03b14a947cab5656275a1bd19e25178aa6b8535b1975363cf29a3ff8d4fdda34e5c1e95180f77793ccd7aaf5fc88833d564fb2448b2#npm:16.2.2"], ["@types/canvas", null], ["abab", "npm:2.0.3"], ["acorn", "npm:7.1.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.0"], ["domexception", "npm:2.0.1"], ["escodegen", "npm:1.14.1"], ["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:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:1.0.8"], ["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.0.0"], ["ws", "virtual:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:7.2.5"], ["xml-name-validator", "npm:3.0.0"] ], "packagePeers": [ "@types/canvas", "canvas" ], "linkType": "HARD", }] ]], ["jsesc", [ ["npm:0.5.0", { "packageLocation": "./.yarn/cache/jsesc-npm-0.5.0-6827074492-1e4574920d.zip/node_modules/jsesc/", "packageDependencies": [ ["jsesc", "npm:0.5.0"] ], "linkType": "HARD", }], ["npm:2.5.2", { "packageLocation": "./.yarn/cache/jsesc-npm-2.5.2-c5acb78804-ca91ec33d7.zip/node_modules/jsesc/", "packageDependencies": [ ["jsesc", "npm:2.5.2"] ], "linkType": "HARD", }] ]], ["json-parse-better-errors", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/json-parse-better-errors-npm-1.0.2-7f37637d19-b4c4f0e43b.zip/node_modules/json-parse-better-errors/", "packageDependencies": [ ["json-parse-better-errors", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["json-schema", [ ["npm:0.2.3", { "packageLocation": "./.yarn/cache/json-schema-npm-0.2.3-018ee3dfc9-d382ea841f.zip/node_modules/json-schema/", "packageDependencies": [ ["json-schema", "npm:0.2.3"] ], "linkType": "HARD", }] ]], ["json-schema-traverse", [ ["npm:0.4.1", { "packageLocation": "./.yarn/cache/json-schema-traverse-npm-0.4.1-4759091693-6f71bddba3.zip/node_modules/json-schema-traverse/", "packageDependencies": [ ["json-schema-traverse", "npm:0.4.1"] ], "linkType": "HARD", }] ]], ["json-stable-stringify-without-jsonify", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/json-stable-stringify-without-jsonify-npm-1.0.1-b65772b28b-a01b6c6541.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": "./.yarn/cache/json-stringify-safe-npm-5.0.1-064ddd6ab4-261dfb8eb3.zip/node_modules/json-stringify-safe/", "packageDependencies": [ ["json-stringify-safe", "npm:5.0.1"] ], "linkType": "HARD", }] ]], ["json5", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/json5-npm-1.0.1-647fc8794b-df41624f9f.zip/node_modules/json5/", "packageDependencies": [ ["json5", "npm:1.0.1"], ["minimist", "npm:1.2.5"] ], "linkType": "HARD", }], ["npm:2.1.3", { "packageLocation": "./.yarn/cache/json5-npm-2.1.3-b71ec6bcca-957e493710.zip/node_modules/json5/", "packageDependencies": [ ["json5", "npm:2.1.3"], ["minimist", "npm:1.2.5"] ], "linkType": "HARD", }] ]], ["jsonfile", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/jsonfile-npm-4.0.0-10ce3aea15-a40b7b64da.zip/node_modules/jsonfile/", "packageDependencies": [ ["jsonfile", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"] ], "linkType": "HARD", }] ]], ["jsonparse", [ ["npm:1.3.1", { "packageLocation": "./.yarn/cache/jsonparse-npm-1.3.1-b6fde74828-6669acd7b3.zip/node_modules/jsonparse/", "packageDependencies": [ ["jsonparse", "npm:1.3.1"] ], "linkType": "HARD", }] ]], ["jsprim", [ ["npm:1.4.1", { "packageLocation": "./.yarn/cache/jsprim-npm-1.4.1-948d2c9ec3-ee0177b7ef.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", }] ]], ["kind-of", [ ["npm:3.2.2", { "packageLocation": "./.yarn/cache/kind-of-npm-3.2.2-7deaffa5f9-e8a1835c4b.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": "./.yarn/cache/kind-of-npm-4.0.0-69fd153375-2e7296c614.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": "./.yarn/cache/kind-of-npm-5.1.0-ce82f43eaa-c98cfe70c8.zip/node_modules/kind-of/", "packageDependencies": [ ["kind-of", "npm:5.1.0"] ], "linkType": "HARD", }], ["npm:6.0.3", { "packageLocation": "./.yarn/cache/kind-of-npm-6.0.3-ab15f36220-5de5d65777.zip/node_modules/kind-of/", "packageDependencies": [ ["kind-of", "npm:6.0.3"] ], "linkType": "HARD", }] ]], ["kleur", [ ["npm:3.0.3", { "packageLocation": "./.yarn/cache/kleur-npm-3.0.3-f6f53649a4-20ef0e37fb.zip/node_modules/kleur/", "packageDependencies": [ ["kleur", "npm:3.0.3"] ], "linkType": "HARD", }] ]], ["latest-version", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/latest-version-npm-3.1.0-deb049c563-117b4a315a.zip/node_modules/latest-version/", "packageDependencies": [ ["latest-version", "npm:3.1.0"], ["package-json", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["lazy-property", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/lazy-property-npm-1.0.0-9a867181de-044398ec15.zip/node_modules/lazy-property/", "packageDependencies": [ ["lazy-property", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["lcid", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/lcid-npm-1.0.0-02d845072b-36f50f8be9.zip/node_modules/lcid/", "packageDependencies": [ ["lcid", "npm:1.0.0"], ["invert-kv", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/lcid-npm-2.0.0-504d7cb4c6-147695e053.zip/node_modules/lcid/", "packageDependencies": [ ["lcid", "npm:2.0.0"], ["invert-kv", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["leven", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/leven-npm-3.1.0-b7697736a3-6ebca75298.zip/node_modules/leven/", "packageDependencies": [ ["leven", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["levenary", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/levenary-npm-1.1.1-10ba3797a5-6d3b78e395.zip/node_modules/levenary/", "packageDependencies": [ ["levenary", "npm:1.1.1"], ["leven", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["levn", [ ["npm:0.3.0", { "packageLocation": "./.yarn/cache/levn-npm-0.3.0-48d774b1c2-775861da38.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": "./.yarn/cache/levn-npm-0.4.1-d183b2d7bb-2f6ddfb0b9.zip/node_modules/levn/", "packageDependencies": [ ["levn", "npm:0.4.1"], ["prelude-ls", "npm:1.2.1"], ["type-check", "npm:0.4.0"] ], "linkType": "HARD", }] ]], ["libcipm", [ ["npm:4.0.8", { "packageLocation": "./.yarn/cache/libcipm-npm-4.0.8-5c219aa316-ee91370fe1.zip/node_modules/libcipm/", "packageDependencies": [ ["libcipm", "npm:4.0.8"], ["bin-links", "npm:1.1.8"], ["bluebird", "npm:3.7.2"], ["figgy-pudding", "npm:3.5.2"], ["find-npm-prefix", "npm:1.0.2"], ["graceful-fs", "npm:4.2.4"], ["ini", "npm:1.3.7"], ["lock-verify", "npm:2.2.0"], ["mkdirp", "npm:0.5.5"], ["npm-lifecycle", "npm:3.1.5"], ["npm-logical-tree", "npm:1.2.1"], ["npm-package-arg", "npm:6.1.1"], ["pacote", "npm:9.5.12"], ["read-package-json", "npm:2.1.1"], ["rimraf", "npm:2.7.1"], ["worker-farm", "npm:1.7.0"] ], "linkType": "HARD", }] ]], ["libnpm", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/libnpm-npm-3.0.1-b2a1cc7f5e-419df47e25.zip/node_modules/libnpm/", "packageDependencies": [ ["libnpm", "npm:3.0.1"], ["bin-links", "npm:1.1.8"], ["bluebird", "npm:3.7.2"], ["find-npm-prefix", "npm:1.0.2"], ["libnpmaccess", "npm:3.0.2"], ["libnpmconfig", "npm:1.2.1"], ["libnpmhook", "npm:5.0.3"], ["libnpmorg", "npm:1.0.1"], ["libnpmpublish", "npm:1.1.3"], ["libnpmsearch", "npm:2.0.2"], ["libnpmteam", "npm:1.0.2"], ["lock-verify", "npm:2.2.0"], ["npm-lifecycle", "npm:3.1.5"], ["npm-logical-tree", "npm:1.2.1"], ["npm-package-arg", "npm:6.1.1"], ["npm-profile", "npm:4.0.4"], ["npm-registry-fetch", "npm:4.0.5"], ["npmlog", "npm:4.1.2"], ["pacote", "npm:9.5.12"], ["read-package-json", "npm:2.1.1"], ["stringify-package", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["libnpmaccess", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/libnpmaccess-npm-3.0.2-95f91994de-254b21ed46.zip/node_modules/libnpmaccess/", "packageDependencies": [ ["libnpmaccess", "npm:3.0.2"], ["aproba", "npm:2.0.0"], ["get-stream", "npm:4.1.0"], ["npm-package-arg", "npm:6.1.1"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["libnpmconfig", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/libnpmconfig-npm-1.2.1-5e1c5669c9-4eda87cad0.zip/node_modules/libnpmconfig/", "packageDependencies": [ ["libnpmconfig", "npm:1.2.1"], ["figgy-pudding", "npm:3.5.2"], ["find-up", "npm:3.0.0"], ["ini", "npm:1.3.7"] ], "linkType": "HARD", }] ]], ["libnpmhook", [ ["npm:5.0.3", { "packageLocation": "./.yarn/cache/libnpmhook-npm-5.0.3-037cbefe30-08bd4a1d2b.zip/node_modules/libnpmhook/", "packageDependencies": [ ["libnpmhook", "npm:5.0.3"], ["aproba", "npm:2.0.0"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["libnpmorg", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/libnpmorg-npm-1.0.1-bef6bf576d-d96ea3953e.zip/node_modules/libnpmorg/", "packageDependencies": [ ["libnpmorg", "npm:1.0.1"], ["aproba", "npm:2.0.0"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["libnpmpublish", [ ["npm:1.1.3", { "packageLocation": "./.yarn/cache/libnpmpublish-npm-1.1.3-bf1c626e4b-0c49f8b9c4.zip/node_modules/libnpmpublish/", "packageDependencies": [ ["libnpmpublish", "npm:1.1.3"], ["aproba", "npm:2.0.0"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["lodash.clonedeep", "npm:4.5.0"], ["normalize-package-data", "npm:2.5.0"], ["npm-package-arg", "npm:6.1.1"], ["npm-registry-fetch", "npm:4.0.5"], ["semver", "npm:5.7.1"], ["ssri", "npm:6.0.1"] ], "linkType": "HARD", }] ]], ["libnpmsearch", [ ["npm:2.0.2", { "packageLocation": "./.yarn/cache/libnpmsearch-npm-2.0.2-232bd09717-f7afb87403.zip/node_modules/libnpmsearch/", "packageDependencies": [ ["libnpmsearch", "npm:2.0.2"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["libnpmteam", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/libnpmteam-npm-1.0.2-9dc039f0f2-f7256905e2.zip/node_modules/libnpmteam/", "packageDependencies": [ ["libnpmteam", "npm:1.0.2"], ["aproba", "npm:2.0.0"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["libnpx", [ ["npm:10.2.3", { "packageLocation": "./.yarn/cache/libnpx-npm-10.2.3-e706497a5e-766cc3bb2f.zip/node_modules/libnpx/", "packageDependencies": [ ["libnpx", "npm:10.2.3"], ["dotenv", "npm:5.0.1"], ["npm-package-arg", "npm:6.1.1"], ["rimraf", "npm:2.7.1"], ["safe-buffer", "npm:5.2.1"], ["update-notifier", "npm:2.5.0"], ["which", "npm:1.3.1"], ["y18n", "npm:4.0.0"], ["yargs", "npm:11.1.1"] ], "linkType": "HARD", }] ]], ["lines-and-columns", [ ["npm:1.1.6", { "packageLocation": "./.yarn/cache/lines-and-columns-npm-1.1.6-23e74fab67-798b80ed7a.zip/node_modules/lines-and-columns/", "packageDependencies": [ ["lines-and-columns", "npm:1.1.6"] ], "linkType": "HARD", }] ]], ["load-json-file", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/load-json-file-npm-2.0.0-9317df26fa-c6ea93d360.zip/node_modules/load-json-file/", "packageDependencies": [ ["load-json-file", "npm:2.0.0"], ["graceful-fs", "npm:4.2.4"], ["parse-json", "npm:2.2.0"], ["pify", "npm:2.3.0"], ["strip-bom", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/load-json-file-npm-4.0.0-c9f09d85eb-692f33387b.zip/node_modules/load-json-file/", "packageDependencies": [ ["load-json-file", "npm:4.0.0"], ["graceful-fs", "npm:4.2.4"], ["parse-json", "npm:4.0.0"], ["pify", "npm:3.0.0"], ["strip-bom", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["locate-path", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/locate-path-npm-2.0.0-673d28b0ea-ee5a888d68.zip/node_modules/locate-path/", "packageDependencies": [ ["locate-path", "npm:2.0.0"], ["p-locate", "npm:2.0.0"], ["path-exists", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/locate-path-npm-3.0.0-991671ae9f-0b6bf0c1bb.zip/node_modules/locate-path/", "packageDependencies": [ ["locate-path", "npm:3.0.0"], ["p-locate", "npm:3.0.0"], ["path-exists", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/locate-path-npm-5.0.0-46580c43e4-c58f49d45c.zip/node_modules/locate-path/", "packageDependencies": [ ["locate-path", "npm:5.0.0"], ["p-locate", "npm:4.1.0"] ], "linkType": "HARD", }] ]], ["lock-verify", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/lock-verify-npm-2.2.0-afb03db9bc-a49636e287.zip/node_modules/lock-verify/", "packageDependencies": [ ["lock-verify", "npm:2.2.0"], ["@iarna/cli", "npm:1.2.0"], ["npm-package-arg", "npm:6.1.1"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }] ]], ["lockfile", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/lockfile-npm-1.0.4-00301b5723-b7e33be977.zip/node_modules/lockfile/", "packageDependencies": [ ["lockfile", "npm:1.0.4"], ["signal-exit", "npm:3.0.3"] ], "linkType": "HARD", }] ]], ["lodash", [ ["npm:4.17.19", { "packageLocation": "./.yarn/cache/lodash-npm-4.17.19-fa87a8e838-ff2b7a95f0.zip/node_modules/lodash/", "packageDependencies": [ ["lodash", "npm:4.17.19"] ], "linkType": "HARD", }] ]], ["lodash._baseindexof", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/lodash._baseindexof-npm-3.1.0-33cc4e3a6b-79a34e4f45.zip/node_modules/lodash._baseindexof/", "packageDependencies": [ ["lodash._baseindexof", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["lodash._baseuniq", [ ["npm:4.6.0", { "packageLocation": "./.yarn/cache/lodash._baseuniq-npm-4.6.0-a98f6ab38a-913c3698f3.zip/node_modules/lodash._baseuniq/", "packageDependencies": [ ["lodash._baseuniq", "npm:4.6.0"], ["lodash._createset", "npm:4.0.3"], ["lodash._root", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["lodash._bindcallback", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/lodash._bindcallback-npm-3.0.1-0110b1b18e-d736299ead.zip/node_modules/lodash._bindcallback/", "packageDependencies": [ ["lodash._bindcallback", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["lodash._cacheindexof", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/lodash._cacheindexof-npm-3.0.2-ba540306fe-96b978dc28.zip/node_modules/lodash._cacheindexof/", "packageDependencies": [ ["lodash._cacheindexof", "npm:3.0.2"] ], "linkType": "HARD", }] ]], ["lodash._createcache", [ ["npm:3.1.2", { "packageLocation": "./.yarn/cache/lodash._createcache-npm-3.1.2-b5aeba86fb-37f251854e.zip/node_modules/lodash._createcache/", "packageDependencies": [ ["lodash._createcache", "npm:3.1.2"], ["lodash._getnative", "npm:3.9.1"] ], "linkType": "HARD", }] ]], ["lodash._createset", [ ["npm:4.0.3", { "packageLocation": "./.yarn/cache/lodash._createset-npm-4.0.3-f7693e6ae0-22c1890453.zip/node_modules/lodash._createset/", "packageDependencies": [ ["lodash._createset", "npm:4.0.3"] ], "linkType": "HARD", }] ]], ["lodash._getnative", [ ["npm:3.9.1", { "packageLocation": "./.yarn/cache/lodash._getnative-npm-3.9.1-6d612ef543-0be75345c6.zip/node_modules/lodash._getnative/", "packageDependencies": [ ["lodash._getnative", "npm:3.9.1"] ], "linkType": "HARD", }] ]], ["lodash._root", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/lodash._root-npm-3.0.1-fd9c45051c-9fc348b122.zip/node_modules/lodash._root/", "packageDependencies": [ ["lodash._root", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["lodash.capitalize", [ ["npm:4.2.1", { "packageLocation": "./.yarn/cache/lodash.capitalize-npm-4.2.1-fe742c2310-966d04011e.zip/node_modules/lodash.capitalize/", "packageDependencies": [ ["lodash.capitalize", "npm:4.2.1"] ], "linkType": "HARD", }] ]], ["lodash.clonedeep", [ ["npm:4.5.0", { "packageLocation": "./.yarn/cache/lodash.clonedeep-npm-4.5.0-fbc3cda4e5-41e2fe4c57.zip/node_modules/lodash.clonedeep/", "packageDependencies": [ ["lodash.clonedeep", "npm:4.5.0"] ], "linkType": "HARD", }] ]], ["lodash.escaperegexp", [ ["npm:4.1.2", { "packageLocation": "./.yarn/cache/lodash.escaperegexp-npm-4.1.2-c5b90e0e9c-475d069cda.zip/node_modules/lodash.escaperegexp/", "packageDependencies": [ ["lodash.escaperegexp", "npm:4.1.2"] ], "linkType": "HARD", }] ]], ["lodash.ismatch", [ ["npm:4.4.0", { "packageLocation": "./.yarn/cache/lodash.ismatch-npm-4.4.0-e538fd6c3d-f6e3ef9fd3.zip/node_modules/lodash.ismatch/", "packageDependencies": [ ["lodash.ismatch", "npm:4.4.0"] ], "linkType": "HARD", }] ]], ["lodash.isplainobject", [ ["npm:4.0.6", { "packageLocation": "./.yarn/cache/lodash.isplainobject-npm-4.0.6-d73937742f-72a114b610.zip/node_modules/lodash.isplainobject/", "packageDependencies": [ ["lodash.isplainobject", "npm:4.0.6"] ], "linkType": "HARD", }] ]], ["lodash.isstring", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/lodash.isstring-npm-4.0.1-721fee791c-20c46960b7.zip/node_modules/lodash.isstring/", "packageDependencies": [ ["lodash.isstring", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["lodash.restparam", [ ["npm:3.6.1", { "packageLocation": "./.yarn/cache/lodash.restparam-npm-3.6.1-1f9bdbdcf2-04f731cff2.zip/node_modules/lodash.restparam/", "packageDependencies": [ ["lodash.restparam", "npm:3.6.1"] ], "linkType": "HARD", }] ]], ["lodash.sortby", [ ["npm:4.7.0", { "packageLocation": "./.yarn/cache/lodash.sortby-npm-4.7.0-fda8ab950d-43cde11276.zip/node_modules/lodash.sortby/", "packageDependencies": [ ["lodash.sortby", "npm:4.7.0"] ], "linkType": "HARD", }] ]], ["lodash.toarray", [ ["npm:4.4.0", { "packageLocation": "./.yarn/cache/lodash.toarray-npm-4.4.0-e7e700a242-f2b8de1812.zip/node_modules/lodash.toarray/", "packageDependencies": [ ["lodash.toarray", "npm:4.4.0"] ], "linkType": "HARD", }] ]], ["lodash.union", [ ["npm:4.6.0", { "packageLocation": "./.yarn/cache/lodash.union-npm-4.6.0-8c9e2d9292-058abf102e.zip/node_modules/lodash.union/", "packageDependencies": [ ["lodash.union", "npm:4.6.0"] ], "linkType": "HARD", }] ]], ["lodash.uniq", [ ["npm:4.5.0", { "packageLocation": "./.yarn/cache/lodash.uniq-npm-4.5.0-7c270dca85-47cb25b59b.zip/node_modules/lodash.uniq/", "packageDependencies": [ ["lodash.uniq", "npm:4.5.0"] ], "linkType": "HARD", }] ]], ["lodash.uniqby", [ ["npm:4.7.0", { "packageLocation": "./.yarn/cache/lodash.uniqby-npm-4.7.0-8d0bd68e95-bea225431a.zip/node_modules/lodash.uniqby/", "packageDependencies": [ ["lodash.uniqby", "npm:4.7.0"] ], "linkType": "HARD", }] ]], ["lodash.without", [ ["npm:4.4.0", { "packageLocation": "./.yarn/cache/lodash.without-npm-4.4.0-d6341490b4-3a6ab61a25.zip/node_modules/lodash.without/", "packageDependencies": [ ["lodash.without", "npm:4.4.0"] ], "linkType": "HARD", }] ]], ["loose-envify", [ ["npm:1.4.0", { "packageLocation": "./.yarn/cache/loose-envify-npm-1.4.0-6307b72ccf-5c3b47bbe5.zip/node_modules/loose-envify/", "packageDependencies": [ ["loose-envify", "npm:1.4.0"], ["js-tokens", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["loud-rejection", [ ["npm:1.6.0", { "packageLocation": "./.yarn/cache/loud-rejection-npm-1.6.0-1d4b7666c5-9d57f7bc81.zip/node_modules/loud-rejection/", "packageDependencies": [ ["loud-rejection", "npm:1.6.0"], ["currently-unhandled", "npm:0.4.1"], ["signal-exit", "npm:3.0.3"] ], "linkType": "HARD", }] ]], ["lowercase-keys", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/lowercase-keys-npm-1.0.1-0979e653b8-ac9d79c47d.zip/node_modules/lowercase-keys/", "packageDependencies": [ ["lowercase-keys", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["lru-cache", [ ["npm:4.1.5", { "packageLocation": "./.yarn/cache/lru-cache-npm-4.1.5-ede304cc43-6a098d2362.zip/node_modules/lru-cache/", "packageDependencies": [ ["lru-cache", "npm:4.1.5"], ["pseudomap", "npm:1.0.2"], ["yallist", "npm:2.1.2"] ], "linkType": "HARD", }], ["npm:5.1.1", { "packageLocation": "./.yarn/cache/lru-cache-npm-5.1.1-f475882a51-ffd9a280fa.zip/node_modules/lru-cache/", "packageDependencies": [ ["lru-cache", "npm:5.1.1"], ["yallist", "npm:3.1.1"] ], "linkType": "HARD", }] ]], ["macos-release", [ ["npm:2.3.0", { "packageLocation": "./.yarn/cache/macos-release-npm-2.3.0-68f3012f58-c7752fb29b.zip/node_modules/macos-release/", "packageDependencies": [ ["macos-release", "npm:2.3.0"] ], "linkType": "HARD", }] ]], ["make-dir", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/make-dir-npm-1.3.0-692810d225-20a14043c6.zip/node_modules/make-dir/", "packageDependencies": [ ["make-dir", "npm:1.3.0"], ["pify", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/make-dir-npm-2.1.0-1ddaf205e7-94e2ab9dda.zip/node_modules/make-dir/", "packageDependencies": [ ["make-dir", "npm:2.1.0"], ["pify", "npm:4.0.1"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }], ["npm:3.0.2", { "packageLocation": "./.yarn/cache/make-dir-npm-3.0.2-b7b9bd0dd2-ed464f0836.zip/node_modules/make-dir/", "packageDependencies": [ ["make-dir", "npm:3.0.2"], ["semver", "npm:6.3.0"] ], "linkType": "HARD", }] ]], ["make-fetch-happen", [ ["npm:5.0.2", { "packageLocation": "./.yarn/cache/make-fetch-happen-npm-5.0.2-4da3d5b759-7d3a954422.zip/node_modules/make-fetch-happen/", "packageDependencies": [ ["make-fetch-happen", "npm:5.0.2"], ["agentkeepalive", "npm:3.5.2"], ["cacache", "npm:12.0.4"], ["http-cache-semantics", "npm:3.8.1"], ["http-proxy-agent", "npm:2.1.0"], ["https-proxy-agent", "npm:2.2.4"], ["lru-cache", "npm:5.1.1"], ["mississippi", "npm:3.0.0"], ["node-fetch-npm", "npm:2.0.4"], ["promise-retry", "npm:1.1.1"], ["socks-proxy-agent", "npm:4.0.2"], ["ssri", "npm:6.0.1"] ], "linkType": "HARD", }] ]], ["makeerror", [ ["npm:1.0.11", { "packageLocation": "./.yarn/cache/makeerror-npm-1.0.11-f7d070b73c-582016a5e8.zip/node_modules/makeerror/", "packageDependencies": [ ["makeerror", "npm:1.0.11"], ["tmpl", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["map-age-cleaner", [ ["npm:0.1.3", { "packageLocation": "./.yarn/cache/map-age-cleaner-npm-0.1.3-fd9e4b4aff-0f0b811492.zip/node_modules/map-age-cleaner/", "packageDependencies": [ ["map-age-cleaner", "npm:0.1.3"], ["p-defer", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["map-cache", [ ["npm:0.2.2", { "packageLocation": "./.yarn/cache/map-cache-npm-0.2.2-1620199b05-3d205d20e0.zip/node_modules/map-cache/", "packageDependencies": [ ["map-cache", "npm:0.2.2"] ], "linkType": "HARD", }] ]], ["map-obj", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/map-obj-npm-1.0.1-fa55100fac-e68b20e4fa.zip/node_modules/map-obj/", "packageDependencies": [ ["map-obj", "npm:1.0.1"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/map-obj-npm-2.0.0-a2180764a9-fbb18029a2.zip/node_modules/map-obj/", "packageDependencies": [ ["map-obj", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["map-visit", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/map-visit-npm-1.0.0-33a7988a9d-9e85e6d802.zip/node_modules/map-visit/", "packageDependencies": [ ["map-visit", "npm:1.0.0"], ["object-visit", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["marked", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/marked-npm-1.0.0-520c82f8f1-4121f2f5cb.zip/node_modules/marked/", "packageDependencies": [ ["marked", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["marked-terminal", [ ["npm:4.0.0", { "packageLocation": "./.yarn/cache/marked-terminal-npm-4.0.0-f75367fcd7-224018e3b7.zip/node_modules/marked-terminal/", "packageDependencies": [ ["marked-terminal", "npm:4.0.0"] ], "linkType": "SOFT", }], ["virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:4.0.0", { "packageLocation": "./.yarn/$$virtual/marked-terminal-virtual-edf3218d89/0/cache/marked-terminal-npm-4.0.0-f75367fcd7-224018e3b7.zip/node_modules/marked-terminal/", "packageDependencies": [ ["marked-terminal", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:4.0.0"], ["@types/marked", null], ["ansi-escapes", "npm:4.3.0"], ["cardinal", "npm:2.1.1"], ["chalk", "npm:3.0.0"], ["cli-table", "npm:0.3.1"], ["marked", "npm:1.0.0"], ["node-emoji", "npm:1.10.0"], ["supports-hyperlinks", "npm:2.1.0"] ], "packagePeers": [ "@types/marked", "marked" ], "linkType": "HARD", }] ]], ["meant", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/meant-npm-1.0.1-f80883f548-423ab7f5c9.zip/node_modules/meant/", "packageDependencies": [ ["meant", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["mem", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/mem-npm-1.1.0-378e93209a-53739528aa.zip/node_modules/mem/", "packageDependencies": [ ["mem", "npm:1.1.0"], ["mimic-fn", "npm:1.2.0"] ], "linkType": "HARD", }], ["npm:4.3.0", { "packageLocation": "./.yarn/cache/mem-npm-4.3.0-c2a9c75d92-3af1ac31ef.zip/node_modules/mem/", "packageDependencies": [ ["mem", "npm:4.3.0"], ["map-age-cleaner", "npm:0.1.3"], ["mimic-fn", "npm:2.1.0"], ["p-is-promise", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["meow", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/meow-npm-5.0.0-d4fc9726f1-c6093078a0.zip/node_modules/meow/", "packageDependencies": [ ["meow", "npm:5.0.0"], ["camelcase-keys", "npm:4.2.0"], ["decamelize-keys", "npm:1.1.0"], ["loud-rejection", "npm:1.6.0"], ["minimist-options", "npm:3.0.2"], ["normalize-package-data", "npm:2.5.0"], ["read-pkg-up", "npm:3.0.0"], ["redent", "npm:2.0.0"], ["trim-newlines", "npm:2.0.0"], ["yargs-parser", "npm:10.1.0"] ], "linkType": "HARD", }] ]], ["merge-stream", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/merge-stream-npm-2.0.0-2ac83efea5-cde834809a.zip/node_modules/merge-stream/", "packageDependencies": [ ["merge-stream", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["merge2", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/merge2-npm-1.3.0-a272445bb5-0b2ffca431.zip/node_modules/merge2/", "packageDependencies": [ ["merge2", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["micromatch", [ ["npm:3.1.10", { "packageLocation": "./.yarn/cache/micromatch-npm-3.1.10-016e80c79d-a60e73539a.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": "./.yarn/cache/micromatch-npm-4.0.2-f059c00e51-0cb0e11d64.zip/node_modules/micromatch/", "packageDependencies": [ ["micromatch", "npm:4.0.2"], ["braces", "npm:3.0.2"], ["picomatch", "npm:2.2.1"] ], "linkType": "HARD", }] ]], ["mime", [ ["npm:2.4.4", { "packageLocation": "./.yarn/cache/mime-npm-2.4.4-b1c30f0777-1507e1df97.zip/node_modules/mime/", "packageDependencies": [ ["mime", "npm:2.4.4"] ], "linkType": "HARD", }] ]], ["mime-db", [ ["npm:1.44.0", { "packageLocation": "./.yarn/cache/mime-db-npm-1.44.0-d6ab7b4e20-b4e3b21414.zip/node_modules/mime-db/", "packageDependencies": [ ["mime-db", "npm:1.44.0"] ], "linkType": "HARD", }] ]], ["mime-types", [ ["npm:2.1.27", { "packageLocation": "./.yarn/cache/mime-types-npm-2.1.27-bbebca8e17-51fe2f2c08.zip/node_modules/mime-types/", "packageDependencies": [ ["mime-types", "npm:2.1.27"], ["mime-db", "npm:1.44.0"] ], "linkType": "HARD", }] ]], ["mimic-fn", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/mimic-fn-npm-1.2.0-960bf15ab7-159155e209.zip/node_modules/mimic-fn/", "packageDependencies": [ ["mimic-fn", "npm:1.2.0"] ], "linkType": "HARD", }], ["npm:2.1.0", { "packageLocation": "./.yarn/cache/mimic-fn-npm-2.1.0-4fbeb3abb4-f7d2d7febe.zip/node_modules/mimic-fn/", "packageDependencies": [ ["mimic-fn", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["minimatch", [ ["npm:3.0.4", { "packageLocation": "./.yarn/cache/minimatch-npm-3.0.4-6e76f51c23-47eab92639.zip/node_modules/minimatch/", "packageDependencies": [ ["minimatch", "npm:3.0.4"], ["brace-expansion", "npm:1.1.11"] ], "linkType": "HARD", }] ]], ["minimist", [ ["npm:0.0.10", { "packageLocation": "./.yarn/cache/minimist-npm-0.0.10-df9c22163e-2e45f01378.zip/node_modules/minimist/", "packageDependencies": [ ["minimist", "npm:0.0.10"] ], "linkType": "HARD", }], ["npm:1.2.0", { "packageLocation": "./.yarn/cache/minimist-npm-1.2.0-214f53c090-80a1a219c0.zip/node_modules/minimist/", "packageDependencies": [ ["minimist", "npm:1.2.0"] ], "linkType": "HARD", }], ["npm:1.2.5", { "packageLocation": "./.yarn/cache/minimist-npm-1.2.5-ced0e1f617-b77b859014.zip/node_modules/minimist/", "packageDependencies": [ ["minimist", "npm:1.2.5"] ], "linkType": "HARD", }] ]], ["minimist-options", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/minimist-options-npm-3.0.2-a9dfe18ff3-3b265ce72e.zip/node_modules/minimist-options/", "packageDependencies": [ ["minimist-options", "npm:3.0.2"], ["arrify", "npm:1.0.1"], ["is-plain-obj", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["minipass", [ ["npm:2.9.0", { "packageLocation": "./.yarn/cache/minipass-npm-2.9.0-6335fbe4af-57a49f9523.zip/node_modules/minipass/", "packageDependencies": [ ["minipass", "npm:2.9.0"], ["safe-buffer", "npm:5.2.1"], ["yallist", "npm:3.1.1"] ], "linkType": "HARD", }], ["npm:3.1.3", { "packageLocation": "./.yarn/cache/minipass-npm-3.1.3-af723e33f3-d12b95a845.zip/node_modules/minipass/", "packageDependencies": [ ["minipass", "npm:3.1.3"], ["yallist", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["minizlib", [ ["npm:1.3.3", { "packageLocation": "./.yarn/cache/minizlib-npm-1.3.3-b590e5bfb8-8d12782dd9.zip/node_modules/minizlib/", "packageDependencies": [ ["minizlib", "npm:1.3.3"], ["minipass", "npm:2.9.0"] ], "linkType": "HARD", }], ["npm:2.1.2", { "packageLocation": "./.yarn/cache/minizlib-npm-2.1.2-ea89cd0cfb-5a45b57b34.zip/node_modules/minizlib/", "packageDependencies": [ ["minizlib", "npm:2.1.2"], ["minipass", "npm:3.1.3"], ["yallist", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["mississippi", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/mississippi-npm-3.0.0-02447e293b-6d30a5ba65.zip/node_modules/mississippi/", "packageDependencies": [ ["mississippi", "npm:3.0.0"], ["concat-stream", "npm:1.6.2"], ["duplexify", "npm:3.7.1"], ["end-of-stream", "npm:1.4.4"], ["flush-write-stream", "npm:1.1.1"], ["from2", "npm:2.3.0"], ["parallel-transform", "npm:1.2.0"], ["pump", "npm:3.0.0"], ["pumpify", "npm:1.5.1"], ["stream-each", "npm:1.2.3"], ["through2", "npm:2.0.5"] ], "linkType": "HARD", }] ]], ["mixin-deep", [ ["npm:1.3.2", { "packageLocation": "./.yarn/cache/mixin-deep-npm-1.3.2-29b528e571-68da98bc1a.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:0.5.5", { "packageLocation": "./.yarn/cache/mkdirp-npm-0.5.5-6bc76534fc-9dd9792e89.zip/node_modules/mkdirp/", "packageDependencies": [ ["mkdirp", "npm:0.5.5"], ["minimist", "npm:1.2.5"] ], "linkType": "HARD", }], ["npm:1.0.4", { "packageLocation": "./.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-1aa3a6a2d7.zip/node_modules/mkdirp/", "packageDependencies": [ ["mkdirp", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["mock-fs", [ ["npm:4.12.0", { "packageLocation": "./.yarn/cache/mock-fs-npm-4.12.0-d8c7880552-d2bd01b410.zip/node_modules/mock-fs/", "packageDependencies": [ ["mock-fs", "npm:4.12.0"] ], "linkType": "HARD", }] ]], ["modify-values", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/modify-values-npm-1.0.1-9b2377e166-55165ae8b4.zip/node_modules/modify-values/", "packageDependencies": [ ["modify-values", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["move-concurrently", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/move-concurrently-npm-1.0.1-e1e3c7e2cf-0761308ddb.zip/node_modules/move-concurrently/", "packageDependencies": [ ["move-concurrently", "npm:1.0.1"], ["aproba", "npm:1.2.0"], ["copy-concurrently", "npm:1.0.5"], ["fs-write-stream-atomic", "npm:1.0.10"], ["mkdirp", "npm:0.5.5"], ["rimraf", "npm:2.7.1"], ["run-queue", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["ms", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/ms-npm-2.0.0-9e1101a471-1a230340cc.zip/node_modules/ms/", "packageDependencies": [ ["ms", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:2.1.2", { "packageLocation": "./.yarn/cache/ms-npm-2.1.2-ec0c1512ff-9b65fb709b.zip/node_modules/ms/", "packageDependencies": [ ["ms", "npm:2.1.2"] ], "linkType": "HARD", }] ]], ["mute-stream", [ ["npm:0.0.8", { "packageLocation": "./.yarn/cache/mute-stream-npm-0.0.8-489a7d6c2b-315c40f463.zip/node_modules/mute-stream/", "packageDependencies": [ ["mute-stream", "npm:0.0.8"] ], "linkType": "HARD", }] ]], ["nanomatch", [ ["npm:1.2.13", { "packageLocation": "./.yarn/cache/nanomatch-npm-1.2.13-bc9173dbe7-2e1440c570.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": "./.yarn/cache/natural-compare-npm-1.4.0-97b75b362d-2daf93d9bb.zip/node_modules/natural-compare/", "packageDependencies": [ ["natural-compare", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["neo-async", [ ["npm:2.6.1", { "packageLocation": "./.yarn/cache/neo-async-npm-2.6.1-96bc443be6-b359ccaa5c.zip/node_modules/neo-async/", "packageDependencies": [ ["neo-async", "npm:2.6.1"] ], "linkType": "HARD", }] ]], ["nerf-dart", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/nerf-dart-npm-1.0.0-c73e718e56-bdfdb170e1.zip/node_modules/nerf-dart/", "packageDependencies": [ ["nerf-dart", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["nice-try", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/nice-try-npm-1.0.5-963856b16f-330f190bf6.zip/node_modules/nice-try/", "packageDependencies": [ ["nice-try", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["node-emoji", [ ["npm:1.10.0", { "packageLocation": "./.yarn/cache/node-emoji-npm-1.10.0-3bbb4a73cd-9c73cd0af0.zip/node_modules/node-emoji/", "packageDependencies": [ ["node-emoji", "npm:1.10.0"], ["lodash.toarray", "npm:4.4.0"] ], "linkType": "HARD", }] ]], ["node-fetch", [ ["npm:2.6.0", { "packageLocation": "./.yarn/cache/node-fetch-npm-2.6.0-29c7a53447-dd9f586a9f.zip/node_modules/node-fetch/", "packageDependencies": [ ["node-fetch", "npm:2.6.0"] ], "linkType": "HARD", }] ]], ["node-fetch-npm", [ ["npm:2.0.4", { "packageLocation": "./.yarn/cache/node-fetch-npm-npm-2.0.4-d00cb15d9c-378bb7203b.zip/node_modules/node-fetch-npm/", "packageDependencies": [ ["node-fetch-npm", "npm:2.0.4"], ["encoding", "npm:0.1.13"], ["json-parse-better-errors", "npm:1.0.2"], ["safe-buffer", "npm:5.2.1"] ], "linkType": "HARD", }] ]], ["node-gyp", [ ["npm:5.1.1", { "packageLocation": "./.yarn/unplugged/node-gyp-npm-5.1.1-9e002933ea/node_modules/node-gyp/", "packageDependencies": [ ["node-gyp", "npm:5.1.1"], ["env-paths", "npm:2.2.0"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["mkdirp", "npm:0.5.5"], ["nopt", "npm:4.0.3"], ["npmlog", "npm:4.1.2"], ["request", "npm:2.88.2"], ["rimraf", "npm:2.7.1"], ["semver", "npm:5.7.1"], ["tar", "npm:4.4.13"], ["which", "npm:1.3.1"] ], "linkType": "HARD", }], ["npm:7.1.2", { "packageLocation": "./.yarn/unplugged/node-gyp-npm-7.1.2-002c5798eb/node_modules/node-gyp/", "packageDependencies": [ ["node-gyp", "npm:7.1.2"], ["env-paths", "npm:2.2.0"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.6"], ["nopt", "npm:5.0.0"], ["npmlog", "npm:4.1.2"], ["request", "npm:2.88.2"], ["rimraf", "npm:3.0.2"], ["semver", "npm:7.3.2"], ["tar", "npm:6.1.0"], ["which", "npm:2.0.2"] ], "linkType": "HARD", }] ]], ["node-int64", [ ["npm:0.4.0", { "packageLocation": "./.yarn/cache/node-int64-npm-0.4.0-0dc04ec3b2-8fce4b82d4.zip/node_modules/node-int64/", "packageDependencies": [ ["node-int64", "npm:0.4.0"] ], "linkType": "HARD", }] ]], ["node-modules-regexp", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/node-modules-regexp-npm-1.0.0-2f5f5ba9c6-90f928a1db.zip/node_modules/node-modules-regexp/", "packageDependencies": [ ["node-modules-regexp", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["node-notifier", [ ["npm:7.0.0", { "packageLocation": "./.yarn/unplugged/node-notifier-npm-7.0.0-6cb42307fd/node_modules/node-notifier/", "packageDependencies": [ ["node-notifier", "npm:7.0.0"], ["growly", "npm:1.3.0"], ["is-wsl", "npm:2.1.1"], ["semver", "npm:7.3.2"], ["shellwords", "npm:0.1.1"], ["uuid", "npm:7.0.3"], ["which", "npm:2.0.2"] ], "linkType": "HARD", }] ]], ["node-releases", [ ["npm:1.1.53", { "packageLocation": "./.yarn/cache/node-releases-npm-1.1.53-faa0ef7637-744ff96626.zip/node_modules/node-releases/", "packageDependencies": [ ["node-releases", "npm:1.1.53"] ], "linkType": "HARD", }] ]], ["nopt", [ ["npm:4.0.3", { "packageLocation": "./.yarn/cache/nopt-npm-4.0.3-b35e68a869-bf7b8c15fd.zip/node_modules/nopt/", "packageDependencies": [ ["nopt", "npm:4.0.3"], ["abbrev", "npm:1.1.1"], ["osenv", "npm:0.1.5"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/nopt-npm-5.0.0-304b40fbfe-e1523158fc.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": "./.yarn/cache/normalize-package-data-npm-2.5.0-af0345deed-97d4d6b061.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.17.0#builtin::version=1.17.0&hash=3388aa"], ["semver", "npm:5.7.1"], ["validate-npm-package-license", "npm:3.0.4"] ], "linkType": "HARD", }] ]], ["normalize-path", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/normalize-path-npm-2.1.1-65c4766716-9eb82b2f6a.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": "./.yarn/cache/normalize-path-npm-3.0.0-658ba7d77f-215a701b47.zip/node_modules/normalize-path/", "packageDependencies": [ ["normalize-path", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["normalize-url", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/normalize-url-npm-5.0.0-ae6423fc55-6e1e68b753.zip/node_modules/normalize-url/", "packageDependencies": [ ["normalize-url", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["npm", [ ["npm:6.14.6", { "packageLocation": "./.yarn/unplugged/npm-npm-6.14.6-347fb4e8af/node_modules/npm/", "packageDependencies": [ ["npm", "npm:6.14.6"], ["JSONStream", "npm:1.3.5"], ["abbrev", "npm:1.1.1"], ["ansicolors", "npm:0.3.2"], ["ansistyles", "npm:0.1.3"], ["aproba", "npm:2.0.0"], ["archy", "npm:1.0.0"], ["bin-links", "npm:1.1.8"], ["bluebird", "npm:3.7.2"], ["byte-size", "npm:5.0.1"], ["cacache", "npm:12.0.4"], ["call-limit", "npm:1.1.1"], ["chownr", "npm:1.1.4"], ["ci-info", "npm:2.0.0"], ["cli-columns", "npm:3.1.2"], ["cli-table3", "npm:0.5.1"], ["cmd-shim", "npm:3.0.3"], ["columnify", "npm:1.5.4"], ["config-chain", "npm:1.1.12"], ["debuglog", "npm:1.0.1"], ["detect-indent", "npm:5.0.0"], ["detect-newline", "npm:2.1.0"], ["dezalgo", "npm:1.0.3"], ["editor", "npm:1.0.0"], ["figgy-pudding", "npm:3.5.2"], ["find-npm-prefix", "npm:1.0.2"], ["fs-vacuum", "npm:1.2.10"], ["fs-write-stream-atomic", "npm:1.0.10"], ["gentle-fs", "npm:2.3.1"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["has-unicode", "npm:2.0.1"], ["hosted-git-info", "npm:2.8.8"], ["iferr", "npm:1.0.2"], ["imurmurhash", "npm:0.1.4"], ["infer-owner", "npm:1.0.4"], ["inflight", "npm:1.0.6"], ["inherits", "npm:2.0.4"], ["ini", "npm:1.3.7"], ["init-package-json", "npm:1.10.3"], ["is-cidr", "npm:3.1.1"], ["json-parse-better-errors", "npm:1.0.2"], ["lazy-property", "npm:1.0.0"], ["libcipm", "npm:4.0.8"], ["libnpm", "npm:3.0.1"], ["libnpmaccess", "npm:3.0.2"], ["libnpmhook", "npm:5.0.3"], ["libnpmorg", "npm:1.0.1"], ["libnpmsearch", "npm:2.0.2"], ["libnpmteam", "npm:1.0.2"], ["libnpx", "npm:10.2.3"], ["lock-verify", "npm:2.2.0"], ["lockfile", "npm:1.0.4"], ["lodash._baseindexof", "npm:3.1.0"], ["lodash._baseuniq", "npm:4.6.0"], ["lodash._bindcallback", "npm:3.0.1"], ["lodash._cacheindexof", "npm:3.0.2"], ["lodash._createcache", "npm:3.1.2"], ["lodash._getnative", "npm:3.9.1"], ["lodash.clonedeep", "npm:4.5.0"], ["lodash.restparam", "npm:3.6.1"], ["lodash.union", "npm:4.6.0"], ["lodash.uniq", "npm:4.5.0"], ["lodash.without", "npm:4.4.0"], ["lru-cache", "npm:5.1.1"], ["meant", "npm:1.0.1"], ["mississippi", "npm:3.0.0"], ["mkdirp", "npm:0.5.5"], ["move-concurrently", "npm:1.0.1"], ["node-gyp", "npm:5.1.1"], ["nopt", "npm:4.0.3"], ["normalize-package-data", "npm:2.5.0"], ["npm-audit-report", "npm:1.3.3"], ["npm-cache-filename", "npm:1.0.2"], ["npm-install-checks", "npm:3.0.2"], ["npm-lifecycle", "npm:3.1.5"], ["npm-package-arg", "npm:6.1.1"], ["npm-packlist", "npm:1.4.8"], ["npm-pick-manifest", "npm:3.0.2"], ["npm-profile", "npm:4.0.4"], ["npm-registry-fetch", "npm:4.0.5"], ["npm-user-validate", "npm:1.0.0"], ["npmlog", "npm:4.1.2"], ["once", "npm:1.4.0"], ["opener", "npm:1.5.1"], ["osenv", "npm:0.1.5"], ["pacote", "npm:9.5.12"], ["path-is-inside", "npm:1.0.2"], ["promise-inflight", "virtual:0a601d06b9bb877e28dc3c2bf132b715e8c8db39518cb037053d3e960e698b842f18c4ad29c4dbd116bd79f31c565cbbc9741fa4573e2713fab36fd780658f57#npm:1.0.1"], ["qrcode-terminal", "npm:0.12.0"], ["query-string", "npm:6.13.1"], ["qw", "npm:1.0.1"], ["read", "npm:1.0.7"], ["read-cmd-shim", "npm:1.0.5"], ["read-installed", "npm:4.0.3"], ["read-package-json", "npm:2.1.1"], ["read-package-tree", "npm:5.3.1"], ["readable-stream", "npm:3.6.0"], ["readdir-scoped-modules", "npm:1.1.0"], ["request", "npm:2.88.2"], ["retry", "npm:0.12.0"], ["rimraf", "npm:2.7.1"], ["safe-buffer", "npm:5.2.1"], ["semver", "npm:5.7.1"], ["sha", "npm:3.0.0"], ["slide", "npm:1.1.6"], ["sorted-object", "npm:2.0.1"], ["sorted-union-stream", "npm:2.1.3"], ["ssri", "npm:6.0.1"], ["stringify-package", "npm:1.0.1"], ["tar", "npm:4.4.13"], ["text-table", "npm:0.2.0"], ["tiny-relative-date", "npm:1.3.0"], ["uid-number", "npm:0.0.6"], ["umask", "npm:1.1.0"], ["unique-filename", "npm:1.1.1"], ["unpipe", "npm:1.0.0"], ["update-notifier", "npm:2.5.0"], ["uuid", "npm:3.4.0"], ["validate-npm-package-license", "npm:3.0.4"], ["validate-npm-package-name", "npm:3.0.0"], ["which", "npm:1.3.1"], ["worker-farm", "npm:1.7.0"], ["write-file-atomic", "npm:2.4.3"] ], "linkType": "HARD", }] ]], ["npm-audit-report", [ ["npm:1.3.3", { "packageLocation": "./.yarn/cache/npm-audit-report-npm-1.3.3-c8e40633a2-9935ab1862.zip/node_modules/npm-audit-report/", "packageDependencies": [ ["npm-audit-report", "npm:1.3.3"], ["cli-table3", "npm:0.5.1"], ["console-control-strings", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["npm-bundled", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/npm-bundled-npm-1.1.1-4e8c147002-f51ddba869.zip/node_modules/npm-bundled/", "packageDependencies": [ ["npm-bundled", "npm:1.1.1"], ["npm-normalize-package-bin", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["npm-cache-filename", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/npm-cache-filename-npm-1.0.2-ecc3420f74-61dc6e3507.zip/node_modules/npm-cache-filename/", "packageDependencies": [ ["npm-cache-filename", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["npm-install-checks", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/npm-install-checks-npm-3.0.2-1e1c4d5801-f48f3bae99.zip/node_modules/npm-install-checks/", "packageDependencies": [ ["npm-install-checks", "npm:3.0.2"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }] ]], ["npm-lifecycle", [ ["npm:3.1.5", { "packageLocation": "./.yarn/cache/npm-lifecycle-npm-3.1.5-d33bc42963-3b053e6e3e.zip/node_modules/npm-lifecycle/", "packageDependencies": [ ["npm-lifecycle", "npm:3.1.5"], ["byline", "npm:5.0.0"], ["graceful-fs", "npm:4.2.4"], ["node-gyp", "npm:5.1.1"], ["resolve-from", "npm:4.0.0"], ["slide", "npm:1.1.6"], ["uid-number", "npm:0.0.6"], ["umask", "npm:1.1.0"], ["which", "npm:1.3.1"] ], "linkType": "HARD", }] ]], ["npm-logical-tree", [ ["npm:1.2.1", { "packageLocation": "./.yarn/cache/npm-logical-tree-npm-1.2.1-194f462276-783f85b878.zip/node_modules/npm-logical-tree/", "packageDependencies": [ ["npm-logical-tree", "npm:1.2.1"] ], "linkType": "HARD", }] ]], ["npm-normalize-package-bin", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/npm-normalize-package-bin-npm-1.0.1-2cf38a5d95-495fae7615.zip/node_modules/npm-normalize-package-bin/", "packageDependencies": [ ["npm-normalize-package-bin", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["npm-package-arg", [ ["npm:6.1.1", { "packageLocation": "./.yarn/cache/npm-package-arg-npm-6.1.1-7fa8d553e7-419b015365.zip/node_modules/npm-package-arg/", "packageDependencies": [ ["npm-package-arg", "npm:6.1.1"], ["hosted-git-info", "npm:2.8.8"], ["osenv", "npm:0.1.5"], ["semver", "npm:5.7.1"], ["validate-npm-package-name", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["npm-packlist", [ ["npm:1.4.8", { "packageLocation": "./.yarn/cache/npm-packlist-npm-1.4.8-ddca195225-34c4bbd47d.zip/node_modules/npm-packlist/", "packageDependencies": [ ["npm-packlist", "npm:1.4.8"], ["ignore-walk", "npm:3.0.3"], ["npm-bundled", "npm:1.1.1"], ["npm-normalize-package-bin", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["npm-pick-manifest", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/npm-pick-manifest-npm-3.0.2-c460432cb4-100337ad8d.zip/node_modules/npm-pick-manifest/", "packageDependencies": [ ["npm-pick-manifest", "npm:3.0.2"], ["figgy-pudding", "npm:3.5.2"], ["npm-package-arg", "npm:6.1.1"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }] ]], ["npm-profile", [ ["npm:4.0.4", { "packageLocation": "./.yarn/cache/npm-profile-npm-4.0.4-75b672904e-f3425e4fa9.zip/node_modules/npm-profile/", "packageDependencies": [ ["npm-profile", "npm:4.0.4"], ["aproba", "npm:2.0.0"], ["figgy-pudding", "npm:3.5.2"], ["npm-registry-fetch", "npm:4.0.5"] ], "linkType": "HARD", }] ]], ["npm-registry-fetch", [ ["npm:4.0.5", { "packageLocation": "./.yarn/cache/npm-registry-fetch-npm-4.0.5-106a4e1b63-6b367218a1.zip/node_modules/npm-registry-fetch/", "packageDependencies": [ ["npm-registry-fetch", "npm:4.0.5"], ["JSONStream", "npm:1.3.5"], ["bluebird", "npm:3.7.2"], ["figgy-pudding", "npm:3.5.2"], ["lru-cache", "npm:5.1.1"], ["make-fetch-happen", "npm:5.0.2"], ["npm-package-arg", "npm:6.1.1"], ["safe-buffer", "npm:5.2.1"] ], "linkType": "HARD", }] ]], ["npm-run-path", [ ["npm:2.0.2", { "packageLocation": "./.yarn/cache/npm-run-path-npm-2.0.2-96c8b48857-0a1bc9a1e0.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": "./.yarn/cache/npm-run-path-npm-4.0.1-7aebd8bab3-058fd06880.zip/node_modules/npm-run-path/", "packageDependencies": [ ["npm-run-path", "npm:4.0.1"], ["path-key", "npm:3.1.1"] ], "linkType": "HARD", }] ]], ["npm-user-validate", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/npm-user-validate-npm-1.0.0-a3d11a1678-9bd82360df.zip/node_modules/npm-user-validate/", "packageDependencies": [ ["npm-user-validate", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["npmlog", [ ["npm:4.1.2", { "packageLocation": "./.yarn/cache/npmlog-npm-4.1.2-cfb32957b5-0cd63f127c.zip/node_modules/npmlog/", "packageDependencies": [ ["npmlog", "npm:4.1.2"], ["are-we-there-yet", "npm:1.1.5"], ["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": "./.yarn/cache/number-is-nan-npm-1.0.1-845325a0fe-42251b2653.zip/node_modules/number-is-nan/", "packageDependencies": [ ["number-is-nan", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["nwsapi", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/nwsapi-npm-2.2.0-8f05590043-fb0f05113a.zip/node_modules/nwsapi/", "packageDependencies": [ ["nwsapi", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["oauth-sign", [ ["npm:0.9.0", { "packageLocation": "./.yarn/cache/oauth-sign-npm-0.9.0-7aa9422221-af1ab60297.zip/node_modules/oauth-sign/", "packageDependencies": [ ["oauth-sign", "npm:0.9.0"] ], "linkType": "HARD", }] ]], ["object-assign", [ ["npm:4.1.1", { "packageLocation": "./.yarn/cache/object-assign-npm-4.1.1-1004ad6dec-66cf021898.zip/node_modules/object-assign/", "packageDependencies": [ ["object-assign", "npm:4.1.1"] ], "linkType": "HARD", }] ]], ["object-copy", [ ["npm:0.1.0", { "packageLocation": "./.yarn/cache/object-copy-npm-0.1.0-e229d02f2b-d91d46e542.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-inspect", [ ["npm:1.8.0", { "packageLocation": "./.yarn/cache/object-inspect-npm-1.8.0-81c2d7cdce-4da23a188b.zip/node_modules/object-inspect/", "packageDependencies": [ ["object-inspect", "npm:1.8.0"] ], "linkType": "HARD", }], ["npm:1.9.0", { "packageLocation": "./.yarn/cache/object-inspect-npm-1.9.0-75d8ab6cd7-63b412167d.zip/node_modules/object-inspect/", "packageDependencies": [ ["object-inspect", "npm:1.9.0"] ], "linkType": "HARD", }] ]], ["object-keys", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/object-keys-npm-1.1.1-1bf2f1be93-30d72d768b.zip/node_modules/object-keys/", "packageDependencies": [ ["object-keys", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["object-visit", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/object-visit-npm-1.0.1-c5c9057c24-8666727dbf.zip/node_modules/object-visit/", "packageDependencies": [ ["object-visit", "npm:1.0.1"], ["isobject", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["object.assign", [ ["npm:4.1.0", { "packageLocation": "./.yarn/cache/object.assign-npm-4.1.0-2a284b2bf7-92e20891dd.zip/node_modules/object.assign/", "packageDependencies": [ ["object.assign", "npm:4.1.0"], ["define-properties", "npm:1.1.3"], ["function-bind", "npm:1.1.1"], ["has-symbols", "npm:1.0.1"], ["object-keys", "npm:1.1.1"] ], "linkType": "HARD", }], ["npm:4.1.2", { "packageLocation": "./.yarn/cache/object.assign-npm-4.1.2-d52edada1c-a5855cc6db.zip/node_modules/object.assign/", "packageDependencies": [ ["object.assign", "npm:4.1.2"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"], ["has-symbols", "npm:1.0.1"], ["object-keys", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["object.getownpropertydescriptors", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/object.getownpropertydescriptors-npm-2.1.0-a6ef3a16c2-c33dcc3061.zip/node_modules/object.getownpropertydescriptors/", "packageDependencies": [ ["object.getownpropertydescriptors", "npm:2.1.0"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.17.6"] ], "linkType": "HARD", }] ]], ["object.pick", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/object.pick-npm-1.3.0-dad8eae8fb-e22d555d3b.zip/node_modules/object.pick/", "packageDependencies": [ ["object.pick", "npm:1.3.0"], ["isobject", "npm:3.0.1"] ], "linkType": "HARD", }] ]], ["object.values", [ ["npm:1.1.2", { "packageLocation": "./.yarn/cache/object.values-npm-1.1.2-a64229060b-d9e492095a.zip/node_modules/object.values/", "packageDependencies": [ ["object.values", "npm:1.1.2"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.18.0-next.2"], ["has", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["once", [ ["npm:1.4.0", { "packageLocation": "./.yarn/cache/once-npm-1.4.0-ccf03ef07a-57afc24653.zip/node_modules/once/", "packageDependencies": [ ["once", "npm:1.4.0"], ["wrappy", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["onetime", [ ["npm:5.1.0", { "packageLocation": "./.yarn/cache/onetime-npm-5.1.0-8d9e23c1e0-1781c3cf88.zip/node_modules/onetime/", "packageDependencies": [ ["onetime", "npm:5.1.0"], ["mimic-fn", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["opener", [ ["npm:1.5.1", { "packageLocation": "./.yarn/cache/opener-npm-1.5.1-b1b882b121-055a1efdc2.zip/node_modules/opener/", "packageDependencies": [ ["opener", "npm:1.5.1"] ], "linkType": "HARD", }] ]], ["optimist", [ ["npm:0.6.1", { "packageLocation": "./.yarn/cache/optimist-npm-0.6.1-b1b5ef4c06-14cb755f38.zip/node_modules/optimist/", "packageDependencies": [ ["optimist", "npm:0.6.1"], ["minimist", "npm:0.0.10"], ["wordwrap", "npm:0.0.3"] ], "linkType": "HARD", }] ]], ["optionator", [ ["npm:0.8.3", { "packageLocation": "./.yarn/cache/optionator-npm-0.8.3-bc555bc5b7-a5cdced2c9.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": "./.yarn/cache/optionator-npm-0.9.1-577e397aae-bdf5683f98.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", }] ]], ["os-homedir", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/os-homedir-npm-1.0.2-01f82faa88-725256246b.zip/node_modules/os-homedir/", "packageDependencies": [ ["os-homedir", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["os-locale", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/os-locale-npm-2.1.0-3a3e1fc52b-f491d24b3e.zip/node_modules/os-locale/", "packageDependencies": [ ["os-locale", "npm:2.1.0"], ["execa", "npm:0.7.0"], ["lcid", "npm:1.0.0"], ["mem", "npm:1.1.0"] ], "linkType": "HARD", }], ["npm:3.1.0", { "packageLocation": "./.yarn/cache/os-locale-npm-3.1.0-c23c8ec673-50611551f0.zip/node_modules/os-locale/", "packageDependencies": [ ["os-locale", "npm:3.1.0"], ["execa", "npm:1.0.0"], ["lcid", "npm:2.0.0"], ["mem", "npm:4.3.0"] ], "linkType": "HARD", }] ]], ["os-name", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/os-name-npm-3.1.0-b5e3fb36cd-b4e5d61010.zip/node_modules/os-name/", "packageDependencies": [ ["os-name", "npm:3.1.0"], ["macos-release", "npm:2.3.0"], ["windows-release", "npm:3.2.0"] ], "linkType": "HARD", }] ]], ["os-tmpdir", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/os-tmpdir-npm-1.0.2-e305b0689b-ca158a3c2e.zip/node_modules/os-tmpdir/", "packageDependencies": [ ["os-tmpdir", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["osenv", [ ["npm:0.1.5", { "packageLocation": "./.yarn/cache/osenv-npm-0.1.5-435137eb60-1c7462808c.zip/node_modules/osenv/", "packageDependencies": [ ["osenv", "npm:0.1.5"], ["os-homedir", "npm:1.0.2"], ["os-tmpdir", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["p-defer", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/p-defer-npm-1.0.0-4dfd0013f5-ffaabb1613.zip/node_modules/p-defer/", "packageDependencies": [ ["p-defer", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["p-each-series", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/p-each-series-npm-2.1.0-345e6f9034-cc7516dbb8.zip/node_modules/p-each-series/", "packageDependencies": [ ["p-each-series", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["p-filter", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/p-filter-npm-2.1.0-f1136c698e-d3db3d2153.zip/node_modules/p-filter/", "packageDependencies": [ ["p-filter", "npm:2.1.0"], ["p-map", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["p-finally", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/p-finally-npm-1.0.0-35fbaa57c6-01f49b2d9c.zip/node_modules/p-finally/", "packageDependencies": [ ["p-finally", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["p-is-promise", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/p-is-promise-npm-2.1.0-47a48ac6a0-4a15137df9.zip/node_modules/p-is-promise/", "packageDependencies": [ ["p-is-promise", "npm:2.1.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/p-is-promise-npm-3.0.0-a3c472793c-098b193910.zip/node_modules/p-is-promise/", "packageDependencies": [ ["p-is-promise", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["p-limit", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/p-limit-npm-1.3.0-fdb471d864-579cbd3d6c.zip/node_modules/p-limit/", "packageDependencies": [ ["p-limit", "npm:1.3.0"], ["p-try", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.2.2", { "packageLocation": "./.yarn/cache/p-limit-npm-2.2.2-b674d9f268-10cd927c1e.zip/node_modules/p-limit/", "packageDependencies": [ ["p-limit", "npm:2.2.2"], ["p-try", "npm:2.2.0"] ], "linkType": "HARD", }], ["npm:2.3.0", { "packageLocation": "./.yarn/cache/p-limit-npm-2.3.0-94a0310039-5f20492a25.zip/node_modules/p-limit/", "packageDependencies": [ ["p-limit", "npm:2.3.0"], ["p-try", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["p-locate", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/p-locate-npm-2.0.0-3a2ee263dd-b6dabbd855.zip/node_modules/p-locate/", "packageDependencies": [ ["p-locate", "npm:2.0.0"], ["p-limit", "npm:1.3.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/p-locate-npm-3.0.0-74de74f952-3ee9e3ed0b.zip/node_modules/p-locate/", "packageDependencies": [ ["p-locate", "npm:3.0.0"], ["p-limit", "npm:2.3.0"] ], "linkType": "HARD", }], ["npm:4.1.0", { "packageLocation": "./.yarn/cache/p-locate-npm-4.1.0-eec6872537-57f9abef0b.zip/node_modules/p-locate/", "packageDependencies": [ ["p-locate", "npm:4.1.0"], ["p-limit", "npm:2.2.2"] ], "linkType": "HARD", }] ]], ["p-map", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/p-map-npm-2.1.0-d9e865dc7c-8557e841ed.zip/node_modules/p-map/", "packageDependencies": [ ["p-map", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["p-reduce", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/p-reduce-npm-2.1.0-f5593a333c-9014651a01.zip/node_modules/p-reduce/", "packageDependencies": [ ["p-reduce", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["p-retry", [ ["npm:4.2.0", { "packageLocation": "./.yarn/cache/p-retry-npm-4.2.0-036a6948a4-bf106e5424.zip/node_modules/p-retry/", "packageDependencies": [ ["p-retry", "npm:4.2.0"], ["@types/retry", "npm:0.12.0"], ["retry", "npm:0.12.0"] ], "linkType": "HARD", }] ]], ["p-try", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/p-try-npm-1.0.0-7373139e40-85739d77b3.zip/node_modules/p-try/", "packageDependencies": [ ["p-try", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.2.0", { "packageLocation": "./.yarn/cache/p-try-npm-2.2.0-e0390dbaf8-20983f3765.zip/node_modules/p-try/", "packageDependencies": [ ["p-try", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["package-json", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/package-json-npm-4.0.1-c058f67fbc-9d9be52897.zip/node_modules/package-json/", "packageDependencies": [ ["package-json", "npm:4.0.1"], ["got", "npm:6.7.1"], ["registry-auth-token", "npm:3.4.0"], ["registry-url", "npm:3.1.0"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }] ]], ["packwatch", [ ["workspace:.", { "packageLocation": "./", "packageDependencies": [ ["packwatch", "workspace:."], ["@babel/cli", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.10"], ["@babel/core", "npm:7.12.10"], ["@babel/preset-env", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.11.0"], ["@babel/preset-typescript", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:7.12.7"], ["@tophat/eslint-config", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:0.7.0"], ["@types/jest", "npm:26.0.19"], ["@types/node", "npm:14.14.13"], ["@typescript-eslint/eslint-plugin", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["@typescript-eslint/parser", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:4.9.1"], ["eslint", "npm:7.6.0"], ["eslint-config-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:6.11.0"], ["eslint-import-resolver-node", "npm:0.3.4"], ["eslint-plugin-import", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:2.22.1"], ["eslint-plugin-jest", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:23.20.0"], ["eslint-plugin-prettier", "virtual:d3067cd625e5c23094ea7d6c4dd9a8a51f9ae39f85a6cdd74a9704482539b1311a8b32a91079b5879ac7d98118e328903889c05f12275d699b694ebb2329543d#npm:3.1.4"], ["jest", "npm:26.2.2"], ["mock-fs", "npm:4.12.0"], ["prettier", "npm:2.0.5"], ["rimraf", "npm:3.0.2"], ["semantic-release", "npm:17.1.1"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "linkType": "SOFT", }] ]], ["pacote", [ ["npm:9.5.12", { "packageLocation": "./.yarn/cache/pacote-npm-9.5.12-8938623617-6c99bbc0b8.zip/node_modules/pacote/", "packageDependencies": [ ["pacote", "npm:9.5.12"], ["bluebird", "npm:3.7.2"], ["cacache", "npm:12.0.4"], ["chownr", "npm:1.1.4"], ["figgy-pudding", "npm:3.5.2"], ["get-stream", "npm:4.1.0"], ["glob", "npm:7.1.6"], ["infer-owner", "npm:1.0.4"], ["lru-cache", "npm:5.1.1"], ["make-fetch-happen", "npm:5.0.2"], ["minimatch", "npm:3.0.4"], ["minipass", "npm:2.9.0"], ["mississippi", "npm:3.0.0"], ["mkdirp", "npm:0.5.5"], ["normalize-package-data", "npm:2.5.0"], ["npm-normalize-package-bin", "npm:1.0.1"], ["npm-package-arg", "npm:6.1.1"], ["npm-packlist", "npm:1.4.8"], ["npm-pick-manifest", "npm:3.0.2"], ["npm-registry-fetch", "npm:4.0.5"], ["osenv", "npm:0.1.5"], ["promise-inflight", "virtual:0a601d06b9bb877e28dc3c2bf132b715e8c8db39518cb037053d3e960e698b842f18c4ad29c4dbd116bd79f31c565cbbc9741fa4573e2713fab36fd780658f57#npm:1.0.1"], ["promise-retry", "npm:1.1.1"], ["protoduck", "npm:5.0.1"], ["rimraf", "npm:2.7.1"], ["safe-buffer", "npm:5.2.1"], ["semver", "npm:5.7.1"], ["ssri", "npm:6.0.1"], ["tar", "npm:4.4.13"], ["unique-filename", "npm:1.1.1"], ["which", "npm:1.3.1"] ], "linkType": "HARD", }] ]], ["parallel-transform", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/parallel-transform-npm-1.2.0-4985a87bcf-65170af2e7.zip/node_modules/parallel-transform/", "packageDependencies": [ ["parallel-transform", "npm:1.2.0"], ["cyclist", "npm:1.0.1"], ["inherits", "npm:2.0.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["parent-module", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/parent-module-npm-1.0.1-1fae11b095-58714b9699.zip/node_modules/parent-module/", "packageDependencies": [ ["parent-module", "npm:1.0.1"], ["callsites", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["parse-json", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/parse-json-npm-2.2.0-f7c91e74a7-920582196a.zip/node_modules/parse-json/", "packageDependencies": [ ["parse-json", "npm:2.2.0"], ["error-ex", "npm:1.3.2"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/parse-json-npm-4.0.0-a6f7771010-fa9d23708f.zip/node_modules/parse-json/", "packageDependencies": [ ["parse-json", "npm:4.0.0"], ["error-ex", "npm:1.3.2"], ["json-parse-better-errors", "npm:1.0.2"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/parse-json-npm-5.0.0-eab6c57a64-9c46eb0c38.zip/node_modules/parse-json/", "packageDependencies": [ ["parse-json", "npm:5.0.0"], ["@babel/code-frame", "npm:7.10.4"], ["error-ex", "npm:1.3.2"], ["json-parse-better-errors", "npm:1.0.2"], ["lines-and-columns", "npm:1.1.6"] ], "linkType": "HARD", }] ]], ["parse5", [ ["npm:5.1.1", { "packageLocation": "./.yarn/cache/parse5-npm-5.1.1-8e63d82cff-fad72ff501.zip/node_modules/parse5/", "packageDependencies": [ ["parse5", "npm:5.1.1"] ], "linkType": "HARD", }] ]], ["pascalcase", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/pascalcase-npm-0.1.1-d04964fcda-268a9dbf9c.zip/node_modules/pascalcase/", "packageDependencies": [ ["pascalcase", "npm:0.1.1"] ], "linkType": "HARD", }] ]], ["path-dirname", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/path-dirname-npm-1.0.2-d158cba006-4af73745fd.zip/node_modules/path-dirname/", "packageDependencies": [ ["path-dirname", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["path-exists", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/path-exists-npm-3.0.0-e80371aa68-09683e92ba.zip/node_modules/path-exists/", "packageDependencies": [ ["path-exists", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/path-exists-npm-4.0.0-e9e4f63eb0-6ab15000c5.zip/node_modules/path-exists/", "packageDependencies": [ ["path-exists", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["path-is-absolute", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/path-is-absolute-npm-1.0.1-31bc695ffd-907e1e3e6a.zip/node_modules/path-is-absolute/", "packageDependencies": [ ["path-is-absolute", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["path-is-inside", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/path-is-inside-npm-1.0.2-7dd0711668-9c1841199d.zip/node_modules/path-is-inside/", "packageDependencies": [ ["path-is-inside", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["path-key", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/path-key-npm-2.0.1-b1a971833d-7dc807a2ba.zip/node_modules/path-key/", "packageDependencies": [ ["path-key", "npm:2.0.1"] ], "linkType": "HARD", }], ["npm:3.1.1", { "packageLocation": "./.yarn/cache/path-key-npm-3.1.1-0e66ea8321-e44aa3ca9f.zip/node_modules/path-key/", "packageDependencies": [ ["path-key", "npm:3.1.1"] ], "linkType": "HARD", }] ]], ["path-parse", [ ["npm:1.0.6", { "packageLocation": "./.yarn/cache/path-parse-npm-1.0.6-4a4c90546c-2eee4b93fb.zip/node_modules/path-parse/", "packageDependencies": [ ["path-parse", "npm:1.0.6"] ], "linkType": "HARD", }] ]], ["path-type", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/path-type-npm-2.0.0-67d5226c36-d028f828df.zip/node_modules/path-type/", "packageDependencies": [ ["path-type", "npm:2.0.0"], ["pify", "npm:2.3.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/path-type-npm-3.0.0-252361a0eb-db700bfc22.zip/node_modules/path-type/", "packageDependencies": [ ["path-type", "npm:3.0.0"], ["pify", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/path-type-npm-4.0.0-10d47fc86a-ef5835f2eb.zip/node_modules/path-type/", "packageDependencies": [ ["path-type", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["performance-now", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/performance-now-npm-2.1.0-45e3ce7e49-bb4ebed0b0.zip/node_modules/performance-now/", "packageDependencies": [ ["performance-now", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["picomatch", [ ["npm:2.2.1", { "packageLocation": "./.yarn/cache/picomatch-npm-2.2.1-a4bfb8b1cc-c926fe6cb1.zip/node_modules/picomatch/", "packageDependencies": [ ["picomatch", "npm:2.2.1"] ], "linkType": "HARD", }] ]], ["pify", [ ["npm:2.3.0", { "packageLocation": "./.yarn/cache/pify-npm-2.3.0-8b63310934-d5758aa570.zip/node_modules/pify/", "packageDependencies": [ ["pify", "npm:2.3.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/pify-npm-3.0.0-679ee405c8-18af2b2914.zip/node_modules/pify/", "packageDependencies": [ ["pify", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.1", { "packageLocation": "./.yarn/cache/pify-npm-4.0.1-062756097b-786486a8c9.zip/node_modules/pify/", "packageDependencies": [ ["pify", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["pirates", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/pirates-npm-4.0.1-377058e8fc-21604008c3.zip/node_modules/pirates/", "packageDependencies": [ ["pirates", "npm:4.0.1"], ["node-modules-regexp", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["pkg-conf", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/pkg-conf-npm-2.1.0-c6489a73d3-efcf341ad8.zip/node_modules/pkg-conf/", "packageDependencies": [ ["pkg-conf", "npm:2.1.0"], ["find-up", "npm:2.1.0"], ["load-json-file", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["pkg-dir", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/pkg-dir-npm-2.0.0-2b4bf4abd1-f8ae3a1517.zip/node_modules/pkg-dir/", "packageDependencies": [ ["pkg-dir", "npm:2.0.0"], ["find-up", "npm:2.1.0"] ], "linkType": "HARD", }], ["npm:4.2.0", { "packageLocation": "./.yarn/cache/pkg-dir-npm-4.2.0-2b5d0a8d32-1956ebf3cf.zip/node_modules/pkg-dir/", "packageDependencies": [ ["pkg-dir", "npm:4.2.0"], ["find-up", "npm:4.1.0"] ], "linkType": "HARD", }] ]], ["pkg-up", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/pkg-up-npm-2.0.0-d011ba70a4-0a8fcbebf0.zip/node_modules/pkg-up/", "packageDependencies": [ ["pkg-up", "npm:2.0.0"], ["find-up", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["posix-character-classes", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/posix-character-classes-npm-0.1.1-3e228a6e15-984f83c2d4.zip/node_modules/posix-character-classes/", "packageDependencies": [ ["posix-character-classes", "npm:0.1.1"] ], "linkType": "HARD", }] ]], ["prelude-ls", [ ["npm:1.1.2", { "packageLocation": "./.yarn/cache/prelude-ls-npm-1.1.2-a0daac0886-189c969c92.zip/node_modules/prelude-ls/", "packageDependencies": [ ["prelude-ls", "npm:1.1.2"] ], "linkType": "HARD", }], ["npm:1.2.1", { "packageLocation": "./.yarn/cache/prelude-ls-npm-1.2.1-3e4d272a55-bc1649f521.zip/node_modules/prelude-ls/", "packageDependencies": [ ["prelude-ls", "npm:1.2.1"] ], "linkType": "HARD", }] ]], ["prepend-http", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/prepend-http-npm-1.0.4-cd78a41247-f723f34a23.zip/node_modules/prepend-http/", "packageDependencies": [ ["prepend-http", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["prettier", [ ["npm:2.0.5", { "packageLocation": "./.yarn/cache/prettier-npm-2.0.5-f0ee4e15ce-d249d89361.zip/node_modules/prettier/", "packageDependencies": [ ["prettier", "npm:2.0.5"] ], "linkType": "HARD", }] ]], ["prettier-linter-helpers", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/prettier-linter-helpers-npm-1.0.0-6925131a7e-6d698b9c8d.zip/node_modules/prettier-linter-helpers/", "packageDependencies": [ ["prettier-linter-helpers", "npm:1.0.0"], ["fast-diff", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["pretty-format", [ ["npm:26.2.0", { "packageLocation": "./.yarn/cache/pretty-format-npm-26.2.0-e5223fbb20-b75917fbcf.zip/node_modules/pretty-format/", "packageDependencies": [ ["pretty-format", "npm:26.2.0"], ["@jest/types", "npm:26.2.0"], ["ansi-regex", "npm:5.0.0"], ["ansi-styles", "npm:4.2.1"], ["react-is", "npm:16.13.0"] ], "linkType": "HARD", }], ["npm:26.6.2", { "packageLocation": "./.yarn/cache/pretty-format-npm-26.6.2-6edfcf7149-5ad34fc128.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.2.1"], ["react-is", "npm:17.0.1"] ], "linkType": "HARD", }] ]], ["private", [ ["npm:0.1.8", { "packageLocation": "./.yarn/cache/private-npm-0.1.8-1df19be5d6-4507890e0e.zip/node_modules/private/", "packageDependencies": [ ["private", "npm:0.1.8"] ], "linkType": "HARD", }] ]], ["process-nextick-args", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/process-nextick-args-npm-2.0.1-b8d7971609-ddeb0f07d0.zip/node_modules/process-nextick-args/", "packageDependencies": [ ["process-nextick-args", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["progress", [ ["npm:2.0.3", { "packageLocation": "./.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-c46ef5a1de.zip/node_modules/progress/", "packageDependencies": [ ["progress", "npm:2.0.3"] ], "linkType": "HARD", }] ]], ["promise-inflight", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/promise-inflight-npm-1.0.1-5bb925afac-c06bce0fc6.zip/node_modules/promise-inflight/", "packageDependencies": [ ["promise-inflight", "npm:1.0.1"] ], "linkType": "SOFT", }], ["virtual:0a601d06b9bb877e28dc3c2bf132b715e8c8db39518cb037053d3e960e698b842f18c4ad29c4dbd116bd79f31c565cbbc9741fa4573e2713fab36fd780658f57#npm:1.0.1", { "packageLocation": "./.yarn/$$virtual/promise-inflight-virtual-679eed6a0f/0/cache/promise-inflight-npm-1.0.1-5bb925afac-c06bce0fc6.zip/node_modules/promise-inflight/", "packageDependencies": [ ["promise-inflight", "virtual:0a601d06b9bb877e28dc3c2bf132b715e8c8db39518cb037053d3e960e698b842f18c4ad29c4dbd116bd79f31c565cbbc9741fa4573e2713fab36fd780658f57#npm:1.0.1"], ["bluebird", "npm:3.7.2"] ], "packagePeers": [ "bluebird" ], "linkType": "HARD", }] ]], ["promise-retry", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/promise-retry-npm-1.1.1-56f07257a8-a2ed89ee42.zip/node_modules/promise-retry/", "packageDependencies": [ ["promise-retry", "npm:1.1.1"], ["err-code", "npm:1.1.2"], ["retry", "npm:0.10.1"] ], "linkType": "HARD", }] ]], ["prompts", [ ["npm:2.3.1", { "packageLocation": "./.yarn/cache/prompts-npm-2.3.1-caf3dd3e5c-c8b6f82ff8.zip/node_modules/prompts/", "packageDependencies": [ ["prompts", "npm:2.3.1"], ["kleur", "npm:3.0.3"], ["sisteransi", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["promzard", [ ["npm:0.3.0", { "packageLocation": "./.yarn/cache/promzard-npm-0.3.0-a81958bbdb-d907a0a780.zip/node_modules/promzard/", "packageDependencies": [ ["promzard", "npm:0.3.0"], ["read", "npm:1.0.7"] ], "linkType": "HARD", }] ]], ["proto-list", [ ["npm:1.2.4", { "packageLocation": "./.yarn/cache/proto-list-npm-1.2.4-a96a43df28-e722a11c66.zip/node_modules/proto-list/", "packageDependencies": [ ["proto-list", "npm:1.2.4"] ], "linkType": "HARD", }] ]], ["protoduck", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/protoduck-npm-5.0.1-84eeb96608-457d23035d.zip/node_modules/protoduck/", "packageDependencies": [ ["protoduck", "npm:5.0.1"], ["genfun", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["prr", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/prr-npm-1.0.1-608d442761-ac5c0986b4.zip/node_modules/prr/", "packageDependencies": [ ["prr", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["pseudomap", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/pseudomap-npm-1.0.2-0d0e40fee0-1ad1802645.zip/node_modules/pseudomap/", "packageDependencies": [ ["pseudomap", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["psl", [ ["npm:1.8.0", { "packageLocation": "./.yarn/cache/psl-npm-1.8.0-226099d70e-92d47c6257.zip/node_modules/psl/", "packageDependencies": [ ["psl", "npm:1.8.0"] ], "linkType": "HARD", }] ]], ["pump", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/pump-npm-2.0.1-05afac7fc4-25c657a8f6.zip/node_modules/pump/", "packageDependencies": [ ["pump", "npm:2.0.1"], ["end-of-stream", "npm:1.4.4"], ["once", "npm:1.4.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/pump-npm-3.0.0-0080bf6a7a-5464d5cf6c.zip/node_modules/pump/", "packageDependencies": [ ["pump", "npm:3.0.0"], ["end-of-stream", "npm:1.4.4"], ["once", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["pumpify", [ ["npm:1.5.1", { "packageLocation": "./.yarn/cache/pumpify-npm-1.5.1-b928bd877f-c143607284.zip/node_modules/pumpify/", "packageDependencies": [ ["pumpify", "npm:1.5.1"], ["duplexify", "npm:3.7.1"], ["inherits", "npm:2.0.4"], ["pump", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["punycode", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/punycode-npm-2.1.1-26eb3e15cf-0202dc191c.zip/node_modules/punycode/", "packageDependencies": [ ["punycode", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["q", [ ["npm:1.5.1", { "packageLocation": "./.yarn/cache/q-npm-1.5.1-a28b3cfeaf-f610c1295a.zip/node_modules/q/", "packageDependencies": [ ["q", "npm:1.5.1"] ], "linkType": "HARD", }] ]], ["qrcode-terminal", [ ["npm:0.12.0", { "packageLocation": "./.yarn/cache/qrcode-terminal-npm-0.12.0-f81f8a6a67-2ad53e81dc.zip/node_modules/qrcode-terminal/", "packageDependencies": [ ["qrcode-terminal", "npm:0.12.0"] ], "linkType": "HARD", }] ]], ["qs", [ ["npm:6.5.2", { "packageLocation": "./.yarn/cache/qs-npm-6.5.2-dbf9d8386b-fa0410eff2.zip/node_modules/qs/", "packageDependencies": [ ["qs", "npm:6.5.2"] ], "linkType": "HARD", }] ]], ["query-string", [ ["npm:6.13.1", { "packageLocation": "./.yarn/cache/query-string-npm-6.13.1-9e8c5bfe09-5e640f0cf6.zip/node_modules/query-string/", "packageDependencies": [ ["query-string", "npm:6.13.1"], ["decode-uri-component", "npm:0.2.0"], ["split-on-first", "npm:1.1.0"], ["strict-uri-encode", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["quick-lru", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/quick-lru-npm-1.1.0-c6573eb93f-b1e9e3561a.zip/node_modules/quick-lru/", "packageDependencies": [ ["quick-lru", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["qw", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/qw-npm-1.0.1-8ed7133e3a-c7d16303a4.zip/node_modules/qw/", "packageDependencies": [ ["qw", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["rc", [ ["npm:1.2.8", { "packageLocation": "./.yarn/cache/rc-npm-1.2.8-d6768ac936-ea2b7f7cee.zip/node_modules/rc/", "packageDependencies": [ ["rc", "npm:1.2.8"], ["deep-extend", "npm:0.6.0"], ["ini", "npm:1.3.7"], ["minimist", "npm:1.2.5"], ["strip-json-comments", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["react-is", [ ["npm:16.13.0", { "packageLocation": "./.yarn/cache/react-is-npm-16.13.0-eba0298368-122f38efe0.zip/node_modules/react-is/", "packageDependencies": [ ["react-is", "npm:16.13.0"] ], "linkType": "HARD", }], ["npm:17.0.1", { "packageLocation": "./.yarn/cache/react-is-npm-17.0.1-876b80f7e5-5a83dfc78e.zip/node_modules/react-is/", "packageDependencies": [ ["react-is", "npm:17.0.1"] ], "linkType": "HARD", }] ]], ["read", [ ["npm:1.0.7", { "packageLocation": "./.yarn/cache/read-npm-1.0.7-950ec74ca8-78dd30f529.zip/node_modules/read/", "packageDependencies": [ ["read", "npm:1.0.7"], ["mute-stream", "npm:0.0.8"] ], "linkType": "HARD", }] ]], ["read-cmd-shim", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/read-cmd-shim-npm-1.0.5-54963b0bd1-f7dbfe2116.zip/node_modules/read-cmd-shim/", "packageDependencies": [ ["read-cmd-shim", "npm:1.0.5"], ["graceful-fs", "npm:4.2.4"] ], "linkType": "HARD", }] ]], ["read-installed", [ ["npm:4.0.3", { "packageLocation": "./.yarn/cache/read-installed-npm-4.0.3-10a38d88c6-a99afce32f.zip/node_modules/read-installed/", "packageDependencies": [ ["read-installed", "npm:4.0.3"], ["debuglog", "npm:1.0.1"], ["graceful-fs", "npm:4.2.4"], ["read-package-json", "npm:2.1.1"], ["readdir-scoped-modules", "npm:1.1.0"], ["semver", "npm:5.7.1"], ["slide", "npm:1.1.6"], ["util-extend", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["read-package-json", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/read-package-json-npm-2.1.1-83f4de9624-123b4e6a8f.zip/node_modules/read-package-json/", "packageDependencies": [ ["read-package-json", "npm:2.1.1"], ["glob", "npm:7.1.6"], ["graceful-fs", "npm:4.2.4"], ["json-parse-better-errors", "npm:1.0.2"], ["normalize-package-data", "npm:2.5.0"], ["npm-normalize-package-bin", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["read-package-tree", [ ["npm:5.3.1", { "packageLocation": "./.yarn/cache/read-package-tree-npm-5.3.1-99bbcdb445-122f219db3.zip/node_modules/read-package-tree/", "packageDependencies": [ ["read-package-tree", "npm:5.3.1"], ["read-package-json", "npm:2.1.1"], ["readdir-scoped-modules", "npm:1.1.0"], ["util-promisify", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["read-pkg", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/read-pkg-npm-2.0.0-4715901f4f-ddf911317f.zip/node_modules/read-pkg/", "packageDependencies": [ ["read-pkg", "npm:2.0.0"], ["load-json-file", "npm:2.0.0"], ["normalize-package-data", "npm:2.5.0"], ["path-type", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/read-pkg-npm-3.0.0-41471436cb-8cc577b41d.zip/node_modules/read-pkg/", "packageDependencies": [ ["read-pkg", "npm:3.0.0"], ["load-json-file", "npm:4.0.0"], ["normalize-package-data", "npm:2.5.0"], ["path-type", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:5.2.0", { "packageLocation": "./.yarn/cache/read-pkg-npm-5.2.0-50426bd8dc-641102f095.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.0.0"], ["type-fest", "npm:0.6.0"] ], "linkType": "HARD", }] ]], ["read-pkg-up", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/read-pkg-up-npm-2.0.0-34b8096760-f35e4cb457.zip/node_modules/read-pkg-up/", "packageDependencies": [ ["read-pkg-up", "npm:2.0.0"], ["find-up", "npm:2.1.0"], ["read-pkg", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/read-pkg-up-npm-3.0.0-3d7faf047f-3ef50bea6d.zip/node_modules/read-pkg-up/", "packageDependencies": [ ["read-pkg-up", "npm:3.0.0"], ["find-up", "npm:2.1.0"], ["read-pkg", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:7.0.1", { "packageLocation": "./.yarn/cache/read-pkg-up-npm-7.0.1-11895bed9a-b8f97cc1f8.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:1.1.14", { "packageLocation": "./.yarn/cache/readable-stream-npm-1.1.14-41e61d1768-e4c30b6b84.zip/node_modules/readable-stream/", "packageDependencies": [ ["readable-stream", "npm:1.1.14"], ["core-util-is", "npm:1.0.2"], ["inherits", "npm:2.0.4"], ["isarray", "npm:0.0.1"], ["string_decoder", "npm:0.10.31"] ], "linkType": "HARD", }], ["npm:2.3.7", { "packageLocation": "./.yarn/cache/readable-stream-npm-2.3.7-77b22a9818-6e38265606.zip/node_modules/readable-stream/", "packageDependencies": [ ["readable-stream", "npm:2.3.7"], ["core-util-is", "npm:1.0.2"], ["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", }], ["npm:3.6.0", { "packageLocation": "./.yarn/cache/readable-stream-npm-3.6.0-23a4a5eb56-f178b1daa8.zip/node_modules/readable-stream/", "packageDependencies": [ ["readable-stream", "npm:3.6.0"], ["inherits", "npm:2.0.4"], ["string_decoder", "npm:1.3.0"], ["util-deprecate", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["readdir-scoped-modules", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/readdir-scoped-modules-npm-1.1.0-651d6882ac-7e39782c05.zip/node_modules/readdir-scoped-modules/", "packageDependencies": [ ["readdir-scoped-modules", "npm:1.1.0"], ["debuglog", "npm:1.0.1"], ["dezalgo", "npm:1.0.3"], ["graceful-fs", "npm:4.2.4"], ["once", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["readdirp", [ ["npm:2.2.1", { "packageLocation": "./.yarn/cache/readdirp-npm-2.2.1-33cb5df2b8-00b5209ee5.zip/node_modules/readdirp/", "packageDependencies": [ ["readdirp", "npm:2.2.1"], ["graceful-fs", "npm:4.2.4"], ["micromatch", "npm:3.1.10"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }], ["npm:3.5.0", { "packageLocation": "./.yarn/cache/readdirp-npm-3.5.0-a1b1568d32-a64fe56069.zip/node_modules/readdirp/", "packageDependencies": [ ["readdirp", "npm:3.5.0"], ["picomatch", "npm:2.2.1"] ], "linkType": "HARD", }] ]], ["redent", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/redent-npm-2.0.0-5d84066a99-6ab1884452.zip/node_modules/redent/", "packageDependencies": [ ["redent", "npm:2.0.0"], ["indent-string", "npm:3.2.0"], ["strip-indent", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["redeyed", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/redeyed-npm-2.1.1-7cbceb60bb-2e8e1eebac.zip/node_modules/redeyed/", "packageDependencies": [ ["redeyed", "npm:2.1.1"], ["esprima", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["regenerate", [ ["npm:1.4.0", { "packageLocation": "./.yarn/cache/regenerate-npm-1.4.0-57972aeb0d-d797b03573.zip/node_modules/regenerate/", "packageDependencies": [ ["regenerate", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["regenerate-unicode-properties", [ ["npm:8.2.0", { "packageLocation": "./.yarn/cache/regenerate-unicode-properties-npm-8.2.0-0e54c6463c-afe83304fb.zip/node_modules/regenerate-unicode-properties/", "packageDependencies": [ ["regenerate-unicode-properties", "npm:8.2.0"], ["regenerate", "npm:1.4.0"] ], "linkType": "HARD", }] ]], ["regenerator-runtime", [ ["npm:0.13.3", { "packageLocation": "./.yarn/cache/regenerator-runtime-npm-0.13.3-bc3b9ae29d-fc026f9978.zip/node_modules/regenerator-runtime/", "packageDependencies": [ ["regenerator-runtime", "npm:0.13.3"] ], "linkType": "HARD", }], ["npm:0.13.4", { "packageLocation": "./.yarn/cache/regenerator-runtime-npm-0.13.4-09f9ad5d1a-d6165e7ba6.zip/node_modules/regenerator-runtime/", "packageDependencies": [ ["regenerator-runtime", "npm:0.13.4"] ], "linkType": "HARD", }] ]], ["regenerator-transform", [ ["npm:0.14.2", { "packageLocation": "./.yarn/cache/regenerator-transform-npm-0.14.2-5f04ab3b5c-c0d2768e20.zip/node_modules/regenerator-transform/", "packageDependencies": [ ["regenerator-transform", "npm:0.14.2"], ["@babel/runtime", "npm:7.8.7"], ["private", "npm:0.1.8"] ], "linkType": "HARD", }] ]], ["regex-not", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/regex-not-npm-1.0.2-06a03c9206-3d6d95b4fd.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.1.0", { "packageLocation": "./.yarn/cache/regexpp-npm-3.1.0-94a1868d49-69d0ce6b44.zip/node_modules/regexpp/", "packageDependencies": [ ["regexpp", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["regexpu-core", [ ["npm:4.7.0", { "packageLocation": "./.yarn/cache/regexpu-core-npm-4.7.0-13146d273f-8947f4c4ac.zip/node_modules/regexpu-core/", "packageDependencies": [ ["regexpu-core", "npm:4.7.0"], ["regenerate", "npm:1.4.0"], ["regenerate-unicode-properties", "npm:8.2.0"], ["regjsgen", "npm:0.5.1"], ["regjsparser", "npm:0.6.4"], ["unicode-match-property-ecmascript", "npm:1.0.4"], ["unicode-match-property-value-ecmascript", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["registry-auth-token", [ ["npm:3.4.0", { "packageLocation": "./.yarn/cache/registry-auth-token-npm-3.4.0-8d37d49151-a5f3e8288f.zip/node_modules/registry-auth-token/", "packageDependencies": [ ["registry-auth-token", "npm:3.4.0"], ["rc", "npm:1.2.8"], ["safe-buffer", "npm:5.2.1"] ], "linkType": "HARD", }], ["npm:4.1.1", { "packageLocation": "./.yarn/cache/registry-auth-token-npm-4.1.1-456400e0c3-d44404c5d4.zip/node_modules/registry-auth-token/", "packageDependencies": [ ["registry-auth-token", "npm:4.1.1"], ["rc", "npm:1.2.8"] ], "linkType": "HARD", }] ]], ["registry-url", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/registry-url-npm-3.1.0-68f1c80875-f0bdf9be94.zip/node_modules/registry-url/", "packageDependencies": [ ["registry-url", "npm:3.1.0"], ["rc", "npm:1.2.8"] ], "linkType": "HARD", }] ]], ["regjsgen", [ ["npm:0.5.1", { "packageLocation": "./.yarn/cache/regjsgen-npm-0.5.1-a873ae724c-6c032a9cbb.zip/node_modules/regjsgen/", "packageDependencies": [ ["regjsgen", "npm:0.5.1"] ], "linkType": "HARD", }] ]], ["regjsparser", [ ["npm:0.6.4", { "packageLocation": "./.yarn/cache/regjsparser-npm-0.6.4-d22abbbbd8-cf7838462e.zip/node_modules/regjsparser/", "packageDependencies": [ ["regjsparser", "npm:0.6.4"], ["jsesc", "npm:0.5.0"] ], "linkType": "HARD", }] ]], ["remove-trailing-separator", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/remove-trailing-separator-npm-1.1.0-16d7231316-17dadf3d1f.zip/node_modules/remove-trailing-separator/", "packageDependencies": [ ["remove-trailing-separator", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["repeat-element", [ ["npm:1.1.3", { "packageLocation": "./.yarn/cache/repeat-element-npm-1.1.3-a9dee226b4-6a59b879ef.zip/node_modules/repeat-element/", "packageDependencies": [ ["repeat-element", "npm:1.1.3"] ], "linkType": "HARD", }] ]], ["repeat-string", [ ["npm:1.6.1", { "packageLocation": "./.yarn/cache/repeat-string-npm-1.6.1-bc8e388655-99c431ba7b.zip/node_modules/repeat-string/", "packageDependencies": [ ["repeat-string", "npm:1.6.1"] ], "linkType": "HARD", }] ]], ["request", [ ["npm:2.88.2", { "packageLocation": "./.yarn/cache/request-npm-2.88.2-f4a57c72c4-7a74841f30.zip/node_modules/request/", "packageDependencies": [ ["request", "npm:2.88.2"], ["aws-sign2", "npm:0.7.0"], ["aws4", "npm:1.10.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.3"], ["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.27"], ["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.3", { "packageLocation": "./.yarn/cache/request-promise-core-npm-1.1.3-1b898b5c44-1235a6071b.zip/node_modules/request-promise-core/", "packageDependencies": [ ["request-promise-core", "npm:1.1.3"] ], "linkType": "SOFT", }], ["virtual:fa83d52606f88f5d4883065832f0cdf4ea8a9bbcfcb2d834143aca74ed3e8c4659008cfb281e451951e5c5c2ba03f8641c92442f106eae3de66f66789f3f66c4#npm:1.1.3", { "packageLocation": "./.yarn/$$virtual/request-promise-core-virtual-812bce0f02/0/cache/request-promise-core-npm-1.1.3-1b898b5c44-1235a6071b.zip/node_modules/request-promise-core/", "packageDependencies": [ ["request-promise-core", "virtual:fa83d52606f88f5d4883065832f0cdf4ea8a9bbcfcb2d834143aca74ed3e8c4659008cfb281e451951e5c5c2ba03f8641c92442f106eae3de66f66789f3f66c4#npm:1.1.3"], ["@types/request", null], ["lodash", "npm:4.17.19"], ["request", "npm:2.88.2"] ], "packagePeers": [ "@types/request", "request" ], "linkType": "HARD", }] ]], ["request-promise-native", [ ["npm:1.0.8", { "packageLocation": "./.yarn/cache/request-promise-native-npm-1.0.8-45c7cbe307-29986fe3cc.zip/node_modules/request-promise-native/", "packageDependencies": [ ["request-promise-native", "npm:1.0.8"] ], "linkType": "SOFT", }], ["virtual:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:1.0.8", { "packageLocation": "./.yarn/$$virtual/request-promise-native-virtual-fa83d52606/0/cache/request-promise-native-npm-1.0.8-45c7cbe307-29986fe3cc.zip/node_modules/request-promise-native/", "packageDependencies": [ ["request-promise-native", "virtual:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:1.0.8"], ["@types/request", null], ["request", "npm:2.88.2"], ["request-promise-core", "virtual:fa83d52606f88f5d4883065832f0cdf4ea8a9bbcfcb2d834143aca74ed3e8c4659008cfb281e451951e5c5c2ba03f8641c92442f106eae3de66f66789f3f66c4#npm:1.1.3"], ["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": "./.yarn/cache/require-directory-npm-2.1.1-8608aee50b-f495d02d89.zip/node_modules/require-directory/", "packageDependencies": [ ["require-directory", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["require-main-filename", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/require-main-filename-npm-1.0.1-a5028aafe6-26719298b8.zip/node_modules/require-main-filename/", "packageDependencies": [ ["require-main-filename", "npm:1.0.1"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/require-main-filename-npm-2.0.0-03eef65c84-8d3633149a.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=3388aa", { "packageLocation": "./.yarn/cache/resolve-patch-38ce149af0-4bcfb56886.zip/node_modules/resolve/", "packageDependencies": [ ["resolve", "patch:resolve@npm%3A1.17.0#builtin::version=1.17.0&hash=3388aa"], ["path-parse", "npm:1.0.6"] ], "linkType": "HARD", }], ["patch:resolve@npm%3A1.20.0#builtin::version=1.20.0&hash=3388aa", { "packageLocation": "./.yarn/cache/resolve-patch-55fcdb097c-c4a515b760.zip/node_modules/resolve/", "packageDependencies": [ ["resolve", "patch:resolve@npm%3A1.20.0#builtin::version=1.20.0&hash=3388aa"], ["is-core-module", "npm:2.2.0"], ["path-parse", "npm:1.0.6"] ], "linkType": "HARD", }] ]], ["resolve-cwd", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/resolve-cwd-npm-3.0.0-e6f4e296bf-97edfbbf83.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": "./.yarn/cache/resolve-from-npm-4.0.0-f758ec21bf-87a4357c0c.zip/node_modules/resolve-from/", "packageDependencies": [ ["resolve-from", "npm:4.0.0"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/resolve-from-npm-5.0.0-15c9db4d33-0d29fc7012.zip/node_modules/resolve-from/", "packageDependencies": [ ["resolve-from", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["resolve-url", [ ["npm:0.2.1", { "packageLocation": "./.yarn/cache/resolve-url-npm-0.2.1-39edb8f908-9e1cd0028d.zip/node_modules/resolve-url/", "packageDependencies": [ ["resolve-url", "npm:0.2.1"] ], "linkType": "HARD", }] ]], ["ret", [ ["npm:0.1.15", { "packageLocation": "./.yarn/cache/ret-npm-0.1.15-0d3c19de76-749c2fcae7.zip/node_modules/ret/", "packageDependencies": [ ["ret", "npm:0.1.15"] ], "linkType": "HARD", }] ]], ["retry", [ ["npm:0.10.1", { "packageLocation": "./.yarn/cache/retry-npm-0.10.1-49d64d46ee-431b8b2e75.zip/node_modules/retry/", "packageDependencies": [ ["retry", "npm:0.10.1"] ], "linkType": "HARD", }], ["npm:0.12.0", { "packageLocation": "./.yarn/cache/retry-npm-0.12.0-72ac7fb4cc-51f2fddddb.zip/node_modules/retry/", "packageDependencies": [ ["retry", "npm:0.12.0"] ], "linkType": "HARD", }] ]], ["reusify", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/reusify-npm-1.0.4-95ac4aec11-08ef02ed05.zip/node_modules/reusify/", "packageDependencies": [ ["reusify", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["rimraf", [ ["npm:2.6.3", { "packageLocation": "./.yarn/cache/rimraf-npm-2.6.3-f34c6c72ec-c9ce1854f1.zip/node_modules/rimraf/", "packageDependencies": [ ["rimraf", "npm:2.6.3"], ["glob", "npm:7.1.6"] ], "linkType": "HARD", }], ["npm:2.7.1", { "packageLocation": "./.yarn/cache/rimraf-npm-2.7.1-9a71f3cc37-059efac283.zip/node_modules/rimraf/", "packageDependencies": [ ["rimraf", "npm:2.7.1"], ["glob", "npm:7.1.6"] ], "linkType": "HARD", }], ["npm:3.0.2", { "packageLocation": "./.yarn/cache/rimraf-npm-3.0.2-2cb7dac69a-f0de3e4455.zip/node_modules/rimraf/", "packageDependencies": [ ["rimraf", "npm:3.0.2"], ["glob", "npm:7.1.6"] ], "linkType": "HARD", }] ]], ["rsvp", [ ["npm:4.8.5", { "packageLocation": "./.yarn/cache/rsvp-npm-4.8.5-09f3c6ed40-eb70274fb3.zip/node_modules/rsvp/", "packageDependencies": [ ["rsvp", "npm:4.8.5"] ], "linkType": "HARD", }] ]], ["run-parallel", [ ["npm:1.1.9", { "packageLocation": "./.yarn/cache/run-parallel-npm-1.1.9-83c6b2d620-a05ca86e99.zip/node_modules/run-parallel/", "packageDependencies": [ ["run-parallel", "npm:1.1.9"] ], "linkType": "HARD", }] ]], ["run-queue", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/run-queue-npm-1.0.3-a704fcadc0-ffc37a7b55.zip/node_modules/run-queue/", "packageDependencies": [ ["run-queue", "npm:1.0.3"], ["aproba", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["safe-buffer", [ ["npm:5.1.2", { "packageLocation": "./.yarn/cache/safe-buffer-npm-5.1.2-c27fedf6c4-2708587c1b.zip/node_modules/safe-buffer/", "packageDependencies": [ ["safe-buffer", "npm:5.1.2"] ], "linkType": "HARD", }], ["npm:5.2.1", { "packageLocation": "./.yarn/cache/safe-buffer-npm-5.2.1-3481c8aa9b-0bb57f0d8f.zip/node_modules/safe-buffer/", "packageDependencies": [ ["safe-buffer", "npm:5.2.1"] ], "linkType": "HARD", }] ]], ["safe-regex", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/safe-regex-npm-1.1.0-a908e8515c-c355e3163f.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": "./.yarn/cache/safer-buffer-npm-2.1.2-8d5c0b705e-549ba83f5b.zip/node_modules/safer-buffer/", "packageDependencies": [ ["safer-buffer", "npm:2.1.2"] ], "linkType": "HARD", }] ]], ["sane", [ ["npm:4.1.0", { "packageLocation": "./.yarn/cache/sane-npm-4.1.0-8ab7d6a963-e384e25202.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.0"], ["walker", "npm:1.0.7"] ], "linkType": "HARD", }] ]], ["saxes", [ ["npm:5.0.1", { "packageLocation": "./.yarn/cache/saxes-npm-5.0.1-57abf031ae-6ad14be68d.zip/node_modules/saxes/", "packageDependencies": [ ["saxes", "npm:5.0.1"], ["xmlchars", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["semantic-release", [ ["npm:17.1.1", { "packageLocation": "./.yarn/cache/semantic-release-npm-17.1.1-cb512af803-991b468ef8.zip/node_modules/semantic-release/", "packageDependencies": [ ["semantic-release", "npm:17.1.1"], ["@semantic-release/commit-analyzer", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:8.0.1"], ["@semantic-release/error", "npm:2.2.0"], ["@semantic-release/github", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.4"], ["@semantic-release/npm", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:7.0.3"], ["@semantic-release/release-notes-generator", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:9.0.1"], ["aggregate-error", "npm:3.0.1"], ["cosmiconfig", "npm:6.0.0"], ["debug", "virtual:4c5f7cc299b83262eb3a9bb14179ac688853e5f3f2c324199242888766c19babd20d9449718a9a02e38e43232b86e4a5ce0faf2781f0a525a28548dfab22ca7f#npm:4.1.1"], ["env-ci", "npm:5.0.1"], ["execa", "npm:4.0.0"], ["figures", "npm:3.2.0"], ["find-versions", "npm:3.2.0"], ["get-stream", "npm:5.1.0"], ["git-log-parser", "npm:1.2.0"], ["hook-std", "npm:2.0.0"], ["hosted-git-info", "npm:3.0.4"], ["lodash", "npm:4.17.19"], ["marked", "npm:1.0.0"], ["marked-terminal", "virtual:cb512af80328adf287e703e7f302c19660a03587a25dce918a02bb8099cc6d1a3b1cd91f30bfd72f8de3fc8a36e74378ad11d45a65acd812af846bc51ae1b16f#npm:4.0.0"], ["micromatch", "npm:4.0.2"], ["p-each-series", "npm:2.1.0"], ["p-reduce", "npm:2.1.0"], ["read-pkg-up", "npm:7.0.1"], ["resolve-from", "npm:5.0.0"], ["semver", "npm:7.3.2"], ["semver-diff", "npm:3.1.1"], ["signale", "npm:1.4.0"], ["yargs", "npm:15.3.1"] ], "linkType": "HARD", }] ]], ["semver", [ ["npm:5.7.1", { "packageLocation": "./.yarn/cache/semver-npm-5.7.1-40bcea106b-06ff0ed753.zip/node_modules/semver/", "packageDependencies": [ ["semver", "npm:5.7.1"] ], "linkType": "HARD", }], ["npm:6.3.0", { "packageLocation": "./.yarn/cache/semver-npm-6.3.0-b3eace8bfd-f0d155c06a.zip/node_modules/semver/", "packageDependencies": [ ["semver", "npm:6.3.0"] ], "linkType": "HARD", }], ["npm:7.0.0", { "packageLocation": "./.yarn/cache/semver-npm-7.0.0-218e8c00ca-5162b31e99.zip/node_modules/semver/", "packageDependencies": [ ["semver", "npm:7.0.0"] ], "linkType": "HARD", }], ["npm:7.3.2", { "packageLocation": "./.yarn/cache/semver-npm-7.3.2-161b023bbb-bceb46d396.zip/node_modules/semver/", "packageDependencies": [ ["semver", "npm:7.3.2"] ], "linkType": "HARD", }] ]], ["semver-diff", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/semver-diff-npm-2.1.0-eb54e62139-b24b825e81.zip/node_modules/semver-diff/", "packageDependencies": [ ["semver-diff", "npm:2.1.0"], ["semver", "npm:5.7.1"] ], "linkType": "HARD", }], ["npm:3.1.1", { "packageLocation": "./.yarn/cache/semver-diff-npm-3.1.1-1207a795e9-d5c9b693e6.zip/node_modules/semver-diff/", "packageDependencies": [ ["semver-diff", "npm:3.1.1"], ["semver", "npm:6.3.0"] ], "linkType": "HARD", }] ]], ["semver-regex", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/semver-regex-npm-2.0.0-218c804009-9b96cc8bd5.zip/node_modules/semver-regex/", "packageDependencies": [ ["semver-regex", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["set-blocking", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/set-blocking-npm-2.0.0-49e2cffa24-0ac2403b0c.zip/node_modules/set-blocking/", "packageDependencies": [ ["set-blocking", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["set-value", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/set-value-npm-2.0.1-35da5f8180-a97a99a00c.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", }] ]], ["sha", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/sha-npm-3.0.0-5b248a15e0-0469b68989.zip/node_modules/sha/", "packageDependencies": [ ["sha", "npm:3.0.0"], ["graceful-fs", "npm:4.2.4"] ], "linkType": "HARD", }] ]], ["shebang-command", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/shebang-command-npm-1.2.0-8990ba5d1d-2a1e0092a6.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": "./.yarn/cache/shebang-command-npm-2.0.0-eb2b01921d-85aa394d8c.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": "./.yarn/cache/shebang-regex-npm-1.0.0-c3612b74e9-cf1a41cb09.zip/node_modules/shebang-regex/", "packageDependencies": [ ["shebang-regex", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/shebang-regex-npm-3.0.0-899a0cd65e-ea18044ffa.zip/node_modules/shebang-regex/", "packageDependencies": [ ["shebang-regex", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["shellwords", [ ["npm:0.1.1", { "packageLocation": "./.yarn/cache/shellwords-npm-0.1.1-a091a78197-3559ff5509.zip/node_modules/shellwords/", "packageDependencies": [ ["shellwords", "npm:0.1.1"] ], "linkType": "HARD", }] ]], ["signal-exit", [ ["npm:3.0.3", { "packageLocation": "./.yarn/cache/signal-exit-npm-3.0.3-5a2d797648-f8f3fec95c.zip/node_modules/signal-exit/", "packageDependencies": [ ["signal-exit", "npm:3.0.3"] ], "linkType": "HARD", }] ]], ["signale", [ ["npm:1.4.0", { "packageLocation": "./.yarn/cache/signale-npm-1.4.0-f7f88b1eb2-cf592d5465.zip/node_modules/signale/", "packageDependencies": [ ["signale", "npm:1.4.0"], ["chalk", "npm:2.4.2"], ["figures", "npm:2.0.0"], ["pkg-conf", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["sisteransi", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/sisteransi-npm-1.0.4-27233d9b2c-a8d203079e.zip/node_modules/sisteransi/", "packageDependencies": [ ["sisteransi", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["slash", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/slash-npm-2.0.0-69009eac54-19b39a8b71.zip/node_modules/slash/", "packageDependencies": [ ["slash", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:3.0.0", { "packageLocation": "./.yarn/cache/slash-npm-3.0.0-b87de2279a-fc3e8597d8.zip/node_modules/slash/", "packageDependencies": [ ["slash", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["slice-ansi", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/slice-ansi-npm-2.1.0-02505ccc06-7578393cac.zip/node_modules/slice-ansi/", "packageDependencies": [ ["slice-ansi", "npm:2.1.0"], ["ansi-styles", "npm:3.2.1"], ["astral-regex", "npm:1.0.0"], ["is-fullwidth-code-point", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["slide", [ ["npm:1.1.6", { "packageLocation": "./.yarn/cache/slide-npm-1.1.6-14e4650dea-13cc5b7889.zip/node_modules/slide/", "packageDependencies": [ ["slide", "npm:1.1.6"] ], "linkType": "HARD", }] ]], ["smart-buffer", [ ["npm:4.1.0", { "packageLocation": "./.yarn/cache/smart-buffer-npm-4.1.0-2a8829a5b4-00a23d82a2.zip/node_modules/smart-buffer/", "packageDependencies": [ ["smart-buffer", "npm:4.1.0"] ], "linkType": "HARD", }] ]], ["snapdragon", [ ["npm:0.8.2", { "packageLocation": "./.yarn/cache/snapdragon-npm-0.8.2-2bcc47d217-c30b63a732.zip/node_modules/snapdragon/", "packageDependencies": [ ["snapdragon", "npm:0.8.2"], ["base", "npm:0.11.2"], ["debug", "virtual:fa0173d26738ef894de6f639abae81ef8c1dc3fb742f450a622367c86186d9f4d23dbd3bcc38bbe27382c39f87e11cad6137dd70480a36e752eee25974706e2c#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": "./.yarn/cache/snapdragon-node-npm-2.1.1-78bc70e8e2-75918b0d60.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": "./.yarn/cache/snapdragon-util-npm-3.0.1-36b5a7829d-d1a7ab4171.zip/node_modules/snapdragon-util/", "packageDependencies": [ ["snapdragon-util", "npm:3.0.1"], ["kind-of", "npm:3.2.2"] ], "linkType": "HARD", }] ]], ["socks", [ ["npm:2.3.3", { "packageLocation": "./.yarn/cache/socks-npm-2.3.3-4de1d3cc4d-7078b67b57.zip/node_modules/socks/", "packageDependencies": [ ["socks", "npm:2.3.3"], ["ip", "npm:1.1.5"], ["smart-buffer", "npm:4.1.0"] ], "linkType": "HARD", }] ]], ["socks-proxy-agent", [ ["npm:4.0.2", { "packageLocation": "./.yarn/cache/socks-proxy-agent-npm-4.0.2-5b55c7e0e5-9ba2aa45f8.zip/node_modules/socks-proxy-agent/", "packageDependencies": [ ["socks-proxy-agent", "npm:4.0.2"], ["agent-base", "npm:4.2.1"], ["socks", "npm:2.3.3"] ], "linkType": "HARD", }] ]], ["sorted-object", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/sorted-object-npm-2.0.1-0dbb637f66-5c047a68c5.zip/node_modules/sorted-object/", "packageDependencies": [ ["sorted-object", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["sorted-union-stream", [ ["npm:2.1.3", { "packageLocation": "./.yarn/cache/sorted-union-stream-npm-2.1.3-600ca463e4-b7a603d2ef.zip/node_modules/sorted-union-stream/", "packageDependencies": [ ["sorted-union-stream", "npm:2.1.3"], ["from2", "npm:1.3.0"], ["stream-iterate", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["source-map", [ ["npm:0.5.7", { "packageLocation": "./.yarn/cache/source-map-npm-0.5.7-7c3f035429-737face965.zip/node_modules/source-map/", "packageDependencies": [ ["source-map", "npm:0.5.7"] ], "linkType": "HARD", }], ["npm:0.6.1", { "packageLocation": "./.yarn/cache/source-map-npm-0.6.1-1a3621db16-8647829a06.zip/node_modules/source-map/", "packageDependencies": [ ["source-map", "npm:0.6.1"] ], "linkType": "HARD", }], ["npm:0.7.3", { "packageLocation": "./.yarn/cache/source-map-npm-0.7.3-e3b4f7982a-351ce26ffa.zip/node_modules/source-map/", "packageDependencies": [ ["source-map", "npm:0.7.3"] ], "linkType": "HARD", }] ]], ["source-map-resolve", [ ["npm:0.5.3", { "packageLocation": "./.yarn/cache/source-map-resolve-npm-0.5.3-6502ae65ba-042ad0c0ba.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.16", { "packageLocation": "./.yarn/cache/source-map-support-npm-0.5.16-cbb8823949-cf44ce8b69.zip/node_modules/source-map-support/", "packageDependencies": [ ["source-map-support", "npm:0.5.16"], ["buffer-from", "npm:1.1.1"], ["source-map", "npm:0.6.1"] ], "linkType": "HARD", }] ]], ["source-map-url", [ ["npm:0.4.0", { "packageLocation": "./.yarn/cache/source-map-url-npm-0.4.0-011efde48b-84d509cfa1.zip/node_modules/source-map-url/", "packageDependencies": [ ["source-map-url", "npm:0.4.0"] ], "linkType": "HARD", }] ]], ["spawn-error-forwarder", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/spawn-error-forwarder-npm-1.0.0-38f2d288e0-de90037e8c.zip/node_modules/spawn-error-forwarder/", "packageDependencies": [ ["spawn-error-forwarder", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["spdx-correct", [ ["npm:3.1.1", { "packageLocation": "./.yarn/cache/spdx-correct-npm-3.1.1-47f574c27a-f3413eb225.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.5"] ], "linkType": "HARD", }] ]], ["spdx-exceptions", [ ["npm:2.3.0", { "packageLocation": "./.yarn/cache/spdx-exceptions-npm-2.3.0-2b68dad75a-3cbd249889.zip/node_modules/spdx-exceptions/", "packageDependencies": [ ["spdx-exceptions", "npm:2.3.0"] ], "linkType": "HARD", }] ]], ["spdx-expression-parse", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/spdx-expression-parse-npm-3.0.1-b718cbb35a-f0211cada3.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.5"] ], "linkType": "HARD", }] ]], ["spdx-license-ids", [ ["npm:3.0.5", { "packageLocation": "./.yarn/cache/spdx-license-ids-npm-3.0.5-cb028e9441-4ff7c0615a.zip/node_modules/spdx-license-ids/", "packageDependencies": [ ["spdx-license-ids", "npm:3.0.5"] ], "linkType": "HARD", }] ]], ["split", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/split-npm-1.0.1-88871d88a2-ed6bb44fd1.zip/node_modules/split/", "packageDependencies": [ ["split", "npm:1.0.1"], ["through", "npm:2.3.8"] ], "linkType": "HARD", }] ]], ["split-on-first", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/split-on-first-npm-1.1.0-e2f3ab5e4e-2ef26fee62.zip/node_modules/split-on-first/", "packageDependencies": [ ["split-on-first", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["split-string", [ ["npm:3.1.0", { "packageLocation": "./.yarn/cache/split-string-npm-3.1.0-df5d83450e-9b610d1509.zip/node_modules/split-string/", "packageDependencies": [ ["split-string", "npm:3.1.0"], ["extend-shallow", "npm:3.0.2"] ], "linkType": "HARD", }] ]], ["split2", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/split2-npm-1.0.0-7324a8c8dd-fa34242807.zip/node_modules/split2/", "packageDependencies": [ ["split2", "npm:1.0.0"], ["through2", "npm:2.0.5"] ], "linkType": "HARD", }], ["npm:2.2.0", { "packageLocation": "./.yarn/cache/split2-npm-2.2.0-737721dc35-cf58dc8aa4.zip/node_modules/split2/", "packageDependencies": [ ["split2", "npm:2.2.0"], ["through2", "npm:2.0.5"] ], "linkType": "HARD", }] ]], ["sprintf-js", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/sprintf-js-npm-1.0.3-73f0a322fa-51df1bce9e.zip/node_modules/sprintf-js/", "packageDependencies": [ ["sprintf-js", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["sshpk", [ ["npm:1.16.1", { "packageLocation": "./.yarn/cache/sshpk-npm-1.16.1-feb759e7e0-4bd7422634.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:6.0.1", { "packageLocation": "./.yarn/cache/ssri-npm-6.0.1-a40d823fc9-828c8c24c9.zip/node_modules/ssri/", "packageDependencies": [ ["ssri", "npm:6.0.1"], ["figgy-pudding", "npm:3.5.2"] ], "linkType": "HARD", }] ]], ["stack-utils", [ ["npm:2.0.2", { "packageLocation": "./.yarn/cache/stack-utils-npm-2.0.2-2ae6e16cf5-a9fa702767.zip/node_modules/stack-utils/", "packageDependencies": [ ["stack-utils", "npm:2.0.2"], ["escape-string-regexp", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["static-extend", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/static-extend-npm-0.1.2-2720ee6882-c42052c352.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": "./.yarn/cache/stealthy-require-npm-1.1.1-0105ec8207-f24a9bc613.zip/node_modules/stealthy-require/", "packageDependencies": [ ["stealthy-require", "npm:1.1.1"] ], "linkType": "HARD", }] ]], ["stream-combiner2", [ ["npm:1.1.1", { "packageLocation": "./.yarn/cache/stream-combiner2-npm-1.1.1-72d11c75e4-ca0ae23ed6.zip/node_modules/stream-combiner2/", "packageDependencies": [ ["stream-combiner2", "npm:1.1.1"], ["duplexer2", "npm:0.1.4"], ["readable-stream", "npm:2.3.7"] ], "linkType": "HARD", }] ]], ["stream-each", [ ["npm:1.2.3", { "packageLocation": "./.yarn/cache/stream-each-npm-1.2.3-ff15985d6a-2b64a88075.zip/node_modules/stream-each/", "packageDependencies": [ ["stream-each", "npm:1.2.3"], ["end-of-stream", "npm:1.4.4"], ["stream-shift", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["stream-iterate", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/stream-iterate-npm-1.2.0-ec079ef618-f0692e61cb.zip/node_modules/stream-iterate/", "packageDependencies": [ ["stream-iterate", "npm:1.2.0"], ["readable-stream", "npm:2.3.7"], ["stream-shift", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["stream-shift", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/stream-shift-npm-1.0.1-9526210fa7-5d777b222e.zip/node_modules/stream-shift/", "packageDependencies": [ ["stream-shift", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["strict-uri-encode", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/strict-uri-encode-npm-2.0.0-1ec3189376-775012e88b.zip/node_modules/strict-uri-encode/", "packageDependencies": [ ["strict-uri-encode", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["string-length", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/string-length-npm-4.0.1-f4a493417a-afc4338247.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": "./.yarn/cache/string-width-npm-1.0.2-01031f9add-b11745daa9.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:2.1.1", { "packageLocation": "./.yarn/cache/string-width-npm-2.1.1-0c2c6ae53f-906b4887c3.zip/node_modules/string-width/", "packageDependencies": [ ["string-width", "npm:2.1.1"], ["is-fullwidth-code-point", "npm:2.0.0"], ["strip-ansi", "npm:4.0.0"] ], "linkType": "HARD", }], ["npm:3.1.0", { "packageLocation": "./.yarn/cache/string-width-npm-3.1.0-e031bfa4e0-54c5d1842d.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": "./.yarn/cache/string-width-npm-4.2.0-c4a2a66200-cf1e8acddf.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", }] ]], ["string.prototype.trimend", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/string.prototype.trimend-npm-1.0.1-c110c5981f-93046463de.zip/node_modules/string.prototype.trimend/", "packageDependencies": [ ["string.prototype.trimend", "npm:1.0.1"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.17.6"] ], "linkType": "HARD", }], ["npm:1.0.3", { "packageLocation": "./.yarn/cache/string.prototype.trimend-npm-1.0.3-c0c24507b7-0dd169f2e1.zip/node_modules/string.prototype.trimend/", "packageDependencies": [ ["string.prototype.trimend", "npm:1.0.3"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"] ], "linkType": "HARD", }] ]], ["string.prototype.trimstart", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/string.prototype.trimstart-npm-1.0.1-86888269b6-20c4a940f1.zip/node_modules/string.prototype.trimstart/", "packageDependencies": [ ["string.prototype.trimstart", "npm:1.0.1"], ["define-properties", "npm:1.1.3"], ["es-abstract", "npm:1.17.6"] ], "linkType": "HARD", }], ["npm:1.0.3", { "packageLocation": "./.yarn/cache/string.prototype.trimstart-npm-1.0.3-dcb692d4d7-09468693c9.zip/node_modules/string.prototype.trimstart/", "packageDependencies": [ ["string.prototype.trimstart", "npm:1.0.3"], ["call-bind", "npm:1.0.2"], ["define-properties", "npm:1.1.3"] ], "linkType": "HARD", }] ]], ["string_decoder", [ ["npm:0.10.31", { "packageLocation": "./.yarn/cache/string_decoder-npm-0.10.31-851f3f7302-ae53bca379.zip/node_modules/string_decoder/", "packageDependencies": [ ["string_decoder", "npm:0.10.31"] ], "linkType": "HARD", }], ["npm:1.1.1", { "packageLocation": "./.yarn/cache/string_decoder-npm-1.1.1-e46a6c1353-bc2dc169d8.zip/node_modules/string_decoder/", "packageDependencies": [ ["string_decoder", "npm:1.1.1"], ["safe-buffer", "npm:5.1.2"] ], "linkType": "HARD", }], ["npm:1.3.0", { "packageLocation": "./.yarn/cache/string_decoder-npm-1.3.0-2422117fd0-0a09afb610.zip/node_modules/string_decoder/", "packageDependencies": [ ["string_decoder", "npm:1.3.0"], ["safe-buffer", "npm:5.2.1"] ], "linkType": "HARD", }] ]], ["stringify-package", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/stringify-package-npm-1.0.1-dfc7255692-2ce6591b99.zip/node_modules/stringify-package/", "packageDependencies": [ ["stringify-package", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["strip-ansi", [ ["npm:3.0.1", { "packageLocation": "./.yarn/cache/strip-ansi-npm-3.0.1-6aec1365b9-98772dcf44.zip/node_modules/strip-ansi/", "packageDependencies": [ ["strip-ansi", "npm:3.0.1"], ["ansi-regex", "npm:2.1.1"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/strip-ansi-npm-4.0.0-d4de985014-9ac63872c2.zip/node_modules/strip-ansi/", "packageDependencies": [ ["strip-ansi", "npm:4.0.0"], ["ansi-regex", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:5.2.0", { "packageLocation": "./.yarn/cache/strip-ansi-npm-5.2.0-275214c316-44a0d0d354.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": "./.yarn/cache/strip-ansi-npm-6.0.0-904613e9eb-10568c91ca.zip/node_modules/strip-ansi/", "packageDependencies": [ ["strip-ansi", "npm:6.0.0"], ["ansi-regex", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["strip-bom", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/strip-bom-npm-3.0.0-71e8f81ff9-361dd1dd08.zip/node_modules/strip-bom/", "packageDependencies": [ ["strip-bom", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/strip-bom-npm-4.0.0-97d367a64d-25a231aacb.zip/node_modules/strip-bom/", "packageDependencies": [ ["strip-bom", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["strip-eof", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/strip-eof-npm-1.0.0-d82eaf947c-905cd8718a.zip/node_modules/strip-eof/", "packageDependencies": [ ["strip-eof", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["strip-final-newline", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/strip-final-newline-npm-2.0.0-340c4f7c66-74dbd8a602.zip/node_modules/strip-final-newline/", "packageDependencies": [ ["strip-final-newline", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["strip-indent", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/strip-indent-npm-2.0.0-f827ab2d7a-3b416b1dcd.zip/node_modules/strip-indent/", "packageDependencies": [ ["strip-indent", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["strip-json-comments", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/strip-json-comments-npm-2.0.1-e7883b2d04-e60d99aa28.zip/node_modules/strip-json-comments/", "packageDependencies": [ ["strip-json-comments", "npm:2.0.1"] ], "linkType": "HARD", }], ["npm:3.1.0", { "packageLocation": "./.yarn/cache/strip-json-comments-npm-3.1.0-fbc5f88936-5c272f2c03.zip/node_modules/strip-json-comments/", "packageDependencies": [ ["strip-json-comments", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["supports-color", [ ["npm:5.5.0", { "packageLocation": "./.yarn/cache/supports-color-npm-5.5.0-183ac537bc-edacee6425.zip/node_modules/supports-color/", "packageDependencies": [ ["supports-color", "npm:5.5.0"], ["has-flag", "npm:3.0.0"] ], "linkType": "HARD", }], ["npm:7.1.0", { "packageLocation": "./.yarn/cache/supports-color-npm-7.1.0-df2ba1e338-6130f36b2a.zip/node_modules/supports-color/", "packageDependencies": [ ["supports-color", "npm:7.1.0"], ["has-flag", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["supports-hyperlinks", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/supports-hyperlinks-npm-2.1.0-8e86724a40-8b3b6d71ee.zip/node_modules/supports-hyperlinks/", "packageDependencies": [ ["supports-hyperlinks", "npm:2.1.0"], ["has-flag", "npm:4.0.0"], ["supports-color", "npm:7.1.0"] ], "linkType": "HARD", }] ]], ["symbol-tree", [ ["npm:3.2.4", { "packageLocation": "./.yarn/cache/symbol-tree-npm-3.2.4-fe70cdb75b-0b9af4e5f0.zip/node_modules/symbol-tree/", "packageDependencies": [ ["symbol-tree", "npm:3.2.4"] ], "linkType": "HARD", }] ]], ["table", [ ["npm:5.4.6", { "packageLocation": "./.yarn/cache/table-npm-5.4.6-190b118384-38877a196c.zip/node_modules/table/", "packageDependencies": [ ["table", "npm:5.4.6"], ["ajv", "npm:6.12.3"], ["lodash", "npm:4.17.19"], ["slice-ansi", "npm:2.1.0"], ["string-width", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["tar", [ ["npm:4.4.13", { "packageLocation": "./.yarn/cache/tar-npm-4.4.13-2a4e7ee80f-d325c316ac.zip/node_modules/tar/", "packageDependencies": [ ["tar", "npm:4.4.13"], ["chownr", "npm:1.1.4"], ["fs-minipass", "npm:1.2.7"], ["minipass", "npm:2.9.0"], ["minizlib", "npm:1.3.3"], ["mkdirp", "npm:0.5.5"], ["safe-buffer", "npm:5.2.1"], ["yallist", "npm:3.1.1"] ], "linkType": "HARD", }], ["npm:6.1.0", { "packageLocation": "./.yarn/cache/tar-npm-6.1.0-21d6116ed9-d1d988eceb.zip/node_modules/tar/", "packageDependencies": [ ["tar", "npm:6.1.0"], ["chownr", "npm:2.0.0"], ["fs-minipass", "npm:2.1.0"], ["minipass", "npm:3.1.3"], ["minizlib", "npm:2.1.2"], ["mkdirp", "npm:1.0.4"], ["yallist", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["temp-dir", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/temp-dir-npm-2.0.0-e8af180805-d7816d1ce5.zip/node_modules/temp-dir/", "packageDependencies": [ ["temp-dir", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["tempy", [ ["npm:0.4.0", { "packageLocation": "./.yarn/cache/tempy-npm-0.4.0-87ea4ed73b-e768a32ebe.zip/node_modules/tempy/", "packageDependencies": [ ["tempy", "npm:0.4.0"], ["temp-dir", "npm:2.0.0"], ["type-fest", "npm:0.10.0"], ["unique-string", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["term-size", [ ["npm:1.2.0", { "packageLocation": "./.yarn/unplugged/term-size-npm-1.2.0-7629e52ca8/node_modules/term-size/", "packageDependencies": [ ["term-size", "npm:1.2.0"], ["execa", "npm:0.7.0"] ], "linkType": "HARD", }] ]], ["terminal-link", [ ["npm:2.1.1", { "packageLocation": "./.yarn/cache/terminal-link-npm-2.1.1-de80341758-f84553e11e.zip/node_modules/terminal-link/", "packageDependencies": [ ["terminal-link", "npm:2.1.1"], ["ansi-escapes", "npm:4.3.0"], ["supports-hyperlinks", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["test-exclude", [ ["npm:6.0.0", { "packageLocation": "./.yarn/cache/test-exclude-npm-6.0.0-3fb03d69df-68294d1006.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-extensions", [ ["npm:1.9.0", { "packageLocation": "./.yarn/cache/text-extensions-npm-1.9.0-87655d768f-fecf1f4962.zip/node_modules/text-extensions/", "packageDependencies": [ ["text-extensions", "npm:1.9.0"] ], "linkType": "HARD", }] ]], ["text-table", [ ["npm:0.2.0", { "packageLocation": "./.yarn/cache/text-table-npm-0.2.0-d92a778b59-373904ce70.zip/node_modules/text-table/", "packageDependencies": [ ["text-table", "npm:0.2.0"] ], "linkType": "HARD", }] ]], ["throat", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/throat-npm-5.0.0-288ce6540a-2fa41c09cc.zip/node_modules/throat/", "packageDependencies": [ ["throat", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["through", [ ["npm:2.3.8", { "packageLocation": "./.yarn/cache/through-npm-2.3.8-df5f72a16e-918d915168.zip/node_modules/through/", "packageDependencies": [ ["through", "npm:2.3.8"] ], "linkType": "HARD", }] ]], ["through2", [ ["npm:2.0.5", { "packageLocation": "./.yarn/cache/through2-npm-2.0.5-77d90f13cd-7427403555.zip/node_modules/through2/", "packageDependencies": [ ["through2", "npm:2.0.5"], ["readable-stream", "npm:2.3.7"], ["xtend", "npm:4.0.2"] ], "linkType": "HARD", }], ["npm:3.0.1", { "packageLocation": "./.yarn/cache/through2-npm-3.0.1-dcc4042403-f0ff930ba9.zip/node_modules/through2/", "packageDependencies": [ ["through2", "npm:3.0.1"], ["readable-stream", "npm:3.6.0"] ], "linkType": "HARD", }] ]], ["timed-out", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/timed-out-npm-4.0.1-1fe3eee142-e304664080.zip/node_modules/timed-out/", "packageDependencies": [ ["timed-out", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["tiny-relative-date", [ ["npm:1.3.0", { "packageLocation": "./.yarn/cache/tiny-relative-date-npm-1.3.0-4737b1ee94-8f1466e1b9.zip/node_modules/tiny-relative-date/", "packageDependencies": [ ["tiny-relative-date", "npm:1.3.0"] ], "linkType": "HARD", }] ]], ["tmpl", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/tmpl-npm-1.0.4-35b37c2875-44de07fb81.zip/node_modules/tmpl/", "packageDependencies": [ ["tmpl", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["to-fast-properties", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/to-fast-properties-npm-2.0.0-0dc60cc481-40e6198424.zip/node_modules/to-fast-properties/", "packageDependencies": [ ["to-fast-properties", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["to-object-path", [ ["npm:0.3.0", { "packageLocation": "./.yarn/cache/to-object-path-npm-0.3.0-241b5ffa9c-a6a5a50225.zip/node_modules/to-object-path/", "packageDependencies": [ ["to-object-path", "npm:0.3.0"], ["kind-of", "npm:3.2.2"] ], "linkType": "HARD", }] ]], ["to-regex", [ ["npm:3.0.2", { "packageLocation": "./.yarn/cache/to-regex-npm-3.0.2-3af893c972-ed733fdff8.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": "./.yarn/cache/to-regex-range-npm-2.1.1-60af4c593e-801501b59d.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": "./.yarn/cache/to-regex-range-npm-5.0.1-f1e8263b00-2b6001e314.zip/node_modules/to-regex-range/", "packageDependencies": [ ["to-regex-range", "npm:5.0.1"], ["is-number", "npm:7.0.0"] ], "linkType": "HARD", }] ]], ["tough-cookie", [ ["npm:2.5.0", { "packageLocation": "./.yarn/cache/tough-cookie-npm-2.5.0-79a2fe43fe-bf5d6fac5c.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": "./.yarn/cache/tough-cookie-npm-3.0.1-09a21f6bd7-dc1eee69c6.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": "./.yarn/cache/tr46-npm-2.0.2-9a9c502938-c8c2219079.zip/node_modules/tr46/", "packageDependencies": [ ["tr46", "npm:2.0.2"], ["punycode", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["traverse", [ ["npm:0.6.6", { "packageLocation": "./.yarn/cache/traverse-npm-0.6.6-584cfa4b5f-f2bfaae692.zip/node_modules/traverse/", "packageDependencies": [ ["traverse", "npm:0.6.6"] ], "linkType": "HARD", }] ]], ["trim-newlines", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/trim-newlines-npm-2.0.0-7614b39365-131158217d.zip/node_modules/trim-newlines/", "packageDependencies": [ ["trim-newlines", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["trim-off-newlines", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/trim-off-newlines-npm-1.0.1-1a87bef78d-c590b9e8c1.zip/node_modules/trim-off-newlines/", "packageDependencies": [ ["trim-off-newlines", "npm:1.0.1"] ], "linkType": "HARD", }] ]], ["tsconfig-paths", [ ["npm:3.9.0", { "packageLocation": "./.yarn/cache/tsconfig-paths-npm-3.9.0-92dcbdee37-5383ba626b.zip/node_modules/tsconfig-paths/", "packageDependencies": [ ["tsconfig-paths", "npm:3.9.0"], ["@types/json5", "npm:0.0.29"], ["json5", "npm:1.0.1"], ["minimist", "npm:1.2.5"], ["strip-bom", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["tslib", [ ["npm:1.11.1", { "packageLocation": "./.yarn/cache/tslib-npm-1.11.1-8e4faed70f-d40eba08de.zip/node_modules/tslib/", "packageDependencies": [ ["tslib", "npm:1.11.1"] ], "linkType": "HARD", }] ]], ["tsutils", [ ["npm:3.17.1", { "packageLocation": "./.yarn/cache/tsutils-npm-3.17.1-ed6df1e57e-bed8ff7998.zip/node_modules/tsutils/", "packageDependencies": [ ["tsutils", "npm:3.17.1"] ], "linkType": "SOFT", }], ["virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:3.17.1", { "packageLocation": "./.yarn/$$virtual/tsutils-virtual-5f822d0a45/0/cache/tsutils-npm-3.17.1-ed6df1e57e-bed8ff7998.zip/node_modules/tsutils/", "packageDependencies": [ ["tsutils", "virtual:7a97ffa684cd17355e2078b9b95fba8ae44abef40aba616e1fa082eecd966408c9e4e62aa2d63afef68c4882ce8c56ade7e308ded5847966c9ef344ea64b2a51#npm:3.17.1"], ["@types/typescript", null], ["tslib", "npm:1.11.1"], ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "packagePeers": [ "@types/typescript", "typescript" ], "linkType": "HARD", }], ["virtual:baa569a4f8f2bd57e837cd236314a36ac6f422a5d41c02ae772f53257d5dc19ec9bd224a945297e568be9a5d08ee7b0cecb7a7029ec386399817b2c37c319f33#npm:3.17.1", { "packageLocation": "./.yarn/$$virtual/tsutils-virtual-689dbe4d06/0/cache/tsutils-npm-3.17.1-ed6df1e57e-bed8ff7998.zip/node_modules/tsutils/", "packageDependencies": [ ["tsutils", "virtual:baa569a4f8f2bd57e837cd236314a36ac6f422a5d41c02ae772f53257d5dc19ec9bd224a945297e568be9a5d08ee7b0cecb7a7029ec386399817b2c37c319f33#npm:3.17.1"], ["@types/typescript", null], ["tslib", "npm:1.11.1"], ["typescript", null] ], "packagePeers": [ "@types/typescript", "typescript" ], "linkType": "HARD", }] ]], ["tunnel-agent", [ ["npm:0.6.0", { "packageLocation": "./.yarn/cache/tunnel-agent-npm-0.6.0-64345ab7eb-03db75a4f9.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": "./.yarn/cache/tweetnacl-npm-0.14.5-a3f766c0d1-e1c9d52e2e.zip/node_modules/tweetnacl/", "packageDependencies": [ ["tweetnacl", "npm:0.14.5"] ], "linkType": "HARD", }] ]], ["type-check", [ ["npm:0.3.2", { "packageLocation": "./.yarn/cache/type-check-npm-0.3.2-a4a38bb0b6-4e08064531.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": "./.yarn/cache/type-check-npm-0.4.0-60565800ce-6c2e1ce339.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": "./.yarn/cache/type-detect-npm-4.0.8-8d8127b901-e01dc6ac90.zip/node_modules/type-detect/", "packageDependencies": [ ["type-detect", "npm:4.0.8"] ], "linkType": "HARD", }] ]], ["type-fest", [ ["npm:0.10.0", { "packageLocation": "./.yarn/cache/type-fest-npm-0.10.0-acf1c75b8a-ffcef68641.zip/node_modules/type-fest/", "packageDependencies": [ ["type-fest", "npm:0.10.0"] ], "linkType": "HARD", }], ["npm:0.6.0", { "packageLocation": "./.yarn/cache/type-fest-npm-0.6.0-76b229965b-c77f687caf.zip/node_modules/type-fest/", "packageDependencies": [ ["type-fest", "npm:0.6.0"] ], "linkType": "HARD", }], ["npm:0.8.1", { "packageLocation": "./.yarn/cache/type-fest-npm-0.8.1-351ad028fe-f8c4b4249f.zip/node_modules/type-fest/", "packageDependencies": [ ["type-fest", "npm:0.8.1"] ], "linkType": "HARD", }] ]], ["typedarray", [ ["npm:0.0.6", { "packageLocation": "./.yarn/cache/typedarray-npm-0.0.6-37638b2241-c9ef0176aa.zip/node_modules/typedarray/", "packageDependencies": [ ["typedarray", "npm:0.0.6"] ], "linkType": "HARD", }] ]], ["typedarray-to-buffer", [ ["npm:3.1.5", { "packageLocation": "./.yarn/cache/typedarray-to-buffer-npm-3.1.5-aadc11995e-e6e0e6812a.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.1.3#builtin::version=4.1.3&hash=cc6730", { "packageLocation": "./.yarn/cache/typescript-patch-7a9e6321b3-017af99214.zip/node_modules/typescript/", "packageDependencies": [ ["typescript", "patch:typescript@npm%3A4.1.3#builtin::version=4.1.3&hash=cc6730"] ], "linkType": "HARD", }] ]], ["uglify-js", [ ["npm:3.8.0", { "packageLocation": "./.yarn/cache/uglify-js-npm-3.8.0-ac72b22122-abd2b49f2c.zip/node_modules/uglify-js/", "packageDependencies": [ ["uglify-js", "npm:3.8.0"], ["commander", "npm:2.20.3"], ["source-map", "npm:0.6.1"] ], "linkType": "HARD", }] ]], ["uid-number", [ ["npm:0.0.6", { "packageLocation": "./.yarn/cache/uid-number-npm-0.0.6-132b4157eb-6580f5afd0.zip/node_modules/uid-number/", "packageDependencies": [ ["uid-number", "npm:0.0.6"] ], "linkType": "HARD", }] ]], ["umask", [ ["npm:1.1.0", { "packageLocation": "./.yarn/cache/umask-npm-1.1.0-bf922a1fa8-d9bb200f64.zip/node_modules/umask/", "packageDependencies": [ ["umask", "npm:1.1.0"] ], "linkType": "HARD", }] ]], ["unicode-canonical-property-names-ecmascript", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/unicode-canonical-property-names-ecmascript-npm-1.0.4-8c5eeb73e7-8b51950f8f.zip/node_modules/unicode-canonical-property-names-ecmascript/", "packageDependencies": [ ["unicode-canonical-property-names-ecmascript", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["unicode-match-property-ecmascript", [ ["npm:1.0.4", { "packageLocation": "./.yarn/cache/unicode-match-property-ecmascript-npm-1.0.4-4729801dd7-481203b4b8.zip/node_modules/unicode-match-property-ecmascript/", "packageDependencies": [ ["unicode-match-property-ecmascript", "npm:1.0.4"], ["unicode-canonical-property-names-ecmascript", "npm:1.0.4"], ["unicode-property-aliases-ecmascript", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["unicode-match-property-value-ecmascript", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/unicode-match-property-value-ecmascript-npm-1.2.0-d6b5d66edf-892ca39335.zip/node_modules/unicode-match-property-value-ecmascript/", "packageDependencies": [ ["unicode-match-property-value-ecmascript", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["unicode-property-aliases-ecmascript", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/unicode-property-aliases-ecmascript-npm-1.0.5-936ed6363c-adfdc7cebc.zip/node_modules/unicode-property-aliases-ecmascript/", "packageDependencies": [ ["unicode-property-aliases-ecmascript", "npm:1.0.5"] ], "linkType": "HARD", }] ]], ["union-value", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/union-value-npm-1.0.1-76c6e8a88f-bd6ae611f0.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": "./.yarn/cache/unique-filename-npm-1.1.1-c885c5095b-0e674206bd.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": "./.yarn/cache/unique-slug-npm-2.0.2-f6ba1ddeb7-3b17dabc13.zip/node_modules/unique-slug/", "packageDependencies": [ ["unique-slug", "npm:2.0.2"], ["imurmurhash", "npm:0.1.4"] ], "linkType": "HARD", }] ]], ["unique-string", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/unique-string-npm-1.0.0-96ab75fd6b-860f1ab835.zip/node_modules/unique-string/", "packageDependencies": [ ["unique-string", "npm:1.0.0"], ["crypto-random-string", "npm:1.0.0"] ], "linkType": "HARD", }], ["npm:2.0.0", { "packageLocation": "./.yarn/cache/unique-string-npm-2.0.0-3153c97e47-a2748b41ea.zip/node_modules/unique-string/", "packageDependencies": [ ["unique-string", "npm:2.0.0"], ["crypto-random-string", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["universal-user-agent", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/universal-user-agent-npm-4.0.1-d1d67caaeb-553ee1f53f.zip/node_modules/universal-user-agent/", "packageDependencies": [ ["universal-user-agent", "npm:4.0.1"], ["os-name", "npm:3.1.0"] ], "linkType": "HARD", }], ["npm:5.0.0", { "packageLocation": "./.yarn/cache/universal-user-agent-npm-5.0.0-0ce9f496f4-9b664885e8.zip/node_modules/universal-user-agent/", "packageDependencies": [ ["universal-user-agent", "npm:5.0.0"], ["os-name", "npm:3.1.0"] ], "linkType": "HARD", }] ]], ["universalify", [ ["npm:0.1.2", { "packageLocation": "./.yarn/cache/universalify-npm-0.1.2-9b22d31d2d-420fc65473.zip/node_modules/universalify/", "packageDependencies": [ ["universalify", "npm:0.1.2"] ], "linkType": "HARD", }] ]], ["unpipe", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/unpipe-npm-1.0.0-2ed2a3c2bf-ba244e8bf6.zip/node_modules/unpipe/", "packageDependencies": [ ["unpipe", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["unset-value", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/unset-value-npm-1.0.0-2af803b920-b4c4853f27.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", }] ]], ["unzip-response", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/unzip-response-npm-2.0.1-d139c365e6-ba0ef3428f.zip/node_modules/unzip-response/", "packageDependencies": [ ["unzip-response", "npm:2.0.1"] ], "linkType": "HARD", }] ]], ["upath", [ ["npm:1.2.0", { "packageLocation": "./.yarn/cache/upath-npm-1.2.0-ca00ec3398-ecb08ff3e7.zip/node_modules/upath/", "packageDependencies": [ ["upath", "npm:1.2.0"] ], "linkType": "HARD", }] ]], ["update-notifier", [ ["npm:2.5.0", { "packageLocation": "./.yarn/cache/update-notifier-npm-2.5.0-67a849582a-3edbc57db1.zip/node_modules/update-notifier/", "packageDependencies": [ ["update-notifier", "npm:2.5.0"], ["boxen", "npm:1.3.0"], ["chalk", "npm:2.4.2"], ["configstore", "npm:3.1.2"], ["import-lazy", "npm:2.1.0"], ["is-ci", "npm:1.2.1"], ["is-installed-globally", "npm:0.1.0"], ["is-npm", "npm:1.0.0"], ["latest-version", "npm:3.1.0"], ["semver-diff", "npm:2.1.0"], ["xdg-basedir", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["uri-js", [ ["npm:4.2.2", { "packageLocation": "./.yarn/cache/uri-js-npm-4.2.2-e6ac2fca26-651a49f55d.zip/node_modules/uri-js/", "packageDependencies": [ ["uri-js", "npm:4.2.2"], ["punycode", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["urix", [ ["npm:0.1.0", { "packageLocation": "./.yarn/cache/urix-npm-0.1.0-bd5e55a13a-6bdfca4e7f.zip/node_modules/urix/", "packageDependencies": [ ["urix", "npm:0.1.0"] ], "linkType": "HARD", }] ]], ["url-join", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/url-join-npm-4.0.1-e1f4415722-278de41c66.zip/node_modules/url-join/", "packageDependencies": [ ["url-join", "npm:4.0.1"] ], "linkType": "HARD", }] ]], ["url-parse-lax", [ ["npm:1.0.0", { "packageLocation": "./.yarn/cache/url-parse-lax-npm-1.0.0-72419d807b-454fddd786.zip/node_modules/url-parse-lax/", "packageDependencies": [ ["url-parse-lax", "npm:1.0.0"], ["prepend-http", "npm:1.0.4"] ], "linkType": "HARD", }] ]], ["use", [ ["npm:3.1.1", { "packageLocation": "./.yarn/cache/use-npm-3.1.1-7ba643714c-8dd3bdeeda.zip/node_modules/use/", "packageDependencies": [ ["use", "npm:3.1.1"] ], "linkType": "HARD", }] ]], ["util-deprecate", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/util-deprecate-npm-1.0.2-e3fe1a219c-73c2b1cf02.zip/node_modules/util-deprecate/", "packageDependencies": [ ["util-deprecate", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["util-extend", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/util-extend-npm-1.0.3-410555399f-d635c0a43b.zip/node_modules/util-extend/", "packageDependencies": [ ["util-extend", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["util-promisify", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/util-promisify-npm-2.1.0-99b8e9cdf0-8d8c1b5119.zip/node_modules/util-promisify/", "packageDependencies": [ ["util-promisify", "npm:2.1.0"], ["object.getownpropertydescriptors", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["uuid", [ ["npm:3.4.0", { "packageLocation": "./.yarn/cache/uuid-npm-3.4.0-4fd8ef88ad-1ce3f37e21.zip/node_modules/uuid/", "packageDependencies": [ ["uuid", "npm:3.4.0"] ], "linkType": "HARD", }], ["npm:7.0.3", { "packageLocation": "./.yarn/cache/uuid-npm-7.0.3-2b088bd924-a56be8a5bb.zip/node_modules/uuid/", "packageDependencies": [ ["uuid", "npm:7.0.3"] ], "linkType": "HARD", }] ]], ["v8-compile-cache", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/v8-compile-cache-npm-2.1.0-86ea69cdd0-b7490d5484.zip/node_modules/v8-compile-cache/", "packageDependencies": [ ["v8-compile-cache", "npm:2.1.0"] ], "linkType": "HARD", }] ]], ["v8-to-istanbul", [ ["npm:4.1.3", { "packageLocation": "./.yarn/cache/v8-to-istanbul-npm-4.1.3-20a9068ddb-0dd16f794a.zip/node_modules/v8-to-istanbul/", "packageDependencies": [ ["v8-to-istanbul", "npm:4.1.3"], ["@types/istanbul-lib-coverage", "npm:2.0.1"], ["convert-source-map", "npm:1.7.0"], ["source-map", "npm:0.7.3"] ], "linkType": "HARD", }] ]], ["validate-npm-package-license", [ ["npm:3.0.4", { "packageLocation": "./.yarn/cache/validate-npm-package-license-npm-3.0.4-7af8adc7a8-940899bd4e.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", }] ]], ["validate-npm-package-name", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/validate-npm-package-name-npm-3.0.0-e44c263962-3c5a5b154a.zip/node_modules/validate-npm-package-name/", "packageDependencies": [ ["validate-npm-package-name", "npm:3.0.0"], ["builtins", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["verror", [ ["npm:1.10.0", { "packageLocation": "./.yarn/cache/verror-npm-1.10.0-c3f839c579-38ea80312c.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": "./.yarn/cache/w3c-hr-time-npm-1.0.2-87f88e51d9-bb021b4c4b.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": "./.yarn/cache/w3c-xmlserializer-npm-2.0.0-f8f7bc8b42-2327c8a6c7.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": "./.yarn/cache/walker-npm-1.0.7-a97443bd99-c014f264c4.zip/node_modules/walker/", "packageDependencies": [ ["walker", "npm:1.0.7"], ["makeerror", "npm:1.0.11"] ], "linkType": "HARD", }] ]], ["wcwidth", [ ["npm:1.0.1", { "packageLocation": "./.yarn/cache/wcwidth-npm-1.0.1-05fa596453-abf8ba432d.zip/node_modules/wcwidth/", "packageDependencies": [ ["wcwidth", "npm:1.0.1"], ["defaults", "npm:1.0.3"] ], "linkType": "HARD", }] ]], ["webidl-conversions", [ ["npm:5.0.0", { "packageLocation": "./.yarn/cache/webidl-conversions-npm-5.0.0-9649787484-af4e465fb3.zip/node_modules/webidl-conversions/", "packageDependencies": [ ["webidl-conversions", "npm:5.0.0"] ], "linkType": "HARD", }], ["npm:6.1.0", { "packageLocation": "./.yarn/cache/webidl-conversions-npm-6.1.0-0594fd577c-0ded175044.zip/node_modules/webidl-conversions/", "packageDependencies": [ ["webidl-conversions", "npm:6.1.0"] ], "linkType": "HARD", }] ]], ["whatwg-encoding", [ ["npm:1.0.5", { "packageLocation": "./.yarn/cache/whatwg-encoding-npm-1.0.5-85e0fb7d7d-44e4276ad2.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": "./.yarn/cache/whatwg-mimetype-npm-2.3.0-52eaa1d941-926e6ef8c7.zip/node_modules/whatwg-mimetype/", "packageDependencies": [ ["whatwg-mimetype", "npm:2.3.0"] ], "linkType": "HARD", }] ]], ["whatwg-url", [ ["npm:8.0.0", { "packageLocation": "./.yarn/cache/whatwg-url-npm-8.0.0-bdd5fa9457-35caa91ed4.zip/node_modules/whatwg-url/", "packageDependencies": [ ["whatwg-url", "npm:8.0.0"], ["lodash.sortby", "npm:4.7.0"], ["tr46", "npm:2.0.2"], ["webidl-conversions", "npm:5.0.0"] ], "linkType": "HARD", }] ]], ["which", [ ["npm:1.3.1", { "packageLocation": "./.yarn/cache/which-npm-1.3.1-f0ebb8bdd8-298d95f9c1.zip/node_modules/which/", "packageDependencies": [ ["which", "npm:1.3.1"], ["isexe", "npm:2.0.0"] ], "linkType": "HARD", }], ["npm:2.0.2", { "packageLocation": "./.yarn/cache/which-npm-2.0.2-320ddf72f7-ea9b1db126.zip/node_modules/which/", "packageDependencies": [ ["which", "npm:2.0.2"], ["isexe", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["which-module", [ ["npm:2.0.0", { "packageLocation": "./.yarn/cache/which-module-npm-2.0.0-daf3daa08d-3d2107ab18.zip/node_modules/which-module/", "packageDependencies": [ ["which-module", "npm:2.0.0"] ], "linkType": "HARD", }] ]], ["wide-align", [ ["npm:1.1.3", { "packageLocation": "./.yarn/cache/wide-align-npm-1.1.3-48c7d4953c-4f850f84da.zip/node_modules/wide-align/", "packageDependencies": [ ["wide-align", "npm:1.1.3"], ["string-width", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["widest-line", [ ["npm:2.0.1", { "packageLocation": "./.yarn/cache/widest-line-npm-2.0.1-f40e0a0581-dd98e47483.zip/node_modules/widest-line/", "packageDependencies": [ ["widest-line", "npm:2.0.1"], ["string-width", "npm:2.1.1"] ], "linkType": "HARD", }] ]], ["windows-release", [ ["npm:3.2.0", { "packageLocation": "./.yarn/cache/windows-release-npm-3.2.0-bb84765c45-4411220408.zip/node_modules/windows-release/", "packageDependencies": [ ["windows-release", "npm:3.2.0"], ["execa", "npm:1.0.0"] ], "linkType": "HARD", }] ]], ["word-wrap", [ ["npm:1.2.3", { "packageLocation": "./.yarn/cache/word-wrap-npm-1.2.3-7fb15ab002-6526abd75d.zip/node_modules/word-wrap/", "packageDependencies": [ ["word-wrap", "npm:1.2.3"] ], "linkType": "HARD", }] ]], ["wordwrap", [ ["npm:0.0.3", { "packageLocation": "./.yarn/cache/wordwrap-npm-0.0.3-ab90803074-e8c84baa72.zip/node_modules/wordwrap/", "packageDependencies": [ ["wordwrap", "npm:0.0.3"] ], "linkType": "HARD", }] ]], ["worker-farm", [ ["npm:1.7.0", { "packageLocation": "./.yarn/cache/worker-farm-npm-1.7.0-cfc50c2626-ef76a6892b.zip/node_modules/worker-farm/", "packageDependencies": [ ["worker-farm", "npm:1.7.0"], ["errno", "npm:0.1.7"] ], "linkType": "HARD", }] ]], ["wrap-ansi", [ ["npm:2.1.0", { "packageLocation": "./.yarn/cache/wrap-ansi-npm-2.1.0-1fd9d50973-d1846c0664.zip/node_modules/wrap-ansi/", "packageDependencies": [ ["wrap-ansi", "npm:2.1.0"], ["string-width", "npm:1.0.2"], ["strip-ansi", "npm:3.0.1"] ], "linkType": "HARD", }], ["npm:6.2.0", { "packageLocation": "./.yarn/cache/wrap-ansi-npm-6.2.0-439a7246d8-ee4ed8b299.zip/node_modules/wrap-ansi/", "packageDependencies": [ ["wrap-ansi", "npm:6.2.0"], ["ansi-styles", "npm:4.2.1"], ["string-width", "npm:4.2.0"], ["strip-ansi", "npm:6.0.0"] ], "linkType": "HARD", }] ]], ["wrappy", [ ["npm:1.0.2", { "packageLocation": "./.yarn/cache/wrappy-npm-1.0.2-916de4d4b3-519fcda0fc.zip/node_modules/wrappy/", "packageDependencies": [ ["wrappy", "npm:1.0.2"] ], "linkType": "HARD", }] ]], ["write", [ ["npm:1.0.3", { "packageLocation": "./.yarn/cache/write-npm-1.0.3-1bac756049-e8f8fddefe.zip/node_modules/write/", "packageDependencies": [ ["write", "npm:1.0.3"], ["mkdirp", "npm:0.5.5"] ], "linkType": "HARD", }] ]], ["write-file-atomic", [ ["npm:2.4.3", { "packageLocation": "./.yarn/cache/write-file-atomic-npm-2.4.3-f3fc725df3-ef7113c80f.zip/node_modules/write-file-atomic/", "packageDependencies": [ ["write-file-atomic", "npm:2.4.3"], ["graceful-fs", "npm:4.2.4"], ["imurmurhash", "npm:0.1.4"], ["signal-exit", "npm:3.0.3"] ], "linkType": "HARD", }], ["npm:3.0.3", { "packageLocation": "./.yarn/cache/write-file-atomic-npm-3.0.3-d948a237da-a26a8699c3.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.2.5", { "packageLocation": "./.yarn/cache/ws-npm-7.2.5-532f8d69fc-bd4ff2ceb5.zip/node_modules/ws/", "packageDependencies": [ ["ws", "npm:7.2.5"] ], "linkType": "SOFT", }], ["virtual:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:7.2.5", { "packageLocation": "./.yarn/$$virtual/ws-virtual-e0bcc1d620/0/cache/ws-npm-7.2.5-532f8d69fc-bd4ff2ceb5.zip/node_modules/ws/", "packageDependencies": [ ["ws", "virtual:742a132ed2fb06ba41153564ed494aecfed199edca847e466a382c439c32f86c488d4f90b8a6c7e2ed4ee37ab04bb455741f5623eb07e6b36e8b1df5ada149ad#npm:7.2.5"], ["@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:3.0.0", { "packageLocation": "./.yarn/cache/xdg-basedir-npm-3.0.0-7eb0a8ccde-87d2160cc1.zip/node_modules/xdg-basedir/", "packageDependencies": [ ["xdg-basedir", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["xml-name-validator", [ ["npm:3.0.0", { "packageLocation": "./.yarn/cache/xml-name-validator-npm-3.0.0-10e74a38ea-b96679a42e.zip/node_modules/xml-name-validator/", "packageDependencies": [ ["xml-name-validator", "npm:3.0.0"] ], "linkType": "HARD", }] ]], ["xmlchars", [ ["npm:2.2.0", { "packageLocation": "./.yarn/cache/xmlchars-npm-2.2.0-8b78f0f5e4-69bbb61e8d.zip/node_modules/xmlchars/", "packageDependencies": [ ["xmlchars", "npm:2.2.0"] ], "linkType": "HARD", }] ]], ["xtend", [ ["npm:4.0.2", { "packageLocation": "./.yarn/cache/xtend-npm-4.0.2-7f2375736e-37ee522a3e.zip/node_modules/xtend/", "packageDependencies": [ ["xtend", "npm:4.0.2"] ], "linkType": "HARD", }] ]], ["y18n", [ ["npm:3.2.1", { "packageLocation": "./.yarn/cache/y18n-npm-3.2.1-af8160320f-e0f3db2336.zip/node_modules/y18n/", "packageDependencies": [ ["y18n", "npm:3.2.1"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/y18n-npm-4.0.0-55cd797cc5-5b7434c95d.zip/node_modules/y18n/", "packageDependencies": [ ["y18n", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["yallist", [ ["npm:2.1.2", { "packageLocation": "./.yarn/cache/yallist-npm-2.1.2-2e38c366a3-f83e3d18ee.zip/node_modules/yallist/", "packageDependencies": [ ["yallist", "npm:2.1.2"] ], "linkType": "HARD", }], ["npm:3.1.1", { "packageLocation": "./.yarn/cache/yallist-npm-3.1.1-a568a556b4-f352c93b92.zip/node_modules/yallist/", "packageDependencies": [ ["yallist", "npm:3.1.1"] ], "linkType": "HARD", }], ["npm:4.0.0", { "packageLocation": "./.yarn/cache/yallist-npm-4.0.0-b493d9e907-a2960ef879.zip/node_modules/yallist/", "packageDependencies": [ ["yallist", "npm:4.0.0"] ], "linkType": "HARD", }] ]], ["yaml", [ ["npm:1.7.2", { "packageLocation": "./.yarn/cache/yaml-npm-1.7.2-8eb17ef93f-8b5d70dfff.zip/node_modules/yaml/", "packageDependencies": [ ["yaml", "npm:1.7.2"], ["@babel/runtime", "npm:7.8.4"] ], "linkType": "HARD", }] ]], ["yargs", [ ["npm:11.1.1", { "packageLocation": "./.yarn/cache/yargs-npm-11.1.1-ff11785ffb-013be33991.zip/node_modules/yargs/", "packageDependencies": [ ["yargs", "npm:11.1.1"], ["cliui", "npm:4.1.0"], ["decamelize", "npm:1.2.0"], ["find-up", "npm:2.1.0"], ["get-caller-file", "npm:1.0.3"], ["os-locale", "npm:3.1.0"], ["require-directory", "npm:2.1.1"], ["require-main-filename", "npm:1.0.1"], ["set-blocking", "npm:2.0.0"], ["string-width", "npm:2.1.1"], ["which-module", "npm:2.0.0"], ["y18n", "npm:3.2.1"], ["yargs-parser", "npm:9.0.2"] ], "linkType": "HARD", }], ["npm:15.3.1", { "packageLocation": "./.yarn/cache/yargs-npm-15.3.1-4c311787b0-6504a0bb4e.zip/node_modules/yargs/", "packageDependencies": [ ["yargs", "npm:15.3.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.0"], ["yargs-parser", "npm:18.1.3"] ], "linkType": "HARD", }], ["npm:8.0.2", { "packageLocation": "./.yarn/cache/yargs-npm-8.0.2-c00a5bf2c4-6930d9cddd.zip/node_modules/yargs/", "packageDependencies": [ ["yargs", "npm:8.0.2"], ["camelcase", "npm:4.1.0"], ["cliui", "npm:3.2.0"], ["decamelize", "npm:1.2.0"], ["get-caller-file", "npm:1.0.3"], ["os-locale", "npm:2.1.0"], ["read-pkg-up", "npm:2.0.0"], ["require-directory", "npm:2.1.1"], ["require-main-filename", "npm:1.0.1"], ["set-blocking", "npm:2.0.0"], ["string-width", "npm:2.1.1"], ["which-module", "npm:2.0.0"], ["y18n", "npm:3.2.1"], ["yargs-parser", "npm:7.0.0"] ], "linkType": "HARD", }] ]], ["yargs-parser", [ ["npm:10.1.0", { "packageLocation": "./.yarn/cache/yargs-parser-npm-10.1.0-04b00264c9-fc775037dc.zip/node_modules/yargs-parser/", "packageDependencies": [ ["yargs-parser", "npm:10.1.0"], ["camelcase", "npm:4.1.0"] ], "linkType": "HARD", }], ["npm:18.1.3", { "packageLocation": "./.yarn/cache/yargs-parser-npm-18.1.3-0ba9c4f088-3387172167.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:7.0.0", { "packageLocation": "./.yarn/cache/yargs-parser-npm-7.0.0-ad505519f5-f4b6bb339c.zip/node_modules/yargs-parser/", "packageDependencies": [ ["yargs-parser", "npm:7.0.0"], ["camelcase", "npm:4.1.0"] ], "linkType": "HARD", }], ["npm:9.0.2", { "packageLocation": "./.yarn/cache/yargs-parser-npm-9.0.2-62f0a207fc-8b183c113d.zip/node_modules/yargs-parser/", "packageDependencies": [ ["yargs-parser", "npm:9.0.2"], ["camelcase", "npm:4.1.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__ = ({ /***/ 936: /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "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");; var external_os_default = /*#__PURE__*/__webpack_require__.n(external_os_namespaceObject); // 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`, pnpJs: `.pnp.js`, 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; if (p.match(PORTABLE_PATH_REGEXP)) p = p.replace(PORTABLE_PATH_REGEXP, `$1`);else if (p.match(UNC_PORTABLE_PATH_REGEXP)) p = p.replace(UNC_PORTABLE_PATH_REGEXP, (match, p1, p2) => `\\\\${p1 ? `.\\` : ``}${p2}`);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; if (p.match(WINDOWS_PATH_REGEXP)) p = p.replace(WINDOWS_PATH_REGEXP, `/$1`);else if (p.match(UNC_WINDOWS_PATH_REGEXP)) p = p.replace(UNC_WINDOWS_PATH_REGEXP, (match, p1, p2) => `/unc/${p1 ? `.dot/` : ``}${p2}`); 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 // 1980-01-01, like Fedora const defaultTime = new Date(315532800 * 1000); async function copyPromise(destinationFs, destination, sourceFs, source, opts) { const normalizedDestination = destinationFs.pathUtils.normalize(destination); const normalizedSource = sourceFs.pathUtils.normalize(source); const prelayout = []; const postlayout = []; await destinationFs.mkdirPromise(destinationFs.pathUtils.dirname(destination), { recursive: true }); 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 () => destinationFs.mkdirPromise(destination, { mode: sourceStat.mode })); 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; } async function copyFile(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; } } const op = destinationFs === sourceFs ? async () => destinationFs.copyFilePromise(source, destination, (external_fs_default()).constants.COPYFILE_FICLONE) : 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) for (const entry of await this.readdirPromise(p)) await 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 } = {}) { return await copyPromise(this, destination, baseFs, source, { overwrite, stableSort, stableTime }); } 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); } else { return this.changeFileTextPromise(p, content, opts); } } async changeFileBufferPromise(p, content) { 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); } async changeFileTextPromise(p, content, { automaticNewlines } = {}) { 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); } changeFileSync(p, content, opts = {}) { if (Buffer.isBuffer(content)) { return this.changeFileBufferSync(p, content); } else { return this.changeFileTextSync(p, content, opts); } } changeFileBufferSync(p, content) { 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); } changeFileTextSync(p, content, { automaticNewlines = false } = {}) { 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); } 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); } } } FakeFS.DEFAULT_TIME = 315532800; 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) { return await new Promise((resolve, reject) => { this.realFs.stat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } statSync(p) { return this.realFs.statSync(npath.fromPortablePath(p)); } async lstatPromise(p) { return await new Promise((resolve, reject) => { this.realFs.lstat(npath.fromPortablePath(p), this.makeCallback(resolve, reject)); }); } lstatSync(p) { 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) { const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); return await new Promise((resolve, reject) => { this.realFs.symlink(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType, this.makeCallback(resolve, reject)); }); } symlinkSync(target, p, type) { const symlinkType = type || (target.endsWith(`/`) ? `dir` : `file`); return this.realFs.symlinkSync(npath.fromPortablePath(target.replace(/\/+$/, ``)), npath.fromPortablePath(p), symlinkType); } 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, { withFileTypes } = {}) { return await new Promise((resolve, reject) => { if (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, { withFileTypes } = {}) { if (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) { return this.baseFs.statPromise(this.mapToBase(p)); } statSync(p) { return this.baseFs.statSync(this.mapToBase(p)); } async lstatPromise(p) { return this.baseFs.lstatPromise(this.mapToBase(p)); } lstatSync(p) { return this.baseFs.lstatSync(this.mapToBase(p)); } 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) { return this.baseFs.symlinkPromise(this.mapToBase(target), this.mapToBase(p), type); } symlinkSync(target, p, type) { return this.baseFs.symlinkSync(this.mapToBase(target), this.mapToBase(p), 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, { withFileTypes } = {}) { return this.baseFs.readdirPromise(this.mapToBase(p), { withFileTypes: withFileTypes }); } readdirSync(p, { withFileTypes } = {}) { return this.baseFs.readdirSync(this.mapToBase(p), { withFileTypes: withFileTypes }); } 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)((?:\/((?:[^/]+-)?[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) { return VirtualFS.resolveVirtual(p); } 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/constants.ts const constants_S_IFMT = 0o170000; const constants_S_IFDIR = 0o040000; const constants_S_IFREG = 0o100000; const constants_S_IFLNK = 0o120000; // CONCATENATED MODULE: ../yarnpkg-fslib/sources/statUtils.ts 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.dev = 0; this.ino = 0; this.mode = 0; 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; } } function makeDefaultStats() { return Object.assign(new StatEntry(), { uid: 0, gid: 0, size: 0, blksize: 0, atimeMs: 0, mtimeMs: 0, ctimeMs: 0, birthtimeMs: 0, atime: new Date(0), mtime: new Date(0), ctime: new Date(0), birthtime: new Date(0), mode: constants_S_IFREG | 0o644 }); } function makeEmptyStats() { return Object.assign(makeDefaultStats(), { nlink: 0, blocks: 0, mode: 0 }); } 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; 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); } catch (error) { if (error.code === `ENOENT`) { return makeEmptyStats(); } else { throw error; } } } /** * 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`); } 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; if (source === null) { source = Buffer.from([0x50, 0x4B, 0x05, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]); } 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 previousMod = this.baseFs.existsSync(this.path) ? this.baseFs.statSync(this.path).mode & 0o777 : null; const rc = this.libzip.close(this.zip); if (rc === -1) throw this.makeLibzipError(this.libzip.getError(this.zip)); // this.libzip overrides the chmod when writing the archive, which is a weird // behavior I don't totally understand (plus the umask seems bogus in some // weird cases - maybe related to emscripten?) // // See also https://github.com/nih-at/libzip/issues/77 if (previousMod === null) this.baseFs.chmodSync(this.path, this.stats.mode);else if (previousMod !== (this.baseFs.statSync(this.path).mode & 0o777)) this.baseFs.chmodSync(this.path, previousMod); 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 = 0, 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) { return this.statSync(p); } statSync(p) { 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); } async lstatPromise(p) { return this.lstatSync(p); } lstatSync(p) { 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); } statImpl(reason, p) { 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; return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode }); } // 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; return Object.assign(new StatEntry(), { uid, gid, size, blksize, blocks, atime, birthtime, ctime, mtime, atimeMs, birthtimeMs, ctimeMs, mtimeMs, mode }); } 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); } async writeFilePromise(p, content, opts) { const { encoding, 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); } } writeFileSync(p, content, opts) { const { encoding, 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); } } prepareWriteFile(p, opts) { if (typeof p !== `string`) throw EBADF(`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; if (typeof opts === `string`) encoding = opts;else if (typeof opts === `object` && opts.encoding) encoding = opts.encoding; const index = this.entries.get(resolvedP); return { encoding, 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 !== `string`) throw EBADF(`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, { withFileTypes } = {}) { return this.readdirSync(p, { withFileTypes: withFileTypes }); } readdirSync(p, { withFileTypes } = {}) { 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 (!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 = this.resolveFilename(`open '${p}'`, p); return watchFile(this, resolvedP, a, b); } unwatchFile(p, cb) { const resolvedP = this.resolveFilename(`open '${p}'`, p); return unwatchFile(this, resolvedP, cb); } } // CONCATENATED MODULE: ../yarnpkg-fslib/sources/ZipOpenFS.ts const ZIP_FD = 0x80000000; const FILE_PARTS_REGEX = /.*?(? { 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 Object.assign(new Error(`EBADF: bad file descriptor, read`), { code: `EBADF` }); 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 Object.assign(new Error(`EBADF: bad file descriptor, read`), { code: `EBADF` }); 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 Object.assign(new Error(`EBADF: bad file descriptor, write`), { code: `EBADF` }); 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 Object.assign(new Error(`EBADF: bad file descriptor, write`), { code: `EBADF` }); 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 Object.assign(new Error(`EBADF: bad file descriptor, close`), { code: `EBADF` }); 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 Object.assign(new Error(`EBADF: bad file descriptor, close`), { code: `EBADF` }); 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) { return await this.makeCallPromise(p, async () => { return await this.baseFs.statPromise(p); }, async (zipFs, { subPath }) => { return await zipFs.statPromise(subPath); }); } statSync(p) { return this.makeCallSync(p, () => { return this.baseFs.statSync(p); }, (zipFs, { subPath }) => { return zipFs.statSync(subPath); }); } async lstatPromise(p) { return await this.makeCallPromise(p, async () => { return await this.baseFs.lstatPromise(p); }, async (zipFs, { subPath }) => { return await zipFs.lstatPromise(subPath); }); } lstatSync(p) { return this.makeCallSync(p, () => { return this.baseFs.lstatSync(p); }, (zipFs, { subPath }) => { return zipFs.lstatSync(subPath); }); } 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); }, async () => { 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, { withFileTypes } = {}) { return await this.makeCallPromise(p, async () => { return await this.baseFs.readdirPromise(p, { withFileTypes: withFileTypes }); }, async (zipFs, { subPath }) => { return await zipFs.readdirPromise(subPath, { withFileTypes: withFileTypes }); }, { requireSubpath: false }); } readdirSync(p, { withFileTypes } = {}) { return this.makeCallSync(p, () => { return this.baseFs.readdirSync(p, { withFileTypes: withFileTypes }); }, (zipFs, { subPath }) => { return zipFs.readdirSync(subPath, { withFileTypes: withFileTypes }); }, { 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 parts = FILE_PARTS_REGEX.exec(p.substr(filePath.length)); if (!parts) return null; filePath = this.pathUtils.join(filePath, parts[0]); 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 (_a) { 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`]; 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`]), 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: ../yarnpkg-fslib/sources/index.ts function getTempName(prefix) { const tmpdir = npath.toPortablePath(external_os_default().tmpdir()); const hash = Math.ceil(Math.random() * 0x100000000).toString(16).padStart(8, `0`); return ppath.join(tmpdir, `${prefix}${hash}`); } function patchFs(patchedFs, fakeFs) { const SYNC_IMPLEMENTATIONS = new Set([`accessSync`, `appendFileSync`, `createReadStream`, `chmodSync`, `chownSync`, `closeSync`, `copyFileSync`, `linkSync`, `lstatSync`, `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`, `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`]); 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 => { callback(error); }); }); }); 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; } const tmpdirs = new Set(); let cleanExitRegistered = false; function registerCleanExit() { if (cleanExitRegistered) return; cleanExitRegistered = true; process.once(`exit`, () => { xfs.rmtempSync(); }); } const xfs = Object.assign(new NodeFS(), { detachTemp(p) { tmpdirs.delete(p); }, mktempSync(cb) { registerCleanExit(); while (true) { const p = getTempName(`xfs-`); try { this.mkdirSync(p); } catch (error) { if (error.code === `EEXIST`) { continue; } else { throw error; } } const realP = this.realpathSync(p); tmpdirs.add(realP); if (typeof cb !== `undefined`) { try { return cb(realP); } finally { if (tmpdirs.has(realP)) { tmpdirs.delete(realP); try { this.removeSync(realP); } catch (_a) {// Too bad if there's an error } } } } else { return p; } } }, async mktempPromise(cb) { registerCleanExit(); while (true) { const p = getTempName(`xfs-`); try { await this.mkdirPromise(p); } catch (error) { if (error.code === `EEXIST`) { continue; } else { throw error; } } const realP = await this.realpathPromise(p); tmpdirs.add(realP); if (typeof cb !== `undefined`) { try { return await cb(realP); } finally { if (tmpdirs.has(realP)) { tmpdirs.delete(realP); try { await this.removePromise(realP); } catch (_a) {// Too bad if there's an error } } } } else { return realP; } } }, async rmtempPromise() { await Promise.all(Array.from(tmpdirs.values()).map(async p => { try { await xfs.removePromise(p, { maxRetries: 0 }); tmpdirs.delete(p); } catch (_a) {// Too bad if there's an error } })); }, rmtempSync() { for (const p of tmpdirs) { try { xfs.removeSync(p); tmpdirs.delete(p); } catch (_a) {// Too bad if there's an error } } } }); // 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: external "url" const external_url_namespaceObject = require("url");; // CONCATENATED MODULE: ./sources/loader/internalTools.ts var ErrorCode; (function (ErrorCode) { ErrorCode["API_ERROR"] = "API_ERROR"; ErrorCode["BLACKLISTED"] = "BLACKLISTED"; 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.BLACKLISTED, 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/applyPatch.ts function applyPatch(pnpapi, opts) { // @ts-expect-error const builtinModules = new Set(external_module_.Module.builtinModules || Object.keys(process.binding(`natives`))); /** * The cache that will be used for all accesses occuring 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); return apiEntry.instance; }; 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 (builtinModules.has(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) return cacheEntry.exports; // Create a new module and store it into the cache // @ts-expect-error const module = new external_module_.Module(modulePath, parent); // @ts-expect-error 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 { // @ts-expect-error module.load(modulePath); hasThrown = false; } finally { 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) { const issuer = getIssuerModule(module); const issuerPath = issuer !== null ? npath.dirname(issuer.filename) : process.cwd(); return [{ apiPath: opts.manager.getApiPathFromParent(issuer), path: issuerPath, 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 (builtinModules.has(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- `)}`; throw firstError; }; const originalFindPath = external_module_.Module._findPath; external_module_.Module._findPath = function (request, paths, isMain) { if (request === `pnpapi`) return false; // Node sometimes call this function with an absolute path and a `null` set // of paths. This would cause the resolution to fail. To avoid that, we // fallback on the regular resolution. We only do this when `isMain` is // true because the Node default resolution doesn't handle well in-zip // paths, even absolute, so we try to use it as little as possible. if (!enableNativeHooks || isMain && npath.isAbsolute(request)) return originalFindPath.call(external_module_.Module, request, paths, isMain); for (const path of paths || []) { let resolution; try { const pnpApiPath = opts.manager.findApiPathFor(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; }; 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 packageRegistry = new Map(data.packageRegistryData.map(([packageName, packageStoreData]) => { return [packageName, new Map(packageStoreData.map(([packageReference, packageInformationData]) => { return [packageReference, { // 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 packageLocation: ppath.join(absolutePortablePath, packageInformationData.packageLocation), packageDependencies: new Map(packageInformationData.packageDependencies), packagePeers: new Set(packageInformationData.packagePeers), linkType: packageInformationData.linkType, discardFromLookup: packageInformationData.discardFromLookup || false }]; }))]; })); const packageLocatorsByLocations = new Map(); const packageLocationLengths = new Set(); for (const [packageName, storeData] of data.packageRegistryData) { for (const [packageReference, packageInformationData] of storeData) { if (packageName === null !== (packageReference === null)) throw new Error(`Assertion failed: The name and reference should be null, or neither should`); if (packageInformationData.discardFromLookup) continue; // @ts-expect-error: TypeScript isn't smart enough to understand the type assertion const packageLocator = { name: packageName, reference: packageReference }; packageLocatorsByLocations.set(packageInformationData.packageLocation, packageLocator); packageLocationLengths.add(packageInformationData.packageLocation.length); } } for (const location of data.locationBlacklistData) packageLocatorsByLocations.set(location, null); 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, packageLocationLengths: [...packageLocationLengths].sort((a, b) => b - a), packageLocatorsByLocations, packageRegistry }; } // 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`))); // Splits a require request into its components, or return null if the request is a file path const pathRegExp = /^(?![a-zA-Z]:[\\/]|\\\\|\.{0,2}(?:\/|$))((?:@[^/]+\/)?[^/]+)\/*(.*|)$/; // 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 = /\/$/; // 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, packageLocationLengths } = 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 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 { console.trace(logEntry); } }; } else if (debugLevel >= 1) { return (...args) => { try { return fn(...args); } catch (error) { const logEntry = makeLogEntry(name, args); logEntry.error = error; console.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; } /** * 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, `package.json`), `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; } /** * Normalize path to posix format. */ function normalizePath(p) { return npath.toPortablePath(p); } /** * 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) { if (isPathIgnored(location)) return null; let relativeLocation = normalizePath(ppath.relative(runtimeState.basePath, location)); if (!relativeLocation.match(isStrictRegExp)) relativeLocation = `./${relativeLocation}`; if (location.match(isDirRegExp) && !relativeLocation.endsWith(`/`)) relativeLocation = `${relativeLocation}/`; let from = 0; // If someone wants to use a binary search to go from O(n) to O(log n), be my guest while (from < packageLocationLengths.length && packageLocationLengths[from] > relativeLocation.length) from += 1; for (let t = from; t < packageLocationLengths.length; ++t) { const locator = packageLocatorsByLocations.get(relativeLocation.substr(0, packageLocationLengths[t])); if (typeof locator === `undefined`) continue; // Ensures that the returned locator isn't a blacklisted one. // // Blacklisted packages are packages that cannot be used because their dependencies cannot be deduced. This only // happens with peer dependencies, which effectively have different sets of dependencies depending on their // parents. // // In order to deambiguate those different sets of dependencies, the Yarn implementation of PnP will generate a // symlink for each combination of // it will find, and will // blacklist the target of those symlinks. By doing this, we ensure that files loaded through a specific path // will always have the same set of dependencies, provided the symlinks are correctly preserved. // // Unfortunately, some tools do not preserve them, and when it happens PnP isn't able anymore to deduce the set of // dependencies based on the path of the file that makes the require calls. But since we've blacklisted those // paths, we're able to print a more helpful error message that points out that a third-party package is doing // something incompatible! if (locator === null) { const locationForDisplay = getPathForDisplay(location); throw internalTools_makeError(ErrorCode.BLACKLISTED, `A forbidden path has been used in the package resolution process - this is usually caused by one of your tools calling 'fs.realpath' on the return value of 'require.resolve'. Since we need to use symlinks to simultaneously provide valid filesystem paths and disambiguate peer dependencies, they must be passed untransformed to 'require'.\n\nForbidden path: ${locationForDisplay}`, { location: locationForDisplay }); } return locator; } 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 && builtinModules.has(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)); } } // No need to use the return value; we just want to check the blacklist status findPackageLocator(unqualifiedPath); } // 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 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 }); } 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} (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} (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} (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 if (dependencyReference === undefined) { if (!considerBuiltins && builtinModules.has(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} (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} (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} (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} (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)) { 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} (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); } /** * 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); throw internalTools_makeError(ErrorCode.QUALIFIED_PATH_RESOLUTION_FAILED, `Qualified path resolution failed - none of the candidates can be found on the disk.\n\nSource path: ${unqualifiedPathForDisplay}\n${candidates.map(candidate => `Rejected candidate: ${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 } = {}) { const unqualifiedPath = resolveToUnqualified(request, issuer, { considerBuiltins }); if (unqualifiedPath === null) return null; try { return resolveUnqualified(unqualifiedPath, { 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) { console.warn(`[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) { const controlledBy = []; for (const [apiPath, apiEntry] of apiMetadata) { const locator = apiEntry.instance.findPackageLocator(modulePath); if (locator) { if (apiMetadata.size === 1) { return apiPath; } else { controlledBy.push(apiPath); } } } if (controlledBy.length !== 0) { if (controlledBy.length === 1) return controlledBy[0]; 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${controlledBy.map(pnpPath => ` ${npath.fromPortablePath(pnpPath)}`).join(`\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 candidate = ppath.join(curr, `.pnp.js`); if (xfs.existsSync(candidate) && xfs.statSync(candidate).isFile()) return addToCacheAndReturn(start, curr, candidate); const cjsCandidate = ppath.join(curr, `.pnp.cjs`); if (xfs.existsSync(cjsCandidate) && xfs.statSync(cjsCandidate).isFile()) return addToCacheAndReturn(start, curr, cjsCandidate); 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 }) }); let manager; const defaultApi = Object.assign(makeApi(defaultRuntimeState, { fakeFs: defaultFsLayer, 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 = defaultFsLayer, 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 }); } }); manager = makeManager(defaultApi, { fakeFs: defaultFsLayer }); // 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); }); } } /***/ }), /***/ 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; if (Module["noExitRuntime"]) noExitRuntime = Module["noExitRuntime"]; 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 wasmTable = new WebAssembly.Table({ initial: 31, maximum: 31, element: "anyfunc" }); var ABORT = false; var EXITSTATUS = 0; 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); } var WASM_PAGE_SIZE = 65536; 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_INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216; if (Module["wasmMemory"]) { wasmMemory = Module["wasmMemory"]; } else { wasmMemory = new WebAssembly.Memory({ initial: INITIAL_INITIAL_MEMORY / WASM_PAGE_SIZE, maximum: 2147483648 / WASM_PAGE_SIZE }); } if (wasmMemory) { buffer = wasmMemory.buffer; } INITIAL_INITIAL_MEMORY = buffer.byteLength; updateGlobalBufferAndViews(buffer); var __ATPRERUN__ = []; var __ATINIT__ = []; var __ATMAIN__ = []; 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 preMain() { FS.ignorePermissions = false; callRuntimeCallbacks(__ATMAIN__); } 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 addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); } var Math_abs = Math.abs; var Math_ceil = Math.ceil; var Math_floor = Math.floor; var Math_min = Math.min; 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; } function hasPrefix(str, prefix) { return String.prototype.startsWith ? str.startsWith(prefix) : str.indexOf(prefix) === 0; } var dataURIPrefix = "data:application/octet-stream;base64,"; function isDataURI(filename) { return hasPrefix(filename, dataURIPrefix); } var wasmBinaryFile = "data:application/octet-stream;base64,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AkEgaiQAC4sDAQF/IwBBMGsiAyQAIAMgADYCJCADIAE2AiAgAyACNwMYAkAgAygCJC0AKEEBcQRAIANCfzcDKAwBCwJAAkAgAygCJCgCIEEATQ0AIAMpAxhC////////////AFYNACADKQMYQgBYDQEgAygCIA0BCyADKAIkQQxqQRJBABAVIANCfzcDKAwBCyADKAIkLQA1QQFxBEAgA0J/NwMoDAELAn8jAEEQayIAIAMoAiQ2AgwgACgCDC0ANEEBcQsEQCADQgA3AygMAQsgAykDGFAEQCADQgA3AygMAQsgA0IANwMQA0AgAykDECADKQMYVARAIAMgAygCJCADKAIgIAMpAxCnaiADKQMYIAMpAxB9QQEQIiICNwMIIAJCAFMEQCADKAIkQQE6ADUgAykDEFAEQCADQn83AygMBAsgAyADKQMQNwMoDAMLIAMpAwhQBEAgAygCJEEBOgA0BSADIAMpAwggAykDEHw3AxAMAgsLCyADIAMpAxA3AygLIAMpAyghAiADQTBqJAAgAgs2AQF/IwBBEGsiASAANgIMAn4gASgCDC0AAEEBcQRAIAEoAgwpAwggASgCDCkDEH0MAQtCAAsLsgECAX8BfiMAQRBrIgEkACABIAA2AgQgASABKAIEQggQHzYCAAJAIAEoAgBFBEAgAUIANwMIDAELIAEgASgCAC0AAK0gASgCAC0AB61COIYgASgCAC0ABq1CMIZ8IAEoAgAtAAWtQiiGfCABKAIALQAErUIghnwgASgCAC0AA61CGIZ8IAEoAgAtAAKtQhCGfCABKAIALQABrUIIhnx8NwMICyABKQMIIQIgAUEQaiQAIAILqAEBAX8jAEEQayIBJAAgASAANgIIAkAgASgCCCgCIEEATQRAIAEoAghBDGpBEkEAEBUgAUF/NgIMDAELIAEoAggiACAAKAIgQX9qNgIgIAEoAggoAiBFBEAgASgCCEEAQgBBAhAiGiABKAIIKAIABEAgASgCCCgCABAyQQBIBEAgASgCCEEMakEUQQAQFQsLCyABQQA2AgwLIAEoAgwhACABQRBqJAAgAAvxAgICfwF+AkAgAkUNACAAIAJqIgNBf2ogAToAACAAIAE6AAAgAkEDSQ0AIANBfmogAToAACAAIAE6AAEgA0F9aiABOgAAIAAgAToAAiACQQdJDQAgA0F8aiABOgAAIAAgAToAAyACQQlJDQAgAEEAIABrQQNxIgRqIgMgAUH/AXFBgYKECGwiADYCACADIAIgBGtBfHEiAmoiAUF8aiAANgIAIAJBCUkNACADIAA2AgggAyAANgIEIAFBeGogADYCACABQXRqIAA2AgAgAkEZSQ0AIAMgADYCGCADIAA2AhQgAyAANgIQIAMgADYCDCABQXBqIAA2AgAgAUFsaiAANgIAIAFBaGogADYCACABQWRqIAA2AgAgAiADQQRxQRhyIgFrIgJBIEkNACAArSIFQiCGIAWEIQUgASADaiEBA0AgASAFNwMYIAEgBTcDECABIAU3AwggASAFNwMAIAFBIGohASACQWBqIgJBH0sNAAsLC9wBAQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgASgCDCgCKARAIAEoAgwoAihBADYCKCABKAIMKAIoQgA3AyAgASgCDAJ+IAEoAgwpAxggASgCDCkDIFYEQCABKAIMKQMYDAELIAEoAgwpAyALNwMYCyABIAEoAgwpAxg3AwADQCABKQMAIAEoAgwpAwhaRQRAIAEoAgwoAgAgASkDAKdBBHRqKAIAEBYgASABKQMAQgF8NwMADAELCyABKAIMKAIAEBYgASgCDCgCBBAWIAEoAgwQFgsgAUEQaiQAC2ACAX8BfiMAQRBrIgEkACABIAA2AgQCQCABKAIEKAIkQQFHBEAgASgCBEEMakESQQAQFSABQn83AwgMAQsgASABKAIEQQBCAEENECI3AwgLIAEpAwghAiABQRBqJAAgAgugAQEBfyMAQSBrIgMkACADIAA2AhggAyABNgIUIAMgAjcDCCADIAMoAhgoAgAgAygCFCADKQMIEMsBIgI3AwACQCACQgBTBEAgAygCGEEIaiADKAIYKAIAEBggA0F/NgIcDAELIAMpAwAgAykDCFIEQCADKAIYQQhqQQZBGxAVIANBfzYCHAwBCyADQQA2AhwLIAMoAhwhACADQSBqJAAgAAtrAQF/IwBBIGsiAiAANgIcIAJCASACKAIcrYY3AxAgAkEMaiABNgIAA0AgAiACKAIMIgBBBGo2AgwgAiAAKAIANgIIIAIoAghBAEhFBEAgAiACKQMQQgEgAigCCK2GhDcDEAwBCwsgAikDEAsvAQF/IwBBEGsiASQAIAEgADYCDCABKAIMKAIIEBYgASgCDEEANgIIIAFBEGokAAvNAQEBfyMAQRBrIgIkACACIAA2AgggAiABNgIEAkAgAigCCC0AKEEBcQRAIAJBfzYCDAwBCyACKAIERQRAIAIoAghBDGpBEkEAEBUgAkF/NgIMDAELIAIoAgQQPCACKAIIKAIABEAgAigCCCgCACACKAIEEDlBAEgEQCACKAIIQQxqIAIoAggoAgAQGCACQX82AgwMAgsLIAIoAgggAigCBEI4QQMQIkIAUwRAIAJBfzYCDAwBCyACQQA2AgwLIAIoAgwhACACQRBqJAAgAAsxAQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgASgCDBBcIAEoAgwQFgsgAUEQaiQAC98EAQF/IwBBIGsiAiAANgIYIAIgATYCFAJAIAIoAhhFBEAgAkEBNgIcDAELIAIgAigCGCgCADYCDAJAIAIoAhgoAggEQCACIAIoAhgoAgg2AhAMAQsgAkEBNgIQIAJBADYCCANAAkAgAigCCCACKAIYLwEETw0AAkAgAigCDCACKAIIai0AAEEfSgRAIAIoAgwgAigCCGotAABBgAFIDQELIAIoAgwgAigCCGotAABBDUYNACACKAIMIAIoAghqLQAAQQpGDQAgAigCDCACKAIIai0AAEEJRgRADAELIAJBAzYCEAJAIAIoAgwgAigCCGotAABB4AFxQcABRgRAIAJBATYCAAwBCwJAIAIoAgwgAigCCGotAABB8AFxQeABRgRAIAJBAjYCAAwBCwJAIAIoAgwgAigCCGotAABB+AFxQfABRgRAIAJBAzYCAAwBCyACQQQ2AhAMBAsLCyACKAIIIAIoAgBqIAIoAhgvAQRPBEAgAkEENgIQDAILIAJBATYCBANAIAIoAgQgAigCAE0EQCACKAIMIAIoAgggAigCBGpqLQAAQcABcUGAAUcEQCACQQQ2AhAMBgUgAiACKAIEQQFqNgIEDAILAAsLIAIgAigCACACKAIIajYCCAsgAiACKAIIQQFqNgIIDAELCwsgAigCGCACKAIQNgIIIAIoAhQEQAJAIAIoAhRBAkcNACACKAIQQQNHDQAgAkECNgIQIAIoAhhBAjYCCAsCQCACKAIUIAIoAhBGDQAgAigCEEEBRg0AIAJBBTYCHAwCCwsgAiACKAIQNgIcCyACKAIcC2oBAX8jAEEQayIBIAA2AgwgASgCDEIANwMAIAEoAgxBADYCCCABKAIMQn83AxAgASgCDEEANgIsIAEoAgxBfzYCKCABKAIMQgA3AxggASgCDEIANwMgIAEoAgxBADsBMCABKAIMQQA7ATILbwEBfwJAIABBA2pBfHEiAUEBTkEAAn9BqKABKAIAIgBFBEBBqKABQdChwQI2AgBB0KHBAiEACyAAIAFqIgEgAE0LGw0AIAE/AEEQdEsEQCABEBRFDQELQaigASABNgIAIAAPC0G0nAFBMDYCAEF/Cz8BAX8jAEEQayIDJAAgAyAANgIMIAMgATYCCCADIAI2AgQgAygCDCADKAIIIAMoAgQQ6wIhACADQRBqJAAgAAuqAgEBfyMAQRBrIgEkACABIAA2AgwgASgCDARAIAEoAgwoAgAEQCABKAIMKAIAEDIaIAEoAgwoAgAQHAsgASgCDCgCHBAWIAEoAgwoAiAQJiABKAIMKAIkECYgASgCDCgCUBCAAyABKAIMKAJABEAgAUIANwMAA0AgASkDACABKAIMKQMwWkUEQCABKAIMKAJAIAEpAwCnQQR0ahBiIAEgASkDAEIBfDcDAAwBCwsgASgCDCgCQBAWCyABQgA3AwADQCABKQMAIAEoAgwoAkStWkUEQCABKAIMKAJMIAEpAwCnQQJ0aigCABCDAyABIAEpAwBCAXw3AwAMAQsLIAEoAgwoAkwQFiABKAIMKAJUEPoCIAEoAgxBCGoQOCABKAIMEBYLIAFBEGokAAtvAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgAygCGCADKAIQrRAfNgIMAkAgAygCDEUEQCADQX82AhwMAQsgAygCDCADKAIUIAMoAhAQGhogA0EANgIcCyADKAIcGiADQSBqJAALogEBAX8jAEEgayIEJAAgBCAANgIYIAQgATcDECAEIAI2AgwgBCADNgIIIAQgBCgCDCAEKQMQECoiADYCBAJAIABFBEAgBCgCCEEOQQAQFSAEQQA2AhwMAQsgBCgCGCAEKAIEKAIEIAQpAxAgBCgCCBBhQQBIBEAgBCgCBBAXIARBADYCHAwBCyAEIAQoAgQ2AhwLIAQoAhwhACAEQSBqJAAgAAugAQEBfyMAQSBrIgMkACADIAA2AhQgAyABNgIQIAMgAjcDCCADIAMoAhA2AgQCQCADKQMIQghUBEAgA0J/NwMYDAELIwBBEGsiACADKAIUNgIMIAAoAgwoAgAhACADKAIEIAA2AgAjAEEQayIAIAMoAhQ2AgwgACgCDCgCBCEAIAMoAgQgADYCBCADQgg3AxgLIAMpAxghAiADQSBqJAAgAguDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQX9qIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUF/aiIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELPwEBfyMAQRBrIgIgADYCDCACIAE2AgggAigCDARAIAIoAgwgAigCCCgCADYCACACKAIMIAIoAggoAgQ2AgQLC7wCAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE3AxAgBCACNgIMIAQgAzYCCCAEKAIIRQRAIAQgBCgCGEEIajYCCAsCQCAEKQMQIAQoAhgpAzBaBEAgBCgCCEESQQAQFSAEQQA2AhwMAQsCQCAEKAIMQQhxRQRAIAQoAhgoAkAgBCkDEKdBBHRqKAIEDQELIAQoAhgoAkAgBCkDEKdBBHRqKAIARQRAIAQoAghBEkEAEBUgBEEANgIcDAILAkAgBCgCGCgCQCAEKQMQp0EEdGotAAxBAXFFDQAgBCgCDEEIcQ0AIAQoAghBF0EAEBUgBEEANgIcDAILIAQgBCgCGCgCQCAEKQMQp0EEdGooAgA2AhwMAQsgBCAEKAIYKAJAIAQpAxCnQQR0aigCBDYCHAsgBCgCHCEAIARBIGokACAAC4QBAQF/IwBBEGsiASQAIAEgADYCCCABQdgAEBkiADYCBAJAIABFBEAgAUEANgIMDAELAkAgASgCCARAIAEoAgQgASgCCEHYABAaGgwBCyABKAIEEF0LIAEoAgRBADYCACABKAIEQQE6AAUgASABKAIENgIMCyABKAIMIQAgAUEQaiQAIAAL1AIBAX8jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMAkAgBCgCGEUEQCAEKAIUBEAgBCgCFEEANgIACyAEQbDTADYCHAwBCyAEKAIQQcAAcUUEQCAEKAIYKAIIRQRAIAQoAhhBABA7GgsCQAJAAkAgBCgCEEGAAXFFDQAgBCgCGCgCCEEBRg0AIAQoAhgoAghBAkcNAQsgBCgCGCgCCEEERw0BCyAEKAIYKAIMRQRAIAQoAhgoAgAgBCgCGC8BBCAEKAIYQRBqIAQoAgwQ0gEhACAEKAIYIAA2AgwgAEUEQCAEQQA2AhwMBAsLIAQoAhQEQCAEKAIUIAQoAhgoAhA2AgALIAQgBCgCGCgCDDYCHAwCCwsgBCgCFARAIAQoAhQgBCgCGC8BBDYCAAsgBCAEKAIYKAIANgIcCyAEKAIcIQAgBEEgaiQAIAALOQEBfyMAQRBrIgEgADYCDEEAIQAgASgCDC0AAEEBcQR/IAEoAgwpAxAgASgCDCkDCFEFQQALQQFxC/ICAQF/IwBBEGsiASQAIAEgADYCCAJAIAEoAggtAChBAXEEQCABQX82AgwMAQsgASgCCCgCJEEDRgRAIAEoAghBDGpBF0EAEBUgAUF/NgIMDAELAkAgASgCCCgCIEEASwRAAn8jAEEQayIAIAEoAgg2AgwgACgCDCkDGELAAINQCwRAIAEoAghBDGpBHUEAEBUgAUF/NgIMDAMLDAELIAEoAggoAgAEQCABKAIIKAIAEElBAEgEQCABKAIIQQxqIAEoAggoAgAQGCABQX82AgwMAwsLIAEoAghBAEIAQQAQIkIAUwRAIAEoAggoAgAEQCABKAIIKAIAEDIaCyABQX82AgwMAgsLIAEoAghBADoANCABKAIIQQA6ADUjAEEQayIAIAEoAghBDGo2AgwgACgCDARAIAAoAgxBADYCACAAKAIMQQA2AgQLIAEoAggiACAAKAIgQQFqNgIgIAFBADYCDAsgASgCDCEAIAFBEGokACAAC3cCAX8BfiMAQRBrIgEkACABIAA2AgQCQCABKAIELQAoQQFxBEAgAUJ/NwMIDAELIAEoAgQoAiBBAE0EQCABKAIEQQxqQRJBABAVIAFCfzcDCAwBCyABIAEoAgRBAEIAQQcQIjcDCAsgASkDCCECIAFBEGokACACC50BAQF/IwBBEGsiASAANgIIAkACQAJAIAEoAghFDQAgASgCCCgCIEUNACABKAIIKAIkDQELIAFBATYCDAwBCyABIAEoAggoAhw2AgQCQAJAIAEoAgRFDQAgASgCBCgCACABKAIIRw0AIAEoAgQoAgRBtP4ASQ0AIAEoAgQoAgRB0/4ATQ0BCyABQQE2AgwMAQsgAUEANgIMCyABKAIMC4ABAQN/IwBBEGsiAiAANgIMIAIgATYCCCACKAIIQQh2IQEgAigCDCgCCCEDIAIoAgwiBCgCFCEAIAQgAEEBajYCFCAAIANqIAE6AAAgAigCCEH/AXEhASACKAIMKAIIIQMgAigCDCICKAIUIQAgAiAAQQFqNgIUIAAgA2ogAToAAAuCAQECfyAARQRAIAEQGQ8LIAFBQE8EQEG0nAFBMDYCAEEADwsgAEF4akEQIAFBC2pBeHEgAUELSRsQ7gIiAgRAIAJBCGoPCyABEBkiAkUEQEEADwsgAiAAQXxBeCAAQXxqKAIAIgNBA3EbIANBeHFqIgMgASADIAFJGxAaGiAAEBYgAgubBQEBfyMAQUBqIgQkACAEIAA2AjggBCABNwMwIAQgAjYCLCAEIAM2AiggBEHIABAZIgA2AiQCQCAARQRAIARBADYCPAwBCyAEKAIkQgA3AzggBCgCJEIANwMYIAQoAiRCADcDMCAEKAIkQQA2AgAgBCgCJEEANgIEIAQoAiRCADcDCCAEKAIkQgA3AxAgBCgCJEEANgIoIAQoAiRCADcDIAJAIAQpAzBQBEBBCBAZIQAgBCgCJCAANgIEIABFBEAgBCgCJBAWIAQoAihBDkEAEBUgBEEANgI8DAMLIAQoAiQoAgRCADcDAAwBCyAEKAIkIAQpAzBBABC9AUEBcUUEQCAEKAIoQQ5BABAVIAQoAiQQNCAEQQA2AjwMAgsgBEIANwMIIARCADcDGCAEQgA3AxADQCAEKQMYIAQpAzBUBEAgBCgCOCAEKQMYp0EEdGopAwhQRQRAIAQoAjggBCkDGKdBBHRqKAIARQRAIAQoAihBEkEAEBUgBCgCJBA0IARBADYCPAwFCyAEKAIkKAIAIAQpAxCnQQR0aiAEKAI4IAQpAxinQQR0aigCADYCACAEKAIkKAIAIAQpAxCnQQR0aiAEKAI4IAQpAxinQQR0aikDCDcDCCAEKAIkKAIEIAQpAxinQQN0aiAEKQMINwMAIAQgBCgCOCAEKQMYp0EEdGopAwggBCkDCHw3AwggBCAEKQMQQgF8NwMQCyAEIAQpAxhCAXw3AxgMAQsLIAQoAiQgBCkDEDcDCCAEKAIkAn5CACAEKAIsDQAaIAQoAiQpAwgLNwMYIAQoAiQoAgQgBCgCJCkDCKdBA3RqIAQpAwg3AwAgBCgCJCAEKQMINwMwCyAEIAQoAiQ2AjwLIAQoAjwhACAEQUBrJAAgAAueAQEBfyMAQSBrIgQkACAEIAA2AhggBCABNwMQIAQgAjYCDCAEIAM2AgggBCAEKAIYIAQpAxAgBCgCDCAEKAIIEEUiADYCBAJAIABFBEAgBEEANgIcDAELIAQgBCgCBCgCMEEAIAQoAgwgBCgCCBBHIgA2AgAgAEUEQCAEQQA2AhwMAQsgBCAEKAIANgIcCyAEKAIcIQAgBEEgaiQAIAAL2gEBAX8jAEEgayIEJAAgBCAAOwEaIAQgATsBGCAEIAI2AhQgBCADNgIQIARBEBAZIgA2AgwCQCAARQRAIARBADYCHAwBCyAEKAIMQQA2AgAgBCgCDCAEKAIQNgIEIAQoAgwgBC8BGjsBCCAEKAIMIAQvARg7AQoCQCAELwEYQQBKBEAgBCgCFCAELwEYEMkBIQAgBCgCDCAANgIMIABFBEAgBCgCDBAWIARBADYCHAwDCwwBCyAEKAIMQQA2AgwLIAQgBCgCDDYCHAsgBCgCHCEAIARBIGokACAAC4wDAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE7ARYgBCACNgIQIAQgAzYCDAJAIAQvARZFBEAgBEEANgIcDAELAkACQAJAAkAgBCgCEEGAMHEiAARAIABBgBBGDQEgAEGAIEYNAgwDCyAEQQA2AgQMAwsgBEECNgIEDAILIARBBDYCBAwBCyAEKAIMQRJBABAVIARBADYCHAwBCyAEQRQQGSIANgIIIABFBEAgBCgCDEEOQQAQFSAEQQA2AhwMAQsgBC8BFkEBahAZIQAgBCgCCCAANgIAIABFBEAgBCgCCBAWIARBADYCHAwBCyAEKAIIKAIAIAQoAhggBC8BFhAaGiAEKAIIKAIAIAQvARZqQQA6AAAgBCgCCCAELwEWOwEEIAQoAghBADYCCCAEKAIIQQA2AgwgBCgCCEEANgIQIAQoAgQEQCAEKAIIIAQoAgQQO0EFRgRAIAQoAggQJiAEKAIMQRJBABAVIARBADYCHAwCCwsgBCAEKAIINgIcCyAEKAIcIQAgBEEgaiQAIAALNwEBfyMAQRBrIgEgADYCCAJAIAEoAghFBEAgAUEAOwEODAELIAEgASgCCC8BBDsBDgsgAS8BDgtDAQN/AkAgAkUNAANAIAAtAAAiBCABLQAAIgVGBEAgAUEBaiEBIABBAWohACACQX9qIgINAQwCCwsgBCAFayEDCyADC5YBAQV/IAAoAkxBAE4EQEEBIQMLIAAoAgBBAXEiBEUEQCAAKAI0IgEEQCABIAAoAjg2AjgLIAAoAjgiAgRAIAIgATYCNAsgAEGwoQEoAgBGBEBBsKEBIAI2AgALCyAAEJsBIQEgACAAKAIMEQAAIQIgACgCYCIFBEAgBRAWCwJAIARFBEAgABAWDAELIANFDQALIAEgAnILjgMCAX8BfiMAQTBrIgQkACAEIAA2AiQgBCABNgIgIAQgAjYCHCAEIAM2AhgCQCAEKAIkRQRAIARCfzcDKAwBCyAEKAIgRQRAIAQoAhhBEkEAEBUgBEJ/NwMoDAELIAQoAhxBgyBxBEAgBEEYQRkgBCgCHEEBcRs2AhQgBEIANwMAA0AgBCkDACAEKAIkKQMwVARAIAQgBCgCJCAEKQMAIAQoAhwgBCgCGBBPNgIQIAQoAhAEQCAEKAIcQQJxBEAgBCAEKAIQIgAgABAsQQFqEKECNgIMIAQoAgwEQCAEIAQoAgxBAWo2AhALCyAEKAIgIAQoAhAgBCgCFBECAEUEQCMAQRBrIgAgBCgCGDYCDCAAKAIMBEAgACgCDEEANgIAIAAoAgxBADYCBAsgBCAEKQMANwMoDAULCyAEIAQpAwBCAXw3AwAMAQsLIAQoAhhBCUEAEBUgBEJ/NwMoDAELIAQgBCgCJCgCUCAEKAIgIAQoAhwgBCgCGBD+AjcDKAsgBCkDKCEFIARBMGokACAFC9AHAQF/IwBBIGsiASQAIAEgADYCHCABIAEoAhwoAiw2AhADQCABIAEoAhwoAjwgASgCHCgCdGsgASgCHCgCbGs2AhQgASgCHCgCbCABKAIQIAEoAhwoAixBhgJrak8EQCABKAIcKAI4IAEoAhwoAjggASgCEGogASgCECABKAIUaxAaGiABKAIcIgAgACgCcCABKAIQazYCcCABKAIcIgAgACgCbCABKAIQazYCbCABKAIcIgAgACgCXCABKAIQazYCXCABKAIcENwCIAEgASgCECABKAIUajYCFAsgASgCHCgCACgCBARAIAEgASgCHCgCACABKAIcKAJ0IAEoAhwoAjggASgCHCgCbGpqIAEoAhQQczYCGCABKAIcIgAgASgCGCAAKAJ0ajYCdCABKAIcKAJ0IAEoAhwoArQtakEDTwRAIAEgASgCHCgCbCABKAIcKAK0LWs2AgwgASgCHCABKAIcKAI4IAEoAgxqLQAANgJIIAEoAhwgASgCHCgCVCABKAIcKAI4IAEoAgxBAWpqLQAAIAEoAhwoAkggASgCHCgCWHRzcTYCSANAIAEoAhwoArQtBEAgASgCHCABKAIcKAJUIAEoAhwoAjggASgCDEECamotAAAgASgCHCgCSCABKAIcKAJYdHNxNgJIIAEoAhwoAkAgASgCDCABKAIcKAI0cUEBdGogASgCHCgCRCABKAIcKAJIQQF0ai8BADsBACABKAIcKAJEIAEoAhwoAkhBAXRqIAEoAgw7AQAgASABKAIMQQFqNgIMIAEoAhwiACAAKAK0LUF/ajYCtC0gASgCHCgCdCABKAIcKAK0LWpBA08NAQsLC0EAIQAgASgCHCgCdEGGAkkEfyABKAIcKAIAKAIEQQBHBUEAC0EBcQ0BCwsgASgCHCgCwC0gASgCHCgCPEkEQCABIAEoAhwoAmwgASgCHCgCdGo2AggCQCABKAIcKALALSABKAIISQRAIAEgASgCHCgCPCABKAIIazYCBCABKAIEQYICSwRAIAFBggI2AgQLIAEoAhwoAjggASgCCGpBACABKAIEEDMgASgCHCABKAIIIAEoAgRqNgLALQwBCyABKAIcKALALSABKAIIQYICakkEQCABIAEoAghBggJqIAEoAhwoAsAtazYCBCABKAIEIAEoAhwoAjwgASgCHCgCwC1rSwRAIAEgASgCHCgCPCABKAIcKALALWs2AgQLIAEoAhwoAjggASgCHCgCwC1qQQAgASgCBBAzIAEoAhwiACABKAIEIAAoAsAtajYCwC0LCwsgAUEgaiQAC4YFAQF/IwBBIGsiBCQAIAQgADYCHCAEIAE2AhggBCACNgIUIAQgAzYCECAEQQM2AgwCQCAEKAIcKAK8LUEQIAQoAgxrSgRAIAQgBCgCEDYCCCAEKAIcIgAgAC8BuC0gBCgCCEH//wNxIAQoAhwoArwtdHI7AbgtIAQoAhwvAbgtQf8BcSEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhwvAbgtQQh1IQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCHCAEKAIIQf//A3FBECAEKAIcKAK8LWt1OwG4LSAEKAIcIgAgACgCvC0gBCgCDEEQa2o2ArwtDAELIAQoAhwiACAALwG4LSAEKAIQQf//A3EgBCgCHCgCvC10cjsBuC0gBCgCHCIAIAQoAgwgACgCvC1qNgK8LQsgBCgCHBC4ASAEKAIUQf8BcSEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhRB//8DcUEIdSEBIAQoAhwoAgghAiAEKAIcIgMoAhQhACADIABBAWo2AhQgACACaiABOgAAIAQoAhRBf3NB/wFxIQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCFEF/c0H//wNxQQh1IQEgBCgCHCgCCCECIAQoAhwiAygCFCEAIAMgAEEBajYCFCAAIAJqIAE6AAAgBCgCHCgCCCAEKAIcKAIUaiAEKAIYIAQoAhQQGhogBCgCHCIAIAQoAhQgACgCFGo2AhQgBEEgaiQAC/kBAQF/IwBBIGsiAiQAIAIgADYCHCACIAE5AxACQCACKAIcRQ0AIAICfAJ8IAIrAxBEAAAAAAAAAABkBEAgAisDEAwBC0QAAAAAAAAAAAtEAAAAAAAA8D9jBEACfCACKwMQRAAAAAAAAAAAZARAIAIrAxAMAQtEAAAAAAAAAAALDAELRAAAAAAAAPA/CyACKAIcKwMoIAIoAhwrAyChoiACKAIcKwMgoDkDCCACKwMIIAIoAhwrAxihIAIoAhwrAxBkRQ0AIAIoAhwoAgAgAisDCCACKAIcKAIMIAIoAhwoAgQRGgAgAigCHCACKwMIOQMYCyACQSBqJAAL1AMBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhACQAJAIAMoAhgEQCADKAIUDQELIAMoAhBBEkEAEBUgA0EAOgAfDAELIAMoAhgpAwhCAFYEQCADIAMoAhQQfDYCDCADIAMoAgwgAygCGCgCAHA2AgggA0EANgIAIAMgAygCGCgCECADKAIIQQJ0aigCADYCBANAIAMoAgQEQAJAIAMoAgQoAhwgAygCDEcNACADKAIUIAMoAgQoAgAQWw0AAkAgAygCBCkDCEJ/UQRAAkAgAygCAARAIAMoAgAgAygCBCgCGDYCGAwBCyADKAIYKAIQIAMoAghBAnRqIAMoAgQoAhg2AgALIAMoAgQQFiADKAIYIgAgACkDCEJ/fDcDCAJAIAMoAhgiACkDCLogACgCALhEexSuR+F6hD+iY0UNACADKAIYKAIAQYACTQ0AIAMoAhggAygCGCgCAEEBdiADKAIQEFpBAXFFBEAgA0EAOgAfDAgLCwwBCyADKAIEQn83AxALIANBAToAHwwECyADIAMoAgQ2AgAgAyADKAIEKAIYNgIEDAELCwsgAygCEEEJQQAQFSADQQA6AB8LIAMtAB9BAXEhACADQSBqJAAgAAvfAgEBfyMAQTBrIgMkACADIAA2AiggAyABNgIkIAMgAjYCIAJAIAMoAiQgAygCKCgCAEYEQCADQQE6AC8MAQsgAyADKAIkQQQQeyIANgIcIABFBEAgAygCIEEOQQAQFSADQQA6AC8MAQsgAygCKCkDCEIAVgRAIANBADYCGANAIAMoAhggAygCKCgCAE9FBEAgAyADKAIoKAIQIAMoAhhBAnRqKAIANgIUA0AgAygCFARAIAMgAygCFCgCGDYCECADIAMoAhQoAhwgAygCJHA2AgwgAygCFCADKAIcIAMoAgxBAnRqKAIANgIYIAMoAhwgAygCDEECdGogAygCFDYCACADIAMoAhA2AhQMAQsLIAMgAygCGEEBajYCGAwBCwsLIAMoAigoAhAQFiADKAIoIAMoAhw2AhAgAygCKCADKAIkNgIAIANBAToALwsgAy0AL0EBcSEAIANBMGokACAAC00BAn8gAS0AACECAkAgAC0AACIDRQ0AIAIgA0cNAANAIAEtAAEhAiAALQABIgNFDQEgAUEBaiEBIABBAWohACACIANGDQALCyADIAJrC4kCAQF/IwBBEGsiASQAIAEgADYCDAJAIAEoAgwtAAVBAXEEQCABKAIMKAIAQQJxRQ0BCyABKAIMKAIwECYgASgCDEEANgIwCwJAIAEoAgwtAAVBAXEEQCABKAIMKAIAQQhxRQ0BCyABKAIMKAI0ECQgASgCDEEANgI0CwJAIAEoAgwtAAVBAXEEQCABKAIMKAIAQQRxRQ0BCyABKAIMKAI4ECYgASgCDEEANgI4CwJAIAEoAgwtAAVBAXEEQCABKAIMKAIAQYABcUUNAQsgASgCDCgCVARAIAEoAgwoAlRBACABKAIMKAJUECwQMwsgASgCDCgCVBAWIAEoAgxBADYCVAsgAUEQaiQAC/EBAQF/IwBBEGsiASAANgIMIAEoAgxBADYCACABKAIMQQA6AAQgASgCDEEAOgAFIAEoAgxBAToABiABKAIMQb8GOwEIIAEoAgxBCjsBCiABKAIMQQA7AQwgASgCDEF/NgIQIAEoAgxBADYCFCABKAIMQQA2AhggASgCDEIANwMgIAEoAgxCADcDKCABKAIMQQA2AjAgASgCDEEANgI0IAEoAgxBADYCOCABKAIMQQA2AjwgASgCDEEAOwFAIAEoAgxBgIDYjXg2AkQgASgCDEIANwNIIAEoAgxBADsBUCABKAIMQQA7AVIgASgCDEEANgJUC9oTAQF/IwBBsAFrIgMkACADIAA2AqgBIAMgATYCpAEgAyACNgKgASADQQA2ApABIAMgAygCpAEoAjBBABA7NgKUASADIAMoAqQBKAI4QQAQOzYCmAECQAJAAkACQCADKAKUAUECRgRAIAMoApgBQQFGDQELIAMoApQBQQFGBEAgAygCmAFBAkYNAQsgAygClAFBAkcNASADKAKYAUECRw0BCyADKAKkASIAIAAvAQxBgBByOwEMDAELIAMoAqQBIgAgAC8BDEH/7wNxOwEMIAMoApQBQQJGBEAgA0H14AEgAygCpAEoAjAgAygCqAFBCGoQxAE2ApABIAMoApABRQRAIANBfzYCrAEMAwsLAkAgAygCoAFBgAJxDQAgAygCmAFBAkcNACADQfXGASADKAKkASgCOCADKAKoAUEIahDEATYCSCADKAJIRQRAIAMoApABECQgA0F/NgKsAQwDCyADKAJIIAMoApABNgIAIAMgAygCSDYCkAELCwJAIAMoAqQBLwFSRQRAIAMoAqQBIgAgAC8BDEH+/wNxOwEMDAELIAMoAqQBIgAgAC8BDEEBcjsBDAsgAyADKAKkASADKAKgARCAAUEBcToAhgEgAyADKAKgAUGACnFBgApHBH8gAy0AhgEFQQELQQFxOgCHASADAn9BASADKAKkAS8BUkGBAkYNABpBASADKAKkAS8BUkGCAkYNABogAygCpAEvAVJBgwJGC0EBcToAhQEgAy0AhwFBAXEEQCADIANBIGpCHBAqNgIcIAMoAhxFBEAgAygCqAFBCGpBDkEAEBUgAygCkAEQJCADQX82AqwBDAILAkAgAygCoAFBgAJxBEACQCADKAKgAUGACHENACADKAKkASkDIEL/////D1YNACADKAKkASkDKEL/////D1gNAgsgAygCHCADKAKkASkDKBAuIAMoAhwgAygCpAEpAyAQLgwBCwJAAkAgAygCoAFBgAhxDQAgAygCpAEpAyBC/////w9WDQAgAygCpAEpAyhC/////w9WDQAgAygCpAEpA0hC/////w9YDQELIAMoAqQBKQMoQv////8PWgRAIAMoAhwgAygCpAEpAygQLgsgAygCpAEpAyBC/////w9aBEAgAygCHCADKAKkASkDIBAuCyADKAKkASkDSEL/////D1oEQCADKAIcIAMoAqQBKQNIEC4LCwsCfyMAQRBrIgAgAygCHDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFSADKAIcEBcgAygCkAEQJCADQX82AqwBDAILIANBAQJ/IwBBEGsiACADKAIcNgIMAn4gACgCDC0AAEEBcQRAIAAoAgwpAxAMAQtCAAunQf//A3ELIANBIGpBgAYQUDYCjAEgAygCHBAXIAMoAowBIAMoApABNgIAIAMgAygCjAE2ApABCyADLQCFAUEBcQRAIAMgA0EVakIHECo2AhAgAygCEEUEQCADKAKoAUEIakEOQQAQFSADKAKQARAkIANBfzYCrAEMAgsgAygCEEECECAgAygCEEHP0wBBAhBAIAMoAhAgAygCpAEvAVJB/wFxEIoBIAMoAhAgAygCpAEoAhBB//8DcRAgAn8jAEEQayIAIAMoAhA2AgwgACgCDC0AAEEBcUULBEAgAygCqAFBCGpBFEEAEBUgAygCEBAXIAMoApABECQgA0F/NgKsAQwCCyADQYGyAkEHIANBFWpBgAYQUDYCDCADKAIQEBcgAygCDCADKAKQATYCACADIAMoAgw2ApABCyADIANB0ABqQi4QKiIANgJMIABFBEAgAygCqAFBCGpBDkEAEBUgAygCkAEQJCADQX82AqwBDAELIAMoAkxBxdMAQcrTACADKAKgAUGAAnEbQQQQQCADKAKgAUGAAnFFBEAgAygCTAJ/QS0gAy0AhgFBAXENABogAygCpAEvAQgLQf//A3EQIAsgAygCTAJ/QS0gAy0AhgFBAXENABogAygCpAEvAQoLQf//A3EQICADKAJMIAMoAqQBLwEMECACQCADLQCFAUEBcQRAIAMoAkxB4wAQIAwBCyADKAJMIAMoAqQBKAIQQf//A3EQIAsgAygCpAEoAhQgA0GeAWogA0GcAWoQwwEgAygCTCADLwGeARAgIAMoAkwgAy8BnAEQIAJAAkAgAy0AhQFBAXFFDQAgAygCpAEpAyhCFFoNACADKAJMQQAQIQwBCyADKAJMIAMoAqQBKAIYECELAkACQCADKAKgAUGAAnFBgAJHDQAgAygCpAEpAyBC/////w9UBEAgAygCpAEpAyhC/////w9UDQELIAMoAkxBfxAhIAMoAkxBfxAhDAELAkAgAygCpAEpAyBC/////w9UBEAgAygCTCADKAKkASkDIKcQIQwBCyADKAJMQX8QIQsCQCADKAKkASkDKEL/////D1QEQCADKAJMIAMoAqQBKQMopxAhDAELIAMoAkxBfxAhCwsgAygCTCADKAKkASgCMBBSQf//A3EQICADIAMoAqQBKAI0IAMoAqABEIIBQf//A3EgAygCkAFBgAYQggFB//8DcWo2AogBIAMoAkwgAygCiAFB//8DcRAgIAMoAqABQYACcUUEQCADKAJMIAMoAqQBKAI4EFJB//8DcRAgIAMoAkwgAygCpAEoAjxB//8DcRAgIAMoAkwgAygCpAEvAUAQICADKAJMIAMoAqQBKAJEECECQCADKAKkASkDSEL/////D1QEQCADKAJMIAMoAqQBKQNIpxAhDAELIAMoAkxBfxAhCwsCfyMAQRBrIgAgAygCTDYCDCAAKAIMLQAAQQFxRQsEQCADKAKoAUEIakEUQQAQFSADKAJMEBcgAygCkAEQJCADQX82AqwBDAELIAMoAqgBIANB0ABqAn4jAEEQayIAIAMoAkw2AgwCfiAAKAIMLQAAQQFxBEAgACgCDCkDEAwBC0IACwsQNkEASARAIAMoAkwQFyADKAKQARAkIANBfzYCrAEMAQsgAygCTBAXIAMoAqQBKAIwBEAgAygCqAEgAygCpAEoAjAQhgFBAEgEQCADKAKQARAkIANBfzYCrAEMAgsLIAMoApABBEAgAygCqAEgAygCkAFBgAYQgQFBAEgEQCADKAKQARAkIANBfzYCrAEMAgsLIAMoApABECQgAygCpAEoAjQEQCADKAKoASADKAKkASgCNCADKAKgARCBAUEASARAIANBfzYC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IAMoAoABKAIAIAMpA3CnQQR0aigCACADEPEBBEAgAygCfEEVQQAQFSADEFwgA0J/NwOIAQwDBSADKAKAASgCACADKQNwp0EEdGooAgAoAjQgAygCNBCFASEAIAMoAoABKAIAIAMpA3CnQQR0aigCACAANgI0IAMoAoABKAIAIAMpA3CnQQR0aigCAEEBOgAEIANBADYCNCADEFwgAyADKQNwQgF8NwNwDAILAAsLIAMCfiADKQNgIAMpA2h9Qv///////////wBUBEAgAykDYCADKQNofQwBC0L///////////8ACzcDiAELIAMpA4gBIQQgA0GQAWokACAEC6YBAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgAygCEBD6ASIANgIMAkAgAEUEQCADQQA2AhwMAQsgAygCDCADKAIYNgIAIAMoAgwgAygCFDYCBCADKAIUQRBxBEAgAygCDCIAIAAoAhRBAnI2AhQgAygCDCIAIAAoAhhBAnI2AhgLIAMgAygCDDYCHAsgAygCHCEAIANBIGokACAAC9UBAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE3AxAgBCACNgIMIAQgAzYCCAJAAkAgBCkDEEL///////////8AVwRAIAQpAxBCgICAgICAgICAf1kNAQsgBCgCCEEEQT0QFSAEQX82AhwMAQsCfyAEKQMQIQEgBCgCDCEAIAQoAhgiAigCTEF/TARAIAIgASAAEJYBDAELIAIgASAAEJYBC0EASARAIAQoAghBBEG0nAEoAgAQFSAEQX82AhwMAQsgBEEANgIcCyAEKAIcIQAgBEEgaiQAIAALJwACf0EAQQAgABAFIgAgAEEbRhsiAEUNABpBtJwBIAA2AgBBAAsaC14BAX8jAEEQayIDJAAgAyABQcCAgAJxBH8gAyACQQRqNgIMIAIoAgAFQQALNgIAIAAgAUGAgAJyIAMQESIAQYFgTwRAQbScAUEAIABrNgIAQX8hAAsgA0EQaiQAIAALVQEBfyMAQRBrIgEkACABIAA2AgwCQAJAIAEoAgwoAiRBAUYNACABKAIMKAIkQQJGDQAMAQsgASgCDEEAQgBBChAiGiABKAIMQQA2AiQLIAFBEGokAAszAQF/An8gABAGIgFBYUYEQCAAEBIhAQsgAUGBYE8LBH9BtJwBQQAgAWs2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IEUNACABKAIIKAIkDQELIAFBATYCDAwBCyABIAEoAggoAhw2AgQCQAJAIAEoAgRFDQAgASgCBCgCACABKAIIRw0AIAEoAgQoAgRBKkYNASABKAIEKAIEQTlGDQEgASgCBCgCBEHFAEYNASABKAIEKAIEQckARg0BIAEoAgQoAgRB2wBGDQEgASgCBCgCBEHnAEYNASABKAIEKAIEQfEARg0BIAEoAgQoAgRBmgVGDQELIAFBATYCDAwBCyABQQA2AgwLIAEoAgwL0gQBAX8jAEEgayIDIAA2AhwgAyABNgIYIAMgAjYCFCADIAMoAhxB3BZqIAMoAhRBAnRqKAIANgIQIAMgAygCFEEBdDYCDANAAkAgAygCDCADKAIcKALQKEoNAAJAIAMoAgwgAygCHCgC0ChODQAgAygCGCADKAIcIAMoAgxBAnRqQeAWaigCAEECdGovAQAgAygCGCADKAIcQdwWaiADKAIMQQJ0aigCAEECdGovAQBOBEAgAygCGCADKAIcIAMoAgxBAnRqQeAWaigCAEECdGovAQAgAygCGCADKAIcQdwWaiADKAIMQQJ0aigCAEECdGovAQBHDQEgAygCHCADKAIMQQJ0akHgFmooAgAgAygCHEHYKGpqLQAAIAMoAhxB3BZqIAMoAgxBAnRqKAIAIAMoAhxB2Chqai0AAEoNAQsgAyADKAIMQQFqNgIMCyADKAIYIAMoAhBBAnRqLwEAIAMoAhggAygCHEHcFmogAygCDEECdGooAgBBAnRqLwEASA0AAkAgAygCGCADKAIQQQJ0ai8BACADKAIYIAMoAhxB3BZqIAMoAgxBAnRqKAIAQQJ0ai8BAEcNACADKAIQIAMoAhxB2Chqai0AACADKAIcQdwWaiADKAIMQQJ0aigCACADKAIcQdgoamotAABKDQAMAQsgAygCHEHcFmogAygCFEECdGogAygCHEHcFmogAygCDEECdGooAgA2AgAgAyADKAIMNgIUIAMgAygCDEEBdDYCDAwBCwsgAygCHEHcFmogAygCFEECdGogAygCEDYCAAvnCAEDfyMAQTBrIgIkACACIAA2AiwgAiABNgIoIAIgAigCKCgCADYCJCACIAIoAigoAggoAgA2AiAgAiACKAIoKAIIKAIMNgIcIAJBfzYCECACKAIsQQA2AtAoIAIoAixBvQQ2AtQoIAJBADYCGANAIAIoAhggAigCHE5FBEACQCACKAIkIAIoAhhBAnRqLwEABEAgAiACKAIYIgE2AhAgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQAgBCAANgLQKCAAQQJ0IANqIAE2AgAgAigCGCACKAIsQdgoampBADoAAAwBCyACKAIkIAIoAhhBAnRqQQA7AQILIAIgAigCGEEBajYCGAwBCwsDQCACKAIsKALQKEECSARAAkAgAigCEEECSARAIAIgAigCEEEBaiIANgIQDAELQQAhAAsgAigCLEHcFmohAyACKAIsIgQoAtAoQQFqIQEgBCABNgLQKCABQQJ0IANqIAA2AgAgAiAANgIMIAIoAiQgAigCDEECdGpBATsBACACKAIMIAIoAixB2ChqakEAOgAAIAIoAiwiACAAKAKoLUF/ajYCqC0gAigCIARAIAIoAiwiACAAKAKsLSACKAIgIAIoAgxBAnRqLwECazYCrC0LDAELCyACKAIoIAIoAhA2AgQgAiACKAIsKALQKEECbTYCGANAIAIoAhhBAUhFBEAgAigCLCACKAIkIAIoAhgQdSACIAIoAhhBf2o2AhgMAQsLIAIgAigCHDYCDANAIAIgAigCLCgC4BY2AhggAigCLEHcFmohASACKAIsIgMoAtAoIQAgAyAAQX9qNgLQKCACKAIsIABBAnQgAWooAgA2AuAWIAIoAiwgAigCJEEBEHUgAiACKAIsKALgFjYCFCACKAIYIQEgAigCLEHcFmohAyACKAIsIgQoAtQoQX9qIQAgBCAANgLUKCAAQQJ0IANqIAE2AgAgAigCFCEBIAIoAixB3BZqIQMgAigCLCIEKALUKEF/aiEAIAQgADYC1CggAEECdCADaiABNgIAIAIoAiQgAigCDEECdGogAigCJCACKAIYQQJ0ai8BACACKAIkIAIoAhRBAnRqLwEAajsBACACKAIMIAIoAixB2ChqagJ/IAIoAhggAigCLEHYKGpqLQAAIAIoAhQgAigCLEHYKGpqLQAATgRAIAIoAhggAigCLEHYKGpqLQAADAELIAIoAhQgAigCLEHYKGpqLQAAC0EBajoAACACKAIkIAIoAhRBAnRqIAIoAgwiADsBAiACKAIkIAIoAhhBAnRqIAA7AQIgAiACKAIMIgBBAWo2AgwgAigCLCAANgLgFiACKAIs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AykDKCEBIANBMGokACABC3cBAX8jAEEQayICIAA2AgggAiABNgIEAkACQAJAIAIoAggpAyhC/////w9aDQAgAigCCCkDIEL/////D1oNACACKAIEQYAEcUUNASACKAIIKQNIQv////8PVA0BCyACQQE6AA8MAQsgAkEAOgAPCyACLQAPQQFxC9kCAQF/IwBBIGsiAyQAIAMgADYCGCADIAE2AhQgAyACNgIQIAMgA0EMakIEECo2AggCQCADKAIIRQRAIANBfzYCHAwBCwNAIAMoAhQEQCADKAIUKAIEIAMoAhBxQYAGcQRAIAMoAghCABAtGiADKAIIIAMoAhQvAQgQICADKAIIIAMoAhQvAQoQIAJ/IwBBEGsiACADKAIINgIMIAAoAgwtAABBAXFFCwRAIAMoAhhBCGpBFEEAEBUgAygCCBAXIANBfzYCHAwECyADKAIYIANBDGpCBBA2QQBIBEAgAygCCBAXIANBfzYCHAwECyADKAIULwEKQQBKBEAgAygCGCADKAIUKAIMIAMoAhQvAQqtEDZBAEgEQCADKAIIEBcgA0F/NgIcDAULCwsgAyADKAIUKAIANgIUDAELCyADKAIIEBcgA0EANgIcCyADKAIcIQAgA0EgaiQAIAALaAEBfyMAQRBrIgIgADYCDCACIAE2AgggAkEAOwEGA0AgAigCDARAIAIoAgwoAgQgAigCCHFBgAZxBEAgAiACKAIMLwEKIAIvAQZBBGpqOwEGCyACIAIoAgwoAgA2AgwMAQsLIAIvAQYL8AEBAX8jAEEQayIBJAAgASAANgIMIAEgASgCDDYCCCABQQA2AgQDQCABKAIMBEACQAJAIAEoAgwvAQhB9cYBRg0AIAEoAgwvAQhB9eABRg0AIAEoAgwvAQhBgbICRg0AIAEoAgwvAQhBAUcNAQsgASABKAIMKAIANgIAIAEoAgggASgCDEYEQCABIAEoAgA2AggLIAEoAgxBADYCACABKAIMECQgASgCBARAIAEoAgQgASgCADYCAAsgASABKAIANgIMDAILIAEgASgCDDYCBCABIAEoAgwoAgA2AgwMAQsLIAEoAgghACABQRBqJAAgAAuzBAEBfyMAQUBqIgUkACAFIAA2AjggBSABOwE2IAUgAjYCMCAFIAM2AiwgBSAENgIoIAUgBSgCOCAFLwE2rRAqIgA2AiQC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ACgCDCgCBDYCAAsLIAIoAgwEQCACKAIMIAIoAgQ2AgALIAJBEGokAAuVAQEBfyMAQRBrIgEkACABIAA2AggCQAJ/IwBBEGsiACABKAIINgIMIAAoAgwpAxhCgIAQg1ALBEAgASgCCCgCAARAIAEgASgCCCgCABCUAUEBcToADwwCCyABQQE6AA8MAQsgASABKAIIQQBCAEESECI+AgQgASABKAIEQQBHOgAPCyABLQAPQQFxIQAgAUEQaiQAIAALfwEBfyMAQSBrIgMkACADIAA2AhggAyABNwMQIANBADYCDCADIAI2AggCQCADKQMQQv///////////wBWBEAgAygCCEEEQT0QFSADQX82AhwMAQsgAyADKAIYIAMpAxAgAygCDCADKAIIEGc2AhwLIAMoAhwhACADQSBqJAAgAAt9ACACQQFGBEAgASAAKAIIIAAoAgRrrH0hAQsCQCAAKAIUIAAoAhxLBEAgAEEAQQAgACgCJBEBABogACgCFEUNAQsgAEEANgIcIABCADcDECAAIAEgAiAAKAIoERAAQgBTDQAgAEIANwIEIAAgACgCAEFvcTYCAEEADwtBfwviAgECfyMAQSBrIgMkAAJ/AkACQEH0lwEgASwAABCYAUUEQEG0nAFBHDYCAAwBC0GYCRAZIgINAQtBAAwBCyACQQBBkAEQMyABQSsQmAFFBEAgAkEIQQQgAS0AAEHyAEYbNgIACwJAIAEtAABB4QBHBEAgAigCACEBDAELIABBA0EAEAQiAUGACHFFBEAgAyABQYAIcjYCECAAQQQgA0EQahAEGgsgAiACKAIAQYABciIBNgIACyACQf8BOgBLIAJBgAg2AjAgAiAANgI8IAIgAkGYAWo2AiwCQCABQQhxDQAgAyADQRhqNgIAIABBk6gBIAMQDg0AIAJBCjoASwsgAkEaNgIoIAJBGzYCJCACQRw2AiAgAkEdNgIMQdygASgCAEUEQCACQX82AkwLIAJBsKEBKAIANgI4QbChASgCACIABEAgACACNgI0C0GwoQEgAjYCACACCyEAIANBIGokACAACxoAIAAgARCFAiIAQQAgAC0AACABQf8BcUYbCxgAIAAoAkxBf0wEQCAAEJoBDwsgABCaAQtgAgJ/AX4gACgCKCEBQQEhAiAAQgAgAC0AAEGAAXEEf0ECQQEgACgCFCAAKAIc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KAIYKQMwWgRAIAIoAhhBCGpBEkEAEBUgAkF/NgIcDAELIAIoAhgoAhhBAnEEQCACKAIYQQhqQRlBABAVIAJBfzYCHAwBCyACIAIoAhggAikDEEEAIAIoAhhBCGoQTyIANgIMIABFBEAgAkF/NgIcDAELIAIoAhgoAlAgAigCDCACKAIYQQhqEFlBAXFFBEAgAkF/NgIcDAELIAIoAhggAikDEBCgAgRAIAJBfzYCHAwBCyACKAIYKAJAIAIpAxCnQQR0akEBOgAMIAJBADYCHAsgAigCHCEAIAJBIGokACAAC5gCAAJAAkAgAUEUSw0AAkACQAJAAkACQAJAAkACQCABQXdqDgoAAQIJAwQFBgkHCAsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgACACQRYRBAALDwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC0oBA38gACgCACwAAEFQakEKSQRAA0AgACgCACIBLAAAIQMgACABQQFqNgIAIAMgAkEKbGpBUGohAiABLAABQVBqQQpJDQALCyACC38CAX8BfiAAvSIDQjSIp0H/D3EiAkH/D0cEfCACRQRAIAEgAEQAAAAAAAAAAGEEf0EABSAARAAAAAAAAPBDoiABEKQBIQAgASgCAEFAags2AgAgAA8LIAEgAkGCeGo2AgAgA0L/////////h4B/g0KAgICAgICA8D+EvwUgAAsLEgAgAEUEQEEADwsgACABELQCC+UBAQJ/IAJBAEchAwJAAkACQCACRQ0AIABBA3FFDQAgAUH/AXEhBANAIAAtAAAgBEYNAiAAQQFqIQAgAkF/aiICQQBHIQMgAkUNASAAQQNxDQALCyADRQ0BCwJAIAAtAAAgAUH/AXFGDQAgAkEESQ0AIAFB/wFxQYGChAhsIQMDQCAAKAIAIANzIgRBf3MgBEH//ft3anFBgIGChHhxDQEgAEEEaiEAIAJB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HAvkAQEBfyMAQSBrIgMkACADIAA6ABsgAyABNgIUIAMgAjYCECADQcgAEBkiADYCDAJAIABFBEAgAygCEEEBQbScASgCABAVIANBADYCHAwBCyADKAIMIAMoAhA2AgAgAygCDCADLQAbQQFxOgAEIAMoAgwgAygCFDYCCAJAIAMoAgwoAghBAU4EQCADKAIMKAIIQQlMDQELIAMoAgxBCTYCCAsgAygCDEEAOgAMIAMoAgxBADYCMCADKAIMQQA2AjQgAygCDEEANgI4IAMgAygCDDYCHAsgAygCHCEAIANBIGokACAAC+MIAQF/IwBBQGoiAiAANgI4IAIgATYCNCACIAIoAjgoAnw2AjAgAiACKAI4KAI4IAIoAjgoAmxqNgIsIAIgAigCOCgCeDYCICACIAIoAjgoApABNgIcIAICfyACKAI4KAJsIAIoAjgoAixBhgJrSwRAIAIoAjgoAmwgAigCOCgCLEGGAmtrDAELQQALNgIYIAIgAigCOCgCQDYCFCACIAIoAjgoAjQ2AhAgAiACKAI4KAI4IAIoAjgoAmxqQYICajYCDCACIAIoAiwgAigCIEEBa2otAAA6AAsgAiACKAIsIAIoAiBqLQAAOgAKIAIoAjgoAnggAigCOCgCjAFPBEAgAiACKAIwQQJ2NgIwCyACKAIcIAIoAjgoAnRLBEAgAiACKAI4KAJ0NgIcCwNAAkAgAiACKAI4KAI4IAIoAjRqNgIoAkAgAigCKCACKAIgai0AACACLQAKRw0AIAIoAiggAigCIEEBa2otAAAgAi0AC0cNACACKAIoLQAAIAIoAiwtAABHDQAgAiACKAIoIgBBAWo2AiggAC0AASACKAIsLQABRwRADAELIAIgAigCLEECajYCLCACIAIoAihBAWo2AigDQCACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AigCf0EAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACIAIoAiwiAEEBajYCLCAALQABIQEgAiACKAIoIgBBAWo2AihBACAALQABIAFHDQAaIAIgAigCLCIAQQFqNgIsIAAtAAEhASACIAIoAigiAEEBajYCKEEAIAAtAAEgAUcNABogAiACKAIsIgBBAWo2AiwgAC0AASEBIAIgAigCKCIAQQFqNgIoQQAgAC0AASABRw0AGiACKAIsIAIoAgxJC0EBcQ0ACyACQYICIAIoAgwgAigCLGtrNgIkIAIgAigCDEH+fWo2AiwgAigCJCACKAIgSgRAIAIoAjggAigCNDYCcCACIAIoAiQ2AiAgAigCJCACKAIcTg0CIAIgAigCLCACKAIgQQFrai0AADoACyACIAIoAiwgAigCIGotAAA6AAoLCyACIAIoAhQgAigCNCACKAIQcUEBdGovAQAiATYCNEEAIQAgASACKAIYSwR/IAIgAigCMEF/aiIANgIwIABBAEcFQQALQQFxDQELCwJAIAIoAiAgAigCOCgCdE0EQCACIAIoAiA2AjwMAQsgAiACKAI4KAJ0NgI8CyACKAI8C5gQAQF/IwBBMGsiAiQAIAIgADYCKCACIAE2AiQgAgJ/IAIoAigoAgxBBWsgAigCKCgCLEsEQCACKAIoKAIsDAELIAIoAigoAgxBBWsLNgIgIAJBADYCECACIAIoAigoAgAoAgQ2AgwDQAJAIAJB//8DNgIcIAIgAigCKCgCvC1BKmpBA3U2AhQgAigCKCgCACgCECACKAIUSQ0AIAIgAigCKCgCACgCECACKAIUazYCFCACIAIoAigoAmwgAigCKCgCXGs2AhggAigCHCACKAIYIAIoAigoAgAoAgRqSwRAIAIgAigCGCACKAIoKAIAKAIEajYCHAsgAigCHCACKAIUSwRAIAIgAigCFDYCHAsCQCACKAIcIAIoAiBPDQACQCACKAIcRQRAIAIoAiRBBEcNAQsgAigCJEUNACACKAIcIAIoAhggAigCKCgCACgCBGpGDQELDAELQQAhACACIAIoAiRBBEYEfyACKAIcIAIoAhggAigCKCgCACgCBGpGBUEAC0EBcUVFNgIQIAIoAihBAEEAIAIoAhAQVyACKAIoKAIIIAIoAigoAhRBBGtqIAIoAhw6AAAgAigCKCgCCCACKAIoKAIUQQNraiACKAIcQQh2OgAAIAIoAigoAgggAigCKCgCFEECa2ogAigCHEF/czoAACACKAIoKAIIIAIoAigoAhRBAWtqIAIoAhxBf3NBCHY6AAAgAigCKCgCABAdIAIoAhgEQCACKAIYIAIoAhxLBEAgAiACKAIcNgIYCyACKAIoKAIAKAIMIAIoAigoAjggAigCKCgCXGogAigCGBAaGiACKAIoKAIAIgAgAigCGCAAKAIMajYCDCACKAIoKAIAIgAgACgCECACKAIYazYCECACKAIoKAIAIgAgAigCGCAAKAIUajYCFCACKAIoIgAgAigCGCAAKAJcajYCXCACIAIoAhwgAigCGGs2AhwLIAIoAhwEQCACKAIoKAIAIAIoAigoAgAoAgwgAigCHBBzGiACKAIoKAIAIgAgAigCHCAAKAIMajYCDCACKAIoKAIAIgAgACgCECACKAIcazYCECACKAIoKAIAIgAgAigCHCAAKAIUajYCFAsgAigCEEUNAQsLIAIgAigCDCACKAIoKAIAKAIEazYCDCACKAIMBEACQCACKAIMIAIoAigoAixPBEAgAigCKEECNgKwLSACKAIoKAI4IAIoAigoAgAoAgAgAigCKCgCLGsgAigCKCgCLBAaGiACKAIoIAIoAigoAiw2AmwMAQsgAigCKCgCPCACKAIoKAJsayACKAIMTQRAIAIoAigiACAAKAJsIAIoAigoAixrNgJsIAIoAigoAjggAigCKCgCOCACKAIoKAIsaiACKAIoKAJsEBoaIAIoAigoArAtQQJJBEAgAigCKCIAIAAoArAtQQFqNgKwLQsLIAIoAigoAjggAigCKCgCbGogAigCKCgCACgCACACKAIMayACKAIMEBoaIAIoAigiACACKAIMIAAoAmxqNgJsCyACKAIoIAIoAigoAmw2AlwgAigCKCIBAn8gAigCDCACKAIoKAIsIAIoAigoArQta0sEQCACKAIoKAIsIAIoAigoArQtawwBCyACKAIMCyABKAK0LWo2ArQtCyACKAIoKALALSACKAIoKAJsSQRAIAIoAiggAigCKCgCbDYCwC0LAkAgAigCEARAIAJBAzYCLAwBCwJAIAIoAiRFDQAgAigCJEEERg0AIAIoAigoAgAoAgQNACACKAIoKAJsIAIoAigoAlxHDQAgAkEBNgIsDAELIAIgAigCKCgCPCACKAIoKAJsa0EBazYCFAJAIAIoAigoAgAoAgQgAigCFE0NACACKAIoKAJcIAIoAigoAixIDQAgAigCKCIAIAAoAlwgAigCKCgCLGs2AlwgAigCKCIAIAAoAmwgAigCKCgCLGs2AmwgAigCKCgCOCACKAIoKAI4IAIoAigoAixqIAIoAigoAmwQGhogAigCKCgCsC1BAkkEQCACKAIoIgAgACgCsC1BAWo2ArAtCyACIAIoAigoAiwgAigCFGo2AhQLIAIoAhQgAigCKCgCACgCBEsEQCACIAIoAigoAgAoAgQ2AhQLIAIoAhQEQCACKAIoKAIAIAIoAigoAjggAigCKCgCbGogAigCFBBzGiACKAIoIgAgAigCFCAAKAJsajYCbAsgAigCKCgCwC0gAigCKCgCbEkEQCACKAIoIAIoAigoAmw2AsAtCyACIAIoAigoArwtQSpqQQN1NgIUIAICf0H//wMgAigCKCgCDCACKAIUa0H//wNLDQAaIAIoAigoAgwgAigCFGsLNgIUIAICfyACKAIUIAIoAigoAixLBEAgAigCKCgCLAwBCyACKAIUCzYCICACIAIoAigoAmwgAigCKCgCXGs2AhgCQCACKAIYIAIoAiBJBEAgAigCGEUEQCACKAIkQQRHDQILIAIoAiRFDQEgAigCKCgCACgCBA0BIAIoAhggAigCFEsNAQsgAgJ/IAIoAhggAigCFEsEQCACKAIUDAELIAIoAhgLNgIcIAICf0EAIAIoAiRBBEcNABpBACACKAIoKAIAKAIEDQAaIAIoAhwgAigCGEYLQQFxRUU2AhAgAigCKCACKAIoKAI4IAIoAigoAlxqIAIoAhwgAigCEBBXIAIoAigiACACKAIcIAAoAlxqNgJcIAIoAigoAgAQHQsgAkECQQAgAigCEBs2AiwLIAIoAiwhACACQTBqJAAgAAuyAgEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIEHQEQCABQX42AgwMAQsgASABKAIIKAIcKAIENgIEIAEoAggoAhwoAggEQCABKAIIKAIoIAEoAggoAhwoAgggASgCCCgCJBEEAAsgASgCCCgCHCgCRARAIAEoAggoAiggASgCCCgCHCgCRCABKAIIKAIkEQQACyABKAIIKAIcKAJABEAgASgCCCgCKCAB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A0hCGnxBABAoQQBIBEAgAigCKEEIaiACKAIoKAIAEBggAkF/NgIsDAELIAIgAigCKCgCAEIEIAJBGGogAigCKEEIahBBIgA2AhQgAEUEQCACQX82AiwMAQsgAiACKAIUEB47ARIgAiACKAIUEB47ARAgAigCFBBIQQFxRQRAIAIoAhQQFyACKAIoQQhqQRRBABAVIAJBfzYCLAwBCyACKAIUEBcgAi8BEEEASgRAIAIoAigoAgAgAi8BEq1BARAoQQBIBEAgAigCKEEIakEEQbScASgCABAVIAJBfzYCLAwCCyACQQAgAigCKCgCACACLwEQQQAgAigCKEEIahBgNgIIIAIoAghFBEAgAkF/NgIsDAILIAIoAgggAi8BEEGAAiACQQxqIAIoAihBCGoQhAFBAXFFBEAgAigCCBAWIAJBfzYCLAwCCyACKAIIEBYgAigCDARAIAIgAigCDBCDATYCDCACKAIcKAIAKAI0IAIoAgwQhQEhACACKAIcKAIAIAA2AjQLCyACKAIcKAIAQQE6AAQCQCACKAIcKAIERQ0AIAIoAhwoAgQtAARBAXENACACKAIcKAIEIAIoAhwoAgAoAjQ2AjQgAigCHCgCBEEBOgAECyACQQA2AiwLIAIoAiwhACACQTBqJAAgAAsHACAAKAIAC4wBAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQgAkEANgIQAkAgAigCFEUEQCACQQA2AhwMAQsgAiACKAIUEBk2AgwgAigCDEUEQCACKAIQQQ5BABAVIAJBADYCHAwBCyACKAIMIAIoAhggAigCFBAaGiACIAIoAgw2AhwLIAIoAhwhACACQSBqJAAgAAsYAEGonAFCADcCAEGwnAFBADYCAEGonAELiAEBAX8jAEEgayIDJAAgAyAANgIUIAMgATYCECADIAI3AwgCQAJAIAMoAhQoAiRBAUYEQCADKQMIQv///////////wBYDQELIAMoAhRBDGpBEkEAEBUgA0J/NwMYDAELIAMgAygCFCADKAIQIAMpAwhBCxAiNwMYCyADKQMYIQIgA0EgaiQAIAILcwEBfyMAQSBrIgEkACABIAA2AhggAUIINwMQIAEgASgCGCkDECABKQMQfDcDCAJAIAEpAwggASgCGCkDEFQEQCABKAIYQQA6AAAgAUF/NgIcDAELIAEgASgCGCABKQMIEC02AhwLIAEoAhwaIAFBIGokAAsIAEEBQQwQewuWAQEBfyMAQSBrIgIgADYCGCACIAE3AxACQAJAAkAgAigCGC0AAEEBcUUNACACKAIYKQMQIAIpAxB8IAIpAxBUDQAgAigCGCkDECACKQMQfCACKAIYKQMIWA0BCyACKAIYQQA6AAAgAkEANgIcDAELIAIgAigCGCgCBCACKAIYKQMQp2o2AgwgAiACKAIMNgIcCyACKAIcCwcAIAAoAigLuQIBAX8jAEEQayICIAA2AgggAiABNgIEAkAgAigCCEGAAUkEQCACKAIEIAIoAgg6AAAgAkEBNgIMDAELIAIoAghBgBBJBEAgAigCBCACKAIIQQZ2QR9xQcABcjoAACACKAIEIAIoAghBP3FBgAFyOgABIAJBAjYCDAwBCyACKAIIQYCABEkEQCACKAIEIAIoAghBDHZBD3FB4AFyOgAAIAIoAgQgAigCCEEGdkE/cUGAAXI6AAEgAigCBCACKAIIQT9xQYABcjoAAiACQQM2AgwMAQsgAigCBCACKAIIQRJ2QQdxQfABcjoAACACKAIEIAIoAghBDHZBP3FBgAFyOgABIAIoAgQgAigCCEEGdkE/cUGAAXI6AAIgAigCBCACKAIIQT9xQYABcjoAAyACQQQ2AgwLIAIoAgwLXwEBfyMAQRBrIgEgADYCCAJAIAEoAghBgAFJBEAgAUEBNgIMDAELIAEoAghBgBBJBEAgAUECNgIMDAELIAEoAghBgIAESQRAIAFBAzYCDAwBCyABQQQ2AgwLIAEoAgwL/gIBAX8jAEEwayIEJAAgBCAANgIoIAQgATYCJCAEIAI2AiAgBCADNgIcIAQgBCgCKDYCGAJAIAQoAiRFBEAgBCgCIARAIAQoAiBBADYCAAsgBEEANgIsDAELIARBATYCECAEQQA2AgwDQCAEKAIMIAQoAiRPRQRAIAQgBCgCGCAEKAIMai0AAEEBdEGwzwBqLwEAENEBIAQoAhBqNgIQIAQgBCgCDEEBajYCDAwBCwsgBCAEKAIQEBkiADYCFCAARQRAIAQoAhxBDkEAEBUgBEEANgIsDAELIARBADYCCCAEQQA2AgwDQCAEKAIMIAQoAiRPRQRAIAQgBCgCGCAEKAIMai0AAEEBdEGwzwBqLwEAIAQoAhQgBCgCCGoQ0AEgBCgCCGo2AgggBCAEKAIMQQFqNgIMDAELCyAEKAIUIAQoAhBBAWtqQQA6AAAgBCgCIARAIAQoAiAgBCgCEEEBazYCAAsgBCAEKAIUNgIsCyAEKAIsIQAgBEEwaiQAIAALBwAgACgCGAvyCwEBfyMAQSBrIgMgADYCHCADIAE2AhggAyACNgIUIAMgAygCHEEIdkGA/gNxIAMoAhxBGHZqIAMoAhxBgP4DcUEIdGogAygCHEH/AXFBGHRqNgIQIAMgAygCEEF/czYCEANAQQAhACADKAIUBH8gAygCGEEDcUEARwVBAAtBAXEEQCADKAIQQRh2IQAgAyADKAIYIgFBAWo2AhggAyABLQAAIABzQQJ0QbAvaigCACADKAIQQQh0czYCECADIAMoAhRBf2o2AhQMAQsLIAMgAygCGDYCDANAIAMoAhRBIElFBEAgAyADKAIMIgBBBGo2AgwgAyAAKAIAIAMoAhBzNgIQIAMgAygCEEEYdkECdEGwxwBqKAIAIAMoAhBBEHZB/wFxQQJ0QbA/aigCACADKAIQQf8BcUECdEGwL2ooAgAgAygCEEEIdkH/AXFBAnRBsDdqKAIAc3NzNgIQIAMgAygCDCIAQQRqNgIMIAMgACgCACADKAIQczYCECADIAMoAhBBGHZBAnRBsMcAaigCACADKAIQQRB2Qf8BcUECdEGwP2ooAgAgAygCEEH/AXFBAnRBsC9qKAIAIAMoAhBBCHZB/wFxQQJ0QbA3aigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbDHAGooAgAgAygCEEEQdkH/AXFBAnRBsD9qKAIAIAMoAhBB/wFxQQJ0QbAvaigCACADKAIQQQh2Qf8BcUECdEGwN2ooAgBzc3M2AhAgAyADKAIMIgBBBGo2AgwgAyAAKAIAIAMoAhBzNgIQIAMgAygCEEEYdkECdEGwxwBqKAIAIAMoAhBBEHZB/wFxQQJ0QbA/aigCACADKAIQQf8BcUECdEGwL2ooAgAgAygCEEEIdkH/AXFBAnRBsDdqKAIAc3NzNgIQIAMgAygCDCIAQQRqNgIMIAMgACgCACADKAIQczYCECADIAMoAhBBGHZBAnRBsMcAaigCACADKAIQQRB2Qf8BcUECdEGwP2ooAgAgAygCEEH/AXFBAnRBsC9qKAIAIAMoAhBBCHZB/wFxQQJ0QbA3aigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbDHAGooAgAgAygCEEEQdkH/AXFBAnRBsD9qKAIAIAMoAhBB/wFxQQJ0QbAvaigCACADKAIQQQh2Qf8BcUECdEGwN2ooAgBzc3M2AhAgAyADKAIMIgBBBGo2AgwgAyAAKAIAIAMoAhBzNgIQIAMgAygCEEEYdkECdEGwxwBqKAIAIAMoAhBBEHZB/wFxQQJ0QbA/aigCACADKAIQQf8BcUECdEGwL2ooAgAgAygCEEEIdkH/AXFBAnRBsDdqKAIAc3NzNgIQIAMgAygCDCIAQQRqNgIMIAMgACgCACADKAIQczYCECADIAMoAhBBGHZBAnRBsMcAaigCACADKAIQQRB2Qf8BcUECdEGwP2ooAgAgAygCEEH/AXFBAnRBsC9qKAIAIAMoAhBBCHZB/wFxQQJ0QbA3aigCAHNzczYCECADIAMoAhRBIGs2AhQMAQsLA0AgAygCFEEESUUEQCADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbDHAGooAgAgAygCEEEQdkH/AXFBAnRBsD9qKAIAIAMoAhBB/wFxQQJ0QbAvaigCACADKAIQQQh2Qf8BcUECdEGwN2ooAgBzc3M2AhAgAyADKAIUQQRrNgIUDAELCyADIAMoAgw2AhggAygCFARAA0AgAygCEEEYdiEAIAMgAygCGCIBQQFqNgIYIAMgAS0AACAAc0ECdEGwL2ooAgAgAygCEEEIdHM2AhAgAyADKAIUQX9qIgA2AhQgAA0ACwsgAyADKAIQQX9zNgIQIAMoAhBBCHZBgP4DcSADKAIQQRh2aiADKAIQQYD+A3FBCHRqIAMoAhBB/wFxQRh0aguTCwEBfyMAQSBrIgMgADYCHCADIAE2AhggAyACNgIUIAMgAygCHDYCECADIAMoAhBBf3M2AhADQEEAIQAgAygCFAR/IAMoAhhBA3FBAEcFQQALQQFxBEAgAygCECEAIAMgAygCGCIBQQFqNgIYIAMgAS0AACAAc0H/AXFBAnRBsA9qKAIAIAMoAhBBCHZzNgIQIAMgAygCFEF/ajYCFAwBCwsgAyADKAIYNgIMA0AgAygCFEEgSUUEQCADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAhRBIGs2AhQMAQsLA0AgAygCFEEESUUEQCADIAMoAgwiAEEEajYCDCADIAAoAgAgAygCEHM2AhAgAyADKAIQQRh2QQJ0QbAPaigCACADKAIQQRB2Qf8BcUECdEGwF2ooAgAgAygCEEH/AXFBAnRBsCdqKAIAIAMoAhBBCHZB/wFxQQJ0QbAfaigCAHNzczYCECADIAMoAhRBBGs2AhQMAQsLIAMgAygCDDYCGCADKAIUBEADQCADKAIQIQAgAyADKAIYIgFBAWo2AhggAyABLQAAIABzQf8BcUECdEGwD2ooAgAgAygCEEEIdnM2AhAgAyADKAIUQX9qIgA2AhQgAA0ACwsgAyADKAIQQX9zNgIQIAMoAhALhgEBAX8jAEEgayIDJAAgAyAANgIYIAMgATYCFCADIAI2AhACQCADKAIURQRAIANBADYCHAwBCyADQQE2AgwgAy0ADARAIAMgAygCGCADKAIUIAMoAhAQ1QE2AhwMAQsgAyADKAIYIAMoAhQgAygCEBDUATYCHAsgAygCHCEAIANBIGokACAACwcAIAAoAhALIgEBfyMAQRBrIgEgADYCDCABKAIMIgAgACgCMEEBajYCMAsUACAAIAGtIAKtQiCGhCADIAQQegsTAQF+IAAQSiIBQiCIpxAAIAGnCxIAIAAgAa0gAq1CIIaEIAMQKAsfAQF+IAAgASACrSADrUIghoQQLyIEQiCIpxAAIASnCxUAIAAgAa0gAq1CIIaEIAMgBBC/AQsUACAAIAEgAq0gA61CIIaEIAQQeQsVACAAIAGtIAKtQiCGhCADIAQQ8AELFwEBfiAAIAEgAhBuIgNCIIinEAAgA6cLFgEBfiAAIAEQkQIiAkIgiKcQACACpwsTACAAIAGtIAKtQiCGhCADEMABCyABAX4gACABIAKtIAOtQiCGhBCSAiIEQiCIpxAAIASnCxMAIAAgAa0gAq1CIIaEIAMQkwILFQAgACABrSACrUIghoQgAyAEEJYCCxcAIAAgAa0gAq1CIIaEIAMgBCAFEJ8BCxcAIAAgAa0gAq1CIIaEIAMgBCAFEJ4BCxoBAX4gACABIAIgAxCaAiIEQiCIpxAAIASnCxgBAX4gACABIAIQnAIiA0IgiKcQACADpwsRACAAIAGtIAKtQiCGhBChAQsQACMAIABrQXBxIgAkACAACwYAIAAkAAsEACMAC8QBAQF/IwBBMGsiASQAIAEgADYCKCABQQA2AiQgAUIANwMYAkADQCABKQMYIAEoAigpAzBUBEAgASABKAIoIAEpAxhBACABQRdqIAFBEGoQngE2AgwgASgCDEF/RgRAIAFBfzYCLAwDBQJAIAEtABdBA0cNACABKAIQQRB2QYDgA3FBgMACRw0AIAEgASgCJEEBajYCJAsgASABKQMYQgF8NwMYDAILAAsLIAEgASgCJDYCLAsgASgCLCEAIAFBMGokACAAC4IBAgF/AX4jAEEgayIEJAAgBCAANgIYIAQgATYCFCAEIAI2AhAgBCADNgIMIAQgBCgCGCAEKAIUIAQoAhAQbiIFNwMAAkAgBUIAUwRAIARBfzYCHAwBCyAEIAQoAhggBCkDACAEKAIQIAQoAgwQejYCHAsgBCgCHCEAIARBIGokACAAC9IDAQF/IwBBIGsiBCQAIAQgADYCGCAEIAE3AxAgBCACNgIMIAQgAzYCCAJAAkAgBCkDECAEKAIYKQMwVARAIAQoAghBCU0NAQsgBCgCGEEIakESQQAQFSAEQX82AhwMAQsgBCgCGCgCGEECcQRAIAQoAhhBCGpBGUEAEBUgBEF/NgIcDAELIAQoAgwQwwJBAXFFBEAgBCgCGEEIakEQQQAQFSAEQX82AhwMAQsgBCAEKAIYKAJAIAQpAxCnQQR0ajYCBCAEAn9BfyAEKAIEKAIARQ0AGiAEKAIEKAIAKAIQCzYCAAJAIAQoAgwgBCgCAEYEQCAEKAIEKAIEBEAgBCgCBCgCBCIAIAAoAgBBfnE2AgAgBCgCBCgCBEEAOwFQIAQoAgQoAgQoAgBFBEAgBCgCBCgCBBA6IAQoAgRBADYCBAsLDAELIAQoAgQoAgRFBEAgBCgCBCgCABBGIQAgBCgCBCAANgIEIABFBEAgBCgCGEEIakEOQQAQFSAEQX82AhwMAwsLIAQoAgQoAgQgBCgCDDYCECAEKAIEKAIEIAQoAgg7AVAgBCgCBCgCBCIAIAAoAgBBAXI2AgALIARBADYCHAsgBCgCHCEAIARBIGokACAAC5ACAQF/IwBBEGsiAiQAIAIgADYCCCACIAE2AgQCQAJAAkAgAigCCC8BCiACKAIELwEKSA0AIAIoAggoAhAgAigCBCgCEEcNACACKAIIKAIUIAIoAgQoAhRHDQAgAigCCCgCMCACKAIEKAIwEIcBDQELIAJBfzYCDAwBCwJAAkAgAigCCCgCGCACKAIEKAIYRw0AIAIoAggpAyAgAigCBCkDIFINACACKAIIKQMoIAIoAgQpAyhRDQELAkACQCACKAIELwEMQQhxRQ0AIAIoAgQoAhgNACACKAIEKQMgQgBSDQAgAigCBCkDKFANAQsgAkF/NgIMDAILCyACQQA2AgwLIAIoAgwhACACQRBqJAAgAAv6AwEBfyMAQdAAayIEJAAgBCAANgJIIAQgATcDQCAEIAI2AjwgBCADNgI4AkAgBCgCSBAwQhZUBEAgBCgCOEEVQQAQFSAEQQA2AkwMAQsjAEEQayIAIAQoAkg2AgwgBAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALNwMIIAQoAkhCBBAfGiAEKAJIECsEQCAEKAI4QQFBABAVIARBADYCTAwBCyAEIAQoAkgQHkH//wNxrTcDKCAEIAQoAkgQHkH//wNxrTcDICAEKQMgIAQpAyhSBEAgBCgCOEETQQAQFSAEQQA2AkwMAQsgBCAEKAJIECutNwMYIAQgBCgCSBArrTcDECAEKQMQIAQpAxh8IAQpAxBUBEAgBCgCOEEEQRYQFSAEQQA2AkwMAQsgBCkDECAEKQMYfCAEKQNAIAQpAwh8VgRAIAQoAjhBFUEAEBUgBEEANgJMDAELAkAgBCgCPEEEcUUNACAEKQMQIAQpAxh8IAQpA0AgBCkDCHxRDQAgBCgCOEEVQQAQFSAEQQA2AkwMAQsgBCAEKQMgIAQoAjgQxgEiADYCNCAARQRAIARBADYCTAwBCyAEKAI0QQA6ACwgBCgCNCAEKQMYNwMYIAQoAjQgBCkDEDcDICAEIAQoAjQ2AkwLIAQoAkwhACAEQdAAaiQAIAAL1QoBAX8jAEGwAWsiBSQAIAUgADYCqAEgBSABNgKkASAFIAI3A5gBIAUgAzYClAEgBSAENgKQASMAQRBrIgAgBSgCpAE2AgwgBQJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALNwMYIAUoAqQBQgQQHxogBSAFKAKkARAeQf//A3E2AhAgBSAFKAKkARAeQf//A3E2AgggBSAFKAKkARAxNwM4AkAgBSkDOEL///////////8AVgRAIAUoApABQQRBFhAVIAVBADYCrAEMAQsgBSkDOEI4fCAFKQMYIAUpA5gBfFYEQCAFKAKQAUEVQQAQFSAFQQA2AqwBDAELAkACQCAFKQM4IAUpA5gBVA0AIAUpAzhCOHwgBSkDmAECfiMAQRBrIgAgBSgCpAE2AgwgACgCDCkDCAt8Vg0AIAUoAqQBIAUpAzggBSkDmAF9EC0aIAVBADoAFwwBCyAFKAKoASAFKQM4QQAQKEEASARAIAUoApABIAUoAqgBEBggBUEANgKsAQwCCyAFIAUoAqgBQjggBUFAayAFKAKQARBBIgA2AqQBIABFBEAgBUEANgKsAQwCCyAFQQE6ABcLIAUoAqQBQgQQHygAAEHQlpkwRwRAIAUoApABQRVBABAVIAUtABdBAXEEQCAFKAKkARAXCyAFQQA2AqwBDAELIAUgBSgCpAEQMTcDMAJAIAUoApQBQQRxRQ0AIAUpAzAgBSkDOHxCDHwgBSkDmAEgBSkDGHxRDQAgBSgCkAFBFUEAEBUgBS0AF0EBcQRAIAUoAqQBEBcLIAVBADYCrAEMAQsgBSgCpAFCBBAfGiAFIAUoAqQBECs2AgwgBSAFKAKkARArNgIEIAUoAhBB//8DRgRAIAUgBSgCDDYCEAsgBSgCCEH//wNGBEAgBSAFKAIENgIICwJAIAUoApQBQQRxRQ0AIAUoAgggBSgCBEYEQCAFKAIQIAUoAgxGDQELIAUoApABQRVBABAVIAUtABdBAXEEQCAFKAKkARAXCyAFQQA2AqwBDAELAkAgBSgCEEUEQCAFKAIIRQ0BCyAFKAKQAUEBQQAQFSAFLQAXQQFxBEAgBSgCpAEQFwsgBUEANgKsAQwBCyAFIAUoAqQBEDE3AyggBSAFKAKkARAxNwMgIAUpAyggBSkDIFIEQCAFKAKQAUEBQQAQFSAFLQAXQQFxBEAgBSgCpAEQFwsgBUEANgKsAQwBCyAFIAUoAqQBEDE3AzAgBSAFKAKkARAxNwOAAQJ/IwBBEGsiACAFKAKkATYCDCAAKAIMLQAAQQFxRQsEQCAFKAKQAUEUQQAQFSAFLQAXQQFxBEAgBSgCpAEQFwsgBUEANgKsAQwBCyAFLQAXQQFxBEAgBSgCpAEQFwsCQCAFKQOAAUL///////////8AWARAIAUpA4ABIAUpAzB8IAUpA4ABWg0BCyAFKAKQAUEEQRYQFSAFQQA2AqwBDAELIAUpA4ABIAUpAzB8IAUpA5gBIAUpAzh8VgRAIAUoApABQRVBABAVIAVBADYCrAEMAQsCQCAFKAKUAUEEcUUNACAFKQOAASAFKQMwfCAFKQOYASAFKQM4fFENACAFKAKQAUEVQQAQFSAFQQA2AqwBDAELIAUpAyggBSkDMEIugFYEQCAFKAKQAUEVQQAQFSAFQQA2AqwBDAELIAUgBSkDKCAFKAKQARDGASIANgKMASAARQRAIAVBADYCrAEMAQsgBSgCjAFBAToALCAFKAKMASAFKQMwNwMYIAUoAowBIAUpA4ABNwMgIAUgBSgCjAE2AqwBCyAFKAKsASEAIAVBsAFqJAAgAAviCwEBfyMAQfAAayIEJAAgBCAANgJoIAQgATYCZCAEIAI3A1ggBCADNgJUIwBBEGsiACAEKAJkNgIMIAQCfiAAKAIMLQAAQQFxBEAgACgCDCkDEAwBC0IACzcDMAJAIAQoAmQQMEIWVARAIAQoAlRBE0EAEBUgBEEANgJsDAELIAQoAmRCBBAfKAAAQdCWlTBHBEAgBCgCVEETQQAQFSAEQQA2AmwMAQsCQAJAIAQpAzBCFFQNACMAQRBrIgAgBCgCZDYCDCAAKAIMKAIEIAQpAzCnakFsaigAAEHQlpk4Rw0AIAQoAmQgBCkDMEIUfRAtGiAEIAQoAmgoAgAgBCgCZCAEKQNYIAQoAmgoAhQgBCgCVBDzATYCUAwBCyAEKAJkIAQpAzAQLRogBCAEKAJkIAQpA1ggBCgCaCgCFCAEKAJUEPIBNgJQCyAEKAJQRQRAIARBADYCbAwBCyAEKAJkIAQpAzBCFHwQLRogBCAEKAJkEB47AU4gBCgCUCkDICAEKAJQKQMYfCAEKQNYIAQpAzB8VgRAIAQoAlRBFUEAEBUgBCgCUBAlIARBADYCbAwBCwJAIAQvAU5FBEAgBCgCaCgCBEEEcUUNAQsgBCgCZCAEKQMwQhZ8EC0aIAQgBCgCZBAwNwMgAkAgBCkDICAELwFOrVoEQCAEKAJoKAIEQQRxRQ0BIAQpAyAgBC8BTq1RDQELIAQoAlRBFUEAEBUgBCgCUBAlIARBADYCbAwCCyAELwFOBEAgBCgCZCAELwFOrRAfIAQvAU5BACAEKAJUEFEhACAEKAJQIAA2AiggAEUEQCAEKAJQECUgBEEANgJsDAMLCwsCQCAEKAJQKQMgIAQpA1haBEAgBCgCZCAEKAJQKQMgIAQpA1h9EC0aIAQgBCgCZCAEKAJQKQMYEB8iADYCHCAARQRAIAQoAlRBFUEAEBUgBCgCUBAlIARBADYCbAwDCyAEIAQoAhwgBCgCUCkDGBAqIgA2AiwgAEUEQCAEKAJUQQ5BABAVIAQoAlAQJSAEQQA2AmwMAwsMAQsgBEEANgIsIAQoAmgoAgAgBCgCUCkDIEEAEChBAEgEQCAEKAJUIAQoAmgoAgAQGCAEKAJQECUgBEEANgJsDAILIAQoAmgoAgAQSiAEKAJQKQMgUgRAIAQoAlRBE0EAEBUgBCgCUBAlIARBADYCbAwCCwsgBCAEKAJQKQMYNwM4IARCADcDQANAAkAgBCkDOEIAWA0AIARBADoAGyAEKQNAIAQoAlApAwhRBEAgBCgCUC0ALEEBcQ0BIAQpAzhCLlQNASAEKAJQQoCABCAEKAJUEMUBQQFxRQRAIAQoAlAQJSAEKAIsEBcgBEEANgJsDAQLIARBAToAGwsQjgMhACAEKAJQKAIAIAQpA0CnQQR0aiAANgIAAkAgAARAIAQgBCgCUCgCACAEKQNAp0EEdGooAgAgBCgCaCgCACAEKAIsQQAgBCgCVBDCASICNwMQIAJCAFkNAQsCQCAELQAbQQFxRQ0AIwBBEGsiACAEKAJUNgIMIAAoAgwoAgBBE0cNACAEKAJUQRVBABAVCyAEKAJQECUgBCgCLBAXIARBADYCbAwDCyAEIAQpA0BCAXw3A0AgBCAEKQM4IAQpAxB9NwM4DAELCwJAIAQpA0AgBCgCUCkDCFEEQCAEKQM4QgBYDQELIAQoAlRBFUEAEBUgBCgCLBAXIAQoAlAQJSAEQQA2AmwMAQsgBCgCaCgCBEEEcQRAAkAgBCgCLARAIAQgBCgCLBBIQQFxOgAPDAELIAQgBCgCaCgCABBKNwMAIAQpAwBCAFMEQCAEKAJUIAQoAmgoAgAQGCAEKAJQECUgBEEANgJsDAMLIAQgBCkDACAEKAJQKQMgIAQoAlApAxh8UToADwsgBC0AD0EBcUUEQCAEKAJUQRVBABAVIAQoAiwQFyAEKAJQECUgBEEANgJsDAILCyAEKAIsEBcgBCAEKAJQNgJsCyAEKAJsIQAgBEHwAGokACAAC9cBAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQgAkGJmAE2AhAgAkEENgIMAkACQCACKAIUIAIoAgxPBEAgAigCDA0BCyACQQA2AhwMAQsgAiACKAIYQX9qNgIIA0ACQCACIAIoAghBAWogAigCEC0AACACKAIYIAIoAghrIAIoAhQgAigCDGtqEKYBIgA2AgggAEUNACACKAIIQQFqIAIoAhBBAWogAigCDEEBaxBTDQEgAiACKAIINgIcDAILCyACQQA2AhwLIAIoAhwhACACQSBqJAAgAAvBBgEBfyMAQeAAayICJAAgAiAANgJYIAIgATcDUAJAIAIpA1BCFlQEQCACKAJYQQhqQRNBABAVIAJBADYCXAwBCyACAn4gAikDUEKqgARUBEAgAikDUAwBC0KqgAQLNwMwIAIoAlgoAgBCACACKQMwfUECEChBAEgEQCMAQRBrIgAgAigCWCgCADYCDCACIAAoAgxBDGo2AggCQAJ/IwBBEGsiACACKAIINgIMIAAoAgwoAgBBBEYLBEAjAEEQayIAIAIoAgg2AgwgACgCDCgCBEEWRg0BCyACKAJYQQhqIAIoAggQRCACQQA2AlwMAgsLIAIgAigCWCgCABBKIgE3AzggAUIAUwRAIAIoAlhBCGogAigCWCgCABAYIAJBADYCXAwBCyACIAIoAlgoAgAgAikDMEEAIAIoAlhBCGoQQSIANgIMIABFBEAgAkEANgJcDAELIAJCfzcDICACQQA2AkwgAikDMEKqgARaBEAgAigCDEIUEC0aCyACQRBqQRNBABAVIAIgAigCDEIAEB82AkQDQAJAIAIgAigCRCACKAIMEDBCEn2nEPUBIgA2AkQgAEUNACACKAIMIAIoAkQCfyMAQRBrIgAgAigCDDYCDCAAKAIMKAIEC2usEC0aIAIgAigCWCACKAIMIAIpAzggAkEQahD0ASIANgJIIAAEQAJAIAIoAkwEQCACKQMgQgBXBEAgAiACKAJYIAIoAkwgAkEQahBlNwMgCyACIAIoAlggAigCSCACQRBqEGU3AygCQCACKQMgIAIpAyhTBEAgAigCTBAlIAIgAigCSDYCTCACIAIpAyg3AyAMAQsgAigCSBAlCwwBCyACIAIoAkg2AkwCQCACKAJYKAIEQQRxBEAgAiACKAJYIAIoAkwgAkEQahBlNwMgDAELIAJCADcDIAsLIAJBADYCSAsgAiACKAJEQQFqNgJEIAIoAgwgAigCRAJ/IwBBEGsiACACKAIMNgIMIAAoAgwoAgQLa6wQLRoMAQsLIAIoAgwQFyACKQMgQgBTBEAgAigCWEEIaiACQRBqEEQgAigCTBAlIAJBADYCXAwBCyACIAIoAkw2AlwLIAIoAlwhACACQeAAaiQAIAALvwUBAX8jAEHwAGsiAyQAIAMgADYCaCADIAE2AmQgAyACNgJgIANBIGoiABA8AkAgAygCaCAAEDlBAEgEQCADKAJgIAMoAmgQGCADQQA2AmwMAQsgAykDIEIEg1AEQCADKAJgQQRBigEQFSADQQA2AmwMAQsgAyADKQM4NwMYIAMgAygCaCADKAJkIAMoAmAQZiIANgJcIABFBEAgA0EANgJsDAELAkAgAykDGFBFDQAgAygCaBCUAUEBcUUNACADIAMoAlw2AmwMAQsgAyADKAJcIAMpAxgQ9gEiADYCWCAARQRAIAMoAmAgAygCXEEIahBEIwBBEGsiACADKAJoNgIMIAAoAgwiACAAKAIwQQFqNgIwIAMoAlwQPyADQQA2AmwMAQsgAygCXCADKAJYKAIANgJAIAMoAlwgAygCWCkDCDcDMCADKAJcIAMoAlgpAxA3AzggAygCXCADKAJYKAIoNgIgIAMoAlgQFiADKAJcKAJQIAMoAlwpAzAgAygCXEEIahD9AiADQgA3AxADQCADKQMQIAMoAlwpAzBUBEAgAyADKAJcKAJAIAMpAxCnQQR0aigCACgCMEEAQQAgAygCYBBHNgIMIAMoAgxFBEAjAEEQayIAIAMoAmg2AgwgACgCDCIAIAAoAjBBAWo2AjAgAygCXBA/IANBADYCbAwDCyADKAJcKAJQIAMoAgwgAykDEEEIIAMoAlxBCGoQfUEBcUUEQAJAIAMoAlwoAghBCkYEQCADKAJkQQRxRQ0BCyADKAJgIAMoAlxBCGoQRCMAQRBrIgAgAygCaDYCDCAAKAIMIgAgACgCMEEBajYCMCADKAJcED8gA0EANgJsDAQLCyADIAMpAxBCAXw3AxAMAQsLIAMoAlwgAygCXCgCFDYCGCADIAMoAlw2AmwLIAMoAmwhACADQfAAaiQAIAALwQEBAX8jAEHQAGsiAiQAIAIgADYCSCACIAE2AkQgAkEIaiIAEDwCQCACKAJIIAAQOQRAIwBBEGsiACACKAJINgIMIAIgACgCDEEMajYCBCMAQRBrIgAgAigCBDYCDAJAIAAoAgwoAgBBBUcNACMAQRBrIgAgAigCBDYCDCAAKAIMKAIEQSxHDQAgAkEANgJMDAILIAIoAkQgAigCBBBEIAJBfzYCTAwBCyACQQE2AkwLIAIoAkwhACACQdAAaiQAIAAL6gEBAX8jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI2AiAjAEEQayIAIANBCGoiATYCDCAAKAIMQQA2AgAgACgCDEEANgIEIAAoAgxBADYCCCADIAMoAiggARD7ASIANgIYAkAgAEUEQCADKAIgIANBCGoiABCTASAAEDggA0EANgIsDAELIAMgAygCGCADKAIkIANBCGoQkgEiADYCHCAARQRAIAMoAhgQHCADKAIgIANBCGoiABCTASAAEDggA0EANgIsDAELIANBCGoQOCADIAMoAhw2AiwLIAMoAiwhACADQTBqJAAgAAvIAgEBfyMAQRBrIgEkACABIAA2AgggAUHYABAZNgIEAkAgASgCBEUEQCABKAIIQQ5BABAVIAFBADYCDAwBCyABKAIIEIEDIQAgASgCBCAANgJQIABFBEAgASgCBBAWIAFBADYCDAwBCyABKAIEQQA2AgAgASgCBEEANgIEIwBBEGsiACABKAIEQQhqNgIMIAAoAgxBADYCACAAKAIMQQA2AgQgACgCDEEANgIIIAEoAgRBADYCGCABKAIEQQA2AhQgASgCBEEANgIcIAEoAgRBADYCJCABKAIEQQA2AiAgASgCBEEAOgAoIAEoAgRCADcDOCABKAIEQgA3AzAgASgCBEEANgJAIAEoAgRBADYCSCABKAIEQQA2AkQgASgCBEEANgJMIAEoAgRBADYCVCABIAEoAgQ2AgwLIAEoAgwhACABQRBqJAAgAAuBAQEBfyMAQSBrIgIkACACIAA2AhggAkIANwMQIAJCfzcDCCACIAE2AgQCQAJAIAIoAhgEQCACKQMIQn9ZDQELIAIoAgRBEkEAEBUgAkEANgIcDAELIAIgAigCGCACKQMQIAIpAwggAigCBBD/ATYCHAsgAigCHCEAIAJBIGokACAAC80BAQJ/IwBBIGsiASQAIAEgADYCGCAB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CyAAIAFBf2oiAWoiAi0AAEEvRw0ACyACC6kBAQN/AkAgAC0AACICRQ0AA0AgAS0AACIERQRAIAIhAwwCCwJAIAIgBEYNACACQSByIAIgAkG/f2pBGkkbIAEtAAAiAkEgciACIAJBv39qQRpJG0YNACAALQAAIQMMAgsgAUEBaiEBIAAtAAEhAiAAQQFqIQAgAg0ACwsgA0H/AXEiAEEgciAAIABBv39qQRpJGyABLQAAIgBBIHIgACAAQb9/akEaSRtrC+gDAQN/IwBBsAFrIgEkACABIAA2AqgBIAEoAqgBEDgCQAJAIAEoAqgBKAIAQQBOBEAgASgCqAEoAgBBoA4oAgBIDQELIAEgASgCqAEoAgA2AhAgAUEgakG8lwEgAUEQahBvIAFBADYCpAEgASABQSBqNgKgAQwBCyABIAEoAqgBKAIAQQJ0QaANaigCADYCpAECQAJAAkACQCABKAKoASgCAEECdEGwDmooAgBBf2oOAgABAgsgASABKAKoASgCBEGQmgEoAgAQpAI2AqABDAILIwBBEGsiACABKAKoASgCBDYCDCABQQAgACgCDGtBAnRB2NQAaigCADYCoAEMAQsgAUEANgKgAQsLAkAgASgCoAFFBEAgASABKAKkATYCrAEMAQsgASABKAKgARAsAn8gASgCpAEEQCABKAKkARAsQQJqDAELQQALakEBahAZIgA2AhwgAEUEQCABQdgNKAIANgKsAQwBCyABKAIcIQACfyABKAKkAQRAIAEoAqQBDAELQdSXAQshAkHVlwFB1JcBIAEoAqQBGyEDIAEgASgCoAE2AgggASADNgIEIAEgAjYCACAAQc2XASABEG8gASgCqAEgASgCHDYCCCABIAEoAhw2AqwBCyABKAKsASEAIAFBsAFqJAAgAAtxAQN/AkACQANAIAAgAkHQiAFqLQAARwRAQdcAIQMgAkEBaiICQdcARw0BDAILCyACIgMNAEGwiQEhAAwBC0GwiQEhAgNAIAItAAAhBCACQQFqIgAhAiAEDQAgACECIANBf2oiAw0ACwsgASgCFBogAAszAQF/IAAoAhQiAyABIAIgACgCECADayIBIAEgAksbIgEQGhogACAAKAIUIAFqNgIUIAILigEBAn8jAEGgAWsiAyQAIANBCGpBuIcBQZABEBoaIAMgADYCNCADIAA2AhwgA0F+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QQhxBEAgACABQSByNgIAQX8PCyAAQgA3AgQgACAAKAIsIgE2AhwgACABNgIUIAAgASAAKAIwajYCEEEACwYAQaShAQsGAEGgoQELBgBBmKEBC9kDAgJ/An4jAEEgayICJAACQCABQv///////////wCDIgVCgICAgICAwP9DfCAFQoCAgICAgMCAvH98VARAIAFCBIYgAEI8iIQhBCAAQv//////////D4MiAEKBgICAgICAgAhaBEAgBEKBgICAgICAgMAAfCEEDAILIARCgICAgICAgIBAfSEEIABCgICAgICAgIAIhUIAUg0BIARCAYMgBHwhBAwBCyAAUCAFQoCAgICAgMD//wBUIAVCgICAgICAwP//AFEbRQRAIAFCBIYgAEI8iIRC/////////wODQoCAgICAgID8/wCEIQQMAQtCgICAgICAgPj/ACEEIAVC////////v//DAFYNAEIAIQQgBUIwiKciA0GR9wBJDQAgAkEQaiAAIAFC////////P4NCgICAgICAwACEIgQgA0H/iH9qELMCIAIgACAEQYH4ACADaxCyAiACKQMIQgSGIAIpAwAiAEI8iIQhBCACKQMQIAIpAxiEQgBSrSAAQv//////////D4OEIgBCgYCAgICAgIAIWgRAIARCAXwhBAwBCyAAQoCAgICAgICACIVCAFINACAEQgGDIAR8IQQLIAJBIGokACAEIAFCgICAgICAgICAf4OEvwtQAQF+AkAgA0HAAHEEQCACIANBQGqtiCEBQgAhAgwBCyADRQ0AIAJBwAAgA2uthiABIAOtIgSIhCEBIAIgBIghAgsgACABNwMAIAAgAjcDCAtQAQF+AkAgA0HAAHEEQCABIANBQGqthiECQgAhAQwBCyADRQ0AIAIgA60iBIYgAUHAACADa62IhCECIAEgBIYhAQsgACABNwMAIAAgAjcDCAuLAgACQCAABH8gAUH/AE0NAQJAQZCaASgCACgCAEUEQCABQYB/cUGAvwNGDQMMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAg8LIAFBgLADT0EAIAFBgEBxQYDAA0cbRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMPCyABQYCAfGpB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBA8LC0G0nAFBGTYCAEF/BUEBCw8LIAAgAToAAEEBC74CAQF/IwBBwMAAayIDJAAgAyAANgK4QCADIAE2ArRAIAMgAjcDqEACQCADKAK0QBBJQQBIBEAgAygCuEBBCGogAygCtEAQGCADQX82ArxADAELIANBADYCDCADQgA3AxADQAJAIAMgAygCtEAgA0EgakKAwAAQLyICNwMYIAJCAFcNACADKAK4QCADQSBqIAMpAxgQNkEASARAIANBfzYCDAUgAykDGEKAwABSDQIgAygCuEAoAlRFDQIgAykDqEBCAFcNAiADIAMpAxggAykDEHw3AxAgAygCuEAoAlQgAykDELkgAykDqEC5oxBYDAILCwsgAykDGEIAUwRAIAMoArhAQQhqIAMoArRAEBggA0F/NgIMCyADKAK0QBAyGiADIAMoAgw2ArxACyADKAK8QCEAIANBwMAAaiQAIAALqgEBAX8jAEEwayIDJAAgAyAANgIoIAMgATYCJCADIAI3AxggAyADKAIoKAIAEDUiAjcDEAJAIAJCAFMEQCADQX82AiwMAQsgAyADKAIoIAMoAiQgAykDGBCQAyICNwMAIAJCAFMEQCADQX82AiwMAQsgAyADKAIoKAIAEDUiAjcDCCACQgBTBEAgA0F/NgIsDAELIANBADYCLAsgAygCLCEAIANBMGokACAAC/4BAQF/IwBBoMAAayICJAAgAiAANgKYQCACIAE3A5BAIAIgAikDkEC6OQMAAkADQCACKQOQQEIAVgRAIAICfkKAwAAgAikDkEBCgMAAVg0AGiACKQOQQAs+AgwgAigCmEAoAgAgAkEQaiACKAIMrSACKAKYQEEIahBhQQBIBEAgAkF/NgKcQAwDCyACKAKYQCACQRBqIAIoAgytEDZBAEgEQCACQX82ApxADAMFIAIgAikDkEAgAjUCDH03A5BAIAIoAphAKAJUIAIrAwAgAikDkEC6oSACKwMAoxBYDAILAAsLIAJBADYCnEALIAIoApxAIQAgAkGgwABqJAAgAAvnEQIBfwF+IwBBoAFrIgMkACADIAA2ApgBIAMgATYClAEgAyACNgKQAQJAIAMoApQBIANBOGoQOUEASARAIAMoApgBQQhqIAMoApQBEBggA0F/NgKcAQwBCyADKQM4QsAAg1AEQCADIAMpAzhCwACENwM4IANBADsBaAsCQAJAIAMoApABKAIQQX9HBEAgAygCkAEoAhBBfkcNAQsgAy8BaEUNACADKAKQASADLwFoNgIQDAELAkACQCADKAKQASgCEA0AIAMpAzhCBINQDQAgAyADKQM4QgiENwM4IAMgAykDUDcDWAwBCyADIAMpAzhC9////w+DNwM4CwsgAykDOEKAAYNQBEAgAyADKQM4QoABhDcDOCADQQA7AWoLIANBgAI2AiQCQCADKQM4QgSDUARAIAMgAygCJEGACHI2AiQgA0J/NwNwDAELIAMoApABIAMpA1A3AyggAyADKQNQNwNwAkAgAykDOEIIg1AEQAJAAkACQAJAAkACfwJAIAMoApABKAIQQX9HBEAgAygCkAEoAhBBfkcNAQtBCAwBCyADKAKQASgCEAtB//8DcQ4NAgMDAwMDAwMBAwMDAAMLIANClMLk8w83AxAMAwsgA0KDg7D/DzcDEAwCCyADQv////8PNwMQDAELIANCADcDEAsgAykDUCADKQMQVgRAIAMgAygCJEGACHI2AiQLDAELIAMoApABIAMpA1g3AyALCyADIAMoApgBKAIAEDUiBDcDiAEgBEIAUwRAIAMoApgBQQhqIAMoApgBKAIAEBggA0F/NgKcAQwBCyADKAKQASIAIAAvAQxB9/8DcTsBDCADIAMoApgBIAMoApABIAMoAiQQXiIANgIoIABBAEgEQCADQX82ApwBDAELIAMgAy8BaAJ/AkAgAygCkAEoAhBBf0cEQCADKAKQASgCEEF+Rw0BC0EIDAELIAMoApABKAIQC0H//wNxRzoAIiADIAMtACJBAXEEfyADLwFoQQBHBUEAC0EBcToAISADIAMvAWgEfyADLQAhBUEBC0EBcToAICADIAMtACJBAXEEfyADKAKQASgCEEEARwVBAAtBAXE6AB8gAwJ/QQEgAy0AIkEBcQ0AGkEBIAMoApABKAIAQYABcQ0AGiADKAKQAS8BUiADLwFqRwtBAXE6AB4gAyADLQAeQQFxBH8gAy8BakEARwVBAAtBAXE6AB0gAyADLQAeQQFxBH8gAygCkAEvAVJBAEcFQQALQQFxOgAcIAMgAygClAE2AjQjAEEQayIAIAMoAjQ2AgwgACgCDCIAIAAoAjBBAWo2AjAgAy0AHUEBcQRAIAMgAy8BakEAEHciADYCDCAARQRAIAMoApgBQQhqQRhBABAVIAMoAjQQHCADQX82ApwBDAILIAMgAygCmAEgAygCNCADLwFqQQAgAygCmAEoAhwgAygCDBEGACIANgIwIABFBEAgAygCNBAcIANBfzYCnAEMAgsgAygCNBAcIAMgAygCMDYCNAsgAy0AIUEBcQRAIAMgAygCmAEgAygCNCADLwFoEKsBIgA2AjAgAEUEQCADKAI0EBwgA0F/NgKcAQwCCyADKAI0EBwgAyADKAIwNgI0CyADLQAgQQFxBEAgAyADKAKYASADKAI0QQAQqgEiADYCMCAARQRAIAMoAjQQHCADQX82ApwBDAILIAMoAjQQHCADIAMoAjA2AjQLIAMtAB9BAXEEQCADIAMoApgBIAMoAjQgAygCkAEoAhAgAygCkAEvAVAQwgIiADYCMCAARQRAIAMoAjQQHCADQX82ApwBDAILIAMoAjQQHCADIAMoAjA2AjQLIAMtABxBAXEEQCADQQA2AgQCQCADKAKQASgCVARAIAMgAygCkAEoAlQ2AgQMAQsgAygCmAEoAhwEQCADIAMoApgBKAIcNgIECwsgAyADKAKQAS8BUkEBEHciADYCCCAARQRAIAMoApgBQQhqQRhBABAVIAMoAjQQHCADQX82ApwBDAILIAMgAygCmAEgAygCNCADKAKQAS8BUkEBIAMoAgQgAygCCBEGACIANgIwIABFBEAgAygCNBAcIANBfzYCnAEMAgsgAygCNBAcIAMgAygCMDYCNAsgAyADKAKYASgCABA1IgQ3A4ABIARCAFMEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAyADKAKYASADKAI0IAMpA3AQtQI2AiwgAygCNCADQThqEDlBAEgEQCADKAKYAUEIaiADKAI0EBggA0F/NgIsCyADIAMoAjQQuwIiADoAIyAAQRh0QRh1QQBIBEAgAygCmAFBCGogAygCNBAYIANBfzYCLAsgAygCNBAcIAMoAixBAEgEQCADQX82ApwBDAELIAMgAygCmAEoAgAQNSIENwN4IARCAFMEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAygCmAEoAgAgAykDiAEQqAFBAEgEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgAykDOELkAINC5ABSBEAgAygCmAFBCGpBFEEAEBUgA0F/NgKcAQwBCyADKAKQASgCAEEgcUUEQAJAIAMpAzhCEINCAFIEQCADKAKQASADKAJgNgIUDAELIAMoApABQRRqEAEaCwsgAygCkAEgAy8BaDYCECADKAKQASADKAJkNgIYIAMoApABIAMpA1A3AyggAygCkAEgAykDeCADKQOAAX03AyAgAygCkAEgAygCkAEvAQxB+f8DcSADLQAjQQF0cjsBDCADKAKQASADKAIkQYAIcUEARxCKAyADIAMoApgBIAMoApABIAMoAiQQXiIANgIsIABBAEgEQCADQX82ApwBDAELIAMoAiggAygCLEcEQCADKAKYAUEIakEUQQAQFSADQX82ApwBDAELIAMoApgBKAIAIAMpA3gQqAFBAEgEQCADKAKYAUEIaiADKAKYASgCABAYIANBfzYCnAEMAQsgA0EANgKcAQsgAygCnAEhACADQaABaiQAIAALrwIBAX8jAEEgayICIAA2AhwgAiABNgIYIAJBADYCFCACQgA3AwACQCACKAIcLQAoQQFxRQRAIAIoAhwoAhggAigCHCgCFEYNAQsgAkEBNgIUCyACQgA3AwgDQCACKQMIIAIoAhwpAzBUBEACQAJAIAIoAhwoAkAgAikDCKdBBHRqKAIIDQAgAigCHCgCQCACKQMIp0EEdGotAAxBAXENACACKAIcKAJAIAIpAwinQQR0aigCBEUNASACKAIcKAJAIAIpAwinQQR0aigCBCgCAEUNAQsgAkEBNgIUCyACKAIcKAJAIAIpAwinQQR0ai0ADEEBcUUEQCACIAIpAwBCAXw3AwALIAIgAikDCEIBfDcDCAwBCwsgAigCGARAIAIoAhggAikDADcDAAsgAigCFAuMEAMCfwF+AXwjAEHgAGsiASQAIAEgADYCWAJAIAEoAlhFBEAgAUF/NgJcDAELIAEgASgCWCABQUBrELkCNgIkIAEpA0BQBEACQCABKAJYKAIEQQhxRQRAIAEoAiRFDQELIAEoAlgoAgAQhAJBAEgEQAJAAn8jAEEQayICIAEoAlgoAgA2AgwjAEEQayIAIAIoAgxBDGo2AgwgACgCDCgCAEEWRgsEQCMAQRBrIgIgASgC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NgI8IAEoAlAgASgCODYCQCABKAJYIAEoAjAQ1gIgASABKAJYKAIMNgJIIAEgASgCWCgCEDYCQCABIAEoAlgoAgA2AkwgASABKAJYKAIENgJEIAEgASgCUCgCPDYCPCABIAEoAlAoAkA2AjggASgCUCgCBEG//gBGBEAgASgCUEF/NgLINwsMDQsgASgCUEEANgLINwNAAkAgASABKAJQKAJQIAEoAjxBASABKAJQKAJYdEEBa3FBAnRqKAEANgEgIAEtACEgASgCOE0NACABKAJERQ0NIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCwJAIAEtACBFDQAgAS0AIEHwAXENACABIAEoASA2ARgDQAJAIAEgASgCUCgCUCABLwEaIAEoAjxBASABLQAZIAEtABhqdEEBa3EgAS0AGXZqQQJ0aigBADYBICABLQAZIAEtACFqIAEoAjhNDQAgASgCREUNDiABIAEoAkRBf2o2AkQgASABKAJMIgBBAWo2AkwgASABKAI8IAAtAAAgASgCOHRqNgI8IAEgASgCOEEIajYCOAwBCwsgASABKAI8IAEtABl2NgI8IAEgASgCOCABLQAZazYCOCABKAJQIgAgAS0AGSAAKALIN2o2Asg3CyABIAEoAjwgAS0AIXY2AjwgASABKAI4IAEtACFrNgI4IAEoAlAiACABLQAhIAAoAsg3ajYCyDcgASgCUCABLwEiNgJEIAEtACBFBEAgASgCUEHN/gA2AgQMDQsgAS0AIEEgcQRAIAEoAlBBfzYCyDcgASgCUEG//gA2AgQMDQsgAS0AIEHAAHEEQCABKAJYQYfxADYCGCABKAJQQdH+ADYCBAwNCyABKAJQIAEtACBBD3E2AkwgASgCUEHJ/gA2AgQLIAEoAlAoAkwEQANAIAEoAjggASgCUCgCTEkEQCABKAJERQ0NIAEgASgCREF/ajYCRCABIAEoAkwiAEEBajYCTCABIAEoAjwgAC0AACABKAI4dGo2AjwgASABKAI4QQhqNgI4DAELCyABKAJQIgAgACgCRCABKAI8QQEgASgCUCgCTHRBAWtxajYCRCABIAEoAjwgASgCUCgCTHY2AjwgASABKAI4IAEoAlAoAkxrNgI4IAEoAlAiACAB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KAIMSQRAIAIgAigCUCIAQQFqNgJQIAIgAigCLCAALQAAIAIoAih0ajYCLCACIAIoAihBCGo2AiggAigCKCACKAIMSQRAIAIgAigCUCIAQQFqNgJQIAIgAigCLCAALQAAIAIoAih0ajYCLCACIAIoAihBCGo2AigLCyACIAIoAgQgAigCLEEBIAIoAgx0QQFrcWo2AgQgAiACKAIsIAIoAgx2NgIsIAIgAigCKCACKAIMazYCKCACIAIoAkggAigCRGs2AgwCQCACKAIEIAIoAgxLBEAgAiACKAIEIAIoAgxrNgIMIAIoAgwgAigCOEsEQCACKAJUKALENwRAIAIoAlxBsO0ANgIYIAIoAlRB0f4ANgIEDAoLCyACIAIoAjA2AgACQCACKAI0RQRAIAIgAigCACACKAI8IAIoAgxrajYCACACKAIMIAIoAghJBEAgAiACKAIIIAIoAgxrNgIIA0AgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgxBf2oiADYCDCAADQALIAIgAigCSCACKAIEazYCAAsMAQsCQCACKAI0IAIoAgxJBEAgAiACKAIAIAIoAjwgAigCNGogAigCDGtqNgIAIAIgAigCDCACKAI0azYCDCACKAIMIAIoAghJBEAgAiACKAIIIAIoAgxrNgIIA0AgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgxBf2oiADYCDCAADQALIAIgAigCMDYCACACKAI0IAIoAghJBEAgAiACKAI0NgIMIAIgAigCCCACKAIMazYCCANAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIMQX9qIgA2AgwgAA0ACyACIAIoAkggAigCBGs2AgALCwwBCyACIAIoAgAgAigCNCACKAIMa2o2AgAgAigCDCACKAIISQRAIAIgAigCCCACKAIMazYCCANAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIMQX9qIgA2AgwgAA0ACyACIAIoAkggAigCBGs2AgALCwsDQCACKAIIQQJNRQRAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCCEEDazYCCAwBCwsMAQsgAiACKAJIIAIoAgRrNgIAA0AgAiACKAIAIgBBAWo2AgAgAC0AACEAIAIgAigCSCIBQQFqNgJIIAEgADoAACACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIgAigCACIAQQFqNgIAIAAtAAAhACACIAIoAkgiAUEBajYCSCABIAA6AAAgAiACKAIIQQNrNgIIIAIoAghBAksNAAsLIAIoAggEQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAAIAIoAghBAUsEQCACIAIoAgAiAEEBajYCACAALQAAIQAgAiACKAJIIgFBAWo2AkggASAAOgAACwsMAgsgAigCDEHAAHFFBEAgAkEQaiACKAIgIAIvARIgAigCLEEBIAIoAgx0QQFrcWpBAnRqKAEANgEADAELCyACKAJcQc7tADYCGCACKAJUQdH+ADYCBAwECwwCCyACKAIMQcAAcUUEQCACQRBqIAIoAiQgAi8BEiACKAIsQQEgAigCDHRBAWtxakECdGooAQA2AQAMAQsLIAIoAgxBIHEEQCACKAJUQb/+ADYCBAwCCyACKAJcQeTtADYCGCACKAJUQdH+ADYCBAwBC0EAIQAgAigCUCACKAJMSQR/IAIoAkggAigCQEkFQQALQQFxDQELCyACIAIoAihBA3Y2AgggAiACKAJQIAIoAghrNgJQIAIgAigCKCACKAIIQQN0azYCKCACIAIoAixBASACKAIodEEBa3E2AiwgAigCXCACKAJQNgIAIAIoAlwgAigCSDYCDCACKAJcAn8gAigCUCACKAJMSQRAIAIoAkwgAigCUGtBBWoMAQtBBSACKAJQIAIoAkxraws2AgQgAigCXAJ/IAIoAkggAigCQEkEQCACKAJAIAIoAkhrQYECagwBC0GBAiACKAJIIAIoAkBraws2AhAgAigCVCACKAIsNgI8IAIoAlQgAigCKDYCQAvBEAECfyMAQSBrIgIk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LSAAKAKgLUEBdGogAi8BEDsBACACLQATIQEgAigCKCIAKAKYLSEDIAAgACgCoC0iAEEBajYCoC0gACADaiABOgAAIAIgAi8BEEF/ajsBECACKAIoIAItABNBgNkAai0AAEECdGpBmAlqIgAgAC8BAEEBajsBACACKAIoQYgTagJ/IAIvARBBgAJIBEAgAi8BEC0AgFUMAQsgAi8BEEEHdUGAAmotAIBVC0ECdGoiACAALwEAQQFqOwEAIAIgAigCKCgCoC0gAigCKCgCnC1BAWtGNgIgIAIoAigiACAAKAJ0IAIoAigoAmBrNgJ0IAIoAigiACACKAIoKAJgIAAoAmxqNgJsIAIoAihBADYCYAwBCyACIAIoAigiACgCOCAAKAJsai0AADoADyACKAIoIgAoAqQtIAAoAqAtQQF0akEAOwEAIAItAA8hASACKAIoIgAoApgtIQMgACAAKAKgLSIAQQFqNgKgLSAAIANqIAE6AAAgAigCKCACLQAPQQJ0aiIAIAAvAZQBQQFqOwGUASACIAIoAigoAqAtIAIoAigoApwtQQFrRjYCICACKAIoIgAgACgCdEF/ajYCdCACKAIoIgAgACgCbEEBajYCbAsgAigCIARAIAIoAigCfyACKAIoKAJcQQBOBEAgAigCKCgCOCACKAIoKAJcagwBC0EACyACKAIoKAJsIAIoAigoAlxrQQAQKSACKAIoIAIoAigoAmw2AlwgAigCKCgCABAdIAIoAigoAgAoAhBFBEAgAkEANgIsDAQLCwwBCwsgAigCKEEANgK0LSACKAIkQQRGBEAgAigCKAJ/IAIoAigoAlxBAE4EQCACKAIoKAI4IAIoAigoAlxqDAELQQALIAIoAigoAmwgAigCKCgCXGtBARApIAIoAiggAigCKCgCbDYCXCACKAIoKAIAEB0gAigCKCgCACgCEEUEQCACQQI2AiwMAgsgAkEDNgIsDAELIAIoAigoAqAtBEAgAigCKAJ/IAIoAigoAlxBAE4EQCACKAIoKAI4IAIoAigoAlxqDAELQQALIAIoAigoAmwgAigCKCgCXGtBABApIAIoAiggAigCKCgCbDYCXCACKAIoKAIAEB0gAigCKCgCACgCEEUEQCACQQA2AiwMAgsLIAJBATYCLAsgAigCLCEAIAJBMGokACAAC8AFAQJ/IwBBIGsiAiQA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AgQgAkEANgIQA0AgAigCEEEPSkUEQCACKAI8QbwWaiACKAIQQQF0akEAOwEAIAIgAigCEEEBajYCEAwBCwsgAigCNCACKAI8QdwWaiACKAI8KALUKEECdGooAgBBAnRqQQA7AQIgAiACKAI8KALUKEEBajYCHANAIAIoAhxBvQRIBEAgAiACKAI8QdwWaiACKAIcQQJ0aigCADYCGCACIAIoAjQgAigCNCACKAIYQQJ0ai8BAkECdGovAQJBAWo2AhAgAigCECACKAIgSgRAIAIgAigCIDYCECACIAIoAgRBAWo2AgQLIAIoAjQgAigCGEECdGogAigCEDsBAiACKAIYIAIoAjBMBEAgAigCPCACKAIQQQF0akG8FmoiACAALwEAQQFqOwEAIAJBADYCDCACKAIYIAIoAiROBEAgAiACKAIoIAIoAhggAigCJGtBAnRqKAIANgIMCyACIAIoAjQgAigCGEECdGovAQA7AQogAigCPCIAIAAoAqgtIAIvAQogAigCECACKAIMamxqNgKoLSACKAIsBEAgAigCPCIAIAAoAqwtIAIvAQogAigCLCACKAIYQQJ0ai8BAiACKAIMamxqNgKsLQsLIAIgAigCHEEBajYCHAwBCwsCQCACKAIERQ0AA0AgAiACKAIgQQFrNgIQA0AgAigCPEG8FmogAigCEEEBdGovAQBFBEAgAiACKAIQQX9qNgIQDAELCyACKAI8IAIoAhBBAXRqQbwWaiIAIAAvAQBBf2o7AQAgAigCPCACKAIQQQF0akG+FmoiACAALwEAQQJqOwEAIAIoAjwgAigCIEEBdGpBvBZqIgAgAC8BAEF/ajsBACACIAIoAgRBAms2AgQgAigCBEEASg0ACyACIAIoAiA2AhADQCACKAIQRQ0BIAIgAigCPEG8FmogAigCEEEBdGovAQA2AhgDQCACKAIYBEAgAigCPEHcFmohACACIAIoAhxBf2oiATYCHCACIAFBAnQgAGooAgA2AhQgAigCFCACKAIwSg0BIAIoAjQgAigCFEECdGovAQIgAigCEEcEQCACKAI8IgAgACgCqC0gAigCNCACKAIUQQJ0ai8BACACKAIQIAIoAjQgAigCFEECdGovAQJrbGo2AqgtIAIoAjQgAigCFEECdGogAigCEDsBAgsgAiACKAIYQX9qNgIYDAELCyACIAIo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KAIMIAEoAgxB/BRqNgKwFiABKAIMQajbADYCuBYgASgCDEEAOwG4LSABKAIMQQA2ArwtIAEoAgwQuQEgAUEQaiQAC9cNAQF/IwBBIGsiAyAANgIYIAMgATYCFCADIAI2AhAgAyADKAIYQRB2NgIMIAMgAygCGEH//wNxNgIYAkAgAygCEEEBRgRAIAMgAygCFC0AACADKAIYajYCGCADKAIYQfH/A08EQCADIAMoAhhB8f8DazYCGAsgAyADKAIYIAMoAgxqNgIMIAMoAgxB8f8DTwRAIAMgAygCDEHx/wNrNgIMCyADIAMoAhggAygCDEEQdHI2AhwMAQsgAygCFEUEQCADQQE2AhwMAQsgAygCEEEQSQRAA0AgAyADKAIQIgBBf2o2AhAgAARAIAMgAygCFCIAQQFqNgIUIAMgAC0AACADKAIYajYCGCADIAMoAhggAygCDGo2AgwMAQsLIAMoAhhB8f8DTwRAIAMgAygCGEHx/wNrNgIYCyADIAMoAgxB8f8DcDYCDCADIAMoAhggAygCDEEQdHI2AhwMAQsDQCADKAIQQbArSUUEQCADIAMoAhBBsCtrNgIQIANB2wI2AggDQCADIAMoAhQtAAAgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AASADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQACIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAMgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAFIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAYgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AByADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAIIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAkgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQALIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAwgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAOIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA8gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFEEQajYCFCADIAMoAghBf2oiADYCCCAADQALIAMgAygCGEHx/wNwNgIYIAMgAygCDEHx/wNwNgIMDAELCyADKAIQBEADQCADKAIQQRBJRQRAIAMgAygCEEEQazYCECADIAMoAhQtAAAgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AASADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQACIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAMgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ABCADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAFIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAYgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0AByADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAIIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAkgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ACiADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQALIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAAwgAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFC0ADSADKAIYajYCGCADIAMoAhggAygCDGo2AgwgAyADKAIULQAOIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDCADIAMoAhQtAA8gAygCGGo2AhggAyADKAIYIAMoAgxqNgIMIAMgAygCFEEQajYCFAwBCwsDQCADIAMoAhAiAEF/ajYCECAABEAgAyADKAIUIgBBAWo2AhQgAyAALQAAIAMoAhhqNgIYIAMgAygCGCADKAIMajYCDAwBCwsgAyADKAIYQfH/A3A2AhggAyADKAIMQfH/A3A2AgwLIAMgAygCGCADKAIMQRB0cjYCHAsgAygCHAspAQF/IwBBEGsiAiQAIAIgADYCDCACIAE2AgggAigCCBAWIAJBEGokAAs6AQF/IwBBEGsiAyQAIAMgADYCDCADIAE2AgggAyACNgIEIAMoAgggAygCBGwQGSEAIANBEGokACAAC70HAQl/IAAoAgQiB0EDcSECIAAgB0F4cSIGaiEEAkBByJwBKAIAIgUgAEsNACACQQFGDQALAkAgAkUEQEEAIQIgAUGAAkkNASAGIAFBBGpPBEAgACECIAYgAWtBmKABKAIAQQF0TQ0CC0EADwsCQCAGIAFPBEAgBiABayICQRBJDQEgACAHQQFxIAFyQQJyNgIEIAAgAWoiASACQQNyNgIEIAQgBCgCBEEBcjYCBCABIAIQtgEMAQtBACECIARB0JwBKAIARgRAQcScASgCACAGaiIFIAFNDQIgACAHQQFxIAFyQQJyNgIEIAAgAWoiAiAFIAFrIgFBAXI2AgRBxJwBIAE2AgBB0JwBIAI2AgAMAQsgBEHMnAEoAgBGBEBBwJwBKAIAIAZqIgUgAUkNAgJAIAUgAWsiAkEQTwRAIAAgB0EBcSABckECcjYCBCAAIAFqIgEgAkEBcjYCBCAAIAVqIgUgAjYCACAFIAUoAgRBfnE2AgQMAQsgACAHQQFxIAVyQQJyNgIEIAAgBWoiASABKAIEQQFyNgIEQQAhAkEAIQELQcycASABNgIAQcCcASACNgIADAELIAQoAgQiA0ECcQ0BIANBeHEgBmoiCSABSQ0BIAkgAWshCgJAIANB/wFNBEAgBCgCCCIGIANBA3YiBUEDdEHgnAFqRxogBiAEKAIMIghGBEBBuJwBQbicASgCAEF+IAV3cTYCAAwCCyAGIAg2AgwgCCAGNgIIDAELIAQoAhghCAJAIAQgBCgCDCIDRwRAIAUgBCgCCCICTQRAIAIoAgwaCyACIAM2AgwgAyACNgIIDAELAkAgBEEUaiICKAIAIgYNACAEQRBqIgIoAgAiBg0AQQAhAwwBCwNAIAIhBSAGIgNBFGoiAigCACIGDQAgA0EQaiECIAMoAhAiBg0ACyAFQQA2AgALIAhFDQACQCAEIAQoAhwiBUECdEHongFqIgIoAgBGBEAgAiADNgIAIAMNAUG8nAFBvJwBKAIAQX4gBXdxNgIADAILIAhBEEEUIAgoAhAgBEYbaiADNgIAIANFDQELIAMgCDYCGCAEKAIQIgIEQCADIAI2AhAgAiADNgIYCyAEKAIUIgJFDQAgAyACNgIUIAIgAzYCGAsgCkEPTQRAIAAgB0EBcSAJckECcjYCBCAAIAlqIgEgASgCBEEBcjYCBAwBCyAAIAdBAXEgAXJBAnI2AgQgACABaiICIApBA3I2AgQgACAJaiIBIAEoAgRBAXI2AgQgAiAKELYBCyAAIQILIAILhAICAX8BfiMAQeAAayICJAAgAiAANgJYIAIgATYCVCACIAIoAlggAkHIAGpCDBAvIgM3AwgCQCADQgBTBEAgAigCVCACKAJYEBggAkF/NgJcDAELIAIpAwhCDFIEQCACKAJUQRFBABAVIAJBfzYCXAwBCyACKAJUIAJByABqIgAgAEIMQQAQeCACKAJYIAJBEGoQOUEASARAIAJBADYCXAwBCyACKAI4IAJBBmogAkEEahDDAQJAIAItAFMgAigCPEEYdkYNACACLQBTIAIvAQZBCHVGDQAgAigCVEEbQQAQFSACQX82AlwMAQsgAkEANgJcCyACKAJcIQAgAkHgAGokACAAC8oDAQF/IwBB0ABrIgUkACAFIAA2AkQgBSABNgJAIAUgAjYCPCAFIAM3AzAgBSAENgIsIAUgBSgCQDYCKAJAAkACQAJAAkACQAJAAkACQCAFKAIsDg8AAQIDBQYHBwcHBwcHBwQHCyAFKAJEIAUoAigQ7wJBAEgEQCAFQn83A0gMCAsgBUIANwNIDAcLIAUgBSgCRCAFKAI8IAUpAzAQLyIDNwMgIANCAFMEQCAFKAIoIAUoAkQQGCAFQn83A0gMBwsgBSgCQCAFKAI8IAUoAjwgBSkDIEEAEHggBSAFKQMgNwNIDAYLIAVCADcDSAwFCyAFIAUoAjw2AhwgBSgCHEEAOwEyIAUoAhwiACAAKQMAQoABhDcDACAFKAIcKQMAQgiDQgBSBEAgBSgCHCIAIAApAyBCDH03AyALIAVCADcDSAwECyAFQX82AhQgBUEFNgIQIAVBBDYCDCAFQQM2AgggBUECNgIEIAVBATYCACAFQQAgBRA3NwNIDAMLIAUgBSgCKCAFKAI8IAUpAzAQQjcDSAwCCyAFKAIoELoBIAVCADcDSAwBCyAFKAIoQRJBABAVIAVCfzcDSAsgBSkDSCEDIAVB0ABqJAAgAwvuAgEBfyMAQSBrIgUkACAFIAA2AhggBSABNgIUIAUgAjsBEiAFIAM2AgwgBSAENgIIAkACQAJAIAUoAghFDQAgBSgCFEUNACAFLwESQQFGDQELIAUoAhhBCGpBEkEAEBUgBUEANgIcDAELIAUoAgxBAXEEQCAFKAIYQQhqQRhBABAVIAVBADYCHAwBCyAFQRgQGSIANgIEIABFBEAgBSgCGEEIakEOQQAQFSAFQQA2AhwMAQsjAEEQayIAIAUoAgQ2AgwgACgCDEEANgIAIAAoAgxBADYCBCAAKAIMQQA2AgggBSgCBEH4rNGRATYCDCAFKAIEQYnPlZoCNgIQIAUoAgRBkPHZogM2AhQgBSgCBEEAIAUoAgggBSgCCBAsrUEBEHggBSAFKAIYIAUoAhRBAyAFKAIEEGQiADYCACAARQRAIAUoAgQQugEgBUEANgIcDAELIAUgBSgCADYCHAsgBSgCHCEAIAVBIGokACAAC+gGAQF/IwBB4ABrIgQkACAEIAA2AlQgBCABNgJQIAQgAjcDSCAEIAM2AkQCQCAEKAJUKQM4IAQpA0h8QoCABHxCAX0gBCkDSFQEQCAEKAJEQRJBABAVIARCfzcDWAwBCyAEIAQoAlQoAgQgBCgCVCkDCKdBA3RqKQMANwMgIAQoAlQpAzggBCkDSHwgBCkDIFYEQCAEIAQoAlQpAwggBCkDSCAEKQMgIAQoAlQpAzh9fUKAgAR8QgF9QhCIfDcDGCAEKQMYIAQoAlQpAxBWBEAgBCAEKAJUKQMQNwMQIAQpAxBQBEAgBEIQNwMQCwNAIAQpAxAgBCkDGFpFBEAgBCAEKQMQQgGGNwMQDAELCyAEKAJUIAQpAxAgBCgCRBC9AUEBcUUEQCAEKAJEQQ5BABAVIARCfzcDWAwDCwsDQCAEKAJUKQMIIAQpAxhUBEBBgIAEEBkhACAEKAJUKAIAIAQoAlQpAwinQQR0aiAANgIAIAAEQCAEKAJUKAIAIAQoAlQpAwinQQR0akKAgAQ3AwggBCgCVCIAIAApAwhCAXw3AwggBCAEKQMgQoCABHw3AyAgBCgCVCgCBCAEKAJUKQMIp0EDdGogBCkDIDcDAAwCBSAEKAJEQQ5BABAVIARCfzcDWAwECwALCwsgBCAEKAJUKQNANwMwIAQgBCgCVCkDOCAEKAJUKAIEIAQpAzCnQQN0aikDAH03AyggBEIANwM4A0AgBCkDOCAEKQNIVARAIAQCfiAEKQNIIAQpAzh9IAQoAlQoAgAgBCkDMKdBBHRqKQMIIAQpAyh9VARAIAQpA0ggBCkDOH0MAQsgBCgCVCgCACAEKQMwp0EEdGopAwggBCkDKH0LNwMIIAQoAlQoAgAgBCkDMKdBBHRqKAIAIAQpAyinaiAEKAJQIAQpAzinaiAEKQMIpxAaGiAEKQMIIAQoAlQoAgAgBCkDMKdBBHRqKQMIIAQpAyh9UQRAIAQgBCkDMEIBfDcDMAsgBCAEKQMIIAQpAzh8NwM4IARCADcDKAwBCwsgBCgCVCIAIAQpAzggACkDOHw3AzggBCgCVCAEKQMwNwNAIAQoAlQpAzggBCgCVCkDMFYEQCAEKAJUIAQoAlQpAzg3AzALIAQgBCkDODcDWAsgBCkDWCECIARB4ABqJAAgAgvnAwEBfyMAQUBqIgMkACADIAA2AjQgAyABNgIwIAMgAjcDKCADAn4gAykDKCADKAI0KQMwIAMoAjQpAzh9VARAIAMpAygMAQsgAygCNCkDMCADKAI0KQM4fQs3AygCQCADKQMoUARAIANCADcDOAwBCyADKQMoQv///////////wBWBEAgA0J/NwM4DAELIAMgAygCNCkDQDcDGCADIAMoAjQpAzggAygCNCgCBCADKQMYp0EDdGopAwB9NwMQIANCADcDIANAIAMpAyAgAykDKFQEQCADAn4gAykDKCADKQMgfSADKAI0KAIAIAMpAxinQQR0aikDCCADKQMQfVQEQCADKQMoIAMpAyB9DAELIAMoAjQoAgAgAykDGKdBBHRqKQMIIAMpAxB9CzcDCCADKAIwIAMpAyCnaiADKAI0KAIAIAMpAxinQQR0aigCACADKQMQp2ogAykDCKcQGhogAykDCCADKAI0KAIAIAMpAxinQQR0aikDCCADKQMQfVEEQCADIAMpAxhCAXw3AxgLIAMgAykDCCADKQMgfDcDICADQgA3AxAMAQsLIAMoAjQiACADKQMgIAApAzh8NwM4IAMoAjQgAykDGDcDQCADIAMpAyA3AzgLIAMpAzghAiADQUBrJAAgAguuBAEBfyMAQUBqIgMkACADIAA2AjggAyABNwMwIAMgAjYCLAJAIAMpAzBQBEAgA0EAQgBBASADKAIsEE42AjwMAQsgAykDMCADKAI4KQMwVgRAIAMoAixBEkEAEBUgA0EANgI8DAELIAMoAjgoAigEQCADKAIsQR1BABAVIANBADYCPAwBCyADIAMoAjggAykDMBC7ATcDICADIAMpAzAgAygCOCgCBCADKQMgp0EDdGopAwB9NwMYIAMpAxhQBEAgAyADKQMgQn98NwMgIAMgAygCOCgCACADKQMgp0EEdGopAwg3AxgLIAMgAygCOCgCACADKQMgp0EEdGopAwggAykDGH03AxAgAykDECADKQMwVgRAIAMoAixBHEEAEBUgA0EANgI8DAELIAMgAygCOCgCACADKQMgQgF8QQAgAygCLBBOIgA2AgwgAEUEQCADQQA2AjwMAQsgAygCDCgCACADKAIMKQMIQgF9p0EEdGogAykDGDcDCCADKAIMKAIEIAMoAgwpAwinQQN0aiADKQMwNwMAIAMoAgwgAykDMDcDMCADKAIMAn4gAygCOCkDGCADKAIMKQMIQgF9VARAIAMoAjgpAxgMAQsgAygCDCkDCEIBfQs3AxggAygCOCADKAIMNgIoIAMoAgwgAygCODYCKCADKAI4IAMoAgwpAwg3AyAgAygCDCADKQMgQgF8NwMgIAMgAygCDDYCPAsgAygCPCEAIANBQGskACAAC8gJAQF/IwBB8ABrIgQkACAEIAA2AmQgBCABNgJgIAQgAjcDWCAEIAM2AlQgBCAEKAJkNgJQAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAEKAJUDhQGBwIMBAUKDwADCRELEA4IEgESDRILQQBCAEEAIAQoAlAQTiEAIAQoAlAgADYCFCAARQRAIARCfzcDaAwTCyAEKAJQKAIUQgA3AzggBCgCUCgCFEIANwNAIARCADcDaAwSCyAEKAJQKAIQIAQpA1ggBCgCUBD0AiEAIAQoAlAgADYCFCAARQRAIARCfzcDaAwSCyAEKAJQKAIUIAQpA1g3AzggBCgCUCgCFCAEKAJQKAIUKQMINwNAIARCADcDaAwRCyAEQgA3A2gMEAsgBCgCUCgCEBA0IAQoAlAgBCgCUCgCFDYCECAEKAJQQQA2AhQgBEIANwNoDA8LIAQgBCgCUCAEKAJgIAQpA1gQQjcDaAwOCyAEKAJQKAIQEDQgBCgCUCgCFBA0IAQoAlAQFiAEQgA3A2gMDQsgBCgCUCgCEEIANwM4IAQoAlAoAhBCADcDQCAEQgA3A2gMDAsgBCkDWEL///////////8AVgRAIAQoAlBBEkEAEBUgBEJ/NwNoDAwLIAQgBCgCUCgCECAEKAJgIAQpA1gQ8wI3A2gMCwsgBEEAQgBBACAEKAJQEE42AkwgBCgCTEUEQCAEQn83A2gMCwsgBCgCUCgCEBA0IAQoAlAgBCgCTDYCECAEQgA3A2gMCgsgBCgCUCgCFBA0IAQoAlBBADYCFCAEQgA3A2gMCQsgBCAEKAJQKAIQIAQoAmAgBCkDWCAEKAJQELwBrDcDaAwICyAEIAQoAlAoAhQgBCgCYCAEKQNYIAQoAlAQvAGsNwNoDAcLIAQpA1hCOFQEQCAEKAJQQRJBABAVIARCfzcDaAwHCyAEIAQoAmA2AkggBCgCSBA8IAQoAkggBCgCUCgCDDYCKCAEKAJIIAQoAlAoAhApAzA3AxggBCgCSCAEKAJIKQMYNwMgIAQoAkhBADsBMCAEKAJIQQA7ATIgBCgCSELcATcDACAEQjg3A2gMBgsgBCgCUCAEKAJgKAIANgIMIARCADcDaAwFCyAEQX82AkAgBEETNgI8IARBCzYCOCAEQQ02AjQgBEEMNgIwIARBCjYCLCAEQQ82AiggBEEJNgIkIARBETYCICAEQQg2AhwgBEEHNgIYIARBBjYCFCAEQQU2AhAgBEEENgIMIARBAzYCCCAEQQI2AgQgBEEBNgIAIARBACAEEDc3A2gMBAsgBCgCUCgCECkDOEL///////////8AVgRAIAQoAlBBHkE9EBUgBEJ/NwNoDAQLIAQgBCgCUCgCECkDODcDaAwDCyAEKAJQKAIUKQM4Qv///////////wBWBEAgBCgCUEEeQT0QFSAEQn83A2gMAwsgBCAEKAJQKAIUKQM4NwNoDAILIAQpA1hC////////////AFYEQCAEKAJQQRJBABAVIARCfzcDaAwCCyAEIAQoAlAoAhQgBCgCYCAEKQNYIAQoAlAQ8gI3A2gMAQsgBCgCUEEcQQAQFSAEQn83A2gLIAQpA2ghAiAEQfAAaiQAIAILeQEBfyMAQRBrIgEkACABIAA2AggCQCABKAIIKAIkQQFGBEAgASgCCEEMakESQQAQFSABQX82AgwMAQsgASgCCEEAQgBBCBAiQgBTBEAgAUF/NgIMDAELIAEoAghBATYCJCABQQA2AgwLIAEoAgwhACABQRBqJAAgAAuDAQEBfyMAQRBrIgIkACACIAA2AgggAiABNwMAAkAgAigCCCgCJEEBRgRAIAIoAghBDGpBEkEAEBUgAkF/NgIMDAELIAIoAghBACACKQMAQREQIkIAUwRAIAJBfzYCDAwBCyACKAIIQQE2AiQgAkEANgIMCyACKAIMIQAgAkEQaiQAIAALWwEBfyMAQSBrIgMkACADIAA2AhwgAyABOQMQIAMgAjkDCCADKAIcBEAgAygCHCADKwMQOQMgIAMoAhwgAysDCDkDKCADKAIcRAAAAAAAAAAAEFgLIANBIGokAAtYAQF/IwBBEGsiASQAIAEgADYCDCABKAIMBEAgASgCDEQAAAAAAAAAADkDGCABKAIMKAIARAAAAAAAAAAAIAEoAgwoAgwgASgCDCgCBBEaAAsgAUEQaiQAC0gBAX8jAEEQayIBJAAgASAANgIMIAEoAgwEQCABKAIMKAIIBEAgASgCDCgCDCABKAIMKAIIEQMACyABKAIMEBYLIAFBEGokAAsrAQF/IwBBEGsiASQAIAEgADYCDCABKAIMRAAAAAAAAPA/EFggAUEQaiQAC5wCAgF/AXwjAEEgayIBIAA3AxAgASABKQMQukQAAAAAAADoP6M5AwgCQCABKwMIRAAA4P///+9BZARAIAFBfzYCBAwBCyABAn8gASsDCCICRAAAAAAAAPBBYyACRAAAAAAAAAAAZnEEQCACqwwBC0EACzYCBAsCQCABKAIEQYCAgIB4SwRAIAFBgICAgHg2AhwMAQsgASABKAIEQX9qNgIEIAEgASgCBCABKAIEQQF2cjYCBCABIAEoAgQgASgCBEECdnI2AgQgASABKAIEIAEoAgRBBHZyNgIEIAEgASgCBCABKAIEQQh2cjYCBCABIAEoAgQgASgCBEEQdnI2AgQgASABKAIEQQFqNgIEIAEgASgCBDYCHAsgASgCHAuTAQEBfyMAQSBrIgMkACADIAA2AhggAyABNwMQIAMgAjYCDAJAIAMpAxBQBEAgA0EBOgAfDAELIAMgAykDEBD8AjYCCCADKAIIIAMoAhgoAgBNBEAgA0EBOgAfDAELIAMoAhggAygCCCADKAIMEFpBAXFFBEAgA0EAOgAfDAELIANBAToAHwsgAy0AHxogA0EgaiQAC7MCAgF/AX4jAEEwayIEJAAgBCAANgIkIAQgATYCICAEIAI2AhwgBCADNgIYAkACQCAEKAIkBEAgBCgCIA0BCyAEKAIYQRJBABAVIARCfzcDKAwBCyAEKAIkKQMIQgBWBEAgBCAEKAIgEHw2AhQgBCAEKAIUIAQoAiQoAgBwNgIQIAQgBCgCJCgCECAEKAIQQQJ0aigCADYCDANAAkAgBCgCDEUNACAEKAIgIAQoAgwoAgAQWwRAIAQgBCgCDCgCGDYCDAwCBSAEKAIcQQhxBEAgBCgCDCkDCEJ/UgRAIAQgBCgCDCkDCDcDKAwGCwwCCyAEKAIMKQMQQn9SBEAgBCAEKAIMKQMQNwMoDAULCwsLCyAEKAIYQQlBABAVIARCfzcDKAsgBCkDKCEFIARBMGokACAFC0YBAX8jAEEQayIBJAAgASAANgIMA0AgASgCDARAIAEgASgCDCgCGDYCCCABKAIMEBYgASABKAIINgIMDAELCyABQRBqJAALlwEBAX8jAEEQayIBJAAgASAANgIMIAEoAgwEQCABKAIMKAIQBEAgAUEANgIIA0AgASgCCCABKAIMKAIASQRAIAEoAgwoAhAgASgCCEECdGooAgAEQCABKAIMKAIQIAEoAghBAnRqKAIAEP8CCyABIAEoAghBAWo2AggMAQsLIAEoAgwoAhAQFgsgASgCDBAWCyABQRBqJAALdAEBfyMAQRBrIgEkACABIAA2AgggAUEYEBkiADYCBAJAIABFBEAgASgCCEEOQQAQFSABQQA2AgwMAQsgASgCBEEANgIAIAEoAgRCADcDCCABKAIEQQA2AhAgASABKAIENgIMCyABKAIMIQAgAUEQaiQAIAALnwEBAX8jAEEQayICIAA2AgwgAiABNgIIIAJBADYCBANAIAIoAgQgAigCDCgCREkEQCACKAIMKAJMIAIoAgRBAnRqKAIAIAIoAghGBEAgAigCDCgCTCACKAIEQQJ0aiACKAIMKAJMIAIoAgwoAkRBAWtBAnRqKAIANgIAIAIoAgwiACAAKAJEQX9qNgJEBSACIAIoAgRBAWo2AgQMAgsLCwtUAQF/IwBBEGsiASQAIAEgADYCDCABKAIMQQE6ACgCfyMAQRBrIgAgASgCDEEMajYCDCAAKAIMKAIARQsEQCABKAIMQQxqQQhBABAVCyABQRBqJAAL4QEBA38jAEEgayICJAAgAiAANgIYIAIgATYCFAJAIAIoAhgoAkRBAWogAigCGCgCSE8EQCACIAIoAhgoAkhBCmo2AgwgAiACKAIYKAJMIAIoAgxBAnQQTTYCECACKAIQRQRAIAIoAhhBCGpBDkEAEBUgAkF/NgIcDAILIAIoAhggAigCDDYCSCACKAIYIAIoAhA2AkwLIAIoAhQhASACKAIYKAJMIQMgAigCGCIEKAJEIQAgBCAAQQFqNgJEIABBAnQgA2ogATYCACACQQA2AhwLIAIoAhwhACACQSBqJAAgAAtAAQF/IwBBEGsiAiQAIAIgADYCDCACIAE2AgggAigCDCACKAIINgIsIAIoAgggAigCDBCEAyEAIAJBEGokACAAC7cJAQF/IwBB4MAAayIFJAAgBSAANgLUQCAFIAE2AtBAIAUgAjYCzEAgBSADNwPAQCAFIAQ2ArxAIAUgBSgC0EA2ArhAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAUoArxADhEDBAAGAQIFCQoKCgoKCggKBwoLIAVCADcD2EAMCgsgBSAFKAK4QEHkAGogBSgCzEAgBSkDwEAQQjcD2EAMCQsgBSgCuEAQFiAFQgA3A9hADAgLIAUoArhAKAIQBEAgBSAFKAK4QCgCECAFKAK4QCkDGCAFKAK4QEHkAGoQfyIDNwOYQCADUARAIAVCfzcD2EAMCQsgBSgCuEApAwggBSkDmEB8IAUoArhAKQMIVARAIAUoArhAQeQAakEVQQAQFSAFQn83A9hADAkLIAUoArhAIgAgBSkDmEAgACkDAHw3AwAgBSgCuEAiACAFKQOYQCAAKQMIfDcDCCAFKAK4QEEANgIQCyAFKAK4QC0AeEEBcUUEQCAFQgA3A6hAA0AgBSkDqEAgBSgCuEApAwBUBEAgBQJ+QoDAACAFKAK4QCkDACAFKQOoQH1CgMAAVg0AGiAFKAK4QCkDACAFKQOoQH0LNwOgQCAFIAUoAtRAIAVBEGogBSkDoEAQLyIDNwOwQCADQgBTBEAgBSgCuEBB5ABqIAUoAtRAEBggBUJ/NwPYQAwLCyAFKQOwQFAEQCAFKAK4QEHkAGpBEUEAEBUgBUJ/NwPYQAwLBSAFIAUpA7BAIAUpA6hAfDcDqEAMAgsACwsLIAUoArhAIAUoArhAKQMANwMgIAVCADcD2EAMBwsgBSkDwEAgBSgCuEApAwggBSgCuEApAyB9VgRAIAUgBSgCuEApAwggBSgCuEApAyB9NwPAQAsgBSkDwEBQBEAgBUIANwPYQAwHCyAFKAK4QC0AeEEBcQRAIAUoAtRAIAUoArhAKQMgQQAQKEEASARAIAUoArhAQeQAaiAFKALUQBAYIAVCfzcD2EAMCAsLIAUgBSgC1EAgBSgCzEAgBSkDwEAQLyIDNwOwQCADQgBTBEAgBSgCuEBB5ABqQRFBABAVIAVCfzcD2EAMBwsgBSgCuEAiACAFKQOwQCAAKQMgfDcDICAFKQOwQFAEQCAFKAK4QCkDICAFKAK4QCkDCFQEQCAFKAK4QEHkAGpBEUEAEBUgBUJ/NwPYQAwICwsgBSAFKQOwQDcD2EAMBgsgBSAFKAK4QCkDICAFKAK4QCkDAH0gBSgCuEApAwggBSgCuEApAwB9IAUoAsxAIAUpA8BAIAUoArhAQeQAahCNATcDCCAFKQMIQgBTBEAgBUJ/NwPYQAwGCyAFKAK4QCAFKQMIIAUoArhAKQMAfDcDICAFQgA3A9hADAULIAUgBSgCzEA2AgQgBSgCBCAFKAK4QEEoaiAFKAK4QEHkAGoQkQFBAEgEQCAFQn83A9hADAULIAVCADcD2EAMBAsgBSAFKAK4QCwAYKw3A9hADAMLIAUgBSgCuEApA3A3A9hADAILIAUgBSgCuEApAyAgBSgCuEApAwB9NwPYQAwBCyAFKAK4QEHkAGpBHEEAEBUgBUJ/NwPYQAsgBSkD2EAhAyAFQeDAAGokACADC1UBAX8jAEEgayIEJAAgBCAANgIcIAQgATYCGCAEIAI3AxAgBCADNwMIIAQoAhggBCkDECAEKQMIQQBBAEEAQgAgBCgCHEEIahB+IQAgBEEgaiQAIAALtAMBAX8jAEEwayIDJAAgAyAANgIkIAMgATcDGCADIAI2AhQgAyADKAIkIAMpAxggAygCFBB/IgE3AwgCQCABUARAIANCADcDKAwBCyADIAMoAiQoAkAgAykDGKdBBHRqKAIANgIEAkAgAykDCCADKAIEKQMgfCADKQMIWgRAIAMpAwggAygCBCkDIHxC////////////AFgNAQsgAygCFEEEQRYQFSADQgA3AygMAQsgAyADKAIEKQMgIAMpAwh8NwMIIAMoAgQvAQxBCHEEQCADKAIkKAIAIAMpAwhBABAoQQBIBEAgAygCFCADKAIkKAIAEBggA0IANwMoDAILIAMoAiQoAgAgA0IEEC9CBFIEQCADKAIUIAMoAiQoAgAQGCADQgA3AygMAgsgAygAAEHQlp3AAEYEQCADIAMpAwhCBHw3AwgLIAMgAykDCEIMfDcDCCADKAIEQQAQgAFBAXEEQCADIAMpAwhCCHw3AwgLIAMpAwhC////////////AFYEQCADKAIUQQRBFhAVIANCADcDKAwCCwsgAyADKQMINwMoCyADKQMoIQEgA0EwaiQAIAELBgBBtJwBC/8BAQF/IwBBEGsiAiQAIAIgADYCDCACIAE6AAsCQCACKAIMKAIQQQ5GBEAgAigCDEE/OwEKDAELIAIoAgwoAhBBDEYEQCACKAIMQS47AQoMAQsCQCACLQALQQFxRQRAIAIoAgxBABCAAUEBcUUNAQsgAigCDEEtOwEKDAELAkAgAigCDCgCEEEIRwRAIAIoAgwvAVJBAUcNAQsgAigCDEEUOwEKDAELIAIgAigCDCgCMBBSIgA7AQggAEH//wNxQQBKBEAgAigCDCgCMCgCACACLwEIQQFrai0AAEEvRgRAIAIoAgxBFDsBCgwCCwsgAigCDEEKOwEKCyACQRBqJAALwAIBAX8jAEEwayICJAAgAiAANgIoIAJBgAI7ASYgAiABNgIgIAIgAi8BJkGAAnFBAEc6ABsgAkEeQS4gAi0AG0EBcRs2AhwCQCACKAIoQRpBHCACLQAbQQFxG6xBARAoQQBIBEAgAigCICACKAIoEBggAkF/NgIsDAELIAIgAigCKEEEQQYgAi0AG0EBcRusIAJBDmogAigCIBBBIgA2AgggAEUEQCACQX82AiwMAQsgAkEANgIUA0AgAigCFEECQQMgAi0AG0EBcRtIBEAgAiACKAIIEB5B//8DcSACKAIcajYCHCACIAIoAhRBAWo2AhQMAQsLIAIoAggQSEEBcUUEQCACKAIgQRRBABAVIAIoAggQFyACQX82AiwMAQsgAigCCBAXIAIgAigCHDYCLAsgAigCLCEAIAJBMGokACAAC/8DAQF/IwBBIGsiAiQAIAIgADYCGCACIAE2AhQCQCACKAIYKAIQQeMARwRAIAJBAToAHwwBCyACIAIoAhgoAjQgAkESakGBsgJBgAZBABBfNgIIAkAgAigCCARAIAIvARJBB04NAQsgAigCFEEVQQAQFSACQQA6AB8MAQsgAiACKAIIIAIvARKtECoiADYCDCAARQRAIAIoAhRBFEEAEBUgAkEAOgAfDAELIAJBAToABwJAAkACQCACKAIMEB5Bf2oOAgIAAQsgAigCGCkDKEIUVARAIAJBADoABwsMAQsgAigCFEEYQQAQFSACKAIMEBcgAkEAOgAfDAELIAIoAgxCAhAfLwAAQcGKAUcEQCACKAIUQRhBABAVIAIoAgwQFyACQQA6AB8MAQsCQAJAAkACQAJAIAIoAgwQiwFBf2oOAwABAgMLIAJBgQI7AQQMAwsgAkGCAjsBBAwCCyACQYMCOwEEDAELIAIoAhRBGEEAEBUgAigCDBAXIAJBADoAHwwBCyACLwESQQdHBEAgAigCFEEVQQAQFSACKAIMEBcgAkEAOgAfDAELIAIoAhggAi0AB0EBcToABiACKAIYIAIvAQQ7AVIgAigCDBAeQf//A3EhACACKAIYIAA2AhAgAigCDBAXIAJBAToAHwsgAi0AH0EBcSEAIAJBIGokACAAC7kBAQF/IwBBMGsiAiQAIAIgADsBLiACIAE7ASwgAkIANwIAIAJBADYCKCACQgA3AiAgAkIANwIYIAJCADcCECACQgA3AgggAkEANgIgIAIgAi8BLEEJdUHQAGo2AhQgAiACLwEsQQV1QQ9xQQFrNgIQIAIgAi8BLEEfcTYCDCACIAIvAS5BC3U2AgggAiACLwEuQQV1QT9xNgIEIAIgAi8BLkEBdEE+cTYCACACEAwhACACQTBqJAAgAAtMAQJ/IwBBEGsiACQAIABB2AAQGSIBNgIIAkAgAUUEQCAAQQA2AgwMAQsgACgCCBBdIAAgACgCCDYCDAsgACgCDCEBIABBEGokACABCwcAIAAvATAL4AgBAX8jAEHAAWsiAyQAIAMgADYCtAEgAyABNgKwASADIAI3A6gBIAMgAygCtAEoAgAQNSICNwMgAkAgAkIAUwRAIAMoArQBQQhqIAMoArQBKAIAEBggA0J/NwO4AQwBCyADIAMpAyA3A6ABIANBADoAFyADQgA3AxgDQCADKQMYIAMpA6gBVARAIAMgAygCtAEoAkAgAygCsAEgAykDGKdBA3RqKQMAp0EEdGo2AgwgAyADKAK0AQJ/IAMoAgwoAgQEQCADKAIMKAIEDAELIAMoAgwoAgALQYAEEF4iADYCECAAQQBIBEAgA0J/NwO4AQwDCyADKAIQBEAgA0EBOgAXCyADIAMpAxhCAXw3AxgMAQsLIAMgAygCtAEoAgAQNSICNwMgIAJCAFMEQCADKAK0AUEIaiADKAK0ASgCABAYIANCfzcDuAEMAQsgAyADKQMgIAMpA6ABfTcDmAECQCADKQOgAUL/////D1gEQCADKQOoAUL//wNYDQELIANBAToAFwsgAyADQTBqQuIAECoiADYCLCAARQRAIAMoArQBQQhqQQ5BABAVIANCfzcDuAEMAQsgAy0AF0EBcQRAIAMoAixBttMAQQQQQCADKAIsQiwQLiADKAIsQS0QICADKAIsQS0QICADKAIsQQAQISADKAIsQQAQISADKAIsIAMpA6gBEC4gAygCLCADKQOoARAuIAMoAiwgAykDmAEQLiADKAIsIAMpA6ABEC4gAygCLEG70wBBBBBAIAMoAixBABAhIAMoAiwgAykDoAEgAykDmAF8EC4gAygCLEEBECELIAMoAixBwNMAQQQQQCADKAIsQQAQISADKAIsAn5C//8DIAMpA6gBQv//A1oNABogAykDqAELp0H//wNxECAgAygCLAJ+Qv//AyADKQOoAUL//wNaDQAaIAMpA6gBC6dB//8DcRAgIAMoAiwCf0F/IAMpA5gBQv////8PWg0AGiADKQOYAacLECEgAygCLAJ/QX8gAykDoAFC/////w9aDQAaIAMpA6ABpwsQISADAn8gAygCtAEtAChBAXEEQCADKAK0ASgCJAwBCyADKAK0ASgCIAs2ApQBIAMoAiwCfyADKAKUAQRAIAMoApQBLwEEDAELQQALQf//A3EQIAJ/IwBBEGsiACADKAIsNgIMIAAoAgwtAABBAXFFCwRAIAMoArQBQQhqQRRBABAVIAMoAiwQFyADQn83A7gBDAELIAMoArQBAn8jAEEQayIAIAMoAiw2AgwgACgCDCgCBAsCfiMAQRBrIgAgAygCLDYCDAJ+IAAoAgwtAABBAXEEQCAAKAIMKQMQDAELQgALCxA2QQBIBEAgAygCLBAXIANCfzcDuAEMAQsgAygCLBAXIAMoApQBBEAgAygCtAEgAygClAEoAgAgAygClAEvAQStEDZBAEgEQCADQn83A7gBDAILCyADIAMpA5gBNwO4AQsgAykDuAEhAiADQcABaiQAIAILBwAgACgCIAsIAEEBQTgQewsDAAELC/KNAScAQYAIC5QFTm8gZXJyb3IATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZABSZW5hbWluZyB0ZW1wb3JhcnkgZmlsZSBmYWlsZWQAQ2xvc2luZyB6aXAgYXJjaGl2ZSBmYWlsZWQAU2VlayBlcnJvcgBSZWFkIGVycm9yAFdyaXRlIGVycm9yAENSQyBlcnJvcgBDb250YWluaW5nIHppcCBhcmNoaXZlIHdhcyBjbG9zZWQATm8gc3VjaCBmaWxlAEZpbGUgYWxyZWFkeSBleGlzdHMAQ2FuJ3Qgb3BlbiBmaWxlAEZhaWx1cmUgdG8gY3JlYXRlIHRlbXBvcmFyeSBmaWxlAFpsaWIgZXJyb3IATWFsbG9jIGZhaWx1cmUARW50cnkgaGFzIGJlZW4gY2hhbmdlZABDb21wcmVzc2lvbiBtZXRob2Qgbm90IHN1cHBvcnRlZABQcmVtYXR1cmUgZW5kIG9mIGZpbGUASW52YWxpZCBhcmd1bWVudABOb3QgYSB6aXAgYXJjaGl2ZQBJbnRlcm5hbCBlcnJvcgBaaXAgYXJjaGl2ZSBpbmNvbnNpc3RlbnQAQ2FuJ3QgcmVtb3ZlIGZpbGUARW50cnkgaGFzIGJlZW4gZGVsZXRlZABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAFJlYWQtb25seSBhcmNoaXZlAE5vIHBhc3N3b3JkIHByb3ZpZGVkAFdyb25nIHBhc3N3b3JkIHByb3ZpZGVkAE9wZXJhdGlvbiBub3Qgc3VwcG9ydGVkAFJlc291cmNlIHN0aWxsIGluIHVzZQBUZWxsIGVycm9yAENvbXByZXNzZWQgZGF0YSBpbnZhbGlkAEGhDQuAAQQAAAkEAAAvBAAATgQAAGkEAAB0BAAAfwQAAIsEAACVBAAAtwQAAMQEAADYBAAA6AQAAAkFAAAUBQAAIwUAADoFAABbBQAAcQUAAIIFAACUBQAAowUAALwFAADOBQAA5QUAAAUGAAAXBgAALAYAAEQGAABcBgAAcgYAAH0GAAAgAEG4DgsRAQAAAAEAAAABAAAAAQAAAAEAQdwOCwkBAAAAAQAAAAIAQYgPCwEBAEGoDwsB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CAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkAswEJAHMACQBzAQkA8wAJAPMBCQALAAkACwEJAIsACQCLAQkASwAJAEsBCQDLAAkAywEJACsACQArAQkAqwAJAKsBCQBrAAkAawEJAOsACQDrAQkAGwAJABsBCQCbAAkAmwEJAFsACQBbAQkA2wAJANsBCQA7AAkAOwEJALsACQC7AQkAewAJAHsBCQD7AAkA+wEJAAcACQAHAQkAhwAJAIcBCQBHAAkARwEJAMcACQDHAQkAJwAJACcBCQCnAAkApwEJAGcACQBnAQkA5wAJAOcBCQAXAAkAFwEJAJcACQCXAQkAVwAJAFcBCQDXAAkA1wEJADcACQA3AQkAtwAJALcBCQB3AAkAdwEJAPcACQD3AQkADwAJAA8BCQCPAAkAjwEJAE8ACQBPAQkAzwAJAM8BCQAvAAkALwEJAK8ACQCvAQkAbwAJAG8BCQDvAAkA7wEJAB8ACQAfAQkAnwAJAJ8BCQBfAAkAXwEJAN8ACQDfAQkAPwAJAD8BCQC/AAkAvwEJAH8ACQB/AQkA/wAJAP8BCQAAAAcAQAAHACAABwBgAAcAEAAHAFAABwAwAAcAcAAHAAgA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cnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBwb3J0ZWQgYnkgcHJvdG9jb2wAQWRkcmVzcyBub3QgYXZhaWxhYmxlAE5ldHdvcmsgaXMgZG93bgBOZXR3b3JrIHVucmVhY2hhYmxlAENvbm5lY3Rpb24gcmVzZXQgYnkgbmV0d29yawBDb25uZWN0aW9uIGFib3J0ZWQATm8gYnVmZmVyIHNwYWNlIGF2YWlsYWJsZQBTb2NrZXQgaXMgY29ubmVjdGVkAFNvY2tldCBub3QgY29ubmVjdGVkAENhbm5vdCBzZW5kIGFmdGVyIHNvY2tldCBzaHV0ZG93bgBPcGVyYXRpb24gYWxyZWFkeSBpbiBwcm9ncmVzcwBPcGVyYXRpb24gaW4gcHJvZ3Jlc3MAU3RhbGUgZmlsZSBoYW5kbGUAUmVtb3RlIEkvTyBlcnJvcgBRdW90YSBleGNlZWRlZABObyBtZWRpdW0gZm91bmQAV3JvbmcgbWVkaXVtIHR5cGUATm8gZXJyb3IgaW5mb3JtYXRpb24AAFVua25vd24gZXJyb3IgJWQAJXMlcyVzAAA6IAAvcHJvYy9zZWxmL2ZkLwAvZGV2L3VyYW5kb20AcndhACVzLlhYWFhYWAByK2IAcmIAUEsFBgBBkJgBC04KAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAAQAAAAgAAAAQTAAAMEwAQZCaAQsCgFAAQciaAQsJHwAAAGRNAAADAEHkmgELjAEt9FFYz4yxwEb2tcspMQPHBFtwMLRd/SB4f4ua2FkpUGhIiaunVgNs/7fNiD/Ud7QrpaNw8brkqPxBg/3Zb+GKei8tdJYHHw0JXgN2LHD3QKUsp29XQaiqdN+gWGQDSsfEPFOur18YBBWx420ohqsMpL9D8OlQgTlXFlI3/////////////////////w=="; if (!isDataURI(wasmBinaryFile)) { wasmBinaryFile = locateFile(wasmBinaryFile); } function getBinary() { try { if (wasmBinary) { return new Uint8Array(wasmBinary); } var binary = tryParseAsDataURI(wasmBinaryFile); if (binary) { return binary; } if (readBinary) { return readBinary(wasmBinaryFile); } 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 createWasm() { var info = { a: asmLibraryArg }; function receiveInstance(instance, module) { var exports = instance.exports; Module["asm"] = exports; removeRunDependency("wasm-instantiate"); } addRunDependency("wasm-instantiate"); function instantiateSync() { var instance; var module; var binary; try { binary = getBinary(); 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.indexOf("imported Memory") >= 0 || str.indexOf("memory import") >= 0 ) { 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; } receiveInstance(instance, module); } if (Module["instantiateWasm"]) { try { var exports = Module["instantiateWasm"](info, receiveInstance); return exports; } catch (e) { err("Module.instantiateWasm callback failed with error: " + e); return false; } } instantiateSync(); return Module["asm"]; } var tempDouble; var tempI64; __ATINIT__.push({ func: function() { ___wasm_call_ctors(); } }); 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 demangle(func) { return func; } function demangleAll(text) { var regex = /\b_Z[\w\d_]+/g; return text.replace(regex, function(x) { var y = demangle(x); return x === y ? x : y + " [" + x + "]"; }); } function jsStackTrace() { var error = new Error(); if (!error.stack) { try { throw new Error(); } catch (e) { error = e; } if (!error.stack) { return "(no stack trace available)"; } } return error.stack.toString(); } function stackTrace() { var js = jsStackTrace(); if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); return demangleAll(js); } 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 setErrNo(value) { HEAP32[___errno_location() >> 2] = value; return value; } 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().indexOf("EOF") != -1) 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 = []; } } } }; 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; } return node; }, getFileDataAsRegularArray: function(node) { if (node.contents && node.contents.subarray) { var arr = []; for (var i = 0; i < node.usedBytes; ++i) arr.push(node.contents[i]); return arr; } return node.contents; }, 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); return; }, resizeFileStorage: function(node, newSize) { if (node.usedBytes == newSize) return; if (newSize == 0) { node.contents = null; node.usedBytes = 0; return; } if (!node.contents || node.contents.subarray) { 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; return; } if (!node.contents) node.contents = []; if (node.contents.length > newSize) node.contents.length = newSize; else while (node.contents.length < newSize) node.contents.push(0); 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.name = new_name; new_dir.contents[new_name] = old_node; old_node.parent = new_dir; }, unlink: function(parent, name) { delete parent.contents[name]; }, 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]; }, 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) { assert(address === 0); 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 = FS.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"], 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) { assert(address === 0); if (!FS.isFile(stream.node.mode)) { throw new FS.ErrnoError(43); } var ptr = FS.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() { 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() { throw new FS.ErrnoError(ERRNO_CODES.ENODEV); }, msync: function() { 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, handleFSError: function(e) { if (!(e instanceof FS.ErrnoError)) throw e + " : " + stackTrace(); return setErrNo(e.errno); }, 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, rs: 1052672, "r+": 2, w: 577, wx: 705, xw: 705, "w+": 578, "wx+": 706, "xw+": 706, a: 1089, ax: 1217, xa: 1217, "a+": 1090, "ax+": 1218, "xa+": 1218 }, 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.indexOf("r") !== -1 && !(node.mode & 292)) { return 2; } else if (perms.indexOf("w") !== -1 && !(node.mode & 146)) { return 2; } else if (perms.indexOf("x") !== -1 && !(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.indexOf(current.mount) !== -1) { 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 || "r"; 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 || "w"; 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; if ( typeof crypto === "object" && typeof crypto["getRandomValues"] === "function" ) { var randomBuffer = new Uint8Array(1); random_device = function() { crypto.getRandomValues(randomBuffer); return randomBuffer[0]; }; } else if (ENVIRONMENT_IS_NODE) { try { var crypto_module = __webpack_require__(417); random_device = function() { return crypto_module["randomBytes"](1)[0]; }; } catch (e) {} } else { } if (!random_device) { random_device = function() { abort("random_device"); }; } 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"); 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", "r"); var stdout = FS.open("/dev/stdout", "w"); var stderr = FS.open("/dev/stderr", "w"); }, 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; }, joinPath: function(parts, forceRelative) { var path = PATH.join.apply(null, parts); if (forceRelative && path[0] == "/") path = path.substr(1); return path; }, absolutePath: function(relative, base) { return PATH_FS.resolve(base, relative); }, standardizePath: function(path) { return PATH.normalize(path); }, findObject: function(path, dontResolveLastLink) { var ret = FS.analyzePath(path, dontResolveLastLink); if (ret.exists) { return ret.object; } else { setErrNo(ret.error); 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; }, createFolder: function(parent, name, canRead, canWrite) { var path = PATH.join2( typeof parent === "string" ? parent : FS.getPath(parent), name ); var mode = FS.getMode(canRead, canWrite); return FS.mkdir(path, mode); }, 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, "w"); 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); }, createLink: function(parent, name, target, canRead, canWrite) { var path = PATH.join2( typeof parent === "string" ? parent : FS.getPath(parent), name ); return FS.symlink(target, path); }, forceLoadFile: function(obj) { if (obj.isDevice || obj.isFolder || obj.link || obj.contents) return true; var success = 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) { success = false; } } else { throw new Error("Cannot load without read() or XMLHttpRequest."); } if (!success) setErrNo(29); return success; }, 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() { if (!FS.forceLoadFile(node)) { throw new FS.ErrnoError(29); } return fn.apply(null, arguments); }; }); stream_ops.read = function stream_ops_read( stream, buffer, offset, length, position ) { if (!FS.forceLoadFile(node)) { throw new FS.ErrnoError(29); } 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; }, mmapAlloc: function(size) { var alignedSize = alignMemory(size, 16384); var ptr = _malloc(alignedSize); while (size < alignedSize) HEAP8[ptr + size++] = 0; return ptr; } }; var SYSCALLS = { mappings: {}, DEFAULT_POLLMASK: 5, umask: 511, calculateAt: function(dirfd, path) { if (path[0] !== "/") { var dir; if (dirfd === -100) { dir = FS.cwd(); } else { var dirstream = FS.getStream(dirfd); if (!dirstream) throw new FS.ErrnoError(8); dir = dirstream.path; } path = PATH.join2(dir, path); } return 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 ___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 = SYSCALLS.get(); 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_read(fd, buf, count) { try { var stream = SYSCALLS.getStreamFromFD(fd); return FS.read(stream, HEAP8, buf, count); } 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_get_heap_size() { return HEAPU8.length; } 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) { requestedSize = requestedSize >>> 0; var oldSize = _emscripten_get_heap_size(); var maxHeapSize = 2147483648; if (requestedSize > maxHeapSize) { return false; } var minHeapSize = 16777216; 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(minHeapSize, 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($i) { setTempRet0($i | 0); } 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; HEAP32[__get_timezone() >> 2] = new Date().getTimezoneOffset() * 60; var currentYear = new Date().getFullYear(); var winter = new Date(currentYear, 0, 1); var summer = new Date(currentYear, 6, 1); HEAP32[__get_daylight() >> 2] = Number( winter.getTimezoneOffset() != summer.getTimezoneOffset() ); 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 (summer.getTimezoneOffset() < winter.getTimezoneOffset()) { 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 = { m: ___gmtime_r, b: wasmTable, r: ___sys_chmod, g: ___sys_fcntl64, l: ___sys_fstat64, q: ___sys_ioctl, t: ___sys_open, s: ___sys_read, j: ___sys_rename, u: ___sys_rmdir, e: ___sys_stat64, i: ___sys_unlink, v: _emscripten_memcpy_big, w: _emscripten_resize_heap, h: _fd_close, k: _fd_fdstat_get, p: _fd_read, n: _fd_seek, f: _fd_write, a: wasmMemory, c: _setTempRet0, d: _time, o: _timegm }; var asm = createWasm(); var ___wasm_call_ctors = (Module["___wasm_call_ctors"] = asm["x"]); var _zipstruct_stat = (Module["_zipstruct_stat"] = asm["y"]); var _zipstruct_statS = (Module["_zipstruct_statS"] = asm["z"]); var _zipstruct_stat_name = (Module["_zipstruct_stat_name"] = asm["A"]); var _zipstruct_stat_index = (Module["_zipstruct_stat_index"] = asm["B"]); var _zipstruct_stat_size = (Module["_zipstruct_stat_size"] = asm["C"]); var _zipstruct_stat_mtime = (Module["_zipstruct_stat_mtime"] = asm["D"]); var _zipstruct_error = (Module["_zipstruct_error"] = asm["E"]); var _zipstruct_errorS = (Module["_zipstruct_errorS"] = asm["F"]); var _zipstruct_error_code_zip = (Module["_zipstruct_error_code_zip"] = asm["G"]); var _zipstruct_stat_comp_size = (Module["_zipstruct_stat_comp_size"] = asm["H"]); var _zipstruct_stat_comp_method = (Module["_zipstruct_stat_comp_method"] = asm["I"]); var _zip_close = (Module["_zip_close"] = asm["J"]); var _zip_delete = (Module["_zip_delete"] = asm["K"]); var _zip_dir_add = (Module["_zip_dir_add"] = asm["L"]); var _zip_discard = (Module["_zip_discard"] = asm["M"]); var _zip_error_init_with_code = (Module["_zip_error_init_with_code"] = asm["N"]); var _zip_get_error = (Module["_zip_get_error"] = asm["O"]); var _zip_file_get_error = (Module["_zip_file_get_error"] = asm["P"]); var _zip_error_strerror = (Module["_zip_error_strerror"] = asm["Q"]); var _zip_fclose = (Module["_zip_fclose"] = asm["R"]); var _zip_file_add = (Module["_zip_file_add"] = asm["S"]); var _zip_file_get_external_attributes = (Module[ "_zip_file_get_external_attributes" ] = asm["T"]); var _zip_file_set_external_attributes = (Module[ "_zip_file_set_external_attributes" ] = asm["U"]); var _zip_file_set_mtime = (Module["_zip_file_set_mtime"] = asm["V"]); var _zip_fopen = (Module["_zip_fopen"] = asm["W"]); var _zip_fopen_index = (Module["_zip_fopen_index"] = asm["X"]); var _zip_fread = (Module["_zip_fread"] = asm["Y"]); var _zip_get_name = (Module["_zip_get_name"] = asm["Z"]); var _zip_get_num_entries = (Module["_zip_get_num_entries"] = asm["_"]); var _zip_name_locate = (Module["_zip_name_locate"] = asm["$"]); var _zip_open = (Module["_zip_open"] = asm["aa"]); var _zip_open_from_source = (Module["_zip_open_from_source"] = asm["ba"]); var _zip_set_file_compression = (Module["_zip_set_file_compression"] = asm["ca"]); var _zip_source_buffer = (Module["_zip_source_buffer"] = asm["da"]); var _zip_source_buffer_create = (Module["_zip_source_buffer_create"] = asm["ea"]); var _zip_source_close = (Module["_zip_source_close"] = asm["fa"]); var _zip_source_error = (Module["_zip_source_error"] = asm["ga"]); var _zip_source_free = (Module["_zip_source_free"] = asm["ha"]); var _zip_source_keep = (Module["_zip_source_keep"] = asm["ia"]); var _zip_source_open = (Module["_zip_source_open"] = asm["ja"]); var _zip_source_read = (Module["_zip_source_read"] = asm["ka"]); var _zip_source_seek = (Module["_zip_source_seek"] = asm["la"]); var _zip_source_set_mtime = (Module["_zip_source_set_mtime"] = asm["ma"]); var _zip_source_tell = (Module["_zip_source_tell"] = asm["na"]); var _zip_stat = (Module["_zip_stat"] = asm["oa"]); var _zip_stat_index = (Module["_zip_stat_index"] = asm["pa"]); var _zip_ext_count_symlinks = (Module["_zip_ext_count_symlinks"] = asm["qa"]); var ___errno_location = (Module["___errno_location"] = asm["ra"]); var __get_tzname = (Module["__get_tzname"] = asm["sa"]); var __get_daylight = (Module["__get_daylight"] = asm["ta"]); var __get_timezone = (Module["__get_timezone"] = asm["ua"]); var stackSave = (Module["stackSave"] = asm["va"]); var stackRestore = (Module["stackRestore"] = asm["wa"]); var stackAlloc = (Module["stackAlloc"] = asm["xa"]); var _malloc = (Module["_malloc"] = asm["ya"]); var _free = (Module["_free"] = asm["za"]); 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(); preMain(); 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()(); } } noExitRuntime = true; 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 /******/ if(__webpack_module_cache__[moduleId]) { /******/ return __webpack_module_cache__[moduleId].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) /******/ })(); /******/ /************************************************************************/ /******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // startup /******/ // Load entry module and return exports /******/ return __webpack_require__(936); /******/ })() .default; });