Index: package.json IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP <+>{\n \"name\": \"google-artifactregistry-auth\",\n \"version\": \"3.4.0\",\n \"description\": \"google-artifactregistry-auth is an npm module that allows you to configure npm to interact with npm repositories stored in Artifact Registry.\",\n \"main\": \"./src/main.js\",\n \"repository\": \"GoogleCloudPlatform/artifact-registry-npm-tools\",\n \"author\": \"Google LLC\",\n \"license\": \"Apache-2.0\",\n \"dependencies\": {\n \"google-auth-library\": \"^9.14.0\",\n \"yargs\": \"^17.1.1\"\n },\n \"bin\": {\n \"artifactregistry-auth\": \"./src/main.js\"\n },\n \"devDependencies\": {\n \"mocha\": \"^6.2.0\",\n \"rewire\": \"^5.0.0\"\n },\n \"scripts\": {\n \"test\": \"mocha\"\n },\n \"keywords\": [\n \"google\",\n \"google cloud platform\",\n \"google cloud\",\n \"cloud\",\n \"artifact registry\",\n \"artifact-registry\"\n ]\n}\n Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/package.json b/package.json --- a/package.json (revision 2448c5efdc5a096405e335528513d79c5d2af43f) +++ b/package.json (date 1758940198140) @@ -8,6 +8,7 @@ "license": "Apache-2.0", "dependencies": { "google-auth-library": "^9.14.0", + "js-yaml": "^4.1.0", "yargs": "^17.1.1" }, "bin": { Index: src/main.js IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP <+>#!/usr/bin/env node\n\n// Copyright 2019 Google LLC\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nconst os = require('os');\nconst yargs = require('yargs/yargs')\nconst { hideBin } = require('yargs/helpers')\nconst auth = require('./auth');\nconst { logger } = require('./logger');\nconst update = require('./update');\nconst fs = require('fs');\n\n/**\n * Determine which npmrc file should be the default repo configuration\n * \n * This will determine if a project-level npmrc file exists, otherwise default to the user-level npmrc file\n * \n * return {!Promise}\n */\n async function determineDefaultRepoConfig() {\n try {\n await fs.promises.stat('.npmrc')\n return '.npmrc'\n } catch (e) {\n return `${os.homedir()}/.npmrc`\n }\n}\n\n/**\n * Get credentials and update .npmrc file.\n *\n * Usage:\n * - Add to scripts in package.json:\n * \"scripts\": {\n * \"artifactregistry-auth\": \"google-artifactregistry-auth --repo-config=[./.npmrc] --credential-config=[~/.npmrc]\",\n * ...\n * },\n * - Or run directly $ ./src/main.js --repo-config=[./.npmrc] --credential-config=[~/.npmrc]\n *\n * @return {!Promise}\n */\nasync function main() {\n try {\n const allArgs = yargs(hideBin(process.argv))\n .command('$0 [config]', 'Refresh the tokens for .npmrc config file', (yargs) => {\n yargs.positional('config', {\n type: 'string',\n describe: '(Deprecated) Path to the .npmrc file to update auth tokens',\n })\n })\n .option('repo-config', {\n type: 'string',\n describe: 'Path to the .npmrc file to read registry configs from, will use the project-level npmrc file if it exists, otherwise the user-level npmrc file',\n default: await determineDefaultRepoConfig(),\n })\n .option('credential-config', {\n type: 'string',\n describe: 'Path to the .npmrc file to write credentials to, usually the user-level npmrc file',\n default: `${os.homedir()}/.npmrc`,\n })\n .option('verbose', {\n type: 'boolean',\n describe: 'Set log level to verbose',\n default: false,\n })\n .option('token', {\n type: 'string',\n describe: 'If set, update the .npmrc file with this token rather than the token obtained from ADC or gcloud.',\n default: '',\n })\n .option('allow-all-domains', {\n type: 'boolean',\n describe: 'If set, it allows all registry domains to attach the auth token to.',\n default: false,\n })\n .help()\n .argv;\n\n logger.logVerbose = allArgs.verbose;\n const configPath = allArgs.config;\n var creds = allArgs.token;\n if (creds == '') {\n creds = await auth.getCreds();\n }\n if (configPath) {\n console.warn('Updating project .npmrc inline is deprecated and may no longer be supported\\n'\n + 'in future versions. Run the plugin with `--repo-config` and `--credential-config`.');\n await update.updateConfigFile(configPath, creds);\n } else {\n await update.updateConfigFiles(allArgs.repoConfig, allArgs.credentialConfig, creds, allArgs.allowAllDomains);\n }\n console.log(\"Success!\");\n } catch (err) {\n console.error(err);\n process.exit(1);\n }\n}\n\nmain();\n Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/src/main.js b/src/main.js --- a/src/main.js (revision 2448c5efdc5a096405e335528513d79c5d2af43f) +++ b/src/main.js (date 1758940421439) @@ -21,6 +21,7 @@ const { logger } = require('./logger'); const update = require('./update'); const fs = require('fs'); +const updateYarn = require('./update-yarn'); /** * Determine which npmrc file should be the default repo configuration @@ -38,6 +39,22 @@ } } +/** + * Determine which yarnrc.yml file should be the default repo configuration + * + * This will determine if a project-level yarnrc.yml file exists, otherwise default to the user-level yarnrc.yml file + * + * return {!Promise} + */ +async function determineDefaultYarnRepoConfig() { + try { + await fs.promises.stat('.yarnrc.yml') + return '.yarnrc.yml' + } catch (e) { + return `${os.homedir()}/.yarnrc.yml` + } +} + /** * Get credentials and update .npmrc file. * @@ -70,6 +87,16 @@ describe: 'Path to the .npmrc file to write credentials to, usually the user-level npmrc file', default: `${os.homedir()}/.npmrc`, }) + .option('repo-config-yarn', { + type: 'string', + describe: 'Path to the .yarnrc.yml file to read registry configs from, will use the project-level yarnrc.yml file if it exists, otherwise the user-level yarnrc.yml file', + default: await determineDefaultYarnRepoConfig(), + }) + .option('credential-config-yarn', { + type: 'string', + describe: 'Path to the .yarnrc.yml file to write credentials to, usually the user-level yarnrc.yml file', + default: `${os.homedir()}/.yarnrc.yml`, + }) .option('verbose', { type: 'boolean', describe: 'Set log level to verbose', @@ -99,7 +126,8 @@ + 'in future versions. Run the plugin with `--repo-config` and `--credential-config`.'); await update.updateConfigFile(configPath, creds); } else { - await update.updateConfigFiles(allArgs.repoConfig, allArgs.credentialConfig, creds, allArgs.allowAllDomains); + await update.updateConfigFiles(allArgs.repoConfig, allArgs.credentialConfig, creds, allArgs.allowAllDomains); + await updateYarn.updateYarnConfigFiles(allArgs.repoConfigYarn, allArgs.credentialConfigYarn, creds); } console.log("Success!"); } catch (err) { Index: package-lock.json IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP <+>{\n \"name\": \"google-artifactregistry-auth\",\n \"version\": \"3.4.0\",\n \"lockfileVersion\": 2,\n \"requires\": true,\n \"packages\": {\n \"\": {\n \"name\": \"google-artifactregistry-auth\",\n \"version\": \"3.4.0\",\n \"license\": \"Apache-2.0\",\n \"dependencies\": {\n \"google-auth-library\": \"^9.14.0\",\n \"yargs\": \"^17.1.1\"\n },\n \"bin\": {\n \"artifactregistry-auth\": \"src/main.js\"\n },\n \"devDependencies\": {\n \"mocha\": \"^6.2.0\",\n \"rewire\": \"^5.0.0\"\n }\n },\n \"node_modules/@babel/code-frame\": {\n \"version\": \"7.14.5\",\n \"resolved\": \"https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz\",\n \"integrity\": \"sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==\",\n \"dev\": true,\n \"dependencies\": {\n \"@babel/highlight\": \"^7.14.5\"\n },\n \"engines\": {\n \"node\": \">=6.9.0\"\n }\n },\n \"node_modules/@babel/helper-validator-identifier\": {\n \"version\": \"7.14.8\",\n \"resolved\": \"https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz\",\n \"integrity\": \"sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6.9.0\"\n }\n },\n \"node_modules/@babel/highlight\": {\n \"version\": \"7.14.5\",\n \"resolved\": \"https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz\",\n \"integrity\": \"sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==\",\n \"dev\": true,\n \"dependencies\": {\n \"@babel/helper-validator-identifier\": \"^7.14.5\",\n \"chalk\": \"^2.0.0\",\n \"js-tokens\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=6.9.0\"\n }\n },\n \"node_modules/acorn\": {\n \"version\": \"7.4.1\",\n \"resolved\": \"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz\",\n \"integrity\": \"sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==\",\n \"dev\": true,\n \"bin\": {\n \"acorn\": \"bin/acorn\"\n },\n \"engines\": {\n \"node\": \">=0.4.0\"\n }\n },\n \"node_modules/acorn-jsx\": {\n \"version\": \"5.3.2\",\n \"resolved\": \"https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz\",\n \"integrity\": \"sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==\",\n \"dev\": true,\n \"peerDependencies\": {\n \"acorn\": \"^6.0.0 || ^7.0.0 || ^8.0.0\"\n }\n },\n \"node_modules/agent-base\": {\n \"version\": \"7.1.1\",\n \"resolved\": \"https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz\",\n \"integrity\": \"sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==\",\n \"dependencies\": {\n \"debug\": \"^4.3.4\"\n },\n \"engines\": {\n \"node\": \">= 14\"\n }\n },\n \"node_modules/ajv\": {\n \"version\": \"6.12.6\",\n \"resolved\": \"https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz\",\n \"integrity\": \"sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==\",\n \"dev\": true,\n \"dependencies\": {\n \"fast-deep-equal\": \"^3.1.1\",\n \"fast-json-stable-stringify\": \"^2.0.0\",\n \"json-schema-traverse\": \"^0.4.1\",\n \"uri-js\": \"^4.2.2\"\n },\n \"funding\": {\n \"type\": \"github\",\n \"url\": \"https://github.com/sponsors/epoberezkin\"\n }\n },\n \"node_modules/ansi-colors\": {\n \"version\": \"3.2.3\",\n \"resolved\": \"https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz\",\n \"integrity\": \"sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/ansi-escapes\": {\n \"version\": \"4.3.2\",\n \"resolved\": \"https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz\",\n \"integrity\": \"sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"type-fest\": \"^0.21.3\"\n },\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/ansi-escapes/node_modules/type-fest\": {\n \"version\": \"0.21.3\",\n \"resolved\": \"https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz\",\n \"integrity\": \"sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=10\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/ansi-regex\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz\",\n \"integrity\": \"sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/ansi-styles\": {\n \"version\": \"3.2.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz\",\n \"integrity\": \"sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==\",\n \"dev\": true,\n \"dependencies\": {\n \"color-convert\": \"^1.9.0\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/argparse\": {\n \"version\": \"1.0.10\",\n \"resolved\": \"https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz\",\n \"integrity\": \"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==\",\n \"dev\": true,\n \"dependencies\": {\n \"sprintf-js\": \"~1.0.2\"\n }\n },\n \"node_modules/astral-regex\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz\",\n \"integrity\": \"sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/balanced-match\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz\",\n \"integrity\": \"sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==\",\n \"dev\": true\n },\n \"node_modules/base64-js\": {\n \"version\": \"1.5.1\",\n \"resolved\": \"https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz\",\n \"integrity\": \"sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==\",\n \"funding\": [\n {\n \"type\": \"github\",\n \"url\": \"https://github.com/sponsors/feross\"\n },\n {\n \"type\": \"patreon\",\n \"url\": \"https://www.patreon.com/feross\"\n },\n {\n \"type\": \"consulting\",\n \"url\": \"https://feross.org/support\"\n }\n ]\n },\n \"node_modules/bignumber.js\": {\n \"version\": \"9.1.2\",\n \"resolved\": \"https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz\",\n \"integrity\": \"sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==\",\n \"engines\": {\n \"node\": \"*\"\n }\n },\n \"node_modules/brace-expansion\": {\n \"version\": \"1.1.11\",\n \"resolved\": \"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz\",\n \"integrity\": \"sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==\",\n \"dev\": true,\n \"dependencies\": {\n \"balanced-match\": \"^1.0.0\",\n \"concat-map\": \"0.0.1\"\n }\n },\n \"node_modules/browser-stdout\": {\n \"version\": \"1.3.1\",\n \"resolved\": \"https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz\",\n \"integrity\": \"sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==\",\n \"dev\": true\n },\n \"node_modules/buffer-equal-constant-time\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz\",\n \"integrity\": \"sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==\"\n },\n \"node_modules/call-bind\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz\",\n \"integrity\": \"sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==\",\n \"dev\": true,\n \"dependencies\": {\n \"function-bind\": \"^1.1.1\",\n \"get-intrinsic\": \"^1.0.2\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/callsites\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz\",\n \"integrity\": \"sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/camelcase\": {\n \"version\": \"5.3.1\",\n \"resolved\": \"https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz\",\n \"integrity\": \"sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/chalk\": {\n \"version\": \"2.4.2\",\n \"resolved\": \"https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz\",\n \"integrity\": \"sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.1\",\n \"escape-string-regexp\": \"^1.0.5\",\n \"supports-color\": \"^5.3.0\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/chalk/node_modules/supports-color\": {\n \"version\": \"5.5.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz\",\n \"integrity\": \"sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==\",\n \"dev\": true,\n \"dependencies\": {\n \"has-flag\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/chardet\": {\n \"version\": \"0.7.0\",\n \"resolved\": \"https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz\",\n \"integrity\": \"sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==\",\n \"dev\": true\n },\n \"node_modules/cli-cursor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz\",\n \"integrity\": \"sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==\",\n \"dev\": true,\n \"dependencies\": {\n \"restore-cursor\": \"^3.1.0\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/cli-width\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz\",\n \"integrity\": \"sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 10\"\n }\n },\n \"node_modules/cliui\": {\n \"version\": \"7.0.4\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz\",\n \"integrity\": \"sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==\",\n \"dependencies\": {\n \"string-width\": \"^4.2.0\",\n \"strip-ansi\": \"^6.0.0\",\n \"wrap-ansi\": \"^7.0.0\"\n }\n },\n \"node_modules/cliui/node_modules/ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/cliui/node_modules/emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"node_modules/cliui/node_modules/is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/cliui/node_modules/string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"dependencies\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/cliui/node_modules/strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"dependencies\": {\n \"ansi-regex\": \"^5.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/color-convert\": {\n \"version\": \"1.9.3\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz\",\n \"integrity\": \"sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==\",\n \"dev\": true,\n \"dependencies\": {\n \"color-name\": \"1.1.3\"\n }\n },\n \"node_modules/color-name\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz\",\n \"integrity\": \"sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=\",\n \"dev\": true\n },\n \"node_modules/concat-map\": {\n \"version\": \"0.0.1\",\n \"resolved\": \"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz\",\n \"integrity\": \"sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=\",\n \"dev\": true\n },\n \"node_modules/cross-spawn\": {\n \"version\": \"6.0.5\",\n \"resolved\": \"https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz\",\n \"integrity\": \"sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"nice-try\": \"^1.0.4\",\n \"path-key\": \"^2.0.1\",\n \"semver\": \"^5.5.0\",\n \"shebang-command\": \"^1.2.0\",\n \"which\": \"^1.2.9\"\n },\n \"engines\": {\n \"node\": \">=4.8\"\n }\n },\n \"node_modules/debug\": {\n \"version\": \"4.3.7\",\n \"resolved\": \"https://registry.npmjs.org/debug/-/debug-4.3.7.tgz\",\n \"integrity\": \"sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==\",\n \"dependencies\": {\n \"ms\": \"^2.1.3\"\n },\n \"engines\": {\n \"node\": \">=6.0\"\n },\n \"peerDependenciesMeta\": {\n \"supports-color\": {\n \"optional\": true\n }\n }\n },\n \"node_modules/decamelize\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz\",\n \"integrity\": \"sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/deep-is\": {\n \"version\": \"0.1.3\",\n \"resolved\": \"https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz\",\n \"integrity\": \"sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=\",\n \"dev\": true\n },\n \"node_modules/define-properties\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz\",\n \"integrity\": \"sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"object-keys\": \"^1.0.12\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n }\n },\n \"node_modules/diff\": {\n \"version\": \"3.5.0\",\n \"resolved\": \"https://registry.npmjs.org/diff/-/diff-3.5.0.tgz\",\n \"integrity\": \"sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.3.1\"\n }\n },\n \"node_modules/doctrine\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz\",\n \"integrity\": \"sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==\",\n \"dev\": true,\n \"dependencies\": {\n \"esutils\": \"^2.0.2\"\n },\n \"engines\": {\n \"node\": \">=6.0.0\"\n }\n },\n \"node_modules/ecdsa-sig-formatter\": {\n \"version\": \"1.0.11\",\n \"resolved\": \"https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz\",\n \"integrity\": \"sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==\",\n \"dependencies\": {\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"node_modules/emoji-regex\": {\n \"version\": \"7.0.3\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz\",\n \"integrity\": \"sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==\",\n \"dev\": true\n },\n \"node_modules/es-abstract\": {\n \"version\": \"1.18.3\",\n \"resolved\": \"https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz\",\n \"integrity\": \"sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\",\n \"es-to-primitive\": \"^1.2.1\",\n \"function-bind\": \"^1.1.1\",\n \"get-intrinsic\": \"^1.1.1\",\n \"has\": \"^1.0.3\",\n \"has-symbols\": \"^1.0.2\",\n \"is-callable\": \"^1.2.3\",\n \"is-negative-zero\": \"^2.0.1\",\n \"is-regex\": \"^1.1.3\",\n \"is-string\": \"^1.0.6\",\n \"object-inspect\": \"^1.10.3\",\n \"object-keys\": \"^1.1.1\",\n \"object.assign\": \"^4.1.2\",\n \"string.prototype.trimend\": \"^1.0.4\",\n \"string.prototype.trimstart\": \"^1.0.4\",\n \"unbox-primitive\": \"^1.0.1\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/es-abstract/node_modules/object.assign\": {\n \"version\": \"4.1.2\",\n \"resolved\": \"https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz\",\n \"integrity\": \"sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.0\",\n \"define-properties\": \"^1.1.3\",\n \"has-symbols\": \"^1.0.1\",\n \"object-keys\": \"^1.1.1\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/es-to-primitive\": {\n \"version\": \"1.2.1\",\n \"resolved\": \"https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz\",\n \"integrity\": \"sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-callable\": \"^1.1.4\",\n \"is-date-object\": \"^1.0.1\",\n \"is-symbol\": \"^1.0.2\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/escalade\": {\n \"version\": \"3.1.1\",\n \"resolved\": \"https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz\",\n \"integrity\": \"sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==\",\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/escape-string-regexp\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz\",\n \"integrity\": \"sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.8.0\"\n }\n },\n \"node_modules/eslint\": {\n \"version\": \"6.8.0\",\n \"resolved\": \"https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz\",\n \"integrity\": \"sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==\",\n \"dev\": true,\n \"dependencies\": {\n \"@babel/code-frame\": \"^7.0.0\",\n \"ajv\": \"^6.10.0\",\n \"chalk\": \"^2.1.0\",\n \"cross-spawn\": \"^6.0.5\",\n \"debug\": \"^4.0.1\",\n \"doctrine\": \"^3.0.0\",\n \"eslint-scope\": \"^5.0.0\",\n \"eslint-utils\": \"^1.4.3\",\n \"eslint-visitor-keys\": \"^1.1.0\",\n \"espree\": \"^6.1.2\",\n \"esquery\": \"^1.0.1\",\n \"esutils\": \"^2.0.2\",\n \"file-entry-cache\": \"^5.0.1\",\n \"functional-red-black-tree\": \"^1.0.1\",\n \"glob-parent\": \"^5.0.0\",\n \"globals\": \"^12.1.0\",\n \"ignore\": \"^4.0.6\",\n \"import-fresh\": \"^3.0.0\",\n \"imurmurhash\": \"^0.1.4\",\n \"inquirer\": \"^7.0.0\",\n \"is-glob\": \"^4.0.0\",\n \"js-yaml\": \"^3.13.1\",\n \"json-stable-stringify-without-jsonify\": \"^1.0.1\",\n \"levn\": \"^0.3.0\",\n \"lodash\": \"^4.17.14\",\n \"minimatch\": \"^3.0.4\",\n \"mkdirp\": \"^0.5.1\",\n \"natural-compare\": \"^1.4.0\",\n \"optionator\": \"^0.8.3\",\n \"progress\": \"^2.0.0\",\n \"regexpp\": \"^2.0.1\",\n \"semver\": \"^6.1.2\",\n \"strip-ansi\": \"^5.2.0\",\n \"strip-json-comments\": \"^3.0.1\",\n \"table\": \"^5.2.3\",\n \"text-table\": \"^0.2.0\",\n \"v8-compile-cache\": \"^2.0.3\"\n },\n \"bin\": {\n \"eslint\": \"bin/eslint.js\"\n },\n \"engines\": {\n \"node\": \"^8.10.0 || ^10.13.0 || >=11.10.1\"\n },\n \"funding\": {\n \"url\": \"https://opencollective.com/eslint\"\n }\n },\n \"node_modules/eslint-scope\": {\n \"version\": \"5.1.1\",\n \"resolved\": \"https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz\",\n \"integrity\": \"sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==\",\n \"dev\": true,\n \"dependencies\": {\n \"esrecurse\": \"^4.3.0\",\n \"estraverse\": \"^4.1.1\"\n },\n \"engines\": {\n \"node\": \">=8.0.0\"\n }\n },\n \"node_modules/eslint-utils\": {\n \"version\": \"1.4.3\",\n \"resolved\": \"https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz\",\n \"integrity\": \"sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==\",\n \"dev\": true,\n \"dependencies\": {\n \"eslint-visitor-keys\": \"^1.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/eslint-visitor-keys\": {\n \"version\": \"1.3.0\",\n \"resolved\": \"https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz\",\n \"integrity\": \"sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/eslint/node_modules/ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/eslint/node_modules/semver\": {\n \"version\": \"6.3.0\",\n \"resolved\": \"https://registry.npmjs.org/semver/-/semver-6.3.0.tgz\",\n \"integrity\": \"sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==\",\n \"dev\": true,\n \"bin\": {\n \"semver\": \"bin/semver.js\"\n }\n },\n \"node_modules/eslint/node_modules/strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^4.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/eslint/node_modules/strip-json-comments\": {\n \"version\": \"3.1.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz\",\n \"integrity\": \"sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/espree\": {\n \"version\": \"6.2.1\",\n \"resolved\": \"https://registry.npmjs.org/espree/-/espree-6.2.1.tgz\",\n \"integrity\": \"sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==\",\n \"dev\": true,\n \"dependencies\": {\n \"acorn\": \"^7.1.1\",\n \"acorn-jsx\": \"^5.2.0\",\n \"eslint-visitor-keys\": \"^1.1.0\"\n },\n \"engines\": {\n \"node\": \">=6.0.0\"\n }\n },\n \"node_modules/esprima\": {\n \"version\": \"4.0.1\",\n \"resolved\": \"https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz\",\n \"integrity\": \"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==\",\n \"dev\": true,\n \"bin\": {\n \"esparse\": \"bin/esparse.js\",\n \"esvalidate\": \"bin/esvalidate.js\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/esquery\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz\",\n \"integrity\": \"sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==\",\n \"dev\": true,\n \"dependencies\": {\n \"estraverse\": \"^5.1.0\"\n },\n \"engines\": {\n \"node\": \">=0.10\"\n }\n },\n \"node_modules/esquery/node_modules/estraverse\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz\",\n \"integrity\": \"sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4.0\"\n }\n },\n \"node_modules/esrecurse\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz\",\n \"integrity\": \"sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==\",\n \"dev\": true,\n \"dependencies\": {\n \"estraverse\": \"^5.2.0\"\n },\n \"engines\": {\n \"node\": \">=4.0\"\n }\n },\n \"node_modules/esrecurse/node_modules/estraverse\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz\",\n \"integrity\": \"sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4.0\"\n }\n },\n \"node_modules/estraverse\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz\",\n \"integrity\": \"sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4.0\"\n }\n },\n \"node_modules/esutils\": {\n \"version\": \"2.0.3\",\n \"resolved\": \"https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz\",\n \"integrity\": \"sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/extend\": {\n \"version\": \"3.0.2\",\n \"resolved\": \"https://registry.npmjs.org/extend/-/extend-3.0.2.tgz\",\n \"integrity\": \"sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==\"\n },\n \"node_modules/external-editor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz\",\n \"integrity\": \"sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==\",\n \"dev\": true,\n \"dependencies\": {\n \"chardet\": \"^0.7.0\",\n \"iconv-lite\": \"^0.4.24\",\n \"tmp\": \"^0.0.33\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/fast-deep-equal\": {\n \"version\": \"3.1.3\",\n \"resolved\": \"https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz\",\n \"integrity\": \"sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==\",\n \"dev\": true\n },\n \"node_modules/fast-json-stable-stringify\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz\",\n \"integrity\": \"sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==\",\n \"dev\": true\n },\n \"node_modules/fast-levenshtein\": {\n \"version\": \"2.0.6\",\n \"resolved\": \"https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz\",\n \"integrity\": \"sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=\",\n \"dev\": true\n },\n \"node_modules/figures\": {\n \"version\": \"3.2.0\",\n \"resolved\": \"https://registry.npmjs.org/figures/-/figures-3.2.0.tgz\",\n \"integrity\": \"sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==\",\n \"dev\": true,\n \"dependencies\": {\n \"escape-string-regexp\": \"^1.0.5\"\n },\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/file-entry-cache\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz\",\n \"integrity\": \"sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==\",\n \"dev\": true,\n \"dependencies\": {\n \"flat-cache\": \"^2.0.1\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/find-up\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz\",\n \"integrity\": \"sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==\",\n \"dev\": true,\n \"dependencies\": {\n \"locate-path\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/flat\": {\n \"version\": \"4.1.1\",\n \"resolved\": \"https://registry.npmjs.org/flat/-/flat-4.1.1.tgz\",\n \"integrity\": \"sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-buffer\": \"~2.0.3\"\n },\n \"bin\": {\n \"flat\": \"cli.js\"\n }\n },\n \"node_modules/flat-cache\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz\",\n \"integrity\": \"sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==\",\n \"dev\": true,\n \"dependencies\": {\n \"flatted\": \"^2.0.0\",\n \"rimraf\": \"2.6.3\",\n \"write\": \"1.0.3\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/flatted\": {\n \"version\": \"2.0.2\",\n \"resolved\": \"https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz\",\n \"integrity\": \"sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==\",\n \"dev\": true\n },\n \"node_modules/fs.realpath\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz\",\n \"integrity\": \"sha1-FQStJSMVjKpA20onh8sBQRmU6k8=\",\n \"dev\": true\n },\n \"node_modules/function-bind\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz\",\n \"integrity\": \"sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==\",\n \"dev\": true\n },\n \"node_modules/functional-red-black-tree\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz\",\n \"integrity\": \"sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=\",\n \"dev\": true\n },\n \"node_modules/gaxios\": {\n \"version\": \"6.7.1\",\n \"resolved\": \"https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz\",\n \"integrity\": \"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==\",\n \"dependencies\": {\n \"extend\": \"^3.0.2\",\n \"https-proxy-agent\": \"^7.0.1\",\n \"is-stream\": \"^2.0.0\",\n \"node-fetch\": \"^2.6.9\",\n \"uuid\": \"^9.0.1\"\n },\n \"engines\": {\n \"node\": \">=14\"\n }\n },\n \"node_modules/gcp-metadata\": {\n \"version\": \"6.1.0\",\n \"resolved\": \"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz\",\n \"integrity\": \"sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==\",\n \"dependencies\": {\n \"gaxios\": \"^6.0.0\",\n \"json-bigint\": \"^1.0.0\"\n },\n \"engines\": {\n \"node\": \">=14\"\n }\n },\n \"node_modules/get-caller-file\": {\n \"version\": \"2.0.5\",\n \"resolved\": \"https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz\",\n \"integrity\": \"sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==\",\n \"engines\": {\n \"node\": \"6.* || 8.* || >= 10.*\"\n }\n },\n \"node_modules/get-intrinsic\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz\",\n \"integrity\": \"sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==\",\n \"dev\": true,\n \"dependencies\": {\n \"function-bind\": \"^1.1.1\",\n \"has\": \"^1.0.3\",\n \"has-symbols\": \"^1.0.1\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/glob\": {\n \"version\": \"7.1.3\",\n \"resolved\": \"https://registry.npmjs.org/glob/-/glob-7.1.3.tgz\",\n \"integrity\": \"sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"fs.realpath\": \"^1.0.0\",\n \"inflight\": \"^1.0.4\",\n \"inherits\": \"2\",\n \"minimatch\": \"^3.0.4\",\n \"once\": \"^1.3.0\",\n \"path-is-absolute\": \"^1.0.0\"\n },\n \"engines\": {\n \"node\": \"*\"\n }\n },\n \"node_modules/glob-parent\": {\n \"version\": \"5.1.2\",\n \"resolved\": \"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz\",\n \"integrity\": \"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-glob\": \"^4.0.1\"\n },\n \"engines\": {\n \"node\": \">= 6\"\n }\n },\n \"node_modules/globals\": {\n \"version\": \"12.4.0\",\n \"resolved\": \"https://registry.npmjs.org/globals/-/globals-12.4.0.tgz\",\n \"integrity\": \"sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==\",\n \"dev\": true,\n \"dependencies\": {\n \"type-fest\": \"^0.8.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/google-auth-library\": {\n \"version\": \"9.14.2\",\n \"resolved\": \"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.14.2.tgz\",\n \"integrity\": \"sha512-R+FRIfk1GBo3RdlRYWPdwk8nmtVUOn6+BkDomAC46KoU8kzXzE1HLmOasSCbWUByMMAGkknVF0G5kQ69Vj7dlA==\",\n \"dependencies\": {\n \"base64-js\": \"^1.3.0\",\n \"ecdsa-sig-formatter\": \"^1.0.11\",\n \"gaxios\": \"^6.1.1\",\n \"gcp-metadata\": \"^6.1.0\",\n \"gtoken\": \"^7.0.0\",\n \"jws\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=14\"\n }\n },\n \"node_modules/growl\": {\n \"version\": \"1.10.5\",\n \"resolved\": \"https://registry.npmjs.org/growl/-/growl-1.10.5.tgz\",\n \"integrity\": \"sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4.x\"\n }\n },\n \"node_modules/gtoken\": {\n \"version\": \"7.1.0\",\n \"resolved\": \"https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz\",\n \"integrity\": \"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==\",\n \"dependencies\": {\n \"gaxios\": \"^6.0.0\",\n \"jws\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=14.0.0\"\n }\n },\n \"node_modules/has\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/has/-/has-1.0.3.tgz\",\n \"integrity\": \"sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==\",\n \"dev\": true,\n \"dependencies\": {\n \"function-bind\": \"^1.1.1\"\n },\n \"engines\": {\n \"node\": \">= 0.4.0\"\n }\n },\n \"node_modules/has-bigints\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz\",\n \"integrity\": \"sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==\",\n \"dev\": true,\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/has-flag\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz\",\n \"integrity\": \"sha1-tdRU3CGZriJWmfNGfloH87lVuv0=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/has-symbols\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz\",\n \"integrity\": \"sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/he\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/he/-/he-1.2.0.tgz\",\n \"integrity\": \"sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==\",\n \"dev\": true,\n \"bin\": {\n \"he\": \"bin/he\"\n }\n },\n \"node_modules/https-proxy-agent\": {\n \"version\": \"7.0.5\",\n \"resolved\": \"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz\",\n \"integrity\": \"sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==\",\n \"dependencies\": {\n \"agent-base\": \"^7.0.2\",\n \"debug\": \"4\"\n },\n \"engines\": {\n \"node\": \">= 14\"\n }\n },\n \"node_modules/iconv-lite\": {\n \"version\": \"0.4.24\",\n \"resolved\": \"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz\",\n \"integrity\": \"sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==\",\n \"dev\": true,\n \"dependencies\": {\n \"safer-buffer\": \">= 2.1.2 < 3\"\n },\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/ignore\": {\n \"version\": \"4.0.6\",\n \"resolved\": \"https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz\",\n \"integrity\": \"sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 4\"\n }\n },\n \"node_modules/import-fresh\": {\n \"version\": \"3.3.0\",\n \"resolved\": \"https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz\",\n \"integrity\": \"sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==\",\n \"dev\": true,\n \"dependencies\": {\n \"parent-module\": \"^1.0.0\",\n \"resolve-from\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/imurmurhash\": {\n \"version\": \"0.1.4\",\n \"resolved\": \"https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz\",\n \"integrity\": \"sha1-khi5srkoojixPcT7a21XbyMUU+o=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.8.19\"\n }\n },\n \"node_modules/inflight\": {\n \"version\": \"1.0.6\",\n \"resolved\": \"https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz\",\n \"integrity\": \"sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=\",\n \"dev\": true,\n \"dependencies\": {\n \"once\": \"^1.3.0\",\n \"wrappy\": \"1\"\n }\n },\n \"node_modules/inherits\": {\n \"version\": \"2.0.4\",\n \"resolved\": \"https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz\",\n \"integrity\": \"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==\",\n \"dev\": true\n },\n \"node_modules/inquirer\": {\n \"version\": \"7.3.3\",\n \"resolved\": \"https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz\",\n \"integrity\": \"sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-escapes\": \"^4.2.1\",\n \"chalk\": \"^4.1.0\",\n \"cli-cursor\": \"^3.1.0\",\n \"cli-width\": \"^3.0.0\",\n \"external-editor\": \"^3.0.3\",\n \"figures\": \"^3.0.0\",\n \"lodash\": \"^4.17.19\",\n \"mute-stream\": \"0.0.8\",\n \"run-async\": \"^2.4.0\",\n \"rxjs\": \"^6.6.0\",\n \"string-width\": \"^4.1.0\",\n \"strip-ansi\": \"^6.0.0\",\n \"through\": \"^2.3.6\"\n },\n \"engines\": {\n \"node\": \">=8.0.0\"\n }\n },\n \"node_modules/inquirer/node_modules/ansi-regex\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz\",\n \"integrity\": \"sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/inquirer/node_modules/ansi-styles\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz\",\n \"integrity\": \"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==\",\n \"dev\": true,\n \"dependencies\": {\n \"color-convert\": \"^2.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/chalk/ansi-styles?sponsor=1\"\n }\n },\n \"node_modules/inquirer/node_modules/chalk\": {\n \"version\": \"4.1.1\",\n \"resolved\": \"https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz\",\n \"integrity\": \"sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-styles\": \"^4.1.0\",\n \"supports-color\": \"^7.1.0\"\n },\n \"engines\": {\n \"node\": \">=10\"\n },\n \"funding\": {\n \"url\": \"https://github.com/chalk/chalk?sponsor=1\"\n }\n },\n \"node_modules/inquirer/node_modules/color-convert\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz\",\n \"integrity\": \"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"color-name\": \"~1.1.4\"\n },\n \"engines\": {\n \"node\": \">=7.0.0\"\n }\n },\n \"node_modules/inquirer/node_modules/color-name\": {\n \"version\": \"1.1.4\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz\",\n \"integrity\": \"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==\",\n \"dev\": true\n },\n \"node_modules/inquirer/node_modules/emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\",\n \"dev\": true\n },\n \"node_modules/inquirer/node_modules/has-flag\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz\",\n \"integrity\": \"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/inquirer/node_modules/is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/inquirer/node_modules/string-width\": {\n \"version\": \"4.2.2\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz\",\n \"integrity\": \"sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==\",\n \"dev\": true,\n \"dependencies\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.0\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/inquirer/node_modules/strip-ansi\": {\n \"version\": \"6.0.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz\",\n \"integrity\": \"sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^5.0.0\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/inquirer/node_modules/supports-color\": {\n \"version\": \"7.2.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz\",\n \"integrity\": \"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==\",\n \"dev\": true,\n \"dependencies\": {\n \"has-flag\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/is-bigint\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz\",\n \"integrity\": \"sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==\",\n \"dev\": true,\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-boolean-object\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz\",\n \"integrity\": \"sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-buffer\": {\n \"version\": \"2.0.5\",\n \"resolved\": \"https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz\",\n \"integrity\": \"sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==\",\n \"dev\": true,\n \"funding\": [\n {\n \"type\": \"github\",\n \"url\": \"https://github.com/sponsors/feross\"\n },\n {\n \"type\": \"patreon\",\n \"url\": \"https://www.patreon.com/feross\"\n },\n {\n \"type\": \"consulting\",\n \"url\": \"https://feross.org/support\"\n }\n ],\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/is-callable\": {\n \"version\": \"1.2.3\",\n \"resolved\": \"https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz\",\n \"integrity\": \"sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-date-object\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz\",\n \"integrity\": \"sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-extglob\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz\",\n \"integrity\": \"sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/is-fullwidth-code-point\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz\",\n \"integrity\": \"sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/is-glob\": {\n \"version\": \"4.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz\",\n \"integrity\": \"sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-extglob\": \"^2.1.1\"\n },\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/is-negative-zero\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz\",\n \"integrity\": \"sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-number-object\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz\",\n \"integrity\": \"sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-regex\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz\",\n \"integrity\": \"sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\",\n \"has-symbols\": \"^1.0.2\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-stream\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz\",\n \"integrity\": \"sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==\",\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/is-string\": {\n \"version\": \"1.0.6\",\n \"resolved\": \"https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz\",\n \"integrity\": \"sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/is-symbol\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz\",\n \"integrity\": \"sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==\",\n \"dev\": true,\n \"dependencies\": {\n \"has-symbols\": \"^1.0.2\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/isexe\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz\",\n \"integrity\": \"sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=\",\n \"dev\": true\n },\n \"node_modules/js-tokens\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz\",\n \"integrity\": \"sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==\",\n \"dev\": true\n },\n \"node_modules/js-yaml\": {\n \"version\": \"3.13.1\",\n \"resolved\": \"https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz\",\n \"integrity\": \"sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==\",\n \"dev\": true,\n \"dependencies\": {\n \"argparse\": \"^1.0.7\",\n \"esprima\": \"^4.0.0\"\n },\n \"bin\": {\n \"js-yaml\": \"bin/js-yaml.js\"\n }\n },\n \"node_modules/json-bigint\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz\",\n \"integrity\": \"sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==\",\n \"dependencies\": {\n \"bignumber.js\": \"^9.0.0\"\n }\n },\n \"node_modules/json-schema-traverse\": {\n \"version\": \"0.4.1\",\n \"resolved\": \"https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz\",\n \"integrity\": \"sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==\",\n \"dev\": true\n },\n \"node_modules/json-stable-stringify-without-jsonify\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz\",\n \"integrity\": \"sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=\",\n \"dev\": true\n },\n \"node_modules/jwa\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz\",\n \"integrity\": \"sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==\",\n \"dependencies\": {\n \"buffer-equal-constant-time\": \"1.0.1\",\n \"ecdsa-sig-formatter\": \"1.0.11\",\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"node_modules/jws\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/jws/-/jws-4.0.0.tgz\",\n \"integrity\": \"sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==\",\n \"dependencies\": {\n \"jwa\": \"^2.0.0\",\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"node_modules/levn\": {\n \"version\": \"0.3.0\",\n \"resolved\": \"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz\",\n \"integrity\": \"sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=\",\n \"dev\": true,\n \"dependencies\": {\n \"prelude-ls\": \"~1.1.2\",\n \"type-check\": \"~0.3.2\"\n },\n \"engines\": {\n \"node\": \">= 0.8.0\"\n }\n },\n \"node_modules/locate-path\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz\",\n \"integrity\": \"sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==\",\n \"dev\": true,\n \"dependencies\": {\n \"p-locate\": \"^3.0.0\",\n \"path-exists\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/lodash\": {\n \"version\": \"4.17.21\",\n \"resolved\": \"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz\",\n \"integrity\": \"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==\",\n \"dev\": true\n },\n \"node_modules/log-symbols\": {\n \"version\": \"2.2.0\",\n \"resolved\": \"https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz\",\n \"integrity\": \"sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==\",\n \"dev\": true,\n \"dependencies\": {\n \"chalk\": \"^2.0.1\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/mimic-fn\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz\",\n \"integrity\": \"sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/minimatch\": {\n \"version\": \"3.0.4\",\n \"resolved\": \"https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz\",\n \"integrity\": \"sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==\",\n \"dev\": true,\n \"dependencies\": {\n \"brace-expansion\": \"^1.1.7\"\n },\n \"engines\": {\n \"node\": \"*\"\n }\n },\n \"node_modules/minimist\": {\n \"version\": \"1.2.5\",\n \"resolved\": \"https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz\",\n \"integrity\": \"sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==\",\n \"dev\": true\n },\n \"node_modules/mkdirp\": {\n \"version\": \"0.5.4\",\n \"resolved\": \"https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz\",\n \"integrity\": \"sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==\",\n \"deprecated\": \"Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)\",\n \"dev\": true,\n \"dependencies\": {\n \"minimist\": \"^1.2.5\"\n },\n \"bin\": {\n \"mkdirp\": \"bin/cmd.js\"\n }\n },\n \"node_modules/mocha\": {\n \"version\": \"6.2.3\",\n \"resolved\": \"https://registry.npmjs.org/mocha/-/mocha-6.2.3.tgz\",\n \"integrity\": \"sha512-0R/3FvjIGH3eEuG17ccFPk117XL2rWxatr81a57D+r/x2uTYZRbdZ4oVidEUMh2W2TJDa7MdAb12Lm2/qrKajg==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-colors\": \"3.2.3\",\n \"browser-stdout\": \"1.3.1\",\n \"debug\": \"3.2.6\",\n \"diff\": \"3.5.0\",\n \"escape-string-regexp\": \"1.0.5\",\n \"find-up\": \"3.0.0\",\n \"glob\": \"7.1.3\",\n \"growl\": \"1.10.5\",\n \"he\": \"1.2.0\",\n \"js-yaml\": \"3.13.1\",\n \"log-symbols\": \"2.2.0\",\n \"minimatch\": \"3.0.4\",\n \"mkdirp\": \"0.5.4\",\n \"ms\": \"2.1.1\",\n \"node-environment-flags\": \"1.0.5\",\n \"object.assign\": \"4.1.0\",\n \"strip-json-comments\": \"2.0.1\",\n \"supports-color\": \"6.0.0\",\n \"which\": \"1.3.1\",\n \"wide-align\": \"1.1.3\",\n \"yargs\": \"13.3.2\",\n \"yargs-parser\": \"13.1.2\",\n \"yargs-unparser\": \"1.6.0\"\n },\n \"bin\": {\n \"_mocha\": \"bin/_mocha\",\n \"mocha\": \"bin/mocha\"\n },\n \"engines\": {\n \"node\": \">= 6.0.0\"\n }\n },\n \"node_modules/mocha/node_modules/ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/mocha/node_modules/cliui\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz\",\n \"integrity\": \"sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==\",\n \"dev\": true,\n \"dependencies\": {\n \"string-width\": \"^3.1.0\",\n \"strip-ansi\": \"^5.2.0\",\n \"wrap-ansi\": \"^5.1.0\"\n }\n },\n \"node_modules/mocha/node_modules/debug\": {\n \"version\": \"3.2.6\",\n \"resolved\": \"https://registry.npmjs.org/debug/-/debug-3.2.6.tgz\",\n \"integrity\": \"sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==\",\n \"deprecated\": \"Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)\",\n \"dev\": true,\n \"dependencies\": {\n \"ms\": \"^2.1.1\"\n }\n },\n \"node_modules/mocha/node_modules/ms\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/ms/-/ms-2.1.1.tgz\",\n \"integrity\": \"sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==\",\n \"dev\": true\n },\n \"node_modules/mocha/node_modules/string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"dependencies\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/mocha/node_modules/strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^4.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/mocha/node_modules/wrap-ansi\": {\n \"version\": \"5.1.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz\",\n \"integrity\": \"sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.0\",\n \"string-width\": \"^3.0.0\",\n \"strip-ansi\": \"^5.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/mocha/node_modules/y18n\": {\n \"version\": \"4.0.3\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz\",\n \"integrity\": \"sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==\",\n \"dev\": true\n },\n \"node_modules/mocha/node_modules/yargs\": {\n \"version\": \"13.3.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz\",\n \"integrity\": \"sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==\",\n \"dev\": true,\n \"dependencies\": {\n \"cliui\": \"^5.0.0\",\n \"find-up\": \"^3.0.0\",\n \"get-caller-file\": \"^2.0.1\",\n \"require-directory\": \"^2.1.1\",\n \"require-main-filename\": \"^2.0.0\",\n \"set-blocking\": \"^2.0.0\",\n \"string-width\": \"^3.0.0\",\n \"which-module\": \"^2.0.0\",\n \"y18n\": \"^4.0.0\",\n \"yargs-parser\": \"^13.1.2\"\n }\n },\n \"node_modules/ms\": {\n \"version\": \"2.1.3\",\n \"resolved\": \"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz\",\n \"integrity\": \"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==\"\n },\n \"node_modules/mute-stream\": {\n \"version\": \"0.0.8\",\n \"resolved\": \"https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz\",\n \"integrity\": \"sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==\",\n \"dev\": true\n },\n \"node_modules/natural-compare\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz\",\n \"integrity\": \"sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=\",\n \"dev\": true\n },\n \"node_modules/nice-try\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz\",\n \"integrity\": \"sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==\",\n \"dev\": true\n },\n \"node_modules/node-environment-flags\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz\",\n \"integrity\": \"sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"object.getownpropertydescriptors\": \"^2.0.3\",\n \"semver\": \"^5.7.0\"\n }\n },\n \"node_modules/node-fetch\": {\n \"version\": \"2.7.0\",\n \"resolved\": \"https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz\",\n \"integrity\": \"sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==\",\n \"dependencies\": {\n \"whatwg-url\": \"^5.0.0\"\n },\n \"engines\": {\n \"node\": \"4.x || >=6.0.0\"\n },\n \"peerDependencies\": {\n \"encoding\": \"^0.1.0\"\n },\n \"peerDependenciesMeta\": {\n \"encoding\": {\n \"optional\": true\n }\n }\n },\n \"node_modules/object-inspect\": {\n \"version\": \"1.11.0\",\n \"resolved\": \"https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz\",\n \"integrity\": \"sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==\",\n \"dev\": true,\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/object-keys\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz\",\n \"integrity\": \"sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.4\"\n }\n },\n \"node_modules/object.assign\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz\",\n \"integrity\": \"sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==\",\n \"dev\": true,\n \"dependencies\": {\n \"define-properties\": \"^1.1.2\",\n \"function-bind\": \"^1.1.1\",\n \"has-symbols\": \"^1.0.0\",\n \"object-keys\": \"^1.0.11\"\n },\n \"engines\": {\n \"node\": \">= 0.4\"\n }\n },\n \"node_modules/object.getownpropertydescriptors\": {\n \"version\": \"2.1.2\",\n \"resolved\": \"https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz\",\n \"integrity\": \"sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\",\n \"es-abstract\": \"^1.18.0-next.2\"\n },\n \"engines\": {\n \"node\": \">= 0.8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/once\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/once/-/once-1.4.0.tgz\",\n \"integrity\": \"sha1-WDsap3WWHUsROsF9nFC6753Xa9E=\",\n \"dev\": true,\n \"dependencies\": {\n \"wrappy\": \"1\"\n }\n },\n \"node_modules/onetime\": {\n \"version\": \"5.1.2\",\n \"resolved\": \"https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz\",\n \"integrity\": \"sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==\",\n \"dev\": true,\n \"dependencies\": {\n \"mimic-fn\": \"^2.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/optionator\": {\n \"version\": \"0.8.3\",\n \"resolved\": \"https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz\",\n \"integrity\": \"sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==\",\n \"dev\": true,\n \"dependencies\": {\n \"deep-is\": \"~0.1.3\",\n \"fast-levenshtein\": \"~2.0.6\",\n \"levn\": \"~0.3.0\",\n \"prelude-ls\": \"~1.1.2\",\n \"type-check\": \"~0.3.2\",\n \"word-wrap\": \"~1.2.3\"\n },\n \"engines\": {\n \"node\": \">= 0.8.0\"\n }\n },\n \"node_modules/os-tmpdir\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz\",\n \"integrity\": \"sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/p-limit\": {\n \"version\": \"2.3.0\",\n \"resolved\": \"https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz\",\n \"integrity\": \"sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==\",\n \"dev\": true,\n \"dependencies\": {\n \"p-try\": \"^2.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/sindresorhus\"\n }\n },\n \"node_modules/p-locate\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz\",\n \"integrity\": \"sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"p-limit\": \"^2.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/p-try\": {\n \"version\": \"2.2.0\",\n \"resolved\": \"https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz\",\n \"integrity\": \"sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/parent-module\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz\",\n \"integrity\": \"sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==\",\n \"dev\": true,\n \"dependencies\": {\n \"callsites\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/path-exists\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz\",\n \"integrity\": \"sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/path-is-absolute\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz\",\n \"integrity\": \"sha1-F0uSaHNVNP+8es5r9TpanhtcX18=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/path-key\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz\",\n \"integrity\": \"sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/prelude-ls\": {\n \"version\": \"1.1.2\",\n \"resolved\": \"https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz\",\n \"integrity\": \"sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">= 0.8.0\"\n }\n },\n \"node_modules/progress\": {\n \"version\": \"2.0.3\",\n \"resolved\": \"https://registry.npmjs.org/progress/-/progress-2.0.3.tgz\",\n \"integrity\": \"sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.4.0\"\n }\n },\n \"node_modules/punycode\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz\",\n \"integrity\": \"sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/regexpp\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz\",\n \"integrity\": \"sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6.5.0\"\n }\n },\n \"node_modules/require-directory\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz\",\n \"integrity\": \"sha1-jGStX9MNqxyXbiNE/+f3kqam30I=\",\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/require-main-filename\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz\",\n \"integrity\": \"sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==\",\n \"dev\": true\n },\n \"node_modules/resolve-from\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz\",\n \"integrity\": \"sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/restore-cursor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz\",\n \"integrity\": \"sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==\",\n \"dev\": true,\n \"dependencies\": {\n \"onetime\": \"^5.1.0\",\n \"signal-exit\": \"^3.0.2\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/rewire\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/rewire/-/rewire-5.0.0.tgz\",\n \"integrity\": \"sha512-1zfitNyp9RH5UDyGGLe9/1N0bMlPQ0WrX0Tmg11kMHBpqwPJI4gfPpP7YngFyLbFmhXh19SToAG0sKKEFcOIJA==\",\n \"dev\": true,\n \"dependencies\": {\n \"eslint\": \"^6.8.0\"\n }\n },\n \"node_modules/rimraf\": {\n \"version\": \"2.6.3\",\n \"resolved\": \"https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz\",\n \"integrity\": \"sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==\",\n \"dev\": true,\n \"dependencies\": {\n \"glob\": \"^7.1.3\"\n },\n \"bin\": {\n \"rimraf\": \"bin.js\"\n }\n },\n \"node_modules/run-async\": {\n \"version\": \"2.4.1\",\n \"resolved\": \"https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz\",\n \"integrity\": \"sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.12.0\"\n }\n },\n \"node_modules/rxjs\": {\n \"version\": \"6.6.7\",\n \"resolved\": \"https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz\",\n \"integrity\": \"sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"tslib\": \"^1.9.0\"\n },\n \"engines\": {\n \"npm\": \">=2.0.0\"\n }\n },\n \"node_modules/safe-buffer\": {\n \"version\": \"5.2.1\",\n \"resolved\": \"https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz\",\n \"integrity\": \"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==\",\n \"funding\": [\n {\n \"type\": \"github\",\n \"url\": \"https://github.com/sponsors/feross\"\n },\n {\n \"type\": \"patreon\",\n \"url\": \"https://www.patreon.com/feross\"\n },\n {\n \"type\": \"consulting\",\n \"url\": \"https://feross.org/support\"\n }\n ]\n },\n \"node_modules/safer-buffer\": {\n \"version\": \"2.1.2\",\n \"resolved\": \"https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz\",\n \"integrity\": \"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==\",\n \"dev\": true\n },\n \"node_modules/semver\": {\n \"version\": \"5.7.1\",\n \"resolved\": \"https://registry.npmjs.org/semver/-/semver-5.7.1.tgz\",\n \"integrity\": \"sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==\",\n \"dev\": true,\n \"bin\": {\n \"semver\": \"bin/semver\"\n }\n },\n \"node_modules/set-blocking\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz\",\n \"integrity\": \"sha1-BF+XgtARrppoA93TgrJDkrPYkPc=\",\n \"dev\": true\n },\n \"node_modules/shebang-command\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz\",\n \"integrity\": \"sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=\",\n \"dev\": true,\n \"dependencies\": {\n \"shebang-regex\": \"^1.0.0\"\n },\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/shebang-regex\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz\",\n \"integrity\": \"sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/signal-exit\": {\n \"version\": \"3.0.3\",\n \"resolved\": \"https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz\",\n \"integrity\": \"sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==\",\n \"dev\": true\n },\n \"node_modules/slice-ansi\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz\",\n \"integrity\": \"sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.0\",\n \"astral-regex\": \"^1.0.0\",\n \"is-fullwidth-code-point\": \"^2.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/sprintf-js\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz\",\n \"integrity\": \"sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=\",\n \"dev\": true\n },\n \"node_modules/string-width\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz\",\n \"integrity\": \"sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^4.0.0\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/string.prototype.trimend\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz\",\n \"integrity\": \"sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/string.prototype.trimstart\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz\",\n \"integrity\": \"sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==\",\n \"dev\": true,\n \"dependencies\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/strip-ansi\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz\",\n \"integrity\": \"sha1-qEeQIusaw2iocTibY1JixQXuNo8=\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/strip-json-comments\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz\",\n \"integrity\": \"sha1-PFMZQukIwml8DsNEhYwobHygpgo=\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/supports-color\": {\n \"version\": \"6.0.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz\",\n \"integrity\": \"sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==\",\n \"dev\": true,\n \"dependencies\": {\n \"has-flag\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/table\": {\n \"version\": \"5.4.6\",\n \"resolved\": \"https://registry.npmjs.org/table/-/table-5.4.6.tgz\",\n \"integrity\": \"sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==\",\n \"dev\": true,\n \"dependencies\": {\n \"ajv\": \"^6.10.2\",\n \"lodash\": \"^4.17.14\",\n \"slice-ansi\": \"^2.1.0\",\n \"string-width\": \"^3.0.0\"\n },\n \"engines\": {\n \"node\": \">=6.0.0\"\n }\n },\n \"node_modules/table/node_modules/ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/table/node_modules/string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"dependencies\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/table/node_modules/strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^4.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/text-table\": {\n \"version\": \"0.2.0\",\n \"resolved\": \"https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz\",\n \"integrity\": \"sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=\",\n \"dev\": true\n },\n \"node_modules/through\": {\n \"version\": \"2.3.8\",\n \"resolved\": \"https://registry.npmjs.org/through/-/through-2.3.8.tgz\",\n \"integrity\": \"sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=\",\n \"dev\": true\n },\n \"node_modules/tmp\": {\n \"version\": \"0.0.33\",\n \"resolved\": \"https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz\",\n \"integrity\": \"sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==\",\n \"dev\": true,\n \"dependencies\": {\n \"os-tmpdir\": \"~1.0.2\"\n },\n \"engines\": {\n \"node\": \">=0.6.0\"\n }\n },\n \"node_modules/tr46\": {\n \"version\": \"0.0.3\",\n \"resolved\": \"https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz\",\n \"integrity\": \"sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==\"\n },\n \"node_modules/tslib\": {\n \"version\": \"1.14.1\",\n \"resolved\": \"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz\",\n \"integrity\": \"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==\",\n \"dev\": true\n },\n \"node_modules/type-check\": {\n \"version\": \"0.3.2\",\n \"resolved\": \"https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz\",\n \"integrity\": \"sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=\",\n \"dev\": true,\n \"dependencies\": {\n \"prelude-ls\": \"~1.1.2\"\n },\n \"engines\": {\n \"node\": \">= 0.8.0\"\n }\n },\n \"node_modules/type-fest\": {\n \"version\": \"0.8.1\",\n \"resolved\": \"https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz\",\n \"integrity\": \"sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/unbox-primitive\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz\",\n \"integrity\": \"sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==\",\n \"dev\": true,\n \"dependencies\": {\n \"function-bind\": \"^1.1.1\",\n \"has-bigints\": \"^1.0.1\",\n \"has-symbols\": \"^1.0.2\",\n \"which-boxed-primitive\": \"^1.0.2\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/uri-js\": {\n \"version\": \"4.4.1\",\n \"resolved\": \"https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz\",\n \"integrity\": \"sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==\",\n \"dev\": true,\n \"dependencies\": {\n \"punycode\": \"^2.1.0\"\n }\n },\n \"node_modules/uuid\": {\n \"version\": \"9.0.1\",\n \"resolved\": \"https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz\",\n \"integrity\": \"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==\",\n \"funding\": [\n \"https://github.com/sponsors/broofa\",\n \"https://github.com/sponsors/ctavan\"\n ],\n \"bin\": {\n \"uuid\": \"dist/bin/uuid\"\n }\n },\n \"node_modules/v8-compile-cache\": {\n \"version\": \"2.3.0\",\n \"resolved\": \"https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz\",\n \"integrity\": \"sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==\",\n \"dev\": true\n },\n \"node_modules/webidl-conversions\": {\n \"version\": \"3.0.1\",\n \"resolved\": \"https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz\",\n \"integrity\": \"sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==\"\n },\n \"node_modules/whatwg-url\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz\",\n \"integrity\": \"sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==\",\n \"dependencies\": {\n \"tr46\": \"~0.0.3\",\n \"webidl-conversions\": \"^3.0.0\"\n }\n },\n \"node_modules/which\": {\n \"version\": \"1.3.1\",\n \"resolved\": \"https://registry.npmjs.org/which/-/which-1.3.1.tgz\",\n \"integrity\": \"sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==\",\n \"dev\": true,\n \"dependencies\": {\n \"isexe\": \"^2.0.0\"\n },\n \"bin\": {\n \"which\": \"bin/which\"\n }\n },\n \"node_modules/which-boxed-primitive\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz\",\n \"integrity\": \"sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==\",\n \"dev\": true,\n \"dependencies\": {\n \"is-bigint\": \"^1.0.1\",\n \"is-boolean-object\": \"^1.1.0\",\n \"is-number-object\": \"^1.0.4\",\n \"is-string\": \"^1.0.5\",\n \"is-symbol\": \"^1.0.3\"\n },\n \"funding\": {\n \"url\": \"https://github.com/sponsors/ljharb\"\n }\n },\n \"node_modules/which-module\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz\",\n \"integrity\": \"sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=\",\n \"dev\": true\n },\n \"node_modules/wide-align\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz\",\n \"integrity\": \"sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==\",\n \"dev\": true,\n \"dependencies\": {\n \"string-width\": \"^1.0.2 || 2\"\n }\n },\n \"node_modules/word-wrap\": {\n \"version\": \"1.2.3\",\n \"resolved\": \"https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz\",\n \"integrity\": \"sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=0.10.0\"\n }\n },\n \"node_modules/wrap-ansi\": {\n \"version\": \"7.0.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz\",\n \"integrity\": \"sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==\",\n \"dependencies\": {\n \"ansi-styles\": \"^4.0.0\",\n \"string-width\": \"^4.1.0\",\n \"strip-ansi\": \"^6.0.0\"\n },\n \"engines\": {\n \"node\": \">=10\"\n },\n \"funding\": {\n \"url\": \"https://github.com/chalk/wrap-ansi?sponsor=1\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/ansi-styles\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz\",\n \"integrity\": \"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==\",\n \"dependencies\": {\n \"color-convert\": \"^2.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n },\n \"funding\": {\n \"url\": \"https://github.com/chalk/ansi-styles?sponsor=1\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/color-convert\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz\",\n \"integrity\": \"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==\",\n \"dependencies\": {\n \"color-name\": \"~1.1.4\"\n },\n \"engines\": {\n \"node\": \">=7.0.0\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/color-name\": {\n \"version\": \"1.1.4\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz\",\n \"integrity\": \"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==\"\n },\n \"node_modules/wrap-ansi/node_modules/emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"node_modules/wrap-ansi/node_modules/is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"dependencies\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/wrap-ansi/node_modules/strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"dependencies\": {\n \"ansi-regex\": \"^5.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/wrappy\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz\",\n \"integrity\": \"sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=\",\n \"dev\": true\n },\n \"node_modules/write\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/write/-/write-1.0.3.tgz\",\n \"integrity\": \"sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==\",\n \"dev\": true,\n \"dependencies\": {\n \"mkdirp\": \"^0.5.1\"\n },\n \"engines\": {\n \"node\": \">=4\"\n }\n },\n \"node_modules/y18n\": {\n \"version\": \"5.0.8\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz\",\n \"integrity\": \"sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==\",\n \"engines\": {\n \"node\": \">=10\"\n }\n },\n \"node_modules/yargs\": {\n \"version\": \"17.2.1\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz\",\n \"integrity\": \"sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==\",\n \"dependencies\": {\n \"cliui\": \"^7.0.2\",\n \"escalade\": \"^3.1.1\",\n \"get-caller-file\": \"^2.0.5\",\n \"require-directory\": \"^2.1.1\",\n \"string-width\": \"^4.2.0\",\n \"y18n\": \"^5.0.5\",\n \"yargs-parser\": \"^20.2.2\"\n },\n \"engines\": {\n \"node\": \">=12\"\n }\n },\n \"node_modules/yargs-parser\": {\n \"version\": \"13.1.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz\",\n \"integrity\": \"sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==\",\n \"dev\": true,\n \"dependencies\": {\n \"camelcase\": \"^5.0.0\",\n \"decamelize\": \"^1.2.0\"\n }\n },\n \"node_modules/yargs-unparser\": {\n \"version\": \"1.6.0\",\n \"resolved\": \"https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz\",\n \"integrity\": \"sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==\",\n \"dev\": true,\n \"dependencies\": {\n \"flat\": \"^4.1.0\",\n \"lodash\": \"^4.17.15\",\n \"yargs\": \"^13.3.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true,\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/cliui\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz\",\n \"integrity\": \"sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==\",\n \"dev\": true,\n \"dependencies\": {\n \"string-width\": \"^3.1.0\",\n \"strip-ansi\": \"^5.2.0\",\n \"wrap-ansi\": \"^5.1.0\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"dependencies\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-regex\": \"^4.1.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/wrap-ansi\": {\n \"version\": \"5.1.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz\",\n \"integrity\": \"sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==\",\n \"dev\": true,\n \"dependencies\": {\n \"ansi-styles\": \"^3.2.0\",\n \"string-width\": \"^3.0.0\",\n \"strip-ansi\": \"^5.0.0\"\n },\n \"engines\": {\n \"node\": \">=6\"\n }\n },\n \"node_modules/yargs-unparser/node_modules/y18n\": {\n \"version\": \"4.0.3\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz\",\n \"integrity\": \"sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==\",\n \"dev\": true\n },\n \"node_modules/yargs-unparser/node_modules/yargs\": {\n \"version\": \"13.3.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz\",\n \"integrity\": \"sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==\",\n \"dev\": true,\n \"dependencies\": {\n \"cliui\": \"^5.0.0\",\n \"find-up\": \"^3.0.0\",\n \"get-caller-file\": \"^2.0.1\",\n \"require-directory\": \"^2.1.1\",\n \"require-main-filename\": \"^2.0.0\",\n \"set-blocking\": \"^2.0.0\",\n \"string-width\": \"^3.0.0\",\n \"which-module\": \"^2.0.0\",\n \"y18n\": \"^4.0.0\",\n \"yargs-parser\": \"^13.1.2\"\n }\n },\n \"node_modules/yargs/node_modules/ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/yargs/node_modules/emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"node_modules/yargs/node_modules/is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\",\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/yargs/node_modules/string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"dependencies\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/yargs/node_modules/strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"dependencies\": {\n \"ansi-regex\": \"^5.0.1\"\n },\n \"engines\": {\n \"node\": \">=8\"\n }\n },\n \"node_modules/yargs/node_modules/yargs-parser\": {\n \"version\": \"20.2.9\",\n \"resolved\": \"https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz\",\n \"integrity\": \"sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==\",\n \"engines\": {\n \"node\": \">=10\"\n }\n }\n },\n \"dependencies\": {\n \"@babel/code-frame\": {\n \"version\": \"7.14.5\",\n \"resolved\": \"https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz\",\n \"integrity\": \"sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==\",\n \"dev\": true,\n \"requires\": {\n \"@babel/highlight\": \"^7.14.5\"\n }\n },\n \"@babel/helper-validator-identifier\": {\n \"version\": \"7.14.8\",\n \"resolved\": \"https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.8.tgz\",\n \"integrity\": \"sha512-ZGy6/XQjllhYQrNw/3zfWRwZCTVSiBLZ9DHVZxn9n2gip/7ab8mv2TWlKPIBk26RwedCBoWdjLmn+t9na2Gcow==\",\n \"dev\": true\n },\n \"@babel/highlight\": {\n \"version\": \"7.14.5\",\n \"resolved\": \"https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz\",\n \"integrity\": \"sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==\",\n \"dev\": true,\n \"requires\": {\n \"@babel/helper-validator-identifier\": \"^7.14.5\",\n \"chalk\": \"^2.0.0\",\n \"js-tokens\": \"^4.0.0\"\n }\n },\n \"acorn\": {\n \"version\": \"7.4.1\",\n \"resolved\": \"https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz\",\n \"integrity\": \"sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==\",\n \"dev\": true\n },\n \"acorn-jsx\": {\n \"version\": \"5.3.2\",\n \"resolved\": \"https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz\",\n \"integrity\": \"sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==\",\n \"dev\": true,\n \"requires\": {}\n },\n \"agent-base\": {\n \"version\": \"7.1.1\",\n \"resolved\": \"https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz\",\n \"integrity\": \"sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==\",\n \"requires\": {\n \"debug\": \"^4.3.4\"\n }\n },\n \"ajv\": {\n \"version\": \"6.12.6\",\n \"resolved\": \"https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz\",\n \"integrity\": \"sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==\",\n \"dev\": true,\n \"requires\": {\n \"fast-deep-equal\": \"^3.1.1\",\n \"fast-json-stable-stringify\": \"^2.0.0\",\n \"json-schema-traverse\": \"^0.4.1\",\n \"uri-js\": \"^4.2.2\"\n }\n },\n \"ansi-colors\": {\n \"version\": \"3.2.3\",\n \"resolved\": \"https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz\",\n \"integrity\": \"sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==\",\n \"dev\": true\n },\n \"ansi-escapes\": {\n \"version\": \"4.3.2\",\n \"resolved\": \"https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz\",\n \"integrity\": \"sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==\",\n \"dev\": true,\n \"requires\": {\n \"type-fest\": \"^0.21.3\"\n },\n \"dependencies\": {\n \"type-fest\": {\n \"version\": \"0.21.3\",\n \"resolved\": \"https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz\",\n \"integrity\": \"sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==\",\n \"dev\": true\n }\n }\n },\n \"ansi-regex\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz\",\n \"integrity\": \"sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=\",\n \"dev\": true\n },\n \"ansi-styles\": {\n \"version\": \"3.2.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz\",\n \"integrity\": \"sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==\",\n \"dev\": true,\n \"requires\": {\n \"color-convert\": \"^1.9.0\"\n }\n },\n \"argparse\": {\n \"version\": \"1.0.10\",\n \"resolved\": \"https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz\",\n \"integrity\": \"sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==\",\n \"dev\": true,\n \"requires\": {\n \"sprintf-js\": \"~1.0.2\"\n }\n },\n \"astral-regex\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz\",\n \"integrity\": \"sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==\",\n \"dev\": true\n },\n \"balanced-match\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz\",\n \"integrity\": \"sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==\",\n \"dev\": true\n },\n \"base64-js\": {\n \"version\": \"1.5.1\",\n \"resolved\": \"https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz\",\n \"integrity\": \"sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==\"\n },\n \"bignumber.js\": {\n \"version\": \"9.1.2\",\n \"resolved\": \"https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz\",\n \"integrity\": \"sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==\"\n },\n \"brace-expansion\": {\n \"version\": \"1.1.11\",\n \"resolved\": \"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz\",\n \"integrity\": \"sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==\",\n \"dev\": true,\n \"requires\": {\n \"balanced-match\": \"^1.0.0\",\n \"concat-map\": \"0.0.1\"\n }\n },\n \"browser-stdout\": {\n \"version\": \"1.3.1\",\n \"resolved\": \"https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz\",\n \"integrity\": \"sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==\",\n \"dev\": true\n },\n \"buffer-equal-constant-time\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz\",\n \"integrity\": \"sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==\"\n },\n \"call-bind\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz\",\n \"integrity\": \"sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==\",\n \"dev\": true,\n \"requires\": {\n \"function-bind\": \"^1.1.1\",\n \"get-intrinsic\": \"^1.0.2\"\n }\n },\n \"callsites\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz\",\n \"integrity\": \"sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==\",\n \"dev\": true\n },\n \"camelcase\": {\n \"version\": \"5.3.1\",\n \"resolved\": \"https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz\",\n \"integrity\": \"sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==\",\n \"dev\": true\n },\n \"chalk\": {\n \"version\": \"2.4.2\",\n \"resolved\": \"https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz\",\n \"integrity\": \"sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-styles\": \"^3.2.1\",\n \"escape-string-regexp\": \"^1.0.5\",\n \"supports-color\": \"^5.3.0\"\n },\n \"dependencies\": {\n \"supports-color\": {\n \"version\": \"5.5.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz\",\n \"integrity\": \"sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==\",\n \"dev\": true,\n \"requires\": {\n \"has-flag\": \"^3.0.0\"\n }\n }\n }\n },\n \"chardet\": {\n \"version\": \"0.7.0\",\n \"resolved\": \"https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz\",\n \"integrity\": \"sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==\",\n \"dev\": true\n },\n \"cli-cursor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz\",\n \"integrity\": \"sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==\",\n \"dev\": true,\n \"requires\": {\n \"restore-cursor\": \"^3.1.0\"\n }\n },\n \"cli-width\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz\",\n \"integrity\": \"sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==\",\n \"dev\": true\n },\n \"cliui\": {\n \"version\": \"7.0.4\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz\",\n \"integrity\": \"sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==\",\n \"requires\": {\n \"string-width\": \"^4.2.0\",\n \"strip-ansi\": \"^6.0.0\",\n \"wrap-ansi\": \"^7.0.0\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\"\n },\n \"emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\"\n },\n \"string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"requires\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"requires\": {\n \"ansi-regex\": \"^5.0.1\"\n }\n }\n }\n },\n \"color-convert\": {\n \"version\": \"1.9.3\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz\",\n \"integrity\": \"sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==\",\n \"dev\": true,\n \"requires\": {\n \"color-name\": \"1.1.3\"\n }\n },\n \"color-name\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz\",\n \"integrity\": \"sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=\",\n \"dev\": true\n },\n \"concat-map\": {\n \"version\": \"0.0.1\",\n \"resolved\": \"https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz\",\n \"integrity\": \"sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=\",\n \"dev\": true\n },\n \"cross-spawn\": {\n \"version\": \"6.0.5\",\n \"resolved\": \"https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz\",\n \"integrity\": \"sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==\",\n \"dev\": true,\n \"requires\": {\n \"nice-try\": \"^1.0.4\",\n \"path-key\": \"^2.0.1\",\n \"semver\": \"^5.5.0\",\n \"shebang-command\": \"^1.2.0\",\n \"which\": \"^1.2.9\"\n }\n },\n \"debug\": {\n \"version\": \"4.3.7\",\n \"resolved\": \"https://registry.npmjs.org/debug/-/debug-4.3.7.tgz\",\n \"integrity\": \"sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==\",\n \"requires\": {\n \"ms\": \"^2.1.3\"\n }\n },\n \"decamelize\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz\",\n \"integrity\": \"sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=\",\n \"dev\": true\n },\n \"deep-is\": {\n \"version\": \"0.1.3\",\n \"resolved\": \"https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz\",\n \"integrity\": \"sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=\",\n \"dev\": true\n },\n \"define-properties\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz\",\n \"integrity\": \"sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==\",\n \"dev\": true,\n \"requires\": {\n \"object-keys\": \"^1.0.12\"\n }\n },\n \"diff\": {\n \"version\": \"3.5.0\",\n \"resolved\": \"https://registry.npmjs.org/diff/-/diff-3.5.0.tgz\",\n \"integrity\": \"sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==\",\n \"dev\": true\n },\n \"doctrine\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz\",\n \"integrity\": \"sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==\",\n \"dev\": true,\n \"requires\": {\n \"esutils\": \"^2.0.2\"\n }\n },\n \"ecdsa-sig-formatter\": {\n \"version\": \"1.0.11\",\n \"resolved\": \"https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz\",\n \"integrity\": \"sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==\",\n \"requires\": {\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"emoji-regex\": {\n \"version\": \"7.0.3\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz\",\n \"integrity\": \"sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==\",\n \"dev\": true\n },\n \"es-abstract\": {\n \"version\": \"1.18.3\",\n \"resolved\": \"https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.3.tgz\",\n \"integrity\": \"sha512-nQIr12dxV7SSxE6r6f1l3DtAeEYdsGpps13dR0TwJg1S8gyp4ZPgy3FZcHBgbiQqnoqSTb+oC+kO4UQ0C/J8vw==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\",\n \"es-to-primitive\": \"^1.2.1\",\n \"function-bind\": \"^1.1.1\",\n \"get-intrinsic\": \"^1.1.1\",\n \"has\": \"^1.0.3\",\n \"has-symbols\": \"^1.0.2\",\n \"is-callable\": \"^1.2.3\",\n \"is-negative-zero\": \"^2.0.1\",\n \"is-regex\": \"^1.1.3\",\n \"is-string\": \"^1.0.6\",\n \"object-inspect\": \"^1.10.3\",\n \"object-keys\": \"^1.1.1\",\n \"object.assign\": \"^4.1.2\",\n \"string.prototype.trimend\": \"^1.0.4\",\n \"string.prototype.trimstart\": \"^1.0.4\",\n \"unbox-primitive\": \"^1.0.1\"\n },\n \"dependencies\": {\n \"object.assign\": {\n \"version\": \"4.1.2\",\n \"resolved\": \"https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz\",\n \"integrity\": \"sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.0\",\n \"define-properties\": \"^1.1.3\",\n \"has-symbols\": \"^1.0.1\",\n \"object-keys\": \"^1.1.1\"\n }\n }\n }\n },\n \"es-to-primitive\": {\n \"version\": \"1.2.1\",\n \"resolved\": \"https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz\",\n \"integrity\": \"sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==\",\n \"dev\": true,\n \"requires\": {\n \"is-callable\": \"^1.1.4\",\n \"is-date-object\": \"^1.0.1\",\n \"is-symbol\": \"^1.0.2\"\n }\n },\n \"escalade\": {\n \"version\": \"3.1.1\",\n \"resolved\": \"https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz\",\n \"integrity\": \"sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==\"\n },\n \"escape-string-regexp\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz\",\n \"integrity\": \"sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=\",\n \"dev\": true\n },\n \"eslint\": {\n \"version\": \"6.8.0\",\n \"resolved\": \"https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz\",\n \"integrity\": \"sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==\",\n \"dev\": true,\n \"requires\": {\n \"@babel/code-frame\": \"^7.0.0\",\n \"ajv\": \"^6.10.0\",\n \"chalk\": \"^2.1.0\",\n \"cross-spawn\": \"^6.0.5\",\n \"debug\": \"^4.0.1\",\n \"doctrine\": \"^3.0.0\",\n \"eslint-scope\": \"^5.0.0\",\n \"eslint-utils\": \"^1.4.3\",\n \"eslint-visitor-keys\": \"^1.1.0\",\n \"espree\": \"^6.1.2\",\n \"esquery\": \"^1.0.1\",\n \"esutils\": \"^2.0.2\",\n \"file-entry-cache\": \"^5.0.1\",\n \"functional-red-black-tree\": \"^1.0.1\",\n \"glob-parent\": \"^5.0.0\",\n \"globals\": \"^12.1.0\",\n \"ignore\": \"^4.0.6\",\n \"import-fresh\": \"^3.0.0\",\n \"imurmurhash\": \"^0.1.4\",\n \"inquirer\": \"^7.0.0\",\n \"is-glob\": \"^4.0.0\",\n \"js-yaml\": \"^3.13.1\",\n \"json-stable-stringify-without-jsonify\": \"^1.0.1\",\n \"levn\": \"^0.3.0\",\n \"lodash\": \"^4.17.14\",\n \"minimatch\": \"^3.0.4\",\n \"mkdirp\": \"^0.5.1\",\n \"natural-compare\": \"^1.4.0\",\n \"optionator\": \"^0.8.3\",\n \"progress\": \"^2.0.0\",\n \"regexpp\": \"^2.0.1\",\n \"semver\": \"^6.1.2\",\n \"strip-ansi\": \"^5.2.0\",\n \"strip-json-comments\": \"^3.0.1\",\n \"table\": \"^5.2.3\",\n \"text-table\": \"^0.2.0\",\n \"v8-compile-cache\": \"^2.0.3\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true\n },\n \"semver\": {\n \"version\": \"6.3.0\",\n \"resolved\": \"https://registry.npmjs.org/semver/-/semver-6.3.0.tgz\",\n \"integrity\": \"sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==\",\n \"dev\": true\n },\n \"strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^4.1.0\"\n }\n },\n \"strip-json-comments\": {\n \"version\": \"3.1.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz\",\n \"integrity\": \"sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==\",\n \"dev\": true\n }\n }\n },\n \"eslint-scope\": {\n \"version\": \"5.1.1\",\n \"resolved\": \"https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz\",\n \"integrity\": \"sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==\",\n \"dev\": true,\n \"requires\": {\n \"esrecurse\": \"^4.3.0\",\n \"estraverse\": \"^4.1.1\"\n }\n },\n \"eslint-utils\": {\n \"version\": \"1.4.3\",\n \"resolved\": \"https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz\",\n \"integrity\": \"sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==\",\n \"dev\": true,\n \"requires\": {\n \"eslint-visitor-keys\": \"^1.1.0\"\n }\n },\n \"eslint-visitor-keys\": {\n \"version\": \"1.3.0\",\n \"resolved\": \"https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz\",\n \"integrity\": \"sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==\",\n \"dev\": true\n },\n \"espree\": {\n \"version\": \"6.2.1\",\n \"resolved\": \"https://registry.npmjs.org/espree/-/espree-6.2.1.tgz\",\n \"integrity\": \"sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==\",\n \"dev\": true,\n \"requires\": {\n \"acorn\": \"^7.1.1\",\n \"acorn-jsx\": \"^5.2.0\",\n \"eslint-visitor-keys\": \"^1.1.0\"\n }\n },\n \"esprima\": {\n \"version\": \"4.0.1\",\n \"resolved\": \"https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz\",\n \"integrity\": \"sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==\",\n \"dev\": true\n },\n \"esquery\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz\",\n \"integrity\": \"sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==\",\n \"dev\": true,\n \"requires\": {\n \"estraverse\": \"^5.1.0\"\n },\n \"dependencies\": {\n \"estraverse\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz\",\n \"integrity\": \"sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==\",\n \"dev\": true\n }\n }\n },\n \"esrecurse\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz\",\n \"integrity\": \"sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==\",\n \"dev\": true,\n \"requires\": {\n \"estraverse\": \"^5.2.0\"\n },\n \"dependencies\": {\n \"estraverse\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz\",\n \"integrity\": \"sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==\",\n \"dev\": true\n }\n }\n },\n \"estraverse\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz\",\n \"integrity\": \"sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==\",\n \"dev\": true\n },\n \"esutils\": {\n \"version\": \"2.0.3\",\n \"resolved\": \"https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz\",\n \"integrity\": \"sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==\",\n \"dev\": true\n },\n \"extend\": {\n \"version\": \"3.0.2\",\n \"resolved\": \"https://registry.npmjs.org/extend/-/extend-3.0.2.tgz\",\n \"integrity\": \"sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==\"\n },\n \"external-editor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz\",\n \"integrity\": \"sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==\",\n \"dev\": true,\n \"requires\": {\n \"chardet\": \"^0.7.0\",\n \"iconv-lite\": \"^0.4.24\",\n \"tmp\": \"^0.0.33\"\n }\n },\n \"fast-deep-equal\": {\n \"version\": \"3.1.3\",\n \"resolved\": \"https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz\",\n \"integrity\": \"sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==\",\n \"dev\": true\n },\n \"fast-json-stable-stringify\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz\",\n \"integrity\": \"sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==\",\n \"dev\": true\n },\n \"fast-levenshtein\": {\n \"version\": \"2.0.6\",\n \"resolved\": \"https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz\",\n \"integrity\": \"sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=\",\n \"dev\": true\n },\n \"figures\": {\n \"version\": \"3.2.0\",\n \"resolved\": \"https://registry.npmjs.org/figures/-/figures-3.2.0.tgz\",\n \"integrity\": \"sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==\",\n \"dev\": true,\n \"requires\": {\n \"escape-string-regexp\": \"^1.0.5\"\n }\n },\n \"file-entry-cache\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz\",\n \"integrity\": \"sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==\",\n \"dev\": true,\n \"requires\": {\n \"flat-cache\": \"^2.0.1\"\n }\n },\n \"find-up\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz\",\n \"integrity\": \"sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==\",\n \"dev\": true,\n \"requires\": {\n \"locate-path\": \"^3.0.0\"\n }\n },\n \"flat\": {\n \"version\": \"4.1.1\",\n \"resolved\": \"https://registry.npmjs.org/flat/-/flat-4.1.1.tgz\",\n \"integrity\": \"sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==\",\n \"dev\": true,\n \"requires\": {\n \"is-buffer\": \"~2.0.3\"\n }\n },\n \"flat-cache\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz\",\n \"integrity\": \"sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==\",\n \"dev\": true,\n \"requires\": {\n \"flatted\": \"^2.0.0\",\n \"rimraf\": \"2.6.3\",\n \"write\": \"1.0.3\"\n }\n },\n \"flatted\": {\n \"version\": \"2.0.2\",\n \"resolved\": \"https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz\",\n \"integrity\": \"sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==\",\n \"dev\": true\n },\n \"fs.realpath\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz\",\n \"integrity\": \"sha1-FQStJSMVjKpA20onh8sBQRmU6k8=\",\n \"dev\": true\n },\n \"function-bind\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz\",\n \"integrity\": \"sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==\",\n \"dev\": true\n },\n \"functional-red-black-tree\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz\",\n \"integrity\": \"sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=\",\n \"dev\": true\n },\n \"gaxios\": {\n \"version\": \"6.7.1\",\n \"resolved\": \"https://registry.npmjs.org/gaxios/-/gaxios-6.7.1.tgz\",\n \"integrity\": \"sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==\",\n \"requires\": {\n \"extend\": \"^3.0.2\",\n \"https-proxy-agent\": \"^7.0.1\",\n \"is-stream\": \"^2.0.0\",\n \"node-fetch\": \"^2.6.9\",\n \"uuid\": \"^9.0.1\"\n }\n },\n \"gcp-metadata\": {\n \"version\": \"6.1.0\",\n \"resolved\": \"https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz\",\n \"integrity\": \"sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==\",\n \"requires\": {\n \"gaxios\": \"^6.0.0\",\n \"json-bigint\": \"^1.0.0\"\n }\n },\n \"get-caller-file\": {\n \"version\": \"2.0.5\",\n \"resolved\": \"https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz\",\n \"integrity\": \"sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==\"\n },\n \"get-intrinsic\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz\",\n \"integrity\": \"sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==\",\n \"dev\": true,\n \"requires\": {\n \"function-bind\": \"^1.1.1\",\n \"has\": \"^1.0.3\",\n \"has-symbols\": \"^1.0.1\"\n }\n },\n \"glob\": {\n \"version\": \"7.1.3\",\n \"resolved\": \"https://registry.npmjs.org/glob/-/glob-7.1.3.tgz\",\n \"integrity\": \"sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==\",\n \"dev\": true,\n \"requires\": {\n \"fs.realpath\": \"^1.0.0\",\n \"inflight\": \"^1.0.4\",\n \"inherits\": \"2\",\n \"minimatch\": \"^3.0.4\",\n \"once\": \"^1.3.0\",\n \"path-is-absolute\": \"^1.0.0\"\n }\n },\n \"glob-parent\": {\n \"version\": \"5.1.2\",\n \"resolved\": \"https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz\",\n \"integrity\": \"sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==\",\n \"dev\": true,\n \"requires\": {\n \"is-glob\": \"^4.0.1\"\n }\n },\n \"globals\": {\n \"version\": \"12.4.0\",\n \"resolved\": \"https://registry.npmjs.org/globals/-/globals-12.4.0.tgz\",\n \"integrity\": \"sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==\",\n \"dev\": true,\n \"requires\": {\n \"type-fest\": \"^0.8.1\"\n }\n },\n \"google-auth-library\": {\n \"version\": \"9.14.2\",\n \"resolved\": \"https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.14.2.tgz\",\n \"integrity\": \"sha512-R+FRIfk1GBo3RdlRYWPdwk8nmtVUOn6+BkDomAC46KoU8kzXzE1HLmOasSCbWUByMMAGkknVF0G5kQ69Vj7dlA==\",\n \"requires\": {\n \"base64-js\": \"^1.3.0\",\n \"ecdsa-sig-formatter\": \"^1.0.11\",\n \"gaxios\": \"^6.1.1\",\n \"gcp-metadata\": \"^6.1.0\",\n \"gtoken\": \"^7.0.0\",\n \"jws\": \"^4.0.0\"\n }\n },\n \"growl\": {\n \"version\": \"1.10.5\",\n \"resolved\": \"https://registry.npmjs.org/growl/-/growl-1.10.5.tgz\",\n \"integrity\": \"sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==\",\n \"dev\": true\n },\n \"gtoken\": {\n \"version\": \"7.1.0\",\n \"resolved\": \"https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz\",\n \"integrity\": \"sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==\",\n \"requires\": {\n \"gaxios\": \"^6.0.0\",\n \"jws\": \"^4.0.0\"\n }\n },\n \"has\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/has/-/has-1.0.3.tgz\",\n \"integrity\": \"sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==\",\n \"dev\": true,\n \"requires\": {\n \"function-bind\": \"^1.1.1\"\n }\n },\n \"has-bigints\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz\",\n \"integrity\": \"sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==\",\n \"dev\": true\n },\n \"has-flag\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz\",\n \"integrity\": \"sha1-tdRU3CGZriJWmfNGfloH87lVuv0=\",\n \"dev\": true\n },\n \"has-symbols\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz\",\n \"integrity\": \"sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==\",\n \"dev\": true\n },\n \"he\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/he/-/he-1.2.0.tgz\",\n \"integrity\": \"sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==\",\n \"dev\": true\n },\n \"https-proxy-agent\": {\n \"version\": \"7.0.5\",\n \"resolved\": \"https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz\",\n \"integrity\": \"sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==\",\n \"requires\": {\n \"agent-base\": \"^7.0.2\",\n \"debug\": \"4\"\n }\n },\n \"iconv-lite\": {\n \"version\": \"0.4.24\",\n \"resolved\": \"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz\",\n \"integrity\": \"sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==\",\n \"dev\": true,\n \"requires\": {\n \"safer-buffer\": \">= 2.1.2 < 3\"\n }\n },\n \"ignore\": {\n \"version\": \"4.0.6\",\n \"resolved\": \"https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz\",\n \"integrity\": \"sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==\",\n \"dev\": true\n },\n \"import-fresh\": {\n \"version\": \"3.3.0\",\n \"resolved\": \"https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz\",\n \"integrity\": \"sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==\",\n \"dev\": true,\n \"requires\": {\n \"parent-module\": \"^1.0.0\",\n \"resolve-from\": \"^4.0.0\"\n }\n },\n \"imurmurhash\": {\n \"version\": \"0.1.4\",\n \"resolved\": \"https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz\",\n \"integrity\": \"sha1-khi5srkoojixPcT7a21XbyMUU+o=\",\n \"dev\": true\n },\n \"inflight\": {\n \"version\": \"1.0.6\",\n \"resolved\": \"https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz\",\n \"integrity\": \"sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=\",\n \"dev\": true,\n \"requires\": {\n \"once\": \"^1.3.0\",\n \"wrappy\": \"1\"\n }\n },\n \"inherits\": {\n \"version\": \"2.0.4\",\n \"resolved\": \"https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz\",\n \"integrity\": \"sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==\",\n \"dev\": true\n },\n \"inquirer\": {\n \"version\": \"7.3.3\",\n \"resolved\": \"https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz\",\n \"integrity\": \"sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-escapes\": \"^4.2.1\",\n \"chalk\": \"^4.1.0\",\n \"cli-cursor\": \"^3.1.0\",\n \"cli-width\": \"^3.0.0\",\n \"external-editor\": \"^3.0.3\",\n \"figures\": \"^3.0.0\",\n \"lodash\": \"^4.17.19\",\n \"mute-stream\": \"0.0.8\",\n \"run-async\": \"^2.4.0\",\n \"rxjs\": \"^6.6.0\",\n \"string-width\": \"^4.1.0\",\n \"strip-ansi\": \"^6.0.0\",\n \"through\": \"^2.3.6\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz\",\n \"integrity\": \"sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==\",\n \"dev\": true\n },\n \"ansi-styles\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz\",\n \"integrity\": \"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==\",\n \"dev\": true,\n \"requires\": {\n \"color-convert\": \"^2.0.1\"\n }\n },\n \"chalk\": {\n \"version\": \"4.1.1\",\n \"resolved\": \"https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz\",\n \"integrity\": \"sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-styles\": \"^4.1.0\",\n \"supports-color\": \"^7.1.0\"\n }\n },\n \"color-convert\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz\",\n \"integrity\": \"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==\",\n \"dev\": true,\n \"requires\": {\n \"color-name\": \"~1.1.4\"\n }\n },\n \"color-name\": {\n \"version\": \"1.1.4\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz\",\n \"integrity\": \"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==\",\n \"dev\": true\n },\n \"emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\",\n \"dev\": true\n },\n \"has-flag\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz\",\n \"integrity\": \"sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==\",\n \"dev\": true\n },\n \"is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\",\n \"dev\": true\n },\n \"string-width\": {\n \"version\": \"4.2.2\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz\",\n \"integrity\": \"sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==\",\n \"dev\": true,\n \"requires\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.0\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"6.0.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz\",\n \"integrity\": \"sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^5.0.0\"\n }\n },\n \"supports-color\": {\n \"version\": \"7.2.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz\",\n \"integrity\": \"sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==\",\n \"dev\": true,\n \"requires\": {\n \"has-flag\": \"^4.0.0\"\n }\n }\n }\n },\n \"is-bigint\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.2.tgz\",\n \"integrity\": \"sha512-0JV5+SOCQkIdzjBK9buARcV804Ddu7A0Qet6sHi3FimE9ne6m4BGQZfRn+NZiXbBk4F4XmHfDZIipLj9pX8dSA==\",\n \"dev\": true\n },\n \"is-boolean-object\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.1.tgz\",\n \"integrity\": \"sha512-bXdQWkECBUIAcCkeH1unwJLIpZYaa5VvuygSyS/c2lf719mTKZDU5UdDRlpd01UjADgmW8RfqaP+mRaVPdr/Ng==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\"\n }\n },\n \"is-buffer\": {\n \"version\": \"2.0.5\",\n \"resolved\": \"https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz\",\n \"integrity\": \"sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==\",\n \"dev\": true\n },\n \"is-callable\": {\n \"version\": \"1.2.3\",\n \"resolved\": \"https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz\",\n \"integrity\": \"sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==\",\n \"dev\": true\n },\n \"is-date-object\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz\",\n \"integrity\": \"sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==\",\n \"dev\": true\n },\n \"is-extglob\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz\",\n \"integrity\": \"sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=\",\n \"dev\": true\n },\n \"is-fullwidth-code-point\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz\",\n \"integrity\": \"sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=\",\n \"dev\": true\n },\n \"is-glob\": {\n \"version\": \"4.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz\",\n \"integrity\": \"sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==\",\n \"dev\": true,\n \"requires\": {\n \"is-extglob\": \"^2.1.1\"\n }\n },\n \"is-negative-zero\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz\",\n \"integrity\": \"sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==\",\n \"dev\": true\n },\n \"is-number-object\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.5.tgz\",\n \"integrity\": \"sha512-RU0lI/n95pMoUKu9v1BZP5MBcZuNSVJkMkAG2dJqC4z2GlkGUNeH68SuHuBKBD/XFe+LHZ+f9BKkLET60Niedw==\",\n \"dev\": true\n },\n \"is-regex\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/is-regex/-/is-regex-1.1.3.tgz\",\n \"integrity\": \"sha512-qSVXFz28HM7y+IWX6vLCsexdlvzT1PJNFSBuaQLQ5o0IEw8UDYW6/2+eCMVyIsbM8CNLX2a/QWmSpyxYEHY7CQ==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\",\n \"has-symbols\": \"^1.0.2\"\n }\n },\n \"is-stream\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz\",\n \"integrity\": \"sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==\"\n },\n \"is-string\": {\n \"version\": \"1.0.6\",\n \"resolved\": \"https://registry.npmjs.org/is-string/-/is-string-1.0.6.tgz\",\n \"integrity\": \"sha512-2gdzbKUuqtQ3lYNrUTQYoClPhm7oQu4UdpSZMp1/DGgkHBT8E2Z1l0yMdb6D4zNAxwDiMv8MdulKROJGNl0Q0w==\",\n \"dev\": true\n },\n \"is-symbol\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz\",\n \"integrity\": \"sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==\",\n \"dev\": true,\n \"requires\": {\n \"has-symbols\": \"^1.0.2\"\n }\n },\n \"isexe\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz\",\n \"integrity\": \"sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=\",\n \"dev\": true\n },\n \"js-tokens\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz\",\n \"integrity\": \"sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==\",\n \"dev\": true\n },\n \"js-yaml\": {\n \"version\": \"3.13.1\",\n \"resolved\": \"https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz\",\n \"integrity\": \"sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==\",\n \"dev\": true,\n \"requires\": {\n \"argparse\": \"^1.0.7\",\n \"esprima\": \"^4.0.0\"\n }\n },\n \"json-bigint\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz\",\n \"integrity\": \"sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==\",\n \"requires\": {\n \"bignumber.js\": \"^9.0.0\"\n }\n },\n \"json-schema-traverse\": {\n \"version\": \"0.4.1\",\n \"resolved\": \"https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz\",\n \"integrity\": \"sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==\",\n \"dev\": true\n },\n \"json-stable-stringify-without-jsonify\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz\",\n \"integrity\": \"sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=\",\n \"dev\": true\n },\n \"jwa\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz\",\n \"integrity\": \"sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==\",\n \"requires\": {\n \"buffer-equal-constant-time\": \"1.0.1\",\n \"ecdsa-sig-formatter\": \"1.0.11\",\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"jws\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/jws/-/jws-4.0.0.tgz\",\n \"integrity\": \"sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==\",\n \"requires\": {\n \"jwa\": \"^2.0.0\",\n \"safe-buffer\": \"^5.0.1\"\n }\n },\n \"levn\": {\n \"version\": \"0.3.0\",\n \"resolved\": \"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz\",\n \"integrity\": \"sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=\",\n \"dev\": true,\n \"requires\": {\n \"prelude-ls\": \"~1.1.2\",\n \"type-check\": \"~0.3.2\"\n }\n },\n \"locate-path\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz\",\n \"integrity\": \"sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==\",\n \"dev\": true,\n \"requires\": {\n \"p-locate\": \"^3.0.0\",\n \"path-exists\": \"^3.0.0\"\n }\n },\n \"lodash\": {\n \"version\": \"4.17.21\",\n \"resolved\": \"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz\",\n \"integrity\": \"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==\",\n \"dev\": true\n },\n \"log-symbols\": {\n \"version\": \"2.2.0\",\n \"resolved\": \"https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz\",\n \"integrity\": \"sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==\",\n \"dev\": true,\n \"requires\": {\n \"chalk\": \"^2.0.1\"\n }\n },\n \"mimic-fn\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz\",\n \"integrity\": \"sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==\",\n \"dev\": true\n },\n \"minimatch\": {\n \"version\": \"3.0.4\",\n \"resolved\": \"https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz\",\n \"integrity\": \"sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==\",\n \"dev\": true,\n \"requires\": {\n \"brace-expansion\": \"^1.1.7\"\n }\n },\n \"minimist\": {\n \"version\": \"1.2.5\",\n \"resolved\": \"https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz\",\n \"integrity\": \"sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==\",\n \"dev\": true\n },\n \"mkdirp\": {\n \"version\": \"0.5.4\",\n \"resolved\": \"https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz\",\n \"integrity\": \"sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==\",\n \"dev\": true,\n \"requires\": {\n \"minimist\": \"^1.2.5\"\n }\n },\n \"mocha\": {\n \"version\": \"6.2.3\",\n \"resolved\": \"https://registry.npmjs.org/mocha/-/mocha-6.2.3.tgz\",\n \"integrity\": \"sha512-0R/3FvjIGH3eEuG17ccFPk117XL2rWxatr81a57D+r/x2uTYZRbdZ4oVidEUMh2W2TJDa7MdAb12Lm2/qrKajg==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-colors\": \"3.2.3\",\n \"browser-stdout\": \"1.3.1\",\n \"debug\": \"3.2.6\",\n \"diff\": \"3.5.0\",\n \"escape-string-regexp\": \"1.0.5\",\n \"find-up\": \"3.0.0\",\n \"glob\": \"7.1.3\",\n \"growl\": \"1.10.5\",\n \"he\": \"1.2.0\",\n \"js-yaml\": \"3.13.1\",\n \"log-symbols\": \"2.2.0\",\n \"minimatch\": \"3.0.4\",\n \"mkdirp\": \"0.5.4\",\n \"ms\": \"2.1.1\",\n \"node-environment-flags\": \"1.0.5\",\n \"object.assign\": \"4.1.0\",\n \"strip-json-comments\": \"2.0.1\",\n \"supports-color\": \"6.0.0\",\n \"which\": \"1.3.1\",\n \"wide-align\": \"1.1.3\",\n \"yargs\": \"13.3.2\",\n \"yargs-parser\": \"13.1.2\",\n \"yargs-unparser\": \"1.6.0\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true\n },\n \"cliui\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz\",\n \"integrity\": \"sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==\",\n \"dev\": true,\n \"requires\": {\n \"string-width\": \"^3.1.0\",\n \"strip-ansi\": \"^5.2.0\",\n \"wrap-ansi\": \"^5.1.0\"\n }\n },\n \"debug\": {\n \"version\": \"3.2.6\",\n \"resolved\": \"https://registry.npmjs.org/debug/-/debug-3.2.6.tgz\",\n \"integrity\": \"sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==\",\n \"dev\": true,\n \"requires\": {\n \"ms\": \"^2.1.1\"\n }\n },\n \"ms\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/ms/-/ms-2.1.1.tgz\",\n \"integrity\": \"sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==\",\n \"dev\": true\n },\n \"string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"requires\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^4.1.0\"\n }\n },\n \"wrap-ansi\": {\n \"version\": \"5.1.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz\",\n \"integrity\": \"sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-styles\": \"^3.2.0\",\n \"string-width\": \"^3.0.0\",\n \"strip-ansi\": \"^5.0.0\"\n }\n },\n \"y18n\": {\n \"version\": \"4.0.3\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz\",\n \"integrity\": \"sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==\",\n \"dev\": true\n },\n \"yargs\": {\n \"version\": \"13.3.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz\",\n \"integrity\": \"sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==\",\n \"dev\": true,\n \"requires\": {\n \"cliui\": \"^5.0.0\",\n \"find-up\": \"^3.0.0\",\n \"get-caller-file\": \"^2.0.1\",\n \"require-directory\": \"^2.1.1\",\n \"require-main-filename\": \"^2.0.0\",\n \"set-blocking\": \"^2.0.0\",\n \"string-width\": \"^3.0.0\",\n \"which-module\": \"^2.0.0\",\n \"y18n\": \"^4.0.0\",\n \"yargs-parser\": \"^13.1.2\"\n }\n }\n }\n },\n \"ms\": {\n \"version\": \"2.1.3\",\n \"resolved\": \"https://registry.npmjs.org/ms/-/ms-2.1.3.tgz\",\n \"integrity\": \"sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==\"\n },\n \"mute-stream\": {\n \"version\": \"0.0.8\",\n \"resolved\": \"https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz\",\n \"integrity\": \"sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==\",\n \"dev\": true\n },\n \"natural-compare\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz\",\n \"integrity\": \"sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=\",\n \"dev\": true\n },\n \"nice-try\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz\",\n \"integrity\": \"sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==\",\n \"dev\": true\n },\n \"node-environment-flags\": {\n \"version\": \"1.0.5\",\n \"resolved\": \"https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.5.tgz\",\n \"integrity\": \"sha512-VNYPRfGfmZLx0Ye20jWzHUjyTW/c+6Wq+iLhDzUI4XmhrDd9l/FozXV3F2xOaXjvp0co0+v1YSR3CMP6g+VvLQ==\",\n \"dev\": true,\n \"requires\": {\n \"object.getownpropertydescriptors\": \"^2.0.3\",\n \"semver\": \"^5.7.0\"\n }\n },\n \"node-fetch\": {\n \"version\": \"2.7.0\",\n \"resolved\": \"https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz\",\n \"integrity\": \"sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==\",\n \"requires\": {\n \"whatwg-url\": \"^5.0.0\"\n }\n },\n \"object-inspect\": {\n \"version\": \"1.11.0\",\n \"resolved\": \"https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz\",\n \"integrity\": \"sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==\",\n \"dev\": true\n },\n \"object-keys\": {\n \"version\": \"1.1.1\",\n \"resolved\": \"https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz\",\n \"integrity\": \"sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==\",\n \"dev\": true\n },\n \"object.assign\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz\",\n \"integrity\": \"sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==\",\n \"dev\": true,\n \"requires\": {\n \"define-properties\": \"^1.1.2\",\n \"function-bind\": \"^1.1.1\",\n \"has-symbols\": \"^1.0.0\",\n \"object-keys\": \"^1.0.11\"\n }\n },\n \"object.getownpropertydescriptors\": {\n \"version\": \"2.1.2\",\n \"resolved\": \"https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz\",\n \"integrity\": \"sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\",\n \"es-abstract\": \"^1.18.0-next.2\"\n }\n },\n \"once\": {\n \"version\": \"1.4.0\",\n \"resolved\": \"https://registry.npmjs.org/once/-/once-1.4.0.tgz\",\n \"integrity\": \"sha1-WDsap3WWHUsROsF9nFC6753Xa9E=\",\n \"dev\": true,\n \"requires\": {\n \"wrappy\": \"1\"\n }\n },\n \"onetime\": {\n \"version\": \"5.1.2\",\n \"resolved\": \"https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz\",\n \"integrity\": \"sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==\",\n \"dev\": true,\n \"requires\": {\n \"mimic-fn\": \"^2.1.0\"\n }\n },\n \"optionator\": {\n \"version\": \"0.8.3\",\n \"resolved\": \"https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz\",\n \"integrity\": \"sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==\",\n \"dev\": true,\n \"requires\": {\n \"deep-is\": \"~0.1.3\",\n \"fast-levenshtein\": \"~2.0.6\",\n \"levn\": \"~0.3.0\",\n \"prelude-ls\": \"~1.1.2\",\n \"type-check\": \"~0.3.2\",\n \"word-wrap\": \"~1.2.3\"\n }\n },\n \"os-tmpdir\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz\",\n \"integrity\": \"sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=\",\n \"dev\": true\n },\n \"p-limit\": {\n \"version\": \"2.3.0\",\n \"resolved\": \"https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz\",\n \"integrity\": \"sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==\",\n \"dev\": true,\n \"requires\": {\n \"p-try\": \"^2.0.0\"\n }\n },\n \"p-locate\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz\",\n \"integrity\": \"sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==\",\n \"dev\": true,\n \"requires\": {\n \"p-limit\": \"^2.0.0\"\n }\n },\n \"p-try\": {\n \"version\": \"2.2.0\",\n \"resolved\": \"https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz\",\n \"integrity\": \"sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==\",\n \"dev\": true\n },\n \"parent-module\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz\",\n \"integrity\": \"sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==\",\n \"dev\": true,\n \"requires\": {\n \"callsites\": \"^3.0.0\"\n }\n },\n \"path-exists\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz\",\n \"integrity\": \"sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=\",\n \"dev\": true\n },\n \"path-is-absolute\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz\",\n \"integrity\": \"sha1-F0uSaHNVNP+8es5r9TpanhtcX18=\",\n \"dev\": true\n },\n \"path-key\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz\",\n \"integrity\": \"sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=\",\n \"dev\": true\n },\n \"prelude-ls\": {\n \"version\": \"1.1.2\",\n \"resolved\": \"https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz\",\n \"integrity\": \"sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=\",\n \"dev\": true\n },\n \"progress\": {\n \"version\": \"2.0.3\",\n \"resolved\": \"https://registry.npmjs.org/progress/-/progress-2.0.3.tgz\",\n \"integrity\": \"sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==\",\n \"dev\": true\n },\n \"punycode\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz\",\n \"integrity\": \"sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==\",\n \"dev\": true\n },\n \"regexpp\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz\",\n \"integrity\": \"sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==\",\n \"dev\": true\n },\n \"require-directory\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz\",\n \"integrity\": \"sha1-jGStX9MNqxyXbiNE/+f3kqam30I=\"\n },\n \"require-main-filename\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz\",\n \"integrity\": \"sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==\",\n \"dev\": true\n },\n \"resolve-from\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz\",\n \"integrity\": \"sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==\",\n \"dev\": true\n },\n \"restore-cursor\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz\",\n \"integrity\": \"sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==\",\n \"dev\": true,\n \"requires\": {\n \"onetime\": \"^5.1.0\",\n \"signal-exit\": \"^3.0.2\"\n }\n },\n \"rewire\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/rewire/-/rewire-5.0.0.tgz\",\n \"integrity\": \"sha512-1zfitNyp9RH5UDyGGLe9/1N0bMlPQ0WrX0Tmg11kMHBpqwPJI4gfPpP7YngFyLbFmhXh19SToAG0sKKEFcOIJA==\",\n \"dev\": true,\n \"requires\": {\n \"eslint\": \"^6.8.0\"\n }\n },\n \"rimraf\": {\n \"version\": \"2.6.3\",\n \"resolved\": \"https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz\",\n \"integrity\": \"sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==\",\n \"dev\": true,\n \"requires\": {\n \"glob\": \"^7.1.3\"\n }\n },\n \"run-async\": {\n \"version\": \"2.4.1\",\n \"resolved\": \"https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz\",\n \"integrity\": \"sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==\",\n \"dev\": true\n },\n \"rxjs\": {\n \"version\": \"6.6.7\",\n \"resolved\": \"https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz\",\n \"integrity\": \"sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==\",\n \"dev\": true,\n \"requires\": {\n \"tslib\": \"^1.9.0\"\n }\n },\n \"safe-buffer\": {\n \"version\": \"5.2.1\",\n \"resolved\": \"https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz\",\n \"integrity\": \"sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==\"\n },\n \"safer-buffer\": {\n \"version\": \"2.1.2\",\n \"resolved\": \"https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz\",\n \"integrity\": \"sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==\",\n \"dev\": true\n },\n \"semver\": {\n \"version\": \"5.7.1\",\n \"resolved\": \"https://registry.npmjs.org/semver/-/semver-5.7.1.tgz\",\n \"integrity\": \"sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==\",\n \"dev\": true\n },\n \"set-blocking\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz\",\n \"integrity\": \"sha1-BF+XgtARrppoA93TgrJDkrPYkPc=\",\n \"dev\": true\n },\n \"shebang-command\": {\n \"version\": \"1.2.0\",\n \"resolved\": \"https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz\",\n \"integrity\": \"sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=\",\n \"dev\": true,\n \"requires\": {\n \"shebang-regex\": \"^1.0.0\"\n }\n },\n \"shebang-regex\": {\n \"version\": \"1.0.0\",\n \"resolved\": \"https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz\",\n \"integrity\": \"sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=\",\n \"dev\": true\n },\n \"signal-exit\": {\n \"version\": \"3.0.3\",\n \"resolved\": \"https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz\",\n \"integrity\": \"sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==\",\n \"dev\": true\n },\n \"slice-ansi\": {\n \"version\": \"2.1.0\",\n \"resolved\": \"https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz\",\n \"integrity\": \"sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-styles\": \"^3.2.0\",\n \"astral-regex\": \"^1.0.0\",\n \"is-fullwidth-code-point\": \"^2.0.0\"\n }\n },\n \"sprintf-js\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz\",\n \"integrity\": \"sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=\",\n \"dev\": true\n },\n \"string-width\": {\n \"version\": \"2.1.1\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz\",\n \"integrity\": \"sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==\",\n \"dev\": true,\n \"requires\": {\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^4.0.0\"\n }\n },\n \"string.prototype.trimend\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz\",\n \"integrity\": \"sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\"\n }\n },\n \"string.prototype.trimstart\": {\n \"version\": \"1.0.4\",\n \"resolved\": \"https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz\",\n \"integrity\": \"sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==\",\n \"dev\": true,\n \"requires\": {\n \"call-bind\": \"^1.0.2\",\n \"define-properties\": \"^1.1.3\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"4.0.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz\",\n \"integrity\": \"sha1-qEeQIusaw2iocTibY1JixQXuNo8=\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^3.0.0\"\n }\n },\n \"strip-json-comments\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz\",\n \"integrity\": \"sha1-PFMZQukIwml8DsNEhYwobHygpgo=\",\n \"dev\": true\n },\n \"supports-color\": {\n \"version\": \"6.0.0\",\n \"resolved\": \"https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz\",\n \"integrity\": \"sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==\",\n \"dev\": true,\n \"requires\": {\n \"has-flag\": \"^3.0.0\"\n }\n },\n \"table\": {\n \"version\": \"5.4.6\",\n \"resolved\": \"https://registry.npmjs.org/table/-/table-5.4.6.tgz\",\n \"integrity\": \"sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==\",\n \"dev\": true,\n \"requires\": {\n \"ajv\": \"^6.10.2\",\n \"lodash\": \"^4.17.14\",\n \"slice-ansi\": \"^2.1.0\",\n \"string-width\": \"^3.0.0\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true\n },\n \"string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"requires\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^4.1.0\"\n }\n }\n }\n },\n \"text-table\": {\n \"version\": \"0.2.0\",\n \"resolved\": \"https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz\",\n \"integrity\": \"sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=\",\n \"dev\": true\n },\n \"through\": {\n \"version\": \"2.3.8\",\n \"resolved\": \"https://registry.npmjs.org/through/-/through-2.3.8.tgz\",\n \"integrity\": \"sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=\",\n \"dev\": true\n },\n \"tmp\": {\n \"version\": \"0.0.33\",\n \"resolved\": \"https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz\",\n \"integrity\": \"sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==\",\n \"dev\": true,\n \"requires\": {\n \"os-tmpdir\": \"~1.0.2\"\n }\n },\n \"tr46\": {\n \"version\": \"0.0.3\",\n \"resolved\": \"https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz\",\n \"integrity\": \"sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==\"\n },\n \"tslib\": {\n \"version\": \"1.14.1\",\n \"resolved\": \"https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz\",\n \"integrity\": \"sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==\",\n \"dev\": true\n },\n \"type-check\": {\n \"version\": \"0.3.2\",\n \"resolved\": \"https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz\",\n \"integrity\": \"sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=\",\n \"dev\": true,\n \"requires\": {\n \"prelude-ls\": \"~1.1.2\"\n }\n },\n \"type-fest\": {\n \"version\": \"0.8.1\",\n \"resolved\": \"https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz\",\n \"integrity\": \"sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==\",\n \"dev\": true\n },\n \"unbox-primitive\": {\n \"version\": \"1.0.1\",\n \"resolved\": \"https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz\",\n \"integrity\": \"sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==\",\n \"dev\": true,\n \"requires\": {\n \"function-bind\": \"^1.1.1\",\n \"has-bigints\": \"^1.0.1\",\n \"has-symbols\": \"^1.0.2\",\n \"which-boxed-primitive\": \"^1.0.2\"\n }\n },\n \"uri-js\": {\n \"version\": \"4.4.1\",\n \"resolved\": \"https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz\",\n \"integrity\": \"sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==\",\n \"dev\": true,\n \"requires\": {\n \"punycode\": \"^2.1.0\"\n }\n },\n \"uuid\": {\n \"version\": \"9.0.1\",\n \"resolved\": \"https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz\",\n \"integrity\": \"sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==\"\n },\n \"v8-compile-cache\": {\n \"version\": \"2.3.0\",\n \"resolved\": \"https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz\",\n \"integrity\": \"sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==\",\n \"dev\": true\n },\n \"webidl-conversions\": {\n \"version\": \"3.0.1\",\n \"resolved\": \"https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz\",\n \"integrity\": \"sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==\"\n },\n \"whatwg-url\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz\",\n \"integrity\": \"sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==\",\n \"requires\": {\n \"tr46\": \"~0.0.3\",\n \"webidl-conversions\": \"^3.0.0\"\n }\n },\n \"which\": {\n \"version\": \"1.3.1\",\n \"resolved\": \"https://registry.npmjs.org/which/-/which-1.3.1.tgz\",\n \"integrity\": \"sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==\",\n \"dev\": true,\n \"requires\": {\n \"isexe\": \"^2.0.0\"\n }\n },\n \"which-boxed-primitive\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz\",\n \"integrity\": \"sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==\",\n \"dev\": true,\n \"requires\": {\n \"is-bigint\": \"^1.0.1\",\n \"is-boolean-object\": \"^1.1.0\",\n \"is-number-object\": \"^1.0.4\",\n \"is-string\": \"^1.0.5\",\n \"is-symbol\": \"^1.0.3\"\n }\n },\n \"which-module\": {\n \"version\": \"2.0.0\",\n \"resolved\": \"https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz\",\n \"integrity\": \"sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=\",\n \"dev\": true\n },\n \"wide-align\": {\n \"version\": \"1.1.3\",\n \"resolved\": \"https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz\",\n \"integrity\": \"sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==\",\n \"dev\": true,\n \"requires\": {\n \"string-width\": \"^1.0.2 || 2\"\n }\n },\n \"word-wrap\": {\n \"version\": \"1.2.3\",\n \"resolved\": \"https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz\",\n \"integrity\": \"sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==\",\n \"dev\": true\n },\n \"wrap-ansi\": {\n \"version\": \"7.0.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz\",\n \"integrity\": \"sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==\",\n \"requires\": {\n \"ansi-styles\": \"^4.0.0\",\n \"string-width\": \"^4.1.0\",\n \"strip-ansi\": \"^6.0.0\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\"\n },\n \"ansi-styles\": {\n \"version\": \"4.3.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz\",\n \"integrity\": \"sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==\",\n \"requires\": {\n \"color-convert\": \"^2.0.1\"\n }\n },\n \"color-convert\": {\n \"version\": \"2.0.1\",\n \"resolved\": \"https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz\",\n \"integrity\": \"sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==\",\n \"requires\": {\n \"color-name\": \"~1.1.4\"\n }\n },\n \"color-name\": {\n \"version\": \"1.1.4\",\n \"resolved\": \"https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz\",\n \"integrity\": \"sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==\"\n },\n \"emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\"\n },\n \"string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"requires\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"requires\": {\n \"ansi-regex\": \"^5.0.1\"\n }\n }\n }\n },\n \"wrappy\": {\n \"version\": \"1.0.2\",\n \"resolved\": \"https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz\",\n \"integrity\": \"sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=\",\n \"dev\": true\n },\n \"write\": {\n \"version\": \"1.0.3\",\n \"resolved\": \"https://registry.npmjs.org/write/-/write-1.0.3.tgz\",\n \"integrity\": \"sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==\",\n \"dev\": true,\n \"requires\": {\n \"mkdirp\": \"^0.5.1\"\n }\n },\n \"y18n\": {\n \"version\": \"5.0.8\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz\",\n \"integrity\": \"sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==\"\n },\n \"yargs\": {\n \"version\": \"17.2.1\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-17.2.1.tgz\",\n \"integrity\": \"sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q==\",\n \"requires\": {\n \"cliui\": \"^7.0.2\",\n \"escalade\": \"^3.1.1\",\n \"get-caller-file\": \"^2.0.5\",\n \"require-directory\": \"^2.1.1\",\n \"string-width\": \"^4.2.0\",\n \"y18n\": \"^5.0.5\",\n \"yargs-parser\": \"^20.2.2\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"5.0.1\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz\",\n \"integrity\": \"sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==\"\n },\n \"emoji-regex\": {\n \"version\": \"8.0.0\",\n \"resolved\": \"https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz\",\n \"integrity\": \"sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==\"\n },\n \"is-fullwidth-code-point\": {\n \"version\": \"3.0.0\",\n \"resolved\": \"https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz\",\n \"integrity\": \"sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==\"\n },\n \"string-width\": {\n \"version\": \"4.2.3\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz\",\n \"integrity\": \"sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==\",\n \"requires\": {\n \"emoji-regex\": \"^8.0.0\",\n \"is-fullwidth-code-point\": \"^3.0.0\",\n \"strip-ansi\": \"^6.0.1\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"6.0.1\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz\",\n \"integrity\": \"sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==\",\n \"requires\": {\n \"ansi-regex\": \"^5.0.1\"\n }\n },\n \"yargs-parser\": {\n \"version\": \"20.2.9\",\n \"resolved\": \"https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz\",\n \"integrity\": \"sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==\"\n }\n }\n },\n \"yargs-parser\": {\n \"version\": \"13.1.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz\",\n \"integrity\": \"sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==\",\n \"dev\": true,\n \"requires\": {\n \"camelcase\": \"^5.0.0\",\n \"decamelize\": \"^1.2.0\"\n }\n },\n \"yargs-unparser\": {\n \"version\": \"1.6.0\",\n \"resolved\": \"https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz\",\n \"integrity\": \"sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==\",\n \"dev\": true,\n \"requires\": {\n \"flat\": \"^4.1.0\",\n \"lodash\": \"^4.17.15\",\n \"yargs\": \"^13.3.0\"\n },\n \"dependencies\": {\n \"ansi-regex\": {\n \"version\": \"4.1.0\",\n \"resolved\": \"https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz\",\n \"integrity\": \"sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==\",\n \"dev\": true\n },\n \"cliui\": {\n \"version\": \"5.0.0\",\n \"resolved\": \"https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz\",\n \"integrity\": \"sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==\",\n \"dev\": true,\n \"requires\": {\n \"string-width\": \"^3.1.0\",\n \"strip-ansi\": \"^5.2.0\",\n \"wrap-ansi\": \"^5.1.0\"\n }\n },\n \"string-width\": {\n \"version\": \"3.1.0\",\n \"resolved\": \"https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz\",\n \"integrity\": \"sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==\",\n \"dev\": true,\n \"requires\": {\n \"emoji-regex\": \"^7.0.1\",\n \"is-fullwidth-code-point\": \"^2.0.0\",\n \"strip-ansi\": \"^5.1.0\"\n }\n },\n \"strip-ansi\": {\n \"version\": \"5.2.0\",\n \"resolved\": \"https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz\",\n \"integrity\": \"sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-regex\": \"^4.1.0\"\n }\n },\n \"wrap-ansi\": {\n \"version\": \"5.1.0\",\n \"resolved\": \"https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz\",\n \"integrity\": \"sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==\",\n \"dev\": true,\n \"requires\": {\n \"ansi-styles\": \"^3.2.0\",\n \"string-width\": \"^3.0.0\",\n \"strip-ansi\": \"^5.0.0\"\n }\n },\n \"y18n\": {\n \"version\": \"4.0.3\",\n \"resolved\": \"https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz\",\n \"integrity\": \"sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==\",\n \"dev\": true\n },\n \"yargs\": {\n \"version\": \"13.3.2\",\n \"resolved\": \"https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz\",\n \"integrity\": \"sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==\",\n \"dev\": true,\n \"requires\": {\n \"cliui\": \"^5.0.0\",\n \"find-up\": \"^3.0.0\",\n \"get-caller-file\": \"^2.0.1\",\n \"require-directory\": \"^2.1.1\",\n \"require-main-filename\": \"^2.0.0\",\n \"set-blocking\": \"^2.0.0\",\n \"string-width\": \"^3.0.0\",\n \"which-module\": \"^2.0.0\",\n \"y18n\": \"^4.0.0\",\n \"yargs-parser\": \"^13.1.2\"\n }\n }\n }\n }\n }\n}\n Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/package-lock.json b/package-lock.json --- a/package-lock.json (revision 2448c5efdc5a096405e335528513d79c5d2af43f) +++ b/package-lock.json (date 1758940198136) @@ -10,6 +10,7 @@ "license": "Apache-2.0", "dependencies": { "google-auth-library": "^9.14.0", + "js-yaml": "^4.1.0", "yargs": "^17.1.1" }, "bin": { @@ -161,13 +162,9 @@ } }, "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/astral-regex": { "version": "1.0.0", @@ -665,6 +662,28 @@ "node": ">=6" } }, + "node_modules/eslint/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/eslint/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -1502,13 +1521,11 @@ "dev": true }, "node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" @@ -1684,6 +1701,15 @@ "node": ">=6" } }, + "node_modules/mocha/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, "node_modules/mocha/node_modules/cliui": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", @@ -1705,6 +1731,19 @@ "ms": "^2.1.1" } }, + "node_modules/mocha/node_modules/js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/mocha/node_modules/ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", @@ -2200,7 +2239,7 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "node_modules/string-width": { @@ -2884,13 +2923,9 @@ } }, "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "astral-regex": { "version": "1.0.0", @@ -3248,6 +3283,25 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -3869,13 +3923,11 @@ "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "argparse": "^2.0.1" } }, "json-bigint": { @@ -4019,6 +4071,15 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, "cliui": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", @@ -4039,6 +4100,16 @@ "ms": "^2.1.1" } }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "ms": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", @@ -4409,7 +4480,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "string-width": { Index: test/test.update-yarn.js IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/test/test.update-yarn.js b/test/test.update-yarn.js new file mode 100644 --- /dev/null (date 1758940070953) +++ b/test/test.update-yarn.js (date 1758940070953) @@ -0,0 +1,58 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +const assert = require('assert'); +const fs = require('fs'); +const path = require('path'); +const {updateYarnConfigFiles} = require('../src/update-yarn'); +const yaml = require('js-yaml'); + +const testDir = path.join(__dirname, '.'); +const fromConfigPath = path.join(testDir, '.yarnrc.yml'); +const toConfigPath = path.join(testDir, 'user.yarnrc.yml'); + +describe('updateYarnConfigFiles', () => { + afterEach(() => { + if (fs.existsSync(fromConfigPath)) { + fs.unlinkSync(fromConfigPath); + } + if (fs.existsSync(toConfigPath)) { + fs.unlinkSync(toConfigPath); + } + }); + + it('should update yarnrc.yml with auth token', async () => { + const fromContent = { + npmScopes: { + workspace: { + npmRegistryServer: 'https://region-npm.pkg.dev/project/repo', + }, + }, + }; + fs.writeFileSync(fromConfigPath, yaml.dump(fromContent)); + + await updateYarnConfigFiles(fromConfigPath, toConfigPath, 'my-secret-token'); + + const toContent = yaml.load(fs.readFileSync(toConfigPath, 'utf8')); + assert.deepStrictEqual(toContent, { + npmScopes: { + workspace: { + npmRegistryServer: 'https://region-npm.pkg.dev/project/repo', + npmAlwaysAuth: true, + npmAuthToken: 'my-secret-token', + }, + }, + }); + }); +}); Index: src/update-yarn.js IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/src/update-yarn.js b/src/update-yarn.js new file mode 100644 --- /dev/null (date 1758940577810) +++ b/src/update-yarn.js (date 1758940577810) @@ -0,0 +1,62 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +const fs = require('fs'); +const path = require('path'); +const yaml = require('js-yaml'); +const {logger} = require('./logger'); + +/** + * Update the project and user yarnrc.yml files. + * + * @param {string} fromConfigPath Path to the yarnrc.yml file to read scope registry configs from, should be the project yarnrc.yml file. + * @param {string} toConfigPath Path to yarnrc.yml file to write authentication configs to, should be the user yarnrc.yml file. + * @param {string} creds Encrypted credentials. + * @return {!Promise} + */ +async function updateYarnConfigFiles(fromConfigPath, toConfigPath, creds) { + fromConfigPath = path.resolve(fromConfigPath); + toConfigPath = path.resolve(toConfigPath); + + const fromDoc = yaml.load(fs.readFileSync(fromConfigPath, 'utf8')); + const toDoc = fs.existsSync(toConfigPath) + ? yaml.load(fs.readFileSync(toConfigPath, 'utf8')) + : {}; + + if (fromDoc.npmScopes) { + for (const scope in fromDoc.npmScopes) { + const fromScope = fromDoc.npmScopes[scope]; + if (fromScope.npmRegistryServer) { + const registry = fromScope.npmRegistryServer; + logger.debug(`Found registry ${registry} in ${fromConfigPath}`); + if (!toDoc.npmScopes) { + toDoc.npmScopes = {}; + } + if (!toDoc.npmScopes[scope]) { + toDoc.npmScopes[scope] = {}; + } + const toScope = toDoc.npmScopes[scope]; + toScope.npmRegistryServer = registry; + toScope.npmAlwaysAuth = true; + toScope.npmAuthToken = creds; + } + } + } + + await fs.promises.writeFile(toConfigPath, yaml.dump(toDoc)); +} + +module.exports = { + updateYarnConfigFiles, +};